CN111368493B - 一种基于稀疏网格的自动版图布线生成方法 - Google Patents

一种基于稀疏网格的自动版图布线生成方法 Download PDF

Info

Publication number
CN111368493B
CN111368493B CN201811602697.4A CN201811602697A CN111368493B CN 111368493 B CN111368493 B CN 111368493B CN 201811602697 A CN201811602697 A CN 201811602697A CN 111368493 B CN111368493 B CN 111368493B
Authority
CN
China
Prior art keywords
pin
grid
wiring
obstacle
point
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
CN201811602697.4A
Other languages
English (en)
Other versions
CN111368493A (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.)
Hangzhou Guangli Microelectronics Co ltd
Original Assignee
Hangzhou Guangli Microelectronics Co ltd
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 Hangzhou Guangli Microelectronics Co ltd filed Critical Hangzhou Guangli Microelectronics Co ltd
Priority to CN201811602697.4A priority Critical patent/CN111368493B/zh
Publication of CN111368493A publication Critical patent/CN111368493A/zh
Application granted granted Critical
Publication of CN111368493B publication Critical patent/CN111368493B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明涉及一种基于稀疏网格的自动版图布线生成方法,包括以下步骤:1、初始化设置;2、获取布线信息;3、网格划分;4、网格状态标记;5、布线;6、查询是否还有待布线的元器件,若有,则至步骤(2)重复执行直至完成所有版图布线。本发明能根据不同器件和版图设计要求,自适应地对布线的网格进行合理的划分,得到相关网格的数据,再采用算法对网格进行探索,由此可以大大减少由于划分均匀网格而带来的存储空间大的缺点,有利于减小空间有效性,增加空间的使用效率。

Description

