IC物理设计复习总结

参考书:《数字集成电路物理设计》
一些零散的概念:

名词 full name 解释
RTL Register Transfer Level 采用硬件描述语言HDL描述的寄存器传输级电路
GDS Graphic Design System GDSII stream format 描述电路版图的格式.gds,记录版图几何图形,拓扑关系,结构,层次及其信息
时序库Libety Liberty 时序,功耗,噪声的信息,用于时序分析
LEF Library Exchange Format 物理库交换格式,用于布局布线,对版图的抽象描述.lef,分为技术lef和单元lef
技术lef tech lef 布局布线的设计规则和晶圆厂工艺信息:互连线最小间距 宽度 厚度 典型电阻 布线轨道宽度等;
单元lef cell lef 定义标准单元,模块单元,I/O单元,特殊单元的物理信息;定义放置区域,对称性,面积大小 供布局使用;定义IO端口布线层,几何形状,不可布线区,工艺天线效应参数 供布线用;
门级网表 Gate-level Netlist 在具体的工艺(门级)下,描述电路元件相互之间连接关系的文本文件
SDC Synopsys design constraints 标准设计约束,主要由时钟定义 输入延迟 输出延迟组成,顶层设计中约束输入端口的驱动及输出端口的负载等
建立时间 setup time 在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器
保持时间 hold time 在触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据同样不能被打入触发器
时钟域 在同步电路中,被相同时钟信号驱动的寄存器共同组成一个时钟域
buffer 两个串联的反相器,常用于时钟路径中,使得时钟clock具有良好的上升沿和下降沿,电阻在获得所需的驱动能力时,在功耗延时积上也达到最优。插buffer的方式减少了电路的负载电容,从而增大了电路驱动能力。[为什么插入buffer能够增加驱动能力] [数字电路中的buffer一般作用]
驱动能力 最大输出电流。如果负载过大(比如小电阻),则负载电流有可能超过其最大输出电流,这时驱动能力不足。出现驱动能力不足,直接后果是输出电压下降,对逻辑电路来说,就是无法保持其高电平,以致出现逻辑混乱,不能实现预期的效果。
Followpin followpin 电源轨道
干状结构 trunk 电源网络布线,时钟树布线要设立更宽的干状结构
到达时间 Arrival Time 指是信号(data or clock)到达电路某一指定位置的实际时间
期望时间 Required Time 指期望信号(data or clock)到达电路某一指定位置的时间(通常情况下,该期间是保障电路正常工作的临界值)
裕量 Slack 指信号到达的 期望时间 - 到达时间
PTV Precess Voltage Temperature 设计需要满足的工艺 电压,温度条件 operating_conditions
端角/工艺角 process corner 不同PVT下芯片有不同的delay,把NMOS和PMOS晶体管的速度波动范围限制在由四个角所确定的矩形象限内。可得到最好fast,最坏slow,平均typcial条件。工艺角&&PVT工艺误差
OCV on chip variation 不同PVT条件下,同一个芯片上不同区域的delay
MMMC multi mode,multi corner 多模式(timing mode: func/test)多管脚(PVT RC param)(适应不同情境下芯片的性能等)第十章
PPA Power Performance Area 芯片开发的三大目标
Launch Register Capture Register 数据发出和接受的两个寄存器名,时序相关的概念
Transition Slew 信号翻转时间,翻转20%~80%过程/翻转10~90%过程的时间
扇出 fanout 一个门的输出端所驱动同类型门的个数,或称负载能力
BBD block-based design 展平设计中基于模块的设计
PDN power delivery network 电源分配网络

1.物理设计方法 -- 从RTL逻辑综合后的门级网表GDSII数据的实现

1.逻辑综合 把Design从RTL映射到Gate-level Netlist,同时满足各种约束。流程:RTL -Translate-> GTECH -optimize+map-> Gate-level Netlist。使用DC(design compiler)和RC(RTL Compiler)
2.形式验证 比较 RTL 和 Mapped Netlist 在功能上是否等价
3.物理实现 从门级网表到GDS


1.1 物理设计挑战
1.2 物理设计流程
- 展平式(本书采用)

- 硅虚拟原型
RTL设计,功能验证,物理实施同时进行,快速评估性能

- 层次化物理设计
在物理设计时分割成分割块,分块处理时序问题

