首页 > 摄影电影 专利正文
用于光刻制造系统的剂量信息生成和传达的制作方法

时间:2022-02-18 阅读: 作者:专利查询

用于光刻制造系统的剂量信息生成和传达的制作方法

1.本公开涉及生成用于光刻制造工艺的剂量信息,并且更具体地基于晶片模拟来生成剂量信息。


背景技术:

2.光刻制造系统根据相关ic芯片设计制造集成电路(ic)芯片。光刻制造系统在制造过程期间使用掩模(光掩模)来控制将光施加到晶片(例如,衬底)上的光刻胶材料层的位置。掩模设置在晶片上方并且光通过掩模施加到晶片。当光穿过掩模内的孔时,光与光刻胶材料相互作用。然后,经由蚀刻或沉积工艺对晶片进行显影和处理,用于ic芯片制造。
3.掩模写入工艺用于从掩模坯形成掩模。例如,掩模写入器设备向掩模坯施加一个或多个能量射束以显影掩模。在许多情况下,掩模写入设备确定剂量信息以控制ic芯片制造期间使用的曝光能量。


技术实现要素:

4.在一个示例中,一种方法包括:接收集成电路(ic)设计文件;以及通过一个或多个处理器根据ic设计文件确定剂量信息。该方法还包括:通过一个或多个处理器根据ic设计文件确定掩模矢量文件;以及通过一个或多个处理器将计量信息转换为矢量文件格式。进一步地,该方法包括:将矢量文件格式的剂量信息和掩模矢量文件输出到掩模写入器设备。
5.在一个示例中,一种光刻系统包括存储器;以及处理器,该处理器与存储器耦合。该处理器被配置为:接收集成电路(ic)设计文件;以及根据ic设计文件确定剂量信息。该处理器还被配置为:根据ic设计文件确定掩模矢量文件;以及将计量信息转换为矢量文件格式。进一步地,该处理器还被配置为:将矢量文件格式的剂量信息和掩模矢量文件输出到掩模写入器设备。
6.在一个示例中,一种包括存储指令的非暂态计算机可读介质,这些指令当被处理器执行时,使得处理器接收集成电路(ic)设计文件;并且根据ic设计文件确定剂量信息。还使得处理器根据ic设计文件确定掩模矢量文,以及将计量信息转换为矢量文件格式。还使得处理器将矢量文件格式的剂量信息和掩模矢量文件输出到掩模写入器设备。
附图说明
7.根据下文所给出的具体实施方式和本公开的实施例的附图,更全面地理解本公开。附图用于提供对本公开的实施例的知识和理解,并且不将本公开的范围限制于这些特定实施例。更进一步地,附图不一定按比例绘制。
8.图1图示了根据本公开的一些实施例的光刻系统的框图。
9.图2图示了根据本公开的一些实施例的用于修改剂量信息的方法的流程图。
10.图3图示了根据本公开的一些实施例的用于修改剂量信息的方法的流程图。
11.图4图示了根据本公开的一些实施例的剂量信息的各部分。
12.图5图示了根据本公开的一些实施例的用于输出剂量信息的基于矢量的文件的方法的流程图。
13.图6图示了根据本公开的一些实施例的用于矢量化剂量信息的方法的流程图。
14.图7图示了根据本公开的一些实施例的示例剂量分布的一部分。
15.图8图示了根据本公开的一些实施例的用于矢量化剂量信息的方法的流程图。
16.图9图示了根据本公开的一些实施例的示例剂量分布的一部分。
17.图10图示了根据本公开的一些实施例的用于输出剂量信息的基于矢量的文件的方法的流程图。
18.图11描绘了根据本公开的一些实施例的在集成电路的设计和制造期间使用的各种过程的流程图。
19.图12描绘了本公开的实施例可以在其中操作的示例计算机系统的抽象图。
具体实施方式
20.本公开的各方面涉及用于光刻制造系统的剂量信息生成和传达。
21.集成电路(ic)芯片通过使用光刻制造工艺的光刻制造系统制造。光刻制造系统通过掩模(例如,光掩模)将晶片(例如,衬底)上的光刻胶层暴露于光。掩模基于从掩模合成引擎接收的数字掩模设计文件来通过掩模写入设备生成(例如,写入或打印)。
22.掩模合成引擎实现光学邻近校正(opc)和逆光刻技术(ilt)工艺等,以生成掩模设计文件。掩模设计文件可以包括从ic芯片设计生成的多边形。掩模合成引擎基于ic芯片的电路设计来生成一个或多个掩模设计文件。例如,掩模合成引擎基于ic芯片的电路设计来确定掩模的多边形(例如,几何形状),这些多边形定义掩模内的孔(或开口或孔洞)的图案。
23.在制造过程期间,掩模设置在晶片(或衬底)上。紫外光或适合与光刻胶反应的其他类型的光被施加到晶片上。掩模在不与孔相对应的区域中阻挡光,并且允许光通过与孔相对应的区域。当光穿过孔时,光与对应区域中晶片上的感光材料相互作用,从而在晶片上生成图案。然后,经图案化晶片暴露于蚀刻和/或沉积工艺以制造ic芯片。
24.在掩模写入过程期间,掩模基于掩模设计生成。掩模写入设备包括多光束掩模写入器(mbmw)设备。掩模写入设备基于剂量信息和掩模设计文件来向掩模坯施加能量射束以生成印刷掩模。
25.在许多光刻制造系统中,掩模合成引擎与掩模写入设备之间存在分离,使得掩模合成设备和掩模写入设备彼此独立实现,从而使得两者之间难以紧密耦合。在这样的系统中,掩模合成引擎和掩模写入设备依赖于矢量文件格式(例如,图形设计系统(gds)流格式或开放艺术作品系统交换标准(oasis)格式)的数字掩模设计文件在掩模合成工具与掩模写入工具之间进行切换。在这种系统中,剂量信息由掩模写入设备生成。由于掩模写入工具无法访问ic芯片设计,所以在掩模写入设备内生成剂量信息并未考虑生成晶片时可能引入的误差。因而,基于剂量信息中的误差,可能在ic芯片制造过程中引入误差。然而,通过在掩模合成引擎内生成剂量信息,同时还生成掩模矢量格式,与在掩模合成工具之外和在掩模写入设备之内生成剂量信息的系统相比较,减少了掩模写入过程中生成的误差,从而提高了ic芯片制造良率。
26.图1图示了根据一个或多个示例的光刻系统100。光刻系统100包括掩模合成引擎
110和掩模写入设备120。进一步地,光刻系统100可以附加地包括光刻扫描设备130。光刻扫描设备130是可选的,并且在一些示例中,省略了光刻扫描设备130。光刻系统100包括一个或多个处理设备(例如,图12的处理设备1202)和一个或多个存储器设备(例如,图12的主存储器1204和/或机器可读介质1224)。一个或多个处理设备执行一个或多个存储设备中存储的指令(例如,图12的指令1226)以接收ic芯片设计、处理ic芯片设计以确定剂量信息,并且生成物理掩模。
27.光刻系统100接收ic芯片设计并且根据ic芯片设计生成数字掩模设计文件和剂量信息。进一步地,光刻系统100根据掩模设计文件和剂量信息生成物理掩模,并且使用物理掩模制造印刷晶片(衬底)。
28.掩模合成引擎110接收ic芯片设计(例如,ic芯片设计文件)。从连接到光刻系统100的系统或从连接到光刻系统100的输入设备接收ic芯片设计。在另一示例中,掩模合成引擎110从光刻系统100的存储器接收ic芯片设计。例如,掩模合成引擎110访问存储器以获取ic芯片设计。掩模合成引擎110处理ic芯片设计以生成剂量信息和掩模设计。掩模合成引擎110还根据剂量信息生成矢量文件格式。图2、图3、图5和图10的方法200、300、500和1000分别进一步描述了用于生成剂量信息的过程。
29.剂量信息可以表示为剂量图。在一个示例中,剂量信息是多维剂量图。例如,剂量信息是三维剂量图。剂量信息限定通过掩模写入设备施加到掩模坯的能量(例如,曝光能量)数量。在一个示例中,剂量信息限定跨掩模坯的表面施加的曝光以生成印刷掩模。剂量图的变化(渐变等级)限定了沿着掩模坯的表面施加到不同位置的能量数量。在一个示例中,剂量信息是表示三个维度的曝光能量的剂量图。在这种示例中,剂量图的x轴和y轴与掩模坯的表面相对应。沿掩模坯的表面的位置包括对应x坐标和y坐标。剂量图的z轴与曝光能量相对应。z轴上的值越大,对应位置的曝光能量就越大。剂量图的x坐标和y坐标中的每个坐标以及沿着掩模坯的表面的每个对应位置都与曝光能量相关联。图4图示了示例剂量图的各部分。
30.在一个示例中,剂量信息包括剂量分布。剂量分布与ic芯片设计或掩模设计文件的多边形相对应。例如,剂量分布沿着多边形的边缘。剂量分布指示可以沿着对应多边形的边沿变化的剂量数量(例如,水平或值)。图7和图9分别图示了示例剂量分布710和900。
31.掩模合成引擎110在生成剂量信息的同时执行晶片监测。因而,晶片误差小于在掩模合成引擎110外部(例如,在掩模写入设备120内)执行剂量生成的系统中的晶片误差。在掩模合成引擎110内执行剂量信息生成允许在剂量信息的生成期间实现更好的控制以及能够监测对所制造的ic芯片(例如,最终晶片)进行的改变。在这种系统中,所制造的ic芯片(例如,最终晶片)内的误差的影响已知,并且在剂量信息的生成期间被考虑在内。在一个示例中,总晶片误差由以下确定:
32.e
total
=e
synthesis
+e
writer
*meef.
ꢀꢀ
等式1
33.在等式1中,e
total
为总晶片误差,e
synthesis
为与掩模合成引擎相关联的误差,并且e
writer
为与掩模写入器设备相关联的误差。meef是掩模误差增强因子,其指示掩模中的误差如何在晶片内被放大。因子meef为掩模合成引擎110所知并且可以在生成剂量信息时被考虑在内。因而,掩模合成引擎110能够生成剂量信息,同时与掩模写入设备120相比,引入的误差更少。
34.掩模合成引擎110将剂量信息和掩模设计传达到掩模写入设备120。掩模合成引擎110将剂量信息转换为矢量文件格式,该矢量文件格式被传达到掩模写入设备120。掩模合成引擎110可以附加地或可替代地将掩模设计文件和/或剂量信息传达到光刻系统100的存储器。
35.在一个或多个示例中,掩模合成引擎110经由网络(例如,图11的网络1220)将剂量信息和掩模设计传送到掩模写入设备120。在一个示例中,掩模合成引擎110包括计算机系统(例如,计算机系统1200)的一个或多个处理器(例如,处理设备1202)并且经由网络(例如,网络1220)耦合到掩模写入设备120。在这样的示例中,掩模合成引擎110的计算机系统与掩模写入设备120物理分离并且经由网络连接到掩模写入设备120。此外,掩模合成引擎110的计算机系统与掩模写入设备120位于彼此不同的物理位置。
36.掩模合成引擎110包括一个或多个处理设备(例如,图12的处理设备1202),该一个或多个处理设备执行存储器设备(例如,图12的主存储器12004和/或机器可读介质1224)中存储的指令(例如,图12的指令1226),以接收ic芯片设计文件并且生成掩模设计文件和剂量信息。
37.掩模写入设备120接收剂量信息和掩模设计文件。在一个示例中,掩模写入设备120从掩模合成引擎110接收掩模设计文件和剂量信息。掩模写入设备120可以接收矢量文件格式的剂量信息。在其他示例中,掩模写入设备120访问光刻系统100的存储器设备以获取掩模设计文件和剂量信息。
38.印刷掩模可以由掩模坯(或衬底)生成。掩模坯可以是二氧化硅坯等。在印刷过程期间,孔(例如,孔洞或开口)基于掩模设计文件的多边形和剂量信息来形成在掩模坯中。掩模坯涂有光刻胶材料。光刻胶材料暴露于与光刻胶材料相互作用的能量射束。能量射束所施加的能量的数量和位置基于剂量信息。
39.施加到光刻胶的能量射束可以是电子射束或光子能量射束。电子射束由电子射束写入器施加,该电子射束写入器将聚焦电子射束引导到坯上。光子能量射束由激光写入器施加。然后,光刻胶被显影以通过光刻胶产生暴露底层掩模坯的各部分的开口。
40.通过光刻胶中的开口蚀刻掩模坯以基于掩模设计文件移除掩模坯的各部分。蚀刻工艺可以包括液体(例如,湿)蚀刻工艺或等离子体(例如,干)蚀刻工艺。蚀刻处理移除了光刻胶涂层已经被移除的坯的各部分,从而在掩模坯内形成孔(例如,孔洞或开口)。可替代地或附加地,沉积工艺可以用于将材料沉积到光刻胶层已经被移除的掩模坯上。
41.掩模写入设备120包括一个或多个处理设备(例如,图12的处理设备1202),该一个或多个处理器设备执行存储器设备(例如,图12的主存储器1204和/或机器可读介质1224)中存储的指令(例如,图12的指令1226),以接收掩模设计文件和剂量信息并生成印刷掩模。
42.光刻扫描设备130从掩模写入设备120接收印刷掩模用于ic芯片制造。光刻扫描设备130将印刷掩模定位在衬底上方并且通过印刷掩模向衬底施加光。光穿过印刷掩模的孔并且与衬底上的光刻胶材料相互作用。光可以是紫外(uv)光或另一波长的光。在后续显影过程期间从衬底移除光刻胶材料。经显影衬底暴露于蚀刻和/或沉积工艺ic芯片制造。在一个示例中,多个不同的图案化掩模在ic芯片制造过程期间的不同时间施加到衬底。
43.图2是根据一个或多个示例的用于生成剂量信息的方法200的流程图。方法200由掩模合成引擎110执行。进一步地,方法200作为图11的掩模数据准备1132的一部分来执行。
在框210处,接收ic芯片设计。例如,掩模合成引擎110从另一处理系统、输入设备或存储器设备接收ic芯片设计。芯片设计可以采用矢量格式(例如,oasis或gds文件格式)或其他文件格式。
44.在框220处,生成剂量信息和晶片目标。掩模合成引擎110根据ic芯片设计生成剂量信息、晶片图像和晶片目标。晶片图像是对应物理晶片上光强度的函数。晶片图像可以是光强度或光强度函数的逐像素采样(或其他类型的用户定义采样)。在一个示例中,晶片图像是光强度的基于物理晶片的相应显影(蚀刻)行为的类似于阶跃函数。在这样的示例中,晶片图像是二值图像。在另一个示例中,晶片图像是被转换为多边形的光强度函数的轮廓。
45.晶片目标是晶片图像的理想表示。在定义晶片图像的位置中的一个或多个位置处定义晶片目标。晶片目标可以使用像素采样(或其他采样技术)或轮廓绘制等来生成。在一个示例中,晶片目标是通过采用ic芯片设计的多边形的函数来导出的。例如,将多边形栅格化以生成像素表示,四舍五入以生成打印的多边形,或通过应用其他函数将多边形转换为像素表示。在其他示例中,其他多边形处理技术可以应用于多边形以生成晶片目标。
46.在一个示例中,生成剂量信息包括:将ic芯片设计转换为重新栅格化的图像文件(例如,位图或其他栅格图像文件)表示。剂量图的表示可以通过栅格化方法或其他基于几何的方法来构造,该基于几何的方法将ic芯片设计内的多边形转换为图像字段。例如,多边形可以转换为位图字段。在另一示例中,多边形基于多边形的水平集表示来转换。在另一示例中,应用基于规则的指派来确定靠近ic芯片设计的多边形的边缘的像素的局部剂量。基于规则的指派可以包括基于几何的度量。在另一示例中,应用基于规则的指派可以包括确定以ic芯片设计的多边形的边缘为中心的高斯剂量分布。其他方法可以包括使用多边形密度或曲率方法来生成剂量信息。
47.在框230处,修改剂量信息。掩模合成引擎110修改剂量信息。在一个示例中,基于判定晶片图像和晶片目标不会聚来修改剂量信息。掩模合成引擎110比较晶片图像与晶片目标进行以确定晶片图像是否与晶片目标会聚。比较晶片图像与晶片目标包括:生成晶片图像的像素化表示,以及比较晶片图像的像素化表示与晶片目标。基于晶片图像的像素化表示与晶片目标之间的差异小于阈值,晶片图像和晶片目标被确定为会聚。在另一示例中,比较晶片图像与晶片目标包括:对晶片图像进行采样。样本与晶片目标内的对应点进行比较,从而比较样本的强度与晶片目标内的对应点。基于小于阈值的强度之间的差异来确定晶片图像和晶片目标会聚。在一个示例中,比较晶片图像与晶片目标包括:在相应阈值内比较晶片图像的宽度和/或间距信息。基于满足对应阈值的晶片图像的宽度和/或间距,确定晶片图像和晶片目标会聚。
48.掩模合成引擎110基于确定晶片图像和晶片目标会聚来生成经修改的剂量信息。剂量信息可以由剂量图表示,该剂量图指示掩模设计的表面上不同位置处的相对剂量数量。剂量图可以包括光刻度量相对于晶片图像的每个像素处的剂量改变的梯度。在一个示例中,剂量信息包括多个像素,并且修改剂量信息包括:扰动一个或多个像素的剂量信息。
49.在框232处,在一个或多个像素位置处对剂量信息进行扰动以生成经扰动的晶片图像。掩模合成引擎110经扰动的剂量信息并且根据经扰动的剂量信息生成经扰动的晶片图像。经扰动的晶片图像通过基于经扰动的剂量信息模拟ic芯片制造过程生成。例如,根据ic芯片设计生成掩模设计。掩模设计和经扰动的剂量信息用于生成经扰动的晶片图像。经
扰动的晶片图像是根据经扰动的剂量信息确定的模拟结果。
50.在框234处,比较经扰动的晶片图像与未经扰动的晶片图像。未经扰动的晶片图像是在框310处剂量信息被扰动之前生成的晶片图像。掩模合成引擎110基于比较来检测经扰动的晶片头像与未经扰动的晶片图像之间的差异。这些差异用于确定经扰动的剂量信息中的经扰动的像素造成的局部影响。在一个示例中,通过计算单独扰动模型或查找表,经扰动的晶片图像被确定为对未经扰动的剂量信息图像的增强。利用扰动模型和/或查找表允许确定剂量信息的扰动结果,该剂量信息可以与未经扰动的图像组合。与基于剂量图的完整模拟来计算晶片图像相比较,确定经扰动的晶片图像是这种方法更快。在各种实施例中,掩模合成引擎110包括模拟块,该模拟块被配置为根据掩模设计和剂量信息生成晶片图像。模拟块可以由线性操作系统建模。
51.未经扰动的晶片图像与经扰动的晶片图像之间的差异用作剂量信息修改的输入。未经扰动的晶片图像与经扰动的晶片图像之间的差异用于确定经扰动的剂量信息中的经扰动的像素造成的局部影响。进一步地,未经扰动的晶片图像与经扰动的晶片图像之间的差异可以用于构造数值梯度作为剂量信息修改的输入。剂量信息修改过程包括基于梯度的修改。剂量信息修改过程修改剂量信息以校正未经扰动的晶片图像与晶片目标之间的任何失配。例如,剂量信息的剂量值被修改(例如,增加或减少)以校正未经扰动的晶片图像与晶片目标之间的任何失配。
52.在另一示例中,在框230处,基于成本函数来修改剂量信息。成本函数基于晶片图像和晶片目标之间的差异。在一个或多个示例中,成本函数可以附加地或替代地包括光刻工艺中的其他约束,例如掩模写入规则。在框236处,基于模拟晶片图像的成本函数来确定梯度。掩模合成引擎110基于晶片图像的成本函数来确定梯度。成本函数可以定义为dcost/ddose。一个或多个dcost/ddose函数用于修改剂量信息。成本函数用于比较晶片图像与晶片目标。
53.在一个示例中,成本函数c(m)可以表示为c(m)=∫∫(vm(x,y)-t(x,y))2dxdy,而扰动成本函数可以表达为c(m,m,ε)=∫∫(vm(m,ε)(x,y)-t(x,y))2dxdy。vm(m,ε)(x,y)是沿着在光刻期间使用剂量信息产生的晶片图像实现的强度信号,该强度信号具有一组m个像素mi,通过扰动数量ε,修改该强度信号的幅度,并且(x,y)在图像表面中。vm(x,y)是来自未经扰动的剂量信息的强度信号。t(x,y)是在晶片图像上形成特征的目标强度信号。成本函数梯度被生成为剂量信息的nm个像素mi的矢量针对剂量信息的给定像素生成矢量项,如
54.在框238处,基于晶片图像与晶片目标的比较来修改剂量信息。在一个示例中,掩模合成引擎110比较晶片图像与晶片目标,并且采用根据成本函数确定的梯度来校正晶片图像与晶片目标之间的任何失配。例如,掩模合成引擎110更改(例如,增加或减少)剂量信息的剂量值以校正晶片图像与晶片目标之间的任何失配。在一个示例中,为了修改剂量信息,将一种或多种基于梯度的优化技术应用于梯度信息以修改剂量信息内的剂量分配以使成本函数最小化或最大化。例如,基于梯度的优化技术可以是最速下降优化或其他基于梯度的优化。
55.在框240处,输出经修改的剂量信息。掩模合成引擎110将经修改的剂量信息输出到掩模写入设备120。基于确定与剂量信息相关联的晶片图像确定与晶片目标会聚来输出经修改的剂量信息。在一个示例中,基于确定晶片图像与晶片目标不会聚,修改剂量信息,如框230所述。
56.图3是根据一个或多个示例的用于生成剂量信息的方法300的流程图。该方法300由掩模合成引擎110执行。进一步地,方法300作为图11的掩模数据准备1132的一部分来执行。在框310处,接收ic芯片设计。例如,掩模合成引擎110从另一处理系统、输入设备或存储器设备接收ic芯片设计。芯片设计可以采用矢量格式(例如,oasis或gds文件格式)或其他文件格式。
57.在框312处,生成剂量信息。掩模合成引擎110根据ic芯片设计生成剂量信息。生成剂量信息包括:将ic芯片设计转换为栅格化(例如,位图或其他栅格图像文件)表示。剂量信息的表示通过栅格化方法或其他基于几何的方法构造,该基于几何的方法将多边形转换为位图字段。在另一示例中,ic芯片设计的多边形被转换为水平集表示。在另一示例中,应用基于规则的指派来确定靠近ic芯片设计的多边形的边缘的像素的局部剂量。基于规则的指派可以包括基于几何的度量。在另一示例中,应用基于规则的指派可以包括确定以ic芯片设计的多边形的边缘为中心的高斯剂量分布。生成剂量信息的其他方法可以包括使用多边形密度或曲率方法指示剂量幅度修改。
58.在框314处,生成晶片图像。掩模合成引擎110根据掩模设计和剂量信息生成晶片图像。掩模合成引擎110基于掩模设计和掩模信息来模拟掩模写入过程和ic制造过程以生成晶片图像。晶片图像是所制造的ic芯片的模拟版本。
59.在框316处,ic芯片设计被转换成晶片目标。晶片目标可以是位图文件或多边形文件等。掩模合成引擎110将ic芯片设计转换为晶片目标。在一个示例中,将ic芯片设计转换为晶片目标包括:标识ic芯片设计内的设计多边形并且处理设计多边形以生成晶片目标。处理设计多边形包括以下各项中的一项或多项:将多边形舍入以制作可印刷表示,栅格化多边形,创建多边形的水平集界面表示,以及在其中监测晶片图像的ic芯片设计内选择点或量规。
60.在与其中完成框312和/或314期间的一个或多个时段至少部分重叠的时段期间完成框316。在一个示例中,框316在与其中完成框312和314的一个或多个时段不重叠的时段期间完成。
61.在框318处,比较晶片图像与晶片目标。例如,掩模合成引擎110比较晶片图像和晶片目标。比较晶片图像与晶片目标包括:生成晶片图像的像素化表示,以及比较晶片图像的像素化表示与晶片目标。在另一示例中,比较晶片图像与晶片目标包括:对晶片图像进行采样。比较样本与晶片目标内的对应点,从而比较样本的强度与晶片目标内的对应点的强度。在一个示例中,比较晶片图像与晶片目标包括:比较晶片图像的宽度和/或间距与根据晶片目标确定的对应阈值。
62.在框320处,完成晶片图像和目标晶片是否会聚的确定。掩模合成引擎110确定晶片图像和目标晶片是否会聚。在一个示例中,基于晶片图像的像素化表示和晶片目标之间的差异小于阈值,确定晶片图像和晶片目标会聚。在另一示例中,基于晶片图像和晶片目标的强度之间的差异小于阈值,确定晶片图像和晶片目标会聚。在又一示例中,基于满足对应
一个或多个阈值的晶片图像的宽度和/或间距,确定晶片图像和晶片目标会聚。
63.在框322处,修改剂量信息。掩模合成引擎110基于确定晶片目标和晶片图像不会聚来修改剂量信息。如图2的方法200的框230至238所描述的,修改剂量信息。
64.在框314处,掩模合成引擎110基于经修改的剂量信息来生成经更新的的晶片图像。在框318处,比较经更新的晶片图像与晶片目标,并且在框320,确定经更新的晶片图像是否与晶片目标会聚。包括框322、314、318和320的循环继续直到确定晶片图像与晶片目标会聚。
65.在框324处,基于在框320确定晶片图像和目标图像会聚来输出剂量信息。掩模合成引擎110将剂量信息输出到掩模写入设备120。掩模合成引擎110可以将剂量信息存储在光刻系统100的存储器中。掩模写入设备120访问该存储器以获取剂量信息。
66.图4图示了掩模设计的多边形的示例剂量信息410和420。剂量信息410是剂量信息的二维表示。梯度图示了掩模设计的多边形的对应剂量数量(例如,能量数量)。剂量信息420是剂量信息的三维表示。三维表示的不同高度与掩模设计的多边形的位置和剂量数量(例如,能量数量)相对应。
67.在一个示例中并且如关于图5所描述的,基于矢量的文件格式用于将剂量信息从掩模合成引擎110传达到掩模写入设备120。剂量信息可以用于通过掩模写入器工具增强掩模写入过程。基于矢量的文件格式包括oasis或图形设计系统(gds)文件格式等。基于矢量的文件格式是二进制文件格式,这些二进制文件格式以分层形式表示平面几何形状、文本标签、以及关于布局的其他信息。基于矢量的文件格式的数据可以用于创建光掩模。进一步地,备选文件格式(例如,像素化的剂量图)可以用于将剂量信息从掩模合成引擎110传达到掩模写入设备120。
68.掩模矢量文件包括平面几何形状、文本标签和关于分层形式的布局的其他信息,掩模写入工具(例如,掩模写入设备120)利用这些信息来生成掩模。掩模写入设备120接收剂量信息和掩模矢量文件,并且生成用于制造ic芯片的掩模。
69.图5图示了用于将剂量信息从掩模合成引擎传达到掩模写入器设备的方法500的流程图。方法500由掩模合成引擎110执行。方法500作为图11的掩模数据准备1132的一部分来执行。
70.在框510处,接收ic芯片设计。例如,掩模合成引擎110从另一处理系统、输入设备或存储器设备接收ic芯片设计。芯片设计可以采用矢量格式(例如,oasis或gds文件格式)或其他文件格式。
71.在框520处,生成剂量信息。掩模合成引擎110根据ic芯片设计生成剂量信息。生成剂量信息包括:将ic芯片设计转换为栅格化(例如,位图或其他栅格图像文件)表示。剂量信息的表示可以通过栅格化方法或其他基于几何的方法来构建,该基于几何的方法将多边形转换为位图(或另一图像类型)字段。在一个示例中,ic芯片设计的多边形被转换为水平集表示。在另一示例中,应用基于规则的分配来确定靠近ic芯片设计多边形边缘的像素的局部剂量。基于规则的分配可以包括基于几何的度量。在另一示例中,应用基于规则的指派可以包括:确定以ic芯片设计的多边形的边缘为中心的高斯剂量分布。其他方法可以包括使用多边形密度或曲率方法来确定ic芯片设计的多边形的剂量数量。
72.在框530处,生成掩模矢量文件。掩模矢量文件由掩模合成引擎110生成。掩模矢量
文件包括平面几何形状、文本标签、以及用于生成印刷掩模的关于分层形式的ic芯片的布局的其他信息。掩模合成引擎110根据ic芯片设计生成掩模矢量文件。掩模矢量文件包括从ic芯片设计生成的掩模设计。掩模写入设备120使用掩模矢量文件的掩模设计来生成印刷掩模。掩模矢量文件的掩模设计包括定义ic芯片设计的不同元素的多边形。
73.在一个示例中,框520和530至少在重叠时段期间发生。在另一示例中,框520和530在非重叠时段期间发生。
74.在框540处,剂量信息被转换为矢量文件格式。掩模合成引擎110将剂量信息转换为矢量文件格式。在一个示例中,剂量信息被表示为图像文件。例如,剂量信息被表示为位图文件或其他栅格图像文件。用于表示剂量信息的图像文件包括一系列整数到位的映射。将图像文件转换为矢量格式文件包括:矢量化图像文件。矢量化图像文件可以包括:重构图像文件以使用一个或多个数学公式表示图像文件。例如,矢量化图像文件包括:根据图像文件生成一个或多个线、多边形、贝塞尔(bezier)曲线等。在一个或多个示例中,可以进一步应用上述数学构造以增强具有三维信息的二维曲线或多边形表示。示例三维信息在图7和图9中进一步描述。在这样的示例中,对应于三维信息的数据可以是与上述数学构造对应的辅助表格或列表等形式。
75.在框550处,输出矢量文件格式的剂量信息和掩模矢量文件。掩模合成引擎110将矢量文件格式的剂量信息和掩模矢量文件输出到掩模写入设备120。矢量文件格式的剂量信息和掩模矢量文件可以从掩模合成引擎110彼此并联或彼此串联地传达到掩模写入设备120。在另一示例中,矢量文件格式的剂量信息和掩模矢量文件输出到光刻系统100的存储器中,掩模写入设备120从存储器中获取该矢量文件格式的剂量信息和掩模矢量文件。
76.图6图示了根据一个或多个示例的用于将剂量信息转换为矢量文件格式的方法600的流程图。方法600由掩模合成引擎110执行。方法600与图5的框540相对应。在框610处,对剂量信息执行多边形提取。掩模合成引擎110对剂量信息执行多边形提取。在一个示例中,剂量信息由图像文件表示。执行多边形提取包括:在多个剂量水平上绘制图像文件的轮廓。在一个示例中,使用32个水平。在其他示例中,可以使用多于或少于32个水平。绘制图像文件的轮廓包括:从图像文件中检测最大剂量值和最小剂量值。选择轮廓高度,使得剂量表面的三维行为近似于一组有限的轮廓高度。在一个示例中,从最大剂量值和最小剂量值中选择值集合以用作轮廓高度。该值集合可以在最大剂量值与最小剂量值之间等距隔开。在其他示例中,该值集合在最大剂量值与最小剂量值之间并非等距隔开。在一个示例中,该值集合的值被选择为使得这些值聚集在图像文件的像素具有最陡峭斜率(例如,最大变化幅度)的值附近。
77.在框620处,根据轮廓图像文件生成剂量信息的基于地形矢量的表示。基于地形矢量的表示包括在框610处生成的轮廓(或其他值)。进一步地,基于地形矢量的表示作为矢量文件(例如,oasis、gds或其他矢量文件格式)输出。在一个示例中,附加信息与每个轮廓相关联并且可以用于解释每个轮廓的含义。例如,附加信息可用于确定与每个轮廓相关联的相关剂量水平。
78.图7图示了剂量信息的示例多边形700。多边形700包括剂量分布710。剂量分布710位于多边形700的边缘附近。背景包括二元剂量值。曲线图720图示了剂量分布710的切割线。在切割线中,不同的条高度与剂量分布710中的不同同心多边形层相对应。剂量分布710
的多边形层中的每个多边形层与不同的剂量值(或剂量水平)相关联。在一个示例中,剂量值的范围对应于对应的掩模写入器可以产生的最小值到最大值。
79.图8图示了根据一个或多个示例的用于将剂量信息转换为矢量文件格式的方法800的流程图。方法800由掩模合成引擎110执行。方法800与图5的方法500的框540相对应。在框810处,选择沿着剂量信息的剂量分布的边缘的一个或多个点。例如,掩模合成引擎110处理剂量信息的图像文件以沿着剂量分布的一个或多个边缘选择一个或多个点。在一个示例中,通过选择局部像素变化或斜率最大的位置,沿着剂量分布的边缘选择一个或多个点。一个或多个点在剂量分布被生成之前或之后被选择。在一个示例中,标识沿着轮廓边缘具有最大局部像素变化的剂量轮廓的位置,并且这些位置用作选定点。最大的局部变化可以通过在给定点附近的区域中搜索并在搜索区域中找到剂量值的范围来确定。搜索区域的大小可以是用户定义的和/或根据试探法确定的。在一个示例中,局部最大值和最小值是从给定点沿着垂直于多边形边缘的射线确定的。比较多个剂量分布位置的像素变化与阈值,并且选择与超过阈值的像素变化相关联的剂量分布。在一个示例中,通过计算剂量图空间梯度或斜率并且找到局部最大值或最小值来确定剂量分布选择的像素变化。局部最大值和最小值基于垂直于轮廓边缘的方向来确定。可替代地或附加地,二元掩模多边形边缘用作确定沿着边缘的轮廓位置的指南。在一个示例中,基于写入的掩模边缘位置的模拟预测生成二元掩模多边形边缘,并且剂量信息被用于选择沿多边形边缘的一个或多个点。多边形边缘的局部meef可用于在选择一个或多个点时确定哪些多边形边缘最为关键。
80.在框820处,确定每个选定点的一维剂量分布。掩模合成引擎110生成每个选定点的一维剂量分布。在一个示例中,对于沿着剂量分布的每个选定点,执行搜索以确定一维剂量分布。该搜索捕获垂直于多边形边缘的方向上的局部剂量变化、以及可以量化为与二进制前景和背景幅度不同的剂量水平的值。选择二进制前景和背景幅度作为分别应用于最内部轮廓内部和最外部轮廓外部的剂量。
81.在框830处,生成基于切割线矢量的表示。掩模合成引擎110生成基于切割线矢量的表示。给定点处的切割线表示包括带符号的垂直方向上远离对应掩模的边缘的距离以及该距离的对应剂量值。在一个示例中,图像文件的梯度用于确定图像文件表面的法线方向。确定标距长度沿着远离选定点的法线方向的局部变化。梯度和标距长度代表切割线矢量的方向和长度。在一个示例中,以等距间隔步长沿着标距长度(例如,线段)执行采样。在另一示例中,图像文件使用高斯函数近似以构建要针对选定点而存储的值的表。在一个示例中,剂量值(或水平)使用基函数进行参数化并且以表格格式存储。例如,量规端点坐标(例如,量规的线段的两端)用于使用基函数对剂量水平进行参数化。在另一示例中,直方图区间与剂量水平相关联。每个剂量水平的项都在直方图区间中进行。在一个示例中,针对沿着有限长度的量规的局部剂量变化,生成高斯函数表示或其他形状的函数表示。高斯函数表示或其他形状的函数表示是通过沿着量规对剂量分布进行采样并使用数学模型拟合回归技术将高斯函数或其他数学函数拟合到分布来生成的。在另一示例中,二维表示可以存储在选定点的本地,作为剂量的局部像素化表示或参数化功能表示。例如,可以利用二维高斯函数或其他基函数的叠加。
82.图9图示了剂量分布900,其中点902在剂量分布900的边缘周围。点902与掩模多边形周围的垂直量规相对应。每个点902的量规可以用于靠近点902中的每个点902的多边形
的部分。点902a与曲线图910相对应,而点902b与曲线图920相对应。曲线图910和920图示了分别位于点902a和902b的剂量分布900的切割线。在曲线图910和920中,不同的条高度与不同的剂量值(例如,水平)相对应。
83.与图6的方法600相比较,图8的方法800可以生成在数据大小上更小的剂量图。例如,剂量分布900包括比图7的剂量分布710的多边形顶点数目更少的多边形顶点。此外,当多边形之间的距离沿着多边形边缘的长长度不变时,图7中所示的同心多边形包含冗余信息。在一个示例中,如果图7中的同心多边形是等距的,如关于图9所描述的剂量分布能够用一个多边形和单个标距长度表示相同的信息。因此,剂量分布900的总数据大小小于图7的数据大小,并且能够传达相同的信息。
84.图10图示了根据一个或多个示例的用于矢量文件格式的输出剂量信息的方法1000的流程图。方法1000由图1的掩模合成引擎110执行。进一步地,方法1000作为图11的掩模数据准备1132的一部分执行。
85.在框1010处,接收ic芯片设计。在框1012和1014处,生成剂量图和晶片图像,并且在框1016处,生成晶片目标。在框1018处,比较晶片图像和晶片目标,并且在框1020处,作出晶片图像和晶片目标是否会聚的确定。基于确定晶片图像和晶片目标不会聚,在框1022处修改剂量图并且在框1014处根据经修改的剂量图生成经更新的晶片图像。框1010、1012、1014、1016、1018、1020和1022与图3的方法300的框310、312、314、316、318、320和322相对应。
86.在框1024处,剂量信息被转换为基于矢量的格式。框1024与图5的方法500的框540相对应。在框1026处,输出矢量文件格式的剂量信息和掩模矢量文件。框1026与图5的方法500的框550相似。
87.图11图示了在设计、验证和制作诸如集成电路之类的制品期间用于变换和验证表示集成电路的设计数据和指令的示例过程集1100。这些过程中的每个过程都可以被构造和实现为多个模块或操作。术语

