设计用于半导体器件制造的布局的系统和方法

申请号 CN201410045040.8 申请日 2014-02-07 公开(公告)号 CN104636530B 公开(公告)日 2017-12-19
申请人 台湾积体电路制造股份有限公司; 发明人 许钦雄; 侯元德; 陈文豪;
摘要 本 发明 提供了用于设计 半导体 器件布局的系统和方法。例如,接收与半导体器件相关的包括多个目标部件的初始布局。确定将要插入初始布局内的一个或多个伪部件。至少部分地基于一个或多个掩模分配规则,将目标部件和伪部件分配至多个掩模。产生用于制造半导体器件的最终布局。
权利要求

1.一种用于设计半导体器件布局的处理器执行方法,所述方法包括:
接收用于制造半导体器件的包括多个第一目标部件的初始布局;
使用一个或多个数据处理器确定将要插入到所述初始布局内的一个或多个第一伪部件;确定与所述第一目标部件相关的第一宽度变化;
使用所述一个或多个数据处理器将所述第一目标部件和所述一个或多个第一伪部件分配至多个掩模;以及
使用所述一个或多个数据处理器产生用于制造所述半导体器件的最终布局,其中,确定将要插入所述初始布局中的所述一个或多个伪部件的步骤与将所述第一目标部件和所述一个或多个第一伪部件分配至多个掩模的步骤同时实施以减小与所述第一目标部件相关的所述第一宽度变化。
2.根据权利要求1所述的方法,其中,确定将要加入到所述初始布局中的所述一个或多个第一伪部件的步骤包括:
至少部分地基于所述第一目标部件之间的间隔来确定所述一个或多个第一伪部件。
3.根据权利要求2所述的方法,其中,所述第一目标部件之间的间隔包括平行间隔和垂直间隔。
4.根据权利要求3所述的方法,其中:
至少基于与最小长度和最小间隔相关的信息确定所述平行间隔;以及
至少基于与所述最小间隔相关的信息确定所述垂直间隔。
5.根据权利要求1所述的方法,其中,所述第一伪部件包括选自由分段伪部件、完整伪部件和基于剪切的伪部件组成的组的一种或多种伪部件。
6.根据权利要求1所述的方法,其中,包括:
确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;
确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;
估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本。
7.根据权利要求6所述的方法,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:
确定将要分配至所述第一掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中;
确定将要分配至所述第二掩模的一个或多个第三伪部件,所述第三伪部件包括在所述第一伪部件中;
估算与所述一个或多个第三目标部件相关的一个或多个第二宽度变化;以及估算与所述第二宽度变化和所述第三伪部件相关的第二成本。
8.根据权利要求7所述的方法,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:
响应于小于所述第二成本的所述第一成本,
将所述第二目标部件分配至所述第一掩模;以及
将所述第二伪部件分配至所述第二掩模。
9.根据权利要求7所述的方法,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:
确定将要分配至所述第一掩模的一个或多个第四目标部件,所述第四目标部件包括在所述第一目标部件中;
确定将要分配至所述第二掩模的一个或多个第四伪部件,所述第四伪部件包括在所述第一伪部件中;
估算与所述一个或多个第四目标部件相关的一个或多个第三宽度变化;以及估算与所述第三宽度变化和所述第四伪部件相关的第三成本。
10.根据权利要求9所述的方法,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:
响应于小于所述第二成本和所述第三成本的所述第一成本,
将所述第二目标部件分配至所述第一掩模;以及
将所述第二伪部件分配至所述第二掩模。
11.根据权利要求6所述的方法,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:
确定将要分配至所述第二掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中,并且与所述第二目标部件不同。
12.根据权利要求11所述的方法,其中,在所述初始布局中,所述第二目标部件中的一个与所述第三目标部件中的一个之间具有距离,所述距离小于预定限制。
13.根据权利要求1所述的方法,其中,至少部分地基于一个或多个布局着色规则,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:
至少部分地基于所述第一目标部件构建冲突图;
基于所述第一目标部件和所述第一伪部件建立一个或多个潜在连接的部件;以及将所述第一目标部件和所述第一伪部件分配至所述多个掩模以减小与所述潜在连接的部件相关的成本。
14.根据权利要求1所述的方法,其中,所述最终布局包括分配至第一掩模的一个或多个第二目标部件和分配至第二掩模的一个或多个第三目标部件;
其中,所述第二目标部件和所述第三目标部件包括在所述第一目标部件中。
15.根据权利要求14所述的方法,其中,所述最终布局包括分配至所述第一掩模的一个或多个第二伪部件以减小与所述第三目标部件相关的一个或多个宽度变化,所述宽度变化与重定向工艺相关。
16.一种用于设计半导体器件布局的处理器执行方法,所述方法包括:
接收用于制造半导体器件的包括多个第一目标部件的初始布局;
使用一个或多个数据处理器确定用于伪插入件的所述初始布局中的一个或多个间隔;
使用一个或多个数据处理器估算包括在所述第一目标部件中的一个或多个第二目标部件的宽度变化;
确定将要插入所述初始布局中的一个或多个间隔内的一个或多个伪部件,并且将所述第一目标部件与所述伪部件分配至多个掩模;以及
使用一个或多个数据处理器产生用于制造所述半导体器件的最终布局,其中,确定将要插入所述初始布局中的一个或多个间隔内的所述一个或多个伪部件的步骤与将所述第一目标部件和所述伪部件分配至多个掩模的步骤同时实施。
17.根据权利要求16所述的方法,其中,所述一个或多个间隔包括一个或多个平行间隔以及一个或多个垂直间隔。
18.一种非暂时性计算机可读存储介质,包括用于设计半导体器件布局的编程指令,所述编程指令被配置为使一个或多个数据处理器执行以下操作,所述操作包括:
接收与半导体器件相关的包括多个第一目标部件的初始布局;
确定用于所述初始布局的候选伪部件;
确定与所述第一目标部件相关的第一宽度变化;
同时确定布局染色和第一伪部件以减小与所述第一目标部件相关的所述第一宽度变化,所述第一伪部件选自所述候选伪部件;以及
至少部分基于所述布局染色和所述第一伪部件,产生用于制造所述半导体器件的最终布局。
19.一种用于设计半导体器件布局的系统,所述系统包括:
一个或多个数据处理器;以及
编码有指令的计算机可读存储介质,所述指令用于指示所述数据处理器执行操作,所述操作包括:
接收与半导体器件相关的包括多个第一目标部件的初始布局,所述初始布局没有布局染色或伪部件;
确定用于所述初始布局的候选伪部件;
确定与所述第一目标部件相关的第一宽度变化;
同时确定布局染色和第一伪部件以减小与所述第一目标部件相关的所述第一宽度变化,所述第一伪部件选自所述候选伪部件;以及
至少部分基于所述布局染色和所述第一伪部件,产生用于制造所述半导体器件的最终布局。