1.3 数字电路设计收敛
通过三部分工作完成:
- 数据系统:设计数据库的读取,处理,存储;
- 优化引擎:基于算法实现逻辑/布局/布线优化;
分析引擎:时序分析,功耗分析,噪声分析;
- - 时序分析:静态时序分析,寻找最长延时路径及最长延时
- - 功耗分析:静态功耗分析,动态功耗分析,低功耗设计
- - 可制造性分析:可制造性设计DFM及分析,包括设计检验,设计产额和制造,设计质量等
1.4 设计数据库

物理实施LEF,带有物理信息的网表 过程数据DEF,时序数据SPEF和SDF...
PDK(process design kit, 工艺设计包)器件模型,参数化单元Pcell,技术文件(工艺参数,GDSII数据,工艺代码数的映射关系),物理验证规则文件(设计规则检查DRC,电气规模检查LVS)等

2.物理设计建库与验证

2.1 工艺与版图

CMOS制造工艺

  • 闩锁效应(latch-up)
  • 版图(layout)是电路设计的物理几何描述,包括晶体管大小数量位置尺寸,连线尺寸位置等等,并遵循一系列约束
  • 版图设计 根据电路功能和性能要求以及工艺条件限制,设计光刻掩膜版图
  • GDS(Graphic Design System)GDSII stream format 描述电路版图的格式.gds。记录版图几何图形,拓扑关系,结构,层次及其信息
  • 工艺技术文件(technology file) 晶圆代工厂提供给设计者用于后端版图设计的技术文件,包括图形定义,显示信息,互连线工艺信息,通孔工艺信息
  • 映射文件(mapping file)版图设计数据库(版图功能代号)与GDSII数据库(制造代号)相互转换

2.2 && 2.3 设计规则检查

物理验证的两项主要工作:

  • DRC(design rules check,设计规则检查)将版图中集合图形与设计规则规定的尺寸,间距比较,检查版图中所有因违反设计规则(工艺层间集合尺寸最小值规划集合,工艺技术文件part)而引起潜在断路,短路或不良效应
  • LVS(layout versus schematic,电路规则检查)验证所有信号的电器连接关系(输入/输出/电源/地/连接节点信号)是否一致,器件类型(电阻电容MOS管..)数目尺寸是否一致。由器件提取规则,电路比较规则,器件捆绑规则组成。EDA从版图抽取晶体管级SPICE网表,将门级Verilog网表转化为SPICE网表,两表完全一致通过LVS检查
    SPICE(Simulation program with integrated circuit emphasis)电路仿真模拟器,使用电炉网表和器件模型对电路各节点进行直流分析,交流分析,瞬态分析等方针。

2.4 版图寄生参数提取与设计仿真

DRC和LVS后,寄生参数(电阻Resistance/电容Capacitance/电感L/互感K)也会影响电路性能,还要进行LPE/PRE检查

  • 寄生参数提取(LPE,layout parasitic extraction)
  • 寄生电阻提取(PRE,parasitic resistence extraction)

2.5 逻辑单元库建立

建库流程:1方案设计与论证 2电路设计 3版图设计与物理库生成 4标准单元特征化及库生成 5设计验证

芯片设计用到的逻辑单元:

    1. 标准单元(standard cell)
      芯片核心区,粘接逻辑功能(glue logic)组合/时序逻辑电路如:反相器 与或非门 寄存器 选择器 全加器等;特殊单元:填充单元,电压钳位单元,二极管单元,去耦单元,始终缓冲单元,延时缓冲单元,阱连接单元,电压转换单元,隔离单元,开关单元
    1. 模块宏单元(macro cell,硬核 hard core)
      芯片核心区,嵌入式存储器RAM/ROM/客户自由工具COT模块,如DSP数字信号处理器模块/商业IP模块/模拟电路模块,如ADC/DAC,振荡器,时钟PLL等
    1. 输入输出单元(I/O pad cell)
      核心区周围,包括输入信号,输出信号,输入输出双向,电源,接地单元

物理单元建库与数据文件:

  • 上述单元库的数据格式:
    (用于版图设计)

    • 电路级 SPICE/CDL网表,用于器件仿真或LVS检查
    • 符号级 逻辑图,包括单元名称,符号,输入输出端口,用于逻辑分析
    • 版图级 GDSII文件,记录版图完整信息
      (用于布局与布图)
    • 拓扑级 物理库LEF文件,用于布局,布线
    • RTL级 硬件描述语言VerilogHDL,VHDL描述的网表文件
    • 时序库liberty文件,用于电路综合,时序分析
    • 功耗库,用于功耗分析
    • 噪声库,用于信号完整性(signal integrity)分析
      (测试仿真)
    • 其他库,例用于PCB设计的I/O的IBIS模型
  • 物理库交换格式LEF:对版图的抽象描述.lef,分为技术lef和单元lef

    • 技术lef:布局布线的设计规则和晶圆厂工艺信息:互连线最小间距 宽度 厚度 典型电阻 布线轨道宽度等:
    • 单元lef:定义标准单元,模块单元,I/O单元,特殊单元的物理信息;定义放置区域,对称性,面积大小 供布局使用;定义IO端口布线层,几何形状,不可布线区,工艺天线效应参数 供布线用;

