CN101802783A - 对于串扰引起的噪声的受约束的攻击者集合选择方法 - Google Patents

对于串扰引起的噪声的受约束的攻击者集合选择方法 Download PDF

Info

Publication number
CN101802783A
CN101802783A CN200880106748A CN200880106748A CN101802783A CN 101802783 A CN101802783 A CN 101802783A CN 200880106748 A CN200880106748 A CN 200880106748A CN 200880106748 A CN200880106748 A CN 200880106748A CN 101802783 A CN101802783 A CN 101802783A
Authority
CN
China
Prior art keywords
assailant
victim
noise
influence
coupling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200880106748A
Other languages
English (en)
Other versions
CN101802783B (zh
Inventor
S·阿巴斯波
A·阿克特
G·M·谢菲尔
D·辛哈
D·J·维迪格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101802783A publication Critical patent/CN101802783A/zh
Application granted granted Critical
Publication of CN101802783B publication Critical patent/CN101802783B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

通过在设计中对每个网计算延迟和摆转以及时间窗口,接着对每一给定的攻击者-受害者组合(106、107)进行耦合分析,并计算噪声对受害者网(106)的时序的影响,来进行预静态时序分析运行以改善集成电路芯片的设计。给定使耦合的攻击者(107)彼此相关的功能群组的集合,基于所计算的每一攻击者对该受害者的影响,确定攻击者的最坏集合,以使得它们满足来自所述功能群组的约束(203,204)。类似的,计算对于电感性耦合噪声对时序的影响的最大量起贡献的攻击者的集合(205)。此外,本发明的一个目的是计算减少的攻击者的集合对给定受害者线的耦合噪声影响并调整在预静态时序分析运行中计算的延迟值(206)。

Description

对于串扰引起的噪声的受约束的攻击者集合选择方法
技术领域
本发明总的涉及设计自动化领域,更具体的,涉及通过考虑攻击者线(aggressor line)之间的逻辑约束计算耦合噪声(couplingnoise)对集成电路的静态时序(static timing)以及误切换(falseswitching)的影响,来改善集成电路芯片(IC)设计。
背景技术
在高速超大规模集成(VLSI)电路的设计中,静态时序分析(STA)是必要步骤。STA在VLSI芯片被投入制造之前验证VLSI芯片将在所需频率上正确地运行。
芯片中相邻的布线(wire)引起对彼此的电容性耦合影响(下面也称作串扰)。随着CMOS技术按比例缩小,芯片内部的布线变得更高更细。此外,由于设计复杂度的增加,使得布线彼此更近。这些因素一起使布线之间的耦合电容对其相应的接地电容之比放大,并因而由于以下原因增大了串扰对VLSI电路时序的重要性:1)如果连接到两个相邻布线的两个CMOS驱动器的输出管脚处的电压信号正在相同的方向切换(即,或者两者都上升或者两者都下降),则两个布线之间的耦合电容将迫使信号加速,这是因为CMOS驱动器所见到的有效电容减小;2)如果连接到两个相邻布线的两个CMOS驱动器的输出管脚处的电压信号在相反的方向切换(即,一个上升而另一个下降),则两个布线之间的耦合电容将迫使信号减慢,这是因为CMOS驱动器所见到的有效电容增加。此外,耦合还导致错误的切换,这可能导致电路中的功能失效。应当补充的是,由于设计复杂度和布线的电流密度的增加,电感性耦合对时序的影响变得关键起来。因此,考虑耦合事件的时序分析是不可避免的。
参考图1a,示出了芯片上的一组布线101,它们之间具有耦合。为了进行耦合分析,通常将设计中的网(net)分类成两个主要的群组:1)受害者线(victim line),和2)攻击者线。门102和门103之间的布线被称作受害者106,而所有的其他相邻布线107被称作对受害者的攻击者。例如,由门104驱动并由门105接收的布线被称作攻击者107。在受害者线的时间上邻近区域中的一个或多个攻击者上的信号转变(切换)由于电耦合而在受害者上暂时引起信号。这被称作噪声冲击(noise bump)。该噪声冲击能够潜在地改变104处的逻辑值,并导致功能失效。在攻击者切换时的时间窗口的时间上邻近区域中受害者正在经历信号转变的情况下,所引起的噪声导致从102到103的信号传播和转变时间中的变化。该变化常常被命名为耦合引起的延迟推出(coupling induced delay push-out),并且能够导致芯片中的延迟失效。
为了在芯片设计和验证阶段期间就考虑到由于耦合而引起的功能和延迟失效,如授予D.J.Hathaway等人的美国专利No.6,615,395中所描述的,考虑这样的不利情形(pessimistic situation),其中假设所有的攻击者都在导致对受害者的时序产生最坏可能影响的方向上切换。仅考虑那些其切换时间窗口与受害者重叠的攻击者。然后,分析由于这些攻击者而在受害者上引起的噪声冲击,以用于功能验证以及时序分析。已观察到:由于线之间的逻辑关系,受害者线的所有攻击者可能不同时切换。
参考图1b,示出了耦合到四个(攻击者)网a1、a2、a3和a4(其分别具有耦合电容C1、C2、C3和C4)的网v。考虑v上的下降转变。在没有任何功能信息的情况下,v上的最坏情况延迟推出被确定为在它的所有攻击者在v的下降转变的时间上邻近区域中显示出上升转变时存在。然而,从图1b显然可以看出,在给定的时钟周期(clock cycle)中仅a1和a2中的一个可以上升。类似的,观察到在给定的时钟周期中a2、a3和a4中至多两个可以上升。
再次参考图1a并首先关注耦合引起的噪声的时序影响,利用电容性耦合到一组攻击者的受害者网的例子来说明现有技术中提及的耦合分析方法的重要缺点。为了计算噪声对给定的在切换的受害者的转变时间和传播延迟的最坏情况影响,假设所有的攻击者同时地在受害者线的相反方向上转变,产生注入到受害者上的不利的噪声值。然而,攻击者之间的功能关系可以防止这样的情形,其中所有的攻击者转变同时地在相同的方向上。例如,如果图1a中所示的该组攻击者是解码器的输出,那么在时钟周期内仅该组攻击者中的一个可以在给定的方向上转变。此外,在受害者和诸攻击者之间存在的功能关系可以限制某些后模式假定(late-mode assumption)。当假设所有的攻击者都在受害者的相同的方向上切换时,等同的考虑可以类似应用于前模式分析(early-mode analysis)。出于说明的目的,下文中将考虑后模式情形。
减小不利情形的一个方法是通过在耦合分析期间就考虑到现有技术中提及的功能关系。然而,穷举不与任何功能关系冲突的攻击者切换的所有可能的组合具有指数复杂度,并且是过于耗费时间的,尤其是在存在大量的攻击者的情况下。此外,不是立刻就能清楚如何评估满足功能关系的攻击者的哪个组合对于受害者是最坏情况。满足给定的功能关系(或逻辑约束)的攻击者切换的集合被命名为可行的切换。
在Chai等人所著的论文“Temporo-functional Crosstalk NoiseAnalysis”,Design Automation Conference 2003以及Glebov等人所著的论文“Delay Noise Pessimism by Logic Correlations”ICCAD2004中描述了现有技术的方法,两者都提出使用SAT(可满足性(Satisfyability))和BDD(二元决策图(Binary DecisionDiagram))解算器(solver)来获取满足所述功能关系的攻击者的最坏集合。这些由于大的运行时间而对于复杂电路是不实用的。
发明内容
本发明的主要目的是提供一种考虑攻击者线之间的逻辑约束有效计算耦合噪声的影响的系统和方法。
本发明的另一目的是对设计中每一个网进行预STA运行以计算延迟和摆转(slew)以及时间窗口,接着对每一给定的攻击者-受害者组合进行耦合分析,并计算噪声对受害者网的时序的影响。
本发明的又一目的是:给定一组使所耦合的攻击者彼此相关的功能群组,基于所计算的每一攻击者对受害者的影响计算满足来自该功能群组的约束的攻击者的最坏集合。
本发明的再一目的是确定对电感性耦合噪声对时序的影响的最大量起贡献的攻击者的集合。
本发明的又一目的是计算被减少了的攻击者的集合对给定的受害者线的耦合噪声影响,以及调整在预STA运行中所计算的延迟值。
通过如下的方法提供了本发明的这些以及其他的目的、方面和优点:对于串扰引起的噪声选择有效减少执行耦合引起的静态时序分析的不利情形的受约束的攻击者集合。该方法进一步减少在电路的耦合引起的误切换分析期间的不利情形。
在本发明的一个方面,选择在逻辑约束下潜在地引起对给定的受害者网的最大耦合噪声/延迟的攻击者网(或攻击者)的集合。所述约束将攻击者分配到特定的群组,并限制任何群组中可以在给定的时钟周期中在切换的攻击者的最大数目。该过程通过消除误相互作用(interaction)从而有助于减少对时序的总体耦合影响的不利情形。攻击者可以属于多个群组。通过穷举所有可能的解来发现对该问题的最佳解的直截了当的方法是没有吸引力的,因为它具有最坏情况的指数复杂度,并且不能随攻击者和群组的数目的不断增加而良好地按比例调节。
在本发明的另一方面,可以在数学上将该方法公式化,其中某些具体情况被公式化为线性编程(LP)问题。线性编程问题包括线性目标函数的优化,并且受线性等式和不等式约束的限制。不拘于形式的,LP利用线性数学模型实现了最佳结果。存在能够计算最优解的基于拉格朗日松弛(Lagrangian Relaxation,LR)和泛化(generalized)的网络流的技术。已经进一步证明:通过允许次优解,可以显著加速LR方法。该方法是有效率的,且具有多项式复杂度。前述的技术可以集成在现有的分析耦合对时序的影响的算法中。本发明的方法在耦合分析期间还考虑了门的噪声易感性,将其与攻击者集合选择过程组合。此外,所提出的技术与米勒因子类型(Millerfactor type)的耦合分析算法以及动态延迟调整算法两者兼容。
在本发明的另一方面,提供了一种在集成电路(IC)芯片设计中对于每一受害者获得耦合的攻击者的最佳集合的方法,该方法包括以下步骤:a)确定使耦合的攻击者彼此相关的功能群组;b)对于对受害者的每一攻击者,确定攻击者对受害者的影响;c)基于测量的每一攻击者对受害者的影响,确定满足来自功能群组的约束的基本最坏的攻击者的集合;以及d)在IC芯片设计中,利用所述基本最坏的耦合的攻击者的集合提供耦合的攻击者的最佳集合。
附图说明
本申请包括附图,并且其构成本说明书的一部分,附图示出了本发明当前优选的实施例,其与上面给出的一般性描述以及下面给出的优选实施例的具体描述一起用于解释本发明的原理。
图1a示出了芯片上具有一组布线的现有技术电路的说明性实例,其显示了耦合噪声影响。
图1b示出了耦合到四个攻击者网(a1、a2、a3、a4)的现有技术的受害者网v。
图2是示出了本发明的诸步骤的流程图。
图3示出了具有注入的噪声的情况,以及受害者接收器门的噪声注入曲线。
具体实施方式
将参考在附图中示出的以及在下面的描述中具体化的非限制性实施例来更加全面地解释本发明及其各种特征和有利的细节。应当理解,图中所示出的特征并不必然按比例绘制。省略了对公知的部件和处理技术的描述,以便不会不必要地使本发明在细节上不清楚。
参考图2,示出了根据本发明的用于计算受害者的攻击者的最坏可行集合的方法。下文中描述了对于电容性耦合的网的集合的解决方案。如下面将解释的,这些解决方案可以有利地扩展到电感性耦合。
在框201中,获得芯片中的网之间功能关系。这可以利用行业标准功能分析工具来确定或者由设计者断言。形成攻击者群组来代表功能关系。每一攻击者群组包含一组攻击者,其中每一攻击者与特定的切换方向相关联。对每一群组关联一数目,该数目表示该群组中已知正在切换(在给定方向上)的攻击者的最大数目。攻击者可以属于多个群组。对于上升和下降转变,可以不同地规定群组。例如,可以具有这样的上升攻击者群组,其包含四个网a1、a2、a3和a4且具有这样的约束:在任何时钟周期中这四个攻击者中的至多两个可以被认为在切换。对于正在经历下降转变且耦合到这四个攻击者的受害者,该群组约束意味着可以认为这四个攻击者中仅有两个具有上升转变,并且可以利用它来计算最坏情况中引起的噪声。注意,在应用该约束之外,还应用其他约束,包括:网在它们的时间窗口中必须重叠,耦合电容大于给定的阈值,等等。也可以应用用于减少不利情形的其他现有技术的过滤(filtering)技术。在框202中这些过滤器被示出为在耦合分析期间应用于每一受害者。
在下一步骤中(框203),计算每一攻击者对受害者上引起的最坏情况噪声的贡献。利用得分来表示每一攻击者对受害者的影响,所述得分即与每一攻击者相关的量度。对于攻击者,较高的得分意味着它对受害具有较大的影响。对于该步骤,可以采用若干种方法。优选使用基于仿真或基于互连分析的方法来对每一受害者-攻击者对计算由于耦合而引起的在受害者网的接收门处的延迟或摆转的最坏变化,同时将所有的其他攻击者保持在固定的逻辑状态。延迟、摆转或者两者的组合的变化可以用作攻击者的得分。替代的,可以计算在受害者和所有其他攻击者被保持在固定的逻辑状态时每一攻击者所引起的对受害者的噪声冲击。可以有利地采用使用噪声冲击峰值和/或宽度的组合的量度来作为该攻击者的得分。与所引起的噪声冲击相关联的功率则是用于攻击者得分的另一量度。其他的简单的方法包括利用每一攻击者-受害者对之间的总耦合电容来作为所述得分,或者,利用某种形式的基于公式的延迟推出(例如,Elmore延迟)作为攻击者得分。本发明可以容易地扩展来支持任何评分机制。目前,将暂考虑由独立计算的攻击者得分计算由于所有攻击者而引起的噪声对受害者的累积影响。
在框204中,将受约束的攻击者集合选择问题公式化。出于说明的目的,考虑受害者网v以及一组m个电容性耦合的攻击者网a1、a2、...、am。设想对于最坏情况耦合引起的延迟的受害者上的下降转变和攻击者上的上升转变。每一攻击者ai与得分Ψi相关,该得分是利用203中提及的方法计算的。基于给定的功能信息,提供一组n个攻击者群组,其被表示为g1、g2、...、gn。攻击者可以属于多个群组。功能信息施加约束:在给定的时钟周期内,群组gi中至多Ni个攻击者能够切换(对于该示例,术语“切换”意味着攻击者经历上升转变)。给定上述信息和约束,那么所考虑的问题的目的是发现使受害者网v上引起的噪声最大化的在切换的(上升的)攻击者的可行集合。
为了数学地表示攻击者ai是否属于群组gj,对于每一个1≤i≤m和1≤j≤n,如下定义一组变量xij
Figure GPA00001049907500071
对于用于受害者上引起的最大噪声被认为在切换(上升)的攻击者的集合,对于每一1≤i≤m如下定义另一组变量si
Figure GPA00001049907500072
因此,受害者上引起的总的噪声被表示为
Figure GPA00001049907500073
这意味着受害者上的总的噪声是由于仅来自那些被认为在切换的攻击者的噪声引起的。
在给定的时钟周期内群组gj中至多Nj个攻击者可以切换的约束被数学地表示为:
Σ i = 1 m x ij s i ≤ N j
所考虑的该问题现在可以表示为:
使∑i=1 mΨisi最大化
s.t.(约束于)
Σ i = 1 m x i 1 s i ≤ N 1
Σ i = 1 m x i 2 s i ≤ N 2
.
.
.
Σ i = 1 m x in s i ≤ N n
0≤si≤1,si是整数,且1≤i≤m。
该问题是整数线性编程问题,它是其中某些变量为整数的线性编程问题的特殊情况。但是,可以看出,该问题能够有利地作为线性编程问题处理。在框205中,简要地描述了最优且有效地求解该问题的两个“聪明的”方法。在第一方法中,利用拉格朗日松弛(下面,称作LR)来求解该问题。Ahuja等人在书名为“Network flows:Theory,Algorithms and Application”教科书中描述了其细节。LR是广为所知的用于求解数学问题的方法。
在LR处理过程之后,从优化问题中选择的约束被松弛并在将它们与非负乘数相乘之后加到目标函数。被称作LR次问题(sub-problem)的新的更简单的问题被公式化,其解是对原问题的解的上边界。对于次问题,对于每一攻击者群组的约束被松弛。通过检查可以容易地求解具有线性复杂度的新问题。寻找乘数以使得对于新问题的解与原问题的解一致的问题被称作LR双重问题,并且如Ahuja等人所描述的,可以通过现有技术的方法如乘数-升序(multiplier-ascent)、网络流、或亚梯度(sub-gradient)优化等来求解。另外,在该阶段可以通过允许最终解中的小的误差来进行运行时间精确度折中,这允许例程更快收敛,并且显著地使其执行加速。LR还可以用于获得关于最优解的边界,并引导分支和边界(branch-and-bound)解算器。
该问题还可以公式化为网络流问题。定义了有向图(directedgraph)G=(V,E),其具有“成本”cost(i,j)以及与图中的每一个弧(i,j)关联的容量uij。fij用于表示弧(i,j)上的流值。在该图中,引入了与每一攻击者网ai对应的节点ηai,以及与受害者网v对应的节点ηv。还在图G中与每一攻击者群组gj对应地引入了节点ηgj。最后,还类似引入了G中的虚的源节点ηs,以及从该虚的源节点ηs到每一攻击者节点ηai的弧。每一弧(ηs,ηai)的容量被设置为1。与该弧相关联的成本被设置为相应的攻击者ai的攻击者得分的负数,也即,cost(ηs,ηai)=-Ψi
对于使得ai属于gj的每一攻击者ai和群组gj对,引入了从节点ηai到节点ηgj的弧。这些弧中每一个的容量被设置为1,并且成本被设置为0。接着,对于图中的每一节点ηgj,引入了弧(ηgj,ηv)。与这些弧中的每一个相关联的成本cost(ηgj,ηv)被设置为0,同时相应的容量被设置为Nj(群组gj中能够在时钟周期中切换的攻击者的最大数目)。最后,引入从ηs到ηv的弧,以使得cost(ηs,ηv)=0,并且其容量为m。对于图中的每一节点,将值b(i)与其关联,且该值表示其供应(supply)(或需求,如果b(i)<0的话)。b(ηs)被设置为m,而b(ηv)被设置为-m。每一b(ηgj)被设置为0。对于每一攻击者节点ηai,如果不存在沿着弧(ηs,ηv)的进入流,则b(ηaj)被设置为0,以及被设置为其扇出(fan-out)弧的数目减1再乘以进入流。在数学上,这可以表示为:
b ( η a i ) = f η s η a i ( Σ j = 0 n x ij - 1 )
利用现有技术的方法,如泛化的网络单纯形(simplex)算法,来求解关于该图的泛化的最小成本流问题。根据所获得的解,可以将原问题中的变量si设置为
Figure GPA00001049907500092
这对每一si得到最优解。由于图上的具有整数容量、供应、和成本的最终流总是整数,因而保证了对于每一si的整数解。在该情况下,可以有利地将成本(或攻击者得分的负数)按比例缩放为整数,从而保证了整数的最优解。
一旦已经确定了可行的攻击者的最坏集合,则将该信息反馈到耦合分析工具中。可以通过将在切换的攻击者的得分相加来计算受害者上的噪声。替代的,将不被认为在切换的攻击者过滤出来,并进行仿真以评估当所有剩余的攻击者一起在切换时受害者上的噪声。这在框206中示出。一旦已经分析了所有的受害者,则迭代的耦合分析处理过程终止,如框207中所示。
前面描述的本发明能够容易地扩展到分析耦合噪声引起的误切换或功能噪声的问题。另外,可以考虑受害者的接收门的噪声易感特性。决定门的噪声易感性的门的特性常常被表示为噪声拒绝曲线(NRC),其表示门能够耐受的最大噪声。给定引起的噪声冲击的宽度和峰值,则NRC被表示为噪声冲击宽度的函数,并且NRC给出了受害者能够耐受而不失效的噪声冲击的最大峰值。
现在参考图3,示出了在具有接收门303的受害者网上引起具有宽度wT和峰值pT的噪声冲击308。在309中示出了对于303的噪声拒绝曲线。pT和在wT处估算的NRC之间的差表示超出该门的噪声易感性的噪声的量。
“贪婪方法(greedy approach)”将是去寻找对于最坏情况噪声影响的使所引起的噪声冲击的峰值最大化的攻击者的可行切换。代替的,应当寻找使超出门的噪声易感性的噪声的量最大化的攻击者的集合。从NRC观察到:能够具有超出该NRC的噪声冲击峰值,尽管具有较大峰值的噪声冲击可以不超过它。
下文中所示的是用于在考虑受害者的接收器的NRC时将攻击者集合选择问题的目标函数公式化的方法。分别利用pi和wi通过ai表示由于攻击者而引起的噪声冲击的峰值和宽度。表示对于攻击者集合的最坏情况下的累积噪声冲击的峰值的一个方式是:通过将被认为在切换的攻击者所引起的每一噪声冲击的峰值相加。这在数学上可以表示为:
p T = Σ i = 1 m p i s i
为了计算累积噪声冲击的宽度,使累积噪声的总面积与各单独的噪声冲击的和的总面积相匹配。在该处理过程中,对于噪声冲击采用了三角形形状。从而,累积噪声冲击的宽度被计算如下:
w T = Σ i = 1 m p i w i s i Σ i = 1 m p i s i
给定累积噪声峰值和宽度,期望的是使该峰值超出在所述累积噪声冲击宽度处估算的受害者驱动器的NRC的量最大化。这被表示如下:
使pT-NRC(wT)最大化
以示例的方式,设考虑NRC在数学上表示为:
对于某些常数k1和k2 NRC ( w ) = k 1 + k 2 w .
现在,攻击者集合选择问题被表示为:
使
Figure GPA00001049907500113
最大化
s.t.(约束于)
Σ i = 1 m x i 1 s i ≤ N 1
Σ i = 1 m x i 2 s i ≤ N 2
.
.
.
Σ i = 1 m x in s i ≤ N n
0≤si≤1,si是整数,且1≤i≤m。
其中,pT和wT如上所示。采用数学解算器来寻找对于该问题的攻击者的最坏的可行集合。有利地,可以使用LR来对此类问题求解。
此外,所提出的方法是可以扩展以包括电感性耦合的。可以利用行业噪声分析工具对不同切换方向的每一攻击者获取由于电容性或电感性耦合(或两者的组合)而引起的最坏情况噪声冲击。然后可以在其公式中使用相应的得分。
最后,可以在典型的迭代耦合分析算法的多个阶段采用所述用于攻击者集合选择的方法。在一个方法中,可以仅在迭代的最后步骤使用攻击者集合选择以用于减少不利情形。在另一方法中,对于受害者网,可以对于受害者网的每一迭代中使用过滤技术。设若所有网之间时间窗口完全重叠的话,还可以在任何利用对于攻击者和受害者网的输入摆转的默认值的时序分析之前采用攻击者集合选择方法。这提供了用于快速过滤攻击者和减少不利情形同时避免代价高昂的耦合迭代的方法。
本发明可以以硬件、软件、或者硬件和软件的组合来实现。本发明可以以集中式方式在一个计算机系统中实现,或者,可以以其中不同的要素(element)跨若干互连的计算机系统展布的分布式方式实现。任何类型的计算机系统或者适于执行这里描述的方法的其他装置都是适合的。硬件和软件的典型组合可以是具有计算机程序的通用计算机系统,所述计算机程序在被加载并执行时控制该计算机系统以使得其执行这里所描述的方法。
本发明还可以嵌入在计算机程序产品中,其包括所有使得能够实现这里描述的方法的所有特征,并且其在被加载到计算机系统中时能够执行这些方法。
本文中的计算机程序装置或计算机程序表示如下的指令集的以任何语言、代码或符号的任意表述,所述指令集意图用于直接或者在转换成另一语言、代码或符号和/或以不同的材料形式再现之后,使具有信息处理能力的系统执行特定功能。
尽管已经结合示例性实施例具体描述了本发明,但是显然根据本说明书,许多的替代、修改和变化对于本领域技术人员而言将是显而易见的。因此,预期所附权利要求将包含落在本发明的真实范围和精神内的任何这些替代、修改和变化。
工业应用性
本发明在集成电路(IC)芯片的设计和制造中具有工业应用性,并且尤其适用于通过考虑攻击者线之间的逻辑约束而有效评估耦合噪声的影响来优化设计的方法和系统。

