跳变点是一切重要时序剖析东西中的一个重要概念。跳变点被时序剖析东西用来核算规划节点上的时延与过渡值。跳变点的有些不同意义或许会被时序剖析工程师疏忽。而这在SoC规划后期,也便是要对时序签字时或许会导致问题。后端规划工程师要知道跳变点的概念及其意义,这个非常重要。这也正是本文意图之地点。
1.跳变点界说:
跳变点可界说为逻辑高电平的百分比,作为丈量压摆率和时延值的参照。图1(a)演示的是压摆率跳变点。
图1(a)
图1(b)演示的是时延跳变点。
图1(b)
跳变点用来描绘标准单元或硬模块(IP)等的引脚过渡值特征,一起检查SoC时序。一般跳变点的值在时序模型(自在格局)中提及,时序剖析东西在核算时延和压摆率时会运用这些值。
2.怎么固定跳变点:
在描绘标准单元或硬模块(IP)特征时,跳变点关于特定的技能节点是固定的。将跳变点固定的意图是保证丈量的时延/压摆率挨近实践(SPIce)的波形。如图2(a)所示,当跳变点坐落切换波形的线性区(20%-80%)时,压摆率值比坐落非线性区(10%-90%)时要令人达观。
图2(a)
一般状况下,在过渡跳变点坐落线性区时,时序东西核算的单元时延更挨近Spice成果。
一起,晶体管的电压阈值(Vt)特性关于决议跳变点发挥了重要作用,由于输出波形在输入电压超越晶体管的Vt值后会发生线性化[1]。
时延阈值在输入和输出波形的线性区是固定的。只需时延跳变点坐落波形的线性部分,那么时延跳变点是20-80仍是50-50都没有联系。
3.自在格局提及的跳变点句法
下面给出的是典型时序模型(.liberty文件)的快照,以指示正在运用的跳变点
input_threshold_pct_rise:50;
input_threshold_pct_fall:50;
output_threshold_pct_rise:50;
output_threshold_pct_fall:50;
slew_lower_threshold_pct_rise:20;
slew_lower_threshold_pct_fall:20;
slew_upper_threshold_pct_rise:80;
slew_upper_threshold_pct_fall:80;
4.时序东西怎么处理跳变点来核算时延
a)当跳变点关于界面都相一起:
图3(a)描绘了驱动程序和负载具有相一起延阈值时的状况。
在给出的示例中,两者都为50%。
图3(a)
此刻,,考虑压摆率降级(由网络引起)后,时序东西核算的驱动程序到达其50%的逻辑高值和负载到达其50%的逻辑高值时两者之间的时间差。
类似的解说关于特定单元的输入和输出发生的下降信号和时延相同适用。压摆率值依据.lib中提及的变量进行核算。
b)当跳变点关于一个界面而不一起
(i)20%比50%:
图4(a)描绘了驱动程序时延跳变点为20%而对负载单元跳变点为50%的状况。
在这种状况下,与负载信号比较,驱动程序的信号会快速到达当时延跳变点值。因而此类界面的网络时延会大于驱动程序也到达50%景象下的时延[图3(a)]。
图4(a)
时序东西可经过线性或非线性扩展核算网络上呈现的额定时延。
(ii)50%比20%
图4(b)描绘了驱动程序跳变点为50%而负载单元的跳变点为20%的景象。
在这种状况下,与驱动信号比较,负载的信号会更早到达当时延跳变点值。这种状况经过时序东西凭借扩展(线性或非线性)来进行处理。
图4(b)
这儿需求留意的是:在这种状况下,扩展会引起“负时延”。
应留意:虽然实践国际不能在时域中后向穿越,可是时序东西需求将这种时延考虑在内,这样,从开端点(在本例中为驱动单元的输入引脚)到终端点(在本例中为负载单元的输出引脚)的全体途径时延挨近实践国际时延(Spice)。
5.与跳变点相关的其他问题:
(i)SDF中的负时延:在经过时序东西完结扩展后发生的负时延将以标准时延格局(SDF)进行仿制,用于门级模仿。不期望发生这种状况,由于门级模仿器无法处理负时延。
它们要么标志过错音讯要么表明此类状况的零时延。作为一种变通办法,可编写一个脚本(附录A),依据所核算的负时延,添加(或削减)负载单元(或驱动单元)时延。
(ii)端口和IO单元之间的附加时延:
一般时序东西陈述端口到I/O单元的时延。在硅片上,该网络作为接合线呈现在芯片外部。因而,关于该网络物理信息不能进行量化。
时序东西供给此类网络的时延陈述。原因包括:
a)由于没有时序模型可用于端口,因而刻序东西选用用户界说的或默许跳变点和电压电平核算时延。
b)由于假定跳变点和端口w.r.TI/O单元跳变点的电压电平值之间有差额。图5(a)和图5(b)描绘了此类状况。
图5(a)
图5(b)
要战胜这种状况,可执行以下操作:
1)为与I/O单元的端口相同的端口界说运转条件。
2)编写脚本为此类网注释零时延。
(iii)带有丢掉跳变点的库
假如咱们具有不包括跳变点阈值或电压电平值的时序模型,那么来自/到此类模型的界面的时延或许不正确。由于时序东西运用跳变点和电压电平的默许值,剖析这些途径。作为一种变通办法,用户应在向担任库的人员进行咨询后,再界说跳变点。
6.假如不经过时序东西进行扩展会怎样:
剧烈。这或许会导致芯片毛病,由于运用时序东西核算的时延不挨近Spice值。假如可认为跳变点不同的界面进行Spice剖析,应当是一种很好的操作办法。
假如对SOC中所运用的一切模型(硬模块)运用相同的跳变点,应当是一种很好的操作办法。
这完全可以消除因阈值不同所发生的问题。
7.Spice合作联系:
对多阈值途径进行Spice剖析,是增强决心并处理时序问题的好办法。
虽然在Spice国际,阈值实践并不存在。在时序模型中运用它们是为了简化时序剖析东西。
时序东西供给一个选项,仿制出特定时序途径的spice网列表。除了spice网列表外,还仿制出包括输入矢量的鼓励文件。仿制出的spice网列表或许不包括针对时序途径中标准单元和/或硬模块的spice网列表。
Spice模仿东西可读取仿制的spice网列表和标准单元/硬模块的spice网列表,然后供给鼓励文件来模仿重要途径。
需求经过剖析生成的波形,检查途径是否满意时序要求。丈量SP%&&&&&%E中此类途径的时延和过渡值时需求谨记:要选用与时序模型中所提及的跳变点相同的跳变点。
8.扩展类型:
大多数行业标准东西运用线性或非线性扩展作为其运作办法
a)线性扩展:在该办法中,东西假定不同阈值的线性斜坡。
该办法运用类似三角形的概念扩展驱动程序到负载单元的时延。
b)非线性扩展:此刻,东西运用电流源模型来界说坡道。这需求经过杂乱的数学方程来核算时延。
总归,本文以跳变点界说开端,然后阐释怎么固定用于特定技能库的跳变点。然后本文论说了时序东西怎么解说跳变点,以及当驱动程序与负载单元跳变点不一起或许会引发的问题。