时序单元建库与数据文件

  • 芯片电路延时 由器件延时和互连线延时组成
    互连线延时 在逻辑综合时用线负载模型WLM近似估计。
    器件延时 信号通过一个逻辑门所经历的时间,也称传播延时,与电路工艺,电路结构,输入信号斜率(信号翻转速度/转换时间)和输出端口负载有关。根据物理库数据中版图RC参数结合晶体管级理论参数模型,经过SPICE仿真,考虑信号转换时间和IO负载变量建立的数据表。

  • 功耗
    功耗主要来自电路状态跳变引起的动态功耗和CMOS静态功耗。
    评价性能与功耗的指标:

    • 功耗-延时积 PDP=功耗×延时 衡量开关一个门需要的能量
    • 能量-延时积 EDP=能量(PDP)×延时
    • 静态CMOS功耗 P=稳态泄漏电流×电源电压
  • 噪声

  • 时序库文件 描述单元库各个单元时序信息的库文件,定义每个单元的传播延时

    • 文件格式 Liberty.lib文件,TLF文件,ALF文件
    • 时序库应用的PTV条件:process工艺,temperature温度,voltage电压
    • 线负载模型(WLM,wire load model)用理想的统计值估算芯片电路延时
    • 时序库的单元信息:与物理库LEF中的单元一一对应,内容包括1延迟时间表 2单元面积,静态功耗,端口名称 3端口逻辑关系 4保留噪声的语法

工艺天线效应 PAE process antenna effect
芯片中金属片等导体像天线一样收集空间静电电荷,可能会击穿晶体管,损坏器件。
计算天线比率(链接同一节点的金属面积与门栅面积的比率)过大就有损坏的可能,在布线时进行检查修正。

3.布图规划和布局

3.1 布图规划 floor plan


规划芯片内部结构的完整设计与规划:包含芯片大小(die size)规划,设计输入输出IO单元规划,大量硬核模块规划
布图目标:确定die面积,保证时序收敛,保证芯片稳定(静电保护,供电设计),满足布线要求(方便走线)

  • IO单元类型,布局,供电
    类型:数字输入,数字输出,数字双向输入输出,静电保护,IO供电,芯核供电,数字填充,模拟供电,模拟输入,模拟输出,模拟填充,专用输入输出,角填充单元等
    IO单元分为信号接口和电源:信号接口考虑驱动大小;电源考虑电源数量计算和摆放,数量根据功耗 供电电压 电流 驱动能力 开关噪声等考虑,摆放考虑电压降大小,做功耗分析;可利用IO降低噪声。

  • 布图规划方案与延迟预估
    布图布局之前(逻辑综合后得到网表)先对芯片时序进行理想情况的零线负载模型(zero WLM, wire-load model)做延迟分析。
    展平式设计/层次化设计的布图规划流程

  • 宏模块布放与布线通道
    模块布放在布图规划阶段完成,为了进行下一步电源规划。使用EDA工具实现模块自动布局。
    EDA读入设计数据,LEF和用户定义die size,在芯片内部自动生成各金属层连续,规则的布线轨道
    布线轨道(routing track)用于布线的路径
    布线通道(routing channel)多条布线轨道的空间,通道上不可摆放标准单元
    晕道(halo)模块四周不允许摆放标准单元的空间

3.2 电源规划

目的:给芯片供电设计出一个均匀的网络

  • 电源网络设计 内容
    全局电源 电源环线 电源条线
  • 数字与模拟混合供电
    注意电源信号之间的干扰和隔离,应建立不同的电源区域
  • 时钟网络
    ?3.2.3
  • 多电源供电 MSV,Multi-Supply Voltage
    多组电源多组电压供电MSMV,Multi-Supply Multi-Voltage
    1电源规划:每一个电压域有完整的电源和地线电源环;2电平转换单元:不同电压区之间要插入电平转换单元(VLS,voltage level shifter);3隔离单元插入:在被关闭的电压域所有接口处添加隔离单元。

