CN112579286B - 用于光源掩模优化的方法、设备和存储介质 - Google Patents
用于光源掩模优化的方法、设备和存储介质 Download PDFInfo
- Publication number
- CN112579286B CN112579286B CN202011491033.2A CN202011491033A CN112579286B CN 112579286 B CN112579286 B CN 112579286B CN 202011491033 A CN202011491033 A CN 202011491033A CN 112579286 B CN112579286 B CN 112579286B
- Authority
- CN
- China
- Prior art keywords
- sub
- jobs
- light source
- processing devices
- map
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Image Processing (AREA)
Abstract
根据本公开的示例实施例,提供了用于光源掩模优化的方法、设备和计算机可读存储介质。用于光源掩模优化的方法包括生成用于优化光源和掩模版图的多个子作业。每个子作业指定对至少一个光源地图和掩模版图执行的一个或多个操作,并且至少一个光源地图与所述光源相关联。该方法还包括基于多个处理设备的配置信息和一个或多个操作的类型,将多个子作业分配给多个处理设备。多个处理设备中的至少一个处理设备被配置有加速处理资源。该方法进一步包括基于多个处理设备对多个子作业处理的结果,至少确定光源的优化的光源地图。以此方式,能够有利地实现快速且高效的光源掩模优化方案。
Description
技术领域
本公开的实施例主要涉及集成电路,并且更具体地,涉及用于光源掩模优化的方法、设备和计算机可读存储介质。
背景技术
电路版图(又可以简称为版图)是从设计并模拟优化后的电路所转化成的一系列几何图形,其包含了集成电路尺寸、各层拓扑定义等器件相关的物理信息数据。集成电路制造商根据这些数据来制造掩模。掩模上的版图图案决定着芯片上器件或连接物理层的特征尺寸。同时,光刻分辨率也决定着芯片上的这些特征尺寸。
光源掩模优化(SMO)是一种针对超小尺寸图形光刻的分辨率增强技术。在SMO过程中,通过对光刻工艺中的光源和掩模进行协同优化,来改善在超小尺寸节点中的光刻工艺窗口,从而增强光学表现。然而,当前的SMO过程消耗大量的计算资源和时间。
发明内容
根据本公开的示例实施例,提供了一种用于光源掩模优化的方案。
在本公开的第一方面中,提供了一种用于光源掩模优化的方法。该方法包括生成用于优化光源和掩模版图的多个子作业。每个子作业指定对至少一个光源地图和掩模版图执行的一个或多个操作,并且光源具有至少一个光源地图。该方法还包括基于多个处理设备的配置信息和一个或多个操作的类型,将多个子作业分配给多个处理设备。多个处理设备中的至少一个处理设备被配置有加速处理资源。该方法进一步包括基于多个处理设备对多个子作业处理的结果,确定光源的优化的光源地图。
在本公开的第二方面中,提供了一种电子设备,包括一个或多个处理器;以及存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器执行动作。动作包括生成用于优化光源和掩模版图的多个子作业。每个子作业指定对至少一个光源地图和掩模版图执行的一个或多个操作,并且光源具有至少一个光源地图。动作还包括基于多个处理设备的配置信息和一个或多个操作的类型,将多个子作业分配给多个处理设备。多个处理设备中的至少一个处理设备被配置有加速处理资源。动作进一步包括基于多个处理设备对多个子作业处理的结果,确定光源的优化的光源地图。
在一些实施例中,生成多个子作业包括:确定至少一个光源地图中的目标光源地图所包括的多个地图单元;将第一组子作业中的每个子作业设置为对掩模版图和给定地图单元执行卷积操作,其中卷积操作的结果用于生成与目标光源地图相对应的掩模图像;以及将第二组子作业中的每个子作业设置为对掩模图像的至少一部分执行测量操作,以确定工艺窗口,其中第一组子作业为多个子作业中的子作业,第二组子作业为所述多个子作业中的另外的子作业,并且给定地图单元为多个地图单元之一。
在一些实施例中,基于多个处理设备的配置信息和一个或多个操作的类型,将多个子作业分配给多个处理设备包括:基于多个处理设备的配置信息,从多个处理设备中确定第一组处理设备和第二组处理设备,第一组处理设备为被配置有加速处理资源的一组处理设备,第二组处理设备为未被配置有加速处理资源的一组处理设备;响应于确定第一组子作业包括卷积操作,将第一组子作业分配给第一组处理设备;以及响应于确定第二组子作业包括测量操作,将第二组子作业分配给第二组处理设备。
在一些实施例中,第一组子作业的数目不同于第二组子作业的数目。
在一些实施例中,生成多个子作业包括:将多个子作业中的每个子作业设置为:对掩模版图和给定光源地图执行卷积操作,以获得与给定光源地图相对应的掩模图像;以及对掩模图像执行测量操作,以确定工艺窗口,其中给定光源地图为至少一个光源地图之一。
在一些实施例中,基于多个处理设备的配置信息和一个或多个操作的类型,将多个子作业分配给多个处理设备包括:基于多个处理设备的配置信息,从多个处理设备中确定多对处理设备,每对处理设备包括被配置有加速处理资源的第一处理设备和未被配置有加速处理资源的第二处理设备;以及响应于确定多个子作业中的每个子作业包括卷积操作和测量操作,将每个子作业分配给多对处理设备中的相应的一对处理设备,使得卷积操作由第一处理设备执行,并且测量操作由第二处理设备执行。
在一些实施例中,基于多个处理设备对多个子作业处理的结果,至少确定光源的优化的光源地图包括:基于分别由多个子作业确定的工艺窗口,从多个光源地图中选择优化的光源地图。
在一些实施例中,加速处理资源被可移除地配置给至少一个处理设备。
在本公开的第三方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现根据本公开的第一方面的方法。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素,其中:
图1示出了执行光源掩模优化的示意图;
图2示出了本公开的多个实施例能够在其中实现的示例架构的示意图;
图3示出了根据本公开的一些实施例的图2中的示例架构的一部分的示意图;
图4示出了根据本公开的一些实施例的示例版图单元;
图5示出了根据本公开的一些实施例的针对图4的示例版图单元的索引结构;
图6示出了根据本公开的一些实施例的生成和分配子作业的过程的框图;
图7示出了根据本公开的一些实施例的生成和分配子作业的过程的框图;
图8示出了根据本公开的一些实施例的用于光源掩模优化的示例方法的流程图;以及
图9示出了能够实施本公开的多个实施例的计算设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如本文中所使用的,术语“加速处理资源”或类似术语是指相对于中央处理单元(CPU)、图形处理单元(GPU)、现场可编程门阵列(FPGA)等常规处理资源而言,能够进行快速处理的硬件或软件。加速处理资源(APR)可以包括但不限于加速处理器(APU)、人工智能(AI)芯片。AI芯片可以包括例如张量处理单元(TPU)、神经网络处理单元(NPU)、以及其他现有的或将来开发的AI芯片。可以理解的是,这样的加速处理资源主要用于提高AI相关应用的计算速度。
如前文所简要提及的,为了增强光刻分辨率,需要对光源和掩模进行协同优化,以确定优化的光源和/或掩模。在现有的执行SMO的计算环境中,用于SMO的计算单元通常利用或基于常规处理资源,例如CPU、GPU、FPGA、CELL带宽引擎架构(CELL BE)处理器。在分布式处理架构中,这些计算单元通常被实现为分布式的多个客户端。这些客户端通常具有相同的配置,并且被配置有CPU、GPU、FPGA等常规处理资源中的一种或多种。
然而,在现有技术方案中,进行光源和掩模协同优化所耗费的运行时间仍然较长,这不利于快速获得大量结果。因此,期望一种更快速和高效的方案来执行SMO作业。
根据本公开的实施例,提出了一种用于光源掩模优化的方案。在该方案中,管理设备生成用于优化光源和掩模版图的多个子作业。每个子作业指定对至少一个光源地图和掩模版图执行的一个或多个操作。然后,管理设备基于多个处理设备的配置信息和一个或多个操作的类型,将多个子作业分配给多个处理设备。多个处理设备中的至少一个处理设备被配置有加速处理资源。接下来,管理设备基于多个处理设备对多个子作业处理的结果,确定光源的优化的光源地图。
根据在此提出的用于光源掩模优化的方案,可以根据处理设备的配置和多个子作业的特点来将子作业分配给合适的处理设备。以此方式,处理设备的处理资源能够得到更好的利用,并且子作业的处理得以加速。因此,本公开的方案能够有利地实现快速且高效的光源掩模优化的方案。
为了更好地理解在此提出的用于光源掩模优化的方案,参考图1介绍SMO的原理。图1示出了执行SMO的示意图100。应当理解,图1所示的几何图形的形状和数目仅是示意性的。
图1示出了光源地图110、掩模版图120和掩模图像130。光源地图110表示待优化的光源的照明模式,而掩模版图120表示待优化的掩模的电路版图。光源地图110可以是待优化的初始光源地图,也可以是SMO作业中的中间光源地图。类似地,掩模版图120可以是待优化的初始掩模版图,也可以是SMO作业的中间掩模版图。掩模图像130表示按光源地图110和掩模版图120进行光刻而将在晶圆上形成的图像。
图1还示出了光源地图140、掩模版图150和掩模图像160。光源地图140表示优化的光源的照明模式,而掩模版图150表示优化的掩模的电路版图。掩模图像160表示按光源地图140和掩模版图150进行光刻而将在晶圆上形成的最终图像。
SMO作业可以被视为经过多次迭代来至少确定优化的光源地图140的过程。这样的过程可以被表示为:
其中,m(x,y)是当前迭代中的掩模版图,例如图1所示的掩模版图120;(x,y)表示掩模版图中的坐标;S(σx,σy)是当前迭代中的光源地图,例如图1中所示的光源地图110;(σx,σy)表示光源地图中的坐标;PWi(S(σx,σy),m(x,y))是如下的函数,该函数用于描述在与光源地图S(σx,σy)和掩模版图m(x,y)相对应的掩模图像中的第i个测量位置的工艺窗口(PW)。仅作为示例,第i个测量位置可以是图1中所示的掩模图像130中的测量位置131、132。WTi是第i个测量位置的权重。||…||L是指数学上的L范数。
工艺窗口PW可以由掩模图案中的一个或多个参数来定义。PW可以由焦深(DOF)。备选地或附加地,PW可以由图像对数斜率(ILS)或归一化的图像对数斜率(NILS)来定义。备选地或附加地,PW可以由工艺变化带宽(PV band)来定义。备选地或附加地,PW可以由掩模误差增强因子(MEEF)来定义。PW还可以由任何其他工艺相关的参数来定义。本公开的范围在此方面不受限制。
作为示例,如果使用PV带宽来定义工艺窗口PW,那么第i个测量位置的工艺窗口PWi可以表示为:
PWi=max(PVi-speci,0) (2)
其中,PVi表示第i个测量位置处所确定的PV带宽,并且speci表示第i个测量位置的PV带宽的规范值。
以上介绍了SMO的基本原理。下面以图1为例说明在SMO作业的一次迭代中所涉及的操作。
如图1所示,在一次迭代中,对光源地图110和掩模版图120执行卷积操作,以获得相对应的掩模图像130。为此,可以将光源地图110划分成如图中的虚线框所示的多个地图单元,例如地图单元111、112。类似地,也可以将掩模版图120划分成多个版图单元。版图单元的尺寸可以不同于地图单元的尺寸。
在获得掩模图像130后,对掩模图像130执行测量操作,以确定工艺窗口。具体地,在掩模图像130中的多个测量位置131、132处执行测量操作,以确定相应的工艺窗口PW。作为示例,如果使用PV带宽来定义工艺窗口PW,那么可以分别在测量位置131、132处执行测量操作,以确定测量位置131处的PV值和测量位置132处的PV值。然后,根据式(2)来计算测量位置131的工艺窗口PW和测量位置132的工艺窗口PW。
以上述方式,可以确定掩模图像130中的所有测量位置的工艺窗口PW。接下来,根据式(1)计算当前的光源地图和掩模版图下的总工艺窗口PW。如果总工艺窗口PW满足预定条件,可以认为光源的照明模式已得到优化。由此,当前迭代的光源地图110可以被确定为优化的光源地图。如果总工艺窗口PW不满足预定条件,则可以调整光源的照明模式,以获得与调整后的照明模式相对应的另一光源地图。然后,对该光源地图执行上述卷积操作和测量操作。由此,迭代继续,直到预定条件被满足。
从以上描述中可以看出,SMO作业的一次迭代中至少涉及卷积操作和测量操作。卷积操作可以包括如上文所提及的用于从光源地图和掩模版图来确定掩模图像的运算。测量操作可以包括如上文所提及的用于在掩模图像中确定测量位置的工艺窗口PW的运算。如本文所使用的,术语“测量操作”可以指代对掩模图像中的图案的直接测量,例如在掩模图像中测量边缘放置误差EPE,也可以指代基于对图案的测量而确定对应的指标,例如上文所提及的确定MEEF、DOF、ILS、PV带宽等。
本申请的发明人意识到,SMO作业中所涉及的上述操作均是需要消耗较多计算资源的复杂操作。这些操作特别适合于利用加速处理资源来处理。因此,利用加速处理资源来执行这些操作,可以提高SMO作业的效率。
此外,本申请人的发明人还意识到,尽管卷积操作、测量操作等是消耗较多计算资源的操作,但相比之下,卷积操作是更需要“智能”计算资源的操作。因此,在采用混合式构架的一些实施例中,可以利用加速处理资源来执行卷积操作,同时利用常规处理资源来执行测量操作。以此方式,可以实现效率和成本的平衡。
示例架构
图2示出了本公开的多个实施例能够在其中实现的示例架构200的示意图。如图2所示,架构200总体上包括管理设备210和多个处理设备220-1至220-6。例如,管理设备210可以是服务器,多个处理设备220-1至220-6可以是多个客户端。
架构200中的管理设备210可以是任何具有计算能力的设备。作为非限制性示例,管理设备210可以是任意类型的固定计算设备、移动计算设备或便携式计算设备,包括但不限于台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、多媒体计算机、移动电话等。在一些实施例中,管理设备210的全部组件或一部分组件可以分布在云端。
多个处理设备220-1至220-6在下文中也可以统称为多个处理设备220,或单独地称为处理设备220。处理设备220和管理设备210可以彼此通信,并传输数据。管理设备210与处理设备220之间的数据传输可以基于任何合适形式的通信连接,包括但不限于广域网(例如,互联网)、局域网、专用网络、公共网络、分组网络、有线网络或无线网络,例如,通过蓝牙、近场通信(NFC)、无线保真(Wi-Fi)、全球微波接入互操作性(WiMAX)、红外、2G/3G/4G/5G、以及其他将来开发的技术而建立的连接等。
多个处理设备220中的至少一个处理设备可以被配置有加速处理资源。作为示例,图2中示出的处理设备220-1、220-2和220-3被配置有加速处理资源。被配置有加速处理资源的处理设备也称为“加速处理设备”。除了加速处理资源,诸如处理设备220-1、220-2和220-3之类的加速处理设备还可以被配置有常规处理资源。因此,加速处理设备可以包括但不限于:APR,CPU和APR的组合,CPU、APR和GPU的组合,CPU、APR和FPGA的组合,CPU、APR、GPU和FPGA的组合等。
在一些实施例中,可以用持久方式或不可移除方式将加速处理资源配置给处理设备。以这种方式配置的加速处理资源可以被称为不可移除的加速处理资源。例如,处理设备220-1、220-2和220-3中的一个或多个可以在出厂时即被配置有加速处理资源,例如内置有TPU、NPU或APU。
在一些实施例中,可以用可弹性增加或移除的方式将加速处理资源配置给处理设备。以这种方式配置的加速处理资源可以被称为可移除的加速处理资源。例如,可以将加速处理资源以外置插件的形式配置给处理设备。以此方式,可以在需要时使原本仅具有常规处理资源的处理设备具备加速处理能力。在这种实施例中,架构100可以具有更高的灵活性,根据SMO作业的处理量来配置处理设备220。
图2中所示的示例架构200是一种混合式架构。除了被配置有加速处理资源的处理设备220-1、220-2和220-3之外,这种混合式架构还可以包括未被配置有加速处理资源的处理设备220-4、220-5和220-6。未被配置有加速处理资源的处理设备也称为“常规处理设备”。常规处理设备可以被配置有任何合适的常规处理资源。因此,常规处理设备可以包括但不限于,CPU和GPU的组合,CPU和FPGA的组合,CPU、GPU和FPGA等。可以理解的是,在一些实施例中,常规处理设备可以通过可移除方式而被配置有加速处理资源,从而成为加速处理设备。
在这种混合式架构中,可以将加速处理设备和常规处理设备分别用于执行SMO作业中的不同类型的操作。以此方式,可以实现效率和成本的平衡。下文将参考图6和图7描述这种实施例。
在图2中所示出的示例架构200中,管理设备和处理设备的数目仅是示例性而无意限制本公开的范围。例如,在根据本公开的实施例中,可以存在更多或更少的处理设备。此外,被配置有加速处理资源和未被配置有加速处理资源的处理设备的数目仅是示例性的。例如,在一些实施例中,多个处理设备220可以均被配置有加速处理资源。在一些实施例中,多个处理设备220中的一些处理设备可以被配置有可移除的加速处理资源,而另一些处理设备可以被配置有不可移除的加速处理资源。
以上描述了根据本公开的实施例能够在其中实现的示例架构200。图3示出了根据本公开的一些实施例的图2中的示例架构200的一部分300的示意图。图3以处理设备220-1为例示出了管理设备210与处理设备之间的数据传输。
管理设备210被配置为控制SMO的作业分配和执行。如图3所示,管理设备210可以包括执行单元311(诸如,CPU)、即时编译器312和存储装置313。管理设备210可以接收或在本地存储光源相关数据和版图相关数据。光源相关数据可以包括指示光照模式的各种参数、光刻胶模型、薄膜参数等。掩模相关数据可以包括掩模的电路版图。
管理设备210可以基于光源相关数据和版图相关数据生成用于优化光源和掩模版图的多个子作业。每个子作业指定对至少一个光源地图和掩模版图执行的一个或多个操作。例如,如图2所示,可以在管理设备210处实现即时编译器312,即时编译器312可以生成供处理设备220执行相应子作业的执行代码。
子作业所指定的一个或多个操作可以包括但不限于,用于从光源地图和掩模版图来确定掩模图像的卷积操作(以下简称为“卷积操作”)、如上文所提及的用于在掩模图像中确定测量位置的工艺窗口PW的测量操作(以下简称为“测量操作”)。
为了将多个子作业分配给多个处理设备220,管理设备210可以确定多个处理设备220中的每个处理设备的配置,以确定相应处理设备是否被配置有加速处理资源。例如,管理设备210可以向多个处理设备220分别询问其配置。又如,处理设备220可以在其配置改变时向管理设备210发送消息以通知配置改变。例如,处理设备220可以在被配置了可移除的加速处理资源时,通知管理设备210。
接下来,管理设备210可以基于多个处理设备220的配置和操作的类型,将多个子作业分配给多个处理设备220。下文将参考图6和图7描述生成和分配子作业的示例实施例。
如图3所示,如果确定将某个子作业分配给处理设备220-1,管理设备210可以将与该子作业有关的数据发送给处理设备220-1。与子作业有关的数据可以包括:该子作业所要处理的光源地图或光源地图的一部分的数据,该子作业所要处理的掩模版图的数据,所要使用的内核、函数及其参数等。
处理设备220-1的存储器322可以将与子作业有关的数据发送给执行单元321。如图2所示,处理设备220-1被配置有加速处理资源,因此执行单元321可以利用向量模式331、矩阵模式332、张量模式333中的一种或多种模式来处理数据。
以卷积操作为例,可以使用托普利兹矩阵将卷积操作转换为向量矩阵乘法。可以将针对同一版图单元的多个卷积操作转换为矩阵-矩阵乘法。与诸如GPU或FPGA的常规处理资源相比,诸如AI芯片的加速处理资源在采用托普利兹矩阵方面具有优势。AI芯片可以使用矩阵多单元(Multiple Units)来加速矩阵运算。例如,TPU具有矩阵多单元,每个周期可以执行64K乘积累加运算(MAC)(256x256x8b),需要说明的是,乘积累加运算(MultiplyAccumulate,简称MAC)是在数字信号处理器或一些微处理器中的特殊运算,做此运算操作的硬件电路单元被称为乘数累加器。
处理设备220-1在处理子作业之后,将对子作业的处理结果发送给管理设备210。取决于子作业所涉及的具体操作,处理结果可以一种或多种类型的数据。例如,处理结果可以包括经卷积操作而获得的掩模图像的至少一部分。备选地或附加地,处理结果包括测量位置处的工艺窗口PW的值。尽管只示出了处理设备220-1,但应当理解的是,多个子作业可以在多个处理设备220处并行被处理。
管理设备210从多个处理设备220分别接收对多个子作业的处理结果。管理设备210基于这些处理结果来至少确定优化的光源地图。应当理解,在此描述的“优化的光源地图”可以是指在给定掩模版图情况下优化的光源地图,也可以是指与掩模优化协同而获得的最终优化的光源地图。在涉及与掩模优化协同的情况下,管理设备210还可以输出经优化的掩模版图。
图案分析的示例
掩模版图通常包括各种几何图形。在一些实施例中,为了生成或排布子作业,管理设备210可能需要对掩模版图或版图单元进行图案分析。例如,可以在管理设备210处实现图案分析器。
在图案分析中,可能需要获得版图单元的几何图形信息。这种几何图形信息可以指示版图单元所包括的各个几何图形对几何图形组合的从属关系。一种获得几何图形信息的快速且高效方式是对版图单元中的各个几何图形进行索引。以此方式,可以快速地进行图案分析。
作为示例,可以使用R树或二进制树来构建版图单元(也可以是整个掩模版图)的索引结构来作为几何图形信息。R树或二进制树可以形成单个树或者可以形成森林,同时保持版图的层级。在此描述的R树是指为电路版图建立的树形数据结构,用来索引版图中的几何图形。R树可以包括根节点、中间节点和叶节点,根节点与多个中间节点之间建立索引,每个中间节点与多个叶节点之间建立索引。
图4示出了根据本公开的一些实施例的示例版图单元400。图4所示的示例版图单元400可以被视为掩模版图中的版图单元的一个示例。图4中示出了索引为R8-R19的几何图形、以及索引为R1-R7的包括多个几何图形的图案,其可以视为几何图形组合。应当理解,图4中所示的几何图形的数目和相对位置仅是示例性而无意限制本公开的范围。图5示出了根据本公开的一些实施例的针对图4的示例版图单元的索引结构500。
几何图形R8-R19对应于单个几何图形,并且可以构成索引结构500中的叶节点。通过分析作为叶节点的几何图形R8-R19,可以确定包括多个几何图形的图案,即,形成索引结构500中的其他节点。作为示例,通过计算几何图形R8-R19之间的距离,可以确定几何图形R8-R10彼此靠近(例如,间距小于阈值)但不互相重叠。由此,几何图形R8-R10可以被分组到图案R3。作为另一示例,几何图形R11与几何图形R12重叠,因此它们可以被分组到图案R4。
类似地,几何图形R13-R14可以被分组到图案R5;几何图形R15-R16可以被分组到图案R6;几何图形R17-R19可以被分组到图案R7。与几何图形R8-R19不同,图案R3-R7包括多个几何图形。如图5所示,图案R3-R7可以构成索引结构500中的中间节点。
通过对图案R3-R7的分析,图案R6和R7被分组到图案R1;图案R3、R4和R5被分组到R2。如图5所示,图案R1和R2可以形成索引结构500的根节点。
从以上描述中可以看出,通过构建索引结构500,可以确定版图单元400中包括多个几何图形的图案,例如图案R3-R7或图案R1-R2。可以对一组几何图形执行图案测量操作。由此,管理设备210可以从作为几何图形组合的图案R3-R7或图案R1-R2中确定将要被执行图案测量操作的多个图案,例如,图案R3-R7。例如,管理设备210可以将与版图单元400相对应的子作业设置为对多个图案R3-R7分别执行测量操作。如本文中所使用的,术语“将子作业设置为……”及其变型可以是指在生成子作业中,生成用于该子作业的可执行指令,以使得该子作业在由处理设备处理时相应的操作被执行。
管理设备220可以将索引结构500的数据作为图3中所示的与子作业相关的数据的一部分发送给对应的处理设备220。因此,针对掩模版图的索引结构的使用可以在多个处理设备220间并行。以此方式,子作业中涉及的测量操作可以被加速,从而有利于提高整个SMO作业的处理效率。
在一些实施例中,如果要处理的掩模版图过大,管理设备210可以将索引结构(例如,R树)的构建任务划分为多个子任务,每个子任务用于构建一个区域(例如,版图单元)的索引结构。这些子任务可以被分配给多个处理设备220,从而在多个处理设备220间并行地构建针对整个掩模版图的索引结构。
在一些实施例中,还管理设备210(例如,图案分析器)可以对版图单元中的多个图案进行分类,以确定属于相同类型的一组图案。例如,相同的图案可以被分为相同类型。又如,按一定比例缩放的图案可以被分为相同类型。如果确定多个图案中包括属于相同类型的一组图案,管理设备210可以从该组图案中选择参考图案。管理设备210进而可以将每个子作业设置为:对参考图案执行图案测量操作,以获得对参考图案的测量结果,并且将对参考图案的测量结果应用于该组图案中除参考图案之外的其他图案。
以此方式,对于每个类型的图案,可以从其中确定参考图案作为种子。在执行子作业时,处理设备220可以对每个类型的参考图案执行测量操作,并且对参考图案的测量结果可以应用到该类型的其他图案。例如,参考图案的测量结果可以直接应用到与参考图案相同的另一图案,作为该图案的测量结果。又如,如果另一图案相对于参考图案是按一定比例缩放的,则可以将参考图案的测量结果可以按相同比例缩放后作为该图案的测量结果。如此,可以减少重复的测量操作,例如可以避免重复地对相同的图案应用式(2)的运算。附加地,在一些实施例中,对不同类型的图案执行图案测量操作的过程可以是并行的。
尽管以上描述了图案分析,但应该理解的是,在本公开的实施例中图案分析可能不是必须的。例如,在所处理的掩模版图较小的情况下,可以不进行这样的图案分析。
生成和分配子作业的示例
管理设备210可以生成用于优化光源和掩模版图的多个子作业,并且基于多个处理设备220的配置和由子作业所指定的操作的类型,将子作业分配给处理设备220。在一些实施例中,多个处理设备220可以均被配置有加速处理资源。在这种实施例中,管理设备210可以将每个子作业分配给相应的一个处理设备。
在一些实施例中,多个处理设备220中的一些处理设备可以被配置有加速处理资源,而另一些处理设备可以未被配置有加速处理资源。在这种实施例中,管理设备210可以对多个处理设备220进行配对或分组。
在一些实施例中,管理设备210可以将加速处理设备与常规处理设备配对。每对处理设备可以用于处理相应的一个或多个子作业。每对处理设备中的加速处理设备和常规处理设备可以协作地执行所分配的子作业中的一个或多个操作。
图6示出了根据本公开的一些实施例的生成和分配子作业的过程600的框图。管理设备210所接收的光源相关数据(如图3所示)可以包括表示不同光源形状的多个光源地图,例如类似于光源地图110的多个光源地图。这些光源地图可以分别对应于不同的光照模式。备选地,管理设备210可以利用任何合适的方式来确定表示不同光源形状的多个光源地图。本公开的范围在此方面不受限制。
由此,管理设备210可以生成多个子作业601、602和603。多个子作业601、602和603中的每个子作业可以对应于多个光源地图中的给定光源地图。具体地,管理设备210可以将每个子作业设置为对掩模版图和给定光源地图执行卷积操作,以获得与给定光源地图相对应的掩模图像。管理设备210可以将每个子作业进一步设置为对所获得的掩模图像执行测量操作,以确定工艺窗口。
作为示例,图1中所示的光源地图110可以是管理设备210所确定的多个光源地图之一。子作业601可以被设置为对光源地图110和掩模版图120执行卷积操作,以获得与光源地图110相对应的掩模图像130。子作业601可以进一步被设置为对所获得的掩模图像130执行测量操作,以确定工艺窗口。类似地,子作业602可以被设置为对掩模版图120和与光源地图110不同的另一光源地图执行卷积操作,以获得与另一光源地图相对应的另一掩模图像。子作业602可以进一步被配置为对所获得的另一掩模图像执行测量操作,以确定工艺窗口。
如图6所示,管理设备210可以将图2中所示的多个处理设备220组织成多对处理设备。第一对611处理设备可以包括被配置有加速处理资源的处理设备220-1和未配置有加速处理资源的处理设备220-4,第二对612处理设备可以包括被配置有加速处理资源的处理设备220-2和未配置有加速处理资源的处理设备220-5,第三对613处理设备可以包括被配置有加速处理资源的处理设备220-3和未配置有加速处理资源的处理设备220-6。
管理设备210确定多个子作业601、602和603中的每个子作业包括卷积操作和测量操作两者,从而管理设备210可以将每个子作业分配给一对处理设备,使得某个类型的操作由其中的加速处理设备执行,而另一类型的操作由其中的常规处理设备执行。例如,管理设备210可以将每个子作业分配给一对处理设备,使得卷积操作由其中的加速处理设备执行,而测量操作由其中的常规处理设备执行。例如,管理设备210可以在用于作业分配的文件或指令中指定由加速处理设备执行卷积操作,并且由常规处理设备执行测量操作。
如图6所示,子作业601可以被分配给第一对611处理设备,子作业602可以被分配给第二对612处理设备,子作业603可以被分配给第三对613处理设备。作为示例,对光源地图110和掩模版图120的卷积操作可以由处理设备220-1执行,而对掩模图像130的测量操作可以由处理设备220-4执行。例如,管理设备210可以在用于作业分配的文件或指令中指定由处理设备220-1执行卷积操作,并且由处理设备220-4执行测量操作。
每对处理设备对相应子作业处理的结果,即针对给定光源地图而获得的工艺窗口PW,可以被发送回管理设备210。管理设备210可以基于来自每对处理设备的处理结果,确定优化的光源地图。例如,管理设备210可以基于来自每对处理设备的处理结果,确定相应的工艺窗口,并且基于工艺窗口从多个光源地图中选择一个光源地图作为优化的光源地图。例如,管理设备210可以选择所对应的工艺窗口的值最大的光源地图作为优化的光源地图。
尽管加速处理资源能够带来处理速度的极大优化,并且SMO作业中涉及多种消耗计算资源的操作,但与常规处理资源相比,加速处理资源(例如,AI芯片)较为昂贵。在这种实施例中,通过将加速处理设备和常规处理设备配对,可以充分利用混合式架构的灵活性。
在另一些实施例中,管理设备210可以将加速处理设备和常规处理设备分组。相应地,管理设备210所生成的多个子作业也可以被分组。每组子作业可以包括相同类型的操作,并且被分配给相应的一组处理设备。
图7示出了根据本公开的一些实施例的生成和分配子作业的过程700的框图。如图7所示,管理设备210可以将图2中所示的多个处理设备220组织成多组处理设备。第一组730处理设备可以包括被配置有加速处理资源的处理设备220-1、220-2和220-3,第二组740处理设备可以包括未被配置有加速处理资源的处理设备220-4、220-5和220-6。相应地,由管理设备210生成的多个子作业可以包括第一组710子作业和第二组720子作业。第一组710子作业和第二组720子作业可以针对同一光源地图,例如图1中所示的光源地图110。
管理设备210可以确定光源地图110所包括的多个地图单元,例如包括地图单元111、112。由管理设备210生成的第一组710子作业可以包括子作业711、712和713。管理设备210可以将第一组710子作业中的每个子作业设置为对掩模版图120和给定地图单元执行卷积操作。给定地图单元可以是光源地图110的多个地图单元之一,并且不同子作业所处理的给定地图单元不同。可以理解的是,对掩模版图120和给定地图单元的卷积操作的结果(即,所获得的图像部分)可以用于确定与光源地图110相对应的掩模图像。例如,子作业711可以被设置为对掩模版图120和光源地图110的地图单元111执行卷积操作,以获得与地图单元111相对应的图像部分。子作业712可以被设置为对掩模版图120和光源地图110的地图单元112执行卷积操作,以获得与地图单元112相对应的图像部分。与地图单元111相对应的图像部分、与地图单元112相对应的图像部分以及与其他地图单元相对应的图像部分后续可以用于生成完整的掩模图像130。
管理设备210确定第一组710子作业中的每个子作业包括卷积操作,从而管理设备210可以将第一组710子作业分配给第一组730处理设备,即未被配置有加速处理资源的处理设备。例如,如图7所示,子作业711、712和713分别被分配给处理设备220-1、220-2和220-3。
管理设备210可以从第一组730处理设备接收第一组710子作业的处理结果。管理设备210进而可以基于这些处理结果重新构建或组织第二组720子作业。具体地,管理设备210可以从第一组710子作业中的每个子作业接收相应的图像部分,并通过组合这些图像部分来生成掩模图像130。
管理设备210可以生成包括子作业721、722和723的第二组720子作业。管理设备210可以将第二组720子作业中的每个子作业设置为对掩模图像的至少一部分执行测量操作,以确定工艺窗口。例如,管理设备210可以将掩模图像130划分成多个图像单元。第二组710子作业中的每个子作业可以被设置为对多个图像单元中的相应的一个图像单元(具体为该图像单元中的测量位置)执行测量操作,以确定工艺窗口。
由于第二组720子作业中的每个子作业包括测量操作,管理设备210可以将第二组720子作业分配给第二组740处理设备,即被配置有加速处理资源的处理设备。例如,如图7所示,子作业721、722和723可以被分别分配给处理设备220-4、220-5和220-6。
管理设备210进而可以从第二组740处理设备接收第二组720子作业的处理结果,包括例如针对每个图像单元所测量的工艺窗口。管理设备210可以基于这些处理结果,确定与光源地图110和掩模版图120相对应的总的工艺窗口。如果总的工艺窗口满足预定条件,则至少可以认为光源地图110是优化的光源地图。否则,可以重复上述过程。
图7中所示的处理设备和子作业的数目仅是示意性的,而无意限制本公开的保护范围。在一些实施例中,第一组710子作业的数目可以与第二组720子作业的数目相同。在一些实施例中,第一组710子作业的数目可以与第二组720子作业的数目不同。
附加地,第一组710子作业中的每个子作业所对应的地图单元的尺寸可以与第二组720子作业中的每个子作业所对应的版图单元的尺寸不同。例如,管理设备210可以基于相应的处理设备的计算能力来优化每组子作业所对应的单元的尺寸。
以上所描述的示例过程700构成了子作业循环。可以理解的是,在这样的实施例中,包括卷积操作的子作业(例如,第一组710子作业)和包括测量操作的子作业(例如,第二组720子作业)形成了一批次的子作业。管理设备210可以通过分配不同批次的子作业,使得不同组的处理设备总是在运行。
在一些实施例中,处理设备220还可以被分成三个或更多个组。在这种实施例中,可以基于所配置的加速处理资源的具体类型来对处理设备220分组。例如,未被配置有任何加速处理资源的处理设备被分为第一组,被配置有APU的处理设备被分为第二组,并且被配置有AI芯片的处理设备被分为第三组。
通过将处理设备按照加速处理设备和常规处理设备分组,并且将子作业按照操作类型分组,可以充分利用混合式架构的灵活性。以此方式,处理设备可以持续不断地处理用于SMO的子作业。因此,在这种实施例中,可以进一步提高进行光源和掩模协同优化的效率。
示例方法和示例实施例
图8示出了根据本公开的一些实施例的用于光源掩模优化的示例方法800的流程图。方法800可以由图2中所示的管理设备210来实现。为便于讨论,将结合图2来描述方法800。
在框810,管理设备210生成用于优化光源和掩模版图的多个子作业。每个子作业指定对至少一个光源地图和掩模版图执行的一个或多个操作,并且光源具有至少一个光源地图。例如,一个或多个操作可以包括上文所描述的卷积操作、测量操作以及其他所需的操作。
在框820,管理设备210基于多个处理设备220的配置信息和一个或多个操作的类型,将多个子作业分配给多个处理设备220。多个处理设备220中的至少一个处理设备被配置有加速处理资源。例如,图2中所示的处理设备220-1、220-2和220-3被配置有加速处理资源。加速处理资源可以包括但不限于APU、AI芯片等。AI芯片可以包括例如TPU、NPU、以及其他现有的或将来开发的AI芯片。
在一些实施例中,加速处理资源被可移除地配置给至少一个处理设备。例如,TPU、NPU或APU以外置插件的形式被配置给处理设备220-1、220-2和220-3中的一个或多个。
在一些实施例中,加速处理资源被不可移除地配置给至少一个处理设备。例如,处理设备220-1、220-2和220-3中的一个或多个内置有加速处理资源,诸如TPU、NPU或APU。
在一些实施例中,为了生成多个子作业,管理设备210可以确定目标光源地图所包括的多个地图单元。例如,可以将图1中所示的光源地图110划分成如图1中的虚线框所示的多个地图单元。该目标光源地图可以是与该光源相关联的至少一个光源地图中的任一光源地图,例如当前迭代中所考虑的光源地图。管理设备210可以将多个子作业中的第一组710子作业中的每个子作业设置为对掩模版图和给定地图单元执行卷积操作。给定地图单元是目标光源地图所包括的多个地图单元之一。对掩模版图和给定地图单元的卷积操作的结果可以用于生成与目标光源地图相对应的掩模图像。管理设备210可以将多个子作业中的第二组720子作业中的每个子作业设置为对掩模图像的至少一部分执行测量操作,以确定工艺窗口。
在一些实施例中,管理设备210可以基于多个处理设备220的配置信息,从多个处理设备220中确定第一组730处理设备和第二组740处理设备。第一组730处理设备可以为被配置有加速处理资源的一组处理设备,并且第二组740处理设备可以为未被配置有加速处理资源的一组处理设备。由于第一组710子作业包括卷积操作,管理设备210可以将第一组710子作业分配给第一组730处理设备。由于第二组720子作业包括测量操作,管理设备210可以将第二组720子作业分配给第二组740处理设备。
在一些实施例中,管理设备210可以将多个子作业中的每个子作业设置为:对掩模版图和给定光源地图执行卷积操作,以获得与给定光源地图相对应的掩模图像;以及对掩模图像执行测量操作,以确定工艺窗口。给定光源地图是与光源相关联的至少一个光源地图之一。在这种实施例中,不同的子作业所处理的给定光源地图可以对应于不同的光源形状。
在一些实施例中,管理设备210可以基于多个处理设备220的配置信息,从多个处理设备220中确定多对处理设备。每对处理设备包括被配置有加速处理资源的第一处理设备和未被配置有加速处理资源的第二处理设备。例如,管理设备210可以确定图6中所示的多对处理设备。
由于多个子作业中的每个子作业包括卷积操作和测量操作,管理设备210可以将每个子作业分配给多对处理设备中的相应的一对处理设备,使得卷积操作由第一处理设备执行,并且测量操作由第二处理设备执行。例如,图6中所示的子作业601、602和603中的每一个均包括卷积操作和测量操作。子作业601、602和603可以被分别分配给多对处理设备。
在框830,管理设备210基于多个处理设备对多个子作业处理的结果,至少确定光源的优化的光源地图。例如,管理设备210可以生成如图1所示的优化的光源地图140。
在本公开的另一方面,还提供了一种用于执行SMO的方法。该方法可以由处理设备220实现,并且可以包括以上相对于处理设备220所描述的动作。
示例设备
图9示出了可以用来实施本公开的实施例的示例设备900的示意性框图。设备900可以用于实现图1的管理设备210或处理设备220。如图所示,设备900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的计算机程序指令或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序指令,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。CPU 901、ROM 902以及RAM903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元901执行上文所描述的各个方法和处理,例如方法800。例如,在一些实施例中,方法800可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由CPU 901执行时,可以执行上文描述的方法800的一个或多个步骤。备选地,在其他实施例中,CPU 901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法800。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (9)
1.一种用于光源掩模优化的方法,包括:
生成用于优化光源和掩模版图的多个子作业,其中每个子作业指定对至少一个光源地图和所述掩模版图执行的一个或多个操作,其中,所述光源具有所述至少一个光源地图;
基于多个处理设备的配置信息和所述一个或多个操作的类型,将所述多个子作业分配给所述多个处理设备,所述多个处理设备中的至少一个处理设备被配置有加速处理资源;以及
基于所述多个处理设备对所述多个子作业处理的结果,确定所述光源的优化的光源地图;
其中生成所述多个子作业包括:
确定所述至少一个光源地图中的目标光源地图所包括的多个地图单元;
将第一组子作业中的每个子作业设置为对所述掩模版图和所述多个地图单元中的给定地图单元执行卷积操作,其中所述卷积操作的结果用于生成与所述目标光源地图相对应的掩模图像;以及
将第二组子作业中的每个子作业设置为对所述掩模图像的至少一部分执行测量操作,以确定工艺窗口,其中所述第一组子作业为所述多个子作业中的子作业,所述第二组子作业为所述多个子作业中的另外的子作业,并且所述给定地图单元为所述多个地图单元之一。
2.根据权利要求1所述的方法,其中基于多个处理设备的所述配置信息和所述一个或多个操作的类型,将所述多个子作业分配给所述多个处理设备包括:
基于所述多个处理设备的所述配置信息,从所述多个处理设备中确定第一组处理设备和第二组处理设备,所述第一组处理设备为被配置有所述加速处理资源的一组处理设备,所述第二组处理设备为未被配置有所述加速处理资源的一组处理设备;
响应于确定所述第一组子作业,将所述第一组子作业分配给所述第一组处理设备;以及
响应于确定所述第二组子作业,将所述第二组子作业分配给所述第二组处理设备;
所述第一组子作业包括所述卷积操作;所述第二组子作业包括所述测量操作。
3.根据权利要求1所述的方法,其中所述第一组子作业的数目不同于所述第二组子作业的数目。
4.根据权利要求1所述的方法,其中生成所述多个子作业包括:
将所述多个子作业中的每个子作业设置为:对所述掩模版图和给定光源地图执行卷积操作,以获得与所述给定光源地图相对应的掩模图像;以及对所述掩模图像执行测量操作,以确定工艺窗口,其中所述给定光源地图为所述至少一个光源地图之一。
5.根据权利要求4所述的方法,其中基于多个处理设备的所述配置信息和所述一个或多个操作的类型,将所述多个子作业分配给所述多个处理设备包括:
基于所述多个处理设备的所述配置信息,从所述多个处理设备中确定多对处理设备,每对处理设备包括被配置有所述加速处理资源的第一处理设备和未被配置有所述加速处理资源的第二处理设备;以及
响应于确定所述多个子作业中的每个子作业包括所述卷积操作和所述测量操作,将所述每个子作业分配给所述多对处理设备中的相应的一对处理设备,使得所述卷积操作由所述第一处理设备执行,并且所述测量操作由所述第二处理设备执行。
6.根据权利要求4所述的方法,其中基于所述多个处理设备对所述多个子作业处理的结果,至少确定所述光源的优化的光源地图包括:基于分别由所述多个子作业确定的所述工艺窗口,从多个光源地图中选择所述优化的光源地图。
7.根据权利要求1所述的方法,其中所述加速处理资源被可移除地配置给所述至少一个处理设备。
8.一种电子设备,所述设备包括:
一个或多个处理器;以及
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行动作,所述动作包括:生成用于优化光源和掩模版图的多个子作业,其中每个子作业指定对至少一个光源地图和所述掩模版图执行的一个或多个操作,其中,所述光源具有所述至少一个光源地图;基于多个处理设备的配置信息和所述一个或多个操作的类型,将所述多个子作业分配给所述多个处理设备,所述多个处理设备中的至少一个处理设备被配置有加速处理资源;以及基于所述多个处理设备对所述多个子作业处理的结果,确定所述光源的优化的光源地图;
其中生成所述多个子作业包括:
确定所述至少一个光源地图中的目标光源地图所包括的多个地图单元;
将第一组子作业中的每个子作业设置为对所述掩模版图和所述多个地图单元中的给定地图单元执行卷积操作,其中所述卷积操作的结果用于生成与所述目标光源地图相对应的掩模图像;以及
将第二组子作业中的每个子作业设置为对所述掩模图像的至少一部分执行测量操作,以确定工艺窗口,其中所述第一组子作业为所述多个子作业中的子作业,所述第二组子作业为所述多个子作业中的另外的子作业,并且所述给定地图单元为所述多个地图单元之一。
9.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011491033.2A CN112579286B (zh) | 2020-12-16 | 2020-12-16 | 用于光源掩模优化的方法、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011491033.2A CN112579286B (zh) | 2020-12-16 | 2020-12-16 | 用于光源掩模优化的方法、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579286A CN112579286A (zh) | 2021-03-30 |
CN112579286B true CN112579286B (zh) | 2021-08-06 |
Family
ID=75135602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011491033.2A Active CN112579286B (zh) | 2020-12-16 | 2020-12-16 | 用于光源掩模优化的方法、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579286B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115220902A (zh) * | 2021-04-14 | 2022-10-21 | 华为技术有限公司 | 计算资源的管理方法、系统以及装置 |
CN113253621B (zh) * | 2021-05-19 | 2024-01-30 | 云米互联科技(广东)有限公司 | 一种基于HomeMap的设备光源状态视觉化控制方法及装置 |
CN115185165B (zh) * | 2022-09-13 | 2023-01-06 | 全芯智造技术有限公司 | 佐辅模型的构建方法、光学修正方法及装置、终端 |
CN115470741B (zh) * | 2022-11-14 | 2023-02-10 | 全芯智造技术有限公司 | 用于光源掩模协同优化的方法、电子设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574293A (zh) * | 2016-02-01 | 2016-05-11 | 中国科学院微电子研究所 | Euv设计规则、光源和掩模的联合优化和成像建模方法 |
CN105988877A (zh) * | 2015-03-16 | 2016-10-05 | 英特尔公司 | 基于硬件的设备间资源共享 |
CN106886503A (zh) * | 2017-02-08 | 2017-06-23 | 无锡十月中宸科技有限公司 | 异构系统、数据处理方法及装置 |
CN110554913A (zh) * | 2018-05-30 | 2019-12-10 | 三星电子株式会社 | 神经网络系统及其操作方法以及应用处理器 |
CN111124656A (zh) * | 2018-10-31 | 2020-05-08 | 伊姆西Ip控股有限责任公司 | 用于向专用计算资源分配任务的方法、设备和计算机程序产品 |
CN111309491A (zh) * | 2020-05-14 | 2020-06-19 | 北京并行科技股份有限公司 | 一种作业协同处理方法及系统 |
CN111598221A (zh) * | 2020-05-14 | 2020-08-28 | 济南浪潮高新科技投资发展有限公司 | 一种软硬件协同加速神经网络算法的方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110047519A1 (en) * | 2009-05-11 | 2011-02-24 | Juan Andres Torres Robles | Layout Content Analysis for Source Mask Optimization Acceleration |
EP2570854B1 (en) * | 2011-09-16 | 2016-11-30 | Imec | Illumination-source shape definition in optical lithography |
-
2020
- 2020-12-16 CN CN202011491033.2A patent/CN112579286B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105988877A (zh) * | 2015-03-16 | 2016-10-05 | 英特尔公司 | 基于硬件的设备间资源共享 |
CN105574293A (zh) * | 2016-02-01 | 2016-05-11 | 中国科学院微电子研究所 | Euv设计规则、光源和掩模的联合优化和成像建模方法 |
CN106886503A (zh) * | 2017-02-08 | 2017-06-23 | 无锡十月中宸科技有限公司 | 异构系统、数据处理方法及装置 |
CN110554913A (zh) * | 2018-05-30 | 2019-12-10 | 三星电子株式会社 | 神经网络系统及其操作方法以及应用处理器 |
CN111124656A (zh) * | 2018-10-31 | 2020-05-08 | 伊姆西Ip控股有限责任公司 | 用于向专用计算资源分配任务的方法、设备和计算机程序产品 |
CN111309491A (zh) * | 2020-05-14 | 2020-06-19 | 北京并行科技股份有限公司 | 一种作业协同处理方法及系统 |
CN111598221A (zh) * | 2020-05-14 | 2020-08-28 | 济南浪潮高新科技投资发展有限公司 | 一种软硬件协同加速神经网络算法的方法及系统 |
Non-Patent Citations (1)
Title |
---|
光学邻近校正技术和版图热点管理技术研究;林斌;《中国博士学位论文全文数据库信息科技辑》;20140715;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112579286A (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112579286B (zh) | 用于光源掩模优化的方法、设备和存储介质 | |
Rahbari et al. | Task offloading in mobile fog computing by classification and regression tree | |
Abed-Alguni et al. | Distributed Grey Wolf Optimizer for scheduling of workflow applications in cloud environments | |
Fizza et al. | Improving the schedulability of real-time tasks using fog computing | |
US9038088B2 (en) | Load balancing on hetrogenous processing cluster based on exceeded load imbalance factor threshold determined by total completion time of multiple processing phases | |
WO2017076296A1 (zh) | 处理图数据的方法和装置 | |
CN112560392B (zh) | 用于处理电路版图的方法、设备和存储介质 | |
JP2016042284A (ja) | 並列計算機システム、管理装置、並列計算機システムの制御方法及び管理装置の制御プログラム | |
KR20200091789A (ko) | Gpu 연산의 동시 실행을 위한 플랫폼 | |
KR20190054449A (ko) | 이종 클러스터 환경에서 신경망 트레이닝 가속화를 위한 연산 노드 배치 기법 | |
Nasr et al. | Using the TSP solution strategy for cloudlet scheduling in cloud computing | |
CN112559181B (zh) | 用于电路版图的热点检测方法、设备和存储介质 | |
CN115362447A (zh) | 针对执行流水线的划分 | |
CN111339724A (zh) | 用于生成数据处理模型和版图的方法、设备和存储介质 | |
Liu et al. | Multi-objective layout optimization of a satellite module using the Wang-Landau sampling method with local search | |
Tchernykh et al. | Mitigating uncertainty in developing and applying scientific applications in an integrated computing environment | |
Nikseresht et al. | MOGATS: A multi-objective genetic algorithm-based task scheduling for heterogeneous embedded systems | |
Gomathi et al. | Multi-Objective Immune Algorithm for Internet of Vehicles for Data Offloading. | |
CN112580296A (zh) | 用于处理电路版图的方法、设备和存储介质 | |
Li et al. | Performance optimization algorithm of radar signal processing system | |
Bensaleh et al. | Optimal task scheduling for distributed cluster with active storage devices and accelerated nodes | |
KR20220118948A (ko) | 하드웨어 가속 명령어들의 사용 | |
Brighen et al. | A new distributed graph coloring algorithm for large graphs | |
KR101558807B1 (ko) | 호스트 프로세서와 협업 프로세서 간에 협업 처리를 위한 프로세서 스케줄링 방법 및 그 방법을 수행하는 호스트 프로세서 | |
Ghasemi et al. | EdgeWise: Energy-efficient CNN computation on edge devices under stochastic communication delays |
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 |