一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于等效多端口网络检测集成电路版图拓扑结构的方法与流程

2023-01-15 03:31:22 来源:中国专利 TAG:


1.本发明属于集成电路版图检测技术领域,具体涉及基于等效多端口网络检测集成电路版图拓扑结构的方法。


背景技术:

2.随着通信技术的发展,超大规模集成电路的研究与发展已逐渐展开。为了提高电子设备的性能,缩小体积,降低成本,将晶体管与其他元器件以及线路都集成在一小块半导体基片上。为了实现更多的功能,超大规模集成电路有几层到上百层结构,每层结构极其复杂,集成数千万甚至数亿的晶体管,具有多尺度结构,从整体尺寸的厘米级到最微小元器件的纳米级。
3.在基于集成电路的原理图设计版图时,设计工程师将经典的功能电路用可重用的模组ip核代替,不同ip核之间采用走线、过孔、焊盘等结构进行连接。最终,集成电路的版图由覆铜多边形、走线、过孔、焊盘、隔离垫片等结构组成,这些结构的连接关系来源于形成集成电路版图的电路原理图,因此其连接关系对应的连接拓扑图应与电路原理图的拓扑结构一致。工程师基于集成电路的电路原理图设计集成电路版图时,在满足版图与电路原理图的拓扑结构一致的前提下,主要考虑如何在有限的总面积(包括层数和每层面积)下集成更多的电路元器件和功能模块,形成更复杂的电路连接的拓扑结构。
4.然而,由于现代集成电路的电路元器件密度达到数亿个/平方毫米的量级,这些集成电路的设计不可能靠某个工程师独立完成,需要多个工程师形成的团队协同完成,不同工程师负责完成不同的功能模块,最后将不同工程师完成的功能模块进行拼接,形成完整的集成电路版图设计。由于工程师的工作不可100%准确,不同工程师的工作进行拼接时也会导致界面不清晰,这就不可避免的使得最终设计的集成电路版图的连接关系对应的连接拓扑图与电路原理图的拓扑结构并不一致,如果直接对数十亿、数百亿个晶体管量级的集成电路版图设计中的拓扑结构进行分析并与电路原理图的拓扑结构进行比较以判断集成电路版图设计是否存在缺陷,在工程师的操控下,即使采用最快速的计算机进行辅助也要花费大量的时间,因此如何快速且自动化的诊断与定位具有数十亿、数百亿个晶体管量级的集成电路版图设计中的缺陷是集成电路版图设计中必不可少的环节。


技术实现要素:

5.针对上述现有技术的不足,本技术提供一种基于等效多端口网络检测集成电路版图拓扑结构的方法。
6.本技术提出了基于等效多端口网络检测集成电路版图拓扑结构的方法,包括以下步骤:获取集成电路版图以及对应的集成电路原理图;在所述集成电路版图中标定出第一公共电路节点;根据所述第一公共电路节点等效构建第一多端口网络,基于所述第一多端口网络
和所述第一公共电路节点形成第一电路节点-网络编号对;在所述集成电路原理图中标定出第二公共电路节点;根据所述第二公共电路节点等效构建第二多端口网络,基于所述第二多端口网络和所述第二公共电路节点形成第二电路节点-网络编号对;将所述第一电路节点-网络编号对与所述第二电路节点-网络编号对进行比较判断,如果所述第一电路节点-网络编号对与所述第二电路节点-网络编号对完全吻合,说明所述集成电路版图不存在拓扑结构错误;如果所述第一电路节点-网络编号对与所述第二电路节点-网络编号对中有任意一对无法相互对应,则说明所述集成电路版图存在拓扑结构错误,根据无法相互对应的第二电路节点-网络编号对可以确定拓扑结构错误位置。
7.在一些实施例中,所述在所述集成电路版图中标定出第一公共电路节点,包括:找出所述集成电路版图包含的ip核,根据ip核找出对应的集成电路模块;确定每个ip核的pin脚与所述集成电路版图对应的第一连接点,所述第一连接点为所述集成电路模块与所述集成电路版图电气连接的位置;对所述第一连接点进行标定,得到第一公共电路节点。
8.在一些实施例中,所述根据所述第一公共电路节点等效构建第一多端口网络,基于所述第一多端口网络和所述第一公共电路节点形成第一电路节点-网络编号对,包括:将每个ip核对应的集成电路模块与其他集成电路的第一公共电路节点等效为第一多端口网络;从所述第一公共电路节点出发,依据版图连通规则将所述第一多端口网络之外的集成电路的电路节点所在的网络编号,得到第一电路节点-网络编号对。
9.在一些实施例中,所述从所述第一公共电路节点出发,依据版图连通规则将所述第一多端口网络之外的集成电路的电路节点所在的网络编号,得到第一电路节点-网络编号对,包括:步骤1:找出所述集成电路版图包含的ip核,根据所述ip核找出对应的集成电路模块,根据所述ip核的数量进行编号,分别为1,2,

