专利名称:集成电路版图与原理图一致性检查的局部重签名修复方法
技术领域:
本发明属于半导体集成电路设计自动化领域,主要涉及后端版图设计和验证,尤其是版 图与原理图一致性检查。
背景技术:
版图与原理图一致性检查(LVS—Layout Versus Schematic)用来验证集成电路版图结构 是否与其原理图一致,以确保版图真实反映电路原理图。LVS本质上是对版图和原理图进行 同构比较,同构时版图的每一个节点都对应原理图上唯一的一个节点,这一对节点称为匹配 点。LVS的基本思想是在有匹配点的情况下通过跟踪匹配更多的点,在没有匹配点的情况 下使用签名方法和划分方法获得初始匹配点,然后再从初始匹配点出发继续跟踪,如此反复, 直至版图与原理图全部匹配或无新的匹配点产生为止。
在实际版图设计过程中,经常会出现版图与原理图不一致的情况,这种情况下,理想的 做法是LVS能够将版图与原理图中一致对应的所有节点都匹配,而不一致的节点则作为错误 报告出来。版图设计者依据LVS提供的报告修改版图设计,再重新进行LVS,如此反复,直 到版图能够与原理图一致。显然这是一个不断循环反复的过程,对于当前千万门规模甚至更 大规模的集成电路设计,版图设计中即使是一个小小的错误也往往会很难查找错误原因。另 外器件节点和线网节点之间连接关系错综复杂,不一致的节点与其他器件节点和线网节点的 连接关系会污染这些本应该一致匹配的器件节点或者线网节点,从而引起更多节点不能匹配, 这种连接关系的传递性会导致LVS报告出来大量错误,这些错误节点包括真实的不匹配的坏 节点和伪错节点。报告出来的大量错误节点不仅使得版图设计者很难查找错误原因,而且会 误导版图设计者去修改伪错节点从而造成更多的错误,如此不停的反复修改和运行LVS的过 程将耗费大量人力和物力,影响芯片的设计。
发明内容
本发明针对版图与原理图不一致时坏节点污染周围其他节点造成大量器件和线网节点不 匹配的情况,提出用于版图与原理图一致性检查的局部重签名修复方法,分成从器件出发修 复线网和从线网出发修复器件两种方式来修复被污染的节点,有效地縮小错误节点的范围, 并且在从线网出发修复器件的方法中采用本发明公开的局部重签名方法,从而能够有效縮小 错误范围,从而准确定位版图与原理图中不一致的节点。
本发明主要的技术方案是对于版图与原理图一致性检查不一致时,采用局部重签名方
法,依据节点类型分别处理器件节点和线网节点作为初始匹配点的情况,并且循环利用修复后得到的匹配点继续修复其他节点。当初始匹配点是器件节点时,采用从器件出发修复线网 的方法,其特点在于按照器件的脚位依次顺序修复各个脚位上所连接的线网;当初始匹配点 是线网节点时,则采用从线网出发修复器件的方法,其特点在于更新线网节点的签名值后 重新对线网连接的所有器件进行签名,然后依据签名结果先匹配签名值相等并且类型相同的 器件,然后对签名值不等的器件按类型和脚位权重依次顺序匹配。
本发明公开的局部重签名修复方法修复因被坏节点污染而不能匹配的器件或线网节点。 局部签名修复方法并不是对所有节点进行签名,而仅仅只对初始匹配点周围的连接节点进行 签名,所以时间复杂度为0 (D), D为初始匹配点的连接节点数。
本发明所述局部重签名修复方法,能够在版图与原理图检查出现不一致时,提供一种有 效的修复错误的手段,同时防止坏节点污染周围其他节点,并能够正确査找错误根源,有利 于集成电路版图设计者进行LVS的错误查找和调试,并且由于进行了局部的重新签名,保证 了节点修复过程的准确性,从而避免了因修复错误而引入新错误的可能。
在本发明中,器件(Instance)指集成电路的各种电子元器件,包括但不限于电阻、电容、 电感、二极管、三极管、节型场效应管、MOS管、单元电路等,器件通过脚位连接到线网; 线网(Net)是指用来连接器件的金属或多晶硅等导电线,线网通过器件的脚位连接到器件; 节点是指版图和原理图中的器件或者线网;匹配点是指版图上的器件或线网在原理图上对应 匹配的器件或线网,或者反过来;坏节点版图与原理图上不一致的节点。
图l LVS局部重签名修复方法总体流程图; 图2从线网出发修复器件的方法流程图3从器件出发修复线网的例子示意图4从线网出发修复器件的例子示意图。
具体实施例方式
对于版图与原理图一致性检查不一致时,采用局部重签名方法,依据节点类型分别处理 器件节点和线网节点作为初始匹配点的情况,并且循环利用修复后得到的匹配点继续修复其 他节点。当初始匹配点是器件节点时,采用从器件出发修复线网的方法,其特点在于按照器 件的脚位依次顺序修复各个脚位上所连接的线网;当初始匹配点是线网节点时,则采用从线
网出发修复器件的方法,其特点在于更新线网节点的签名值后重新对线网连接的所有器件
进行签名,然后依据签名结果先匹配签名值相等并且类型相同的器件,然后对签名值不等的器件按类型和脚位权重依次顺序匹配。
以上过程的具体步骤如下,如图1所示 步骤(2)首先判断初始匹配点集合是否为空,非空才能进行下一步修复,否则跳到步骤(8) 结束修复;
步骤(3)依次取出初始匹配点集合里的一对匹配点;
步骤(4)判断是否为器件并且确定执行步骤(5)或者(6);
步骤(5)初始匹配点是器件,则从器件出发修复线网,按照器件的脚位依次顺序修复各个脚
位上所连接的线网,比如版图器件的1号脚位连接的线网对应原理图器件的1号脚位上连接
的线网;
步骤(6)初始匹配点是线网,则从线网出发修复器件,采用局部重签名的方法修复线网所连 接的各种器件,具体实施步骤如图2所示;
步骤(7)将步骤(5)和步骤(6)新得到的匹配点追加到初始匹配点集合中,然后继续(2) 一 (7)直到步骤(2)中初始匹配点集合为空。
初始匹配点是器件时,采用从器件出发修复线网的方法。器件的类型决定了该器件的脚 位数量和各个脚位之间的关系,因此从器件出发修复线网只需按照脚位顺序依次匹配各个脚 位上对应的线网即可,比如版图器件的1号脚位连接的线网对应匹配原理图器件的1号脚位 上连接的线网。
初始匹配点是线网时,采用从线网出发修复器件的方法,如图2所示,从线网出发修复
器件方法的详细流程如下 步骤(21)开始初始化;
步骤(22)首先更新初始匹配点自身的签名值,让版图线网和原理图线网的签名值相等; 步骤(23)分别收集版图和原理图线网所连接的器件,过滤已经匹配的器件; 步骤(24)对步骤(23)收集到的每一个器件重新进行签名,签名函数为
<formula>formula see original document page 5</formula>
其中NewSignature是版图器件节点或原理图器件节点的签名值;D是器件的脚位总数; SigNeti是器件节点的第i号脚位上连接的线网的签名值;WdghtPini是第i号脚位在器件所有 脚位中的权重系数,版图与原理图上相同的器件脚位赋予相同的脚位权重系数,同一个器件 上不同的脚位权重系数一般赋予不同值,只有可交换的脚位才能赋予相同权重系数。 步骤(25)依据步骤(24)中的新签名值,匹配签名值相等的版图器件和原理图器件,并调
用步骤(26)将新得到的匹配点追加到初始匹配点集合中;步骤(27)对仍然无法按照签名值匹配的器件,按照器件类型进行分类,对同类器件则依据 线网连接到器件上的脚位权重随机匹配,版图与原理图上相同的器件脚位赋予相同的脚位权 重,同一个器件上不同的脚位权重一般不同,比如MOS管的脚位g和脚位d赋予不同的脚 位权重值,并同样调用步骤(26)将新得到的匹配点追加到初始匹配点集合中,若仍然无法 得到匹配点则转入步骤(28)结束。
图3是一个从器件出发修复线网的例子,通过实例解释了从器件出发修复线网的详细过
程
版图器件与原理图器件各有i个脚位,编号l——i,版图这边l一一i号脚位分别连接线 网Nl — —Ni,原理图这边1——i号脚位分别连接线网N一l~~N—i。那么按照脚位依次修 复匹配,即版图的Nl与原理图的N—1对应匹配,版图的N2与原理图的N—2对应匹配,……, 版图的Ni与原理图的N_i对应匹配。
对于可交换的脚位可以交换修复,如图中2、 3号脚位可交换,则版图的线网N2、 N3可 以与原理图的线网N—2、 N—3交换修复,即N2与N—3匹配,同时N3与N—2匹配。
图4是一个从线网出发修复器件的例子,通过实例解释了从线网出发修复器件的详细过 程。为了叙述简单方便,这里仅仅举了一个由电阻和电容2种类型的器件所组成的示意图。 显然版图与原理图并不一致,在LVS使用签名和划分等一系列方法后获得一对初始匹配 点一_Net0与Net0,进一步跟踪得到器件(R0, R_0)和线网(Nl, N—1)匹配,而版图 中不匹配点有
器件Rl, R2, R3, R4, C5, R6
线网N2, N3, N4
原理图中不匹配点有
器件R—1, R_2, C—3, R—4, C_5, R—6 线网N—2, N—3, N—4
这时从初始匹配点(Nl, N—1)出发修复器件Rl, R2, R3, R4, C5, R6和器件R—1, R—2, C_3, R—4, C_5, R—6,若直接按照器件类型和脚位权重分类后随机匹配,会出现如下 匹配结果-
(Rl, R—1), (R2, R_2), (R3, R—4), (R4, R6) (C5,C—3)
版图的R6和原理图的C_5仍然不能匹配。
在一个超大规模电路设计中出现这样的局部错误后,调试和查错是最主要的,本例子中 (R4, R—6)匹配了,但查错时会发现对应位置应该是(R6, R_6),这样会误以为错误根源在于R6,而实际上错误根源在于R3, C_3,这里修复得到(R4, R_6)是错误的。 按本发明中的方法则可以很好的解决这个问题
步骤(21, 22)首先初始化并更新初始匹配点(N1,N—1)的签名值,使得(N1,N一1)的 签名值完全相等;
步骤(23)收集线网(N1,N—1)各自连接的未匹配器件,即 版图 Rl, R2, R3, R4, C5, R6, 原理图R—1, R—2, C—3, R_4, C_5, R—6
步骤(24)对上述器件重新进行的签名,由于此时(N1,N—1)的签名值已经相等,所以 签名后会得到版图(R1, R6},原理图(RJ,R—6}的签名值相等,其他的互不相等;
步骤(25)则根据步骤(24)的结果匹配(Rl, R_l)和(R6, R一6),并将这两对匹配 点加入初始匹配点集合,错误根源也就局限在剩余还没有匹配的节点里面;
步骤(27)再依据类型和脚位权重对剩下的器件分类,得到
版图{R2, R3, R4}, {C5}
原理图{R—2, R_4}, (C一3, C—5}
按照出现顺序随机匹配得到匹配点(R2, R—2), (R3, R4), (C5, C_3),而R4和C—5 则不能匹配。由于这里R2、 R3、 R4位置可交换,同样C—3、 C—5也可交换,因此报告R4和 C—5不能匹配与报告R3和C—3不能匹配是等价的。这样将错误准确的定位在版图的R4和原 理图的C—5上。
通过上述例子详细解释了本发明,但对本领域而言,本发明有许多变形和变化而不脱离 本发明实质精神,比如签名方法本质上是一种哈希(hash)方法,因此希望所附权利要求包 含不脱离本发明的精神的各种变形和变换。
权利要求
1、集成电路版图与原理图一致性检查的局部重签名修复方法,用于在版图与原理图出现不一致的节点时,通过从初始匹配点集合选择的初始匹配点出发修复其他未匹配节点的方法,缩小错误范围,减少伪错报告,其中初始匹配点包括器件节点和线网节点两种类型,其特征在于,该方法采用以下方式进行错误修复当初始匹配点是器件节点时,采用从器件出发修复线网的方法,当初始匹配点是线网时,采用从线网出发修复器件的方法;将每次修复后新得到的匹配点追加到初始匹配点集合,继续按上述方式进行循环修复,直至初始匹配点集合为空。
2、 根据权利要求1所述的集成电路版图与原理图一致性检查的局部重签名修复方法,其特征 在于所述采用从器件出发修复线网的方法是从已经匹配的器件节点出发,向外跟踪器件连 接的所有线网,按脚位顺序依次匹配各个脚位上连接的线网。
3、 根据权利要求1所述的集成电路版图与原理图一致性检查的局部重签名修复方法,其特征 在于所述从线网出发修复器件的方法是从已经匹配的线网节点出发,向外跟踪线网连接的 所有器件,按照以下步骤进行修复匹配步骤一,更新线网自身的签名值;步骤二,对线 网连接的所有器件进行签名;步骤三,匹配器件类型相同并且签名值相等的器件;步骤四, 将签名值不等的器件按器件类型和脚位权重任意匹配。
4、 根据权利要求1或3所述的集成电路版图与原理图一致性检査的局部重签名修复方法,其D特征在于所述签名函数为NewSignature^ZS/gA^"『e/g/^尸/w',其中NewSignature是版图器件节点或原理图器件节点的签名值;D是器件的脚位总数;SigNeti是器件节点的 第i号脚位上连接的线网的签名值;WeightPini是第i号脚位在器件所有脚位中的权重系 数。
全文摘要
本发明公开了一种集成电路版图与原理图一致性检查的局部重签名修复方法,属于半导体集成电路设计自动化领域,主要用于后端版图设计时的版图与原理图一致性检查。在版图与原理图出现不一致的情况时,经常会出现大量的不匹配——这会使得版图设计者查找错误非常困难。本发明采用局部重签名方法,能够在版图与原理图不一致时,从初始匹配点出发修复错误,根据初始匹配点的类型——器件或线网——分别采用从器件出发修复线网和从线网出发修复器件的方法,将原本应该匹配的节点修复匹配,并循环加入下一轮的初始匹配点集合中,反复执行,从而突出不匹配的坏节点,准确定位错误根源,能大大提高版图设计者查错的效率。
文档编号G06F17/50GK101452492SQ20071017829
公开日2009年6月10日 申请日期2007年11月29日 优先权日2007年11月29日
发明者侯劲松, 李志梁, 李桢荣, 毛凌颖 申请人:北京中电华大电子设计有限责任公司