目 录
* 例题1 - 单周期建立时间 - 内部输入clk到D触发器端口
* 例题2 - 单周期建立时间 - 输入端口INA到D触发器端口
* 例题3 - 单周期建立时间 - D触发器端口到输出端口编辑
* 例题5 - 单周期保持时间 -内部输入clk到D触发器端口
-
静态时序所在设计链中的地位
保证建立时间与保持时间收敛,因此不需要生成很多的测试点向量来对电路进行分析。 
静态时序分析使用位置:在逻辑综合、单元布局、时钟树综合、布线中的每个阶段都要做一次时序分析。

* 动、静态分析相关特性对比 
动态时序分析与静态时序分析是互补的关系,因为动态仿真很难覆盖到所有的功能点或者特殊情况,所以必须要有静态分析来保证每个触发器能够安全地对数据进行采样。

静态分析的主要工具是synopsys公司的prime time。
* 建立时间和保持时间的定义
建立时间是时钟上升沿50%时,向前一段时间内数据应该保持稳定不变的时间间隔。保持时间是时钟上升沿50%时,向后一段时间内数据应该保持稳定不变的时间间隔。

* 时间裕量Slack定义
建立时间裕量 = 前数据变化点 - 建立时间要求的提前时间量
保持时间裕量 = 后数据变化点 - 保持时间要求的向后时间量
如果裕量大于等于0则表示数据可以安全被采样,否则不安全。 
裕量越大,时序设计越宽松,电路优化空间越大。
* 静态分析三步骤

* 时序路径的划分种类和方法。
还有一种是从触发器输入时钟clk出发回到触发器D输入的也算一条时序路径。

* 例题1 - 单周期建立时间 - 内部输入clk到D触发器端口


重点计算公式(红色线部分我们称之为“数据发射路径”,绿色为“数据捕获路径”):


![]()
其中,T_uncertainty指的是为芯片加工偏差预留下来的安全保护量,是根据工艺设计的相对固定量;T_cycle是时钟周期时间,一般是设计时就设定好的(加上一个时钟周期作为传递时钟延时是是因为上一级D触发器有一个周期时延);T_capture和T_launch与时钟树的传输延迟有关,是一个相对很小的值;T_ck2q是同个触发器两个端口之间的传输延时和D触发器的建立时间T_setup对于固定的工艺库来说一般也定义好了,是一个固定量。因此,两个触发器之间所有组合逻辑的延时T_dp是决定时间裕量是否满足设计要求(slack>0)的主要影响因素,我们通常用全局最大的T_dp(max)来衡量建立时间是否达标。
*如何看懂时序报告?

时序分组被归属于终点的时钟。


上升延时和下降延时一般取其中最大者加入计算。则发射路径和捕获路径延时已知。
计算公式为:9.41 - 0.26 = 9.15 ns > 0 ,满足建立时间裕量要求。

* 例题2 - 单周期建立时间 - 输入端口INA到D触发器端口



这里T_ck2q是由外部模拟的d触发器到里面的d触发器的延时等效的。
建立时间裕度=捕获时间 9.85- 发射时延2.65 > 0
* 例题3 - 单周期建立时间 - D触发器端口到输出端口


注意:这里在模块外虚构了一个d触发器,此时对于检测结点ROUT(模块边界)来说,左边是发射时序路径,右边是捕获时序路径(延时=下一级所有组合逻辑延时+所有建立时间)。因此,报告中5.1ns是负值。
* 例题4 - 单周期建立时间 - 输入端口到输出端口


注意: -0.16 - 4.06 <0 不满足时间约束。这里的input_ext_delay = 模块输入时钟斜变延迟+模块输入D寄存器内部延时+模块输入外部组合逻辑最大延时。这里的output_ext_delay=模块输出组合逻辑最大延时+模块输出时钟斜变延迟模块输出 - D触发器建立时间 - 工艺不确定预留延时。
建立时间裕度slack = output_ext_delay - (input_ext_delay + 模块内部最大组合逻辑延时)
* 例题5 - 单周期保持时间 -内部输入clk到D触发器端口
*保持时间定义

保持时间要求信号在上升沿触发后仍然能够保持一段时间,即所有逻辑的保留时间,最短的那个时间都能满足触发器的稳定要求。
*保持时间的静态分析与建立时间静态分析的差别
1、保持检查是从启动触发器时钟的一个时钟边缘到捕获触发器的同一时钟边缘。即时钟发射和时钟捕获是在同一时钟沿触发时计算的。与建立时间要求捕获时间比发射时间晚一个时钟周期不同。
2、保持检查与时钟周期无关。
3、在捕获触发器时钟的每个活动边缘上执行保持检查



保持时间裕度计算要注意的一点是,在建立计时报告中,为建立和保持计时报告计算间隙的方式不同。
建立计时报告中:要求时间(捕获) - 实际到达时间 (发射) > 0
保持计时报告中:实际到达时间(发射) - 要求时间(捕获) > 0
本文详细介绍了静态时序分析在集成电路设计中的重要地位,包括建立时间、保持时间、时间裕量等关键概念。通过多个例题解析了静态分析的步骤和方法,强调了其在逻辑综合、布局、时钟树综合和布线等阶段的应用。此外,还阐述了静态分析与动态分析的区别,并提供了如何解读时序报告的指导。

5454

被折叠的 条评论
为什么被折叠?



