CN112347732A - 一种集成电路分层走线规划方法、装置、存储介质及设备 - Google Patents
一种集成电路分层走线规划方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN112347732A CN112347732A CN202011352799.2A CN202011352799A CN112347732A CN 112347732 A CN112347732 A CN 112347732A CN 202011352799 A CN202011352799 A CN 202011352799A CN 112347732 A CN112347732 A CN 112347732A
- Authority
- CN
- China
- Prior art keywords
- routing
- polygonal sub
- sub
- polygonal
- regions
- 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 50
- 238000004458 analytical method Methods 0.000 claims abstract description 13
- 239000002184 metal Substances 0.000 claims description 55
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000004804 winding Methods 0.000 abstract description 5
- 230000007261 regionalization Effects 0.000 abstract description 3
- 238000011156 evaluation Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
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)
- Architecture (AREA)
- Computer Networks & Wireless Communication (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请公开了一种集成电路分层走线规划方法、装置、存储介质及设备,属于集成电路设计领域。该方法主要包括将根据对芯片设计布局的分析结果获取的限定区域进行切分,获得多个形状规则的多边形子区域;分别获取多个多边形子区域与其他多边形子区域之间的连线的走线信息以及确定多个多边形子区域与其他多边形子区域之间的连线的走线层数。本申请采用区域化分析方法可以在设计早期评估绕线密度问题,并且能够及时给出定量的判断结果,可帮助设计人员尽早做出调整;全面考察绕线资源,走线密度,走线延迟,走线距离等信息,从而获得较为全面的评估结果,有效减少误差。
Description
技术领域
本申请涉及集成电路设计领域,特别是一种集成电路分层走线规划方法、装置、存储介质及设备。
背景技术
集成电路设计的过程中有一个棘手的环节就是走线,这个环节需要工程师完成集成电路模块中数百万器件之间信号线的连接,这个过程非常像PCB上的绕线过程,只是需要被连接的器件太多,而且物理规则更加复杂。
虽然在集成电路设计中需要将数百万的器件连接起来,但是其实在集成电路中可以使用的走线资源是非常有限的。通常可以用来走线的金属层数不会超过8层,在每一层中连线的密度是有严格限制的。从一金属层向另外一金属层跳线的时候需要通过过孔,而过孔周围的信号线又有更加复杂的限制,再加上各种IP的限制和阻隔等。这一系列因素综合起来会使得集成电路设计中将所有器件合适地连接起来变成一个EDA工具的核心技术。在集成电路设计中,工程师只能根据理解EDA工具的行为,然后更加精细控制EDA工具的行为,从而提高集成电路设计的质量。
现代EDA工具的全自动走线规划已经可以完成很多的走线工作,而且还可以获得相对优秀的质量。但是对于那些走线特别困难的设计来说,完全依赖EDA工具的自动走线实际上是不够的,必须人为干预和优化。典型的情况就是拥有大量复杂IP设计的情况,或者是需要极度压缩集成电路的设计面积从而降低成本的情况。由于金属连线是会产生延迟的,所以走线问题变得很棘手,那么就需要估计金属连线中哪些线需要走到金属高层。
发明内容
本申请主要是提供一种集成电路分层走线规划方法、装置、存储介质及设备,以解决高速信号线和低速信号线的走线资源占用的问题。
为了解决上述问题,本申请采用的一个技术方案是:提供一种集成电路分层走线规划方法,包括,将根据对芯片设计布局的分析结果获取的限定区域进行切分,获得多个形状规则的多边形子区域;分别获取多个多边形子区域与其他多边形子区域之间的连线的走线信息,其包括,根据多边形子区域与其他多边形子区域之间的连线信息,确定穿过多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息;确定多个多边形子区域与其他多边形子区域之间的连线的走线层数,其包括,根据多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息确定多边形子区域与其他多边形子区域之间的连线的层数指标;根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数,其中,层数指标越高,对应的层数越高。
本申请采用的另一个技术方案是:提供一种集成电路分层走线规划装置,包括,用于将根据对芯片设计布局的分析结果获取的限定区域进行切分,获得多个形状规则的多边形子区域的模块;用于分别获取多个多边形子区域与其他多边形子区域之间的连线的走线信息的模块,其包括,用于根据多边形子区域与其他多边形子区域之间的连线信息,确定穿过多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息的模块;用于确定多个多边形子区域与其他多边形子区域之间的连线的走线层数的模块,其包括,用于根据多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息确定多边形子区域与其他多边形子区域之间的连线的层数指标的模块;用于根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数的模块,其中,层数指标越高,对应的层数越高。
本申请采用的另一个技术方案是:提供一种计算机可读存储介质,其存储有计算机指令,计算机指令被操作以执行方案一中的集成电路分层走线规划方法。
本申请采用的另一个技术方案是:提供一种计算机设备,其包括处理器和存储器,存储器存储有计算机指令,其中处理器操作计算机指令以执行方案一中的集成电路分层走线规划方法。
本申请的技术方案可以达到的有益效果是:本申请设计了一种集成电路分层走线规划方法、装置、存储介质及设备。采用区域化分析方法可以在设计早期评估绕线密度问题,并且能够及时给出定量的判断结果,可帮助设计人员尽早做出调整;全面考察绕线资源,走线密度,走线延迟,走线距离等信息,从而获得较为全面的评估结果,有效减少误差。
附图说明
图1是本申请一种集成电路分层走线规划方法的一个具体实施方式的示意图;
图2是本申请一种集成电路分层走线规划方法的一个具体实例的示意图;
图3是本申请一种集成电路分层走线规划方法的另一个具体实例的示意图;
图4是本申请一种集成电路分层走线规划装置的一个具体实施方式的示意图。
具体实施方式
下面结合附图对本申请的较佳实施例进行详细阐述,以使本申请的优点和特征能更易于被本领域技术人员理解,从而对本申请的保护范围做出更为清楚明确的界定。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
图1是本申请一种集成电路分层走线规划方法的一个具体实施方式的示意图。
在图1所示的具体实施方式中,本申请的集成电路分层走线规划方法包括步骤S101,根据对芯片设计布局的分析结果获取的限定区域进行切分,获得多个形状规则的多边形子区域。
在本申请的一个具体实例中,首先需要先完成芯片设计布局,芯片设计布局完成以后的各个器件的位置已经基本确定,在之后的步骤中这些器件的位置几乎不会发生变化。算法的计算只局限在一个特定的范围之内,这个特定的范围是用户实际上通过人工对芯片设计全局的分析获得一个限定区域,这个限定区域由用户输入。
在本申请的一个具体实例中,切分出的子区域可以不均匀,但一定是形状规则的图形。限定区域可以以正方形的方式虚拟切分,也可以以长方形的方式虚拟切分,在本申请中的方案优选以正方形的方式进行虚拟切分,其中不足正方形的部分忽略缺口。
在图1所示的具体实施方式中,本申请的集成电路分层走线规划方法包括步骤S102,分别获取多个多边形子区域与其他多边形子区域之间的连线的走线信息,其包括,根据多边形子区域与其他多边形子区域之间的连线信息,确定穿过多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息。
在本申请的一个具体实施例中,多边形子区域中每一边的连线的走线距离信息对应的距离为曼哈顿距离。多边形子区域中每一边的连线是横平竖直的,连线的距离使用曼哈顿距离使得计算更加简便。
图2是本申请一种集成电路分层走线规划方法的一个具体实例的示意图。
在图2所示的具体实例中,用户将这个限定区域切分成一个一个的小矩形,在图2中将限定区域切分成四行三列共12个小矩形区域,按照矩阵行列的顺序对这12个小矩形区域分别标号为A,B,C,D,E,F,G,I,J,K和L,然后集中观测H区域。由于集成电路的连线基本上都是横平竖直的,所以每根连线的距离需要使用曼哈顿距离,如图2所示的H区域中某一器件与其他矩形区域的器件之间有多根连线,每一根连线的两端都有各自的二维坐标,根据曼哈顿距离公式可以获得每一根连线的走线距离信息S,该器件的走线距离信息有S1,S2,......,Sn。在二维平面上坐标(x1,y1)和坐标(x2,y2)之间的曼哈顿距离为:
S(x,y)=|x1-x2|+|y1-y2|
在本申请的一个具体实例中,从理论分析可以看出金属线越粗单元长度的延迟就越小。那么这种粗的金属线就更加适合走一些特别快的信号,也适合走一些需要传递到很远距离的信号。所以在集成电路布线中,比较上层的金属层的布线资源是相对比较宝贵的。我们需要提高上层金属层走线通道的利用率从而可以减少时序路径的延迟,也可以减少在金属线上插入缓冲器的数量。集成电路的布线是基于布线通道分配的算法,在特定区域中会有规划好的预布置走线轨道,所有的金属走线都倾向于走在轨道上。那么我们通过分析轨道的利用率就可以分析走线的难度。芯片的预布线是EDA工具提供的功能,它可以允许用户在全面布线之前将一些信号人工规划到特定的布线资源上,所以需要分析预布置走线轨道的资源情况,然后根据资源的情况给出可能的解决之道。
在本申请的一个具体实例中,现代EDA工具的全自动走线规划已经可以完成很多的走线工作,而且可以获得相对优秀的质量,但是对于那些走线特别困难的设计来说,完全依赖EDA工具的自动走线实际上是不够的,必须人为干预和优化。典型的情况就是拥有大量复杂IP的设计,或者是需要极度压缩集成电路的设计面积从而降低成本的情况。
在本申请的一个具体实例中,可以通过现代EDA工具获取每一根连线的时序信息,根据时序信息分析得到每一根连线的走线延迟信息。
在本申请的一个具体实例中,集成电路内部走线的延迟计算公式如下:
其中,Rd是驱动源头的电阻,C0(x)是在x位置金属走线的单位长度电容,r0(x)是x位置金属走线的单位长度电阻,CL是信号传递末端负载的器件的电容,单位长度电容受工艺条件的限制很难改变,但是单位长度电阻可以通过增大金属的横截面积而变小。我们利用EDA工具分析出每一根连线的两端之间的信号的时序信息,从而分析出每一根连线的走线延迟信息。在如图2所示的H区域中,例如一个器件有15根连线,那么这15根连线分别对应着15个走线延迟信息D1,D2,......,D15。
在如图2所示的具体实例中,在H区域中的众多器件中选择一个器件,并且该器件需要跟B,D,E,G,I,J区域的其它器件进行通信,那么该器件必然需要产生与这些矩形区域中的器件的连线,可以通过这种连线的关系粗略统计穿过矩形每一边虚线的连线的根数,根据统计出来的分别穿过矩形区域的4个边的连线的数目与对应边上总的走线资源之间的关系,得到一个器件的每一根连线的走线密度信息R。比如该器件穿过矩形区域的连线有15根,那么这15根连线的走线密度信息为R1,R2,R3,......,Rn。
在本申请的一个具体实例中,将如图2所示的H区域中所有的器件的R,S,D信息都获取到之后形成一个状态空间Z,其中H区域中的第一个器件对应着一个走线密度信息R1,第二个器件对应着一个走线密度信息R2。假设图2中H区域中的第一个器件有15根连线,这15根连线中的第一根连线对应着一个走线密度信息R1、一个走线距离信息S1以及一个走线延迟信息D1,第二根连线对应着一个走线密度信息R2、一个走线距离信息S2以及一个走线延迟信息D2,依次推算下去,那么第十五根连线对应着一个走线密度信息R15、一个走线距离信息S15以及一个走线延迟信息D15。将H区域中每一个器件的所有的走线密度信息以及对应的走线距离信息和走线延迟信息收集起来形成一个状态空间,利用此方法,将划分好的其他区域获取一系列的信息后以各自区域为单位形成自己的状态空间。
在图1所示的具体实施方式中,本申请的集成电路分层走线规划方法包括步骤S103,确定多个多边形子区域与其他多边形子区域之间的连线的走线层数,其包括,根据多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息确定多边形子区域与其他子多边形区域之间的连线的层数指标;根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数,其中,层数指标越高,对应的层数越高。
在本申请的一个具体实施例中,确定多个多边形子区域与其他多边形子区域之间连线的走线层数的过程还包括,根据多边形子区域的面积计算多边形子区域在各个金属分层对应的预布置走线轨道数目,其中预布置走线轨道数目包括横向预布置走线轨道数目和纵向预布置走线轨道数目;根据各个金属分层对应的预布置走线轨道数目,计算多个多边形子区域与其他多边形子区域之间的连线的走线代价参数,其中,走线代价参数包括横向走线代价参数和纵向走线代价参数;以及根据多边形子区域中每一边的连线的走线密度信息、走线距离信息、走线延迟信息以及走线代价参数确定多边形子区域与其他多边形子区域之间的连线的层数指标。
在本申请的一个具体实例中,可以走线的金属层数有8层,将这8个金属分层中的低三层划分为低层金属层,即第一层,第二层和第三层为低层金属层,将这8个金属分层中的高五层划分为高层金属层,即第四层,第五层,第六层,第七层和第八层为高层金属层,分别计算低层金属层的横向预布置走线轨道总数目和纵向预布置走线轨道总数目,以及高层金属层的横向预布置走线轨道总数目和纵向预布置走线轨道总数目。
在本申请的一个具体实例中,横向走线代价采用低层金属层的横向预布置走线轨道总数目与高层金属层横向预布置走线轨道总数目的比例表示;纵向走线代价采用低层金属层的纵向预布置走线轨道总数目与高层金属层纵向预布置走线轨道总数目的比例表示。
在本申请的一个具体实例中,如图2所示,我们可以通过H区域的面积估计出来H区域在每个金属层可以用于走线的预布置轨道数目。比如在H区域的低三层金属层的横向布线资源的总数为1000,则记为纵向布线资源总数为800,就记为同样统计在第四层以及以上的金属层可以走线的资源,横向走线资源的总数如果是500,则记为纵向走线资源的总数为300,则记为
图3是本申请一种集成电路分层走线规划方法的另一个具体实例的示意图。在图3中,根据每一根连线的走线密度信息、走线距离信息、走线延迟信息、横向走线代价参数以及纵向走线代价参数确定其对应的层数指标。
在本申请的一个具体实例中,对于每一根连线来说,一根连线是否应该被拉到高层金属层走线的层数指标表示如下:
在本申请的一个具体实施例中,多边形子区域中每一边的连线的走线密度信息对应的密度越大,对应的层数指标越低,走线距离信息对应的距离越长,对应的层数指标越高,以及走线延迟信息对应的延迟越久,对应的层数指标越高。
在本申请的一个具体实施例中,多个多边形子区域与其他多边形子区域之间的连线的横向走线代价参数和纵向走线代价参数越高,对应的层数指标越低。
在本申请的一个具体实例中,每一根连线都有自己对应的层数指标,算出一个多边形子区域内所有连线的层数指标。在如图3所示的流程图中,在该多边形子区域中,只要选取的预定比例的连线的数量大于用户设定的上限阈值,我们就要调整布局参数控制该区域的标准单元的密度,重新布局,再次进行区域化分析,直到预定比例的连线的数量不大于用户设定的上限阈值时,不再重新布局。在该多边形子区域所有的连线中,设定10%的连线可以优先使用高层金属层走线,将层数指标按照从大到小的顺序进行排列,选取前10%的连线放入高层金属层走线。
在本申请的一个具体实施例中,根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数的过程包括,将层数指标按照由大到小的顺序进行排序,得到多边形子区域与其他多边形子区域之间的连线的排序结果;以及根据排序结果和各个金属分层的预布置走线轨道数目确定多边形子区域与其他多边形子区域之间的连线所在的层数。
在本申请的一个具体实施例中,根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数的过程包括,在多个多边形子区域内,若在预定比例内的连线的数量大于各个金属分层走线资源的上限阈值,则用户通过调整芯片设计布局的参数来控制限定区域中标准单元的密度,对限定区域中标准单元重新布局,将经布局的限定区域切分成多个区域。若在预定比例内的连线的数量不大于各个金属分层走线资源的上限阈值,则将数量在预定比例内的连线放入对应的金属分层走线。通过各个金属分层的走线资源来估算走线密度,控制放入对应的金属分层的连线的数量。
在本申请的一个具体实例中,假设用户设定可以将10%的连线优先使用高层金属层走线,那么在该限定区域中所有器件的所有连线中按照从大到小的顺序选取出10%的连线将被设定到通过高层金属层走线。为了防止高层金属层的走线密度过大,用户可以设置一个上限阈值,比如当超过40%的时候就报警,报警后用户就需要通过调整布局的参数来控制这个区域的标准单元的密度,对限定区域中的标准单元重新进行布局,将经过重新布局的限定区域重新切分成多个形状规则的多边形子区域,继续进行算法步骤,直至所有的连线的层数指标都不大于上限阈值。
图4是本申请一种集成电路分层走线规划装置的一个具体实施方式的示意图。
在图4所示的具体实施方式中,用于将根据对芯片设计布局的分析结果获取的限定区域进行切分,获得多个形状规则的多边形子区域的模块;用于分别获取多个多边形子区域与其他多边形子区域之间的连线的走线信息的模块,其包括,用于根据多边形子区域与其他多边形子区域之间的连线信息,确定穿过多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息的模块;用于确定多个多边形子区域与其他多边形子区域之间的连线的走线层数的模块,其包括,用于根据多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息确定多边形子区域与其他多边形子区域之间的连线的层数指标的模块;用于根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数的模块,其中,层数指标越高,对应的层数越高。
在本申请的一个具体实施例中,确定多边形多个子区域与其他多边形子区域之间连线的走线层数的过程还包括,根据多边形子区域的面积计算多边形子区域在各个金属分层对应的预布置走线轨道数目,其中预布置走线轨道数目包括横向预布置走线轨道数目和纵向预布置走线轨道数目;根据各个金属分层对应的预布置走线轨道数目,计算多个多边形子区域与其他多边形子区域之间的连线的走线代价参数,其中,走线代价参数包括横向走线代价参数和纵向走线代价参数;以及根据多边形子区域中每一边的连线的走线密度信息、走线距离信息、走线延迟信息以及走线代价参数确定多边形子区域与其他多边形子区域之间的连线的层数指标。
在本申请的一个具体实施例中,根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数的过程包括,将层数指标按照由大到小的顺序进行排序,得到多边形子区域与其他多边形子区域之间的连线的排序结果;以及根据排序结果和各个金属分层的预布置走线轨道数目确定多边形子区域与其他多边形子区域之间的连线所在的层数。
在本申请的一个具体实施例中,多边形子区域中每一边的连线的走线密度信息对应的密度越大,对应的层数指标越低,走线距离信息对应的距离越长,对应的层数指标越高,以及走线延迟信息对应的延迟越久,对应的层数指标越高。
在本申请的一个具体实施例中,多个多边形子区域与其他子多边形区域之间的连线的横向走线代价参数和纵向走线代价参数越高,对应的层数指标越低。
在本申请的一个具体实施例中,根据层数指标,确定多边形子区域与其他多边形子区域之间的连线所在的层数的过程包括,在多个多边形子区域内,若在预定比例内的连线的数量大于各个金属分层走线资源的上限阈值,则用户通过调整芯片设计布局的参数来控制限定区域中标准单元的密度,对限定区域中标准单元重新布局,将经布局的限定区域切分成多个区域。若在预定比例内的连线的数量不大于各个金属分层走线资源的上限阈值,则将数量在预定比例内的连线放入对应的金属分层走线。通过各个金属分层的走线资源来估算走线密度,控制放入对应的金属分层的连线的数量。
在本申请的一个具体实施例中,多边形子区域中每一边的连线的走线距离信息对应的距离为曼哈顿距离。多边形子区域中每一边的连线是横平竖直的,连线的距离使用曼哈顿距离使得计算更加简便。
本申请提供的集成电路分层走线规划装置,可用于执行上述任一实施例描述的集成电路分层走线规划方法,其实现原理和技术效果类似,在此不再赘述。
在本申请的另一个具体实施方式中,一种计算机可读存储介质,其存储有计算机指令,其特征在于,计算机指令被操作以执行任一实施例描述的集成电路分层走线规划方法。
在本申请的另一个具体实施方式中,提供一种计算机设备,其包括处理器和存储器,存储器存储有计算机指令,其中处理器操作计算机指令以执行任一实施例描述的集成电路分层走线规划方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上描述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种集成电路分层走线规划方法,其特征在于,包括:
将根据对芯片设计布局的分析结果获取的限定区域进行切分,获得多个形状规则的多边形子区域;
分别获取多个所述多边形子区域与其他所述多边形子区域之间的连线的走线信息,其包括,
根据所述多边形子区域与其他所述多边形子区域之间的连线信息,确定穿过所述多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息;
确定多个所述多边形子区域与其他所述多边形子区域之间的连线的走线层数,其包括,
根据所述多边形子区域中每一边的连线的所述走线密度信息、所述走线距离信息以及所述走线延迟信息确定所述多边形子区域与其他所述多边形子区域之间的连线的层数指标;
根据所述层数指标,确定所述多边形子区域与其他所述多边形子区域之间的连线所在的层数,其中,所述层数指标越高,对应的层数越高。
2.根据权利要求1所述的集成电路分层走线规划方法,其特征在于,所述确定多个所述多边形子区域与其他所述多边形子区域之间连线的走线层数的过程还包括:
根据所述多边形子区域的面积计算所述多边形子区域在各个金属分层对应的预布置走线轨道数目,其中所述预布置走线轨道数目包括横向预布置走线轨道数目和纵向预布置走线轨道数目;
根据所述各个金属分层对应的所述预布置走线轨道数目,计算多个所述多边形子区域与其他所述多边形子区域之间的连线的走线代价参数,其中,所述走线代价参数包括横向走线代价参数和纵向走线代价参数;以及
根据所述多边形子区域中每一边的连线的所述走线密度信息、所述走线距离信息、所述走线延迟信息以及所述走线代价参数确定所述层数指标。
3.根据权利要求1所述的集成电路分层走线规划方法,其特征在于,所述根据所述层数指标,确定所述多边形子区域与其他所述多边形子区域之间的连线所在的层数的过程包括:
将所述层数指标按照由大到小的顺序进行排序,得到所述多边形子区域与其他所述多边形子区域之间的连线的排序结果;以及
根据所述排序结果和所述各个金属分层的预布置走线轨道数目确定所述多边形子区域与其他所述多边形子区域之间的连线所在的层数。
4.根据权利要求1或2所述的集成电路分层走线规划方法,其特征在于,所述多边形子区域中每一边的连线的所述走线密度信息对应的密度越大,对应的层数指标越低,所述走线距离信息对应的距离越长,对应的层数指标越高,以及所述走线延迟信息对应的延迟越久,对应的层数指标越高。
5.根据权利要求2所述的集成电路分层走线规划方法,其特征在于,多个所述多边形子区域与其他所述多边形子区域之间的连线的所述横向走线代价参数和所述纵向走线代价参数越高,对应的所述层数指标越低。
6.根据权利要求1所述的集成电路分层走线规划方法,其特征在于,所述根据所述多边形子区域与其他所述多边形子区域之间的连线的层数指标,确定所述多边形子区域与其他所述多边形子区域之间的连线所在的层数的过程包括:
在多个所述多边形子区域内,若在预定比例内的连线的数量大于所述各个金属分层走线资源的上限阈值,则用户通过调整所述芯片设计布局的参数来控制所述限定区域中标准单元的密度,对所述限定区域中所述标准单元重新布局,将重新布局的所述限定区域切分成多个形状规则的新多边形子区域。
7.根据权利要求1所述的集成电路分层走线规划方法,其特征在于,所述多边形子区域中每一边的连线的走线距离信息对应的距离为曼哈顿距离。
8.一种集成电路分层走线规划装置,其特征在于,包括:
用于将根据对芯片设计布局的分析结果获取的限定区域进行切分,获得多个形状规则的多边形子区域的模块;
用于分别获取多个所述多边形子区域与其他所述多边形子区域之间的连线的走线信息的模块,其包括,
用于根据所述多边形子区域与其他所述多边形子区域之间的连线信息,确定穿过所述多边形子区域中每一边的连线的走线密度信息、走线距离信息以及走线延迟信息的模块;
用于确定多个所述多边形子区域与其他所述多边形子区域之间的连线的走线层数的模块,其包括,
用于根据所述多边形子区域中每一边的连线的所述走线密度信息、所述走线距离信息以及所述走线延迟信息确定所述多边形子区域与其他所述多边形子区域之间的连线的层数指标的模块;
用于根据所述层数指标,确定所述多边形子区域与其他所述多边形子区域之间的连线所在的层数的模块,其中,所述层数指标越高,对应的层数越高。
9.一种计算机可读存储介质,其存储有计算机指令,其特征在于,所述计算机指令被操作以执行权利要求1-7中任一项所述的集成电路分层走线规划方法。
10.一种计算机设备,其包括处理器和存储器,所述存储器存储有计算机指令,其中所述处理器操作所述计算机指令以执行权利要求1-7中任一项所述的集成电路分层走线规划方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011352799.2A CN112347732B (zh) | 2020-11-27 | 2020-11-27 | 一种集成电路分层走线规划方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011352799.2A CN112347732B (zh) | 2020-11-27 | 2020-11-27 | 一种集成电路分层走线规划方法、装置、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112347732A true CN112347732A (zh) | 2021-02-09 |
CN112347732B CN112347732B (zh) | 2024-08-06 |
Family
ID=74364969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011352799.2A Active CN112347732B (zh) | 2020-11-27 | 2020-11-27 | 一种集成电路分层走线规划方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112347732B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113177384A (zh) * | 2021-04-30 | 2021-07-27 | 深圳市华星光电半导体显示技术有限公司 | 显示面板的走线设计方法及其走线设计装置、存储介质 |
CN113723042A (zh) * | 2021-09-02 | 2021-11-30 | 海光信息技术股份有限公司 | 接口位置的布局方法及装置、电子设备及存储介质 |
CN115081386A (zh) * | 2022-08-11 | 2022-09-20 | 飞腾信息技术有限公司 | 一种集成电路的布线优化方法、优化装置和相关设备 |
CN116050342A (zh) * | 2022-11-08 | 2023-05-02 | 深圳量旋科技有限公司 | 量子电路的布线方法、布线装置、存储介质和计算机设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835378A (en) * | 1995-11-20 | 1998-11-10 | Lsi Logic Corporation | Computer implemented method for leveling interconnect wiring density in a cell placement for an integrated circuit chip |
US20050246676A1 (en) * | 2004-04-28 | 2005-11-03 | Renesas Technology Corp. | Routing analysis method, logic synthesis method and circuit partitioning method for integrated circuit |
US20070022400A1 (en) * | 2005-07-19 | 2007-01-25 | Matsushita Electric Industrial Co., Ltd. | Method, program, and apparatus for designing layout of semiconductor integrated circuit |
CN101430724A (zh) * | 2007-11-09 | 2009-05-13 | 英业达股份有限公司 | 布线可行性评估方法 |
CN101504676A (zh) * | 2008-01-10 | 2009-08-12 | 松下电器产业株式会社 | 设计半导体集成电路器件的方法、装置以及该器件 |
CN102467582A (zh) * | 2010-10-29 | 2012-05-23 | 国际商业机器公司 | 一种集成电路设计中优化连线约束的方法和系统 |
CN102622468A (zh) * | 2012-02-20 | 2012-08-01 | 苏州领佰思自动化科技有限公司 | 基于并行计算的大规模集成电路通道布线的方法及其系统 |
CN103902775A (zh) * | 2014-03-31 | 2014-07-02 | 福州大学 | 超大规模集成电路多层绕障Steiner最小树构造方法 |
CN104573263A (zh) * | 2015-01-23 | 2015-04-29 | 武汉理工大学 | 基于分裂块的无网格模拟电路的布线方法 |
CN109800450A (zh) * | 2018-12-10 | 2019-05-24 | 中兴通讯股份有限公司 | 一种简化内存电路的实现方法、装置和设备及内存电路 |
CN110276151A (zh) * | 2019-06-27 | 2019-09-24 | 浪潮商用机器有限公司 | 一种内存区域走线的方法、系统、设备及可读存储介质 |
-
2020
- 2020-11-27 CN CN202011352799.2A patent/CN112347732B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835378A (en) * | 1995-11-20 | 1998-11-10 | Lsi Logic Corporation | Computer implemented method for leveling interconnect wiring density in a cell placement for an integrated circuit chip |
US20050246676A1 (en) * | 2004-04-28 | 2005-11-03 | Renesas Technology Corp. | Routing analysis method, logic synthesis method and circuit partitioning method for integrated circuit |
US20070022400A1 (en) * | 2005-07-19 | 2007-01-25 | Matsushita Electric Industrial Co., Ltd. | Method, program, and apparatus for designing layout of semiconductor integrated circuit |
CN101430724A (zh) * | 2007-11-09 | 2009-05-13 | 英业达股份有限公司 | 布线可行性评估方法 |
CN101504676A (zh) * | 2008-01-10 | 2009-08-12 | 松下电器产业株式会社 | 设计半导体集成电路器件的方法、装置以及该器件 |
CN102467582A (zh) * | 2010-10-29 | 2012-05-23 | 国际商业机器公司 | 一种集成电路设计中优化连线约束的方法和系统 |
CN102622468A (zh) * | 2012-02-20 | 2012-08-01 | 苏州领佰思自动化科技有限公司 | 基于并行计算的大规模集成电路通道布线的方法及其系统 |
CN103902775A (zh) * | 2014-03-31 | 2014-07-02 | 福州大学 | 超大规模集成电路多层绕障Steiner最小树构造方法 |
CN104573263A (zh) * | 2015-01-23 | 2015-04-29 | 武汉理工大学 | 基于分裂块的无网格模拟电路的布线方法 |
CN109800450A (zh) * | 2018-12-10 | 2019-05-24 | 中兴通讯股份有限公司 | 一种简化内存电路的实现方法、装置和设备及内存电路 |
CN110276151A (zh) * | 2019-06-27 | 2019-09-24 | 浪潮商用机器有限公司 | 一种内存区域走线的方法、系统、设备及可读存储介质 |
Non-Patent Citations (5)
Title |
---|
刘盛华;洪先龙;经彤;许静宇;: "集成电路物理设计中的快速可布性评估算法", 计算机辅助设计与图形学学报, no. 12, 15 December 2008 (2008-12-15) * |
许飞: "复合分层详细布线算法和非曼哈顿OTC布线算法研究", 中国优秀硕士学位论文全文数据库, 15 December 2006 (2006-12-15) * |
闫海霞;周强;洪先龙;: "采用统一建模的拥挤度驱动三维芯片布局算法", 计算机辅助设计与图形学学报, no. 10, 15 October 2008 (2008-10-15) * |
陈宇轩;梁利平;: "高速数字模块的层次化物理实现技术", 湖南大学学报(自然科学版), no. 10, 25 October 2018 (2018-10-25) * |
黎铁军, 宋廷强, 李思昆: "一种基于组的时序驱动布局规划方法", 计算机工程与科学, no. 09, 30 September 2005 (2005-09-30) * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113177384A (zh) * | 2021-04-30 | 2021-07-27 | 深圳市华星光电半导体显示技术有限公司 | 显示面板的走线设计方法及其走线设计装置、存储介质 |
CN113177384B (zh) * | 2021-04-30 | 2023-07-25 | 深圳市华星光电半导体显示技术有限公司 | 显示面板的走线设计方法及其走线设计装置、存储介质 |
CN113723042A (zh) * | 2021-09-02 | 2021-11-30 | 海光信息技术股份有限公司 | 接口位置的布局方法及装置、电子设备及存储介质 |
CN113723042B (zh) * | 2021-09-02 | 2024-07-26 | 海光信息技术股份有限公司 | 接口位置的布局方法及装置、电子设备及存储介质 |
CN115081386A (zh) * | 2022-08-11 | 2022-09-20 | 飞腾信息技术有限公司 | 一种集成电路的布线优化方法、优化装置和相关设备 |
CN116050342A (zh) * | 2022-11-08 | 2023-05-02 | 深圳量旋科技有限公司 | 量子电路的布线方法、布线装置、存储介质和计算机设备 |
CN116050342B (zh) * | 2022-11-08 | 2024-08-13 | 深圳量旋科技有限公司 | 量子电路的布线方法、布线装置、存储介质和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112347732B (zh) | 2024-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112347732A (zh) | 一种集成电路分层走线规划方法、装置、存储介质及设备 | |
Sechen | VLSI placement and global routing using simulated annealing | |
US6298468B1 (en) | Placement-based pin optimization method and apparatus for computer-aided circuit design | |
US5311443A (en) | Rule based floorplanner | |
Alpert et al. | What makes a design difficult to route | |
US8584070B2 (en) | Evaluating routing congestion based on average global edge congestion histograms | |
US8423940B2 (en) | Early noise detection and noise aware routing in circuit design | |
US20030079192A1 (en) | Method for generating a partitioned ic layout | |
CN1979507A (zh) | 执行集成电路布线的方法 | |
TWI472938B (zh) | 在積體電路的電力網路中自動降低堆疊通孔的方法 | |
WO2006136845A2 (en) | Integrated circuit routing and compaction | |
DE102015117026B4 (de) | Verfahren zur Parameterextraktion und System dafür | |
CN107066681A (zh) | 集成电路和制造集成电路的计算机实现方法 | |
US8336015B2 (en) | Pre-route and post-route net correlation with defined patterns | |
US9213793B1 (en) | Methods, systems, and articles of manufacture for implementing electronic designs using flexible routing tracks | |
JP2006323643A (ja) | 半導体集積回路のフロアプラン設計プログラム、フロアプラン設計装置、および設計方法 | |
Guth et al. | Timing-driven placement based on dynamic net-weighting for efficient slack histogram compression | |
Zhang et al. | RegularRoute: An efficient detailed router applying regular routing patterns | |
He et al. | Ripple: A robust and effective routability-driven placer | |
US7612599B2 (en) | Semiconductor device | |
US20090254875A1 (en) | Proactive routing system and method | |
Dalal et al. | Design of an efficient power distribution network for the UltraSPARC-I microprocessor | |
Ren et al. | True crosstalk aware incremental placement with noise map | |
Ravichandran et al. | Physical layout automation for system-on-packages | |
JP3548398B2 (ja) | 概略経路決定方法および概略経路決定方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Country or region after: China Address after: A1009, floor 9, block a, No. 9, Shangdi Third Street, Haidian District, Beijing 100085 Applicant after: Beijing Bairui Internet Technology Co.,Ltd. Address before: 7-1-1, building C, 7 / F, building 2-1, No.2, Shangdi Information Road, Haidian District, Beijing 100085 Applicant before: BARROT WIRELESS Co.,Ltd. Country or region before: China |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |