CN103902774B - X结构下超大规模集成电路总体布线方法 - Google Patents

X结构下超大规模集成电路总体布线方法 Download PDF

Info

Publication number
CN103902774B
CN103902774B CN201410123885.4A CN201410123885A CN103902774B CN 103902774 B CN103902774 B CN 103902774B CN 201410123885 A CN201410123885 A CN 201410123885A CN 103902774 B CN103902774 B CN 103902774B
Authority
CN
China
Prior art keywords
wiring
particle
gauze
represent
area
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
Application number
CN201410123885.4A
Other languages
English (en)
Other versions
CN103902774A (zh
Inventor
陈国龙
郭文忠
刘耿耿
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.)
Fuzhou University
Original Assignee
Fuzhou University
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 Fuzhou University filed Critical Fuzhou University
Priority to CN201410123885.4A priority Critical patent/CN103902774B/zh
Publication of CN103902774A publication Critical patent/CN103902774A/zh
Application granted granted Critical
Publication of CN103902774B publication Critical patent/CN103902774B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明涉及一种X结构下超大规模集成电路总体布线方法,包括以下步骤:初始阶段,采用Steiner最小树方法将多端线网分解为多个两端线网,并对可连接的两端线网采用X结构边连接,即进行初始布线,得到近似的布线拥挤分布情况;主阶段,从所述近似的初始布线结果中选取最拥挤区域作为当前布线区域,为当前布线区域构建整数线性规划模型并求解;继而不断扩大布线区域并依次求解,直至布线区域扩张至整个芯片为止;后处理阶段,重新定义布线边代价,利用基于所述布线边代价的迷宫算法对尚未布通的两端线网进行布线,得到最终的总体布线结果。该方法有利于提高布线方案的质量,且易于实现,使用效果好。

Description