eda’表示“电子设计自动化”。这些过程开始于使用设计者所供应的信息创建产品创意(1110),对该信息进行变换以创建使用eda过程集的集成电路(1112)。当完成设计时,该设计可以下线(1134),这是将集成电路的图稿(例如,几何图案)发送到制作工厂以制造掩模集,该掩模集然后用于制造集成电路。在下线后,制作半导体管芯(1136)。执行封装和组装过程(1138),以产生成品集成电路(1140)。
88.电路或电子结构的规范范围可能从低级晶体管材料布局到高级描述语言。高级表示可以用于使用诸如vhdl、verilog、systemverilog、systemc、myhdl或openvera之类的硬件描述语言(

hdl’)设计电路和系统。hdl描述可以变换为逻辑级寄存器传输级(

rtl’)描述、门级描述、布局级描述、或掩模级描述。作为不太抽象描述的每个较低的抽象级将更多有用的细节(例如,包括该描述的模块的更多细节)添加到设计描述中。作为不太抽象描述的较低抽象级可以通过计算机生成,根据设计库导出,或由另一设计自动化过程创建。用于指定更详细描述的处于较低抽象级语言的规范语言的示例为spice,该spice用于使用许多类似部件对电路进行详细描述。实现处于每个抽象级的描述以供该层的对应工具(例如,形式验证工具)使用。设计过程可以使用图11中描绘的顺序。所描述的过程可以通过eda产品(或工具)实现。
89.在系统设计期间(1114),指定要制造的集成电路的功能性。可以针对诸如功耗、性
能、面积(物理和/或代码行)以及损耗减少等之类的期望特点对设计进行优化。在该阶段,设计可以划分为不同类型的模块或部件。
90.在逻辑设计和功能验证期间(1116),按一种或多种描述语言指定电路中的模块或部件,并且检查该规范的泛函准确性。例如,可以验证电路的部件以生成与所设计的电路或系统的规范要求相匹配的输出。泛函验证可以使用模拟器和其他程序,诸如测试台发生器、静态hdl检查器、以及形式验证器。在一些示例中,被称为

