CN110096823B - 基于二进制编码的数字集成电路布线方法及终端设备 - Google Patents
基于二进制编码的数字集成电路布线方法及终端设备 Download PDFInfo
- Publication number
- CN110096823B CN110096823B CN201910381147.2A CN201910381147A CN110096823B CN 110096823 B CN110096823 B CN 110096823B CN 201910381147 A CN201910381147 A CN 201910381147A CN 110096823 B CN110096823 B CN 110096823B
- Authority
- CN
- China
- Prior art keywords
- binary
- wiring
- mode
- fitness function
- integrated circuit
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
Abstract
本发明公开了一种基于二进制编码的数字集成电路布线方法及终端设备,所述方法包括:确定预设数量的第一连线方式,根据各连接线对应的布线子空间计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值对各第一连线方式进行处理以得到各第二连线方式;在第一连线方式和第二连线方式合并形成的集合中选取第一数量的第三连线方式,并分别计算各第三连线方式的第二适应度函数值;根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接。本发明通过采用均匀网格的二进制编码,一方面避免了非网格算法中编码长度不定的问题,减小了寻优空间范围,提高了布线效率。
Description
技术领域
本发明涉及数字集成电路技术领域,特别涉及一种基于二进制编码的数字集成电路布线方法及终端设备。
背景技术
数字数字集成电路(Integrated Circuit,IC),也称为芯片,是一种基于半导体技术的微型电子器件。目前数字数字集成电路普遍采用如图1所示的基于标准单元(StandardCell)的设计方式,其中,标准单元是包含一定功能的简单电路模块,如触发器、门电路、加法器、缓冲器、寄存器、RAM存储单元等。在数字数字集成电路设计过程中,一般先根据连线布通率等对标准单元位置进行布局,然后再根据标准单元的位置、输入与输出引脚以及网表信息,设计连线的布局,以使得数字集成电路在符合网络辐射的约束的情况下连接线总体长度最短。
然而,现有数字集成电路布线在标准单元完成布局后的连线过程一般使用启发式方法设计布线,如粒子群优化、蚁群算法等。但IC布线是大规模的复杂优化问题,传统启发式方法难以处理,导致布线效率低下。
发明内容
鉴于现有技术的不足,本发明旨在提供一种基于二进制编码的数字集成电路布线方法及终端设备。
本发明所采用的技术方案如下:
一种基于二进制编码的数字集成电路布线方法,所述数字集成电路包括一布置有复数个标准单元的基板,所述基板包括复数个连接线,所述方法包括:
创建预设数量的二进制矢量,并根据创建得到预设数量的二进制数量生成预设数量的第一连线方式;
根据各连接线对应的布线子空间计算各第一连线方式的路径成本矢量;
根据各路径成本矢量计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式;
在第一连线方式和第二连线方式合并形成的集合中选取第一数量的第三连线方式,并分别计算各第三连线方式的第二适应度函数值;
根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接。
所述基于二进制编码的数字集成电路布线方法,其中,所述创建预设数量的二进制矢量,并根据创建得到预设数量的二进制数量生成预设数量的第一连线方式具体包括:
获取各连接线对应的布线子空间的第一维数;
根据获取到所有第一维数计算第二维数,并根据所述第二维数创建预设数量的二进制矢量;
根据创建得到预设数量的二进制数量生成预设数量的第一连线方式,其中,所述二进制矢量的维数为第二维数。
所述基于二进制编码的数字集成电路布线方法,其中,所述根据各连接线对应的布线子空间计算各第一连线方式的路径成本矢量具体包括:
获取各连接线对应的布线子空间的第一维数;
将根据各连接线对应的第一维数将各第一连线方式拆分为若干子矢量;
根据各子矢量中编码1对应的网格交点以形成的网格交点集合,并根据所各网格交点集合确定其对应的子矢量的路径长度,以及根据各路径长度生成路径成本矢量。
所述基于二进制编码的数字集成电路布线方法,其中,所述获取各连接线对应的布线子空间的第一维数之前包括:
获取所述基板上各引脚的位置信息,并根据获取到所有位置信息将所述基板划分为若干网格;
获取各连接线连接的两个引脚对应的网格交点,并根据获取到的网格交点确定各连接线的二进制矢量,以及根据各二进制矢量确定各连接线对应的布线子空间。
所述基于二进制编码的数字集成电路布线方法,其中,所述根据各路径成本矢量计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式具体包括:
对各路径成本矢量,计算其各维度的路径成本在所有路径成本矢量对应维度的路径成本中的路径成本排序值;
根据各维度的路径成本排序值生成路径成本排序矢量,并各所述路径成本排序矢量计算各第一连续方式的第一适应度函数值;
根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式。
所述基于二进制编码的数字集成电路布线方法,其中,所述根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并将根据所述最优连线方式将标准单元引脚连接具体包括:
根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式;
计算所述最优连线方式 中各连接线的最短网格路径,并根据各最短网格路径将连接标准单元引脚连接。
所述基于二进制编码的数字集成电路布线方法,其中,所述根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接具体包括:
获取所述第三连线方式对应的迭代次数,并将所述迭代次数与预设迭代次数进行比较;
当所述迭代次数等于所述预设迭代次数时,根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优布局,并根据所述最优连线方式将标准单元引脚连接。
所述基于二进制编码的数字集成电路布线方法,其中,当所述迭代次数小于所述预设迭代次数时,将所述第三连线方式作为第一连线方式,并返回至计算第一连线方式进的步骤直至迭代次数达到预设迭代次数。
一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上任一所述的基于二进制编码的数字集成电路布线方法中的步骤。
一种终端设备,其包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如上任一所述的基于二进制编码的数字集成电路布线方法中的步骤。
有益效果:与现有技术相比,本发明提供了一种基于二进制编码的数字集成电路布线方法及终端设备,所述方法包括:确定预设数量的第一连线方式,根据各连接线对应的布线子空间计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值对各第一连线方式进行处理以得到各第二连线方式;在第一连线方式和第二连线方式合并形成的集合中选取第一数量的第三连线方式,并分别计算各第三连线方式的第二适应度函数值;根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接。本发明通过采用均匀网格的二进制编码,一方面避免了非网格算法中编码长度不定的问题,减小了寻优空间范围,提高了布线效率。
附图说明
图1为数字集成电路标准单元布局示例图。
图2为本发明提供的基于二进制编码的数字集成电路布线方法的一个流程图。
图3为本发明提供的基于二进制编码的数字集成电路布线方法的另一个流程图。
图4为本发明提供的基于二进制编码的数字集成电路布线方法中确定布线路径的流程图示意图。
图5为本发明提供的一种应用自启动的控制系统较佳实施例的结构原理图。
具体实施方式
本发明提供一种基于二进制编码的数字集成电路布线方法及终端设备,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语 (包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
下面结合附图,通过对实施例的描述,对发明内容作进一步说明。
本实施例提供了一种基于二进制编码的数字集成电路布线方法,如图 2-4所示,所述方法包括:
S10、创建预设数量的二进制矢量,并根据创建得到预设数量的二进制数量生成预设数量的第一连线方式。
具体地,所述二进制矢量是随机生成,这里将二进制矢量记为Si,所述 Si中各元素是在0和1中随机生成的,即所述Si为有0和1随机构成的第二维数的矢量。所述Si的维数数字集成电路在完成标准单元布局后形成的数字集成电路的各布局子空间的第一维数的维数和,记为第二维数,其中,各布局子空间为各连接线对应的可走线空间。在本实施例中,预设数量的第一连线方式构成初始进化种群ps={S1,S2,...,Sps}
示例性地,所述创建预设数量的二进制矢量,并根据创建得到预设数量的二进制数量生成预设数量的第一连线方式具体包括:
获取各连接线对应的布线子空间的第一维数;
根据获取到所有第一维数计算第二维数,并根据所述第二维数创建预设数量的二进制矢量;
根据创建得到预设数量的二进制数量生成预设数量的第一连线方式,其中,所述二进制矢量的维数为第二维数。
具体地,所述数字集成电路包括一基板、复数个标准单元以及复数个连接线,所述复数个标准单元布局在所述基板上。也就是说,本方法应用于已经完成标准单元布局的数字集成电路上。在基板完成标准单元布局后,需要通过连接线将数字集成电路上各引脚连通,其中,所述引脚包括标准单位的器件引脚和基板上的端口引脚。这里将数字集成电路上的引脚集合记为P={p1,p2,...,pm},其中,m为引脚的个数,是正整数;将复数个连接线的集合记为E={e1,e2,...,en},其中,n为连接线的条数,是正整数。所述E中的每条连接线连接P中的两个不同引脚。从而对于完成标准单元布置后数字集成电路布线问题可描述为在可走线的芯片空间内,最小化总连线长度 TWL,其中,所述TWL的计算公式可以为:
其中,所述||ei||为ei的长度。
进一步,为了计算ei的长度,在完成标准单元布置的基板中,需要将基板划分为若干网格。相应的,所述获取各连接线对应的布线子空间的第一维数之前包括:
获取所述基板上各引脚的位置信息,并根据获取到所有位置信息将所述基板划分为若干网格;
获取各连接线连接的两个引脚对应的网格交点,并根据获取到的网格交点确定各连接线的二进制矢量,以及根据各二进制矢量确定各连接线对应的布线子空间。
具体地,所述位置信息为各引脚在预设坐标系中的坐标点,在获取到位置信息后,可以根据各位置信息计算P中任意两个相连引脚的横坐标距离和P中任意两个相连引脚的纵坐标距离,并分别横坐标距离和纵坐标距离的其最大公约数(Highest common factor,HCF),将横坐标距离的最大公约数作为网格宽度w,将纵坐标距离的最大公约数作为网格高度h。其中,所述横坐标和纵坐标是在以根据所述基板建立的坐标系中的坐标。例如,以所述基板的左下角为原点,向右延伸的边为横轴以及向上延伸的边为纵轴建立的坐标系。同时在本实施例中,所述网格宽度和网格高度的计算公式分别为:
其中,ei,j为E中连接引脚pi和pj的连接线。
此外,计算得到w和h后,采用大小为w×h的单元网格均匀划分基板,各引脚均位于网格的交点位置。那么对于E中的任意连接线根据其连接的引脚所处网络节点的坐标点确定连接线对于的布线子空间的第一维数。这里将连接引脚pi(和pj的连接线记为ei,j,那么对于ei,j对于的布线子空间可以是根据引脚pi和pj的坐标点确定的,其具体过程可以为:获取到引脚pi和pj的坐标点{xi,yi}和{xj,yj},根据坐标点{xi,yi}和{xj,yj}提取坐标点{xi,yj}和 {xj,yi},并将{xi,yi}、{xj,yj}、{xi,yj}以及{xj,yi}为顶点的矩形区域作为ei,j的布线子空间。其中,所述有效网格交点指的是未被标准单元覆盖的网格交点。
进一步,在获取到ei,j的布线子空间后,提取ei,j的布线子空间包括的有效的网格交点,并将提取到的有效网格交点编号为1,2,...k,则将ei,j的布线编码表示为k维二进制矢量Ci,j=(c1,c2,...,ck),其中,对于任意l∈k,cl=1 表示ei,j走线经过网格交点l,cl=0表示ei,j不经过网格交点l。那么连接线ei,j的布线子空间的第一维数为k,第二维数等于第一维数的和,即第二维数 D=∑nkn。
S20、根据各连接线对应的布线子空间计算各第一连线方式的路径成本矢量。
具体地,所述路径成本矢量的维数为第三维数,其中,所述第三维数等于连接线的数量n,即所述路径成本矢量为n维向量。并且所述路径成本矢量是根据将所述路径成本矢量按照各连接线的布线子空间的维数得到划分若干子矢量计算得打。也就是说,在计算各第一连线方式对应的路径成本矢量时,需要对各路径成本矢量进行划分。相应的,所述根据各连接线对应的布线子空间计算各第一连线方式的路径成本矢量具体包括:
S21、获取各连接线对应的布线子空间的第一维数;
S22、将根据各连接线对应的第一维数将各第一连线方式拆分为若干子矢量;
S23、根据各子矢量中编码1对应的网格交点以形成的网格交点集合,并根据所各网格交点集合确定其对应的子矢量的路径长度;根据各路径长度生成路径成本矢量。
具体地,在获取到各第一维数后,根据各第一维数将第一连线方式划分为若干子矢量,即可以得到Si={C1|C2|...|Cn},其中,所述{C1|C2|...|Cn}中各子矢量的维数与各连接线的布线子空间的维数一一对应,即其中,kl为连接线el的布线子空间的维数。此外,在获取到子矢量后,每个子矢量Cl={c1,c2,...,ckl}包括有kl各网格交点,并选取Cl={c1,c2,...,ckl}中二进制编码为1的交点以得到交点集
进一步,在获取到交点集后,计算通过所述交点集中各交点的网格路径的最小值,将所述网格路径的最小值记为子矢量的路径长度||el||,其中,网格路径的最小值可以采用线性规划等现有算法求解,这里就不在赘述。此外,在获取到各子矢量的路径长度后,根据计算得到的各路径长度形成Si的路径成本矢量,其中,所述Si的路径成本矢量为 Fi={fi,1,fi,2,...,fi,n},fi,l=||el||为Si对Cl的路径成本。
S30、根据各路径成本矢量计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式。
具体地,所述适应度函数值为根据各路径成矢量计算得到,并且根据在获取到第一适应度函数值后,根据所述第一适应度函数值采用二进制遗传算法对所述第一连线方式构成的初始种群进行处理以得到第二连线方式,即得到对初始种群进行优化的优化种群,其中,所述采用二进制遗传算法对初始种群进行处理为对初始种群进行交叉、变异操作形成优化种群,所述优化种群的个体数与初始种群的个体数相同。当然,值得说明的,所述交叉、变异操作与现有技术相同,这里就不再赘述。
示例性地,所述根据各路径成本矢量计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式具体包括:
S31、对各路径成本矢量,计算其各维度的路径成本在所有路径成本矢量对应维度的路径成本中的路径成本排序值;
S32、根据各维度的路径成本排序值生成路径成本排序矢量,并各所述路径成本排序矢量计算各第一连续方式的第一适应度函数值;
S33、根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式。
具体地,对于任意路径成本矢量Fi={fi,1,fi,2,...,fi,n},获取其在所有路径矢量中的第1维上的成本排序值。也就是说,对于任意路径成本矢量A,获取其第1维上的路径成本,再获取其余所有路径成本矢量在第1维上的路径成本,并将获取到所有路径成本进行排序,以得到路径成本矢量A的第1 维上的路径成本在所有第1维上的路径成本中的排序值。在获取到第1维的路径成本排序值后,获取第2维的路径成本排序值,依次类推直至获取到第n维的路径成本排序值,所述n个路径成本排序值形成路径成本排序矢量Ri={ri,1,ri,2,...,ri,n},其中,ri,l=rank(fi,l),i=1,2,...,|ps|。此外,在获取到路径成本排序矢量后,根据所述路径成本排序矢量计算其对应的第一连线方式的第一适应度函数值,所述第一适应度函数值的表达式为:
S40、在第一连线方式和第二连线方式合并形成的集合中选取第一数量的第三连线方式,并分别计算各第三连线方式的第二适应度函数值。
具体地,在获取到各第二连线方式后,各第二连线方式构成进化种群ps*将各第二连线方式构成的集合与各第一连线方式构成的集合合并,以得第一连线方式和第二连线方式的合并集合pscomb,并且在第一连线方式和第二连线方式合并形成的集合中选取第一数量的第三连线方式。此外,在获取到第一数量的第三连线方式后,采用上述的适应度函数值的计算过程计算各第三连线方式的第二适应度值,
S50、根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接。
具体地,在计算各第三连线方式的第二适应度函数值,并选取第二适应度函数值小的第三连线方式作为连线方式,这样得到数字数字集成电路的标准单元布局后的连线方式。但是,在实际应用中,为了提高数字数字集成电路布局的连线优化性(总连线最短),在获取到所有第三连线方式后,可以将第三连线方式作为第一布局重复优化过程,以得到更加优化的第三连线方式。相应的,所述根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接具体包括:
获取所述第三连线方式对应的迭代次数,并将所述迭代次数与预设迭代次数进行比较;
当所述迭代次数等于所述预设迭代次数时,根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优布局,并根据所述最优连线方式将标准单元引脚连接;
当所述迭代次数小于所述预设迭代次数时,将所述第三连线方式作为第一连线方式,并返回至计算第一连线方式进的步骤直至迭代次数达到预设迭代次数。
具体地,所述预设迭代次数G为预先设置值,例如,所述预设迭代次数为50等。此外,迭代次数达到预设迭代次数后,选取最优的第三连线方式后,再计算第三连线方式的最短路径,并控制第三连线方式中的各连接线按照其对应的最短路径设置。相应的,所述根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并将根据所述最优连线方式将标准单元引脚连接具体包括:根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式;计算所述最优连线方式 中各连接线的最短网格路径,并根据各最短网格路径将连接标准单元引脚连接。其中,所述最短网格路径的计算过程与连线路径寻优构成中的最短路径的计算过程相同。
基于上述基于二进制编码的数字集成电路布线方法,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述实施例所述的基于二进制编码的数字集成电路布线方法中的步骤。
基于上述基于二进制编码的数字集成电路布线方法,本发明还提供了一种终端设备,如图5所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(Communications Interface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20 可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,上述存储介质以及终端设备中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于二进制编码的数字集成电路布线方法,所述数字集成电路包括一布置有复数个标准单元的基板,所述基板包括复数个连接线,其特征在于,所述方法包括:
创建预设数量的二进制矢量,并根据创建得到预设数量的二进制数量生成预设数量的第一连线方式;
根据各连接线对应的布线子空间计算各第一连线方式的路径成本矢量;
根据各路径成本矢量计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式;
在第一连线方式和第二连线方式合并形成的集合中选取第一数量的第三连线方式,并分别计算各第三连线方式的第二适应度函数值;
根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接。
2.根据权利要求1所述基于二进制编码的数字集成电路布线方法,其特征在于,所述创建预设数量的二进制矢量,并根据创建得到预设数量的二进制数量生成预设数量的第一连线方式具体包括:
获取各连接线对应的布线子空间的第一维数;
根据获取到所有第一维数计算第二维数,并根据所述第二维数创建预设数量的二进制矢量;
根据创建得到预设数量的二进制数量生成预设数量的第一连线方式,其中,所述二进制矢量的维数为第二维数。
3.根据权利要求1所述基于二进制编码的数字集成电路布线方法,其特征在于,所述根据各连接线对应的布线子空间计算各第一连线方式的路径成本矢量具体包括:
获取各连接线对应的布线子空间的第一维数;
将根据各连接线对应的第一维数将各第一连线方式拆分为若干子矢量;
根据各子矢量中编码1对应的网格交点以形成的网格交点集合,并根据所各网格交点集合确定其对应的子矢量的路径长度,以及根据各路径长度生成路径成本矢量。
4.根据权利要求2或3所述基于二进制编码的数字集成电路布线方法,其特征在于,所述获取各连接线对应的布线子空间的第一维数之前包括:
获取所述基板上各引脚的位置信息,并根据获取到所有位置信息将所述基板划分为若干网格;
获取各连接线连接的两个引脚对应的网格交点,并根据获取到的网格交点确定各连接线的二进制矢量,以及根据各二进制矢量确定各连接线对应的布线子空间。
5.根据权利要求1所述基于二进制编码的数字集成电路布线方法,其特征在于,所述根据各路径成本矢量计算各第一连线方式的第一适应度函数值,并根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式具体包括:
对各路径成本矢量,计算其各维度的路径成本在所有路径成本矢量对应维度的路径成本中的路径成本排序值;
根据各维度的路径成本排序值生成路径成本排序矢量,并各所述路径成本排序矢量计算各第一连续方式的第一适应度函数值;
根据各第一适应度函数值采用二进制遗传算法对各第一连线方式进行处理以得到各第二连线方式。
6.根据权利要求1所述基于二进制编码的数字集成电路布线方法,其特征在于,所述根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并将根据所述最优连线方式将标准单元引脚连接具体包括:
根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式;
计算所述最优连线方式 中各连接线的最短网格路径,并根据各最短网格路径将连接标准单元引脚连接。
7.根据权利要求1所述基于二进制编码的数字集成电路布线方法,其特征在于,所述根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优连线方式,并根据所述最优连线方式将标准单元引脚连接具体包括:
获取所述第三连线方式对应的迭代次数,并将所述迭代次数与预设迭代次数进行比较;
当所述迭代次数等于所述预设迭代次数时,根据计算得到的所有第二适应度函数值在所有第三连线方式中选取最优布局,并根据所述最优连线方式将标准单元引脚连接。
8.根据权利要求7所述基于二进制编码的数字集成电路布线方法,其特征在于,当所述迭代次数小于所述预设迭代次数时,将所述第三连线方式作为第一连线方式,并返回至计算第一连线方式进的步骤直至迭代次数达到预设迭代次数。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1~8任意一项所述的基于二进制编码的数字集成电路布线方法中的步骤。
10.一种终端设备,其特征在于,包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如权利要求1-8任意一项所述的基于二进制编码的数字集成电路布线方法中的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910381147.2A CN110096823B (zh) | 2019-05-08 | 2019-05-08 | 基于二进制编码的数字集成电路布线方法及终端设备 |
JP2021525348A JP7122785B2 (ja) | 2019-05-08 | 2019-06-20 | 二進コードによるデジタル集積回路の配線方法および端末装置 |
PCT/CN2019/091981 WO2020224036A1 (zh) | 2019-05-08 | 2019-06-20 | 基于二进制编码的数字集成电路布线方法及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910381147.2A CN110096823B (zh) | 2019-05-08 | 2019-05-08 | 基于二进制编码的数字集成电路布线方法及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110096823A CN110096823A (zh) | 2019-08-06 |
CN110096823B true CN110096823B (zh) | 2022-10-04 |
Family
ID=67447354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910381147.2A Active CN110096823B (zh) | 2019-05-08 | 2019-05-08 | 基于二进制编码的数字集成电路布线方法及终端设备 |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP7122785B2 (zh) |
CN (1) | CN110096823B (zh) |
WO (1) | WO2020224036A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110096823B (zh) * | 2019-05-08 | 2022-10-04 | 深圳职业技术学院 | 基于二进制编码的数字集成电路布线方法及终端设备 |
CN112257376B (zh) * | 2020-10-28 | 2023-01-31 | 海光信息技术股份有限公司 | 馈通路径的规划方法及装置、电子设备、存储介质 |
CN112290955B (zh) * | 2020-12-21 | 2021-03-30 | 北京智芯仿真科技有限公司 | 基于集成电路阻抗网络提取的网格节点编码方法及系统 |
CN116467997B (zh) * | 2023-05-10 | 2023-09-26 | 南京邮电大学 | 基于决策协商算法的多实例化分块布图下的顶层布线方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324796A (zh) * | 2013-06-21 | 2013-09-25 | 福州大学 | 一种大规模集成电路设计中的绕障直角斯坦纳树构造方法 |
CN103902774A (zh) * | 2014-03-31 | 2014-07-02 | 福州大学 | X结构下超大规模集成电路总体布线方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09181186A (ja) * | 1995-12-27 | 1997-07-11 | Fujitsu Ltd | 配線選択方法およびそれを実行する配線選択ツール |
WO2000038228A1 (fr) * | 1998-12-22 | 2000-06-29 | Fujitsu Limited | Appareil et procede de cablage brute et support d'enregistrement conservant un programme de cablage brute |
JP3647686B2 (ja) * | 1999-09-14 | 2005-05-18 | 東芝マイクロエレクトロニクス株式会社 | 半導体集積回路の設計方法および半導体集積回路の製造方法 |
JP3724996B2 (ja) * | 2000-02-14 | 2005-12-07 | 松下電器産業株式会社 | 半導体集積回路装置 |
US6957410B2 (en) * | 2000-12-07 | 2005-10-18 | Cadence Design Systems, Inc. | Method and apparatus for adaptively selecting the wiring model for a design region |
US7310793B1 (en) * | 2001-06-03 | 2007-12-18 | Cadence Design Systems, Inc. | Interconnect lines with non-rectilinear terminations |
JP2004158484A (ja) * | 2002-11-01 | 2004-06-03 | Sony Corp | 設計方法、設計装置、記録媒体、プログラム、および半導体集積回路 |
CN1258729C (zh) * | 2003-11-14 | 2006-06-07 | 清华大学 | 基于虚拟模块的大规模混合模式布图方法 |
JP4376670B2 (ja) * | 2004-03-24 | 2009-12-02 | 富士通株式会社 | スタイナー木処理装置、スタイナー木処理方法及びスタイナー木処理プログラム |
US8234615B2 (en) * | 2010-08-04 | 2012-07-31 | International Business Machines Corporation | Constraint programming based method for bus-aware macro-block pin placement in a hierarchical integrated circuit layout |
JP2012093824A (ja) * | 2010-10-25 | 2012-05-17 | Renesas Electronics Corp | レイアウト方法、システム及びプログラム |
CN104348479A (zh) * | 2013-07-31 | 2015-02-11 | 京微雅格(北京)科技有限公司 | 现场可编程逻辑门阵列芯片布局优化方法 |
CN110096823B (zh) * | 2019-05-08 | 2022-10-04 | 深圳职业技术学院 | 基于二进制编码的数字集成电路布线方法及终端设备 |
-
2019
- 2019-05-08 CN CN201910381147.2A patent/CN110096823B/zh active Active
- 2019-06-20 JP JP2021525348A patent/JP7122785B2/ja active Active
- 2019-06-20 WO PCT/CN2019/091981 patent/WO2020224036A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324796A (zh) * | 2013-06-21 | 2013-09-25 | 福州大学 | 一种大规模集成电路设计中的绕障直角斯坦纳树构造方法 |
CN103902774A (zh) * | 2014-03-31 | 2014-07-02 | 福州大学 | X结构下超大规模集成电路总体布线方法 |
Non-Patent Citations (1)
Title |
---|
"改进的遗传算法和分布估计算法求解TSP问题";晏雨;《中国优秀硕士学位论文全文数据库信息科技辑》;20140215;I140-74 * |
Also Published As
Publication number | Publication date |
---|---|
JP7122785B2 (ja) | 2022-08-22 |
WO2020224036A1 (zh) | 2020-11-12 |
JP2021532605A (ja) | 2021-11-25 |
CN110096823A (zh) | 2019-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096823B (zh) | 基于二进制编码的数字集成电路布线方法及终端设备 | |
US11675942B2 (en) | Optimization of parameters for synthesis of a topology using a discriminant function module | |
CN110083969B (zh) | 基于离散优化的数字集成电路布局方法及终端设备 | |
JP2020537788A (ja) | 汎用化画像処理の画像前処理 | |
JPWO2019234794A1 (ja) | 演算方法 | |
CN116151179B (zh) | 芯片设计的布局规划方法及相关设备 | |
Yin et al. | Parana: A parallel neural architecture considering thermal problem of 3d stacked memory | |
US20160063164A1 (en) | Method for determining by optimization a multi-core architecture | |
CN116227209A (zh) | 一种点云数据多维线性差值方法、终端设备及存储介质 | |
CN112257368B (zh) | 时钟布局方法、装置、eda工具及计算机可读存储介质 | |
US11675951B2 (en) | Methods and systems for congestion prediction in logic synthesis using graph neural networks | |
Tsota et al. | Guiding global placement with wire density | |
US11409934B2 (en) | Generation of hardware design using a constraint solver module for topology synthesis | |
Chen et al. | ABOUT THIS CHAPTER | |
US7698663B2 (en) | Apparatus, method and program for designing integrated circuit | |
CN112418413A (zh) | 存储数据的装置和方法以及执行分组卷积运算的装置 | |
US11416660B1 (en) | Automatic placement of analog design components with virtual grouping | |
CN114880983A (zh) | 基于聚类的h形时钟树主干节点坐标选择方法及系统 | |
Wang et al. | DUPRFloor: dynamic modeling and floorplanning for partially reconfigurable FPGAs | |
Zhao et al. | A Mixed-Height Standard Cell Placement Flow for Digital Circuit Block | |
Babu et al. | Comparision of hierarchial mixed-size placement algorithms for VLSI physical synthesis | |
CN111178529A (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
Pawanekar et al. | A nonlinear analytical optimization method for standard cell placement of vlsi circuits | |
Altwaijry et al. | A swarm random walk based method for the standard cell placement problem | |
Naouss et al. | Optimized Placement Approach on Reconfigurable FPGA |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |