CN101063987B - 网络列表组织工具 - Google Patents
网络列表组织工具 Download PDFInfo
- Publication number
- CN101063987B CN101063987B CN2007101053557A CN200710105355A CN101063987B CN 101063987 B CN101063987 B CN 101063987B CN 2007101053557 A CN2007101053557 A CN 2007101053557A CN 200710105355 A CN200710105355 A CN 200710105355A CN 101063987 B CN101063987 B CN 101063987B
- Authority
- CN
- China
- Prior art keywords
- circuit
- network list
- derivation
- pin
- gate circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000008520 organization Effects 0.000 title claims description 12
- 238000000034 method Methods 0.000 claims abstract description 84
- 230000008878 coupling Effects 0.000 claims description 55
- 238000010168 coupling process Methods 0.000 claims description 55
- 238000005859 coupling reaction Methods 0.000 claims description 55
- 230000008569 process Effects 0.000 claims description 38
- 238000009795 derivation Methods 0.000 claims description 27
- 238000000605 extraction Methods 0.000 claims description 11
- 239000000284 extract Substances 0.000 claims description 7
- 230000006978 adaptation Effects 0.000 claims description 4
- 238000007418 data mining Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 description 30
- 238000010586 diagram Methods 0.000 description 26
- 238000005516 engineering process Methods 0.000 description 22
- 230000015572 biosynthetic process Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 17
- 238000004458 analytical method Methods 0.000 description 13
- 239000002184 metal Substances 0.000 description 7
- 229910052751 metal Inorganic materials 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 6
- 229920005591 polysilicon Polymers 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 5
- 230000003252 repetitive effect Effects 0.000 description 5
- 239000003550 marker Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 239000000654 additive Substances 0.000 description 3
- 230000000996 additive effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 239000004020 conductor Substances 0.000 description 3
- 235000012364 Peperomia pellucida Nutrition 0.000 description 2
- 240000007711 Peperomia pellucida Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000013011 mating Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012806 monitoring device Methods 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241001044684 Amadina fasciata Species 0.000 description 1
- 238000012356 Product development Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 230000002520 cambial effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000010230 functional analysis Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 150000002739 metals Chemical class 0.000 description 1
- PTQMMNYJKCSPET-OMHQDGTGSA-N mibolerone Chemical compound C1C[C@]2(C)[C@](O)(C)CC[C@H]2[C@@H]2[C@H](C)CC3=CC(=O)CC[C@@H]3[C@H]21 PTQMMNYJKCSPET-OMHQDGTGSA-N 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 239000004033 plastic Substances 0.000 description 1
- 229920003023 plastic Polymers 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供一种组织来自集成电路网络列表的电路的精确且有效的方法,包括如下步骤:产生参考图形;利用不精确图表匹配,来识别网络列表中的可能的匹配;进一步分析该匹配以确定其是否匹配参考图形;以及通过利用高级表示取代识别的实例,而将网络列表组织为层级结构。
Description
发明领域
本发明涉及一种现有集成电路的设计分析的方法,并更特别地涉及根据反向工程集成电路的网络列表对重复子电路的确定。
发明背景
在微电子的激烈竞争领域,半导体集成电路产品的详细分析可以提供关于如何处理特殊的技术问题、整体强度以及设计方法的缺点等的有价值的信息。这种信息可以用来作出关于市场定位、未来设计以及新产品研发的决定。同样,该信息也可以是专利侵权和/或许可的情况中的关键证据。由产品分析产生的信息典型地通过电路提取(反向工程)、功能分析和其他技术手段来提供。这种行为的核心是设计分析的过程,在本文中,指的是以任何过程技术从任何类型的集成电路开始推导出全部或部分图表的技术和方法学。对于具有战略价值的这种技术信息,其必须是精确的和划算的,并且该信息应当以及时的方式来获得。
现有的许多软件应用可以提供设计分析,但是多数是适用于在与设计分析或反向工程端相对的设计和制作端处的集成电路(IC)测试和验证。在市场上发布新的IC设计之前,必须经历测试以确保该IC是实用的并且根据其规格进行工作的。测试可以发生在IC生产过程的两个阶段中的其中一个阶段:完成的产品的测试和设计版图的测试。设计版图是用来从电部件的示意设计产生物理IC的掩模。该版图典型地通过利用软件应用来创建。在测试的两个阶段中,将完成的IC或设计版图与参考相比较。使参考留下针对错误或模糊的较小的空间。
设计分析或反向工程的过程典型地没有详细的参考可跟随,因而错误更易于发生。迄今设计分析过程典型地包括手动地从一组集成电路的大量“感光镶嵌幕(photomosaic)”提取电路信息。感光镶嵌幕是镶嵌或缝合在一起的IC部分的高放大率照片。IC是包括在诸如塑料或陶瓷封装的材料内的芯片(die)。芯片是多个电连接在一起的金属和多晶硅层。多晶硅(poly)层定义了电部件, 如晶体管、电阻器和电容器,以及在多晶硅层之上电连接的金属层定义了电部件之间的连接。为了适当地提取电路,需要每个连接(即多晶硅和金属)层的感光镶嵌幕。
由于图像处理和电子显微镜方法的进步,传统的感光镶嵌幕大部分已经由计算机工作站所替换。多晶硅和金属层的地形学图像通过专用软件在计算机上可以查看。由Abt等人的美国专利6,907,583描述了这种软件,并且在这里通过参考引入。专用软件将IC版图描述为表示各种金属层的排列的一连串的多晶硅。将每个金属层示出为不同的颜色以彼此区别。可以选择并取消选择所述层,从而专家能够查看所选择的层而不是其全部。尽管这种技术与传统的感光镶嵌幕的使用相比耗时少,但专家仍然必须手动地提取全部的电路(称为电路回读的过程)。特别耗时的是提取和组织通常称为标准单元的电部件的重复块。标准单元可以构成IC的大部分,但是专家必须手动地分别提取每个标准单元。
于2004年8月31日提交的题为“现有集成电路的设计分析的方法(Method of Design Analysis of Existing Integrated Circuits)”的共同未决的美国公开申请20060045325,在这里通过参考引入,其描述了从版图图像中识别重复电路的自动过程。虽然这种方法与手动方法相比在时间上更有效,但其假设每个子电路具有相同的版图,但并不总是这种情况。IC设计的进步和较小IC的研究意味着目前电路块常常遍布芯片的整个区域,以尽力有效地使用可用空间。现在大多数IC设计是自动的,使得软件程序以空间有效方式自动地放置电部件,这不需要按照逻辑或者视觉要求的方式。这种自动过程被称为自动布线。然而,即使电路块视觉上不是同样的,但其可能是电学同样的,因为它具有相应类似的电连接。例如,属于相同功能块的电路元件可以被放置在芯片的相对端处。在自动布线的版图的情况下,通过依靠重复电路具有相同版图,很难识别重复电路,这是因为版图可能是不同的。
因此,需要图形匹配技术,其基于晶体管或门电路(gate)组的电连接,而不是基于它们的物理版图,能够识别晶体管或门电路组。
网络列表是电路的电部件及其互连的列表。每个互连或者“网络”被分配一个唯一的标记。网络列表将列出每个部件以及与每个部件的每个端子相连接的每个网络。从而,即使版图中重复电路的每种实例在物理上不同,其 子网络列表(描述重复电路实例的网络列表部分)也应与重复电路的其他实例相似。
同形(isomorphism)被定义为具有“相同的形状”或“相同的外形”。如果两组的元件是同形的,则一组的元件与另一组的元件之间具有一对一的关系。图表同形表示两个图表完全是同样的。子图表同形意味着在一个大图表的子图表的每个元件和另一个大图表的相应子图表的每个元件之间存在一对一的关系。
子图表同形是图形匹配技术的示例,其可在本发明中有利地使用。应用到晶体管或门电路级网络列表,期望包括多个晶体管或门电路的图形的每种实例的网络列表可以在大晶体管或门电路级网络列表中找到。即,网络列表图形可以被表示为子图表,而大晶体管或门电路级网络列表可以模拟为图表。
在电路设计分析和验证领域,已知子图表同形假定在子图表中存在的全部晶体管和电网络连接可以在大电路图表中找到。在大晶体管级电路设计中子电路的这种识别有时被称为子电路提取。
在已知技术中,存在子图表同形可用于其中的两种类型的图形匹配:不精确或者精确图形匹配,。
在精确图形匹配中,仅当其准确地匹配图形的规格时才识别电路设计中的图形实例。如果存在任何修改,则图形匹配器将不识别该实例。例如,如果输入被连接于Vdd或者GND,或者如果输入被短路在一起,则图形匹配器将忽略该图形实例。
另一方面,在不精确图形匹配中,即使进行了某些修改,也将识别实例,同时将图形嵌入到大晶体管级网络列表中,例如由电路设计者进行的普通修改。示例包括将输入连接于Vdd或者GND以及输入的共同短路,其全部为普通的修改。仅不精确图形匹配器才能够识别这种图形实例。
为了实现这种不精确图形匹配,在图形外部(边界)网络连接处放松对同形的限制,使得图形实例中的外部网络可以被连接到特定网络,例如Vdd或GND,或者短路到其他外部网络。不精确的子图表同形被证实在晶体管图形匹配中特别有用,因为,迄今,需要用户来指定精确图形的潜在的指数数目,以便找到外部连接性的全部可能的组合,所有这些在不精确的子图表同形中都被消除。
在1993年IEEE的第30届ACM/IEEE设计自动化会议(30th ACM/IEEE Design Automation Conference)第31-37页中,由华盛顿大学的M.Ohlrich、C.Ebeling等人在题为“SubGemini:Identifying Sub-circuits using a FastSubgraph Isomorphism Algorithm”的文章中描述了利用子图表同形的精确图形匹配的示例。作者描述了一种用于晶体管级网络列表的精确子图表同形问题的解决方案,题为SubGemini的子电路提取技术,其为由Corneil于1968年在加拿大Ontario,Toronto的Toronto大学在自己的博士论文“GraphIsomorphism.Ph.D.thesis”中开发的图表同形方法的扩展。在Ohlrich等人的文章中,可选择地标记图形和主电路设计(主图表)。标记是基于匹配的邻点。从而,如果两个网络或者两个器件具有相同的标记,则匹配是可行的。遗憾的是,扩展Olrich等人的算法来比较用于任何不同于等式的标记是不可能的,当输入被短路在一起的情况中,通常就是这样,不存在用于将两种图形网络与一个主网络匹配的方法。此外,将图形网络与主Vdd或者GND网络匹配是不可能的,因为其必须利用特定标记来提供以便被识别为Vdd或者GND。因此,SubGemini可以仅执行精确的子图表图形匹配,并不能解决不精确子图表同形问题。
在现有的已知技术中存在用于不精确图表匹配的某些算法,并且例如,其被广泛地使用在信息生物学领域中。在Bern大学Institute für Informatik undangewandte Mathematik的1993年的Technical Report IAM-93-021中,Messmer B.、Bunke H.的“A network based approach to exact and inexact graph matching”;以及2002年第4卷的16th International Conference on Pattern Recognition(ICPR’02)中公开了用于不精确图表匹配的算法。美国专利6,473,881也公开了精确图表匹配技术。
然而,上述不精确图表匹配技术不能解决在反向工程中发生的特定问题。相反地,它们处理IC验证情况中的图形识别,其中目的是用于将实际集成电路与参考图解相比较从而识别误差。
在反向工程中,如在前所表明的,不存在参考图解来比较,如IC验证中的情况。同样,在反向工程过程本身期间误差时有发生,例如在图像版图中的误差或电路回读期间错误识别的门电路或者晶体管,这在IC验证过程中并不知道。同样,某些子电路可以具有相同的功能性,但是在结构上是不同的。对于可以具有相同电连接性的多种表示法的复杂门电路而言尤为如此。用于反 向工程目的的不精确图表匹配技术必须充分地坚固,不但考虑到所产生的网络列表中的误差,而且处理子电路,该子电路在结构上可以不同,但仍具有相同的功能性,并且能够实施而无需参考图解的帮助。
因此,需要一种技术,通过自动地识别重复电路,以及解决并且补偿可以在反向工程过程期间出现的上述误差,来帮助将电路网络列表组织为逻辑方式。
发明内容
本发明针对最优化所提取的IC的网络列表的组织。
本发明描述了通过利用不精确子图表同形技术来自动识别重复电路块而将网络列表组织为逻辑层级结构的工具包。本发明分离出功能性相同的电路,它们可以具有不同版图和不同结构。
首先,利用已知技术提取网络列表。本发明的一个优点是自动地识别重复电路块或者标准单元。
在本发明的优选实施例中,通过选择部件或门电路、部件组或所关注的信号以及对其执行邻近查询,来完成定义开始标准单元或参考电路图形的参考图形产生。随后分析查询结果,并且重复邻近查询,直到获得初始参考电路图形。
在提取网络列表来执行高阶过滤并且查找最高阶的重复子电路之后,本发明的可选实施例利用结构数据挖掘技术。结构数据挖掘严格基于网络列表来搜索最高阶子电路。分析产生的重复子电路的功能性并且从其中得到参考电路图形。
在任一实施例中,然后在网络列表上执行不精确图表匹配,以识别由高阶过滤得到的参考电路图形的重复实例,包括由于成像或电路提取误差使得高阶过滤技术可能忽略的实例。自定义规则被用来考虑成像误差和重复电路内的结构区别。利用这些重复实例,建立自顶向下的层级结构。过程重复,直到将全部提取的网络列表组织为逻辑层级结构。
根据本发明的第一个主要方面,这里公开了一种将来自集成电路中电部件和所述电部件的互连的推导的网络列表的电路组织为层级结构的方法,包括以下步骤:a.从所述推导的网络列表产生参考图形;b.利用不精确图表匹配方法,识别所述推导的网络列表中所述参考图形的重复实例; c.基于所识别的重复实例,建立所述推导的网络列表内的层级结构;以及d.重复所述步骤a到c,直到已经将所述推导的网络列表组织为层级结构。
根据本发明的第二个主要方面,这里公开了一种适于将来自现有IC版图的电路组织为层级结构的设备,包括:a.适于保持电路中电部件和电部件的互连的推导的网络列表的推导的网络列表数据存储器,所述推导的网络列表从所述电部件的图像版图推导出;b.适于从所述推导的网络列表中产生参考电路图形的图形生成器;c.适于查找所述推导的网络列表中参考电路图形的重复实例的搜索引擎;以及d.适于基于重复实例将所述推导的网络列表组织为层级结构的层级结构生成器。
通过结合附图察阅本发明的以下描述,本发明的其他方面和优点以及本发明各种实施例的结构和操作对于本领域的普通技术人员来说是显而易见的。
附图说明
将参考附图描述本发明,其中:图1是根据本发明优选实施例所执行的过程的流程图;图2a是用于说明本发明操作的示例XOR门电路的图示和网络列表;图2b是用于说明本发明操作的第二个电等效的示例XOR门电路的图示和网络列表;图2c是用于说明本发明操作的示例潜在XOR的图示和网络列表;图2d是用于说明本发明操作的示例XOR的高级图示和网络列表;图3a是用于说明本发明操作的示例反相器的图示;图3b是由前向的第一级邻近查询所公开的示例电路内的图3a的反相器的图示;图3c是由前向的第二级邻近查询所公开的示例电路内的图3a的反相器的图示;图4是根据由本发明能够实施的不精确图表匹配技术执行的过程的流程图;图5是示例参考电路图形的图示;图6是图5的参考电路图形的图示;图7是图6图示的第一级可选择散列法图表的图示;图8是图6图示的第二级可选择散列法图表的图示;以及
图9是结合本发明使用的示例设备的结构图。
具体实施方式
本发明提供一种识别集成电路(IC)网络列表内子电路的快速且有效的方法,从而建立网络列表的层级结构表示。图1以流程图形式示出了本发明方法的概述。
本方法的第一部分是用来开发一个门电路级网络列表110,其能够依靠信号追踪和电路回读来进行。不需要来提取IC的全部电路来产生网络列表。本发明也对电路一部分的网络列表起作用。一旦已经得到网络列表,就开始进行将其条目组织为层级结构的过程。通过检查网络列表中条目的重复实例并且识别单独的条目或其组合作为子电路,来创建层级结构。这能够有助于网络列表条目图示的简化显示。依靠诸如邻近查询的参考图形生成111或者结构数据挖掘识别子电路。
参考图形生成111可以对特定信号、门电路或部件子集执行。参考图形生成111的结果被分析112,并且被调整,直到其被识别为高阶功能块的形成部分,例如更复杂的部件。本领域的普通技术人员可以容易地识别这些机制,通过这些机制可以识别高阶功能块。这种识别的功能块被表示为参考电路图形。在识别功能块之前需要增加范围的多次反复。
在装备有由此得到的参考电路图形的情况下执行不精确图表匹配113以从网络列表数据查找电路中参考电路图形的全部实例。不精确图表匹配能够考虑提取的网络列表中的误差,其是由于电路提取过程或者IC版图的成像期间的误差引起的。
由于在某些实例中已经从物理上不同地布置了参考电路图形,所以相同参考电路图形的其他实例的网络列表表示可以不与识别的参考电路图形的网络列表表示相同。不精确图表匹配可以考虑这种不同是否由于版图或者高阶部件自身的结构引起。
存在在不精确图表匹配113内调节的项目专用规则。例如,在电路设计中,可以使用反相器链来实现延迟时间。为了反向工程的目的,这种定时关系有时可以忽略。在这种情况中,逻辑透视图所关注的是结果是否是反相的。从而,项目专用规则可以被实施以取代具有单一反相器或者一对反相器的所有反相器链。从而用户定义的功能可以用来调节这种项目专用规则。
在应用不精确图表匹配113之后,利用参考电路图形的识别实例创建电路图示的高阶表示114。通过在低级图示中定义参考电路图形并且示出具有所定义的参考电路图形代替包括其的部件的高级图示,来创建层级结构。在网络列表中通过创建高阶表示的网络列表条目,也可以创建这种层级结构。
通过简化重复逻辑或电路的高级块来代替示出门电路之间的详细连接的低级图表,完成高级图示的创建。在图2a中,示出了XOR门电路的图示,XOR门电路包括连接到ANDNOR门电路201的NOR门电路202,以提供异或功能性。用于这种电路元件的网络列表212在附图旁边示出。图2b中示出XOR门电路208的高级图示以及修正的网络列表。
在创建高级图表114之后,可以确定高级图表是否已经充分地组织为层级结构115。如果已经完成,则结束过程116。如果高级图表仍需要组织,则过程返回到所提取的网络列表并且执行对所关注的新的信号、门电路或部件子集执行参考图形生成111,以创建新的参考电路图形。然后,过程继续重复,直到图表已经充分地组织为层级结构。可以以多种方式完成门电路级网络列表110的获得。在转让给Semiconductor Insights公司的题为“Computer aided methodof circuit extraction”的美国公开专利申请20030084409公开的并且在这里通过参考引入的交互式电路提取步骤是一种方法。另一种包括从未分层(de-layer)IC获得晶体管级网络列表并且应用如在下面出版物中公开的功能提取方法:25th ACM/IEEE conference on Design automation(1988)会议录517-522中M.Boehner的“LOGEX-an automatic logic extractor from transistor to gate level for CMOStechnology”以及International Conference on Computer-Aided Design(1991)中R.E.Bryant的“Extraction of Gate Level Models from Transistor Circuits byFour-Valued Symbolic Analysis”。更进一步,一个可以获得来自交互式模板匹配过程的门电路级网络列表的方法,例如在先前引用的共同未决申请“Methord ofdesign analysis of existing integrated circuits”中所描述的。本领域的技术人员可以容易地认识到获得门电路级网络列表的其他方法。
通过利用本领域技术人员已知的多种技术能够完成参考图形生成111。这两种技术被称为邻近查询和结构数据挖掘。
邻近查询将确定针对给定输入和/或输出的信号连接。该查询接受关于所希望向前或者向后的级数的输入,以及所关注的信号。然后,该查询将 沿着所关注信号的路径搜索并且返回针对特定级数在向前或向后方向中沿着该信号路径找到的连接数量。图3b和3c示出对图3a中所示的反相器311进行邻近查询的示例。反相器311具有在其输入处的信号310和在其输出处的信号312。在向前的第一级邻近查询中,如图3b所示,查询返回具有信号312作为输入的全部电路元件。如本示例中所示,反相器313具有作为其输入的信号312并输出信号315,以及NOR门电路314具有作为其输入的信号312和信号316并输出信号317。由这种查询提供的网络列表将包括反相器311、反相器313和NOR门电路314。
在信号312的向前第二级邻近查询中,如图3c所示,查询将返回不但包括反相器311、313和NOR门电路314,而且包括NAND门电路318、反相器319、NOR门电路320和反相器321的网络列表,因为在示例的电路图中,这些门电路全部耦合到作为反相器313和NOR门电路314的输出的信号315或者信号317。NAND门电路318具有作为其输入的信号322和315并输出信号323。反相器319具有作为其输入的信号315并输出信号324。NOR门电路320具有作为其输入的信号315和信号325并且输出信号326。反相器321具有作为其输入的信号317并输出信号327。相似地,向前第三级邻近查询将返回具有耦合到信号323、324、326和327的输入的全部门电路。
通过本领域熟知的例如宽度优先搜索技术能够执行邻近查询。这种算法的示例在2001年的MIT Press中第24-25章中Thomas H.Cormen等人的Introduction to Algorithms中可以找到。执行邻近查询的其他方法对于本领域的技术人员是显而易见的。
结构数据挖掘寻找图表中全部的重复结构。当应用到网络列表时,其将寻找具有指定阈值门电路数量的重复子电路。由于指定阈值用来避免具有较小数量门电路的结构的多个实例。门电路的优选的阈值数量可以随着设计而改变,其可以被指定为最小数量的门电路连接,并且考虑这种定义数量或者更多的重复实例。在2000年的AAAI Workshop on Learning Statistical Models fromRelational Data由J.Gonzalez、I.Jonyer、L.B.Holder和D.J.Cook的“Efficient Miningof Graph-Based Data”中以及在Minnesota大学的Technical Report 03-039由Michihiro Kuramochi M.和George Karypis G的“Finding Frequent Patterns in aLarge Sparse Graph”中描述了执行结构数据挖掘的技术。本领域的普通技术人 员可以容易地认识到结构数据挖掘的其他方法。
结构数据挖掘包括在网络列表中搜索任何重复结构。由于这种技术将搜索任何以及全部的重复结构,所以每个重复图形的功能性需要被分析112,直到产生功能块。与邻近查询不同,结构数据挖掘不考虑由于IC图像版图中错误的提取或误差所引起的网络列表内的误差。然而,这能够通过不精确图表匹配步骤113来解决。
不精确图表匹配113用来从提取电路的网络列表查找参考电路图形的全部实例。其识别精确匹配参考图形的子电路和不精确匹配图形的子电路。例如,如果所选择的参考电路图形是ANDNOR门电路,则不精确图表匹配将定位网络列表中全部的精确ANDNOR门电路,并且另外,将以其将执行与ANDNOR门电路相同功能的方式,识别连接到NOR门电路的单独AND门电路的不精确匹配。
参考整体的图2,不精确图表匹配将图2a、图2b和图2c所示的示例XOR门电路的全部实例识别为是相似的。这通过记录图2a作为待搜索的参考图形来完成。
图2a示出了在其输出处连接到ANDNOR门电路201的NOR门电路202,以及此外共享输入225和226、产生的输出228将表示XOR门电路的功能性。同样地,这种部件示意性的并且以网络列表的简化显示将是如图2d所示的XOR门电路208的简化显示。
图2b示出在其输出处连接到NOR门电路205的NOR门电路204。NOR门电路204也将其输入230和229与AND门电路203共享,然后AND门电路203将在其输出处连接到NOR门电路205的其他输入。这个电路的产生的功能性再次为XOR门电路208,并且通过利用AND门电路203和NOR门电路205替代图2a的ANDNOR门电路201来完成。不精确图表匹配将其识别为具有与图2a的参考图形相似的网络列表,并且然后利用用户定义的功能来识别ANDNOR门电路201的替代。
图2c示出了在其输出处连接到ANDNOR门电路206的NOR门电路207。NOR门电路207也将其输入234和235与ANDNOR门电路206的两个输入共享。然而,在这种情况中,存在误差,因为输入234和235已经短路在一起。网络列表仅记录第一输入,从而输入都被标记为相邻的网络列表214 中的234。不精确图表匹配将其识别为具有与图2a的参考图形相似的网络列表,并然后利用误差校正来识别输入234和235之间的短路并且然后用使用用户定义功能的校正网络来替代。
图4是可以和本发明一起使用的不精确图表匹配过程的流程图。首先可能匹配的队列被初始化430为空值,例如零。
然后,利用可选择的散列法对包括参考子电路的提取电路的整个网络列表进行重新标记431。这个新的标记可以使子电路的重复实例的识别变得更有效。将从每级可选择散列法产生的标记存储在队列中。这个队列被称为散列表。
利用可选择散列法的重新标记431有助于识别重复实例。参考子电路可以包括大量部件并且将网络列表与整个子电路进行匹配是非常密集的并且需要大量处理功率和存储器。为了减少这种处理时间,最初利用子电路的子集,例如单一门电路或门电路的小组合,来进行匹配。虽然如此,这种最初匹配也会导致大的可能匹配的队列。
其后,建立参考子电路匹配子集的初始列表并添加到队列432。然后将这个列表根据其适用性和匹配容易度来区分优先次序433。这个列表通常根据可能发生的连接的特性和数量区分优先次序。例如,当其较少地出现在数字逻辑中时,连接到NOR门电路的NOR门电路的匹配具有比连接到NAND门电路的NOR门电路的匹配高的优先级。同样,将单一标准门电路匹配给整个网络列表将导致相当大量的匹配。然而,匹配非标准门电路将很可能导致较少量的匹配。结果,非标准门电路将具有比标准门电路高的优先级。哪个门电路是标准的,哪个是非标准的确定取决于所调查的器件,并且当确定优先化时也应被考虑。
当队列为空434时,完成不精确图表匹配步骤113。否则,从队列中选择最高优先级的匹配436。将误差校正和设计规则应用到围绕最高优先级匹配的电路437,并且重新对队列区分优先次序,使得在步骤433中在列表上看起来是很低的匹配可以上升,以建立修正的列表。这种误差校正规则包括图像处理缺陷的校正,例如在图像版图中导线的断裂。如果断裂小于根据版图设计规则的版图上两个信号导线之间的允许距离,那么可以显示由IC图像捕获产生的可能误差。其他设计规则包括通过单一导线替换偶数部件的延迟链,例如反相 器,或者基于其真值表识别与已知复杂门电路等效的组合逻辑块。步骤437也重新对队列区分优先次序。
如果最高优先级匹配表示参考图形,则其被记录为匹配于参考图形并且从可行匹配队列中移除439。队列中的下一个最高优先级匹配现在变为最高匹配并且再次开始该过程。
如果最高优先级匹配不表示为参考图形,则必须进一步分析该过程。从队列440中选择下一个最高优先级匹配。从这点向前,过程尝试“增长”最高匹配,直到其能够匹配参考图形。增长过程涉及将相邻结构与最高匹配相比较来确定其是否与参考图形中的结构相似。相邻结构是共享相同输入和/或输出作为最高优先级的匹配。这些相邻结构也被称为“重叠”最高优先级匹配。然后比较两个匹配来确定在两个匹配之间是否存在任何重叠。这个重叠包括共享的部件、信号或门电路。从队列中重新得到下一个最高优先级匹配,直到已经完全检查队列,或者识别重叠441。如果匹配形成一个重叠,那么两个匹配被组合到单一子电路网络列表中,下文中描述为放大的匹配。这个步骤的输出可以为放大的匹配,或者未改变的最高优先级匹配。
然后利用用户定义的功能修正这个输出,并且量化这个输出来限制匹配442。这种功能通常是项目专用的,而且包括逻辑等同等。这种功能的示例是部件大小限制器。可以决定放弃一个可行的匹配,因为即使结构相同,部件大小也与参考图形不相同。这种功能的另一个示例为NOR门电路等同于具有反相输入的NAND门电路。
然后将这种量化匹配与参考电路图形相比较以确定其是否高于预先确定的特性阈值443。这个阈值是基于两个电路之间的差异数量。这个阈值通常被预先设置,但是在方法的应用时设置这个阈值也是可行的。如果放大匹配高于上述特性阈值,则强烈地指示其可以是匹配于参考电路。如果量化匹配在阈值或高于阈值,其被后退添加到队列的顶端并且过程返回步骤437。否则,确定潜在地与量化匹配重叠的队列中的所有匹配是否已经被耗尽445。如果没有全部耗尽,则下一个最高优先级匹配被选择用于队列440。否则,该过程放弃量化匹配447并且选择新的最高优先级匹配434。
利用可选择散列法技术执行不精确图表匹配过程来针对步骤431中参考子电路的子集开发可行匹配的列表。M.Ohlrich等人首先开发了作为 SubGemini项目部分的可选择散列法(可选择散列法有时被称为局部特征不变性)。其为基于每个元件关于相邻元件的位置识别该每个元件的标记技术。利用图5到图8来解释可选择散列法技术的其它说明,其方法性地示出了过程的每个步骤。尽管这些附图示出特定的可选择散列法技术,但本发明不应被认为是限于该技术,正如本领域的普通技术人员将容易认识到的那样,可以使用其他的可选择散列法技术。
图5示出由NOR门电路546和ANDNOR门电路547构成的参考电路图形的示例。在这个电路中,存在四条导线,即A1 548、A2 549、A3 550和A4 551。导线A1 548和A2 549被输入到NOR门电路546和ANDNOR门电路547两者。导线A3 550被连接到NOR门电路546的输出和ANDNOR 547的其余输入。导线A4 551仅被连接到ANDNOR门电路547的输出。
图6是表示图5的电路的图解,示出了图5示意图的部件,但将每个点示为其自身顶点。这是将需要的对可选择散列法的预备步骤。其将示意信息组织到其组件部分中,使得稍微简化并解释可选择散列法的创建。该图解被分为三组顶点:门电路顶点655、引脚顶点656和导线顶点657。
门电路顶点655描述了参考子电路内的门电路。在图6的示例中,存在表示NOR门电路546的NOR顶点658和表示ANDNOR门电路547的ANDNOR顶点659。在引脚顶点656的组内,门电路的每个唯一引脚被给定唯一编号。例如,NOR门电路646具有两个唯一的引脚类型:两个输入引脚顶点661、662和输出顶点660。由于NOR门电路的输入引脚为可互换的,其适合于互相替换而不改变NOR门电路的功能,输入引脚顶点661、662两者都被给定编号1。NOR门电路546的输出顶点660被给定唯一编号2,因为仅存在一个输出到NOR门电路。
ANDNOR门电路547具有三个输入:用于AND部分的两个输入引脚顶点663、664和用于NOR部分的一个输入引脚顶点665。因为AND部分的两个输入引脚顶点661,662是可互换的,其都被给定编号1。当其彼此不能够替换也不改变ANDNOR门电路547的功能时,输入引脚顶点665与输入顶点661、662不同,因此,其被指定编号2。ANDNOR门电路547的输出引脚顶点666被指定编号3。导线顶点667、668、669和670表示图5所示的子电路各自的每个单独导线A1 548、A2 549、A3 550和A4 551。
在图6中,导线顶点667、668、669和670为简单起见被全部标记A,但可以使用任何唯一的标记来标记它们。当搜索子电路的可能匹配时,不必将利用其信号归类每个导线顶点作为限制。如果不是全部匹配,那么就是大多数匹配将具有不同的输入和输出。
图6的图解绘出导线顶点667、668、669和670到连接到它们的引脚顶点。例如,NOR门电路546的输出引脚顶点660被连接到导线A3 550。这个导线也被连接到ANDNOR门电路547的输入引脚顶点665。因此,表示导线A3 550的导线顶点669连接到输出引脚顶点660和输入引脚顶点665。这个绘图证明NOR门电路546如何耦合到ANDNOR门电路547。从这个图解中,可以创建图5中所示的子电路。
利用图6作为基础或零级可选择散列法,图7中示出了第一级可选择散列法。图6中,每个顶点的标记取决于其是什么类型的顶点,例如门电路、引脚或导线。图7中,每个顶点标记包括与其相邻顶点有关的信息。门电路顶点658和659具有各自的标记775和776。标记775描述了作为具有三个引脚顶点660、661和662的NOR门电路的顶点658。引脚顶点661和662是可互换的,因为其都被给定编号1。引脚顶点660是唯一的。标记776描述了作为具有四个引脚顶点663、664、665和666的ANDNOR门电路的门电路顶点659。引脚顶点663和664是可以互换的,因为都被给定编号1。引脚顶点665和666是唯一的。
标记777描述了作为连接到导线顶点669的NOR门电路的唯一引脚的引脚顶点660。标记778描述了作为NOR门电路的引脚的引脚顶点661,其与引脚顶点662是可以互换的,并被连接到导线顶点668。标记779描述了作为NOR门电路的引脚的引脚顶点662,其与引脚顶点661可以互换并且被连接到导线顶点667。
相似地,标记780描述了作为ANDNOR门电路的引脚的引脚顶点663,其与引脚顶点664可以互换并被连接到导线顶点667。标记781描述了作为ANDNOR门电路的引脚的引脚顶点664,其与引脚顶点663可以互换,并被连接到导线顶点668。标记782描述了作为连接到导线顶点669的ANDNOR门电路唯一引脚的引脚顶点665。标记783描述了作为连接到导线顶点670的ANDNOR门电路唯一引脚的引脚顶点666。
标记784描述了作为与两个引脚顶点662和663连接的导线的导线顶点667。标记785描述了作为与两个引脚顶点661和664连接的导线的导线顶点668。标记786描述了作为与两个引脚顶点660和665连接的导线的导线顶点669。标记787描述了作为与一个引脚顶点666连接的导线的导线顶点670。标记778和779是相同的,因为它们描述可以互换的引脚。这同样适用于标记对780和781以及784和785。
图8示出了第二级可选择散列法图解。图8中,每个顶点标记包括与来自图7的其相邻顶点相关的信息。标记895描述了作为具有三个引脚的NOR门电路的门电路顶点658,三个引脚中两个可互换的引脚顶点661和662以及一个唯一引脚顶点660。这些引脚顶点的每一个都被连接到导线。
标记896描述了作为具有四个引脚的ANDNOR门电路的门电路顶点659,四个引脚中两个可互换的引脚顶点663和664以及两个唯一引脚顶点665和666。
标记897描述了作为NOR门电路的引脚并被指定编号2的引脚顶点660。标记897进一步描述了作为具有三个引脚顶点的NOR门电路,三个引脚顶点包括两个可互换的引脚顶点和一个唯一引脚顶点。标记897也描述了连接到导线顶点669的引脚顶点660。
标记898描述了作为NOR门电路的引脚并被指定编号1的引脚顶点661。标记898进一步描述了具有三个引脚的NOR门电路,三个引脚中包括两个可互换的引脚和一个唯一引脚。标记898也描述了连接到导线顶点668的引脚顶点661。
标记899描述了作为NOR门电路的引脚并也被指定编号1的引脚顶点662,因为其与引脚顶点661是可互换的。标记899进一步描述了具有三个引脚顶点的NOR门电路,三个引脚顶点包括两个可互换的引脚顶点和一个唯一引脚顶点。标记899也描述了连接到导线顶点667的引脚顶点662。
标记8100描述了作为ANDNOR门电路的引脚并被指定编号1的引脚顶点663。标记8100进一步描述了具有四个引脚的ANDNOR门电路,四个引脚包括两个可互换的引脚顶点和两个唯一引脚顶点。标记8100也描述了连接到导线顶点667的引脚顶点663。
标记8101描述了作为ANDNOR门电路的引脚并因为与引脚顶点 663是可互换而也被指定编号1的引脚顶点664。标记8101进一步描述了具有四个引脚顶点的ANDNOR门电路,四个引脚顶点包括两个可互换的引脚顶点和两个唯一引脚顶点。标记8101也描述了连接到导线顶点668的引脚顶点664。
标记8102描述了作为ANDNOR门电路的引脚并被指定编号2的引脚顶点665。标记8102进一步描述了具有四个引脚顶点的ANDNOR门电路,四个引脚顶点包括两个可互换的引脚顶点和两个唯一引脚顶点。标记8102也描述了连接到导线顶点669的引脚顶点665。
标记8103描述了作为ANDNOR门电路的引脚并被指定编号3的引脚顶点666。标记8103进一步描述了具有四个引脚顶点的ANDNOR门电路,四个引脚顶点包括两个可互换的引脚顶点和两个唯一引脚顶点。标记8103也描述了连接到导线顶点670的引脚顶点666。
标记8104描述了作为连接到不同门电路的两个引脚顶点的导线的导线顶点667。标记8104进一步描述了作为连接到指定编号1的NOR门电路的引脚顶点662和也指定编号1的ANDNOR门电路的引脚顶点663的导线。
标记8105描述了作为连接到不同门电路的两个引脚顶点的导线的导线顶点668。标记8105进一步描述了作为连接到指定编号1的NOR门电路的引脚顶点661和也指定编号1的ANDNOR门电路的引脚顶点664的导线。
标记8106描述了作为连接到不同门电路的两个引脚顶点的导线的导线顶点669。标记8106进一步描述了作为连接到指定编号2的NOR门电路的引脚顶点660和也指定编号2的ANDNOR门电路的引脚顶点665的导线。
标记8107描述了作为连接到ANDNOR门电路的引脚顶点666并被指定编号3的导线的导线顶点670。
从该第二级可选择散列法中,导线顶点667、668和669的标记8104、8105、8106表示连接到NOR门电路和ANDNOR门电路两者的导线。这些标记被用来比较表示提取电路区域的其他标记。这种标记比较是查找重复子电路的基础。
可选择散列法的级取决于参考子电路的边界。相邻子电路但不是子电路一部分的部件不包括在可选择散列法标记中。图8中,例如,标记被限制于子电路的部件。导线顶点667、668和670定义这个子电路的边界。通过可选择散列法的第五级,全部门电路、引脚和导线顶点将具有相同的标记。
根据本发明,将结合图9中示意性说明的设备9120描述识别诸如功能块的参考电路图形的重复实例的上述方法。
设备9120包括扫描器/照相机9121、处理器9122、接口监控器9123和电子图像存储器9124。
在以现有技术的已知方式解封装集成电路以暴露所关注的电路的顶层(该顶层通常是金属层)之后,基于薄膜的扫描器9121在高放大率下扫描暴露层。本领域的普通技术人员将容易认识到,可以等同地使用数字照相机、扫描电子显微镜(SEM)或者X光照相机。优选地,扫描器9121包括SEM或者某些这样的装置来获得高放大率,以及产生电子图像。处理器9122通过接口/监控器9123控制扫描器9121。
存储器9124存储表示电子镶嵌图像的向量。典型地,扫描器9121仅扫描集成电路互连层的一部分。为了形成层的一部分的单一电子镶嵌图像,一连串的重叠图像被电子地缝接在一起用于存储在存储器9124中。同样,被分析的这些层的电子镶嵌图像利用层的向量数据垂直和水平地被相似地排列并且寄存。
接口监控器9123以它们适当的次序来显示覆盖层从而形成IC的三维空间向量图像。每个层由不同颜色或交叉阴影所表示来易于区分层;这又将更容易允许电路元件的识别,例如晶体管、门电路甚至更复杂的电路。
网络列表存储器9125存储利用信号追踪和电路回读来提取的电路元件的所提取的电子网络列表。
处理器9122包括邻近查询引擎9126、结构数据挖掘引擎9127和功能块定位器9128。优选地,在反向工程过程期间单独地使用邻近查询引擎9126和结构数据挖掘引擎9127,或结合用于图1中概括的功能块定位器的图4中概括的不精确图表匹配技术一起使用。
从上述实施例中,本发明允许通常另外被需要来提取重复图形的时间节省。本发明克服了当从预先存在的IC中提取电路而不是验证设计版图时产生的挑战。
尽管根据目前最实际的考虑和优选实施例已经描述了本发明,但可以理解本发明并不仅限于所公开的实施例。本领域的普通技术人员可以理解,在不偏离如权利要求所定义的本发明的精神和范围的情况下可以作出各种修改 和等同结构和功能。因此,权利要求中定义的本发明应被给予最广泛可能的解释,使得包含全部这种修改以及等同结构和功能。
Claims (17)
1.一种将来自集成电路中电部件和所述电部件的互连的推导的网络列表的电路组织为层级结构的方法,所述推导的网络列表从所述电部件的图像版图推导出,所述方法包括以下步骤:
a.从所述推导的网络列表中产生参考图形;
b.利用不精确图表匹配方法来识别所述网络列表中所述参考图形的重复实例;
c.基于所述识别的重复实例,建立所述推导的网络列表内的层级结构;以及
d.重复所述步骤a到c,直到已经将所述推导的网络列表组织为层级结构。
2.根据权利要求1的方法,包括在执行步骤a之前提取所述推导的网络列表的步骤。
3.根据权利要求2的方法,其中所述提取步骤包括对信号进行追踪。
4.根据权利要求2的方法,其中所述提取步骤包括对电路进行回读。
5.根据权利要求1的方法,其中所述产生步骤包括执行邻近查询。
6.根据权利要求1的方法,其中所述产生步骤包括执行结构数据挖掘。
7.根据权利要求1的方法,其中所述识别步骤包括考虑所述推导的网络列表中的误差。
8.根据权利要求1的方法,其中所述识别步骤包括比较所述方法的结果,以确认与定义的项目专用规则的顺应性的步骤。
9.根据权利要求5的方法,其中所述执行邻近查询的步骤包括确定用于所述查询的级数。
10.根据权利要求6的方法,其中所述执行结构数据挖掘的步骤包括确定待考虑的门电路的最小数量。
11.根据权利要求1的方法,其中所述识别步骤包括将可供选择的散列法应用到所述推导的网络列表。
12.根据权利要求1的方法,其中所述识别步骤包括根据性质对匹配区分优先次序。
13.根据权利要求1的方法,其中所述识别步骤包括查找所述推导的网络列表中所述参考图形的全部实例。
14.一种适于将来自现有IC版图的电路组织为层级结构的设备,包括:
a.适于保持所述电路中电部件和所述电部件的互连的推导的网络列表的推导的网络列表数据存储器,所述推导的网络列表从所述电部件的图像版图推导出;
b.适于从所述推导的网络列表中产生参考电路图形的图形生成器;
c.适于查找所述推导的网络列表中所述参考电路图形的重复实例的搜索引擎,所述搜索引擎包括不精确图形匹配方法;以及
d.适于基于所述重复实例来将所述推导的网络列表组织为层级结构的层级生成器。
15.根据权利要求14的设备,其中所述图形生成器包括邻近查询引擎。
16.根据权利要求14的设备,其中所述图形生成器包括结构数据挖掘器。
17.根据权利要求14的设备,其中所述搜索引擎包括不精确图表匹配器,其使用对所述推导的网络列表应用可供选择的散列法的不精确图表匹配方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/411,593 US20070256037A1 (en) | 2006-04-26 | 2006-04-26 | Net-list organization tools |
US11/411,593 | 2006-04-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101063987A CN101063987A (zh) | 2007-10-31 |
CN101063987B true CN101063987B (zh) | 2011-05-04 |
Family
ID=38649744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101053557A Expired - Fee Related CN101063987B (zh) | 2006-04-26 | 2007-04-26 | 网络列表组织工具 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070256037A1 (zh) |
CN (1) | CN101063987B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7360181B2 (en) * | 2006-05-10 | 2008-04-15 | International Business Machines Corporation | Enhanced structural redundancy detection |
US7624105B2 (en) * | 2006-09-19 | 2009-11-24 | Netlogic Microsystems, Inc. | Search engine having multiple co-processors for performing inexact pattern search operations |
US8788990B2 (en) * | 2008-02-21 | 2014-07-22 | Oracle America, Inc. | Reuse of circuit labels in subcircuit recognition |
US7899640B2 (en) * | 2008-07-31 | 2011-03-01 | Semiconductor Insights Inc. | Integrated circuit characterisation system and method |
US8434037B2 (en) * | 2008-11-26 | 2013-04-30 | Texas Instruments Incorporated | Sub-circuit pattern recognition in integrated circuit design |
US8898618B2 (en) * | 2009-03-26 | 2014-11-25 | Altera Corporation | Interactive simplification of schematic diagram of integrated circuit design |
US20100306720A1 (en) * | 2009-05-28 | 2010-12-02 | Pikus F G | Programmable Electrical Rule Checking |
US8701058B2 (en) * | 2009-06-18 | 2014-04-15 | Semiconductor Insights Inc. | Integrated circuit analysis systems and methods |
US20120011483A1 (en) * | 2010-07-06 | 2012-01-12 | Lsi Corporation | Method of characterizing regular electronic circuits |
US8464191B2 (en) * | 2011-07-21 | 2013-06-11 | R3 Logic, Inc. | System and method for identifying circuit components of an integrated circuit |
US8910097B2 (en) * | 2012-12-31 | 2014-12-09 | Synopsys, Inc. | Netlist abstraction |
US8863044B1 (en) | 2013-09-06 | 2014-10-14 | International Business Machines Corporation | Layout assessment method and system |
TWI653543B (zh) * | 2017-04-21 | 2019-03-11 | 瑞昱半導體股份有限公司 | 電路編碼方法與電路架構的辨識方法 |
CN107742010A (zh) * | 2017-09-22 | 2018-02-27 | 郑州云海信息技术有限公司 | 一种在封装建立中批量添加引脚编号的方法 |
US20220180159A1 (en) * | 2019-03-08 | 2022-06-09 | Semiconductor Energy Laboratory Co., Ltd. | Ai system and operation method of ai system |
US10977406B1 (en) * | 2020-07-02 | 2021-04-13 | International Business Machines Corporation | Analysis of electrical circuit schematics |
CN113255260B (zh) * | 2021-07-07 | 2021-11-09 | 北京芯愿景软件技术股份有限公司 | 简化电路图生成的方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473881B1 (en) * | 2000-10-31 | 2002-10-29 | International Business Machines Corporation | Pattern-matching for transistor level netlists |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5086477A (en) * | 1990-08-07 | 1992-02-04 | Northwest Technology Corp. | Automated system for extracting design and layout information from an integrated circuit |
US5867396A (en) * | 1995-08-31 | 1999-02-02 | Xilinx, Inc. | Method and apparatus for making incremental changes to an integrated circuit design |
US6473885B1 (en) * | 1998-07-17 | 2002-10-29 | Mentor Graphics Corporation | Digital circuit layout techniques using circuit decomposition and pin swapping |
US6263098B1 (en) * | 1998-09-11 | 2001-07-17 | The United States Of America As Represented By The Secretary Of The Army | Determination of functionality for integrated circuit modules |
US6334205B1 (en) * | 1999-02-22 | 2001-12-25 | International Business Machines Corporation | Wavefront technology mapping |
US6405345B1 (en) * | 1999-05-28 | 2002-06-11 | Cadence Design Systems, Inc. | Updating placement during technology mapping |
US6553548B1 (en) * | 1999-12-14 | 2003-04-22 | International Business Machines Corporation | System and method for recovering from design errors in integrated circuits |
US6549222B1 (en) * | 2000-06-27 | 2003-04-15 | Chipworks | Lock-step cursors for feature alignment |
CA2315456C (en) * | 2000-08-09 | 2009-10-13 | Semiconductor Insights Inc. | Schematic organization tool |
CA2358729C (en) * | 2001-10-12 | 2008-07-08 | Semiconductor Insights Inc. | Computer aided method of circuit extraction |
US6782514B2 (en) * | 2002-01-24 | 2004-08-24 | Zenasis Technologies, Inc. | Context-sensitive constraint driven uniquification and characterization of standard cells |
US7503021B2 (en) * | 2002-12-17 | 2009-03-10 | International Business Machines Corporation | Integrated circuit diagnosing method, system, and program product |
US7272805B2 (en) * | 2004-11-19 | 2007-09-18 | Cadence Design Systems, Inc. | System and method for converting a flat netlist into a hierarchical netlist |
US7392229B2 (en) * | 2005-02-12 | 2008-06-24 | Curtis L. Harris | General purpose set theoretic processor |
-
2006
- 2006-04-26 US US11/411,593 patent/US20070256037A1/en not_active Abandoned
-
2007
- 2007-04-26 CN CN2007101053557A patent/CN101063987B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473881B1 (en) * | 2000-10-31 | 2002-10-29 | International Business Machines Corporation | Pattern-matching for transistor level netlists |
Also Published As
Publication number | Publication date |
---|---|
CN101063987A (zh) | 2007-10-31 |
US20070256037A1 (en) | 2007-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101063987B (zh) | 网络列表组织工具 | |
US7873203B2 (en) | Method of design analysis of existing integrated circuits | |
US7752577B1 (en) | Constraint plus pattern | |
US7937678B2 (en) | System and method for integrated circuit planar netlist interpretation | |
US7480878B2 (en) | Method and system for layout versus schematic validation of integrated circuit designs | |
de Gyvez et al. | IC defect sensitivity for footprint-type spot defects | |
US7503021B2 (en) | Integrated circuit diagnosing method, system, and program product | |
US8464191B2 (en) | System and method for identifying circuit components of an integrated circuit | |
US8069426B2 (en) | Method and mechanism for identifying and tracking shape connectivity | |
CA2358729C (en) | Computer aided method of circuit extraction | |
CN101681393A (zh) | 用于布局验证的基于模式片断的热点数据库系统 | |
Nnaji et al. | Feature reasoning for sheet metal components | |
CN101663665A (zh) | 导出原理图的方法 | |
US7546565B2 (en) | Method for comparing two designs of electronic circuits | |
WO2004061725A1 (en) | Integrated circuit diagnosing method, system, and program product | |
US20020038446A1 (en) | Gate extractor | |
US8316331B1 (en) | Method and mechanism for implementing extraction for an integrated circuit design | |
CN115879410B (zh) | 一种掩模版图违例自动修复方法、数据库训练方法、系统及计算机设备 | |
Lin et al. | Using pattern analysis to improve process window qualification cycle time | |
Tseng et al. | Modeling complex manufacturing process activities using data mining approach | |
JP2002288254A (ja) | 不具合回路検出システム及び回路設計方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee | ||
CP01 | Change in the name or title of a patent holder |
Address after: ottawa Patentee after: TECHINSIGHTS Inc. Address before: ottawa Patentee before: Semiconductor Insights Inc. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110504 |