虚设图案自动生成方法 【技术领域】
本发明涉及一种掩模图案设计中的虚设图案(dummy pattern)自动生成方法,具体而言,涉及一种在掩模图案设计中自动生成要排列的虚设图案以提高半导体衬底的表面平面度的方法。背景技术
近年来,集成电路中连接元件的布线已经变得更加纤细,为了构造高精度的纤细图案,需要半导体衬底具有令人满意的平面度。
例如,在形成波纹互连的时候,使用下面的方法:在硅衬底表面上的绝缘膜中形成布线的凹槽,在用作布线的金属沉积覆盖整个表面以填满凹槽后,通过化学机械研磨(CMP)除去凹槽以外的金属,从而使表面平坦。CMP抛光过程在凹槽密度(即布线密度)高的地方快,在密度低的地方满。因此,如果凹槽排列不规则,则抛光不能均匀地进行。于是,抛光后布线膜的厚度在凹槽密度高的区域变小,在凹槽密度低地区域变大。布线膜厚度的不均匀导致布线电阻的不规则度增加,这是不合需要的。
为了在这点上有所改进,通常使用以下技术:为了防止膜厚度的不均匀,通过预先在布线图案(对应于凹槽)薄的部分提供虚设图案,使抛光时的凹槽密度均匀。例如,如图1A所示,日本专利公开No.5-343546公开了一种技术,用于在不存在布线的空白区域的X方向和Y方向上排列方形图案以构造虚设图案。另外,如图2A所示,还有一种技术,为了进一步提高平坦效果,使每一行和列的虚设图案变位以排列虚设图案。
在这些技术中,由于将同形状同尺寸的方形图案用作虚设图案,所以可以容易地自动生成虚设图案。虚设图案的自动生成以下述方式完成。首先,将包含高密度布线图案的区域设置为虚设禁止区(图1A中的6和图2A中的8),其中禁止排列虚设图案。接下来,在整个掩模图案区域的表面上排列虚设图案(图1A中的7和图2A中的9)。接下来,除去接触或覆盖虚设禁止区的虚设图案。以这种方式,在不存在虚设禁止区6和8的空白区域中生成了虚设图案7和9。
但是,在上述现有的虚设图案及其自动生成方法中,由于虚设图案的尺寸和虚设禁止区的位置之间的关系,在应排列虚设图案的区域中可能没有生成虚设图案。图1A和2A显示了设置的虚设禁止区之间的间距比虚设图案的X方向尺寸大两个栅格的情况。
这里,在栅格(布线栅格)10中,一个栅格表示标准布线图案的布线宽度,也表示两个相邻布线图案之间应该有的标准布线间距。也就是说,布线的最小间距是两个栅格。但是,这里显示的栅格、布线宽度和布线间距之间的关系只是出于方便。当应用于实际布线时,布线图案可以通过增厚处理或类似处理而调整,只要布线的最小间距是两个栅格,例如,布线宽度是(1个栅格+α)而布线间距是(1个栅格-α)。
在图1A或图2A中,由于虚设禁止区之间的间距稍微大于虚设图案的X方向尺寸,所以在去除接触或覆盖虚设禁止区6的虚设图案后,在两个虚设禁止区之间生成了不排列虚设图案的区域,如图1B或图2B所示。
如果将虚设图案最小化到,例如,一个栅格的尺寸,则即使虚设禁止区之间的间距小也可以确保排列虚设图案虚设。但是,因为最小化虚设图案的尺寸会显著地增加虚设图案的数据量,所以并不可取。
作为与本发明相关的另一项技术,日本专利公开No.2001-176959公开了一种技术,用于根据应该排列虚设图案的区域的空白面积,适当地排列大小两种类型的虚设图案。也就是,在图1B或图2B的虚设禁止区之间,大尺寸的虚设图案排列在面积大的空白区域中,小尺寸的虚设图案排列在面积小的空白区域中。以这种方式,通过合适地使用大小两种类型的虚设图案虚设图案,即使在虚设禁止区之间的间距小的区域中也可以控制数据量的增长并排列虚设图案。但是,日本专利公开No.2001-176959没有公开自动实现而非手工完成这种虚设图案的排列的方法。
作为与本发明相关的另一项技术,日本专利公开No.2001-351984公开了一种技术,其中逐渐改变掩模图案的布局数据及虚设图案模型的覆盖位置,由此可以提高虚设图案排列部分中包含虚设图案模型的基本元件的概率,并减少虚设图案的未填充部分。但是,在日本专利公开No.2001-351984中也没有对自动排列虚设图案的具体描述。
在近年的集成电路中,元件变得更小,且包含大量布线栅格,不可能手动完成虚设图案排列过程的所有或重要部分。因此,在使用虚设图案的情况下,虚设图案的自动生成是一项关键技术。发明内容
本发明考虑到了上述情况,本发明的一个目标是提供一种虚设图案的自动生成方法,可以在虚设禁止区间距小的区域中排列虚设图案,并控制数据量的增加。
根据本发明的第一个方面的虚设图案自动生成方法包括:第一步,准备多个具有规则排列的虚设图案的虚设图案元件,且根据预定的规则对这些元件设置优先级;第二步,从多个虚设图案元件中选择一个,并排列属于被选的虚设图案元件的虚设图案,使其覆盖设置了排列禁止区的掩模图案的布局数据;第三步,从排列的虚设图案中去除接触或覆盖排列禁止区的虚设图案;和第四步,在多个虚设图案互相接触或覆盖的情况下,去除属于具有低优先级的虚设图案元件的虚设图案。
根据本发明的第二个方面的虚设图案自动生成方法包括:第一步,准备基本虚设图案元件,其具有在布线栅格上规则排列的虚设图案;第二步,预先排列基本虚设图案元件的虚设图案,使其覆盖布线栅格上排列的掩模图案布局数据,从而这两个布线栅格互相重合;第三步,从基本虚设图案元件的虚设图案中去除接触或覆盖排列禁止区的虚设图案;第四步,在X方向和Y方向上分别使基本虚设图案元件的虚设图案移动一个布线栅格,从而建立新的虚设图案元件;第五步,排列新虚设图案元件的虚设图案,使得布线栅格与掩模图案布局数据相一致;第六步,从新虚设图案元件的虚设图案中去除接触或覆盖排列禁止区的虚设图案;第七步,从新虚设图案元件的虚设图案中,去除与第五步之前排列的虚设图案接触或覆盖的虚设图案;和第八步,判断第四至第七步是否重复了预定的次数,如果这些步骤没有重复预定的次数,则返回第四步,将新虚设图案元件作为基本虚设图案元件。
结合附图及权利要求书阅读说明书,可以更清楚地理解本发明的上述以及其它目标和相关特征。附图简介
为了更好地理解附图,下面简要介绍在详细介绍本发明中使用的各个附图,附图中:
图1A是一个布局示意图,用于解释现有的虚设图案的排列及自动生成方法;
图1B是一个布局示意图,用于解释现有的虚设图案自动生成方法中的问题;
图2A是一个布局示意图,用于解释现有的虚设图案的排列及自动生成方法;
图2B是一个布局示意图,用于解释现有的虚设图案自动生成方法中的问题;
图3是可以实现本发明的方法的装置的示例性结构框图;
图4是根据本发明第一个方面的第一实施例的流程图;
图5A是显示具有大尺寸虚设图案的虚设图案元件的例子的示意图;
图5B是显示具有小尺寸虚设图案的虚设图案元件的例子的示意图;
图6A是排列大尺寸虚设图案时,在流程图图4中的步骤S5处理之后的布局示意图;
图6B是排列大尺寸虚设图案时,在流程图图4中的步骤S6处理之后的布局示意图;
图7A是排列小尺寸虚设图案时,在流程图图4中的步骤S5处理之后的布局示意图;
图7B是排列小尺寸虚设图案时,在流程图图4中的步骤S6处理之后的布局示意图;
图8是排列小尺寸虚设图案时,在流程图图4中的步骤S7处理之后的布局示意图;
图9是根据本发明第一个方面的第二实施例的流程图;
图10A是排列与图5A中虚设图案元件不同的大尺寸虚设图案的例子的示意图;
图10B是排列与图5B中虚设图案元件不同的小尺寸虚设图案的例子的示意图;
图11A是在流程图图9中步骤S14的处理之后的布局示意图;
图11B是在流程图图9中步骤S16的处理之后的布局示意图;
图12是根据本发明第一个方面的第三实施例的流程图;
图13是显示虚设图案的基本虚设图案元件的例子的示意图;
图14是在基本虚设图案元件中的虚设图案以及通过重复流程图图12中的步骤S22至S23而建立的多个虚设图案元件虚设图案的排列示意图;
图15A是在流程图图12中的步骤S25应用于优先级最高的虚设图案元件的处理后的布局示意图;
图15B是在流程图图12中的步骤S26应用于优先级最高的虚设图案元件的处理后的布局示意图;
图16A是在流程图图12中的步骤S25应用于优先级次高的虚设图案元件的处理后的布局示意图;
图16B是在流程图图12中的步骤S27应用于优先级次高的虚设图案元件的处理后的布局示意图;
图17A是在流程图图12中的步骤S25应用于优先级第四的虚设图案元件的处理后的布局示意图;
图17B是在流程图图12中的步骤S27应用于优先级第四的虚设图案元件的处理后的布局示意图;
图18是根据本发明第一个方面的第四实施例的流程图;和
图19是根据本发明第二个方面的实施例的流程图。具体实施方式
下面参考附图详细介绍本发明的最佳实施例。需要注意,下面的描述说明的是本发明的实施例,本发明不应理解为限制于下面的描述。
图3是可以实现本发明方法的装置的结构例的框图。图中,标号11表示计算机;12表示存储器,用来存储计算机11中提供的程序,本发明的方法在该程序中描述。标号13表示虚设图案数据文件,用于存储虚设图案元件。标号14表示掩模图案数据文件,用于存储掩模图案的布局数据。
图4是根据本发明的第一个方面的第一实施例的流程图。根据说明的需要,参考图5A及5B、图6A、6B、7A、7B和8,依照流程图图4描述第一实施例,其中图5A和5B显示了虚设图案元件,图6A、6B、7A、7B和8是对应于图4的主要步骤的布局示意图。
首先,在步骤S1中,准备多个具有不同尺寸虚设图案的虚设图案元件。在本实施例中,如图5A和5B所示,有两种类型的虚设图案元件,它们存储在虚设图案数据文件14中,并分别被指定为不同的层。在步骤S1中,计算机11读入两个虚设图案元件。在如图5A所示的虚设图案元件中,大的虚设图案1以矩阵形状规则排列在布线栅格(后面简称为栅格)10上。在如图5B所示的虚设图案元件中,小的虚设图案2以矩阵形状规则排列在栅格10上。
本实施例的栅格10中,一个栅格表示标准布线图案的布线宽度,也表示两个相邻布线图案间应具有的标准布线间距。即,布线的最小间距是两个栅格。但是,这里显示的栅格、布线宽度和布线间距之间的关系只是出于方便的原因。当应用于实际布线时,布线图案可以通过增厚处理或类似处理而调整,只要布线的最小间距是两个栅格,例如,布线宽度是(一个栅格+α)而布线间距是(一个栅格-α)。
接下来,在步骤S2中,按照虚设图案的尺寸顺序,对准备的多个虚设图案元件设置虚设图案元件优先级。将图5A中显示的虚设图案元件设置为较高的优先级,将图5B中显示的虚设图案元件设置为较低的优先级。
根据步骤S1和S2准备了多个设置有优先级的虚设图案元件。
接下来,在步骤S3中,计算机11从掩模图案数据文件13中读入掩模图案布局数据,且计算机11在掩模图案布局数据中设置虚设图案排列禁止区。如图6A所示,在栅格10上设置排列禁止区3。排列禁止区3是由于,例如,栅格已经被布线图案占用等原因而不允许排列虚设图案的区域。
接下来,在步骤S4中,计算机11从未选择的虚设图案元件中选择优先级最高的虚设图案元件。图5A的虚设图案元件被选择。
接下来,在步骤S5中,计算机11排列所选择的虚设图案元件的大虚设图案1,使其覆盖掩模图案布局数据。如布局示意图图6A所示,大虚设图案1被排列在掩模图案布局数据上,使得虚设图案元件的栅格和掩模图案布局数据的栅格互相重合。
接下来,在步骤S6中,当大的虚设图案1接触或覆盖排列禁止区3时,计算机11去除大的虚设图案。去除接触或覆盖排列禁止区3的大虚设图案的过程是通过图形操作(graphic operation)完成的。例如,排列禁止区3分别在X方向和Y方向扩大,扩大的尺寸为大虚设图案1的尺寸,将包括在扩大后的排列禁止区内的大虚设图案1设置为去除对象。如布局示意图6B所示,由于覆盖排列禁止区3的大虚设图案1已经被去除,这一步中没有在两个排列禁止区3之间排列大虚设图案1。
接下来,在步骤S7中,如果多个虚设图案互相接触或覆盖,则计算机11保留属于具有较高优先级的虚设图案元件的虚设图案,只去除属于具有较低优先级的虚设图案元件的虚设图案。由于排列的虚设图案只是图6B中的大虚设图案1,所以计算机11进行到步骤S8。
在步骤S8中,计算机11判断是否存在未被选择的虚设图案元件。由于图5B中显示的具有小虚设图案2的虚设图案元件未被选择,所以计算机11返回步骤S4。
在步骤S4中,计算机11选择具有图5B中显示的小虚设图案的虚设图案元件,它们是未被选择的虚设图案元件。
在步骤S5中,计算机11排列所选择的虚设图案元件的虚设图案2,使其覆盖掩模图案布局数据。如布局示意图7A所示,虚设图案2排列在掩模图案布局数据上,从而虚设图案元件的栅格和掩模图案布局数据的栅格相互重合。
接下来,在步骤S6中,计算机去除接触或覆盖排列禁止区3的小虚设图案2,并得到如示意图图7B所示的布局。
在步骤S7中,如果多个虚设图案互相接触或覆盖,则计算机11保留属于具有较高优先级的虚设图案元件的大虚设图案1,并去除属于较低优先级的虚设图案元件的小虚设图案2。结果得到如示意图图8所示的布局。对接触或覆盖大虚设图案1的小虚设图案2的去除过程是通过绘图操作完成的。例如,大虚设图案1分别在X方向和Y方向上扩大一个小虚设图案2的尺寸,将包含在扩大后的大虚设图案中的小虚设图案2设置为去除对象。
接下来,在步骤S8中,计算机11判断是否存在未选择的虚设图案元件。由于没有未选择的虚设图案元件,计算机11结束虚设图案的生成。
根据本实施例的方法,如布局示意图图8所示,由于在两个排列禁止区3之间排列小虚设图案2而在大面积的空白区域中排列大虚设图案1,所以实现了虚设图案的自动生成方法,即使在相邻两个虚设禁止区的间距小的区域内也可以排列虚设图案,还可以控制数据量的增长。为了在相邻两个虚设禁止区的间距小的区域内稳妥地排列虚设图案,希望将属于最低优先级的虚设图案元件的虚设图案(即最小的虚设图案)的尺寸设置为与栅格相同的尺寸。
在本实施例中,为了简化解释,描述了有两个虚设图案元件的情况。但是,图4的流程也可以在具有三个或更多虚设图案元件的情况下实现。注意,图4的步骤S3可以在步骤S1之前进行。另外,在本实施例的说明中,解释了虚设图案及排列禁止区排列在栅格上的情况。但是,图4的流程不限于此,而是可以应用于不用栅格而排列虚设图案及排列禁止区的情况。
接下来,将介绍根据本发明的第一个方面的第二实施例。图9是根据本发明第一个方面的第二实施例的流程图。第二实施例与第一实施例的不同之处在于:在排列了多个虚设图案元件的所有虚设图案之后,去除一些虚设图案。
首先,在步骤S11中,准备多个具有不同尺寸的虚设图案的虚设图案元件。
接下来,在步骤S12中,按照虚设图案的大小顺序,为准备的多个虚设图案元件设置虚设图案元件优先级。
根据步骤S11和S12准备设置有优先级的多个虚设图案元件。
接下来,在步骤S13中,计算机11从掩模图案数据文件13中读入掩模图案布局数据,且计算机11在掩模图案布局数据中设置虚设图案排列禁止区。步骤S11至S13与第一实施例的步骤S1至S3相同。
接下来,在步骤S14中,计算机11排列所有虚设图案元件中包含的虚设图案,使其覆盖掩模图案布局数据。
接下来,在步骤S15中,当排列的虚设图案接触或覆盖排列禁止区3时,计算机11与虚设图案的优先级无关地去除虚设图案。
接下来,在步骤S16中,如果多个虚设图案互相接触或覆盖,则计算机11保留属于具有较高优先级的虚设图案元件的虚设图案,并去除属于具有较低优先级的虚设图案元件的虚设图案。
根据第二实施例的图9的流程,实现了虚设图案的自动生成方法,该方法在相邻两个虚设禁止区的间距小的区域内也可以排列虚设图案,还可以控制数据量的增长,正如布局示意图11B中所示,与第一实施例相同。在本实施例中,为了在相邻两个虚设禁止区的间距小的区域内稳妥地排列虚设图案,希望将属于最低优先级的虚设图案元件的虚设图案(即最小的虚设图案)的尺寸设置为与栅格相同的尺寸。注意,图9的步骤S13可以在步骤S11之前进行。另外,在本实施例的说明中,解释了虚设图案和排列禁止区排列在栅格上的情况。但是图9的流程不限于此,而是可以应用于不用栅格而排列虚设图案和排列禁止区的情况。
在第一和第二实施例中,虚设图案元件中的虚设图案的排列不限于图5A和5B中所示的矩阵排列,而是可以如图10A和10B排列,只要保证虚设图案规则排列即可。
图11A是在这种情况下完成步骤S14后的布局示意图,具有大虚设图案21的虚设图案元件如图10A所示,具有小虚设图案22的虚设图案元件如图10B所示,根据图9的流程进行虚设图案的自动生成。图11B是完成流程图图9中步骤S16之后的布局示意图。注意,第二实施例的图9的流程可以在有三个或更多虚设图案元件的情况下执行。
接下来,将介绍本发明的第一个方面的第三实施例。图12是根据本发明的第一个方面的第三实施例的流程图。根据说明的需要,下面参考图13、图14以及图15A、15B、16A、16B、17A和17B,根据图12的流程图介绍第三实施例,其中图13显示了基本虚设图案元件,图14显示了基本虚设图案元件以及在基本虚设图案元件的基础上建立的多个虚设图案元件,图15A、15B、16A、16B、17A和17B是对应于图12的主要步骤的布局示意图。
首先,在步骤S21中,准备基本虚设图案元件,在图13所示的基本虚设图案元件31-1中,虚设图案4-1以矩阵形状规则地排列在栅格10上。
接下来,在步骤S22中,计算机11将基本虚设图案元件的虚设图案在X方向和Y方向上分别移动一个栅格,从而创建新的虚设图案元件,并令其优先级比基本虚设图案元件的优先级低一级。
在步骤S23中,计算机11判断是否已经创建了预定数目的虚设图案元件。如果创建的虚设图案元件的数目少于预定数目,则计算机11用新创建的虚设图案元件取代基本虚设图案元件虚设图案,并返回步骤S22。如果创建的虚设图案元件的数目已经达到了预定数目,则计算机11进行到步骤S24。
通过执行步骤S21至S23,如图14所示,准备了多个设置有优先级的虚设图案元件。在图14中,标号31-1表示基本虚设图案元件,31-2表示通过在X方向和Y方向上将虚设图案元件31-1的虚设图案4分别移动一个栅格而创建的虚设图案元件。标号31-3表示通过在X方向和Y方向上将虚设图案元件31-2的虚设图案4分别移动一个栅格而创建的虚设图案元件。标号31-4表示通过在X方向和Y方向上将虚设图案元件31-3的虚设图案4分别移动一个栅格而创建的虚设图案元件。标号31-5表示通过将虚设图案元件31-4的虚设图案4分别移动一个栅格而创建的虚设图案元件。
接下来,在步骤S24中,计算机11从掩模图案数据文件13中读入掩模图案布局数据,且计算机11在掩模图案布局数据中设置虚设图案排列禁止区。如图15A中所示,排列禁止区5设置在栅格10上。
接下来,在步骤S25中,计算机11从未被选择的虚设图案元件中选择具有最高优先级的虚设图案元件。图14的虚设图案元件31-1被选择。
接下来,在步骤S26中,计算机11排列被选择的虚设图案元件31-1的虚设图案4,使其覆盖掩模图案布局数据。如图15的布局示意图所示,虚设图案4-1排列在掩模图案布局数据上,使得虚设图案元件31-1的栅格和掩模图案布局数据的栅格相互重合。
接下来,在步骤S27中,当排列的虚设图案4-1接触或覆盖排列禁止区5时,计算机11去除虚设图案4-1。结果,如图15B的布局示意图所示,覆盖排列禁止区5的虚设图案4-1被去除,且虚设图案4-1未被排列在两个排列禁止区5之间。
接下来,在步骤S28中,如果多个虚设图案互相接触或覆盖,计算机11保留属于优先级较高的虚设图案元件的虚设图案,去除属于优先级较低的虚设图案元件的虚设图案。由于图15B中排列的虚设图案只是属于虚设图案元件31-1的虚设图案4-1,所以计算机11进入步骤S29。
在步骤S29中,计算机11判断是否有未被选择的虚设图案元件。由于虚设图案元件31-2至31-5未被选择,所以计算机11返回步骤S25。
在步骤S25中,计算机11选择图14的虚设图案元件31-2,它是未被选择的虚设图案元件。
在步骤S26中,计算机11排列被选择的虚设图案元件31-2的虚设图案4-2,使其覆盖掩模图案布局数据。正如图16A的布局示意图所示,属于虚设图案元件31-2的虚设图案4-2排列在掩模图案布局数据上,使得虚设图案元件的栅格与掩模图案布局数据的栅格相互重合。
在步骤S27和S28中,由于在本实施例中去除了所有的虚设图案4-2,所以得到如示意图16B所示的布局。
由于在步骤S29中判断出有未被选择的虚设图案元件,所以计算机11返回步骤S25,并选择虚设图案元件31-3,以执行步骤直至S29。由于属于虚设图案元件31-3的虚设图案4-3在步骤S27和S28中被去除,所以步骤S28完成后的布局示意图与图16B相同。
接下来,由于在步骤S29中判断出有未被选择的虚设图案元件,所以计算机11返回步骤S25并选择虚设图案元件31-4。
在步骤S26中,计算机11排列被选择的虚设图案元件31-4的虚设图案4-4,使其覆盖掩模图案布局数据。如图17A的布局示意图所示,属于虚设图案元件31-4的虚设图案4-4排列在掩模图案布局数据上,使得虚设图案元件的栅格与掩模图案布局数据的栅格互相重合。
在步骤S27中,当排列的虚设图案4-4接触或覆盖排列禁止区5时,计算机11去除虚设图案4-4。在步骤S28中,如果多个虚设图案互相接触或覆盖,则计算机11保留属于优先级较高的虚设图案元件的虚设图案,并去除属于优先级较低的虚设图案元件的虚设图案。结果,虚设图案4-4,而不是排列在两个排列禁止区5之间的虚设图案,被去除,得到如示意图17B所示的布局。
由于步骤S29中判断出有未被选择的虚设图案元件,所以计算机11返回步骤S25,并选择虚设图案元件31-5,执行直至S29的步骤。由于在步骤S27和S28中去除了属于虚设图案元件31-5的虚设图案4-5,所以完成步骤S28后的布局示意图与图17B相同。由于步骤S29中判断出没有未被选择的虚设图案元件,计算机11结束虚设图案的自动生成。
根据本实施例的方法,如图17B的布局示意图所示,由于虚设图案4-4排列在两个排列禁止区5之间,且虚设图案4-1排列在大面积的空白区域内,所以实现了虚设图案的自动生成方法,该方法在相邻两个虚设禁止区的间距小的区域内也可以排列虚设图案,还可以控制数据量的增长。注意,图12的步骤S24可以在步骤S21之前进行。
接下来,介绍根据本发明的第一个方面的第四实施例。图18是根据本发明的第一个方面的第四实施例的流程图。第四实施例与第三实施例的不同之处在于:在排列了多个虚设图案元件的所有虚设图案后,去除一些虚设图案。
首先,在步骤S31中,准备基本虚设图案元件。同第三实施例一样,假设图13中的虚设图案元件31-1是基本虚设图案元件。
接下来,在步骤S32中,计算机11通过在X方向和Y方向上分别将基本虚设图案元件的虚设图案移动一个栅格,创建新的虚设图案元件,并令其优先级比基本虚设图案元件的优先级低一级。
在步骤S33中,计算机11判断是否已经创建了预定数目的虚设图案元件。如果创建的虚设图案元件的数目少于预定的数目,则计算机11将基本虚设图案元件替换为新创建的虚设图案元件,并返回步骤S32。如果创建的虚设图案元件的数目已经达到预定的数目,计算机11进入步骤S34。
通过执行步骤S31至S33,如图14所示,准备了多个分别设置有不同优先级的虚设图案元件。
接下来,在步骤S34中,计算机11从掩模图案数据文件13中读入掩模图案布局数据,且计算机11在掩模图案布局数据中设置虚设图案排列禁止区。
接下来,在步骤S35中,计算机11排列包含在所有虚设图案元件中的虚设图案,使其覆盖掩模图案布局数据。每一虚设图案元件的虚设图案都排列在掩模图案布局数据上,使得虚设图案元件的栅格和掩模图案布局数据的栅格相互重合。
接下来,在步骤S36中,当排列的虚设图案4-1接触或覆盖排列禁止区5时,计算机11去除虚设图案。
接下来,在步骤S37中,如果多个虚设图案互相接触或覆盖,则计算机11保留属于优先级较高的虚设图案元件的虚设图案,并去除属于优先级较低的虚设图案元件的虚设图案。结果实现了虚设图案的自动生成方法,该方法在相邻两个虚设禁止区的间距小的区域内也可以排列虚设图案,还可以控制数据量的增长,正如布局示意图17B中所示,与第三实施例方式相同。注意,图18的步骤S34可以在步骤S31之前执行。
接下来将描述本发明的第二个方面。图19是根据本发明的第二个方面的实施例的流程图。
首先,在步骤S41中,准备基本虚设图案元件。
接下来,在步骤S42中,计算机11从掩模图案数据文件13中读入掩模图案布局数据,且计算机11在掩模图案布局数据中设置排列禁止区。
接下来,在步骤S43中,计算机11排列基本虚设图案元件的虚设图案,使其覆盖掩模图案布局数据。
接下来,在步骤S44中,当经过排列的虚设图案接触或覆盖排列禁止区时,计算机11去除虚设图案。
接下来,在步骤S45中,计算机通过在X方向和Y方向上分别将基本虚设图案元件的虚设图案移动一个栅格,创建新的虚设图案元件。
接下来,在步骤S46中,计算机11排列新创建的虚设图案元件的虚设图案,使其覆盖掩模图案布局数据。
接下来,在步骤S47中,当经过排列的虚设图案接触或覆盖排列禁止区时,计算机11去除虚设图案。
接下来,在步骤S48中,如果新排列的虚设图案接触或覆盖较早排列的虚设图案,计算机11去除新排列的虚设图案。
接下来,在步骤S49中,计算机11判断是否已经将步骤S45至S48重复了预定的重复次数。如果重复次数没有达到预定数,计算机11将新创建的虚设图案元件设置为基本虚设图案元件,并返回步骤S45。如果重复次数已经达到了预定数,则计算机11结束虚设图案的自动生成。
在本实施例中,如果与根据本发明第一个方面的第三实施例中一样,将图13所示的虚设图案元件31-1用作基本虚设图案元件,则在步骤S43中排列虚设图案元件31-1的虚设图案4-1。接下来,每次重复步骤S45至S48时,在步骤S45中生成相当于虚设图案元件31-2、31-3、31-4或31-5的虚设图案元件,并在步骤S46中将它们排列在掩模图案布局数据上,在步骤S47和S48中去除不需要的虚设图案。结果,同根据本发明第一个方面的第三实施例一样,实现了布局示意图图17B所示的虚设图案的排列。以这种方式,在显示根据本发明第二个方面的实施例的流程的图19中,也实现了一种虚设图案的自动生成方法,即使在相邻两个虚设禁止区的间距小的区域内也可以排列虚设图案,还可以控制数据量的增长。
如上所述,通过应用本发明,实现了一种虚设图案的自动生成方法,即使在相邻两个虚设禁止区的间距小的区域内也可以排列虚设图案,还可以控制数据量的增长。