说明书全文

设计用于半导体器件制造的布局的系统和方法

技术领域

[0001] 本专利文件所描述的技术总体涉及半导体器件,更具体地,涉及半导体器件的制造。

背景技术

[0002] 现代半导体器件通常在集成电路(IC)芯片上进行制造。通常,可以应用软件工具以在具有非常小的尺寸的IC芯片上设计布局。一旦完成设计的用于IC芯片的布局,则可以使用电子束、离子束或其他合适的技术将该布局转变为掩模组或中间掩模(reticles)组。在一个或多个光刻工艺过程中,可以使用掩模组对一个或多个半导体晶圆进行图案化,从而使得掩模图案转印至用于制造IC芯片的半导体器件的晶圆上。
[0003] 由于单个IC芯片上包含多个器件,每个器件的尺寸和器件之间的间隙(即,部件尺寸)持续减小。例如,IC芯片的部件尺寸可以远远小于用于光刻的光的波长(例如,光刻的分辨率)。多次图案化光刻通常用于在IC芯片上生成亚分辨率部件。例如,可以实施可能分别对应于分开的光刻曝光的一系列图案化工艺(例如,利用不同的掩模)制造亚分辨率图案。通常,初始设计布局被分解为遵守特定设计规则的多个目标,并且每个目标可以对应于单个掩模。这种分解或掩模分配称为布局着色,其中,初始布局中的不同的形状为不同的颜色,且通过掩模的数量决定有效颜色的总数量。例如,初始布局包括形状A和B,且形状A和B之间的距离小于预定限制。因此,A和B必须被染成不同的颜色。也就是说,A和B必须分配至不同的掩模。
[0004] 然而,根据特定设计规则完成的布局可能不能在用于制造IC芯片的半导体晶圆上再现(reproduce)。例如,光可能散射而导致布局中的形状的锐在晶圆上显现成弧形。可以调整布局中的形状以校正制造特性并实现更好的转印性能,这通常称为重定向(retargeting)。发明内容
[0005] 根据本文的教导,本文提供了用于设计半导体器件布局的系统和方法。例如,接收与半导体器件相关的包括多个目标部件的初始布局。确定将要插入初始布局内的一个或多个伪部件。至少部分地根据一个或多个掩模分配规则,将目标部件和伪部件分配至多个掩模。产生用于制造半导体器件的最终布局。
[0006] 在一个实施例中,提供了一种用于设计半导体器件布局的方法。例如,提供了用于制造半导体器件的包括多个第一目标部件的初始布局。在初始布局中确定了用于伪插入件的一个或多个间隔。对包括在第一目标部件内的一个或多个第二目标部件的宽度变化进行估算。确定将要插入初始布局中的一个或多个间隔内的一个或多个伪部件,并且将第一目标部件和伪部件分配至多个掩模。产生用于制造半导体器件的最终布局。
[0007] 在另一个实施例中,一种用于设计半导体器件布局的非暂时性计算机可读存储介质包括编程指令。编程指令被配置为使一个或多个数据处理器执行特定的操作。例如,接收与半导体器件相关的包括多个目标部件的初始布局。确定将要插入到初始布局内的一个或多个伪部件。至少部分地根据一个或多个掩模分配规则,将目标部件和伪部件分配至多个掩模。生成用于制造半导体器件的最终布局。
[0008] 在又一个实施例中,一种用于设计半导体器件布局的系统包括一个或多个数据处理器,以及计算机可读存储介质。计算机可读存储介质上编码有用于指示数据处理器执行特定操作的指令。例如,接收与半导体器件相关的包括多个目标部件的初始布局。确定将要插入到初始布局内的一个或多个伪部件。至少部分地根据一个或多个掩模分配规则,将目标部件和伪部件分配至多个掩模。生成用于制造半导体器件的最终布局。
[0009] 为了解决现有技术中存在的问题,根据本发明的一个方面,提供了一种用于设计半导体器件布局的处理器执行方法,所述方法包括:接收用于制造半导体器件的包括多个第一目标部件的初始布局;使用一个或多个数据处理器确定将要插入到所述初始布局内的一个或多个第一伪部件;使用所述一个或多个数据处理器将所述第一目标部件和所述第一伪部件分配至多个掩模;以及使用所述一个或多个数据处理器产生用于制造所述半导体器件的最终布局。
[0010] 在上述方法中,其中,确定将要加入到所述初始布局中的一个或多个第一伪部件的步骤包括:至少部分地基于所述第一目标部件之间的间隔来确定所述一个或多个第一伪部件。
[0011] 在上述方法中,其中,确定将要加入到所述初始布局中的一个或多个第一伪部件的步骤包括:至少部分地基于所述第一目标部件之间的间隔来确定所述一个或多个第一伪部件,其中,所述第一目标部件之间的间隔包括平行间隔和垂直间隔。
[0012] 在上述方法中,其中,确定将要加入到所述初始布局中的一个或多个第一伪部件的步骤包括:至少部分地基于所述第一目标部件之间的间隔来确定所述一个或多个第一伪部件,其中,所述第一目标部件之间的间隔包括平行间隔和垂直间隔,其中:至少基于与最小长度和最小间隔相关的信息确定所述平行间隔;以及至少基于与所述最小间隔相关的信息确定所述垂直间隔。
[0013] 在上述方法中,其中,所述第一伪部件包括选自由分段伪部件、完整伪部件和基于剪切的伪部件组成的组的一种或多种伪部件。
[0014] 在上述方法中,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本。
[0015] 在上述方法中,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第一掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中;确定将要分配至所述第二掩模的一个或多个第三伪部件,所述第三伪部件包括在所述第一伪部件中;估算与所述一个或多个第三目标部件相关的一个或多个第二宽度变化;以及估算与所述第二宽度变化和所述第三伪部件相关的第二成本。
[0016] 在上述方法中,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第一掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中;确定将要分配至所述第二掩模的一个或多个第三伪部件,所述第三伪部件包括在所述第一伪部件中;估算与所述一个或多个第三目标部件相关的一个或多个第二宽度变化;以及估算与所述第二宽度变化和所述第三伪部件相关的第二成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:响应于小于所述第二成本的所述第一成本,将所述第二目标部件分配至所述第一掩模;以及将所述第二伪部件分配至所述第二掩模。
[0017] 在上述方法中,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第一掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中;确定将要分配至所述第二掩模的一个或多个第三伪部件,所述第三伪部件包括在所述第一伪部件中;估算与所述一个或多个第三目标部件相关的一个或多个第二宽度变化;以及估算与所述第二宽度变化和所述第三伪部件相关的第二成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第一掩模的一个或多个第四目标部件,所述第四目标部件包括在所述第一目标部件中;确定将要分配至所述第二掩模的一个或多个第四伪部件,所述第四伪部件包括在所述第一伪部件中;估算与所述一个或多个第四目标部件相关的一个或多个第三宽度变化;以及估算与所述第三宽度变化和所述第四伪部件相关的第三成本。
[0018] 在上述方法中,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第一掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中;确定将要分配至所述第二掩模的一个或多个第三伪部件,所述第三伪部件包括在所述第一伪部件中;估算与所述一个或多个第三目标部件相关的一个或多个第二宽度变化;以及估算与所述第二宽度变化和所述第三伪部件相关的第二成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第一掩模的一个或多个第四目标部件,所述第四目标部件包括在所述第一目标部件中;确定将要分配至所述第二掩模的一个或多个第四伪部件,所述第四伪部件包括在所述第一伪部件中;估算与所述一个或多个第四目标部件相关的一个或多个第三宽度变化;以及估算与所述第三宽度变化和所述第四伪部件相关的第三成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:响应于小于所述第二成本和所述第三成本的所述第一成本,将所述第二目标部件分配至所述第一掩模;以及将所述第二伪部件分配至所述第二掩模。
[0019] 在上述方法中,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第二掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中,并且与所述第二目标部件不同。
[0020] 在上述方法中,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:确定将要分配至第一掩模的一个或多个第二目标部件,所述第二目标部件包括在所述第一目标部件中;确定将要分配至第二掩模的一个或多个第二伪部件,所述第二伪部件包括在所述第一伪部件中;估算与所述一个或多个第二目标部件相关的一个或多个第一宽度变化;以及估算与所述第一宽度变化和所述第二伪部件相关的第一成本,其中,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤还包括:确定将要分配至所述第二掩模的一个或多个第三目标部件,所述第三目标部件包括在所述第一目标部件中,并且与所述第二目标部件不同,其中,在所述初始布局中,所述第二目标部件中的一个与所述第三目标部件中的一个之间具有距离,所述距离小于预定限制。
[0021] 在上述方法中,其中,至少部分地基于一个或多个布局着色规则,将所述第一目标部件和所述第一伪部件分配至多个掩模的步骤包括:至少部分地基于所述第一目标部件构建冲突图;基于所述第一目标部件和所述第一伪部件建立一个或多个潜在连接的部件;以及将所述第一目标部件和所述第一伪部件分配至所述多个掩模以减小与所述潜在连接的部件相关的成本。
[0022] 在上述方法中,其中,所述最终布局包括分配至第一掩模的一个或多个第二目标部件和分配至第二掩模的一个或多个第三目标部件;其中,所述第二目标部件和所述第三目标部件包括在所述第一目标部件中。
[0023] 在上述方法中,其中,所述最终布局包括分配至第一掩模的一个或多个第二目标部件和分配至第二掩模的一个或多个第三目标部件;其中,所述第二目标部件和所述第三目标部件包括在所述第一目标部件中,其中,所述最终布局包括分配至所述第一掩模的一个或多个第二伪部件以减小与所述第三目标部件相关的一个或多个宽度变化,所述宽度变化与重定向工艺相关。
[0024] 根据本发明的另一方面,提供了一种用于设计半导体器件布局的处理器执行方法,所述方法包括:接收用于制造半导体器件的包括多个第一目标部件的初始布局;使用一个或多个数据处理器确定用于伪插入件的所述初始布局中的一个或多个间隔;使用一个或多个数据处理器估算包括在所述第一目标部件中的一个或多个第二目标部件的宽度变化;确定将要插入所述初始布局中的一个或多个间隔内的一个或多个伪部件,并且将所述第一目标部件与所述伪部件分配至多个掩模;以及使用一个或多个数据处理器产生用于制造所述半导体器件的最终布局。
[0025] 在上述方法中,其中,确定将要插入所述初始布局中的一个或多个间隔内的一个或多个伪部件的步骤与将所述第一目标部件和所述伪部件分配至多个掩模的步骤同时实施。
[0026] 在上述方法中,其中,所述一个或多个间隔包括一个或多个平行间隔以及一个或多个垂直间隔。
[0027] 根据本发明的又一方面,还提供了一种非暂时性计算机可读存储介质,包括用于设计半导体器件布局的编程指令,所述编程指令被配置为使一个或多个数据处理器执行以下操作,所述操作包括:接收与半导体器件相关的包括多个第一目标部件的初始布局;确定将要插入到所述初始布局内的一个或多个第一伪部件;至少部分地基于一个或多个掩模分配规则,将所述第一目标部件和所述第一伪部件分配至多个掩模;以及产生用于制造所述半导体器件的最终布局。
[0028] 根据本发明的又一方面,还提供了一种用于设计半导体器件布局的系统,所述系统包括:一个或多个数据处理器;以及编码有指令的计算机可读存储介质,所述指令用于指示所述数据处理器执行操作,所述操作包括:接收与半导体器件相关的包括多个第一目标部件的初始布局;确定将要插入到所述初始布局内的一个或多个第一伪部件;至少部分地基于一个或多个掩模分配规则,将所述第一目标部件和所述第一伪部件分配至多个掩模;以及产生用于制造所述半导体器件的最终布局。
附图说明
[0029] 图1描绘了示出布局上特定部件的宽度变化的示例图。
[0030] 图2描绘了用于减小布局上特定部件的宽度变化的示例图。
[0031] 图3描绘了用于IC芯片的布局的示例图。
[0032] 图4描绘了示出将要插入到布局内的不同形状的伪部件的示例图。
[0033] 图5(a)至图5(d)描绘了用于确定与布局着色相结合的伪插入件的示例图。
[0034] 图6(a)至图6(c)描绘了用于确定伪插入件和布局着色的示例图。
[0035] 图7(a)至图7(c)描绘了用于确定伪插入件和布局着色的示例图。
[0036] 图8描绘了用于设计半导体器件布局的示例性流程图
[0037] 图9描绘了用于设计半导体器件布局的另一个示例性流程图。
[0038] 图10描绘了示例性计算机执行环境,其中,用户与布局设计系统进行交互。
[0039] 图11描绘了在独立计算机上提供的供用户访问用的示例性布局设计系统。

