CN113536728A - 制造半导体器件的方法、系统以及非暂时性计算机可读介质 - Google Patents
制造半导体器件的方法、系统以及非暂时性计算机可读介质 Download PDFInfo
- Publication number
- CN113536728A CN113536728A CN202110767283.2A CN202110767283A CN113536728A CN 113536728 A CN113536728 A CN 113536728A CN 202110767283 A CN202110767283 A CN 202110767283A CN 113536728 A CN113536728 A CN 113536728A
- Authority
- CN
- China
- Prior art keywords
- layout
- cell
- cells
- candidate
- unit
- 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 110
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 70
- 239000004065 semiconductor Substances 0.000 title claims abstract description 58
- 230000003071 parasitic effect Effects 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 16
- 210000004027 cell Anatomy 0.000 description 837
- 238000012369 In process control Methods 0.000 description 68
- 210000004544 dc2 Anatomy 0.000 description 68
- 238000004190 ion pair chromatography Methods 0.000 description 68
- 238000013461 design Methods 0.000 description 60
- 238000010586 diagram Methods 0.000 description 59
- 210000001956 EPC Anatomy 0.000 description 53
- 230000008569 process Effects 0.000 description 40
- 238000002360 preparation method Methods 0.000 description 26
- 238000012545 processing Methods 0.000 description 21
- 239000010410 layer Substances 0.000 description 18
- 239000002184 metal Substances 0.000 description 12
- 239000000758 substrate Substances 0.000 description 12
- 239000000463 material Substances 0.000 description 9
- 238000007689 inspection Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000001459 lithography Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- CIWBSHSKHKDKBQ-JLAZNSOCSA-N Ascorbic acid Chemical compound OC[C@H](O)[C@H]1OC(=O)C(O)=C1O CIWBSHSKHKDKBQ-JLAZNSOCSA-N 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 4
- 238000012938 design process Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000010363 phase shift Effects 0.000 description 4
- 229910052710 silicon Inorganic materials 0.000 description 4
- 239000010703 silicon Substances 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000010894 electron beam technology Methods 0.000 description 3
- 230000009881 electrostatic interaction Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 229920002120 photoresistant polymer Polymers 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 238000001259 photo etching Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 101100328154 Mus musculus Clmn gene Proteins 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000609 electron-beam lithography Methods 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 239000005350 fused silica glass Substances 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 238000005468 ion implantation Methods 0.000 description 1
- 150000002500 ions Chemical class 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000004518 low pressure chemical vapour deposition Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
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/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/373—Design optimisation
-
- 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
- G06F2111/00—Details relating to CAD techniques
- G06F2111/20—Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/10—Noise analysis or noise optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/18—Manufacturability analysis or optimisation for manufacturability
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Architecture (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Crystals, And After-Treatments Of Crystals (AREA)
- Metal-Oxide And Bipolar Metal-Oxide Semiconductor Integrated Circuits (AREA)
Abstract
公开了一种用于存储和重新使用布局单元的PC描述的方法。数据库存储预先由3D场求解器计算的预定义单元和PC描述。关于布局图中的候选单元,在数据库中搜索预定义单元中的基本匹配项。如果存在匹配,则在布局图中将匹配的预定义单元的已存储PC描述分配给候选单元,从而避免了对PC描述进行离散地计算的情况。如果不匹配,则将3D场求解器应用于候选单元,以便计算候选单元的PC描述。为了便于重新使用新计算的PC描述,候选单元和新计算的PC描述作为新的预定义单元及其对应的PC描述存储在数据库中。本发明的实施例还涉及制造半导体器件的方法、系统以及非暂时性计算机可读介质。
Description
技术领域
本发明的实施例涉及制造半导体器件的方法、系统以及非暂时性计算机可读介质。
背景技术
集成电路(IC)小型化的最新趋势已导致更小的器件以比以前更高的速度提供更多功能。小型化工艺还增加了器件对寄生电容影响日益增加的敏感性。为了设计更小、更有效的IC,必须更准确、更有效地对这些IC器件的寄生电容进行建模。
发明内容
根据本发明实施例的一个方面,提供了一种制造半导体器件的方法,相应的布局图被存储在非暂时性计算机可读介质上,布局图包括布局单元,方法包括生成布局图,包括:从布局图中的布局单元中选择候选单元;在存储预定义单元及其对应的寄生电容(PC)描述的数据库中,在数据库中搜索与候选单元基本匹配的预定义单元中的一个;以及当发现基本匹配时,将匹配的预定义单元的PC描述分配给候选单元。
根据本发明实施例的另一个方面,提供了一种非暂时性计算机可读介质,其上存储有表示生成布局图的方法的计算机可执行指令,布局图包括组织为布局组的布局单元,每个布局组包括中央单元和与中央单元相邻的一个或多个单元的组(相邻单元),计算机可执行指令可由至少一个处理器执行以执行一种方法,包括生成布局图,包括:从布局组中选择候选布局组;在存储预定义组及其对应的寄生电容(PC)描述的数据库中,每个预定义组包括一个主题预定义单元以及一个与主题预定义单元相邻的一个或多个预定义单元的对应组,在数据库中搜索与候选单元组基本匹配的预定组中的一个;和当发现基本匹配时,将匹配的预定义组的PC描述分配给候选布局组。
根据本发明实施例的又一个方面,提供了一种用于制造半导体器件的系统,系统包括:至少一个处理器;至少一种存储计算机可执行代码的非暂时性计算机可读介质;至少一种非暂时性计算机可读存储介质,计算机程序代码和至少一个处理器被配置为使系统生成包括布局单元的布局图,布局图的生成包括:从布局图中的布局单元中选择候选单元;在存储预定义单元及其对应的单元内寄生电容(PC)描述的数据库中,在数据库中搜索与候选单元基本匹配的预定义单元中的一个;和当发现基本匹配时,将匹配的预定义单元的单元内PC描述分配给候选单元。
附图说明
当结合附图进行阅读时,从以下详细描述可最佳理解本发明的各个方面。应该强调,根据工业中的标准实践,各个部件未按比例绘制并且仅用于说明的目的。实际上,为了清楚的讨论,各个部件的尺寸可以任意地增大或减小。
图1是根据一些实施例的半导体器件的布局图。
图2是根据一些实施例的电子设计自动化(EDA)系统的框图。
图3A-图3E是根据一些实施例的流程图,其描述了在布局图中指定用于布局单元的单元内寄生电容和单元间寄生电容的过程。
图4A-图4C是根据一些实施例的半导体器件的简化布局图400。
图5A-图5C是根据一些实施例以上关于图4A-图4C描述的相同半导体器件的简化布局图400。
图6是根据一些实施例的在选择候选单元之前实施的过程的流程图600。
图7是根据一些实施例的在选择候选单元之前实施的过程的流程图700。
图8是根据一些实施例的在布局图中获得重复的布局单元的单元内寄生电容的另一实施例的流程图。
图9是在布局图中获得重复布局组的单元间寄生电容的另一实施例的流程图。
图10是根据一些实施例的生成布局图的方法的流程图。
图11是根据一些实施例的集成电路(IC)制造系统以及与其相关联的IC制造流程的框图。
具体实施方式
以下公开内容提供了许多用于实现本发明的不同特征不同的实施例或实例。下面描述了组件和布置的具体实施例或实例以简化本发明。当然,这些仅是实例而不旨在限制。例如,在以下描述中,在第二部件上方或者上形成第一部件可以包括第一部件和第二部件直接接触形成的实施例,并且也可以包括在第一部件和第二部件之间可以形成额外的部件,从而使得第一部件和第二部件可以不直接接触的实施例。此外,本发明可以在各个示例中重复参考数字和/或字母。该重复是为了简单和清楚的目的,并且其本身不指示讨论的各个实施例和/或配置之间的关系。
此外,为了便于描述,本文中可以使用诸如“在…下方”、“在…下面”、“下部”、“在…上面”、“上部”等的间隔关系术语,以描述如图中所示的一个元件或部件与另一元件或部件的关系。除了图中所示的方位外,间隔关系术语旨在包括器件在使用或操作工艺中的不同方位。装置可以以其它方式定位(旋转90度或在其它方位),并且在本文中使用的间隔关系描述符可以同样地作相应地解释。
各种实施例提供了用于在布局图中有效地确定单元的寄生电容描述的相应过程和技术。根据另一种方法,对布局图中每个单元的寄生电容(PC)描述进行离散地计算。随着技术的进步,例如,随着小型化的继续,布局图中的单元数量增加,这导致另一种方法在计算上变得更加昂贵\更慢等。
作为开发各种实施例的一部分,本实施例的发明人认识到布局图通常包括在其他布局图(重复单元)中巧合地发现的单元,例如,从标准单元库中获取的单元,并且至少给定循环单元的一些PC描述表示(如果必须避免的话)有机会简化当给定循环单元包括在新布局图中时离散地计算PC描述。作为开发各种实施例的一部分,本实施例的发明人还认识到典型的新布局图包括大量重复单元,并且对于重复单元中的第一个单元的至少一些PC描述代表了简化的机会,如果不必避免,则对新布局图中剩余的重复单元进行离散地计算PC描述。因此,在一些实施例中,公开了一种用于存储和重新使用循环单元的PC描述的方法,从而避免了原本必须为候选单元离散地计算PC描述。
在一些实施例中,一种用于有效地确定布局图中的单元的寄生电容描述的方法包括:从布局图中的布局单元中选择候选单元;以及在存储预定义单元及其对应的寄生电容(PC)描述的数据库中,在数据库中搜索与候选单元基本匹配的预定义单元中的一个;当发现基本匹配时,将匹配的预定义单元的PC描述分配给候选单元。因此,通过将匹配的预定义单元的PC描述分配给候选单元,这样的实施例避免了否则不得不离散地计算候选单元的PC描述,因此,与实施例相比,这样的实施例在计算上更便宜,更快等。相对于另一种方法,尤其是考虑到布局图中通常有大量重复单元的情况。在一些实施例中,如果不存在匹配,则将3D场求解器应用于候选单元以便计算候选单元的PC描述。在一些实施例中,当没有发现基本匹配时,计算候选单元的PC描述,并且数据库被添加以包括:作为预定义单元中的新的候选单元;以及作为候选单元中的新候选单元的候选单元。以及候选单元的PC描述,作为新的预定义单元中的一个的PC描述。
图1是根据一些实施例的半导体器件的平面图100。
平面图100是一种布局图。平面图100包括至少一个半导体衬底101,半导体衬底101的部分包括在布局单元102A、102B、102C、102D、102E的相应实例中。在一些实施例中,布局单元102A、102B、102C、102D、102E各自表示不同类型的集成电路(IC),包括存储器单元、功率控制电路、反相器、锁存器、缓冲器和/或可在单元库中以数字方式表示的任何其他类型的电路装置。
每个布局单元102A、102B、102C、102D、102E经历相应的整体寄生电容(PC)。在一些实施例中,根据两个组件来描述整个PC。关于第一PC组件,每个布局单元经历内部PC,在本文中称为内部单元PC(下面讨论)。关于第二PC组件,每个布局单元相对于相邻的布局单元经历外部PC,在本文中称为单元间PC。
平面图100是半导体器件的数字表示,其中布局单元102A、102B、102C、102D、102E用于执行一个或多个给定功能。在一些实施例中,以二进制文件格式(例如,图形数据库系统II(GDSII)流格式)以数字方式描述/编制布局图,其中,二进制文件格式以分层的形式表示平面几何形状、文本标签、其他形式信息等。在一些实施例中,已经在特定于特定过程节点的平面图100上执行了合成、布置和布线。
平面图100包括边界线和外部边界线。平面图100包括在上边界104、下边界106、左边界108和右边界110内的布局单元102A、102B、102C、102D。上边界104和下边界106在平行于X轴的第一方向(相对于图1的水平方向)上延伸。左边界108和右边界在平行于Y轴的第二方向(相对于图1的垂直方向)上延伸,其中X轴和Y轴彼此垂直。在平面图100的上边界104、下边界106、左边界108和右边界110内,具有布局单元102A、102B、102C、102D,使得布局单元102A、102B、102C、102D位于网格中。
在图1中,网格有四行和七列。在其他实施例中,网格具有多于或少于四行。在其他实施例中,每一行具有相同数量的列。在其他实施例中,每一列具有不同数量的行。关于行1,从左到右,行1包括列(clmn)2和列3中的布局单元102B、列4中的布局单元102D和列5和列6中的布局单元102B。关于行2,行2包括列2中的布局单元102C、列3中的布局单元102A、列4中的布局单元102A、列5中的布局单元102A和列6中的布局单元102C。关于行3,从左到右,行3包括列2中的布局单元102C、列3中的布局单元102A、列4中的布局单元102A、列5中的布局单元102A和列6中的布局单元102C。关于行4,从左到右,行4包括列2中的布局单元102C、列3中的布局单元102A、列4中的布局单元102A、列5中的布局单元102A和列6中的布局单元102C。关于行5,从左到右,行5包括列2和列3中的布局单元102B、列4中的布局单元102D以及列5和列6中的布局单元102B。
平面图100还包括上部外部边界112、下部外部边界114、左侧外部边界116和右侧外部边界118。布局单元102E是位于半导体器件的内部边界104、106、108、110和外部边界112、114、116、118之间的外围布局单元,从而在平面图100中提供了顶部布局单元102E、下部布局单元102E、左侧布局单元102E和右侧布局单元102E。顶部布局单元102E的左边界相对于X轴对准以在行1的左侧布局单元102B上延伸,顶部布局单元102E的右边界相对于X轴对准以在行1中的右侧布局单元102B上方延伸。顶部布局单元102E的顶部边界与上外部边界112对准,并且顶部布局单元102E的下边界与顶部边界104对准。
底部布局单元102E的左边界相对于X轴对准以在行5中的左布局单元102B上延伸,并且底部布局单元102E的右边界相对于X轴对准以在行5中的右布局单元102B上方延伸。底部布局单元102E的顶部边界与下边界106对准,而底部布局单元102E的下边界与顶部边界104对准。
左布局单元102E的顶部边界相对于Y轴对准,以在行1中紧接最左上方的布局单元102C延伸,并且左布局单元102E的底部边界相对于Y-轴对准以在行5中紧底部左布局单元102C延伸。左布局单元102E的左边界与左外部边界116对准,左布局单元102E的右边界与右边界108对准。
右布局单元102E的顶部边界相对于Y轴对准,以在行1中紧接最右上方的布局单元102C延伸,并且左布局单元102E的底部边界相对于Y对准以在行5中紧挨着右下布局单元102C延伸。左布局单元102E的左边界与左边界110对准,左布局单元102E的右边界与右外部边界118对准。
在一些实施例中,平面图100表示SRAM存储器电路的简化配置。在平面图100中,布局单元102A是重复的布局单元102A。每个布局单元102A具有基本相同的单元配置。在一些实施例中,布局单元102A完全相同。在一些实施例中,至少一些布局单元102A在配置上具有微小差异,例如,取决于它们在网格上的位置的差异,例如金属布线中的微小差异。因此,每个布局单元102A是基本单元的一个实例。在平面图100中,基本单元被重复。重复的基本单元在本文中被称为单位布局单元,使得平面图100中的每个布局单元102A进一步被标记为单位单元A。在一些实施例中,单位单元A 102A是SRAM存储器单元。
在平面图100中,布局单元102B是重复的布局单元102B。每个布局单元102B具有基本相同的单元配置。在一些实施例中,布局单元102B完全相同。在一些实施例中,至少一些布局单元102B在配置上具有较小的差异,例如,取决于它们在网格上的位置的差异,例如金属布线中的较小差异。因此,每个布局单元102B是单位布局单元(单位单元B)的实例。在一些实施例中,单位单元B 102B是SRAM位线驱动器。
在平面图100中,布局单元102C是重复的布局单元102C。每个布局单元102C具有基本相同的单元配置。在一些实施例中,布局单元102C完全相同。在其他实施例中,至少一些布局单元102C在配置上具有较小的差异,例如,取决于它们在网格上的位置的差异,例如金属布线中的较小差异。因此,每个布局单元102C是单位布局单元(单位单元C)的实例。在一些实施例中,单位单元C 102C是SRAM字线驱动器。
在平面图100中,布局单元102D是重复的布局单元102D。每个布局单元102D具有基本相同的单元配置。在一些实施例中,布局单元102D完全相同。在其他实施例中,至少一些布局单元102D在配置上具有较小的差异,例如,取决于它们在网格上的位置的差异,例如金属布线中的较小差异。因此,每个布局单元102D是单位布局单元(单位单元D)的实例。在一些实施例中,单位单元D 102D是SRAM感测放大器。
在平面图100中,布局单元102E是重复的布局单元102E。每个布局单元102E具有基本相同的单元配置。在一些实施例中,布局单元102E完全相同。在其他实施例中,至少一些布局单元102E在配置上具有较小的差异,例如,取决于它们在网格上的位置的差异,例如金属布线中的较小差异。因此,每个布局单元102E是单位布局单元(单位单元E)的实例。在一些实施例中,单位单元E 102E是SRAM位线驱动器。在一些实施例中,单位布局单元(单位单元E)是功率控制电路。
布局单元102E是设置在边界104、106、108、110之外的外围单元。因此,布局单元102E在边界104、106、108、110内且不在边界104、106、108外具有相邻单元。在一些实施例中,布局单元102E具有在边界104、106、108、110内的相邻单元的数量大约是布局单元102A、102B、102C、102D的一半。
在一些实施例中,布局单元102A、102B、102C、102D、102E与它们各自的单位布局单元相同,即单位单元A、单位单元B、单位单元C、单位单元D、单元E。例如,布局单元102A、102B、102C、102D、102E的PC组件由单元库中的相应标准单元的PC组件提供,其在一些实施例中定义了单位单元A、单元B、单元C、单元D、单元E。在一些实施例中,布局单元102A、102B、102C、102D、102E及其对应的单位布局单元的上层金属布线中存在细微差异。在一些实施例中,上层金属布线的PC与从由单位布局单元A、单位单元B、单位单元C、单位单元D、单位单元E确定的PC分开地计算。
在由平面图100表示的许多半导体器件(例如SRAM存储器电路)中,在半导体器件中重复不同类型的布局单元。随着先进技术节点变得越来越小,准确地获得布局单元102A、102B、102C、102D、102E中的每一个的寄生电容在获得具有适当起作用的电路的平面图100中变得越来越重要。在一些实施例中,利用小于等于1%的精度对平面图100中的布局单元102A、102B、102C、102D、102E的寄生电容进行建模。为了提供这种类型的精度,通常使用三维(3D)求解器工具。在一些实施例中,EDA系统200(见图2)包括3D求解器工具。通常,3D求解器工具需要大量计算。在一些情况下,就计算延迟而言,3D求解器工具代表了EDA系统200所包含的各种工具中的瓶颈。在一些实施例中,3D场求解器工具求解拉普拉斯方程,以获得布局单元(例如,布局单元102A、102B、102C、102D、102E)的寄生电容(PC)描述。本公开描述了用于将布局单元(例如,布局单元102A、102B、102C、102D、102E)的重复实例表征为布局单元(例如,单位单元A、单位单元B、单位单元C、单位单元D、单位单元E)的过程和技术。然后存储并重新使用这些布局单位单元的PC描述。以这种方式,不必在每次布局图包括单位单元的实例时都实施3D场求解器工具。在至少一些实施例中,对于在平面布置图100中重复N次的单位布局单元(例如,单位单元A、单位单元B、单位单元C、单位单元D、单位单元E)中,一次性PC单元提取(使用3D求解器工具)可节省3D求解器工具重复的N-1个单元,因为PC的一次性单元提取被存储并用于确定PC的其他实例。
图2是根据一些实施例的电子设计自动化(EDA)系统200的框图。
在一些实施例中,EDA系统200包括自动放置和布线系统(APR)系统。根据一个或多个实施例,本文描述的向布局图(例如,平面图100)中的布局单元(例如,布局单元)分配单元内PC描述和单元间PC描述的方法是可实现的,例如,根据一些实施例使用EDA系统200。
在一些实施例中,EDA系统200是通用计算设备,包括硬件处理器202和非暂时性计算机可读存储介质204。除其他之外,存储介质204被编码(即存储)计算机程序代码206(即一组可执行指令)。硬件处理器202执行的指令206代表(至少部分地)表示一种EDA工具,该工具实现了根据一个或多个实施例的本文描述的方法的一部分或全部(以下称为所提到的过程和/或方法)。
处理器202经由总线208电耦合至计算机可读存储介质204。处理器202还通过总线208电耦合至I/O接口210。网络接口212也经由总线电耦合至处理器202208.网络接口212连接到网络214,以便处理器202和计算机可读存储介质204能够通过网络214连接到外部元件。为了使系统200可用于执行所提到的过程和/或方法的一部分或全部,处理器202配置为执行编码在计算机可读存储介质204中的计算机程序代码206。在一个或多个实施例中,处理器202是中央处理单元(CPU)、多处理器、分布式处理系统、专用集成电路(ASIC)和/或合适的处理单元。
在一个或多个实施例中,计算机可读存储介质204是电、磁、光、电磁、红外和/或半导体系统(或装置或设备)。例如,计算机可读存储介质204包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘和/或光盘。在使用光盘的一个或多个实施例中,计算机可读存储介质204包括光盘只读存储器(CD-ROM)、光盘读/写光盘(CD-R/W)和/或数字视频光盘(DVD)。
在一个或多个实施例中,存储介质204存储计算机程序代码206,该计算机程序代码206被配置为使系统200可用于执行所提到的过程的部分或全部和/或方法(其中这种执行(至少部分地)表示EDA工具)。在一个或多个实施例中,存储介质204还存储有助于执行部分或全部所述过程和/或方法的信息。在一个或多个实施例中,存储介质204存储标准单元的库207(标准单元库207),该标准单元包括本文所公开的这种标准单元。在一或多个实施例中,存储介质204存储与在此公开的一个或多个布局相对应的一个或多个布局图209。
EDA系统200包括I/O接口210。I/O接口210耦合到外部电路。在一个或多个实施例中,I/O接口210包括键盘、小键盘、鼠标、轨迹球、触控板、触摸屏和/或光标方向键,用于将信息和命令传达给处理器202。
EDA系统200还包括耦合到处理器202的网络接口212。网络接口212允许系统200与网络214通信,一个或多个其他计算机系统连接到网络214。网络接口212包括诸如BLUETOOTH,WIFI,WIMAX,GPRS或WCDMA的无线网络接口;或有线网络接口,例如ETHERNET,USB或IEEE-1364。在一个或多个实施例中,在两个或多个系统200中实现部分或全部所描述的过程和/或方法。
系统200被配置为通过I/O接口210接收信息。通过I/O接口210接收的信息包括指令、数据、设计规则、标准单元库和/或其他用于处理的参数中的一个或多个。信息通过处理器202通过总线208传输到处理器202。EDA系统200配置为通过I/O接口210接收与UI相关的信息。该信息作为用户界面(UI)242存储在计算机可读介质204中。
在图2中,存储器204还包括数据库244。数据库244被配置为存储每个PDC 246的预定义单位单元(PDC)246和对应的单元内PC描述(IPC)248。PDC 246的实例与IPC 248的对应实例之间的映射通过其间的线在图2中表示。PDC 246的给定实例是单位单元的示例。PDC246的实例一起提供了单位单元库。在一些实施例中,PDC 246的各种实例对应于单位单元A102A、单位单元B 102B、单位单元C 102C、单位单元D 102D、单位单元E 102E等。在平面图100中,PDC 246的各种实例与其他布局图中的单位布局单元相对应。在一些实施例中,PDC246的实例被存储在标准单元库207中,并且映射被提供给数据库244中的IPC 248的对应实例。
在一些实施例中,为了促进在数据库244中的PDC 246的实例之间搜索,PDC 246的每个实例被配置有对应的哈希值。在一些实施例中,对于PDC 246的给定实例,通过将适当的哈希函数应用于PDC 246的给定实例来生成哈希值。哈希函数、哈希值和相关的品质因数在于2015年3月17日授权的美国专利No.8,984,459的全部内容通过引用合并于此。
例如,对于基本布局元素,例如多边形或任何其他形状),会生成签名。用于生成基本布局元素的签名的方法开始于步骤301,接收基本布局元素的描述作为输入。在步骤303中,生成基本布局元素的轨迹。轨迹是可以唯一标识基本布局元素及其位置的描述。轨迹可以是由多个数字形成的字符串。在步骤305中,形成哈希轨迹值。哈希轨迹值是通过哈希方法生成的,例如纠错码中使用的CRC32校验和方法。循环冗余校验(CRC)是一种错误检测代码,常用于数字网络和存储设备中,用于检测原始数据的意外更改。在步骤307中,形成基本布局元素的签名。
在一些实施例中,PDC 246的每个实例是已经经受过3D场求解器工具的单位单元,因此具有对应的IPC 248。IPC量化并描述了对应布局单元的内部PC。内部PC是内部组件(即布局单元内的组件)的电磁和/或静电相互作用的结果。因此,存储在数据库244中的每个IPC 248量化并描述了相应的PDC 246的内部PC。作为示例,图1的平面布置图100中的给定的布局单元(例如,行3和列4中的单位单元A 102A)与数据库244中的PDC 246的给定实例基本匹配,IPC 248的相应给定实例被替换为给定布局单元(即行3和列4中的单位单元A102A)的IPC,而不是使用3D场求解器工具对给定单元进行新IPC的离散地计算,从而减轻了计算负担并提高了效率。在一些实施例中,每个IPC 248被格式化为网表(例如,一些商业电路模拟器的输入文件格式“.spef”)。
数据库244还被配置为存储PDC 246的预定义组(PDG)250。每个PDG 250包括主题PDC 246和与主题PDC相邻的一个或多个PDC的对应集合。例如,在一些实施例中,PDG 250的给定实例假定PDC 146的第一实例是主题PDC,并且PDC 146的第一实例位于布局图的行i(第i行)和列i(第i列)中。PDG 250的给定实例还假定:PDC 146的第二个实例位于行i-1(第(i-1)行)和列i,因此被视为在PDC 146的第一个实例的正上方相邻;PDC 146的第三个实例位于行i-1(第(i-1)行)和列i+1(第(i+1)列),因此被视为在在PDC 146的第一个实例的右侧对角线上方紧邻;PDC 146的第四实例位于行i和列(i+1),因此被视为紧邻PDC 146的第一实例的右侧;PDC 146的第五个实例位于行i+1(第(i+1)行)和列(i+1),因此被视为在PDC146的第一个实例的右下角紧邻;PDC 146的第六个实例位于行(i+1)和列i,因此被视为紧邻PDC 146的第一个实例的下面;PDC 146的第七个实例位于行(i+1)和列(i-1)(第(i-1)列),因此被视为在PDC 146的对角线下方和左侧紧邻PDC 146的第一个实例;PDC 146的第八个实例位于行i和列(i-1),因此被视为紧邻PDC 146的第一个实例的左侧;PDC 146的第九个实例位于行(i+1)和列(i-1),因此被视为在PDC 146的第一个实例的左上方和左斜对角相邻。
在一些实施例中,PDG 250的对应实例的主题PDC是PDC 246的对应实例。因此,在图2中表示了PDG 250的实例与IPC 248的对应实例之间的映射。回顾PDC 246和IPC 248的实例之间的映射,还应当理解,PDG 250的对应实例的主题PDC因此被映射到IPC 248的对应实例。
数据库244还被配置为存储对应的单元间PC描述(EPC)252的实例。EPC量化和描述由相应的布局单元经历的PC,这是由外部组件(例如,相邻布局单元中的组件)的电磁和/或静电相互作用引起的。在首字母缩写词EPC中,使用字母E表示EPC的来源在相应的布局单元外部。PDG 250的实例与EPC 252的相应实例之间的映射在图2中表示。PDG 250的实例一起提供了一个单元组库。
作为可能对应于PDG 250实例的布局图中的组的示例,考虑平面图100中的以下给定的布局单元组,其中给定组的主题单元是在行2和列4中的单位单元A 102A,其中给定组的相邻单元包括:行1和列5-6中的单位单元B 102B;行2和列6中的单位单元C 102C;行3和列6中的单位单元C102C;行3和列5中的单位单元A;行3和列第4中的单位单元A 102A;行2和列5中的单位单元A 102A;行1和列4中的单元D 102D。继续示例,图1的平面图100中的给定组基本上匹配数据库244中的PDG 250的给定实例,EPC 252的对应给定实例替换为平面图100中给定组的布局单元的EPC,而不是使用3D场求解器工具对给定组进行新的EPC离散地计算,从而减少了计算负荷并提高了效率。进一步继续该示例,在一些实施例中,其中PDC246的给定实例表示PDG 250的给定实例的主题PDC,则将IPC 248的对应给定实例替换为主题PDC的IPC,而不是使用3D场求解器工具对主题单元的新的IPC进行离散地计算,从而减轻了计算负担并提高了效率。
在一些实施例中,PDG 250的每个实例都已经过3D场求解器工具的检验,因此具有相应的EPC252。EPC量化并描述了由于相邻布局单元的外部组件电磁相互作用而产生的主题布局单元的PC(即外部PC)。因此,存储在数据库244中的每个EPC 252量化并描述对象PDC的外部PC,该外部PPC是由组件与一个或多个相邻PDC的外部组件的外部电磁和/或静电相互作用所产生的。返回到PDG 250的示例,其中给定组的主题单元是图1的行2和列4中的单位单元A 102A,相应的EPC描述了由给定组的相邻单元的组件得到的外部PC,即:行1和列5-6中的单位单元B 102B;行2和列6中的单位单元C 102C;行3和列6中的单位单元C 102C;行3和列5中的单位单元A;行3和列4中的单位单元A 102A;行2和列5中的单位单元A 102A;行1和列4中的单位单元D 102D。在一些实施例中,每个EPC 252被格式化为网表。在一些实施例中,数据库244还存储布局图254。在一些实施例中,数据库244是布局对示意图(LVS)数据库。
图3A-图3E是根据一些实施例的流程图300,其描述了布局图中用于对应布局单元的IPC和EPC的过程。
流程图300包括框302-框334,其如下所述实施。应用流程图300中的框302-334的布局单元和布局图的示例是平面图100的布局单元102A、102B、102C、102D、102E。流程图300中的过程由执行计算机可执行代码的计算机设备实施,诸如执行以上关于图2描述的计算机程序代码206的EDA系统200。
在图3A中在框302处,从布局图中的布局单元中选择候选单元。在一些实施例中,所选的特定单元取决于用于迭代遍历布局图中的布局单元的特定迭代技术。在一些实施例中,计算机设备基于位置来遍历布局单元。在一些实施例中,计算机设备从起始位置到结束位置遍历布局单元。
平面图100中的每个布局单元102A、102B、102C、102D、102E都有位置。对于边界106、108、110、112内的布局单元102A、102B、102C、102D,布局单元102A、102B、102C、102D的位置由相应的行号(即行1至行5)和相应的列号(根据行号而变化)标识。外围布局单元102E的位置被视为特殊情况。在一个示例中,关于图1中的平面布置图100,计算机设备通过选择在边界106、108、110、112内的行1和列2-3中的布局单元102B开始。在该特定示例中,假定该过程开始于边界106、108、110内。在边界106、108、110、112内,该过程相对于X轴从左到右遍历特定行中的每个布局单元。例如,对于第1行,过程从行1和列第2-3中的布局单元102B开始,然后进行到行1和列4中的布局单元102D,然后继续进行到行1和列第5-6中的布局单元102B。遍历特定行中的所有布局单元后,该过程从上到下进行到下一行。这样,该过程移至行2,并从左到右依次遍历列2列流中的布局单元102C、列3然后列4然后列5中的单元102A、以及然后列6中的单元102C。在一些实施例中,该过程然后继续进行到行0和列4中的单元102E,然后到行2-3和列1中的单元102E,然后到行2-3和列7中的单元102E,然后到行6和列4中的单元102E。因此,假设框302的第一迭代选择行1和列2-3中的布局单元102B作为候选单元。流程从框302转到框304。
在框304处,在存储PDC及其对应IPC的数据库内,搜索与候选单元基本匹配的PDC中的一个。数据库的示例是图2的数据库244。PDC的示例包括数据库244中的PDC 246的实例等。在一些实施例中,图案识别算法用于确定候选单元是否基本匹配存储在数据库中的任何PDC。对于上面描述的第一迭代,其中候选单元是行1和列2-3中的布局单元102B,在数据库244中搜索与行1和列2-3中的布局单元102B基本匹配的PDC 246实例中的一个。流程从框304前进到框305。
在作为判定框的框305处,确定是否发现基本匹配。如果是,即,当发现基本匹配时,则流程沿“是”分支行进到图3B中的框306。如果没有,即,当没有发现基本匹配时,则流程沿否分支前进到图3D中的框318。假设发现基本匹配,则流程沿框314的“是”分支前进至框306。
在图3B的框306处,将匹配的PDC的IPC分配给候选单元。在上述的第一迭代中,与PDC 246的实例相对应的IPC 248实例与行1和第2-3列中的布局单元102B基本匹配,从而将IPC 248的实例分配给候选单元,从而避免了原本必须离散地计算候选单元的PC描述的情况。从框306,流程进行到框308。
在框308处,选择候选布局组,其包括候选单元以及与候选单元相邻的一个或多个布局单元的集合。在一些实施例中,候选单元和与候选单元相邻的布局单元之间的邻接关系根据EPC精度要求和可用的计算资源量而变化。在一些实施例中,候选布局组的窗口大小定义了相邻单元可以距所选单元多远并且仍然是候选布局组的一部分。
关于框308,在一些实施例中,以基本连续的单元为单位来指定窗口大小。例如,如果窗口大小被选择为1,则候选布局组中仅包括与候选单元相距1个基本连续的单元的距离的布局单元。作为另一示例,如果窗口大小被选择为2个基本连续的单元,则距候选单元2个基本连续的单元或更小距离的布局单元被包括在单元布局组中。继续上面讨论的第一迭代的示例,其中候选单元是行1行和列2-3中的布局单元102B,如果选择窗口大小为2,则行0和列4中的布局单元102E、行1和列4中的102D、行2和列2中的布局单元102C、行2和列3中的布局单元102A、行2和列4中的布局单元102A将包括在候选布局组中。
同样关于框308,尽管备选地,继续上面讨论的第一迭代的示例,其中候选单元是行1和列2-3中的布局单元102B,但是,如果选择了窗口大小2,则包括相邻的布局单元,即行0和列4中的布局单元102E、行1和列4中的布局单元102D、行2和列2中的布局单元102C、行2和列3中的布局单元102A、行2和列4中的布局单元102A;并且包括其他布局单元,即行1和列5-6中的布局单元102B、行2和列5中的布局单元102A、行3和列1中的布局单元102E、行3和列2中的布局单元102C、行3和列3中的布局单元102A、行3和列4中的布局单元102A、行3和列5中的布局单元102A。从框308,流程进行到框310。
在框310处,在存储PDG及其对应EPC的数据库内,搜索与候选布局组基本匹配的PDG中的一个。继续上面讨论的第一迭代的示例,其中候选单元为行1和列2-3中的布局单元102B,并假设窗口大小为1,则在数据库244的PDG 250实例中搜索一个PDC 246的主题实例,其基本上与行1和列2-3中的布局单元102B匹配,并且具有PDC 246的相邻实例,其对应地与行0和列4中的布局单元102E、行1和列4中的布局单元102D、行2和列2中的布局单元102C、行2和列3中的布局单元102A、行2和列4中的布局单元102A基本上匹配。从框310,流程进行到框311。
在作为判定框的框311处,确定是否已经发现候选布局组的基本匹配。如果是,即,当发现基本匹配时,则流程沿着“是”分支行进到图3C中的框312。如果没有,即,当没有发现基本匹配时,则流程沿否分支前进到图3E中的框326。假设发现基本匹配,则流程沿着框311的“是”分支前进到框312。
在图3C的框312处,将匹配的PDG的EPC分配给候选单元。继续上面讨论的第一迭代的示例,其中候选单元是行1和列2-3中的布局单元102B,EPC 252的实例对应于与行1和列中的布局单元102B匹配的PDG250的实例,并且具有PDC 246的相邻实例,其对应地与行0和列4中的布局单元102E、行1和列4中的布局单元102D、行2和列2中的布局单元102C以及行2和列2中的布局单元102A基本上匹配。将行2和列3以及行2和列4中的布局单元102A分配给候选单元,从而避免了原本必须为候选单元离散地计算EPC的情况。流程从框312转到框314。
在作为判定框的框314处,确定候选布局单元中的布局图是布局图中的最后一个布局单元。如果是,即,如果候选单元是布局图中的最后一个单元,则流程沿“是”分支前进到框316,在框316处,流程停止。如果不是,即,如果候选单元不是布局图中的最后一个布局单元,则过程迭代到下一个候选单元,流程沿“否”分支前进到框302,以便该过程可以针对下一个候选单元再次开始。以这种方式,过程逐步进行通过名单中列出的每个布局单元,该名单根据一些实施例列出了每个布局单元。在上面给出的示例中,布局单元102A、102B、102C、102D、102E的实例包含在按布局图100中的位置进行组织的名单中。继续上面提供的第一迭代的示例,对于第二迭代,过程将沿着框314的“否”分支进行至框302,其中在行1和列4中的布局单元102D成为候选单元。
再次参考图3A中的框305,假设未发现候选单元的基本匹配,则流程沿框305的“否”分支行进到图3D中的框318。继续上面讨论的第一迭代的示例,其中,假设PDC 246的实例均不匹配候选单元,则候选单元是行1和列2-3中的布局单元102B。然后,流程沿框305的“否”分支进行至框318。
在框318处,对候选单元执行3D场求解器工具,该工具离散地计算该候选单元的IPC。应当记得,由于数据库244中没有PDC 246的实例与候选单元基本匹配,所以流程已经沿着框305的“否”分支前进到框318之后已经到达框318。在一些实施例中,将3D场求解器工具配置为求解拉普拉斯方程,以获得候选单元的IPC。在上述第一迭代中,候选单元是行1和列2-3中的布局单元102B,并且假定PDC 246的所有实例均与候选单元基本不匹配,则3D字段求解器工具会离散地计算候选单元的IPC。流程从框318进入框320。
在框320处,将IPC(在框318中离散地计算)分配给候选单元。从框320,流程进行到框322。
在框322处,数据库被添加以包括:作为PDC 246的新实例的候选单元和作为PDC246的新实例的对应IPC的候选单元的IPC。在以上描述的第一迭代中,候选单元是行1和列2-3中的布局单元102B,并且假定PDC246的实例均与候选单元基本不匹配,则将数据库244添加为包括作为PDC246的新实例的行1和列2-3中的布局单元102B,以及作为PDC 246的新实例的IPC 248的对应实例的计算出的行1和列2-3中布局单元102B的IPC。平面图100或另一个布局图中的后续候选单元基本上与行1和列2-3中的布局单元102B匹配,那么就不必使用3D场求解器工具对IPC进行离散地计算。这样,已经由3D场求解器工具完成的工作将被存储并重新用于后续的候选单元。流程从框322转到框324。
在框324处,选择具有中央单元的候选布局组,其中中央单元是候选单元。应当记得,通过沿着框305的否分支通过框320-322进行处理,流程到达框324,这反映出数据库244中的PDC 246的实例中的候选单元没有基本匹配。在数据库244中,没有PDG 250的实例与中央单元为其候选单元的候选布局组基本匹配。
因此,在框324处,不仅以相同方式选择候选单元作为候选布局组的中心单元,而且还选择与候选单元相邻的一个或多个布局单元的第一集合。例如,关于框308在上文中进行了描述。例如,继续上述第一迭代的示例,其中,候选单元是行1和列2-3中的布局单元102B,如果假设窗口大小为1,则候选布局组的中心单元是候选单元,即行1和列2-3中的布局单元102B,并且候选布局组还包括行0和列4中的布局单元102E、行1和列4中的布局单元102D、行2和列2中的布局单元102A、行2和列3中的布局单元102A、行2和列4中的布局单元102A。然而,不是在数据库244中对与候选布局组基本匹配的PDG 250的实例中的一个进行的徒劳的搜索,搜索是徒劳的是因为在数据库244中的PDC 246的实例中对候选单元没有基本匹配的(如框305确定的),代替的流程进行到图3E中的框326。
在图3E的框326处,对候选单元进行3D场求解器工具,该工具离散地计算该候选单元的EPC。应当记得,由于数据库244中没有PDC 246的实例与候选单元基本匹配,所以流程沿着框305的“否”分支前进到框318之后到达框326,因此数据库244中没有PDG250的实例与候选单元基本匹配,其中中心单元为候选单元。在一些实施例中,将3D场求解器工具配置为求解拉普拉斯方程,以便获得相对于候选布局组的候选单元的EPC。继续上面讨论的第一迭代的示例,其中候选单元是行1和列2-3中的布局单元102B,如果假定窗口大小为1,则3D场求解器工具将离散地计算相对于候选布局组的候选单元的EPC,候选布局组包括候选单元,即,行1和列2-3中的布局单元102B作为中心单元,并且还包括行0和列4中的布局单元102E、行1和列4中的布局单元102D、在行2和列2中的布局单元102C、行2和列3中的布局单元102A以及行2和列4中的布局单元102A。相应地,需要更多的计算资源和时间来离散地计算EPC。而且,在一些实施例中,窗口大小增加,在数据库244中发现匹配的PDG 250的可能性降低。流程从框326前进到框328。
在框328处,将EPC(在框326中离散地计算)分配给候选布局组,候选布局组包括作为其中央单元的候选单元。从框328,流程进行到框330。以这种方式,如果布局图100或另一布局图中的后续候选布局组与包含候选单元(即作为中心单元的行1和列2-3中的布局单元102B,其还包括行0和列4中的布局单元102E、行1和列4中的布局单元102D、行2和列2中的布局单元102C、以及行2和列3中的布局单元102A和行2和列4中的布局单元102A)的候选布局组基本匹配,则继续进行,则不必使用3D场求解器工具对EPC进行离散地计算。这样,由3D场求解器工具已经完成的工作被存储,并再次将其重新用于后续的候选单元。流程从框332行进到框330再到框332,上面已经讨论了后者。
再次参考图3B中的判定框311,当候选布局组与数据库244中的PDG250的实例不匹配时,流程沿着框311的“否”分支前进到图3E中的框326,上面已经讨论了后者。
图4A-图4C是根据一些实施例的半导体器件的简化布局图400。
图4A-图4C示出了例如根据诸如图3A-图3E的方法在布局图中迭代遍历布局单元以确定布局单元的IPC和EPC的一个示例。在图4A-图4C中,每个布局单元由标识符LC和两个括号数字标识,即,两个用括号括起来的数字,例如LC(3,3),其中第一个数字是行位置,第二个数字是列位置。
在图4A-图4C中,布局单元LC设置在顶部边界402、左侧边界404、右侧边界406和底部边界408内。在图4A-图4C的示例中,布局图400具有九行1-9和七列1-7。在其他实施例中,布局图400包括多于或少于九行和/或多于或少于七列。另外,在图4A-图4C中,每行具有相同数量的布局单元LC,并且每列具有相同数量的布局单元LC。然而,在其他实施例中,两行或更多行具有不同数量的LC和/或两行或更多列具有不同数量的LC。
为了方便起见,延伸的行方向平行于X轴,而列延伸的方向平行于Y轴。为了图示和讨论的简单,示出了板的三个不同的迭代,即对应的图4A-图4C。为了易于图示和讨论,在图4A-图4C中的窗口尺寸为距离1。出于以下讨论的目的,迭代通过从最左边的列(即,列1)和最顶部的行(即,行1)开始然后遍历布局图400进行在Y方向上向下移动直到到达列的最后一行(即第9行)为止。下一列是紧接在前一列右边的列,然后迭代将再次从上到下遍历该列。迭代将一直持续到到达最后一行(即第7行)为止。然而,应当注意,可以利用任何用于遍历布局图400中的布局单元LC的技术。
在图4A中,候选单元是布局单元LC(3,3)。为了便于说明,关于说明选择布局单元LC(3,3)。候选布局组是具有相邻布局单元LC(2,2)、布局单元LC(2,3)、布局单元LC(2,4)、布局单元LC(3,2)、布局单元LC(3,4)、布局单元LC(4,2)、布局单元LC(4,3)和布局单元LC(4,4)的布局单元LC(3,3)。在一些实施例中,计算机设备(例如,图2中的EDA系统200)实施图3A-图3E中的框302-334来确定布局单元LC(3,3)的IPC和EPC。
然后,计算机设备前进到下一个候选单元。在图4B中,候选单元是布局单元LC(4,3)。候选布局组是具有相邻布局单元LC(3,2)、布局单元LC(3,3)、布局单元LC(3,4)、布局单元LC(4,2)、布局单元LC(4,4)、布局单元LC(5,2)、布局单元LC(5,3)、布局单元LC(5,4)的布局单元LC(4,3)。计算机设备(例如,图2中的EDA系统200)实施图3A-图3E中的框302-334来确定布局单元LC(4,3)的IPC和EPC。
然后,计算机设备前进到下一个候选单元。在图4C中,候选单元是布局单元LC(5,3)。候选布局组是具有相邻布局单元LC(4,2)、布局单元LC(4,3)、布局单元LC(4,4)、布局单元LC(5,2)、布局单元LC(5,4)、布局单元LC(6,2)、布局单元LC(6,3)、布局单元LC(6,4)的布局单元LC(5,3)。计算机设备(例如,图2中的EDA系统200)实施图3A-图3E中的框302-334来确定布局单元LC(5,3)的IPC和EPC。
计算机设备以这种方式前进通过每个布局单元LC,以确定布局单元LC的IPC和EPC。但是,对于EPC,请注意,由于窗口大小为1,因此仅考虑距离为1的布局单元。这使得更有可能在数据库中发现候选布局组的匹配项,并且还会减少用3D场求解器离散地计算EPC所需的时间。但是,由于EPC受距离较远的布局单元EPC影响(尽管距离较远的布局单元LC对EPC的影响较小),所以EPC的计算将不太准确。
图5A-图5C是根据一些实施例的半导体器件的简化布局图400。
更具体地,图5A-图5C是以上关于图4A-图4C描述的相同半导体器件的简化布局图400。尽管窗口尺寸的上下文具有距离2,而图4A-图4C中的窗口尺寸为距离1。在图5A-图5C中,计算机设备以与以上关于图4A-图4C描述的相同的顺序进行布局图。图5A-图5C中的窗口尺寸为距离2。在图5A-图5C中,计算机设备例如根据诸如图3A-图3E中的方法来确定布局单元的IPC和EPC。
在图5A中,候选单元是布局单元LC(3,3)。为了便于说明,选择布局单元LC(3,3)。候选布局组是候选布局单元LC(3,3)和相邻的布局单元LC(1,1)、布局单元LC(1,2)、布局单元LC(1,3)、布局单元LC(1,4)、布局单元LC(1,5)、布局单元LC(2,1)、布局单元LC(2,2)、布局单元LC(2,3)、布局单元LC(2,4)、布局单元LC(2,5)、布局单元LC(3,1)、布局单元LC(3,2)、布局单元LC(3,4)、布局单元LC(3,5)、布局单元LC(4,1)、布局单元LC(4,2)、布局单元LC(4,3)、布局单元LC(4,4)、布局单元LC(4,5)、布局单元LC(5,1)、布局单元LC(5,2)、布局单元LC(5,3)、布局单元LC(5,4)和布局单元LC(5,5)。计算机设备(例如,图2中的EDA系统200)实施图3A-图3E中的框302-334来确定布局单元LC(3,3)的IPC和EPC。
然后,计算机设备前进到下一个候选单元。在图5B中,候选单元是布局单元LC(4,3)。候选布局组是具有相邻布局单元LC(2,1)、布局单元LC(2,2)、布局单元LC(2,3)、布局单元LC(2,4)、布局单元LC(2,5)、布局单元LC(3,1)、布局单元LC(3,2)、布局单元LC(3,3)、布局单元LC(3,4)、布局单元LC(3,5)、布局单元LC(4,1)、布局单元LC(4,2)、布局单元LC(4,4)、布局单元LC(4,5)、布局单元LC(5,1)、布局单元LC(5,2)、布局单元LC(5,3)、布局单元LC(5,4)、布局单元LC(5,5)、布局单元LC(6,1)、布局单元LC(6,2)、布局单元LC(6,3)、布局单元LC(6,4)和布局单元LC(6,5)的布局单元LC(4,3)。计算机设备(例如,图2中的EDA系统200)实施图3A-图3E中的框302-334来确定布局单元LC(4,3)的IPC和EPC。
然后,计算机设备前进到下一个候选单元。在图5C中,候选单元是布局单元LC(5,3)。候选布局组是具有相邻布局单元LC(3,1)、布局单元LC(3,2)、布局单元LC(3,3)、布局单元LC(3,4)、布局单元LC(3,5)、布局单元LC(4,1)、布局单元LC(4,2)、布局单元LC(4,3)、布局单元LC(4,4)、布局单元LC(4,5)、布局单元LC(5,1)、布局单元LC(5,2)、布局单元LC(5,4)、布局单元LC(5,5)、布局单元LC(6,1)、布局单元LC(6,2)、布局单元LC(6,3)、布局单元LC(6,4)、布局单元LC(6,5)、布局单元LC(7,1)、布局单元LC(7,2)、布局单元LC(7,3)、布局单元LC(7,4)和布局单元LC(7,5)的布局单元LC(5,3)。计算机设备(例如,图2中的EDA系统200)实施图3A-图3E中的框302-334来确定布局单元LC(5,3)的IPC和EPC。
计算机设备以这种方式前进通过每个布局单元LC,以确定布局单元LC的IPC和EPC。在这种情况下,图5A-图5C所示的EPC比图4A-图4C中确定的EPC更准确,图4A-图4C中窗口尺寸为1。这将更可能在数据库中发现候选布局组的匹配项,并且还减少了使用3D场求解器离散地计算EPC所需的时间。但是,由于EPC受距离较远的布局单元EPC影响(尽管距离较远的布局单元LC对EPC的影响较小),所以EPC的计算将不太准确。
图6是根据一些实施例的在选择候选单元之前实施的过程的流程图600。
在一些实施例中,用户知道特定的单位布局单元将在整个布局图中重复出现。例如,如果用户知道布局图包括具有SRAM存储器单元的新配置的SRAM存储器,则用户知道新版本的SRAM存储器单元在整个SRAM存储器电路的布局图中迭代出现。因此,用户将希望确保利用计算机设备(例如,EDA系统200)向这些SRAM存储器单元分配PC描述尽可能有效地进行。
在框602处,计算机设备从用户接收单位布局单元。例如,EDA系统200接收新的SRAM存储器单元的单位布局单元。在框604处,计算机设备在数据库中搜索与单位布局单元基本匹配的PDC中的一个。例如,EDA系统200搜索数据库244以确定PDC 246的任何实例是否与新SRAM存储器单元的单位布局单元匹配。在框606处,当没有发现基本匹配时,计算机设备实施3D场求解器以离散地计算单位布局单元的IPC的新实例。例如,EDA系统200实施3D场求解器以为新的SRAM存储器单元的单位布局单元离散地计算新的IPC。最终,在框608处,计算机设备添加数据库以包括单位布局单元作为PDC中的新的一个,并且计算出的单位布局单元的IPC作为PDC中的一个新的IPC。例如,EDA系统200添加数据库244,以使新SRAM存储器单元的单位布局单元成为PDC 246中的一个,而计算出的IPC成为新PDC 246中IPC 248的一个。
图7是根据一些实施例的在选择候选单元之前实现的过程的流程图700。
在一些实施例中,数据库存储包括布局单元的布局图的集合。可以搜索布局图的集合中的布局单元,以发现通过一个或多个布局图重复的布局单元。以这种方式,这些布局单元的PC描述被提供为在特定的布局图上实现的图3A-图3E中的框302-334之前的PDC246。
在框702处,计算机设备从数据库中的布局图的集合中提取布局单元的群体。例如,EDA系统200从存储在数据库244中的布局图的集合254中提取布局单元的群体。在框704处,计算机设备在群体中搜索彼此基本匹配的布局单元群体中的两个或更多个。例如,EDA系统200从布局图的集合254中搜索布局单元的群体,以寻找至少两个彼此基本匹配的布局单元。在框706处,计算机设备提供与基本彼此匹配的布局单元的群体中的两个或更多个相对应的单位布局单元。在一些实施例中,EDA系统200被配置为为彼此匹配的两个或更多个布局单元生成单位单元布局,或者简单地选择其中一个布局单元作为代表单位布局单元。在框708处,计算机设备从群体中去除彼此基本匹配的布局单元群体中的两个或更多个。例如,EDA系统200从布局图254提取的布局单元的群体中去除两个或更多个重复的布局单元。这是因为所有这些重复的布局单元均以单位布局单元为特征。
在框710处,计算机设备在数据库中搜索与单位布局单元基本匹配的PDC中的一个。例如,EDA系统200搜索数据库244以确定PDC 246中的任何一个是否与单位布局单元匹配。在框712处,当没有发现基本匹配时,计算机设备实施3D场求解器以离散地计算用于单位布局单元的新的IPC。例如,EDA系统200实施3D场求解器以离散地计算用于单位布局单元的新的IPC。最终,在框714处,计算机设备添加数据库以包括单位布局单元作为新的PDC中的一个,并且所计算的单位布局单元的IPC作为新的PDC中的一个的IPC的实例。例如,EDA系统200添加数据库244,以使单位布局单元成为PDC 246的新实例,并且所计算的IPC成为新PDC 246的IPC 248的新实例。
然后流程进行到框716。框716是决策框,其中计算机设备从布局图组中确定在布局单元的群体中是否存在另一个布局单元。如果是,则过程在框718处停止。如果布局单元不是群体中的最后一个布局单元,则计算机设备迭代到布局单元的群体中的下一个布局单元,并返回到框704。计算机设备实施框704-716用于下一个布局单元。以这种方式,计算机设备递增地遍历从数据库中的布局图的集合提取的布局单元群体中的所有布局单元。通过这种方式,重复布局单元的IPC已在数据库中提供。
图8是根据一些实施例的在布局图中获得重复的布局单元的IPC的另一实施例的流程图。
在框802处,计算机设备在布局图中识别重复的第一布局单元(第一重复布局单元),每个第一重复布局单元是候选单元的实例。例如,相对于图1中的平面图100,EDA系统200识别行1、列2-3中的布局单元102B,行1、列5-6中的布局单元102B,行5、列2-3中的布局单元102B,以及行5、列5-6中的布局单元102B作为重复的布局单元。
在一些实施例中,计算机设备识别第一布局单元,通过从布局图中提取布局单元来重复第一布局单元,从而导致初始群体。例如,EDA系统200从布局图100中提取布局单元102A、102B、102C、102D、102E作为布局单元102A、102B、102C、102D、102E的初始群体。然后,计算机设备在彼此基本匹配的布局单元中搜索两个或多个初始群体。一旦计算机设备确定两个或更多个布局单元之间存在基本匹配,则计算机设备从初始群体中移除重复布局单元。在一些实施例中,重复布局单元的位置被标记,使得这些位置被跳过以进行其他迭代。这是因为如下所述,同时为重复的单元布局确定了IPC。
例如,EDA系统200选择行1、列2-3中的布局单元102B,并搜索布局单元102A、102B、102C、102D、102E的初始群体,以确定布局单元102A、102B、102C、102D、102E中的哪个基本上与行1、列2-3中的布局单元102B匹配。在这种情况下,EDA系统200将发现行1、列5-6中的布局单元102B,行5列2-3中的布局单元102B和行5列5-6中的布局单元102B与行1、列5-6中的布局单元102B基本匹配。行1、列2-3中的布局单元102B,行1、列5-6中的布局单元102B,行5、列2-3中的布局单元102B和行5、列5-6中的布局单元102B作为重复布局单元是单位单元(单位单元B)的实例。然后,EDA系统200标记位置(行1,列2-3)、(行1,列5-6)、(行5,列2-3)、(行5,列5-6),以便这些位置跳过所有的布局单元102B,从而从初始群体中去除所有布局单元102B。
在框804处,在存储PDC及其对应IPC的数据库内,计算机设备在数据库中搜索与候选单元基本匹配的PDC中的一个。在上面的示例中,EDA系统200在数据库244中搜索与作为候选单元的单位单元(单位单元B)基本匹配的PDC 246中的一个。
在框806处,计算机设备将匹配的PDC的IPC分配给每个第一重复布局单元,从而避免了原本必须为每个重复布局单元离散地计算IPC。在上面的示例中,EDA系统200将与单位单元(单位单元B)基本匹配的PDC246的IPC 248分配给行1、列2-3中的布局单元102B,行1、列5-6中的布局单元102B,行5、列2-3的布局单元102B和行5、列5-6的布局单元102B。
在框808处,当未发现基本匹配项时,计算机设备在候选单元上实施3D场求解器工具,以在候选单元与任何PDC不匹配时,为候选单元离散地计算IPC。在一些实施例中,将3D场求解器工具配置为求解拉普拉斯方程,以获得候选单元的IPC。例如,当PDC 246中的任何一个都不与单元单元(单位单元B)基本匹配时,EDA系统200在单元单元(单位单元B)上实施3D场求解器工具。在框810处,当候选单元与数据库中的任何PDC都不匹配时,计算机设备将计算出的IPC分配给布局图中的候选单元。例如,EDA系统200将计算出的IPC分配给行1、列2-3的布局单元102B,行1、列5-6的布局单元102B,行5、列2-3的布局单元102B和行5列5-6中的布局单元102B。在框812处,计算机设备将数据库添加为包括:候选单元作为PDC中的新的一个,以及针对候选单元的IPC,作为新的PDC中的一个的IPC。例如,EDA设备200添加数据库244,以包括:作为PDC 246中的一个新的单位单元(单位单元B),以及为新的单位单元(单位单元B)计算的IPC作为新的PDC 246中的一个的IPC 248。以这种方式,同时确定与单元(单位单元B)基本匹配的行1、列2-3的布局单元102B,行1、列5-6的布局单元102B,行5、列2-3的布局单元102B,行5、列5-6的布局单元102B。
流程然后前进到框814。框814是决策框,其中计算机设备从布局图的集合确定在布局单元的群体中是否存在另一个布局单元。如果是,则过程在框816处停止。如果布局单元不是群体中的最后一个布局单元,则计算机设备迭代到布局单元的群体中的下一个布局单元,并返回到框802。在一些实施例中,一旦确定每个重复单元的所有IPC的数量,保留未重复的布局单元。在这种情况下,除了跳过重复单元的位置以外,可以在未重复的布局单元上实施框302-334。
图9是根据一些实施例的在布局图中获得重复的布局组的EPC的另一实施例的流程图。
在框902处,计算机设备在布局图中识别重复的第一布局组(第一重复布局组),每个第一重复布局组是第一候选单元布局组的实例。每个第一布局组包括候选单元和与候选单元相邻的一个或多个布局单元的集合。例如,相对于图1中的平面图100,考虑迭代,其中行2、列4中的布局单元102A(其是行2、列4中的单位单元(单位单元A)的实例)是布局组中的候选单元。假设窗口尺寸为1,则相邻单元包括行1、列2-3中的布局单元102B(是单位单元B的实例),行1、列4中的布局单元102D,行1、列5-6中的布局单元102B(是单位单元B的实例),邻近左侧的行2、列3中的另一个布局单元102A(是单位单元D的实例),邻近右侧的行2、列5中的另一个布局单元102A(是单位单元A的实例),以及行3、列3中的布局单元102A(是单位单元A的实例),行3、列4中的布局单元102A(是单位单元A的实例),行3、列5中的布局单元102A(是单位单元A的实例)的另一底部相邻行。为了方便起见,布局组具有中心单元为行2、列2中的布局单元102A,相邻的行1、列2-3中的布局单元102B(是单位单元B的实例),行1列、列4中的布局单元102D(是单位单元D的实例),行1、列第5-6(是单位单元B的实例)中的布局单元102B,邻近于左侧的行2列3中的另一个布局单元102A(是单位单元A的一个实例),邻近于右侧的行2行、列5(是单位单元A的一个实例)中的另一个布局单元102A,行3、列3中的布局单元102A(是单位单元A的实例)、行3、列4中的布局单元102A(是单位单元A的实例)、行3、列5中的布局单元102A(是单位单元A的实例)的另一个底部相邻行,被称为布局组1。另一个布局组包括行4、列4中的布局单元102A(是单位单元A的实例)作为候选单元,相邻的行5、列2-3中的布局单元102B(是单位单元B的实例),行5、列4中的布局单元102D(是单位单元D的实例),行5、列5-6中的布局单元102B(是单位单元B的实例),邻近于左侧的行4、列3中的另一布局单元102A(是单位单元A的实例),邻近于右侧的行5、列5中的另一布局单元102A(是单位单元A的实例),以及行3、列3中的布局单元102A(是单位单元A的实例),行3、列4中的布局单元102A(是单位单元A的实例),行3、列5中的布局单元102A(是单位单元A的实例)的另一个顶部相邻行。为了方便起见,将该组标识为布局组2。EDA系统200将布局组1和布局组2标识为基本匹配的布局单元组,单位单元(单位单元A)的作为相邻于单位单元(单位单元B)、单位单元(单位单元D)、单位单元(单位单元B)的垂直相邻行的主题PDC,邻近左侧的另一个单元(单位单元A),邻近右侧的另一个单元(单位单元A),以及单位单元(单位单元A)、单位单元(单位单元A)、单位单元(单位单元A)的另一行垂直相邻行。为了方便起见,将这组单位单元标识为相关的候选单位布局组。EDA系统将布局组1和布局组2标识为相关候选布局组的重复实例。
在一些实施例中,计算机设备从布局单元的初始群体中移除重复的布局组的候选单元。例如,EDA系统200从图9的框902-916的进一步迭代中移除组1和组2中的布局单元的位置。因此,在进一步的迭代中,组1中的布局单元的位置和组2中的布局单元的位置被跳过。
在框904处,在存储PDG及其对应的EPC的数据库内,计算机设备在数据库中搜索与相关候选单元布局组基本匹配的PDG中的一个。在以上示例中,EDA系统200在数据库244中搜索基本匹配相关候选单元布局组的PDG 250中的一个。
在框906处,计算机设备将匹配的PDG的EPC分配给第一重复布局组中的每个候选单元,从而避免了原本必须为每个第一重复布局组离散地计算EPC。在上面的示例中,EDA系统200将与相关布局组基本匹配的PDG250的相应实例的EPC 252的实例分配给布局组2的行2、列4中的布局单元102A和行4、列4中的布局单元102A。
在框908处,当未发现基本匹配项时,计算机设备在第一候选单元布局组上实施3D场求解器工具,以在第一候选单元布局组与PDC 246的任何实例都不匹配时为每个第一重复布局组离散地计算EPC。在一些实施例中,3D场求解器工具被配置为求解拉普拉斯方程,以便获得第一候选单元布局组的EPC。例如,当PDG 250的实例没有基本匹配相关布局组时,EDA系统200在相关候选单元布局组上实施3D场求解器工具。在框910处,当第一候选单元布局组与数据库244中的PDC 246的任何实例都不匹配时,计算机设备将计算出的EPC分配给第一候选布局组的候选单元。在上述初始迭代中,EDA系统200将计算出的EPC分配给布局组1的行2、列4中的布局单元102A和布局组2的行4、列4中的布局单元102A。在框912处,计算机设备将数据库244添加为包括:第一候选单元布局组作为PDG250的新实例,而EPC用于第一候选单元布局组作为EPC 252的对应新实例用于新实例PDG250。例如,EDA设备200将数据库244添加为包括:布局单位组,单位单元(单位单元A)作为相邻于单位单元(单位单元B)、单位单元(单位单元D)、单位单元(单位单元B)的垂直相邻行的主题PDC,邻近左侧的另一个单元(单位单元A),邻近右侧的另一个单元(单位单元A),以及单位单元(单位单元A)、单位单元(单位单元A)、单位单元(单位单元A)的另一行垂直相邻行(即,第一候选单元布局组),作为PDG 250的新成员,而计算出的第一候选单元布局组的EPC作为PDG250的新成员的EPC252。
流程然后前进到框914。框914是决策框,其中计算机设备从布局图组中确定在布局单元的群体中是否存在另一个布局单元。如果是,则过程在框916处停止。如果布局单元不是群体中的最后一个布局单元,则计算机设备迭代到布局单元的群体中的下一个布局单元,并返回到框902。确定布局组的数量,在一些实施例中保留未重复的布局组。在这种情况下,除了跳过重复的布局组的布局单元的位置之外,可以在未重复的布局组上实现框302-334。
图10是根据一些实施例的生成布局图的方法1000的流程图。
根据一些实施例,方法1000例如可以使用EDA系统2(以上讨论的图2)和集成电路(IC)制造系统1100(以下讨论的图11)来实施。关于方法1000,布局图的示例包括图1中的布局图100以及这里公开的图4A-图4C和图5A-图5C中的布局图400等。可以根据方法1000制造半导体器件的示例包括通过图1中的布局图100以及这里公开的图4A-图4C和图5A-图5C中的布局图400表示的半导体器件。
参照图10,方法1000包括框1002-1004。在框1002,生成布局图,该布局图除其他外包括表示如上在图4A-图4C和图5A-图5C中的400中所公开的一个或多个电路区域的图案。在一些实施例中,图3A-图3E中的框302-344、图6中的框602-608、图7中的框702-718、图8中的框802-816和/或图9中的框902-916在框1002中实施。
在框1004处,基于布局图,进行(A)一种或多种光刻曝光中的至少一种,或者(b)制造一种或多种半导体掩模,或者(C)制造半导体器件的一层或多层中的一个或多个组件。参见下面对图11中的IC制造系统1100的讨论。
图11是根据一些实施例的集成电路(IC)制造系统1100以及与其相关联的IC制造流程的框图。
制造系统1100被配置为制造由图1中的布局图100以及这里公开的图4A-图4C和图5A-图5C中的布局图400表示的半导体器件。
在一些实施例中,基于布局图,例如,使用制造系统1100来制造(A)一个或多个半导体掩模中的至少一个或(b)半导体集成电路的至少一个层中的至少一个组件。
参照图11,IC制造系统1100包括在设计、开发和制造周期和/或彼此相互作用的实体,例如设计室1120、掩模室1130和IC制造商/制造商(“fab”)1150。与制造IC器件1160有关的服务或服务。系统1100中的实体通过通信网络连接。在一些实施例中,通信网络是单个网络。在一些实施例中,通信网络是各种不同的网络,例如企业内部网和因特网。该通信网络包括有线和/或无线通信信道。每个实体与一个或多个其他实体进行交互,并向一个或多个其他实体提供服务和/或从其中一个或多个其他实体接收服务。在一些实施例中,设计室1120、掩模室1130和IC fab 1150中的两个或更多个由单个较大的公司拥有。在一些实施例中,设计室1120、掩模室1130和IC fab 1150中的两个或更多个在公共设施中共存并使用公共资源。
设计公司(或设计团队)1120生成IC设计布局图1122。IC设计布局图1122包括为IC器件1160设计的各种几何图案。几何图案对应于金属、氧化物或半导体层的图案,构成要制造的IC器件1160的各种部件。各个层组合形成各种IC功能。例如,IC设计布局图1122的一部分包括各种IC特征,例如有源区域、栅电极、源极和漏极、层间互连的金属线或过孔,以及用于在半导体衬底(例如硅晶圆)和设置在半导体衬底上的各种材料层中形成的用于焊盘的开口。设计室1120实施适当的设计过程以形成IC设计布局图1122。设计过程包括逻辑设计、物理设计或布局和布线中的一个或多个。IC设计布局图1122呈现在具有几何图案信息的一个或多个数据文件中。例如,IC设计布局图1122可以以GDSII文件格式或DFII文件格式表达。
掩模室1130包括数据准备1132和掩模制造1144。掩模屋1130使用IC设计布局图1122来制造一个或更多个掩模1145,以根据IC设计布局图1122来制造IC器件1160的各个层。掩模室1130执行掩模数据准备1132,其中IC设计布局图1122被翻译成代表性数据文件(“RDF”)。掩模数据准备1132提供RDF以掩模制造1144。掩模制造1144包括掩模写入器。掩模写入器将RDF转换为基板上的图像,例如掩模(掩模版)1145或半导体晶圆1153。通过掩模数据准备1132处理设计布局图1122,以符合掩模写入器和/的特定特征或IC fab 1150的要求。在图11中,掩模数据准备1132和掩模制造1144被示为单独的元件。在一些实施例中,掩模数据准备1132和掩模制造1144可以被统称为掩模数据准备。
在一些实施例中,掩模数据准备1132包括光学邻近校正(OPC),其使用光刻增强技术来补偿图像误差,诸如可能由于衍射、干涉、其他处理效果等引起的那些图像误差。OPC调整IC设计布局图1122。在一些实施例中,掩模数据准备1132包括其他分辨率增强技术(RET),例如离轴照明、子分辨率辅助功能、相移掩模、其他合适的技术等或其组合。在一些实施例中,还使用反光刻技术(ILT),其将OPC视为反成像问题。
在一些实施例中,掩模数据准备1132包括掩模规则检查器(MRC),该掩模规则检查器使用一组掩模创建规则来检查已经在OPC中进行过处理的IC设计布局图1122,该掩模创建规则的组包含对掩模的一些几何和/或连通性限制以确保足够的余量,以解决半导体制造工艺中的可变性等问题。在一些实施例中,MRC修改IC设计布局图1122以补偿掩模制造1144期间的限制,其可以撤消由OPC执行的修改的一部分以满足掩模创建规则。
在一些实施例中,掩模数据准备1132包括光刻工艺检查(LPC),其模拟将由IC fab1150实施以制造IC器件1160的处理。LPC基于IC设计布局图1122来仿真该处理以创建仿真的LPC模拟中的处理参数可以包括与IC制造周期的各种过程相关的参数,与用于制造IC的工具相关的参数和/或制造过程的其他方面。LPC考虑到各种因素,例如航拍图像对比度、焦深(DOF)、蒙版误差增强因子(MEEF)、其他合适的因素等或其组合。在一些实施例中,在通过LPC创建了模拟的制造设备之后,如果模拟的设备在形状上不够接近以满足设计规则,则重复OPC和/或MRC以进一步细化IC设计布局图1122。
应该理解,为了清楚起见,掩模数据准备1132的以上描述已被简化。在一些实施例中,数据准备1132包括诸如逻辑操作(LOP)之类的添加特征,以根据制造规则来修改IC设计布局图1122。另外,可以以各种不同的顺序执行在数据准备1132期间应用于IC设计布局图1122的处理。
在掩模数据准备1132之后以及在掩模制造1144期间,基于修改的IC设计布局图1122来制造掩模1145或掩模组1145。在一些实施例中,掩模制造1144包括执行基于一个或多个光刻的曝光在IC设计布局图1122上的电子束。在一些实施例中,基于修改的IC设计布局,电子束(e-beam)或多个电子束的机构用于在掩模(光掩模或掩模版)1145上形成图案。图1122可以以各种技术形成掩模1145。在一些实施例中,使用二进制技术形成掩模1145。在一些实施例中,掩模图案包括不透明区域和透明区域。用于曝光已经涂覆在晶圆上的图像敏感材料层(例如,光致抗蚀剂)的辐射束,例如紫外线(UV)束、被不透明区域阻挡并且透射通过透明区域。在一个示例中,掩模1145的二元掩模版本包括透明基板(例如,熔融石英)和涂覆在该二元掩模的不透明区域中的不透明材料(例如,铬)。在另一示例中,使用相移技术形成掩模1145。在掩模1145的相移掩模(PSM)版本中,在相移掩模上形成的图案中的各种特征被配置为具有适当的相差以增强分辨率和成像质量。在各种示例中,相移掩模可以是衰减的PSM或交替的PSM。由掩模制造1144产生的掩模被用于多种工艺中。例如,在离子注入工艺中使用这样的掩模,以在半导体晶圆1153中形成各种掺杂区域,在蚀刻工艺中使用这种掩模,以在半导体晶圆1153中形成各种蚀刻区域,和/或在其他合适的工艺中使用。
IC fab 1150是IC制造企业,其包括用于制造各种不同IC产品的一个或多个制造设施。在一些实施例中,IC Fab 1150是半导体铸造厂。例如,可能有一个制造工厂用于多个IC产品的前端制造(前端(FEOL)制造),而第二个制造工厂可以为互连和封装提供后端制造IC产品(后端(BEOL)的制造),第三制造工厂可能会为铸造业务提供其他服务。
IC fab 1150包括制造工具1152,该制造工具1152被配置为在半导体晶圆1153上执行各种制造操作,从而根据掩模(例如,掩模1145)制造IC器件1160。在各种实施例中,制造工具1152包括一个晶圆步进器、离子注入机、光致抗蚀剂涂布机、处理室(例如CVD室或LPCVD炉)、CMP系统、等离子蚀刻系统、晶圆清洁系统或其他能够执行一项或多项的制造设备中的一项或多项或更合适的制造工艺,如本文所述。
IC fab 1150使用由掩模罩1130制造的掩模1145来制造IC器件1160。因此,IC fab1150至少间接地使用IC设计布局图1122来制造IC器件1160。在一些实施例中,半导体晶圆1153由IC fab 1150使用掩模1145形成IC器件1160。在一些实施例中,IC制造包括至少间接基于IC设计布局图1122进行一次或多次光刻曝光。半导体晶圆1153包括硅衬底或在其上形成有材料层的其他合适的衬底。半导体晶圆1153进一步包含各种掺杂区,电介质特征,多层互连等中的一者或一者以上(在随后的制造步骤中形成)。
关于集成电路(IC)制造系统(例如,图11的系统1100)以及与之相关联的IC制造流程的细节例如在2016年2月9日授权的美国专利号9,256,709,2015年10月1日发布的授权前公开号第20150278429号,2014年2月6日发布的美国授权前公告号第20140040838号,以及2007年8月21日授权的美国专利第7,260,442号中找到,其全部内容通过引用结合于此。
例如,在美国专利号9,256,709中,在设计室(或设计团队)生成IC设计布局。IC设计布局包括为IC器件设计的各种几何图案。几何图案对应于构成要制造的IC器件的各种组件的金属,氧化物或半导体层的图案。各个层组合形成各种IC功能。例如,IC设计布局的部分包括各种IC部件,例如有源区域、栅电极、源极和漏极、层间互连的金属线或通孔,以及用于在半导体中形成的用于焊盘的开口,开口将形成在半导体衬底(例如硅晶圆)和设置在半导体衬底上的各种材料层。设计室执行适当的设计过程以形成IC设计布局。设计过程可以包括逻辑设计、物理设计和/或布局布线。IC设计布局被呈现在具有几何图案信息的一个或多个数据文件中。掩模室使用IC设计布局来制造一个或多个掩模,掩模用于根据IC设计布局来制造IC器件的各个层。掩模室执行掩模数据准备,其中将IC设计布局转换成可以由掩模编写器物理写入的形式,其中将由掩模数据准备准备的设计布局修改为遵守特定的掩模制造商和/或掩模厂商,然后进行制造。在本实施例中,掩模数据准备和掩模制造被图示为单独的元件,然而,掩模数据准备和掩模制造可以被统称为掩模数据准备。掩模数据准备通常包括光学接近度校正(OPC),其使用光刻增强技术来补偿图像误差,诸如可能由于衍射、干涉或其他处理效应而引起的那些图像误差。掩模数据准备可以包括其他分辨率增强技术(RET),例如离轴照明、子分辨率辅助特征、相移掩模、其他合适的技术或其组合。掩模数据准备132还包括掩模规则检查器(MRC),掩模规则检查器使用一组掩模创建规则来检查已经在OPC中进行过处理的IC设计布局,该掩模创建规则可以包含一些几何和连通性限制以确保足够的裕度。
例如,在美国授权前公开号20150278429中,在一个实施例中,IC制造系统可以采用无掩模光刻技术,诸如电子束光刻或光学无掩模光刻。在这样的系统中,掩模制造被旁路,并且IC设计布局通过适合于利用特定的无掩模光刻技术进行晶圆处理的数据准备来修改。数据准备修改了适合于IC制造系统中的后续操作的设计布局。数据准备的结果以一个或多个数据文件表示,例如GDSII文件格式或DFII文件格式的文件。一个或多个数据文件包括几何图案的信息,例如表示主要设计图案和/或辅助部件的多边形。在本实施例中,一个或多个数据文件还包括由数据准备产生的辅助数据。辅助数据将用于增强IC制造系统的各种操作,例如由掩模室进行的掩模制造和由IC制造商进行的晶圆曝光。
例如,在授权前公告号第20140040838号中,IC设计布局被呈现在具有几何图案信息的一个或多个数据文件中。在一示例中,IC设计布局以本领域已知的“GDS”格式表示。在替代实施例中,IC设计布局可以以诸如DFII、CIF、OASIS或任何其他合适的文件类型的替代文件格式在IC制造系统中的组件之间传输。IC设计布局300包括代表集成电路的部件的各种几何图案。例如,IC设计布局可以包括主要的IC部件,例如有源区、栅电极、源极和漏极、金属线、层间互连通孔,以及用于在半导体中形成的用于焊盘的开口,开口将形成在半导体衬底(例如硅晶圆)和设置在半导体衬底上的各种材料层。IC设计布局还可包括一些辅助部件,诸如用于成像效果、处理增强和/或掩模识别信息的那些部件。
例如,在美国专利第7,260,442号中,掩模制造系统包括:用于加工掩模的加工工具;与处理工具连接的计量工具,用于检查掩模并获得检查结果;控制器,与处理工具和计量工具偶偶饥饿,用于生成处理工具的制造模型,并根据设备数据、材料数据和掩模的检查结果对制造模型进行校准。掩模制造系统可包括至少一个处理工具、计量工具、控制器、数据库和制造执行系统。处理工具可以是曝光工具、显影剂、蚀刻机或光刻胶剥离剂。计量工具执行蚀刻后检查或剥离后检查,并分别获得蚀刻后检查结果或剥离后检查结果。控制器用于处理工具的运行到运行控制,包括前馈控制和后馈控制。控制器从计量工具接收蚀刻后或剥离后检查结果,并从数据库中检索器件和材料数据。与制造执行系统连接的控制器生成处理工具的制造模型,并根据设备数据、材料数据和掩模的检查结果来校准制造模型。控制器还监视处理工具的操作条件并在处理期间调整处理工具的制造模型。
在一个实施例中,一种制造半导体器件的方法,相应的布局图存储在非暂时性计算机可读介质上,该布局图包括布局单元,该方法包括生成布局图,该布局图包括:选择候选者布局图中的布局单元中的单元;在存储预定义单元及其对应的PC描述的数据库中,在数据库中搜索与候选单元基本匹配的预定义单元中的一个;当发现基本匹配时,将匹配的预定义单元的PC描述分配给候选单元。
在一些实施例中,公开了一种制造半导体器件的方法。相应的布局图被存储在非暂时性计算机可读介质上,该布局图包括布局单元,该方法包括通过以下方式生成布局图:从布局图的布局单元中选择候选单元;以及从布局单元中选择候选单元。在存储预定义单元及其对应的寄生电容(PC)描述的数据库中,在数据库中搜索与候选单元基本匹配的预定义单元中的一个;当发现基本匹配时,将匹配的预定义单元的PC描述分配给候选单元。在一些实施例中,该方法还包括:迭代选择候选单元,搜索数据库并分配PC描述;以及其中,布局图包括列出每个布局单元的名单;选择候选单元的迭代将逐步进行,并逐一列出名单中列出的每个布局单元。在一些实施例中,该方法还包括:当在预定义单元和候选单元之间未发现基本匹配时,离散地计算候选单元的PC描述;以及并添加数据库以包括:候选单元作为预定义单元中的新单元;以及以及候选单元的PC描述,作为新的预定义单元中的一个的PC描述。在一些实施例中,为候选单元离散地计算新的PC描述包括:在候选单元上实施3D场求解器工具以计算新的PC描述。在一些实施例中,:候选单元是第一候选单元;所述方法还包括:从所述布局图中的所述布局单元中选择第二候选单元;在数据库中搜索与第二候选单元基本匹配的预定义单元中的一个;当发现基本匹配时,将匹配的预定义单元的PC描述分配给第二候选单元,从而避免否则不得不离散地计算第二候选单元的PC描述。在一些实施例中,候选单元的PC描述包括候选单元的单元内PC描述。
在一些实施例中,选择候选单元包括:从布局图中提取布局单元的初始群体;以及在初始群体中,从初始群体中基本匹配的两个或多个布局单元中搜索两个或多个布局单元(第一重复的布局单元);第一重复布局单元中的一个选定的(选择的第一重复布局单元)是候选单元。在一些实施例中,该方法进一步包括:将匹配的预定义单元的PC描述批量分配给除所选的第一重复布局单元之外的其余的第一重复布局单元中的其余部分,从而避免以其他方式必须为每个离散重复计算PC描述其余的第一个重复布局单元。在一些实施例中,该方法还包括:迭代搜索初始群体,搜索数据库,批量分配PC描述以及添加数据库,其中:布局图包括列出每个布局单元的名单;选择候选单元的迭代将逐步进行,并逐一列出名单中列出的每个布局单元。在一些实施例中,该方法还包括:基于布局图,以下至少中的一个:(A)进行一次或多次光刻曝光;以及(B)制造一个或多个半导体掩模;或(C)在半导体集成电路的层中制造至少一个组件。
在另一个实施例中,一种非暂时性计算机可读介质,其上存储有表示生成布局图的方法的计算机可执行指令,该布局图包括组织为布局组的布局单元,每个布局组包括中央单元以及与中央单元(相邻单元)相邻的一组单元中的一个或多个,该计算机可执行指令可由至少一个处理器执行以执行一种方法,该方法包括通过以下步骤生成布局图:从以下选项中选择候选布局组:在布局组中;在存储预定义组及其对应的寄生电容(PC)描述的数据库中,每个预定义组包括主题预定义单元和与主题预定义单元相邻的一个或多个预定义单元的对应组,在数据库中搜索预定义组中的一个与候选单元组基本匹配;当发现基本匹配时,将匹配的预定义组的PC描述分配给候选布局组。在一些实施例中,该方法还包括:重复选择候选布局组,搜索数据库并分配PC描述;以及其中,布局图包括列出每个布局组的名单;并且选择候选布局组的迭代将逐步进行名单中列出的每个布局组。在一些实施例中,该方法还包括:当没有发现基本匹配时,离散地计算候选布局组的PC描述;以及并添加数据库以包括:候选布局组作为预定组中的新组;以及候选布局组的PC描述作为新的预定义组中的一个的PC描述。在一些实施例中,为候选布局组离散地计算新的PC描述包括:在候选布局组上实施3D场求解器工具以计算新的PC描述。在一些实施例中,候选布局组的PC描述包括:对于候选布局组的一组相邻单元中的至少一个相邻单元,候选布局组的中心单元与对应的相邻单元之间的单元间PC描述布局组中的一个。在一些实施例中,该方法还包括:基于布局图,使集成电路制造系统执行以下至少一项:(A)进行一次或多次光刻曝光;以及(B)制造一个或多个半导体掩模;或(C)在半导体集成电路的层中制造至少一个组件。
在另一个实施例中,一种用于制造半导体器件的系统,该系统包括:至少一个处理器;以及至少一种存储计算机可执行代码的非暂时性计算机可读介质;所述至少一个非暂时性计算机可读存储介质,所述计算机程序代码和所述至少一个处理器被配置为使所述系统生成包括布局单元的布局图,所述布局图的生成包括:从之中选择候选单元。布局图中的布局单元;在存储预定义单元及其对应的单元内寄生电容(PC)描述的数据库中,在数据库中搜索与候选单元基本匹配的预定义单元中的一个;当发现基本匹配时,将匹配的预定义单元的单元内PC描述分配给候选单元。在一些实施例中,布局图的生成还包括:迭代选择候选单元,搜索数据库和分配PC描述;以及其中,布局图包括列出每个布局单元的名单;选择候选单元的迭代将逐步进行,并逐一列出名单中列出的每个布局单元。在一些实施例中,布局图的生成还包括:当在预定义单元和候选单元之间未发现基本匹配时,离散地计算候选单元的单元内PC描述;以及并添加数据库以包括:候选单元作为预定义单元中的新单元;以及以及候选单元的单元内PC描述,作为新的预定义单元中的一个的单元内PC描述。在一些实施例中,所述系统还包括以下至少中的一个:掩蔽设施,其被配置为基于所述布局图来制造一个或多个半导体掩模;以及所述掩蔽设施。或制造设施,其被配置为基于布局图在半导体集成电路的层中制造至少一个组件。
上述概述了几个实施例的特征,以便本领域技术人员可以更好地理解本公开的各个方面。本领域技术人员应当理解,他们可以容易地使用本公开作为设计或修改用于实现本文所介绍的实施例的相同目的和/或实现其相同优点的其它过程和结构的基础。本领域技术人员还应当认识到,此类等效结构不背离本发明的精神和范围,并且它们可以在不背离本发明的精神和范围的情况下在本发明中进行各种改变、替换以及改变。
Claims (10)
1.一种制造半导体器件的方法,相应的布局图被存储在非暂时性计算机可读介质上,所述布局图包括布局单元,所述方法包括生成所述布局图,包括:
从所述布局图中的所述布局单元中选择候选单元;
在存储预定义单元和相应的寄生电容(PC)描述的数据库中,在所述数据库中搜索与所述候选单元基本匹配的所述预定义单元中的一个;以及
当发现基本匹配时,将匹配的所述预定义单元的所述PC描述分配给所述候选单元。
2.根据权利要求1所述的方法,还包括:
迭代进行所述选择候选单元、所述搜索所述数据库和所述分配所述PC描述;并且
其中:
所述布局图包括一个列出每个所述布局单元的名单;和
所述选择候选单元的所述迭代逐步进行所述名单中列出的每个所述布局单元。
3.根据权利要求1所述的方法,还包括:
当在所述预定义单元与所述候选单元之间未发现基本匹配时,离散地计算所述候选单元的PC描述;并且
添加所述数据库以包括:
所述候选单元作为所述预定义单元中的新的一个;和
将所述候选单元的所述PC描述作为预定义单元的所述新的一个的PC描述。
4.根据权利要求3所述的方法,其中,离散地计算所述候选单元的新的PC描述包括:
在所述候选单元上实施3D场求解器工具以计算所述新的PC描述。
5.根据权利要求1所述的方法,其中:
所述候选单元为第一候选单元;并且
所述方法还包括:
从所述布局图中的所述布局单元中选择第二候选单元;
在所述数据库中搜索与所述第二候选单元基本匹配的所述预定义单元中的一个;和
当发现基本匹配时,将匹配的所述预定义单元的所述PC描述分配给所述第二候选单元,从而避免原本必须离散地计算所述第二候选单元的PC描述。
6.根据权利要求1所述的方法,其中:
所述候选单元的所述PC描述包括所述候选单元的单元内PC描述。
7.根据权利要求1所述的方法,其中:
所述选择所述候选单元包括:
从所述布局图中提取布局单元的初始群体;
在所述初始群体中搜索所述初始群体中的基本匹配的两个或更多个布局单元(第一重复布局单元);和
所述第一重复布局单元中的所选的一个(所选的第一重复布局单元)是所述候选单元。
8.根据权利要求7所述的方法,还包括:
将匹配的所述预定义单元的所述PC描述批量分配给除了所述所选的第一重复布局单元之外的所述第一重复布局单元的其余一个,从而避免了原本必须离散地计算所述第一重复布局单元的所述其余一个的每个的PC描述。
9.一种非暂时性计算机可读介质,其上存储有表示生成布局图的方法的计算机可执行指令,所述布局图包括组织为布局组的布局单元,每个布局组包括中央单元和与所述中央单元相邻的一个或多个单元的集合(相邻单元),所述计算机可执行指令由至少一个处理器执行以执行一种方法,所述方法包括所述生成所述布局图,包括:
从所述布局组中选择候选布局组;
在存储预定义组和对应的寄生电容(PC)描述的数据库中,每个预定义组包括主题预定义单元以及相应的与所述主题预定义单元相邻的一个或多个所述预定义单元的集合,
在所述数据库中搜索与所述候选单元组基本匹配的所述预定组中的一个;和
当发现基本匹配时,将匹配的所述预定义组的所述PC描述分配给所述候选布局组。
10.一种用于制造半导体器件的系统,所述系统包括:
至少一个处理器;
至少一个存储计算机可执行代码的非暂时性计算机可读介质;
所述至少一个非暂时性计算机可读存储介质,所述计算机可执行代码和所述至少一个处理器被配置为使所述系统生成包括布局单元的布局图,所述布局图的生成包括:
从所述布局图中的所述布局单元中选择候选单元;
在存储预定义单元及其对应的单元内寄生电容(PC)描述的数据库中,在所述数据库中搜索与候选单元基本匹配的所述预定义单元中的一个;和
当发现基本匹配时,将匹配的所述预定义单元的所述单元内PC描述分配给所述候选单元。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063048925P | 2020-07-07 | 2020-07-07 | |
US63/048,925 | 2020-07-07 | ||
US17/199,023 US11681847B2 (en) | 2020-07-07 | 2021-03-11 | Method of manufacturing semiconductor device and system for same |
US17/199,023 | 2021-03-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113536728A true CN113536728A (zh) | 2021-10-22 |
Family
ID=77103771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110767283.2A Pending CN113536728A (zh) | 2020-07-07 | 2021-07-07 | 制造半导体器件的方法、系统以及非暂时性计算机可读介质 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11681847B2 (zh) |
EP (1) | EP3937058A1 (zh) |
JP (1) | JP2022014918A (zh) |
CN (1) | CN113536728A (zh) |
TW (1) | TWI781610B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210224459A1 (en) * | 2019-07-31 | 2021-07-22 | Taiwan Semiconductor Manufacturing Co., Ltd. | Analog cells utilizing complementary mosfet pairs |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11681847B2 (en) * | 2020-07-07 | 2023-06-20 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of manufacturing semiconductor device and system for same |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150213177A1 (en) * | 2014-01-28 | 2015-07-30 | Arm Limited | Computer implemented system and method for generating a layout of a cell defining a circuit component |
US20150310124A1 (en) * | 2014-04-29 | 2015-10-29 | Wix.Com Ltd. | System and method for the creation and use of visually-diverse high-quality dynamic layouts |
US20180307791A1 (en) * | 2017-04-19 | 2018-10-25 | Mentor Graphics Corporation | Context-Aware Pattern Matching For Layout Processing |
CN109783833A (zh) * | 2017-11-15 | 2019-05-21 | 台湾积体电路制造股份有限公司 | 集成电路及其设计的方法及其设计系统 |
US20190286784A1 (en) * | 2018-03-16 | 2019-09-19 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method for generating layout diagram including wiring arrangement |
US20200004915A1 (en) * | 2018-06-29 | 2020-01-02 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of generating layout diagram including dummy pattern conversion and system of generating same |
CN110660788A (zh) * | 2018-06-29 | 2020-01-07 | 台湾积体电路制造股份有限公司 | 集成电路器件和集成电路单元的布局图生成方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002164432A (ja) * | 2000-11-24 | 2002-06-07 | Mitsubishi Electric Corp | 半導体回路抽出装置、自動配置配線装置、およびその方法、ならびにライブラリ流通システム |
US6931613B2 (en) * | 2002-06-24 | 2005-08-16 | Thomas H. Kauth | Hierarchical feature extraction for electrical interaction calculations |
EP1599893A2 (en) * | 2003-02-25 | 2005-11-30 | Timelab Corporation | Clocktree tuning shims and shim tuning method |
EP1683188A4 (en) * | 2003-11-06 | 2008-08-06 | Clear Shape Technologies Inc | DELTA INFORMATION DESIGN CLOSURE IN THE MANUFACTURE OF INTEGRATED CIRCUITS |
US7260442B2 (en) | 2004-03-03 | 2007-08-21 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method and system for mask fabrication process control |
US7363607B2 (en) * | 2005-11-08 | 2008-04-22 | Pulsic Limited | Method of automatically routing nets according to parasitic constraint rules |
US8984459B2 (en) | 2012-05-04 | 2015-03-17 | Taiwan Semiconductor Manufacturing Company, Ltd. | Methods and apparatus for layout verification |
US8850366B2 (en) | 2012-08-01 | 2014-09-30 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method for making a mask by forming a phase bar in an integrated circuit design layout |
US9256709B2 (en) | 2014-02-13 | 2016-02-09 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method for integrated circuit mask patterning |
CN104933214B (zh) | 2014-03-21 | 2019-03-15 | 台湾积体电路制造股份有限公司 | 集成电路设计方法和装置 |
US9465906B2 (en) | 2014-04-01 | 2016-10-11 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and method for integrated circuit manufacturing |
US9959380B2 (en) | 2016-03-28 | 2018-05-01 | Motivo, Inc. | Integrated circuit design systems and methods |
US10482212B2 (en) * | 2017-02-23 | 2019-11-19 | Synopsys, Inc. | Automated resistance and capacitance extraction and netlist generation of logic cells |
US11171089B2 (en) | 2018-10-31 | 2021-11-09 | Taiwan Semiconductor Manufacturing Company, Ltd. | Line space, routing and patterning methodology |
US11681847B2 (en) * | 2020-07-07 | 2023-06-20 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of manufacturing semiconductor device and system for same |
-
2021
- 2021-03-11 US US17/199,023 patent/US11681847B2/en active Active
- 2021-05-10 TW TW110116790A patent/TWI781610B/zh active
- 2021-07-07 EP EP21184324.8A patent/EP3937058A1/en not_active Withdrawn
- 2021-07-07 CN CN202110767283.2A patent/CN113536728A/zh active Pending
- 2021-07-07 JP JP2021113170A patent/JP2022014918A/ja active Pending
-
2023
- 2023-06-15 US US18/335,505 patent/US20230325575A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150213177A1 (en) * | 2014-01-28 | 2015-07-30 | Arm Limited | Computer implemented system and method for generating a layout of a cell defining a circuit component |
US20150310124A1 (en) * | 2014-04-29 | 2015-10-29 | Wix.Com Ltd. | System and method for the creation and use of visually-diverse high-quality dynamic layouts |
US20180307791A1 (en) * | 2017-04-19 | 2018-10-25 | Mentor Graphics Corporation | Context-Aware Pattern Matching For Layout Processing |
CN109783833A (zh) * | 2017-11-15 | 2019-05-21 | 台湾积体电路制造股份有限公司 | 集成电路及其设计的方法及其设计系统 |
US20190286784A1 (en) * | 2018-03-16 | 2019-09-19 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method for generating layout diagram including wiring arrangement |
US20200004915A1 (en) * | 2018-06-29 | 2020-01-02 | Taiwan Semiconductor Manufacturing Company, Ltd. | Method of generating layout diagram including dummy pattern conversion and system of generating same |
CN110660788A (zh) * | 2018-06-29 | 2020-01-07 | 台湾积体电路制造股份有限公司 | 集成电路器件和集成电路单元的布局图生成方法 |
Non-Patent Citations (2)
Title |
---|
GORDON STOLL, ET AL: "Lightning-2: a high-performance display subsystem for PC clusters", 《PROCEEDINGS OF THE 28TH ANNUAL CONFERENCE ON COMPUTER GRAPHICS AND INTERACTIVE TECHNIQUES》, pages 141 - 148 * |
宋瑞良: "一种超高速太赫兹测试信号产生器的设计", 《深圳大学学报》, pages 176 - 181 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210224459A1 (en) * | 2019-07-31 | 2021-07-22 | Taiwan Semiconductor Manufacturing Co., Ltd. | Analog cells utilizing complementary mosfet pairs |
US11574104B2 (en) * | 2019-07-31 | 2023-02-07 | Taiwan Semiconductor Manufacturing Co., Ltd. | Analog cells utilizing complementary mosfet pairs |
Also Published As
Publication number | Publication date |
---|---|
US20230325575A1 (en) | 2023-10-12 |
TW202217636A (zh) | 2022-05-01 |
EP3937058A1 (en) | 2022-01-12 |
JP2022014918A (ja) | 2022-01-20 |
TWI781610B (zh) | 2022-10-21 |
US20220012401A1 (en) | 2022-01-13 |
US11681847B2 (en) | 2023-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11928415B2 (en) | Hard-to-fix (HTF) design rule check (DRC) violations prediction | |
US20230325575A1 (en) | Method of manufacturing semiconductor device and system for same | |
US11106854B2 (en) | Transition cells for advanced technology processes | |
US20230142853A1 (en) | Devices with track-based fill (tbf) metal patterning | |
US20220198121A1 (en) | Method of analyzing and detecting critical cells | |
US20220366121A1 (en) | Method and system for fixing violation of layout | |
US11362090B2 (en) | Semiconductor device having buried logic conductor type of complementary field effect transistor, method of generating layout diagram and system for same | |
US20230267262A1 (en) | Metal cut region location method | |
US20240126973A1 (en) | Post-Routing Congestion Optimization | |
US20240176944A1 (en) | Semiconductor process technology assessment | |
US11636248B2 (en) | Metal cut region location system | |
US20230014110A1 (en) | Variable tracks and non-default rule routing | |
US11776958B2 (en) | Semiconductor device having buried logic conductor type of complementary field effect transistor, method of forming same | |
US20230259686A1 (en) | Semiconductor device and method and system of arranging patterns of the same | |
US20220335200A1 (en) | Electrically aware routing for integrated circuits | |
CN118070743A (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 |