对集成电路版图数据进行区域索引的方法

文档序号:8258556阅读:1018来源:国知局
对集成电路版图数据进行区域索引的方法
【技术领域】
[0001]本申请涉及一种对集成电路版图数据进行处理的方法。
【背景技术】
[0002]集成电路版图(integrated circuit layout)是以二维图形的形式所描述的集成电路。集成电路通常由多个物理层次所组成,这些图形分别表示每一层中的金属、介质、半导体材料的结构以及连线。这些图形的形状、尺寸、所在层、位置与互连关系就决定了集成电路的电路结构。集成电路版图数据通常采用GDSII格式,该格式存储着版图的各种信息,包括结构信息、坐标信息、层次信息等。
[0003]对集成电路版图进行区域索引是指在版图中找到相同的、或等比例缩放的图形或图形组合的所有出现位置,并得到这些图形或图形组合在所有出现位置的对外连线。请参阅图la,相同的图形是指相同形状、相同大小的图形,等比例缩放的图形是指相同形状、等比例缩放大小的图形。请参阅图lb,相同的图形组合是指相同形状、相同大小的多个图形在相同位置关系下的组合,等比例缩放的图形组合是指相同形状、等比例缩放大小的多个图形在等比例缩放位置关系下的组合。
[0004]如今,几十GB、乃至上百GB大小的版图数据已经非常常见。如果直接对版图数据进行任何操作,都需要耗费大量的硬件资源。而对版图数据进行区域索引后,就可以仅对小部分的版图数据进行操作,从而大大减轻了硬件要求。例如,已知某个图形或图形组合可能具有某种缺陷,对其进行区域索引后,就能有针对性地对这些图形或图形组合的所有出现位置进行检查。又如,已知某个图形具有错误,对其进行区域索引后,就能有针对性地对这些图形或图形组合的所有出现位置进行修改。
[0005]现有的对集成电路版图数据进行区域索引的方法是:
[0006]第I步,根据原始图形或图形组合,在版图数据中寻找相同的、或等比例缩放的图形或图形组合的所有出现位置。寻找图形可以通过计算机实现,而寻找图形组合则只能由人工目视查找。如果只是根据单个图形(原始图形)寻找相同的、或等比例缩放的图形,那么单个图形只是结构,没有连线,因此完成第I步即完成了区域索引。
[0007]第2步,在第I步所找到的图形组合的所有出现位置,寻找各种对外连线。这只能以人工目视查找。
[0008]由于依赖于人工操作,现有的区域索引方法不仅非常耗时,而且有可能因为图形数目过多而造成人为失误。

【发明内容】