X结构下超大规模集成电路总体布线方法
技术领域
本发明属于集成电路计算机辅助设计技术领域,具体涉及一种超大规模集成电路布线设计领域中高质量的X结构总体布线方法。
背景技术
随着半导体和互连线的大小不断缩小,互连线严重影响越来越多关键的设计指标(比如线长、时延、功耗等)。而作为组织互连线的实际走线位置的布线阶段在现今超大规模集成电路物理设计变得尤为重要。复杂的布线过程是由总体布线和详细布线两阶段构成的。在总体布线中,每个线网的走线被分配到各个通道布线区域中,每个通道区域的布线问题得到明确定义。而详细布线则给出了每个线网在通道区域的具体位置。因此,总体布线器的质量严重影响了详细布线的成功率,进而对整个芯片的性能起到决定性的作用。
总体布线是超大规模集成电路物理设计中极为重要的一部分,因而学者们提出了很多有效的算法和总体布线技术,主要可分为串行算法和并行算法两种,特别是以串行算法为代表的总体布线方法能够处理大规模的问题。但串行算法对线网的布线顺序或是布线代价的定义具有严重的依赖性,这一潜在特性严重影响了总体布线器的质量。而以整数线性规划为代表的串行算法能够减少布线结果对线网顺序的依赖性,取得质量较好的总体布线方案。这些以整数线性规划为代表的方法求解整数线性规划模型是先将其线性松弛为线性规划模型以减少时间复杂度,再利用随机取整的方法将线性解转换为非线性解,这样导致随机取整的过程所取得的布线方案可能严重偏离真正的解方案。
大部分总体布线算法都是以曼哈顿结构为模型基础开展相关工作,但基于曼哈顿结构进行线长与时延的优化,由于其布线走向有限,不能够充分地利用布线区域,导致互连线资源的过分冗余。故基于曼哈顿结构的优化策略在进行互连线线长优化时,其优化能力受限。因此,有必要从根本入手,改变传统的曼哈顿结构,故研究人员开始尝试以非曼哈顿结构为基础模型进行布线,实现芯片整体性能的优化。学者提出了在X结构下的布线树和布线算法的一些挑战和机遇,同时给出该结构下良好的展望,对能带来可观的线长减少量等物理设计指标提高的非曼哈顿结构已展开研究,特别是出现专门的工业联盟推广X结构,为这样的研究提供实现和验证基础。但对于能带来线长、通孔、功耗等目标优化的非曼哈顿结构的总体布线工作研究较少。
发明内容
本发明的目的在于提供一种X结构下超大规模集成电路总体布线方法,该方法有利于提高布线方案的质量,且易于实现,使用效果好。
为实现上述目的,本发明的技术方案是:一种X结构下超大规模集成电路总体布线方法,包括以下步骤:
(1)初始阶段,采用Steiner最小树方法将多端线网分解为多个两端线网,并对可连接的两端线网采用X结构边连接,即进行初始布线,得到近似的布线拥挤分布情况;
(2)主阶段,从所述近似的初始布线结果中选取最拥挤区域作为当前布线区域,为当前布线区域构建整数线性规划模型并求解;继而不断扩大布线区域并依次求解,直至布线区域扩张至整个芯片为止;
(3)后处理阶段,重新定义布线边代价,利用基于所述布线边代价的迷宫算法对尚未布通的两端线网进行布线,得到最终的总体布线结果。
进一步的,在主阶段中,所述整数线性规划模型为:
M I N : β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
S . T . : Σ y j ∈ N k y j = 1 , k = 1 , 2 , ... , n
β = 1 , i f Σ j = 1 1 a i j y j ≤ C ( e i ) ∀ e i , i = 1 , 2 , ... , p 1.1 r , e l s e
yj∈{0,1},j=1,2,···,t
其中Wlj表示候选解yj的线长;std()表示所有边拥挤度的标准差,即表示拥挤度分布的均匀情况;cong()表示e1到ep的拥挤度集合,α1和α2分别表示两个优化目标的权重大小;β表示惩罚项,用以对违反布线边容量约束的方案进行一定程度的惩罚;yj表示候选解被选择与否,其取值为0或1,而表示对于同一线网Nk的候选解的取值之和为1,确保只有一个候选解被选取;n表示线网总数,ei表示总体布线网格边,aij表示候选解j是否通过边ei,C(ei)表示边ei的最大允许走线数,p表示总体布线网格边数,r表示违反约束的边数,t表示候选解的总数。
进一步的,在主阶段中,采用改进的粒子群优化方法求解所述整数线性规划模型,包括以下步骤:
1)编码粒子,每个粒子代表一个解;
2)对每个粒子,采用变异算子进行变异操作,采用交叉算子与历史最优粒子进行交叉操作,采用交叉算子与全局最优粒子进行交叉操作,并分别对变异、交叉后的粒子编码进行检查操作;
3)采用如下的适应度函数fitness计算更新后每个粒子的适应度值:
f i t n e s s = β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
4)如果粒子的适应度值大于粒子历史最优值,更新该粒子为历史最优粒子,如果粒子的适应度值大于种群全局最优值,更新该粒子为种群全局最优粒子。
进一步的,在后处理阶段中,所述布线边代价按如下方法重新定义:如果边e是待布线网i所隶属的多端线网中已走线的边,则布线边代价为0,否则布线边代价为以下两项之和:边e的线长、边e的已走线数与边e的布线容量之商。
本发明的有益效果是提高了一种在超大规模集成电路中高质量的X结构总体布线方法,该方法以优化溢出数、布线线长及拥挤的均匀性为目标,基于分治策略、整数线性规划模型以及粒子群优化算法,得到高质量的X结构总体布线方案,克服了布线结果对线网顺序的依赖性,并消除了以随机取整方案对布线结果带来的偏差。
附图说明
图1是本发明实施例的布线流程图。
图2是本发明实施例中两引脚线网中两端点所构成直线的斜率情况示意图。
图3是本发明实施例中违反布线边容量约束的示意图。
图4是本发明实施例中总体布线问题的示意图。
图5是图4所示总体布线实例的编码情况示意图。
图6是本发明实施例中带检查操作的变异操作示意图。
图7是本发明实施例中带检查操作的交叉操作示意图。
具体实施方式
本发明X结构下超大规模集成电路总体布线方法,如图1所示,包括以下步骤:
(1)初始阶段,采用Steiner最小树方法将多端线网分解为多个两端线网,并对可连接的两端线网采用X结构边连接,即进行初始布线,得到近似的布线拥挤分布情况。
(2)主阶段,从所述近似的初始布线结果中选取最拥挤区域作为当前布线区域,为当前布线区域构建整数线性规划模型并采用改进的粒子群优化方法求解;继而不断扩大布线区域并依次求解,直至布线区域扩张至整个芯片为止。
改进的粒子群优化方法采用0-1序列进行编码,并对违反容量约束的方案,施加一定的惩罚力度,以较好地评价方案的优劣。同时计算所有网格边的拥挤度的方差以表示拥挤均匀程度,并融入适应度函数的设计中。最后,引入遗传算法的交叉操作和变异操作以得到适合求解整数线性规划模型这一离散问题的操作算子。
在主阶段中,所述整数线性规划模型为:
M I N : β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
S . T . : Σ y j ∈ N k y j = 1 , k = 1 , 2 , ... , n
β = 1 , i f Σ j = 1 1 a i j y j ≤ C ( e i ) ∀ e i , i = 1 , 2 , ... , p 1.1 r , e l s e
yj∈{0,1},j=1,2,···,t
其中Wlj表示候选解yj的线长;std()表示所有边拥挤度的标准差,即表示拥挤度分布的均匀情况;cong()表示e1到ep的拥挤度集合,α1和α2分别表示两个优化目标的权重大小;β表示惩罚项,用以对违反布线边容量约束的方案进行一定程度的惩罚;yj表示候选解被选择与否,其取值为0或1,而表示对于同一线网Nk的候选解的取值之和为1,确保只有一个候选解被选取;n表示线网总数,ei表示总体布线网格边,aij表示候选解j是否通过边ei,C(ei)表示边ei的最大允许走线数,p表示总体布线网格边数,r表示违反约束的边数,t表示候选解的总数。
采用所述改进的粒子群优化方法求解整数线性规划模型,包括以下步骤:
1)编码粒子,每个粒子代表一个解;
2)对每个粒子,采用变异算子进行变异操作,采用交叉算子与历史最优粒子进行交叉操作,采用交叉算子与全局最优粒子进行交叉操作,并分别对变异、交叉后的粒子编码进行检查操作;
3)采用如下的适应度函数fitness计算更新后每个粒子的适应度值:
f i t n e s s = β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
4)如果粒子的适应度值大于粒子历史最优值,更新该粒子为历史最优粒子,如果粒子的适应度值大于种群全局最优值,更新该粒子为种群全局最优粒子。
(3)后处理阶段,重新定义布线边代价,利用基于所述布线边代价的迷宫算法对尚未布通的两端线网进行布线,得到最终的总体布线结果。
在后处理阶段中,所述布线边代价按如下方法重新定义:如果边e是待布线网i所隶属的多端线网中已走线的边,则布线边代价为0,否则布线边代价为以下两项之和:边e的线长(在本发明中等于1)、边e的已走线数与边e的布线容量之商。
下面结合附图及具体实施例对本发明作进一步说明。
1.本发明方法的初始阶段
采用X结构Steiner最小树方法将网表中多端线网分解为多个两端线网。继而对所有斜率为0,-1,+1和无穷大的两端线网采用X结构边连接,即对属于图2中(a)(b)(c)(d)四种情况的线网直接连接,而对属于图2中(e)情况的两端线网不进行布线。对两端线网进行直接连接的前提是不违反布线边的容量约束。如图3所示的布线实例,假设每条边的最大布线容量为1,线网N1的两个端点的斜率值为0,符合可直接连接的斜率情况,但由于连接完该线网将导致在布线边G4G5的走线数为2,从而导致该边的容量超过其最大布线容量,违反布线边的容量约束,则对线网N1不予直接连接。初始布线完成后,得到近似的布线拥挤分布情况,这为后续的主阶段提供一定的指导意义。初始阶段算法具体如以下的算法1所示。
算法1初始阶段算法
输入:待布线线网集合N
1:for每个在线网集合N中的线网i
2:if线网i的端点数等于2
3:if线网两端点构成的直线斜率为0,-1,+1和无穷大and不违反布线边容量约束
4:直接连接线网i
5:else
6:加入线网i到未连接的线网集合中
7:else
8:调用X结构Steiner最小树方法分解多端线网为多个两端线网
9:for每个分解后的两端线网
10:if线网两端点构成的直线斜率为0,-1,+1和无穷大
11:if线网连接后不违反布线边容量约束
12:连接线网i
13:else
14:加入线网i到未连接的线网集合中
15:else
16:加入线网i到未连接的线网集合中
2.本发明方法的主阶段
利用分治的思想简化问题规模。从初始阶段得到的近似的布线拥挤分布情况,选取最拥挤区域(区域大小为总体布线图中2*2的网格区域)作为当前布线区域,即作为第一次布线的问题规模。为该区域的布线问题建立如下的整数线性规划模型,该整数线性规划模型的优化目标是最小化线长和均匀化布线的拥挤情况,并满足相应的约束。
M I N : β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
S . T . : Σ y j ∈ N k y j = 1 , k = 1 , 2 , ... , n
β = 1 , i f Σ j = 1 1 a i j y j ≤ C ( e i ) ∀ e i , i = 1 , 2 , ... , p 1.1 r , e l s e
yj∈{0,1},j=1,2,···,t
其中Wlj表示候选解yj的线长;std()表示所有边拥挤度的标准差,即表示拥挤度分布的均匀情况;cong()表示e1到ep的拥挤度集合,α1和α2分别表示两个优化目标的权重大小;β表示惩罚项,用以对违反布线边容量约束的方案进行一定程度的惩罚,以较合理地评价粒子的优劣性;yj表示该候选解被选择与否,其取值只能是0或1,而表示对于同一线网Nk的候选解的取值之和为1,确保只有一个候选解被选取;n表示线网总数,ei表示总体布线网格边,aij表示候选解j是否通过边ei,C(ei)表示边ei的最大允许走线数,p表示总体布线网格边数,r表示违反约束的边数,t表示候选解的总数。
为求解上述模型,设计了改进的粒子群优化方法。首先,编码采用0-1整数序列编码粒子,每个粒子代表布线问题的一个解。如图4所示的总体布线问题的实例,图4(a)所示为布线图中分布两个线网N1和N2,图4(b)所示为一个多端线网N2的分解和给出每个两端线网的候选解,而图4(c)和图4(d)所示为两个总体布线方案。图5给出了图4所示总体布线实例的粒子编码情况,包含6个两端线网,因此粒子的长度是6。
由于整数线性规划模型是离散优化问题,因此,引入了遗传算法中的交叉算子和变异算子,并增加检查操作以确保满足编码的健全性,即在交叉和变异操作中增加检查操作,对交叉和变异以后的粒子编码,检查其是否满足整数线性规划模型中的第一个约束条件。
如图6所示,给出了算法的变异操作过程,将产生一个随机的位置(mp1),将其位置的数值加1后模2,变异后的编码序列变为‘101111’。但该编码解码后其中一个线网的候选解y5和y6同时被选中,导致整数线性规划模型的第一个约束条件不满足。作为检验第一个约束条件是否满足的检查操作,发现这种情况后,将y6的值置为0以满足约束条件。
如图7所示,给出了算法的交叉操作过程,将随机产生两个位置(cp1和cp2),然后将该粒子这两个位置之间的序列跟历史最优粒子(种群全局最优粒子)的相应位置之间的序列执行交换操作。类似交叉操作,检查操作也被执行,并且得到最终满足约束的交叉方案‘100101’。
总体布线的性能指标包括溢出数、线长、拥挤度等,溢出数是严重影响芯片可布性的指标,也是总体布线首要优化目标,为此我们在适应度函数设计中加入惩罚项β,用以对产生溢出数的方案施以较大程度的惩罚。同时加入线长和拥挤度目标的优化,并对二者以一定的线性权重相加,具体设计的适应度函数值如下所示,可同时优化溢出数、线长和拥挤度。
f i t n e s s = β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
基于上述的操作,实现了求解整数线性规划模型的粒子群优化算法,粒子群优化算法具体如以下的算法2所示。
算法2求解ILP模型(整数线性规划模型)的粒子群优化算法
1:for 1到最大迭代次数
2:for每个粒子
3:执行带检查策略的变异算子
4:与历史最优粒子进行带检查策略的交叉算子
5:与全局最优粒子进行带检查策略的交叉算子
6:计算更新后每个粒子的适应度值
7:if适应度值>粒子历史最优值
8:更新该粒子为历史最优粒子
9:if适应度值>种群全局最优值
10:更新该粒子为种群的全局最优粒子
在完成当前区域的布线问题后,继而以阈值为1大小的网格(即向该布线区域的八个方向均增加一个网格大小)扩张至下一个布线区域,继而仍利用上述改进的粒子群优化算法实现新布线区域的布线。当布线区域扩张至覆盖整个芯片时,布线主阶段结束。主阶段算法具体如以下的算法3所示。
算法3总体布线主阶段算法
1:寻找最拥挤区域(2*2的网格大小)作为当前布线区
2:while true
3:for在线网集合N中的线网i
4:for线网i中未连接的两端线网j
5:if两端线网j在当前布线区
6:两端线网j加入待布线线网集合
7:if待布线线网集合不为空
8:为其建立整数线性规模模型,并调用算法2求解
9:if最优解不包含违反布线边容量约束的情况
10:连接待布线线网集合中所有线网,并标记已连接
11:else
12:先连接不会产生溢出的线网,对会造成溢出的线网标记为未连接
13:以阈值为一个网格大小扩大布线区域为下一代布线区
14:if当前布线区已包含整个电路芯片
15:break
3.本发明方法的后处理阶段
在主阶段结束后,仍然存在少数未连接的两端线网,因此需要后续步骤连接这些尚未连接的两端线网,以得到完整的总体布线结果。首先,根据当前的拥挤度情况和网格边长度,定义新的布线边代价,具体如以下的算法4所示。
算法4新布线边代价
1:if边e是待布线网i所隶属的多端线网中已走线的边
2:cost(i)=cost(i)
3:else
4:cost(i)=cost(i)+1
5:cost(i)=cost(i)+边e的已走线数/边e的布线容量
基于新的布线边代价,设计相应的迷宫算法以布通尚未连接的两端线网。在迷宫算法中,新的布线边代价考虑到线长和拥挤度均匀化两种条件,更适合总体布线器的优化目标,迷宫算法的具体执行步骤,如算法5所示。
算法5基于新布线边代价的迷宫算法
1:for每个在未连接线网集合的两端线网
2:初始化优先队列Q;
3:Q中加入两端线网中一个端点信息
4:while Q不为空
5:向8个方向扩张Q.top
6:if扩张后的点尚未在Q中
7:if该点可扩张
8:调用算法4的新布线边代价计算扩张的代价
9:将该点加入Q中
10:Q.pop
本发明方法采用C++编写,并在CPU为2.00GHz和RAM为2.00GB的Windows XP环境执行,以九个基准电路([ISPD 1998Global Routing Benchmark Suite.(1998)[Online].Available:http://cseweb.ucsd.edu/kastner/research/labyrinth/])作为测试实例用以验证所提算法的有效性。这里未采用ibm05基准电路作为测试实例,是因为ibm05被验证是一个平凡的测试实例。从表1可看到线网的个数是从11k到64k,单元的数目是从12k到66k。线网在经过总体布线算法的初始阶段后,线网的个数平均减少了72.98%,即布通了72.98%的线网,因此可较好地近似代表布线的拥挤度情况。
表1总体布线中基础测试电路的情况和初始布线结果
为了验证算法能够达到拥挤均衡化,将考虑拥挤度均衡化的算法(WS)和未考虑到拥挤度均衡化算法(WOS)进行对比,以标准差(STD)作为对比指标。因为一个样本的标准差能较好反应样本数据的波动情况,同样各条边拥挤度的标准差也能达到这种效果,所以可作为衡量拥挤均衡化的一个较好指标。具体实验结果如表2所示。
表2优化目标加入和未加入拥挤均匀化的标准差对比情况
为了验证算法的有效性,将本发明方法与五个总体布线算法在九个基础测试电路中进行对比,如表3和表4所示。考虑到总的布线线长(TWL)这一优化目标,本发明方法相对文献1[J.A.Roy and I.L.Markov,“High-performance routing at the nanometerscale,”IEEE Trans.Comput.-Aided Design Integr.Circuits Syst.,vol.27,no.6,pp.1066–1077,Jun.2008.],文献2[M.M.Ozdal and M.D.F.Wong,“Archer:A history-based global routing algorithm,”IEEE Trans.Comput-Aided DesignIntegr.Circuits Syst.,vol.28,no.4,pp.528–540,Apr.2009.],文献3[Y.Zhang,Y.Xu,and C.Chu,“Fastroute 3.0:A fast and high quality global router based onvirtual capacity,”in Proc.Int.Conf.Comput.-Aided Design,2008,pp.344–349.],文献4[M.D.Moffitt,“Maizerouter:Engineering an effective global router,”IEEETrans.Comput-Aided Design Integr.Circuits Syst.,vol.27,no.11,pp.2017–2026,Nov.2008.]以及文献5[Y.-J.Chang,Y.-T.Lee,J.-R.Gao,P.-C.Wu,and T.-C.Wang,“NTHU-route 2.0:A robust global router for modern designs,”IEEE Trans.Comput.-AidedDesign Integr.Circuits Syst.,vol.29,no.12,pp.1931–1944,Dec.2010]取得平均6.73%,7.54%,7.51%,7.03%以及6.69%的优化率。其中,优化效果最明显是在基准测试电路ibm01上与文献2算法进行对比,可达到10.07%的线长优化率。所有算法均没有产生溢出边,溢出数均为0,因此在表3中未列出溢出数这一优化指标。可见本发明方法在引入X结构和从更全局的并行角度考虑总体布线问题的求解,克服布线结果对线网顺序的依赖性,相对相关工作具有更强的总布线线长的优化能力。
表3本发明方法与其他五种算法在布线总线长的对比情况(1)
表4本发明方法与其他五种算法在布线总线长的对比情况(2)
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。

Claims (3)

1.一种X结构下超大规模集成电路总体布线方法,其特征在于,包括以下步骤:
(1)初始阶段,采用Steiner最小树方法将多端线网分解为多个两端线网,并对可连接的两端线网采用X结构边连接,即进行初始布线,得到近似的布线拥挤分布情况;
(2)主阶段,从所述近似的布线拥挤分布情况中选取最拥挤区域作为当前布线区域,为当前布线区域构建整数线性规划模型并求解;继而不断扩大布线区域并依次求解,直至布线区域扩张至整个芯片为止;
(3)后处理阶段,重新定义布线边代价,利用基于所述布线边代价的迷宫算法对尚未布通的两端线网进行布线,得到最终的总体布线结果;
在主阶段中,所述整数线性规划模型为:
M I N : β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
S . T . : Σ y j ∈ N k y j = 1 , k = 1 , 2 , ... , n
β = 1 , i f Σ j = 1 1 a i j y j ≤ C ( e i ) ∀ e i , i = 1 , 2 , ... , p 1 , 1 r , e l s e
yj∈{0,1},j=1,2,···,t
其中Wlj表示候选解yj的线长;std()表示所有边拥挤度的标准差;cong()表示e1到ep的拥挤度集合,α1和α2分别表示两个优化目标的权重大小;β表示惩罚项,用以对违反布线边容量约束的方案进行一定程度的惩罚;yj表示候选解被选择与否,其取值为0或1,而表示对于同一线网Nk的候选解的取值之和为1,确保只有一个候选解被选取;n表示线网总数,ei表示总体布线网格边,aij表示候选解j是否通过边ei,C(ei)表示边ei的最大允许走线数,p表示总体布线网格边数,r表示违反约束的边数,t表示候选解的总数。
2.根据权利要求1所述的X结构下超大规模集成电路总体布线方法,其特征在于,在主阶段中,采用改进的粒子群优化方法求解所述整数线性规划模型,包括以下步骤:
1)编码粒子,每个粒子代表一个解;
2)对每个粒子,采用变异算子进行变异操作,采用交叉算子与历史最优粒子进行交叉操作,采用交叉算子与全局最优粒子进行交叉操作,并分别对变异、交叉后的粒子编码进行检查操作;
3)采用如下的适应度函数fitness计算更新后每个粒子的适应度值:
f i t n e s s = β * ( α 1 * Σ j = 1 t y j * Wl j + α 2 * s t d ( c o n g ( e 1 , ... , e p ) ) )
4)如果粒子的适应度值大于粒子历史最优值,更新该粒子为历史最优粒子,如果粒子的适应度值大于种群全局最优值,更新该粒子为种群全局最优粒子。
3.根据权利要求1所述的X结构下超大规模集成电路总体布线方法,其特征在于,在后处理阶段中,所述布线边代价按如下方法重新定义:如果边e是待布线网i所隶属的多端线网中已走线的边,则布线边代价为0,否则布线边代价为以下两项之和:边e的线长、边e的已走线数与边e的布线容量之商。
CN201410123885.4A 2014-03-31 2014-03-31 X结构下超大规模集成电路总体布线方法 Active CN103902774B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410123885.4A CN103902774B (zh) 2014-03-31 2014-03-31 X结构下超大规模集成电路总体布线方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410123885.4A CN103902774B (zh) 2014-03-31 2014-03-31 X结构下超大规模集成电路总体布线方法