,nip,nip为ip核的数目;步骤2:将第j个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共电路节点进行编号,将其编号为j,j=1,2,

,nip;设置k=1,所述k表示电路节点编号的起始序号;设置i=1,所述i表示待处理的第i个ip核;步骤3:对第i个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共电路节点进行编号,如果对应的第一公共电路节点已经编号且编号值小于i,则设置i=i 1并重新转入步骤3;否则,将所有对应的第一公共电路节点编号设置为k,并设置第i个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共电路节点集合为{pi};步骤4:判断集合{pi}是否为空集,如果集合{pi}为空集则设置i=i 1,k=k 1,如果i》nip退出,否则i≤nip则重新转入步骤3;如果集合{pi}不为空集,则从集合{pi}中取出一个电路节点,基于版图连通规则搜索所有与取出的电路节点形成电气连接的电路节点作为第一待确认电路节点,搜索结果
包括:如果搜索到的所述第一待确认电路节点已经编号且编号值j等于当前编号k,则所述第一待确认电路节点不加入到集合{pi};如果搜索到的所述第一待确认电路节点已经编号且编号值j大于当前编号k,则所述第一待确认电路节点为第j个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共电路节点,将所有编号为j的第一公共电路节点加入到集合{pi},并将所有编号为j的第一公共电路节点的编号修改为k;如果搜索到的所述第一待确认电路节点未编号,将所述第一待确认电路节点加入到集合{pi},并将所述第一待确认电路节点的编号设置为k;重复执行步骤4,直到所有与取出的电路节点形成电气连接的电路节点完成编号后,形成第一电路节点-网络编号对。
10.在一些实施例中,在所述集成电路原理图中标定出第二公共电路节点,包括:找出所述集成电路原理图中的电路支路交汇点,所述电路支路交汇点为所述第二公共电路节点,所述电路支路为没有分支的一段电路。
11.在一些实施例中,根据所述第二公共电路节点等效构建第二多端口网络,基于所述第二多端口网络和所述第二公共电路节点形成第二电路节点-网络编号对,包括:将每个ip核对应的集成电路模块与其他集成电路的第二公共电路节点等效为第二多端口网络;从所述第二公共电路节点出发,依据电路连通规则将所述第二多端口网络之外的集成电路的电路节点所在的网络编号,得到第二电路节点-网络编号对。
12.在一些实施例中,所述从所述第二公共电路节点出发,依据电路连通规则将所述第二多端口网络之外的集成电路的电路节点所在的网络编号,得到第二电路节点-网络编号对,包括:步骤ⅰ:找出所述集成电路原理图包含的ip核,根据所述ip核找出对应的集成电路模块,根据所述ip核的数量进行编号,分别为1,2,

,nip,nip为ip核的数目;步骤ⅱ:将第j个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点进行编号,将其编号为j,j=1,2,