一种基于稀疏网格的自动版图布线生成方法
技术领域
本发明是关于集成电路技术领域,特别涉及一种基于稀疏网格的自动版图布线生成方法。
背景技术
随着集成电路技术的快速发展,集成电路进入了超深亚微米时代,这样使得电子器件的特征尺寸越来越小,芯片的规模越来越大,越来越多的元器件可以集成在单一的芯片上,复杂度急剧上升,而对于版图中的布线方法由人工设计布线方法早已无法满足集成电路设计的需要,计算机自动布线已经在版图设计布线中占有越来越大的比例。而布线的算法对于布线的速度、效率有着极其重要的影响,如何能够设计出所需要时间空间更少、复杂度更低、效率更高的算法成为了半导体计算机辅助设计所面临的巨大问题。针对于详细布线,传统的平面布线算法有如下几种方法:
1、李氏迷宫路由算法(Lee’s Maze Routing Algorithm):通常用于版图两点之间确定连接的最短路径。通过将版图进行划分成网格,从起始网格开始,通过对所有未使用的相邻网格进行升序编号,最终搜索到终止格从而得到最短路径。该算法只要最短路径存在,就一定可以得到。但其采用广度优先遍历算法,算法效率不高,且需要较大的存储空间。
2、李氏算法的改进算法:Akers通过将网格中的值采用特定序列代替原本升序编号序列,可以一定程度上减少存储所需空间;Soukup采用深度优先遍历算法,增加了算法效率。但是两种算法的效率均不能达到最优。
3、线探索法:通过线探索的方式进行布线方式搜索,可以大大节约了算法探索的空间消耗,但Hightower算法可能搜索不到本存在的路线;Mikami算法则无法保证路径最短。
上述几种办法均是采用均匀划分网格的办法,其在进行算法探索最佳路径的时候,所需要的记录空间大,不能很好地解决算法的空间有效性和效率的相关问题,在使用过程中无法达到比较好的实用性。
发明内容
本发明的主要目的在于克服现有技术中的不足,提供一种基于稀疏网格的自动版图布线生成方法,能根据不同器件和版图设计要求,自适应地对布线的网格进行合理的划分,得到相关网格的数据,再采用算法对网格进行探索,由此可以大大减少由于划分均匀网格而带来的存储空间大的缺点,有利于减小空间有效性,增加空间的使用效率。为实现上述技术目的,本发明的技术方案是:
提供一种基于稀疏网格的自动版图布线生成方法,具体包括下述步骤:
步骤(1),初始化设置:
获取所有待布线的元器件,并将待布线元器件的引脚标记为未使用;
步骤(2),获取布线信息:
选取待布线的两个元器件,确定布线区域,获取该布线区域内无法进行布线的所有障碍物;从两个元器件的未使用状态的引脚中,各选取一个引脚,分别作为起始引脚和目的引脚;
步骤(3),网格划分:
对确定的布线区域、障碍物、起始引脚和目的引脚分别划分网格线,得到布线区域、障碍物和引脚的若干条网格线,对网格线进行排序,组成稀疏网格;
步骤(4),网格状态标记:
在稀疏网格中标记障碍块区域,每个障碍块区域包括障碍块及其周边的网格;
步骤(5),布线:
确定待布线的两个元器件、起始引脚和目的引脚所占的网格,并根据起始引脚的引出端和引出方向,确定在稀疏网格中的起始点,根据目的引脚的引出端和引出方向,确定在稀疏网格中的目的点;
在稀疏网格中,探索从起始点到目的点的最短路径:
若探索成功,则输出本次布线拓扑,并将起始引脚和目的引脚的状态修改为已使用;
若探索不成功,则对本次布线进行失败标识并反馈,然后判断待布线的两个元器件中,是否还有未进行布线探索的引脚组合:若有,则重新从两个元器件的未使用状态的引脚中,各选取一个作为起始引脚和目标引脚,至步骤(3)重新执行;若待布线的两个元器件中,所有引脚组合都已经过布线探索,则说明本次布线失败,结束自动版图布线,不再执行后续步骤;其中,所述引脚组合是指两个待布线元器件的未使用状态的引脚中,各选取一个引脚分别作为起始引脚和目的引脚的选取组合方式;
步骤(6),查询是否还有待布线的元器件,若有,则至步骤(2)重复执行,直至完成所有版图布线。
作为进一步的改进,所述步骤(2)中,障碍物包括布线区域中已存在的布线拓扑。
作为进一步的改进,所述步骤(2)中确定起始引脚和目的引脚的方法具体为:针对选取的待布线的两个元器件,设其中一个为起始元器件,另一个为目的元器件,从起始元器件中选取一个未使用状态的引脚,从目的元器件中选取一个未使用状态的引脚,当这两个引脚的连线最短时,这两个引脚即分别作为起始引脚和目的引脚。
作为进一步的改进,所述步骤(3)具体包括下述步骤:
Ⅰ)对布线区域、障碍物和引脚分别进行网格划分,具体如下:
对布线区域进行网格划分:布线区域为矩形的区域,先确定布线区域的4条边界线,再分别将在布线区域内且距离边界线m/2的直线,确定为该布线区域的4条网格线,即布线区域的网格线至少包括该4条网格线;
对障碍物进行网格划分,具体包括下述步骤:1)若障碍物的形状不是规则的矩形,则先将障碍物分割成若干个矩形的障碍块,再划分网格线;若障碍物是矩形的障碍块,则直接划分网格线;2)对障碍块划分网格线,得到每个障碍块的12条网格线:4条障碍块的边线和8条四周的网格线,即每个障碍块的网格线至少包括该12条网格线;所述四周的网格线包括:在障碍块外侧且与障碍块边线的距离为(m/2+n)的直线,以及在障碍块外侧且与障碍块边线的距离为n的直线;
对引脚进行网格划分,分不同规格的引脚进行网格划分:1)对于宽度不大于(2m+n)的引脚,划分网格线,得到3条网格线:引脚的纵向中轴线,以及在引脚外且与引脚侧边线的距离为(m/2+n)的直线;即宽度不大于(2m+n)的引脚至少包括该3条网格线;2)对于宽度大于(2m+n)的引脚,划分网格线,得到4条网格线:在引脚内且与引脚侧边线的距离为m/2的直线、在引脚内且与引脚侧边线的距离为(3m/2+n)的直线;即宽度大于(2m+n)的引脚至少包括该4条网格线;
其中,所述m为预设的绕线宽度,所述n为预设的绕线间隙;
Ⅱ)记录布线区域、障碍物和引脚的网格线,并按照竖直方向从左到右、水平方向从上到下,对网格线进行排序,组成稀疏网格。
作为进一步的改进,步骤(4)中,所述障碍块区域是指:在障碍块外侧且与障碍块边线的距离为n的4条网格线围成的网格区域,且障碍块区域包括障碍物区域边界的网格线。
作为进一步的改进,所述步骤(5)中,设引脚的引出方向为向上,确定引脚引出端的方法具体为:
1)对于宽度不大于(2m+n)的引脚,则纵向中轴线与引脚上边线的交叉点作为引出端;
2)对于宽度大于(2m+n)的引脚,则在引脚内且与引脚侧边线的距离为m/2的网格线,与引脚上边线的一个交叉点作为引出端。也即若上述网格线与引脚上边线有两个及以上的交叉点,可任选一个作为引出端。
作为进一步的改进,所述步骤(5)中,在稀疏网格中确定起始点和目的点,具体包括下述步骤:
步骤a:在引脚的引出端所在的网格线上,沿着该引脚的引出方向,确定引出端之后的一个网格点;所述网格点是指网格线的交叉点;
步骤b:判断该网格点是否属于稀疏网格的障碍物区域:
若该网格点不属于障碍物区域,则直接将该网格点作为起始点或者目的点;
若该网格点属于障碍物区域,则在稀疏网格中,添加该引脚所在待测器件的上边界作为网格线,将引出端所在的网格线与新增的网格线的交叉点,作为起始点或者目的点。
作为进一步的改进,所述步骤(5)中,探索从起始点到目的点的最短路径的方法,具体为:
从起始点开始,依次在稀疏网格中确定下一个网格点,并保证该网格点不属于障碍块区域;最后到达目的点时,经过的网格点最少的路径即为从起始点到目的点的最短路径。
与现有技术相比,本发明的有益效果是:
1、本发明根据不同器件和版图设计要求,自适应地对布线的网格进行合理划分,得到非均匀的稀疏网格,再采用算法对稀疏网格进行探索,由此可以大大减少由于划分均匀网格而带来的存储空间大的缺点,有利于减小空间有效性,增加空间的使用效率。
2、传统的平面布线算法中,如果布线宽度变小,会导致均匀网格划分得更密,由此产生的探索网格算法存储空间和探索空间会大大增加,而本发明的网格划分方法,就算布线宽度变小,存储空间和探索空间几乎不变。
附图说明
图1为本发明的整体流程图。
图2为对布线区域进行网格划分的实施例示意图。
图3为对竖直引出方向的引脚进行网格划分的实施例示意图。
图4为对水平引出方向的引脚进行网格划分的实施例示意图。
图5为对竖直引出方向的引脚进行网格划分的实施例示意图。
图6为对水平引出方向的引脚进行网格划分的实施例示意图。
图7为将不规则障碍物分割为障碍块的实施例示意图。
图8为对障碍块进行网格划分的实施例示意图。
图9为对障碍块进行网格状态标记的实施例示意图。
图10为李氏迷宫路由算法示意图。
图11为李氏迷宫路由算法示意图。
图12为李氏迷宫路由算法示意图。
图13为李氏迷宫路由算法示意图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述:
如图1所示的一种稀疏划分网格的自动版图布线生成方法,具体包括下述步骤:
步骤(1),初始化设置:
设置绕线宽度为m,绕线间隙为n,获取所有待布线的元器件,并将待布线元器件的引脚标记为未使用。
步骤(2),获取布线信息:
选取待布线的两个元器件,确定布线区域,获取该布线区域内无法进行布线的所有障碍物,障碍物包括布线区域中已存在的布线拓扑。
从两个元器件的未使用状态的引脚中,各选取一个引脚,分别作为起始引脚和目的引脚。确定起始引脚和目的引脚的方法具体为:针对选取的待布线的两个元器件,设其中一个为起始元器件,另一个为目的元器件,从起始元器件中选取一个未使用状态的引脚,从目的元器件中选取一个未使用状态的引脚,当这两个引脚的连线最短时,这两个引脚即分别作为起始引脚和目的引脚。
步骤(3),网格划分:
对布线区域、障碍物、起始引脚和目的引脚分别进行网格划分,得到布线区域、障碍物和引脚的若干网格线,按照竖直方向从左到右、水平方向从上到下,对网格线进行排序,组成稀疏网格。
下面对布线区域、障碍物和引脚具体如何划分网格进行介绍。
如图2所示,对布线区域进行网格划分:布线区域为矩形的区域,确定布线区域的4条边界线,再利用边界线确定该布线区域的4条网格线,Xa、Xb为其中2条竖直网格线的横坐标,Ya、Yb为另外2条水平网格线的纵坐标。假设(x1,y1)、(x2,y2)分别为布线区域的左下角坐标和右上角坐标,则具体关系如下:
Figure BDA0001922904660000051
Figure BDA0001922904660000052
Figure BDA0001922904660000053
Figure BDA0001922904660000054
对障碍物进行网格划分,具体包括下述步骤:
1)障碍物在整个布线过程中无法进行布线,在实际时,障碍物可能并非是一个规则的矩形情况,但无论什么情况下,总可以经过分割的方式,把障碍物分割成一个个矩形的障碍块,则接下来就可以根据障碍块划分网格,可参考图7所示。
2)根据障碍块的大小对障碍块划分网格线,得到每个障碍块的12条网格线,其中水平、竖直网格线各6条。如图8所示,该障碍块的水平网格线的纵坐标分别为Ya、Yb、Yc、Yd、Ye、Yf,竖直网格线的横坐标分别为:Xa、Xb、Xc、Xd、Xe、Xf。假设(x1,y1)、(x2,y2)分别为障碍块的左下角坐标和右上角坐标,则各个值分别为:
Figure BDA0001922904660000061
Xb=x1-n
Xc=x1
Xd=x2
Xe=x2+n
Figure BDA0001922904660000062
Figure BDA0001922904660000063
Yb=y2+n
Yc=y2
Yd=y1
Ye=y1-n
Figure BDA0001922904660000064
对引脚进行网格划分,分不同规格的引脚进行网格划分:
1)对于需要向外拓展且宽度不大于(2m+n)的引脚:
如图3所示,如果引脚的引出方向为竖直方向(箭头的方向),针对于该引脚划分得到3条竖直的网格线,其横坐标分别为Xa、Xb、Xc。假设引脚左下角的坐标为(x1,y1),右上角的坐标为(x2,y2),则具体关系如下:
Figure BDA0001922904660000065
Xb=(x1+x2)/2
Figure BDA0001922904660000066
如图4所示,如果引脚的引出方向为水平方向(箭头的方向),同理对于该引脚划分得到3条水平的网格线,其纵坐标分别为Ya、Yb、Yc。假设引脚左下角的坐标为(x1,y1),右上角的坐标为(x2,y2),则具体关系如下:
Figure BDA0001922904660000067
Yb=(y1+y2)/2
Figure BDA0001922904660000071
2)对于需要向外拓展且宽度大于(2m+n)的引脚:
如图5所示,如果引脚的引出方向为竖直方向(箭头的方向),针对于该引脚划分得到4条竖直的网格线,其横坐标分别为Xa、Xb、Xc、Xd。假设引脚左下角的坐标为(x1,y1),右上角的坐标为(x2,y2),则具体关系如下:
Figure BDA0001922904660000072
Figure BDA0001922904660000073
Figure BDA0001922904660000074
Figure BDA0001922904660000075
如图6所示,如果引脚的引出方向为水平方向(箭头的方向),同理对于该引脚划分得到4条水平的网格线,其纵坐标分别为Ya、Yb、Yc、Yd。假设引脚左下角的坐标为(x1,y1),右上角的坐标为(x2,y2),则具体关系如下:
Figure BDA0001922904660000076
Figure BDA0001922904660000077
Figure BDA0001922904660000078
Figure BDA0001922904660000079
步骤(4),网格状态标记:
在稀疏网格中,标记障碍块区域。所述障碍块区域是指:在障碍块外侧且与障碍块边线的距离为n的4条网格线围成的网格区域,且障碍块区域包括障碍物区域边界的网格线。如图9所示,区域B1部分为障碍块,区域B2部分为障碍块周边的网格,障碍块区域包括区域B1部分和区域B2部分。
步骤(5),布线:
确定待布线的两个元器件、起始引脚和目的引脚所占的网格,并根据起始引脚的引出端和引出方向,确定在稀疏网格中的起始点,根据目的引脚的引出端和引出方向,确定在稀疏网格中的目的点。
在稀疏网格中,探索从起始点到目的点的最短路径:
若探索成功,则输出本次布线拓扑,并将起始引脚和目的引脚的状态修改为已使用;
若探索不成功,则对本次布线进行失败标识并反馈,然后判断待布线的两个元器件中,是否还有未进行布线探索的引脚组合:若有,则重新从两个元器件的未使用状态的引脚中,各选取一个作为起始引脚和目标引脚,至步骤(3)重新执行;若待布线的两个元器件中,所有引脚组合都已经过布线探索,则说明本次布线失败,结束自动版图布线,不再执行后续步骤;其中,所述引脚组合是指两个待布线元器件的未使用状态的引脚中,各选取一个引脚分别作为起始引脚和目的引脚的选取组合方式。
在上述布线过程中,设引脚的引出方向为向上,确定引脚引出端的方法具体为:1)对于宽度不大于(2m+n)的引脚,则纵向中轴线与引脚上边线的交叉点作为引出端;2)对于宽度大于(2m+n)的引脚,则在引脚内且与引脚侧边线的距离为m/2的网格线,与引脚上边线的交叉点作为引出端。若引脚中有两个引出端,可任选一个。
确定了起始引脚和目的引脚的引出端后,在稀疏网格中确定起始点和目的点,具体包括下述步骤:
步骤a:在引脚的引出端所在的网格线上,沿着该引脚的引出方向,确定引出端之后的一个网格点,网格点是指网格线的交叉点。
步骤b:判断该网格点是否属于稀疏网格的障碍物区域:若该网格点不属于障碍物区域,则直接将该网格点作为起始点或者目的点;若该网格点属于障碍物区域,则在稀疏网格中,添加该引脚所在待测器件的上边界作为网格线,将引出端所在的网格线与新增的网格线的交叉点,作为起始点或者目的点。
对于具体的探索算法,可以采用现有的算法来实现,类似李氏迷宫路由算法的方式,确定探索下一个网格点,同时判断该探索点是否符合边界条件(通过该网格点的绕线间距要能够达到和障碍块等的距离至少为最小绕线间距),只是进行探索的网格为稀疏网格,即每个网格的大小不一致,非均匀划分网格。
下面对李氏迷宫路由算法进行适当介绍,需要注意的是,这里对李氏迷宫路由算法的介绍中,采用网格来探索布线路径,不同于本发明中采用网格点来探索布线路径。
如图10所示为进行版图布线的区域,其中区域A为所需要进行布线进行连接的两个引脚,区域B为障碍物;首先对整个网格进行均匀的网格划分,得到该版图布线下所有障碍块、引脚所处的位置。如图11所示,根据划分的网格,选择其中一个需要布线连接的引脚块作为起始块,分别向周围可以进行布线的网格进行探索,每次探索一格,并同时此时探索达到的网格标记为1。然后,对此时标记为最大数字的值N的网格作为起点,对周围未进行探索的网格,进行上述一致的探索步骤,并同时标记为N+1。直到达到最终所需进行布线连接的另一个引脚块,即目标块。具体如图12所示,标记为1的网格的下一个周围的网格标记为2,标记为2的网格的下一个周围的网格标记为3,以此类推,直到达到最终另一个所需布线连接的引脚块。最终通过得到的探索结果,从目标块开始反向根据网格的标记,由大到小迭代得到能够到达起始块的网格路线,此时最终得到的路线即为布局的路线,即图13中的连接两个区域A之间的区域C。
步骤(6),查询是否还有待布线的元器件,若有,则至步骤(2)重复执行,直至完成所有版图布线。
最后,需要注意的是,以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有很多变形。本领域的普通技术人员能从本发明公开的内容中直接导出或联想到的所有变形,均应认为是本发明的保护范围。