3.3 布局

IO和宏模块布局在floorplan布图规划就完成,故此处进行标准单元布局。

  • 展平式布局(自动化/手动)
    1模块摆放与布局 2标准单元的摆放和优化

  • 层次化布局
    1子模块约束类型制定 2子模块大小位置的制定

  • 布局目标预估

    • 拥塞分析 布线空间无法达到实际需要,出现了拥塞,需要对设计/标准单元布局进行优化
    • 时序预估 做建立时间(setup time)预估(CTS后做保持时间(hold time)预估),考虑噪声的影响
    • 供电预估 将标准单元的供电端口连接到电源网格(followpins)中,引用VCD文件,对芯片的功耗,电压降及EM进行评估。
  • 标准单元布局优化算法

    • 布局优化算法 聚类算法,模拟退火等
    • 目标导向的布局优化 基于布线拥塞布局优化,基于时序布局优化,预防噪声布局优化

3.4 扫描链重组

  • 扫描链 scan chain
    将普通寄存器替换成带扫描功能的多输入输出寄存器,首尾相连,实现附加的测试功能。
    扫描链在逻辑综合后由专门的DFT工具产生。
  • 可测试性设计 DFT Design For Test
    指的是在芯片原始设计中阶段即插入各种用于提高芯片可测试性(包括可控制性和可观测性)的硬件逻辑,通过这部分逻辑,生成测试向量,达到测试大规模芯片的目的。
    DFT介绍

3.5 物理设计网表文件

  • 设计交换格式 DEF,design exchange format 展平式的设计网表文件,带有物理信息的网表,包含连接信息,各单元物理信息:芯片面积 (布图规划)区域定义 (电源规划后)电压域定义,(布线后)端口位置信息等

4.时钟树综合 CTS,clock tree synthesis

4.1 时钟信号

时钟信号是整个芯片中有最大扇出,通过最长距离,以最高速度运行的信号

  • 系统时钟 控制多个芯片间的时钟结构网络 并控制相互之间时序关系的时钟结构
    芯片的时钟信号通过I/O单元与系统时钟相连,单个的芯片时钟称作全局时钟,来自时钟发生器PLL,phase-locked loop

  • 时钟信号生成 外部晶振(石英晶体谐振器)输入,专用锁相环PLL,锁延迟环DLL

  • 时钟信号定义 三要素:时钟周期,时钟延滞,时钟信号不确定性(抖动)

  • 时钟延滞/插入延迟 latency/insertion delay 包括 时钟源延迟(时钟生成到当前芯片)+ 时钟网络延迟(时钟树延迟,理想时钟时此值为0)

  • 时钟抖动 jitter 信号时间与理想事件时间的偏差,包含确定抖动DJ(串扰,电磁干扰,同时开关输出等引起)和随机抖动RJ(物理定律,服从高斯分布)

  • 时钟信号偏差 skew 同一时钟到达该时钟域内的不同寄存器之间的时间偏差,时钟树综合CTS的目的就是为了减少偏差
    最大插入延迟(最晚到达叶节点的时间) 与 最小插入延迟(最早抵达第一个节点的时间) 的差定义为 最大偏差 max skew

4.2 时钟树综合方法

芯片设计时钟分为:

  • 真实时钟:没有延时的ideal理想时钟用于逻辑综合,进行布局,布局后进行延时计算建立时钟树,设定时钟属性为propagated传播时钟,传播时钟考虑时钟树的门延迟和线延迟
  • 虚拟时钟:相对于系统的参考时钟,如时钟信号来自外部输入,则设此为虚拟时钟

时钟的定义在CTS阶段实现,时钟延迟和抖动通过STA检查

  • 时钟树 时钟信号在物理设计中的实现结果,从树的结构区分有H树,X树,平衡树,流状或脊椎状时钟网。根节点:时钟信号起点;叶节点:寄存器时钟输入或其它时钟终点;节点依附的逻辑单元称作根单元 分布单元 叶单元;
  • 时钟树综合 按照芯片时钟网络的约束要求产生时钟树的过程

时钟树约束文件可以由SDC自动产生,定义:名称 周期 时钟根节点 最大/最小插入延迟 最大偏差skew 最大transition(slew) 还可定义专攻CTS选用的时钟buffer/inverter?