Publications (2)

Publication Number Publication Date
CN103902774A CN103902774A (zh) 2014-07-02
CN103902774B true CN103902774B (zh) 2017-01-25

Family

ID=50994095

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410123885.4A Active CN103902774B (zh) 2014-03-31 2014-03-31 X结构下超大规模集成电路总体布线方法

Country Status (1)

Country Link
CN (1) CN103902774B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104063558A (zh) * 2014-07-08 2014-09-24 领佰思自动化科技(上海)有限公司 基于线性规划的大规模集成电路通道布线方法
CN106681135B (zh) * 2017-01-17 2020-05-05 桂林电子科技大学 一种基于混合水滴算法的线缆布线路径搜索方法
CN107491598B (zh) * 2017-07-28 2020-02-11 清华大学 大规模微流控生物芯片快速布线方法及设备
CN107832519B (zh) * 2017-11-02 2021-01-29 福州大学 超大规模集成电路中高性能x结构多层总体布线方法
CN108920755B (zh) * 2018-05-25 2022-10-14 南京邮电大学 基于奖赏机制的布线方法
CN109684731B (zh) * 2018-12-25 2022-06-14 福州大学 一种高效的详细布线驱动轨道分配方法
CN110096823B (zh) * 2019-05-08 2022-10-04 深圳职业技术学院 基于二进制编码的数字集成电路布线方法及终端设备
CN110795907B (zh) * 2019-09-30 2021-05-18 福州大学 一种考虑布线资源松弛的X结构Steiner最小树构造方法
CN110795908B (zh) * 2019-10-30 2022-12-13 福州大学 偏差驱动的总线感知总体布线方法
CN111310409B (zh) * 2020-02-28 2022-04-08 福州大学 一种优化时分复用技术的多阶段fpga布线方法
CN111539181B (zh) * 2020-04-28 2022-05-13 福州大学 基于离散差分进化的多策略优化x结构最小树构建方法
CN112861466B (zh) * 2021-02-04 2022-08-23 深圳华大九天科技有限公司 一种布线轨道分配方法、电子设备及计算机可读存储介质
CN112883682B (zh) * 2021-03-15 2022-04-29 北京华大九天科技股份有限公司 集成电路的总体布线方法及设备和存储介质
CN113312875B (zh) * 2021-06-15 2022-06-14 福州大学 基于择优机制的时延优化层分配方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0932874B1 (en) * 1996-10-15 2003-05-28 Motorola, Inc. A method and apparatus for routing of nets in an electronic device
CN1588381A (zh) * 2004-07-06 2005-03-02 清华大学 超大规模集成电路避障碍的直角Steiner树方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0932874B1 (en) * 1996-10-15 2003-05-28 Motorola, Inc. A method and apparatus for routing of nets in an electronic device
CN1588381A (zh) * 2004-07-06 2005-03-02 清华大学 超大规模集成电路避障碍的直角Steiner树方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种新的与线网顺序无关的随机优化总体布线算法;鲍海云 等;《计算机学报》;20010630;第24卷(第6期);正文第2-4节 *
带有引线端预处理的区域布线算法;杨柳 等;《计算机辅助设计与图形学学报》;20060131;第18卷(第1期);第69-74页 *

