版图修改方法、装置、电子设备及计算机可读存储介质与流程

文档序号:31170084发布日期:2022-08-17 09:17阅读:43来源:国知局
版图修改方法、装置、电子设备及计算机可读存储介质与流程

1.本技术涉及集成电路领域,具体而言,涉及一种版图修改方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.随着集成电路制造工艺的不断进步,晶体管最小沟道长度的尺寸不断缩小,集成电路的物理设计对于静态时序、电子迁移及电压降的要求逐渐变得更为严苛。
3.在7nm 及以下先进工艺制程中,由于传统的叠通孔形式对应每层金属只有单一通孔和电流通路,相对阻抗较大,易引起电压降过大问题。集成电路物理设计人员为减小电路的电阻、分担电流并改善电迁移问题,开始采用via pillar(通孔支柱)的方式将金属从低层连到高层形成“井型”结构,取代以往直接将多层通孔直接堆叠上去的方式。via pillar方式是在每一层多添加一些细金属条,这些细金属条分别与上下层彼此再通过通孔相连,最终连到高层金属再合并为一个金属条,而中间的层次类似于井型结构,从而产生多条电流通路,降低整体的电阻率。
4.但是,via pillar方式相比于传统的叠通孔方式,需要更多的绕线资源。如果集成电路的所有单元端口的绕线均采用via pillar的方式进行,将浪费大量的走线面积,并且使得绕线时间大大延长,甚至可能会带来物理设计规则被违反等问题。


技术实现要素:

