数字电路的统计计时分析系统和方法

文档序号:6428292阅读:269来源:国知局
专利名称:数字电路的统计计时分析系统和方法
技术领域
本发明涉及数字集成电路的设计自动化。具体地说,涉及在存在延迟变化的情况下,数字电路的静态计时分析。更具体地说,本发明涉及在考虑并保存各个电路组件的延迟之间的相关性的时候,以概率或统计方式传播数字电路的到达时间和所需到达时间。
相关申请C.Visweswariah,“System and Method for Probabilistic CriticalityPrediction of Digital Circuits”,文件编号YOR92003-0402US1,美国专利申请号(待指定),申请日09/18/03。
C.Visweswariah,“System and Method for Incremental StatisticalTiming Analysis of Digital Circuits”,文件编号YOR92003-0401,美国专利申请号(待指定),申请日09/18/03。
这些同时待审的申请中陈述的说明作为参考整体包含于本申请中。
背景技术
对于后续每代集成电路技术来说,可变性成比例地增大。这种可变性的来源包括制造变化,设备疲劳,环境变化和锁相环(PLL)变化。就制造变化来说,线路前端(FEOL,the front-end-of-the-line)(其内定义有源晶体管的层)表现出晶体管电学特性方面的变化。在制造过程中,诸如栅极长度,半导体结的深度或氧化物的厚度之类物理量不能被极佳地控制,从而表现出变化,这会导致晶体管性能方面的变化。随着现代技术中,物理尺寸变得越来越小,可变性成比例地增大。另外,由金属互连层构成的线路后端(BEOL)(the back-end-of-the-line)也表现出可变性。例如,每个金属层的厚度、宽度和层间介电厚度是可变性的来源。这些又导致导线改变它们的延迟,事实上这些可变性的来源能够改变驱动它们的栅极的延迟和由它们驱动的栅极的延迟。
第二种主要变化起因于诸如热电子和负偏压温度不稳定性(NBIT)之类设备疲劳结果。在现场长期使用之后,由于这些物理现象的缘故,晶体管特性发生变化,导致电路组件的延迟发生变化。
第三种主要变化起因于诸如温度和供电电压之类环境影响。
第四种主要变化是PLL变化,它可包括PLL抖动和占空度可变性。
要指出的是除了上述之外,还存在其它变化来源,例如模型-硬件误相关性,硅绝缘体(SOI)历史影响和耦合噪声。在数字集成电路的统计计时分析中,还可考虑这些其它类型的变化。
可按照多种不同的方式对集成电路中栅极和导线表现出的延迟的变化分类。所述变化可源于制造过程中批次的不同,晶片的不同,芯片的不同,或者在单一芯片内部。光刻过程中的透镜象差效应会导致原版域两端晶体管有效长度的变化。在芯片两端能够存在温度和供电电压变化。也可依据其中形成可变性的时标对变化分类。例如,疲劳效应在数年内导致可变性,而芯片两端的温度和供电电压梯度可在数秒或数毫秒内形成,耦接噪声可在纳秒级或皮秒级内产生。无论按照何种方式对其分类,显然这些变化源使集成电路分析和设计更困难,在计时分析中,必须准确考虑这些变化源。
处理这种可变性的传统计时(timing)方法是在不同的“情况”或“角落”(corner)进行多次静态计时分析,从而确定在这些变化的影响下,电路的性能的散布。角落可包括“最佳情况”,“标称”和“最坏情况”。不幸的是,由于独立的并且重要的变化源众多,并且需要太多的计时运行(run),因此传统的方法不成功。一种解决方式是针对相对于某些变化源的最坏情况或保护带,但是这会导致悲观的性能预测。另一种解决计时运行的激增的方式是跳过位于某些角落的分析,但是这存在风险,因为在跳过的角落,电路的性能可能是不合格的,这可由在检测器上或在现场失效的芯片证明。由于这些影响,传统的计时方法迅速变得难以负担,同时既冒险又悲观。
传统计时方法所面临的问题的一种解决方法是统计或概率计时分析。在这种分析中,诸如延迟、到达时间和迟滞(slack)之类计时量不被看作单一数字,而是被看作概率分布。从而,借助单一计时运行预测在变化的影响下,电路性能的完整概率分布。可能避免不必要的风险,过多的计时运行和悲观主义的问题。现有技术中这种统计计时方法的四个例子包括Liou等的[J-J.Liou,K-T.Cheng,S.Kundu和A.Krstic,“Faststatistical timing analysis by probabilistic event propagation”,Proc.Design Automation Conference,2001年6月,Las Vegas,NY,661-666页],Scheffer[L.Scheffer,“Explicit computation of performanceas a function of process variation”,Proc.ACM/IEEE workshop on timingissues in the specification and synthesis of digital systems,2002年12月,Monterey,CA,1-8页],Gattiker等[A.Gattiker,S.Nassif,R.Dinakar和C.Long,“Timing yield estimation from static timing analysis”,Proc.IEEE International Symposium on Quality Electronic Design(ISQED),2001,437-442页],和Jess等[J.A.G.Jess,K.Kalafala,S.R.Naidu,R.H.J.M.Otten和C.Viserswariah,“Statistical timing forparametric yield prediction of digital integrated circuits”,Proc.DesingAutomation Conference,2003年6月,Anaheim,CA,932-937页]。上面引用的参考文献作为参考整体包含于此。
实践中现有方法不适宜的原因有几个。现有方法的主要缺陷是它们不能正确说明相关性。集成电路上栅极和导线的延迟表现出强相关性。考虑一个简单例子来证明相关性的重要性。具有50000个锁存器的芯片具有50000次设置计时测试和50000次保持计时测试。假定这些测试中的每次测试被成功满足的概率为99.99%。如果100000个概率完美相关,则芯片正确工作的总概率为99.99%。即,如果一个测试通过,则所有测试都通过。但是,如果概率是独立的,则产生工作芯片的概率为0.9999的100000次幂,结果是微不足道的0.005%!延迟相关性的来源有很多,下面说明一些例子。两个路径可共用相同栅极中的一些;这种情况下,两个路径的延迟相关。如果由于某些制造变化的缘故,特定的芯片具有更强的P型晶体管,则该芯片上的每个单个P型晶体管将更强。如果第三层金属稍厚,则在整个芯片内,第三层金属可能较厚。发射路径(使数据信号到达锁存器的路径)和俘获路径(使对应的时钟信号到达同一锁存器的路径)表现出一定的共同性,于是具有相关延迟。共同性可包括共用沿路径的一些栅极,共用金属层,共用供电电压岛,共用相同的栅极等。由于栅极在芯片表面的物理位置的缘故,它们的延迟也可以是相关的。例如,彼此邻近的两个栅极不可能看到显著的相对通道长度变化,于是,它们的延迟可能会密切相关。
必须准确考虑所有这些变化源,否则结果将没有意义。在Liou等的文献中,每个单个栅极的延迟被认为与其它任意栅极完全无关,致使分析在实践中无用。在Gattiker等的文献中,考虑了栅极延迟相关性。列举了关键路径,但是当组合这些路径的影响时,每个路径的延迟被认为与任意其它路径无关,从而忽略了数个重要的相关性来源。
在现有方法中,考虑相关性的一种方法是Jess等人的方法。该方法是基于路径的方法。每个路径的延迟或迟滞被收集并被表示成变化源的一阶模型。随后通过按照相关概率方式组合这些路径迟滞,计算整个电路或芯片的迟滞。不幸的是,任意电路中存在指数数目的路径。列举并分析电路中的所有路径不现实。Jess等建议考虑前N个关键路径,但是显然不能保证在过程空间或变化空间中的某一点或角落,第(N+1)个路径(或者除前N个路径之外的任意路径)不关键。所有基于路径的方法都具有路径数目过大,必须使用某一试探法来限制提交供详细分析的路径的数目的基本限制。
要指出的是虽然在集成电路的延迟可变性方面,存在许多重要的相关性来源,但是也存在一些完全随机的变化源。例如,在现代技术中,晶体管中氧化物厚度只为几个原子厚,出于各种原因,晶体管可能具有多于一层或少于一层的原子,导致一个晶体管与另一个晶体管之间相当随意的变化。虽然Liou等的现有方法能够处理这种随机变化,但是其它现有方法,例如Gattiker等和Jess等的方法不能处理这种随机变化。
此外,所有上述现有方法存在其它问题。来自静态计时程序的重要输出是能够使设计员,或者自动化合成或优化程序能够改进电路的诊断结果。现有方法缺乏这样的诊断结果。例如,如果某一电路路径对特定的变化源过于敏感,则对于变化,电路并不稳健。如果这种诊断结果存在,则设计员或合成程序能够采取各种描述降低所述过分敏感性。从而对于统计计时程序的输出来说,重要的是由变化源用参数表示。代替报告电路某一节点的到达时间具有过迟的概率分布,有益的是向各个变化源报告新近到达时间的敏感性,以便能够实现恰当的补救。现有方法以概率分布的形式产生统计计时结果。不幸的是,这无助于设计员或自动化优化程序改进电路的性能或稳健性。
由于这些及其它原因,工业实践中未使用文献中提出的统计计时方法。

