本章主要解决的问题:
什么是STA(静态时序分析)?
串扰以及噪声会对电路产生如何的影响?
分析的有关方法在哪个阶段使用?并且是如何使用的?
目录
1.1纳米级设计
1.2什么是 STA
1.3 为什么是它
1.4设计流程
1.4.1 CMOS数字设计流程
1.4.2 FPGA设计流程
1.4.3 异步设计
1.5 不同阶段的STA
1.6 STA的缺陷
1.7 考虑一下功耗的问题
1.8 可靠性的要求
1.1纳米级设计
在半导体器件的设计中,金属互连线普遍存在。当器件的尺寸缩小的时候,这些互连线将会影响器件的性能。对于深亚微米或纳米级的设计,互连线之间的耦合会引起串扰和噪声,相比于之前的大尺寸设计,这些因素对于纳米级的设计的性能,影响更为关键。
1.2什么是 STA
静态时序分析(Static Timing Analysis)是用于验证数字设计的时序问题的一种工具,作为替代的另一种工具是时序仿真(Timing Simulation)。我们一般所说的时序分析,指的就是以上的两种工具(STA & TS)
静态时序分析:不依靠于外部的输入。主要目的是验证设计能否在给定的频率下工作。
时序仿真:依靠于外加信号源的激励,观察输出的变化情况。
其中的两项检查:tsu建立时间 & thold保持时间 (需要满足两大时序方程,在此处省略)
DUA指定使用硬件描述语言,外部环境如时钟指定使用SDC。
进行STA,设计中所有可能存在的路径都会被检查一遍,所以说STA是一种很彻底很详尽的检查,后一小节也提到了 会更快!
1.3 为什么是它
噪音会对设计的性能造成影响,而逻辑仿真并不能将噪音、串扰和片上差异化的问题考虑在内,所以要选择STA。
1.4设计流程
1.4.1 CMOS数字设计流程
STA事实上,在图中的各个阶段都有运作,例如在逻辑优化之前运行STA,可以查出最差路径、关键路径;进行逻辑优化之后再运行STA,可以看是否仍存在失败的路径,是否仍需改进。
静态时序分析可以在门级网表上运行,依靠于:
- 互连线的建模方式:理想互连,线负载模型,具有近似RC的全局布线,或具有精确RC的真实布线。
- 时钟的建模方式:理想时钟(无延时)、实际时钟(有延时)
- 是否包含了信号间的耦合。
1.4.2 FPGA设计流程
在FPGA(现场可编程门阵列)设计中,静态时序分析(STA)的基本流程仍然有效。尽管FPGA的布线被限制在特定的通道内,但提取寄生参数和执行时序分析的机制与CMOS数字设计流程是相同的。
例如,STA可以在以下几种假设下进行:
- 理想互连:可以假设互连线是理想的,不考虑实际的寄生效应。
- 线负载模型:可以使用线载模型来近似互连的特性。
- 时钟树假设:可以假设时钟树是理想的,或者考虑实际的时钟树进行分析。
- 全局布线与实际布线:可以在假设全局布线的基础上进行分析,或者使用真实布线来考虑寄生效应
1.4.3 异步设计
大多是点对点的时序验证,或者是点对点的时钟偏移的验证。
1.5 不同阶段的STA
在逻辑层面(门级,尚未进行物理层面的设计)时,运行STA可以使用两种模型:
- 理想互连线或者是有线负载的模型
- 理想时钟或者是具有延迟、抖动估计值的延迟模型
在物理层面时,运行STA可以使用以下的模型:
- 各种的互连模型
- 真实的时钟
- 包含以及未包含噪声的模型
1.6 STA的缺陷
1.7 考虑一下功耗的问题
功耗的问题十分重要,多数的设计对于功耗有要求,另外功耗会伴随热量的产生,会对系统的工作环境造成影响。通常有总功耗以及待机功耗,待机功耗对于手持设备格外重要。
功耗的问题通常与时序一起出现,通常无法两者兼得。
1.8 可靠性的要求
部分内容翻译自“Static Timing Analysis for Nanometer Designs A Practical Approach”
欢迎指正!