[0009]本申请所要解决的技术问题是提供一种对集成电路版图数据快速地进行区域索引的方法,以便于进行后续的版图数据检查和修改等操作。
[0010]为解决上述技术问题,本申请对集成电路版图数据进行区域索引的方法为:
[0011]第I步,在版图数据中将包围着原始图形或图形组合的一个中空闭合图形指定为索引图形,记录索引图形的各顶点坐标值;
[0012]第2步,根据索引图形的各顶点坐标值,在版图数据中寻找出所有与索引图形相同的、或等比例缩放的图形,称为索引结果图形;
[0013]第3步,将每一个索引结果图形都转换为多边形图形,称为索引多边形图形;
[0014]第4步,计算各个索引多边形图形的最小外接矩形和最大内接矩形的各顶点坐标值;
[0015]第5步,将版图数据逐层读取并插入到一颗R*树中,称为第一 R*树;
[0016]第6步,如果版图数据上的某一图形,其最小外接矩形被某一个索引多边形图形的最大内接矩形所包围,则将该图形称为索引多边形图形的内部图形;
[0017]在版图数据中寻找所有的索引多边形图形的内部图形,并将其形成第二 R*树;在第一 R*树中删除掉所有的索引多边形图形的内部图形,作为第三R*树;
[0018]第7步,如果版图数据上的某一图形,其最小外接矩形被所有的根据索引图形转换的多边形图形的最小外接矩形都完全没有覆盖,则将该图形称为索引多边形图形的外部图形;
[0019]在版图数据中寻找所有的索引多边形图形的外部图形,并将其形成第四R*树;在第三R*树中删除所有的索引多边形图形的外部图形,作为第五R*树,这是所有的索引多边形图形的边界图形。
[0020]本申请可以快速、准确地在版图数据中进行区域索引,可用于区分版图数据的不同区域,对特定区域进行数据修改和检查等。
【附图说明】
[0021]图la、图1b是与相同的、等比例缩放的图形或图形组合的示意图;
[0022]图2是本申请对集成电路版图数据进行区域索引的方法的流程图;
[0023]图3是一个版图数据的芯片、子芯片、图形划分示意图;
[0024]图4a是图3所示的版图数据的各个图形位置关系示意图;
[0025]图4b是图4a所示图形属于某一个索引多边形图形的内部图形、外部图形的示意图;
[0026]图5a?图5e分别是图3所示的版图数据形成的第一 R*树?第五R*树的示意图;
[0027]图6是索引多边形图形的边界图形的不同情况示意图;
[0028]图7是第一 R*树?第五R*树的关系不意图。
【具体实施方式】
[0029]请参阅图2,本申请对集成电路版图数据进行区域索引的方法包括如下步骤:
[0030]第I步,在版图数据中找到原始图形或图形组合的至少一处出现位置,将包围着原始图形或图形组合的一个中空闭合图形指定为索引图形。索引图形用来标识原始图形或图形组合的出现与否,两者之间为一一对应关系。然后记录索引图形的各顶点坐标值,也就是记录索引图形的形状与大小。
[0031]版图数据用来描述多个物理层次,所述“包围”是指从物理版图的正投影方向观察。因此索引图形与原始图形或图形组合可以在同一个物理层次或分属于不同的物理层次。
[0032]版图数据中的图形用来表示金属、介质、半导体材料的结构或连线。所述“包围”允许原始图形或图形组合中的连线穿越到索引图形之外,但原始图形或图形组合中的结构必须在索引图形之内。
[0033]优选地,在指定原始图形或图形组合的索引图形后,再次检查索引图形是否为一个中空闭合图形。如果是,则继续下一步。如果否,则重新指定索引图形。
[0034]第2步,根据索引图形的各顶点坐标值,在版图数据中寻找与索引图形相同的、或等比例缩放的图形(称为索引结果图形)的所有出现位置,这可以由计算机自动寻找。
[0035]优选地,这一步还获取各个索引结果图形的内、外边界的各顶点坐标值。这可以通过对GDSII格式的版图数据所记录的信息转换后得到,所获取的坐标值可用于第3步转换为多边形图形、第4步获得最小外接矩形和最大内接矩形。
[0036]第3步,将第2步找到的所有出现位置的索引结果图形都转换为多边形图形(称为索引多边形图形)。
[0037]如果索引图形就是多边形图形,则无需转换。如果索引图形不是多边形图形,例如为圆形、圆角矩形等,则需要转换为多边形图形。这种转换必然会导致索引多边形图形与索引图形的形状、大小发生变化,但是对本申请没有影响。
[0038]第4步,计算各个索引多边形图形的最小外接矩形和最大内接矩形的各顶点坐标。
[0039]最小外接矩形是指以索引多边形图形的外边界的各顶点坐标中的最大横坐标、最小横坐标、最大纵坐标、最小纵坐标定所确定的矩形。
[0040]最大内接矩形是指以索引多边形图形的内边界所覆盖的范围内所能得到的面积最大的矩形。如果某个索引多边形图形具有多个最大内接矩形,任选其一即可。
[0041]第5步,将版图数据逐层读取并插入到一颗R*树中,称为第一 R*树。
[0042]版图数据用来描述集成电路(称为芯片),芯片由子芯片和/或图形所组成,子芯片又由子芯片和/或图形组成。最后,归根结底芯片是由多个图形所组成的。例如,请参阅图3,某个版图数据中记录着:整个芯片由子芯片I和图形E所组成。而子芯片3又由子芯片a、图形A、图形B和图形C所组成。而子芯片a又由图形D和图形F所组成。该芯片归根结底是由图形A?图形F所组成的,图4a显示了这些图形之间的相对位置关系。值得注意的是,这些图形可能在同一个物理层次,也可能属于不同的物理层次。
[0043]R*树(R*tree)是一种树形的数据结构,用来索引空间对象(形状、线、点)。R*树由根节点、中间节点和叶节点组成。将版图数据插入到R*树的过程中,R*树会在芯片与子芯片和/或图形之间、子芯片与子芯片和/或图形之间新增一层单元,单元的数量与归类方法与R*树初始设置的节点数量有关。一旦R*树的参数确定,则这种归类方法也就唯一确定了。根据图3所示的版图数据所形成的第一 R*树如图5a所示。芯片作为根节点,单元和子芯片作为中间节点,图形作为叶节点。
[0044]第6步,如果版图数据上的某一图形,其最小外接矩形被某一个索引多边形图形的最大内接矩形所包围,则将该图形归类为索引多边形图形的内部图形。
[0045]请参阅图4b,图形A、B的最小外接矩形被某一索引多边形图形的最大内接矩形所包围,则图形A、B属于索引多边形图形的内部图形。图形E的最小外接矩形被该索引多边形图形的最大内接矩形部分覆盖,图形C、D、F的最小外接矩形被该索引多边形图形的最大内接矩形完全没
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1