Claims (8)

1.一种基于稀疏网格的自动版图布线生成方法,其特征在于,具体包括下述步骤:
步骤(1),初始化设置:
获取所有待布线的元器件的位置信息,并将待布线元器件的引脚标记为未使用;
步骤(2),获取布线信息:
选取待布线的两个元器件,确定布线区域,获取该布线区域内无法进行布线的所有障碍物;从两个元器件的未使用状态的引脚中,各选取一个引脚,分别作为起始引脚和目的引脚;
步骤(3),网格划分:
对确定的布线区域、障碍物、起始引脚和目的引脚分别划分网格线,得到布线区域、障碍物和引脚的若干条网格线,对网格线进行排序,组成稀疏网格;
步骤(4),网格状态标记:
在稀疏网格中标记障碍块区域,每个障碍块区域包括障碍块及其周边的网格;
步骤(5),布线:
确定待布线的两个元器件、起始引脚和目的引脚所占的网格,并根据起始引脚的引出端和引出方向,确定在稀疏网格中的起始点,根据目的引脚的引出端和引出方向,确定在稀疏网格中的目的点;
在稀疏网格中,探索从起始点到目的点的最短路径:
若探索成功,则输出本次布线拓扑,并将起始引脚和目的引脚的状态修改为已使用;
若探索不成功,则对本次布线进行失败标识并反馈,然后判断待布线的两个元器件中,是否还有未进行布线探索的引脚组合:若有,则重新从两个元器件的未使用状态的引脚中,各选取一个作为起始引脚和目标引脚,至步骤(3)重新执行;若待布线的两个元器件中,所有引脚组合都已经过布线探索,则说明本次布线失败,结束自动版图布线,不再执行后续步骤;其中,所述引脚组合是指两个待布线元器件的未使用状态的引脚中,各选取一个引脚分别作为起始引脚和目的引脚的选取组合方式;
步骤(6),查询是否还有待布线的元器件,若有,则至步骤(2)重复执行,直至完成所有版图布线。
2.根据权利要求1所述的一种基于稀疏网格的自动版图布线生成方法,其特征在于,所述步骤(2)中,障碍物包括布线区域中已存在的布线拓扑。
3.根据权利要求1所述的一种基于稀疏网格的自动版图布线生成方法,其特征在于,所述步骤(2)中确定起始引脚和目的引脚的方法具体为:针对选取的待布线的两个元器件,设其中一个为起始元器件,另一个为目的元器件,从起始元器件中选取一个未使用状态的引脚,从目的元器件中选取一个未使用状态的引脚,当这两个引脚的连线最短时,这两个引脚即分别作为起始引脚和目的引脚。
4.根据权利要求1所述的一种基于稀疏网格的自动版图布线生成方法,其特征在于,所述步骤(3)具体包括下述步骤:
Ⅰ)对布线区域、障碍物和引脚分别划分网格线,具体如下:
对布线区域进行网格划分:布线区域为矩形的区域,先确定布线区域的4条边界线,再分别将在布线区域内且距离边界线m/2的直线,确定为该布线区域的4条网格线,即布线区域的网格线至少包括该4条网格线;
对障碍物进行网格划分,具体包括下述步骤:1)若障碍物的形状不是规则的矩形,则先将障碍物分割成若干个矩形的障碍块,再划分网格线;若障碍物是矩形的障碍块,则直接划分网格线;2)对障碍块划分网格线,得到每个障碍块的12条网格线:4条障碍块的边线和8条四周的网格线,即每个障碍块的网格线至少包括该12条网格线;所述四周的网格线包括:在障碍块外侧且与障碍块边线的距离为(m/2+n)的直线,以及在障碍块外侧且与障碍块边线的距离为n的直线;
对引脚进行网格划分,分不同规格的引脚进行网格划分:1)对于宽度不大于(2m+n)的引脚,划分网格线,得到3条网格线:引脚的纵向中轴线,以及在引脚外且与引脚侧边线的距离为(m/2+n)的直线;即宽度不大于(2m+n)的引脚至少包括该3条网格线;2)对于宽度大于(2m+n)的引脚,划分网格线,得到4条网格线:在引脚内且与引脚侧边线的距离为m/2的直线、在引脚内且与引脚侧边线的距离为(3m/2+n)的直线;即宽度大于(2m+n)的引脚至少包括该4条网格线;
其中,所述m为预设的绕线宽度,所述n为预设的绕线间隙;
Ⅱ)记录布线区域、障碍物和引脚的网格线,并按照竖直方向从左到右、水平方向从上到下,对网格线进行排序,组成稀疏网格。
5.根据权利要求4所述的一种基于稀疏网格的自动版图布线生成方法,其特征在于,步骤(4)中,所述障碍块区域是指:在障碍块外侧且与障碍块边线的距离为n的4条网格线围成的网格区域,且障碍块区域包括障碍物区域边界的网格线。
6.根据权利要求4所述的一种基于稀疏网格的自动版图布线生成方法,其特征在于,所述步骤(5)中,设引脚的引出方向为向上,确定引脚引出端的方法具体为:
1)对于宽度不大于(2m+n)的引脚,则纵向中轴线与引脚上边线的交叉点作为引出端;
2)对于宽度大于(2m+n)的引脚,则在引脚内且与引脚侧边线的距离为m/2的网格线,与引脚上边线的一个交叉点作为引出端。
7.根据权利要求6所述的一种基于稀疏网格的自动版图布线生成方法,其特征在于,所述步骤(5)中,在稀疏网格中确定起始点和目的点,具体包括下述步骤:
步骤a:在引脚的引出端所在的网格线上,沿着该引脚的引出方向,确定引出端之后的一个网格点;所述网格点是指网格线的交叉点;
步骤b:判断该网格点是否属于稀疏网格的障碍物区域:
若该网格点不属于障碍物区域,则直接将该网格点作为起始点或者目的点;
若该网格点属于障碍物区域,则在稀疏网格中,添加该引脚所在待测器件的上边界作为网格线,将引出端所在的网格线与新增的网格线的交叉点,作为起始点或者目的点。
8.根据权利要求1所述的一种基于稀疏网格的自动版图布线生成方法,其特征在于,所述步骤(5)中,探索从起始点到目的点的最短路径的方法,具体为:
从起始点开始,依次在稀疏网格中确定下一个网格点,并保证该网格点不属于障碍块区域;最后到达目的点时,经过的网格点最少的路径即为从起始点到目的点的最短路径。
CN201811602697.4A 2018-12-26 2018-12-26 一种基于稀疏网格的自动版图布线生成方法 Active CN111368493B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811602697.4A CN111368493B (zh) 2018-12-26 2018-12-26 一种基于稀疏网格的自动版图布线生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811602697.4A CN111368493B (zh) 2018-12-26 2018-12-26 一种基于稀疏网格的自动版图布线生成方法