,nip;设置k=1,所述k表示电路节点编号的起始序号;设置i=1,所述i表示待处理的第i个ip核;步骤ⅲ:对第i个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点进行编号,如果对应的第二公共电路节点已经编号且编号值小于i,则设置i=i 1并重新转入步骤ⅲ;否则,将所有对应的第二公共电路节点编号设置为k,并设置第i个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点集合为{pi};步骤ⅳ:判断集合{pi}是否为空集,如果集合{pi}为空集则设置i=i 1,k=k 1,如果i》nip退出,否则i≤nip则重新转入步骤ⅲ;如果集合{pi}不为空集,则从集合{pi}中取出一个电路节点,基于电路连通规则搜索所有与取出的电路节点形成电气连接的电路节点作为第二待确认电路节点,搜索结果包括:如果搜索到的所述第二待确认电路节点已经编号且编号值j等于当前编号k,则所
述第二待确认电路节点不加入到集合{pi};如果搜索到的所述第二待确认电路节点已经编号且编号值j大于当前编号k,则所述第二待确认电路节点为第j个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点,将所有编号为j的第二公共电路节点加入到集合{pi},并将所有编号为j的第二公共电路节点的编号修改为k;如果搜索到的所述第二待确认电路节点未编号,将所述第二待确认电路节点加入到集合{pi},并将所述第二待确认电路节点的编号设置为k;重复执行步骤ⅳ,直到所有与取出的电路节点形成电气连接的电路节点完成编号后,形成第二电路节点-网络编号对。
13.在一些实施例中,所述版图连通规则包括第一版图连通规则、第二版图连通规则、第三版图连通规则和第四版图连通规则;所述第一版图连通规则包括:覆铜多边形与所有部分或全部位于其内部且与覆铜多边形形成连接的元器件形成的电路节点形成电气连接;所述第二版图连通规则包括:走线连通所述走线两个端点所在的元器件,使所述走线的两个端点对应的电路节点形成电气连接;所述第三版图连通规则包括:垂直方向穿过上下层的过孔连通上下层对应的上下两个端点所在的元器件,使上下层对应端点对应的电路节点形成电气连接;过孔经过的层如果在覆铜多边形内,且过孔穿过的位置没有设置隔离垫片,过孔穿过的位置形成电路节点,该电路节点与过孔上下端点对应的电路节点及该覆铜多边形形成电气连接;过孔上下端点如果在覆铜多边形内,且所在位置没有设置隔离垫片,过孔上下端点对应的电路节点与覆铜多边形形成电气连接;所述第四版图连通规则包括:键合线和引线连通位于不同叠层的两个端点所在的元器件,使元器件的两个端点对应的电路节点形成电气连接;在一些实施例中,所述电路连通规则包括:所述集成电路原理图中任何两个形成电路支路的电路节点形成电气连接。
14.在一些实施例中,所述根据比较结果确定拓扑结构错误位置,包括:所述拓扑结构错误位置为所述集成电路版图与所述集成电路原理图的网络编号不一致的电路节点所对应的位置。
15.本发明的有益效果:由于现代的集成电路版图设计中大量使用了可重用的模组ip核,这些可重用的模组ip核形成了固定的集成电路版图,其设计是经过了成熟产品检验过的,不需要每次都进行重复的分析和检查,基于这一出发点,本专利并不直接针对所有最底层的版图信息进行分析,而是将基于ip核形成的固定的集成电路版图等效为多端口网络,这个端口数量即为ip核与其连接的电路节点数量。基于等效的多端口网络对整个集成电路版图设计进行分析,将大大简化分析的拓扑结构数量,提高缺陷检测效率,并且能准确分析出拓扑结构错误位置,提高检测精度。
附图说明
16.图1为本发明的总体流程图。
17.图2为标定第一公共电路节点流程图。
18.图3为形成第一电路节点-网络编号对流程图。
19.图4为ip电路原理图形成的等效多端口网络标定方式示意图。
20.图5为形成第二电路节点-网络编号对流程图。
21.图6为ip在集成电路版图形成的等效多端口网络标定方式示意图。
22.图7为版图连通规则示意图。
23.图8为电路连通规则示意图。
具体实施方式
24.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制;相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
25.本技术提出了基于等效多端口网络检测集成电路版图拓扑结构的方法,如图1所示,包括以下步骤: s100:获取集成电路版图以及对应的集成电路原理图;s200a:在所述集成电路版图中标定出第一公共电路节点;标定第一公共电路节点的具体步骤如图2所示:s201a:找出所述集成电路版图包含的ip核,根据ip核找出对应的集成电路模块;s202a:确定每个ip核的pin脚与所述集成电路版图对应的第一连接点,所述第一连接点为所述集成电路模块与所述集成电路版图电气连接的位置;s203a:对所述第一连接点进行标定,得到第一公共电路节点。
26.其中,如图6所示,图6为某个覆铜层上嵌入名为die的ip核,假设该ip核有6个pin脚与集成电路版图相连,分别为p1-p6,则该ip核对应的集成电路模块与之外的其他集成电路版图(这里为覆铜层)电气连接的位置为p1-p6,标定出这个位置p1-p6,p1-p6为第一公共电路节点。
[0027] s300a:根据所述第一公共电路节点等效构建第一多端口网络,基于所述第一多端口网络和所述第一公共电路节点形成第一电路节点-网络编号对;形成第一电路节点-网络编号对的具体步骤如图3所示:s301a:将每个ip核对应的集成电路模块与其他集成电路的第一公共电路节点等效为第一多端口网络;s302a:从所述第一公共电路节点出发,依据版图连通规则将所述第一多端口网络之外的集成电路的电路节点所在的网络编号,得到第一电路节点-网络编号对。
[0028]
其中,形成第一电路节点-网络编号对的具体步骤包括:步骤1:找出所述集成电路版图包含的ip核,根据所述ip核找出对应的集成电路模块,根据所述ip核的数量进行编号,分别为1,2,