Claims (24)

1.一种在集成电路(IC)芯片设计中对于每一受害者(106)获得耦合的攻击者(107)的最优集合的方法,该方法包括以下步骤:
a)确定使所述耦合的攻击者彼此相关的功能群组(201);
b)对于对受害者的每一攻击者,确定攻击者对该受害者的影响(203,203);
c)基于所测量的每一攻击者对该受害者的影响,确定满足来自所述功能群组的约束的基本最坏攻击者的集合(204,205);
d)在IC芯片设计中利用每一受害者的所述基本最坏的耦合的攻击者的集合提供耦合的攻击者的最优集合(206);以及
e)将结合了所述耦合的攻击者的最优集合的时序分析应用于所述IC芯片的设计。
2.如权利要求1所述的方法,其中,在步骤a)中,每一功能群组进一步包括关于同时进行转变的攻击者的数目的信息。
3.如权利要求1所述的方法,其中,在步骤a)中,每一功能群组进一步包括关于攻击者同时在哪个方向进行转变的信息。
4.如权利要求1所述的方法,其中,在步骤a)中,每一功能群组进一步包括关于哪种时序分析模式受该功能群组的影响的信息。
5.如权利要求1所述的方法,其中,所述攻击者电容性地耦合到所述受害者。
6.如权利要求1所述的方法,其中,所述攻击者电感性地耦合到所述受害者。
7.如权利要求1所述的方法,其中,所述攻击者电容性且电感性地耦合到所述受害者。
8.如权利要求1所述的方法,其中,在步骤b)中,通过计算由于攻击者而引起的受害者的延迟中的变化来确定每一攻击者的影响。
9.如权利要求8所述的方法,其中,在步骤b)中,通过计算由于攻击者而引起的受害者的有效电容中的变化来测量每一攻击者的影响。
10.如权利要求8所述的方法,其中,在步骤b)中,通过计算由攻击者注入到受害者上的噪声来测量每一攻击者的影响。
11.如权利要求1所述的方法,其中,在步骤b)中,通过计算噪声弛量(noise slack)来测量每一攻击者的影响,所述噪声弛量是通过将注入的噪声与受害者的噪声拒绝曲线进行比较来定义的。
12.如权利要求1所述的方法,其中,在步骤b)中,通过计算由攻击者而引起的受害者的摆转中的变化来测量每一攻击者的影响。
13.如权利要求1所述的方法,其中,在步骤b)中,利用统计的时序和噪声分析引擎来测量每一攻击者的影响。
14.如权利要求1所述的方法,其中,给定的攻击者属于超过一个的功能群组。
15.如权利要求1所述的方法,其中,在步骤c)中,通过构造线性编程(LP)问题来计算攻击者的最坏集合。
16.如权利要求1所述的方法,其中,在步骤c)中,通过执行拉格朗日松弛来确定攻击者的最坏集合。
17.如权利要求1所述的方法,其中,在步骤c)中,通过构造网络流问题来确定攻击者的最坏集合。
18.如权利要求1所述的方法,其中,在关于所述IC芯片设计的时序分析程序中执行所述步骤(a)至(c)。
19.如权利要求1所述的方法,其中,在所述IC芯片设计的功能噪声分析程序中执行所述步骤(a)至(c)。
20.如权利要求1所述的方法,其中,在关于时序程序的噪声影响确定中执行所述步骤(a)至(c)。
21.如权利要求1所述的方法,其中,所述约束将攻击者分配到选定的群组,并限制任一群组中在时钟周期中切换的攻击者的最大数目。
22.如权利要求21所述的方法,其中,通过攻击者的通过消除误相互作用而减少对时序的耦合影响中的不利情形的能力,来选择所述约束的所分配的攻击者。
23.如权利要求21所述的方法,其中,所述攻击者被分配到多个群组。
24.一种机器可读的程序存储装置,其有形地实施机器可执行的指令的程序,以执行在集成电路(IC)芯片设计中用于对于每一受害者(106)确定耦合的攻击者(107)的最优集合的方法步骤,所述方法包括以下步骤:
a)确定使所述耦合的攻击者彼此相关的功能群组(201);
b)对于对受害者的每一攻击者,确定攻击者对该受害者的影响(203,203);
c)基于所测量的每一攻击者对该受害者的影响,确定满足来自所述功能群组的约束的基本最坏攻击者的集合(204,205);
d)在IC芯片设计中利用每一受害者的所述基本最坏的耦合的攻击者的集合提供耦合的攻击者的最优集合(206);以及
e)将结合了所述耦合的攻击者的最优集合的时序分析应用于所述IC芯片的设计。
CN2008801067482A 2007-09-14 2008-08-14 对于串扰引起的噪声的受约束的攻击者集合选择方法 Expired - Fee Related CN101802783B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/855,323 US7685549B2 (en) 2007-09-14 2007-09-14 Method of constrained aggressor set selection for crosstalk induced noise
US11/855,323 2007-09-14
PCT/US2008/073116 WO2009035813A1 (en) 2007-09-14 2008-08-14 Method of constrained aggressor set selection for crosstalk induced noise

