一种甚大规模集成电路版图层次比较工具的单元切分预处理方法

文档序号:8258532阅读:530来源:国知局
一种甚大规模集成电路版图层次比较工具的单元切分预处理方法
【技术领域】
[0001] 一种甚大规模集成电路版图层次比较工具中版图单元切分预处理方法属于半导 体集成电路设计自动化后端设计领域,涉及甚大规模集成电路版图的差异比较操作中版图 单元切分预处理方法。
【背景技术】
[0002] 集成电路版图差异比较是版图设计和制造过程中,频繁执行的一种操作,通常用 于筛选两个近似版图在图形和文本方面的差异。
[0003] 版图在设计过程中,通常以层次架构表示,版图由多个单元(Cell)组成。单元中 包含图形,文本数据和调用子单元的实例(Instance)。版图比较工具的主要输入数据是层 次版图数据。
[0004] 版图比较工具分二种:层次比较工具和打散比较工具。
[0005] 版图打散比较工具处理层次版图的主要方法是:首先读入层次版图数据,然后按 照从顶层到底层的层次调用关系扁平化打散各个单元的图形文本数据,仅保留一个顶层单 元(TopCell);接着对顶层单元调用打散比较引擎作版图比较,最后在顶层单元输出差异 结果。
[0006] 版图层次比较工具处理层次版图的主要方法是:首先读入层次版图数据,然后对 层次版图数据的各个单元并行的调用层次比较引擎作跨层次的版图比较,最后在层次版图 的各个单元输出差异结果。
[0007] 在版图设计后期,投入生产之前,版图通常要经过多次局部修改,以满足设计规则 检查和电路元件参数要求。而每次迭代修改,都要进行版图差异比较,复查确认修改内容。 因此,版图比较工具的处理效率对集成电路设计周期具有重要影响。
[0008] 随着纳米级1C设计的出现,版图数据规模迅速膨胀,单个层次版图文件的尺寸可 达几百GB的规模。如此大的数据规模,版图打散比较工具还要打散各单元数据,使得数据 规模进一步增大,处理效率非常低。而版图层次比较工具具有无须打散单元数据,避免重复 比较同一单元数据和并行比较多个单元的优点,特别适合比较甚大规模集成电路的版图。
[0009] 集成电路设计者在设计版图的各个单元时,主要是按照逻辑关系和个人偏好来设 计。因此版图中经常出现部分单元的数据规模很大。当版图层次比较工具处理到这样的单 元时,处理效率很低。并且由于一个大单元的比较迟迟不能结束,也降低了整个版图比较的 并发执行效率。要进一步提高版图层次比较工具的比较速度,就必须解决好版图中大单元 造成的比较效率下降的问题。

【发明内容】

