面对亚微米设计与制造问题,工程师已成功地使用光学近似校正(OPC)和相移方法在硅片上实现了更小的特征尺寸。本文介绍的具有伸缩性的分布式处理(DP)和真正的混合OPC解决方案,可以使设计公司以更低的成本向0.1微米技术迈进,并缩短周转时间。 随着半导体行业按照摩尔定律稳步向前发展,半导体器件、制造方法和工艺材料等方面的不断提升促进设计和制造向越来越小的特征尺寸发展。但是,从0.25微米工艺向0.13微米工艺的转变表明,制造设备的改进无法满足在硅片上可靠地印刷最小特征尺寸的需求(图1)。因此,需要对亚微米设计与制造进行深入的研究,因为此时特征尺寸远小于现有最先进的光刻设备所能产生的光波波长。 幸运的是目前已经出现了与具体设备无关的技术,它使IC设计工程师和厂商能够改进亚微米设计和制造的性能。相移掩模(PSM)技术确保在硅片上可靠地刻出更小的特征尺寸,因而与过去相比,所制造的晶体管门的物理尺寸就小得多。同时,采用OPC技术可以修复亚微米畸变。通过扩展光分辨率和现有设备的ROI,上述技术提高了设备性能,因此,半导体行业预期在2004年前能实现0.07微米以下工艺。 目前,随着特征尺寸的减小,设计工程师除了采用PSM和OPC方法之外,没有其它技术能够满足更小几何形状对分辨率的要求。在OPC技术获得应用之后,数据量是随着各级工艺的递进而线性增加的,但是随着PSM和OPC技术的应用,需要处理的数据量呈爆炸式增长。 这种分辨率增强技术需要处理大量的数据,可能导致数据量呈指数形式增加,当OPC工具过度校正设计数据库时,问题就更为严重。例如,对于一个0.35微米芯片的全部掩模层,全部掩模数据准备(MDP)完毕通常要花费2小时左右。而对于0.18或0.15微米工艺,仅仅为一层掩模进行数据准备就可能需要花费4天!因此,可以想象,对于0.07微米工艺,数据量就大得惊人了! 上述情况表明:要实现亚微米分辨率,就要处理巨大的数据量,因此,要找到一种办法以便尽可能高效地处理数据。其次,不管现在采用什么技术来解决数据问题,关键的一点是随着厂商迈向下一代工艺,新的解决方案必须具备快速可升级和性价比高的特点。本文阐述各种OPC技术及其与数据量的关系,然后考察解决数据量问题的各种现有解决方案的优缺点,并介绍可伸缩分布式处理(DP)方法在数据处理中的诱人之处。 现有的两种OPC方法 目前,OPC工具采用下列两种方法:1. 基于规则的方法,速度很快但不够精确;2. 基于模型的方法,非常精确但运行速度慢。 基于规则的方法是从DRC驱动的方法演变而来的,其中的OPC特征用表格预先确定,表格建立在与每个特征边界对应的间距和线宽的基础上。表格数值根据待测晶圆的实验测量进行插值。这种方法不会严重影响数据量,但是,由于规则不可能考虑到各种可能的情况,在精度上会有不尽如意之处。 基于模型的方法对芯片模式进行仿真以预测晶圆的形状,然后,可以使用预测形状与设计形状之间的误差来计算沿特征边界进行误差补偿所需要的偏移量。这个过程通常需要反复迭代,因而速度较慢。如果改变一个特征上的外形,就需要对相邻的特征进行校正。这种方法可以得到很高的精度,但代价是运行时间的延长和数据量的增加。 新的混合OPC方法 Numerical技术公司提出的OPC方法结合基于规则和基于模型这两种方法的优点,它执行最优次数的OPC来实现最佳可能的周转时间、光掩模工艺和晶圆成品率。这种技术采用了一种专有选择引擎,它考虑了间距、器件几何形状、工艺技术和布局中的相对区域。这种“整体”视图可以将设计划分为一些适合用规则进行校正的区域和另外一些可能最适合用模型来进行校正的区域。 其独到之处在于采用了基于形状的OPC引擎(图2)。传统的基于规则的方法采用一种串行的设计规则校验(DRC)方法,混合OPC方法将基于规则的OPC和基于模型的OPC结合起来,这种新的制造驱动的方法能够并行、精确地处理所有的校正,无论它们是基于规则还是基于模型,这就极大地降低了数据库的规模,并最终缩短了周转时间。 大部分的现有技术都采用与OPC类似的技术来处理,它们之间的差别非常小。通常,设计分为三个参数进行处理(某些部分利用规则,某些部分利用模型):1. 设计区域(CPU、逻辑、存储器等)。这既简单,也易于实现。2. 几何形状(线宽为0.25或0.18微米等等)。这要麻烦得多,但通过基于形状的引擎可以很快实现。3. 特征类型(末端线、门等等)。这时,如果没有基于形状的引擎就很难实现。 通常,设计工程师可以通过调整工具来间接划分设计。例如,可以指定采用0.18微米及更大线宽的设计用基于规则的OPC来处理,而采用0.13微米及以下线宽的设计用基于模型的OPC来处理。如果不采用混合的、基于形状的引擎,设计工程师将不得不执行大量的数据预处理工作,并将每个区段分别反馈到基于规则和基于模型的OPC引擎。这样一来,实质上就有两个布局,在处理结束后要把结果合并起来。不仅合并的步骤比较复杂,而且其结果的可信度还较差,因为设计工程师无法知道两者之间是如何互相影响的。其他所有的方法都采用两个独立的引擎,一个是针对规则的OPC引擎,另一个是针对模型的OPC引擎。这并不简单地表示一个包含两个步骤的过程,更糟糕的是,设计工程师很快就会发现它会被大量的迭代操作以及随之产生的无数数据所困扰。最后,如果基于规则的OPC方法(ROPC)和基于模型的OPC方法(MOPC)所对应的工具分别来自不同的厂商,设计工程师将会面对更大的挑战。 在混合OPC方法中,基于形状的引擎同时考虑了ROPC和MOPC。你最初的建立时间可能要长一些,因为需要查看来自设计工程师的数据以创建图形的形状(图3),但花费这些时间是很有价值的。更为重要的是,在保护层次性的同时,可以利用这一特征获得最大的好处,在下文你可以看到这一点。由于前面已经将所有因素加以考虑,当以后设计变得更复杂时,也不会付出更大代价。从长远来说,设计工程师将会从一个并行、精确、快速、单步式的解决方案中得到益处。 OPC本质上具备非层次性 OPC技术对周围单元的情况非常敏感。如果在一种情形下单元A与单元B相邻,而在另一种情形下单元A与单元C相邻,那么两种情况下单元A的OPC校正将各不相同。单元A的每个实例在OPC之后几乎都不相同,因此信息块重用的概念也就失去了意义,这是由于OPC自身在每个点上、对于设计中的每个不同的物理位置都将具有不同的特性所致。 因此,本质上OPC不具有层次性。你可以采用最好的分层设计技术,但是运行OPC之后,数据将在某种程度上发生变化,从而层次性也就不像当初那样分明。采用某些技术可以处理这个问题并使层次性得到恢复,但无法使它真正回复到原始设计那样,甚至要接近原来的设计都很困难,原因在于OPC依赖于周围单元的情况。 此外,辅助特征和虚拟特征也会增加数据量,每增加一个多边形,也就增加了几何结构。有些工具甚至对这些特征结构执行OPC处理,因而进一步增加了额外的多边形。想象一下,对OPC执行OPC会怎样!但这是可能发生的,因为输入是GDSII格式的设计数据库,此时它包含有虚拟特征。如果对虚拟特征也执行基于模型的OPC处理,这不仅意味着更长的运行时间,而且还会产生大量无用的附加数据。例如,如果虚拟特征最初是一个矩形或梯形,那它只不过是一个具有四个顶点的简单图形。对它执行OPC之后,仅仅截线一项就会使多边形的数量增加10倍。 简而言之,随着文件大小和数据量的增长,随之而来的数据处理量也增加了。此外,最后还需要面对许多不同类型的数据,这就是为什么寻找新的计算方法至关重要的原因所在。 新的计算方法 目前,要解决上述问题可以采用多线程和分布式处理两种方案。它们都是配置了多个CPU的并行计算方法,各自适合特定的应用情况。 在多线程中,一台机器里用不同的CPU处理不同类型的数据,而同一主存储器为所有任务进行服务。对于小型任务,多线程处理不会产生任何问题。但是,多线程技术存在一个速度极限,在最坏的情况下,有些多线程配置可能仅仅采用四个CPU就达到了速度极限。此后,设计工程师就不得不处理存储器竞争这种令人头疼的问题,此时系统开始等待存储器释放。这意味着当增加更多的CPU时,仅仅因为访问主存储器所占用的时间太长,就可能抵消加速所带来的好处,这就是“加速了,但实际上在等待”的典型案例。多线程方法最多能够处理10到12个节点,并能得到较好的结果。超过这个数目,它就完全无法胜任巨大数据量处理的需要。 多线程方法的另一个缺点是可伸缩性不好。例如,从1个CPU升级到4个CPU时,多线程系统并不能快4倍,事实上可能只快了3.6倍。根据具体情况,也许只能取得快2.6倍的性能。无论哪种情况,这个比例都不理想(图4)。此外,从成本上考虑,典型的配备12个CPU的服务器可能需要花费40万美元以上,而且,由于它的可伸缩性不好,如果在短时间里突然需要将处理能力提高25%,那将很麻烦。在大多数情况下,不能仅仅增加4个CPU,唯一的办法是重新买一台16个CPU的新服务器。 上世纪七十年代,Gene Amdahl首次发现了线程或并行计算的极限。Amdahl定律揭示:通过增加CPU所提高的速度会由于CPU数量太多反而减少。原因在于这些CPU必须使用同一资源,如连接到存储器的数据路径(总线)。研究发现,使用并行处理技术有可能将性能提高100倍,而使用多线程处理技术则几乎不可能实现。 与多线程不同,分布式系统可以围绕相对运行于廉价和高速的奔腾微处理器的基于Linux的工作站来构建。此外,分布式系统也可以在以多线程为目的的机器上执行,只要将各CPU看成分别运行在不同机器上即可。 近年来,分布式处理的性能和可伸缩性受到了网络带宽的限制,但是,通过今天的联网技术,许多限制都可以克服。此外,机架式的独立联网CPU群集完全克服了任何网络瓶颈。机架是由与一个网络中的主计算机对话的各个独立计算机构成的。每台机器都有自己的CPU、存储器和磁盘驱动器。机架有自己的网络交换装置,可以组成一个“群集网络”。它为群集处理所有的信息传输,辅助外部企业网络和存储阵列之间的通信,并将这个群集CPU上处理完成的数据转发给企业磁盘。与单台多CPU Sun工作站的成本(16个CPU价格为50万美元以上)相比,这是一种非常经济的解决方案(20个CPU只需要不到10万美元)。 执行分布式处理时,一项任务的各个部分被分派给每个独立的计算机。完成后再将它们送回主计算机。当某个CPU显示它已完成了自己的数据处理工作时,主计算机再将需要处理的下一批数据发送给它。虽然这看起来可能很简单,但驱动分布式处理的基本技术可能是极其复杂的。它需要精密的算法、层次性管理,数据结构也必须设计到软件中去,以便数据库在分布式处理时能最佳地工作。 因此,主要困难在于对问题进行划分、并行地处理问题的各个部分,然后再将结果组合起来。Numerical的软件解决方案可以智能地控制分布式处理,软件的层次性和数据管理模块采用专有方法实现,不仅能高效地按照规定的要求来划分布局,而且还可以连贯并行地执行OPC和校正操作,然后顺利地返回所有的数据。该功能与前述的混合OPC以及有利于制造的好处相比是一大优势。再加上无限的可伸缩性和廉价的Linux群集所有权,设计工程师将发现为什么真正的混合OPC与分布式处理相结合可以提供一个出色的长期方案,尤其对于那些致力于0.1微米以下工艺的半导体公司更是如此。 本文小结 随着数据量的爆炸式增长,分布式处理技术变得备受瞩目。这种方法允许将一项任务划分给几台拥有独立CPU群集的机器,让它们分别运算。从CATS掩模数据准备软件开始,Numerical已将其新分布式处理架构嵌入到了具有亚微米光刻能力的解决方案中。 分布式处理有两种功能选项:1.理想的选择是采用N-ClusterTM,它经过了预测试,并且为运行分布式处理进行了优化。2. 如果由于某种原因更有利于业务的话,可以重用或合并自己的硬件,并在自己的机器上建立分布式处理功能,Numerical公司可为这些不同网络的Linux部件推荐一种优化的群集配置。欲了解更多信息,请访问:www.numeritech.com。 作者:Michael Sanie IC设计部营销与业务发展总监
Numerical技术公司 |