CN112861467A - 线宽补偿方法及装置、服务器和存储介质 - Google Patents
线宽补偿方法及装置、服务器和存储介质 Download PDFInfo
- Publication number
- CN112861467A CN112861467A CN202110151125.4A CN202110151125A CN112861467A CN 112861467 A CN112861467 A CN 112861467A CN 202110151125 A CN202110151125 A CN 202110151125A CN 112861467 A CN112861467 A CN 112861467A
- Authority
- CN
- China
- Prior art keywords
- wiring
- compensation
- width
- line width
- wires
- 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
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/394—Routing
- G06F30/3953—Routing detailed
-
- 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/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/12—Printed circuit boards [PCB] or multi-chip modules [MCM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种线宽补偿方法及装置、服务器和存储介质。根据本发明实施例的线宽补偿方法包括获取第一布线集合,所述第一布线集合中的至少一部分布线为待补偿布线;根据布线间间距,从所述第一布线集合中筛选出第二布线集合;根据布线宽度,从所述第二布线集合中筛选出第三布线集合;以及对所述第三布线集合中的布线进行宽度补偿。根据本发明实施例的线宽补偿方法及装置、服务器和存储介质,补偿效率高,补偿准确且精度高。
Description
技术领域
本发明涉及电子设计自动化技术领域,特别涉及一种线宽补偿方法及装置、服务器和存储介质。
背景技术
随着电子技术的高速发展,印刷线路板的线路集成度越来越高,线路的精密度要求也越来越高。
CD(critical dimension,设计中的最小线宽)补偿(Compensation)用于在小屏布线后对布线结果进行补偿。在现有的生产过程中,对印刷线路板的曝光和刻蚀都会导致最终生产出来的线路(path)的宽度比设计宽度要小。在线路(path)宽度小于最小工艺间距时,这种现象尤其严重,直接导致占空比小的地方线宽小太多,电阻和线宽变化激烈都会影响产品的良率。此外,由于窄边框面板的应用需求,面板设计中给COG(Chip On Glass,玻璃衬底芯片)台阶留下的宽度越来越小。因此,布线的宽度必须要突破曝光机最小线宽的限制。但是当CD值小于曝光机最小线宽时,在占空比较小的区域,布线宽度被侵蚀更严重,发生实际生产所得宽度比设计宽度小的多或者断线的问题。
因此,希望能有一种新的线宽补偿方法及装置、服务器和存储介质,能够克服上述问题。
发明内容
鉴于上述问题,本发明的目的在于提供一种线宽补偿方法及装置、服务器和存储介质,从而提高补偿效率,提高补偿准确性和补偿精度。
根据本发明的一方面,提供一种线宽补偿方法,包括获取第一布线集合,所述第一布线集合中的至少一部分布线为待补偿布线;根据布线间间距,从所述第一布线集合中筛选出第二布线集合;根据布线宽度,从所述第二布线集合中筛选出第三布线集合;以及对所述第三布线集合中的布线进行宽度补偿。
优选地,所述获取第一布线集合包括查询布线;判断是否有已选中布线,其中,在存在所述已选中布线时,将查询出的布线和所述已选中布线合并,得到所述第一布线集合;在不存在所述已选中布线时,将查询出的布线作为所述第一布线集合。
优选地,所述根据布线间间距,从所述第一布线集合中筛选出第二布线集合包括找到相邻间距大于设定间距的图形的边段,记为所述第二布线集合。
优选地,所述根据布线宽度,从第二布线集合中筛选出第三布线集合包括在所述第二布线集合中找到宽度小于或等于设定宽度的图形的边段,作为所述第三布线集合。
优选地,所述根据布线宽度,从第二布线集合中筛选出第三布线集合包括在所述第一布线集合中,找到宽度大于设定宽度的图形的边段,记为筛除布线集合;以及在所述第二布线集合中剔除属于所述筛除布线集合的部分,得到所述第三布线集合。
优选地,所述对所述第三布线集合中的布线进行宽度补偿包括连接所述第三布线集合中所有图形的边段成图形轮廓点链;以及以所述点链为中心线创建等边线路,其中,创建的所述等边线路的宽度大于所述线路对应部分在所述第一布线集合中的宽度。
优选地,所述对所述第三布线集合中的布线进行宽度补偿包括对所述第三布线集合中的布线进行预补偿;根据所述布线间间距,从所述第三布线集合中筛选出第四布线集合;以及对所述第四布线集合中的布线进行宽度补偿。
优选地,所述线宽补偿方法还包括对补偿部分的端部进行倒角处理。
根据本发明的另一方面,提供一种线宽补偿装置,包括获取模块,用于获取第一布线集合,所述第一布线集合中的至少一部分为待补偿布线;第一筛选模块,与所述获取模块相连接以获取所述第一布线集合,用于根据布线间间距,从所述第一布线集合中筛选出第二布线集合;第二筛选模块,与所述第一筛选模块相连接以获取所述第二布线集合,用于根据布线宽度,从所述第二布线集合中筛选出第三布线集合;以及补偿模块,与所述第二筛选模块相连接以获取所述第三布线集合,用于对所述第三布线集合中的布线进行宽度补偿。
优选地,所述获取模块包括查询单元,用于查询布线;判断单元,用于判断是否有已选中布线;合并单元,与所述判断单元相连接以获取所述判断单元的判断结果,在存在已选中布线时,将查询出的布线和所述已选中布线合并;以及输出单元,分别与所述查询单元、所述判断单元和所述合并单元相连接,在存在所述已选中布线时,将合并的所述查询出的布线和所述已选中布线作为所述第一布线集合输出,在不存在所述已选中布线时,将所述查询出的布线作为所述第一布线集合输出。
根据本发明的又一方面,提供一种服务器,包括处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述处理器执行,使得所述处理器实现如上所述的线宽补偿方法。
根据本发明的再一方面,提供一种存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如前所述的线宽补偿方法。
根据本发明实施例的线宽补偿方法及装置、服务器和存储介质,根据布线间间距和布线宽度,实现线宽的自动补偿,补偿效率高,补偿准确性好且补偿精度高。
根据本发明实施例的线宽补偿方法及装置、服务器和存储介质,对补偿部分的端部进行取舍以避免补偿后部分不满足布线间间距的问题,补偿效果好。
根据本发明实施例的线宽补偿方法及装置、服务器和存储介质,对补偿部分的端部进行倒角处理,避免了尖端放电等问题,补偿效果好。
根据本发明实施例的线宽补偿方法及装置、服务器和存储介质,对外延部分也进行补偿,使得布线的一致性更好,并且更加美观。
根据本发明实施例的线宽补偿方法及装置、服务器和存储介质,能够利用EDA工具,实现自动化布线、自动计算、自动补偿,采用精确的补偿算法,完成补偿,速度快,且补偿精确。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示出了根据本发明实施例一的线宽补偿方法的方法流程图;
图2示出了根据本发明实施例二的获取第一布线集合的方法流程图;
图3示出了根据本发明实施例的边段的示意图;
图4示出了根据本发明实施例三的线宽补偿的示意图;
图5示出了根据本发明实施例四的线宽补偿的示意图;
图6示出了根据本发明实施例五的线宽补偿的示意图;
图7示出了根据本发明实施例六的线宽补偿的示意图;
图8示出了根据本发明实施例七的线宽补偿的示意图;
图9示出了根据本发明实施例八的线宽补偿的示意图;
图10示出了根据本发明实施例九的线宽补偿的示意图;
图11示出了根据本发明实施例十的线宽补偿方法的方法流程图;
图12示出了根据本发明实施例十一的利用边段产生轮廓的示意图;
图13示出了根据本发明实施例十一的连接边段的示意图;
图14示出了根据本发明实施例十一的Map结构示意图;
图15示出了根据本发明实施例的界面示意图;
图16示出了根据本发明实施例一的线宽补偿装置的结构示意图;
图17示出了根据本发明实施例二的获取模块的结构示意图;
图18示出了根据本发明实施例的服务器的结构示意图。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。此外,在图中可能未示出某些公知的部分。
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。在下文中描述了本发明的许多特定的细节,例如部件的结构、材料、尺寸、处理工艺和技术,以便更清楚地理解本发明。但正如本领域的技术人员能够理解的那样,可以不按照这些特定的细节来实现本发明。
应当理解,在描述部件的结构时,当将一层、一个区域称为位于另一层、另一个区域“上面”或“上方”时,可以指直接位于另一层、另一个区域上面,或者在其与另一层、另一个区域之间还包含其它的层或区域。并且,如果将部件翻转,该一层、一个区域将位于另一层、另一个区域“下面”或“下方”。
在现有技术中,对于线宽的补偿通常是人工操作的,即人工查找需要补偿的地方。但人工补偿的方式补偿效率低下,容易出错,且补偿精确度无法控制,仍由可能补偿不够。
基于此,本公开提供了一种线宽补偿方法及装置、服务器和存储介质,能够实现线宽的自动补偿,线宽补偿速度块,补偿精度高,补偿效果好。根据本公开的线宽补偿方法及装置、服务器和存储介质,例如用于最小线宽的补偿。最小线宽补偿用于布局版图设计完成后对局部图形宽度进行补偿。以下,参照附图对本公开进行详细说明。
图1示出了根据本发明实施例一的线宽补偿方法的方法流程图。如图1所示,根据本发明实施例一的线宽补偿方法包括:
步骤S101:获取第一布线集合,第一布线集合中的至少一部分布线为待补偿布线。
获取第一布线集合,第一布线集合中的至少一部分布线为待补偿布线。可选地,在电子设计自动化(Electronic design automation,EDA)软件中实现如本申请所述的线宽补偿方法。EDA软件从布线布局中获取第一布线集合,第一布线集合中的至少一部分是需要进行线宽补偿的。需要说明的是,待补偿布线可以是一条完整的布线、一条完整布线中的一部分(线段或点)等。
步骤S102:根据布线间间距,从第一布线集合中筛选出第二布线集合;
根据(相邻)布线间间距,从第一布线集合中筛选出第二布线集合。例如找到距离(相邻间距)大于设定间距(spacing)的图形的边段,记为第二布线集合(集合A)。可选地,对一条布线上某一点来说,布线间间距是指该点到相邻布线的最小距离。满足布线间间距小于设定间距的点的集合,即为第二布线集合。
步骤S103:根据布线宽度,从第二布线集合中筛选出第三布线集合;
根据布线的宽度,从第二布线集合中筛选出第三布线集合。例如在第二布线集合中找到宽度小于或等于设定宽度(width)的图形的边段,作为第三布线集合。
在本发明的可选实施例中,在第一布线集合或第二布线集合中,找到宽度大于设定宽度(width)的图形的边段,记为筛除布线集合(集合B),在第二布线集合(集合A)中剔除属于筛除布线集合(集合B)的部分,得到第三布线集合。可选地,第一布线集合或第二布线集合中,布线宽度大于设定宽度的部分(整条布线和/或布线上的线段和/或布线上的点)的集合,即为筛除布线集合。
步骤S104:对第三布线集合进行宽度补偿。
对第三布线集合进行宽度补偿。例如对第三布线集合中的整条布线和/或整条布线上的线段和/或布线上的点进行宽度补偿,即在上述部分处于第一布线集合时对应的宽度的基础上进行扩宽。
在本发明的可选实施例中,对第三布线集合进行宽度补偿包括:
连接(第三布线集合中)所有图形的边段成图形轮廓点链;以及
以点链为中心线创建等边线路(path)。
其中,创建的等边线路的宽度大于该线路对应部分在第一布线集合中的宽度。
图2示出了根据本发明实施例二的获取第一布线集合的方法流程图。如图2所示,根据本发明实施例二的获取第一布线集合的方法包括以下步骤:
步骤S201:查询布线;
查询(query)布线。可选地,在从原始布图设计中获取原始布线集合后,对原始布线集合进行查询。可选地,查询得到的布线作为第一布线集合中的至少一部分。
步骤S202:判断是否有已选中布线;
判断是否有已选中布线。可选地,在原始布图设计范围(原始布线集合)内判断是否有已选中布线。已选中布线例如包括人工选定的布线。
在存在已选中布线时,执行步骤S203;在不存在已选中布线时,执行步骤S204。
步骤S203:将查询(query)出的布线和已选中布线合并;
将查询得到的布线和已选中的布线合并。
步骤S204:得到第一布线集合。
得到第一布线集合。在存在已选中布线时,得到(获取)的第一布线集合为合并的查询出的布线和已选中布线;在不存在已选中布线时,将查询出的布线作为所述第一布线集合(得到(获取)的第一布线集合为查询出的布线)。
为了进一步地阐明本申请的技术方案,对上述的一些词语进行详细地说明。
最小线宽补偿:
CD(CD值,critical dimension,指设计中的最小线宽)Compensaton(补偿)用于布局(layout)版图设计完成后对局部图形宽度进行补偿。
图形的边段:
图3示出了根据本发明实施例的边段的示意图。图形的边段是指任意图形元素轮廓的一部分,如图3中的(a)所示,可以是一条完整的线段边(图中实线所示);如图3中的(b)所示,也可以是原图形一条边上的一段(图中实线所示);如图3中的(c)所示,甚至是一个角的点。上述任意图形元素轮廓的一部分统称为图形的边段。
图形的轮廓点链:
由图形的边段连接而成的尽可能长的点链称为图形的轮廓点链,图形的轮廓点链可以只包含一个图形的边段,或者由多段图形的边段首尾相连组合而成,直到无法再连接更多的图形的边段为止。
图形的轮廓点链是一定具有两个端点的,且这两个端点都不会再是另一个图形的轮廓点链中的点,否则它们就会继续连起来成为一个更长的图形的轮廓点链,这不符合它的定义。
图4示出了根据本发明实施例三的线宽补偿的示意图。如图4所示,线宽补偿方法及装置达到的补偿效果是,要求相邻两根线路(path)间距大于设定间距(最小间距,MinSpace)都要进行曝光补偿。
具体地讲,图4中的(a)示出了线宽补偿的示意图。图4(a)中的虚线为补偿前的线宽,例如为第一布线集合(初始设计)中的线宽。图4(a)中的实线为补偿的线宽。图4(a)中实线部分对应的虚线部分的集合,可视为第三布线集合,实线部分可视为对第三布线集合中布线的线宽补偿。图4中的(b)示出了补偿后的布线,例如最终的布线形状(Final Result)。如图4中的(b)所示,任意相邻两条布线(path,线路)之间的间距大于设定间距(最小间距,Min Space)的布线都进行了(曝光)补偿,即补偿后,布线任意局部的线间距都满足大于最小间距。
在本发明的可选实施例中,补偿发生在原始线间距大于设定间距的局部,并且这个局部的线宽小于或等于设定宽度值。即补偿发生的位置(第三布线集合/图4(a)中实线部分)同时满足该位置处的布线间间距大于设定间距,且该位置处(在补偿前)的线宽小于或等于设定宽度。在本发明的实施例中,(补偿位置处)补偿后的局部线宽大于或等于设定线宽(例如原始最小线宽,Min Width)。
在本发明的可选实施例中,不管原始布线是什么类型(例如oa Path类型等),补偿后的图形为polygon类型。
图5示出了根据本发明实施例四的线宽补偿的示意图。如图5所示,从第二布线52上虚线开始,往右下方延伸的部分与第一布线51的间距都是满足补偿要求的,但是补偿却不能从虚线处开始,而应该避开一段距离。如图5所示,如果对第二布线52上箭头所示部分进行补偿,则补偿后的箭头的轮廓与第一布线51的间距就会小于设定间距(引发动态范围压缩(Dynamic range compression,DRC)问题),不满足要求。同理,第三布线53与第二布线52的关系需要与上述相同的处理。
在本发明的可选实施例中,根据本发明实施例的线宽补偿方法(对第三布线集合进行宽度补偿)还包括:
对第三布线集合中的布线进行预补偿;
根据布线间间距,从第三布线集合中筛选出第四布线集合;以及
对第四布线集合中的布线进行宽度补偿。
具体地讲,在得到第三布线集合后,对第三布线集合进行预补偿,预补偿的尺寸(宽度)例如与最终的补偿尺寸(宽度)相同。根据预补偿后的布线以及布线间间距,从第三布线集合中筛选出第四布线集合。即在预补偿后的布线中,筛除不满足设定间距的部分。对预补偿后也满足设定间距的布线(即从第三布线集合中筛选出的第四布线集合)进行补偿,对预补偿后不满足设定间距的布线(即第三布线集合与第四布线集合的差集部分)不进行补偿。
在本发明的上述实施例中,对补偿部分端部进行了处理,避免了补偿后出现不满足设定间距的部分,得到了更好的补偿效果。
图6示出了根据本发明实施例五的线宽补偿的示意图。如图6中的(a)所示,补偿部分与原布线的轮廓的“接壤”处出现直角或锐角时,会(在直角或锐角处)发生尖端放电的问题。因此,要对补偿部分的端部进行倒角处理。如图6中的(b)所示,对补偿部分的端部(即接触处)进行倒角处理,使该位置处为钝角或圆角,以避免出现尖端放电的问题。
在本发明的可选实施例中,根据本发明实施例的线宽补偿方法还包括,对补偿部分的端部进行倒角处理。
图7示出了根据本发明实施例六的线宽补偿的示意图。如图7所示,只有一根布线时,也要进行补偿。图7(a)中的虚线为补偿前的线宽,例如为第一布线集合(初始设计)中的线宽。图7(a)中的实线为补偿的线宽。图7(a)中实线部分对应的虚线部分的集合,可视为第三布线集合,实线部分可视为对第三布线集合中布线的线宽补偿。图7中的(b)示出了补偿后的布线,例如最终的布线形状(Final Result)。
图8示出了根据本发明实施例七的线宽补偿的示意图。如图8所示,对外延部分(图中虚线框所示部分)也进行补偿。具体地讲,如果有外延(Outside Extension)部分,理论上不需要补偿,但是,端口本身大小会大于补偿后的宽度。因此,外延部分即使不需要补偿,也采用补偿后宽度,使设计看起来美观。
图9示出了根据本发明实施例八的线宽补偿的示意图。如图9所示,对同轴牙布线进行补偿。具体地讲,对于同轴牙布线(布线的开始(start)和结束(end)端点在一条线上,布线通常没有斜段),由于没有斜线段,需要整根线作补偿(如图中实线部分所示)。
图10示出了根据本发明实施例九的线宽补偿的示意图。如图10所示,对具有特别段的斜段的布线进行补偿。通常这种布线位于整个布线布局的中间部位,与相邻布线均没有相互影响的区域,这种布线也需要补偿。
具体地讲,图10中的(a)示出了线宽补偿的示意图。图10(a)中的虚线为补偿前的线宽,例如为第一布线集合(初始设计)中的线宽。图10(a)中的实线为补偿的线宽。图10(a)中实线部分对应的虚线部分的集合,可视为第三布线集合,实线部分可视为对第三布线集合中布线的线宽补偿。图10中的(b)示出了补偿后的布线,例如最终的布线形状(FinalResult)。
图11示出了根据本发明实施例十的线宽补偿方法的方法流程图。如图11所示,根据本发明实施例十的线宽补偿方法包括以下步骤:
步骤S301:查询布线;
步骤S302:判断是否有已选中布线;
判断是否有已选中布线。在判断有已选中布线时,执行步骤S303;在判断没有已选中布线时,执行步骤S304。
步骤S303:将查询出的布线和已选中布线合并为输入;
步骤S304:找到距离大于设定间距的图形的边段,记为第一集合;
在判断有已选中布线时,在查询出的布线和已选中布线中找到(布线间)距离大于设定间距的图形的边段,记为第一集合。在判断没有已选中布线时,在查询出的布线中找到(布线间)距离大于设定间距的图形的边段,记为第一集合。
步骤S305:找到宽度大于设定宽度的图形的边段,记为第二集合;
步骤S306:在第一集合中剔除第二集合的部分;
在第一集合中剔除第二集合的部分,即得到第一集合与第二集合的差集(第三集合)。
步骤S307:连接所有图形的边段成图形轮廓点链;
连接(第三集合中)所有图形的边段成图形轮廓点链。
步骤S308:以点链为中心线创建等边线路;
以点链(图形的轮廓点链)为中心线创建等边线路(path)。
步骤S309:轮廓倒角。
对(创建得到的等边线路的)轮廓进行倒角。
以下进一步地阐述如何连接图形的边段集合成为图形的轮廓点链。
对于给定的一个线段的集合,记为A={A1,A2,……An},已知集合中线段两两不相交,但是有可能出现首尾相连。要求将首尾相连的线段尽可能长地连起来,作为点链输出。最终输出的点链满足图形的轮廓点链的定义。
图12示出了根据本发明实施例十一的利用边段产生轮廓的示意图。如图12所示,利用边段产生轮廓模块的上一个模块例如为算法模块,算法模块的输出作为本模块的输入。
在本发明的可选实施例中,已经得到了图形的边段的集合,这些边段之间满足(本命令)已有的功能需求;任意两段之间满足实际间距大于用户设置的设定间距,对应原图形上的局部线宽小于或等于用户设置的设定宽度。但是现在还无法用这些边段为中心线创建补偿图形,否则在每个边段的端点处得不到圆滑的连接(如图中虚线框处所示)。因此,需要进一步将图形的边段连接成为图形的轮廓点链。
为了解决连接独立线段成点链的问题,主要包含以下几个关键要求:
1、输入线段集合中要求线段之间不存在相交关系(除端点外无其他接触点);
2、不能有多于两条线段具有共同的端点;
3、输出的点链一定具有两个端点(或者极端情况下,点链本身就含有一个点),且这两个端点中的任意一个都不再是任何不在点链中的线段的端点。
4、还有可能输出的点链是一个闭合的图形轮廓,这样实际上也是有两个端点,只不过这两个点是同一个。
在满足上述要求的背景下,本申请(算法)主要是利用std::map数据结构解决问题。图13示出了根据本发明实施例十一的连接边段的示意图。图14示出了根据本发明实施例十一的Map结构示意图。下面结合文字和附图所示内容解释这个算法的基本流程。
假设所有处理的边段集合如图13所示,这里为了描述方便,图13给出的例子中的线段是相互连接的,所以最终输出的结果将会是一个完整的点链,实际中要处理的输入可能是一堆孤立的线段集合,但是算法仍然可以如图13中所示的这种情况循环迭代执行。
根据本发明实施例十一的算法包括以下步骤:
步骤一:遍历边段Si,以Si的头(head)和尾(tail)两个端点建立一个std::map<Point,Array<Segment>>;
对于图13中情形,经过步骤一后建立的Map结构示意图如图14所示。其中,Key是端点,用Pi标识(表示),Value是Array<Segment>,用Si,Sj标识。
步骤二:遍历Map,从Key=P1开始,首先判断Value部分的数目,如果只含有一个元素,说明已经到达一个端点,将P1装入out Put Array,开始反向遍历(进入步骤四)。
步骤三:如果含有两个元素,说明是中间点,这时任取S1或者S2之一(假设是S1)的不同于P1的端点(Point)作为Key,在Map中查询以Point为Key的节点,Key=point,将point装入out Put Array,重复执行步骤二和步骤三。
步骤四:找到一个端点后,进入此步骤(执行步骤四),步骤四与步骤三一致,不同的地方是如果步骤三选择是S1,那么这里选择S2,继续算法,直到出现步骤一,代表找到了另外一个端点,算法结束。
图15示出了根据本发明实施例的界面示意图。如图15所示,根据本发明实施例的线宽补偿方法在电子设计自动化软件中实现。具体地讲,本发明用自动化布线工具aether(电子设计自动化软件),采用精确的补偿算法,完成补偿,速度快,且补偿精确。图15示出了根据本发明实施例的界面示意图,即使用如图所示的GUI(Graphical User Interface,图形用户界面)界面设置补偿参数。
图16示出了根据本发明实施例一的线宽补偿装置的结构示意图。如图16所示,根据本发明实施例一的线宽补偿装置包括获取模块10、第一筛选模块20、第二筛选模块30和补偿模块40。
具体地讲,获取模块10,用于获取第一布线集合,第一布线集合中的至少一部分布线为待补偿布线。
第一筛选模块20,与获取模块10相连接以获取第一布线集合,用于根据布线间间距,从第一布线集合中筛选出第二布线集合。
第二筛选模块30,与第一筛选模块20相连接以获取第二布线集合,用于根据布线宽度,从第二布线集合中筛选出第三布线集合。
补偿模块40,与第二筛选模块30相连接以获取第三布线集合,用于对第三布线集合中的布线进行宽度补偿。
图17示出了根据本发明实施例二的获取模块的结构示意图。如图17所示,根据本发明实施例二的获取模块10包括查询单元11、判断单元12、合并单元13和输出单元14。
具体地讲,查询单元11,用于查询布线。可选地,查询单元11在从原始布图设计中获取原始布线集合后,对原始布线集合进行查询。
判断单元12,用于判断是否有已选中布线。可选地,判断单元12与查询单元11相连接,并获取查询到的布线。
合并单元13,与判断单元12相连接以获取判断单元12的判断结果,在存在已选中布线时,将查询出的布线和已选中布线合并。
输出单元14,分别与查询单元11、判断单元12和合并单元13相连接,在存在已选中布线时,将合并的查询出的布线和已选中布线作为第一布线集合输出,在不存在已选中布线时,将查询出的布线作为第一布线集合输出。
根据本发明的又一方面,提供一种服务器。该服务器包括处理器;存储器,用于存储一个或多个程序。当该一个或多个程序被处理器执行,使得处理器实现如上所述的线宽补偿方法。
图18示出了根据本发明实施例的服务器的结构示意图。参考图18,本公开还提出了一种适于用来实现本公开实施例的示例性服务器的框图。需要明白的是,图18显示的服务器仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图18所示,服务器200以通用计算设备的形式表现。服务器200的组件可以包括但不限于:一个或者多个处理器或者处理单元210,存储器220,连接不同系统组件(包括存储器220和处理单元210)的总线201。
总线201表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
服务器200典型地包括多种计算机系统可读介质。这些介质可以是任何能够被服务器200访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器220可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)221和/或高速缓存存储器222。服务器200可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统223可以用于读写不可移动的、非易失性磁介质(图18未显示,通常称为“硬盘驱动器”)。尽管图18中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线201相连。存储器220可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开实施例各实施例的功能。
具有一组(至少一个)程序模块2241的程序/实用工具224,可以存储在例如存储器220中,这样的程序模块2241包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块2241通常执行本公开实施例所描述的实施例中的功能和/或方法。
进一步地,服务器200也可以与显示器300通信连接,用于显示筛选排序的结果,该显示器300可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,该显示器300也可以是触摸屏。
进一步地,该服务器200还可与一个或者多个使得用户能与该服务器200交互的设备通信,和/或与使得该服务器200能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口230进行。并且,服务器200还可以通过网络适配器240与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器240通过总线201与服务器200的其它模块通信。应当明白,尽管图中未示出,可以结合服务器200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元210通过运行存储在系统存储器220中的程序,从而执行各种功能应用以及数据处理,例如实现本公开实施例一所提供的用于器件建模工具的图形筛选方法。
根据本发明的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序(或称为计算机可执行指令),该程序被处理器执行时用于执行本公开实施例所提供的线宽补偿方法,该方法包括:
获取第一布线集合,第一布线集合中的至少一部分布线为待补偿布线;
根据布线间间距,从第一布线集合中筛选出第二布线集合;
根据布线宽度,从第二布线集合中筛选出第三布线集合;以及
对第三布线集合进行宽度补偿。
本公开实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言(诸如Java、Smalltalk、C++),还包括常规的过程式程序设计语言诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
应当说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (12)
1.一种线宽补偿方法,其特征在于,包括:
获取第一布线集合,所述第一布线集合中的至少一部分布线为待补偿布线;
根据布线间间距,从所述第一布线集合中筛选出第二布线集合;
根据布线宽度,从所述第二布线集合中筛选出第三布线集合;以及
对所述第三布线集合中的布线进行宽度补偿。
2.根据权利要求1所述的线宽补偿方法,其特征在于,所述获取第一布线集合包括:
查询布线;
判断是否有已选中布线,
其中,在存在所述已选中布线时,将查询出的布线和所述已选中布线合并,得到所述第一布线集合;
在不存在所述已选中布线时,将查询出的布线作为所述第一布线集合。
3.根据权利要求1所述的线宽补偿方法,其特征在于,所述根据布线间间距,从所述第一布线集合中筛选出第二布线集合包括:
找到相邻间距大于设定间距的图形的边段,记为所述第二布线集合。
4.根据权利要求1所述的线宽补偿方法,其特征在于,所述根据布线宽度,从第二布线集合中筛选出第三布线集合包括:
在所述第二布线集合中找到宽度小于或等于设定宽度的图形的边段,作为所述第三布线集合。
5.根据权利要求1所述的线宽补偿方法,其特征在于,所述根据布线宽度,从第二布线集合中筛选出第三布线集合包括:
在所述第一布线集合中,找到宽度大于设定宽度的图形的边段,记为筛除布线集合;以及
在所述第二布线集合中剔除属于所述筛除布线集合的部分,得到所述第三布线集合。
6.根据权利要求1所述的线宽补偿方法,其特征在于,所述对所述第三布线集合中的布线进行宽度补偿包括:
连接所述第三布线集合中所有图形的边段成图形轮廓点链;以及
以所述点链为中心线创建等边线路,
其中,创建的所述等边线路的宽度大于所述线路对应部分在所述第一布线集合中的宽度。
7.根据权利要求1所述的线宽补偿方法,其特征在于,所述对所述第三布线集合中的布线进行宽度补偿包括:
对所述第三布线集合中的布线进行预补偿;
根据所述布线间间距,从所述第三布线集合中筛选出第四布线集合;以及
对所述第四布线集合中的布线进行宽度补偿。
8.根据权利要求1所述的线宽补偿方法,其特征在于,所述线宽补偿方法还包括:
对补偿部分的端部进行倒角处理。
9.一种线宽补偿装置,其特征在于,包括:
获取模块,用于获取第一布线集合,所述第一布线集合中的至少一部分为待补偿布线;
第一筛选模块,与所述获取模块相连接以获取所述第一布线集合,用于根据布线间间距,从所述第一布线集合中筛选出第二布线集合;
第二筛选模块,与所述第一筛选模块相连接以获取所述第二布线集合,用于根据布线宽度,从所述第二布线集合中筛选出第三布线集合;以及
补偿模块,与所述第二筛选模块相连接以获取所述第三布线集合,用于对所述第三布线集合中的布线进行宽度补偿。
10.根据权利要求9所述的线宽补偿装置,其特征在于,所述获取模块包括:
查询单元,用于查询布线;
判断单元,用于判断是否有已选中布线;
合并单元,与所述判断单元相连接以获取所述判断单元的判断结果,在存在已选中布线时,将查询出的布线和所述已选中布线合并;以及
输出单元,分别与所述查询单元、所述判断单元和所述合并单元相连接,在存在所述已选中布线时,将合并的所述查询出的布线和所述已选中布线作为所述第一布线集合输出,在不存在所述已选中布线时,将所述查询出的布线作为所述第一布线集合输出。
11.一种服务器,其特征在于,包括:
处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述处理器执行,使得所述处理器实现如权利要求1至8中任一项所述的线宽补偿方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1至8中任一项所述的线宽补偿方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110151125.4A CN112861467A (zh) | 2021-02-03 | 2021-02-03 | 线宽补偿方法及装置、服务器和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110151125.4A CN112861467A (zh) | 2021-02-03 | 2021-02-03 | 线宽补偿方法及装置、服务器和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112861467A true CN112861467A (zh) | 2021-05-28 |
Family
ID=75987798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110151125.4A Pending CN112861467A (zh) | 2021-02-03 | 2021-02-03 | 线宽补偿方法及装置、服务器和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112861467A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024000516A1 (zh) * | 2022-06-30 | 2024-01-04 | 京东方科技集团股份有限公司 | 为目标信号线分配宽度的方法、布线基板、发光基板及显示装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101101390A (zh) * | 2007-06-26 | 2008-01-09 | 河北冀雅电子有限公司 | 一种液晶显示器件布线补偿方法 |
CN104010445A (zh) * | 2014-05-09 | 2014-08-27 | 东莞市五株电子科技有限公司 | 一种精细线路的动态补偿制作方法 |
CN104470212A (zh) * | 2013-09-25 | 2015-03-25 | 珠海方正科技高密电子有限公司 | 一种电路板阻抗线补偿方法及装置 |
CN105430908A (zh) * | 2015-10-29 | 2016-03-23 | 深圳市五株科技股份有限公司 | 印刷线路板制作的线宽补偿方法 |
CN108055760A (zh) * | 2017-12-29 | 2018-05-18 | 深圳市兴森快捷电路科技股份有限公司 | 一种差分对等长补偿阻抗匹配方法 |
CN111104773A (zh) * | 2019-12-11 | 2020-05-05 | 北京华大九天软件有限公司 | 一种基于规则的曝光补偿方法 |
-
2021
- 2021-02-03 CN CN202110151125.4A patent/CN112861467A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101101390A (zh) * | 2007-06-26 | 2008-01-09 | 河北冀雅电子有限公司 | 一种液晶显示器件布线补偿方法 |
CN104470212A (zh) * | 2013-09-25 | 2015-03-25 | 珠海方正科技高密电子有限公司 | 一种电路板阻抗线补偿方法及装置 |
CN104010445A (zh) * | 2014-05-09 | 2014-08-27 | 东莞市五株电子科技有限公司 | 一种精细线路的动态补偿制作方法 |
CN105430908A (zh) * | 2015-10-29 | 2016-03-23 | 深圳市五株科技股份有限公司 | 印刷线路板制作的线宽补偿方法 |
CN108055760A (zh) * | 2017-12-29 | 2018-05-18 | 深圳市兴森快捷电路科技股份有限公司 | 一种差分对等长补偿阻抗匹配方法 |
CN111104773A (zh) * | 2019-12-11 | 2020-05-05 | 北京华大九天软件有限公司 | 一种基于规则的曝光补偿方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024000516A1 (zh) * | 2022-06-30 | 2024-01-04 | 京东方科技集团股份有限公司 | 为目标信号线分配宽度的方法、布线基板、发光基板及显示装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8640079B2 (en) | Method and system for searching and replacing graphical objects of a design | |
US7197738B1 (en) | Method and apparatus for routing | |
US20080109780A1 (en) | Method of and apparatus for optimal placement and validation of i/o blocks within an asic | |
US8893069B2 (en) | Method of schematic driven layout creation | |
US20200184034A1 (en) | Printed circuit board design | |
US20120240094A1 (en) | Wiring design support device and wiring design supporting method | |
CN114970439A (zh) | 自动布线方法、装置、计算机设备、存储介质 | |
CN113673191B (zh) | 时序修正方法及装置、计算装置和存储介质 | |
CN112861467A (zh) | 线宽补偿方法及装置、服务器和存储介质 | |
US7302666B2 (en) | Logic circuit design method, computer-readable recording medium having logic circuit design program stored therein, and logic circuit design device | |
US8015529B1 (en) | Methods and apparatus for diagonal route shielding | |
US20100269080A1 (en) | Computer-aided design system and method for simulating pcb specifications | |
CN115081389B (zh) | 一种印刷电路板走线检查方法、装置、设备、存储介质 | |
JP4017583B2 (ja) | 半導体集積回路の設計データの回路表示方法 | |
US11176309B1 (en) | System and method for validation of photonics device layout designs | |
JP2008277497A (ja) | 半導体集積回路の設計装置、半導体集積回路の設計方法、半導体装置の製造方法および半導体装置 | |
WO2021013044A1 (zh) | 电路连线保存方法、fpga系统及存储介质 | |
CN112685992A (zh) | 一种基于Skill快速查找跨平面走线的方法和系统 | |
US10839119B2 (en) | Bus wiring searching method and information processing apparatus | |
US8612913B1 (en) | Automated approach to planning critical signals and busses | |
JP4670482B2 (ja) | 工程フロー図作成支援システムおよび方法 | |
CN101206679B (zh) | 布局图设计规则检查的方法与计算机可读取记录介质 | |
US10445459B1 (en) | Interactive routing with poly vias | |
US20080127022A1 (en) | Method for managing net data of a layout | |
CN116956810A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210528 |
|
RJ01 | Rejection of invention patent application after publication |