具体实施方式

[0040] 在一些情况下,重定向(即,调整布局中的形状)可以引起特定的问题。如图1所示,在用于IC芯片的布局100上示出了部件101(例如,部件“A”)和部件103(例如,部件“B”),其代表IC芯片的部件或部件间连接件(例如,金属线)。部件101和103被不同地着色,并且因此属于不同的掩模。例如,在制造工艺过程中,可以在形成部件103之前形成部件101。部件103可能具有宽度变化问题。
[0041] 具体地,可在晶圆上形成间隔件102以用于制造部件101。可将部件103重定向为具有延长的宽度。用于制造部件101的间隔件102与重定向的部件103重叠,制造的部件103可以具有最终宽度108。然而,重定向可以引起部件103的宽度变化。制造的部件103可以移动至右侧,并且因此最终宽度108远远大于初始设计的宽度。或者,制造的部件103可以移动至左侧,并且因此最终宽度108可以小于初始设计的宽度,这是因为在制造工艺期间,当蚀刻掉间隔件102时,可以去除制造的部件103落在间隔件102上的部分(重叠部分)。这种宽度变化可以引起与IC芯片的参数相关的时序和/或频率的估算不准确。
[0042] 图2描绘了用于减小布局上特定部件的宽度变化的示例图。布局200包括目标部件202和另一个目标部件204,其代表IC芯片的部件或部件间连接件(例如,金属线)。此外,布局200包括用于减小部件204的宽度变化的伪部件206。
[0043] 具体地,如图2所示,在布局200中,不同颜色的部件202和204可以属于不同的掩模。例如,在制造中,可以在形成部件204之前形成部件202。伪部件206可以插入在部件204右边且可以与部件202属于相同的掩模(例如,具有相同的颜色)。可以在晶圆上分别形成间隔件208和210以用于制造部件202和206。可以将部件204重定向为具有延长的宽度。间隔件208和210可以与重定向部件204重叠,并且间隔件208和210之间的距离214可以接近布局
200中部件204的初始设计宽度。因此,即使制造的部件204由于重定向移动至左侧或右侧,制造的部件204的近似等于距离214的最终宽度也与初始设计的宽度接近。
[0044] 图2中示出的伪插入件需要遵守布局中的特定规则。图3描绘了用于IC芯片的布局的示例图。如图3所示,布局300包括部件302、304、306、308和310。例如,为了在布局300中加入一个或多个伪部件,需要遵守特定的插入规则。例如,如果沿部件310的方向的平行间隔312等于或大于最小间隔的三倍,则可以将一个或多个伪部件插入到部件310的右侧。如果,位于部件302和308之间的垂直间隔314等于或大于最小长度与最小间隔的两倍的总和,则可以将一个或多个伪部件插入到部件302和308之间。在一些实施例中,最小间隔可以在约
20nm至约100nm的范围内,并且最小长度可以为约200nm。例如,部件302和部件304之间的距离、部件304和部件306之间的距离、部件306和部件308之间的距离、或部件308和部件310之间的距离可以小于预定限制(例如,最小间隔的两倍)。
[0045] 如图4所示,基于伪插入件规则,可以选择不同形状的伪部件以插入在布局300中,诸如分段伪部件(例如,伪部件402),完整伪部件(例如,伪部件404)和基于剪切的伪部件(例如,伪部件406)。
[0046] 图3中示出的伪插入件可以与布局着色相结合。图5(a)至图5(d)描绘了用于确定与布局着色相结合的伪插入件的示例图。如图5(a)所示,可以选择多个伪部件作为将要插入布局300内的备选件。
[0047] 如图5(b)所示,在布局300中,如果部件302(例如,类似于图2中示出的部件202)形成在特定部件的形成之前,则部件302可能不具有宽度变化问题,并且因此可以不需要位于部件302右边的伪部件。此外,如果伪部件502插入在部件302右边,则位于伪部件502和部件302之间的间隔可以小于预定限制(例如,最小间隔的两倍)。
[0048] 如图5(c)所示,在布局300中,如果部件302形成在一些部件的形成之后(类似于图2中示出的部件204),则部件302可能具有宽度变化问题,并且因此可以需要位于部件302右边的伪部件。例如,伪部件502可以插入布局300内,并且部件302具有不同的着色。然而,由于重定向,制造的部件302可以移动至左侧,因此部件302仍可以具有宽度变化问题。
[0049] 可以将部件302、304、306、308和310以及将要插入到布局300中的伪部件分配至不同的掩模,从而减小宽度变化问题。如图5(d)所示,部件302、306和310可以具有相同的着色(例如,类似于图2中所示的部件202),并且它们可以不具有宽度变化问题。另一方面,部件304和308具有相同的着色(类似于图2中所示的部件204)。例如,伪部件504可以与部件302、
306和310具有相同的着色,并且伪部件506、508可以与部件304和308具有相同的着色。如图
5(d)所示,部件304可以设置在部件302和306之间,并且制造的部件304的任何移动并不会引起宽度变化问题。同样地,部件308可以被设置为一侧具有部件306和伪部件504,另一侧具有部件310。制造的部件308的任何移动均不会引起宽度变化问题。
[0050] 图6(a)至图6(c)描绘了用于确定伪插入件和布局着色的示例图。可以确定伪插入件和布局着色以降低与布局600中不同部件的宽度变化和将要插入到布局600内的伪部件相关的整个布局600的成本。
[0051] 具体的,可以构建冲突图,其中,冲突图中的节点可以代表布局600中的部件,并且两个节点之间的边缘可以代表部件之间的冲突。如图6(a)所示,基于冲突图,可以建立用于确定布局600的成本的潜在连接的部件(例如,PCC1和PCC2)。如图6(b)和图6(c)所示,可以选择将要插入布局600内的不同的伪部件,并且可以选择不同的布局着色从而确定布局600的最低成本。可以基于产生布局600的最低成本的伪部件和布局着色来产生最终布局。
[0052] 图7(a)至图7(c)描绘了用于确定伪插入件和布局着色的示例图。根据估算的布局700中不同部件的宽度变化和将要插入布局700内的伪部件,可以确定伪插入件和布局着色,以降低整个布局700的成本。
[0053] 具体地,可以构建用于布局700的冲突图。如图7(a)所示,基于冲突图,可以建立潜在连接的部件(例如PCC1)。如图7(b)和图7(c)所示,可以选择将要插入布局700中的不同的伪部件,并且可以选择不同的布局着色,来确定布局700的最低成本。可以基于产生布局700的最低成本的伪部件和布局着色来产生最终布局。
[0054] 图8描绘了用于设计半导体器件布局的示例性流程图。在步骤802中,可以接收用于制造半导体器件的包括多个目标部件的初始布局。在步骤804中,可以确定将要插入到初始布局内的一个或多个伪部件。在步骤806中,可以将目标部件和伪部件分配至多个掩模。在步骤808中,可以产生用于制造半导体器件的最终布局。
[0055] 图9描绘了用于设计半导体器件布局的另一个示例性流程图。在步骤902中,可以接受没有布局着色或伪部件的初始布局。在步骤904中,可以确定用于减小初始布局中目标部件的宽度变化的关键伪备选件(critical dummy candidates)。例如,基于一个或多个插入规则,可以在初始布局中确定用于伪插入件的一个或多个间隔。在步骤906中,可以估算与特定目标部件相关的宽度变化。在步骤908中,可以确定布局着色和伪插入件(例如,同时地)以减小与初始布局中特定目标部件相关的宽度变化。在步骤910中,可以产生具有着色的部件(例如,属于不同的掩模)和插入的伪部件的最终布局。
[0056] 图10描绘了示例性计算机执行环境,其中,用户1002与布局设计系统1010进行交互。如图10所示,用户1002可以通过多种方式(诸如基于一个或多个网络1004)与布局设计系统1010进行交互。可通过网络1004访问的一个或多个服务器1006可以主管(host)布局设计系统1010。一个或多个服务器1006也可以包含或访问用来为布局设计系统1010存储数据的一个或多个数据存储器1008。
[0057] 在本发明中使用的实例可以发生改变。例如,可以将计算机执行的系统和方法配置为实施布局设计,以用于利用多个间隔件的多图案化、自对准多图案化、双图案化、或包含一个或多个图案化操作的任何其他光刻工艺。又例如,可以将计算机执行的系统和方法配置为实施布局设计以用于加工铸造或用于电子设计自动化(EDA)设备。再例如,可以配置计算机实施系统和方法,以在独立计算机上提供供用户1104访问的布局设计系统1102,诸如图11中的1100。
[0058] 在一个实施例中,提供了一种用于设计半导体器件布局的方法。例如,接收与半导体器件相关的包括多个目标部件的初始布局。确定将要插入到初始布局内的一个或多个伪部件。至少部分地基于一个或多个掩模分配规则,将目标部件和伪部件分配至多个掩模。产生用于制造半导体器件的最终布局。
[0059] 在另一个实施例中,提供了一种用于设计半导体器件布局的方法。例如,提供了包括第一目标部件的初始布局以用于制造半导体器件。确定初始布局中用于伪插入件的一个或多个间隔。估算包括在第一目标部件中的一个或多个第二目标部件的宽度变化。确定将要插入到初始布局中的一个或多个间隔内的一个或多个伪部件,并且将第一目标部件和伪部件分配至多个掩模。产生用于制造半导体器件的最终布局。
[0060] 在又一个实施例中,非暂时计算机可读存储介质包括用于设计半导体器件布局的编程指令。编程指令被配置为使一个或多个数据处理器执行特定的操作。例如,接收与半导体器件相关的包括多个目标部件的初始布局。确定将要插入到初始布局内的一个或多个伪部件。至少部分地基于一个或多个掩模分配规则,将目标部件和伪部件分配至多个掩模。产生用于制造半导体器件的最终布局。
[0061] 在又一个实施例中,用于设计半导体器件布局的系统包括一个或多个数据处理器、以及计算机可读存储介质。计算机可读存储介质上编码有用于指示数据处理器执行特定操作的指令。例如,接收与半导体器件相关的包括多个目标部件的初始布局。确定将要插入到初始布局内的一个或多个伪部件。至少部分地基于一个或多个掩模分配规则,将目标部件和伪部件分配至多个掩模。产生用于制造半导体器件的最终布局。
[0062] 上文仅描述了通过本发明来体现的多个方案,并且说明书相对地比较具体和详细,但是其不应因此被理解为对本发明范围的限制。应该注意,在不背离本发明概念的前提下,本领域普通技术人员也可以在本发明的范围内作出多种修改和变化,这些修改和变化都在本发明的范围内。因此,因根据本发明的权利要求对本发明进行保护。
[0063] 例如,使用一个或多个软件部件、一个或多个硬件部件、和/或软件与硬件部件的一种或多种组合来独立地和/或与至少另一个部件的组合的形式实施本发明的各个实施例的一些或全部部件中的每一个。在另一个实例中,在一个或多个电路(诸如一个或多个模拟电路和/或一个或多个数字电路)中,独立地和/或与至少另一个部件组合的形式实施本发明的各个实施例的一些或全部部件中的每一个。在又一个实例中,可以将本发明的各个实施例和/或实例进行组合。
[0064] 此外,本发明描述的方法和系统可以通过程序代码在不同类型的处理器件上实施,该程序代码包括通过器件处理子系统可执行的程序指令。软件程序指令可以包括源代码、目标代码、机器代码、或可操作的其他存储数据,以使处理系统实施本文所描述的方法和操作。然而,也可以使用其他实施方式,诸如,配置固件或甚至合适设计的硬件以执行本文所描述的方法和系统。
[0065] 可以在一个或多个不同类型的计算机执行数据存储器中(诸如不同类型的存储器件和编程结构(例如,RAM、ROM、闪存存储器、中间文件、数据库、编程数据结构、编程变量、IF-THEN(或相似类型的)语句结构等))存储和实施系统和方法的数据(例如,结合、映射、数据输入、数据输出、中间数据结果、最终数据结果等)。应该注意,数据结构描述在组织和存储数据库、程序、存储器或计算机程序使用的其他计算机可读介质中的数据时使用的格式。
[0066] 可以在包括计算机存储装置(例如,CD-ROM、磁盘、RAM、闪存存储器、计算机硬盘驱动器等)的多个不同类型的计算机可读介质中提供系统和方法,该计算机可读介质包含用于通过处理器执行从而实施方法的操作并实施本发明所描述的系统的指令(例如,软件)。
[0067] 本文所描述的计算机部件、软件模、功能、数据存储器和数据结构可以直接或间地彼此连接,以使它们的操作所需要的数据能够流动。还应该注意,模块或处理器包括但不限于实施软件操作的代码的单元,并且可以将模块或处理器用作例如代码的子程序单元,或代码的软件功能单元,或对象(面向对象模式),或支程序,或计算机脚本语言,或另一类型的计算机代码来实施。软件部件和/或功能可以根据目前的环境位于单个计算机中或分布在多个计算机中。
[0068] 计算机系统可以包括客户端和服务器。客户端和服务器彼此间通常距离较远,且通常通过通信网络进行交互。通过在相应的计算机上运行的计算机程序以及彼此具有客户端-服务器关系而产生客户端和服务器的关系。
[0069] 本说明书包括多种具体细节,其不应解释为用于限定本发明的范围或要求保护的范围,相反,其作为针对特定实施例的各种特征的描述。在本文中的说明书中或不同实施例中描述的特定的特征也可以通过与单个实施例结合来实施。相反的,在单个实施例的文本中描述的各种特征也可以在多个单独的实施例或任何合适的子组合中实施。此外,尽管可以根据特定组合中的动作对特征进行描述,并且即使这些特征可以作为初始的权利要求,但是,来自权利要求组合的一个或一些特征可以在一些情况中从组合中去除,并且权利要求的组合可以针对子组合或子组合的变化。
[0070] 类似地,在附图中按照特定顺序来描述操作,这不应该理解为需要按照示出的特定顺序或连续的顺序实施这些操作,或实施示出的全部操作来获得所期望的结果。在特定的情况中,多任务处理和并行处理可以是有利的。此外,上文中在实施例中所描述的各个系统部件的间隔不应理解为在所有实施例中均需要这些间隔,并且应该理解为所描述的编程部件和系统通常可以一起集成到单个软件产品中或封装在多个软件产品内。
QQ群二维码
意见反馈