CN112668258B - 一种广义对齐的布线方法 - Google Patents
一种广义对齐的布线方法 Download PDFInfo
- Publication number
- CN112668258B CN112668258B CN202011525358.8A CN202011525358A CN112668258B CN 112668258 B CN112668258 B CN 112668258B CN 202011525358 A CN202011525358 A CN 202011525358A CN 112668258 B CN112668258 B CN 112668258B
- Authority
- CN
- China
- Prior art keywords
- metal
- hole
- width
- point
- metal wire
- 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
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
一种广义对齐的布线方法,包括以下步骤:读取布线参数,标记当前图形,在源点和目标点之间搜索路径;获取路径搜索后连接源点和目标点的点链数据;以连续三个节点为一组,对每一组节点,判断三个节点的延伸方向;根据延伸方向对一组连接的金属线和通孔进行宽度对齐。本发明的广义对齐的布线方法,能够处理不同类型的金属线和通孔的连接,解决了现有技术中无法处理的通孔和布线连接时的对齐情况。
Description
技术领域
本发明涉及超大规模集成电路VLSI设计技术领域,特别是涉及一种满足minStepEdgeLength约束的EDA工具在布线过程中使金属线和通孔宽度对齐的方法。
背景技术
由于芯片规模的增大和工艺需求的增加,EDA工具成了芯片设计领域必不可少的辅助工具。在布线阶段EDA工具的首要目标是实现不同模块之间的连接关系,一般使用金属线和通孔进行连接。其中,金属线用于连接同层器件,通孔用于连接非同层器件。相互连接的金属线和通孔可能会有不同的宽度,但是一组相连的宽度不同的金属线和通孔,可能会违反minStepEdgeLength约束。
minStepEdgeLength约束是关于多个矩形组成的多边形的约束,它要求多边形的边长必须大于某个指定值。
现有技术中,如图2所示,两个矩形为两端相连的金属线,但它们的宽度不同。因此图2中所示的边长可能无法满足约束要求。如果将二者的宽度对齐,如图3所示,边长即可满足约束要求。金属线的两端有延伸,即组成金属线的两端点之外延申的一段金属,如图4所示。
对齐处理不仅要修改金属线的宽度,也要修改金属线的延伸。在扩大金属线的宽度之后,需要计算出新的延伸。如果金属线的一边为通孔时,延伸取值为通孔宽度的1/2;一段为金属线时,取值为金属线宽的1/2。当两条金属线宽度和方向不一致时,如果延伸不修改,会出现缺口,如图5所示。根据前一段金属线的宽度修改延伸之后的结果如图6所示。
目前已经有将一组金属线的宽度对齐的方法,但在实际使用中,金属线和通孔的数量和位置关系可能会有许多种不同组合,现有的自动对齐方法无法完全将一组金属线和通孔的宽度对齐,不能适用于更复杂的问题。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种广义对齐的布线方法,能够处理不同类型的金属线和通孔的连接,解决了现有技术中无法处理的通孔和布线连接时的对齐情况。
为实现上述目的,本发明提供的一种广义对齐的布线方法,包括以下步骤:
读取布线参数,标记当前图形,在源点和目标点之间搜索路径;
获取路径搜索后连接源点和目标点的点链数据;
以连续三个节点为一组,对每一组节点,判断三个节点的延伸方向;
根据延伸方向对一组连接的金属线和通孔进行宽度对齐。
进一步地,所述读取布线参数,标记当前图形,在源点和目标点之间搜索路径的步骤,还包括,源点和目标点向四周和上下进行扩展,若搜索到同时被源点和目标点扩展的点,构成一条路径,选取代价最小的路径作为最终路径。
进一步地,所述获取路径搜索后连接源点和目标点的点链数据的步骤,还包括,一段金属线或一个通孔分别包括两个点,每个点均有宽度属性,连接源点和目标点的点链中至少包括四个点。
进一步地,所述根据延伸方向对一组连接的金属线和通孔进行宽度对齐的步骤,还包括,对一组连接的金属线和通孔,将宽度小的金属线或通孔的宽度扩大为宽度大的金属线或通孔的宽度。
更进一步地,还包括,
根据通孔前后两段的金属线,判断是否修改通孔金属部分;
获取通孔的宽度,当金属线为水平走线时,取通孔的高作为宽度,当金属线为竖直走线时,取通孔的宽作为宽度;
修改后进行设计规则检查,若没有违反设计规则,保留修改结果,否则将布线回退到修改之前。
更进一步地,所述根据通孔前后两段的金属线,判断是否修改通孔金属部分的步骤,还包括,
当通孔前后的金属为同一方向时,通孔的方向与金属线方向一致,根据前后两端金属线的宽度修改通孔的宽度;
当通孔前后的金属线方向不同时,根据后一段金属线宽度修改通孔的宽度。
更进一步地,还包括,
当金属线前后均有通孔时,获取第一个通孔的宽度,如果大于金属线的宽度,扩大金属线的宽度进行对齐;
当通孔两侧均有金属线时,则两段金属线均与通孔对齐;
当一段金属线与一个通孔相连时,将与通孔相连的金属线与通孔对齐;
修改金属线的延伸,进行设计规则检查,如果没有违反设计规则,保留修改结果,否则将布线回退到修改之前。
更进一步地,所述当通孔两侧均有金属线时,则两段金属线均与通孔对齐的步骤,还包括,
判断通孔两侧的金属线方向是否一致;
如果通孔前后两段金属线的方向一致,根据通孔数据判断是否修改通孔金属部分;
如果通孔前后两段金属线的方向不一致,根据第二段金属线修改通孔金属部分。
为实现上述目的,本发明还提供一种电子设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如上文所述的广义对齐的布线方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序运行时执行如上文所述的广义对齐的布线方法的步骤。
本发明的广义对齐的布线方法、电子设备及计算机可读存储介质,具有以下有益效果:
1)解决了现有技术中无法处理的通孔和布线连接时的对齐情况。
2)覆盖场景多,可以适用于多种不同位置关系的通孔和金属线。
3)可以处理不同类型的金属线和通孔的连接,在不违反DRC的情况下,通过后处理解决,方案简洁,易于理解。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的广义对齐的布线方法流程图;
图2为根据本发明的背景技术中宽度不同示意图;
图3为根据本发明的背景技术中宽度对齐示意图;
图4为根据本发明的背景技术中金属线延伸示意图;
图5为根据本发明的背景技术中金属线未延伸示意图;
图6为根据本发明的背景技术中修改金属线延伸示意图;
图7为根据本发明的实施例一通孔的宽度与布线方向关系示意图;
图8为根据本发明的实施例一通孔与金属线方向一致示意图;
图9为根据本发明的实施例一通孔与金属线方向不一致示意图;
图10为根据本发明的实施例一通孔-金属线-通孔的布线处理结果示意图;
图11为根据本发明的实施例一通孔-金属线-金属线的布线处理结果示意图;
图12为根据本发明的实施例一通孔前后金属线方向一致的布线处理结果示意图;
图13为根据本发明的实施例一通孔前后金属线方向不一致的布线处理结果示意图;
图14为根据本发明的实施例一金属线-金属线-通孔的布线处理结果示意图;
图15为根据本发明的实施例一点链路径示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为根据本发明的广义对齐的布线方法流程图,下面将参考图1,对本发明的广义对齐的布线方法进行详细描述。
首先,在步骤101,读取工艺数据和约束,初始化布线数据,对当前图形进行标记,在源点和目标点之间进行搜索。
优选地,源点和目标点均向四周和上下进行扩展,如果某个点同时被源点和目标点扩展,说明找到了一条可行的路径。对于所有这样的可行路径,选取代价最小的路径作为最终路径。
在步骤102,获取搜索之后连接源点和目标点的点链。
优选地,一段金属线或一个通孔均由两个点组成,每个点均有宽度属性,因此要求连接源点和目标点的点链中至少有四个点。
在步骤103,从头开始遍历点链,以三个节点为一组(节点即为组成金属线或通孔的点)进行处理,一次处理完成后,后移一个点再次处理一组节点,直至到点的尾部。
在步骤104,对每一组节点,判断三个节点的延伸方向。
优选地,延伸方向包括有kX,kY,kZ三种可能。当节点方向为kX和kY时,说明该节点处有一段金属线;当节点方向为kZ时,说明该节点处有一个通孔。
在步骤105,根据延伸方向对一组连接的金属线和通孔进行宽度对齐。
优选地,对一组连接的金属线和通孔,需要将宽度较小的金属线或通孔的宽度扩大为宽度较大的金属线或通孔的宽度。
优选地,金属线的宽度即为金属线第一个点的宽度,通孔的宽度与组成通孔前后两段金属有关,如果金属宽度较大,通孔的enclosure(通孔上的金属部分)也会扩大。
优选地,通孔的宽度计算与方向有关。如图7所示,方向为kX时,宽度为width1;方向为kY时,宽度为width2。因此在通孔的宽度计算和修改与通孔前后的两段金属有关。
本实施例中,对齐操作之前先处理通孔。首先根据通孔前后两段(或者一段)的金属线,判断通孔是否需要修改处理。如果通孔的enclosure宽度小于金属线的宽度,扩大enclosure。这里修改通孔是为了满足minStepEdgeLength约束。处理之后获取通孔的宽度。金属线为水平走线时,取通孔的高作为宽度;金属线竖直走线时,取通孔的宽作为宽度。修改之后进行DRC检查,如果没有引起DRC,保留修改结果;否则将布线回退到修改之前。
本实施例中,如图8所示,当通孔前后的金属为同一方向时,此时通孔的方向与金属线方向一致,通孔的宽度与前后两端金属线的宽度有关。
本实施例中,如图9所示,当通孔前后的金属线方向不同时,此时通孔的宽度仅与后一段金属线宽度有关。
优选地,将金属线的宽度与通孔的宽度对齐。该步骤中,对齐操作主要是为了满足minStepEdgeLength约束。
优选地,在金属线前后均有通孔的情况下,取第一个通孔的宽度对齐;在通孔两侧均有金属线的情况下,则两段金属线均需要与通孔对齐;在一段金属线与一个通孔相连的情况下,将与通孔相连的金属线与通孔对齐。修改金属线的延伸。修改之后进行DRC检查,如果没有引起DRC,保留修改结果;否则将布线回退到修改之前。
本实施例中,根据一段布线是金属线或者通孔,四个节点对应的一组布线可能的结果为有8种:VVV,VVW,VWV,VWW,WVV,WVW,WWV,WWW。(V代表通孔,W代表金属线)其中VVV,VVW,WVV这三种情况不可能存在,因为通孔要连接两端的金属线或者金属器件。而WWW属于数段金属线连接的情况,无须进行处理。因此要处理的情况仅有四种。
本实施例中,四种情况的分类处理方法包括:
a)针对VWV,获取第一个通孔的宽度,如果大于金属线的宽度,扩大金属线的宽度,没有引起DRC时保留,否则返回。同时修改金属线的延伸。
b)针对VWW,获取第一个通孔的宽度,如果大于金属线的宽度,扩大金属线的宽度;同时需要根据第二段金属线的宽度设置延伸。
c)针对WVW,由于点链方向可能是从左到右,也可能是从右到左,因此要确认第一段和第二段的金属线是否和通孔对齐。其中需要判断通孔两侧的金属线方向是否一致。如果通孔前后两段金属线的方向一致,先确定通孔数据,是否要进行后处理。如果通孔前后两段金属线的方向不一致,只需处理第二段金属线与通孔enclosure不对齐的情况,将金属线宽度扩大。
d)针对WWV,此场景下只需确认通孔的enclosure与第二段金属线是否对齐,如果没有对齐,扩大金属线的宽度进行DRC检查,如果没有DRC,保留修改。
本实施例中,针对点链中可能存在的上述情况进行分类分析,并进行宽度对齐操作。
下面结合一具体实施例对本发明的广义对齐的布线方法做进一步的说明。
图15为根据本发明的实施例一通孔出引脚与同层出引脚的结果示意图。
1.读取工艺数据,读取约束,初始化布线数据,标记图形,进行迷宫搜索,在源点a和目标点d间找到一条可行的路径,并得到点链。
2.读取点链数据,设点链为abcd。其四个点为a,b,c,d。a,b为m1层,c,d为m2层。一个通孔打在bc之间。金属线ab为水平方向,cd也为水平方向,为WVW场景。如图15所示。
3.进行后处理,获取金属线ab和金属线cd的宽度,也即点a和点c的宽度,得到通孔宽度。如果通孔宽度大于第一段金属线和第二段金属线,将这两段金属线宽度扩大与通孔对齐,再进行DRC检查,如果没有DRC,保留修改,否则回退。
本发明的一个实施例中,还提供一种电子设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如上文所述的广义对齐的布线方法的步骤。
本发明的一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序运行时执行如上文所述的广义对齐的布线方法的步骤。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种广义对齐的布线方法,其特征在于,包括以下步骤:
读取布线参数,标记当前图形,在源点和目标点之间搜索路径;
获取路径搜索后连接源点和目标点的点链数据;
所述获取路径搜索后连接源点和目标点的点链数据的步骤,还包括,一段金属线或一个通孔分别包括两个点,每个点均有宽度属性,连接源点和目标点的点链中至少包括四个点;
以连续三个节点为一组,对每一组节点,判断三个节点的延伸方向;
根据所述延伸方向对一组连接的金属线和通孔进行宽度对齐;
所述根据延伸方向对一组连接的金属线和通孔进行宽度对齐的步骤,还包括,对一组连接的金属线和通孔,将宽度小的金属线或通孔的宽度扩大为宽度大的金属线或通孔的宽度。
2.根据权利要求1所述的广义对齐的布线方法,其特征在于,所述读取布线参数,标记当前图形,在源点和目标点之间搜索路径的步骤,还包括,源点和目标点向四周和上下进行扩展,若搜索到同时被源点和目标点扩展的点,构成一条路径,选取代价最小的路径作为最终路径。
3.根据权利要求1所述的广义对齐的布线方法,其特征在于,还包括,
根据通孔前后两段的金属线,判断是否修改通孔金属部分;
获取通孔的宽度,当金属线为水平走线时,取通孔的高作为宽度,当金属线为竖直走线时,取通孔的宽作为宽度;
修改后进行设计规则检查,若没有违反设计规则,保留修改结果,否则将布线回退到修改之前。
4.根据权利要求3所述的广义对齐的布线方法,其特征在于,所述根据通孔前后两段的金属线,判断是否修改通孔金属部分的步骤,还包括,
当通孔前后的金属为同一方向时,通孔的方向与金属线方向一致,根据前后两端金属线的宽度修改通孔的宽度;
当通孔前后的金属线方向不同时,根据后一段金属线宽度修改通孔的宽度。
5.根据权利要求1所述的广义对齐的布线方法,其特征在于,还包括,
当金属线前后均有通孔时,获取第一个通孔的宽度,如果大于金属线的宽度,扩大金属线的宽度进行对齐;
当通孔两侧均有金属线时,则两段金属线均与通孔对齐;
当一段金属线与一个通孔相连时,将与通孔相连的金属线与通孔对齐;
修改金属线的延伸,进行设计规则检查,如果没有违反设计规则,保留修改结果,否则将布线回退到修改之前。
6.根据权利要求5所述的广义对齐的布线方法,其特征在于,所述当通孔两侧均有金属线时,则两段金属线均与通孔对齐的步骤,还包括,
判断通孔两侧的金属线方向是否一致;
如果通孔前后两段金属线的方向一致,根据通孔数据判断是否修改通孔金属部分;
如果通孔前后两段金属线的方向不一致,根据第二段金属线修改通孔金属部分。
7.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行权利要求1至6任一项所述的广义对齐的布线方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序运行时执行权利要求1至6任一项所述的广义对齐的布线方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011525358.8A CN112668258B (zh) | 2020-12-22 | 2020-12-22 | 一种广义对齐的布线方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011525358.8A CN112668258B (zh) | 2020-12-22 | 2020-12-22 | 一种广义对齐的布线方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112668258A CN112668258A (zh) | 2021-04-16 |
CN112668258B true CN112668258B (zh) | 2022-05-24 |
Family
ID=75407431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011525358.8A Active CN112668258B (zh) | 2020-12-22 | 2020-12-22 | 一种广义对齐的布线方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112668258B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1383082A (zh) * | 2001-04-13 | 2002-12-04 | 株式会社东芝 | 集成电路布局布线设计和设计程序以及集成电路制造方法 |
CN105069215A (zh) * | 2015-07-31 | 2015-11-18 | 中国人民解放军国防科学技术大学 | 一种基于宽线的双轨信号布线方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01120673A (ja) * | 1987-11-04 | 1989-05-12 | Nec Corp | 自動配線方法 |
CN100592494C (zh) * | 2007-04-20 | 2010-02-24 | 中芯国际集成电路制造(上海)有限公司 | 修正接触孔金属覆盖层布图设计的方法 |
TW201222304A (en) * | 2010-11-30 | 2012-06-01 | Inventec Corp | Method for setting width of printed circuit board trace |
US8612914B2 (en) * | 2011-03-23 | 2013-12-17 | Synopsys, Inc. | Pin routing in standard cells |
US8607172B2 (en) * | 2011-10-06 | 2013-12-10 | Taiwan Semiconductor Manufacturing Company, Ltd. | Integrated circuits and methods of designing the same |
CN102663170B (zh) * | 2012-03-21 | 2014-08-20 | 上海复旦微电子集团股份有限公司 | 集成电路版图设计最小通孔数目设计规则的检查方法 |
CN102663169B (zh) * | 2012-03-21 | 2014-12-17 | 上海复旦微电子集团股份有限公司 | 集成电路版图设计规则检查的方法及其系统 |
CN103500721B (zh) * | 2013-10-21 | 2016-01-27 | 上海华力微电子有限公司 | 量测通孔与下层金属线对准偏差的方法 |
US10790273B2 (en) * | 2017-12-07 | 2020-09-29 | Samsung Electronics Co., Ltd. | Integrated circuits including standard cells and method of manufacturing the integrated circuits |
CN109920787B (zh) * | 2017-12-12 | 2021-05-25 | 中芯国际集成电路制造(北京)有限公司 | 互连结构的设计方法、装置及制造方法 |
CN111125981B (zh) * | 2019-12-26 | 2022-06-21 | 北京华大九天科技股份有限公司 | 一种集成电路vlsi的布线方法 |
CN111125993B (zh) * | 2019-12-30 | 2022-05-24 | 北京华大九天科技股份有限公司 | 一种满足最小Cut数量约束的布线方法 |
CN110968983B (zh) * | 2019-12-30 | 2022-05-24 | 北京华大九天科技股份有限公司 | 一种交互式布线方法 |
CN111651958B (zh) * | 2020-05-22 | 2022-06-21 | 深圳华大九天科技有限公司 | 一种集成电路版图中遵循布线格点的交互式布线方法 |
-
2020
- 2020-12-22 CN CN202011525358.8A patent/CN112668258B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1383082A (zh) * | 2001-04-13 | 2002-12-04 | 株式会社东芝 | 集成电路布局布线设计和设计程序以及集成电路制造方法 |
CN105069215A (zh) * | 2015-07-31 | 2015-11-18 | 中国人民解放军国防科学技术大学 | 一种基于宽线的双轨信号布线方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112668258A (zh) | 2021-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9251299B1 (en) | Methods, systems, and articles of manufacture for associating track patterns with rules for electronic designs | |
CN116070575B (zh) | 一种芯片布线优化方法及软件系统 | |
US10192021B1 (en) | Generating and inserting metal and metal etch shapes in a layout to correct design rule errors | |
TW201520802A (zh) | 以知識為基礎之類比電路佈局產生器 | |
US20230036710A1 (en) | Technology-independent line end routing | |
CN112685991B (zh) | 一种满足约束的布线方法 | |
CN112800716A (zh) | 一种集成电路版图布线中线网开路检测方法 | |
CN114386356A (zh) | 芯片设计的布线方法及装置、设备、存储介质 | |
CN112668258B (zh) | 一种广义对齐的布线方法 | |
US10452806B1 (en) | Generating a colored track pattern of non-uniform width from a sparse set of tracks | |
US7765510B2 (en) | Method of searching for wiring route including vias in integrated circuit | |
JP2008021001A (ja) | パターン修正装置、パターン最適化装置及び集積回路設計装置 | |
US7010770B2 (en) | Method of wide wire identification | |
CN115293097B (zh) | 一种集成电路版图布线中满足最小通孔间距约束的布线方法 | |
CN115221835B (zh) | 一种芯片设计的物理验证方法及装置 | |
KR100896801B1 (ko) | 반도체 배선 경로 설정 방법 및 이를 실행하기 위한프로그램을 기록한 기록 매체 | |
US6968521B2 (en) | Method, apparatus and program product for automatic placement and routing of integrated circuit | |
JP2017120514A (ja) | 半導体設計支援装置、半導体設計支援方法、及び半導体設計支援プログラム | |
CN110083942B (zh) | 基于物理信息的信号电迁移批量修复方法、系统及介质 | |
US8151232B2 (en) | Repeater driven routing methodology | |
US8843869B1 (en) | Via insertion in integrated circuit (IC) designs | |
US10733351B1 (en) | Generating width spacing patterns for multiple patterning processes using instances | |
US6567965B2 (en) | Electronic parts placement method and a computer readable medium having an electronic parts placement program | |
US7284223B2 (en) | Wiring method, program, and apparatus | |
CN115496025B (zh) | 一种可编程逻辑器件的自动优化布局方法及设备 |
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 |