4.3 时钟树设计策略

  • 有用偏差:useful skew,利用时钟偏差来满足时序要求,迁就延时长的电路
  • 异步时钟:电路不规则,速度快,功耗低,全局时钟变为多个局部时钟。同步电路 物理实施难,跳变瞬间噪声大。
  • 锁存器时钟树:domino logic 电路设计中,同一时钟周期时许不够用,引入时间借用(time borrowing),锁存器的数据在有效电平区间内传输,寄存器组时钟边沿传输,使用锁存器增大"始终频率",从而实现高频电路。功耗提升,抗噪性差。
  • 门控时钟:目的是降低功耗,即用一个控制信号控制时钟的开启,模块不工作时关闭,模块工作时开启

4.4 时钟树分析

  • 时钟树与时序分析
    • 偏差与建立时间:分析建立时间时,由于skew的存在,导致预留给寄存器之间组合逻辑的延迟时间减小,降低了芯片工作频率
    • 偏差与保持时间:降频可解决skew导致的建立时间违例问题,但无法解决保持时间违例,可增加寄存器间的路径延迟,降低性能
  • 时钟树功耗组成:
    • 静态功耗: 各buffer静态功耗的和,减少buffer上加权数
    • 短路功耗: 与转换时间成正比,降低时钟信号转换时间(时钟树约束文件规定)
    • 跳变功耗: 占50%+,门的加权数值和互连线的总电容有关,降低互连线的长度/节点电容可降低功耗
  • 时钟树与噪声分析
    • 噪声主要来源:耦合电容对寄存器和时钟的效应
    • 降噪方法:局部电源地保护,增加驱动,高层金属多倍间隔走线

5.布线

将分布在芯片核内的模块,标准单元和接口单元 I/O pad 按逻辑关系进行互连,满足各种约束条件。

5.1 全局布线 global routing

制定全局布线的目标,根据设计特征(芯片or模块,形状,各种要求),做整体规划

  • 全局布线目标:总连接线最短;分散均匀,不局部拥塞;关键路径延时最小,遵守时序约束;信号完整,避免串扰;将BUS总线聚集相连;
  • 全局布线规划:将芯片核区分为若干方块,规定在方块内走多少线

5.2 详细布线 detail/final routing

网表中每个逻辑单元和模块间相互关系是通过接点(pin)实现,每个接点可以有多个连接终端(terminal)。需要连接在一起的一条网线称为net。

  • 详细布线目标:将属于同一个net的所有pin连接上;不同net的终端不能连接;遵守设计规则要求的距离间隔等。
    image
  • 设计规则:布线间距 pitch 水平/垂直方向;通孔和最小面积规则;密度要求;天线效应;串扰的预防和修复;纳米布线规则;对角45度布线规则
  • 布线修正:自动修正;渐进修正;局部修正

5.3 特殊布线

有自己的特殊要求:电源网络布线;时钟树布线(优先进行);总线布线;试验布线/虚拟布线(快,布局后进行,供时序分析使用)

5.4 布线算法

1. 通道布线&&面积布线
- 通道布线:FPGA使用,简单,迷宫法/李氏算法,线性探索算法
- 面积布线:ASIC使用,分为全局+详细布线(前两节内容)
2. 连续布线&&多层次布线
3.模块设计&&模块布线

6.静态时序分析 STA, static timing analysis

image

6.1 延迟计算与布线参数提取

芯片延时来自 器件延时+互连线延时,器件延时在时序库标定已经算出,时序分析时关注互连线寄生参数RC快速提取(放到SPF文件记录)和延时精确计算(放到SDF文件记录),及延时对时序的影响

  • 延迟计算模型
  • R电阻参数提取 公
  • C电容参数提取 式
  • L电感参数提取 。。。

6.2 寄生参数与延迟格式文件

  • 标准寄生参数格式文件 SPF Standard Parasitic Format 格式:DSPF(detailed), RSPF(reduced), SPEF(exchange)
    SPF保存RC提取的结果
  • 标准寄生参数交换格式文件 SPEF
    image
  • 标准延迟格式 SDF
    SDF保存延迟计算结果,是对布局布线后的设计状态延时的报告
    特定PTV条件下,根据3种端角corner,获得3个相应芯片寄生参数格式SPF+SDF(分fast, typical, slow)
    应用:反标 back-annotation 用SDF和布局布线后的网表检查设计的时序是否达到要求 #正标 forward-annotation 把SDF当作时序约束文件使用,若反标发现时序不达标(剩余时间slack为负),拿SDF当时序约束重新布局布线(已经被SDC方法代替)

6.3 静态时序分析

