CN116484791A - 用于图形生成的方法、设备和介质 - Google Patents
用于图形生成的方法、设备和介质 Download PDFInfo
- Publication number
- CN116484791A CN116484791A CN202211721849.9A CN202211721849A CN116484791A CN 116484791 A CN116484791 A CN 116484791A CN 202211721849 A CN202211721849 A CN 202211721849A CN 116484791 A CN116484791 A CN 116484791A
- Authority
- CN
- China
- Prior art keywords
- layout
- constraint
- graphic
- range
- area
- 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 50
- 238000012545 processing Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004519 manufacturing process Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 13
- 238000013461 design Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000009826 distribution Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000002131 composite material Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000206 photolithography Methods 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 125000006850 spacer group Chemical group 0.000 description 1
- 239000000126 substance Substances 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
根据本公开的示例实施例提供了用于图形生成的方法、设备和介质。在该方法中,确定版图的待更新区域。待更新区域至少具有沿第一方向的第一边界。该方法还包括基于针对版图的至少一个约束条件,在待更新区域中添加靠近第一边界的第一图形。至少一个约束条件与版图中的图形布局相关联。以此方式,可以在版图中生成满足至少一个约束条件的图形。
Description
技术领域
本公开的实施例主要涉及集成电路领域,并且更具体地,涉及用于图形生成的方法、设备和介质。
背景技术
电路版图(又可以简称为版图)是从设计并模拟优化后的电路所转化成的一系列几何图形,其包含了集成电路尺寸、各层拓扑定义等器件相关的物理信息数据。集成电路制造商根据这些数据来制造掩模。掩模上的版图图案决定着芯片上器件或连接物理层的尺寸。
随着半导体芯片制造工艺的技术节点的减小,芯片上的晶体管密度和性能都有很大的提升。另一方面,随着工艺的提升,开发难度也不断加大,这对集成电路的生产和设计环节提出来更高的要求。为此,已经提出在版图上添加随机图形,从而提高版图图形的多样性,由此改善芯片的制造能力及版图的可制造性。
发明内容
在本公开的第一方面中,提供了一种用于图形生成的方法。在该方法中,确定版图的待更新区域。待更新区域至少具有沿第一方向的第一边界。该方法还包括基于针对版图的至少一个约束条件,在待更新区域中添加靠近第一边界的第一图形。至少一个约束条件与版图中的图形布局相关联。以此方式,可以在版图中生成满足至少一个约束条件的图形。
在本公开的第二方面中,提供了一种电子设备。该电子设备包括处理器、以及与处理器耦合的存储器。该存储器具有存储于其中的指令,指令在被处理器执行时使电子设备执行根据本公开的第一方面的用于图形生成的方法。
在本公开的第三方面中,提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序。计算机程序在被处理器执行时实现根据本公开的第一方面的用于图形生成的方法。
根据本公开的实施例,确定版图的待更新区域,待更新区域至少具有沿第一方面的第一边界。例如,版图的待更新区域与已更新区域中的已有图形之间通过第一边界而分隔开。进一步地,基于针对版图的与版图中的图形布局相关联的至少一个约束条件,在待更新区域中添加靠近第一边界的第一图形。以此方式,可以根据版图的图形布局的至少一个约束条件来生成版图中的图形。因此,本公开的实施例能够使得生成的版图中的图形满足至少一个约束条件,从而在晶圆上形成令人满意的图形。
应当理解,本发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其他特征将通过以下的描述而变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素,其中:
图1示出了本公开的各实施例能够在其中实现的示例环境的示意图;
图2示出了根据本公开的一些实施例的用于图形生成的方法的流程图;
图3A至图3C示出了根据本公开的一些实施例的根据至少一个约束条件生成图形的示意图;以及
图4示出了其中可以实施本公开的一个或多个实施例的电子设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如上文所述,随着半导体芯片制造工艺的技术节点的减小,对集成电路的生产和设计环节提出来更高的要求。目前已经提出在版图上添加随机图形的方案,从而提高版图图形的多样性,由此改善芯片的制造能力及版图的可制造性。然而,如何确定随机图形在版图中的布局是值得关注的问题。传统的随机图形生成方案无法满足某些设计规则需要。
为此,本公开的实施例提出了一种用于图形生成的方法。根据本公开的实施例,确定版图的待更新区域,待更新区域至少具有沿第一方面的第一边界。例如,版图的待更新区域与已更新区域中的已有图形之间具有第一边界。进一步地,基于针对版图的与版图中的图形布局相关联的至少一个约束条件,在待更新区域中添加靠近第一边界的第一图形。以此方式,可以根据版图的图形布局的至少一个约束条件来生成版图中的图形。因此,本公开的实施例能够使得生成的版图中的图形满足至少一个约束条件,从而在晶圆上形成满足设计规则的图形。
以下将参考附图来详细描述该方案的各种示例实现。
首先参见图1,其示出了本公开的各实施例能够在其中实现的示例环境100的示意图。示例环境100总体上可以包括电子设备110。在一些实施例中,电子设备110可以是诸如个人计算机、工作站、服务器等具有计算功能的设备。本公开的范围在此方面不受限制。
电子设备110获取待处理的版图120作为输入。在一些实施例中,待处理的版图120可以是空白的版图,其上不具有已有图形。附加地或备选地,在一些实施例中,待处理的版图120上也可以具有一个或多个已有图形(未示出)。在待处理的版图120上具有已有图形的实施例中,待处理的版图120上具有一个或多个空白区域。
电子设备110将待处理的版图120进行处理,以得到处理后的版图130。处理后的版图130包括一个或多个图形(也被称为随机图形),例如图形132、图形134和图形136。这些图形132、134和136在处理后的版图130中的位置和大小可以由电子设备110来确定。这将在下文中结合图2至图3C进一步详细描述。
应理解,图1中示出的各个版图、掩模、图形的形状和大小仅仅是示例性的,而不是限制性的。本公开的范围在此方面不受限制。
图2示出了根据本公开的一些实施例的用于图形生成的方法200的流程图。在一些实施例中,方法200可以由如图1所示的电子设备110执行。应当理解的是,方法200还可以包括未示出的附加框和/或可以省略所示出的某个(或者某些)框,本公开的范围在此方面不受限制。
在框210,电子设备110确定版图的待更新区域。待更新区域至少具有沿第一方向的第一边界。以图1中的待处理的版图120为例,电子设备110可以将待处理的版图120的待更新区域确定为待处理的版图120的整个区域。待更新区域的沿第一方向的第一边界可以是待处理的版图120的下侧的边,或者其他任意适当的边。
在一些实施例中,如果版图中已经具有一个或多个已有图形,电子设备110可以基于版图的已有图形,确定待更新区域。待更新区域与已有图形所占据的区域通过第一边界而分隔开。换句话说,待更新区域与已有图形所占据的区域之间具有沿第一方向的第一边界。具体地,电子设备110可以基于已有图形中的至少一个图形的边界,确定第一边界。电子设备110可以基于版图的边界,确定第二边界。电子设备110进而可以至少基于第一边界和第二边界,确定待更新区域。作为示例,第一边界可以由已有图形各自的顶部边界确定,第二边界可以是版图的顶部边界。可以由第一边界、第二边界以及版图的左侧边界和右侧边界来确定待更新区域。
在框220,电子设备110基于针对版图的至少一个约束条件,在待更新区域中添加靠近第一边界的第一图形。至少一个约束条件与版图中的图形布局相关联。本文中提及的约束条件与集成电路或芯片制造的工艺要求或限制有关。例如,以待处理的版图120为例,电子设备110可以基于与版图中的图形布局相关联的至少一个约束条件,在待处理的版图120中靠近第一边界(例如待处理的版图120下侧的边)的区域添加第一图形。
在一些实施例中,电子设备110可以确定待更新区域中靠近第一边界的第一子区域。该第一子区域距离第一边界的距离不超过边界距离阈值。边界距离阈值可以是预先设置的。电子设备110可以基于至少一个约束条件,在第一子区域中添加第一图形。
在一些实施例中,电子设备110可以至少基于至少一个约束条件中的第一约束条件,在待更新区域或者第一子区域中添加第一图形。第一约束条件与不同图形之间的角对角距离相关联。在本文中,第一约束条件也被称为角对角距离约束条件或者c2c约束条件。作为示例,两个图形之间的角对角距离指的是在水平方向和竖直方式的取值范围互相不重叠的两个图形的相对的两个角之间的距离。在一些实施例中,也可以根据需要对版图中水平方向和竖直方式的取值范围部分重叠的两个图形的相对的两个角之间的距离按照角对角距离约束进行约束。
第一约束条件可以指示不同图形之间的角对角距离的范围、或者满足条件的离散值。第一约束条件也可以指示第一图形与其他图形之间的角对角距离范围与第一图形的尺寸之间的关联关系。本文中提及的约束条件与集成电路或芯片制造的工艺要求或限制有关。设置角对角距离约束条件可以避免图形之间的角对角距离太接近,从而使得图形能够满足芯片制造的工艺要求。
在一些实施例中,如果版图中已经具有一个或多个已有图形,可以通过使得添加的第一图形的位置和大小满足与一个或多个已有图形之间的第一约束条件来确定第一图形的位置和大小。
在一些实施例中,电子设备110可以基于与版图上的图形沿第一方向的属性相关联的第二约束条件,确定待更新区域中沿第一方向的第一位置范围。第一方向的属性可以是图形沿第一方向的长度或者图形沿第一方向与其他图形或与版图边界之间的距离。在一些实施例中,可以比较图形沿第一方向与其他图形的距离,而不比较图形与版图边界之间的距离。设置第二约束条件是为了避免图形之间的沿第一方向的距离或者避免图形与版图边界之间沿第一方向的距离太接近,从而使得图形能够满足芯片制造的工艺要求。
第一位置范围可以是满足第二约束条件或附加的其他约束条件的随机值。在一些实施例中,如果电子设备110随机产生的第一位置范围的值不满足一个或多个约束条件,则电子设备110可以重新生成第一位置范围的随机值,直到满足一个或多个约束条件为止。
图3A示出了向版图中的待更新区域中添加第一图形的示例。在图3A中以图1中的待处理的版图120为例进行了描述。在此示例中,待更新区域包括待处理的版图120的整个区域。第一边界可以是待处理的版图120的下侧的边。第一方向指代水平方向或者x方向。
在图3A的版图310中示出了由电子设备110确定的待更新区域中沿第一方向的第一位置范围312。在本文中,第一位置范围也被称为沿第一方向的尺寸范围或者“size x(尺寸x)”。该第一位置范围312是至少基于第二约束条件确定的。
在一些实施例中,第二约束条件与图形沿第一方向的第一长度相关联。例如,第二约束条件可以指示第一长度的取值范围。第一位置范围312满足第二约束条件所指示的第一长度的取值范围。
附加地或备选地,在一些实施例中,第二约束条件与不同图形之间沿第一方向的第一距离或者图形与版图的边界之间的沿第一方向的第一距离相关联。例如,第二约束条件可以指示第一距离的取值范围。在一些实施例中,第一距离的取值范围与第一位置范围312的大小有关。例如,如果第一位置范围312的大小较大,第一距离的取值范围可以较大。反之,如果第一位置范围312的大小较小,第一距离的取值范围可以较小。如图3A所示,第一位置范围312与版图310的边界之间沿第一方向的间隔距离311(也被称为“space x(间隔x)”)满足第二约束条件指示的第一距离取值范围。
在一些实施例中,第一长度的取值范围和第一距离的取值范围可以是预先设置的。附加地或备选地,在一些实施例中,第一长度的取值范围和/或第一距离的取值范围可以根据版图中的已有图形的图形密度来动态设置。具体地,电子设备110可以确定版图的已有图形的图形密度是否超过密度阈值。密度阈值可以是预先设置的值。如果电子设备110确定图形密度超过密度阈值,则电子设备110可以将第一长度的取值范围设置为小于长度阈值。附加地或备选地,在一些实施例中,如果电子设备110确定图形密度超过密度阈值,则电子设备110可以将第一距离的取值范围设置为大于距离阈值。
反之,如果电子设备110确定图形密度未超过密度阈值,则电子设备110可以将第一长度的取值范围设置为大于或等于长度阈值。附加地或备选地,在一些实施例中,如果电子设备110确定图形密度未超过密度阈值,则电子设备110可以将第一距离的取值范围设置为小于或等于距离阈值。长度阈值和距离阈值可以是预先设置的任意适当的值。
通过根据版图上的图形密度来动态设置第一长度的取值范围和/或第一距离的取值范围,可以使版图中生成的图形满足图形密度约束。以此方式所生成的版图上的图形分布较为均匀。此外,以此方式,能够将对图形密度的约束条件转化为对图形的长度或图形间距离的约束条件,从而便于图形的长度或图形间距离的确定。
在一些实施例中,在确定第一位置范围312的过程中,电子设备110还基于第七约束条件。第七约束条件与版图上的图形沿第一方向的位置相关联。例如,第七约束条件可以指示符合该约束条件的一组位置。在本文中,第七约束条件也被称为图形位置约束条件。设置第七约束条件是为了得图形在版图上的位置能够满足芯片制造的工艺要求或制造限制。
电子设备110可以基于第七约束条件,确定沿第一方向的一组第一候选位置范围。电子设备110进而从一组第一候选位置范围中确定至少满足上述第二约束条件的第一位置范围312。换句话说,电子设备110可以根据图形位置约束,将第一位置范围的取值范围确定为一组离散的数值。电子设备110可以从该组离散数值中随机选择一个作为第一位置范围312。以此方式,能够将对图形位置的约束条件转化为对图形的长度的约束条件,从而便于图形的长度的确定。
备选地或附加地,电子设备可以基于第七约束条件,确定沿第一方向的一组候选间隔范围。电子设备110进而从一组第一候选间隔范围中确定至少满足上述第二约束条件的图形间的间隔范围。可以将两个间隔范围内的线段确定为第一位置范围。换句话说,电子设备110可以根据图形位置约束,将图形间的第一距离的取值范围确定为一组离散的数值。以此方式,能够将对图形位置的约束条件转化为对图形间距离的约束条件,从而便于图形间距离或图形长度的确定。
以上结合图3A描述了根据至少一个约束条件确定第一位置范围的若干示例。应当理解,以上所列举的约束条件的示例仅仅是示例性的,而不是限制性的。可以采用更少的或更多的约束条件来确定第一位置范围。其他约束条件的示例可以包括图形面积约束条件、其他设计规则约束条件,等等。本公开的范围在此方面不做限制。
在一些实施例中,电子设备110可以至少基于与版图上的图形沿第二方向的属性相关联的第三约束条件,确定待更新区域中沿第二方向的第二位置范围。第二方向垂直于第一方向。第二位置范围可以是满足第三约束条件或附加的其他约束条件的随机值。第二方向的属性可以是图形沿第二方向的长度或者图形沿第二方向与其他图形或与版图边界之间的距离。设置第三约束条件是为了避免图形之间的沿第二方向的距离或者避免图形与版图边界之间沿第二方向的距离太接近,从而使得图形能够满足芯片制造的工艺要求。
在图3A的版图320中示出了由电子设备110确定的待更新区域中沿第二方向的第二位置范围322。在本文中,第二位置范围也被称为沿第二方向的尺寸范围或者“size y”。该第二位置范围322是至少基于第三约束条件确定的。
在一些实施例中,第三约束条件与图形沿第二方向的第二长度相关联。例如,第三约束条件可以指示第二长度的取值范围。第二位置范围322满足第三约束条件所指示的第二长度的取值范围。
附加地或备选地,在一些实施例中,第三约束条件与不同图形之间沿第二方向的第二距离或者图形与版图的边界之间的沿第二方向的第二距离相关联。例如,第三约束条件可以指示第二距离的取值范围。在一些实施例中,第二距离的取值范围与第二位置范围322的大小有关。例如,如果第二位置范围322的大小较大,第二距离的取值范围可以较大。反之,如果第二位置范围322的大小较小,第二距离的取值范围可以较小。
如图3A所示,第二位置范围322与版图310的边界之间沿第二方向的间隔距离321(也被称为“space y”)满足第三约束条件指示的第二距离取值范围。
与确定第一位置范围312类似,一些实施例中,电子设备110基于第八约束条件,确定沿第二方向的一组第二候选位置范围。第八约束条件与版图上的图形沿第二方向的位置相关联。电子设备110进而可以从一组第二候选位置范围中确定至少满足第三约束条件的第二位置范围322。以此方式,能够将对图形位置的约束条件转化为对图形的长度或图形间距离的约束条件,从而便于图形的长度或图形间距离的确定。
在一些实施例中,与第一长度的取值范围和第一距离的取值范围类似,第二长度的取值范围和第二距离的取值范围也可以是预先设置的。附加地或备选地,在一些实施例中,第二长度的取值范围和/或第二距离的取值范围可以根据版图中的已有图形的图形密度来动态设置。
具体地,电子设备110可以确定版图的已有图形的图形密度是否超过密度阈值(也被称为图形密度约束条件)。设置图形密度约束条件是为了避免版图中的图形过于密集,从而使得版图中的图形能够满足芯片制造的工艺要求或限制。密度阈值可以是预先设置的值。如果电子设备110确定图形密度超过密度阈值,则电子设备110可以将第二长度的取值范围设置为小于长度阈值。附加地或备选地,在一些实施例中,如果电子设备110确定图形密度超过密度阈值,则电子设备110可以将第二距离的取值范围设置为大于距离阈值。
反之,如果电子设备110确定图形密度未超过密度阈值,则电子设备110可以将第二长度的取值范围设置为大于或等于长度阈值。附加地或备选地,在一些实施例中,如果电子设备110确定图形密度未超过密度阈值,则电子设备110可以将第二距离的取值范围设置为小于或等于距离阈值。长度阈值和距离阈值可以是预先设置的任意适当的值。
通过根据版图上的图形密度来动态设置第二长度的取值范围和/或第二距离的取值范围,可以使版图中生成的图形满足图形密度约束。
以此方式所生成的版图上的图形分布较为均匀。此外,以此方式,能够将对图形密度的约束条件转化为对图形的长度或图形间距离的约束条件,从而便于图形的长度或图形间距离的确定。
在一些实施例中,电子设备110还可以基于更多的约束条件来确定第一图形的第二位置范围322。例如,电子设备110还可以基于第四约束条件来确定第一图形的第二位置范围322。第四约束条件关联于不同图形间的平行长度(prl)与图形的大小之间的关联关系。换句话说,第四约束条件是图形之间平行长度与图形尺寸的复合约束条件。作为示例,在prl小于0的情况下,图形的宽度需要位于第一宽度范围内。在prl大于等于0并且小于10nm的情况下,图形的宽度需要位于第二宽度范围内。应理解,以上所列举的prl的数值以及宽度范围仅仅是示例性的,而不是限制性的。通过设置第四约束条件,能够使得版图上的图形满足实际工艺需要,诸如光刻工艺需要或者其他工艺需要。
附加地或备选地,电子设备110还可以基于第五约束条件来确定第一图形的第二位置范围322。第五约束条件与图形的面积相关联,也被称为面积约束条件。例如,第五约束条件可以指示图形面积的取值范围。设置第五约束条件是为了使得版图中的图形的面积满足芯片制造的工艺要求或限制。
在一些实施例中,电子设备110还可以基于第六约束条件来确定第一图形的第二位置范围322。第六约束条件与图形的周长面积比相关联,也称为周长面积比约束条件。例如,第六约束条件可以指示图形周长面积比的取值范围。设置第六约束条件是为了使得版图中的图形能够满足芯片制造的工艺要求或限制,例如使得版图中的图形满足化学机械抛光(CMP)规范。
应当理解,约束条件所指示的各个取值范围可以是连续的取值范围,也可以是离散的取值范围,本公开的范围在此方面不做限制。
应当理解,以上所描述的各个示例约束条件仅仅是示例性的,而不是限制性的。本公开可以采用更多的或更少的任意适当的约束条件,本公开的范围在此方面不做限制。
在一些实施例中,电子设备110在由第一位置范围312和第二位置范围322限定的区域中添加第一图形332,如图3A中的版图330所示。在一些实施例中,第一图形332是由第一位置范围312和第二位置范围322限定的矩形(也被称为一维随机图形)。应当理解,第一图形332也可以是由第一位置范围312和第二位置范围322限定的其他形状的图形。本公开的范围在此方面不做限制。通过这种方式,所生成的图形能够满足各种设计规则需要,从而提高版图的质量。在一些实施例中,电子设备110可以保存第一图形332的至少部分的位置信息,诸如第一图形332的顶部边的坐标信息(也称为顶部坐标信息),或者其他适当的位置信息。这些位置信息可以被用来确定版图中的待更新区域。
在一些实施例中,电子设备110至少基于至少一个约束条件,在待更新区域中添加第二图形。至少一个约束条件包括和第一图形332与第二图形之间的位置关系相关联的第九约束条件。例如,第九约束条件可以指示第一图形332与第二图形之间的沿不同方向的距离的取值范围。
图3B示出了向版图330的待更新区域添加第二图形的示例。如图3B中的版图340所示出的,版图340中添加了第二图形342。电子设备110基于至少一个约束条件来添加第二图形342。例如,第二图形342与第一图形332之间的角对角距离348需要满足角对角约束条件。又如,第二图形342与第一图形332之间沿第一方向的距离341需要满足图形之间沿第一方向的距离间隔约束或满足第一距离的取值范围。又如,第二图形342与第一图形332之间沿第二方向的距离346需要满足图形之间沿第二方向的距离间隔约束或满足第二距离的取值范围。如前文所述,第一距离的取值范围、第二距离的取值范围可以预先设置或者根据其他条件进行设置。
此外,在一些实施例中,第二图形342沿第一方向的位置范围343满足第一长度的取值范围。第二图形342沿第二方向的位置范围344满足第二长度的取值范围。如前文所述,第一长度的取值范围、第二长度的取值范围可以预先设置或者根据其他条件进行设置。
在一些实施例中,与第一图形332类似,在电子设备110确定第二图形342的过程中,电子设备110可以基于多个不同的约束条件,包括但不限于图形密度约束、面积约束、图形位置约束、周长面积比约束、平行长度与图形尺寸的复合约束,等等设计规则约束。本公开的范围在此方面不做限制。设置这些约束条件能够使得版图上的图形满足集成电路或芯片制造的工艺要求或限制。
在上文的实施例中,电子设备110在版图的待处理区域靠近下侧的边(即,第一边界)的子区域处生成第一图形332和第二图形342。在一些实施例中,电子设备110可以在待处理区域靠近下侧的边的子区域中生成一个或多个图形。在生成这些图形的过程中,电子设备110可以通过将第一边界划分为满足至少一个约束条件的由位置子线段和间隔子线段间隔组成的多个子线段。位置子线段可以用来作为生成的图形沿第一方向的位置范围。间隔子线段用于间隔不同图形沿第一方向的位置范围。这些子线段可以采用红包算法或者其他适当的随机算法来根据至少一个约束条件生成。这些子线段也可以由左至右或者由右至左依次根据至少一个约束条件来生成。
在一些实施例中,针对各个位置子线段,电子设备110可以基于上文描述的一个或多个约束条件或者文中未描述的一个或多个约束条件来确定与位置子线段相对应的沿第二方向的位置范围。基于位置子线段和沿第二方向的位置范围,可以确定出各个图形。以此方式,能够确定出符合多种约束条件的随机图形。
在一些实施例中,在生成一个或多个图形的情况下,电子设备110会将这些已生成的图形作为版图的已有图形。电子设备110可以基于版图的已有图形,确定待更新区域。例如,电子设备110可以通过将图3A中的第一图形作为已有图形,重新确定版图的待更新区域。待更新区域与已有图形所占据的区域之间具有沿第一方向的第一边界。
以图3C为例,版图340中的已有图形包括第一图形332和第二图形342。在第一边界为待更新区域的下方边界的示例中,电子设备110可以根据已有图形的至少部分的位置信息,例如,顶部坐标信息,来确定更新的第一边界。在图3C的示例中,更新的第一边界可以包括第一图形332上方的线段352和第二图形342上方的线段354。在这一示例中,重新确定的待更新区域是由版图340中位于线段352和线段342上方的区域组成的。
在一些实施例中,电子设备110基于至少一个约束条件,在重新确定的待更新区域中添加第三图形362,如版图360所示。至少一个约束条件可以包括上文中任意约束条件以及其他未描述的任意约束条件。作为示例,至少一个约束条件包括角对角距离约束。第三图形362与第二图形342的角对角距离364满足角对角约束所指示的角对角距离的取值范围。又如,至少一个约束条件还可以包括第三图形362与下方的第一图形332沿第二方向的距离,等等。
在一些实施例中,电子设备110还可以将重新确定的待更新区域划分为多个子区域。例如,电子设备110可以将由位置较低的线段352上方的区域划分为第一子区域,将由位置较高的线段354上方的区域划分为第二子区域。电子设备110可以先在第一子区域中生成第三图形362以及可选的更多的图形。电子设备110进而在第二子区域中生成满足至少一个约束条件的一个或多个图形。以此方式,能够将待更新区域划分为更多子区域分别处理。
在一些实施例中,电子设备110可以不断地更新第一边界,重新确定待更新区域,并且在重新确定的待更新区域或子区域中生成图形,直到版图中填充满随机图形,而无法再添加满足至少一个约束条件的图形。作为示例,电子设备110可以在添加了一个图形之后,根据该图形和之前所添加的各个图形的至少部分的位置信息(诸如顶部坐标信息)来重新确定待更新区域。电子设备110也可以在添加了多个图形之后,根据已添加的各个图形的至少部分的位置信息(诸如顶部坐标信息)来重新确定待更新区域。
在上文所描述的示例中,电子设备110可以按照由下至上、由左至右的方式逐层、逐区段的生成图形。这种选择例如版图的最低区域作为优先生成图形的区域,并且逐区域生成图形的方式能够确保版图的各个位置区域被随机图形填充。由此生成的各个图形的沿不同方向的长度及图形间的间隔都是随机的。图形之间不会互相牵制。各个图形以及图形的环境都具有很高的随机性和多样性。此外,生成的各个图形能够满足多种设计规则或约束条件,从而提高版图中随机图形的质量。
通过采用本方案来生成版图中的随机图形,一方面能够提高版图图形的多样性,由此探索和测试现有产线的制造能力。另一方面,还可以采用本公开的图形生成方法来填充版图中的空白区域,从而使得填充后的版图中图形分布更加均匀,从而提高版图的可制造性。
应当理解,虽然本文以由下至上、由左至右的顺序来生成版图中的图形,但在一些实施例中,还可以采用其他任意的顺序。例如,可以将第一边界确定为待更新区域的顶部边界,并且从上到下的生成各个图形。此外,还可以从左到右的生成各个图形,或者从右至左的生成各个图形。本公开的范围在此方面不做限制。
图4示出了其中可以实施本公开的一个或多个实施例的电子设备400的框图。该电子设备400例如可以用于实现如图1所示的电子设备110。应当理解,图4所示出的电子设备400仅仅是示例性的,而不应当构成对本文所描述的实施例的功能和范围的任何限制。
如图4所示,电子设备400是通用电子设备的形式。电子设备400的组件可以包括但不限于一个或多个处理器或处理单元410、存储器420、存储设备430、一个或多个通信单元440、一个或多个输入设备450以及一个或多个输出设备460。处理单元410可以是实际或虚拟处理器并且能够根据存储器420中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高电子设备400的并行处理能力。
电子设备400通常包括多个计算机存储介质。这样的介质可以是电子设备400可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器420可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或它们的某种组合。存储设备430可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在电子设备400内被访问。
电子设备400可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图4中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器420可以包括计算机程序产品425,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实施例的各种方法或动作。
通信单元440实现通过通信介质与其他电子设备进行通信。附加地,电子设备400的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,电子设备400可以使用与一个或多个其他服务器、网络个人计算机(PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
输入设备450可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备460可以是一个或多个输出设备,例如显示器、扬声器、打印机等。电子设备400还可以根据需要通过通信单元440与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与电子设备400交互的设备进行通信,或者与使得电子设备400与一个或多个其他电子设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中一条或多条计算机指令被处理器执行以实现上文描述的方法。
这里参照根据本公开实现的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实现。
Claims (16)
1.一种图形生成方法,其特征在于,包括:
确定版图的待更新区域,所述待更新区域至少具有沿第一方向的第一边界;以及
基于针对所述版图的至少一个约束条件,在所述待更新区域中添加靠近所述第一边界的第一图形,所述至少一个约束条件与所述版图中的图形布局相关联。
2.根据权利要求1所述的图形生成方法,其特征在于,在所述待更新区域中添加靠近所述第一边界的第一图形包括:
至少基于第一约束条件,在所述待更新区域中添加所述第一图形,所述第一约束条件与不同图形之间的角对角距离相关联。
3.根据权利要求1所述的图形生成方法,其特征在于,在所述待更新区域中添加靠近所述第一边界的第一图形包括:
基于与所述版图上的图形沿所述第一方向的属性相关联的第二约束条件,确定所述待更新区域中沿所述第一方向的第一位置范围;
至少基于与所述版图上的图形沿第二方向的属性相关联的第三约束条件,确定所述待更新区域中沿所述第二方向的第二位置范围,所述第二方向垂直于所述第一方向;以及
在由所述第一位置范围和所述第二位置范围限定的区域中添加所述第一图形。
4.根据权利要求3所述的图形生成方法,其特征在于,所述第二约束条件与以下至少一项相关联:
图形沿所述第一方向的第一长度,
不同图形之间沿所述第一方向的第一距离。
5.根据权利要求4所述的图形生成方法,其特征在于,所述第三约束条件与以下至少一项相关联:
图形沿所述第二方向的第二长度,
不同图形之间沿所述第二方向的第二距离。
6.根据权利要求5所述的图形生成方法,其特征在于,所述第一距离的取值范围与所述第一位置范围的大小有关,并且所述第二距离的取值范围与所述第二位置范围的大小有关。
7.根据权利要求4所述的图形生成方法,其特征在于,确定所述第一图形的所述第一位置范围包括:
确定所述版图的已有图形的图形密度是否超过密度阈值;
如果确定所述图形密度超过所述密度阈值,执行以下至少一项:
将所述第一长度的取值范围设置为小于长度阈值,
将所述第一距离的取值范围设置为大于距离阈值;以及
如果确定所述图形密度未超过所述密度阈值,执行以下至少一项:
将所述第一长度的取值范围设置为大于或等于所述长度阈值,
将所述第一距离的取值范围设置为小于或等于所述距离阈值。
8.根据权利要求3所述的图形生成方法,其特征在于,确定所述第一图形的所述第二位置范围进一步基于以下至少一项:
第四约束条件,所述第四约束条件关联于不同图形间的平行长度与图形的大小之间的关联关系,
第五约束条件,所述第五约束条件与图形的面积相关联,
第六约束条件,所述第六约束条件与图形的周长面积比相关联。
9.根据权利要求3所述的图形生成方法,其特征在于,确定所述第一图形的所述第一位置范围包括:
基于第七约束条件,确定沿所述第一方向的一组第一候选位置范围,所述第七约束条件与所述版图上的图形沿所述第一方向的位置相关联;以及
从所述一组第一候选位置范围中确定至少满足所述第二约束条件的所述第一位置范围。
10.根据权利要求3所述的图形生成方法,其特征在于,确定所述第一图形的所述第二位置范围包括:
基于第八约束条件,确定沿所述第二方向的一组第二候选位置范围,所述第八约束条件与所述版图上的图形沿所述第二方向的位置相关联;以及
从所述一组第二候选位置范围中确定至少满足所述第一约束条件和所述第三约束条件的所述第二位置范围。
11.根据权利要求1所述的图形生成方法,其特征在于,还包括:
至少基于所述至少一个约束条件,在所述待更新区域中添加第二图形,所述至少一个约束条件包括与所述第一图形与所述第二图形之间的位置关系相关联的第九约束条件。
12.根据权利要求1所述的图形生成方法,其特征在于,确定所述版图的待更新区域包括:
基于所述版图的已有图形,确定所述待更新区域,所述待更新区域与所述已有图形所占据的区域通过所述第一边界而分隔开。
13.根据权利要求12所述的图形生成方法,其特征在于,基于所述版图的已有图形确定所述版图的待更新区域包括:
基于所述已有图形中的至少一个图形的边界,确定所述第一边界;
基于所述版图的边界,确定第二边界;以及
至少基于所述第一边界和所述第二边界,确定所述待更新区域。
14.根据权利要求1所述的图形生成方法,其特征在于,还包括:
通过将所述第一图形作为所述已有图形,重新确定所述版图的待更新区域;以及
基于所述至少一个约束条件,在重新确定的待更新区域中添加第三图形。
15.一种电子设备,其特征在于,包括:
至少一个处理单元;以及
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理单元并且存储用于由所述至少一个处理单元执行的指令,所述指令在由所述至少一个处理单元执行时使所述电子设备执行根据权利要求1至14中任一项所述的方法。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序可由处理器执行以实现根据权利要求1至14中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211721849.9A CN116484791A (zh) | 2022-12-30 | 2022-12-30 | 用于图形生成的方法、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211721849.9A CN116484791A (zh) | 2022-12-30 | 2022-12-30 | 用于图形生成的方法、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116484791A true CN116484791A (zh) | 2023-07-25 |
Family
ID=87223856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211721849.9A Pending CN116484791A (zh) | 2022-12-30 | 2022-12-30 | 用于图形生成的方法、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116484791A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117057303A (zh) * | 2023-10-07 | 2023-11-14 | 全芯智造技术有限公司 | 版图图形生成方法、设备和介质 |
-
2022
- 2022-12-30 CN CN202211721849.9A patent/CN116484791A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117057303A (zh) * | 2023-10-07 | 2023-11-14 | 全芯智造技术有限公司 | 版图图形生成方法、设备和介质 |
CN117057303B (zh) * | 2023-10-07 | 2024-01-26 | 全芯智造技术有限公司 | 版图图形生成方法、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5416722A (en) | System and method for compacting integrated circuit layouts | |
Ding et al. | Pin accessibility-driven detailed placement refinement | |
US7721243B2 (en) | Method and apparatus for routing | |
US8473885B2 (en) | Physical design system and method | |
US20100185994A1 (en) | Topological Pattern Matching | |
US8234599B2 (en) | Use of graphs to decompose layout design data | |
JP2010097468A (ja) | 配線方法、自動配線装置、及びプログラム | |
CN116484791A (zh) | 用于图形生成的方法、设备和介质 | |
CN110648038A (zh) | 用于清洁装置的任务区域分配方法和系统以及清洁装置 | |
CN116663483A (zh) | 用于芯片排版的方法、设备和介质 | |
CN116205194A (zh) | 用于图形生成的方法、设备和介质 | |
Hsu et al. | Multilayer global routing with via and wire capacity considerations | |
US8510685B1 (en) | Methods, systems, and articles of manufacture for creating a hierarchical output for an operation in an electronic design | |
CN115630600B (zh) | 用于版图处理的方法、设备和介质 | |
US10558781B2 (en) | Support apparatus, design support method, and design support program | |
Yan et al. | Optimal slack-driven block shaping algorithm in fixed-outline floorplanning | |
JP6374777B2 (ja) | データ処理方法、プログラム及びデータ処理装置 | |
CN115630599B (zh) | 用于版图处理的方法、设备和介质 | |
CN116050340B (zh) | 版图设计中引脚的自动布局方法、装置及相关产品 | |
US10895864B2 (en) | Fabric-independent multi-patterning | |
US10643020B1 (en) | System and method to estimate a number of layers needed for routing a multi-die package | |
CN117057296A (zh) | 一种自动生成金属层特征线宽的方法 | |
US8448096B1 (en) | Method and system for parallel processing of IC design layouts | |
US8549457B1 (en) | Method and system for implementing core placement | |
JP5609302B2 (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 |