CN107633129B - 一种保持原有物理布线拓扑的大线网分裂方法 - Google Patents
一种保持原有物理布线拓扑的大线网分裂方法 Download PDFInfo
- Publication number
- CN107633129B CN107633129B CN201710831764.9A CN201710831764A CN107633129B CN 107633129 B CN107633129 B CN 107633129B CN 201710831764 A CN201710831764 A CN 201710831764A CN 107633129 B CN107633129 B CN 107633129B
- Authority
- CN
- China
- Prior art keywords
- point
- physical wiring
- layout
- original physical
- strategy
- 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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种保持原有物理布线拓扑的大线网分裂方法,包括步骤:将大线网转换为树型拓扑结构,并找到策略点位置;找出策略点位置的增量布局合法化点位置;找到原有物理布线的最佳切割点位置;在增量布局合法化点位置插入缓冲器单元,并与最佳切割点位置进行物理连接。本发明的保持原有物理布线拓扑的大线网分裂方法,通过在增量布局合法化点位置插入缓冲器单元,将大线网分裂为满足要求的若干子线网,并且在最佳切割点连接新插入的缓冲器单元,充分复用线网原有连线拓扑及物理走线,能够在最大程度上减小绕线长度,进而保证优化方案的时延预估与物理实现的一致性。
Description
技术领域
本发明涉及EDA设计技术领域,特别是涉及在ECO优化阶段修正违反设计规则的大线网的过程。
背景技术
为了保证集成电路可以正常工作,需要通过设计规则检查,以确保设计性能满足各种规则的要求。集成电路设计中,若出现“大线网”,则出现不满足设计规则中的时延约束的概率会显著增大。当某一个线网出现连线长度过长或者驱动负载数目过多的情况时,就会干扰信号传递,影响电路的正常工作。
线网分裂,即通过插入缓冲器单元来驱动分段线网,是一种常见的有效处理大线网的方法。通常情况下,在插入缓冲器单元后,会重新进行驱动单元到缓冲器单元、缓冲器单元到负载单元的物理连线。但是,在28nm及以下的先进工艺条件下,物理布线对时延计算的影响越来越大。并且同样的线网连接关系,在不同的物理走线方式下,时序延迟会相差很多,这就造成了传统优化方案的时延预估值和物理实现后得到结果的时延真实值相差很大。甚至在极端情况下,预计可以成功处理的时延问题,在重新布线后仍然违反了时延约束。因此,如何选择合适的位置进行大线网的分裂,并准确计算时延,成为了关键问题。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种保持原有物理布线拓扑的大线网分裂方法,针对长度超长或者负载数目过多的违反设计规则的大线网情况,在进行时序修正的过程中尽可能复用原有的物理布线连接关系及走线形状,从而避免优化方案在物理实施阶段出现不必要的绕线,确保时序计算的预估方案与最终物理实现得到的结果具有良好的一致性。
为实现上述目的,本发明提供的保持原有物理布线拓扑的大线网分裂方法,包括以下步骤:
(1)将大线网转换为树型拓扑结构,并找到策略点位置;(2)找出策略点位置的增量布局合法化点位置;(3)找到原有物理布线的最佳切割点位置;(4)在增量布局合法化点位置插入缓冲器单元,并与最佳切割点位置进行物理连接。
进一步地,所述步骤(1)是,利用分段线性化的方法,将大线网转换为树型拓扑结构,并根据设计规则,找到策略点位置。
进一步地,所述利用分段线性化的方法,将大线网转换为树型拓扑结构进一步包括以下步骤:
(31)将物理走线上的分叉点作为虚拟树节点,驱动单元、虚拟树节点以及负载单元将线网划分成为若干个线段;(32)在若干个线段上,根据设计规则的约束,取点作为可能的策略点,驱动单元、虚拟树节点、负载单元以及可能的策略点构成了一个树型拓扑结构。
进一步地,步骤(1)中所述找到策略点位置是,自底向上搜索树型拓扑结构,若出现不满足设计规则的情况,则将搜索到的树节点标记为策略点,获得策略点位置。
所述步骤(2)进一步包括以下步骤:
根据版图的物理信息,在增量布局合法化范围的单元行内,找到距离策略点位置最近的可以容纳缓冲器单元大小的单元位置,作为插入缓冲器单元的增量布局合法化点位置。
进一步地,所述步骤(3)是,利用投影法,从增量布局合法化点位置出发,沿着X方向或Y方向往原有物理布线上进行投影,得到与原有物理布线的交点,找到原有物理布线的最佳切割点位置。
本发明的保持原有物理布线拓扑的大线网分裂方法,通过在增量布局合法化点位置插入缓冲器单元,将大线网分裂为满足要求的若干子线网,并且在最佳切割点连接新插入的缓冲器单元,充分复用线网原有连线拓扑及物理走线,能够在最大程度上减小绕线长度,进而保证优化方案的时延预估与物理实现的一致性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的保持原有物理布线拓扑的大线网分裂方法流程图;
图2为根据本发明构建树型拓扑结构及查找策略点位置的状态示意图;
图3为根据本发明的寻找增量布局合法化点位置的状态示意图;
图4为根据本发明的查找最佳切割点位置的状态示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为根据本发明的保持原有物理布线拓扑的大线网分裂方法流程图,下面将参考图1,对本发明的保持原有物理布线拓扑的大线网分裂方法进行详细描述。
在步骤101,利用“分段线性化”的方法,将大线网转换为树型拓扑结构,并根据设计规则,找到策略点位置。
该步骤中,首先,读入大线网的连接关系及物理走线信息;
其次,利用“分段线性化”的方法,从线网的驱动单元(Driver)出发,沿着物理走线方向,将遇到的分叉点均创建为虚拟树节点,直至到达各个负载单元(Load),驱动单元、虚拟树节点以及负载单元将线网划分成为若干个线段;
然后,在这些若干个线段上,根据设计规则的约束,每隔一定长度取点作为可能的策略点位置,驱动单元、虚拟树节点、负载单元以及可能的策略点构成了一个树型拓扑结构;
最后,从树型拓扑结构的叶子节点出发,自底向上搜索树型拓扑结构,若出现不满足设计规则的情况,则将搜索到的树节点标记为策略点,直至搜索完整个树型拓扑结构,找到全部的策略点位置。
虽然从理论上讲,在大线网的任意位置都可以插入缓冲器单元进行分裂。但是利用“分段线性化”的方法,把大线网转化为树型拓扑结构,能够把解决方案的解空间缩小到若干少数个离散点的检查,从而大大的简化了问题,加快了优化速度。
在步骤102,根据增量布局合法化范围,找出策略点位置的增量布局合法化点位置。
该步骤中,考虑版图的物理信息,以策略点位置为中心,选定增量布局合法化范围,在增量布局合法化范围的单元行内,找到距离策略点位置最近的可以容纳缓冲器单元大小的单元位置,作为插入缓冲器单元的增量布局合法化点位置。
该步骤中,选定增量布局合法化范围,是为了在策略点位置附近找到不与现有单元位置发生冲突的增量布局合法化点位置。
在步骤103,从增量布局合法化点位置出发,找到原有物理布线的最佳切割点位置。
该步骤中,可以利用“投影法”,从增量布局合法化点位置出发,沿着X方向或Y方向往原有物理布线上进行投影,得到与原有物理布线的交点,从而确定出最佳切割点位置。
前面确定的增量布局合法化点位置,可能会造成物理连线的绕线,不一定是最佳方案。尤其是当增量布局合法化点位置位于物理布线拥挤区域时,往往会带来时延估算的较大偏差。因此,为了减少对原有物理布线的影响,尽可能的复用原有物理布线,需要找到线网布线的最佳切割点位置,以便用于连接新插入的缓冲器单元。
在步骤104,在增量布局合法化点位置插入缓冲器单元,并与最佳切割点位置进行物理连接。
该步骤中,物理工具根据记录的原有物理布线信息,在最佳切割点位置将连接新插入的缓冲器单元与原有物理布线,完成大线网分裂,可以有效避免不必要的绕线,保证优化方案和最终物理实施的一致性。
下面结合具体的实施例,进一步阐述本发明的保持原有物理布线拓扑的大线网分裂方法的技术方案。
图2为根据本发明构建树型拓扑结构及查找策略点位置的状态示意图。图2中所示的Driver单元驱动着三个负载单元:Load_X、Load_Y和Load_Z,并且由于连线长度过长造成了设计规则的违反。因此,可以采用本发明的保持原有物理布线拓扑的大线网分裂方法进行大线网分裂。
第一步:
首先,利用“分段线性化”的方法,找到线网连接的分叉点(节点2和节点4)作为虚拟树节点,并通过检查设计规则,找到可能的策略点(节点1和节点3),从而构成了图2中所示的树型拓扑结构。
然后,从树型拓扑结构底部的三个负载单元出发,自底向上遍历树型拓扑结构,发现在节点3的位置出现设计规则的违反,因此确定节点3作为策略点位置。
第二步:
图3为根据本发明的寻找增量布局合法化点位置的状态示意图。如图3所示,在节点3的附近检查物理版图,在附近的单元行中找到可以容纳缓冲器单元大小的空间(如图3中左上角位置的单元格)作为增量布局合法化点位置。将缓冲器单元插入到增量布局合法化点位置,可以避免和现有单元位置发生冲突。
第三步:
图4为根据本发明的查找最佳切割点位置的状态示意图。如图4所示,从增量布局合法化点位置出发,沿着Y方向投影到原有物理布线上,找到不同于原始切割点位置的最佳切割点位置,并记录相关的物理布线信息。
第四步:
在增量布局合法化点位置插入缓冲器单元,将原来违反设计规则的大线网分裂为两段子线网,满足了设计规则的要求,而根据记录的相关的物理布线信息,采用物理工具,将原有物理布线从最佳切割点与新加入的缓冲器单元相连接,使原有的大部分物理线网走线都得到了复用。
本发明的保持原有物理布线拓扑的大线网分裂方法,通过在增量布局合法化点位置插入缓冲器单元,将大线网分裂为满足要求的若干子线网,并且在最佳切割点连接新插入的缓冲器单元,充分复用线网原有连线拓扑及物理走线,能够在最大程度上减小绕线长度,进而保证优化方案的时延预估与物理实现的一致性。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种保持原有物理布线拓扑的大线网分裂方法,其特征在于,包括以下步骤:
(1)将大线网转换为树型拓扑结构,并找到策略点位置;
(2)找出策略点位置的增量布局合法化点位置;
(3)找到原有物理布线的最佳切割点位置;
(4)在增量布局合法化点位置插入缓冲器单元,并与最佳切割点位置进行物理连接;
所述大线网,是指出现连线长度过长或者驱动负载数目过多的的线网;
所述策略点,是指不满足设计规则的树节点;
所述增量布局合法化点位置,是指距离策略点位置最近的可以容纳缓冲器单元大小的单元位置;
所述步骤(1),进一步包括,从线网的驱动单元出发,沿着物理走线方向,将遇到的分叉点均创建为虚拟树节点,直至到达各个负载单元,驱动单元、虚拟树节点以及负载单元将线网划分成为若干个线段;然后,在这些若干个线段上,根据设计规则的约束,每隔一定长度取点作为可能的策略点位置,驱动单元、虚拟树节点、负载单元以及可能的策略点构成了一个树型拓扑结构。
2.根据权利要求1所述的保持原有物理布线拓扑的大线网分裂方法,其特征在于,所述步骤(2)进一步包括以下步骤:
根据版图的物理信息,在增量布局合法化范围的单元行内,找到距离策略点位置最近的可以容纳缓冲器单元大小的单元位置,作为插入缓冲器单元的增量布局合法化点位置。
3.根据权利要求1所述的保持原有物理布线拓扑的大线网分裂方法,其特征在于,所述步骤(3)是,利用投影法,从增量布局合法化点位置出发,沿着X方向或Y方向往原有物理布线上进行投影,得到与原有物理布线的交点,找到原有物理布线的最佳切割点位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710831764.9A CN107633129B (zh) | 2017-09-15 | 2017-09-15 | 一种保持原有物理布线拓扑的大线网分裂方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710831764.9A CN107633129B (zh) | 2017-09-15 | 2017-09-15 | 一种保持原有物理布线拓扑的大线网分裂方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107633129A CN107633129A (zh) | 2018-01-26 |
CN107633129B true CN107633129B (zh) | 2020-04-07 |
Family
ID=61101328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710831764.9A Active CN107633129B (zh) | 2017-09-15 | 2017-09-15 | 一种保持原有物理布线拓扑的大线网分裂方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107633129B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310405B (zh) * | 2019-12-31 | 2023-12-12 | 国网浙江省电力有限公司 | 一种配网单线图图形拆分方法 |
CN112417808B (zh) * | 2020-12-04 | 2023-08-01 | 北京华大九天科技股份有限公司 | 一种减小线长的方法、电子设备及计算机可读存储介质 |
CN113836861B (zh) * | 2021-09-27 | 2024-04-05 | 福州大学 | 一种高质量的规避slew违规的层分配方法 |
CN115935863B (zh) * | 2022-11-11 | 2023-11-17 | 芯行纪科技有限公司 | 数字电路负载分割处理方法、装置、计算机设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1475945A (zh) * | 2003-07-04 | 2004-02-18 | 清华大学 | 基于空白区重分配的缓冲器规划方法 |
CN1540554A (zh) * | 2003-10-31 | 2004-10-27 | 清华大学 | 标准单元总体布线时障碍下时延驱动直角斯坦纳树方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326510B (zh) * | 2015-06-30 | 2020-02-21 | 新思科技(上海)有限公司 | 验证时钟树延迟 |
-
2017
- 2017-09-15 CN CN201710831764.9A patent/CN107633129B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1475945A (zh) * | 2003-07-04 | 2004-02-18 | 清华大学 | 基于空白区重分配的缓冲器规划方法 |
CN1540554A (zh) * | 2003-10-31 | 2004-10-27 | 清华大学 | 标准单元总体布线时障碍下时延驱动直角斯坦纳树方法 |
Non-Patent Citations (2)
Title |
---|
Layout-Aware Gate Duplication and Buffer Insertion;D. Baneres等;《https://www.cs.upc.edu-gavina-files-date07_buf》;20071231;全文 * |
增量式互连线延时优化方法的研究与应用;刘战涛;《国防科学技术大学研究生院工程硕士学位论文》;20140415;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107633129A (zh) | 2018-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107633129B (zh) | 一种保持原有物理布线拓扑的大线网分裂方法 | |
CN109703604B (zh) | 一种可调整的局部最优进路快速搜索方法 | |
US8271423B2 (en) | Optimum route searching apparatus, method and recording medium that determines search termination for routes in accordance with the route of interconnected nodes | |
CN104881507B (zh) | 修复电路中的保持时间违例的方法和装置 | |
US20200262436A1 (en) | Method, device, and terminal apparatus for invoking automatic driving reference line | |
CN108827335B (zh) | 一种基于单向搜索模型的最短路径规划方法 | |
CN112560389B (zh) | 一种基于轨道分配的详细布线方法 | |
CN109783956B (zh) | 基于区域划分的最大跳变时间违例修复方法及系统 | |
CN111125993B (zh) | 一种满足最小Cut数量约束的布线方法 | |
CN106650137B (zh) | 一种加速标准单元增量布局合理化的方法 | |
CN116738925B (zh) | 一种fpga详细布局方法及系统 | |
US6584607B2 (en) | Method of performing timing-driven layout | |
US7765510B2 (en) | Method of searching for wiring route including vias in integrated circuit | |
CN110866739A (zh) | 一种考虑故障排查路径的配电网综合停电时间表示方法 | |
US8151232B2 (en) | Repeater driven routing methodology | |
CN114726434B (zh) | 一种适用于大规模光网络的毫秒级快速寻路方法 | |
US20190086216A1 (en) | Map data update system and non-transitory computer-readable storage medium | |
US11836434B2 (en) | Autoplacement of superconducting devices | |
CN112611388B (zh) | 路口生成方法、装置、存储介质及电子设备 | |
JPH09223744A (ja) | Vlsiチップへの回路の配置方法 | |
CN111798015B (zh) | 一种规划路线调整方法、装置、电子设备及存储介质 | |
US20110170536A1 (en) | Network path finding apparatus, method, and program | |
JP2904270B2 (ja) | クロストークエラー抑制方式 | |
CN113538673B (zh) | 一种车道的生成方法、装置以及电子设备 | |
CN112957734B (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 | ||
CP01 | Change in the name or title of a patent holder |
Address after: 100102 floor 2, block a, No.2, lizezhong 2nd Road, Chaoyang District, Beijing Patentee after: Beijing Huada Jiutian Technology Co.,Ltd. Address before: 100102 floor 2, block a, No.2, lizezhong 2nd Road, Chaoyang District, Beijing Patentee before: HUADA EMPYREAN SOFTWARE Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |