检查集成电路布图中基准图案的实例的方法、系统和计算机程序产品的制作方法

文档序号:6495930阅读:258来源:国知局
检查集成电路布图中基准图案的实例的方法、系统和计算机程序产品的制作方法
【专利摘要】提供了检查集成电路布图中基准图案的实例的方法100、计算机程序产品和系统。方法100包含如下步骤:i)接收102所述集成电路布图;ii)从用户接收104所述基准图案的绘图;iii)从所述基准图案的绘图推导106出基础图案定义;iv)基于所述基准图案的绘图确定108一组拓扑关系;v)形成110复杂图案描述,所述复杂图案描述是所推导出的基础图案定义和所述一组拓扑关系的组合;vi)检查112所述集成电路布图中与所述复杂图案描述匹配的图案,以在所述集成电路布图中找到所述基准图案的实例;以及vii)存储114所找到的所述基准图案的实例。
【专利说明】检查集成电路布图中基准图案的实例的方法、系统和计算机程序产品
【技术领域】
[0001]本发明涉及检查集成电路布图中相对难于在集成电路器件上制造的复杂图案的方法和系统的领域。
【背景技术】
[0002]集成电路器件是基于物理设计而制造的,该物理设计描述了该器件应当如何构建起来。集成电路器件是不同材料的层的堆叠。每个层局部包含该材料的特征(feature)(诸如金属层内的金属导线),或局部包含适配材料(诸如在用于制造pmos晶体管的半导体材料中的η阱区域中局部建立的P扩散区)。集成电路布图以几何方式描述了这些特征应当被建立在何处或者该材料应当被适配在何处。布图是制造多个掩模的基础,掩模在平版印刷(Iithographical)工艺中被用来在半导体器件上制造布图设计。见例如专利申请US2003/192013,它讨论了如何将物理布图适配来制造多个掩模以及如何将掩模用来制造半导体器件的各个层。
[0003]如今,集成电路的特征变得非常小,从而一般难于在集成电路器件上制造。一些图案非常难于制造,从而必须例如被避免或不得不被适配到不那么难于制造的图案。
[0004]传统上,见例如专利US6189132和专利申请US2003/009728,防止可制造性问题基于的是强制执行集成电路的特征之间的最小距离以及强制执行这些特征之间的最小间隔。被用来强制执行这些最小距离的工具能够检测这些特征的宽度的实例(instance)以及这些特征之间的间隔的实例。
[0005]在其他工具中,为图案匹配工具提供了相对复杂的图案的几何描述,该图案匹配工具只能在物理布图中找到该图案的精确复本,这意味着只有该图案的具有精确相同的尺寸的实例才被找到。然而,几何描述的图案的变化也会有可制造性问题。
[0006]在不局限于精确几何形状的情况下,相对复杂的图案可以用Mentor Graphics的SVRF来指定。SVRF代表标准验证规则格式(Standard Verification Rule Format)JVRF是一种用于指定布图中的违反设计规则之处的语言。若指定了一个设计规则,则使用MentorGraphics工具来执行该算法并且检测物理布图中的违反该设计规则之处。设计规则的规范(specification)是通过针对每个故障情形计算错误层的算法来实现的。这些算法的开发取决于设计规则的实施者。这些算法是使用物理布图层上的运算或者选择布图特征的边缘或形状来写就的。对于更复杂的图案,这迅速导致设计规则描述难写和难读,从而难于维护和调试。因此,SVRF对于限定某些复杂图案并不是用户友好的解决方案。此外,一些复杂图案不能用SVRF描述。

【发明内容】