Also Published As

Publication number Publication date
CN103902774A (zh) 2014-07-02

Similar Documents

Publication Publication Date Title
CN103902774B (zh) X结构下超大规模集成电路总体布线方法
Mirhoseini et al. Chip placement with deep reinforcement learning
Mora-Melia et al. Design of water distribution networks using a pseudo-genetic algorithm and sensitivity of genetic operators
CN1881224A (zh) 估计电路时钟树的抖动并合成抖动意识和偏差意识时钟树
CN105187051A (zh) 一种基于NSGA-II用于不完全确定Reed-Muller电路功耗与面积优化方法
Fan et al. Optimizing quantum circuit placement via machine learning
CN106326987A (zh) 多目标优化方法和装置
Liu et al. TILA-S: Timing-driven incremental layer assignment avoiding slew violations
CN114997088A (zh) 一种布线和tdm比率快速优化方法
Romanov et al. Simulation and synthesis of networks-on-chip by using NoCSimp HDL library
Johns et al. Knowledge-based multi-objective genetic algorithms for the design of water distribution networks
Yu et al. TILA: Timing-driven incremental layer assignment
CN104778088A (zh) 一种基于减少进程间通信开销的并行i/o优化方法与系统
US20230385501A1 (en) Dvd simulation using microcircuits
CN110032815B (zh) 基于文化基因的八角形斯坦纳树构建方法
Pilát et al. Hypervolume-based local search in multi-objective evolutionary optimization
Posthoff et al. The Solution of Discrete Constraint Problems Using Boolean Models-The Use of Ternary Vectors for Parallel SAT-Solving
CN116094941A (zh) 基于共识合作超网络模型的共识方法、系统、介质、电子设备
Sangwan et al. An efficient approach to VLSI circuit partitioning using evolutionary algorithms
Anjomshoa et al. A new automated design and optimization method of CMOS logic circuits based on Modified Imperialistic Competitive Algorithm
Zhao et al. A mixed-height standard cell placement flow for digital circuit block
Lee et al. Hierarchical power network synthesis for multiple power domain designs
Liu et al. Performance-driven X-architecture routing algorithm for artificial intelligence chip design in smart manufacturing
CN107301040B (zh) 一种基于子树分解的软件产品线产品派生方法
WO2020256808A1 (en) Systems for emulating a quantum computer and methods for use therewith

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