仿真器’或

原型设计系统’的特殊部件系统用于加速泛函验证。
91.在合成和测试设计期间(1118),hdl代码被变换为网表。在一些示例中,网表可以是图形结构,其中图形结构的边缘表示电路的部件,并且其中图形结构的节点表示部件之间的互连方式。hdl代码和网表两者均为分层制品,eda产品可以使用这些制品来验证集成电路在制造时根据指定设计执行。可以针对目标半导体制造技术对网表进行优化。附加地,可以对成品集成电路进行测试,以验证集成电路满足规范要求。
92.在网表验证期间(1120),网表被检查以遵守时序约束并且与hdl代码相对应。在设计规划期间(1122),针对时序和顶层布线,构造并分析集成电路的总体平面图。
93.在布局或物理实现期间(1124),物理放置(诸如晶体管或电容器之类的电路部件的定位)和布线(电路部件通过多个导体的连接)出现,并且可以执行从库中选择单元以实现特定逻辑函数。如本文中所使用的,术语

单元’可以指定提供布尔逻辑函数(例如,and、or、not、xor)或存储函数(例如,触发器或闩锁)的一组晶体管、其他部件和互连。如本文中所使用的,电路

块’可以是指两个或更多个单元。单元和电路块均可以称为模块或部件,并且可以用作物理结构和模拟两者。为(基于

标准单元’)所选择的单元指定诸如大小之类的参数,并且这些参数在数据库中可供访问,以供eda产品使用。
94.在分析和提取期间(1126),以布局级验证电路功能,该电路功能准许对布局设计进行细化。在物理验证期间(1128),检查布局设计以确保制造约束正确,诸如设计规则检查(drc)约束、电气约束、光刻约束、并且电路系统功能与hdl设计规范相匹配。在分辨率增强期间(1130),变换布局的几何形状以改进电路设计的制造方式。
95.在下线期间,创建数据以用于生产光刻掩模(如果适当,则在应用光刻增强之后)。在掩模数据准备期间(1132),

