CN101826124B - 分析集成电路效能的系统与方法 - Google Patents
分析集成电路效能的系统与方法 Download PDFInfo
- Publication number
- CN101826124B CN101826124B CN201010130277.8A CN201010130277A CN101826124B CN 101826124 B CN101826124 B CN 101826124B CN 201010130277 A CN201010130277 A CN 201010130277A CN 101826124 B CN101826124 B CN 101826124B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- integrated circuit
- sequential
- timing path
- stagewise
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
- G06F30/3312—Timing analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供一种分析集成电路效能的系统与方法。对集成电路执行时序分析的方法,其中此集成电路具有一时序路径。此方法包括计算时序路径中的非共同时序路径元件的数量,根据非共同时序路径元件的数量将一时序降额因子指定至时序路径,使用所指定的时序降额因子来计算集成电路的一时序分析,以及储存所计算的时序分析。
Description
技术领域
本发明涉及集成电路,特别涉及分析集成电路效能的系统与方法。
背景技术
工艺变异、电压变异、温度变异以及压降(IRdrop)变异都会对集成电路产生影响。一般而言,这些变异会影响集成电路中的电路效能。因此,即使集成电路的功能正常并且在容差(tolerances)范围内制造,但所有可能产生的变异仍会使得集成电路无法正常运作。
一般而言,芯片变异(on-chipvariation;OCV)为一种时序分析方法(timing-analysismethodology),用以在集成电路中的电路发生工艺变异(fabricationprocessvariations)的情况下分析集成电路的时序。芯片变异可允许电路设计者能够依照用以建立集成电路的工艺的预期工艺变异来确保其电路设计继续符合设计准则。
一般而言,工艺都会发生不同程度的工艺变异。某些工艺变异对整个工艺来说是相对一致的,而其他工艺变异会在不同的晶片批(waferlots)之间变化,但对单一晶片批来说是一致的。单一晶片批的晶片之间会发生其他工艺变异,而其他工艺变异会在单一晶片上改变。最后,某些工艺变异会发生在单一集成电路芯片中。
举例而言,单一集成电路芯片中会发生光罩(mask)变异、蚀刻(etching)变异、光学近接(opticalproximity)变异等等工艺变异。一般而言,大部分的这些变异会发生在一小区域上,并可能会影响电路的一部分但不会影响该电路的另一部分。这些变异会产生例如信号设置(signalsetup)、信号保持(signalhold)以及时钟门控(clockgating)等等问题。
传统的统计静态时序分析(statisticalstatictiminganalysis;SSTA)通过一电路模拟应用程序(例如SPICE)来执行蒙地卡罗模拟(MonteCarlosimulation)技术,并且使用工艺模式来计算集成电路的时序效能。蒙地卡罗模拟技术可从工艺模式的工艺变异信息中计算出集成电路的一系列的效能值(performancenumbers)。然而,由于必须模拟各种可能的工艺变异,因此执行统计静态时序分析相当耗时。
传统的静态时序分析+芯片变异(STA+OCV)方法使用一固定的时序降额因子(timingde-ratingfactor)来计算时序路径的最小与最大时序,并且此时序降额因子可应用于集成电路的一时序路径中的各个时序路径元件(例如一缓冲器链(bufferchain)中的各个缓冲器)。此固定的时序降额因子可为一生产工艺相依值(manufacturingprocessdependentvalue)。接着,可通过分析时序路径中的各个时序路径元件上的时序降额因子的各种正面效益(positivecontribution)与负面效益(negativecontribution)的可能组合,用以决定出集成电路的最小与最大时序。若集成电路符合设计准则,则集成电路会被视为已经通过静态时序分析+芯片变异分析。当静态时序分析+芯片变异方法指定一时序降额因子时,静态时序分析+芯片变异方法并不会考虑时序路径元件的数量,而这会造成时序分析结果不准确,特别是在具有少量或大量时序路径元件的情况下。
发明内容
本发明提供一种对集成电路执行时序分析的方法,其中此集成电路具有一时序路径。此方法包括计算时序路径中的非共同时序路径元件的数量,根据非共同时序路径元件的数量将一时序降额因子指定至时序路径,使用所指定的时序降额因子来计算集成电路的一时序分析,以及储存所计算的时序分析。
本发明提供一种核定集成电路用以制造的方法,其中此集成电路具有至少一时序路径。此方法包括接收一集成电路设计,通过执行集成电路的时序路径中的每一者的一时序分析来计算集成电路的一效能数据,并且根据时序路径中的非共同时序路径元件的数量对集成电路的时序路径中的每一者进行降额(de-rate),以及于判断出效能数据符合多个效能需求时,接收集成电路设计。
本发明提供一种执行集成电路设计的时序分析的系统。此系统包括一时序路径选择单元,用以选择集成电路设计中的多个时序路径。此系统还包括一分级式降额因子选择单元,耦接至时序路径选择单元,分级式降额因子选择单元根据时序路径中的非共同时序路径元件的数量,将一时序降额因子指定至时序路径选择单元所选择的时序路径的每一者。此系统还包括一分级式芯片变异的分析引擎,耦接至分级式降额因子选择单元,并且分级式芯片变异的分析引擎通过被指定至集成电路设计的时序路径中的每一者的时序降额因子,计算集成电路设计的一时序信息。
为让本发明的上述和其他目的、特征、和优点能更明显易懂,下文特举出较佳实施例,并配合所附附图,作详细说明如下。
附图说明
图1为本发明实施例的数据图,用以显示一集成电路的一时序路径中的非共同时钟缓冲器级对时钟偏移的影响;
图2为本发明实施例的具有两个时序路径的集成电路的方块图;
图3为本发明实施例的集成电路中的时钟树的方块图;
图4a为本发明实施例的分级式芯片变异的时序分析系统的方块图;
图4b为本发明实施例的另一数据图,用以显示在使用不同时序分析技术下,一集成电路的一时序路径中的非共同时钟缓冲器级对时钟偏移的影响而造成的效能差异;
图5为本发明实施例的处理器的流程图;
图6a为本发明实施例的分级式芯片变异的调谐表的示意图;
图6b为本发明实施例的另一数据图,用以显示一集成电路设计的时钟偏移对非共同缓冲器级的关系;
图7为本发明实施例的分级式芯片变异的查找表的示意图;
图8为本发明实施例的流程图。
并且,上述附图中的附图标记说明如下:
100、450、650~数据图;
105、455~第一曲线;
110、460~第二曲线;
205~第一时序路径;
210~第二时序路径;
215、216、220、221、225、226~缓冲器级;
300~集成电路;
305、310、315、320~正反器;
325、326、327~缓冲器;
328、329、330、331~缓冲器序列;
400~分级式芯片变异的时序分析系统;
405~时序路径选择单元;
410~分级式降额因子选择单元;
415~分级式芯片变异的分析引擎;
465~第三曲线;
470、472~线段;
600~分级式芯片变异的调谐表;
605~芯片变异边限;
610~芯片变异百分比;
615、715~N*标准偏差值;
620~分级式芯片变异边限;
625~分级式芯片变异数量;
655~第一轨迹;
660~第二轨迹;
665~第三轨迹;
700~分级式芯片变异的查找表;
705~平均时序值;
710~标准偏差值;
720~N*标准偏差值/平均时序值;
725~分级式芯片变异的时序降额因子;
730~使用者所指定的分级式芯片变异的时序降额因子。
具体实施方式
以下将进一步描述本发明实施例的制造与使用方法。值得注意的是,本发明提供许多可应用在各种特定环境中的发明概念。本文所述的特定实施例仅以特定的方式描述如何制造与使用本发明,而非用以限定本发明的范围。
本文在一特定环境(即一集成电路设计工具)中描述本发明实施例,此集成电路设计工具使用分级式芯片变异(stagebasedOCV)方法与统计分析来执行时序分析,用以判断使用一特定45纳米工艺所生产的集成电路是否符合设计准则。本发明亦可应用在使用其他45纳米工艺或其他特征尺寸所生产的集成电路。
图1为本发明实施例的数据图100,用以显示一集成电路的一时序路径中的非共同时钟缓冲器级(non-commonclockbufferstages)对时钟偏移(clockskew)的影响。通过分析方法(例如统计静态时序分析(SSTA)方法或静态时序分析+芯片变异(STA+OCV)方法)可计算出数据图100中所显示的数据(时钟偏移)。第一曲线105显示在使用一特定45纳米工艺的情况下,利用统计静态时序分析方法所计算出的非共同时钟缓冲器级对时钟偏移的函数,而第二曲线110显示在使用相同45纳米工艺的情况下,利用静态时序分析+芯片变异方法所计算出的非共同时钟缓冲器级对时钟偏移的函数。
图2为本发明实施例的具有两个时序路径的集成电路的方块图。第一时序路径205与第二时序路径210共享一些共同时钟缓冲器级(commonclockbufferstages),例如缓冲器级215与216。第一时序路径205亦包括一些非共同时钟缓冲器级,例如第一时序路径205专用的缓冲器级220与221。同样地,第二时序路径210亦包括一些非共同时钟缓冲器级,例如第二时序路径210专用的缓冲器级225与226。
请参考回图1,由于统计静态时序分析方法利用用以生产集成电路的工艺的模式,因此使用统计静态时序分析方法(例如第一曲线105)所计算出的结果较接近集成电路的实际效能。另一方面,静态时序分析+芯片变异方法利用静态时序分析,并且通常考虑到用以生产集成电路的工艺的标称值(nominalvalues)以及集成电路的时序路径中的各个时序路径元件的一固定的时序降额因子来计算集成电路的时钟偏移。由于静态时序分析+芯片变异方法使用标称值与固定的时序降额因子,因此所计算出的时钟偏移(即第二曲线110)为一直线,并且此直线具有对应至该固定的时序降额因子的斜率。
如图1所示,对级数较小的非共同时钟缓冲器级来说,静态时序分析+芯片变异方法(第二曲线110)所产生的时钟偏移量会低于统计静态时序分析方法(第一曲线105)所产生的时钟偏移量。对级数较小的非共同时钟缓冲器级来说,由于使用静态时序分析+芯片变异方法所产生的结果会导致集成电路的设计在不符合设计准则的情况下被误判为符合设计准则,因此使用统计静态时序分析方法所设计的集成电路会比使用静态时序分析+芯片变异方法所设计的集成电路来的稳固(robust)。此问题会使得某些制造完成的集成电路无法符合设计准则。
对级数较大的非共同时钟缓冲器级来说,静态时序分析+芯片变异方法所产生的时钟偏移量会高于统计静态时序分析方法所产生的时钟偏移量。由于使用静态时序分析+芯片变异方法所产生的结果过糟(worsethannecessary),故比预期高的时钟偏移量会使得使用静态时序分析+芯片变异方法所设计的集成电路的悲观值(pessimistic)高于使用统计静态时序分析方法所设计的集成电路,因此集成电路需要具有比原本更佳的效能才能符合设计准则。于是,静态时序分析+芯片变异方法所设计的集成电路中的高悲观值将会使得集成电路被进行不需要的重新设计。
然而,影响集成电路中的个别电路的工艺变异的数量是会改变的。举例而言,在具有多个时序路径元件的时序路径中,某些时序路径元件的时序会晚一个延迟量、某些时序路径元件的时序会早一个超前量,其中该延迟量与超前量分别为工艺所预期的最大正延迟量(maximumpositivedelayamount)与最大负超前量(maximumnegativeadvanceamount),而其他时序路径元件的时序会介于此最大正延迟量与最大负超前量之间。
由于某些时序路径元件会比较早、某些时序路径元件会比较晚,而其他时序路径元件会介于这两者之间,因此工艺变异对集成电路的时序的整体影响会部分抵销,特别是在具有大量时序路径元件的时序路径的情况下。因此,可在计算集成电路的时序时修改芯片变异的时序分析方法,用以将时序路径中的时序路径元件的数量列入考虑因素。
图3为本发明实施例的集成电路300中的时钟树(clocktree)的方块图。时钟树包括多个正反器(flipflops),这些正反器为正反器305、正反器310、正反器315以及正反器320。一时钟信号首先输入至缓冲器325的输入端,接着经由缓冲器326、327与缓冲器序列328、329、330以及331传送至这四个正反器。时钟信号与一正反器之间的时序路径可包括共同缓冲器与非共同缓冲器。举例而言,时钟信号与正反器315之间的时序路径可包括共同缓冲器325以及非共同缓冲器326与330,而时钟信号与正反器320之间的时序路径可包括共同缓冲器325以及非共同缓冲器327与331。
如前文所述,芯片变异的时序分析方法只会考虑非共同时序元件(缓冲器)。举例而言,正反器305与正反器310之间的非共同缓冲器包括缓冲器序列328与329共10个缓冲器,正反器305与正反器315之间的非共同缓冲器包括缓冲器序列328与330共7个缓冲器,而正反器305与正反器320之间的非共同缓冲器包括缓冲器326与327以及缓冲器序列328与331共12个缓冲器。
图4a为本发明实施例中分级式芯片变异的时序分析系统400的方块图。分级式芯片变异的时序分析系统400用以对一集成电路设计执行时序分析,并且提供用以判断集成电路设计是否符合设计准则的时序信息。若集成电路设计不符合设计准则,则使用该时序信息协助重新设计集成电路。
分级式芯片变异的时序分析系统400包括一时序路径选择单元405。时序路径选择单元405的其中一个输入数据可为集成电路设计的网表描述(netlistdescription)。网表描述可指定(specify)集成电路中的电路、指定该电路是如何连接,以及指定附加信息(plusinformation)例如所使用的工艺等等。时序路径选择单元405可分析集成电路设计的网表描述用以寻找集成电路设计中的时序路径。时序路径选择单元405的另一个输入数据可为使用者输入数据(userinput)。举例而言,设计者输入型式的使用者输入数据可协助时序路径选择单元405寻找时序路径,以及判断共同与非共同时序路径元件等等。
时序路径选择单元405寻找到的时序路径接着会被提供至一分级式降额因子(stagede-ratefactor)选择单元410。分级式降额因子选择单元410可根据时序路径中的时序路径元件的总数,将一时序降额因子指定至时序路径选择单元405所寻找到的时序路径。若集成电路中具有一个以上的时序路径,则各个时序路径会被指定一时序降额因子。若这些时序路径分别具有不同数量的时序路径元件,则各个时序路径会具有各自的时序降额因子。分级式降额因子选择单元410的输入数据可为分级式芯片变异信息,该分级式芯片变异信息可包括一分级式芯片变异的查找表(look-uptable)。分级式芯片变异的查找表可包含具有不同时序路径元件数量的时序路径的时序降额因子。
在用以生产集成电路的特定工艺的情况下,可通过使用蒙地卡罗模拟技术来执行统计模拟,用以计算出分级式芯片变异的查找表中的数据。除了使用蒙地卡罗模拟技术之外,亦可增设使用者(例如设计者)输入来修改与调整分级式芯片变异的查找表中的数据。
一般而言,使用蒙地卡罗模拟技术所产生的统计模拟时序结果可包括一信赖区间(confidenceinterval)。信赖区间为所有使用模拟后的集成电路设计以及工艺模式指定的工艺所生产的集成电路中,符合时序结果的集成电路的百分比。举例而言,90%信赖区间代表所生产的集成电路中有90%的集成电路会符合或超过时序结果。一般而言,较大的信赖区间(即较高的百分比)表示具有较慢的时序结果。分级式芯片变异的查找表中的数据会考虑一预设或使用者指定的信赖区间。
一旦时序降额因子被指定至集成电路设计中的时序路径,分级式芯片变异的分析引擎415就会计算集成电路设计的时序信息。分级式芯片变异的分析引擎415可通过使用被指定至集成电路中的时序路径的时序降额因子来计算不同的时序值,用以计算出集成电路设计的时序信息,其中时序降额因子根据时序路径中的时序路径元件(例如非共同缓冲器级)的数量被指定至时序路径。
图4b为本发明实施例的数据图450,用以显示在使用不同时序分析技术下,集成电路的一时序路径中的非共同时钟缓冲器级对时钟偏移的影响而造成的效能差异。第一曲线455代表使用静态时序分析+芯片变异方法所计算出的数据,第二曲线460代表使用统计静态时序分析方法所计算出的数据,而第三曲线465代表使用分级式芯片变异方法所计算出的数据。如图4b所示,对级数较小的非共同时钟缓冲器级来说,使用分级式芯片变异方法会使得集成电路设计更为稳固(相较于使用静态时序分析+芯片变异方法),而对级数较大的非共同时钟缓冲器级来说,使用静态时序分析+芯片变异方法所生产的集成电路会劣于使用分级式芯片变异方法所生产的集成电路。由于必须配合不同数量的非共同缓冲器级使用不同的时序降额因子,因此第三曲线465会具有一分段线性特征(例如线段470与472)。
图5为本发明实施例的处理器500的流程图,此处理器500使用分级式芯片变异方法来分析一集成电路设计。可在完成集成电路设计之后、生产集成电路之前执行上述分析集成电路设计的动作。执行上述分析集成电路设计的动作的可能候选时间(candidatetime)为当集成电路中的电路被设置在一虚拟基板(virtualsubstrate)上并进行必要的电性连接时的一设计布局与绕线(placeandroute;PAR)期间。一般而言,在布局与绕线期间已经验证了集成电路设计的功能正确性,而剩下的问题可包括芯片尺寸、功率消耗以及效能等等。
处理器500所执行的步骤包括提供集成电路设计(步骤505)与分级式芯片变异数据(步骤510)至一分级式芯片变异的时序引擎,并且使用该分级式芯片变异的时序引擎来执行分级式芯片变异的时序分析(步骤515)。分级式芯片变异的时序引擎会产生与集成电路设计的效能有关的时序信息。可执行检查动作用以判断与集成电路设计的效能有关的时序信息是否符合设计准则(步骤520)。若时序信息符合设计准则,则只要布局与绕线以及其他所需的测试完成后,集成电路设计即可被接受用以制造集成电路(步骤525)。由于与集成电路设计的效能有关的时序信息符合设计准则,因此集成电路设计可原封不动地被接受(至少因为时序信息)。
若时序信息不符合设计准则,则必须将集成电路设计的时序最佳化(步骤530)。可通过更动(tweak)集成电路设计以及改变关键时序路径等等方式来执行上述时序最佳化动作。值得注意的是,由于改变了集成电路设计,因此需要再次将集成电路设计提供至分级式芯片变异的时序引擎(步骤505)。在集成电路的效能符合设计准则之前或判断出集成电路设计无法符合设计准则之前,集成电路设计会继续被调整。
将集成电路设计提供至分级式芯片变异的时序引擎(步骤505)可包括将多种信息提供至分级式芯片变异的时序引擎。这些信息可包括寄生信息(parasiticinformation),寄生信息包含位于一标准寄生交换格式(standardparasiticexchangeformat;SPEF)中的位置信息(步骤550)、位于一标准延迟格式(standarddelayformat;SDF)中的延迟信息(步骤552)、位于一网表中的设计信息(步骤554)、时序库(timinglibrary)(步骤556)以及设计限制信息(designconstraintsinformation;SDC)(步骤558)等等。
一般而言,于步骤510中提供至分级式芯片变异的时序引擎的分级式芯片变异数据需要加以计算以便提供给一特定工艺使用,其中此特定工艺用以制造目前所设计的集成电路。然而,一旦分级式芯片变异数据被计算后,分级式芯片变异数据就会被储存以便给后续使用相同工艺所制造的设计使用。因此,除非想要或需要对时序降额因子做调整,不然只要工艺维持不变,就能重复使用所储存的分级式芯片变异数据。因此,可建立并储存各种具有不同时序降额因子的工艺所需的分级式芯片变异的数据库。
因此,若分级式芯片变异数据被预先计算(precomputed)并储存至一存储器或一数据库中,则将分级式芯片变异数据提供至分级式芯片变异的时序引擎的步骤(步骤510)只需要从存储器或数据库中取回分级式芯片变异数据,并将取回的分级式芯片变异数据提供至分级式芯片变异的时序引擎。然而,若欲使用的工艺所需的分级式芯片变异数据还不能使用,或是若分级式芯片变异数据需做调整,则必须要产生分级式芯片变异数据。
产生分级式芯片变异数据的步骤首先要执行一集成电路设计的一统计模拟,例如一取样电路或是目前所分析的集成电路设计(步骤560)。可使用一统计模拟套装软件(例如可执行蒙地卡罗分析的SPICE程序)来执行统计模拟。统计模拟利用欲使用的工艺的模式并且可包括与此工艺有关的统计信息,例如特征尺寸变异、掺杂变异以及光学近接校正变异…等等。
统计模拟所产生的结果可用以建立一分级式芯片变异的调谐表(tuningtable)(步骤562)。分级式芯片变异的调谐表可产生例如平均时序延迟(meantimingdelay)以及各个非共同缓冲器(即各级)的平均时序延迟中的标准偏差(或变异)等信息。图6a为本发明实施例的分级式芯片变异的调谐表600的示意图。分级式芯片变异的调谐表600包括多个项目,并且使用者(例如电路设计者)可调整这些项目用以协助符合时序效能需求。举例而言,使用者能够调整用以设置时序降额因子的芯片变异边限(OCVmargin)605、芯片变异百分比(OCVpercentage)610、用以设置信赖区间的N*σ值(N*sigmavalue)615、分级式芯片变异边限620(用以设置分级式芯片变异的时序降额因子)以及分级式芯片变异数量625(用以指定分级式芯片变异的不同时序降额因子的阶层数目)等等。图6b为本发明实施例的数据图650,用以显示一集成电路设计的时钟偏移对非共同缓冲器级的关系。如图6b所示,第一轨迹655代表使用静态时序分析+芯片变异的时序分析方法所计算出的时序信息,第二轨迹660代表使用统计静态时序分析方法所计算出的时序信息,而第三轨迹665代表使用分级式芯片变异的时序方法所计算出的时序信息,其中分级式芯片变异的时序方法包括使用分级式芯片变异的调谐表600中的数据进行计算。第三轨迹665具有一阶层式(step-like)特征并显示了在不同时序降额因子之间进行切换以及其对时钟偏移的影响。
请参考回图5,使用者接着可提供输入用以调谐或调整分级式芯片变异的调谐表600中的分级式芯片变异数据(步骤564)。举例而言,分级式芯片变异的调谐表600能够让使用者从一时序路径中的各个非共同缓冲器(即各级)的一平均时序延迟中选择多个(以N表示)标准偏差用以符合一理想的信赖区间,或是让使用者选择分级式芯片变异的不同时序降额因子的阶层数目以及分级式芯片变异边限…等等。在接收使用者输入数据后(步骤564)可建立一分级式芯片变异的查找表(步骤566)。可通过统计模拟产生的信息(步骤560)以及来自分级式芯片变异的调谐表600中的使用者输入信息(步骤564)来建立分级式芯片变异的查找表。
图7为本发明实施例的分级式芯片变异的查找表700的示意图。分级式芯片变异的查找表700为一表格格式(tabularformat)并且包括与集成电路的时序路径中的非共同缓冲器数量有关的多个项目,这些项目包括以微微秒(picoseconds)为单位的平均时序值(行705)、以微微秒为单位的标准偏差值(σ)(行710)、显示出用以符合所指定的信赖区间所需的时间的N*标准偏差值(行715)、表示N*标准偏差值与平均时序值的比例的百分比(N*标准偏差值/平均时序值)(行720)、分级式芯片变异的时序降额因子(行725)以及使用者所指定的分级式芯片变异的时序降额因子(行730)。较佳而言,使用者所指定的分级式芯片变异的时序降额因子(行730)大于或等于分级式芯片变异的时序降额因子(行725)以便确保能够符合效能准则。举例而言,若一时序路径中具有9个非共同缓冲器(即9级),则分级式芯片变异的时序降额因子为8.64%。
请参考回图5,在建立分级式芯片变异的查找表之后(步骤566),分级式芯片变异的查找表接着会被储存至存储器或数据库中,及/或提供至分级式芯片变异的时序引擎。
图8为本发明实施例的流程图800,此流程图800使用分级式芯片变异的时序分析方法来计算一集成电路设计的时序数据。上述使用分级式芯片变异的时序分析方法来计算集成电路设计的时序数据的步骤首先要接收集成电路设计(步骤805)。所接收的集成电路设计可包含实际设计、寄生信息、延迟信息、时序信息以及设计限制…等等。
举例而言,除了接收集成电路设计外,还可接收分级式芯片变异数据(型式为分级式芯片变异的查找表)(步骤810)。分级式芯片变异的查找表可包含具有不同数量的非共同时序路径元件(例如非共同缓冲器)的时序路径的时序降额因子等信息。
集成电路设计可被分析用以寻找时序路径并计算各个时序路径中的非共同时序路径元件的数量(步骤815)。接着使用所计算的各个时序路径中的非共同时序路径元件的数量,用以将分级式芯片变异的时序降额因子指定至各个时序路径(步骤820)。根据时序路径中的非共同时序路径元件的数量,集成电路设计中的各个时序路径会被指定不同的分级式芯片变异的时序降额因子。
举例而言,若一时序路径具有0~2个非共同时序路径元件,则所指定的分级式芯片变异的时序降额因子为15%,若一时序路径具有2~5个非共同时序路径元件,则所指定的分级式芯片变异的时序降额因子为10%,若一时序路径具有5~10个非共同时序路径元件,则所指定的分级式芯片变异的时序降额因子为5%,并且若一时序路径具有超过10个非共同时序路径元件,则所指定的分级式芯片变异的时序降额因子为2%。请参考回图3,由于正反器305与正反器310之间的时序路径具有10个非共同时序路径元件,因此正反器305与正反器310之间的时序路径会被降额为(缓冲器序列328的时序值)*1.10以及(缓冲器序列329的时序值)*0.90。其中一个时序值降额一个最大值(1.10)而另一个时序值降额一个最小值(0.90)使得时序的影响扩至最大。同样地,由于正反器305与正反器320之间的时序路径具有12个非共同时序路径元件,因此正反器305与正反器320之间的时序路径会被降额为(缓冲器序列328的时序值)*1.05、(缓冲器326的时序值)*1.05、(缓冲器序列331的时序值)*0.95以及(缓冲器327的时序值)*0.95。
在将分级式芯片变异的时序降额因子指定至各个时序路径之后(步骤820),可使用分级式芯片变异的时序分析方法来计算集成电路的时序数据(步骤825)。可使用分级式芯片变异的时序引擎来执行分级式芯片变异的时序分析方法。一旦分级式芯片变异的时序分析方法执行完毕,使用分级式芯片变异的时序分析方法来计算一集成电路设计的时序数据的步骤即宣告结束。
本发明的实施例描述关于分析集成电路效能的系统与方法,并且会在指定一时序降额因子至时序路径时考虑各个时序路径中的非共同时序路径元件的数量。当时序路径具有大量非共同时序路径元件时,上述考虑非共同时序路径元件的数量的动作能够改善集成电路设计,而当时序路径具有少量非共同时序路径元件时,上述考虑非共同时序路径元件的数量的动作能够使得集成电路设计更为稳固。
虽然本发明已以较佳实施例公开如上,然而其并非用以限定本发明,任何本领域普通技术人员,在不脱离本发明的精神和范围内,当可作些许更动与润饰,因此本发明的保护范围当视随附的权利要求所界定的范围为准。
Claims (15)
1.一种对集成电路执行时序分析的方法,上述集成电路具有一时序路径,上述方法包括:
计算上述时序路径中的非共同时序路径元件的数量;
仅根据上述非共同时序路径元件的数量,将一时序降额因子指定至上述时序路径;
使用上述所指定的时序降额因子来计算上述集成电路的一时序分析;以及
储存上述所计算的时序分析。
2.如权利要求1所述的对集成电路执行时序分析的方法,还包括在计算上述非共同时序路径元件的数量之前执行:
接收一集成电路设计;以及
接收一组时序降额因子。
3.如权利要求1所述的对集成电路执行时序分析的方法,其中上述集成电路具有多个时序路径,并且上述计算上述非共同时序路径元件的数量的步骤还包括计算上述时序路径中的每一者的非共同时序路径元件的数量。
4.如权利要求3所述的对集成电路执行时序分析的方法,其中上述将上述时序降额因子指定至上述时序路径的步骤还包括根据上述时序路径中的每一者的上述非共同时序路径元件的数量,将一时序降额因子指定至上述时序路径中的每一者。
5.如权利要求1所述的对集成电路执行时序分析的方法,其中上述计算上述集成电路的上述时序分析的步骤还包括执行一分级式芯片变异的时序分析。
6.一种核定集成电路用以制造的方法,上述集成电路具有至少一时序路径,上述方法包括:
接收一集成电路设计;
通过执行上述集成电路的上述时序路径中的每一者的一时序分析来计算上述集成电路的一效能数据,并且仅根据上述时序路径中的非共同时序路径元件的数量对上述集成电路的上述时序路径中的每一者进行降额;以及
于判断出上述效能数据符合多个效能需求时,接收上述集成电路设计。
7.如权利要求6所述的核定集成电路用以制造的方法,还包括于判断出上述效能数据不符合上述效能需求时,调整上述集成电路设计,其中上述接收上述集成电路设计的步骤包括接收上述集成电路的一寄生信息、一延迟信息、一网表、一时序信息以及一限制信息。
8.如权利要求6所述的核定集成电路用以制造的方法,其中上述计算上述集成电路的上述效能数据的步骤还包括:
计算上述时序路径中的每一者的上述非共同时序路径元件的数量;
根据所计算出的上述非共同时序路径元件的数量,将一时序降额因子指定至上述时序路径中的每一者;以及
使用上述所指定的时序降额因子来计算上述集成电路设计的时序分析。
9.如权利要求8所述的核定集成电路用以制造的方法,还包括在计算上述非共同时序路径元件的数量之前,接收一组时序降额因子。
10.如权利要求9所述的核定集成电路用以制造的方法,其中上述接收上述组时序降额因子的步骤包括从一储存装置取回上述组时序降额因子。
11.如权利要求9所述的核定集成电路用以制造的方法,其中上述接收上述组时序降额因子的步骤包括:
执行一电路设计的一统计模拟,用以产生一模拟结果;以及
根据上述模拟结果,建立上述组时序降额因子,其中上述统计模拟使用蒙地卡罗模拟技术。
12.如权利要求11所述的核定集成电路用以制造的方法,还包括在建立上述组时序降额因子之前,调谐上述模拟结果。
13.如权利要求12所述的核定集成电路用以制造的方法,其中上述调谐上述模拟结果的步骤包括指定所计算的一平均值的多个标准偏差,用以产生一信赖区间。
14.如权利要求12所述的核定集成电路用以制造的方法,其中上述调谐上述模拟结果的步骤包括指定一边限,其中上述边限的悲观值高于用以建立上述组时序降额因子的一预设边限的悲观值。
15.一种执行集成电路设计的时序分析的系统,上述系统包括:
一时序路径选择单元,用以选择上述集成电路设计中的多个时序路径;
一分级式降额因子选择单元,耦接至上述时序路径选择单元,上述分级式降额因子选择单元仅根据上述时序路径中的非共同时序路径元件的数量,将一时序降额因子指定至上述时序路径选择单元所选择的上述时序路径的每一者;以及
一分级式芯片变异的分析引擎,耦接至上述分级式降额因子选择单元,上述分级式芯片变异的分析引擎通过被指定至上述集成电路设计的上述时序路径中的每一者的上述时序降额因子,计算上述集成电路设计的一时序信息。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15795109P | 2009-03-06 | 2009-03-06 | |
US61/157,951 | 2009-03-06 | ||
US12/630,712 | 2009-12-03 | ||
US12/630,712 US8365115B2 (en) | 2009-03-06 | 2009-12-03 | System and method for performance modeling of integrated circuits |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101826124A CN101826124A (zh) | 2010-09-08 |
CN101826124B true CN101826124B (zh) | 2016-06-29 |
Family
ID=42679360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010130277.8A Active CN101826124B (zh) | 2009-03-06 | 2010-03-05 | 分析集成电路效能的系统与方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8365115B2 (zh) |
CN (1) | CN101826124B (zh) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4655240B2 (ja) * | 2008-09-26 | 2011-03-23 | 日本電気株式会社 | タイミング解析支援装置 |
US8079004B2 (en) * | 2009-04-30 | 2011-12-13 | Synopsys, Inc. | Efficient exhaustive path-based static timing analysis using a fast estimation technique |
US8762908B1 (en) | 2009-12-04 | 2014-06-24 | Cadence Design Systems, Inc. | Static timing analysis with design-specific on chip variation de-rating factors |
CN102955867B (zh) * | 2011-08-30 | 2017-03-22 | 三星半导体(中国)研究开发有限公司 | 生成门级网表和标准延迟文件及检查和纠正伪路径的方法 |
US8806413B2 (en) * | 2012-09-17 | 2014-08-12 | Texas Instruments Incorporated | Gradient AOCV methodology enabling graph-based timing closure with AOCV timing models |
US9244122B2 (en) * | 2013-08-06 | 2016-01-26 | Global Unichip Corp. | Method of determining performance of a chip of an integrated-circuit design and an apparatus and an integrated circuit using the same |
CN105527563B (zh) * | 2014-09-30 | 2018-09-14 | 龙芯中科技术有限公司 | 片上测量电路及测量方法 |
US9672321B2 (en) * | 2015-07-01 | 2017-06-06 | International Business Machines Corporation | Virtual positive slack in physical synthesis |
CN106407489B (zh) * | 2015-07-31 | 2019-11-22 | 展讯通信(上海)有限公司 | 一种时序约束检查方法 |
CN106503278B (zh) * | 2015-09-06 | 2019-08-23 | 创意电子股份有限公司 | 数字电路设计的时序分析方法及其系统 |
US10068042B1 (en) * | 2015-12-31 | 2018-09-04 | Altera Corporation | Methods and apparatus for regulating the supply voltage of an integrated circuit |
US10255395B2 (en) * | 2016-03-11 | 2019-04-09 | Synopsys, Inc. | Analyzing delay variations and transition time variations for electronic circuits |
US10318676B2 (en) * | 2017-01-25 | 2019-06-11 | Ampere Computing Llc | Techniques for statistical frequency enhancement of statically timed designs |
IL306080A (en) | 2017-11-15 | 2023-11-01 | Proteantecs Ltd | Device margin measurement and integrated circuit failure prediction |
EP3714280B1 (en) | 2017-11-23 | 2024-04-17 | Proteantecs Ltd. | Integrated circuit pad failure detection |
US11740281B2 (en) | 2018-01-08 | 2023-08-29 | Proteantecs Ltd. | Integrated circuit degradation estimation and time-of-failure prediction using workload and margin sensing |
US11408932B2 (en) | 2018-01-08 | 2022-08-09 | Proteantecs Ltd. | Integrated circuit workload, temperature and/or subthreshold leakage sensor |
TWI828676B (zh) | 2018-04-16 | 2024-01-11 | 以色列商普騰泰克斯有限公司 | 用於積體電路剖析及異常檢測之方法和相關的電腦程式產品 |
TWI796494B (zh) | 2018-06-19 | 2023-03-21 | 以色列商普騰泰克斯有限公司 | 高效積體電路模擬及測試 |
US11570045B2 (en) | 2018-09-28 | 2023-01-31 | Xilinx, Inc. | Network interface device |
US11537541B2 (en) | 2018-09-28 | 2022-12-27 | Xilinx, Inc. | Network interface device and host processing device |
US11012411B2 (en) | 2018-11-05 | 2021-05-18 | Xilinx, Inc. | Network interface device |
US11082364B2 (en) * | 2019-04-25 | 2021-08-03 | Xilinx, Inc. | Network interface device |
US10789406B1 (en) * | 2018-11-16 | 2020-09-29 | Cadence Design Systems, Inc. | Characterizing electronic component parameters including on-chip variations and moments |
JP7419380B2 (ja) | 2018-12-30 | 2024-01-22 | プロテアンテックス リミテッド | 集積回路i/oの完全性および劣化監視 |
TWI712947B (zh) * | 2019-06-06 | 2020-12-11 | 瑞昱半導體股份有限公司 | 積體電路設計方法與其非暫態電腦可讀取媒體 |
CN112084742B (zh) * | 2019-06-14 | 2024-05-17 | 瑞昱半导体股份有限公司 | 集成电路设计方法与其非瞬时计算机可读介质 |
WO2021111444A1 (en) | 2019-12-04 | 2021-06-10 | Proteantecs Ltd. | Memory device degradation monitoring |
IL297427A (en) | 2020-04-20 | 2022-12-01 | Proteantecs Ltd | Inter-chip connectivity monitoring |
CN112597716B (zh) * | 2020-12-14 | 2023-09-15 | 南京华大九天科技有限公司 | 一种基于sta与spice模型仿真筛选瓶颈单元的方法 |
CN112507641B (zh) * | 2020-12-17 | 2022-07-05 | 中科芯云微电子科技有限公司 | 一种集成电路交替式验证方法及系统 |
US11815551B1 (en) | 2022-06-07 | 2023-11-14 | Proteantecs Ltd. | Die-to-die connectivity monitoring using a clocked receiver |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021882A (zh) * | 2007-03-27 | 2007-08-22 | 重庆重邮信科(集团)股份有限公司 | 一种降低大规模集成电路漏电功耗的设计方法 |
CN101359345A (zh) * | 2007-07-13 | 2009-02-04 | 台湾积体电路制造股份有限公司 | 统计静态时序分析中减少晶粒间态样的时序库的方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5636372A (en) * | 1994-09-30 | 1997-06-03 | International Business Machines Corporation | Network timing analysis method which eliminates timing variations between signals traversing a common circuit path |
US7010475B2 (en) * | 1999-05-03 | 2006-03-07 | Koninklijke Philips Electronics N.V. | Derating factor determination for integrated circuit logic design tools |
JP2005352787A (ja) * | 2004-06-10 | 2005-12-22 | Matsushita Electric Ind Co Ltd | タイミング解析方法およびタイミング解析装置 |
US7069178B2 (en) | 2004-09-29 | 2006-06-27 | Lsi Logic Corporation | Method of predicting quiescent current variation of an integrated circuit die from a process monitor derating factor |
US7237212B2 (en) * | 2004-10-22 | 2007-06-26 | Synopsys, Inc. | Method and apparatus for reducing timing pessimism during static timing analysis |
US7399648B2 (en) | 2005-05-06 | 2008-07-15 | Agere Systems Inc. | Methods and apparatus for determining location-based on-chip variation factor |
US7480881B2 (en) * | 2006-08-18 | 2009-01-20 | Lsi Logic Corporation | Method and computer program for static timing analysis with delay de-rating and clock conservatism reduction |
US8539411B2 (en) * | 2008-02-26 | 2013-09-17 | Lsi Corporation | Multiple derating factor sets for delay calculation and library generation in multi-corner STA sign-off flow |
-
2009
- 2009-12-03 US US12/630,712 patent/US8365115B2/en active Active
-
2010
- 2010-03-05 CN CN201010130277.8A patent/CN101826124B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021882A (zh) * | 2007-03-27 | 2007-08-22 | 重庆重邮信科(集团)股份有限公司 | 一种降低大规模集成电路漏电功耗的设计方法 |
CN101359345A (zh) * | 2007-07-13 | 2009-02-04 | 台湾积体电路制造股份有限公司 | 统计静态时序分析中减少晶粒间态样的时序库的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20100229137A1 (en) | 2010-09-09 |
CN101826124A (zh) | 2010-09-08 |
US8365115B2 (en) | 2013-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101826124B (zh) | 分析集成电路效能的系统与方法 | |
US8005660B2 (en) | Hierarchical stochastic analysis process optimization for integrated circuit design and manufacture | |
CN101796520B (zh) | 用于序向单元的贴近布局的方法和设备 | |
US7650580B2 (en) | Method and apparatus for determining the performance of an integrated circuit | |
US8117576B2 (en) | Method for using an equivalence checker to reduce verification effort in a system having analog blocks | |
US9589096B1 (en) | Method and apparatus for integrating spice-based timing using sign-off path-based analysis | |
JP2007183932A (ja) | タイミング解析方法及びタイミング解析装置 | |
US20040205683A1 (en) | Calibrating a wire load model for an integrated circuit | |
US8706467B2 (en) | Compact circuit-simulation output | |
US20170046470A1 (en) | Process design kit for efficient and accurate mismatch simulation of analog circuits | |
US10963610B1 (en) | Analyzing clock jitter using delay calculation engine | |
US7975249B2 (en) | Operation timing verifying apparatus and program | |
US20030074642A1 (en) | Clock skew verification methodology for grid-based design | |
US11023640B1 (en) | Methods, systems, and computer program product for characterizing timing behavior of an electronic design with a derived current waveform | |
US11022634B1 (en) | Rail block context generation for block-level rail voltage drop analysis | |
US11042678B2 (en) | Clock gate latency modeling based on analytical frameworks | |
US11966678B2 (en) | Modelling timing behavior using augmented sensitivity data for physical parameters | |
CN112149370B (zh) | 芯片老化的静态时序分析方法、装置和电子设备 | |
US10824784B2 (en) | System and method of timing characterization for semiconductor circuit | |
US20050120318A1 (en) | Apparatus and method for designing semiconductor integrated circuit | |
US8689161B2 (en) | Methods for designing integrated circuits employing pre-determined timing-realizable clock-insertion delays and integrated circuit design tools | |
US11868694B1 (en) | System and method for optimizing emulation throughput by selective application of a clock pattern | |
US11797739B2 (en) | Endpoint path margin based integrated circuit design using sub-critical timing paths | |
CN201607731U (zh) | 用于序向单元的电路设计的设备 | |
US20230259680A1 (en) | Standard cell characterization for internal conductive line of cell |
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 |