静态时序分析贯穿 RTL逻辑综合,布局,时钟树综合,布线,反标,出带 tape-out,不同阶段互连线延迟也即RC对器件的负载loading和信号转换slew/transition在不断更新与优化,器件(器件延迟由时序库提供)也在跟着变化。不同阶段的静态时序分析的区别在于时序结果与设计约束之间相差的准确性,前期是估算,布线后的结果准确。

  • 时序路径与时序分析

    • 时序分析 将某一段路径的时序与时序约束的要求进行比较。目的是检查在时钟的控制和约束下,与其相关的数据能否符合时序要求被记录存储下来。时序检查就是检查setup建立时间时序和hold保持时间时序。

    时序路径与同步 !!
    先找时序的起点和终点,再将路径分类。
    输入I,输出O,时钟点C
    时序的起点可以是I或C,输入终点可以是C或O,共三类路径:I2C / C2C / C2O
    image
    当前设计时钟 实际到达 左右系统间的 相互时间差别 受输入延迟的约束,同样 时钟实际出发 对左右系统间的 相互时间差别 受输出延迟的约束。
    违例:如果当前设计不能达到输入延迟和输出延迟的约束,则认为是对系统时序要求的违例

    时序分析的建立和保持 !!

    • 建立时间 (setup time) 在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器:条件(D launch + D data < D capture + T cycle)

    • 保持时间 (hold time) 在触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据同样不能被打入触发器:条件(D launch + D data > D capture)
      寄存器的setup和hold time都由时序库标定
      image

    • setup违例
      setup要求同步输入数据D必须在数字信号到达的某个时段到达而且不发生变化,数据才会被锁存Latched。使用最差条件时序库判断。
      出现setup违例要让时钟变慢(增长周期时间),或缩短数据路径的延迟。

    • hold违例
      hold要求同步输入数据D必须在数字信号到达的某个时段到达而且不发生变化,数据才会被锁存Latched。使用最佳条件时序库判断。
      出现hold违例要让时钟加快(减少周期时间),或增大数据路径延迟

    • 时序路径类型
      分析时实际数据信号路径的起点和终点是位于寄存器R的到达点D和出发点Q,再加上不含时钟的输入至输出的信号延时情况,故有四种时序类型:I2R, R2R, R2O, I2O
      image
      image

    • 时序分析的环境与时钟特性
      输入输出环境参数:驱动set_drive,驱动单元set_driving_cell,负载set_load,扇出set_fanout
      时钟相关特性参数:时钟插入延时latency,时钟不确定性/抖动jitter,时钟转换时间transition

    • 锁存器时序分析:实现参考 4.3(锁存器时钟树),分析较复杂

  • 时序分析特例
    在EDA设置特例,防止无谓的优化或出现虚假违例。
    多周期路径:单元需要多个周期运行
    虚假路径:功能性虚假路径,逻辑上/功能上不可能达到;将很长的组合逻辑/R2R电路定义为虚假路径

  • 统计静态时序分析
    使用概率密度函数描述延时,可以克服工艺参数误差带来的问题。统计静态时序分析的基本思路:根据工艺误差和设计误差进行分析计算。
    工艺误差:片间inter-die误差 和 片内intra-dia误差
    设计误差:信号延迟,单元库线宽/间距等差异,系统参数电压,系统温度等。OPC PSM可以用RET进行矫正。

6.4 时序优化

时序分析后如果芯片设计不能满足要求,则要进行时序优化以满足SDC的时序指标。

  • 造成违例的因素及解决:

    1. 不合理的约束:修改约束文件;
    2. 逻辑综合时根据不合理的WLM产生了无法实现的网表:根据当前结果产生“专用WLM CWLM, customized WLM”,再次进行逻辑综合修正网表,也叫做物理综合;
    3. 设计太大,互连线相互牵制:修正布局;
    4. 布局不合理:修正布局;
  • 原地优化 IPO, in-place optimization
    时序检查发现的违例主要是setup和hold。较小的违例/设计规则违例DRV(最大负载,最大扇出,最大转换时间)可通过 原地优化 解决,原地优化仅对当前设计网表进行逻辑优化,不对网表逻辑重组 logic structuring,故经过IPO后做LEC逻辑等效检查很简单。
    常用原地优化方法:

    • 挑选驱动能力大小不一样的逻辑单元(re-sizing)
    • "克隆"法:复制一个逻辑单元去分担负载
    • 加buffer or 用buffer替代两个反相器
posted @ 2021-08-20 20:31  HarryPotterIsDead!  阅读(3536)  评论(0编辑  收藏  举报