静态时序分析 Static Timing Analysis 教程
本文为Cadence Course Basic Static Timing Analysis v2.0笔记
1. Introduction to STA
1.1. STA Objectives
- Identify where STA fits into the flow
- Identify timing library information for the timing arcs in a design. e.g. Unateness, cell delays and net delays, slew.
STA 把所有 cell delays and net delays 加在一起进行验证。
1.2. STA Process
Design - Specify - Capture RTL & Constrants - Synthesis (with STA) - STA - PR (with STA) - STA - Layout
在综合和PR过程中各有一次,在综合和PR结束后各有一次。
1.3. STA Tools
综合和PR过程中:
- Timing engine in the Genus Synthesis Solution
- Timing engine in Innovus and Tempus software
Timing verification tools:
- Tempus Timing signoff solution
1.4. Timing Libraries
用来提供cells and interconnects (nets)的delay
Format:.lib (也有用ECSM and LBR)
1.5. Timing Paths
Timing paths include Timing arcs in cells and Timing arcs pf nets.
Timing arc代表了一个单独的causal relationship,是一个imaginary arc。Causal relationship是当输入因其输出变化而产生的一种关系。这些产生的delay都记录在timing library中。
1.6. Timing Arc Characteristics
Timing Arc Characteristics包括:Unateness, Slew, Delay. (都在library中)
- Unatenss:
如果输入与输出同向变化,称为positive unate(e.g. buffer); 反之称为negative unate(e.g. 反相器). NAND包含了两种。
- Slew:
Trasition time 是信号从高到低或从低到高产生的delay,通常是用10%-90%或20%-80%测量。Slew is the rate of transition (V/ns). Library中有slew threshold,STA tools以此计算input ris and fall times.
为了获取线性的部分,测量slew时通常选取比较小的范围,如40-60。e.g. slew在40-60(20% swing)范围内测得0.05,library slew threshold是10-90(80%),所以slew是0.05*80/20 = 0.20
Library中有look up table, 可根据input transition(slew)和output load得出对应的output transition. LUT中index1是row,index2是column。
在信号传递过程中可能会有slew degradation发生,尤其在某些比较长的net中。这也会导致信号衰减,delay变长。Slew degradation的信息也可以根据output pin transition (slew) and interconnect (net) delay在LUT中获取。
- Delay:
包含cell delay and net delay。
2. Cell Delay
2.1. Objectives
- 了解如何从library中获取cell delay信息
- 使用LUT计算cell delay
2.2. Cell Delay
之前提到过cell delay中都有timing arcs,因而会产生propagation delay。这些delay被称为cell delay。
Cell delay与这些有关:
- The intrinsic delay
- The load that it is driving
- The input transition (input slew)
Cell delay包括:
- Transition: 信号从低到高或从高到低所需时间。
- Intrinsic delay:当输入端的transition time为0,且输出端没有load时cell内的delay。
STA工具默认从输入端50%处测量至输出端50%处。在library中定义了输入输出的threshold可以用来计算delay。
Library中的cell model包含以下信息:
- 输入到输出的所有timing arcs
- Output function
- Cell footprint (告诉PR工具cell的对应layout是什么)
- Cell delays
- Output transition times
- Cell power dissipation tables
LUT有两种:
- 2D:包括input slew和output load
- 3D:包括input slew, output load和相关的output load。e.g. 有两个输出时,另一个输出可当做related output load。
3. Net Delay
3.1. Objectives
- 通过wire-lo