2022年门级静态时序分析与PrimeTime使用[归 .pdf
《2022年门级静态时序分析与PrimeTime使用[归 .pdf》由会员分享,可在线阅读,更多相关《2022年门级静态时序分析与PrimeTime使用[归 .pdf(23页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第六章门级静态时序分析与PrimeTime使用一、PrimeTime 简介PrimeTime 是 Synopsys的一个单点的全芯片、门级静态时序分析器。它能分析大规模、同步、数字ASICS 的时序。 PrimeTime 工作在设计的门级层次,并且和Synopsys其它工具整合得很紧密。基本特点和功能:时序检查方面:建立和保持时序的检查(Setup and hold checks)重新覆盖和去除检查(Recovery and removal checks)时钟脉冲宽度检查(Clock pulse width checks) 时钟门锁检查 (Clock-gating checks) 设计检查方面
2、:没有时钟端的寄存器没有时序约束的结束点(endpoint)主从时钟分离( Master-slave clock separation)有多哥时钟的寄存器对层次敏感的时钟(Level-sensitive clocking )组合电路的反馈环(Combinational feedback loops)设计规则检查,包括最大电容(maximum capacitance)、最大传输时间(maximum transition)和最大扇出 (maximum fanout) PrimeTime 时序分析流程和方法:在时序分析之前需要做的步骤:1、 建立设计环境-建立搜索路径( search path)和链
3、接路径( link path)-读入设计和库-链接顶层设计-建立运作条件、连线负载模型、端口负载、驱动和传输时间2、 说明时序声明(约束)-定义时钟周期、波形、不确定性(uncertainty)和滞后时间 (latency) -说明输入、输出端口的延时3、 说明时序例外情况(timing exceptions )-多周期路径( multicycle paths)-不合法路径 (false paths) -说明最大和最小延时、 路径分割(path segmentation) 和失效弧(disabled arcs)4、 进行分析和生成报告-检查时序-生成约束报告-生成路径时序报告名师资料总结 -
4、- -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 23 页 - - - - - - - - - 二、静态时序分析中路径延时的计算静态时序分析工具一般将电路网表看成一个拓扑图,图中的节点 (node)代表电路中的引脚(pin) 。节点之间的边(edge)表示时序弧 (timing arc) ,有两种:# 连线延时 (net delay)- 驱动引脚 (drive pin) 和扇出 (fanout)之间的连接# 单元延时 (cell delay)- 输入引脚 (input pin) 和输出引脚
5、(output pin) 之间的连接延时计算就是计算每条时序弧的值,可能是单元延时也可能是连线延时。通过累计这些延时可以计算时序路径(timing delay) 的上升延时 (rise delay)或下降延时 (fall delay) 。正函数时序弧 (positive unate timing arc) :将上升延时和上升延时相加,下降延时和下降延时相加。例如一个AND 门单元延时和连线延时。负函数时序弧 (negative unate timing arc) :将新得到的上升延时和原来的下降延时相加,而新得到的下降延时和原来的上升延时相加。例如NAND 门。非函数时序弧 (non-unat
6、e timing arc) :将原来的延时和新得到的最差情况延时(worst-case delay)相加。非函数时序弧出现在不能从输入量的变化预测输出端逻辑值变化的地方,例如XOR 门。下图展示了一个电路逻辑网络是如何转化成一张时序图的:非线性延时模型(nonlinear delay model) :非线性模型是供应商以查表(lookup table) 形式在工艺库中提供的延时信息,它和时序分析计算有着紧密的联系。总的延时包含了单元延时和连线延时:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -
7、- - 第 2 页,共 23 页 - - - - - - - - - Dtotal = Dcell + Dc Dc 连线延时。它有两种计算方法,一是通过operating_conditions中的tree_type 属性和wire_load 模型;二是在标准延时方程中读入一个SDF 文件。Dcell 门自身的延时,典型地是取从输入引脚电压变化到50%到输出引脚电压变化到50%的之间的时间。CMOS 非线性模型有两种计算Dcell 的方法, 在一个工艺库中可以混用。一是用插值法在库所提供的单元延时表里查找;二是通过查传输(propagation)表和过渡 (transition) 表得到传输延时
8、和过渡延时,再计算单元延时:Dcell = Dpropagation + Dtransition 。Dpropagation 典型衡量Dpropagation 的方法是从输入引脚电压变化了50%到门输出电压即将开始转变(比方说变化了10%)之间的时间。这样,如果Dtransition 值定义为输出电压从10%变化到 50%之间的时间的话, 它就要被加到Dpropagation 上去。这样结果就是输入变化了50%到输出变化了50%之间的时间。Dtransition 输出引脚转变状态所需要的时间,有时也指输出斜坡(ramp)时间。 它是输出引脚两个参考电压之间变化的时间,可以是20%到 80%或
9、10%到 50%。它是通过插值查表法得到的。如果提供的是单元延时表,那么总延时就是:Dtotal = Dcell + Dc ;如果提供的是传输延时表,那么总延时就是: Dtotal = Dpropagation + Dtransition + Dc 。库单元延时时序弧的种类有:上升传输 (Rise propagation) 单元上升 (Cell rise) 下降传输 (Fall propagation) 单元下降 (Cell fall) 上升过渡 (Rise transition) 下降过渡 (Fall transition) 注:每个条延时弧可以有传输延时表或单元延时表,但不能都有;同时必须
10、有过渡延时表。每一个延时表可以通过以下六个变量中的一个到三个查找:input_net_transition output_net_length total_output_net_capacitance related_out_total_output_net_capacitance output_net_pin_cap output_net_wire_cap 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 23 页 - - - - - - - - - 延时计算举例看下图的
11、下降传输(fall propagation) 表:一个两维的表, 由输出端总电容和输入过渡时间查找。 输出端总电容由网络n1 处的引脚电容、 连线电容所决定。输入过渡时间由前面的U0门所决定。因为U1 中的时序弧是负函数性质的,所以U0 的上升过渡延时表就可以用来确定 U1 的输入过渡延时。假设Ctotal 是 110.1,输入过渡延时是0.34,用这两个值在下降传输延时表中查找。图中的黑点表示表中定义的点。四个点和Z 轴的高度值组成了供插值查找的领域,即图中的阴影部分。下降过渡延时由下降过渡延时表得到,这个例子中它是基于输出端总电容的一维表。前面提到了输出端总电容是110.1,通过简单的线性
12、插值查表就可以得到延时。然后将传输延时和下降的过渡延时相加即得到了通过U1 单元的下降传输延时时间。如果库中为U1 定义的不是传输延时表,而是单元延时表,那么过渡延时时间将不计入单元延时之内。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 23 页 - - - - - - - - - 环境缩放比例 (Environmental Scaling) 当计算总延时说,时序分析器会分别考虑影响Dtotal 的因素。每一种因素都有它自己的全局参数来反映它对总延时的影响。在通常情况下
13、这些因素包括工艺(process)、温度(temperature)和电压 (voltage)。下面的因子可以分别应用到延时方程中去:v:库中定义的电压变化的值Kv:电压对总延时影响的因子t :库中定义的温度变化的值Kt:温度对总延时影响的因子p:库中定义的工艺变化的值Kp:工艺对总延时影响的因子名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 23 页 - - - - - - - - - 三、PrimeTime 的基本概念一、定义设计环境在对设计作时序分析之前, 必须要定义
14、好设计环境以使得在那些情况下满足限制条件。通过以下这些信息来说明设计环境:时钟:时钟波形和时钟信号的性质;输入、输出延迟:信号到每个输入端口的时间从每个输出端口离开所需的时间。这些时间是用一个时钟周期的相对量表示的;输入端口的外部驱动: 每一个输入端口的驱动单元或驱动电容,还可以用一个确定的过渡时间来表示;电容负载:输入或输出端口的外部电容;运作条件:环境特性(工艺、温度和电压);连线负载电容:用来预测布局布线后每一条连线的电容和电阻。下图展示了用来定义设计环境的命令:二、时序声明通常当前设计只是一个更大电路的一部分。时序声明提供了时钟和输入、 输出延时的信息。在将设计建立起来之后,可以进行时
15、序声明。为了进行时序声明,包括以下一些内容:说明时钟信息描述一个时钟网络说明时钟门锁( Clock-Gating)的建立和保持时间( Setup and Hold Checks )建立内部生成的时钟说明输入延时说明时钟端的输入延时说明输出延时三、时序例外( Timing Exceptions)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 23 页 - - - - - - - - - PrimeTime缺省地认为所有的电路都是单时钟周期的。这意味着电路在一个时钟周期之内将
16、数据从一条路径的开始端传递到结束端。在某些情况下, 电路不是工作在这样的方式下。 对具体的一条路径来说不适用单始终周期时序, 所以必须对这些缺省的时序假设作例外说明。否则,时序分析将不能反映真实电路的工作情况。主要有以下一些内容:单时钟周期(缺省)路径延时限制设置失败( False )路径设置最大和最小路径延时设置多时钟周期路径路径说明方法有效地说明例外情况例外情况的优先级报告例外情况忽略例外情况去除例外声明四、报告的生成在定义了时序声明和例外情况之后,可以生成时序分析报告, 有助于定位设计中的违规之处。 在进行时序分析的时候, PrimeTime 会跟踪电路中所有的路径,然后根据电路说明、库
17、、声明和例外情况计算设计的延时。有以下一些内容:检查设计约束报告时序检测的覆盖率生成路径时序报告去除有寄存器的路径上的时钟扭斜(Skew) 生成瓶颈报告进行快速时序升级( Fast Timing Updates )生成约束报告生成设计信息报告生成连线负载报告生成时序例外情况报告报告最大扭斜检查( Maximum Skew Checks)报告不变的时序检查( No-Change Timing Checks )报告失效的时序弧( Disabled Timing Arcs)显示情形分析设置观察扇入逻辑观察扇出逻辑显示层次参考( Hierarchical References )报告单元参考( Cel
18、l References )生成总线报告生成反标延时和检查报告(Annotated Delay and Check Reports )生成模式分析报告( Mode Analysis Reports )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 23 页 - - - - - - - - - 生成库的报告生成延时计算报告以路径( Paths )来生成定制报告禁止和恢复时钟门锁、去除检查时钟门锁以弧( Arcs)来生成定制报告五、高级分析用 PrimeTime 可以进行各种
19、类型的高级分析。内容有:单运作条件分析( Single Operating Condition Analysis)最小和最大分析用片上变量( On-Chip Variation)分析设计分析模式摘要情形分析( Case Analysis )模式分析( Mode Analysis)检测失败路径层次敏感的、基于锁存器的设计分析异步逻辑的设计分析三态总线的设计六、读写 SDF 对于起初的静态时序分析,估计网络的延时信息是基于一个连线负载模式。实际上延时是与设计中单元和网络的布局布线有关的。一个布局器或一个布线器提供更详细和更精确的延时信息,可以用来提供给PrimeTime作更精确的分析。这个过程被称
20、作反标(back-annotation ) 。反标信息经常是以标准延时格式Standard Delay Format(SDF) 提供的。包括以下信息:读入一个 SDF 文件报告延时反标信息用 SDF标注条件延时( Conditional Delays)写一个 SDF 文件用 PrimeTime 写 SDF 去除标注延时和检查用命令行设置标注生成布局和布线的时序约束为整个设计提供约束覆盖可以用以下一些方法来读取SDF 的反标延时信息:从一个 SDF 文件里读取延时和时序检查用命令行、而不用SDF 标注延时、时序检查和翻转时间名师资料总结 - - -精品资料欢迎下载 - - - - - - - -
21、 - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 23 页 - - - - - - - - - 七、反标寄生信息PrimeTime为延时计算提供了增强的精确度。PrimeTime为集中参数电容、集中参数电阻、精简pi 模型和详细 RC 网络提供了寄生反标信息。有以下一些内容:寄生标注支持的文件格式标注集中寄生效应标准精简寄生效应和详细寄生效应精简 pi 模型和详细 RC 网络比集中参数电容和电阻精确得多,但是需要建立环境变量并且会占用更多的CPU 时间和内存。为了节约 CPU 时间推荐使用一个 SDF 文件,因为 PrimeTime 不必去计算
22、延时。八、编辑网表PrimeTime为编辑网表提供了命令。编辑网表是为了在不违背逻辑综合的前提下满足时序要求。九、相关特性鉴定( Context Characterization )相关特性鉴定是从一个子设计的环境和它的上级设计来提取它的时序特性。鉴定相关特性有两个主要应用:作为 DC 的脚本:鉴定所得的相关特性在DC 综合或逻辑优化时设置时序约束。在 PrimeTime 内部: 在研究芯片层次的时序约束时鉴定得到的相关特性可以用来作层次化的时序分析。十、生成快速时序模型快速时序模型是临时的时序模型, 可以用来快速描述时序信息而不需要用标志建模语言 (Stamp modeling langua
23、ge) 来写一个模型。在设计周期早期用快速时序模型来大致描述没有定义的模块的初始时序。快速时序模型最终要被标志模型(Stamp models)或门级网表代替,因为它们含有更精确的时序信息。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 23 页 - - - - - - - - - 四、PrimeTime 使用开始先建立目录并将PrimeTime 本身所带的一个例子拷到新建的目录下,在下面的内容中将要用到这个例子。mkdir primetime cd primetime c
24、p r $SYNOPSYS/doc/pt/tutorial . cd tutorial 确认目录中有以下这些文件:AM2910.db The design .db for the top-level of the design CONTROL.db The design .db for the CONTROL block REGCNT.db The design .db for the REGCNT block UPC.db The design .db for the UPC block Y.data The Stamp data file for the Y block Y.mod The
25、 Stamp model file for the Y block Y_lib.db The library .db for the Y block STACK_lib.db The library .db for the STACK block pt_lib.db The technology library .db stack.qtm.pt The quick timing model script for the stack block optimize.dcsh The dc_shell optimization script timing.dcsh An example DC she
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年门级静态时序分析与PrimeTime使用归 2022 年门级 静态 时序 分析 PrimeTime 使用
限制150内