CN117751364A - 用于电子设计自动化的方法和设备 - Google Patents
用于电子设计自动化的方法和设备 Download PDFInfo
- Publication number
- CN117751364A CN117751364A CN202180100893.5A CN202180100893A CN117751364A CN 117751364 A CN117751364 A CN 117751364A CN 202180100893 A CN202180100893 A CN 202180100893A CN 117751364 A CN117751364 A CN 117751364A
- Authority
- CN
- China
- Prior art keywords
- transistor
- layout
- transistors
- redundant
- database
- 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 59
- 238000013461 design Methods 0.000 title claims abstract description 47
- 230000003071 parasitic effect Effects 0.000 claims abstract description 172
- 230000008878 coupling Effects 0.000 claims abstract description 88
- 238000010168 coupling process Methods 0.000 claims abstract description 88
- 238000005859 coupling reaction Methods 0.000 claims abstract description 88
- 238000005516 engineering process Methods 0.000 claims description 34
- 238000013507 mapping Methods 0.000 claims description 28
- 238000004088 simulation Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 14
- 230000001419 dependent effect Effects 0.000 claims description 9
- 230000005672 electromagnetic field Effects 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 abstract description 34
- 238000010586 diagram Methods 0.000 description 18
- 239000010410 layer Substances 0.000 description 17
- 238000012545 processing Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 239000000758 substrate Substances 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 9
- 239000002184 metal Substances 0.000 description 9
- 229910052751 metal Inorganic materials 0.000 description 9
- 239000004020 conductor Substances 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000007943 implant Substances 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229920000747 poly(lactic acid) Polymers 0.000 description 1
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 1
- 229920005591 polysilicon Polymers 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 235000013599 spices Nutrition 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000011282 treatment 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/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
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)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本公开的实施例涉及电子设计自动化领域,提供了用于电子设计自动化的方法和设备。基于包含晶体管但不包含冗余晶体管的版图数据库,查询寄生电容数据库,以获取晶体管与对应于晶体管的虚拟冗余晶体管之间的耦合电容。基于晶体管与虚拟冗余晶体管之间的耦合电容,可以确定晶体管的寄生电容网络,进而生成表示电路设计的网表。以这种方式,可以显著地提高版图寄生参数抽取的效率。
Description
本公开的实施例涉及电子设计自动化(Electronic Design Automation,EDA),并且更具体地涉及用于电子设计自动化的方法和设备。
在集成电路的先进工艺中,工艺平坦化可以避免集成电路产品出现短路或者断路等工艺缺陷。通常,为了确保工艺平坦化的稳定性,插入不影响电路功能的冗余图形,使得设计版图的密度足够均匀。然而,冗余图形在版图中会引入大量的寄生电容电阻网络,使得版图寄生参数抽取效率降低。特别是在先进工艺的单位面积晶体管数越来越多的情况下,冗余图形生成的寄生参数网表非常巨大,影响版图后仿真的效率和设计迭代。
目前的技术方案根据设计规则制定冗余自动填充代码,通过物理验证软件,在版图中自动插入冗余图形,以获得包含冗余图形的版图数据库。基于该版图数据库,通过寄生参数抽取软件进行寄生参数抽取,以获得寄生参数网表,再进行版图后仿真。寄生参数抽取软件对包含大量冗余图形的版图数据库进行抽取,这导致目前的技术方案具有较低的寄生参数抽取效率。版图数据库包含大量的冗余图形,这导致目前的技术方案具有较低的版图后仿真效率。
发明内容
目前的技术方案中,版图数据库包含大量的冗余图形,对包含大量冗余图形的版图数据库进行抽取,严重影响寄生抽取效率和版图后仿真效率。
本公开的实施例提供了一种电子设计自动化的方案,特别是一种虚拟冗余晶体管填充的寄生参数抽取方案。
在本公开的第一方面,提供了一种电子设计自动化的方法。该方法获取表示电路设计的版图数据库,电路设计包括晶体管。例如,电路设计可以不包括冗余晶体管,版图数据库也可以不包括冗余晶体管。根据版图数据库,可以查询寄生电容数据库,以确定电路设计中的晶体管与相应的虚拟冗余晶体管之间的耦合电容。寄生电容数据库可以包括晶体管的版图尺寸与晶体管和虚拟冗余晶体管之间的耦合电容之间的映射关系。基于获得的晶体管与虚拟冗余晶体管之间的耦合电容,该方法可以确定表示晶体管的寄生电容的晶体管的寄生电容网络。然后,该方法基于版图数据库以及晶体管的寄生电容网络,生成表示集成电路设计的网表。该网表可以称为寄生参数网表或者后仿网表。一个晶体管与其他导电部件(例如,冗余晶体管)的耦合电容表示该晶体管与该导电部件之间的耦合所导致的寄生电容。除了耦合电容之外,该晶体管内部的不同导电部件之间也存在耦合电容,这些耦合电容为该晶体管内部的寄生电容。
在目前的技术方案中,首先在版图中插入冗余图形,然后再进行版图寄生参数抽取。由于版图中包含冗余晶体管形成的大量的冗余图形(例如,冗余多边形、冗余网络等),版图寄生参数抽取的效率较低。与目前的技术方案不同,本公开的实施例在进行寄生参数抽取时,版图数据库并不包含冗余晶体管。相反,本公开的实施例通过虚拟冗余晶体管来模拟冗余晶 体管对寄生参数抽取的影响,从而提高了寄生参数抽取的效率。
在一些实施例中,将耦合电容连接在晶体管与地之间,以确定晶体管的寄生电容网络。以这种方式,可以将虚拟冗余晶体管去除,仅保留虚拟冗余晶体管引起的寄生电容,从而确保寄生参数网表中不引入冗余晶体管。
在一些实施例中,基于寄生参数网表,对电路设计执行版图后仿真。在目前的技术方案中,由于冗余填充产生了额外的寄生电容,在寄生参数抽取获得的寄生参数网表中包含额外的寄生电容网络,从而影响版图后仿真的效率。相反,本公开的实施例通过虚拟冗余晶体管来模拟冗余晶体管对版图寄生参数抽取的影响,提高了版图后仿真的效率。
在一些实施例中,向版图数据库中添加与虚拟冗余晶体管对应的冗余晶体管,以用于生成表示电路设计的掩模数据。在版图后仿真之后向版图数据库添加冗余晶体管,可以降低版图后仿真的计算开销。
在一些实施例中,可以针对晶体管的每个电极来确定相应的寄生电容网络。具体而言,对于晶体管的栅极,可以通过查询寄生电容数据库来获取晶体管的栅极与虚拟冗余晶体管的相邻电极之间的栅极耦合电容,并且基于栅极耦合电容,确定晶体管的栅极寄生电容网络。对于晶体管的源极,可以通过查询寄生电容数据库来获取晶体管的源极与冗余晶体管的相邻电极之间的源极耦合电容,并且基于源极耦合电容,确定晶体管的源极寄生电容网络。对于晶体管的漏极,可以通过查询寄生电容数据库来获取晶体管的漏极与冗余晶体管的相邻电极之间的漏极耦合电容,并且基于漏极耦合电容,确定晶体管的漏极寄生电容网络。
在一些实施例中,获取虚拟冗余晶体管的版图尺寸以及虚拟冗余晶体管的版图尺寸与晶体管的版图依赖效应(Layout-Dependent Effect,LDE)参数之间的映射关系;以及基于虚拟冗余晶体管的版图尺寸,通过虚拟冗余晶体管的版图尺寸与LDE参数之间的映射关系,确定网表中晶体管的LDE参数。以这种方式,可以通过虚拟冗余晶体管的版图尺寸来修正寄生参数网表中的LDE参数。
在一些实施例中,可以比较晶体管的版图尺寸与寄生电容数据库中定义的晶体管的版图尺寸,从而确定与该晶体管相匹配的寄生电容数据库中的晶体管。然后,基于寄生电容数据库的晶体管的耦合电容,来确定与该晶体管对应的耦合电容。通过比较查询的方式来获取耦合电容,可以提高寄生参数抽取的效率。
在一些实施例中,可以基于预定义晶体管的版图尺寸和对应于预定义晶体管的虚拟冗余晶体管的版图尺寸,生成寄生电容数据库。例如,可以通过图形匹配或者电磁场解算器来计算寄生电容数据库。
在一些实施例中,基于用于将版图层次映射到技术层次的层次映射文件,将版图数据库中的版图层次映射到相应的技术层次。以这种方式,可以确定晶体管除耦合电容之外的其他寄生电容。
在本公开的第二方面,本公开提供了一种设备。所述设备包括:处理器;以及存储器,耦合至所述处理器并且包含存储于其上的指令,所述指令在由所述处理器执行时使所述设备执行本公开的第一方面中的方法。
在本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现本公开的第一方面中的方法的步骤。
在本公开的第四方面,提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现本公开的第一方面中的方法的步骤。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的附图标记通常代表相同部件。
图1示出了根据本公开的一些实施例的用于设计集成电路的方法的流程图。
图2示出了根据本公开的一些实施例的寄生参数抽取系统的示意图。
图3示出了根据本公开的一些实施例的晶体管的版图。
图4示出了根据本公开的一些实施例的晶体管的版图。
图5示出了根据本公开的一些实施例的晶体管的版图。
图6示出了根据本公开的一些实施例的晶体管的版图。
图7示出了根据本公开的一些实施例的栅极电容网络的示意图。
图8示出了根据本公开的一些实施例的源极电容网络的示意图。
图9示出了根据本公开的一些实施例的用于电子设计自动化的方法的流程图。
图10示出了一个可以用来实施本公开的实施例的设备的示意性框图。
根据通常的做法,附图中示出的各种特征可能未按比例绘制。因此,为了清楚起见,可以任意地扩展或减小各种特征的尺寸。另外,一些附图可能未描绘给定的系统、方法或设备的所有部件。最后,在整个说明书和附图中,类似的附图标号可用于表示类似的特征。
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。术语“和/或”表示由其关联的两项的至少一项。例如“A和/或B”表示A、B,或者A和B。下文还可能包括其他明确的和隐含的定义。
应理解,本申请实施例提供的技术方案,在以下具体实施例的介绍中,某些重复之处可能不再赘述,但应视为这些具体实施例之间已有相互引用,可以相互结合。
图1示出了根据本公开的一些实施例的用于设计半导体芯片的方法100的流程图。方法100可以至少部分地由电子设计自动化(Electronic Design Automation,EDA)工具来实现。在框102,定义芯片的功能要求。该芯片可以是处理器、存储器芯片或具有多个部件的片上系统(System on Chip,SoC)。功能要求可以包括芯片的性质和芯片的性能目标。
在框104,基于芯片的功能要求生成电子系统级(Electronic System Level,ESL)描述。电子系统级描述专注于更高的抽象级别而不考虑较低级别的实现。ESL描述的目标是提高成 功实现功能的可能性。使用适当的抽象来生成对要设计的芯片的全局级别的理解。
在框106,根据ESL描述生成寄存器转换级(Register Transfer Level,RTL)描述。RTL描述是对半导体芯片设计在其操作方面的描述。具体而言,电路的行为是根据RTL描述中硬件寄存器之间的信号流定义的。例如,可以使用硬件描述语言(Hardware Description Language,HDL)来创建电路的高级表示,从中可以导出低级表示以及最终的实际分立器件和布线。
在框108,对芯片的RTL描述进行逻辑综合,例如,将芯片的HDL形式的RTL描述转换为芯片的门级描述。具体来说,门级描述是逻辑门基元的离散网表,即,网表110。在获得网表110之后,可以对网表110进行仿真,以确定设计是否实现了预定的功能或者设计意图,该仿真也称为“前仿真”或“版图前仿真”。
在框112,基于网表110对芯片进行物理设计,以构造芯片的物理布局。例如,可以放置逻辑门等部件,并对放置的部件进行布线,以提供部件的信号和电源端子之间的互连。以这种方式,可以构造出芯片的版图114。
在框116,对版图114进行物理验证。例如,框116可以包括框118,在框118,对版图114进行设计规则检查(Design Rule Check,DRC)。版图要根据设计规则来进行绘制,这些设计规则可以由晶圆厂来提供。在设计规则检查中,检查版图114的绘制是否满足相应的设计规则。
在版图114通过设计规则检查之后,版图114中有可能还存在错误,这些错误不是由于违反了设计规则所造成的,而是可能与电路图不一致所造成的。例如,版图114可能缺少一根连线,这种小缺陷对整个芯片而言也是致命的。因此,框116还可以包括框120,在框120,对版图114进行布局与原理图比较(Layout Versus Schematic,LVS),又称为一致性检查。在一致性检查中,从版图114抽取网表,并将抽取出的网表与网表110进行比较,以确保抽取的网表与网表110一致。
此外,框116还可以包括框122,在框122,对版图114进行寄生参数抽取(parasitic extraction,PEX)。在寄生参数抽取中,可以从版图114中抽取电阻和电容等寄生参数,并输出包含这些寄生参数的网表,也称寄生参数网表。在框124,对包含寄生参数的网表进行仿真,该仿真也称为“后仿真”或“版图后仿真”。因此,用于后仿真的寄生参数网表也称为后仿网表。在后仿真中,通过构造电路的精确模拟模型来模拟实际数字电路和/或模拟电路的响应。
在框126,可以对版图114进行版图后处理。例如,可以添加封环等结构,应用分辨率增强技术等。在版图后处理之后,可以产生掩模数据128,以用于最终的芯片制造。
应当理解,图1仅仅示出了IC设计的示意性流程图。在一些实施例中,可以增加、删除一些步骤,或者修改一部分步骤的顺序。
图2示出了根据本公开的一些实施例的寄生参数抽取系统200的示意性框图。寄生参数抽取系统200可以在如图1所示的框122处实现。如图2所示,寄生参数抽取系统200包括寄生参数抽取器204,寄生参数抽取器204从版图数据库202抽取寄生参数,以生成网表212。版图数据库202可以是如图1所示的版图114的数据库表示。在本公开的实施例中,在进行物理验证116之前,在版图114中不插入冗余晶体管,即,版图114不包括冗余晶体管。网表212可以是参考图1所描述的用于后仿真的后仿网表。网表212包含抽取出的寄生参数,因而也可以称为寄生参数网表。
为了方便描述寄生参数抽取系统200的操作和功能,现在将参考图3来描述版图数据库 202的示例。图3示出了根据本公开的一些实施例的一个晶体管的版图300。版图300可以是如图2所示的版图数据库202所体现的版图的一部分,也可以是如图1所示的版图114的一部分。如图3所示,版图300包括晶体管304,晶体管304包括源极电极(S)、栅极电极(G)和漏极电极(D)。另外,版图300还包括该晶体管的衬底端302,其中,衬底端302包括衬底电极(B)。如图3所示,衬底302包括多个鳍306,在该示例中,为四个鳍。应当理解,鳍的数目仅作为示例提供,本公开的实施例也可以具有任何其他合适数目的鳍。如图3所示,每一个衬底电极(B)垂直横跨多个鳍306。另外,晶体管304也包括多个鳍308,其中源极电极(S)、栅极电极(G)和漏极电极(D)分别垂直横跨多个鳍308。应当理解,尽管版图300示出了鳍式场效应晶体管(FinFET),本公开的实施例也可以应用于任何其他合适的晶体管。
返回图2,在一些实施例中,RC技术文件210包括电阻电容(Resistance-Capacitance,RC)数据库,并且可以由晶圆厂来提供。RC技术文件210可以通过电磁场解算器基于描述导体层和介质层的工艺参数的互连技术文件(Interconnect Technology File,ITF)来生成,互连技术文件也可以由晶圆厂来提供。例如,互连技术文件可以包括导体层的厚度、导体层的电阻率、层间电介质的介电常数及其厚度、通孔的上层导体的名称、通孔的下层导体的名称、通孔的电阻,等等。例如,互连技术文件也可以包含在RC技术文件210中。
例如,RC技术文件210中的RC数据库可以以表格的形式来呈现,并且包括形成晶体管的多边形图形以及与多边形图形对应的电容值。在寄生参数抽取器204从版图数据库202中抽取寄生电容时,可以将版图数据库202中的电路版图分成小块,其中每个小块包括RC技术文件210中包含的多边形图形。然后,寄生参数抽取器204通过读取存储在RC技术文件210中的多边形图形的预先计算的电容值来提取版图数据库202的寄生电容。
在一些实施例中,寄生参数抽取器204通过层次映射文件206将版图数据库202中的版图层次映射到RC技术文件210中的技术层次。在层次映射文件206中,版图数据库202中的每个版图层次都可以被映射到相应的技术层次。版图层次表示相应部件在版图中的层次,技术层次表示相应元件在制造技术或工艺中的层次,包含相应的技术或工艺信息,例如,寄生参数。例如,层次映射文件206可以将版图数据库202中的版图层次(M1)映射到RC技术文件210中的技术层次(Metal1),将版图数据库202中的版图层次(V1)映射到RC技术文件210中的技术层次(VIA1),等等。以这种方式,可以将版图数据库202的版图层次映射到相应的技术层次,以获得相应的技术信息,例如,寄生参数。抽取命令文件208可以包括版图数据库202、层次映射文件206和RC技术文件210的路径。寄生参数抽取器204读取抽取命令文件208,并对抽取命令文件208进行解析,以获得版图数据库202、层次映射文件206和RC技术文件210的路径,等等。然后,寄生参数抽取器204从相应的路径中读取版图数据库202、层次映射文件206和RC技术文件210。
在寄生参数抽取器204基于层次映射文件206将版图数据库202中的版图层次映射到RC技术文件210中的技术层次之后,寄生参数抽取器204基于版图层次中的版图尺寸以及与该版图层次对应的技术层次中的寄生参数来抽取版图数据库202的寄生参数。
在目前的技术方案中,在版图300中插入冗余图形,然后再进行版图寄生参数抽取。在这种情况下,版图将包含大量的冗余图形(例如,冗余多边形、冗余网络等)。在进行寄生参数抽取时,目前的技术方案需要将这些大量的冗余图形与RC技术文件210中的多边形图形进行匹配,来计算寄生电容。因此,版图寄生参数抽取的效率较低。然而,寄生参数抽取系 统200对不包含冗余图形的版图300来进行寄生参数抽取,以提高寄生参数抽取的效率。由于版图300不包含冗余图形,为了准确进行寄生参数抽取,寄生参数抽取系统200通过构造RC虚拟冗余规则文件214和寄生电容数据库216来模拟冗余图形对版图300的寄生参数的影响。以下将结合图4-图6进行详细描述。
根据本公开的实施例,抽取命令文件208还可以包括RC虚拟冗余规则文件214的路径。RC虚拟冗余规则文件214可以定义虚拟冗余晶体管的参数,例如,虚拟冗余晶体管的层次信息、虚拟冗余晶体管的版图尺寸和/或虚拟冗余晶体管的版图尺寸与用于版图后仿真的网表212中的版图依赖效应(Layout-Dependent Effect,LDE)参数之间的映射。在早期技术中,晶体管尺寸较大,晶体管的电特性独立于晶体管在版图中的位置。然而,随着晶体管尺寸的逐渐缩小,晶体管的电特性越来越依赖于晶体管在版图中的位置。这种效应称为“版图依赖效应”,而依赖于晶体管在版图中的位置的参数称为LDE参数。
寄生参数抽取器204在对抽取命令文件208进行解析时,可以获得RC虚拟冗余规则文件214的路径,并从相应的路径中读取RC虚拟冗余规则文件214。表1提供了RC虚拟冗余规则文件214的一个示例。
表1
如表1所示,RC虚拟冗余规则文件214包括三个部分,其中第一部分(Dummy_Transistor_Layers)包括虚拟冗余晶体管的层次信息,第二部分(Dummy_Transistor_Dimension)包括虚拟冗余晶体管的版图尺寸,第三部分包括虚拟冗余晶体管的版图尺寸与用于版图后仿真的网表212中的版图依赖效应(LDE)参数之间的映射。
如表1所示,第一部分可以包括虚拟冗余晶体管的冗余有源区层(AA_Dum)、冗余多晶硅层(Poly_dum)、冗余源漏区金属M0层(M0_dum)、N掺杂注入层(NPLUS)或P掺杂注入层(PPLUS)等。
如表1所示,第二部分可以包括冗余栅极的间距(Dummy_poly_spacing)、冗余栅极的沟道长度(Dummy_poly_length)、冗余栅极顶部伸出有源区长度(Dummy_poly_extenstion_top)、冗余栅极底部伸出有源区长度(Dummy_poly_extenstion_bottom)、冗余有源区宽度(Dummy_AA_width)、冗余有源区纵向间距(Dummy_AA_spacing_vertical)、冗余金属层M0宽度(Dummy_M0_width)、冗余栅极末端间距(Dummy_poly_end_spacing)、冗余金属层M0延伸长度(Dummy_M0_extension)、冗余有源区横向间距(Dummy_AA_spacing_horizon)、冗余有源区长度(Dummy_AA_length)等。
如表1所示,第三部分可以包括虚拟冗余晶体管的版图尺寸与LDE参数之间的映射关系,包括冗余栅极的间距(Dummy_poly_spacing)与栅极间距(PS)之间的映射关系,冗余有源区横向间距(Dummy_AA_spacing_horizon)与有源区横向间距(AAX)之间的映射关系,冗余有源区纵向间距(Dummy_AA_spacing_vertical)与有源区纵向间距(AAY)之间的映射关系,冗余栅极末端间距(Dummy_poly_end_spacing)与栅极末端间距(PES)之间的映射关系,冗余栅极顶部伸出有源区长度(Dummy_poly_extenstion_top)与栅极顶部伸出有源区长度(PXE1)之间的映射关系,冗余栅极底部伸出有源区长度(Dummy_poly_extenstion_bottom)与栅极底部伸出有源区长度(PXE2)之间的映射关系,等等。
下面将参考图4来描述RC虚拟冗余规则文件214的第二部分的示例。图4示出了根据本公开的一些实施例的晶体管的版图400。应当理解,版图400并非用于寄生参数抽取的实际版图,即,不是版图数据库202的具体示例。版图400包括晶体管404及其衬底端402,其中,衬底端402和晶体管404与图3所示的衬底端302和晶体管304相对应。另外,鳍406和408分别与图3所示的鳍306和308相对应。与版图300相比,版图400还包括冗余图形,其中冗余图形包括第一虚拟冗余晶体管406、第二虚拟冗余晶体管408、第三虚拟冗余晶体管410、第四虚拟冗余晶体管412和第五虚拟冗余晶体管414。第一虚拟冗余晶体管406、第二虚拟冗余晶体管408、第三虚拟冗余晶体管410、第四虚拟冗余晶体管412和第五虚拟冗余晶体管414分别包括源极(S
du)、栅极(G
du)和漏极(D
du),并且包括与晶体管404共享的衬底端402。另外,如图4所示,与晶体管404相同,第四虚拟冗余晶体管412也包括多个鳍468,其中源极电极(S
du)、栅极电极(G
du)和漏极电极(D
du)分别垂直横跨多个鳍468。类似地,其他虚拟冗余晶体管也包括多个鳍。
在图4中,版图400示出了虚拟冗余晶体管的版图尺寸。应当理解,版图400并非用于 寄生参数抽取的实际版图。第一版图尺寸422表示冗余栅极的间距(Dummy_poly_spacing),第二版图尺寸424表示冗余栅极的沟道长度(Dummy_poly_length),第三版图尺寸426表示冗余栅极顶部伸出有源区长度(Dummy_poly_extenstion_top),第四版图尺寸428表示冗余栅极底部伸出有源区长度(Dummy_poly_extenstion_bottom),第五版图尺寸430表示冗余有源区宽度(Dummy_AA_width),第六版图尺寸432表示冗余有源区纵向间距(Dummy_AA_spacing_vertical),第七版图尺寸434表示冗余金属层M0宽度(Dummy_M0_width),第八版图尺寸436表示冗余栅极末端间距(Dummy_poly_end_spacing),第九版图尺寸438表示冗余金属层M0延伸长度(Dummy_M0_extension),第十版图尺寸440表示冗余有源区横向间距(Dummy_AA_spacing_horizon),第十一版图尺寸442表示冗余有源区长度(Dummy_AA_length)。
在一些实施例中,虚拟冗余晶体管的版图尺寸可以用于确定晶体管的LDE参数。图5示出了根据本公开的一些实施例的示出LDE参数的版图500的示意图。LDE参数可以是网表212中的LDE参数,其可以是SPICE模型中的LDE参数。如图5所示,版图500包括晶体管502及其衬底端502以及第一虚拟冗余晶体管506、第二虚拟冗余晶体管508、第三虚拟冗余晶体管510、第四虚拟冗余晶体管512和第五虚拟冗余晶体管514,分别与如图4所示的晶体管404及其衬底402以及第一虚拟冗余晶体管406、第二虚拟冗余晶体管408、第三虚拟冗余晶体管410、第四虚拟冗余晶体管412和第五虚拟冗余晶体管414相对应。在图5中,第一版图尺寸522表示栅极间距(PS),第二版图尺寸532表示有源区纵向间距(AAY),第三版图尺寸536表示栅极末端间距(PES),第四版图尺寸540表示有源区横向间距(AAX)。这些LDE参数依赖于版图,因而包含冗余晶体管的版图400与不包含冗余晶体管的版图300具有不同的参数值。
例如,如果在对版图300进行寄生参数抽取时不考虑冗余晶体管的影响,则网表212中的部分LDE参数,例如,PS、AAX和AAY等可能默认为极大值(1,000,000米),影响实际器件性能。如果在对版图300进行寄生参数抽取时考虑冗余晶体管的影响,将基于冗余晶体管的版图尺寸,通过冗余晶体管的版图尺寸与LDE参数之间的映射关系,可以确定晶体管的LDE参数。表2示出了在不考虑冗余晶体管的影响时,网表212的一部分的示例。表3示出了在考虑了冗余晶体管的影响时,网表212的一部分的示例。
表2
X0 D1 G1 S1 B1 NMOS L=7.2e-8 NFIN=3 SA=9e-7,SB=9e-7 PS=1e+06 AAX=1e+06 AAY=1e+06 PES=1e+06
表3
X0 D1 G1 S1 B1 NMOS L=7.2e-08 NFIN=3 SA=9e-7,SB=9e-7 PS=2.1e-07 AAX=1e-07 AAY=1.2e-07 PES=5e-08
在表2和表3中,X0表示晶体管器件,D1、G1、S1、B1分别表示该晶体管的漏极、栅极、源极、衬底端,NMOS表示该晶体管的类型,L表示栅极的长度,NFIN表示鳍的数量,SA表示源区有源区边界到栅极的距离,SB表示漏区有源区边界到栅极的距离,PS表示栅极间距,AAX表示有源区横向间距,AAY表示有源区纵向间距,PES表示栅极末端间距。如表2和表3所示,LDE参数(例如,PS、AAX、AAY、PES)显著依赖于冗余晶体管的版图尺寸。因此,通过冗余晶体管的版图尺寸与LDE参数之间的映射关系,可以校正晶体管的LDE参数。
返回图2,根据本公开的实施例,抽取命令文件208还可以包括寄生电容数据库216的路径。寄生电容数据库216可以包括由冗余晶体管引入的寄生电容。例如,寄生电容数据库216可以由晶圆厂来提供。备选地,寄生电容数据库也可以EDA软件公司或半导体设计公司来提供。
在一些实施例中,可以从RC技术文件210和RC虚拟冗余规则文件214(特别是冗余晶体管的版图尺寸)来生成寄生电容数据库216。寄生电容数据库216可以包括预定义晶体管的版图尺寸与预定义晶体管与对应于预定义晶体管的虚拟冗余晶体管之间的耦合电容之间的关系。例如,可以通过图形匹配的方式来计算晶体管和与晶体管相对应的虚拟冗余晶体管之间的耦合电容。基于晶体管的版图尺寸,可以确定构成该晶体管的多边形图形。然后,从RC技术文件210中确定与构成该晶体管的多边形图形匹配的多边形图形。基于虚拟冗余晶体管的版图尺寸,可以确定构成该虚拟冗余晶体管的多边形图形。然后,从RC技术文件210中确定与构成该虚拟冗余晶体管的多边形图形匹配的多边形图形。通过读取在RC技术文件210中的多边形图形之间的预先计算的电容值,并将这些电容值进行组合,可以确定晶体管与虚拟冗余晶体管之间的耦合电容。以这种方式,可以构造寄生电容数据库216。备选地,与构造RC技术文件210相似,可以基于互连技术文件以及预定义晶体管和相应的虚拟冗余晶体管的版图尺寸,通过电磁场解算器来计算寄生电容数据库216。
寄生参数抽取器204在对抽取命令文件208进行解析时,可以获得寄生电容数据库216的路径,并从相应的路径中读取寄生电容数据库216。寄生参数抽取器204可以基于版图数据库202中的晶体管304的版图尺寸来确定寄生电容数据库216中的相应的耦合电容。具体而言,可以基于版图数据库202,查询寄生电容数据库216,以获取版图数据库202中的晶体管304与相应的虚拟冗余晶体管之间的耦合电容。例如,可以比较版图数据库202中的晶体管304的版图尺寸与寄生电容数据库216中的预定义晶体管的版图尺寸,以确定与晶体管304匹配的预定义晶体管。然后,可以基于该预定义晶体管与其相应的虚拟冗余晶体管之间的耦合电容,来确定晶体管304与其相应的虚拟冗余晶体管之间的耦合电容。在一些实施例中,寄生电容数据库216可能不包括与晶体管304的版图尺寸严格相等的预定义晶体管。在这种情况下,可以将与晶体管304的版图尺寸最接近的预定义晶体管作为与其匹配的晶体管。以下将结合图6-图8来介绍寄生电容的抽取。
图6示出了根据本公开的一些实施例的晶体管的版图600。版图600与版图400基本相同,不同之处在于示出了晶体管404与第一虚拟冗余晶体管406、第二虚拟冗余晶体管408和第四虚拟冗余晶体管412之间的耦合电容中的一部分。应当理解,这里为了方便起见,仅示出了一部分寄生电容,不同的模型可以包括更多或更少的寄生电容。例如,可以仅考虑与晶体管404相邻的虚拟冗余晶体管之间的耦合电容。又例如,可以仅考虑与晶体管404的电极相邻的虚拟冗余晶体管的相应电极之间的耦合电容。具体而言,图6示出了晶体管404的栅极与第二虚拟冗余晶体管408的栅极之间的耦合电容C
Gdu1,晶体管404的栅极与第四虚拟冗余晶体管412的栅极之间的耦合电容C
Gdu2,晶体管404的栅极与第一虚拟冗余晶体管406的栅极之间的耦合电容C
Gdu3,以及晶体管404的栅极与第二虚拟冗余晶体管408的源极之间的耦合电容C
GSdu1。另外,图6还示出了晶体管404的源极与第二虚拟冗余晶体管408的源极之间的耦合电容C
SSdu1,以及晶体管404的源极与第四虚拟冗余晶体管412的漏极之间的耦合电容C
SDdu1。为了简单起见,图6没有示出晶体管404的漏极与虚拟冗余晶体管之间的耦合电容。可以从寄生电容数据库216中获取这些耦合电容的电容值。
图7示出了根据本公开的一些实施例的晶体管的栅极寄生电容网络。如图7所示,栅极寄生电容网络(NET G)包括耦合电容C
Gdu1、C
Gdu2、C
Gdu3和C
GSdu1。在栅极寄生电容网络中,可以将耦合电容C
Gdu1、C
Gdu2、C
Gdu3和C
GSdu1的一端接地,以代替耦合到虚拟冗余晶体管。以这种方式,在栅极寄生电容网络中,耦合电容C
Gdu1、C
Gdu2、C
Gdu3和C
GSdu1将晶体管404的栅极接地。
图8示出了根据本公开的一些实施例的晶体管的源极寄生电容网络。如图8所示,源极寄生电容网络(NET S)包括耦合电容C
SSdu1和C
SDdu1。在源极寄生电容网络中,可以将耦合电容C
SSdu1和C
SDdu1的一端接地,以代替耦合到虚拟冗余晶体管。以这种方式,在源极寄生电容网络中,耦合电容C
SSdu1和C
SDdu1将晶体管404的源极接地。表4示出了晶体管404的栅极寄生网络和源极寄生网络的网表。
表4
如表4所示,*|NET G表示晶体管404的栅极寄生电容网络,其电容值为2.12145e-16。C1和C2分别为晶体管404本身的与虚拟冗余晶体管无关的栅极寄生电容(例如,晶体管404的栅极与源极之间的耦合电容,晶体管404的栅极与漏极之间的耦合电容),C3-C6分别表示耦合电容C
Gdu1、C
Gdu2、C
Gdu3和C
GSdu1。*|NET S表示晶体管404的源极寄生电容网络,其电容值为8.53246e-17。C1和C2分别为晶体管404本身的与虚拟冗余晶体管无关的源极寄生电容(例如,晶体管404的源极与栅极之间的耦合电容,晶体管404的源极与漏极之间的耦合电容),C3和C4分别表示耦合电容C
SSdu1和C
SDdu1。
现在返回图1,在框124,对网表212进行后仿真。由于网表212不包含冗余晶体管,而仅包含冗余晶体管对晶体管的影响(例如,对寄生电容的影响、对LDE参数的影响等),后仿真效率可以大大提升。另外,在框126,可以在版图数据库202中添加冗余晶体管,以用于生成掩模数据128,以用于最终的芯片制造。
图9示出了根据本公开的一些实施例的用于电子设计自动化的方法900的流程图。例如,方法900可以在如图2所示的寄生参数抽取系统200中实现。
在框902,获取表示电路设计的版图数据库,电路设计包括晶体管。电路设计可以不包括冗余晶体管,版图数据库也可以不包括冗余晶体管。例如,版图数据库可以是如图2所示 的版图数据库202,并且晶体管可以是如图3所示的晶体管304。
在框904,基于版图数据库,查询寄生电容数据库,以获取晶体管与对应于晶体管的虚拟冗余晶体管之间的耦合电容。寄生电容数据库包括预定义晶体管的版图尺寸与预定义晶体管与对应于预定义晶体管的虚拟冗余晶体管之间的耦合电容之间的关系。在一些实施例中,与一个晶体管对应的虚拟冗余晶体管可以是与该晶体管相邻的虚拟冗余晶体管,或者在该晶体管的一定空间距离内的虚拟冗余晶体管。在又一些实施例中,虚拟冗余晶体管可以由晶圆厂的冗余填充工艺指定。例如,晶体管可以是晶体管404,虚拟冗余晶体管可以是第一虚拟冗余晶体管406、第二虚拟冗余晶体管408、第三虚拟冗余晶体管410、第四虚拟冗余晶体管412和第五虚拟冗余晶体管414。
在一些实施例中,可以比较版图数据库中的晶体管的版图尺寸与寄生电容数据库中的预定义晶体管的版图尺寸,以确定与晶体管匹配的预定义晶体管。然后,可以基于该预定义晶体管与其相应的虚拟冗余晶体管之间的耦合电容,来确定晶体管与其相应的虚拟冗余晶体管之间的耦合电容。在一些实施例中,寄生电容数据库可能不包括与晶体管的版图尺寸严格相等的预定义晶体管。在这种情况下,可以将与晶体管的版图尺寸最接近的预定义晶体管作为与其匹配的晶体管。
在一些实施例中,耦合电容可以包括晶体管的栅极与虚拟冗余晶体管的相邻电极之间的栅极耦合电容,晶体管的源极与虚拟冗余晶体管的相邻电极之间的源极耦合电容,和/或晶体管的漏极与虚拟冗余晶体管的相邻电极之间的漏极耦合电容。例如,在图6所示的实施例中,晶体管404的栅极耦合电容可以包括晶体管404的栅极与第二虚拟冗余晶体管408的栅极之间的耦合电容C
Gdu1,晶体管404的栅极与第四虚拟冗余晶体管412的栅极之间的耦合电容C
Gdu2,晶体管404的栅极与第一虚拟冗余晶体管406的栅极之间的耦合电容C
Gdu3,以及晶体管404的栅极与第二虚拟冗余晶体管408的源极之间的耦合电容C
GSdu1。例如,在图6所示的示例中,晶体管404的源极耦合电容可以包括晶体管404的源极与第二虚拟冗余晶体管408的源极之间的耦合电容C
SSdu1,以及晶体管404的源极与第四虚拟冗余晶体管412的漏极之间的耦合电容C
SDdu1。
在框906,基于晶体管与虚拟冗余晶体管之间的耦合电容,确定晶体管的寄生电容网络,寄生电容网络表示晶体管的寄生电容。可以晶体管与虚拟冗余晶体管之间的耦合电容等效为晶体管的寄生电容,以避免引入冗余晶体管。
在一些实施例中,将耦合电容连接在晶体管与地之间,以确定晶体管的寄生电容网络。例如,可以基于栅极耦合电容,确定晶体管的栅极寄生电容网络;基于源极耦合电容,确定晶体管的源极寄生电容网络;基于漏极耦合电容,确定晶体管的漏极寄生电容网络。以这种方式,晶体管的寄生电容网络包含了晶体管与冗余晶体管的耦合电容,但并不包含冗余晶体管。
在框908,基于版图数据库以及晶体管的寄生电容网络,生成表示电路设计的网表。网表包括晶体管的版图尺寸以及晶体管的寄生电容网络。例如,晶体管的版图尺寸可以通过版图数据库来确定。
在一些实施例中,方法900还包括:基于网表,对电路设计执行版图后仿真。在版图后仿真验证该电路设计之后,可以向版图数据库中添加与虚拟冗余晶体管对应的冗余晶体管,以用于生成表示电路设计的掩模数据。
在一些实施例中,方法900还包括:获取虚拟冗余晶体管的版图尺寸以及虚拟冗余晶体 管的版图尺寸与晶体管的版图依赖效应(LDE)参数之间的映射关系;以及基于虚拟冗余晶体管的版图尺寸,通过虚拟冗余晶体管的版图尺寸与LDE参数之间的映射关系,确定网表中晶体管的LDE参数。
在一些实施例中,可以基于预定义晶体管的版图尺寸和对应于预定义晶体管的虚拟冗余晶体管的版图尺寸,生成寄生电容数据库。例如,可以通过图形匹配或者电磁场解算器来计算寄生电容数据库。
在一些实施例中,基于用于将版图层次映射到技术层次的层次映射文件,将版图数据库中的版图层次映射到相应的技术层次。以这种方式,可以确定晶体管除耦合电容之外的其他寄生电容。
图10示出了一个可以用来实施本公开的实施例的设备1000的示意性框图。如图1所示的方法100、如图2所示的系统200以及如图9所示的方法900可以由设备1000来实现。
如图10所示,设备1000包括中央处理单元(Central Processing Unit,CPU)1001,其可以根据存储在只读存储器(Read-Only Memory,ROM)1002中的计算机程序指令或者从存储单元1008加载到随机访问存储器(Random Access Memory,RAM)1003中的计算机程序指令,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(Input/Output,I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,例如方法100或900,可由处理单元1001执行。例如,在一些实施例中,方法100或900可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序被加载到RAM 1003并由CPU 1001执行时,可以执行上文描述的方法100或900的一个或多个步骤。备选地,在其他实施例中,CPU 1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法100或900。
本公开可以是方法、设备、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)或闪存、静态随机存取存储器(Static Random Access Memory,SRAM)、便携式压缩盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能盘(Digital Video Disc,DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤 电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(Instruction Set Architecture,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Python、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(Local Area Network,LAN)或广域网(Wide Area Network,WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(Field Programmable Gate Array,FPGA)或可编程逻辑阵列(Programmable Logic Array,PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的 每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实施例。在不偏离所说明的各实施例的范围的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实施例。
Claims (15)
- 一种电子设计自动化的方法,包括:获取表示电路设计的版图数据库,所述电路设计包括晶体管,并且不包括冗余晶体管;基于所述版图数据库,查询寄生电容数据库,以获取所述晶体管与对应于所述晶体管的虚拟冗余晶体管之间的耦合电容,其中所述寄生电容数据库包括预定义晶体管的版图尺寸与所述预定义晶体管与对应于所述预定义晶体管的虚拟冗余晶体管之间的耦合电容之间的关系;基于所述晶体管与所述虚拟冗余晶体管之间的耦合电容,确定所述晶体管的寄生电容网络,所述寄生电容网络表示所述晶体管的寄生电容;以及基于所述版图数据库以及所述晶体管的寄生电容网络,生成表示所述电路设计的网表。
- 根据权利要求1所述的方法,其中所述基于所述晶体管与所述虚拟冗余晶体管之间的耦合电容,确定所述晶体管的寄生电容网络包括:将所述耦合电容连接在所述晶体管与地之间,以得到所述晶体管的寄生电容网络。
- 根据权利要求1或2所述的方法,还包括:基于所述网表,对所述电路设计执行版图后仿真。
- 根据权利要求1-3中任一项所述的方法,其中所述晶体管包括第一电极,并且所述寄生电容网络包括所述第一电极的第一寄生电容网络,并且所述基于所述版图数据库,查询寄生电容数据库,以得到所述晶体管与对应于所述晶体管的虚拟冗余晶体管之间的耦合电容包括:基于所述版图数据库,查询所述寄生电容数据库,以获取所述晶体管的所述第一电极与所述虚拟冗余晶体管的相邻电极之间的第一耦合电容,并且其中所述基于所述晶体管与所述虚拟冗余晶体管之间的耦合电容,确定所述晶体管的寄生电容网络包括:基于所述第一耦合电容,确定所述晶体管的第一电极寄生电容网络。
- 根据权利要求4所述的方法,其中所述第一电极是所述晶体管的栅极、源极和漏极中的至少一项。
- 根据权利要求1-5中任一项所述的方法,其中所述基于所述版图数据库,查询寄生电容数据库,以获取所述晶体管与对应于所述晶体管的虚拟冗余晶体管之间的耦合电容包括:比较所述晶体管的版图尺寸与所述寄生电容数据库中的预定义晶体管的版图尺寸,以确定与所述晶体管匹配的预定义晶体管;以及基于与所述晶体管匹配的预定义晶体管与对应于所述预定义晶体管的虚拟冗余晶体管之间的耦合电容,确定所述晶体管与对应于所述晶体管的虚拟冗余晶体管之间的所述耦合电容。
- 根据权利要求1-6中任一项所述的方法,还包括:获取所述虚拟冗余晶体管的版图尺寸以及所述虚拟冗余晶体管的版图尺寸与所述晶体管的版图依赖效应(LDE)参数之间的映射关系;以及基于所述虚拟冗余晶体管的版图尺寸,通过所述虚拟冗余晶体管的版图尺寸与所述LDE参数之间的映射关系,确定所述网表中所述晶体管的LDE参数。
- 根据权利要求1-7中任一项所述的方法,还包括:向所述版图数据库中添加与所述虚拟冗余晶体管相对应的冗余晶体管,以用于生成表示所述电路设计的掩模数据。
- 根据权利要求1-7中任一项所述的方法,还包括:基于预定义晶体管的版图尺寸和对应于所述预定义晶体管的虚拟冗余晶体管的版图尺寸, 生成所述寄生电容数据库。
- 根据权利要求9所述的方法,其中所述基于预定义晶体管的版图尺寸和对应于所述预定义晶体管的虚拟冗余晶体管的版图尺寸,生成所述寄生电容数据库包括:基于所述预定义晶体管的版图尺寸和对应于所述预定义晶体管的虚拟冗余晶体管的版图尺寸,确定与所述预定义晶体管和所述虚拟冗余晶体管的多边形图形;以及通过将所述多边形图形与具有预先计算的耦合电容的电容值的预定义多边形图形进行匹配,计算所述预定义晶体管与所述虚拟冗余晶体管之间的耦合电容,以生成所述寄生电容数据库。
- 根据权利要求9所述的方法,其中所述基于预定义晶体管的版图尺寸和对应于所述预定义晶体管的虚拟冗余晶体管的版图尺寸,生成所述寄生电容数据库包括:基于表示制造工艺的互连技术文件、所述预定义晶体管的版图尺寸和对应于所述预定义晶体管的虚拟冗余晶体管的版图尺寸,通过电磁场解算器计算所述预定义晶体管与所述虚拟冗余晶体管之间的耦合电容,以生成所述寄生电容数据库。
- 根据权利要求1-11中任一项所述的方法,还包括:基于用于将版图层次映射到技术层次的层次映射文件,将所述版图数据库中的版图层次映射到相应的技术层次。
- 一种设备,包括:处理器;以及存储器,耦合到所述处理器并且存储指令,所述指令在被所述处理器执行时使得所述设备实现根据权利要求1-12中任一项所述的方法。
- 一种存储计算机可执行指令的计算机可读存储介质,其中,所述计算机可执行指令在由至少一个处理器执行时使所述至少一个处理器执行根据权利要求1-12中任一项所述的方法。
- 一种计算机程序,其中,所述计算机程序在由至少一个处理器执行时使所述至少一个处理器执行根据权利要求1-12中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/116544 WO2023029007A1 (zh) | 2021-09-03 | 2021-09-03 | 用于电子设计自动化的方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117751364A true CN117751364A (zh) | 2024-03-22 |
Family
ID=85411873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180100893.5A Pending CN117751364A (zh) | 2021-09-03 | 2021-09-03 | 用于电子设计自动化的方法和设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117751364A (zh) |
WO (1) | WO2023029007A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117272910B (zh) * | 2023-11-22 | 2024-02-23 | 江山季丰电子科技有限公司 | 一种集成电路老化电路板的模块化设计方法及装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006031297A (ja) * | 2004-07-15 | 2006-02-02 | Matsushita Electric Ind Co Ltd | 半導体集積回路における特性検証用ネットリストの生成方法 |
JP2006171818A (ja) * | 2004-12-13 | 2006-06-29 | Matsushita Electric Ind Co Ltd | クロストーク検証装置およびクロストーク検証方法 |
US7865851B2 (en) * | 2006-03-06 | 2011-01-04 | Mentor Graphics Corporation | Capacitance extraction of intergrated circuits with floating fill |
JP2009009284A (ja) * | 2007-06-27 | 2009-01-15 | Denso Corp | 回路設計情報表示装置及びコンピュータプログラム |
US8407646B2 (en) * | 2010-02-11 | 2013-03-26 | Synopsys, Inc. | Active net and parasitic net based approach for circuit simulation and characterization |
CN101923595B (zh) * | 2010-08-25 | 2012-10-24 | 清华大学 | 模拟集成电路版图寄生器件提取系统及方法 |
CN106815379B (zh) * | 2015-11-27 | 2020-07-14 | 中国科学院微电子研究所 | 一种提取寄生电容的方法及系统 |
CN111428435B (zh) * | 2019-01-09 | 2024-04-09 | 中国科学院微电子研究所 | 一种集成电路版图功耗优化方法及装置 |
-
2021
- 2021-09-03 WO PCT/CN2021/116544 patent/WO2023029007A1/zh active Application Filing
- 2021-09-03 CN CN202180100893.5A patent/CN117751364A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023029007A1 (zh) | 2023-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8943455B2 (en) | Methods for layout verification for polysilicon cell edge structures in FinFET standard cells | |
US9495506B2 (en) | Methods for layout verification for polysilicon cell edge structures in FinFET standard cells using filters | |
US8826213B1 (en) | Parasitic capacitance extraction for FinFETs | |
KR102396699B1 (ko) | 셀 레벨 레이아웃 의존성 응력 효과들을 사용하는 셀의 배치 및 라우팅 | |
US9122833B2 (en) | Method of designing fin field effect transistor (FinFET)-based circuit and system for implementing the same | |
US8701055B1 (en) | Macro cell based process design kit for advanced applications | |
CN107315848B (zh) | 用于集成电路设计的方法及系统 | |
US8769452B2 (en) | Parasitic extraction in an integrated circuit with multi-patterning requirements | |
US11170150B2 (en) | Method for making a semiconductor device | |
US7454733B2 (en) | Interconnect-aware methodology for integrated circuit design | |
WO2022198571A1 (zh) | 一种寄生电阻电容参数提取方法及装置 | |
KR20170133750A (ko) | 집적 회로의 설계를 위한 컴퓨터 구현 방법 | |
Yu et al. | Advancements and challenges on parasitic extraction for advanced process technologies | |
WO2023029007A1 (zh) | 用于电子设计自动化的方法和设备 | |
US8640076B2 (en) | Methodology on developing metal fill as library device and design structure | |
US11966678B2 (en) | Modelling timing behavior using augmented sensitivity data for physical parameters | |
TW202018549A (zh) | 基於艾爾摩延遲時間(edt)的電阻模型 | |
US7689953B1 (en) | Method and apparatus for determining cell-based timing elements from a transistor-level design | |
US11972191B2 (en) | System and method for providing enhanced net pruning | |
US10031989B2 (en) | Integrated circuit performance modeling using a connectivity-based condensed resistance model for a conductive structure in an integrated circuit | |
US20200364316A1 (en) | Circuit layout similarity metric for semiconductor testsite coverage |
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 |