当前位置: 首页 > 专利查询>福州大学专利>正文

一种VLSI多端点线网绕障碍的布线方法技术

技术编号:19822787 阅读:18 留言:0更新日期:2018-12-19 15:03
本发明专利技术涉及一种VLSI多端点线网绕障碍的布线方法,其特征在于:包括以下步骤:步骤S1:读取障碍信息;步骤S2:根据障碍信息,利用matlab绘制障碍框;步骤S3:采用改进粒子群算法构建斯坦纳树,并得到最优解;步骤S4:根据最优解对该解表示的斯坦纳树树进行布线,并记录布线过程;步骤S5:根据布线过程记录,对在布线过程中重复布线部分进行修正,去除生成树中重复了两次到三次的布线长度,并计算通孔数,得到最优布线。本发明专利技术实现高效精准并且绕障碍的全局布线,适用于超大规模集成电路多端点线网绕障碍布线。

【技术实现步骤摘要】
一种VLSI多端点线网绕障碍的布线方法
本专利技术涉及一种VLSI多端点线网绕障碍的布线方法。
技术介绍
随着集成电路规模不断增加,集成度不断提高,芯片特征尺寸不断减小,势不可挡的集成电路发展趋势,导致片上互连线长度越来越长,分布越来越密集,占用面积越来越大,布线工作越来越复杂。以上诸多因素似的互连线带来的时延占整个芯片时延的60%以上,对芯片性能产生严重影响。互连线效应成为集成电路性能的瓶颈,高效精准的布线是提高电路性能的关键。而在实际布线过程中,由于宏模块、知识产权(IP)模块以及预布线等都将成为障碍,然而到目前为止,人们的研究多集中于无障碍的情况,相比之下,对于带障碍的最小矩形斯坦纳树(MinimumRectangularSteinerTree,MRST)方法的研究还相对较少,有必要进入深入的研究。针对布线的实际应用,考虑障碍情况进行斯坦纳树构造方法的研究是布线中的关键问题之一,具有很大的实际意义。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种VLSI多端点线网绕障碍的布线方法,用以解决原始粒子群算法容易陷入局部最优,并且在中后期容易陷入停滞不更新的缺陷。为实现上述目的,本专利技术采用如下技术方案:一种VLSI多端点线网绕障碍的布线方法,其特征在于:包括以下步骤:步骤S1:读取障碍信息;步骤S2:根据障碍信息,利用matlab绘制障碍框;步骤S3:采用改进粒子群算法构建斯坦纳树,并得到最优解;步骤S4:根据最优解对该解表示的斯坦纳树树进行布线,并记录布线过程;步骤S5:根据布线过程记录,对在布线过程中重复布线部分进行修正,去除生成树中重复了两次到三次的布线长度,并计算通孔数,得到最优布线。进一步的,所述障碍信息包括初始坐标点和初始障碍点进一步的,所述步骤S3具体为:步骤S31:根据初始坐标点数和初始障碍点数计算最大的迭代次数和待生成的种群粒子数;步骤S32:混沌生成初始粒子群,其中一半数量的粒子采用randint函数随机生成,另外一半数量的粒子通过将解空间划分生成,共产生par_num个粒子,其中i个粒子对应的位置Xi和速度Vi;步骤S33:采用迭代算法计算最优解。进一步的,所述步骤S33具体为:步骤1:开始迭代算法,从第一代到第max_iter代,当前代为第iter代;步骤2:计算惯性权值;根据粒子k的适应度fitnessi在种群中的排序randk_ix(k)和当前迭代次数iter,采用的是线性递增策略与对粒子进行针对优化的策略结合计算粒子的惯性权值;线性递增策略(0.2+0.5*(iter/max_iter))有助于保证粒子群的整体收敛;对粒子进行针对优化(0.6*rank_ix(k)/par_num)有助于帮助每个粒子找到适合自己的惯性权值,使得较优粒子在附近寻找,较劣粒子在更大范围搜索;根据公式(1)计算这次迭代每个粒子的惯性权值Wi:W(rank_ix(k))=0.2+0.5*(iter/max_iter)+0.6*rank_ix(k)/par_num(1)步骤3:计算加速系数,对c1采用的是线性权值递减策略进行更新,即公式(2),根据c1与c2之和在4以内有利于收敛,将c2用公式(3)更新;c1=2.5-0.8*iter/max_iter(2)c2=4-c1(3)步骤4:采用重组遗传算法,判断种群全局最优值是否15代未发生变化来决定是否对粒子群进行随机重组过程;步骤5:对粒子群进行这次迭代,其中粒子数为par_num个,当前粒子为第i个;步骤6:根据公式(4)更新粒子的速度Vi,根据公式(5)更新粒子的位置Xi;Vi+1=Wi·Vi+c1·rand()·(pi-Xi)+c2·rand()·(pg-Xi)(4)Xi+1=Xi&Vi+1(5)其中,pi是第i个粒子迄今为止搜索到的最优位置称为个体极值;pg是整个种群迄今为止搜索到的最优位置为全局极值;W是惯性权值,c1,,c2是加速因子,rand()是(0,1)之间的随机数;步骤S336:采用变异遗传算法,迭代次数iter达到总迭代次数max_iter的30%后,如果满足一个随机概率,则随机产生行号和序列号k,令粒子Xi中xjk=1;步骤7:填充初始点,选中要连接的目标点,将粒子在矩阵中对应的位置令为1;步骤8:去除无意义点,除去由初始点构成的多边形外围的点和在障碍中生成的点;步骤9:计算点与点的距离;在计算距离时,如果端点间没有障碍,则将以两点为矩形的对角点,距离为该矩形周长的一半;如果端点间连线一定有经过障碍物,判断怎么绕障碍使得距离最短。步骤10:利用贪心策略的prime算法,构造最小生成树;步骤11:根据适应度函数式计算粒子的适应度值fitness;fitnessi表示第i个粒子的适应度,该适应度表示由p条变构成的斯坦纳树所有边的长度总和,lk代表第k条边的长度;步骤12:对每个粒子Xi,比较它目前位置和它经历过的最好位置pi,若目前位置更好,则更新pi;比较它目前位置和种群中的最好位置pg,若目前位置更好,则更新pg;步骤13:判断当前代是否结束,如没有,返回步骤5进行下一个粒子的更新操作;若结束,记录当前代得到的最优解,判断是否到达最后一次迭代,即itermax_iter,若是,进行输出最优解;否则,转入步骤2进行下一轮迭代。本专利技术与现有技术相比具有以下有益效果:1.本专利技术提出了一种具有均匀收敛,防止早熟、快速寻优的改进PSO算法,适用于超大规模集成电路多端点线网绕障碍布线的方法;2.本专利技术创造增加绕障碍布线方法,在实际应用中,具有更好的可行性、合理性和优良性。3.本专利技术在原始粒子群上引入惯性权值,该惯性权值既考虑了种群总体迭代过程的特点,又考虑到了种群中每个粒子的特点,惯性权值的改进思想对收敛速度及寻优能力有很大的改进,并具有极强的跳出局部极值能力。4.本专利技术在综合粒子群算法在后期的停滞更新特点与遗传算法的可塑造性,结合了遗传算法的两种策略进行迭代,这种改进思路极大的提高了算法的后期寻优能力。5.本专利技术提出的结合遗传算法的粒子群优化算法,该算法对目前电路中绝大部分线网都能精准快速的找到最优解,而对于电路中小部分端点极多的线网,也能在一定时限内找到十分接近最优解的近似最优布线解。附图说明图1是本专利技术方法流程图;图2是本专利技术一实施例中初始点坐标文档图;图3是本专利技术一实施例中障碍点坐标文档图;图4是本专利技术一实施例中绘制初始点和障碍框图;图5是本专利技术一实施例中重复布线策略的适用情形图;图6是本专利技术一实施例中采用策略的布线方案图;图7是本专利技术一实施例中不采用策略的布线方案图;图8是本专利技术一实施例中减少拐点策略的适用情形图;图9是本专利技术一实施例中采用策略的布线方案图;图10是本专利技术一实施例中不采用策略的布线方案图;图11是本专利技术一实施例中全局布线实验效果图。具体实施方式下面结合附图及实施例对本专利技术做进一步说明。请参照图1,本专利技术提供一种VLSI多端点线网绕障碍的布线方法,其特征在于:包括以下步骤:步骤S1:读取障碍信息;共point_num个初始坐标点,和共block_num个初始障碍点;步骤S2:根据障碍信息,利用matlab绘制障碍框;步骤S3:采用改进粒子群算法构建斯坦纳树,并得到最优解;步骤S4:根据最优解对该解表本文档来自技高网...

【技术保护点】
1.一种VLSI多端点线网绕障碍的布线方法,其特征在于:包括以下步骤:步骤S1:读取障碍信息;步骤S2:根据障碍信息,利用matlab绘制障碍框;步骤S3:采用改进粒子群算法构建斯坦纳树,并得到最优解;步骤S4:根据最优解对该解表示的斯坦纳树树进行布线,并记录布线过程;步骤S5:根据布线过程记录,对在布线过程中重复布线部分进行修正,去除生成树中重复了两次到三次的布线长度,并计算通孔数,得到最优布线。

【技术特征摘要】
1.一种VLSI多端点线网绕障碍的布线方法,其特征在于:包括以下步骤:步骤S1:读取障碍信息;步骤S2:根据障碍信息,利用matlab绘制障碍框;步骤S3:采用改进粒子群算法构建斯坦纳树,并得到最优解;步骤S4:根据最优解对该解表示的斯坦纳树树进行布线,并记录布线过程;步骤S5:根据布线过程记录,对在布线过程中重复布线部分进行修正,去除生成树中重复了两次到三次的布线长度,并计算通孔数,得到最优布线。2.根据权利要求1所述的一种VLSI多端点线网绕障碍的布线方法,其特征在于:所述障碍信息包括初始坐标点数和初始障碍点。3.根据权利要求2所述的一种VLSI多端点线网绕障碍的布线方法,其特征在于:所述步骤S3具体为:步骤S31:根据初始坐标点和初始障碍点数计算最大的迭代次数和待生成的种群粒子数;步骤S32:混沌生成初始粒子群,其中一半数量的粒子采用randint函数随机生成,另外一半数量的粒子通过将解空间划分生成,共产生par_num个粒子,其中i个粒子对应的位置Xi和速度Vi;步骤S33:采用迭代算法计算最优解。4.根据权利要求3所述的一种VLSI多端点线网绕障碍的布线方法,其特征在于:所述步骤S33具体为:步骤1:开始迭代算法,从第一代到第max_iter代,当前代为第iter代;步骤2:计算惯性权值;根据粒子k的适应度fitnessi在种群中的排序randk_ix(k)和当前迭代次数iter,采用的是线性递增策略与对粒子进行针对优化的策略结合计算粒子的惯性权值;线性递增策略(0.2+0.5*(iter/max_iter))有助于保证粒子群的整体收敛;对粒子进行针对优化(0.6*rank_ix(k)/par_num)有助于帮助每个粒子找到适合自己的惯性权值,使得较优粒子在附近寻找,较劣粒子在更大范围搜索;根据公式(1)计算这次迭代每个粒子的惯性权值Wi:W(rank_ix(k))=0.2+0.5*(iter/max_iter)+0.6*rank_ix(k)/par_num(1)步骤3:计算加...

【专利技术属性】
技术研发人员:董晨熊子奇黄辉昌林诗洁郭文忠陈景辉张凡贺国荣叶尹
申请(专利权)人:福州大学
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1