发明内容
本发明的一个方面是数字电路的统计或概率静态计时的一种改进系统和方法。
本发明的另一方面是一种统计计时方法,所述方法具有计时图尺寸方面的线性复杂性,和变化源的数目方面的线性复杂性。
本发明的另一方面是一种统计计时方法,所述方法考虑了单个栅极和导线的延迟之间的相关性,以及电路路径的延迟之间的相关性。
本发明的另一方面是一种统计计时方法,所述方法允许包含确定部分,相关随机部分和独立随机部分的延迟模型。
本发明的另一方面是一种把数字电路的计时图的每个节点的到达时间、要求到达时间、变化(slew)和迟滞(slack)表示成概率分布的计时结果。
本发明的另一方面是一种按照由变化源参数化的形式,表示数字电路的计时图的每个节点的到达时间、要求到达时间、变化和迟滞的计时图。
本发明是一种考虑统计延迟变化,用于数字电路的统计或概率静态计时分析的系统和方法。每个栅极或导线的延迟被假定为由标称部分,由每个变化源参数化的相关随机部分和独立随机部分构成。在考虑相关性的同时,以参数化随机变量的形式传播到达时间和要求的到达时间。包括早(early)模式和晚(late)模式计时;处理组合和顺序电路;适应静态CMOS以及动态逻辑电路系列。就计时图的大小和变化源的数目来说,计时分析复杂性是线性的。结果是计时报告,其中以参数化的概率分布的形式,报告诸如到达时间和迟滞之类所有计时量。