,nip,nip为ip核的数目;步骤2:将第j个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共
电路节点进行编号,将其编号为j,j=1,2,

,nip;设置k=1,所述k表示电路节点编号的起始序号;设置i=1,所述i表示待处理的第i个ip核;步骤3:对第i个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共电路节点进行编号,如果对应的第一公共电路节点已经编号且编号值小于i,则设置i=i 1并重新转入步骤3;否则,将所有对应的第一公共电路节点编号设置为k,并设置第i个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共电路节点集合为{pi};步骤4:判断集合{pi}是否为空集,如果集合{pi}为空集则设置i=i 1,k=k 1,如果i》nip退出,否则i≤nip则重新转入步骤3;如果集合{pi}不为空集,则从集合{pi}中取出一个电路节点,基于版图连通规则搜索所有与取出的电路节点形成电气连接的电路节点作为第一待确认电路节点,搜索结果包括:如果搜索到的所述第一待确认电路节点已经编号且编号值j等于当前编号k,则所述第一待确认电路节点不加入到集合{pi};如果搜索到的所述第一待确认电路节点已经编号且编号值j大于当前编号k,则所述第一待确认电路节点为第j个ip核与之外的其他集成电路版图电气连接的位置对应的第一公共电路节点,将所有编号为j的第一公共电路节点加入到集合{pi},并将所有编号为j的第一公共电路节点的编号修改为k;如果搜索到的所述第一待确认电路节点未编号,将所述第一待确认电路节点加入到集合{pi},并将所述第一待确认电路节点的编号设置为k;重复执行步骤4,直到所有与取出的电路节点形成电气连接的电路节点完成编号后,形成第一电路节点-网络编号对。
[0029]
其中,所述版图连通规则包括第一版图连通规则、第二版图连通规则、第三版图连通规则和第四版图连通规则;所述第一版图连通规则包括:覆铜多边形与所有部分或全部位于其内部且与覆铜多边形形成连接的元器件形成的电路节点形成电气连接;如图7所示,其中,图7包括多个覆铜层与走线、过孔连接关系,覆铜层1与走线1相连,内部包含过孔在该层的中心点v1,覆铜层2内部包含过孔在该层的中心点v2。由于走线1的端点t1在覆铜层1的内部且与覆铜层1形成连接,v1在覆铜层1的内部且与覆铜层1成连接,因此电路节点t1与v1与覆铜层1形成电气连接,而过孔在覆铜层2存在隔离垫片,使得中心点v2与覆铜层2没有形成连接,因此电路节点v2与覆铜层2没有形成电气连接。
[0030]
所述第二版图连通规则包括:走线连通所述走线两个端点所在的元器件,使所述走线的两个端点对应的电路节点形成电气连接;如图7所示,图7中的走线1两个端点对应的电路节点为t1, t2,则电路节点t1与t2形成电气连接。
[0031]
所述第三版图连通规则包括:垂直方向穿过上下层的过孔连通上下层对应的上下两个端点所在的元器件,使上下层对应端点对应的电路节点形成电气连接;过孔经过的层如果在覆铜多边形内,且过孔穿过的位置没有设置隔离垫片,过孔穿过的位置形成电路节点,该电路节点与过孔上下端点对应的电路节点及该覆铜多边形形
成电气连接;过孔上下端点如果在覆铜多边形内,且所在位置没有设置隔离垫片,过孔上下端点对应的电路节点与覆铜多边形形成电气连接;如图7所示,图7中过孔的上端点v1在覆铜层1的内部且与覆铜层1成连接,因此v1与覆铜层1形成电气连接,而过孔在覆铜层2存在隔离垫片,使得中心点v2与覆铜层2没有形成连接,因此电路节点v2与覆铜层2没有形成电气连接。
[0032]
所述第四版图连通规则包括:键合线和引线连通位于不同叠层的两个端点所在的元器件,使元器件的两个端点对应的电路节点形成电气连接;如图7所示,图7中的键合线连接覆铜层2和覆铜层3上的元器件,其两个端点对应的电路节点w1和w2形成电气连接。
[0033]
s200b:在所述集成电路原理图中标定出第二公共电路节点;其中,找出所述集成电路原理图中的电路支路交汇点,所述电路支路交汇点为所述第二公共电路节点,所述电路支路为没有分支的一段电路。
[0034]
s300b:根据所述第二公共电路节点等效构建第二多端口网络,基于所述第二多端口网络和所述第二公共电路节点形成第二电路节点-网络编号对;其中,标定第一和第二多端口网络的方式如图4和图6所示,将图4集成电路节点1,6,7,3,5,4抽出去,形成6端口网络p1-p6,6端口内部对应的集成电路模块可以看作一个黑盒子,这个黑盒子内部的集成电路模块形成了一个ip核,其他集成电路设计人员想要实现如图4集成电路的功能,不必重新设计图4所示的集成电路模块,也不需要关心该集成电路模块的内部电路,只需要将该ip核应用过来,将设计的其他集成电路与上图所示的集成电路模块等效的6端口网络p1-p6进行正确的连接即可,并且在标定第一等效多端口时,这个等效的6端口网络在集成电路版图设计中也等效为集成电路版图的ip核,如图6的die以及外面的p1~p6所示,设计人员不需要重新设计die内的集成电路版图,只需要将这个版图应用过来,将设计的其他部分的版图与该die内的集成电路版图的p1~p6进行正确的连接即可,即完成了对第一和第二多端口网络的标定。
[0035]
进一步的,形成第二电路节点-网络编号对的具体步骤如图5所示:s301b:将每个ip核对应的集成电路模块与其他集成电路的第二公共电路节点等效为第二多端口网络;s302b:从所述第二公共电路节点出发,依据电路连通规则将所述第二多端口网络之外的集成电路的电路节点所在的网络编号,得到第二电路节点-网络编号对。
[0036]
其中,形成第二电路节点-网络编号对的具体步骤包括:步骤ⅰ:找出所述集成电路原理图包含的ip核,根据所述ip核找出对应的集成电路模块,根据所述ip核的数量进行编号,分别为1,2,