5.本技术实施例的目的在于提供一种版图修改方法、装置、电子设备及计算机可读存储介质,用以解决上述问题。
6.本技术实施例提供了一种版图修改方法,包括:获取版图中所有添加有via pillar的单元端口;删除各所述单元端口中的目标单元端口的via pillar;其中,所述目标单元端口为:被判定为非必须添加via pillar的单元端口。
7.在上述实现过程中,通过将版图中非必须添加via pillar的目标单元端口的via pillar删除,这就使得集成电路中,并非所有单元端口的绕线均采用via pillar的方式进行,从而可以在一定程度上节约走线面积,并降低绕线时间,减少因via pillar带来的物理设计规则被违反的风险。
8.进一步地,获取版图中所有添加有via pillar的单元端口,包括:获取所述版图中的所有叠孔的叠孔信息;所述叠孔信息中包括所述叠孔的类型信息和所述叠孔的位置信息;根据各所述叠孔的类型信息,识别出所述叠孔中所有的所述via pillar;根据各所述via pillar的位置信息,从所述版图中确定出各所述via pillar对应的单元端口。
9.在上述实现过程中,通过获取版图中的所有叠孔的叠孔信息,从而根据各叠孔的类型信息,识别出叠孔中所有的via pillar,进而根据各via pillar的位置信息,即可从版图中确定出各via pillar对应的单元端口。该方式可以快速、准确的找到版图中所有添加有via pillar的单元端口,保证方案可正确实施。
10.进一步地,所述被判定为非必须添加via pillar的单元端口为:寄生参数小于预设的寄生参数标准,且连接非时钟网络的单元端口。
11.在上述实现过程中,通过将寄生参数小于预设的寄生参数标准,且连接非时钟网络的单元端口作为非必须添加via pillar的目标单元端口,这样,由于不会删除时钟网络的单元端口的via pillar,因此对版图中设计的集成电路的时序影响较小。而由于寄生参数会影像集成电路的速度、频率响应等特性,因此不删除寄生参数大于等于预设的寄生参数标准的单元端口的via pillar,也可以保证这些单元端口可以满足设计需求的电子迁移、电压降、时序等要求,从而不会造成版图中设计的集成电路不满足涉及需求。
12.进一步地,删除各所述单元端口中的目标单元端口的via pillar,包括:根据各第一目标via pillar的类型信息,确定各所述目标via pillar对应的寄生参数标准;所述第一目标via pillar为连接非时钟网络的单元端口的所述via pillar;删除各所述第一目标via pillar中,对应的单元端口的寄生参数小于该第一目标via pillar的寄生参数标准的各第二目标via pillar。
13.在上述实现过程中,通过从连接非时钟网络的各添加有via pillar的单元端口中,按照所添加的via pillar的类型信息确定其所对应的寄生参数标准,从而进行判断。这就可以实现对于不同类型的via pillar,按照不同的标准进行判断,从而降低出现删除via pillar后使得单元端口无法满足设计需求的情况。
14.进一步地,所述寄生参数包括以下至少之一:电阻寄生参数;电容寄生参数。
15.在上述实现过程中,通过电阻寄生参数和/或电容寄生参数,可以有效反映出单元端口的电子迁移情况、电压降情况等,从而基于单元端口的电阻寄生参数和/或电容寄生参数来与对应的寄生参数标准进行比较,可以准确确定出单元端口的via pillar是否可以删除。
16.进一步地,在删除各所述单元端口中的目标单元端口的via pillar之后,所述方法还包括:对所述目标单元端口进行普通绕线处理。
17.在上述实现过程中,通过对删除via pillar的目标单元端口进行普通绕线处理,可以保证集成电路的完整性。
18.进一步地,对所述目标单元端口进行普通绕线处理之后,所述方法还包括:对所述目标单元端口所连接的网络进行物理设计规则检查,并对违反所述物理设计规则的位置进行修复。
19.在上述实现过程中,通过对进行普通绕线处理之后的目标单元端口所连接的网络进行物理设计规则检查,并对违反物理设计规则的位置进行修复,从而可以进一步降低版图中所设计的集成电路存在物理设计规则被违反的风险。
20.本技术实施例还提供了一种版图修改装置,包括:获取模块,用于获取版图中所有添加有通孔支柱via pillar的单元端口;删除模块,用于删除各所述单元端口中的目标单元端口的via pillar;其中,所述目标单元端口为:被判定为非必须添加via pillar的单元端口。
21.本技术实施例还提供了一种电子设备,包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的一个或者多个程序,以实现上述任一种的版图修改方法。
22.本技术实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述任一种的版图修改方法。
附图说明
23.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
24.图1为本技术实施例提供的一种版图修改方法的流程示意图;图2为本技术实施例提供的一种获取版图中所有添加有via pillar的单元端口的流程示意图;图3为本技术实施例二提供的一种步骤1)的具体流程示意图;图4为本技术实施例二提供的一种步骤2)的具体流程示意图;图5为本技术实施例二提供的一种步骤3)的具体流程示意图;图6为本技术实施例提供的一种版图修改装置的结构示意图;图7为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
25.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
26.实施例一:为了解决目前将集成电路的所有单元端口的绕线均采用via pillar的方式进行后,将浪费大量的走线面积,并且使得绕线时间大大延长,甚至可能会出现物理设计规则被违反的问题,本技术实施例中提供了一种版图修改方法。可以参见图1所示,图1为本技术实施例中提供的一种版图修改方法的流程示意图,包括:s101:获取版图中所有添加有via pillar的单元端口。
27.需要说明的是,本技术实施例中所述的版图是指已经添加完毕via pillar后的集成电路版图。
28.还需要说明的是,本技术实施例中所述的单元端口是指集成电路中具有端口的硬件单元的端口。
29.在本技术实施例的一种可选实施方式中,为了获取版图中所有添加有via pillar的单元端口,可以采用图2所示的方式进行获取:s201:获取版图中的所有叠孔的叠孔信息。
30.应理解,在实际应用中,版图在配置好后,会记录有各叠孔的叠孔信息,包括但不限于叠孔的类型信息和叠孔的位置信息。
31.s202:根据各叠孔的类型信息,识别出叠孔中所有的via pillar。
32.在实际应用中,叠孔的类型信息可以是通过叠孔的命名体现的。例如,via pillar的类型名称为vppref*,普通叠孔的类型名称为via*。应理解,虽然via pillar由于贯通的金属层次不同,从而可能导致不同via pillar具有不同的命名,但是命名中均会带有
pillar。
44.示例性的,假设单元端口a、b、c为连接非时钟网络的单元端口,单元端口a、b、c添加的via pillar分别为第一类型的via pillar,第二类型的via pillar和第三类型的via pillar,则会将单元端口a的寄生参数与第一类型的via pillar对应的第一寄生参数标准进行比对,判断单元端口a的寄生参数是否小于该第一寄生参数标准,将单元端口b的寄生参数与第二类型的via pillar对应的第二寄生参数标准进行比对,判断单元端口b的寄生参数是否小于该第二寄生参数标准,将单元端口c的寄生参数与第三类型的via pillar对应的第三寄生参数标准进行比对,判断单元端口c的寄生参数是否小于该第三寄生参数标准。假设单元端口a的寄生参数小于该第一寄生参数标准,单元端口b的寄生参数等于该第二寄生参数标准,单元端口c的寄生参数大于该第三寄生参数标准,则单元端口a的via pillar即为第二目标via pillar,需要进行删除,单元端口b和单元端口c的via pillar即无需删除。
45.应理解,以上仅为本技术实施例中所示例的一种可选实施方案,在本技术实施例的其他示例方案中,筛选条件也可以是:单元端口的寄生参数小于预设的寄生参数标准。或者筛选条件也可以是:单元端口连接非时钟网络。具体的筛选条件可以由工程师根据实际需要进行设置,对此本技术实施例中不做限制。
46.需要说明的是,在本技术实施例中,寄生参数可以包括但不限于电阻寄生参数(即寄生电阻值)和/或电容寄生参数(即寄生电容值)。而由于通过电阻寄生参数和/或电容寄生参数,有效反映出单元端口的电子迁移情况、电压降情况等,从而可以准确确定出单元端口的via pillar是否可以删除。
47.可选的,当寄生参数包括多种不同类型的寄生参数时,相应的寄生参数标准中可以具有针对不同类型的寄生参数的标准值,从而可以将单元端口的不同类型的寄生参数分别与对应的寄生参数的标准值进行比对。在所有类型的寄生参数均小于相应的标准值时,才确定单元端口的寄生参数小于预设的寄生参数标准;否则,确定单元端口的寄生参数小于预设的寄生参数标准。这样可以严格控制所需进行via pillar删除的单元端口的数量,降低错误删除掉必要的via pillar的风险。
48.示例性的,寄生参数可以同时包括电阻寄生参数和电容寄生参数,从而相应的寄生参数标准中需要具有标准的电阻寄生参数值和标准的电容寄生参数值,从而可以分别将电阻寄生参数和标准的电阻寄生参数值进行比较,将电容寄生参数和标准的电容寄生参数值进行比较。当电阻寄生参数小于标准的电阻寄生参数值,且电容寄生参数小于标准的电容寄生参数值时,确定单元端口的寄生参数小于预设的寄生参数标准;否则,确定单元端口的寄生参数小于预设的寄生参数标准。
49.当然,在本技术实施例中,当寄生参数包括多种不同类型的寄生参数时,也可以在单元端口的任一类型的寄生参数小于相应的标准值时,就确定单元端口的寄生参数小于预设的寄生参数标准,从而降低非必要的via pillar被漏删的风险。
50.需要注意的是,在本技术实施例中,在删除各单元端口中的目标单元端口的via pillar之后,可以对目标单元端口进行普通绕线处理,从而保证集成电路的完整性。
51.示例性的,可以在via pillar的删除区域内通过绕线工具进行普通绕线处理。
52.在进行普通绕线处理之后,还可以对目标单元端口所连接的网络进行物理设计规
则检查(即进行drc检查),并对违反物理设计规则的位置进行修复。
53.示例性的,在进行普通绕线处理之后,可以使用物理设计工具分析版图中的整个集成电路的布局布线情况,以进行物理设计规则检查,并对违反物理设计规则的位置进行修复,从而进一步降低版图中所设计的集成电路存在物理设计规则被违反的风险。
54.可选的,在本技术实施例中,在确定出目标单元端口之后,可以不立刻删除目标单元端口的via pillar,而是对目标单元端口的via pillar进行标记(例如可以记录目标单元端口的via pillar的命名名称和位置),从而在确定出所有的目标单元端口后,对所有的目标单元端口的via pillar批量进行删除,然后再批量进行普通绕线处理,这样可以简化处理流程,避免多次调用绕线工具。
55.通过本技术实施例所提供的版图修改方法,可以将版图中非必须添加的via pillar删除,这就使得集成电路中,并非所有单元端口的绕线均采用via pillar的方式进行,从而可以在一定程度上节约走线面积,并降低绕线时间,减少因via pillar带来的物理设计规则被违反的风险。同时,通过本技术实施例的方案,可以将与时序关键路径相关的via pillar(即与时钟网络连接的单元端口的via pillar)进行保留,筛除非时钟路径上的非必须的via pillar,从而在释放大量绕线资源的同时,对静态时序不会产生影响。
56.实施例二:本实施例在实施例一的基础上,以一个具体的版图修改过程为例,为本技术做进一步示例说明。
57.本实施例的方案可以包括以下三个步骤:1)确定版图中所有添加有via pillar的单元端口。
58.2)确定非时钟网络上的非必要via pillar的名称及位置信息。
59.3)非必要via pillar的去除,绕线处理,及物理设计规则检查与修复。
60.对于上述步骤1),参见图3所示,可以获取版图中的所有叠孔信息(叠孔信息中包括叠孔的名称和位置),根据叠孔的名称是否属于via pillar的名称类型,确定出所有via pillar。获取在版图中使用的各via pillar的列表,统计对应已添加不同via pillar的单元端口的名称及端口信息。
61.对于上述步骤2),参见图4所示:可以遍历列表中已添加via pillar的单元端口。
62.判断各单元端口连接网络是否属于时钟网络。
63.若判断该单元端口属于时钟网络,说明为时序关键路径,保留该单元端口的via pillar。
64.若判断该单元端口不属于时钟网络(即连接的是非时钟网络),则进一步获取该单元端口的via pillar的类型,并根据该单元端口的电阻寄生参数和电容寄生参数,分别与该单元端口的via pillar的类型所对应的电阻寄生参数标准值和电容寄生参数标准值进行比较。
65.若电阻寄生参数小于电阻寄生参数标准值,且电容寄生参数小于电容寄生参数标准值,则确定该单元端口的via pillar属于非必须的via pillar,获取该单元端口连接的非时钟网络的名称及该单元端口的via pillar的名称和位置信息,并进行标记。否则,保留该单元端口的via pillar。
66.对于上述步骤3),参见图5所示:可以选中指定网络在标记的位置区域内的非必须的via pillar进行批量删除。删除后选中该网络使用绕线工具,对删除via pillar的区域进行普通绕线处理。在普通绕线处理后,使用物理设计工具进行物理设计规则检查,并对违反物理设计规则的位置进行修复。
67.上述方案设计简单,操作方便,能够快速通过筛除非时钟路径上的非必须的via pillar,从而释放了大量绕线资源,使得遵循设计规则的普通绕线得以进行,减轻了绕线压力,对静态时序不会产生影响,并且降低了由于绕线密度过高导致的设计规则违反的可能性。
68.实施例三:基于同一发明构思,本技术实施例中还提供了一种版图修改装置600。请参阅图6所示,图6示出了采用图1所示的方法的版图修改装置。应理解,装置600具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。装置600包括至少一个能以软件或固件的形式存储于存储器中或固化在装置600的操作系统中的软件功能模块。具体地:参见图6所示,装置600包括:获取模块601和删除模块602。其中:获取模块601,用于获取版图中所有添加有通孔支柱via pillar的单元端口;删除模块602,用于删除各所述单元端口中的目标单元端口的via pillar;其中,所述目标单元端口为:被判定为非必须添加via pillar的单元端口。
69.在本技术实施例的一种可行实施方式中,获取模块601具体用于,获取所述版图中的所有叠孔的叠孔信息;所述叠孔信息中包括所述叠孔的类型信息和所述叠孔的位置信息;根据各所述叠孔的类型信息,识别出所述叠孔中所有的所述via pillar;根据各所述via pillar的位置信息,从所述版图中确定出各所述via pillar对应的单元端口。
70.在本技术实施例的一种可行实施方式中,所述被判定为非必须添加via pillar的单元端口为:寄生参数小于预设的寄生参数标准,且连接非时钟网络的单元端口。
71.在上述可行实施方式中,删除模块602具体用于,根据各第一目标via pillar的类型信息,确定各所述目标via pillar对应的寄生参数标准;所述第一目标via pillar为连接非时钟网络的单元端口的所述via pillar;删除各所述第一目标via pillar中,对应的单元端口的寄生参数小于该第一目标via pillar的寄生参数标准的各第二目标via pillar。
72.在上述可行实施方式中,所述寄生参数包括以下至少之一:电阻寄生参数;电容寄生参数。
73.在本技术实施例的一种可行实施方式中,装置600还可以包括处理模块,用于在删除模块602删除各所述单元端口中的目标单元端口的via pillar之后,对所述目标单元端口进行普通绕线处理。
74.在上述可行实施方式中,处理模块还用于对所述目标单元端口进行普通绕线处理之后,对所述目标单元端口所连接的网络进行物理设计规则检查,并对违反所述物理设计规则的位置进行修复。
75.需要理解的是,出于描述简洁的考量,部分实施例一中描述过的内容在本实施例中不再赘述。
76.实施例四:本实施例提供了一种电子设备,参见图7所示,其包括处理器701和存储器702。其中:处理器701用于执行存储器702中存储的一个或多个程序,以实现上述实施例一和/或实施例二中的版图修改方法。
77.可以理解,图7所示的结构仅为示意,电子设备还可包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。
78.例如,电子设备还可以具有通信总线,以通过通信总线实现处理器701和存储器702之间的通信连接。或者,电子设备还可以具有外部通信接口,例如usb接口等,以实现数据的转存。此外,电子设备还可以具有显示屏等信息展示组件,以进行信息的显示。此外,电子设备还可以具有键盘等信息输入组件,以进行信息的输入。
79.可选的,该电子设备可以是诸如电脑、平板、服务器等具有数据处理能力,且可以安装版图设计软件的设备,但不作为限制。
80.本实施例还提供了一种计算机可读存储介质,如软盘、光盘、硬盘、闪存、u盘、sd(secure digital memory card,安全数码卡)卡、mmc(multimedia card,多媒体卡)卡等,在该计算机可读存储介质中存储有实现上述各个步骤的一个或者多个程序,这一个或者多个程序可被一个或者多个处理器执行,以实现上述实施例一和/或实施例二中业务分配设备所执行的版图修改方法,或实现上述实施例一和/或实施例二中处理节点所执行的版图修改方法的各步骤。在此不再赘述。
81.在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
82.另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
83.再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
84.在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
85.在本技术实施例的描述中,多个是指两个或两个以上。
86.在本技术实施例的描述中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
87.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领
域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1