System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及集成电路布线,尤其涉及一种基于hanan网格的模拟ic全局布线方法。
技术介绍
1、布线是一项复杂且耗时的任务,是ic(integrated circuit,集成电路)设计的重要任务。全局布线的网络在具有容量限制的粗粒度网格图上连接,并为详细布线提供解决方案。现有的全局布线器通常使用hanan网格(哈南网格)的中心点作为节点进行寻路,由于hanan网格为非均匀网格,水平和垂直方向的空间资源不同,无法准确预估拥塞情况。粗粒度网格可以使多个线网的路径在同一个节点上,除容量控制问题外还存在特殊的交叉问题。此外,拓扑对于布通率影响很大,好的拓扑能够使布线算法更快更好的完成布线,但如何选择一个更优的拓扑是尚待解决的问题。
技术实现思路
1、为了解决现有技术的缺陷,本专利技术的目的在于提供一种基于hanan网格的模拟ic全局布线方法,在以hanan网格为基础建立的graph图上寻路,解决拥塞交叉问题以及对线网拓扑进行优化,提高模拟ic全局布线最终方案的布通率。
2、为了实现上述目的,本专利技术提供的基于hanan网格的模拟ic全局布线方法,包括:
3、步骤1)根据版图模块的顶点坐标建立hanan网格,将hanan网格的网格边、模块边和端口视为graph图的顶点并建立连接关系,生成graph图;
4、步骤2)根据网表顺序生成初始拓扑,使用a*算法在graph图上寻找路径并完成线网连接;
5、步骤3)若经过多轮拆线重布后,初始拓扑的布通
6、进一地,所述步骤1),进一步包括:
7、获取版图中所有模块的顶点坐标,分别向x方向和y方向作延长线,延长线遇到其它模块停止延长,形成hanan网格;
8、同一网格内部的四条边两两建立连接,相邻网格的重叠边建立连接,模块边与其相邻网格的重叠边建立连接,端口与模块边建立连接;
9、各个连接以其两端中心点的欧式距离作为权重,生成带有权重的无向graph图。
10、进一步地,对hanan网格的网格边根据其长度赋予容量属性,表示最大可容纳的路径数量。
11、进一步地,所述步骤2),进一步包括:根据网表信息按顺序生成初始拓扑,多端线网顺序分解为二端线网后,使用a*算法依次在graph图上布线;
12、在布线过程中,以网格边的容量与走线在该网格边的所有线网所需容量的关系判断拥塞情况,并利用拆线重布技术经过多轮迭代消除拥塞和交叉的区域。
13、进一步地,所述步骤3),当初始拓扑的布通率始终无法提高,使用拓扑优化模型更换拓扑进行布线,包括:随机生成一个新的拓扑,提取新拓扑的特征,使用拓扑优化模型对新拓扑进行布通率预测,预测值更高的拓扑将进行布线,更低则再次随机生成新拓扑。
14、进一步地,所述使用拓扑优化模型预测拓扑的布通率的步骤,进一步包括:
15、通过提取每个多端线网拓扑的飞线长、最近端口连接是否存在、最长端口连接是否存在、面积最大的模块连接次数、面积最小的模块连接次数、端口所在模块位置,作为一个拓扑的特征,进行量化得到各个特征值;
16、将一个版图所有拓扑的特征值与该拓扑最终布通率进行对应,在得到大量对应关系后,通过训练线性回归模型,得到每个特征值的权重;
17、根据所述权重,在得到一个新拓扑后,通过计算新拓扑的特征值,分别乘以对应权重即可得到预测的新拓扑的布通率。
18、进一步地,寻路过程加入拥塞代价,所述拥塞代价的计算方式为:graph图的顶点的容量值减去顶点上已存在的线所需容量,若剩余容量大于0,则拥塞代价为0,否则用剩余容量除以当前线网所需容量,得到拥塞代价值。
19、进一步地,寻路过程加入交叉代价,解决会产生交叉的情况,包括:默认网格内部水平线和垂直线不能共存;在一个网格内一条路径不能连续走两步;通过计算进入graph图的同一顶点后又在某一顶点分离的两条线网的相遇与分离的方向差来判断是否存在交叉;在确定graph图的顶点上存在交叉后,将交叉线网的数量作为graph图的顶点的交叉代价。
20、更进一步地,寻路过程加入历史代价,采用拆线重布技术,每轮依次拆除每个线网重新布线,对于上一轮有拥塞和交叉的graph图的顶点设置历史代价,以在下一轮布线时避开该顶点。
21、为实现上述目的,本专利技术还提供一种电子设备,包括存储器、处理器,以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器,用于执行所述存储器所存放的计算机程序,以实现如上所述的基于hanan网格的模拟ic全局布线方法。
22、为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如上所述的基于hanan网格的模拟ic全局布线方法。
23、本专利技术提供的基于hanan网格的模拟ic全局布线方法,与现有技术相比具有如下有益效果:
24、建立基于hanan网格边的graph图,减少了搜索的路径节点;利用a*算法在graph图上寻路,通过解决特殊的拥塞和交叉问题,提高布通率;采用拓扑优化模型,解决了由于拓扑本身不良导致布通率无法提升的问题。
25、本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。
本文档来自技高网...【技术保护点】
1.一种基于Hanan网格的模拟IC全局布线方法,其特征在于,包括:
2.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,所述步骤1),进一步包括:
3.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,对Hanan网格的网格边根据其长度赋予容量属性,表示最大可容纳的路径数量。
4.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,所述步骤2),进一步包括:根据网表信息按顺序生成初始拓扑,多端线网顺序分解为二端线网后,使用A*算法依次在Graph图上布线;
5.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,所述步骤3),当初始拓扑的布通率始终无法提高,使用拓扑优化模型更换拓扑进行布线,包括:随机生成一个新的拓扑,提取新拓扑的特征,使用拓扑优化模型对新拓扑进行布通率预测,预测值更高的拓扑将进行布线,更低则再次随机生成新拓扑。
6.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,所述使用拓扑优化模型
7.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,寻路过程加入拥塞代价,所述拥塞代价的计算方式为:Graph图的顶点的容量值减去顶点上已存在的线所需容量,若剩余容量大于0,则拥塞代价为0,否则用剩余容量除以当前线网所需容量,得到拥塞代价值。
8.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,寻路过程加入交叉代价,解决会产生交叉的情况,包括:默认网格内部水平线和垂直线不能共存;在一个网格内一条路径不能连续走两步;通过计算进入Graph图的同一顶点后又在某一顶点分离的两条线网的相遇与分离的方向差来判断是否存在交叉;在确定Graph图的顶点上存在交叉后,将交叉线网的数量作为Graph图的顶点的交叉代价。
9.根据权利要求1所述的基于Hanan网格的模拟IC全局布线方法,其特征在于,寻路过程加入历史代价,采用拆线重布技术,每轮依次拆除每个线网重新布线,对于上一轮有拥塞和交叉的Graph图的顶点设置历史代价,以在下一轮布线时避开该顶点。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现权利要求1-9任一项所述的基于Hanan网格的模拟IC全局布线方法。
...【技术特征摘要】
1.一种基于hanan网格的模拟ic全局布线方法,其特征在于,包括:
2.根据权利要求1所述的基于hanan网格的模拟ic全局布线方法,其特征在于,所述步骤1),进一步包括:
3.根据权利要求1所述的基于hanan网格的模拟ic全局布线方法,其特征在于,对hanan网格的网格边根据其长度赋予容量属性,表示最大可容纳的路径数量。
4.根据权利要求1所述的基于hanan网格的模拟ic全局布线方法,其特征在于,所述步骤2),进一步包括:根据网表信息按顺序生成初始拓扑,多端线网顺序分解为二端线网后,使用a*算法依次在graph图上布线;
5.根据权利要求1所述的基于hanan网格的模拟ic全局布线方法,其特征在于,所述步骤3),当初始拓扑的布通率始终无法提高,使用拓扑优化模型更换拓扑进行布线,包括:随机生成一个新的拓扑,提取新拓扑的特征,使用拓扑优化模型对新拓扑进行布通率预测,预测值更高的拓扑将进行布线,更低则再次随机生成新拓扑。
6.根据权利要求1所述的基于hanan网格的模拟ic全局布线方法,其特征在于,所述使用拓扑优化模型预测拓扑的布通率的步骤,进一步包括:
7.根据权利要求1所述的基于han...
【专利技术属性】
技术研发人员:王睿,高蕾,张亚东,张吉昕,徐宁,李飞,李起宏,朱能勇,
申请(专利权)人:成都华大九天科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。