,nip,nip为ip核的数目;步骤ⅱ:将第j个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点进行编号,将其编号为j,j=1,2,

,nip;设置k=1,所述k表示电路节点编号的起始序号;设置i=1,所述i表示待处理的第i个ip核;步骤ⅲ:对第i个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点进行编号,如果对应的第二公共电路节点已经编号且编号值小于i,则设置i=i 1并重新转入步骤ⅲ;
否则,将所有对应的第二公共电路节点编号设置为k,并设置第i个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点集合为{pi};步骤ⅳ:判断集合{pi}是否为空集,如果集合{pi}为空集则设置i=i 1,k=k 1,如果i》nip退出,否则i≤nip则重新转入步骤ⅲ;如果集合{pi}不为空集,则从集合{pi}中取出一个电路节点,基于电路连通规则搜索所有与取出的电路节点形成电气连接的电路节点作为第二待确认电路节点,搜索结果包括:如果搜索到的所述第二待确认电路节点已经编号且编号值j等于当前编号k,则所述第二待确认电路节点不加入到集合{pi};如果搜索到的所述第二待确认电路节点已经编号且编号值j大于当前编号k,则所述第二待确认电路节点为第j个ip核与之外的其他集成电路原理图电气连接的位置对应的第二公共电路节点,将所有编号为j的第二公共电路节点加入到集合{pi},并将所有编号为j的第二公共电路节点的编号修改为k;如果搜索到的所述第二待确认电路节点未编号,将所述第二待确认电路节点加入到集合{pi},并将所述第二待确认电路节点的编号设置为k;重复执行步骤ⅳ,直到所有与取出的电路节点形成电气连接的电路节点完成编号后,形成第二电路节点-网络编号对。
[0037]
其中,所述电路连通规则包括:所述集成电路原理图中任何两个形成电路支路的电路节点形成电气连接。
[0038]
如图8所示,图8为一个电路原理示意图,图中有7个电路节点,图中的任何两个形成电路支路的电路节点均形成电气连接,如电路节点1和2形成电路支路,那么电路节点1和2形成电气连接,电路节点2和3形成电路支路,那么电路节点2和3形成电气连接。
[0039]
将所述第一电路节点-网络编号对与所述第二电路节点-网络编号对进行比较判断,如果所述第一电路节点-网络编号对与所述第二电路节点-网络编号对完全吻合,执行步骤s400;s400:所述集成电路版图不存在拓扑结构错误;如果所述第一电路节点-网络编号对与所述第二电路节点-网络编号对中有任意一对无法相互对应,执行步骤s600;s500:所述集成电路版图存在拓扑结构错误。
[0040]
根据比较结果确定拓扑结构错误位置,其中,所述拓扑结构错误位置为所述集成电路版图与所述集成电路原理图的网络编号不一致的电路节点所对应的位置。
[0041]
具体判断规则为:假设某个集成电路的电路节点为10个,形成了2个网络,其网络编号如下表所示,针对依据集成电路原理图设计的版图,按步骤s100-s300b获得的与集成电路原理图中电路节点对应的位置点的网络编号如表1所示。表中可以看出,被检测的集成电路版图设计存在缺陷,原因在于电路节点网络编号1同时映射了对应的位置点网络编号2和3,不是一对一的映射。
[0042]
表1以上仅是本发明优选的实施方式,需指出的是,对于本领域技术人员在不脱离本技术方案的前提下,作出的若干变形和改进的技术方案应同样视为落入本权利要求书要求保护的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献