Publications (2)

Publication Number Publication Date
CN111368493A CN111368493A (zh) 2020-07-03
CN111368493B true CN111368493B (zh) 2023-03-14

Family

ID=71210148

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811602697.4A Active CN111368493B (zh) 2018-12-26 2018-12-26 一种基于稀疏网格的自动版图布线生成方法

Country Status (1)

Country Link
CN (1) CN111368493B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112736776B (zh) * 2020-12-18 2022-09-13 湖北追日电气股份有限公司 一种智能控制设备的电气控制盘绕线与布线方法
CN112685991B (zh) * 2020-12-22 2022-11-01 北京华大九天科技股份有限公司 一种满足约束的布线方法
CN113657067B (zh) * 2021-06-30 2023-07-21 福州大学 基于多策略优化的超大规模集成电路多层总体布线方法
CN116070575B (zh) * 2023-01-12 2023-08-15 广东工业大学 一种芯片布线优化方法及软件系统
CN116011386B (zh) * 2023-01-31 2024-07-09 本源科仪(成都)科技有限公司 版图自动布线方法、装置、存储介质及电子设备
CN116306459B (zh) * 2023-02-28 2024-06-04 本源科仪(成都)科技有限公司 量子芯片版图的引脚布置方法、系统、介质及设备
CN116108799B (zh) * 2023-04-12 2023-08-04 墨研计算科学(南京)有限公司 一种基于轨道的版图自动接线方法、系统及装置
CN116467997B (zh) * 2023-05-10 2023-09-26 南京邮电大学 基于决策协商算法的多实例化分块布图下的顶层布线方法
CN117172193B (zh) * 2023-10-19 2024-09-24 合芯科技(苏州)有限公司 标准单元金属层的版图结构及其设计方法
CN117787172B (zh) * 2023-12-27 2024-07-12 苏州异格技术有限公司 布线资源图的构建方法、装置、计算机设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906617A (zh) * 2003-10-09 2007-01-31 国际商业机器公司 用于在集成电路芯片内的电压岛上执行电源布线的方法和设备
CN1963827A (zh) * 2006-12-08 2007-05-16 清华大学 基于多步长迷宫算法的模拟集成电路自动布线方法
CN101916317A (zh) * 2010-08-23 2010-12-15 清华大学 基于无网格模型的集成电路模块到模块的布线方法
CN101944149A (zh) * 2010-09-15 2011-01-12 清华大学 基于无网格模型的集成电路点到点的布线方法
CN101980216A (zh) * 2010-10-18 2011-02-23 清华大学 基于网块的快速多层布线方法
CN103064992A (zh) * 2011-10-20 2013-04-24 台达电子企业管理(上海)有限公司 一种基于有向网格点的布线存储结构及其布线方法
CN103984789A (zh) * 2014-01-26 2014-08-13 福州大学 大规模集成电路设计中基于线长最短优化的绕障布线方法
JP2016212627A (ja) * 2015-05-08 2016-12-15 富士通株式会社 経路探索プログラム、情報処理装置、及び経路探索方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7216308B2 (en) * 2002-11-18 2007-05-08 Cadence Design Systems, Inc. Method and apparatus for solving an optimization problem in an integrated circuit layout

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906617A (zh) * 2003-10-09 2007-01-31 国际商业机器公司 用于在集成电路芯片内的电压岛上执行电源布线的方法和设备
CN1963827A (zh) * 2006-12-08 2007-05-16 清华大学 基于多步长迷宫算法的模拟集成电路自动布线方法
CN101916317A (zh) * 2010-08-23 2010-12-15 清华大学 基于无网格模型的集成电路模块到模块的布线方法
CN101944149A (zh) * 2010-09-15 2011-01-12 清华大学 基于无网格模型的集成电路点到点的布线方法
CN101980216A (zh) * 2010-10-18 2011-02-23 清华大学 基于网块的快速多层布线方法
CN103064992A (zh) * 2011-10-20 2013-04-24 台达电子企业管理(上海)有限公司 一种基于有向网格点的布线存储结构及其布线方法
CN103984789A (zh) * 2014-01-26 2014-08-13 福州大学 大规模集成电路设计中基于线长最短优化的绕障布线方法
JP2016212627A (ja) * 2015-05-08 2016-12-15 富士通株式会社 経路探索プログラム、情報処理装置、及び経路探索方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
高效率集成电路测试芯片设计方法;邵康鹏等;《高效率集成电路测试芯片设计方法》;第49卷(第11期);第54-57页 *

