CN1472680A - 标准单元总体布线过程中用的减少串扰的方法 - Google Patents
标准单元总体布线过程中用的减少串扰的方法 Download PDFInfo
- Publication number
- CN1472680A CN1472680A CNA03124095XA CN03124095A CN1472680A CN 1472680 A CN1472680 A CN 1472680A CN A03124095X A CNA03124095X A CN A03124095XA CN 03124095 A CN03124095 A CN 03124095A CN 1472680 A CN1472680 A CN 1472680A
- Authority
- CN
- China
- Prior art keywords
- crosstalk
- wiring
- net
- grg
- delay
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000009467 reduction Effects 0.000 title claims abstract description 16
- 230000008569 process Effects 0.000 title claims description 13
- 238000005457 optimization Methods 0.000 claims abstract description 54
- 230000008859 change Effects 0.000 claims abstract description 8
- 238000010586 diagram Methods 0.000 claims abstract description 7
- 230000008878 coupling Effects 0.000 claims description 12
- 238000010168 coupling process Methods 0.000 claims description 12
- 238000005859 coupling reaction Methods 0.000 claims description 12
- 230000005574 cross-species transmission Effects 0.000 claims description 10
- 238000011960 computer-aided design Methods 0.000 abstract description 10
- 238000013461 design Methods 0.000 description 25
- 238000005516 engineering process Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 9
- 230000001808 coupling effect Effects 0.000 description 9
- 238000011160 research Methods 0.000 description 9
- 108091006146 Channels Proteins 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000008054 signal transmission Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
标准单元总体布线过程中用的减少串扰的方法属于集成电路计算机辅助设计领域,其特征在于:它是在标准单元总体布线中优化时延后进行的,它先在统计电路串扰基础上进行信号线网间的串扰减少控制,然后再根据用户给出的时延约束指标来进行优化延时判别,若不满足,则继续迭代时延优化和串扰减少控制程序,一直到得出一组满足优化目标的所有线网在总体布线图中的布线树为止。它是在优化电路时延程序之后再通过控制相邻线网的平行走线长度和布线间隔来减少信号线网间的串扰的;判断参数则是线网串扰溢出量的变化值。与在后续阶段来减少串扰相比,它有更大的空间;它在减少串扰特别是关键路径串扰的同时,也兼顾了时延性能。
Description
技术领域
标准单元总体布线过程中用的减少串扰的方法属于集成电路计算机辅助设计(IC CAD)领域,尤其涉及标准单元(SC)总体布线领域。
背景技术
在集成电路(IC)设计中,
物理设计是IC设计过程中主要的一环,也是其中最耗时的一步。与物理设计相关的计算机辅助设计技术称为
布图设计。在布图设计中,
总体布线是一个极为重要的环节,它的结果对最后
详细布线的成功与否和芯片的性能影响极大。
集成电路的制造工艺目前正从
超深亚微米(VDSM)进入到
纳米(nanometer)阶段;集成电路的设计规模正由
超大规模(VLSI)、
甚大规模(ULSI)向
G大规模(GSI)方向发展;集成电路的工作频率由
G赫兹向更高迈进。在这种条件下,一方面,集成电路设计中
互连线延迟已经大大超过了
门延迟,成为影响芯片性能的主要因素。这时除了要优化
布线拥挤外,还要进行时延优化。另一方面,由于模块、互连线排列更加紧密,电路工作频率更高,使得互连线之间的
耦合效应变得非常强烈:该效应进一步
劣化电路时延;尤其是,耦合电容导致的
线间串 扰成为一个突出的问题。因此,若标准单元总体布线进行性能优化时仍按照以往的方法而忽略线间串扰的影响,将会使所得到的实际布线结果在性能上受到很大影响,甚至使电路不能正常工作。
由两条相邻连线之间
电容性耦合产生的串扰,能够造成电路信号不正确的逻辑转变。结果,芯片的性能不可能达到设计目标的要求。这一问题严重阻碍着电路的集成度和工作频率的进一步提高、以及特征宽度的进一步减小。因此,在新的技术发展与工艺要求下,要研究消除串扰并进行
时延、布线拥挤挤优化的总体布线方法。
在已报导和所能查阅到的国内外相关研究中,我们列举、分析、总结如下:
关于代表性的时延优化方法,在文献[已申请的国家发明专利:洪先龙,经彤,许静宇,张凌,胡昱.发明名称:考虑耦合效应进行时延优化的标准单元总体布线方法。申请日期:2002/12/17.申请号为:02156622.4.]中进行了全面的分析、介绍。
两篇文献[已申请的国家发明专利:洪先龙,经彤,鲍海云,蔡懿慈,许静宇.发明名称:基于关键网络技术优化时延的标准单元总体布线方法。申请日期:2002/01/15.申请号为:02100354.8.已于2002/07/24被公开。]和[已申请的国家发明专利:洪先龙,经彤,许静宇,张凌,胡昱.发明名称:考虑耦合效应进行时延优化的标准单元总体布线方法。申请日期:2002/12/17.申请号为:02156622.4.]是我们相继提出的新的时延优化方法。其中,我们先在前者中提出了
基于关键网络技术的时延优化总体布线方法。该方法的优化思想比以往其他方法具有突出的优点,能取得更好的时延优化效果。但由于当时条件的限制,还没有考虑到耦合效应进一步劣化电路时延的影响,使得该方法在新的工艺条件下存在不足。为了弥补不足,我们又在后者中提出了
考虑耦合效应进行时延优化的标准单元总体布线方法。该方法更准确地计算了延迟,与实际情况更加一致。
但是,上述的工作都是围绕时延优化的目标,还尚未考虑串扰对电路性能的影响,没有进行相关的优化工作。
对于与串扰相关的研究工作,我们在2001年的综述性文献[经彤,洪先龙,蔡懿慈,鲍海云,许静宇.性能驱动总体布线的关键技术及研究进展.软件学报.2001,12(5):677-688.]中进行了比较详细的分析、介绍。下面除对该文献中的串扰分析内容进行简要的列举外,还将补充介绍后续的典型相关研究工作。
对于串扰的研究可追溯到多年前的文献[Catt,I.Crosstalk(Noi se)in DigitalSystems.IEEE Transactions on Electronic Computers,1967,16(6):743-763.]的工作,它比较清楚地介绍了串扰的形成及其基本概念,但它是基于
印刷线路板(PCB)而不是基于IC芯片的。多年后,随着IC技术的发展,基于IC布线中的串扰相关研究工作才逐步得到开展。这些工作可分为两大类:
对于串扰计算模型的研究;
在布线中进行串扰优化工作。
在7篇文献[Vittal,A.,Marek-Sadowska,M.Crosstalk Reduction for VLSI.IEEETransactions on CAD,1997,16(3):290-298.]、[Yang,X.Crosstalk-Driven Layout[M.S.Thesis].Santa Barbara,California:University of California,1996.]、[Devgan,A.Efficient Coupled Noise Estimation for On-Chip Interconnects.In:IEEE,ACM eds.Proceedings of IEEE/ACM International Conference on Computer-Aided Design(ICCAD).Los Alamitos:IEEE Computer Society Press,1997.147-153.]、[Kawaguchi,H.,Sakurai,T.Delay and Noise Formulas for Capacitively Coupled Distributed RC Lines.In:IEEE,ACM eds.Proceedings of Asia and South Pacific Design Automation Conference(ASP-DAC).Los Alamitos:IEEE Computer Society Press,1998.]、[Sakurai,T.Closed FormExpressions for interconnection Delay,Coupling and Crosstalk in VLSI’s.IEEETransactions on Electron Devices,1993,40(1):118-124.]、[Vittal,A.,Chen,L.H.,Marek-Sadowska,M.et al.Crosstalk in VLSI Interconnections.IEEE Transactions onCAD,1999,18(12):1817-1824.]、[Kuhlmann,M.,Sapatnekar,S.S.Exact and EfficientCrosstalk Estimation.IEEE Transactions on CAD,2001,20(7):858-865.]中,主要进行了关于串扰计算模型的研究工作。文献[Parakh,P.N.,Brown,R.B.CrosstalkConstrained Global Route Embedding.In:ACM ed.Proceedings of InternationalSymposium on Physical Design(ISPD).New York:ACM Press,1999.201-206.]进行的是串扰+时延综合计算模型的研究工作。文献[Jiang,H.R.,Jou J.Y.,Chang Y.W.Noise-Constrained Performance Optimization by Simultaneous Gate and Wire SizingBased on Lagrangian Relaxation.In:ACM,IEEE eds.Proceedings of Design AutomationConference(DAC).New York:ACM Press,1999.90-95.]的主要贡献在于提出了一个精确的串扰计算模型,辅助工作是通过改变电路部件设计尺寸的方法、基于所提出的计算模型来进行串扰的优化。虽然在这些研究中都可以看到“串扰”的字样,但其进行的具体研究工作与本专利的主要工作没有太多的联系,这里就不再逐一仔细分析说明了。
有20篇文献主要进行了在布线中优化串扰的研究工作。这里将通过分析介绍,指出它们与本专利工作的区别。其中,有15篇文献的串扰优化工作分别进行在
详细布线之后(6篇:[Chaudhary,K.,Oniozawa,A.,Kuh,E.S.A Spacing Algorithm for PerformanceEnhancement and Crosstalk Reduction.In:IEEE,ACM eds.Proceedings of IEEE/ACMInternational Conference on Computer-Aided Design(ICCAD).Los Alamitos:IEEEComputer Society Press,1993.697-702.]、[Gao,T.,Liu,C.L.Minimum CrosstalkSwitchbox Routing.In:IEEE,ACM eds.Proceedings of IEEE/ACM InternationalConference on Computer-Aided Design(ICCAD).Los Alamitos:IEEE Computer SocietyPress,1994.610-615.]、[Gao,T.,Liu,C.L.Minimum Crosstalk Channel Routing.IEEETransactions on CAD,1996,15(5):465-474.]、[Kirkpatrick,D.,Sangiovanni-Vincentelli,A.Techniques for Crosstalk Avoidance in the PhysicalDesign of High-performance Digital System.In:IEEE,ACM eds.Proceedings of IEEE/ACMInternational Conference on Computer-Aided Design(ICCAD).Los Alamitos:IEEEComputer Society Press,1994.616-619.]、[Thakur,S.,Zhao,K.Y.,Wong,D.F.AnOptimal Layer Assignment Algorithm for Minimizing Cros stalk for Three Layer VHVChannel Routing.In:IEEE ed.Proceedings of International Symposium on Circuit andSystems(ISCAS).Los Alamitos:IEEE Computer Society Press,1995.207-210.]、[张徐亮,赵梅,范明钰等.一种在VLSI电路物理设计中减小串扰的优化算法.计算机辅助设计与图形学学报.2001,13(4):289-293.])、
详细布线之中(6篇:[Zhou,H.,Wang,D.F.An Optimal Algorithm for River Routing with Crosstalk Constrains.In:IEEE,ACM eds.Proceedings of IEEE/ACM International Conference on Computer-Aided Design(ICCAD).Los Alamitos:IEEE Computer Society Press,1996.310-315.]、[Jhang,K.S.,Ha,S.,Jhon,C.S.COP:A Crosstalk Optimizer for Gridded Channel Routing.IEEE Transactionson CAD,1996,15(4):424-437.]、[Saxena,P.,Liu,C.L.Crosstalk Minimization UsingWire Perturbations.In:ACM,IEEE eds.Proceedings of Design Automation Conference(DAC)。New York:ACM Press,1999.100-103.]、[Morton,P.B.,Dai,W.An EfficientSequential Quadratic Programming Formulation of Optimal Wire Spacing for Cross-TalkNoise Avoidance Routing.In:ACM ed.Proceedings of International Symposium onPhysical Design(ISPD).New York:ACM Press,1999.22-28.]、[Sapatnekar,S.S.ATiming Model Incorporating the Effect of Crosstalk on Delay and its Application toOptimal Channel Routing.IEEE Transactions on CAD,2000,19(5):550-559.]、[Hsu,K.C.,Lin,Y.C.,Chiu,P.X.,and Hsieh,T.M.Minimum Crosstalk Channel Routingwith Dogleg.In:IEEE ed.Proceedings of International Symposium on Circuit andSystems(ISCAS).Los Alamitos:IEEE Computer Society Press,2000.73-76.])、
总体 布线之后(3篇:[Xue,T.X.,Kuh,E.S.,Wang,D.S.Post Global Routing CrosstalkRisk Estimation and Reduction.In:IEEE,ACM eds.Proceedings of IEEE/ACMInternational Conference on Computer-Aided Design(ICCAD).Los Alamitos:IEEEComputer Society Press,1996.302-309.]、[Xue,T.X.,Kuh,E.S.,Wang,D.S.PostGlobal Routing Crosstalk Synthesis.IEEE Transactions on CAD,1997,16(12):1418-1430.]、[Stohr,T.,Alt,M.,Hetzel,A.,et al.Analysis,Reduction and Avoidanceof Crosstalk on VLSI Chips.In:ACM ed.Proceedings of International Symposium onPhysical Design(ISPD).New York:ACM Press,1998.211-218.])等布图阶段。文献[Tseng,H.P.,Scheffer,L.,Sechen,C.Timing and Crosstalk Driven Area Routing.In:ACM,IEEE eds.Proceedings of Design Automation Conference(DAC).New York:ACM Press,1998.378-381.]的工作是面向
积木块(BBL)设计模式的而不是标准单元(SC)设计模式,其优化是进行在总体布线之后阶段。文献[Kastner,R.,Bozorgzadeh,E.,Sarrafzadeh,M.AnExact Algorithm for Coupling-Free Routing.In:ACM ed.Proceedings of InternationalSymposium on Physical Design(ISPD).New York:ACM Press,2001.10-15.]研究的是能够减小耦合效应的一般拓扑模型,它与具体的布线阶段没有密切的联系,没有涉及到其他的优化目标。而
本专利的串扰优化工作是在总体布线过程之中进行的。
在总体布线过程之中进行串扰优化工作的有3篇文献。其中,2篇文献[Zhou,H.,Wang,D.F.Global Routing with Crosstalk Constrains.In:ACM,IEEE eds.Proceedings ofDesign Automation Conference(DAC).New York:ACM Press,1998.374-377.]和[Zhou,H.,Wong,D.F.Global Routing with Crosstalk Constraints.IEEE Transactions on CAD,1999,18(11):1683-1688.]采用两阶段的启发式方法来控制串扰:首先以最小化总串扰为目标采用一种新的Steiner树构造算法来为每个线网构造初始Steiner树,然后,估计每个线网的串扰风险,超标的线网将被拆线重布。在重布过程中采用的是拉格朗日松弛技术。在该算法中
没有同时考虑时延优化的问题。文献[庄昌文,范明钰,李春辉,虞厥邦.一种串扰和时延驱动的总体布线算法.电子科技大学学报.2000,29(3):233-238.]进行了串扰与时延的优化工作,它是面向积木块(BBL)设计模式的而不是标准单元(SC)设计模式,布线区域是模块间的通道而不是整个芯片平面。它的测试例子线网数量少、方法实施时间长。同时,该3篇文献在测试中采用的都是学术界的benchmark,没有采用工业界实例电路,没有采用工业界精确的查表性能参数计算模型。
本专利的工作是消除串扰并进行时延、布线拥挤等优化目标的共同优化。其测试采用的
是工业界实例电路以及精确的查表性能参数计算模型。所进行的优化工作比上述文献中的广
泛、全面,优化方法也与它们不同。
已检索到1篇优化串扰的美国专利,参见文献[美国专利:United States Patent,PatentNo.:US6218631 B1,Date of Patent:Apr.17,2001.Hetzel et al.“Structure for ReducingCross-Talk in VLSI Circuits and Method of Making Same Using Filled Channels toMinimize Cross-Talk”.]。它是在详细布线阶段通过在未占用布线道中插满屏蔽线(voltageand/or GND metal lines)的技术来减小串扰,与本专利的工作不同。
发明内容
本发明的目的在于提出一种标准单元总体布线过程中用的减少串扰的方法。本发明所述的方法与本发明人已申请了两项中国发明专利的优化时延的方法相结合,形成了一种减少串扰并进行时延、布线拥挤优化的标准单元总体布线方法,该方法的总体思路是:首先利用现有技术(是我们以前申请的国家发明专利中的技术)在每条线网不受任何约束的条件下构造时延优化的Steiner树。然后,利用现有技术(是我们以前公开发表的学术论文中的技术)
优化 布线拥挤,消除拥挤边。再利用现有技术(是我们以前申请的国家发明专利中的技术)来
优化 时延。此后,根据本发明提出的
减少串扰的方法统计电路的串扰情况,并进行串扰的控制与 减少。最后再用用户给出的时延约束指标参数数组与其一一对应的从输入PI到输出PO的优化时延相比,如若不满足,则继续迭代时延优化和串扰控制程序,一直到得出一组满足优化目标的所有线网在GRG中的布线树为止。
本发明的特征在于:它是在标准单元总体布线过程中位于优化布线拥挤、优化时延之后进行的。它先是在统计电路串扰情况的基础上进行信号线网之间的串扰的减少控制,然后再根据用户给出的时延约束指标参数数组一一对应地从输入节点PI到输出节点PO进行优化时延与其比较,若不满足,则继续迭代包括布线拥挤在内的时延优化和串扰减少控制程序,一直到得出一组满足优化目标的所有线网在总体布线图(GRG)中的布线树为止;它在执行完优化电路时延程序后根据以下四个假设通过控制相邻线网的平行走线长度和布线间隔来减少信号线网之间的串扰的:
假设1:在某一个GRG网格i内,相邻线网段产生串扰的平行走线长度是该GRG网格的长度li;
假设2:在某一个GRG网格i内,每段线网都只可能与位于其左、右(或者上、下)的线网产生串扰;
假设3:在某一个GRG网格i内,相邻线网段的布线间隔是该GRG网格内的所有线网段的平均布线间隔;
假设4:由于GRG网格一般以单元行的整倍数进行划分,在不同GRG网格内的线网段不产生串扰;
根据上述假设,在进行串扰减少控制时,借助于计算机,它依次含有以下步骤:
(1)设定:Nn是线网总数,Sn是线网j所经过的GRG网格总数,Xj是用户所定义的线网j所能忍受的串扰量;
(2)对每个线网计算串扰量Ctj;
(3)计算当前布线解S的串扰总溢出量即所有线网的串扰溢出量之和
(3.2)计算当前布线解S的串扰总溢出量
(4)找出所有串扰量超过阈值的线网,作为集合Vt;
(5)生成Vt的随机子集Vs;
(6)对Vs中每个线网,根据串扰量对其所经过的边进行排序,找出前m段串扰量超过阈值的边;
(7)试重布该m段边,尽量使该m段边上的串扰变化量之和较小;
Tj和T’j分别是线网j在重布前、后的布线树;
对于构成关键路径的GRG网格si,所述的线网j在重布前、后在si上的串扰溢出量的变化量在
时,
。
所述的串扰按下式计算:
其中:Ccoupling是耦合电容;Ctotal包括对地电容、耦合电容及负载电容。
实验证明:把串扰减少后,布线解的串扰总溢出量得到明显减少,超过串扰阈值的线网数也得到控制。同时,线网的时延性能却没有明显变差。
附图说明
图1:总体布线的示意图。
图2:本发明结合时延优化后总的程序流程框图。
图3:在多层布线的芯片平面上生成的GRG。
图4:减少串扰过程示例图。
具体实施方式
(1)初始化:
设置:GRC(总体布线单元)的行数Nnr,列数Nnc,
GRG(总体布线图)中所有顶点即GRC中心点的坐标vnr,nc,(x,y),其中,nr,nc分别代表行和列,x,y是芯片平面的坐标;
GRG中每条边ek的容量Ck,
电路中线网的总数Nsum,每条线网的网表NetlistIndex,每条线网的源点s,漏点t,
电路的所有电学性能参数,
用户给定的时延约束指标参数;
(2)生成GRG:
读入在多层布线芯片上划分GRC所必需的Nnr,Nnc,
读入在多层布线芯片上生成GRG所必需的各顶点的坐标值,
给顶点以及连接每两个相邻顶点的边ek编号;
(3)读入电路详细连接关系即网表:
读入电路中线网的总数目Nsum,
读入每条线网网表,
按读入顺序,为每条线网编号;
(4)读入电路的所有电学性能参数与约束指标,赋到相应的变量和数组中;
(5)构造初始布线树即Steiner树,即在每条线网不受任何约束条件下构造时延优化的Steiner树;
(6)统计总的可用布线资源,标记拥挤区域:
根据步骤(5)执行后得到的初始解,统计每条GRG边的被使用量dk,比较Ck与dk,若Ck<dk,表示出现布线拥挤,得出拥挤区域,对布线拥挤的GRG边进行标记,有标记的线网即为拥挤线网;
(7)用SSTT.cpp程序优化布线拥挤,消除拥挤边;
(8)用Coll_Timing_Info.cpp程序统计电路时延信息,再根据步骤(7)执行后的布线结果进行时延计算,得到每条电信号传输路径从输入PI到输出PO的时延值。
(9)用CC_Timing.cpp程序优化电路时延;
(10)用Redu_Crot.cpp程序
减少电路串扰:本方法主要考虑信号线网之间串扰的问题,控制相邻线网的平行走线长度与布线间隔。具体采用的方案是:在一次迭代之后统计所有串扰量超过阈值的线网信息。对于超过阈值的线网,采用一定的措施拆线重布,使其平行走线长度减小或者布线间隔增大。经过几次迭代,串扰量超过阈值的线网得到控制。同时,
有目 的地控制经过关键路径的线网的重布,使其时延不受影响。
根据总体布线的特点,不失一般性,首先提出4个假设对问题进行一定程度的简化。这4个假设如下:
假设1:在某一个GRG网格i内,相邻线网段产生串扰的平行走线长度是该GRG网格的长度li。
假设2:在某一个GRG网格i内,每段线网都只可能与位于其左、右(或者上、下)的线网产生串扰。
假设3:在某一个GRG网格i内,相邻线网段的布线间隔是该GRG网格内的所有线网段的平均布线间隔。
假设4:由于GRG网格一般以单元行的整倍数进行划分,在不同GRG网格内的线网段不产生串扰。
定义:Nn是线网总数,Sn是线网j所经过的GRG网格总数,Ctj是线网j所受到的串扰量,Xj是用户所定义的线网j所能忍受的串扰量(也就是线网j的正确逻辑功能不被破坏的最大串扰量)。线网j的串扰溢出量
是其所受到的串扰量和所能忍受的串扰量的差值,即:
则,当前布线解S的串扰总溢出量定义为所有线网的串扰溢出量之和,即:
给定当前布线解S,我们对串扰总溢出量以及在每个线网上的串扰溢出量都可以进行计算。如果有线网超过阈值,采用一定的措施拆线重布。重布后的线网会对本身以及其他线网都带来串扰量的变化。
我们用这两部分的组合来表示重布某个线网后的“代价”。由于线网j的重布而引起的串扰变化
可以定义如下:
其中:Tj和T’j分别是线网j在重布前、后的布线树。
是线网j在重布前、后的串扰溢出量的变化量,
是线网j在重布前、后在GRG网格si上的串扰溢出量的变化量。表示除了线网j以外的其余所有线网在受重布影响的GRG网格上的串扰溢出量的变化量。
其中:和
分别定义为线网j在重布前、后在si上的串扰值。这样,如果关键路径上的GRG网格在某线网重布后产生的串扰值增大,则不鼓励该重布操作,以避免由此造成的拥挤量增大、时延变差的后果。因而,可以有目的地控制时延性能不会恶化。
新构造的布线树将被记录,并和所有曾经构造的布线树比较“代价”。同时,我们随机变化重布线网的顺序,以扩展搜索空间。本方法可描述如下(包括S1-S8共计8个步骤):
S1:对每个线网计算串扰量;
S2:计算当前布线解的串扰总溢出量;
S3:找出所有串扰量超过阈值的线网,作为集合Vt;
S4:生成Vt的随机子集Vs;
S5:对Vs中每个线网,根据串扰量对其所经过的边进行排序,找出前m段串扰量超过阈值的边;
S6:试重布该m段边,尽量使该m段边上的串扰变化量之和较小;
S8:对Vs中每个线网计算布线解的总“代价”
重布“代价”最小的布线树所在的线网。
采用的串扰计算公式如下: 其中:Ctotal包括对地电容、耦合电容及负载电容,Ccoupling是耦合电容。
(11)判断布线时延是否满足约束指标:
若:延迟优化结果>时延约束指标,则继续执行时延优化和串扰控制程序;
若:延迟优化结果≤时延约束指标,则程序终止。
以下结合实例,具体叙述如下:
对于目前IC设计中的多层布线技术,可布线区域不再是单元间的一条条的布线通道,而是一个完整的芯片平面。可采用网格方式,把整个芯片平面按行和列划分为若干个称为总体布线单元GRC的区域,然后生成GRC的对偶图,即如图1所示的总体布线图GRG。GRG由Nnr×Nnc个节点和连接这些节点的边构成。与GRCnr,nc对应的节点vnr,nc的坐标为GRCnr,nc的中心点。连接两节点vnr1,nc1和vnr2,nc2的边称为ek;lk表示两节点vnr1,nc1和vnr2,nc2之间的距离,称为ek的长度;Ck表示两节点vnr1,nc1和vnr2,nc2对应的两个GRC相邻的边能够通过的线网的连线数,称为ek的容量。于是,线网中要连通的引脚点Pin就映射成为其所在的GRG中对应的一系列节点。这样,GRG中的一个线网就可以用节点的集合表示,而对一个线网的布线问题则对应于求解GRG中节点集{vnr,nc}的Steiner树问题。
本布线方法的流程框图如图2所示。
现在采用工业界的一个电路实例biu作为本发明的一个实施例,结合图2的程序流程用本发明的总体布线方法进行布线。它依次有如下步骤:
(1)初始化:
设:行数Nnr=66,列数Nnc=26,如图3所示。此时,GRG图中共有1716个顶点,每个顶点都有一个对应的位置坐标(x,y),例如:在图3中,v1,1顶点的位置坐标是(-3900,-3900),v1,2顶点的位置坐标是(-1700,-3900),即可用vnr,nc(x,y)表示,nr表示GRG上第几行,nc表示GRG上第几列,坐标(x,y)是相对芯片平面的坐标原点而言的;共有3340条边,每条边都有一个用户给定的容量,从14~19,例如:连接v1,1与v1,2的边的容量为14,连接v1,2与v1,3的边的容量为14。
设:线网的总数Nsum为943条,
用户给出的时延约束指标,如其中一个时延值为10.000000ns。
(2)生成GRG:
读入Nnr=66,Nnc=26;按照先行后列的顺序,给1716个顶点全部编号,分别为1~1716号;再按照先行后列的顺序,从1号顶点开始,把3340条GRG边全部编号,分别为1~3340号。
(3)读入电路详细连接关系即网表:
读入电路中线网总数Nsum=943。按照网表读入的顺序,给943条线网全部编号,分别为net 1~net 943。于是得到每条线网包含源点、漏点信息在内的网表,其具体形式描述如下:
8号线网的网表表示是:(net8(vertexList 710 2 736 2 762 2 788 2 686 2 6602 634 2 608 1)),
943号线网的网表表示是:(net 943(vertexList 310 2 309 2 308 1))。
以net 943为例它表示的是:第310号顶点是漏点,第309号顶点是漏点,第308号顶点是源点。它们的通式可表示为:
(net号(VertexList 顶点号 源点/漏点 ……)),
其中:数字1表示源点,数字2表示漏点。
(4)读入电路的所有电学性能参数与约束指标,赋到相应的变量和数组之中:
读入:用户给出的时延约束指标参数赋到数组中,其中一个时延约束指标(从PI到PO)=2.900000ns。
(5)构造初始时延优化的布线树:
采用ITDT_Tree.cpp程序完成。其中采用了“已申请的国家发明专利:洪先龙,经彤,许静宇,张凌,胡昱.发明名称:考虑耦合效应进行时延优化的标准单元总体布线方法。申请日期:2002/12/17.申请号为:02156622.4.”来实现这一步骤。用该算法求出的初始布线树其形式如下:
#Init_Steiner_Tree 8
(
(connect 710 711)
(connect 711 712)
(connect 736 762)
(connect 762 788)
(connect 710 736)
)
……………………
#Init_Steiner_Tree 943
(
(connect 308 309)
(connect 309 310)
)
其通用表达式为:
#Init_Steiner_Tree XXX
(
(connect顶点号顶点号)
…………
(connect顶点号顶点号)
)
(6)统计总的可用布线资源,标记拥挤区域:
采用Update_Resources.cpp程序完成。统计每条GRG边的被使用量(即有多少线网通过了该边)dk,再把它与允许容量Ck比较,若Ck<dk,则表明出现布线拥挤,把它在结构EdgeIndex中标记为1;把所有经过标记为1的GRG边的线网确定为拥挤线网。
本实施例中,共标记出124条布线拥挤的GRG边,228个拥挤线网。
(7)优化布线拥挤,消除拥挤边:
采用SSTT.cpp程序完成。其中采用了“基于搜索空间遍历技术(SSTT)的布线拥挤优化算法”,它已公开发表于2001年的国际学术会议:“Tong Jing,Xian-Long Hong,Hai-Yun Bao,et al.‘An Efficient Congestion Optimization Algorithm for Global Routing Based onSearch Space Travers ing Technology’.In Proceedings of IEEE ASICON,2001,114~117”。
在本实施例中,进行布线拥挤的优化后,消除了全部拥挤边。
(8)用Coll_Timing_Info.cpp程序统计电路时延信息,再根据步骤(7)执行后的布线结果进行时延计算,得到每条电信号传输路径从输入PI到输出PO的时延值。其中采用了“已申请的国家发明专利:洪先龙,经彤,许静宇,张凌,胡昱.发明名称:考虑耦合效应进行时延优化的标准单元总体布线方法.申请日期:2002/12/17.申请号为:02156622.4.”来实现这一步骤。
然后,把用户时延约束指标与上述计算出的每条电信号传输路径的延迟值进行比较,分析得到此时时延不满足用户要求的关键路径。
(9)优化电路时延:
用CC_Timing.cpp程序完成。其中采用了“已申请的国家发明专利:洪先龙,经彤,许静宇,张凌,胡昱.发明名称:考虑耦合效应进行时延优化的标准单元总体布线方法.申请日期:2002/12/17.申请号为:02156622.4.”来实现这一步骤。
在本实施例中,进行时延优化后,完成了电路的时延优化任务。
(10)优化电路串扰:
用Redu_Crot.cpp程序优化电路串扰。
电路局部串扰的优化过程可由图4所示。其中n1到n5表示第1到5个线网,step1到step4分别指示从第1步到第4步的操作。虚线部分表示线网有串扰的区域。经过计算,n1到n5的串扰量超过阈值。而在这些线网可供选择的布线树中,通过计算串扰变化量,线网n1按图4(b)中所示的布线树被重布所引起的朝串扰减小的方向的串扰变化最大。因此在step1,线网n1被重布,串扰情况得到一定程度的改善,表现为虚线部分减少。在step2,线网n3被重布(如图4(c)所示)。在step3,线网n5被重布(如图4(d)所示)。在step4,线网n2被重布(如图4(d)所示)。最后虚线部分消失,表示串扰得到减少。
下面给出本实施例在经过减少电路串扰之前的布线解的串扰情况。
测试例子 | 线网数 | 串扰优化之前 | ||
串扰总溢出量 | 超过阈值线网数 | 电路延迟 | ||
BIU | 943 | 2.49 | 46 | 7.43 |
经过串扰优化,本实施例的布线解的串扰情况如下表所示:
测试例子 | 线网数 | 经过串扰优化 | ||
串扰总溢出量 | 超过阈值线网数 | 电路延迟 | ||
BIU | 943 | 0.38 | 9 | 7.60 |
通过比较可以看出,经过串扰优化后,布线解的串扰总溢出量得到明显减少,超过串扰阈值的线网数也得到控制。而同时,线网的时延性能没有明显变化。
(11)判断各条从PI到PO的电信号传输路径上的时延是否满足给定的所有时延约束指标,若:延迟优化结果>时延约束指标,则继续执行时延优化和串扰控制程序,当全部满足时,输出电路中943条线网的布线结果。
本发明使用的硬件是一台Sun公司的Enterprise 450型工作站;使用Unix操作系统。
由此可见,本发明所述消除串扰并进行时延、布线拥挤优化技术有以下优点:
(1)在总体布线过程中进行串扰的分析、消除,与后续阶段相比可以有更大的优化空间,并为后续详细布线工作在提高布线性能方面创造了更有利的条件;
(2)考虑了影响串扰的主要因素,采用对布线解的串扰情况进行统计,并进行拆线重布,减小串扰。同时兼顾到时延性能,对经过关键路径的GRG网格进行控制,使得在减小串扰的同时保证电路的时延性能不会变差。
Claims (3)
1.标准单元总体布线过程中用的减少串扰的方法,其特征在于:它是在标准单元总体布线过程中位于优化布线拥挤、优化时延之后进行的。它先是在统计电路串扰情况的基础上进行信号线网之间的串扰的减少控制,然后再根据用户给出的时延约束指标参数数组一一对应地从输入节点PI到输出节点PO进行优化时延与其比较,若不满足,则继续迭代包括布线拥挤在内的时延优化和串扰减少控制程序,一直到得出一组满足优化目标的所有线网在总体布线图(GRG)中的布线树为止;它在执行完优化电路时延程序后根据以下四个假设通过控制相邻线网的平行走线长度和布线间隔来减少信号线网之间的串扰的:
假设1:在某一个GRG网格i内,相邻线网段产生串扰的平行走线长度是该GRG网格的长度li;
假设2:在某一个GRG网格i内,每段线网都只可能与位于其左、右(或者上、下)的线网产生串扰;
假设3:在某一个GRG网格i内,相邻线网段的布线间隔是该GRG网格内的所有线网段的平均布线间隔;
假设4:由于GRG网格一般以单元行的整倍数进行划分,在不同GRG网格内的线网段不产生串扰;
根据上述假设,在进行串扰减少控制时,借助于计算机,它依次含有以下步骤:
(1)设定:Nn是线网总数,Sn是线网j所经过的GRG网格总数,Xj是用户所定义的线网j所能忍受的串扰量;
(2)对每个线网计算串扰量Ctj;
(3.1)计算线网j的串扰溢出量
即其所受到的串扰量Ctj和所能忍受的串扰量xj的差值:
(3.2)计算当前布线解S的串扰总溢出量
(4)找出所有串扰量超过阈值的线网,作为集合Vt;
(5)生成Vt的随机子集Vs;
(6)对Vs中每个线网,根据串扰量对其所经过的边进行排序,找出前m段串扰量超过阈值的边;
(7)试重布该m段边,尽量使该m段边上的串扰变化量之和较小;
(8)记录当前布线树,并和该线网曾经构造过的布线树比较“代价”
以确定“代价”最小的布线树;是线网j在重布前、后的串扰溢出量的变化量,即:
其中:
是线网j在重布前、后在GRG网格si上的串扰溢出量的变化量;是线网j由于新布布线树T’j,在T’j所经过的所有GRG网格边上的串扰溢出量的变化量之和;是线网j由于撤消布线树Tj,在Tj所经过的所有GRG网格边上的串扰溢出量的变化量之和;
Tj和T’j分别是线网j在重布前、后的布线树;
(9)对Vs中每个线网计算布线解的总“代价”
按“代价”最小重布布线树所在的线网:
总代价
包括重布对线网本身以及其他线网带来的串扰量的变化,它可表示如下: ,
其中:
表示除了线网j以外的其余所有线网在受重布影响的GRG网格上的串扰溢出量的变化量。
2.根据权利要求1所述的标准单元总体布线过程中用的减少串扰的方法,其特征在于:对于构成关键路径的GRG网格Si,所述的线网j在重布前、后在si上的串扰溢出量的变化量在
时,
。
3.根据权利要求1所述的标准单元总体布线过程中用的减少串扰的方法,其特征在于:所述的串扰按下式计算:
其中:Ccoupling是耦合电容;Ctotal包括对地电容、耦合电容及负载电容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 03124095 CN1219269C (zh) | 2003-05-01 | 2003-05-01 | 标准单元总体布线过程中用的减少串扰的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 03124095 CN1219269C (zh) | 2003-05-01 | 2003-05-01 | 标准单元总体布线过程中用的减少串扰的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1472680A true CN1472680A (zh) | 2004-02-04 |
CN1219269C CN1219269C (zh) | 2005-09-14 |
Family
ID=34152852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 03124095 Expired - Fee Related CN1219269C (zh) | 2003-05-01 | 2003-05-01 | 标准单元总体布线过程中用的减少串扰的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1219269C (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1295775C (zh) * | 2004-03-25 | 2007-01-17 | 杭州电子工业学院 | 一种超大规模集成电路电源/地布线网快速分析方法 |
CN100347710C (zh) * | 2005-05-13 | 2007-11-07 | 清华大学 | 多端线网插入缓冲器优化时延的标准单元总体布线方法 |
US8006208B2 (en) | 2006-11-15 | 2011-08-23 | International Business Machines Corporation | Reducing coupling between wires of an electronic circuit |
CN101410840B (zh) * | 2006-03-27 | 2011-11-16 | 国际商业机器公司 | 减少线网之间的相互耦合的方法 |
CN102346787A (zh) * | 2010-07-29 | 2012-02-08 | 鸿富锦精密工业(深圳)有限公司 | 信号线串扰信息检查系统及方法 |
WO2011100927A3 (zh) * | 2011-04-14 | 2012-03-15 | 华为技术有限公司 | 线对分组的方法、装置及系统 |
CN101183401B (zh) * | 2006-11-15 | 2012-05-09 | 国际商业机器公司 | 降低电子电路的线间耦合的布线方法和装置 |
CN101393640B (zh) * | 2004-08-31 | 2012-05-16 | 英赛特半导体有限公司 | 现有集成电路的设计分析方法 |
CN104636307A (zh) * | 2015-01-08 | 2015-05-20 | 中国航空无线电电子研究所 | 支持fc协议16g通讯速率的串行数据通道的制作方法 |
CN108627845A (zh) * | 2017-03-15 | 2018-10-09 | 信泰光学(深圳)有限公司 | 雷射驱动电路的电路布局 |
CN113011124A (zh) * | 2021-04-12 | 2021-06-22 | 上海伴芯科技有限公司 | 一种用于版图布线的串扰优化方法及装置、可读存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI490719B (zh) * | 2010-08-03 | 2015-07-01 | Hon Hai Prec Ind Co Ltd | 訊號線串擾資訊檢查系統及方法 |
-
2003
- 2003-05-01 CN CN 03124095 patent/CN1219269C/zh not_active Expired - Fee Related
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1295775C (zh) * | 2004-03-25 | 2007-01-17 | 杭州电子工业学院 | 一种超大规模集成电路电源/地布线网快速分析方法 |
CN101393640B (zh) * | 2004-08-31 | 2012-05-16 | 英赛特半导体有限公司 | 现有集成电路的设计分析方法 |
CN100347710C (zh) * | 2005-05-13 | 2007-11-07 | 清华大学 | 多端线网插入缓冲器优化时延的标准单元总体布线方法 |
CN101410840B (zh) * | 2006-03-27 | 2011-11-16 | 国际商业机器公司 | 减少线网之间的相互耦合的方法 |
CN101183401B (zh) * | 2006-11-15 | 2012-05-09 | 国际商业机器公司 | 降低电子电路的线间耦合的布线方法和装置 |
US8006208B2 (en) | 2006-11-15 | 2011-08-23 | International Business Machines Corporation | Reducing coupling between wires of an electronic circuit |
US8032851B2 (en) | 2006-11-15 | 2011-10-04 | International Business Machines Corporation | Structure for an integrated circuit design for reducing coupling between wires of an electronic circuit |
CN102346787B (zh) * | 2010-07-29 | 2015-04-08 | 中山市云创知识产权服务有限公司 | 信号线串扰信息检查系统及方法 |
CN102346787A (zh) * | 2010-07-29 | 2012-02-08 | 鸿富锦精密工业(深圳)有限公司 | 信号线串扰信息检查系统及方法 |
WO2011100927A3 (zh) * | 2011-04-14 | 2012-03-15 | 华为技术有限公司 | 线对分组的方法、装置及系统 |
CN104636307A (zh) * | 2015-01-08 | 2015-05-20 | 中国航空无线电电子研究所 | 支持fc协议16g通讯速率的串行数据通道的制作方法 |
CN108627845A (zh) * | 2017-03-15 | 2018-10-09 | 信泰光学(深圳)有限公司 | 雷射驱动电路的电路布局 |
CN113011124A (zh) * | 2021-04-12 | 2021-06-22 | 上海伴芯科技有限公司 | 一种用于版图布线的串扰优化方法及装置、可读存储介质 |
CN113011124B (zh) * | 2021-04-12 | 2024-01-26 | 上海伴芯科技有限公司 | 一种用于版图布线的串扰优化方法及装置、可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN1219269C (zh) | 2005-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI775000B (zh) | 產生積體電路佈局圖的方法及用於處理積體電路佈局圖的系統 | |
CN1279480C (zh) | 考虑耦合效应进行时延优化的标准单元总体布线方法 | |
US7480878B2 (en) | Method and system for layout versus schematic validation of integrated circuit designs | |
CN1472680A (zh) | 标准单元总体布线过程中用的减少串扰的方法 | |
CN1521830A (zh) | 集成电路设计、验证与测试一体化的技术方法 | |
US20120136633A1 (en) | Optimization-based simulated annealing for integrated circuit placement | |
CN1862546A (zh) | 一个快速的集成电路可布性分析方法 | |
CN1779686A (zh) | 确定缓冲器插入的方法和系统 | |
CN1539113A (zh) | 层次集成电路设计和分析系统中对子模块设计的表达 | |
CN1523662A (zh) | 用去耦合电容实现集成电路供电网络噪声优化的快速方法 | |
CN1606012A (zh) | 半导体器件、半导体器件的布线方法及制造方法 | |
CN1540745A (zh) | 设计低功耗半导体集成电路的方法 | |
CN1495649A (zh) | 用于在寄存器传送级对集成电路的性能进行估算的系统 | |
US7966597B2 (en) | Method and system for routing of integrated circuit design | |
CN1300731C (zh) | 半导体集成电路及其设计方法 | |
CN1619549A (zh) | 半导体集成电路的平面布置装置及方法 | |
Dong et al. | Lithography-aware analog layout retargeting | |
CN1783095A (zh) | 增强陶瓷集成电路封装中配电系统的方法及设备 | |
CN111177996A (zh) | 一种优化集成电路可制造性的特殊图形规避方法及装置 | |
CN116663486A (zh) | 一种基于pi分析的芯片电源规划方法及相关装置 | |
CN1564164A (zh) | 消除由耦合电感引起串扰的标准单元总体布线方法 | |
US9293450B2 (en) | Synthesis of complex cells | |
CN1240015C (zh) | 标准单元总体布线时障碍下时延驱动直角斯坦纳树方法 | |
Meister et al. | Novel pin assignment algorithms for components with very high pin counts | |
US20050240889A1 (en) | Process and apparatus for placing cells in an IC floorplan |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20050914 |