[发明专利]一种基于迭代禁忌搜索算法的电路示意图布局布线方法在审
| 申请号: | 202210181588.X | 申请日: | 2022-02-25 |
| 公开(公告)号: | CN114564905A | 公开(公告)日: | 2022-05-31 |
| 发明(设计)人: | 孙雯;陈超凡;王铸清;罗琪;吴自豪;李文龙;南燕 | 申请(专利权)人: | 东南大学 |
| 主分类号: | G06F30/347 | 分类号: | G06F30/347;G06F30/392;G06F30/3953;G06F30/398 |
| 代理公司: | 南京众联专利代理有限公司 32206 | 代理人: | 叶涓涓 |
| 地址: | 211189 *** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 禁忌 搜索 算法 电路 示意图 布局 布线 方法 | ||
1.一种基于迭代禁忌搜索算法的电路示意图布局布线方法,其特征在于,包括如下步骤:
步骤一,初始化每个instance的行和列的布局
初始化每个可编程逻辑元件模型instance的行序和列序,根据instance间的连接关系以及instance标号,生成每个instance行和列的初始的排序;
步骤二,采用禁忌搜索算法优化每个instance的行序
仅在相邻的两列中调整instance的行序,依次向后迭代直至所有的instance都具有一个较优的行序;包括如下具体步骤:
(1)初始化重要参数;当源端所在列i和漏端所在列j相差超过1列时,建立虚拟instance并将其分配到源端所在的列之后的一列,然后判断新建立的虚拟instance和漏端所在列是否相邻,若相邻则停止建立虚拟instance,否则重复建立虚拟instance的步骤,且建立的虚拟instance的列号依次增大;当源端所在列i大于等于漏端所在列j时,建立虚拟instance并将其分配到漏端所在的列,然后判断虚拟instance和源端所在列是否相同,若相同则停止建立虚拟instance,否则重复建立虚拟instance的步骤;
(2)采用禁忌搜索优化instance的行序,依次对第i+1列的instance优化行序,直至遍历所有的列为止;
步骤三,确定instance的位置坐标及其端口坐标
对instance位置坐标进行计算;计算相邻列的间距以及上下相邻instance的间距,相邻列之间instance的距离为i列输出线的个数和i+1列有反向线的个数之和,上下相邻instance的间距为两者之间虚拟instance的个数和最小限制距离e中的最大值;第1列的横坐标为设定的固定值,后续每一列都跟据相邻前一列的横坐标、instance的物理宽度w、相邻列间间距和引脚长度p进行累加;同一列的instance的横坐标和物理宽度相同;第1行的纵坐标为设定的固定值,后续每一行都根据相邻前一行的instance物理长度和instance上下间距进行累加;每个instance的端口坐标根据instance的左上角位置坐标,按照原有的编号的顺序、引脚长度、端口宽度d参数依次变化;
步骤四,基于已知的instance的布局进行布线
根据给定instance的行列排序,端口的坐标以及net网络中的instance连接信息进行布线,线宽为1单位长度;布线每次考虑相邻两列,然后再依次迭代完成所有列布线;相邻两列布线时,根据第i列输出端口和第i+1列的输入端口坐标确定连线。
2.根据权利要求1所述的基于迭代禁忌搜索算法的电路示意图布局布线方法,其特征在于,所述步骤一包括如下具体步骤:
(1)首先确定无输入连接,以及输出端口和输入端口相连的instance的列号;
(2)采用深度优先遍历方式分配剩余instance的列号;
(3)更新无输出连接的instance的列号;
(4)确定所有的instance的初始行号。
3.根据权利要求2所述的基于迭代禁忌搜索算法的电路示意图布局布线方法,其特征在于,所述步骤(1)中,将无输入连接,以及输出端口和输入端口相连的instance的列号分配为第1列;所述步骤(3)中,更新无输出连接的instance的列号为最后一列。
4.根据权利要求2所述的基于迭代禁忌搜索算法的电路示意图布局布线方法,其特征在于,所述步骤(2)包括如下子步骤:
1)若该后继instance尚未被分配列号,则分配其列号为i+k;
2)若该后继instance已经被分配列号m,且从该instance出发不能回到自身,则将该instance的列号i+k与已经分配的列号m进行比较,选择max{i+k,m}作为新的列号;
3)若该后继instance已经被分配列号m,从该instance出发能回到自身,且该后续instance与当前instance在同一列,则将后继instance分配列号为i+k;
4)否则不对该后续instance处理;
重复上述过程,直至将所有instance分配了列号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210181588.X/1.html,转载请声明来源钻瓜专利网。





