DC时序分析.ppt
《DC时序分析.ppt》由会员分享,可在线阅读,更多相关《DC时序分析.ppt(95页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、主要内容主要内容n建立时间与保持时间n扇入与扇出n时钟常用术语常用术语nClock setup:时间建立关系ntsu:输入建立时间nth:输入保持时间ntco:时钟到输出延时ntpd:管脚到管脚延时nMinimum tpd & tco:最小tpd & tconClock Skew:时钟偏斜n最小时钟周期与最高频率nSetup Time:建立时间nHold Time:保持时间nLatency:延迟:延迟nSlack:时间裕量设计中常用的约束设计中常用的约束n设计中常用的约束(Assignments或Constraints)主要分为3类:时序约束:主要用于规范设计的时序行为,表达设计者期望满足的时
2、序条件,指导综合和布局布线阶段的优化算法等。区域与位置约束:主要用于指定芯片I/O引脚位置以及指导实现工具在芯片特定的物理区域进行布局布线。其他约束:泛指目标芯片型号、接口位置,电气特性等约束属性。时序约束的主要作用时序约束的主要作用n提高设计的工作频率通过附加时序约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。n获得正确的时序分析报告QuartusII的静态时序分析(STA)工具以约束作为判断时序是否满足设计要求的标准,因此要求设计者正确输入时序约束,以便STA工具能输出正确的时序分析结果。静态时序分析与动态时序仿真静态时序分析与动态时序仿真n动态时序仿真是
3、针对给定的仿真输入信号波形,模拟设计在器件实际工作时的功能和延时情况,给出相应的仿真输出信号波形。它主要用于验证设计在器件实际延时情况下的逻辑功能。由动态时序仿真报告无法得到设计的各项时序性能指标,如最高时钟频率等。n静态时序分析则是通过分析每个时序路径的延时,计算出设计的各项时序性能指标,如最高时钟频率、建立保持时间等,发现时序违规。它仅仅聚焦于时序性能的分析,并不涉及设计的逻辑功能,逻辑功能验证仍需通过仿真或其他手段(如形式验证等)进行。静态时序分析是最常用的分析、调试时序性能的方法和工具。Path & Analysis TypeLaunch & Latch Edge前级寄存器发送数据对应
4、的时钟沿,是时序分析的起点。后级寄存器捕获数据对应的时钟沿,是时序分析的终点时钟偏斜(clock skew)n时钟偏斜:指一个同源时钟到达两个不同的寄存器时钟端的时间差别。nclock skew:The difference in the arrival time of a clock signal at two different registers, which can be caused by path length differences between two clock paths, or by using gated or rippled clocks. Clock skew i
5、s the most common cause of internal hold violations. n实例 n由于时钟到每个触发器的互连线长短不一样,造成信号到达clock pin的时间也不一样,触发器也不会同时翻转。Skew的定义就是最长路径减去最短路径的值。 Global skew是指,同一时钟域,任意路径的最大skew。n根据时钟域以及路径关系,skew可以分为global skew,local skew,interclock skew。Local skew是指,同一时钟域,任意2个有逻辑关联关系的路径最大skew。interClock skew是指,不同时钟域之间路径的最大ske
6、wnLatency分为source lantency 和 一般的latency。n一般一般Latency指的是时钟端口到内部时序器件的时钟管脚的延迟。nSource latency 指的是时钟源到时钟端口的延迟。n一般只考虑latency即可。latency对于内部逻辑的影响对于内部逻辑的影响 n下图是不考虑latency的情况 n内部逻辑延迟的限度为:T2-T1-Tinput_delay-Tsetupn当考虑了latency的时候。n那么留给内部逻辑的最大延迟为:T2(T2+Tlatency)-T1-Tinput_delay-Tsetup。n会发现留给内部逻辑的延迟会变大,那么会给DC更大的
7、空间来综合。时钟时钟jitter n正常的时钟到来时蓝色的时序图。但是由于无法预知的因素,时钟可正常的时钟到来时蓝色的时序图。但是由于无法预知的因素,时钟可能提前(粉色)或者延迟(红色)到来,这就是能提前(粉色)或者延迟(红色)到来,这就是。n提前到来为提前到来为,延迟到来为,延迟到来为 。nDC中把skew和jitter合成一个。 用set_clock_uncertainty来设置。n下文中提到的skew指的是合体,即uncertainty。最小时钟周期与最高时钟频率最小时钟周期与最高时钟频率n最小时钟周期:tCLK = Microtco + tLOGIC + tNET + MicrotSU
8、 tCLK_SKEWtCLK_SKEW = tCD2 tCD1n最高时钟频率:fmax = 1 / tCLK同步电路数据传输模型Tipsn同步系统的运行速度同步系统的运行速度 即即同步时钟的速度。同步时钟愈快,同步时钟的速度。同步时钟愈快,电路处理数据的时间间隔越短,电路在单位时间处理的数电路处理数据的时间间隔越短,电路在单位时间处理的数据量就愈大。据量就愈大。nsetup slack = () - ( + + + - ) 建立时间与保持时间建立时间与保持时间IC 代码的代码的综合过程综合过程可以说是可以说是时序分析过程时序分析过程,dc会将设计会将设计打散成一个个路经,这些路经上有打散成一个
9、个路经,这些路经上有cell延迟和延迟和net延迟,然延迟,然后后dc会根据你加的约束,来映射库中符合这种延迟以及驱会根据你加的约束,来映射库中符合这种延迟以及驱动的器件。从而达到综合的目的。动的器件。从而达到综合的目的。 setup time 和和 hold time是是dc所有时序约束的基础。所有时序约束的基础。 nsetup time即建立时间,也就说数据在时钟到来之前保持稳定所需要的时间。即建立时间,也就说数据在时钟到来之前保持稳定所需要的时间。nhold time 即保持时间,也就是说在时钟到来之后数据需要保持稳定的时间。即保持时间,也就是说在时钟到来之后数据需要保持稳定的时间。 D
10、ata Arrival TimeLaunch Edge + 前级寄存器Clock path的延时 + 前级寄存器Cell从时钟Pin到数据输出Pin的Net延时(uTco) + Data path的延时 时钟到达前级寄存器的时刻 + 前级寄存器时钟到后级寄存器数据输入的延迟 Clock Arrival TimeSlacknSlack用于表示设计是否满足时序:正的正的Slack表示满足表示满足时序(时序裕量),负的时序(时序裕量),负的Slack表示不满足时序(时序表示不满足时序(时序的欠缺量)。的欠缺量)。nSlack: Slack is the margin by which a timin
11、g requirement was met or not met. A positive slack value, displayed in black, indicates the margin by which a requirement was met. A negative slack value, displayed in red, indicates the margin by which a requirement was not met.nslack = - 时钟到输出时钟到输出 n时钟到输出延时:从时钟信号有效沿到数据有效的时间间隔。tCO = Clock Delay + M
12、icrotCO + Data Delay管脚到管脚延时管脚到管脚延时(pin-to-pin delay) n管脚到管脚延时tPD:指信号从输入管脚进来,穿过纯组合逻辑,到达输出管脚的延迟。ntPD (pin-to-pin delay) :The time required for a signal from an input pin to propagate through combinational logic and appear at an external output pin.指定全局时序约束指定全局时序约束n时序驱动的编译n全局时钟设置n全局的I/O时序设置n时序分析和报告选项n时
13、序向导指定个别时序约束指定个别时序约束n指定个别时钟要求n个别时序约束输入最大最小延时输出最大最小延时反相时钟非时钟tCO要求(最大、最小)、 tSU要求、 tH要求、 tPD要求剪除时序路径n个别时序约束的对象单点点到点通配符时序组指定个别时钟要求指定个别时钟要求n时钟分类:独立时钟衍生时钟DC中的路径(中的路径(Path)nstart point 1. input port(顶层设计的输入端口)2.clock pin of sequential cell(触发器的clock pin) nend point 1. output port(顶层设计的输出端口)2.data pin of seq
14、uential cell(触发器的data pin)n一个设计中基本的路经分为4种: path1: input port to data pin of sequential cellpath2: input port to output portpath3: clock pin to data pin of next sequential cellpath4:clock pin to output portn dc中对于建立时间的分析是基于路径的最大延迟n dc中对于保持时间的分析是基于路径的最小延迟 例:时序分析案例例:时序分析案例n给定给定setup time 和和hold time ,要
15、求算出最小时钟周期,要求算出最小时钟周期n假设时钟周期是假设时钟周期是20,每个触发器的每个触发器的cell 延迟是延迟是1, 触发器的建触发器的建立时间是立时间是1, 保持时间是保持时间是0.5, 分析图中的建立时间和保持时分析图中的建立时间和保持时间的间的slack。 n首先要分析路径,找出最长和最短路径,因为dc的综合都是根据约束而得到最短和最长路径来进行器件选择的。所以接下来将图中的所有路径标出。因为没有前级(input_delay)和后级电路(output_delay),我们只分析图中给出的 路径,如下图: n对于红色路径:Td=Tcell+Td4+Td5+Td6=1+4+3+1=9
16、n对于黄色黄色路径:Td=Tcell+Td4+Td5+Td6+Td8=1+4+3+1+2=11n对于路径:Td=Tcell+Td1+Td2+Td3=1+2+3+2=8n对于路径:Td=Tcell+Td7+Td2+Td3=1+2+3+2=8 分析结论分析结论n对于hold time的slack : Tshortest-Thold=8-0.5=7.5nTlongest=11,Tshortest=8n 对于setup time的slack:Tclk-Tlongest-Tsetup=20-11-1=8n对照第一副示意图与此比较,建立时间看D2 ,保持时间看D1,因为同时把Tl和Ts放在一个图例中,看起
17、来可能有些误解:)set_input_delay ninput_delay是设置外部信号到达输入端口的时间,dc会用它来计算留给内部逻辑的空余时间是多少。n之所以让ClkA和Clk的时钟周期不一致,主要是用来说明上图中黄色部分的。黄色部分的确认是很重要的。这是DC用来确定时间余量(slack)的关键。n如上图所示,黄色部分已经确实是最小相位差。那么根据input_delay时间以及库中触发器的setup建立时间,可以知道留给内部逻辑的延迟时间是红色部分n综合过程中,dc会优化Logic2的时序,以使他达到时序要求。Tlogic_delay=Tmin-Tinput_delay-Tsetup。se
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DC 时序 分析
限制150内