CN117172191B - 一种版图布局的生成方法及系统 - Google Patents
一种版图布局的生成方法及系统 Download PDFInfo
- Publication number
- CN117172191B CN117172191B CN202311451333.1A CN202311451333A CN117172191B CN 117172191 B CN117172191 B CN 117172191B CN 202311451333 A CN202311451333 A CN 202311451333A CN 117172191 B CN117172191 B CN 117172191B
- Authority
- CN
- China
- Prior art keywords
- array
- layout
- data set
- class data
- parameter
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000003491 array Methods 0.000 claims abstract description 47
- 238000002372 labelling Methods 0.000 claims description 45
- 238000013461 design Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 10
- 238000002360 preparation method Methods 0.000 claims description 6
- 230000000452 restraining effect Effects 0.000 claims description 4
- 238000010276 construction Methods 0.000 abstract description 3
- 238000004904 shortening Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 21
- 230000003071 parasitic effect Effects 0.000 description 10
- 238000000605 extraction Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000009432 framing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请公开了一种版图布局的生成方法及系统,通过获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局;结合所述原理视图中各个数组之间的连接关系生成版图布局结果。本申请提出的方案对元器件进行分组并标注用于布局的相关信息,而后根据标注信息确定每个数组内的版图布局以及结合连接关系确定最终版图布局,实现了自动版图布局,达到提高版图布局速度,缩短工期的目的,即提高了集成电路版图的布局效率。
Description
技术领域
本申请涉及集成电路版图自动设计技术领域,特别是涉及一种版图布局的生成方法及系统。
背景技术
现有的集成电路版图设计技术主要是,通过原理Schematic视图和布局Layout视图的一一映射提取出Layout视图。应用该种方法提取的Layout视图中版图元素堆叠交杂,毫无布局逻辑,这就需要版图设计人员在满足前端需求和版图设计规则时对其进行合理化布局操作,依靠人为的干预和监测保证设计能够满足要求。
但是,现有技术中的这种设计流程对设计人员的依赖性较大,在版图设计过程中必须要有设计人员的干预和监测。这导致开发成本非常高,开发周期冗长,并且无法避免人为错误的可能性。
因此,如何提高集成电路版图设计的效率,是本领域技术人员亟待解决的技术问题。
发明内容
基于上述问题,本申请提供了一种版图布局的生成方法及系统,用以提高集成电路版图设计的效率。
为解决上述问题,本申请实施例提供的技术方案如下:
本申请第一方面提供了一种版图布局的生成方法,包括:
获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;
基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局,所述预备版图布局为各个数组基于各自对应的排布模板排布得到的;
结合所述原理视图中各个数组之间的连接关系生成版图布局结果。
可选的,所述基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局,包括:
根据各个数组的标注信息确定各个数组的第一类数据集和第二类数据集,所述第一类数据集包括用于依据布局模版库中存储的排布模版对各个数组内元器件进行版图排布的参数;
基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,依据确定出的排布模板对各个数组内的元器件进行版图排布,得到各个数组的预备版图布局;
基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,所述第二类数据集包括用于在排布模版的基础上进一步调整数组内元器件版图布局的参数。
可选的,所述根据各个数组的标注信息确定各个数组的第一类数据集和第二类数据集包括:
提取所述原理视图中各个数组对应的标注信息中,用于实现版图布局的预备标注信息;
将所述预备标注信息转化成符合预设识别条件的信息,并根据参数类型进行分类,得到各个数组的第一类数据集和第二类数据集。
可选的,所述基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,包括:
响应于各个数组中任意一个数组的第一类数据集中,不包含用于匹配排布模版的参数,确定预设排布模板为该数组对应的排布模板。
可选的,所述基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,包括:
响应于各个数组中任意一个数组的第一类数据集中,包含用于匹配排布模版的参数,确定该数组对应的排布模板。
可选的,所述基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,包括:
当各个数组中至少一个数组的第二类数据集,包括用于约束数组内版图相对间距、相对位置和信号线宽度的第一参数时,基于所述第一参数确定该数组对应的版图相对间距、相对位置和信号线宽度,基于确定出的所述版图相对间距、相对位置和信号线宽度调整该数组的预备版图布局。
可选的,所述基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,包括:
当各个数组中至少一个数组的第二类数据集,包括用于表征添加伪器件的第二参数时,确定该数组对应的伪器件,将确定出的伪器件加入该数组内部的版图布局。
可选的,所述基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,包括:
当各个数组中至少一个数组的第二类数据集中包括第三参数,和/或,第四参数时,确定该数组中各参数对应的指令数据,所述第三参数用于表征是否考虑第一预设因素对版图布局产生的影响,所述第四参数用于表征是否考虑第二预设因素对版图布局产生的影响;
当确定出的指令数据符合预设指令条件时,基于所述指令数据对该数组的预备版图布局进行调整,得到该数组内部的版图布局。
可选的,所述获取原理视图中各个数组的标注信息之前,还包括:
框取用于自动布局的元器件得到若干个数组;
对每个数组标注用于实现数组内部布局的标注信息;
基于工艺设计规则,将每个数组中框取的元器件转化成布局视图形式,得到每个数组对应的布局视图。
本申请第二方面提供了一种版图布局的生成系统,包括:
标注信息获取单元,用于获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;
版图布局单元,用于基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局,所述预备版图布局为各个数组基于各自对应的排布模板排布得到的;
版图布局结果生成单元,用于结合所述原理视图中各个数组之间的连接关系生成版图布局结果。
相较于现有技术,本申请具有以下有益效果:
通过获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局,所述预备版图布局为各个数组基于各自对应的排布模板排布得到的;结合所述原理视图中各个数组之间的连接关系生成版图布局结果。相对于现有技术仅依赖提取出的布局Layout视图进行人工布局,本申请提出的方案对元器件进行分组并标注用于布局的相关信息,而后根据标注信息确定每个数组内的版图布局以及结合连接关系确定最终版图布局,实现了自动版图布局,减少前后端的迭代交互,不需要人工干预版图设计,达到提高版图布局速度,缩短工期的目的,即提高了集成电路版图的布局效率。
附图说明
为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的原始电路Schematic视图;
图2为现有相关技术提取Layout视图的结果示意图;
图3为本申请实施例提供的一种版图布局的生成方法的流程图;
图4a为本申请实施例提供的框取后包含数组的电路示意图;
图4b为本申请实施例提供的包含布局标注信息的电路示意图;
图5为本申请实施例提供的提取Layout视图的结果示意图;
图6为本申请实施例提供的布局模板库中三种排布模板的示意图;
图7为本申请实施例提供的共质心对称排布模板示意图;
图8为本申请实施例提供的预备版图布局示意图;
图9为本申请实施例提供的版图初步布局结果示意图;
图10为本申请实施例提供的版图最终布局结果示意图;
图11为本申请实施例所提供的一种版图布局的生成系统结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于理解本申请实施例提供的技术方案,下面将先对本申请实施例涉及的背景技术进行说明。
需要说明的是,本申请中原理视图指代Schematic视图,布局视图指代layout视图,伪器件指代dummy器件,其中dummy器件的作用是一些关键器件需要匹配,需要让版图中周围环境一致,所以要摆上一些没有功能、但是可以仿造器件周围环境的东西,即dummy器件。Schematic视图是一种图形化界面,用于显示和编辑电路的原理图或框图。它通常用于使工程师可以更直观地理解和设计电路。在Schematic视图中,电路元件和它们之间的连接以符号和线路的形式表示,而不是实际的物理布局。这使得用户能够更容易地分析和修改电路,而不需要关注具体的布线和物理尺寸。
正如前文所述,现有技术中,目前能够通过Schematic视图和Layout视图的一一映射提取出Layout视图,该过程可以详细描述为通过算法1建立Schematic视图和Layout视图之间的互通。通过算法2将Schematic视图中所有组件的信息提取并存储到相应的存储文件。通过算法3读取存储文件中的信息赋值给Layout视图,提取参数化的Layout视图。但在实际应用过程中,应用该种方法提取后的版图布局杂乱无章,极易出现版图元素堆叠交杂的现象,图1为本申请实施例提供的原始电路Schematic视图,例如利用现有技术将图1所示原始电路的Schematic视图提取为参数化Layout视图,效果如图2所示,提取的Layout视图中版图元素堆叠交杂,毫无布局逻辑,这就需要版图设计人员在满足前端需求和版图设计规则时对其进行合理化布局操作。可见现有技术不能实现模拟版图的自动合理化布局。
本申请实施例提供的方法由后台系统执行,例如可以由版图设计后台服务器执行。所述版图设计后台服务器可以是一台服务器设备,也可以是由多台服务器组成的服务器集群。
为了解决这一问题,在本申请实施例提供了版图布局的生成方法及系统。通过获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局,所述预备版图布局为各个数组基于各自对应的排布模板排布得到的;结合所述原理视图中各个数组之间的连接关系生成版图布局结果。即对元器件进行分组并标注用于布局的相关信息,而后根据标注信息确定每个数组内的版图布局以及结合连接关系确定最终版图布局,相对于现有技术仅依赖提取出的Layout视图进行人工布局,本申请提出的方案基于schematic视图中不同数组的标注实现根据实际需求自动布局,达到提高版图布局速度,缩短工期的目的,即提高了集成电路版图的效率。
为了便于理解本申请实施例提供的版图布局的生成方法,下面对本申请的场景示例进行说明。
以下通过一个实施例,对本申请提供的一种版图布局的生成方法进行说明。参见图3,该图3为本申请实施例提供的一种版图布局的生成方法的流程图,该方法流程的执行主体为服务器,进一步的,主体可以为服务器中的版图布局系统,该方法包括:
S101:获取原理schematic视图中各个数组的标注信息。
所述数组可以用于实现目标电路功能,包括至少一个元器件,其中目标电路功能可以是某种特定的电路功能,关于目标电路功能的选取和确定可以根据实际需求进行适应性调整。
其中,所述标注信息用于实现数组内部版图自动布局,用于实现自动布局的相关标注信息可以以文本标注的方式体现在电路中,但不限于这一种形式,还可以将标注信息以参数形式或以其他形式体现。
在一种可能的实现方式中,在所述步骤S101之前,还包括步骤S1001-S1002:
步骤S1001:框取用于自动布局的元器件得到若干个数组。
在实际场景中可以通过分析原理Schematic视图,确定需要实现自动布局的元器件,在需要实现自动布局的元器件中,如果某几个器件实现了某种电路功能,那么就可以将该几个器件用多边形或圆形框成一个数组,即在已有的schematic视图中进行框取,获得至少一个所述数组。
需要说明的是,关于框取的形状仅仅是为方便画图的举例说明,在实际应用场景中并不局限于某种形状,上述举例对框取不造成限制。在本实施例中,采用多边形对图1所示电路图进行框取,参见图4a为本申请实施例提供的框取后包含数组的电路示意图,即框取得到数组1、数组2、数组3、数组4四个数组,分别对应图4a中的1~4四个数组。
步骤S1002:对每个数组标注用于实现数组内部版图自动布局的标注信息,基于工艺设计规则,将每个数组中框取的元器件转化成layout视图形式,得到schematic视图对应的layout视图。
在上述已有的schematic视图中进行框取得到若干个数组,在实际应用场景中,可以先对schematic视图中进行框取,在框取得到数组后,再在每个数组的框取范围内标注该数组内部器件的布局标注信息,另一种可能的实现方式,也可以在框取前或框取的同时,标注元器件的布局标注信息,将每个数组的对应标注信息作为该数组的相关参数。
在上述步骤中已经确定了若干个数组的情况下,并在相应的多边形范围内,对这些需要实现自动布局的元器件按照约定的规范标注相关信息。本实施例以数组3和数组4两个数组为例,如图4b所示,图4b为本申请实施例提供的包含布局标注信息的电路示意图。
将图4a中框取的电子元器件转换成参数化layout视图,实现后形式如图5所示,图5为本申请实施例提供的版图布局示意图,此时各数组内版图元素以及各数组间版图元素之间没有任何布局约束。
S102:基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局。
所述预备版图布局为各个数组基于各自对应的排布模板排布得到的。
在一种可能的实现方式中,所述基于所述schematic视图中各个数组的标注信息,确定各个数组内部的版图布局,包括以下步骤A1-A3:
步骤A1:根据各个数组的标注信息确定各个数组的第一类数据集和第二类数据集。
所述第一类数据集包括用于依据布局模版库中存储的排布模版对转换后的layout视图中的元器件进行版图排布的参数。所述第二数据集包括用于约束布局相对位置、间距和风格的参数。
需要说明的是,实现自动布局的相关标注信息可以以文本标注的方式体现在电路中,但不限于这一种形式,还可以将文本标注信息作为多边形的参数或以其他形式体现。
在一种可能的实现方式中,所述步骤A1根据各个数组的标注信息确定各个数组的第一类数据集和第二类数据集,包括如下步骤A10-A11:
步骤A10:提取所述schematic视图中各个数组对应的标注信息中,用于实现版图布局的预备标注信息。
Schematic视图中的标注信息并不都是与版图布局相关的,标注信息中也可能包含电路设计相关的标注,因此在实际应用场景中,需要对各个数组的标注信息进行提取,筛选标注信息中可以用来实现版图布局的信息,得到预备标注信息。此外,还可以筛选某种特定的应用于后续电路版图布局的标注信息,也可以筛选完整的用于电路版图布局的标注信息,该预设筛选标准可以根据实际需求进行适应性调整。
步骤A11:将所述预备标注信息转化成符合预设识别条件的信息,并根据参数类型进行分类,得到各个数组的第一类数据集和第二类数据集。
读取schematic视图中标注的文本信息,并将其转换为符合预设识别条件的信息(例如转化为符合机器语言的信息),存储到第一类数据集data1和第二类数据集data2中。读取图中各个数组标注的文本信息,其中第一类数据集data1:用于匹配布局模型库中的布局结构;包括图4b中所示各数组中的匹配参数M。第二类数据集data2:用于约束布局间距和风格,如信号线的宽度、dummy的添加、guardring的添加等信息。第二类数据集包括用于约束layout视图内元器件相对间距、相对位置和线宽的第一参数,包括电流参数C、电压参数V、敏感信号参数S等;用于表征是否添加dummy器件的第二参数D;用于表征是否考虑噪声因素的第三参数N;用于表征是否考虑寄生因素的第四参数P。
下面为可以在schematic视图中添加的文本标注举例:
匹配参数M——选项:type——DiffPair、CurrentMirror、ResArray、CapArray;
level——best、better、good,例如:M:ResArray best。
电流参数C——选项:peak、dc、avg,例如:C:peak 100uA。
电压参数V——选项:peak、dc、avg,例如:V:dc 500mV。
敏感信号S——选项:线网名、添加屏蔽的信号、屏蔽方式1(同层两侧加屏蔽线)、2(上下左右加屏蔽)、4(其他形式),例如:S:VIN GND 2。
噪声参数N——选项:0(不需要考虑噪声)或1(需要考虑噪声,并添加guardring电位环)。
寄生参数P——选项:0(不需要考虑寄生)或1(需要考虑寄生,并添加guardring电位环)。
dummy参数D——选项:0(不需要添加dummy)或1(添加dummy)。
步骤A2:基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,依据确定出的排布模板分别对各个数组内的呈layout视图形式的元器件进行排布,得到各个数组的预备版图布局。
其中,布局模板库包括预先设置的若干种不同的排布模板,例如布局模板库可以包括至少三种排布模板:Good(结构一致型)、Better(中心对称型)和Best(共质心对称型),关于排布模板的布局形式可以参考图6,图6为本申请实施例提供的布局模板库中三种排布模板的示意图,需要说明的是A、B代表两个同类器件的相应实例。其中,Good布局表示器件A和B摆放完全一致,且所有A放一起,所有B放一起;Better布局表示器件A和B的摆放成中心对称形式;Best布局表示器件A和B的摆放成共质心对称形式,“A/2”的“2”是指将A的总数分为两等份,上下均匀分布(B同),使得所有器件均匀分布,减少客观因素的影响,当然也可以分为n等份。在实际应用场景中,无论是哪种布局形式,器件的摆放方向需一致,均为纵向或均为横向。关于共质心对称的呈现形式可以参考图7,图7为本申请实施例提供的共质心对称排布模板示意图。
所述基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,包括:
在一种可能的实现方式中,响应于各个数组中任意一个数组的第一类数据集中,包含用于匹配排布模版的参数,确定该数组对应的排布模板。
即在该种实现方式中该数组的第一类数据集包含了用于匹配布局结构的参数,例如在图4b中数组4中的标注{*M:DiffPair best},其中M即为用于匹配布局结构的参数,DiffPair为该数组内部的电路结构,以及best为布局模型库中的best(共质心对称型)布局。
所述基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,还包括:
在一种可能的实现方式中,响应于各个数组中任意一个数组的第一类数据集中,不包含用于匹配排布模版的参数,确定预设排布模板为该数组对应的排布模板。
即在该种实现方式中该数组的第一类数据集可以为空集(即标注信息中不存在匹配布局结构的参数M),或者匹配布局结构的参数M中并不包含有效用于匹配布局模型库的布局结构,例如在图4b中数组3中的标注{*M:CurrentMirror}中,其中CurrentMirror为数组3框取的电路结构,该数组用于匹配布局结构的参数M缺省了有效用于匹配布局模型库的布局结构,这些情况默认匹配预设排布模板为数组3的排布模板,其中预设排布模板可以根据实际需求进行调整和设置,例如可以选取为Good(结构一致型)布局。根据各个数组对应的标注信息中的第一类数据集确定各个数组对应的排布模板,从而将图5转化为图8,图8为本申请实施例提供的预备版图布局示意图。
步骤 A3:基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局。
所述第二类数据集包括用于在排布模版的基础上进一步调整数组内版图布局的参数。第二类数据集中至少包括以下四种参数:用于决定版图相对间距、相对位置和线宽的第一参数(V/C/S);用于表征是否添加dummy器件的第二参数(D);用于表征是否考虑噪声的第三参数(N);用于表征是否考虑寄生的第四参数(P);或者还可以包括其他影响版图器件布局的参数。
在实际应用场景中,根据各个数组的第二类数据集确定数组内部布局的相对位置、间距和风格中的一种或多种,完成各个数组的内部版图布局。即可以根据第二类数据集data2约束布局的相对位置、间距及风格,完成各个数组的版图布局。
在一种可能的实现方式中,所述步骤A3基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,包括以下情况:
情况A:当各个数组中至少一个数组的第二类数据集,包括用于约束数组内版图相对间距、相对位置和信号线宽度的第一参数时,基于所述第一参数确定该数组对应的版图相对间距、相对位置和信号线宽度,基于确定出的所述版图相对间距、相对位置和信号线宽度调整该数组的预备版图布局。
其中,所述第一参数可以包括电压参数V、电流参数C和敏感信号参数S中的任意一个或多个,也可以没有。第一参数用于约束版图相对间距、相对位置和信号线宽度。在实际应用场景中,图4b中各数组中标注的S参数为第一参数的一部分,与电压参数V和电流参数C均可以起到约束版图相对间距、相对位置和信号线宽度的作用,例如参数S的呈现形式可以为敏感信号S——选项:线网名、添加屏蔽的信号、屏蔽方式1(同层两侧加屏蔽线)、2(上下左右加屏蔽)、4(其他形式),例如S:VIN GND 2。其中,VIN为表征线网名称的参数,GND为用于表征目标屏蔽信号的参数,2为用于表征屏蔽方式的参数,即表征的含义为对名为VIN的线网以上下左右加屏蔽的方式添加GND屏蔽信号。在实际应用场景中,基于参数S和/或参数V、参数C的呈现形式和表征含义决定版图相对间距、相对位置和信号线宽度,从而调整该数组的预备版图布局。
需要说明的是上述对于各个参数的命名方式可以根据实际需求进行调整,例如对用于表征屏蔽方式的参数的表征形式不仅仅局限于1、2、3和4,也可以根据实际需求调整为a,b,c和d等形式。并且对于第二参数的表现形式中各个表征线网名称的参数、用于表征目标屏蔽信号的参数和用于表征屏蔽方式的参数并无固定的顺序,可以根据实际需求进行调整。
在实际应用场景中,数组中标注的第一参数为V参数和/或C参数时,例如:C:peak100uA、V:dc 500mV,在实际过程中可以根据该参数调整数组内元器件之间的相对距离,一般情况下,电流值/电压值大的地方,相应版图中信号线线宽较宽。在实际应用场景中,可以在参数V与参数C的基础上,再结合参数S呈现形式和表征含义共同决定版图相对间距、相对位置和信号线宽度,从而调整该数组的预备版图布局。
情况B:当各个数组中至少一个数组的第二类数据集,包括用于表征是否添加dummy器件的第二参数时,如需添加,则确定该数组对应的dummy器件,将确定出的dummy器件加入该数组的预备版图布局。
在实际应用场景中,该第二参数D在电路中的呈现形式可以为{*D:0}或{*D:1}。其中,0表示不需要添加dummy器件;1表示需要添加dummy器件,并对相应数组添加dummy器件。第二参数D的呈现形式不止局限0和1,可以根据实际需求进行调整,上举例不对该参数的呈现形式产生限制。
情况C:当各个数组中至少一个数组的第二类数据集,包括第三参数时,确定该数组中各参数对应的指令数据,当确定出的指令数据符合预设指令条件时,基于所述指令数据对该数组的预备版图布局进行调整,得到该数组内部的版图布局。
其中,第三参数用于表征是否考虑第一预设因素对版图布局产生的影响,第一预设因素可以为噪声因素,则第三参数为用于表征是否需要考虑噪声因素的参数N,即根据第三参数N的相关标注判断是否需要考虑噪声因素,并基于判断结果对预备版图布局做出相应调整。在实际应用场景中,该第三参数N在电路中的呈现形式可以为{*N:0}或{*N:1}。其中,0和1均为指令数据,当设置预设指令条件为指令数据等于1时,指令数据0表示不需要考虑噪声因素,指令数据1表示需要考虑噪声因素,当确定出的指令数据符合预设指令条件时,对相应数组添加电位环,电位环的表现形式可以为对数组内的元器件添加环状线圈,该环状线圈具有多个版图层。第三参数N的指令数据呈现形式不止局限0和1,可以根据实际需求进行调整,上举例不对该参数的呈现形式产生限制。
情况D:当各个数组中至少一个数组的第二类数据集,包括第四参数时,确定该数组对应的指令数据,当确定出的指令数据符合预设指令条件时,基于所述指令数据对该数组的预备版图布局进行调整,得到该数组内部的版图布局。
其中,第四参数用于表征是否考虑第二预设因素对版图布局产生的影响,第二预设因素可以为寄生因素,则第四参数为用于表征是否需要考虑寄生因素的参数P,即根据第四参数P的相关标注判断是否需要考虑寄生因素,并对预备版图布局做出相应调整。在实际应用场景中,该第四参数P在电路中的呈现形式可以为{*P:0}或{*P:1}。其中,0和1均为指令数据,当设置预设指令条件为指令数据等于1时,指令数据0表示不需要考虑寄生因素,指令数据1表示需要考虑寄生因素,当确定出的指令数据符合预设指令条件时,对相应数组添加电位环,电位环的表现形式可以为对数组内的元器件添加环状线圈,该环状线圈具有多个版图层。第四参数P的指令数据呈现形式不止局限0和1,可以根据实际需求进行调整,上举例不对该参数的呈现形式产生限制。
根据上述各个参数的相关解释,以图4b中数组3为例,框取数组3的多边形中除了第一类数据集中的{*M:CurrentMirror}还包含第二类数据集中的标注{*N:1}和{*S:NVBIGND 2},其中{*N:1}表示需要考虑噪声并且添加电位环;{*S:NVBI GND 2}表示对名为NVBI的线网以上下左右加屏蔽的方式添加GND屏蔽信号。根据第二类数据集中的标注信息,确定数组内部布局的相对位置、间距及风格,完成各个数组的内部版图布局。将图4a所示电路根据各数组的标注信息进行版图自动布局,结果如图9所示,图9为本申请实施例提供的版图初步布局结果示意图。
需要说明的是,上述第二参数D、第三参数N以及第四参数P的指令数据取0时,不会对数组的预备版图布局产生影响,因此在不考虑噪声因素、寄生因素或不需要添加dummy器件时,可以不对第三参数N、第四参数P或第二参数D进行标注。
上述步骤确定了各数组内部的版图布局,实现了数组内部的版图自动布局。此外,还可以通过分析schematic视图中各数组之间的连接关系,确定相应layout视图中各数组之间的布局,从而实现数组之间的版图布局。在本实施例中,通过分析如图4a所示的schematic视图,其中标号1、2、3和4分别对应数组1、数组2、数组3和数组4,发现数组1与数组3、数组4的连接关系更紧密的情况下,所以可以调整数组之间距离,拉近连接关系紧密的数组之间的距离,得到最终的版图布局结果,如图10所示,图10为本申请实施例提供的版图最终布局结果示意图。
S103:结合所述原理视图中各个数组之间的连接关系生成版图布局结果。
综上,上述步骤中,即对元器件进行框取并标注用于布局的相关信息,而后根据标注信息确定每个数组内的版图布局以及根据电路连接关系确定各个数组间的版图布局,从而实现版图自动布局。本申请提出的方案基于schematic视图中不同数组的标注实现根据实际需求自动布局,节省大量的版图布局工作,可以大大缩短工期,提高版图绘制的效率和最终版图的良率。
以上为本申请实施例所提供的版图布局的生成方法的一些具体实现方式,基于此,本申请还提供了对应的用于版图布局的生成的系统。下面将从功能模块化的角度对本申请实施例所提供的系统进行介绍。图11为本申请实施例所提供的一种版图布局的生成系统结构图。
所述系统包括:
标注信息获取单元201,用于获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;
版图布局单元202,用于基于所述原理视图中各个数组的标注信息,确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息调整所述预备版图布局,得到各个数组内部的版图布局,所述预备版图布局为各个数组基于各自对应的排布模板排布得到的;
版图布局结果生成单元203,用于结合所述原理视图中各个数组之间的连接关系生成版图布局结果。
可选的,所述版图布局单元包括:
数据集确定单元,用于根据各个数组的标注信息确定各个数组的第一类数据集和第二类数据集,所述第一类数据集包括用于依据布局模版库中存储的排布模版对各个数组内元器件进行版图排布的参数;
版图排布确定单元,用于基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板;
排布单元,用于依据确定出的排布模板对各个数组内的元器件进行版图排布,得到各个数组的预备版图布局;
数组内部版图布局确定单元,用于基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,所述第二类数据集包括用于在排布模版的基础上进一步调整数组内元器件版图布局的参数。
可选的,所述数据集确定单元,具体用于提取所述原理视图中各个数组对应的标注信息中,用于实现版图布局的预备标注信息;将所述预备标注信息转化成符合预设识别条件的信息,并根据参数类型进行分类,得到各个数组的第一类数据集和第二类数据集。
可选的,所述版图排布确定单元,具体用于响应于各个数组中任意一个数组的第一类数据集中,不包含用于匹配排布模版的参数,确定预设排布模板为该数组对应的排布模板。
可选的,所述版图排布确定单元,具体用于响应于各个数组中任意一个数组的第一类数据集中,包含用于匹配排布模版的参数,确定该数组对应的排布模板。
可选的,所述数组内部版图布局确定单元,具体用于当各个数组中至少一个数组的第二类数据集,包括用于约束数组内版图相对间距、相对位置和信号线宽度的第一参数时,基于所述第一参数确定该数组对应的版图相对间距、相对位置和信号线宽度,基于确定出的所述版图相对间距、相对位置和信号线宽度调整该数组的预备版图布局。
可选的,所述数组内部版图布局确定单元,具体用于当各个数组中至少一个数组的第二类数据集,包括用于表征添加伪器件的第二参数时,确定该数组对应的伪器件,将确定出的伪器件加入该数组内部的版图布局。
可选的,所述数组内部版图布局确定单元,具体用于当各个数组中至少一个数组的第二类数据集中包括第三参数,和/或,第四参数时,确定该数组中各参数对应的指令数据,所述第三参数用于表征是否考虑第一预设因素对版图布局产生的影响,所述第四参数用于表征是否考虑第二预设因素对版图布局产生的影响;
当确定出的指令数据符合预设指令条件时,基于所述指令数据对该数组的预备版图布局进行调整,得到该数组内部的版图布局。
可选的,所述系统还包括:
框取单元,用于框取用于自动布局的元器件得到若干个数组;
标注单元,用于对每个数组标注用于实现数组内部布局的标注信息;
布局视图确定单元,用于基于工艺设计规则,将每个数组中框取的元器件转化成布局视图形式,得到每个数组对应的布局视图。
本申请实施例还提供了对应的设备以及计算机存储介质,用于实现本申请实施例所提供的版图布局的生成方法方案。
其中,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行本申请任一实施例所述的版图布局的生成方法。
所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现本申请任一实施例所述的版图布局的生成方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种版图布局的生成方法,其特征在于,包括:
获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;
基于所述原理视图中各个数组的标注信息,确定各个数组的第一类数据集和第二类数据集,所述第一类数据集包括用于依据排布模版对各个数组内元器件进行版图排布的参数,所述第二类数据集包括用于在排布模版的基础上进一步调整数组内元器件版图布局的参数;
根据所述第一类数据集确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息和所述第二类数据集调整所述预备版图布局,得到各个数组内部的版图布局,所述预备版图布局为各个数组基于各自对应的排布模板排布得到的;
结合所述原理视图中各个数组之间的连接关系生成版图布局结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一类数据集确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息和所述第二类数据集调整所述预备版图布局,得到各个数组内部的版图布局,包括:
基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板;
依据确定出的排布模板对各个数组内的元器件进行版图排布,得到各个数组的预备版图布局;
基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局。
3.根据权利要求1所述的方法,其特征在于,所述基于所述原理视图中各个数组的标注信息,确定各个数组的第一类数据集和第二类数据集,包括:
提取所述原理视图中各个数组对应的标注信息中,用于实现版图布局的预备标注信息;
将所述预备标注信息转化成符合预设识别条件的信息,并根据参数类型进行分类,得到各个数组的第一类数据集和第二类数据集。
4.根据权利要求2所述的方法,其特征在于,所述基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,包括:
响应于各个数组中任意一个数组的第一类数据集中,不包含用于匹配排布模版的参数,确定预设排布模板为该数组对应的排布模板。
5.根据权利要求2所述的方法,其特征在于,所述基于各个数组的第一类数据集和布局模板库,确定所述布局模板库中与各个数组对应的排布模板,包括:
响应于各个数组中任意一个数组的第一类数据集中,包含用于匹配排布模版的参数,确定该数组对应的排布模板。
6.根据权利要求2所述的方法,其特征在于,所述基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,包括:
当各个数组中至少一个数组的第二类数据集,包括用于约束数组内版图相对间距、相对位置和信号线宽度的第一参数时,基于所述第一参数确定该数组对应的版图相对间距、相对位置和信号线宽度,基于确定出的所述版图相对间距、相对位置和信号线宽度调整该数组的预备版图布局。
7.根据权利要求2所述的方法,其特征在于,所述基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,包括:
当各个数组中至少一个数组的第二类数据集,包括用于表征添加伪器件的第二参数时,确定该数组对应的伪器件,将确定出的伪器件加入该数组内部的版图布局。
8.根据权利要求2所述的方法,其特征在于,所述基于各个数组的第二类数据集和各个数组的预备版图布局,得到各个数组内部的版图布局,包括:
当各个数组中至少一个数组的第二类数据集中包括第三参数,和/或,第四参数时,确定该数组中各参数对应的指令数据,所述第三参数用于表征是否考虑第一预设因素对版图布局产生的影响,所述第四参数用于表征是否考虑第二预设因素对版图布局产生的影响;
当确定出的指令数据符合预设指令条件时,基于所述指令数据对该数组的预备版图布局进行调整,得到该数组内部的版图布局。
9.根据权利要求1所述的方法,其特征在于,所述获取原理视图中各个数组的标注信息之前,还包括:
框取用于自动布局的元器件,得到若干个数组;
对每个数组标注用于实现数组内部布局的标注信息;
基于工艺设计规则,将每个数组中框取的元器件转化成布局视图形式,得到每个数组对应的布局视图。
10.一种版图布局的生成系统,其特征在于,所述系统包括:
标注信息获取单元,用于获取原理视图中各个数组的标注信息,所述数组用于实现目标电路功能,包括至少一个元器件;
版图布局单元,用于基于所述原理视图中各个数组的标注信息,确定各个数组的第一类数据集和第二类数据集,所述第一类数据集包括用于依据排布模版对各个数组内元器件进行版图排布的参数,所述第二类数据集包括用于在排布模版的基础上进一步调整数组内元器件版图布局的参数;根据所述第一类数据集确定各个数组对应的预备版图布局,并基于所述各个数组的标注信息和所述第二类数据集调整所述预备版图布局,得到各个数组内部的版图布局,所述预备版图布局为各个数组基于各自对应的排布模板排布得到的;
版图布局结果生成单元,用于结合所述原理视图中各个数组之间的连接关系生成版图布局结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311451333.1A CN117172191B (zh) | 2023-11-02 | 2023-11-02 | 一种版图布局的生成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311451333.1A CN117172191B (zh) | 2023-11-02 | 2023-11-02 | 一种版图布局的生成方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117172191A CN117172191A (zh) | 2023-12-05 |
CN117172191B true CN117172191B (zh) | 2024-01-30 |
Family
ID=88937987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311451333.1A Active CN117172191B (zh) | 2023-11-02 | 2023-11-02 | 一种版图布局的生成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117172191B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508974A (zh) * | 2011-11-15 | 2012-06-20 | 华东师范大学 | 基于版图变化改变互连延迟参数的集成电路分析方法 |
CN108399299A (zh) * | 2018-03-02 | 2018-08-14 | 京东方科技集团股份有限公司 | 一种集成电路物理版图生成方法及装置 |
US10192020B1 (en) * | 2016-09-30 | 2019-01-29 | Cadence Design Systems, Inc. | Methods, systems, and computer program product for implementing dynamic maneuvers within virtual hierarchies of an electronic design |
CN109684755A (zh) * | 2018-12-28 | 2019-04-26 | 佛山中科芯蔚科技有限公司 | 一种数模混合芯片异步电路全定制方法及系统 |
CN112560388A (zh) * | 2020-12-23 | 2021-03-26 | 广东工业大学 | 一种版图设计中的对称布局布线方法 |
CN112966465A (zh) * | 2021-04-07 | 2021-06-15 | 长鑫存储技术有限公司 | 电路仿真方法及设备 |
-
2023
- 2023-11-02 CN CN202311451333.1A patent/CN117172191B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508974A (zh) * | 2011-11-15 | 2012-06-20 | 华东师范大学 | 基于版图变化改变互连延迟参数的集成电路分析方法 |
US10192020B1 (en) * | 2016-09-30 | 2019-01-29 | Cadence Design Systems, Inc. | Methods, systems, and computer program product for implementing dynamic maneuvers within virtual hierarchies of an electronic design |
CN108399299A (zh) * | 2018-03-02 | 2018-08-14 | 京东方科技集团股份有限公司 | 一种集成电路物理版图生成方法及装置 |
CN109684755A (zh) * | 2018-12-28 | 2019-04-26 | 佛山中科芯蔚科技有限公司 | 一种数模混合芯片异步电路全定制方法及系统 |
CN112560388A (zh) * | 2020-12-23 | 2021-03-26 | 广东工业大学 | 一种版图设计中的对称布局布线方法 |
CN112966465A (zh) * | 2021-04-07 | 2021-06-15 | 长鑫存储技术有限公司 | 电路仿真方法及设备 |
Non-Patent Citations (1)
Title |
---|
基于加速度计产品的ASIC版图设计和验证;李侠;王浩;;中国集成电路(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117172191A (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7917877B2 (en) | System and method for circuit schematic generation | |
US7975233B2 (en) | Automatic conversion of a textual language into a graphical program representation | |
US20170169156A1 (en) | Designing a Density Driven Integrated Circuit | |
CN112818457A (zh) | 基于cad图纸的bim模型智能生成方法及系统 | |
CN111767217A (zh) | Js单元测试案例生成方法及装置 | |
CN113805871A (zh) | 前端代码的生成方法、装置及计算机设备 | |
CN115840564A (zh) | 基于多架构建模语言的一体化模型构建方法、装置及系统 | |
CN106055535A (zh) | 一种图表生成方法及装置 | |
US20220180033A1 (en) | Identifying potential improvement opportunities for simulation performance of an integrated circuit design | |
US9047424B1 (en) | System and method for analog verification IP authoring and storage | |
CN117195818B (zh) | 电源设计命令生成方法、装置、电子设备及存储介质 | |
CN117172191B (zh) | 一种版图布局的生成方法及系统 | |
Ed-Douibi et al. | WAPIml: towards a modeling infrastructure for Web APIs | |
CN105556504A (zh) | 从物理流生成逻辑表示 | |
CN112560413A (zh) | 基于配置模式的报表扩展方法、装置和设备 | |
US8813004B1 (en) | Analog fault visualization system and method for circuit designs | |
CN115204318B (zh) | 事件自动层级分类方法及电子设备 | |
CN114021279A (zh) | 产品的Modelica模型生成方法、装置、终端和存储介质 | |
US20100033485A1 (en) | Method for visualizing monitoring data | |
Dall'Ora et al. | A common manipulation framework for transistor-level languages | |
Shatnawi et al. | Mapping spl feature models to a relational database | |
US10872185B1 (en) | Systems and methods for estimating wire capacitance in a register-transfer level circuit design | |
CN118153517B (zh) | 用于芯片设计的自动化布局方法、计算机设备及介质 | |
Malesevic et al. | Tool for automatic layout of business process model represented by UML activity diagram | |
CN117633945B (zh) | 基于catia的微波组件结构快速设计方法及系统 |
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 |