CN117291140A - 自动布线工具的绕线违例减少方法、装置、存储介质及电子终端 - Google Patents
自动布线工具的绕线违例减少方法、装置、存储介质及电子终端 Download PDFInfo
- Publication number
- CN117291140A CN117291140A CN202311308889.5A CN202311308889A CN117291140A CN 117291140 A CN117291140 A CN 117291140A CN 202311308889 A CN202311308889 A CN 202311308889A CN 117291140 A CN117291140 A CN 117291140A
- Authority
- CN
- China
- Prior art keywords
- test circuit
- coordinate information
- layout
- circuit units
- tool
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 89
- 238000004804 winding Methods 0.000 title claims abstract description 55
- 238000003860 storage Methods 0.000 title claims description 17
- 238000012360 testing method Methods 0.000 claims abstract description 187
- 229910052751 metal Inorganic materials 0.000 claims description 30
- 239000002184 metal Substances 0.000 claims description 30
- 230000009467 reduction Effects 0.000 claims description 29
- 238000010618 wire wrap Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 abstract description 24
- 238000004364 calculation method Methods 0.000 abstract description 2
- 238000013461 design Methods 0.000 description 38
- 238000010586 diagram Methods 0.000 description 10
- 238000004519 manufacturing process Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000007689 inspection Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 235000019800 disodium phosphate Nutrition 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000007769 metal material Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 238000012725 vapour phase polymerization Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/394—Routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/08—Intellectual property [IP] blocks or IP cores
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请提供了一种减少自动布线工具中绕线违例的方法、装置、介质和终端。通过在现有的自动布线工具的布线流程中引入基于芯片版图中的测试电路单元坐标信息计算得到的引导区域坐标信息,并在版图中设置引导区域,以解决现有自动布线工具在布线过程中易产生大量版图规则违例的问题。本发明能够解决使用自动布图工具对多种芯片模块进行自动连接布线过程中资源占用量大的问题,并有效地减少或消除了绕线违例问题,从而实现了芯片版图布线的流程化和自动化。
Description
技术领域
本申请涉及领域芯片设计领域,特别是涉及自动布线工具的绕线违例减少方法、装置、存储介质及电子终端。
背景技术
在数字芯片设计领域,随着设计规模和频率要求不断提高,对APR工具的布线要求也越来越高。传统的APR(Auto Placement and Route)工具的布线是根据布局的拓扑结构,并利用数字电路内部的连线资源,对电路中的各个元件进行合理正确连接的过程。APR工具一般采用时序驱动的引擎进行布局布线,所以对于不同时序约束,获得的布局布线结果一般有较大的差异。
为保证芯片功能的正确性和制造的可行性。所实现的版图不仅要保证满足设计的时序条件,还要满足DRC(Design Rule Check)要求。其中,时序条件是指芯片中各个电路元件之间的时钟和数据信号的传输时间要求。这些时序要求是为了保证芯片能够按照设计的时序要求正常工作,避免出现信号延迟、时钟偏移等问题,确保芯片的功能正确性。而DRC要求是指芯片设计中的版图必须符合制造工艺的规范和限制。制造工艺规定了版图中各个元件的最小尺寸、间距、层次等,以确保芯片可以在制造过程中正常制造出来,并且能够达到设计要求。DRC检查可以帮助发现和修复一些制造过程中可能出现的问题,例如元件之间的短路、过小的尺寸等,以确保芯片制造的可行性。
特别地,对于一些特殊IP的绕线,或者是特殊形状的绕线,用户通常设置参数指定APR工具布线完成连接,但是经常出现DRC的绕线违例问题。对于这类的绕线违例的问题,通常绕线违例的数量较大或是用户后续修掉绕线违例的较为繁琐。大量的绕线违例的会导致不仅会增加涉及的复杂性、延长芯片设计的周期,同时还会提升芯片设计的成本及生产制造过程中的风险。
发明内容
鉴于以上所述现有技术的缺点,本申请的目的在于提供自动布线工具的绕线违例减少方法、装置、存储介质及电子终端,用于解决现有APR自动布线工具使用过程中易产生大量版图规则违例的问题。
为实现上述目的及其他相关目的,本申请的第一方面提供一种自动布线工具的绕线违例减少方法,包括:获取版图中的多个测试电路单元及各所述测试电路单元所对应的第一坐标信息和第二坐标信息,所述第一坐标信息和第二坐标信息位于所述版图的坐标系中;基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组;提取每个测试电路组中具有引导特征的测试电路单元,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域;基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线。
于本申请的第一方面的一些实施例中,基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组,包括:对所述多个测试电路单元的第一坐标信息进行排序和去重操作;对排序和去重后的全部测试电路单元按照第一坐标信息进行分组,以将具有相同第一坐标信息的测试电路单元分为一组。
于本申请的第一方面的一些实施例中,基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组,还包括:对分组所得的各测试电路组按照第二坐标信息由小到大进行排序,以便基于排序后的各测试电路组的第二坐标信息对所述测试电路组进行分段处理。
于本申请的第一方面的一些实施例中,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域,包括:对每个所述测试电路组进行分段处理,以使每个测试电路组分为多个测试电路段;每个所述测试电路段两端的测试电路单元为当前测试电路段具有引导特征的测试电路单元,获取每个测试电路段中具有引导特征的测试电路单元的第一坐标信息及第二坐标信息;基于所述具有引导特征的测试电路单元的第一坐标信息、第二坐标信息以及预设的引导区域参数,生成对应的引导区域。
于本申请的第一方面的一些实施例中,基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线,包括:将所述多个引导区域延长至上层金属层,以使每个所述引导区域与上层金属层完整相交;基于各所述测试电路组所对应的引导区域坐标信息,对自动布线工具进行参数设置,使用自动布线工具在所述版图中进行自动布线。
于本申请的第一方面的一些实施例中,使用自动布线工具在所述版图中进行自动布线后还包括:判断经过自动布线的版图中是否存在禁止重叠区域;若存在禁止重叠区域,则将相应的所述引导区域进行平移,并将平移后的所述引导区域与上层金属层相连。
为实现上述目的及其他相关目的,本申请的第二方面提供一种自动布线工具的绕线违例减少装置,包括:预处理模块:用于获取版图中的多个测试电路单元及各所述测试电路单元所对应的第一坐标信息和第二坐标信息,所述第一坐标信息和第二坐标信息位于所述版图的坐标系中;以及基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组;引导区域生成模块:用于提取每个测试电路组中具有引导特征的测试电路单元,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域;自动布线模块:用于基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线。
为实现上述目的及其他相关目的,本申请的第三方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述自动布线工具的绕线违例减少方法。
为实现上述目的及其他相关目的,本申请的第四方面提供一种电子终端,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行所述自动布线工具的绕线违例减少方法。
如上所述,本申请的自动布线工具的绕线违例减少方法、装置、存储介质及电子终端,针对使用APR自动布线工具实现IP布线容易产生绕线违例的问题,通过预先布设引导区域的方法,实现引导APR工具进行自动布线。具有以下有益效果:能够解决多种IP模块引脚的自动连接布线问题,从而实现流程化布线,同时减少或清零绕线违例的问题。
附图说明
图1显示了本申请自动布线工具的绕线违例减少方法一实施例中的流程示意图。
图2显示了本申请自动布线工具的绕线违例减少方法一实施例中的流程示意图。
图3显示了本申请自动布线工具的绕线违例减少方法中供电单元连接的结构示意图。
图4显示了本申请自动布线工具的绕线违例减少方法中供电单元连接的另一结构示意图。
图5a显示了本申请自动布线工具的绕线违例减少方法芯片版图引导区域的结构示意图。
图5b显示了本申请自动布线工具的绕线违例减少方法芯片版图引导区域的另一结构示意图。
图6显示了本申请自动布线工具的绕线违例减少方法中使用现有技术进行布线的示意图。
图7显示了本申请自动布线工具的绕线违例减少方法中使用本发明进行布线的示意图。
图8显示了本申请自动布线工具的绕线违例减少装置一实施例的结构示意图。
图9显示了本申请自动布线工具的绕线违例减少的电子终端一实施例的结构示意图。
具体实施方式
以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,在下述描述中,参考附图,附图描述了本申请的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本申请的精神和范围的情况下进行机械组成、结构、电气以及操作上的改变。下面的详细描述不应该被认为是限制性的,并且本申请的实施例的范围仅由公布的专利的权利要求书所限定。这里使用的术语仅是为了描述特定实施例,而并非旨在限制本申请。空间相关的术语,例如“上”、“下”、“左”、“右”、“下面”、“下方”、“下部”、“上方”、“上部”等,可在文中使用以便于说明图中所示的一个元件或特征与另一元件或特征的关系。
在本申请中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”、“固持”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
如上文中背景技术中所述,本发明提供自动布线工具的绕线违例减少方法、装置、存储介质及电子终端,旨在解决使用APR工具实现IP布线的过程中容易产生绕线违例的问题。与此同时,为了使本发明的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本发明实施例中的技术方案的进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定发明。
在对本发明进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释:
<1>APR工具:APR工具是指自动布局布线工具(Automatic Place and Route),也称为物理设计工具。它是在芯片设计过程中使用的一种软件工具,用于自动化地将逻辑设计转化为物理布局和布线。
<2>时序驱动引擎:是在芯片设计中用于优化时序约束的工具或方法。它主要用于解决芯片设计中的时序问题,确保芯片在特定频率下能够正常工作。
<3>DRC(Design Rule Check):是芯片设计中的一种检查方法,用于检查设计规则是否符合制造工艺的要求。DRC要求是指在芯片设计过程中需要遵守的设计规则要求,以确保设计的芯片能够被制造出来并正常工作。
<4>IP(Intellectual Property):是指在芯片设计中,可重用的、独立的、预先设计好的功能模块或电路。在芯片设计中,IP可以被视为一种“黑盒子”,其中包含了特定的功能和接口,可以被设计师直接使用,而不需要重新设计和验证。
<5>INNOVUS:是Cadence公司推出的一款芯片设计工具,主要用于数字集成电路(Digital Integrated Circuit,DIC)的物理设计。INNOVUS提供了先进的物理设计功能,包括全局优化、时钟树合成、布局布线、设计规则检查等,可以帮助设计师快速、高效地完成芯片物理设计。
<6>TAPCELL:测试电路单元(Test Access Port Cell,简称TAPCELL)是芯片设计中用于测试和调试的重要组件,它通常由时钟和复位控制、测试数据输入/输出、状态机控制逻辑、数据选择器和多路复用器构成。
<7>VPP:TAPCELL的NWELL的引脚。
<8>VDD_CPU:一种用于供应CPU核心的电压。
<9>TSMC N7工艺:TSMC N7工艺是台积电(TSMC)的一种先进的制程技术。N7代表7纳米节点,指的是芯片制造过程中的最小线宽。N7工艺具有较高的集成度、较低的功耗和较高的性能,广泛应用于高性能芯片设计,如处理器、图形芯片等。
<10>金属线:金属线是用于连接芯片上的不同电路元件的导线。它们通常由金属材料(如铝或铜)制成,用于传输信号和电源。
<11>完整相交:在芯片布线过程中,完整相交是指两条金属线在垂直方向上完全重叠。这种布线方式可以提供较低的电阻和电容,并减少信号传输的延迟。
<12>禁止重叠区域:在芯片设计中规定的一些特定区域,要求其中的电路元件、金属线或其他设计要素不能发生重叠。这是为了避免不同的信号线或电路元件之间发生干扰、短路或其他不良影响而设定的限制。
<13>布线资源:在芯片设计中,布线资源指的是可用于连接电路元件的物理通道或导线数量。布线资源的数量受制于芯片的物理布局和制程工艺,对其的合理利用对于实现设计要求和性能目标非常重要。
本发明实施例提供自动布线工具的绕线违例减少方法、自动布线工具的绕线违例减少方法的系统、以及存储用于实现自动布线工具的绕线违例减少方法的可执行程序的存储介质。就自动布线工具的绕线违例减少方法的实施而言,本发明实施例将对自动布线工具的绕线违例减少的示例性实施场景进行说明。
图1展示了本发明实施例中的一种自动布线工具的绕线违例减少方法的流程示意图。如图2所示,本发明所提出的违例减少方法是通过在APR自动布线工具进行布线过程中引入了增加引导区域的方式。具体地,首先指定版图上各部件之间的连接关系,随后根据APR自动布线工具的类型进行参数设定,随后基于本发明提出的方法引入引导区域,随后基于所述引导区域,使用APR自动布线命令在版图上进行布线连接,并最终进行布线违例的检查。
需要说明的是,本发明所提出的方法是应用于已经过前期排布的版图中。具体地,如图3和图4所示,展示了经过前期排布的多个IP模块及其引脚的排列方式。其中多个引脚的VPP与CPU的电源网络VDD_CPU相连。
本实施例中的自动布线工具的绕线违例减少方法主要包括如下各步骤:
步骤S11:获取版图中的多个测试电路单元及各所述测试电路单元所对应的第一坐标信息和第二坐标信息,所述第一坐标信息和第二坐标信息位于所述版图的坐标系中。
在本发明一实施例中,所述测试电路单元包括但不限于TAPCELL,其中TAPCELL的尺寸可以根据具体的设计需求而变化,通常是一个矩形或正方形的区域。尺寸的具体数值取决于设计人员的决策和设计规范。示例性地,本实施例中所设计的TAPCELL由高度为0.3微米的长方形构成。
在本发明一实施例中,获取版图中的多个测试电路单元及各所述测试电路单元所对应的第一坐标信息和第二坐标信息的过程包括:在芯片设计软件中,通过版图编辑模式中的测量工具对测试电路单元的坐标信息进行测量。CADENCE的VIRTUOSO、SYNOPSYS的DESIGN COMPILER等软件中提供了版图编辑、逻辑综合、布局布线等功能,可以帮助设计人员完成测试电路单元的设计和集成。
步骤S12:基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组。
在本发明一实施例中,基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组,包括:对所述多个测试电路单元的第一坐标信息进行排序和去重操作;对排序和去重后的全部测试电路单元按照第一坐标信息进行分组,以将具有相同第一坐标信息的测试电路单元分为一组。对分组所得的各测试电路组按照第二坐标信息由小到大进行排序,以便基于排序后的各测试电路组的第二坐标信息对所述测试电路组进行分段处理。
进一步地,所述第一坐标信息代表横坐标信息和纵坐标信息两者中的一者,所述第二坐标信息代表横坐标信息和纵坐标信息两者中的另一者。其中,横坐标信息和纵坐标信息表示在当前芯片的布局或版图的原点所构成的坐标系,其坐标的单位包括但不限于微米。
示例性地,获取到多个测试电路单元的坐标信息包括横坐标x值以及纵坐标y值。按照从小到大的顺序对各测试电路单元的横坐标x值进行排序并去掉重复值,以生成得到包含有多个单一测试电路单元横坐标信息的x_list。基于x_list中的各x值对各个测试电路单元的y值进行分组,以生成得到多个stripe(x)。针对每个stripe(x)中的测试电路单元按照其纵坐标y值从小到大进行排序。若stripe(x)中所包含多个测试电路单元,则对该stripe(x)进行后续的分段处理,对stripe(x)中仅包含一个测试电路单元,则不对该stripe(x)进行后续的分段处理。
步骤S13:提取每个测试电路组中具有引导特征的测试电路单元,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域。
在本发明一实施例中,所述具有引导特征的测试电路单元是指两个及以上的测试电路单元连接所构成的形状能够覆盖组内所有其它测试电路单元;最为典型的是首尾两个测试电路单元。
在本发明一实施例中,生成对应的引导区域的过程包括:对每个所述测试电路组进行分段处理,以使每个测试电路组分为多个测试电路段;每个所述测试电路段两端的测试电路单元为当前测试电路段具有引导特征的测试电路单元,获取每个测试电路段中具有引导特征的测试电路单元的第一坐标信息及第二坐标信息;基于所述两端的测试电路单元的第一坐标信息、第二坐标信息以及预设的引导区域参数,生成对应的引导区域。示例性地,所述预设的引导区域参数包括但不限于,引导区域的宽度等可通过自动布线工具进行预设的参数。
进一步地,针对各个分组的测试电路组进行分段处理。如上文中所述,各个测试电路组中包含有多个测试电路单元,所述多个测试电路单元是根据其第二坐标信息从小到大进行排序。对测试电路组中的每个测试电路单元进行遍历,计算相邻的两个测试电路单元的第二坐标信息之间的差值,若所述差值大于等于测试电路单元高度的三倍,则将当前相邻的两个测试电路单元之间设为分段端点。
示例性地,若测试电路单元TAPCELL的高度为0.3微米,当分组中相邻的两个TAPCELL之间纵坐标的差值大于等于0.9微米,则在当前相邻的两个TAPCELL之间设置为两个分段的端点。
在本发明一实施例中,生成对应的引导区域的过程包括:设置引导区域的形状和坐标,并基于所设置的引导区域的形状和坐标,计算引导区域的参数。所述引导区域的形状包括但不限于长方形、直线、折线、曲线、网格线、圆形等。
示例性地,将引导区域设置宽度为0.45微米的长方形。基于分段两端测试电路单元的第一坐标信息和第二坐标信息计算引导区域的坐标。若该分组为第一坐标信息为x的分组,其中下端测试电路单元的第二坐标信息y1,上端测试电路单元的第二坐标信息y2,则上述长方形引导区域左下角的坐标信息为(x,y1-0.3μm),右上角的坐标信息为(x+0.45μm,y2+0.6μm)。其中TAPCELL的高度为0.3微米。
值得说明的是,上述测试电路单元为高度为0.3微米的长方形,上述测试电路单元的纵坐标信息是以长方形下端的纵坐标为代表进行计算的。为了尽可能使得设置的引导区域能够覆盖每分段中所有的测试电路单元,在设置引导区域时在分段的两端分别延长一个测试电路单元的高度,示例性的,在分段区域的两端分别延长0.3微米,以使引导区域能够覆盖每分段中所有的测试电路单元,避免测试电路单元的遗漏。
步骤S14:基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线。
在本发明一实施例中,将所述多个引导区域延长至上层金属层,以使每个所述引导区域与上层金属层完整相交;基于各所述测试电路组所对应的引导区域坐标信息,对自动布线工具进行参数设置,使用自动布线工具在所述版图中进行自动布线。
进一步地,使用自动布线工具在所述版图中进行自动布线后还包括:判断经过自动布线的版图中是否存在禁止重叠区域;若存在禁止重叠区域,则将相应的所述引导区域进行平移,并将平移后的所述引导区域与上层金属层相连。值得说明的是,本发明在经过自动布线后对所述版图还会进行版图设计规范的检查,检查的内容包括但不限于:禁止重叠区域检查、尺寸规范检查、间距规范检查以及信号完整性检查等。
在本发明一实施例中,所采用的芯片工艺为TSMC公司的N7工艺,其中测试电路单元TAPCELL的引导区域设置于M13层的金属网,其上一层线网为M14层。首先,设置引导区域与上层M14层已存在的金属线相连,随后,基于各所述测试电路组所对应的引导区域坐标信息,判断所增加的引导区域坐标信息是否与M14层已存在的金属线完整相交,若没有完整相交,则将引导区域延长至最近的M14层金属线,并根据延长后的区域更新引导区域坐标信息,其中,M13层与M14层之间的金属线网的完整相交是指两个金属线网层的线路在某一点上完全重叠或交叉。
如图5a和图5b所示,展示了本发明一实施例中,在芯片版图中添加了引导区域后的芯片版图示意图,其中白色部分为所添加的引导区域,呈列状排列,与引导区域平行呈现的为测试电路单元部分。黑色大框代表分布在芯片内部的IP模块,由于多个大小不一的IP模块的分布,从而导致对应的测试电路单元也呈现不规则排列。
值得说明的是,本发明将计算得到的引导区域坐标信息与上层现有金属层完整相交的原因有二,其一,确保不同金属层之间实现电路的连接。如果金属线网层之间没有完整相交,就无法始实现电路之间的连接,从而影响芯片的功能和性能。其次,完整相交的金属线网层可以提供更高的布线密度。芯片上的电路越复杂,需要连接的信号线就越多。通过金属线网层之间的完整相交,可以充分利用芯片表面的空间,实现更多的布线资源,提高布线的密度和灵活性。
进一步地,使用APR自动布线工具,在更新后的引导区域坐标信息的基础上进行完整的金属线布线。判断经过自动布线的金属线网是否与当前M13层已经存在的金属线或禁止划线区域相重叠。若存在重叠区域,则将引导区域在测试电路单元附近区域进行移动,以避免因金属线相互重叠导致电路短路、电容和电感变化以及产生热量积累,或因引导区域坐标信息落入禁止划线区域相重叠而导致布线冲突和干扰。最后,将M13层的布线与M14层已经存在的金属线打孔相连。
如图6和图7所示,分别展示了使用传统APR自动布线工具进行布线的版图,以及使用了本发明提出的自动布线工具的绕线违例减少方法后进行布线的版图。从图中可以明显的看到,经过本发明通过引导区域对APR自动布线工具进行引导后,所产生的布线更为紧凑合理,从而能通过合理有效的布线提高芯片的性能和可靠性、降低信号传输过程中的噪声,同时提高了芯片的集成度。
上文对本发明中自动布线工具的绕线违例减少方法进行了详细说明,下文将结合图6对本发明实施例中的一种自动布线工具的绕线违例减少装置进行阐述。
如图8所示,展示了本发明实施例中的一种自动布线工具的绕线违例减少装置的结构示意图。本实施例中,自动布线工具的绕线违例减少装置800包括:
预处理模块801:用于获取版图中的多个测试电路单元及各所述测试电路单元所对应的第一坐标信息和第二坐标信息,所述第一坐标信息和第二坐标信息位于所述版图的坐标系中。以及基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组。
引导区域生成模块802:用于提取每个测试电路组中具有引导特征的测试电路单元,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域。
自动布线模块803:用于基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线。
在本发明一实施例中,所述基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组,包括:对所述多个测试电路单元的第一坐标信息进行排序和去重操作;对排序和去重后的全部测试电路单元按照第一坐标信息进行分组,以将具有相同第一坐标信息的测试电路单元分为一组;对分组所得的各测试电路组按照第二坐标信息进行排序。
在本发明一实施例中,生成对应的引导区域的过程包括:对每个所述测试电路组进行分段处理,以使每个测试电路组分为多个测试电路段;每个所述测试电路段两端的测试电路单元为当前测试电路段具有引导特征的测试电路单元,获取每个测试电路段中具有引导特征的测试电路单元的第一坐标信息及第二坐标信息;基于所述两端的测试电路单元的第一坐标信息、第二坐标信息以及所述引导区域的参数,生成对应的引导区域。
在本发明一实施例中,使用自动布线工具在所述版图中进行自动布线的过程包括:将所述多个引导区域延长至上层金属层,以使每个所述引导区域与上层金属线完整相交;基于各所述测试电路组所对应的引导区域坐标信息,对自动布线工具进行参数设置,使用自动布线工具在所述版图中进行自动布线。
在本发明一实施例中,使用自动布线工具在所述版图中进行自动布线后还包括:判断经过自动布线的版图是否满足版图设计规范,版图设计规范包括禁止重叠区域;若存在禁止重叠区域,则将相应的所述引导区域进行平移,并将平移后的所述引导区域与上层金属层相连。
需要说明的是:上述实施例提供的自动布线工具的绕线违例减少装置在进行自动布线工具的绕线违例减少时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的自动布线工具的绕线违例减少装置与自动布线工具的绕线违例减少方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例提供的自动布线工具的绕线违例减少方法可以采用终端侧或服务器侧实施,就自动布线工具的绕线违例减少终端的硬件结构而言,请参阅图9,为本发明实施例提供的自动布线工具的绕线违例减少终端900的一个可选的硬件结构示意图,该终端900可以是移动电话、计算机设备、平板设备、个人数字处理设备、工厂后台处理设备等。自动布线工具的绕线违例减少终端900包括:至少一个处理器901、存储器902、至少一个网络接口904和用户接口906。装置中的各个组件通过总线系统905耦合在一起。可以理解的是,总线系统905用于实现这些组件之间的连接通信。总线系统905除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图9中将各种总线都标为总线系统。
其中,用户接口906可以包括显示器、键盘、鼠标、轨迹球、点击枪、按键、按钮、触感板或者触摸屏等。
可以理解,存储器902可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,StaticRandom Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static RandomAccess Memory)。本发明实施例描述的存储器旨在包括但不限于这些和任意其它适合类别的存储器。
本发明实施例中的存储器902用于存储各种类别的数据以支持自动布线工具的绕线违例减少终端900的操作。这些数据的示例包括:用于在自动布线工具的绕线违例减少终端900上操作的任何可执行程序,如操作系统9021和应用程序9022;操作系统9021包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序9022可以包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例提供的自动布线工具的绕线违例减少方法可以包含在应用程序9022中。
上述本发明实施例揭示的方法可以应用于处理器901中,或者由处理器901实现。处理器901可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器901中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器901可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器901可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器901可以是微处理器或者任何常规的处理器等。结合本发明实施例所提供的配件优化方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,自动布线工具的绕线违例减少终端900可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device),用于执行前述自动布线工具的绕线违例减少方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
于本申请提供的实施例中,所述计算机可读写存储介质可以包括只读存储器、随机存取存储器、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁存储设备、闪存、U盘、移动硬盘、或者能够用于存储具有指令或数据结构形式的期望的程序代码并能够由计算机进行存取的任何其它介质。另外,任何连接都可以适当地称为计算机可读介质。例如,如果指令是使用同轴电缆、光纤光缆、双绞线、数字订户线(DSL)或者诸如红外线、无线电和微波之类的无线技术,从网站、服务器或其它远程源发送的,则所述同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线电和微波之类的无线技术包括在所述介质的定义中。然而,应当理解的是,计算机可读写存储介质和数据存储介质不包括连接、载波、信号或者其它暂时性介质,而是旨在针对于非暂时性、有形的存储介质。如申请中所使用的磁盘和光盘包括压缩光盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中,磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。
综上所述,本申请提供自动布线工具的绕线违例减少方法、装置、终端及介质,本发明提供了一种提高APR自动布线工具自动效率,同时减低绕线违例的方法,针对使用APR自动布线工具实现IP布线容易产生绕线违例的问题,通过预先布设引导区域的方法,实现引导APR自动布线工具进行自动布线。具有以下有益效果:能够解决多种芯片模块引脚的自动连接布线问题,从而实现流程化布线,同时减少或清零绕线违例的问题。所以,本申请有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本申请的原理及其功效,而非用于限制本申请。任何熟悉此技术的人士皆可在不违背本申请的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本申请所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。
Claims (9)
1.一种自动布线工具的绕线违例减少方法,其特征在于,包括:
获取版图中的多个测试电路单元及各所述测试电路单元所对应的第一坐标信息和第二坐标信息,所述第一坐标信息和第二坐标信息位于所述版图的坐标系中;
基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组;
提取每个测试电路组中具有引导特征的测试电路单元,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域;
基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线。
2.根据权利要求1所述的自动布线工具的绕线违例减少方法,其特征在于,基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组,包括:
对所述多个测试电路单元的第一坐标信息进行排序和去重操作;
对排序和去重后的全部测试电路单元按照第一坐标信息进行分组,以将具有相同第一坐标信息的测试电路单元分为一组。
3.根据权利要求1所述的自动布线工具的绕线违例减少方法,其特征在于,基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组,还包括:
对分组所得的各测试电路组按照第二坐标信息由小到大进行排序,以便基于排序后的各测试电路组的第二坐标信息对所述测试电路组进行分段处理。
4.根据权利要求1所述的自动布线工具的绕线违例减少方法,其特征在于,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域,包括:
对每个所述测试电路组进行分段处理,以使每个测试电路组分为多个测试电路段;
每个所述测试电路段两端的测试电路单元为当前测试电路段具有引导特征的测试电路单元,获取每个测试电路段中具有引导特征的测试电路单元的第一坐标信息及第二坐标信息;
基于所述具有引导特征的测试电路单元的第一坐标信息、第二坐标信息以及预设的引导区域参数,生成对应的引导区域。
5.根据权利要求1所述的自动布线工具的绕线违例减少方法,其特征在于,基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线,包括:
将所述多个引导区域延长至上层金属层,以使每个所述引导区域与上层金属层完整相交;
基于各所述测试电路组所对应的引导区域坐标信息,对自动布线工具进行参数设置,使用自动布线工具在所述版图中进行自动布线。
6.根据权利要求5所述的自动布线工具的绕线违例减少方法,其特征在于,使用自动布线工具在所述版图中进行自动布线后还包括:判断经过自动布线的版图中是否存在禁止重叠区域;若存在禁止重叠区域,则将相应的所述引导区域进行平移,并将平移后的所述引导区域与上层金属层相连。
7.一种自动布线工具的绕线违例减少装置,其特征在于,包括:
预处理模块:用于获取版图中的多个测试电路单元及各所述测试电路单元所对应的第一坐标信息和第二坐标信息,所述第一坐标信息和第二坐标信息位于所述版图的坐标系中;以及基于各所述测试电路单元所对应的第一坐标信息,对所述多个测试电路单元进行分组,以形成若干个测试电路组;
引导区域生成模块:用于提取每个测试电路组中具有引导特征的测试电路单元,基于所述具有引导特征的测试电路单元的第一坐标信息和第二坐标信息,生成对应的引导区域;
自动布线模块:用于基于各所述测试电路组所对应的引导区域坐标信息,使用自动布线工具在所述版图中进行自动布线。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。
9.一种电子终端,其特征在于,包括:处理器及存储器;
所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311308889.5A CN117291140A (zh) | 2023-10-10 | 2023-10-10 | 自动布线工具的绕线违例减少方法、装置、存储介质及电子终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311308889.5A CN117291140A (zh) | 2023-10-10 | 2023-10-10 | 自动布线工具的绕线违例减少方法、装置、存储介质及电子终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117291140A true CN117291140A (zh) | 2023-12-26 |
Family
ID=89240618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311308889.5A Pending CN117291140A (zh) | 2023-10-10 | 2023-10-10 | 自动布线工具的绕线违例减少方法、装置、存储介质及电子终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117291140A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989737A (zh) * | 2021-02-07 | 2021-06-18 | 北京大学 | 一种交互式模拟电路版图编辑方法及系统 |
CN113779924A (zh) * | 2021-09-17 | 2021-12-10 | 中国科学院上海微系统与信息技术研究所 | 超导集成电路的布线优化方法和装置、存储介质和终端 |
CN114970439A (zh) * | 2021-02-23 | 2022-08-30 | 联合微电子中心有限责任公司 | 自动布线方法、装置、计算机设备、存储介质 |
CN115270705A (zh) * | 2022-09-23 | 2022-11-01 | 深圳鸿芯微纳技术有限公司 | 一种设计规则违例预测方法、装置、设备及存储介质 |
-
2023
- 2023-10-10 CN CN202311308889.5A patent/CN117291140A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989737A (zh) * | 2021-02-07 | 2021-06-18 | 北京大学 | 一种交互式模拟电路版图编辑方法及系统 |
CN114970439A (zh) * | 2021-02-23 | 2022-08-30 | 联合微电子中心有限责任公司 | 自动布线方法、装置、计算机设备、存储介质 |
CN113779924A (zh) * | 2021-09-17 | 2021-12-10 | 中国科学院上海微系统与信息技术研究所 | 超导集成电路的布线优化方法和装置、存储介质和终端 |
CN115270705A (zh) * | 2022-09-23 | 2022-11-01 | 深圳鸿芯微纳技术有限公司 | 一种设计规则违例预测方法、装置、设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
史玲娜: ""单主干权重排序布线算法"", 《计算机技术应用》, 4 January 2015 (2015-01-04), pages 197 - 199 * |
王发麟: ""坐标系导引下的线缆布线点位对应关系 自动提取方法"", 《》, vol. 31, no. 14, 31 July 2020 (2020-07-31), pages 1708 - 1716 * |
蒋艳德等: ""面向标准单元三维布局的密度驱动划分方法"", 《计算机辅助设计与图形学学报》, vol. 28, no. 11, 30 November 2016 (2016-11-30), pages 2021 - 2026 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11604916B2 (en) | Method, system, and electronic device for detecting open/short circuit of PCB design layout | |
US7007258B2 (en) | Method, apparatus, and computer program product for generation of a via array within a fill area of a design layout | |
EP1305744B1 (en) | Method and system for hierarchical metal-end, enclosure and exposure checking | |
US9767240B2 (en) | Temperature-aware integrated circuit design methods and systems | |
US10713410B2 (en) | Method for legalizing mixed-cell height standard cells of IC | |
US9740815B2 (en) | Electromigration-aware integrated circuit design methods and systems | |
US8219959B2 (en) | Generating integrated circuit floorplan layouts | |
US20120233575A1 (en) | Layout method for integrated circuit including vias | |
CN116911246B (zh) | 芯片设计的布线规划方法及相关设备 | |
US10417371B2 (en) | Power grid healing techniques | |
US10891411B2 (en) | Hierarchy-driven logical and physical synthesis co-optimization | |
CN113792519B (zh) | 对电路进行布局规划的方法、电子设备及存储介质 | |
US11036913B2 (en) | Integrated circuit methods using single-pin imaginary devices | |
CN116306486A (zh) | 芯片设计的设计规则检查方法及相关设备 | |
CN117291140A (zh) | 自动布线工具的绕线违例减少方法、装置、存储介质及电子终端 | |
US8132141B2 (en) | Method and apparatus for generating a centerline connectivity representation | |
CN116362190A (zh) | 芯片设计的交互布局规划方法及相关设备 | |
CN102004808B (zh) | 检核或执行集成电路设计的方法以及集成电路检核系统 | |
US8181143B2 (en) | Method and apparatus for generating a memory-efficient representation of routing data | |
CN111611761B (zh) | 生成电路版图图案的方法、设备和计算机可读存储介质 | |
CN112749526B (zh) | 电源轨设计方法、装置及其非瞬时计算机可读介质 | |
JP2013239073A (ja) | レイアウト方法及び設計支援プログラム | |
CN117521586B (zh) | 芯片设计的布局规划方法及相关设备 | |
US11144700B1 (en) | Grouping nets to facilitate repeater insertion | |
CN112859982B (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 |