Also Published As

Publication number Publication date
CN111368493A (zh) 2020-07-03

Similar Documents

Publication Publication Date Title
CN111368493B (zh) 一种基于稀疏网格的自动版图布线生成方法
CN110795908B (zh) 偏差驱动的总线感知总体布线方法
US9672611B2 (en) Pattern analysis method of a semiconductor device
US20030229862A1 (en) Patching technique for correction of minimum area and jog design rule violations
US10831972B2 (en) Capacity model for global routing
CN109582997B (zh) 标准单元的布线方法及其相关的计算机系统和指令
CN114556352A (zh) 用于执行自动布线的方法和系统
CN112685991B (zh) 一种满足约束的布线方法
CN115374747B (zh) 构建空气桥图形的方法、系统、存储介质及电子设备
CN114611452B (zh) 基于电路原理图在版图中自动生成Sub Cell的方法
JP2021532605A (ja) 二進コードによるデジタル集積回路の配線方法および端末装置
CN114386356A (zh) 芯片设计的布线方法及装置、设备、存储介质
CN113792519B (zh) 对电路进行布局规划的方法、电子设备及存储介质
JP2010198466A (ja) 配線基板の配線設計方法
CN111027273A (zh) 一种基于预绕线的版图自动绕线方法、存储设备及系统
CN103678741A (zh) 一种集成电路版图验证中短路路径的图形优化方法
US10977414B2 (en) Constructing via meshes for high performance routing on silicon chips
CN116629193A (zh) 集成电路的布线方法、装置、设备及存储介质
CN115048900B (zh) 一种集成电路版图的拐角填充方法、装置及计算机设备
US9015645B1 (en) Hierarchical electromigration analysis using intelligent connectivity
US6567954B1 (en) Placement and routing method in two dimensions in one plane for semiconductor integrated circuit
CN110941940B (zh) 一种基于碰撞检测的3d绕线方法、存储设备和系统
CN112800547B (zh) 电动汽车电机控制器的布局优化方法、装置及存储介质
CN115081375A (zh) 过孔叠层结构的处理方法、库建立方法、设备及存储介质
CN111291528B (zh) 一种用于不同绕线层间的3d绕线方法及系统

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
CB02 Change of applicant information

Address after: Room A407, Neusoft venture building, 99 Huaxing Road, Xihu District, Hangzhou City, Zhejiang Province, 310012

Applicant after: Hangzhou Guangli Microelectronics Co.,Ltd.

Address before: Room A407, Neusoft venture building, 99 Huaxing Road, Xihu District, Hangzhou City, Zhejiang Province, 310012

Applicant before: Semitronix Corp.

GR01 Patent grant
GR01 Patent grant