引言
从上篇文章,我们可以很明显的看出sta的两大因素,一个是延迟计算,一个是约束检查。sta最基本的工作之一就是检查路径延迟是否符合约束。
本篇文章主要讲延迟计算。约束检查在后续篇章讲。
路径延迟组成
路径延迟(path delay)由单元延迟(cell delay)和线延迟(wire delay)组成:
path delay = 所有cell delay + 所有wire delay。
上篇文章中的计算式:
d(ffl1->ffc1)
= d(ffl1cp2q) + d(c1) ~ ~ + d(unand1) + d(c2) + d(uinv2) + d(c3) + d(uinv3) + d(c4) + d(uinv4) + d(c5)
= 0.1 + 0.1 + 0.1 + 0.05 + 0.1 + 0.05 + 0.05 + 0.05 + 0.1 + 0.05
= 0.75ns
其中,d(ffl1->ffc1) 是从起始单元ffl1到终点单元ffc1的path delay,d(ffl1cp2q)=0.1ns 是ffl1时序单元的cell delay,d(unand1)是unand1组合逻辑单元的cell delay……,d(c1)是线网c1的wire delay,d(c2)是线网c2的wire delay……
请注意,不管是path delay,还是cell delay,都有明确具体的pin起点和终点,如d(unand1)指的是cell unand1的a pin到z pin的延迟。
cell delay
先讲cell delay的计算
我们将图一里反相器uinv2的内部mos电路画出来,来理解cell延迟是如何发生的:
图一 逻辑电路图(含bc工作条件下的延迟信息)
**图二 **反相器逻辑图
如上图所示,cell delay分 rise delay和fall delay 。
rise fall是按照cell的输出翻转(transition)方向来定义的。考虑输入是fall transition,输出是rise transition的情形。 一开始,uinv2的输入pin i上的电平是高电平,此时pmos处于截止状态,nmos管处于导通状态,电容的上端通过nmos管与地接通。 只要这个状态持续足够长,电容上的电会被放完,电放完时,uinv2单元的输出pin z处于低电平状态。 接下来,i端开始fall transition,到达pmos的阈值电压后,pmos管完全导通, 电源通过pmos管的channel向cap充电,由于电容的存在,z端电平出现一个缓慢上升的过程。
如图二(c)所示,从i端的fall transion的50%电压处,到z端的rise transion的50%处,其时间差(0.1ns)即是该反相器的i端到z端的rise delay。同样,从图八(d)可见,反相器的i端到z端的fall delay是0.15ns。我们注意到rise delay和fall delay不相等,这是因为pmos和nmos导通后的channel电阻不一样,所以充放电速度不一样,表现出来即是delay不一样。
实际的sta过程,是通过查找表的方式来获得cell delay的。 如下图,在nldm库里输入input transition和output capacitance,得到rise delay或者fall delay值:
wire delay
从uinv2的z输出端到uinv3的i输入端之间是由金属线连接起来的, wire存在寄生的电容电阻 。
**图三 **线延迟
**wire delay = r1*cap1 + (r1+r2)*cap(uinv3/i)。**一般情况, uinv2到uinv3之间的wire寄生参数可以用分布式rc树来建模,作为分布式rc数的简化模型,有t模型和pi模型。 这里我们使用了简化的t模型来建模和计算rc延迟。
现在,我们回头再来看一下上面的path delay,它并没有指出其delay是由起点处的rise transition还是fall transition经过路径传播引起的,所以严格来说,计算式的正确性是值得怀疑的。
有了上述知识后,我们重新标注了各个cell和wire的延迟,如图十所示,“r:0.1”代表rise delay是0.1ns,“f:0.1”代表fall delay是0.1ns。同时,我们从这篇文章开始,将时钟树也纳入考虑范围,因此,时钟树上的cell delay和wire delay也标识出来了。
图四 逻辑电路图(含bc****工作条件下的延迟信息)
很明显,到ffc1存在两条逻辑路径,一条是从ffl1出发的路径,一条是从ffl2出发的。从ffl1到ffc1的path delay有rise delay和fall delay,从ffl2到ffc1的path delay也有rise delay和fall delay,所以到ffc1的path delay总共有22 = 4条,即。同理,到ffc2的path delay也总共有22 = 4条。
小结
sta工具会计算这4条逻辑路径上的总共8个path delay。然后与时序约束值做运算,判断是否满足约束。
想必看到这里,读者童鞋会对路径延迟有一个大概的了解。下一篇,我们介绍如何对这些路径做setup、hold时序检查,以及相关的sta概念。
搭载恩智浦芯片组的4D成像雷达传感器
一文读懂电感的能量绝大部分存在气隙中
体感很冷还是热血沸腾 OFweek探讨机器人新时代
高通抢夺低端手机市场 与联发科相对
二(2)输入端CMOS与非门电路 (由MOS管构成)
STA分析—延迟计算
接近裸奔的工控系统将面临诸多威胁
丽台9750GPS评测 一款注重实用功能的产品
函数/任意波形发生器DG4000系列的特点
拥有对多项接入技术兼容的WDM-TDM PON系统
嵌入式软件代码压缩手艺分解
光纤及双绞线施工质量的检测方法
电缆护套是什么,电缆护套资料都有哪几种
RPO推出数字光波导触控技术 明年一月全面商用发货
Intel近日发布一款特别的笔记本“NUC M15 Laptop Kit”
2023年国内MCU厂商名录(上市企业)
国产8核5G芯片横空出世,不是华为是他
科大讯飞助力粤港澳大湾区连接亚洲 为G20峰会打头战
工业平板人脸识别系统解决方案
5G的到来能对VR行业起到什么作用