下线’数据用于生产光刻掩模,这些光刻掩模用于生产成品集成电路。
96.计算机系统(诸如图12的计算机系统1200)的存储子系统可以用于存储本文中所描述的一些或所有eda产品以及用于开发库的单元的以及使用该库的物理和逻辑设计的用于程序和数据结构的产品。
97.图12图示了计算机系统1200的示例,在该计算机系统1200内,可以执行用于使得计算机系统执行本文中所讨论的方法中的任一个或多个方法的指令集。在备选实现方式中,机器可以连接(例如,联网)到局域网(lan)、内联网、外联网和/或互联网中的其他机器。该机器可以在客户端-服务器网络环境中以服务器或客户端机器的能力操作,作为对等(或分布式)网络环境中的对等机器进行操作,或作为云计算基础架构或环境中的服务器或客户端机器进行操作。
98.机器可以是个人计算机(pc)、平板电脑、机顶盒(stb)、个人数字助理(pda)、蜂窝电话、web设备、服务器、网络路由器、交换机或网桥、或能够(顺序或其他方式)执行指令集
的任何机器,这些指令指定该机器要进行的动作。进一步地,虽然图示了单个机器,但是术语“机器”还应当被认为包括任何机器集合,这些机器单独或共同执行一个(多个)指令集以执行本文中所讨论的方法中的任一个或多个方法。
99.示例计算机系统1200包括处理设备1202、主存储器1204(例如,只读存储器(rom)、闪存、诸如同步dram(sdram)之类的动态随机存取存储器(dram)、静态存储器1206(例如,闪存、静态随机存取存储器(sram)等)、以及数据存储设备1218,它们经由总线1230相互通信。
100.处理设备1202表示一个或多个处理器,诸如微处理器、中央处理器等。更具体地,处理设备可以是或包括复杂指令集计算(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器、实现其他指令集的处理器、或实现指令集的组合的处理器。处理设备1202还可以是一个或多个专用处理设备,诸如专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、网络处理器等。处理设备1202可以被配置为执行指令1226,这些指令1226用于执行本文中所描述的操作和步骤。
101.计算机系统1200还可以包括用于通过网络1220通信的网络接口设备1208。计算机系统1200还可以包括视频显示单元1210(例如,液晶显示器(lcd)或阴极射线管(crt))、字母数字输入设备1212(例如,键盘)、光标控制设备1214(例如,鼠标)、图形处理单元1222、信号生成设备1216(例如,扬声器)、图形处理单元1222、视频处理单元1228、以及音频处理单元1232。
102.数据存储设备1218可以包括机器可读存储介质1224(还称为非暂态计算机可读介质),其上存储有体现本文中所描述的方法或函数中的任一个或多个方法或函数的一个或多个指令集1226或软件。在计算机系统1200执行指令1226期间,该指令1226还可以全部或至少部分驻留在主存储器1204内和/或处理设备1202内,主存储器1204和处理设备1202还包括机器可读存储介质。
103.在一些实现方式中,指令1226包括用于实现与本公开相对应的指令。虽然在示例实现方式中,机器可读存储介质1224被示为单个介质,但是术语“机器可读存储介质”应当被认为包括存储一个或多个指令集的单个介质或多个介质(例如,集中式数据库或分布式数据库、和/或相关联的高速缓存和服务器)。术语“机器可读存储介质”还应当被认为包括能够存储或编码指令集以供计算机系统执行并且使得机器和处理设备1202执行本公开的方法中的任一个或多个方法的任何介质。因而,术语“机器可读存储介质”应当被认为包括但不限于固态存储器、光学介质、以及磁性介质。
104.已经根据对计算机存储器内的数据位的操作的算法和符号表示来呈现前述详细描述的一些部分。这些算法描述和表示是数据处理领域技术人员用来最有效地向本领域其他技术人员传达其工作实质的方式。算法可以是导致期望结果的操作顺序。这些操作是需要对物理数量进行物理操纵的操作。这样的数量可以采取能够被存储、组合、比较以及以其他方式操纵的电信号或磁信号的形式。这样的信号可以被称为位、值、元件、符号、字符、项、数字等。
105.然而,应当记住,所有这些和类似术语均要与适当物理数量相关联,并且仅是应用于这些数量的方便标签。根据本公开显而易见的是,除非另外明确指出,否则应当领会,在整个说明书中,某些术语是指计算机系统或类似电子计算设备的动作和过程,该动作和过程操纵表示为计算机系统的寄存器和存储器内的物理(电子)数量的数据并且将它们变换
为同样表示为计算机系统存储器或寄存器或其他此类信息存储设备内的物理数量的其他数据。
106.本公开还涉及一种用于执行本文中的操作的装置。该装置可以针对预期目的而专门构造,或该装置可以包括由计算机中存储的计算机程序选择性地激活或重新配置的计算机。这种计算机程序可以存储在计算机可读存储介质中,诸如但不限于包括软盘、光盘、cd-rom和磁光盘在内的任何类型的磁盘、只读存储器(rom)、随机存取存储器(ram)、eprom、eeprom、磁卡或光卡、或适用于存储电子指令的任何类型的介质,每个类型的介质都耦合到计算机系统总线。
107.本文中所提出的算法和显示器与任何特定计算机或其他装置没有固有联系。各种其他系统可以与根据本文中的教导的程序一起使用,或可以证明构造更专门的装置来执行该方法是方便的。另外,没有参考任何特定编程语言对本公开进行描述。应当领会,多种编程语言可以用于实现如本文中所描述的本公开的教导。
108.可以提供本公开作为计算机程序产品或软件,该计算机程序产品或软件可以包括其上存储有指令的机器可读介质,这些指令可以用于对计算机系统(或其他电子设备)进行编程以执行根据本公开的过程。机器可读介质包括用于存储呈机器(例如,计算机)可读的形式的信息的任何机制。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质,诸如只读存储器(“rom”)、随机存取存储器(“ram”)、磁盘存储介质、光学存储介质、闪存设备等。
109.在前述公开中,已经参考本公开的具体示例实现方式对本公开的实现方式进行了描述。显而易见的是,在没有背离如所附权利要求书中阐述的本公开的更广泛的精神和范围的情况下,可以对这些实现方式做出各种修改。在本公开是指单数意义的一些元件的情况下,在附图中可以描绘一个以上的元件,并且相似的元件使用相似的数字标记。因而,本公开和附图应当被视为具有说明意义,而非限制意义。