Publications (2)

Publication Number Publication Date
CN101802783A true CN101802783A (zh) 2010-08-11
CN101802783B CN101802783B (zh) 2013-08-14

Family

ID=40452395

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008801067482A Expired - Fee Related CN101802783B (zh) 2007-09-14 2008-08-14 对于串扰引起的噪声的受约束的攻击者集合选择方法

Country Status (4)

Country Link
US (1) US7685549B2 (zh)
KR (1) KR20100049614A (zh)
CN (1) CN101802783B (zh)
WO (1) WO2009035813A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105760560A (zh) * 2014-12-17 2016-07-13 国际商业机器公司 用于优化集成电路噪声性能的方法和装置
CN106066914A (zh) * 2016-06-02 2016-11-02 复旦大学 考虑串扰效应的静态时序分析方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8694946B1 (en) 2008-02-20 2014-04-08 Altera Corporation Simultaneous switching noise optimization
US8443321B1 (en) * 2008-06-11 2013-05-14 Altera Corporation Pessimism removal in the modeling of simultaneous switching noise
US7983880B1 (en) * 2008-02-20 2011-07-19 Altera Corporation Simultaneous switching noise analysis using superposition techniques
US20120254816A1 (en) * 2011-04-01 2012-10-04 International Business Machines Corporation Noise reduction using feedback to a wire spreader router
WO2013006950A1 (en) 2011-07-13 2013-01-17 Nexen Inc. Hydrocarbon recovery with in-situ combustion and separate injection of steam and oxygen
US9163491B2 (en) 2011-10-21 2015-10-20 Nexen Energy Ulc Steam assisted gravity drainage processes with the addition of oxygen
US8826092B2 (en) 2011-10-25 2014-09-02 International Business Machines Corporation Characterization and validation of processor links
US9020779B2 (en) * 2011-10-25 2015-04-28 International Business Machines Corporation Detecting cross-talk on processor links
US8797096B2 (en) * 2011-12-09 2014-08-05 International Business Machines Corporation Crosstalk compensation for high speed, reduced swing circuits
WO2013173904A1 (en) 2012-05-15 2013-11-28 Nexen Energy Ulc Sagdox geometry for impaired bitumen reservoirs
US10372852B2 (en) * 2014-06-24 2019-08-06 Synopsys, Inc. Measurement of Aggressor/Victim capacitive coupling impact on timing
US10325055B2 (en) * 2015-04-03 2019-06-18 Mentor Graphics Corporation Signal integrity delay utilizing a window bump-based aggressor alignment scheme
US9836571B2 (en) 2015-06-23 2017-12-05 International Business Machines Corporation Applying random nets credit in an efficient static timing analysis
US9619609B1 (en) 2015-09-23 2017-04-11 Globalfoundries Inc. Integrated circuit chip design methods and systems using process window-aware timing analysis
US9875326B2 (en) 2015-12-04 2018-01-23 International Business Machines Corporation Addressing coupled noise-based violations with buffering in a batch environment
US10248753B2 (en) 2016-10-07 2019-04-02 International Business Machines Corporation Pessimism reduction in hierarchical blockage aggressors using estimated resistor and capacitor values
US10565336B2 (en) 2018-05-24 2020-02-18 International Business Machines Corporation Pessimism reduction in cross-talk noise determination used in integrated circuit design
US11176301B2 (en) 2019-09-05 2021-11-16 International Business Machines Corporation Noise impact on function (NIOF) reduction for integrated circuit design
US11875099B2 (en) 2021-08-09 2024-01-16 International Business Machines Corporation Noise impact on function (NIOF) reduction for integrated circuit design

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5502644A (en) * 1994-04-07 1996-03-26 At&T Corp. Process and apparatus for auditing crosstalk and characteristic impedances of printed wiring boards
US5901063A (en) * 1997-02-21 1999-05-04 Frequency Technology, Inc. System and method for extracting parasitic impedance from an integrated circuit layout
US6018623A (en) * 1997-10-10 2000-01-25 Hewlett-Packard Company Method and system for determining statistically based worst-case on-chip interconnect delay and crosstalk
US6128769A (en) * 1997-12-31 2000-10-03 Intel Corporation Method for analyzing and efficiently reducing signal cross-talk noise
US6499131B1 (en) * 1999-07-15 2002-12-24 Texas Instruments Incorporated Method for verification of crosstalk noise in a CMOS design
US6615395B1 (en) * 1999-12-20 2003-09-02 International Business Machines Corporation Method for handling coupling effects in static timing analysis
US6480998B1 (en) * 2000-04-18 2002-11-12 Motorola, Inc. Iterative, noise-sensitive method of routing semiconductor nets using a delay noise threshold
WO2002012907A2 (en) * 2000-08-03 2002-02-14 Qualcomm Incorporated System, method, and apparatus for electromagnetic compatibility-driven product design
US7069528B2 (en) 2003-08-27 2006-06-27 Nec Electronics America, Inc. System and method for reducing timing violations due to crosstalk in an integrated circuit design
TWI249225B (en) * 2004-03-10 2006-02-11 Taiwan Semiconductor Mfg Interconnection routing method
CN1271553C (zh) * 2004-04-20 2006-08-23 清华大学 消除由耦合电感引起串扰的标准单元总体布线方法
US20050246671A1 (en) * 2004-04-29 2005-11-03 Bois Karl J Method and apparatus for determining worst case coupling within a differential pair group
US20050246672A1 (en) * 2004-04-29 2005-11-03 Bois Karl J Differential trace pair coupling verification tool
US7124381B2 (en) 2004-05-25 2006-10-17 Chang Gung University Method of estimating crosstalk noise in lumped RLC coupled interconnects
US7383522B2 (en) * 2004-10-08 2008-06-03 Fujitsu Limited Crosstalk-aware timing analysis
US7251797B2 (en) * 2004-11-22 2007-07-31 Freescale Semiconductor, Inc. Pessimism reduction in crosstalk noise aware static timing analysis
EP1662410A1 (en) * 2004-11-30 2006-05-31 Infineon Technologies AG Method and device for analyzing crosstalk effects in an electronic device
US7181711B2 (en) * 2005-04-27 2007-02-20 International Business Machines Corporation Prioritizing of nets for coupled noise analysis

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105760560A (zh) * 2014-12-17 2016-07-13 国际商业机器公司 用于优化集成电路噪声性能的方法和装置
US10242149B2 (en) 2014-12-17 2019-03-26 International Business Machines Corporation Enhancing integrated circuit noise performance
CN105760560B (zh) * 2014-12-17 2019-05-07 国际商业机器公司 用于优化集成电路噪声性能的方法和装置
US10528699B2 (en) 2014-12-17 2020-01-07 International Business Machines Corporation Enhancing integrated circuit noise performance
US10528698B2 (en) 2014-12-17 2020-01-07 International Business Machines Corporation Enhancing integrated circuit noise performance
CN106066914A (zh) * 2016-06-02 2016-11-02 复旦大学 考虑串扰效应的静态时序分析方法
CN106066914B (zh) * 2016-06-02 2019-05-31 复旦大学 考虑串扰效应的静态时序分析方法