[0010] 本发明提供一种集成电路版图层次比较工具的单元切分预处理方法,能够解决集 成电路版图层次比较工具处理大单元时效率下降的问题。
[0011] 本发明的主要思路:在版图层次比较工具中增加一个预处理步骤一单元切分处 理。单元切分处理将版图中经常存在的大单元转换为多个较小单元。
[0012] 单元切分处理的技术方案如下: 对版图中的每个大单元在X方向和Y方向同时作切分;根据本单元的大小决定X和Y方 向切分线的总数NjPNy;切分为(Nx+1)x(Ny+1)块数据,对应的新建(Nx+1)x(Ny+1)个伪 子单元,将每块数据存入伪单元中;将大单元中的原始数据清空,重新插入(Nx+1)x(Ny+1) 个引用伪子单元的实例。
[0013] 在对单个大单元做切分时,确定切分线的步骤如下:根据子单元实例的边框的X, Y坐标,生成X和Y方向的候选切分线,接着给每个切分线赋予权重,选出权重最小的且满足 最小间距的Nx (Ny)个切分线作为最终的切分线。
[0014] 在对单个大单元做切分时,切分子单元实例(Instance)的步骤如下:当某个 Instance不跨越任何切分线,直接放入对应的伪子单元中;当某个Instance跨越一个 或多个切分线时,选取与该Instance重叠区域最大的伪子单元作为目标伪子单元,将该 Instance放入。
[0015] 在对单个大单元做切分时,切分图形的步骤如下:当图形不跨越任何切分线时,直 接放入对应的伪子单元中;当图形跨越多个切分线时,将该图形与切分线围成的矩形区域 做几何AND操作进行切割,该图形被切割后的各部分图形,放入对应的伪子单元中。
[0016] 在对每个切分线赋予权重时,步骤如下:①穿越Instance内部的切分线比经过 Instance边界权重要大的多。②穿越大Instance的切分线比穿越小的Instance权重更 大。③各Instance的权重值等于Instance所引用的单元内图形和Instance总数。
[0017]本发明在保证比较结果正确性的前提下,不仅能消除版图中存在的大单元,还能 够使版图中单元的大小均衡,提升各单元并发比较效率,加快版图比较速度。实验中采用若 干甚大规模真实版图测试,在采用了本发明所述的单元切分预处理后,版图层次比较工具 有2-5倍的性能提升。
[0018]
【附图说明】
[0019]图1层次版图的单元切分预处理方法流程图; 图2层次版图实例; 图3大单元实例的候选切分线和权重示意图; 图4大单元实例切分后的伪子单元。
[0020]
【具体实施方式】
[0021] 如附图1所示,本发明的具体实现流程如下: 0步骤(101),将所有单元按层次调用关系,拓扑排序,转步骤(102)。
[0022] 0步骤(102),按照拓扑顺序,取出下一个未处理的单元,转步骤(103)。
[0023] 0步骤(103),判断当前单元是否大单元实例,是则转步骤(104),提升子单元数据 到本单元;否则当前单元不做操作,直接转步骤(110)。判断当前单元是否大单元的标准是 同时满足以下条件:1.当前单元外框的面积大于200000平方微米,2.当前单元外框与顶 层单元外框的面积比大于1/240。
[0024] 0步骤(104),计算出本单元的X方向和Y方向切分线总数,转步骤(105)。计算 本单元切分线总数的步骤如下:1、计算本单元的Instance和图形的总数;2、将1\取3次 开方运算然后向上取整得到各方向的初始切分线总数K;3、如果本单元的X方向长度除& 大于X方向的最小切分线间隔(1000微米),则X方向的切分线总数Nx确定为&;否则X方 向的切分线总数队为0;4、如果本单元的Y方向长度除以&大于Y方向的最小切分线间隔 (200微米),则Y方向的切分线总数Ny确定为& ;否则Y方向的切分线总数Ny为0 ; 0步骤(105),根据子单元实例的边框的X,Y坐标,生成X和Y方向的候选切分线,转步 骤(106)。
[0025] 0步骤(106),根据候选切分线跨图形或跨Instance的情况为其设定权值,转步骤 (107)。设定权值的步骤如下:1、当候选切分线跨过图形时,每跨过一个图形,给候选切分线 的权值加1 ;2、当候选切分线跨过Instance时,每跨过一个Instance,计算该Instance引 用的单元内Instance和图形的总数1\,给候选切分线的权值加凡。
[0026] 0步骤(107),按照权值从候选切分线中选取实际切分线,转步骤(108)。选取X方 向实际切分线的步骤如下:1、若候选切分线总数Q小于计划切分线总数队,则候选切分线 全部被选为实际切分线;然后对间隔大于2倍X方向切分线最小间隔的区域增加新的实际 切分线,直到实际切分线总数达到计划切分线总数队。2、若候选切分线总数Q大于等于计 划切分线总数队,则将候选切分线按照权重值从小到大排序;从最小权重值的候选切分线 开始,如果与前一条实际切分线间隔大于X方向切分线的最小间隔,则选定为实际切分线, 直到实际切分线总数达到计划切分线总数队。选取Y方向实际切分线的步骤与X方向类似, 只需要将方向替换即可。
[0027] 0步骤(108),按照实际切分线切分本单元的图形,文本和Inst
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1