参考附图,根据本发明优选实施例的下述非限制性详细说明,将更好地理解本发明的前述及其它目的、特征和优点,其中图1是本发明的一个实施例的方框图,描述了数字电路的统计或概率静态计时。
图2执行数字电路的统计或概率静态计时的优选方法的流程图。
图3表示了计时图的两个棱边和三个节点,举例说明统计计时分析中涉及的基本正向传播操作。
图4表示了计时图的两个棱边和三个节点,举例说明统计计时分析中涉及的基本反向传播操作。
图5是输出报告的一个优选实施例的方框图。
具体实施例方式
图1中表示了本发明的统计或概率静态计时流程。第一输入是代表要分析的电路的结构的连接表(netlist),表示在方框100中。第二输入是一组计时断言(assertion),方框110。这些计时断言通常包括主输入端的到达时间,主输出端的要求到达时间,时钟的相位信息,和主输出端驱动的外部负载的细节。断言可采取确定数字或独立概率分布或相关概率分布的形式。第三输入是一组参数化延迟模型,方框120。这些参数化延迟模型允许计时器确定不仅作为传统的延迟模型变量(例如输入变化(slew)或上升/下降时间,和输出负载)的函数而且作为变化源的函数的栅极或导线的延迟。例如,可采用类似于下述的一阶线性模型
这里延迟由确定(常数)部分a0,相关(或全局)部分 和独立(或局部)部分an+1ΔR组成。变化源的数目为n,并且ai,i=1,...,n是延迟对变化源xi,i=1,...,n的敏感性,an+1是对变化的独立随机来源R的敏感性。符号Δxi表示xi与其平均或标称值的偏差,ΔR表示R与其平均或标称值的偏差。要明白的是可根据需要在预表征步骤中保存延迟模型,或者在运行中(on the fly)计算延迟模型。保存延迟模型的格式可包括分析延迟等式或表格模型。下一输入是变化的来源的统计信息,方框130。该输入一般具有变化来源的列表,以及每个变化来源的平均值和标准偏差。这里规定变化源之间的任意相关性。
现有技术中,电路连接表100,断言110,参数化延迟模型120,变化源的统计信息130,以及它们的功能等同物为人们熟知。
新的概率或统计静态计时程序(方框140)接受所有这些输入,并产生新的统计计时报告(方框150)。该报告一般包括电路每个节点的到达时间、要求到达时间、迟滞和变化。这些计时量不是单个数字,而是概率分布。计时报告中的信息可采取多种形式,包括下述一种或多种每个计时量的平均值和方差,每个计时量的分布的参数化表示,每个计时量的分布的图形表示,和这些各个计时量之间的相关性报告。在计时报告中可加入诸如检查过分敏感性之类的各种自动审计。关心过分敏感性,因为为了改进电路的稳健性,必须降低所述过分敏感性。显然被计时的电路可以非常大,由数百万个栅极和导线组成。上面提及的所有信息可能极其庞大,从而通常提供选项以便有选择地输出所需的信息,或者甚至应要求计算或图形显示所有该信息。
图2的流程图中表示了方框140的新颖的统计计时器的细节。第一步是读取包含要被计时的电路的布局细节的连接表。由于该连接表通常呈分层结构的形式,因此使该连接表变平(即减少分层结构中层次的数目)。在方框210中,读取断言(每个断言可以是确定的或者概率的),并读取参数化延迟模型。变化源的信息,例如平均值和标准偏差,以及变化源之间的任意相关性被保存在存储器中。
方框220中所示的下一主要步骤是计时图的构成,这是在所有静态计时程序中都类似的一个步骤。在静态计时图中,每个节点代表电路的一个节点或信号,每个弧线或棱边代表当通过诸如栅极或导线之类电路组件传送一个逻辑转变(从低到高或从高到低)时,导致的电路中的延迟。于是在该图中捕获电路的所有可能有效逻辑转变。到达时间通常保存在静态计时图的节点上,单个栅极和导线的延迟保存在静态计时图的棱边上。晚模式中的到达时间是在其正确的逻辑值下,保证对应信号稳定的最早时间(已通过电路的任意可能路径),早模式中的到达时间是对应信号能够从其前一周期的稳定逻辑值改变的最早时间(即,输出不能早于早模式到达时间发生变化)。图中的顺序部件和动态电路由称为测试段的一种特殊棱边(edge)表示,所述测试段是计时图的(必须在计时图的两个节点之间进行计时测试以便确保电路的正确计时操作)的指示。本领域技术人员熟知关于栅极层次连接表和晶体管层次连接表的这种静态计时图的建立。
下一步骤是本发明的通过计时图的,到达时间的相关统计正向传播(方框230)。随后在方框240,进行本发明的要求到达时间的相关统计反向传播。最后,在方框250,产生本发明的计时报告。下面说明在早模式和晚模式分析方框230和240中涉及的计算细节。
静态计时分析中的四种基本运算是“加”、“减”、“最大”和“最小”。为了实现成功的统计计算分析,必须用概率等同物替代这四种基本运算。关键是概率等同物必须正确考虑和传播相关性。考虑图3中所示的简单情形,图3中,出自节点a(310)和b(320)的计时图的两条有向棱边(340和350)在公共计时节点c(330)相遇。棱边dac代表从节点a到节点c的延迟,棱边dbc代表从节点b到节点c的延迟。我们假定在a和b的早到达时间和晚到达时间为如下形式
ATalate=a0late+Σi=1nailateΔxi+an+1lateΔRalate,]]>ATblate=b0late+Σi=1nbilateΔxi+bn+1lateΔRblate,]]>ATaearly=a0early+Σi=1naiearlyΔxi+an+1earlyΔRaearly,]]>ATbearly=b0early+Σi=1nbiearlyΔxi+bn+1earlyΔRbearly,]]>并且延迟为如下形式daclate=g0late+Σi=1ngilateΔxi+gn+1lateΔRglate,]]>dbclate=h0late+Σi=1nhilateΔxi+hn+1lateΔRhlate,]]>dacearly=g0early+Σi=1ngiearlyΔxi+gn+1earlyΔRgearly,]]>dbclate=h0early+Σi=1nhiearlyΔxi+hn+1earlyΔRhearly.]]>在节点c,要求确定ATclate=max[ATalate+daclate,ATblate+dbclate]]]>和ATcearly=min[ATaearly+dacearly,ATbearly+dbcearly],]]>它们分别是保证节点c在当前时钟周期中稳定的最早时间和节点c可从其前一周期移动逻辑值改变的最早时间。虽然下面举例说明晚模式计算,可按照类似方式进行早模式计算。从而,ATclate=max[{a0late+Σi=1nailateΔxi+an+1lateΔRalate+g0late+Σi=1ngilateΔxi+gn+1lateΔRglate},]]>{b0late+Σi=1nbilateΔxi+bn+1lateΔRblate+h0late+Σi=1nhilateΔxi+hn+1lateΔRhlate}],]]>=max[{(a0late+g0late)+Σi=1n(ailate+gilate)Δxi+an+1lateΔRalate+gn+1lateΔRglate},]]>{(b0late+h0late)+Σi=1n(bilate+hilate)Δxi+bn+1lateΔRblate+hn+1lateΔRhlate}].]]>如果变化源(全局变量x和局部变量R)是高斯或正态分布,则我们试图找出其最大值的上述两个量值也是高斯分布。从而,我们可写作ATclate=max[{p1=N(μ1,σ1)},{p2=N(μ2,σ2)}],]]>这里p1和p2是具有假定为如上所述的平均值和方差的高斯随机变量。这两个随机变量是不独立的,即这两个随机变量相关。但是,变化源x可能相关或独立。下面说明这些情况中的每种情况。
假定变化源彼此独立,并且具有零均值和单位方差,则我们可把协方差矩阵写为cov(p1,p2)=Σi=1n{ailate+gilate}2+{an+1late}2+{gn+1late}2Σi=1n(ailate+gilate)(bilate+hilate)Σi=1n(ailate+gilate)(bilate+hilate)Σi=1n{bilate+hilate}2+{bn+1late}2+{hn+1late}2,]]>但是如果变化源不是独立的,则协方差矩阵是(a1+g1)(a2+g2)···(an+gn)an+1gn+100(b1+h1)(b2+h2)···(bn+hn)00bn+1hn+1[V](a1+g1)(b1+h1)(a2+g2)(b2+h2)······(an+gn)(bn+hn)an+10gn+100bn+10hn+1,]]>这里V是用户提供的变化源的协方差,为了简洁起见,在后一等式中省略了上标late。(注意在上面的独立情况下,V是对角矩阵)。在任一情况下,比较cov(p1,p2)=σ12σ1σ2ρσ1σ2ρσ22,]]>能够推导σ1、σ2和相关系数ρ。在变化源独立的情况下,这可通过收集平方和及我们试图确定其最大值的两个高斯分布的对应系数的乘积来实现。要指出的是到达时间和延迟的随机分量提供2×2协方差矩阵的对角项,从而增大正在确定其最大值的两个数量的方差,但是不提供非对角项,从而减小相关性系数。
下一步是计算max[p1,p2],这可利用如同在[J.A.G.Jess和C.Viserswariah于2002年6月27日向美国专利局申请的“System andMethod For Statistical Modeling And Statistical Timing Analysis OfIntegrated Circuits”,美国专利申请号0/184329],及Jess等[J.A.G.Jess,K.Kalafala,S.R.Naidu,R.H.J.M.Otten和C.Viserswariah,“Statisticaltiming for parametric yield prediction of digital integrated circuits”,Proc.Desing Automation Conference,2003年6月,Anaheim,CA,932-937页]中教导的现有方法实现。上述文献以参考的方式全部包含在此。简要地说,执行的优选方法是在恰当的数值范围内(例如,从max(μ1-3σ1,μ2-3σ2)到max(μ1+3σ1,μ2+3σ2))扫描变量η。在η的每个值下,p1=η的概率被乘以p2<η的条件概率,获得p1优于(dominate)p2的概率。同样地,在η的相同值下,p2=η的概率被乘以p1<η的条件概率,获得p2优于p1的概率。这种实践导致ATclate的概率分布。对η的所有值收集p1优于p2和p2优于p1的单个概率;在上面引用的参考文献中,这些概率被称为“联编概率”(binding probability),而在本文献中它们被称为“到达紧密度概率”(ATP),因为这些概率是分别依据图3的上棱边和下棱边确定位于节点c的到达时间的概率。我们把这些到达紧密度概率分别表示为T和(1-T)。要指出的是Jess等的方法中使用类似的技术,但是没有考虑延迟的完全随机分量,另外基于路径应用该方法,而这里在计时图的每个节点应用该方法。
在计时图中进一步前移之前的最后步骤是按照允许在计时图中向下游传播最后到达时间的方式,重新表述在节点c的最后到达时间。重新表述的方式如下所示。由于依据图3时间的T%的上棱边确定节点c的到达时间,从上棱边得到节点c的到达时间对全局变化源的依赖性,但是具有权重因子T。同样地,从下棱边得到节点c的到达时间对全局变化源的依赖性,但是具有权重因子(1-T)。数学上表示成ATclate=c0late+Σi=1ncilateΔxi+cn+1lateΔRclate]]>cilate=T(ailate+gilate)+(1-T)(bilate+hilate),i=1,2,···n.]]>剩下的是确定c0late和cn+1late,根据ATclate的概率分布易于确定它们。分布的平均值被赋予c0late,随机部分cn+1late被赋予一个值,以致分布的方差和重新表述的到达时间的方差相符。
现在已按照“标准形式”表述了节点c的到达时间,节点c的到达时间可向下游传播。要明白代替最大值,早模式计算只需要计算两个分布的最小值。按照稍微不同的方式计算条件概率,例程的其余部分相同。例如,在η的扫描过程中,p1=η的概率被乘以p2>η的条件概率,获得p1小于p2的概率。本领域的技术人员显然可扩展上述方法,以适应延迟等式的各种功能形式和各种概率分布。所需要的是计算紧密度概率T和(1-T),并按照“标准形式”重新表述位于节点c的到达时间,以便向下游传播。
当两个以上的棱边会聚于某一计时节点时,每次两个棱边地进行最大化和最小化。到达紧密度概率被保存为计算展开(unfold),随后在后处理步骤中分配最终的紧密度概率。例如,假定存在会聚于某一计时点的3条棱边。假定前两条棱边的紧密度概率分别被确定为60%和40%。现在,这两种分布的最大值再与由第三棱边代表的路径延迟进行max运算。假定对于第一对棱边来说,该计算得到的紧密度概率为80%,第三棱边的紧密度概率为20%。则这三条棱边的最终到达紧密度概率分别为48%(0.6×0.8),32%(0.4×0.8)和20%。
要明白按照类似方式,通过计时图,正向传播早模式到达时间,唯一的差别在于考虑早模式延迟,并且代替“max”运算使用“min”运算。
这样,通过分级(levelized)计时图,正向传播早到达时间和晚到达时间,直到计算了所有端点的到达时间为止。端点是主输出端或者是测试段。在主输出端,在晚模式下,从断言的要求到达时间中减去概率到达时间,在早模式下,从概率到达时间中减去断言的要求到达时间,从而分别确定主输出端的晚迟滞和早迟滞。零迟滞意味着准确表示计时要求。正迟滞意味着存在高于满足要求的某些计时余量。负迟滞意味着电路不能正确完成任务。
类似地,在测试段相互比较到达时间,以确定迟滞。例如,在锁存器,最后的数据到达时间通常被加入锁存器的设置(或保护)时间中,随后与早期时钟到达时间比较,以确保数据被正确锁存。对于不同类型的锁存器和不同类型的动态电路来说,这些比较采取不同的形式,但是它们都是相同原理的直接扩展。
在完成正向传播之后,下一步是要求到达时间的相关统计反向传播(图2的方框240)。始于每个端点,如同传统的静态计时分析中那样,按照分级(levelized)方式,反向传播要求的到达时间。但是,在本发明的方法中,这些要求的到达时间本质上是统计的。类似于图2的方框230进行图2的方框240中涉及的操作,但是存在一些重要差别。第一个差别是在反向穿越(traversal)中,延迟从要求的到达时间中被减去,而不是被加入到达时间。第二个差别是在反向穿越中,晚模式分析需要“min”运算,而早模式分析需要“max”运算。第三个差别是计时图的某一棱边的要求的到达紧密度概率被定义为依据该棱边确定该棱边的源节点的要求到达时间的概率。按照和方框220的正向传播期间的到达紧密度概率完全相同的方式确定这些紧密度概率,并按照完全相同的方式应用这些紧密度概率,以便在进一步传播之前,按照标准方式表述要求的到达时间。从而,类似于正向传播进行反向传播,只是存在这些不多的重要差别。
图4图解说明了反向传播。反向传播的基本目的是确定计时图的每个节点的要求到达时间。假定我们试图计算图4的节点a(框410)的要求到达时间,节点a具有分别到达节点b(框420)和c(框43))的两条扇出棱边(框440和450)。从而,在晚模式下,节点a的要求到达时间可被写为RATalate=min[{RATblate-dablate},{RATclate-daclate}]]]>早模式下,节点a的要求到达时间可被写为RATaearly=max[{RATbearly-dabearly},{RATcearly-dacearly}].]]>减去棱边的延迟,并获得max或min的实际过程和正向传播中执行的操作类似。同样地,按照和正向传播中相应计算完全类似的方式,确定要求的到达紧密度概率。
一旦完成正向和反向传播,则在计时图的任意地方,晚到达时间和早到达时间,要求的到达时间和迟滞现在都是可得到的,这些可按照许多不同的形式报告给用户(图2的方框250)。这些形式可包括图形图表,文本表格,应请求查询,失败计时测试的审计,在所有计时点或所有端点的过分敏感性的审计,等等。
图5的方框510中图解说明了计时报告。借助编程接口,或者借助硬盘文件可把计时报告传送给用户。计时报告通常由某些电路信息(方框520)和对应的统计计时信息(方框530)组成。电路信息可包括栅极、组件和导线的列表;或者路径的列表;或者节点的列表;或者顺序部件的列表;或者端点(主输出端和计时测试)的列表;或者时钟相位的列表。可按照各种方式分类和过滤这些项目,使得对于报告的阅读者来说,报告直观并且多产。就节点来说,对应的统计计时信息可包括一个或多个节点的统计到达时间,统计要求到达时间,统计变化(slew)或统计迟滞。对于计时测试或主输出端来说,对应的计时信息可包括计时测试被满足,或者主输出端满足其要求的到达时间的概率。对于路径来说,对应的计时信息可包括统计路径迟滞和统计到达时间,要求到达时间,其端点的变化和迟滞。此外,可按照不同形式表示报告中的每个统计计时量,包括平均值和标准偏差;平均值,独立随机部分和相关部分;计时量的分布的图形显示;或者对单个全局变化源的敏感性。此外,已知任意两个统计计时量,则报告可包括这两个计时量的相关系数,这两个计时量的协方差矩阵,以及一个计时量大于或小于另一计时量的概率。上述说明中的每个计时量显然可以是早模式或晚模式计时量之一;上升或下降计时量之一;以及特定于具体时钟的具体相位的计时量。此外,一旦完成统计计时分析,则可按照各种有益方式报告这些结果。
上面在计时图的简单片断的环境下解释了本发明的具体说明。本领域的普通技术人员能够扩展这些原理,以适应单独的升降到达时间及延迟;顺序(sequential)电路;具有透明(transparent)锁存器的电路;处理变化(上升/下降时间)传播和效果的扩展;完全随机的概率延迟模型;相关的概率延迟模型;随机的变化源;相关的变化源;具有关于锁存器设置和保持测试的概率保护时间的电路;具有关于动态电路计时测试的概率保护时间的电路;具有多个时钟相位的电路;时钟循环周期和计时断言是随机的情况;晶体管层连接表,以及借助电路模拟器,在传播过程中计算参数化延迟模型的情形。
根据本公开内容,对本领域的技术人员来说,概率或统计静态计时进程(图1的方框140)接收的输入显然可以是计算机系统已知的任意输入,包括(但不限于)键盘或鼠标输入,磁盘,磁带,CD-ROM,网络连接,光纤连接,射频链接,红外链接等。此外,包括参数化计时报告的输出(图1的方框150)可采取任意已知计算机输出的形式。这些输出包括(但不限于)打印机的打印输出,图形用户界面(GUI)或CRT上的图像,存储介质(例如存储器、CD-ROM、磁盘、软磁盘)上的内容,文件,通过网络(光纤、电话、电缆、射频、红外等)传送的信息。
权利要求
1.一种确定电路中的计时的系统,包括a.接收表示要计时的电路的布局的电路连接表的连接表输入端;b.接收代表边界计时条件的一组一个或多个断言的断言输入端;c.接收包含一个或多个变化源的可变性信息的一个或多个延迟变化源的列表的延迟可变性输入端;d.接收参数化延迟模型的模型输入端,参数化延迟模型包含关于电路的一个或多个组件的延迟的一个或多个模型,每个模型是一个或多个延迟变化源的函数;和e.确定并输出电路的一个或多个节点的统计到达时间的处理单元,该统计到达时间呈一个或多个变化源的概率分布的加权和的形式。
2.按照权利要求1所述的系统,其中通过一次访问电路的每个节点,所述处理单元确定统计到达时间。
3.按照权利要求1所述的系统,其中系统还确定并输出电路的一个或多个节点的统计要求到达时间,该统计要求到达时间呈一个或多个变化源的概率分布的加权和的形式。
4.按照权利要求1所述的系统,其中处理单元还确定并输出电路的一个或多个节点的统计迟滞,该统计迟滞呈一个或多个变化源的概率分布的加权和的形式。
5.按照权利要求1所述的系统,其中处理单元还确定并输出电路的一个或多个节点的统计变化,该统计变化呈一个或多个变化源的概率分布的加权和的形式。
6.按照权利要求1所述的系统,其中处理单元进行晚模式统计计时分析,并输出晚模式到达时间。
7.按照权利要求1所述的系统,其中处理单元进行早模式统计计时分析,并输出一个或多个早模式到达时间。
8.按照权利要求1所述的系统,其中向电路的每个组件提供一个或多个独立的升降统计延迟,所述处理单元确定并输出电路的一个或多个节点的一个或多个独立的升降统计到达时间。
9.按照权利要求8所述的系统,其中处理单元确定并输出电路的一个或多个节点的一个或多个独立的升降统计要求到达时间、一个或多个独立的升降统计迟滞、和一个或多个独立的升降统计变化。
10.按照权利要求1所述的系统,其中电路是下述一种或多种组合电路、顺序电路、静态逻辑电路和动态逻辑电路。
11.按照权利要求1所述的系统,其中电路是包含下述一个或多个的顺序电路边沿触发的锁存器、主从锁存器、电平灵敏锁存器和透明锁存器。
12.按照权利要求1所述的系统,其中电路包含多个时钟相位。
13.按照权利要求1所述的系统,其中电路的每个组件的参数延迟模型包括下述一个或多个确定部分、相关部分和独立的随机部分。
14.按照权利要求13所述的系统,其中变化源是相关的。
15.按照权利要求13所述的系统,其中变化源是独立的。
16.按照权利要求1所述的系统,其中参数化延迟模型被预存在系统的一个或多个存储器中的表中。
17.按照权利要求1所述的系统,其中参数化延迟模型在系统的一个或多个存储器中被预存为延迟等式的系数。
18.按照权利要求1所述的系统,其中通过运行中电路模拟确定参数延迟模型。
19.按照权利要求1所述的系统,其中每个断言是确定断言和统计断言之一。
20.按照权利要求1所述的系统,其中时钟-边沿信息是确定的时钟-边沿信息和统计的时钟-边沿信息之一。
21.按照权利要求1所述的系统,其中电路是顺序电路,每个计时测试的保护时间是确定的保护时间和统计的保护时间之一。
22.一种分析电路的计时的方法,包括下述步骤a.输入连接表、一个或多个断言、一个或多个参数化延迟模型和一个或多个变化源;b.建立代表电路的计时图,所述计时图具有一个或多个节点和一条或多个棱边;c.对于到达时间的正向传播,对计时图分级;d.在计时图的每一级,传播位于每个节点的一个或多个统计到达时间,每个统计到达时间是一个或多个变化源的概率分布的加权和。
23.按照权利要求22所述的方法,其中通过一次访问电路的每个节点,确定统计到达时间。
24.按照权利要求22所述的方法,其中确定并输出电路的一个或多个节点的统计变化,该统计变化呈一个或多个变化源的概率分布的加权和的形式。
25.按照权利要求22所述的方法,其中进行晚模式统计计时分析。
26.按照权利要求22所述的方法,其中进行早模式统计计时分析。
27.按照权利要求22所述的方法,其中向电路的每个组件提供独立的升降统计延迟,并关于电路的一个或多个节点,确定独立的升降统计到达时间。
28.按照权利要求27所述的方法,其中在电路的一个或多个节点,确定独立的升降统计要求到达时间、独立的升降统计迟滞和独立的升降统计变化中的一个或多个。
29.按照权利要求22所述的方法,其中电路是下述一种或多种组合电路、顺序电路、静态逻辑电路和动态逻辑电路。
30.按照权利要求22所述的方法,其中电路是包含下述一个或多个的顺序电路边沿触发的锁存器、主从锁存器、电平灵敏锁存器和透明锁存器。
31.按照权利要求30所述的方法,其中每个计时测试的保护时间是确定的保护时间和统计的保护时间之一。
32.按照权利要求22所述的方法,其中电路包含多个时钟相位。
33.按照权利要求22所述的方法,其中电路的每个组件的参数延迟模型包括下述一个或多个确定部分、相关部分和独立的随机部分。
34.按照权利要求33所述的方法,其中变化源是相关的。
35.按照权利要求33所述的方法,其中变化源是独立的。
36.按照权利要求22所述的方法,其中参数化延迟模型被预存在表中。
37.按照权利要求22所述的方法,其中参数化延迟模型被预存为延迟等式的系数。
38.按照权利要求22所述的方法,其中通过运行中电路模拟确定参数延迟模型。
39.按照权利要求22所述的方法,其中每个断言是确定断言和统计断言之一。
40.按照权利要求22所述的方法,其中时钟-边沿信息是确定的时钟-边沿信息和统计的时钟-边沿信息之一。
41.按照权利要求22所述的方法,还包括下述步骤a.对于要求到达时间的反向传播,对计时图分级;和b.在计时图的每一级,传播位于每个节点的一个或多个统计要求到达时间,所述每个统计要求到达时间是一个或多个变化源的概率分布的加权和。
42.按照权利要求41所述的方法,其中通过一次访问电路的每个节点,确定统计要求到达时间。
43.按照权利要求41所述的方法,其中确定并输出电路的一个或多个节点的统计迟滞,该统计迟滞呈一个或多个变化源的概率分布的加权和的形式。
44.一种分析电路的计时的系统,包括a.读取连接表、断言、参数化延迟模型和变化源列表的装置;b.建立代表电路的计时图的装置,所述计时图具有一个或多个节点和一条或多个棱边;c.对于到达时间的正向传播的装置,对计时图分级;d.在计时图的每一级,传播位于每个节点的一个或多个统计到达时间的装置,所述每个统计到达时间是一个或多个变化源的概率分布的加权和。
45.按照权利要求44所述的系统,还包括a.对于要求到达时间的反向传播对计时图分级的装置;和b.在计时图的每一级,传播位于每个节点的一个或多个统计要求到达时间的装置,所述每个统计要求到达时间是一个或多个变化源的概率分布的加权和。
46.一种保存分析电路的计时的方法的计算机存储器,所述方法包括下述步骤a.输入连接表、一个或多个断言、一个或多个参数化延迟模型和一个或多个变化源;b.建立代表电路的计时图,所述计时图具有一个或多个节点和一条或多个棱边;c.对于到达时间的正向传播对计时图分级;d.在计时图的每一级,传播位于每个节点的一个或多个统计到达时间,所述每个统计到达时间是一个或多个变化源的概率分布的加权和。
47.按照权利要求46所述的计算机存储器,其中所述方法还包括下述步骤a.对于要求到达时间的反向传播,对计时图分级;和b.在计时图的每一级,传播位于每个节点的一个或多个统计要求到达时间,所述每个统计要求到达时间是一个或多个变化源的概率分布的加权和。
48.一种由分析电路的计时的处理单元产生的计算机输出产品,所述处理单元包括下述步骤a.输入连接表、一个或多个断言、一个或多个参数化延迟模型和一个或多个变化源;b.建立代表电路的计时图,所述计时图具有一个或多个节点和一条或多个棱边;c.对于到达时间的正向传播,对计时图分级;d.在计时图的每一级,传播位于每个节点的一个或多个统计到达时间,所述每个统计到达时间是一个或多个变化源的概率分布的加权和。
49.按照权利要求48所述的计算机输出产品,其中所述方法还包括下述步骤a.对于要求到达时间的反向传播,对计时图分级;和b.在计时图的每一级,传播位于每个节点的一个或多个统计要求到达时间,所述每个统计要求到达时间是一个或多个变化源的概率分布的加权和。
全文摘要
本发明是一种考虑统计延迟变化,用于数字电路的统计或概率静态计时分析的系统和方法。每个栅极或导线的延迟被假定为由标称部分,由每个变化源参数化的相关随机部分和独立随机部分构成。在考虑相关性的同时,以参数化随机变量的形式传播到达时间和要求的到达时间。包括早模式和晚模式计时;处理组合和顺序电路;适应静态CMOS以及动态逻辑电路系列。就计时图的大小和变化源的数目来说,计时分析复杂性是线性的。结果是计时报告,其中以参数化的概率分布的形式,报告诸如到达时间和迟滞之类所有计时量。
文档编号G06F17/50GK1627302SQ200410078630
公开日2005年6月15日 申请日期2004年9月14日 优先权日2003年9月19日
发明者尚德莫里·维斯威斯瓦雷 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1