Also Published As

Publication number Publication date
US20090077515A1 (en) 2009-03-19
CN101802783B (zh) 2013-08-14
KR20100049614A (ko) 2010-05-12
US7685549B2 (en) 2010-03-23
WO2009035813A1 (en) 2009-03-19

Similar Documents

Publication Publication Date Title
CN101802783B (zh) 对于串扰引起的噪声的受约束的攻击者集合选择方法
Yun et al. The design and verification of a high-performance low-control-overhead asynchronous differential equation solver
CN101305372B (zh) 估计电路延迟的方法和设备
Khandelwal et al. A general framework for accurate statistical timing analysis considering correlations
US20090288050A1 (en) Statistical delay and noise calculation considering cell and interconnect variations
Saleh et al. The exploitation of latency and multirate behavior using nonlinear relaxation for circuit simulation
Khandelwal et al. Variability-driven formulation for simultaneous gate sizing and post-silicon tunability allocation
US8627263B2 (en) Gate configuration determination and selection from standard cell library
US20050022145A1 (en) Method of finding critical nets in an integrated circuit design
Beece et al. Transistor sizing of custom high-performance digital circuits with parametric yield considerations
US8495544B2 (en) Statistical delay and noise calculation considering cell and interconnect variations
Papa et al. RUMBLE: an incremental, timing-driven, physical-synthesis optimization algorithm
Maheshwari et al. Modelling, simulation and verification of 4-phase adiabatic logic design: A VHDL-Based approach
Hurst Automatic synthesis of clock gating logic with controlled netlist perturbation
Seo et al. Clock skew optimization for maximizing time margin by utilizing flexible flip-flop timing
Chai et al. Temporofunctional crosstalk noise analysis
Krishnamohan et al. Combining error masking and error detection plus recovery to combat soft errors in static CMOS circuits
Taylor et al. Reduced complexity two-phase micropipeline latch controller
Subramaniam et al. A finite-point method for efficient gate characterization under multiple input switching
Huemer et al. On SAT-Based Model Checking of Speed-Independent Circuits
Wong et al. Performance analysis and design of a logic simulation machine
Yang et al. NBTI and leakage reduction using an integer linear programming approach
Gu et al. Faster statistical cell characterization using adjoint sensitivity analysis
Lasbouygues et al. Temperature and voltage aware timing analysis: Application to voltage drops
Zhang et al. Testable MUTEX design

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130814

Termination date: 20150814

EXPY Termination of patent right or utility model