CN111597768B - 用于构建版图图案集的方法、设备和计算机可读存储介质 - Google Patents
用于构建版图图案集的方法、设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN111597768B CN111597768B CN202010414230.8A CN202010414230A CN111597768B CN 111597768 B CN111597768 B CN 111597768B CN 202010414230 A CN202010414230 A CN 202010414230A CN 111597768 B CN111597768 B CN 111597768B
- Authority
- CN
- China
- Prior art keywords
- pattern
- initial
- patterns
- layout
- target pattern
- 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 69
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000010276 construction Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004904 shortening Methods 0.000 abstract description 5
- 238000011165 process development Methods 0.000 abstract description 4
- 238000011160 research Methods 0.000 abstract description 2
- 230000001737 promoting effect Effects 0.000 abstract 1
- 230000008569 process Effects 0.000 description 40
- 238000004422 calculation algorithm Methods 0.000 description 17
- 230000002068 genetic effect Effects 0.000 description 16
- 238000012360 testing method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 239000012634 fragment Substances 0.000 description 4
- 230000035772 mutation Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 210000000349 chromosome Anatomy 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000010353 genetic engineering Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000005303 weighing 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/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/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]
Abstract
根据本公开的示例实施例,提供了用于构建版图图案集的方法、设备和计算机可读存储介质。一种构建版图图案集的方法包括确定用于电路版图的多个初始图案。多个初始图案中的每个初始图案包括至少一个几何图形。该方法还包括通过改变和组合多个初始图案,生成目标图案。该方法进一步包括基于目标图案构建版图图案集。以此方式,可以丰富已有版图图案集中的图案或者生成具有大量图案的版图图案集。如此获得的版图图案集可以帮助标识和研究未知的版图类型,进而促进缩短工艺开发时间。
Description
技术领域
本公开的实施例主要涉及集成电路领域,并且更具体地,涉及用于构建版图图案集的方法、设备和计算机可读存储介质。
背景技术
电路版图(又可以简称为版图)是从设计并模拟优化后的电路所转化成的一系列几何图形,其包含了集成电路尺寸、各层拓扑定义等器件相关的物理信息数据。集成电路制造商根据这些数据来制造掩模。掩模上的图形决定着芯片上器件或连接物理层的尺寸。
在半导体生产中,制造工艺窗口通常会受到电路版图上某种几何特征的影响。包括这种几何特征的图案类型通常被称为热点或热点图案。通常期望能够在工艺开发的早期阶段,预测工艺的热点图案。为了达到这一目标,需要大量的各种图案来探索热点图案。
发明内容
根据本公开的示例实施例,提供了一种用于构建版图图案集的方案。
在本公开的第一方面中,提供了一种构建版图图案集的方法。该方法包括确定用于电路版图的多个初始图案。多个初始图案中的每个初始图案包括至少一个几何图形。该方法还包括通过改变和组合多个初始图案,生成目标图案。该方法进一步包括基于目标图案构建所述版图图案集。
在本公开的第二方面中,提供了一种电子设备。该电子设备包括处理器以及与处理器耦合的存储器,存储器具有存储于其中的指令,指令在被处理器执行时使设备执行动作。动作包括确定用于电路版图的多个初始图案。多个初始图案中的每个初始图案包括至少一个几何图形。动作还包括通过改变和组合多个初始图案,生成目标图案。动作进一步包括基于目标图案构建所述版图图案集。
在一些实施例中,基于目标图案构建版图图案集可以包括:确定目标图案是否满足与电路版图中的几何图形的尺寸和位置相关的约束条件;以及如果确定目标图案满足约束条件,将目标图案添加至版图图案集。
在一些实施例中,生成目标图案可以包括:改变多个初始图案中的至少一个几何图形,以确定经改变的初始图案;以及将经改变的初始图案组合成目标图案。
在一些实施例中,改变至少一个几何图形可以包括以下中的至少一项:改变至少一个几何图形的形状,或改变至少一个几何图形在初始图案中的位置。
在一些实施例中,经改变的初始图案可以包括第一图案和第二图案。将经改变的初始图案组合成目标图案可以包括:确定第一图案中的第一几何图形所占据的第一区域;确定第二图案中与第一区域相对应的第二区域;以及通过调整第二区域中的第二几何图形来确定目标图案。
在一些实施例中,通过调整第二区域中的第二几何图形来确定目标图案可以包括:通过从第二图案中移除第二几何图形,来确定目标图案。
在一些实施例中,通过调整第二区域中的第二几何图形来确定目标图案可以包括:通过叠加第一几何图形和第二几何图形,来确定目标图案。
在一些实施例中,经改变的初始图案可以包括第三图案和第四图案。将经改变的初始图案组合成目标图案可以包括:通过相对于第三图案放置第四图案来确定目标图案,使得在目标图案中第三图案与第四图案间隔开。
在一些实施例中,动作还可以包括:如果确定目标图案满足约束条件,将目标图案添加至构建中的电路版图,作为电路版图的一部分;确定电路版图的构建是否完成;以及如果确定电路版图的构建尚未完成,从电路版图集中确定多个另外的初始图案。
在一些实施例中,生成目标图案可以包括:将多个初始图案组合成中间图案,中间图案包括基于至少一个几何图形确定的中间几何图形;以及通过改变中间图案中的中间几何图形,来确定目标图案。
在一些实施例中,确定多个初始图案可以包括:从版图图案集中确定多个初始图案。
在本公开的第三方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现根据本公开的第一方面的方法。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素,其中:
图1示出了本公开的多个实施例能够在其中实现的示例环境的示意图;
图2示出了根据本公开的一些实施例的构建版图图案集的过程的流程图;
图3示出了根据本公开的一些实施例的生成目标图案的一个示例的示意图;
图4示出了根据本公开的一些实施例的生成目标图案的另一示例的示意图;
图5示出了根据本公开的一些实施例的生成目标图案的又一示例的示意图;
图6示出了根据本公开的一些实施例的构建电路版图的过程的流程图;以及
图7示出了能够实施本公开的多个实施例的计算设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如前文所提及的,在半导体生产中,制造工艺窗口通常会受到电路版图上某种几何特征的影响。包括这种几何特征的图案类型通常被称为热点或热点图案。通常期望能够在工艺开发的早期阶段,预测工艺的热点图案。为了达到这一目标,需要大量的各种图案来探索热点图案。
用于探索热点的测试图案通常来自引用先前技术节点的现存图案库。利用这些测试图案可以尽早发现库中的热点图案,从而可以在早期(甚至在设计阶段)防止热点图案。因此,用于探索热点的测试图案库的丰富性或完整性决定了晶圆制造过程中存在的缺失热点的数量。由此,本申请的发明人意识到,如果能够丰富用于探索热点的测试图案库,则可以防止更多的热点图案。
已经提出一些生成测试图案或热点图案的方法。在一种合成版图生成方案中,可以从较小的像素化图案来生成测试图案。然而,这种方案只能应用于具有相等线/间隔特征的层,例如金属层。在另一种通过合成热点生成来进行热点检测的方案中,通过移动多边形的边缘位置来生成热点图案的变型。然而,这种方案过于直接而难以生成不同的图案变型。
鉴于传统方案的上述缺点,仍然需要一种能够自动生成大量图案的方案来丰富用于探索热点的测试图案库。遗传算法(Genetic Algorithm,GA)是一种机器学习方法。遗传算法是根据大自然中生物体进化规律而设计提出的。该算法通过数学的方式,利用计算机仿真运算,将问题的求解过程转换成类似生物进化中的染色体基因的交叉、变异等过程。遗传算法通常包括如下的过程:产生初始种群;选择一部分种群以产生新一代种群;对所选择的种群执行遗传操作,包括交叉和突变等;试探性地衡量或惩罚新产生的种群;根据中止条件而停止。本申请的发明人意识到,可以应用遗传算法的思想来生成新的图案类型。
根据本公开的实施例,提出了一种构建版图图案集的方案。在该方案中,首先确定用于电路版图的多个初始图案。多个初始图案中的每个初始图案包括至少一个几何图形。然后,通过改变和组合多个初始图案,来生成目标图案。对初始图案的改变和组合可以基于遗传算法来进行。如果目标图案满足与电路版图中的几何图形的尺寸和位置相关的约束条件,将目标图案添加至版图图案集。如果目标图案不满足约束条件,可以确定新的初始图案来生成新的目标图案。
利用本公开的方案能够基于已有图案生成大量新图案(例如,不规则图案),从而丰富已有版图图案集中的图案或者生成具有大量图案的版图图案集。以此方式获得的版图图案集可以帮助标识和研究未知的版图类型,进而可以减小开发成本。例如,大量新图案可以用作探索热点的测试图案,以促进更早地检测到热点图案,从而缩短工艺开发时间。此外,大量新图案的自动生成还可以减少绘制各种测试图案所付出的人力成本。
以下将参照附图来具体描述本公开的实施例。
示例环境
图1示出了本公开的多个实施例能够在其中实现的示例环境100的示意图。示例环境100中的计算设备102可以是任何具有计算能力的设备。作为非限制性示例,计算设备102可以是任意类型的固定计算设备、移动计算设备或便携式计算设备,包括但不限于台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、多媒体计算机、移动电话等;计算设备102的全部组件或一部分组件可以分布在云端。
在该示例环境100中,计算设备102包括或部署有获取模块103、生成模块104和构建模块105。下文相对于计算设备102描述的动作具体可以由获取模块103、生成模块104或构建模块105执行。
获取模块103可以被配置为获得版图图案集110。如本文中所使用的,版图图案集也可以被称为版图图案库、版图集或版图库。版图图案集110可以包括电路版图(例如,所示的电路版图111)和/或用于电路版图的图案(例如,所示的图案112-115)。版图图案集110中的图案也可以被称为测试图案。版图图案集110中的电路版图和图案可以包括一层或多层的几何图形。
获取模块103可以进一步被配置为从版图图案集110中确定多个初始图案。在一些实施例中,初始图案可以是版图图案集110中的测试图案,例如图案112。备选地或附加地,在一些实施例中,初始图案可以是版图图案集110中的电路版图的片段。
生成模块104可以被配置为基于多个初始图案来生成目标图案,例如图1中所示的目标图案120。具体地,生成模块104可以通过改变和组合多个初始图案来生成目标图案。在一些实施例中,生成模块104可以被配置为利用遗传算法来生成目标图案。
构建模块105可以被配置为基于目标图案构建版图图案集。在一些实施例中,构建模块105可以将目标图案添加至版图图案集110中。在这种实施例中,本文所公开的构建版图图案集的过程可以用于更新或丰富已有版图图案集。在一些实施例中,构建模块105可以将目标图案添加至另一版图图案集130中。在这种实施例中,本文所公开的构建版图图案集的过程可以用于基于已有版图图案集生成新的版图图案集。
应当理解,图1中所示的版图图案集110中的电路版图和测试图案的数目和样式仅是示意性的,而无意限制。另外,图1中所示的模块划分仅为了说明而无意限制。
构建版图图案集的示例过程
为了更清楚地理解本公开的实施例所提供的更新版图图案集的方案,将参照图2-图5来进一步描述本公开的实施例。图2示出了根据本公开的一些实施例的构建版图图案集的过程200的流程图。过程200可以由图1的计算设备102实现。为便于讨论,将结合图1来描述过程200。
在框210,计算设备102确定用于电路版图的多个初始图案。多个初始图案中的每个初始图案包括至少一个几何图形。计算设备102可以从版图图案集110中确定多个初始图案。例如,获取模块103可以从电路版图111和图案112-115中确定多个初始图案。在一些实施例中,获取模块103可以从图案112-115中选择初始图案。例如,可以选择图案112和图案115作为初始图案。备选地或附加地,在一些实施例中,获取模块103可以将电路版图111的一部分或片段(又可以称为版图片段)确定为初始图案。
在一些实施例中,确定多个初始图案的过程可以是随机过程。例如,获取模块103可以随机地从图案112-115中和/或版图片段中选择初始图案。在一些实施例中,确定多个初始图案的随机过程可以倾向于选择某些图案或版图片段。例如,在版图图案集110包括原始图案和生成图案(例如,利用过程200而生成的图案)的情况下,该随机过程可以具有倾向于选择原始图案的概率分布。
在框220,计算设备102通过改变和组合多个初始图案,生成目标图案。例如,生成模块104可以利用遗传算法或经修改的遗传算法来改变和组合多个初始图案,以生成目标图案。换言之,对多个初始图案进行何种改变和组合可以是随机确定的。
在一些实施例中,生成模块104可以首先改变多个初始图案中的至少一个,以确定经改变的多个初始图案。然后,经改变的多个初始图案可以被组合成目标图案。因此,在这种实施例中,针对多个初始图案先执行变异操作,再执行交叉操作。
在一些实施例中,生成模块104可以首先组合多个初始图案,例如以形成中间图案。然后,生成模块104可以通过改变经组合的多个初始图案来确定目标图案。因此,在这种实施例中,针对多个初始图案先执行交叉操作,再执行变异操作。
在本公开的实施例中,改变图案(包括初始图案和经组合的初始图案)可以包括改变图案中的至少一个几何图形。例如,生成模块104可以改变至少一个几何图形形状和/或该至少一个几何图形在图案中的位置等。可以理解的是,改变形状和改变位置的操作的顺序是不受限制的。可以先改变形状,也可以先改变位置。改变至少一个几何图形的形状可以通过改变几何形状的尺寸(例如,在某一方向上缩短或扩展)和/或改变几何图形的类型(例如,从四边形改变为五边形)来实现。改变图案的过程可以是随机过程。例如,生成模块104可以随机地选择改变哪个或哪些几何图形。生成模块104可以进一步随机地确定如何改变所选择的几何图形,诸如随机地选择改变形状或位置中的一项或组合。
在本公开的实施例中,组合图案(包括初始图案和经改变的初始图案)可以包括将两个或更多个图案叠加在一起并且对两个或更多个图案中的几何图形执行逻辑操作。逻辑操作可以包括“非”操作(例如,图3的示例)、“或”操作(例如,图4的示例)、“与”操作、“与非”操作等。
在一些实施例中,多个初始图案或经改变的多个初始图案可以包括第一图案和第二图案。生成模块104可以确定第一图案中的第一几何图形所占据的第一区域,然后可以确定第二图案中与第一区域相对应的第二区域。可以理解的是,在此描述的第一几何图形可以包括第一图案中的一个或多个几何图形。例如,第一几何图形可以包括第一图案中的所有几何图形。进而,生成模块104可以通过调整第二区域中的第二几何图形来确定目标图案。在一些实现中,可以执行逻辑“非”操作,例如,生成模块104可以通过从第二图案中移除第二几何图形,来确定目标图案。在一些实现中,可以执行逻辑“或”操作。例如,生成模块104可以通过叠加第一几何图形和第二几何图形,来确定目标图案。
备选地或附加地,组合图案(包括初始图案和经改变的初始图案)可以包括以相对彼此不重叠的方式放置两个或更多个图案(例如,图5的示例)。在一些实施例中,多个初始图案或经改变的多个初始图案可以包括第三图案和第四图案。生成模块104可以通过相对于第三图案放置第四图案来确定目标图案,使得在目标图案中第三图案与第四图案间隔开。
下文将参考图3-图5来描述改变和组合图案的一些示例。
在框230,计算设备102基于目标图案构建版图图案集。在一些实施例中,计算设备102可以将目标图案添加至版图图案集110。备选地或附加地,在一些实施例中,计算设备102可以将目标图案添加至版图图案集130。
在一些实施例中,可以附加地考虑所生成的目标图案是否满足设计规则或其他约束条件。例如,计算设备102可以确定所生成的目标图案是否满足与电路版图中的几何图形的尺寸和位置相关的约束条件。例如,构建模块105可以利用设计规则检查(DRC)工具来确定所生成的目标图案是否满足设计规则。
如果目标图案不满足约束条件,则该目标图案可以被丢弃,并且过程200返回到框210。如果目标图案满足约束条件,则计算设备102可以将目标图案添加至版图图案集110和/或版图图案集130。
应当理解,以上参考图2描述的过程200可以被执行多次。例如,在将目标图案添加至版图图案集后,过程200可以返回到框210以向版图图案集进一步添加图案。尽管未示出,但是在过程200在返回框210之前,计算设备102可以判断图案添加过程是否结束。如果图案添加过程尚未结束,则过程200返回至框210。
利用遗传算法,过程200每次被执行时,可以随机地选择初始图案并且可以随机地确定要对初始图案执行的改变和组合。以此方式,可以生成大量的目标图案来丰富图案库。此外,过程200可以通过分布式计算针对多个层并行地被执行。
在上文所描述的利用遗传算法生成目标图案的方案中,对两个或更多个局部图案(例如,本文中描述的初始图案)执行逻辑操作。这使得该方案的实现不受限于初始图案的图形特征,并且在初始图案包括两层以上的图层的情况下,逻辑操作规则同样适用。因此,上文所描述的利用遗传算法生成目标图案的过程可以同时应用到多个层。可见,根据本公开的利用遗传算法生成目标图案的方案具有比传统方案更大的灵活性。
改变和组合图案的示例
示例1
如前文所提及的,在框220处,为了生成目标图案,可以首先改变多个初始图案中的至少一个,然后将经改变的多个初始图案相组合。参考图3,其示出了根据本公开的一些实施例的生成目标图案的一个示例的示意图。
在图3的示例中,在框210处,版图图案集110中的图案112和115被选择为初始图案。初始图案112和115中的每一个均包括至少一个几何图形。例如,初始图案115可以包括几何图形301,在此被示出为正方形。
在框220处,例如生成模块104可以通过改变几何图形301来确定经改变的初始图案315(其在本文中也可以被称为第一图案)。在该示例中,几何图形301的形状被改变。经改变的初始图案315可以包括几何图形302,在此被示出为长方形。同样地,生成模块104可以通过改变初始图案112中的几何图形的位置(在此示例中为向右移动)来确定经改变的初始图案312(其在本文中也可以被称为第二图案)。
可以理解的是,初始图案所对应的几何图形都是具有固定坐标位置的,其在电路设计完成的时候就已经实现了,所以改变了几何图形之间的相对位置也是改变了初始图案。
接下来,生成模块104可以基于经改变的初始图案312和经改变的初始图案315来生成目标图案320。在该示例中,可以将经改变的初始图案312和经改变的初始图案315叠加在一起,并且执行逻辑“非”操作。例如,可以从经改变的初始图案312中移除与经改变的初始图案315重叠的几何图形或几何图形的一部分。
作为示例,生成模块104可以确定经改变的初始图案315中的几何图形302所占据的区域(也可以称为第一区域)。然后,生成模块104可以确定经改变的初始图案312中与第一区域相对应的第二区域。生成模块104进而可以从经改变的初始图案312中移除几何图形303在第二区域中的一部分。图3中的箭头350示意性地示出了在叠加经改变的初始图案312和经改变的初始图案315时的逻辑“非”操作。
以此方式,可以生成目标图案320。如果目标图案320满足设计规则,则其可以被添加回版图图案集110中,或者被添加至版图图案集130中。
示例2
图4示出了根据本公开的一些实施例的生成目标图案的另一个示例的示意图。在图4的示例中,在框210处,获取模块103可以将版图图案集110中的电路版图111的版图片段选择为初始图案。如图4所示,初始图案411和412是图1中所示的电路版图110的片段。初始图案411和412中的每一个均包括至少一个几何图形。例如,初始图案411可以包括几何图形401,在此被示出为L形。初始图案412可以包括几何图形402,在此被示出为L形。
在框220处,例如生成模块104可以通过改变初始图案411中的几何图形401来确定经改变的初始图案413。经改变的初始图案413可以包括几何图形403。几何图形403可以是通过缩短几何图形401在水平方向上的尺寸而形成的。同样地,生成模块104可以通过改变初始图案412中的几何图形402来确定经改变的初始图案414。经改变的初始图案414可以包括几何图形404。几何图形404可以是通过扩展几何图形402在水平方向上的尺寸而形成的。
接下来,生成模块104可以基于经改变的初始图案413和经改变的初始图案414来生成目标图案420。在该示例中,可以将经改变的初始图案413和经改变的初始图案414叠加在一起,并且执行逻辑“或”操作。例如,可以在经改变的初始图案414中添加经改变的初始图案413中的一个或多个几何图形。图4中的箭头450示意性地示出了在叠加经改变的初始图案413和经改变的初始图案414时的逻辑“或”操作。
由示例1和示例2可以得出,不管初始图案是否为对称图案均可以执行该操作。
以此方式,可以生成目标图案420。如果目标图案420满足设计规则,则其可以被添加回版图图案集110中,或者被添加至版图图案集130中。
在以上的示例1和示例2中,初始图案在被组合前均被改变。应当理解,这仅是示例性的,而无意限制。在本公开的实施例中,可以改变任意数目的初始图案。此外,还应当理解,在使用遗传算法时,每次选择改变的初始图案的数目可以是随机的。
示例3
如上文所提及的,在组合图案时,还可以以相对彼此不重叠的方式放置两个或更多个图案。下面参考图5描述这种示例。图5示出了根据本公开的一些实施例的生成目标图案的又一示例的示意图500。
在图5的示例中,在框210处,获取模块103可以将版图图案集110中的电路版图111的版图片段选择为初始图案。如图5所示,初始图案511和512是图1中所示的电路版图110的片段。初始图案511和512中的每一个均包括至少一个几何图形。例如,初始图案511可以包括几何图形501,在此被示出为L形。初始图案512可以包括几何图形502,在此被示出为L形。
在框220处,生成模块104可以通过改变初始图案511中的几何图形501来确定经改变的初始图案513。经改变的初始图案513可以包括几何图形503。几何图形503可以是通过缩短几何图形501在水平方向上的尺寸而形成的。同样地,生成模块104可以通过改变初始图案512中的几何图形502来确定经改变的初始图案514。经改变的初始图案514可以包括几何图形504。几何图形504可以是通过扩展几何图形502在水平方向上的尺寸而形成的。
接下来,生成模块104可以基于经改变的初始图案513和经改变的初始图案514来生成目标图案520。与图3和图4中的示例不同,在该示例中,可以不叠加经改变的初始图案513和经改变的初始图案514。生成模块104可以以相对彼此不重叠的方式放置经改变的初始图案513和经改变的初始图案514。
如图4所示,生成模块104可以调整经改变的初始图案513所处位置的坐标。例如,经改变的初始图案513所处位置可以在水平方向上向右移动,如箭头551所示。备选地或附加地,生成模块104可以调整经改变的初始图案514所处位置的坐标。例如,经改变的初始图案514所处位置可以在水平方向上向左移动,如箭头552所示。
在调整了经改变的初始图案513和/或经改变的初始图案514所处位置(可以根据图案的原始坐标进行调整,调整的依据可以是DRC,或者是一设定的规则)之后,生成模块104可以执行逻辑“或”操作来生成目标图案520。如果目标图案420满足设计规则,则其可以被添加回版图图案集110中,或者被添加至版图图案集130中。尽管在图5的示例中,示出对经改变的初始图案513和经改变的初始图案514执行逻辑“或”操作,但是这仅是示意性的。在此也可以执行其他逻辑操作。
构建电路版图的示例过程
在以相对彼此不重叠的方式来组合两个或更多个图案的实施例(例如,图5的示例)中,还可以利用所生成的目标图案(例如,目标图案520)来构建或生成电路版图。图6示出了根据本公开的一些实施例的构建电路版图的过程600的流程图。过程600可以由图1的计算设备102实现。如图6所示,相对于过程200,过程600可以包括附加的框650、660和670。
在框650,计算设备102可以目标图案添加至构建中的电路版图,作为该电路版图的一部分。在框660,计算设备102可以确定该电路版图的构建是否完成。例如,计算设备102可以基于版图区域内的图案密度或由用户配置的其他准则来确定电路版图的构建是否完成。
如果在框660处确定该电路版图的构建尚未完成,则过程600可以返回到框210,以生成新的图案来添加至该电路版图。如果在框660处确定该电路版图的构建已经完成,则过程600可以进行到框670。在框670处,计算设备102可以输出所构建的电路版图。
在这样的实施例中,可以通过分布式处理并行地生成多个电路版图。此外,这些电路版图可以共享同一版图图案库,例如版图图案集110。以此方式,在丰富版图图案的同时可以生成电路版图。
以上描述了利用遗传算法来生成大量版图图案(例如,特别是不规则图案)以丰富版图图案库的方案。在该方案中,可以将遗传算法与对版图图案的逻辑操作相结合。该方案还可以与构建关键图案集的方法相结合。
示例设备
图7示出了可以用来实施本公开的实施例的示例设备700的示意性框图。设备700可以用于实现图1的计算设备102。如图所示,设备700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的计算机程序指令或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序指令,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元701执行上文所描述的各个方法和处理,例如过程200和600中的任一个。例如,在一些实施例中,过程200和600中的任一个可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由CPU 701执行时,可以执行上文描述的过程200和900中的任一个的一个或多个步骤。备选地,在其他实施例中,CPU 701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行过程200和600中的任一个。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (12)
1.一种构建版图图案集的方法,包括:
确定用于电路版图的多个初始图案,所述多个初始图案中的每个初始图案包括至少一个几何图形;
通过改变和组合所述多个初始图案,生成目标图案;以及
基于所述目标图案构建所述版图图案集;
其中基于所述目标图案构建所述版图图案集包括:
确定所述目标图案是否满足与所述电路版图中的几何图形的尺寸和位置相关的约束条件;以及
如果确定所述目标图案满足所述约束条件,将所述目标图案添加至所述版图图案集。
2.根据权利要求1所述的方法,其中生成所述目标图案包括:
改变所述多个初始图案中的至少一个几何图形,以确定经改变的初始图案;以及
将所述经改变的初始图案组合成所述目标图案。
3.根据权利要求2所述的方法,其中改变所述至少一个几何图形包括以下中的至少一项:
改变所述至少一个几何图形的形状,或
改变所述至少一个几何图形在所述初始图案中的位置。
4.根据权利要求2所述的方法,其中所述经改变的初始图案包括第一图案和第二图案,并且将所述经改变的初始图案组合成所述目标图案包括:
确定所述第一图案中的第一几何图形所占据的第一区域;
确定所述第二图案中与所述第一区域相对应的第二区域;以及
通过调整所述第二区域中的第二几何图形来确定所述目标图案。
5.根据权利要求4所述的方法,其中通过调整所述第二区域中的所述第二几何图形来确定所述目标图案包括:
通过从所述第二图案中移除所述第二几何图形,来确定所述目标图案。
6.根据权利要求4所述的方法,其中通过调整所述第二区域中的所述第二几何图形来确定所述目标图案包括:
通过叠加所述第一几何图形和所述第二几何图形,来确定所述目标图案。
7.根据权利要求2所述的方法,其中所述经改变的初始图案包括第三图案和第四图案,并且将所述经改变的初始图案组合成所述目标图案包括:
通过相对于所述第三图案放置所述第四图案来确定所述目标图案,使得在所述目标图案中所述第三图案与所述第四图案间隔开。
8.根据权利要求7所述的方法,还包括:
如果确定所述目标图案满足所述约束条件,将所述目标图案添加至构建中的电路版图,作为所述电路版图的一部分;
确定所述电路版图的构建是否完成;以及
如果确定所述电路版图的构建尚未完成,从所述电路版图集中确定多个另外的初始图案。
9.根据权利要求1所述的方法,其中生成所述目标图案包括:
将所述多个初始图案组合成中间图案,所述中间图案包括基于所述至少一个几何图形确定的中间几何图形;以及
通过改变所述中间图案中的所述中间几何图形,来确定所述目标图案。
10.根据权利要求1所述的方法,其中确定所述多个初始图案包括:
从所述版图图案集中确定所述多个初始图案。
11.一种电子设备,包括:
处理器;以及
与所述处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被处理器执行时使所述设备执行动作,所述动作包括:
确定用于电路版图的多个初始图案,所述多个初始图案中的每个初始图案包括至少一个几何图形;
通过改变和组合所述多个初始图案,生成目标图案;以及
基于所述目标图案构建所述版图图案集;
其中基于所述目标图案构建所述版图图案集包括:
确定所述目标图案是否满足与所述电路版图中的几何图形的尺寸和位置相关的约束条件;以及
如果确定所述目标图案满足所述约束条件,将所述目标图案添加至所述版图图案集。
12.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如权利要求1-10中任一项所述的构建版图图案集的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010414230.8A CN111597768B (zh) | 2020-05-15 | 2020-05-15 | 用于构建版图图案集的方法、设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010414230.8A CN111597768B (zh) | 2020-05-15 | 2020-05-15 | 用于构建版图图案集的方法、设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111597768A CN111597768A (zh) | 2020-08-28 |
CN111597768B true CN111597768B (zh) | 2024-01-19 |
Family
ID=72191272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010414230.8A Active CN111597768B (zh) | 2020-05-15 | 2020-05-15 | 用于构建版图图案集的方法、设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111597768B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559181B (zh) * | 2020-12-16 | 2024-05-03 | 全芯智造技术有限公司 | 用于电路版图的热点检测方法、设备和存储介质 |
CN112712576A (zh) * | 2021-01-19 | 2021-04-27 | 东华大学 | 智能化图案设计生成方法 |
CN114722766A (zh) * | 2022-04-15 | 2022-07-08 | 长鑫存储技术有限公司 | 集成电路的设计方法、设计设备及计算机可读存储介质 |
CN115510795A (zh) * | 2022-08-22 | 2022-12-23 | 华为技术有限公司 | 一种数据处理方法以及相关装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010015140A (ja) * | 2008-06-06 | 2010-01-21 | Toshiba Corp | マスクパターンデータ作成方法、マスクパターンデータ作成プログラム、マスク、半導体装置の製造方法 |
CN104007608A (zh) * | 2013-02-22 | 2014-08-27 | 佳能株式会社 | 用于确定掩模图案的方法、记录介质及信息处理装置 |
CN108446372A (zh) * | 2018-03-15 | 2018-08-24 | 珠海市睿晶聚源科技有限公司 | 集成电路版图数据的存储与查询方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011145564A (ja) * | 2010-01-15 | 2011-07-28 | Toshiba Corp | マスクパターン生成方法、半導体装置の製造方法およびマスクパターン生成プログラム |
CN104346273A (zh) * | 2013-07-29 | 2015-02-11 | 国际商业机器公司 | 用于调试的方法和系统 |
-
2020
- 2020-05-15 CN CN202010414230.8A patent/CN111597768B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010015140A (ja) * | 2008-06-06 | 2010-01-21 | Toshiba Corp | マスクパターンデータ作成方法、マスクパターンデータ作成プログラム、マスク、半導体装置の製造方法 |
CN104007608A (zh) * | 2013-02-22 | 2014-08-27 | 佳能株式会社 | 用于确定掩模图案的方法、记录介质及信息处理装置 |
CN108446372A (zh) * | 2018-03-15 | 2018-08-24 | 珠海市睿晶聚源科技有限公司 | 集成电路版图数据的存储与查询方法 |
Non-Patent Citations (1)
Title |
---|
李侠 ; 王浩 ; .基于加速度计产品的ASIC版图设计和验证.中国集成电路.2017,(第07期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111597768A (zh) | 2020-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111597768B (zh) | 用于构建版图图案集的方法、设备和计算机可读存储介质 | |
US20110145775A1 (en) | Cell library, layout method, and layout apparatus | |
US8103982B2 (en) | System and method for statistical design rule checking | |
JP2009526283A (ja) | 回路設計の回路素子をクラスタ化する方法、装置及びコンピュータ読み取り可能な記録媒体 | |
EP1305744A1 (en) | Method and system for hierarchical metal-end, enclosure and exposure checking | |
US9292650B2 (en) | Identifying layout pattern candidates | |
US8219959B2 (en) | Generating integrated circuit floorplan layouts | |
CN116151179B (zh) | 芯片设计的布局规划方法及相关设备 | |
US9032346B2 (en) | Method and apparatus for creating and managing waiver descriptions for design verification | |
EP3239865A1 (en) | Method for analyzing ir drop and electromigration of ic | |
CN111597769B (zh) | 用于生成电路版图图案的方法、设备和存储介质 | |
CN116911246B (zh) | 芯片设计的布线规划方法及相关设备 | |
CN112818632B (zh) | 芯片的图形密度的分析方法、装置及电子设备 | |
US7596773B2 (en) | Automating optimal placement of macro-blocks in the design of an integrated circuit | |
CN111611761B (zh) | 生成电路版图图案的方法、设备和计算机可读存储介质 | |
CN116306486A (zh) | 芯片设计的设计规则检查方法及相关设备 | |
JP2006155119A (ja) | Lsi物理設計方法、プログラム及び装置 | |
US11301614B1 (en) | Feasibility analysis of engineering change orders | |
US8132141B2 (en) | Method and apparatus for generating a centerline connectivity representation | |
JP5326471B2 (ja) | クロック信号供給回路の設計方法、情報処理装置およびプログラム | |
CN112580293A (zh) | 生成电路版图的方法、设备和计算机可读存储介质 | |
CN112114998A (zh) | 一种静态随机存储器中冗余信息修复方法、装置、存储介质及终端 | |
Pawanekar et al. | A nonlinear analytical optimization method for standard cell placement of vlsi circuits | |
US11144700B1 (en) | Grouping nets to facilitate repeater insertion | |
JP4995639B2 (ja) | 半導体集積回路の設計装置および設計方法 |
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 |