关键参数识别、工艺模型校准和可变性分析的系统和方法与流程

文档序号:16534127发布日期:2019-01-05 11:02阅读:283来源:国知局
本申请要求于2017年6月18日提交的题为“分析虚拟制造环境中的工艺变化用于提高工艺集成的系统和方法”的美国临时专利申请no.62/521,506以及于2018年2月15日提交的题为“虚拟制造环境中的工艺模型校准的系统和方法”的美国临时专利申请no.62/631,022的优先权和权益,这两个申请的内容通过引用全部并入本文。本发明总体上涉及半导体制造,更具体地涉及用于虚拟半导体器件制造环境中的关键参数识别、工艺模型校准和可变性分析的系统和方法。
背景技术
::集成电路(ic)实现了现代电子设备的大量功能。为了使ic的开发更有效率,半导体制造商将周期性地开发通用的制造工艺或“技术”,以便用于它的集成电路的生产(为了便于说明,术语“技术”在本文可用以指代正在开发中的半体装置结构的制造工艺)。集成器件制造商(idm)和独立代工厂的半导体研发机构花费大量资源开发用于制造芯片的集成工艺操作序列((ic)它们以晶圆形式销售(“晶圆”是半导体材料的薄片,通常但不总是由硅晶体组成)。大部分资源用于制造实验晶圆和相关测量、计量(“计量”指在半导体行业中进行的专业型测量)和表征结构,所有这些都是为了确保集成工艺产生所需的半导体器件结构。这些实验晶圆用于试错方案中,以开发用于制造器件结构的单独工艺,并且还开发整体的、集成的工艺流程。由于先进技术节点工艺流程的复杂性增加,大部分实验性制造运行导致否定或零表征结果。这些实验性运行的持续时间很长,在“fab”(制造环境)中为数周至数月,而且很昂贵。最近的半导体技术进步,包括finfet、trigate、高k/金属栅、嵌入式存储器和先进图案化,已经大大增加了集成半导体制造工艺的复杂性。使用这种试错实验方法的技术开发的成本和持续时间同时在增加。已尝试使用常规的机械计算机辅助设计(cad)工具和专用技术cad(tcad)工具来对半导体器件结构建模,目的是减少制造实验晶圆所耗费的努力。通用机械cad工具被发现不足,因为它们没有自动模拟实际制造环境中发生的材料添加、去除和修改过程。另一方面,tcad工具是基于物理学的建模平台,其可以模拟在扩散和注入过程中发生的材料组成变化,但是无法模拟在包括集成工艺流程的其他过程期间发生的所有材料添加和去除效果。通常,3d器件结构是tcad的输入,而不是输出。此外,由于基于物理模拟过程所需的大量数据和计算量,tcad模拟实际上仅限于芯片上非常小的区域,通常仅包含单个晶体管。在现有技术状态的半导体制造技术中,大部分集成挑战涉及可能在集成工艺流程中广泛分离的工艺与包括完整技术套件的多个不同器件和电路(晶体管、电阻器、电容器、存储器等)之间的相互作用。由系统和随机影响引起的结构故障通常是新工艺技术节点在上市时间上的限制因素。因此,需要一种与机械cad或tcad不同的建模平台和方法来涵盖更大的关注范围,并以结构预测的方式对整个集成工艺流程进行建模。半导体器件结构的虚拟制造环境提供了这样一个平台,与常规的试错物理实验所能实现的成本和速度相比,该平台以更低的成本和更高的速度执行半导体工艺开发。与常规的cad和tcad环境相比,虚拟制造环境能够对集成工艺流程进行虚拟建模,并且预测包括整个技术套件的所有器件和电路的完整3d结构。虚拟制造可以以其最简单的形式被描述为以2d设计数据(掩模或布局)的形式使集成工艺序列的描述与主题设计相结合,并且产生三维结构模型,该三维结构模型预测真实/物理制造运行所期望的结果。3d结构模型包括多层材料、植入物、扩散等的几何精确的3d形状,其包括芯片或芯片的一部分。虚拟制造主要是以几何形式完成的,但涉及的几何形状受制造工艺的物理学的指导。通过在抽象的结构层面进行建模(而不是基于物理学模拟),结构模型的构建可以得到显著加速,从而在电路级的面积范围内实现全部技术建模。因此,虚拟制造环境的使用提供了对过程假设的快速验证以及集成工艺序列和2d设计数据之间复杂相互关系的可视化。技术实现要素:本发明的实施例提供用于半导体器件制造的虚拟制造环境,其包括用于识别关键参数并且用于执行工艺模型校准和可变性分析的分析模块。更具体地,对于关键参数识别,分析模块识别对制造工艺的结果影响最大的工艺步骤和/或参数。在工艺模型校准中,分析模块调节工艺参数以使在虚拟制造环境中生成的3d模型与来自物理fab的测量(诸如透射电子显微镜(tem)数据或过程目标)匹配。对于可变性分析,分析模块帮助用户分析并理解在虚拟制造环境中生成的一组虚拟3d模型获得的计量数据的可变性。在一个实施例中,非暂时性计算机可读介质容纳用于在虚拟半导体制造环境中的关键参数识别的计算机可执行指令。指令在被执行时使至少一个计算设备对于要在计算设备生成的虚拟制造环境中虚拟制造的半导体器件结构接收2d设计数据和包括多个工艺的工艺序列的选择。指令在被执行时基于使用2d设计数据和工艺序列的实验设计(doe)利用所述计算设备执行用于所述半导体器件结构的虚拟制造运行。多个虚拟制造运行构建多个3d模型。指令在被执行时还使至少一个计算设备接收用于半导体装置结构的一个或多个目标的用户标识,并且在虚拟制造环境中执行分析模块以识别由虚拟制造运行产生的3d模型中的一个或多个目标的测量数据中的一个或多个异常值。指令在被执行时针对3d模型中的一个或多个目标接收用户选择以从测量数据添加或去除一个或多个识别的异常值中的一个或多个,经由所述虚拟制造环境中设置的用户界面接收所述选择。指令在被执行时另外在从所述测量数据添加或去除所选择的异常值之后,利用所述分析模块对所述一个或多个目标的测量数据执行回归分析,并且基于所述回归分析的结果,利用所述分析模块识别一个或多个关键参数。所识别的一个或多个关键参数的标识被显示或导出。在另一个实施例中,一种用于虚拟半导体制造环境中的关键参数识别的方法包括:对于要在计算设备生成的虚拟制造环境中虚拟制造的半导体器件结构,接收2d设计数据和包括多个工艺的工艺序列的选择;该方法进一步基于使用2d设计数据和工艺序列的实验设计(doe)利用所述计算设备执行用于所述半导体器件结构的虚拟制造运行。虚拟制造运行构建多个3d模型。该方法另外接收半导体器件结构的一个或多个目标的用户标识,在虚拟制造环境中执行分析模块以识别从虚拟制造运行产生的3d模型中的一个或多个目标的测量数据中的一个或多个异常值。该方法还接收用户选择以从3d模型中的一个或多个目标的测量数据添加或去除一个或多个识别的异常值中的一个或多个。通过在虚拟制造环境中提供的用户界面接收选择。另外,该方法在从所述测量数据添加或去除所选择的异常值之后,利用所述分析模块对所述一个或多个目标的测量数据执行回归分析,并且基于所述回归分析的结果,利用所述分析模块识别一个或多个关键参数。所识别的一个或多个关键参数的标识被显示或导出。在一个实施例中,虚拟制造系统包括配备有处理器并且被配置为生成包括分析模块的虚拟制造环境的计算设备。对于要虚拟制造的半导体器件结构,虚拟制造环境接收2d设计数据和工艺序列的选择,该工艺序列包括多个工艺并且基于使用2d设计数据和工艺序列的实验设计(doe)针对半导体器件结构执行虚拟制造运行。虚拟制造运行建立多个3d模型。虚拟制造环境接收半导体器件结构的一个或多个目标的用户标识,在虚拟制造环境中执行分析模块以识别由虚拟制造运行产生的3d模型中的一个或多个目标的测量数据中的一个或多个异常值,并且针对3d模型中的一个或多个目标接收用户选择以从测量数据添加或去除一个或多个识别的异常值中的一个或多个,经由虚拟制造环境中设置的用户界面接收所述选择。虚拟制造环境在从测量数据添加或去除所选择的异常值之后,利用分析模块对一个或多个目标的测量数据执行回归分析,并且基于所述回归分析的结果,利用分析模块识别一个或多个关键参数,并且显示或导出所识别的一个或多个关键参数的标识。虚拟制造系统进一步包括与计算设备通信的显示表面。所述显示表面被配置为以3d视图显示所述3d结构模型。具体而言,本发明的一些方面可以阐述如下:1.一种容纳用于虚拟半导体制造环境中的关键参数识别的计算机可执行指令的非暂时性计算机可读介质,所述指令在被执行时使得至少一个计算设备:对于要在计算设备生成的虚拟制造环境中虚拟制造的半导体器件结构接收2d设计数据和包括多个工艺的工艺序列的选择;基于使用所述2d设计数据和所述工艺序列的实验设计(doe)利用所述计算设备执行用于所述半导体器件结构的多个虚拟制造运行,所述多个虚拟制造运行构建多个3d模型;接收针对所述半导体器件结构的一个或多个目标的用户标识;在所述虚拟制造环境中执行分析模块以针对从所述虚拟制造运行产生的所述多个3d模型中的所述一个或多个目标识别测量数据中的一个或多个异常值;针对所述多个3d模型中的所述一个或多个目标接收用户选择以从所述测量数据添加或去除所述一个或多个识别的异常值中的一个或多个,经由所述虚拟制造环境中设置的用户界面接收所述选择;在从所述测量数据添加或去除所选择的所述异常值之后,利用所述分析模块对所述一个或多个目标的所述测量数据执行回归分析;基于所述回归分析的结果,利用所述分析模块识别一个或多个关键参数;并且显示或导出所识别的所述一个或多个关键参数的标识。2.根据权利要求1所述的介质,其中所述指令在被执行时进一步使得所述至少一个计算设备:以编程方式使所识别的所述一个或多个关键参数排序。3.根据权利要求1所述的介质,其中所述指令在被执行时进一步使得所述至少一个计算设备:在所述虚拟制造环境中提供用于接收doe类型、所述doe中变化的参数、级别的数量和所述doe的级别的值中的至少一个的用户选择的用户界面。4.根据权利要求1所述的介质,其中所选目标是计量测量、结构搜索、dtc检查和电气分析中的至少一个。5.根据权利要求1所述的介质,其中所述指令在被执行时进一步使得所述至少一个计算设备:对所述多个3d模型的目标数据执行多重共线性检查。6.根据权利要求1所述的介质,其中所述指令在被执行时进一步使得所述至少一个计算设备:通过所述虚拟制造环境中的所述用户界面接收用户对所选目标的期望值的选择,所述所选目标由与关键参数相关联的成组的目标构成;通过所述虚拟制造环境中的用户界面接收用户对每个识别的关键参数的上限和下限的选择;使用所识别的所述关键参数、期望值以及上限和下限来执行针对所述多个3d模型的优化算法;并且显示或导出所述优化算法的结果。7.根据权利要求6所述的介质,其中来自所述成组的目标的所选目标与先前由所述分析模块识别并且存在回归数据的关键参数相关联,并且其中所述优化算法使用所述回归数据执行间接优化。8.根据权利要求6所述的介质,其中所述关键参数由用户手动识别,并且其中所述优化算法执行直接优化。9.根据权利要求1所述的介质,其中所述指令在被执行时进一步使得所述至少一个计算设备:通过所述用户界面从用户接收用于所述优化算法的校准选项,并且所述校准选项包括多个迭代、收敛容差、多个试验和评分函数类型中的一者或多者。10.根据权利要求1所述的介质,其中所述d.o.e.是蒙特卡罗模拟,并且其中所述指令在被执行时进一步使得所述至少一个计算设备:接收用户选择以对所述多个虚拟制造运行执行可变性分析;执行所述多个虚拟制造运行;并且提供允许对σ精度进行评估的结果。11.根据权利要求1所述的介质,其中所述d.o.e.是蒙特卡罗模拟,并且其中所述指令在被执行时进一步使得所述至少一个计算设备:接收用户选择以对所述多个虚拟制造运行执行可变性分析;执行所述多个虚拟制造运行;并且提供允许对目标数据正态性进行评估的结果。12.根据权利要求1所述的介质,其中所述d.o.e.是蒙特卡罗模拟,并且虚拟制造运行的次数大约为200次。13.根据权利要求1所述的介质,其中所述d.o.e.是蒙特卡罗模拟,并且所述用户能够调节虚拟制造运行的次数以实现所需的σ精度(ci)。14.根据权利要求1所述的介质,其中所述d.o.e.是蒙特卡罗模拟,并且其中所述指令在被执行时进一步使得所述至少一个计算设备:接收用户选择以对所述多个虚拟制造运行执行可变性分析;执行所述多个虚拟制造运行;并且同时显示多个所选目标的结果。15.一种用于虚拟半导体制造环境中的关键参数识别的方法,其包括:对于要在计算设备生成的虚拟制造环境中虚拟制造的半导体器件结构,接收2d设计数据和包括多个工艺的工艺序列的选择;基于使用所述2d设计数据和所述工艺序列的实验设计(doe)利用所述计算设备执行用于所述半导体器件结构的多个虚拟制造运行,所述多个虚拟制造运行构建多个3d模型;接收针对所述半导体器件结构的一个或多个目标的用户标识;在所述虚拟制造环境中执行分析模块以针对从所述虚拟制造运行产生的所述多个3d模型中的所述一个或多个目标识别测量数据中的一个或多个异常值;针对所述多个3d模型中的所述一个或多个目标,接收用户选择以从所述测量数据添加或去除一个或多个识别的异常值中的一个或多个,经由所述虚拟制造环境中提供的用户界面接收所述选择;在从所述测量数据添加或去除所选择的异常值之后,利用所述分析模块对所述一个或多个目标的所述测量数据执行回归分析;基于所述回归分析的结果,利用所述分析模块识别一个或多个关键参数;并且显示或导出所识别的一个或多个关键参数的标识。16.根据权利要求15所述的方法,其还包括:以编程方式使所识别的所述一个或多个关键参数排序。17.根据权利要求15所述的方法,其还包括:在所述虚拟制造环境中提供用于接收doe类型、所述doe中变化的参数、级别的数量和所述doe的级别的值中的至少一个的用户选择的用户界面。18.根据权利要求15所述的方法,其还包括:对所述多个3d模型的目标数据执行多重共线性检查。19.根据权利要求15所述的方法,其还包括:通过所述虚拟制造环境中的所述用户界面接收用户对所选目标的期望值的选择,所选目标由与关键参数相关联的成组的目标构成;通过所述虚拟制造环境中的所述用户界面接收用户对每个识别的关键参数的上限和下限的选择;使用所识别的关键参数、期望值以及上限和下限来执行针对所述多个3d模型的优化算法;并且显示或导出所述优化算法的结果。20.根据权利要求15所述的方法,其还包括:通过所述用户界面从用户接收用于所述优化算法的校准选项,并且所述校准选项包括多个迭代、收敛容差、多个试验和评分函数类型中的一者或多者。21.根据权利要求15所述的方法,其中所述d.o.e.是蒙特卡罗模拟,并且进一步包括:接收用户选择以对所述多个虚拟制造运行执行可变性分析;执行所述多个虚拟制造运行;并且提供允许对σ精度进行评估的结果。22.根据权利要求15所述的方法,其中所述d.o.e.是蒙特卡罗模拟,并且进一步包括:接收用户选择以对所述多个虚拟制造运行执行可变性分析;执行所述多个虚拟制造运行;并且提供允许对目标数据正态性进行评估的结果。23.根据权利要求15所述的方法,其中所述d.o.e.是蒙特卡罗模拟,并且进一步包括:接收用户选择以对所述多个虚拟制造运行执行可变性分析;执行所述多个虚拟制造运行;并且同时显示多个所选目标的结果。24.一种虚拟制造系统,包括:计算设备,其配备有处理器并且被配置为生成包括分析模块的虚拟制造环境,所述虚拟制造环境:对于要虚拟制造的半导体器件结构,接收2d设计数据和包括多个工艺的工艺序列的选择;基于使用所述2d设计数据和所述工艺序列的实验设计(doe)执行用于所述半导体器件结构的多个虚拟制造运行,所述多个虚拟制造运行构建多个3d模型;接收针对所述半导体器件结构的一个或多个目标的用户标识;在所述虚拟制造环境中执行所述分析模块以针对从所述虚拟制造运行产生的所述多个3d模型中的所述一个或多个目标识别测量数据中的一个或多个异常值;针对所述多个3d模型中的所述一个或多个目标接收用户选择以从所述测量数据添加或去除一个或多个识别的异常值中的一个或多个,经由所述虚拟制造环境中设置的用户界面接收所述选择;在从所述测量数据添加或去除所选择的异常值之后,利用所述分析模块对所述一个或多个目标的所述测量数据执行回归分析;基于所述回归分析的结果,利用所述分析模块识别一个或多个关键参数;并且显示或导出所识别的一个或多个关键参数的标识;以及与所述计算设备通信的显示表面,所述显示表面被配置为以3d视图显示所述3d结构模型。25.根据权利要求24所述的虚拟制造系统,其中所述虚拟制造环境:以编程方式使所识别的一个或多个关键参数排序。26.根据权利要求24所述的虚拟制造系统,其中所述虚拟制造环境:通过所述用户界面接收用户对所选目标的期望值的选择,所选目标由与关键参数相关联的成组的目标构成;通过所述用户界面接收用户对每个所识别的关键参数的上限和下限的选择;使用所识别的关键参数、期望值以及上限和下限来执行针对所述多个3d模型的优化算法;并且显示或导出所述优化算法的结果。27.根据权利要求24所述的虚拟制造系统,其中所述虚拟制造环境:通过所述用户界面接收用户对所选目标的期望值的选择,所选目标由与关键参数相关联的成组的目标构成;通过所述用户界面接收用户对每个所识别的关键参数的上限和下限的选择;使用所识别的关键参数、期望值以及上限和下限来执行针对所述多个3d模型的优化算法;并且显示或导出所述优化算法的结果。附图说明并入并构成本说明书的一部分的附图示出了本发明的一个或多个实施例,并且与说明书一起帮助解释本发明。在附图中:图1描绘了适用于实施本发明的实施例的示例性虚拟制造环境;图2描绘了虚拟制造环境中的示例性虚拟制造控制台;图3描绘了虚拟制造环境中的示例性布局编辑器;图4描绘了虚拟制造环境中的示例性工艺编辑器;图5描绘了用于生成虚拟计量测量数据的虚拟制造环境中的示例性步骤序列;图6描绘了虚拟制造环境中的示例性3d查看器;图7描绘了虚拟制造环境中的虚拟计量测量数据的示例性显示;图8描绘了在虚拟制造环境中校准工艺序列的示例性步骤序列;图9描绘了在虚拟制造环境中建立并执行产生用于多个半导体器件结构模型的虚拟计量测量数据的虚拟实验的示例性步骤序列;图10描绘了用于针对虚拟制造环境中的虚拟实验提供工艺参数的示例性参数浏览器视图;图11描绘了在虚拟制造环境中的虚拟实验生成的虚拟计量数据的示例性表格格式显示;图12描绘了在虚拟制造环境中的虚拟实验中生成的虚拟计量数据的示例性图形显示;图13描绘了在示例性实施例中的示例性分析流程;图14a-14g描绘了在示例性实施例中在识别关键参数时由虚拟制造环境提供的示例性用户界面;图15描绘了在示例性实施例中执行以识别关键参数的一系列步骤;图16描绘了在示例性实施例中针对工艺模型校准执行的一系列步骤;图17描绘了在示例性实施例中由工艺模型校准ui提供的目标选择和期望值输入选项;图18描绘了在示例性实施例中由工艺模型校准ui提供的校准选项;图19描绘了在示例性实施例中由工艺模型校准ui提供的参数范围条目选项;图20描绘了在示例性实施例中由工艺模型校准ui提供的结果的示例性显示;图21描绘了在示例性实施例中用于执行可变性分析的一系列步骤;图22描绘了在示例性实施例中的显示可变分析结果窗口的示例性用户界面;并且图23描绘了在示例性实施例中用于显示四个分开的目标的可变性分析结果的比较的示例性用户图形界面。具体实施方式本发明的实施例提供用于半导体器件制造的虚拟制造环境,其包括用于识别关键参数并且用于执行工艺模型校准和可变性分析的分析模块。然而,在讨论由实施例提供的关键参数识别、工艺模型校准、优化、可变性分析和其他特征之前,首先描述可集成本发明的分析模块的示例性3d设计环境/虚拟制造环境。示例性虚拟制造环境图1描绘了适用于实施本发明的实施例的示例性虚拟制造环境1。虚拟制造环境1包括由用户2访问的计算设备10。计算设备10与显示器120通信。显示器120可以是作为计算设备10的一部分的显示屏幕,或者可以是与计算设备10通信的单独的显示设备或显示表面。计算设备10可以是pc、膝上型计算机、平板计算设备、服务器或配备有一个或多个处理器11并且能够支持虚拟制造应用70、3d建模引擎75和分析模块79(在下面进一步描述)的操作的一些其他类型的计算设备。处理器可以具有一个或多个核心。计算设备10还可以包括易失性和非易失性存储器,诸如但不限于随机存取存储器(ram)12、只读存储器(rom)13和硬盘驱动器14。计算设备10还可以配备有网络接口15以便能够与其他计算设备进行通信。应该理解,计算设备10而不是孤立的计算设备也可以被实施为具有并行工作的多个计算设备或其他组合的计算系统。计算设备10可以存储并执行包括3d建模引擎75的虚拟制造应用70。3d建模引擎75可以包括用于虚拟制造半导体器件结构的一个或多个算法,诸如算法1(76)、算法2(77)和算法3(78)。3d建模引擎75可以接受输入数据20以便执行产生半导体器件结构模型数据90的虚拟制造“运行”。虚拟制造应用70和3d建模引擎75可以生成用于创建和显示虚拟制造运行的结果的多个用户界面和视图。例如,虚拟制造应用70和3d建模引擎75可以显示布局编辑器121、工艺编辑器122和用于创建虚拟制造运行的虚拟制造控制台123。虚拟制造应用70和3d建模引擎75还可以显示表格和图形计量结果视图124和3d视图125,以用于分别显示在虚拟制造半导体器件结构期间由3d建模引擎75生成的虚拟制造运行和3d结构模型的结果。虚拟制造应用70还可以包括用于执行3d模型的分析的分析模块79,如下面进一步讨论的。输入数据20包括2d设计数据30和工艺序列40。工艺序列40可以由多个工艺步骤43、44、47、48和49组成。如在此进一步描述的,工艺序列40还可以包括一个或多个虚拟计量测量工艺步骤45。工艺序列40可以进一步包括一个或多个子序列,其包括一个或多个工艺步骤或虚拟计量测量工艺步骤。2d设计数据30包括通常以工业标准布局格式(诸如gdsii(图形设计系统版本2)或oasis(开放式作品系统互换标准))提供的一个或多个层,诸如层1(32)、层2(34)和层3(36)。输入数据20还可以包括材料数据库60,其包括诸如材料类型1(62)和材料类型2(64)之类的材料类型的记录以及用于每种材料类型的特定材料。工艺序列中的许多工艺步骤可以指代材料数据库中的一种或多种材料。每种材料都有名称和一些属性,诸如渲染颜色。材料数据库可以存储在单独的数据结构中。材料数据库可能具有分级,其中材料可以按类型和子类型分组。工艺序列中的各个步骤可以涉及单独的材料或母体材料类型。材料数据库中的分级允许更轻松地修改引用材料数据库的工艺序列。例如,在半导体器件结构的虚拟制造中,在工艺序列的过程中可以将多种类型的氧化物材料添加到结构模型中。在添加特定的氧化物后,随后的步骤可能会改变该材料。如果材料数据库中没有分级并且在现有工艺序列中插入添加新型氧化物材料的步骤,则可能影响氧化物材料的所有后续步骤也必须进行修改,以包含新型氧化物材料。对于支持分级的材料数据库,对特定类别的材料(诸如氧化物)进行操作的步骤可以只涉及母体类型,而不是同种类型的材料列表。然后,如果在工艺序列中插入添加新型氧化物材料的步骤,则不需要修改仅涉及氧化物母体类型的后续步骤。因此,分级的材料使得工艺序列对修改更有弹性。分级材料的进一步的有益效果使可以创建并重新使用仅涉及母体材料类型的库存工艺步骤和序列。3d建模引擎75使用输入数据20来执行由工艺序列40指定的操作/步骤的序列。如下面进一步解释的,工艺序列40可以包括一个或多个虚拟计量步骤45、49,其指示在结构部件应当进行材料测量所处的虚拟制造运行期间的工艺序列中的点。可以使用此前添加到2d设计数据30中的层的定位器形状来进行测量。可替代地,测量位置可以由替代手段来制定,诸如2d设计数据中的(x,y)坐标,或者在2d设计数据30中指定位置的一些其他手段来制定,而不是通过使用定位器形状来指定。工艺序列40在虚拟制造运行期间的执行产生虚拟计量数据80和3d结构模型数据90。3d结构模型数据90可以用于生成可以在3d查看器125中显示的半导体器件结构的结构模型的3d视图。虚拟计量数据80可以在表格和图形计量结果视图124中被处理并呈现给用户2。由于大量的结构尺寸对于诸如半导体器件之类的集成技术的成功至关重要,因此找出用于制造器件结构和所创建结构的许多相互关联的工艺步骤之间的关系至关重要。由于工艺序列中某个步骤产生的结构修改可能受序列中前一步骤和后续步骤的影响,因此特定步骤可能会以不明显的方式影响结构维度。虚拟制造环境使得能够从正在创建的器件自动提取结构测量结果。测量的自动提取通过在当测量很关键时的工艺中的某一点处指定工艺序列中的虚拟计量测量步骤来完成。这种虚拟计量测量的定位器形状可以被添加到设计数据中的一个层中,并由虚拟计量测量步骤指定。来自这种虚拟计量测量的输出数据可用于提供与其他建模结果或物理计量测量的定量比较。这种虚拟计量测量能力是在工艺序列期间提供的,以便在集成工艺流程中的正确点提取关键物理尺寸。在器件结构中的指定位置提供虚拟计量测量数据的能力相对于常规的物理制造测量技术提供了显著的改进。通常情况下,物理制造内(in-fab)测量是在切割线或与产品晶方邻近的切割切口处制造的特定表征结构上完成的。在大多数情况下,这些表征结构需要被设计为适应对测量技术的限制,诸如光斑尺寸。因此,表征结构并不完全代表产品晶方上的实际结构。由于这些差异,制造内测量的用户通常面临着从表征结构上的测量推断产品结构的结果的挑战。在虚拟制造环境中,可以将测量结果添加到工艺序列中指定点处的任何设计布局,从而更深入地了解相互关联的工艺步骤对正在构建的虚拟结构模型的影响。因此,消除了测量表征结构和推断产品结构结果的制造内挑战。图2描绘了用于在虚拟制造环境中建立虚拟制造运行的示例性虚拟制造控制台123。虚拟制造控制台123允许用户指定正在虚拟制造的半导体器件结构的工艺序列202和布局(2d设计数据)204。然而,应该理解的是,虚拟制造控制台也可以是基于文本的脚本控制台,其为用户提供了输入脚本命令或者建立与在工艺序列中的特定步骤的参数值范围对应的一组结构模型的手段,这些脚本命令指定了所需的输入并启动了结构模型的构建。后一种情况被认为是虚拟实验(下面进一步讨论)。图3描绘了虚拟制造环境中的示例性布局编辑器。布局编辑器121在虚拟制造控制台123中显示由用户指定的2d设计布局。在布局编辑器中,可以使用颜色来描绘设计数据中的不同层。由各层上的形状或多边形所包围的区域表示在集成工艺流程中的光刻步骤期间晶圆上的光致抗蚀剂涂层可以暴露于光线或受保护免于曝光的区域。一个或多个层上的形状可以被组合(进行布尔运算)以形成在光刻步骤中使用的掩模。布局编辑器121提供在任何层上插入、删除和修改多边形并且在2d设计数据内插入、删除或修改层的手段。可以插入图层,仅用于包含指示虚拟计量测量位置的形状或多边形。已经将矩形形状302、304、306添加到插入层(由不同颜色指示)并且标记虚拟计量测量的位置。如上所述,在虚拟制造环境中还可以采用除了使用定位器形状之外的指定虚拟计量测量的位置的其他方法。设计数据与工艺数据和材料数据库结合使用来构建3d结构模型。在布局编辑器121中显示的设计数据中插入的层可以包括插入的定位器形状。例如,定位器形状可以是矩形,其长边指示3d结构模型中的测量方向。例如,在图3中,第一定位器形状302可以标记用于虚拟计量测量的双图案化心轴,第二定位器形状304可以标记用于虚拟计量测量的栅极堆叠并且第三定位器形状306可以标记用于虚拟计量测量的晶体管源极或漏极接触。图4描绘了虚拟制造环境中的示例性工艺编辑器122。用户在工艺编辑器中定义了工艺序列。工艺序列是为了虚拟制造用户选择的结构而进行的工艺步骤的有序列表。工艺编辑器可以是文本编辑器,使得每一行或成组的行对应于工艺步骤,或可以是如图4所示的专用图形用户界面。工艺序列可以是分级的,这意味着工艺步骤可以被分组为子序列和子序列的子序列等。通常,工艺序列中的每个步骤对应于制造中的实际步骤。例如,用于反应离子蚀刻操作的子序列可以包括旋涂光刻胶、图案化光刻胶和执行蚀刻操作的步骤。用户为适合操作类型的每个步骤或子步骤指定参数。一些参数参考材料数据库中的材料以及2d设计数据中的图层。例如,沉积操作基元的参数是要沉积的材料、沉积物的标称厚度以及横向方向与垂直方向的各向异性或生长比率。此沉积操作基元可以用来对实际工艺(诸如化学气相沉积(cvd))建模。类似地,蚀刻操作基元的参数是掩模名称(来自设计数据)、受操作影响的材料列表以及各向异性。工艺序列中可能有数百个步骤,工艺序列可以包含子序列。例如,如图4所示,工艺序列410可以包括由诸如选择的步骤413之类的多个工艺步骤组成的子序列412。工艺步骤可以选自可用的工艺步骤402的库。对于所选步骤413,工艺编辑器122使用户能够指定所有需要的参数420。例如,用户可以能够从材料数据库404中的材料列表中选择材料,并且在工艺步骤413中指定材料使用的工艺参数406。工艺序列中的一个或多个步骤可以是用户插入的虚拟计量步骤。例如,插入步骤4.17“测量cd”(414),其中cd表示临界尺寸,在工艺序列412中将导致使用一个或多个定位器形状在虚拟制造运行中的该点处进行虚拟计量测量,这些定位器形状此前已经被插入到2d设计数据的一个或多个层上。在制造序列中直接插入虚拟测量步骤允许在制造工艺期间感兴趣的关键点处进行虚拟计量测量。由于虚拟制造中的许多步骤在最终结构的创建中相互作用,确定结构的几何性质的能力,诸如集成工艺流程中不同点处的横截面尺寸和表面积等,对工艺开发人员和结构设计人员来说都很有意义。图5描绘了用于生成虚拟计量测量数据的虚拟制造环境中的示例性步骤序列。该序列从用户选择要制造的半导体器件结构开始(步骤502)。用户可以从多组可用的设计数据文件中进行选择,然后在设计数据中选择矩形区域。例如,用户可以选择finfet或无源电阻器或存储器单元。在确定/选择要制造的结构之后,用户在工艺编辑器122中输入工艺序列(步骤504a)并选择预期产生所需结构的2d设计数据(步骤504b)。可选地,用户可以在布局编辑器121中创建或修改设计数据。在工艺编辑器中,用户可以在工艺序列中插入一个或多个虚拟计量步骤,其在虚拟制造期间指定用户希望在演进结构中的指定位置处进行虚拟计量测量的点(步骤506a)。用户可以在布局编辑器121中显示的2d设计数据中插入定位器形状,该定位器形状将被虚拟测量步骤用来执行其测量(步骤506b)。定位器形状的重要性取决于所要求的测量类型。例如,矩形的长轴可以指示在结构的横截面上进行的长度测量的方向和程度,或者矩形本身可以指定要测量的两种材料之间的接触区域的区域。应该认识到,可以在布局编辑器中的步骤之前执行工艺编辑器中的上述步骤,或者在虚拟制造环境中反之亦然。在一个或多个定位符形状被添加到2d设计数据中的一个或多个层(步骤506b)并且虚拟计量步骤已被添加到工艺序列(506a)之后,用户使用虚拟制造控制台123建立虚拟制造运行(步骤(508))。在虚拟制造运行期间,工艺序列40中的工艺步骤按3d建模引擎75指定的顺序执行。当虚拟制造到达虚拟测量步骤时,执行正在制造的结构中的指定组件的虚拟“测量”。由建模引擎完成的计算取决于所要求的测量的性质,并且一般与制造中的类似物理测量技术一致。例如,制造中的关键尺寸扫描电子显微镜(cd-sem)测量通过检测结构顶面的取向的快速变化来定位侧壁。类似地,在虚拟计量操作中,3d建模引擎在由定位器矩形指定的区域中提取结构的顶部表面,沿着其与由矩形的横轴和纵轴的交叉所定义的平面的交叉询问表面,以获得超过阈值(例如5度)的斜坡变化。斜坡的大变化定义了一个特征的面,诸如结构中脊的底部、顶部和侧面。在建立特征的底部、顶部和侧面的位置后,在计量步骤指定的竖直位置(底部、中间或顶部)计算特征侧面之间的距离。3d建模引擎在其构建结构模型时生成一种或多种类型的输出。一种类型的输出是结构模型本身,并且可以包括其在工艺序列中的一个或多个点处的状态。3d模型可以在3d查看器125中被显示给用户(步骤512a)。3d建模引擎还输出虚拟计量数据(步骤510)。虚拟计量数据80可以被导出到自动数据分析工具以供进一步处理,或者可以通过诸如表格和图形计量结果视图124或其他视图(步骤512b)之类的用户界面向用户显示。如果当查看或分析时的结构是令人满意的(步骤513),则虚拟制造运行结束(步骤514)。如果由3d建模引擎创建的结构不令人满意,则用户修改工艺序列和/或2d设计数据(步骤516),并建立新的虚拟制造运行(步骤508)。图6描绘了虚拟制造环境中的示例性3d查看器125。3d查看器75可以包括用于显示由3d建模引擎75生成的3d模型的3d视图画布602。3d查看器75可以在工艺序列中显示保存的状态604并且允许选择特定的状态606并且出现在3d视图画布中。3d查看器提供了诸如放大/缩小、旋转、平移、截面等功能。可选地,用户可以在3d视图画布602中激活横截面视图并且使用微型俯视图608来操纵横截面的位置。来自3d建模引擎75的另一类型的输出是通过包括在工艺序列中的虚拟计量步骤生成的数据。图7描绘了由虚拟制造环境中的多个虚拟计量测量步骤产生的虚拟计量测量数据80的示例性显示。虚拟计量测量结果数据80可以以包括2dx-y图和多维图形的表格或图形形式进行显示。示例性虚拟制造环境中采用的技术是基于几何的。因此,建议利用来自物理制造的实际实验结果来校准工艺步骤输入参数以使虚拟实验更具有预测性。工艺步骤的这种校准可以提高包括完整技术套件的所有结构的建模精度。可以对表征结构或产品结构的测量、计量或其他物理表征方法的单个工艺步骤执行校准。校准可以通过将包括虚拟计量测量数据的建模结果与在物理制造中进行的相应测量或计量(在相应的表征或产品结构上)进行比较来进行,随后调整建模参数,使得所得到的虚拟制造的结构更好地匹配物理制造的结构。通过对建模工艺参数进行适当的校准,虚拟制造环境变得更好地预测贯穿整个允许的设计空间中物理制造所产生的结构。图8描绘了在虚拟制造环境中校准工艺序列的示例性步骤序列。该序列包括在虚拟制造环境和相应的物理制造环境中采取的步骤。在虚拟制造环境中,用户选择要校准的工艺序列(对于要虚拟制造的结构)并识别相关工艺参数(步骤802a)。在物理制造中,用户在制造运行期间识别用于测量的成组的表征或产品结构(步骤802b)。回到虚拟制造环境中,用户在工艺编辑器中输入工艺序列(步骤804a),并且定义表征结构的2d设计数据(布局)从可用的2d设计数据中选择,或者在布局编辑器121中为此目的而创建(步骤804b)。相同的设计数据用于虚拟制造和实际表征。如上所述,用户在工艺序列中插入一个或多个虚拟计量步骤(步骤806a),并将测量定位器形状添加到2d设计数据(步骤806b)。用户在虚拟制造控制台中建立虚拟制造运行(步骤808),并且3d建模引擎建立3d模型,并生成和输出虚拟计量数据(步骤812a)。与虚拟制造运行并行或偏移,物理制造环境创建表征或产品结构(步骤810),并且在这些结构上采用制造内图像和测量(步骤812b)。用户然后可以将3d查看器75中生成的虚拟模型的3d视图与物理器件结构的制造内图像进行比较(步骤814a)。此外,可以将该组表征结构测量结果与作为被插入到工艺序列中的虚拟计量步骤的结果的虚拟计量测量结果进行比较(步骤814b)。在大多数情况下,该比较将由用户进行,但是可以通过基于预定义或交互式请求标准的自动化数据分析工具进行比较。如果在视图和图像与虚拟和实际测量之间存在令人满意的一致(步骤815),则认为工艺序列被校准(步骤816)。然而,如果没有令人满意的一致(步骤815),则用户在工艺编辑器中修改工艺参数的值(步骤818),并在虚拟制造控制台中建立新的虚拟制造运行(步骤808)。然后序列迭代,直到达到令人满意的一致并实现校准。应该理解的是,可以有多个不同的参数可以在该序列内进行校准。尽管以上描述注意到使用在工艺序列中插入虚拟测量步骤以及连带使用一个或多个2d定位器形状来进行虚拟计量测量,但是可以在虚拟制造环境中采用其他技术。例如,虚拟测量可以在制造完成之后在虚拟器件结构上进行,然后与在物理制造运行期间/之后对表征结构进行的物理测量进行比较。虽然构建单个结构模型可能很有价值,但在构建大量模型的虚拟制造中有更高的价值。虚拟制造环境可以使用户能够创建并运行虚拟实验。在虚拟实验中,可以探索一系列工艺参数值。虚拟实验可以通过在整个工艺序列中指定一组要应用于单个工艺的参数值(而不是每个参数的单个值)进行设置。可以用这种方式指定单个工艺序列或多个工艺序列。以虚拟实验模式执行的3d建模引擎75然后构建跨越工艺参数集的多个模型,始终利用上述虚拟计量测量操作来提取每个变化的计量测量数据。这种能力可能被用来模仿通常在物理制造环境中执行的两种基本类型的实验。首先,制造工艺自然地以随机(非确定性)方式变化。如本文所解释的,用于每个虚拟制造运行的基本确定性方法仍然可以通过进行多次运行来预测非确定性结果。虚拟实验模式允许虚拟制造环境对每个工艺参数的整个统计变化范围以及许多/所有工艺参数的变化组合进行建模。其次,在物理制造中运行的实验可以指定在制造不同晶圆时有意变化的一组参数。虚拟实验模式使虚拟制造环境通过对参数集的特定变化执行多个虚拟制造运行也能够模拟这种类型的实验。制造序列中的每个工艺都有其固有的变化。要理解复杂流程中所有汇总过程变化的影响是非常困难的,尤其是在考虑变化组合的统计概率时。一旦创建了虚拟实验,工艺序列就基本上通过工艺描述中包含的数字工艺参数的组合来描述。这些参数中的每一个都可以用其总变化(以标准偏差或σ值表示)来表征,并且因此通过高斯分布上的多个点或其他适当的概率分布来表征。如果设计并执行虚拟实验来检查工艺变化的所有组合(每个高斯曲线上的多个点,例如±3σ、±2σ、±1σ和每个参数的标称值),那么从序列中的虚拟测量步骤产生的图形和数字输出涵盖了该技术的总变化空间。尽管本实验研究中的每个案例都是由虚拟制造系统确定性地建模,但虚拟计量结果的聚合包含统计分布。可以使用简单的统计分析,诸如统计不相关参数的根总平方(rss)计算来将总变化度量归因于每个实验情况。然后,可以相对于总变化度量来分析所有的(数字和图形)虚拟计量输出。在物理制造的典型试错实验中,由标称工艺产生的结构测量被作为目标,通过为后续工艺中必须预测的结构测量的总变化(总结构裕度)指定过大(保守)的裕度来考虑工艺变化。相比之下,虚拟制造环境中的虚拟实验可以提供集成工艺流程中任何点的结构测量的总变化包络的定量预测。结构测量的总变化包络而不是标称值然后可能成为发展目标。这种方法可以确保整个集成工艺流程中可接受的总体结构裕度,而不会牺牲关键的结构设计目标。以总变化为目标的方法可能导致标称中间或最终结构,该标称中间或最终结构不如(或美学上愉悦感不如)通过以标称工艺为目标产生的标称结构。然而,这种次优的标称工艺并不重要,因为总工艺变化的包络已经被考虑到,并且在确定集成工艺流的健壮性和产量方面更重要。这种方法是半导体技术发展的范式转变,从强调标称过程到强调总体过程变化的包络。图9描绘了建立并执行产生用于多个半导体器件结构模型的虚拟计量测量数据的虚拟实验的虚拟制造环境中的示例性步骤序列。该序列始于用户选择工艺序列(其可以事先被校准以使结果更具结构预测性(步骤902a)并且识别/创建2d设计数据(步骤902b))。用户可以选择工艺参数变化来分析(步骤904a)和/或设计参数变化以进行分析(步骤904b)。用户在如上所述的工艺序列中插入一个或多个虚拟计量步骤(步骤906a),并将测量定位器形状添加到2d设计数据(步骤906b)。用户可以借助于专用用户界面、自动参数浏览器126来建立虚拟实验(步骤908)。示例性自动参数浏览器在图10中被示出,并且可以显示并允许用户改变要改变的工艺参数1002、1004、1006和要利用它们的对应不同参数值1008构建的3d模型的列表。虚拟实验的参数范围可以以表格格式指定。3d建模引擎75构建3d模型并输出虚拟计量测量数据以供查看(步骤910)。虚拟实验模式提供来自所有虚拟测量/计量操作的输出数据处理。来自虚拟计量测量的输出数据可以被解析并组装成有用的形式(步骤912)。通过这种解析和组装,可以进行后续的定量和统计分析。单独的输出数据收集器模块110可以用于从包括虚拟实验的虚拟制造运行序列收集3d模型数据和虚拟计量测量结果,并以图形和表格形式呈现它们。图11描绘了由虚拟制造环境中的虚拟实验生成的虚拟计量数据的示例性表格格式显示。在表格格式显示中,可以显示在虚拟实验1102期间收集的虚拟计量数据和虚拟制造运行1104的列表。图12描绘了由虚拟制造环境中的虚拟实验生成的虚拟计量数据的示例性2dx-y图形曲线显示。在图10所示的示例中,示出了由于在工艺序列的在先步骤中改变3个参数而导致的浅沟槽隔离(sti)台阶高度的总变化。每个菱形1202代表虚拟制造运行。变化包络1204也如所描绘的结论1206那样被显示,即下游处理模块必须支持sti台阶高度约10.5nm的总变化以通过传入变化的6σ实现健壮性。虚拟实验结果也可以以多维图形格式显示。一旦组装了虚拟实验的结果,用户就可以查看已经在3d查看器中生成的3d模型(步骤914a)并查看为每个虚拟制造运行呈现的虚拟计量测量数据和计量(步骤914b)。根据虚拟实验的目的,用户可以分析来自3d建模引擎的输出,以便开发实现期望的标称结构模型的工艺序列,用于进一步校准工艺步骤输入参数,或用于优化工艺序列以实现期望的工艺窗口。三维建模引擎75针对一系列参数值(包括虚拟实验)构建多个结构模型的任务的计算强度非常高,因此如果在单个计算设备上执行,则可能需要很长时间(几天或几周)。为了提供虚拟制造的预期价值,虚拟实验的模型构建必须比物理实验快许多倍。用现代计算机实现这个目标需要利用任何和所有的并行机会。3d建模引擎75使用多个核心和/或处理器来执行各个建模步骤。此外,一组中的不同参数值的结构模型是完全独立的,因此可以使用多个核心、多个处理器或多个系统并行构建。虚拟制造环境中的3d建模引擎75可以以体素(voxel)的形式表示潜在的结构模型。体素本质上是3d像素。每个体素是一个相同大小的立方体,并且可以包含一种或多种材料,或者不含材料。本领域技术人员将认识到,3d建模引擎75还可以以其他格式表示结构模型。例如,3d建模引擎可以使用常规的基于nurbs的实体建模内核,诸如在3d机械cad工具中使用的,尽管基于数字体素表示的建模操作比常规模拟实体建模内核中的相应操作更加健壮。这种实体建模内核通常依赖大量的启发式规则来处理各种几何情况,并且当启发式规则不能正确预测情况时,建模操作会失败。对基于nurbs的实体建模内核造成问题的半导体结构建模的方面包括由沉积工艺产生的非常薄的层以及导致合并面和/或几何体碎裂的蚀刻前沿的传播。虚拟制造环境可以实现包括工艺序列中的多蚀刻工艺的性能,该工艺序列允许3d建模引擎75对范围广泛的工艺和材料特定蚀刻行为进行建模。对高度缩放的半导体器件的工艺流程中的图案化操作经常使用等离子蚀刻来执行。等离子蚀刻以许多不同的名称而知名:干法蚀刻、反应离子蚀刻(rie)、电感耦合等离子体(icp)蚀刻等。各种各样的操作条件和化学性质允许工艺工程师微调等离子刻蚀行为,以在多种不同类型材料中选择性地实现各种刻蚀物理现象。这种行为灵活性对于在通过多层材料图案化时获得理想3d结构是关键的。几种不同类型的物理现象通常涉及,包括但不限于:化学蚀刻、溅射、聚合物材料的沉积或再沉积、静电充电、静电聚焦和阴影。这种多样化的物理光谱产生了相当的蚀刻行为范围,因此也产生了结构形状。以足够的准确度直接模拟等离子体刻蚀所涉及的物理现象非常困难且缓慢。多刻蚀工艺步骤通过使用对刻蚀类型和被刻蚀材料特定的减少的行为参数集来模拟等离子体刻蚀,从而避免了基于物理现象的模拟的困难。这允许捕获大范围的物理蚀刻行为,而不需要直接模拟蚀刻工艺的物理现象。例如,可以模拟三种主要类型的蚀刻行为:各向同性、渐缩和溅射。还可以选择性地模拟第四种刻蚀行为:阴影。基本(各向同性)行为是由化学蚀刻(物理上)引起的,并且导致材料从可蚀刻表面上的点的所有方向以相似的速率被去除,而不管可蚀刻表面的局部取向如何。基本行为可以用单个输入参数“横向比率”来建模,该横向比率控制横向和纵向刻蚀速率之间的比率。例如,横向比值为1(1.0)表示蚀刻速率在所有方向上均匀。横向比率值小于1表示横向(竖直表面上)的蚀刻速率比垂直方向(水平表面上)的蚀刻速率慢。渐缩行为是由定向蚀刻行为和聚合物沉积的组合(物理上)引起的。聚合物沉积由于定向蚀刻工艺的副作用而发生。在水平表面蚀刻比垂直表面蚀刻快得多的定向蚀刻过程中,聚合物可能在近垂直表面积聚。蚀刻和沉积之间的这种竞争导致渐缩的侧壁轮廓。渐缩行为可以用单个输入参数(锥角)建模。锥角描述沉积和蚀刻速率平衡所处的临界角度。可选的第二个参数,横向比率,与上述基本行为中定义的含义相同。溅射行为是指通过高能离子轰击直接物理去除材料,并导致突出边缘(凸边)的优先去除,并且在某些情况下导致拐角。溅射可以用两个参数建模:最大溅射产量角度和溅射率比垂直蚀刻速率。阴影是指由局部高程变化引起的定向离子通量的减少,从而有效地降低某些结构的蚀刻速率。这种效应在某些情况下可能很重要,导致整个单元的蚀刻速率不同。阴影可以使用单个参数来建模,以描述高能离子相对于垂直轴的入射角。为了对多材料、多物理蚀刻进行建模,上述输入参数必须在虚拟制造环境中形成合适的数值建模算法。数值模拟算法包括单材料和多材料速度函数以及表面演变技术。单材料速度函数将蚀刻速度定义为局部表面取向(即,表面法线方向)的函数,并且是凭经验确定的,以便产生期望的蚀刻行为。还要注意单材料速度函数可以结合多种类型的蚀刻行为;例如,渐缩和溅射蚀刻都包括与基本(各向同性)蚀刻相关的参数。多材料速度函数是单材料速度函数的组合,并根据局部表面取向和局部材料类型计算局部蚀刻速度。蚀刻比率参数定义可蚀刻材料的相对蚀刻速率,并且是单材料速度的倍增因子。在定义了速度函数的情况下,可以使用合适的表面演变技术来定位并演变三维可蚀刻表面的位置。根据通过评估速度函数确定的局部标量速度,可蚀刻表面在其局部法线方向上被平流或移动。标量速度必须在可蚀刻表面上的感兴趣点处计算,并且必须随着可蚀刻表面的几何形状的演变定期重新计算。许多不同类型的表面演变技术可以通过数值算法用来模拟虚拟制造环境中的多刻蚀工艺。可以使用任何合适的数值空间离散来表示移动表面。可以使用显式界面跟踪法:实例包括字符串方法、点线方法(2d)和多边形表面(3d)。也可以使用替代的隐式表面表示,例如距离场、流体或体素的体积。可以使用任何合适的时间依赖性数值技术来及时推进移动表面。选择性外延工艺可以被包括在用于虚拟制造半导体器件结构的工艺序列中。选择性外延工艺实际上对半导体器件结构的晶体衬底表面顶部上的晶体材料层的外延生长进行建模。选择性外延在当代半导体工艺流程中被广泛使用,通常用于在晶体管沟道上施加机械应力以提高性能。外延生长的关键特征是其对晶体方向的依赖性。半导体器件通常在单晶硅晶圆上制造;即硅材料的原子以在大部分晶圆上连续的重复晶格结构排列。硅晶体结构是各向异性的(即,在所有方向上不对称),并且硅表面在几个特定的晶体方向上更稳定。这些方向由主晶面族定义,使用它们的米勒指数确定为<100>、<110>和<111>,并且对生长特性具有最强的影响。通过改变外延工艺中的压力、温度和化学前体,工程师可以控制三个主晶面的相对生长速率。次晶面(例如<211>、<311>、<411>)上的生长速率也有所不同,但往往对确定外延生长结构的最终形状没有影响。虚拟制造环境可以使用表面演变算法来模拟外延生长。发生外延生长的表面(生长表面)根据标量平流速度平流或移动。根据局部表面法线方向和固定的输入参数在选定的点处计算生长速率,生长速率在距离和时间上都是局部的,并且使表面沿法线方向移动。可以使用任何合适的数值空间离散来表示生长表面。可以使用显式界面跟踪法:实例包括字符串方法、点线方法(2d)和多边形表面(3d)。也可以使用替代的隐式表面表示,例如距离函数、流体或体素的体积。可以使用任何合适的时间依赖性数值技术来及时推进生长表面。虚拟制造环境中的选择性外延工艺利用三个主晶面族(<100>、<110>和<111>)的生长速率作为固定的输入参数。这些输入参数定义与它们的相关晶面中的任何一个对齐的表面的生长速率。进一步的输入参数可以包括相邻非晶材料的生长速率。当计算外延生长速率时,也可以考虑3d建模坐标系和晶圆的晶格之间的关系。3d建模坐标系通常使用与2d设计数据相同的x和y轴,而z轴通常垂直于晶圆表面。也可以采用替代的坐标系。在实际的晶圆上,晶格的取向由另外的圆形晶圆的边缘上的“平坦”或“凹口”表示。凹口可以用作参考,以相对于晶格在期望的方向上定向2d设计数据。指定凹口(或平面)类型和方向的输入参数可以定义晶格取向和晶圆相对于2d设计数据的相关晶面。应该注意的是,这种关系可以被描述为3d模型坐标系和晶格坐标系之间的坐标变换。通过使用主晶面族的生长速率并且知道晶格的取向,可以在生长表面上的任何地方计算外延生长速率。具有与主晶面方向对齐的法线方向的生长表面的区域被分配该主晶面的速度。对于不与主晶面方向对齐的生长表面区域,必须通过在相邻主晶面方向之间进行插值来找到适当的速度。此外,在晶体材料的边界处的外延生长的行为也会是重要的。外延生长通常在已经沉积并图案化非晶材料的几个先前工艺步骤之后进行。这些非晶体材料可以与晶体材料相邻并因此紧邻外延生长。非晶相邻材料的实例是二氧化硅、氮化硅或在半导体处理中常见的任何其他材料。在一些情况下,外延生长沿着相邻的非晶体材料缓慢蔓延(过度生长),但在其他情况下不会。过度生长行为可以使用固定输入参数来建模,固定输入参数定义发生过度生长的相邻材料组(过度生长材料)以及生长表面沿着过度生长材料蔓延的速度。过度生长速度改变了过度生长材料表面处的外延生长速率,使得生长表面沿着过度生长材料以指定速度移动。此外,生长表面沿着过度生长材料移动的速度可以取决于过度生长材料表面与生长表面之间的角度。如果两个表面之间的角度大于阈值角度,则过度生长速度可以被忽略。可以在虚拟制造环境中执行设计规则检查(drc)或光学规则检查(orc)。专用软件通常对2d设计数据执行drc和orc,作为准备用于转换成光刻掩模的2d设计数据的过程的一部分。这些检查是为了识别布局中可能导致芯片无功能或功能不佳的错误。这些检查也是在增加对诸如光学邻近修正(opc)等光学效应的补偿之后执行的。典型的设计规则(如在设计手册中发布并在drc平台中编码的)是简单的2d标准,旨在防止本质上根本地是3d的问题。然而,随着半导体工艺技术的日益复杂,设计手册已经发展成为具有数千个二维设计规则的千页文档,以编纂和解释。在许多情况下,单个3d故障机制/忧虑可以驱动数百个2d设计规则。这些2d设计规则的发展需要对关于集成工艺流程和所得结构的3d本质做出重要假设。2ddrc是从相对简单的计算开发的,可能会导致设计过于保守。例如,考虑确保金属互连层上的线与底层通路之间的最小接触面积所需的2d设计规则。通路是在两个互连层(也称为金属层)之间的垂直导电连接器,或互连层与诸如晶体管、电阻器或电容器之类的器件之间的垂直连接器。需要许多额外的2ddrc来满足以3d来表述非常简单的标准:金属线和通路之间的接触面积必须超过指定的阈值。当考虑到多种制造变化会影响接触面积时,2ddrc情况变得更加复杂,包括在光刻步骤期间曝光过度或曝光不足、掩模的错误配准、通路层的平面化(通过化学机械抛光(cmp))以及通过等离子蚀刻产生的侧壁渐缩。在驱动2ddrc的简单公式中包含所有这些统计变量是不可行的,所以drc比防止制造变化所必需的严格。这些过于严格的2ddrc会导致在芯片上具有浪费区域的次优设计。与2ddrc环境相比,虚拟制造环境可以直接以3d形式执行检查,诸如最小线宽、特征之间的最小间距和最小接触面积,而无需假设从2d转换到3d。直接在3d中执行的检查在本文中被称为“3ddrc”。3ddrc的一个好处是所需的检查次数远远小于2d环境中所需的检查次数。因此,这些检查比2d检查更健壮,更容易开展。此外,利用更小的一组3d规则,虚拟制造环境可以对工艺参数的一系列统计变化进行检查。应该意识到,3d-drc不同于也可以在虚拟制造环境中执行的虚拟测量/计量操作。虚拟测量计量操作模仿制造中的实际测量和计量操作,由此指定测量位置并输出诸如距离值或面积之类的度量。另一方面,对于3ddrc,指定几何标准并且标准的位置和值是所需的。也就是说,该位置是3ddrc操作的输出而不是输入。例如,虚拟计量操作可以指定2d设计数据中由定位器指示的特定位置处的氧化物膜厚度测量,而用于最小层厚度的3ddrc可以请求3d模型中氧化膜厚度小于指定阈值的任何位置。然后可以对满足特定最小尺寸标准的位置搜索3d结构模型。类似地,3ddrc也可能导致结构模型被搜索以查看是否满足最大尺寸标准。这种3ddrc因此提供了识别意外故障原因的一些优点,这些优点是虚拟测量/计量操作无法实现的。3d-drc的实例包括:·电网隔离:找到所选导体之间的最短距离。导体是可以由一种或多种导电材料组成的团块(“团块”是3d结构模型内的离散体积区域(技术上为3歧管)。团块可以由单种材料或多种材料组成);·最小分离:找到一组选定团块中任何一对之间的最短距离;·最小线宽:找到通过一组选定团块中的任意团块的最短距离;·最小层厚度:找到通过包含材料层的团块集合中的任何团块的最短距离;·最小接触面积:找到所有选定团块之间的最小接触面积。可以根据构成材料、电导率或其他性质来选择团块。每个3ddrc检查都可以通过指定阈值进行扩展。例如,为最小线宽检查指定阈值会生成最小线宽小于阈值的位置列表。本领域技术人员将认识到可以定义这种性质的其他检查。分析模块在一个实施例中,虚拟制造环境包括分析模块。分析模块被设计成模拟半导体工艺集成商遇到的用例中的工作流程。半导体工艺集成商遇到并由分析模块解决的示例性用例可以包括但不限于关键参数识别、工艺模型校准和可变性分析。在关键参数识别中,分析模块可以找到最强烈影响结果(校准、缺陷模式等)的工艺步骤/参数。在工艺模型校准中,可以调整工艺参数以使3d模型匹配来自物理制造的测量结果,诸如但不限于透射电子显微镜(tem)数据或工艺目标。在可变性分析中,分析模块可以帮助用户分析并理解对于一组虚拟3d模型获得的计量数据的可变性,诸如但不限于通过估计用于规格界限设置的结构或电参数的可变性来实现。这里描述的分析模块可以通过应用于虚拟半导体制造环境中的参数和设置的实验设计或蒙特卡洛模拟产生工艺变化,然后为用户执行自动统计分析、优化和可视化。被分析的数据可以包括输入工艺参数的设置以及(但不限于)对虚拟制造环境中产生的3d虚拟半导体结构进行评估的计量、结构搜索、dtc检查和电气分析。实施例利用被选择并定制以解决问题并且解决虚拟半导体制造特有的问题,并校正将结果数据输出到常规第三方统计工具时可能发生的错误。实施例还为实验设计提供了更有效的技术,因为本发明的虚拟半导体制造环境构建3d模型的特定方式导致不具有其他实验设计方法必须解决的某些常见问题。例如,如果平台和参数设置没有发生变化,则在虚拟半导体制造环境中每次都会生成相同的3d模型。因此,对于3d模型输出没有随机分量,并且不需要执行实验设计中的三个常见任务,即随机化、复制和阻塞。在一个实施例中,分析模块被集成到虚拟制造环境中,导致通过第三方统计方案无法获得的改进的和新的功能。在一个实施例中,ui和算法可以按用例进行组织,并且针对每个用例遵循左侧的逐步流程ui。这种设计可能强烈地指导用户(可能缺乏统计培训)来执行正确的分析步骤,以避免分析中的错误。分析模块还可以包括统计分析引擎,其使用一组分析算法来正确地分析每个特定用例。分析模块可以解决第三方统计软件未正确解决的问题,诸如多重共线性和异常值(下面讨论),并且如前所述,避免使用不需要的方法,例如在实验设计期间的随机化。分析结果可以以多种格式提供给用户或第三方软件。图13描绘了示例性实施例中的示例性分析流程。分析模块的输入可以包括但不限于选择可以按用例组织的分析类型。(例如识别关键参数、优化、校准、可变性分析)。另外的示例性输入包括感兴趣的工艺参数(例如,被指定为名义值和/或范围)和感兴趣的目标(例如,计量值、结构搜索、dtc检查、电气分析值)。在一个实施例中,输入值可以3d模型文件的参考。分析模块可以执行运行列表生成以建立实验的实验设计(doe)(例如,筛选d.o.e.、全因子d.o.e.、蒙特卡洛模拟),然后运行列表执行并且可以利用集群计算来提高执行期间的效率。执行产出可以包括异常值检测和统计分析结果,诸如确定参数重要性/排名。产出还可以包括探索图(如双变量图、响应面)和间接优化。在一个实施例中,结果也可以被输出到第三方工具以供进一步分析。关键参数识别采用如本文所述的分析模块的实施例的一个示例性用例是关键参数识别。在关键参数识别中,分析模块接收用户对平台的选择,包含2d布局和工艺步骤。关键参数识别用例的目的是确定哪些参数与目标相关并影响目标。然后,这些参数被排列以显示它们的相对重要性。在一个实施例中,用例具有七个步骤:1)选择实验设计;2)选择参数以改变并将用户选择的级别输入到设计中;3)生成设计并运行(如果需要,则导出);4)选择计量目标;5)设置回归选项;6)从doe结果数据中选择已识别的异常值以添加或删除;和7)运行回归并查看结果。确定重要/关键参数。在该实施例中,第一步骤是选择实验设计(doe)步骤,也称为试验设计。d.o.e.是一种用于计算特定参数设置组合的实验次数从而利用较少的实验工作获得更多的信息的方法。分析模块提供三种创建实验设计的方法来对参数空间进行采样:完全析因设计、确定性筛选设计(dsd)和蒙特卡洛模拟。图14a描绘了在虚拟制造环境中提供的用于选择实验设计1402类型的示例性ui1400。完全析因设计是最经典的实验设计。创建所有可能的组合。当参数数量较少时,大约从2到7,最佳使用完全析因设计。对于选择的每个参数设置,用户通过ui输入级别的数量和这些级别的值。在一个实施例中,对于每个参数设置可以输入多达10个级别。最终筛选设计(dsd)是在参数数量较多或运行成本(时间)很高时使用的一种筛选设计。对于相同数量的参数,它比完全析因设计产生的运行要少得多。实施例可以仅对连续变量实施dsd增强方法。在一个实施例中,对于dsd,仅为每个参数指定了三个级别。蒙特卡洛模拟是一种d.o.e.选项,其允许使用正态分布或均匀分布来随机生成参数设置。在实施例中,ui允许用户输入正态分布参数的平均值和标准偏差,或均匀分布参数的极小值和极大值,并相应地生成随机值。在实施例中,用户还可以输入期望的运行次数。图14b描绘了实施例中的示例性ui1410,通过该ui1410,用户可以指定设计中变化的每个参数的级别。图14b示出了用于选择全因子doe的参数的屏幕截图。左侧窗格包含平台中的参数列表。每个都可以被选择并添加到右侧窗格中。在那里,用户为每个级别输入期望的级别数量1414和值1416。例如,如果选择了三个参数,并且它们分别具有3、2和4级,则它们将产生3*2*4=24次运行。在实施例中,在先前步骤中创建的d.o.e.由虚拟半导体制造环境以批处理模式运行,从而为doe中的每次运行生成3d模型。d.o.e.也可以导出到csv或其他类型的文件。在关键参数识别工作流程的第四步中,用户可以选择计量目标以获取由doe产生的3d模型的测量结果。图14c中描绘了用于进行计量目标1422的选择的示例性ui1420。为了执行关键参数识别,在工作流程的第五步中建立回归模型。在图14d中,在示例性实施例中,ui1430使用户能够选择1432是仅建立具有主要效果(原始参数)的回归模型还是构建完整的二次式模型。在另一个实施例中,自动选择回归模型的类型。在一个实施例中,可以为任一类型的回归模型提供默认选项并且可以由用户改变。在另一个实施例中,可以为更有知识的用户提供附加选项。这些附加选项1434可以包括共线性检验的截止值和逐步线性回归的两个进入/退出p值截止值。共线性检验能够正确处理多重线性变量,并正确识别和排除虚拟半导体制造环境中执行的统计分析中的异常值。当多元回归模型中的两个或多个预测变量/自变量高度相关时,会发生多重共线性,从而可以高度准确地预测其他变量。二次式模型的拟合通常产生多重线性变量,并且实施例解决这个问题,如下面进一步描述的。在从实验设计创建的一组3d模型中,一个或多个3d模型可以具有目标(计量、cd等),其包含某些方面不常见的数据值(异常值),这些值会对(正确)统计分析产生不利影响或妨碍。分析模块识别用户的异常值。在图14e中,在示例性实施例中,ui1440使用户能够从所识别的异常值1442中进行选择,以确定在执行统计分析时应从目标数据中省略哪些。对于此步骤中的目标检验了四种类型的异常值。空单元-如果运行失败,则返回目标的空数据单元(无法构建3d模型)。这种类型的运行被自动标记为在统计分析期间被去除的异常值,并且不能由用户放回。noval-如果运行完成,但无法计算目标测量值,则返回文本值“noval”。这种类型的运行被自动标记为在统计分析期间被去除的异常值,并且不能由用户放回。常数值-目标的多个值可以相同。如果目标的许多结果相同,这将妨碍或扭曲统计建模。检验目标数据以通过将其与中值进行比较来检查一定量的数据(例如50%或更多的数据)是否相同/恒定。这些运行被删除。如果所有目标数据都相同,则会报告错误。统计异常值-这些数据点距离数据中心充分远,可能需要从分析中排除。中值绝对偏差(mad)方法可用于统计检验每个数据点是否是异常值。假定mad=中位数(|x-中位数(x)|),与标准偏差相当的稳健性可以计算为sm=1.4826*mad。超过mad±k*sm的数据值(默认情况下k=3,相当于3标准偏差)可以被视为异常值,并标记以供用户检查。在一个实施例中,用户可以将这些异常值中的任何一个放回到分析中。应该理解的是,在测量数据中可能存在当使用在此讨论的设计类型(即,dsd、完全析因或蒙特卡洛模拟)时不是问题的异常值,因为根据定义,这些数据点在范围内,除非用户在设置水平/范围时发生了排印或其他错误。在去除异常值之后,可以针对目标的数据执行多种统计分析。例如,在一个实施例中,分析模块可以为回归模型(如果选择平方/交叉项)做出输入参数。这允许拟合x参数和目标y之间的基本曲线关系。一组变量x可以拟合到线性回归模型中,并且该方程可以用线性代数符号表示为:x*b=y,其中x是具有n行(运行)和k列(变量)的矩阵。在实施例中,分析模块还可以针对所有可能的输入变量对执行多重共线性检查,计算相关系数r,并且用|r|>0.9(这个截止值可以由用户调整)去掉每一对的一个参数。这在大多数情况下解决了多重共线性问题。在实施例中,分析模块还可以执行未确定的矩阵检查以检查x是否欠定(k>n)。如果变量比数据点(运行)多,则没有足够的数据来使用标准方程找到唯一的回归方案(算法无法返回答案)。有两种方案:1)删除变量(仅使用主效应而不是完整的二阶模型),或2)使用如主成分回归的方法。在一个实施例中,分析模块应用第一类型的方案以删除变量。如果k>p,那么平方项和交叉项将被删除并再次检查。如果x仍然欠定,则不能执行回归,并向用户返回错误。分析模块可以进一步对数据运行数字检查。在异常值删除之后,根据用户选择的设计及其大小,可能没有足够的运行时间来解决回归问题。在一个实施例中,检查将确定运行次数n是否为<10,在这种情况下,没有足够的数据并且将错误返回给用户。在实施例中,分析模块可以执行逐步线性回归。可以使用正向方法:初始模型仅包括截距(β0权重),并且对所有变量进行统计学重要性检验以确定哪一个(如果有的话)应该被输入到模型中。一旦选择了变量,比如说变量x3,那么检验所有其余的变量以包含到新模型中。这个过程继续下去,直到没有变量符合纳入标准(p值<0.05,用户可调)。还会检验模型中的变量(p值>0.10,用户可调)。在实施例中,分析模块可以执行相对重要性计算以识别关键参数。如果使用两个或更多统计显著的参数来生成模型,则仅使用这些变量来计算新的线性回归,但在它们已被自动缩放之后。为了自动缩放变量,从所有数据点中减去变量的平均值,然后将结果值除以变量的原始标准偏差。这使得所有变量的均值为0,标准差为1。这样做的原因是变量的缩放。一个变量可以在0到1的范围内,而另一个变量可以在50到80的范围内。回归的重要性(权重的大小,β值)受变量的缩放的影响。如果想通过检查β值来知道哪些变量更重要,则必须将回归模型中的变量转换为具有自动缩放完成的相同方差。结果可以以多种不同的格式通过用户界面1450呈现给用户,例如但不限于,具有注释1452的图,如图14f中所示的表1454。图线是预测目标对实际目标的图线。在一个实施例中,它可以用以下注释:r2(回归平方相关系数,范围从0到1,表示由该模型解释的目标变化的分数),均方根误差(rmse,预测准确度的量度)和n(回归模型中使用的实际数据点/运行次数)。在一个实施例中,回归结果的输出表1454可以具有五列,如图14g以较大的形式所示。第1列:参数名称。这些是原始变量的名称,如果包含,则是平方项和交叉项。第2列:重要变量的p值。第3列:回归权重(β)。第4栏:相对权重。用自动缩放的变量计算用于回归的回归权重(β)。这些可以用来对重要参数进行排序。例如,当计算相对重要性时,参数etch4横向比可以被确定为比etch1蚀刻比率更重要。第5列:状态。在一个实施例中,有四种可能的结果:非显著、显著、去除高度共线以及去除欠定。在一个实施例中,重要参数具有非零权重和缩放的重要性,这表示给定工艺参数对于所选择的计量有多重要。这种关键参数识别的方法在图15中进一步总结,该图描绘了在示例性实施例中执行以识别关键参数的一系列步骤。该序列始于由虚拟制造环境接收到平台的用户标识(布局数据和工艺步骤)(步骤1500)。然后针对感兴趣的半导体器件的d.o.e.执行多个虚拟制造运行(步骤1502)。在一个实施例中,通过在虚拟制造环境中提供的用户界面来接收用户对d.o.e.的类型和附加的d.o.e.相关输入选择的选择。可替代地,在另一个实施例中,d.o.e.和d.o.e.参数的类型由虚拟制造环境自动选择。接收用户对目标的选择(例如:计量测量、结构搜索、dtc检查和/或电气分析)(步骤1504),并且分析模块识别由如上所述的虚拟制造运行产生的目标数据中的异常值(步骤1506)。识别出的异常值被显示给用户,并且然后通过提供的用户界面接收用户选择,将一个或多个异常值添加回目标数据或从目标数据中去除异常值(步骤1508)。分析模块随后使用异常值决定后的经调整的目标数据执行回归分析以识别d.o.e.的一个或多个关键参数(步骤1510)。然后向用户显示所识别的关键参数的指示(例如,列表、线图、图表),或者可以将所识别的关键参数导出到第三方应用以进行附加处理(步骤1512)。工艺模型校准分析模块也可以执行工艺模型校准。在工艺模型校准中,在虚拟制造环境中调整工艺步骤参数和设置,以使从虚拟制造工艺产生的虚拟3d模型匹配物理制造环境中产生的物理半导体。一旦校准,虚拟半导体制造环境中的参数及其设置可以发生变化,以引入3d模型的变化,并提供有关哪些工艺变化将改善各种半导体性能的信息。在一个实施例中,提供向导程序用户界面以引导用户完成优化虚拟3d模型以匹配物理半导体的过程。如果存在多个目标,则用户选择测量目标和它们的期望值(一个或多个),对目标的重要性进行加权,设置参数界限,运行一个或多个试验,并且接收优化的参数值和相应的测量目标结果。在校准工作中调整工艺参数的常规虚拟制造环境缺少能够进行适当的工艺模型校准的系统级组件。此外,许多半导体工艺集成工程师很少或没有统计知识。因此,这些工程师通常通过一次一因素(ofat)方法通过以原始的试错方式调整参数来执行工艺模型校准。当它终究找到任何方案时,这种方法非常耗时并且得到质量较差的方案。ofat方法保证不能找到最佳参数集,因为它没有考虑参数之间的任何相互作用的影响。为了解决这些问题,实施例使用集成到虚拟制造环境中的分析模块向用户(例如,可能具有有限统计知识或没有统计知识的半导体工艺集成商)提供自动统计分析、优化和可视化。更具体地说,实施例提供了编程方法来解决校准问题而不会使在统计学中未经训练的工程师困惑。分析模块中的统计分析引擎使用一组分析算法来分析具有很少的用户输入的每个特定的用例。在一个实施例中,用户界面(ui)是向导,其目的是强烈指导用户执行正确的分析步骤。该向导程序可以按用例进行组织,并按照每个用例的左侧逐步流程ui进行操作。在图16中描绘了在示例性实施例中执行的用于工艺模型校准的示例性工作流程。该序列始于接收平台标识的虚拟制造环境(布局数据和工艺步骤),从该虚拟制造环境产生感兴趣的半导体器件的虚拟3d模型。在大多数情况下,在通过虚拟制造环境中提供的ui所提供的用户选择/规格之后,将检索平台。ui还接收用户期望在相应的物理半导体上匹配测量目标的3d模型上的一个或多个测量目标的用户标识(步骤1602)。目标可以是但不限于与在虚拟半导体结构上评估的计量值、结构搜索、dtc检查、电气分析等有关的值。在另一个实施例中,可以在没有用户输入的情况下以编程方式选择平台。然后确定重要的并且应该被调整以使得3d模型目标值与实验数据匹配的参数(关键参数)(步骤2904)。在一个实施例中,此确定是通过由如上所述的分析模块执行的关键参数识别过程完成的。可替代地,在另一个实施例中,关键参数可以由用户通过ui手动选择。该序列通过ui接收用于每个目标的期望值(dv)的用户说明来继续(步骤1606)。dv可以是但不限于从tem获得的距离、或3d模型的切片与整个tem之间的匹配质量或光谱。相对权重通过默认或者由用户指示而应用于每个目标,例如对于两个目标a和b,如果用户期望,则目标a可以被加权为比目标b重要两倍。该序列通过接收在用户设置下限和上限的校准中要调整的每个参数的用户规格来继续(步骤1608)。分析模块中提供的优化算法将参数保持在这些边界内,因为它将朝着解进行迭代。分析模块接下来执行优化算法(步骤1610)。优化算法可以执行间接或直接优化,这两者在下面进一步描述。在一个实施例中,用户可以具有选择或指定的选项,诸如迭代次数、收敛容差、评分函数类型(l-2或l-1)、试验次数等。在一些实施例中,对于多次试验,可以创建在先前指定的下限和上限内的参数的随机起始值。优化算法的结果被显示给用户(步骤1612)。在一个实施例中,用户可以通过ui从显示的结果中选择试验以触发在虚拟制造环境中建立3d模型(步骤1614)。分析模块可以使用两种不同类型的优化算法。间接优化将优化算法应用于在关键参数识别过程中创建的回归方程。间接优化具有非常快的优点,因为它不会调用虚拟制造环境来构建额外的3d模型,并且通常会避免局部极小值,因为回归方程提供了一组制作响应表面的平面(响应表面指示参数与在3d模型目标和期望值之间的误差的关系)。从参数空间的随机起点开始的试验往往会趋于相似的结果,因此用户可能只能使用少量试验来执行其优化任务。还应该注意,间接优化的缺点是,如果回归方程不能很好地预测目标,则例如如果响应表面是高度非线性的,则结果的质量差。直接优化比间接优化慢得多,并且可以在其中不遵循上面讨论的关键参数识别过程的实施例中使用。在这种方法中,优化算法在每次迭代时调用虚拟制造环境,生成新的3d模型和相关的计量值,并更新优化算法,然后调整参数值。这是顺序优化过程。直接优化具有属于最现实的方法的优点,并且将更好地用于非线性响应表面,并且不一定需要上述的关键参数识别过程首先运行(不需要回归方程式,用户只需挑选参数进行优化)。它具有缓慢的缺点,因为直接优化调用虚拟制造环境来在每次试验的每次迭代构建3d模型,并可能陷入局部极小值。这些缺点可以通过使用多个许可证(速度)和更多试验来减轻,以提供更广泛的参数空间采样,以避免算法陷入局部极小值。各种优化算法可用于执行直接和间接优化。作为非限制性示例,在一个实施例中,具有参数边界的内点算法可以用于间接优化,但是也可以使用其他算法。对于直接优化,作为非限制性示例,可以使用遗传算法,因为它们可以处理具有不连续性和二元目标(存在/不存在)的复杂响应表面。作为使用间接优化执行工艺模型校准的一个非限制性说明,在一个实施例中,用户首先通过如本文所述的分析模块完成关键参数识别过程。更具体地说,用户对一组参数和目标(在虚拟半导体结构上评估的计量、结构搜索、dtc检查、电气分析等)进行实验设计和回归。这识别了每个目标的统计显著参数,并使用这些统计上显著的参数创建预测每个目标的回归方程。如上所述,用户选择一个或多个目标,输入每个目标的期望值(dv),并对其重要性进行加权。可以提供1的每个目标的默认加权。对于校准选项,用户可以选择使用(默认)或不使用(默认)平方误差,并且可以设置高级选项,诸如但不限于优化试验次数、迭代次数和收敛容差。可以为每个选项提供默认值。例如,优化试验的次数可以被设置为默认值10,每次试验的迭代次数可以被设置为默认值100,并且收敛容差可以被设置为默认值1e-6。在设置了高级选项之后,用户可以通过所提供的ui设置被优化的每个参数的允许的下限和上限。在分析模块进行优化期间,参数值将被保持在这些界限内。用户通过ui启动校准运行并开始优化。在一个实施例中,底层计算引擎可以使用内点算法。一旦优化试验完成,每个试验都会显示优化的参数和目标值,以及完成/错误消息,用户可以选择一个试验在虚拟制造环境中进行构建,以评估生成的3d模型。如上所述,在一个实施例中,可以经由ui向导程序来引导工艺模型校准序列。图17描绘了用于上述工艺模型校准序列的计量目标的选择,其中指导用户从目标(在关键参数识别过程期间已在先为这些目标生成回归数据)中选择目标。如下面进一步解释的那样,随后在执行间接优化时使用回归数据。在一个实施例中,ui1700呈现目标1702的可选列表,但限制用户从已经具有回归模型的计量目标中进行选择。在实施例中,不提供其他参数并且不提供其他计量目标。图17还描绘了使用户能够为所选目标指定dv的ui中的表格1704。在右窗格的表格中,用户输入dv(这些单元最初可以是空的)和权重,权重在默认情况下可以是1,并且可以由用户改变。图18描绘了使得能够选择可以由工艺模型校准向导程序提供的校准选项1802的示例性用户界面1800。如所描绘的,在一个实施例中,可以选择1804优化方法(间接与直接)并且虚拟制造环境可以提供预先选项复选框1806,以使用户能够指定选项,诸如优化试验的次数、每次试验的迭代次数和用户所需的容差。可以初始提供默认值,在一个实施例中,默认值可以由用户改变。工艺模型校准向导还可以提供使用户能够选择参数界限的用户界面1900,如图19所示。用户选择的回归中的所有统计上重要的参数列表可以由分析模块来创建,并以表格格式1902显示。针对每个参数列出相关目标1904。例如,在图19所示的表格中,参数2.1.15:厚度对于三个回归目标fincd_top、fincd_bot、gapcd_top是重要的。用户在每个参数上输入所需的下限和上限。然后,工艺模型校准向导程序可以提供运行按钮以开始校准,并且可以通过用户界面2000向用户显示结果,如图20所示。例如,可以从内部或外部模拟环境以表格格式显示结果2002,并可以显示试验编号、优化结果、预测目标结果和参数2004的值。在一个实施例中,所显示的视图可以使用户能够选择表格中的列以使用来自特定成功试验的参数来导出或在虚拟制造环境的3d视图中自动建立模型。可变性分析可变性分析帮助用户分析并理解针对一组虚拟3d模型获得的计量数据的可变性。在一个实施例中,虚拟制造环境中的分析模块可以执行可变性分析以生成用户界面,该用户界面显示关于目标分布的计算信息的表格、目标数据直方图和正常分位数的图,并提供切换到第二个绘图窗口、最多选择四个目标并绘制/比较其经验累积分布函数的能力。此外,如本文所述的可变性分析提供了标准偏差(σ)的精确度及其与样本大小的相互关系的估计、用于评估目标数据是否正态分布的方法以及用于视觉比较的一致方法。可变性分析是用户评估从虚拟制造环境中创建的多个虚拟半导体结构获得的目标值(计量、结构搜索、dtc检查、电气分析等)的分布的任务。目的是确定该目标的名义值、范围、规格界限等。用于半导体器件结构的常规虚拟制造环境缺乏实现适当可变性分析的系统级组件。许多半导体工艺集成工程师几乎没有或没有统计知识,因此这些工程师以不完整和/或不正确的方式进行可变性分析。目标数据可能被假定为正态分布,但情况可能并非如此,如果目标数据不是正态分布的,则平均值和σ值是误导性的。即使目标数据是正态分布的,在蒙特卡洛模拟/实验设计中,通常也不会解决获得有用的σ精度所需的适当样本量。用户经常高估或低估样本量,这样会浪费时间和/或导致质量差的答案。此外,分布的可视化和比较以不同的方式在不同的软件包中完成,或根本不完成,这导致用户之间的混淆。为了解决这些问题,在一个实施例中,分析模块被设计为执行可变性分析,以便在虚拟制造环境中为用户(例如,具有有限的或没有统计知识的半导体工艺集成商)提供自动统计分析、优化和可视化。图21描绘了在示例性实施例中执行可变性分析的一系列步骤。该序列始于接收由虚拟制造环境使用的平台的用户识别(布局数据和工艺步骤)以产生感兴趣的半导体装置结构的虚拟3d模型(步骤2100)。用户创建蒙特卡洛d.o.e.并识别3d模型的目标(步骤2102)。然后对蒙特卡洛d.o.e.进行多次虚拟制造运行(步骤2104)。如下面进一步讨论的,在一个实施例中,执行大约200次运行的缩减集合。分析模块以上述方式识别由虚拟制造运行产生的目标数据中的异常值(步骤2106)。识别出的异常值被显示给用户,并且通过提供的用户界面接收用户选择,针对每个目标将一个或多个异常值添加回目标数据或从目标数据中去除异常值(步骤2108)。用户通过用户界面选择可变性分析选项并选择一个或多个目标用于分析(步骤2110)。然后,可变性分析结果以不同的形式显示给用户,诸如但不限于表格分布数据、目标数据直方图和正常分位数的图,或者可以将结果导出到第三方应用以进行额外处理(步骤2112)。如果需要,用户可以切换到第二绘图窗口,经验累积分布函数(ecdf)窗口,并且选择多达四个目标,并且分析模块将绘制/比较它们的经验分布函数。图22描绘了在示例性实施例中的显示可变分析结果窗口2200的示例性用户界面。对于所选目标,可变性分析主窗口显示表格2202和两个图、直方图2204和正常分位数2206。该表格2202包含用于所选目标的多个计算信息:例如:n是计算中使用的数据点的数量(用户可以添加/去除异常值,因此这里示出了使用的数据点的实际数量);平均值和平均值的95%ci(置信区间);标准差和标准偏差的95%置信区间。95%置信区间对用户来说是非常重要的,因为它是对标准差(σ)精确度的估计。如果n=200,则95%置信区间约为±10%,发现可将其用于估计规范限制。200的样本数量远小于通常推荐用于蒙特卡洛模拟的样本数量(通常建议为10,000),但是可以提供±10%的精度,这在一些用例中是可以接受的。用户可以根据需要调整样本大小(n)以提高σ精确度(ci)和平均值。在另一个实施例中,用于蒙特卡洛模拟的样本大小小于五百。正态性检验-lilliefors正态性检验结果应用于所选目标,报告为p值,以及它是否具有统计显著性(是/否)。这是通过分析模块用于评估目标数据是否正常分布的多种方法中的第一种;百分位数值-所选目标的最小,0.5%,2.5%,5%,25%,50%(中值),75%,95%,97.5%,99.5%,最大。可变性分析主窗口还可以显示直方图,即所选目标的数据的直方图,其中正常的pdf覆盖用于正态性的视觉比较。如果直方图条遵循正常的pdf,则目标数据可以说是正态分布的。这是分析模块提供的用于检验目标数据正态性的第二种方法。可变性分析主窗口可以进一步显示所选择的目标数据的正常分位数(quantile)图。如果点靠近或在线上,目标数据可以说是正态分布的。这是分析模块提供的用于检验目标数据正态性的第三种方法。应理解,本文中未明确讨论的用于检验目标数据的正态性的另外的方法也可以由分析模块执行,并且应该被认为是在本发明的范围内。分析模块还可以生成用于显示可变性分析结果的第二窗口的显示。图23描绘了在示例性实施例中用于显示两个分开的目标2302、2304的经验累积分布函数的比较的示例性用户图形界面2300。例如,用户可以点击ecdf窗口的标签2306,并选择最多四个目标来绘制并比较他们的经验累积分布函数。x轴是缩放到0到1范围内的目标数据,而y轴是从0到1的累积概率。这使用户能够以等效方式比较目标分布,并检查在规格界限设置中重要的尾部效应。分析模块所实现的用于评估正态性的多种方法允许用户确定他们是否应该将目标数据视为正态分布。如果目标数据是正态分布的,用户可以使用平均值和标准偏差来估计常用的三个或四个σ点来设置规格界限。如果数据不是正态分布的,则用户可以从表中显示的百分位数和最小/最大值以及ecdf图的尾部估计有用的规格界限点。在另一个实施例中,目标数据可以自动与高斯混合模型拟合并因此用于估计用于规格界限设置的有用点。在实施例中,这种方法的变型是允许用户用各种其他已知分布(例如f或t分布)拟合数据的特征,并且由此估计用于规格界限设置的有用点。本发明的部分或全部实施例可以被提供为在一个或多个非临时性介质上或其中实施的一个或多个计算机可读程序或代码。介质可以是但不限于硬盘、光盘、数字多功能盘、闪存、prom、ram、rom或磁带。通常,计算机可读程序或代码可以用任何计算语言来实施。由于可以在不脱离本发明的范围的情况下做出某些改变,所以包含在以上描述中或者在附图中示出的所有内容都被解释为说明性的而不是字面意义上的。本领域的技术人员将认识到,在不脱离本发明的范围的情况下,可以改变附图中描绘的步骤和体系结构的顺序,并且这里包含的图示是本发明的多种可行的描述的单例。本发明的示例性实施例的前述描述提供了说明和描述,但并非旨在穷举或将本发明限制为所公开的精确形式。鉴于上述教导,修改和变化是可行的,或者可以从本发明的实践中获得。例如,尽管已经描述了一系列动作,但是可以在与本发明的原理一致的其他实施方式中修改动作的顺序。此外,可以并行执行非依赖性动作。部分附图的部分文字翻译图2processfile:工艺文档layoutoptions:布局选项topcell:顶部单元cell6×6:单元6×6scan:扫描gdslayernames:gds图层名称ocadencevirtuosobridge(notconnected):ocadencevirtuoso桥(未连接)buildoptions:构建选项modelresolution1.0:型号分辨率1.0savemodelaftereverystep:每步完成后保存模型start3dviewerafterbuildingmodel:建模后启动3d查看器图4file:文档edit:编辑view:视图tools:工具widows:窗number:编号stepname:步骤名称materialname:材料名称thickness:厚度maskname:掩模名称soiwafersetup:soi晶片设置finmodule:fin模块fincutmodule:fincut模块gatemodule:栅极模块high-kgatedielectricdeposition:高k栅极电介质沉积measurefilmthickness:测量膜厚度pwftindeposition:pwftin沉积measurefilmthickness:测量膜厚度barriertandeposition:阻隔tan沉积wfresistdeposition:wf抗蚀剂沉积resist:抗蚀剂wflithography:wf光刻wftinremovaletch:wftin去除蚀刻wfresiststrip:wf抗蚀剂剥离nwftindepositon:nwftin沉积gateamorphoussilicondeposition:栅极非晶硅沉积gateamorphoussiliconcmp:栅极非晶硅cmpgatehardmaskdeposition:栅极硬掩模沉积gatepatterning:栅极图案化gatecutpatterning:栅极切口图案化gateetch–composite:栅极蚀刻复合物measurecd:测量cdsavemodelcomponents:保存模型组件sigemodule:sige模块action:行动deposit:沉积wafer:晶片tooperateon:以在…上操作maskfield:掩模场dark:暗light:亮topside:顶侧bottomside:底侧material:材料thinkness:厚度distribution:分布nominalvalue:名义值scalar:缩放anisotropy:各向异性cornertype:角类型rounded:圆形的processlibrary:工艺库modelingsteps:建模步骤comments:评论crosssection:横截面custompython:定制pythondeposit:沉积electroplate:电镀etch:蚀刻exportgeometry:导出几何exposematerial:暴露材料fragmentoperations:片断操作generatemesh:产生网growoxide:生长氧化物implant:植入interfacegrowth:接口生长maskoperations:掩模操作measurement:测量modelingparameters:建模参数planardeposit:平坦沉积planarize:平坦化removematerial:去除材料replacematerial:替换材料savemodel:保存模型waferoperations:晶片操作wafersetup:晶片设置cmossteps:cmos步骤implant:植入oxidize:氧化growoxide-loco:生长氧化物-locodiffusion:扩散salicide:硅化物polysilicondeposit:多晶硅沉积oxidefill&viaetch:氧化物填充与通孔蚀刻interconnect:互连图14ausecase:用例designmethod:设计方法analytics:分析doeoptions:doe选项selectinputfactors:选择输入因子rundoe:运行doeselectanalysistargets:选择分析目标importregressiondataforcalibration:导入回归数据进行校准图14bavailableinputs:可用输入variables:变量numberofruns:运行数图14cavailableanalysis:可用的分析图14dincludeinregression:回归中包含图14eoutliertable:异常值表statisticaloutlier:统计异常值图14fmetrologytarget:计量目标actualvspredicted:实际的与预测的showconfidenceinterval:显示置信区间图14gp-value:p值highlycollinear:高度共线性图17parameterbounds:参数界限runcalibration:运行校准remove:去除图18optimization:优化scoringfunction:评分函数图19relevanttargets:相关目标lowerbound:下限upperbound:上限图20predictedtargetvalve:预测目标值converged:收敛的图22quantileplot:分位数图histogramwithgaussianoverlay:具有高斯重叠的直方图图23empiricalcdfs:经验cdfprobability:概率。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1