[0007]本发明的一个目的是提供更为用户友好的检查集成电路布图中复杂图案的方法和系统。[0008]本发明的第一方面提供了根据权利要求1所述的一种检查集成电路布图中复杂图案的方法。本发明的第二方面提供了根据权利要求17所述的一种计算机程序产品。本发明的第三方面提供了根据权利要求18所述的一种系统。在从属权利要求中限定了有利的实施方案。
[0009]根据本发明的第一方面的检查集成电路布图中基准图案(reference pattern)的实例(instance )的方法包含接收所述集成电路布图的步骤。所述集成电路布图代表集成电路器件的设计。所述基准图案是一个或多个集成电路布图元素的拓扑。在另一个步骤中,从用户接收所述基准图案的绘图(drawing)。在又一个步骤中,从所绘制的基准图案推导出基础图案定义。所述基础图案定义包含一个或多个相继(successive)边的一个或多个序列(sequence),所述边对应于所绘制的基准图案中的线,所述基础图案定义还包含角,所述角对应于所述绘图中的所述线的极点(extremity)。一个角是序列的第一边的第一点、是序列的最后一边的最后一点、或者是序列的两个相继边的公共点。在另一个步骤中,基于所绘制的基准图案确定一组拓扑关系。所述拓扑关系被限定在所述基础图案定义的成对的两条边之间、所述基础图案定义的成对的两个角之间、和/或所述基础图案定义的成对的一条边与一个角之间。所述拓扑关系限定了成对的角和/或边之间的特定拓扑。在另一个步骤中,形成复杂图案描述,所述复杂图案描述是所推导出的基础图案定义和所述一组拓扑关系的组合。在该方法的一个步骤中,检查所述集成电路布图中与所述复杂图案描述匹配的图案,以在所述集成电路布图中找到所述基准图案的实例。在又一个步骤中,存储所找到的所述基准图案的实例。
[0010]所述基准图案是由用户绘制的,它允许用户以直观方式提供所述基准图案。当例如通过绘制相连线的序列来提供所述基准图案的绘图时,用户无须知道应当提供哪个特定的形式定义。用户只需绘制他认为指定了至少一个与复杂图案的拓扑相关的拓扑的一个或多个形状(的部分)。该方法提供了后续步骤,以将所绘制的形状(的部分)翻译成复杂图案的形式描述。
[0011]推导所述基础图案定义的步骤是其中从所述基准图案中检测基础图案信息的步骤。所接收的基准图案具有一个拓扑,即所绘制的拓扑,并且,如果被绘制在特定坐标系中,则所述基准图案指定了特定几何形状。所推导出的基础图案定义包含存在于所述基准图案中的所有拓扑信息中的有限量的拓扑信息。所推导出的基础图案定义是基于图案元素边和角而构建起来的。边对应于基准图案中绘制的线。所推导出的基础图案中的与边相关的拓扑信息是关于哪些边形成了边序列以及它们以何顺序形成序列的信息。角对应于基准图案的绘图中的线的极点。存在于所推导出的基础图案定义中的角的拓扑信息是:角是否是边序列的第一边的第一点,角是否是边序列的最后一边的最后一点,或者角是否是边序列的两个相继边的公共点。与所接收到的基准图案不同,所述基础图案定义仍然描述了宽范围的拓扑和几何形状。在推导所述基础图案定义的过程中,所绘制的线被映射到边的形式实体(formal entity)上。所绘制的线的极点被映射到角上。此外,推导出接下来的信息:边的邻接关系(adjacency),这在所述基础图案定义的语境中意味着哪条边被连接到其他哪条边,在所述基准图案的语境中意味着所述绘图中的哪条线被连接到其他哪条线。用户可以绘制一个线序列或多个线序列,因此所述基础图案定义包含相继边的一个或多个序列。
[0012]如所讨论的,所述基础图案定义仍然描述了多种多样的拓扑和几何形状,且从用户接收的基准图案代表一个特定拓扑。然而,所述集成电路布图中的必须被检查的复杂图案不一定仅仅具有所述基准图案的拓扑,也不一定具有所述基础图案定义的所有的可能的拓扑。例如,当用户绘制一个点对称“H”(见例如图4a)的形状时,从所绘制的“H”推导出的基础图案定义也描述了看起来像是旋转的“S”或“N”(见例如图4c)的图案。在这种情况下,用户最可能意欲限定仍然看起来像是“H”的图案,因此有必要限定该“H”的中间“一横”由具有共同游程长度(common run length)的两条边组成(图4b中的边e3和e9),这意味着这两条边必须是平行的,意味着它们面向彼此,还意味着这两条边之间有一块区域接触这两条边且该区域没有其他边。这是所述基础图案定义中的两条边之间的拓扑关系,且该方法提供了确定如下一组拓扑关系的步骤,这组拓扑关系与所述基础图案定义一起描述了集成电路布图中的必须被检查的复杂图案的拓扑。因此,在选择拓扑关系的步骤中,从所述基准图案中存在的所有可能的拓扑关系中做出选择,以得到所述复杂图案中必须存在的一组拓扑关系。这组拓扑关系和所述基础图案定义组合起来,以形成复杂图案描述。
[0013]如果形成了所述复杂图案描述,则检查所述集成电路布图中与所述复杂图案描述匹配的基准图案的实例。所找到的实例被存储在例如数据库中、存储器中、或计算机可读介质上。所存储的信息供以后使用以及/或者被其他方法、系统或工具使用。在一个实施例中,所存储的信息可以被工具使用,所述工具自动将所找到的实例适配于具有更好的可制造性的复杂图案。所找到的实例也可以与所述集成电路布图一起展示给集成电路设计者,所述集成电路设计者手动适配所找到的图案的实例。因此,由该方法创建的数据被用来提闻集成电路布图的图案的质量,从而提闻集成电路器件的制造的广出率和/或提闻集成电路器件的质量。还应注意,所找到的实例的存储可能是临时存储。例如,所述实例被存储以用于另一个工具,所述另一个工具进一步处理所找到的实例,且在将基准图案的实例提供给所述另一个工具之后,可以将所述实例从存储装置中删除。
[0014]该方法提供了 一种用户友好的在集成电路布图中找到复杂图案的匹配物的方式。该方法允许用户以直观方式提供如下基准图案的绘图,用户相信该基准图案的拓扑与所述集成电路布图中的需要被检查的拓扑相关。用户无须了解复杂图案定义的详情,因此用户能够指定必须检查所述集成电路布图中哪个图案,而不是指定必须如何找到该图案。在随后的步骤中,所述绘图被翻译成所述复杂图案描述的形式定义,所述形式定义不一定局限于基准图案的单个拓扑和基准图案的几何形状。因此,该方法对于基于基准图案的绘图找到集成电路布图中的复杂图案而言是一个强大的解决方案,这对于用户而言是限定这样的复杂图案的最直观方式。
[0015]应注意,本发明涉及被用来发现难于制造的图案的方法和系统。本发明不涉及简单图案(诸如特征的宽度或两个特征之间的间隔的宽度,而是涉及复杂图案,所述复杂图案可以包含相对于彼此布置成特定拓扑的若干边。还应注意,本发明还涉及被用来检查布图中违反设计规则之处的方法和系统。设计规则包含针对特定基准图案的要求。本发明可以被用来找到所述特定基准图案。
[0016]在又一个实施方案中,该方法包含展示在所述基准图案的绘图中的已确定的这组拓扑关系的步骤。该步骤向用户提供了关于这组拓扑关系的反馈,这对于理解这样的关系的影响的用户而言尤其是用户友好的。它也为用户开启了适配这组拓扑关系的可能,这当这组拓扑关系是从所述基准图案的绘图中自动推导出的时尤其有利。[0017]在另一个实施方案中,该方法包含从用户接收拓扑关系输入的步骤。所述拓扑关系输入包含所述绘图中的一个或多个特定拓扑关系的定义。该方法还包含基于所述拓扑关系输入将所述特定拓扑关系添加到已确定的这组拓扑关系的步骤。用户常常已经知晓这组拓扑关系中必须存在的一个或多个特定拓扑关系。用户友好的是,如果拓扑关系不存在于这组已确定的这组拓扑关系中,则向用户提供指定拓扑关系的机会,以使得拓扑关系能够被添加到已确定的这组拓扑关系中。
[0018]在一个实施方案中,该方法包含从用户接收另外的拓扑关系输入的步骤。所述另外的拓扑关系输入包含已确定的这组拓扑关系中的一个或多个拓扑关系的选集(selection)。该方法还包含基于所述另外的拓扑关系输入从已确定的这组拓扑关系中移除所选择的拓扑关系的步骤。用户常常已经知晓这组拓扑关系中无须存在的一个或多个特定拓扑关系,这是因为该方法也必须找到不具有这些特定拓扑关系的基准图案的实例。此夕卜,也可能的是,已确定的这组拓扑关系包含了太多的拓扑关系。如果这些拓扑关系例如存在于所述基准图案的绘图中,则用户可以通过选择现存的这组已确定的拓扑关系的一个子集来提供所述另外的拓扑关系输入。用户感到根据该实施方案的附加控制是方便的。
[0019]在另一个实施方案中,该方法包含从用户接收线选集的步骤。所述线选集是所述基准图案的绘图中的与检查所述集成电路布图中基准图案的实例相关的线的指示。所述线选集在推导基础图案定义和确定一组拓扑关系的步骤中被纳入考虑。在大多数情况下,用户知晓所述基准图案的绘图的哪些线在所述基准图案中最重要,以及哪些所绘制的线是无关的。用户可以指示在所述基准图案的绘图中的相关线,以使得在后续步骤中只有相关线被翻译成相关边以及相关边的序列,且只有在相关边和/或相关边的角之间的拓扑关系被推导出。也可能的是,用户意外地在所述基准图案的绘图中绘制了过多的线,而该实施方案提供了修正所绘制的基准图案的可能性。用户感到由该实施方案提供的附加控制是用户友好的选项。
[0020]在另一个实施方案中,所述集成电路布图包含多边形,所述多边形代表集成电路布图元素或集成电路布图元素的部分。相继边的序列限定了一个多边形的至少一部分。所述基础图案定义还限定了所述相继边序列中的每一边的如下一侧,这一侧面向所述多边形的所述一部分的内部。尤其,如果所述相继边序列不构成封闭的多边形,则不清楚边的哪一侧是多边形的内部。此信息是相关的,因为在后面的一个步骤中,必须在包含封闭的多边形的集成电路布图中找到所述多边形的所述一部分。对于所述封闭的多边形,预先已知道所述多边形的边的哪一侧面向所述多边形的内部。如果所述基础图案定义没有无疑义地限定边的哪一侧面向所述多边形的所述一部分的内部,则检查所述集成电路布图中与复杂图案描述匹配的图案的步骤可以找到确实匹配例如多边形之间的间隔的实例,而用户的本意是限定必须找到多边形。
[0021]边的哪一侧面向所述多边形的内部的信息可以由用户明确地或隐含地指示。例如,如果根据协议,所绘制的线的序列总是顺时针地循着多边形的边界行进,则该信息被隐含地指示。
[0022]在又一个实施方案中,所述集成电路布图包括一个层,所述层代表所述集成电路器件的一个层或所述集成电路器件的该层的一部分。例如,如果所述集成电路器件的成品层(manufactured layer)是所述集成电路布图中的两个不同层的结果,贝U集成电路布图的一个层是集成电路器件的该层的一部分。所述基础图案定义还限定了每个边序列的层属性。在检查集成电路布图中与所述复杂图案描述匹配的图案的步骤中,还将所述层属性纳入考虑。每个边序列的层属性可以是相关的,因为所述复杂图案可以涉及所述集成电路布图中的一个层或不同的层,且如果不知道必须在哪个层中找到哪个边序列,则可能会找到所述复杂图案的错误实例。例如,晶体管的复杂图案非常可能包含必须在多晶硅层中被找到的一个边序列,必须在接触层找到的边序列,以及必须在指定了半导体基底中的P-扩散区或η-扩散区的位置的层中找到的另一个边序列。用户可以明确地指示所述基准图案的绘图中的每个线序列的层属性。
[0023]在一个实施方案中,拓扑关系中的每一个拓扑关系都属于作为预先确定的一组拓扑关系类型的一部分的一个类型。所述预先确定的一组拓扑关系类型包含如下之间的拓扑关系类型:
[0024]i)第一边和第二边在所述基础图案定义的边序列中是相邻的,且所述第一边与所述第二边之间具有特定角度,
[0025]ii)第一角和第二角,所述第一角是第一特定边的一点,或者是第一特定边和第二特定边的一点,所述第二角是第三特定边的一点,或者是第三特定边和第四特定边的一点,所述第一角和所述第二角对角对置(diagonally opposite)意味着在所述第一特定边的或所述第二特定边的一点与所述第三特定边上的或所述第四特定边的一点的所有可能的点对(point pairs)之中,所述第一角和所述第二角具有最短的距离,
[0026]iii)对角对置的第一角和第二角,除了连接到所述第一角和所述第二角的边之夕卜,没有边存在于由处于所述第一角与所述第二角之间的点限定的区域内,并且离所述第一角比离连接到所述第一角的边更近或者离所述第二角比离连接到所述第二角的边更近。
[0027]iv) —个角和一条边,所述角是第一特定边和第二特定边的公共点,在包含所述边上的一点和第一特定边上或第二特定边上的一点的所有点对之中,所述角和所述边在所述角与所述边上的一个特定点之间具有最短的距离,除了所述边、所述第一特定边和所述第二特定边之外,没有边与将所述角和所述特定点连接的线交叉,
[0028]V)第一边和第二边,所述第一边与所述第二边交叉,
[0029]vi)第一边和第二边,所述第一边与所述第二边平行,
[0030]vii)第一边和第二边,所述第一边与所述第二边平行,且所述第一边的内侧背向所述第二边的内侧,
[0031]viii)第一边和第二边,所述第一边与所述第二边平行,且所述第一边的内侧面向所述第二边的内侧,
[0032]ix)第一边和第二边,所述第一边与所述第二边平行,且所述第一边的内侧面向所述第二边的外侧,
[0033]x)第一边和第二边,所述第一边与所述第二边平行,且所述第一边与所述第二边具有共同游程长度,
[0034]xi)第一边和第二边,所述第一边与所述第二边平行,且所述第一边与所述第二边具有共同游程长度,且在所述第一边与所述第二边之间沿着它们的共同游程长度的一个区域的一个矩形部分内不存在其他边,所述区域的所述矩形部分接触所述第一边且接触所述第二边,以及[0035]xii)第一边和第二边,所述第一边与所述第二边平行,且所述第一边与所述第二边具有共同游程长度,且在所述第一边与所述第二边之间沿着它们的共同游程长度的一个矩形区域内不存在其他边,所述矩形区域接触所述第一边且接触所述第二边。
[0036]有了预先确定的这组拓扑类型的拓扑关系类型,就能够详细描述多种多样的拓扑。因此,该方法提供了具体指定必须检查所述集成电路布图中哪个拓扑的一个途径。
[0037]拓扑关系类型是所述基础图案定义中的两个实体之间的可能的拓扑关系,且在某些类型中也是相对于所述集成电路布图中的未包括在该对内的其他边或角来限定的。原理上,这意味着它们是相对于所述集成电路布图的所有其他边或所有其他角来限定的。然而,在实践中,拓扑是局部现象,且如果在所述定义中拓扑涉及其他边或其他角,则意味着这两个实体之间的拓扑涉及这两个实体周围的小环境内的其他边或其他角。
[0038]在一个实施方案中,匹配所述复杂图案描述的步骤包含如下步骤:i)将所述复杂图案描述变换成所述复杂图案描述的图形表示(graph presentation) ;ii)将所述集成电路布图变换成所述集成电路布图的图形表示;i i i )在所述集成电路布图的图形中找到所述复杂图案描述的图形的实例,以找到所述基准图案的实例。在另一个图形中找到一个图形的实例是一个数学问题,对于它已知有效且高效的解决方案。因此,当所述复杂图案描述和所述集成电路布图各自被变换成图形表示时,可以使用在另一个图形中找到一个图形的实例的方法来在所述集成布图中找到所述基准图案的实例。
[0039]在又一个实施方案中,变换集成电路层的步骤包含:确定所述集成电路布图中的拓扑关系。现有技术中已知用于找到集成电路布图中拓扑关系的自动方法,例如,专利申请W02008116807中描述的方法可以被用于此目的。应注意,所述用于找到拓扑关系的自动方法也可以被用来,一旦绘图中的线被翻译成边和边序列,就马上在所述基准图案的绘图中找到拓扑关系。从而,该方法在基于所绘制的基准图案推导拓扑关系的步骤中可以是有用的。
[0040]在一个实施方案中,将所述复杂图案描述变换成所述图形表示的步骤包含:i)将所述复杂图案描述的边映射到所述图形表示的一组顶点上,和ii)将所述基础图案定义的拓扑和所述复杂图案描述的拓扑关系映射到所述图形表示的一组边上,并且/或者将所述集成电路布图变换成所述图形表示的步骤包含:i)将所述集成电路布图的边映射到所述图形表示的一组顶点上,以及ii)将所述集成电路布图的基础拓扑和所述集成电路布图的已确定的拓扑关系映射到所述图形表示的一组边上。
[0041]在另一个实施方案中,该方法包含接收一个或多个几何谓词(predicate)的步骤。一个几何谓词限定了所述基准图案的一个特定拓扑的一个特定几何形状。在形成复杂图案描述的步骤中,所接收的几何谓词进一步被包括在所述复杂图案描述中。检查集成电路布图中与所述复杂图案描述匹配的图案的步骤还将所接收的几何谓词纳入考虑。几何形状涉及集成电路的一个或多个元件的可量化特性。只要这些可量化特性涉及所述复杂图案描述的元素(例如涉及边、角、边序列、和/或拓扑关系),用户就可以将所述可量化特性作为几何谓词来提供。几何谓词的例子有:边的长度、边序列的长度、成对的边和/或成对的角之间的距离、由边序列围起的面积、边或角在集成电路布图中相对于预先限定的基准点的位置、特定区域中的布图元素的数量、和/或该布图的特定区域中的布图元素的密度。应注意,所述几何谓词可以被表达成值的条件,诸如边的长度应大于、所围起的面积应小于、或边之间的距离应等于。除了仅特定拓扑,用户还可能想要找到特定几何形状,如此用户友好地向用户提供指定所述几何形状的可能性。
[0042]在又一个实施方案中,该方法包含接收一个或多个布图属性谓词的步骤。所述布图属性谓词是描述一个或多个电路布图元素的特性的属性(property),且是从集成电路布图中可提取的属性。在形成复杂图案描述的步骤中,所接收的布图属性谓词进一步被包括在所述复杂图案描述中。检查所述集成电路布图中与所述复杂图案描述匹配的图案的步骤还将所述布图属性谓词纳入考虑。集成电路布图代表待作为集成电路器件制造的电子电路。所述布图属性谓词涉及所述布图代表的电子电路的电学特性。这些布图属性谓词可以是用特定分析技术从布图中提取的,所述特定分析技术着重于在集成电路布图中实现的电路的电学行为。布图属性谓词的例子有:集成电路布图的特定元素特有的电学连通性(electrical connectivity),属于特定电网的一部分,具有特定寄生值(诸如电容或电感)。
[0043]在另一个实施方案中,该方法包含接收所要求的图案取向(orientation)的步骤。所要求的图案取向是基准图案的实例在集成电路布图中相对于预先限定的基准取向必须具有的取向。在形成复杂图案描述的步骤中,将所要求的图案取向包括在所述复杂图案描述中。检查集成电路布图中与所述复杂图案描述匹配的图案的步骤还将所要求的图案取向纳入考虑。图案取向是相对于预先限定的基准取向来限定的,且可以被表达成相对于预先限定的基准取向的特定旋转(rotation)。例A如,用户可以指定必须找到与字母E相似的图案,且用户可以指定所要求的图案取向必须为180°。在所述集成电路布图中还可以已经指定“法向”取向的字母E相当于0°的图案取向。所要求的图案取向是另一个可由用户指定的要求,从而可以得到更为精确的图案定义。
[0044]在一个实施方案中,该方法包含从所述复杂图案描述构建复杂布尔表达式和/或算术表达式的步骤。检查所述集成电路布图中与所述复杂图案描述匹配的图案的步骤使用所述布尔表达式和/或所述算术表达式来找到所述集成电路布图中基准图案的实例。在先前的实施方案中讨论的所有不同的要求都可以被翻译成布尔表达式和/或算术表达式,这得出了可以被用来决定所述集成电路布图中的图案的实例是否是所述基准图案的实例的表达式。
[0045]在另一个实施方案中,该方法包含以下步骤:通过基于一个或多个算术运算将所接收的集成电路布图适配(adapt)在所述集成电路布图的元素上,来预处理所述集成电路布图。算术运算是根据特定规则基于所输入的集成电路布图的元素来建立集成电路布图元素的运算。所述运算可以是逻辑运算,比如“与”、“或”或者“非”。一个实施例是:建立一个临时假想层(imaginary layer),该临时假想层是所接收的集成电路布图的两个层的“与”。所述运算也可以是面向几何的(geometry oriented)运算,它缩小(undersize)或放大(oversize)集成电路布图的多边形或路径。“缩小”意味着多边形或路径的尺寸必须被减小,“放大”意味着所述尺寸必须被增大。这些算术运算中的任何算数运算可以以任何顺序被组合。如果事先知道必须在作为一个或多个算术运算的一个序列的结果的层(根据此实施方案,是假想地建立的)中找到所述基准图案,则预处理所接收的集成电路布图是有利的。此外,在特定情形中,如果所述集成电路布图被预处理,则检查所述集成电路布图中所述基准图案的实例的步骤可以被更高效地执行。此步骤中的效率增益可以大于所述预处理步骤中的效率损失。
[0046]根据本发明的第二方面,提供了一种用于检查集成电路布图中基准图案的实例的计算机程序产品,所述计算机程序产品包括指令,所述指令用于使得处理器系统执行根据本发明的第一方面的方法。
[0047]根据本发明的第三方面,提供了一种用于检查集成电路布图中复杂图案的实例的图案检查系统。所述系统包含布图输入装置、图案输入装置、推导装置、确定装置、形成装置、检查装置和存储装置。所述布图输入装置接收所述集成电路布图。所述图案输入装置从用户接收基准图案的绘图。所述推导装置从所述绘图推导出基础图案定义。所述基础图案定义包含相继边序列,所述边对应于所述绘图中的线,所述基础图案定义还包含角,所述角相应于所述绘图中的线的极点,所述基础图案定义还包含边之间的角度。一个角是序列的第一边的第一点、是序列的最后一边的最后一点、或者是两个相继边的公共点。所述确定装置确定所述基础图案定义的成对的两条边之间、所述基础图案定义的成对的两个角之间、和/或所述基础图案定义的一条边与一个角之间的一组拓扑关系。所述形成装置根据所推导出的基础图案定义和这组拓扑关系来形成复杂图案定义。所述检查装置检查所述集成电路布图中与复杂图案描述匹配的图案。所述存储装置存储所找到的所述复杂图案的实例。
[0048]根据本发明的第二方面的计算机程序产品和根据本发明的第三方面的系统提供了与根据本发明的第一方面的方法相同的益处,且具有与所述系统的对应的实施方案相似的实施方案和相似的效果。
[0049]参照下文描述的实施方案,本发明的这些和其他方面将会清楚和明朗。
[0050]本领域技术人员应意识到,本发明的上述实施方案、实施方式和/或方面中的两个或更多个可以通过任何被认为有用的方式来组合。
[0051]所述系统、所述方法和/或所述计算机程序产品的改型和变型(它们对应于已描述的所述方法的改型和变型)可以由本领域技术人员基于本说明书来实现。
【专利附图】

【附图说明】
[0052]在附图中:
[0053]图1示意性示出了根据本发明的第一方面的检查集成电路布图中复杂图案的实例的方法的一个实施方案,
[0054]图2示意性示出了根据本发明的方法的另一个实施方案,
[0055]图3示意性示出了一个集成电路布图的一部分,
[0056]图4a示意性示出了所接收的一个基准图案的绘图,
[0057]图4b示意性示出了线和线的极点到基础图案定义的边和角的映射,
[0058]图4c示意性示出了从图4a的所接收的基准图案推导出的基础图案定义的拓扑变型和几何变型。
[0059]图5a到5c示出了多个拓扑关系类型,
[0060]图6a不意性不出了所述基准图案中的已确定的拓扑关系,
[0061]图6b示意性示出了图4c的拓扑变型和几何变型中哪些不具有图6a中示出的拓扑关系,[0062]图7示意性示出了边的取向,以解释成对的边之间的角度,
[0063]图8a示意性示出了在一条边的环境中的不同区域,
[0064]图Sb和Sc示意性示出了多个拓扑关系类型,
[0065]图9a示意性示出了一个拓扑关系类型,
[0066]图9b示意性示出了与两条相邻边的角相关的扇区,
[0067]图1Oa展示了被映射到t图形表示上的一个图案,
[0068]图1Ob展示了图1Oa的图案的图形表示,且
[0069]图11示意性示出了根据本发明的第三方面的检查集成电路布图中复杂图案的实例的系统的一个实施方案。
[0070]应注意,在不同附图中由相同的附图标记指示的项目具有相同的结构特征和相同的功能,或者是相同的信号。当已经解释了这样的项目的功能和/或结构时,没有必要在详细描述中对其进行重复解释。
[0071]附图纯粹是图解性的,且不是按比例绘制的。尤其,为了清楚起见,某些尺寸被着重放大。
【具体实施方式】
[0072]图1中示出了第一实施方案。图1示出了检查集成电路布图中复杂布图图案的实例的方法100的一个实施方案。该复杂图案是该集成电路布图的一个或多个元素的一个拓扑。
[0073]在该方法的第一步骤102中,接收集成电路布图。一个集成电路布图可以包含多个层,该多个层对应于一个集成电路器件的多个层或一个集成电路器件的多个层的多个部分。该多个层的元素可以由多边形描述,该多边形是由多条线的一个闭合路径限定的形状。
[0074]在进一步的步骤104中,从用户接收基准图案的绘图。该用户可以例如用计算机程序绘制该基准图案。
[0075]接下来,在步骤106中,从该基准图案的绘图中推导出基础图案定义。该基础图案定义包含相继边的一个或多个序列,并且包含角。一个角是序列的第一边的第一点、是序列的最后一边的最后一点、或者是一个边序列的两个相继边的公共点。在推导该基础图案定义的过程中,所绘制的线被映射到边的形式实体上。所绘制的线的极点被映射到角上。此外,随后的信息被推导出:边的邻接关系,这在该基础图案定义的语境中意味着哪条边被连接到哪条其他边,这在该基准图案的语境中意味着该绘图中的哪条线被连接到哪条其他线。
[0076]在步骤108中,在成对的两条边之间、在该基础图案定义的成对的两个角之间、或者在该基础图案定义的成对的一条边和一个角之间,确定一组拓扑关系。
[0077]在步骤110中,通过将所推导出的基础图案定义与这组拓扑关系组合,来形成复杂图案描述。
[0078]在步骤112中,检查该集成电路布图中与该复杂图案描述匹配的复杂图案,以找到该复杂图案的实例。
[0079]在步骤114中,存储所找到的实例。例如,可以存储所找到的实例在该集成电路布图中的位置,对该集成电路布图中的多边形的参引或者该集成电路布图中的多边形被标记有特定属性。该信息可以被存储在数据库中、计算机内存中、或者例如计算机可读存储器上。
[0080]图2中示出了根据本发明的第一方面的方法200的第二实施方案。
[0081]在步骤102中,如先前讨论的,接收集成电路布图。
[0082]在步骤202中,预处理该集成电路,以基于一个或多个算术运算将所接收的集成电路布图适配在该集成电路的元件上。该运算可以是逻辑运算,比如“与” “或”或者“非”。一个实施例是:建立临时假想层,该临时假想层是所接收的集成电路布图的两个层的“与”。该运算也可以是面向几何的运算,它缩小或放大该集成电路布图的多边形或路径。“缩小”意味着多边形或路径的尺寸必须被减小,“放大”意味着尺寸必须被增大。这些算术运算中的任何算数运算可以以任何顺序被组合。
[0083]在步骤104中,如先前讨论的,从用户接收基准图案的绘图。
[0084]在步骤204中,从用户接收线选集。该线选集是对所绘制的基准图案的线的指示,该线与检查该集成电路布图中该基准图案的实例相关。用户可以例如在计算机显示器上选择哪些边是相关的和/或哪些边是无关的。在后续步骤中,只有相关的边被纳入考虑。
[0085]在步骤106中,如先前讨论的,从该基准图案的绘图中推导出基础图案定义。
[0086]在步骤108中,如先前讨论的,确定一组拓扑关系。
[0087]在步骤206中,展示该基准图案的绘图中这组已确定的拓扑关系的拓扑关系。这包括,例如,在所绘制的基准图案的线和/或线的极点之间绘制箭头,其中该箭头表示一个拓扑关系。在使用计算机和计算机显示器的情况下,且如果用户例如将鼠标指针放在特定箭头的位置,则将特定拓扑关系的特定特性展示给该用户。
[0088]在步骤208中,从用户接收拓扑关系输入。该拓扑关系输入包含对该绘图中的一个或多个特定拓扑关系的定义。用户可以,例如,指示在所绘制的基准图案中的哪些特定线和/或极点之间必须限定一个拓扑关系,且接下来用户可以指示该拓扑关系的特性。在另一个实施方案中,用户仅选择一对边、一对角和/或由一个角和一个边组成的一对,且在成对的实体之间可应用的拓扑关系是自动确定的。
[0089]接下来,在步骤210中,该拓扑关系输入中的从用户接收的一个或多个拓扑关系被添加到这组已确定的拓扑关系中。
[0090]在步骤212中,从用户接收另外的拓扑关系输入。该另外的拓扑关系输入包含已确定的这组拓扑关系中的必须被移除的一个或多个拓扑关系的选集。用户可以例如在计算机显示器上选择所展示的拓扑关系中的哪些必须被删除。该拓扑关系例如被展示在该基准图案的绘图中。在另一个实施方案中,该拓扑关系被展示在列表中,且用户从该列表中选择一个或多个拓扑关系。在再另一个实施方案中,用户选择特定边或特定角,而所选择的特定边或特定角涉及的所有拓扑关系都是该拓扑关系输入中的拓扑关系。
[0091]接下来,在步骤212中,从这组已确定的拓扑关系中移除该个或多个拓扑关系的选集。
[0092]应注意,展示这组已确定的拓扑关系中的拓扑关系的步骤206,以及后续的绘制步骤210到214,也可以被迭代地执行。此外,可以在不执行步骤212和214的情况下执行步骤208和210的组合,或者可以在不执行步骤208和210的情况下执行步骤212和214。
[0093]在步骤216中,接收一个或多个几何谓词。几何谓词限定了该基准图案的特定拓扑的特定几何形状。几何形状涉及集成电路的一个或多个元件的可量化特性。只要这些可量化特性涉及该复杂图案描述的元件(例如涉及边、角、边序列、和/或拓扑关系),用户就可以将该可量化特性作为几何谓词来提供。几何谓词的例子有:边的长度、边序列的长度、成对的边和/或角之间的距离、由边序列围起的面积、边或角在集成电路布图中相对于预先限定的基准点的位置、在特定区域中的布图元素的数量、和/或该布图的特定区域中的布图元素的密度。应注意,几何谓词可以被表达成值的条件,诸如边的长度应大于、所围起的面积应小于、或边之间的距离应等于。在后续步骤中,所接收的几何谓词作为该复杂图案描述的一部分被纳入考虑,且当检查该集成电路布图中基准图案的实例时被纳入考虑。
[0094]在步骤218中,接收一个或多个布图属性谓词。该布图属性谓词是描述一个或多个电路布图元素的特性的属性,且是从该集成电路布图中可提取的属性。集成电路布图代表待作为集成电路器件制造的电子电路。该布图属性谓词涉及该布图代表的电子电路的电学特性。布图属性谓词的例子有:该集成电路布图中的特定元素特有的电学连通性,属于特定电网的一部分,具有特定的(电)寄生值(诸如电容或电感)。在后续步骤中,将所接收的布图属性谓词作为该复杂图案描述的一部分纳入考虑,且当检查该集成电路布图中基准图案的实例时纳入考虑。
[0095]在步骤220中,接收所要求的图案取向。该所要求的图案取向是基准图案的实例在该集成电路布图中相对于预先限定的基准取向必须具有的取向。在后续步骤中,将所接收的所要求的图案取向作为该复杂图案描述的一部分纳入考虑,且当检查该集成电路布图中基准图案的实例时纳入考虑。
[0096]在步骤110中,如先前讨论的,形成该复杂图案描述。
[0097]在步骤222中,该复杂图案描述被变换成复杂布尔和/或算术表达式。此复杂表达式可以被用在检查该集成电路布图中基准图案的实例的步骤中。然而,如下文讨论的,也可以使用用于检查该集成电路布图中基准图案的实例的其他手段。
[0098]在步骤112中,检查该集成电路布图中与该复杂图案描述匹配的复杂图案,以找到该复杂图案的实例。步骤112可以在后续步骤中被细分成:
[0099]i)在步骤228中,将该复杂图案描述变换成该复杂图案描述的图形表示,
[0100]ii)在步骤230中,将该集成电路布图变换成该复杂图案描述的图形表示,
[0101]iii)在步骤238中,在该集成电路布图的图形中寻找该复杂图案描述的图形的实例,以找到该基准图案的实例。
[0102]应注意,步骤228可以被细分成两个步骤,即步骤224和步骤226,在步骤224中将该复杂图案描述的边映射到该图形表示的一组顶点上,在步骤226中将该基础图案定义的拓扑和该复杂图案描述的拓扑关系映射到该图形表示的一组边上。
[0103]还应注意,步骤230可以被细分成三个步骤,即步骤232、步骤234和步骤226,在步骤232中在该集成电路布图中确定拓扑关系,在步骤234中将该集成电路布图的边映射到该图形表示的一组顶点上,在步骤226中将该集成电路布图的已确定的拓扑关系映射到该图形表示的一组边上。
[0104]最后,在步骤114中,如先前讨论的,存储所找到的基准图案的实例。
[0105]图3示意性示出了集成电路布图300的一部分的一个实施方案。集成的电路布图300包括若干个层CO、PO、Ml、Vl和M2,每个层对应于集成电路器件的必须基于集成电路布图300的相应层而制造的一个层。该集成电路器件的对应层是:接触层、多晶硅层、第一金属层、第一通孔层和第二金属层。这些层包含多边形302、304、306、308、310。多边形304是PO层中的一个多边形,且其形状的拓扑涉及一个“H”,这是因为该多边形的大多数边相对于彼此的定位如同在一个对称地绘制的“H”中。此外,多边形304的几何形状不同于一个很好地绘制的对称的“H”。[0106]图4a示意性展示了从用户接收的基准图案402的绘图。在一个实施方案中,用户提供了层属性P0404,它对应于必须在其中找到该基准图案的层。如所见,该基准图案是一个很好地绘制的“H”,它至少相对于假想的竖直对称轴线是对称的。
[0107]图4b示意性示出了从基准图案402推导基础图案定义。该绘图的线被映射到边上。沿着基准图案402的多边形的边界,边412被编号,且通过循着该多边形的边界行进,得到了一组边{el,…,el2}。此外,推导出存在一个边序列,并推导出边el相邻于边e2,边e2相邻于边e3,……,边ell相邻于边el2,且边el2相邻于边el。每条边412具有两个极点,例如,边el具有第一角414和第二角420。在该基础图案定义中,描述了角414是边el和边e2的公共点。此信息针对所有的角被存储。此外,确定了在该基准图案的成对的边之间的角度是多少。在基准图案402中需要确定的角度的最小量是相邻边之间的角度。其他成对的边之间的角度可以从所推导出的角度的最小集合得出。可以在所绘制的多边形的内侧确定边之间的角度。也可以在边的另一侧确定角度,然而,在图4b的背景中,根据在从基准图案402推导基础图案定义中使用的协议,该角度是在该多边形的边的内侧在相邻边之间测量的。因此,角度416是:角度(el,e2) =角度(e4,e5) =角度(e5,e6) =角度(e6,e7)=角度(e7,e8) =角度(el0,ell) =角度(ell,el2) =角度(el2,el) =90。,且角度 418=角度(θ2 , θ3 )=角度(θ3 , θ4 )=角度(θ8 , θ9 )=角度(e9,e 10 ) =270 。
[0108]所推导出的基础图案定义对应于多种多样的拓扑和几何形状,见图4c。图4c中的所有所绘制的图案都具有如在先前段落中讨论的在相邻边之间有对应角度的边序列。例如,图案422不一定看起来像是“H”,而是在某程度上具有旋转的“S”的形状。图案424在某程度上具有“N”的形状。
[0109]图5a到图5c展示了拓扑关系类型的实施例。
[0110]在图5a中,绘制了由第一边502和第二边506组成的一对边之间的拓扑关系504。拓扑关系504指定了第一边502平行于第二边506,第一边502和第二边504有一个公共游程长度,且第一边502和第二边504之间沿着该共同游程长度的区域没有其他边。该区域必须接触第一边502且必须接触第二边504。换言之,存在多对点,每一对在第一边502上具有一个点且在第二边504上具有一个点,其中这些成对的点之间的距离是在第一边上具有第一点且在第二边上具有第二点的所有其他可能点对之间的多个距离之中的最小可能距离。此外,这些成对的点之间的距离严格小于以下多个如下两个距离之和,其中第一距离是边502上的第一点与第三边(不是第一边502也不是第二边504)上的第二边之间的距离,且第二距离是第三边上的第二点与第二边504上的第三点之间的距离。这意味着,在位于第一边502与第二边504之间且接触第一边502和第二边504的矩形区域内不存在其他边。
[0111]在图5b中,绘制了由第一角512和第二角516组成的一对之间的拓扑关系514。拓扑关系514指定第一角512和第二角516对角对置。除了连接到第一角512和连接到第二角516的边之外,没有边存在于由第一角512与第二角516之间的点组成的非空区域内,且离第一角512比离连接到第一角512的边更近,且离第二角516比离连接到第二角516的边更近。因此,换言之,第一角512和第二角516对角对置。
[0112]在图5c中,展示了由角526和边522组成的一对之间的拓扑关系524。在包含边522上的一个点并且包含连接到角526的边之一上的一个点的所有点对之中,角526和边522在角526与边522上的一个特定点之间具有最小距离。没有其他边与将角526和边522上的该特定点相连接的线交叉。
[0113]在所述方法的一个步骤中,在该基础图案定义的成对实体之间确定了一组拓扑关系。该实体是边和角。如先前讨论的,用户可以指示这组拓扑关系。图6a示出了,用户已经指示了边e3与e9之间的拓扑关系。拓扑关系602具有如下含义:边e3和e9必须彼此平行,需要具有共同游程长度,且在边e3与e9之间至少有一个没有任何其他边的矩形区域,该矩形区域必须接触边e3且必须接触边e9。拓扑关系602的类型是图5a中示出的拓扑关系类型。在图6b中,示出了这对于早先展示的、与该基础图案定义匹配的一组图案意味着什么。在图6b的下部604绘制的图案不对应于其中呈现了图6a的所绘制的拓扑关系602的基础图案定义。在该非对应的图案中,边(相应于所提供的基准图案402的边e3和e9)不具有所绘制的拓扑关系602的拓扑。换言之,该非对应的图案的特定边e3和e9不满足该拓扑关系的条件之一。
[0114]与图7、图8a和8b以及图9a、9b和9c 一起,讨论了其他类型的拓扑关系。
[0115]假定该基准图案的边的所允许的倾斜角只能是O度、90度、180度和270度,则在图7中展示了四个不同的情形(i)_ (iv),它们代表了两条边之间的所有可能的角度。在情形(i)中绘制了两条边702、704。每条边702、704的面向多边形的内部的一侧由阴影区域指示。该多边形的内部在第一边702上方,且该多边形的内部在第二边704下方。从该基准图案推导出的基础图案定义也可以限定该边的哪一侧面向该多边形的内部。
[0116]按照协议,一条边的第一角被定义为:当该边在使多边形的内部处于该边的右手侧的方向上行进时经过的第一个角。该边的第二角被定义为:当该边在使多边形的内部处于该边的右手侧的方向上行进时经过的第二个角。对于边702、704,指示了第一角Cl和第二角 c2。
[0117]此外,一对中的第一边与一对中的第二边之间的角度被定义为:当第二边虚拟平移到一个位置以使第二边的第一角具有与第一边的第二角相同的位置时,存在于第一边与第二边之间在该多边形的内侧的角度。因此,在情形(i)中,第二边704的虚拟平移会意味着这些边被虚拟地恰好彼此上下叠置。在该虚拟平移之后,第一边702与第二边704之间的角度在该多边形的内侧是360°,这等于0°。此外,根据上述定义,在情形(ii)中,边706与708之间的角度是90° ;在情形(iii)中,边710与边712之间的角度是270° ;且在情形(iv)中,边714与边716之间的角度是180°。
[0118]图8a示出了一个边是如何对边702周围的区域进行虚拟分割的。该区域实际上是整个2D平面。该区域被细分成子区域I到6。子区域I到3位于边704的背向多边形的内部的一侧。子区域4到6位于该边的面向多边形的内部的一侧。子区域I到3之间的边界由在边702的角部与边702相交的边702的法向轴线形成。这些法向轴线也形成了子区域4到6之间的边界。所限定的子区域还可以被用来检查图案中或集成电路布图中的边是如何彼此相关的。可以检查,例如第二边的角位于第一边的哪些子区域内,由此确定第一边与第二边之间的相对位置。或者也可以检查,例如第二边(的一部分)位于第一边的哪些子区域内。
[0119]通过将第一边与第二边之间的角度(例如基于图7的定义)的描述与第二边(的一部分)存在于第一边的哪些子区域内的描述组合起来,可以限定特定拓扑情形(topological situation)。在本文件的后续部分中,使用这样的手段来限定不同的拓扑关系类型。通过检查成对的边或角之间限定的条件,可以在集成布图中或在图案中发现这样的类型的拓扑关系。
[0120]两个彼此交叉的边缘的拓扑可以在形式上被定义成:
[0121]CROSS (边 1,边 2)=
[0122]“边I与边2之间的角度既不是0°又不是180° ”且
[0123]“边2没有完全位于边I的子区域1、2、3的并集或子区域4、5、6的并集内”且
[0124]“边I没有完全位于边2的子区域1、2、3的并集或子区域4、5、6的并集内”
[0125]内侧彼此背向的两条平行边的拓扑(例如,图7的情形(i),或图8b的拓扑,或图Sc的拓扑)可以在形式上被定义成:
[0126]“边I与边2之间的角度是0° ”且
[0127]“边2位于边I的子区域1、2、3的并集内”且
[0128]“边I位于边2的子区域1、2、3的并集内”。
[0129]图8c展示了具有共同游程长度的两条边712、714的拓扑。然而,也在另一条边介于边712和边714之间的情形中,边712和边714具有共同游程长度。共同游程长度的形式定义可以是:
[0130]CRL (边 1,边 2)=
[0131]“边I与边2之间的角度是0°或180。”且
[0132]“{边1,边2}中的一条边在{边1,边2}中的另一条边的子区域2或5中有极点”。
[0133]图8c也展示了由边I (712)和边2 (714)组成的一对的拓扑,沿着它们的公共游程长度有未受阻碍的视野。这是依据边之间的角度以及边相对于彼此的相对位置定义的复杂拓扑。它是复杂的定义,因为该定义中涉及在边712、714的环境中可用的所有其他边。未受阻碍的视野意味着,存在一条与边I和边2垂直的线,该线与边I和边2相交,以使得没有其他完全地或部分地位于边I和边2之间的边与此线相交。图Sc中绘制了这样的线724。为了得到在这些边和这些边的子区域方面的形式定义,在两条平行边之间的区域由表达式BETWEEN (边1,边2)定义。图8c中指示了这样的BETWEEN区722。BETWEEN (边1,边
2)的形式定义可以是:
[0134]“边I的区A与边2的区B的交集,其中如果边2位于边I的子区域1、2、3的并集内则区A等于边I的子区域2,其中如果边2位于边I的子区域4、5、6的并集内则区A等于边I的子区域5,其中如果边I位于边2的子区域1、2、3的并集内则区B等于边2的子区域2,且其中如果边I位于边2的子区域4、5、6的并集内则区B等于边2的子区域5”。
[0135]于是,如果下面定义的谓词PARTIAL_VIEW为真,则边I和边2沿着它们的共同游程长度的一部分具有未受阻碍的视野:
[0136]PARTIAL_VIEff (边 I,边 2)=[0137]“区 BETWEEN (边 1,边 2)未被区 BETWEEN (X,边 I)和区 BETWEEN (X,边 2)的总和覆盖,其中X遍及所有平行于边I和边2的边(但排除边I和边2),且相对于边I具有的上/下关系与边2具有的相同,且相对于边2具有的上/下关系与边I具有的相同”。
[0138]有一个变量是如下一个拓扑关系,其中边I和边2沿着它们的整个共同游程长度具有未受阻碍的视野。此类拓扑关系被称为FULL_VIEW:
[0139]FULL_VIEff (边 I,边 2 )=
[0140]“区 BETWEEN (边 1,边 2)与区 BETWEEN (X,边 I)和区 BETWEEN (X,边 2)的总和不相交,其中X遍及所有平行于边I和边2的边(但排除边I和边2),且相对于边I具有的上/下关系与边2具有的相同,且相对于边2具有的上/下关系与边I具有的相同”。应注意,拓扑类型FULL_VIEff (边1,边2)是图5a的拓扑类型504和图8c的拓扑。
[0141]图9a中展示了拓扑关系类型806。拓扑关系类型806是具有未受阻碍的视野的对角对置的两个角之间的关系,它是与图5b中的拓扑关系相同的拓扑关系。此关系也用与定义图8a到Sc中的关系相同的形式语言进行定义。为了正确地定义拓扑关系类型806,涉及两个相邻边的SECTOR被定义成:
[0142]SECTOR (边 1,边 2)=
[0143]“一个交集, 其 含有由两个边形成的角的尖端,且是如下交集中最大的交集:一条边的区I与另一条边的区3的交集,或一条边的区4与另一条边的区6的交集”。
[0144]这在图9b中示出。在情形(i)中,扇区812是SECTOR (边814,边816)。在情形
(ii)中,扇区 822 是 SECTOR (边 826,边 824)。
[0145]SECTOR (边1、边2)的定义被用来定义两个角是否对角对置。如果下面给出的定义谓词DIAG0NALLY_0PP0SITE (...)为真,则相邻的边I和边2的角以及相邻的边3和边4的角是对角对置的:
[0146]DIAG0NALLY_0PP0SITE (边 1,边 2,边 3,边 4)=
[0147]“边I和边2是相邻的”且
[0148]“边3和边4是相邻的”且
[0149]“边3和边4的公共点位于SECTOR (边1,边2)内”且
[0150]“边I和边2的公共点位于SECTOR (边3,边4)内”
[0151]图9a的拓扑关系806介于两个对角对置的角之间,但也如在图5b的背景中讨论的,这两个角形成了最接近的一对点,这意味着它们对彼此具有未受阻碍的视野。这可以被定义成:
[0152]DIAG0NALLY_UN0BSTRUCTED_VIEff (边 I,边 2,边 3,边 4)=
[0153]“DIAG0NALLY_0PP0SITE (边 I,边 2,边 3,边 4)” 且
[0154]“没有边X与SECTOR (边1,边2)与SECTOR (边3,边4)的交
[0155]集的内部相交,其中边X遍及所有的边(排除边I和边2)”
[0156]图1Oa示出了 “H”形的基准图案1002,其中绘出了边eL...el2、角和一个拓扑关系1008。该基础图案定义描述了边el到el2的序列,其中el与e2相邻,边e2与e3相邻,……,且边el2与el相邻。此外,这组拓扑关系包含关于相邻边之间的角度的信息。el与e2之间的角度1004是90°,e2与e3之间的角度1006是270°,……,而el2与el之间的角度是90°。这组拓扑关系还包含一个拓扑关系1008,它是对置的平行边e3与e9之间的关系。这组拓扑关系和该基础图案定义形成了复杂图案定义。该复杂图案定义被变换成该复杂图案定义的图形表不。图1Ob中的图形表不1052是图1Oa中的图案的图形表不。该图形的顶点是由边el至el2形成的。该图形的顶点之间的边是由基础图案定义的邻接关系和角度关系以及这组拓扑关系中的拓扑关系形成的。例如,该图形的边1054代表该图案的边el和边e2是相邻的,且这两条边之间的角度1004是90°。该图形的边1056代表该图案的边e2和边e3是相邻的,且这两条边之间的角度1006是270°。该图形的边1058代表该图案的边e3与边e9之间的拓扑关系1008,且是彼此对置地定位的两条平行边之间的拓扑关系。
[0157]可以用与关于图1Oa和图1Ob展示的相同的方式来将集成布图变换成图形表示。可以通过在与图形1052相等的集成电路布图的图形表示中找到子图形来找到图案1002。
[0158]图11展示了根据本发明的第三方面的系统1100。系统1100检查集成电路布图中复杂图案的实例。系统1100包含:布图输入装置1110、图案输入装置1102、推导装置1104、确定装置1106、形成装置1108、检查装置1112、存储装置1114。布图输入装置1110接收集成电路布图。图案输入装置1102从用户接收基准图案的绘图。推导装置1104从该绘图推导出基础图案定义。该基础图案定义包含相继边的一个或多个序列,该边对应于该绘图中的线;还包含角,该角对应于该绘图中的线的极点;还包含边之间的角度。角是序列的第一边的第一点、是序列的最后一边的最后一点、或者是两个相继边的公共点。确定装置1106确定该基础图案定义的成对的两条边之间、该基础图案定义的成对的两个角之间、或该基础图案定义的成对的一条边和一个角之间的一组拓扑关系。形成装置1108从所推导出的基础图案定义和该组拓扑关系来形成复杂图案定义。检查装置1112检查该集成电路布图中与复杂图案描述匹配的复杂图案的实例。存储装置1114存储所找到的复杂图案的实例。
[0159]应注意,上述实施方案例示而非限制本发明,且本领域技术人员将能够在不脱离所附权利要求的范围的前提下设计许多替代实施方案。
[0160]在权利要求中,置于括号中的任何参考标记不应被解释为对权利要求的限制。使用动词“包含”及其变体并不排除权利要求中存在陈述以外的元素或步骤。元素之前的冠词“一”不排除存在多个这样的元素。本发明可以借助于包含若干不同元素的硬件,以及借助于适当编程的计算机来实现。在列举了若干装置的系统权利要求中,这些装置中的几个可以由同一个硬件实施。某些措施被记载在彼此不同的从属权利要求中这一事实本身并不表示这些措施的组合不能被有利地使用。
【权利要求】
1.一种检查集成电路布图(300)中基准图案(402,1002)的实例的方法(100,200),所述集成电路布图(300)代表集成电路器件的设计,所述基准图案(402,1002)是一个或多个集成电路布图(300 )元素的拓扑,所述方法(100,200 )包含如下步骤: -接收(102)所述集成电路布图, -从用户接收(104)所述基准图案(402,1002)的绘图, -从所绘制的基准图案(402,1002)推导(106)出基础图案定义,所述基础图案定义包含一个或多个相继边(el...el2)的一个或多个序列,所述边对应于所绘制的基准图案(402.1002)中的线,所述基础图案定义还包含角,所述角对应于所述绘图中的所述线的极点,一个角是序列的第一边(el)的第一点、是序列的最后一边(el2)的最后一点、或者是两个相继边(θ1...θ12)的公共点, -基于所绘制的基准图案(402,1002)确定(108) 一组拓扑关系(504,514,524,806,1008),所述拓扑关系(504,514,524,806,1008)被限定在所述基础图案定义的成对的两条边(el-el2)之间、所述基础图案定义的成对的两个角之间和/或所述基础图案定义的成对的一条边(el,…,el2)与一个角之间,所述拓扑关系(504,514,524,806,1008)限定了所述成对的角和/或边(el-el2)之间的特定拓扑, -形成(110)复杂图案描述,所述复杂图案描述是所推导出的基础图案定义和所述一组拓扑关系(504,514,524,806,1008)的组合, -检查(112)所述集成电路布图(300)中与所述复杂图案描述匹配的图案,以在所述集成电路布图中找到所述基准图案(402,1002 )的实例, -存储(114)所找到的所述基准图案(402,1002)的实例。
2.根据权利要求1所述的方`法(100,200),包含以下步骤:展示(206)所述基准图案(402.1002)的所述绘图中已确定的这组拓扑关系(504,514,524,806,1008)。
3.根据权利要求1或2所述的方法(100,200),所述方法(100,200)还包含以下步骤: -从用户接收(208)拓扑关系输入,所述拓扑关系输入包含所述绘图中的一个或多个特定拓扑关系(504,514,524,806,1008)的定义, -基于所述拓扑关系输入,将所述特定拓扑关系(504,514,524,806,1008)添加(210)到已确定的这组拓扑关系(504,514,524,806,1008)。
4.根据权利要求1到3中任一项所述的方法(100,200),所述方法(100,200)还包含以下步骤: -从用户接收(212)另外的拓扑关系输入,所述另外的拓扑关系输入包含已确定的这组拓扑关系(504,514,524,806,1008)中的一个或多个拓扑关系(504,514,524,806,1008)的选集,且 -基于所述另外的拓扑关系输入,从已确定的这组拓扑关系(504,514,524,806,1008)中移除所选择的拓扑关系(504,514,524,806,1008)。
5.根据权利要求1到4中任一项所述的方法(100,200),所述方法(100,200)包含从用户接收(204)线选集的步骤,所述线选集是对所绘制的基准图案(402,1002)中的与检查所述集成电路布图(300)中所述基准图案(402,1002)的实例相关的线的指示,所述线选集在推导基础图案定义以及确定一组拓扑关系(504,514,524,806,1008)的步骤中被纳入考虑。
6.根据权利要求1到5中任一项所述的方法(100,200),其中-所述集成电路布图(300 )包含多边形(302…310 ),该多边形(302…310 )代表集成电路布图(300)元素或集成电路布图(300)元素的部分, -相继边(θ1...θ12)序列限定了多边形(302…310)的至少一部分, -所述基础图案定义还限定了所述相继边(el...el2)序列中的至少一条边(el...el2)的如下一侧,这一侧面向所述多边形(302…310)的所述一部分的内部。
7.根据权利要求1到6中任一项所述的方法(100,200),其中 -所述集成电路布图(300)包括一个层(CO,PO, Ml, M2, VI),这个层代表所述集成电路器件的一个层或所述集成电路器件的该层的一部分, -所述基础图案定义还限定了每个边(el...el2)序列的层属性, -检查(1112)所述集成电路布图(300)中与所述复杂图案描述匹配的图案的步骤还将所述层属性纳入考虑。
8.根据权利要求1到7中任一项所述的方法(100,200),其中已确定的这组拓扑关系(504,514,524,806,1008)中的每一个拓扑关系(504,514,524,806,1008)都属于作为预先确定的一组拓扑关系类型的一部分的一个类型,所述预先确定的一组拓扑关系类型包含如下之间的拓扑关系类型: i)第一边(θ1...θ12)和第二边(θ1...θ12)在所述基础图案定义的边(θ1...θ12)序列中是相邻的,且所述第一边(el...el2)与所述第二边(el...el2)之间具有特定角度(1004,1006), ?)第一角和第二角,所述第`一角是第一特定边(el...el2)的一点,或者是第一特定边(θΡ..θ12)和第二特定边(el*"el2)的一点,所述第二角是第三特定边(θ1...θ12)的一点,或者是第三特定边(θ1...θ12)和第四特定边(θ1...θ12)的一点,所述第一角和所述第二角对角对置意味着在所述第一特定边(θ1...θ12)的或所述第二特定边(θ1...θ12)的一点与所述第三特定边(el-el2)上的或所述第四特定边(el...el2)的一点的所有可能的点对之中,所述第一角和所述第二角具有最短的距离, iii)对角对置的第一角和第二角,除了连接到所述第一角和所述第二角的边(el...el2)之外,没有边存在于由处于所述第一角与所述第二角之间的点限定的区域内,并且离所述第一角比离连接到所述第一角的边(θ1...θ12)更近或者离所述第二角比离连接到所述第二角的边(θ1...θ12)更近。 iv)一个角和一条边(el...el2),所述角是第一特定边(el...el2)和第二特定边(el...el2)的公共点,在包含所述边(el...el2)上的一点和所述第一特定边(el...el2)上的或所述第二特定边(el*“el2)上的一点的所有点对之中,所述角和所述边(el...el2)在所述角与所述边(θ1...θ12)上的一个特定点之间具有最短的距离,除了所述边(θ1...θ12)、所述第一特定边(θ1...θ12)和所述第二特定边(θ1...θ12)之外,没有边(θ1...θ12)与将所述角和所述特定点连接的线交叉, V)第一边(el...el2)和第二边(el...e 12),所述第一边(el...el2)与所述第二边(el...el2)交叉, vi)第一边(θ1...θ12)和第二边(θ1...θ12),所述第一边(el...el2)与所述第二边(el...el2)平行, vii)第一边(θ1...θ12)和第二边(el...el2),所述第一边(θ1...θ12)与所述第二边(θΡ..θ12)平行,且所述第一边(θ1...θ12)的内侧背向所述第二边(θ1...θ12)的内侧, viii)第一边(θ1...θ12)和第二边(el...el2),所述第一边(θ1...θ12)与所述第二边(θΡ..θ12)平行,且所述第一边(θ1...θ12)的内侧面向所述第二边(θ1...θ12)的内侧, ix)第一边(θ1...θ12)和第二边(θ1...θ12),所述第一边(el...el2)与所述第二边(el...el2)平行,且所述第一边(θ1...θ12)的内侧面向所述第二边(θ1...θ12)的外侧, X)第一边(θ1...θ12)和第二边(el...el2),所述第一边(θ1...θ12)与所述第二边(el,…,el2)平行,且所述第一边(el...el2)与所述第二边(el...el2)具有共同游程长度,xi )第一边(θ1...θ12)和第二边(θ1...θ12),所述第一边(el...el2)与所述第二边(el...el2)平行,且所述第一边(el...el2)与所述第二边(el...el2)具有共同游程长度,且在所述第一边(el...el2)与所述第二边(el...el2)之间沿着它们的共同游程长度的一个区域的一个矩形部分内不存在其他边(θ1...θ12),所述区域的所述矩形部分接触所述第一边(el...el2)且接触所述第二边(θ1...θ12),以及 xii)第一边(θ1...θ12)和第二边(el...el2),所述第一边(θ1...θ12)与所述第二边(θΡ..θ12)平行,且所述第一边(θ1...θ12)与所述第二边(θ1...θ12)具有共同游程长度,且在所述第一边(θ1...θ12)与所述第二边(θ1...θ12)之间沿着它们的共同游程长度的一个矩形区域内不存在其他边(el...el2),所述矩形区域接触所述第一边(el...el2)且接触所述第二边(el...el2)。
9.根据权利要求1到8中任一项所述的方法(100,200),其中检查(1112)所述复杂图案的步骤包含如下步骤: -将所述复杂图案描述变换(228)成所述复杂图案描述的图形表示(1052), -将所述集成电路布图(300 )变换(230 )成所述集成电路布图(300 )的图形表示, -在所述集成电路布图(300)的所述图形中找到(238)所述复杂图案描述的图形的实例,以找到所述基准图案的实例。
10.根据权利要求9所述的方法(100,200 ),其中将所述集成电路布图(300 )变换(230)成图形表示的步骤包含:确定(232)所述集成电路布图中的拓扑关系(504,514,524,。806,1008)。
11.根据权利要求9或10所述的方法(100,200),其中 将所述复杂图案描述变换(228)成所述图形表示(1052)包含:i)将所述复杂图案描述的边(θ1...θ12)映射(224)到所述图形表示的一组顶点上,和ii)将所述基础图案定义的拓扑信息和所述复杂图案描述的拓扑关系(504,514,524,806,1008)映射到所述图形表示的一组边上,以及/或者 -当引用权利要求10时,将所述集成电路布图(300)变换(230)到所述图形表示包含:i)将所述集成电路布图(300)的边(el-el2)映射(234)到所述图形表示的一组顶点上,以及ii)将所述集成电路布图(300)的基础拓扑信息和所述集成电路布图(300)的已确定的拓扑关系(504,514,524,806,1008)映射到所述图形表示的一组边上。
12.根据权利要求1到11中任一项所述的方法(100,200),所述方法(100,200)包含接收(216)—个或多个几何谓词的步骤,一个几何谓词限定了所述基准图案(402,1002)的一个特定拓扑的一个特定几何形状,且其中 -在形成(1108)复杂图案描述的步骤中,所接收的几何谓词被包括在所述复杂图案描述中,且 -检查(1112)集成电路布图(300)中与所述复杂图案描述匹配的图案的步骤还将所接收的几何谓词纳入考虑。
13.根据权利要求1到12中任一项所述的方法(100,200),所述方法(100,200)包含接收(218)—个或多个布图属性谓词的步骤,所述布图属性谓词是描述一个或多个电路布图元素的特性的属性,且是从所述集成电路布图(300 )中可提取的,且其中, -在形成(1108)复杂图案描述的步骤中,所接收的布图属性谓词被包括在所述复杂图案描述中,且 -检查(1112)所述集成电路布图(300)中与所述复杂图案描述匹配的图案的步骤还将所述布图属性谓词纳入考虑。
14.根据权利要求1到13中任一项所述的方法(100,200),所述方法包含接收(220)所要求的图案取向的步骤,所述所要求的图案取向是所述基准图案(402,1002)的实例在所述集成电路布图(300)中相对于预先限定的基准取向必须具有的取向,且其中 -在形成(1108)复杂图案描述的步骤中,所述所要求的图案取向被包括在所述复杂图案描述中,且
-检查(1112)所述集成电路布图(300)中与所述复杂图案描述匹配的图案的步骤还将所述所要求的图案取向纳入考虑。
15.根据权利要求1到14中任一项所述的方法(100,200),所述方法包含从所述复杂图案描述构建(222)复杂布尔表达式和/或算术表达式的步骤,且其中检查(1112)所述集成电路布图(300)中与所述复杂图案描述匹配的图案的步骤使用所述布尔表达式和/或所述算术表达式来在所述集成电路布图中找到所述基准图案(402,1002 )的实例。
16.根据权利要求1到15中任一项所述的方法(100,200),所述方法包含以下步骤:通过基于一个或多个算术运算将所接收的集成电路布图(300)适配在所述集成电路布图的元素上,来预处理(202 )所述集成电路布图(300 )。
17.一种用于检查集成电路布图(300)中基准图案(402,1002)的实例的计算机程序产品,所述计算机程序产品包括指令,所述指令用于使得处理器系统执行根据权利要求1到.17 中任一所述的方法(100,200) (100,200)。
18.一种检查集成电路布图(300)中基准图案(402,1002)的实例的系统(1100),所述集成电路布图(300)代表集成电路器件的设计,所述基准图案(402,1002)是一个或多个集成电路布图(300)元素的拓扑,所述系统包含: -布图输入装置(1110),用于接收所述集成电路布图, -图案输入装置(I 102),用于从用户接收所述基准图案(402,1002)的绘图, -推导装置(1104),用于从所绘制的基准图案(402,1002)推导出基础图案定义,所述基础图案定义包含一个或多个相继边(el...el2)的一个或多个序列,所述边对应于所绘制的基准图案(402,1002)中的线,所述基础图案定义还包含角,所述角对应于所述绘图中的所述线的极点, -确定装置(1106),用于基于所绘制的基准图案(402,1002)确定一组拓扑关系(504,.514,524,806,1008),所述拓扑关系(504,514,524,806,1008)被限定在所述基础图案定义的成对的两条边(el...el2)之间、所述基础图案定义的成对的两个角之间、或所述基础图案定义的成对的一条边(el...el2)与一个角之间,所述拓扑关系(504,514,524,806,1008)限定了所述成对的角和/或边(θ1...θ12)之间的特定拓扑, -形成装置(1108),用于形成所述复杂图案定义,所述复杂图案定义是所推导出的基础图案定义与所述一组拓扑关系(504,514,524,806,1008)的组合, -检查装置(1112),用于检查所述集成电路布图(300)中与所述复杂图案定义匹配的图案,以在所述集成电路布图中找到所述基准图案(402,1002)的实例, -存储装置(1114 ) ,用于存储所找到的所述基准图案(402,1002 )的实例。
【文档编号】G06F17/50GK103688261SQ201280035588
【公开日】2014年3月26日 申请日期:2012年5月15日 优先权日:2011年5月19日
【发明者】J·G·G·P·范吉斯博根, D·J·布拉克利, R·奥门斯, J·泽尔尼克 申请人:赛智设计自动化有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1