Patent US6009251A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6009251A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and system for layout verification of an integrated circuit design with reusable subdesigns

Assignee: Synopsys Inc
•
Filing: 1997-09-30
•
Granted: 1999-12-28
•
Expires: 2017-09-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for performing layout verification on an integrated circuit (IC) design using reusable subdesigns. Many custom designed integrated circuits are designed and fabricated using a number of computer implemented automatic design processes. Within these processes, a high level design language (e.g., HDL or VHDL) description of the integrated circuit can be translated by a computer system into a netlist of technology specific gates and interconnections there between. The cells of the netlist are then placed spatially in an integrated circuit layout and the connections between the cells are routed using computerized place and route processes. Circuit designers next run layout verification tests on the layout to verify that the geometry and connectivity data of the design meets specific design rules and matches logically with the schematic representation. The present invention provides a method of layout verification where unchanged subdesigns of a hierarchical IC design can be reused upon subsequent verification processes of the same IC design. They are reused for both design rule checking (DRC) and layout versus schematic (LVS) comparison. By reusing some of the subcell designs, subsequent verification processes of the present invention can be performed very efficiently. To account for faults attributed to subcell interfaces, the present invention advantageously determines subcell overlap areas within the layout and selectively flattens and verifies these areas in addition to any subcell designs that were not previously validated. Further, the invention determines updated connectivity information for new subcell designs.

Inventors

  • 👤 Wai-Yan Ho
  • 👤 Hongbo Tang

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 22:10
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/39; G06F30/398

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 183 words
A computer implemented method of verifying an integrated circuit design layout, said computer implemented method comprising the steps of: a) receiving a stream of layout information representing said integrated circuit layout design, said stream of information comprising a plurality of subcell designs having parent-child relationships; b) comparing names of said subcell designs against a history database and parsing and storing into a new database only those subcell designs that are not found within said history database, said history database representing previously parsed subcell designs; c) from said new and history databases, constructing a hierarchical tree of said subcell designs from said parent-child relationships; d) selecting a selected subcell design from said hierarchical tree; e) performing design rule verification on said selected subcell design only if said selected subcell design is not indicated within a validation store; f) performing steps d)-e) for each subcell design of said hierarchical tree and generating a design rule verification report on said integrated circuit design layout; and g) storing into said validation store the geometry of each subcell design selected at step d) that passed design rule verification.
Claim 2
Dependent Claim 183 words
A computer implemented method of verifying an integrated circuit design layout, said computer implemented method comprising the steps of: a) receiving a stream of layout information representing said integrated circuit layout design, said stream of information comprising a plurality of subcell designs having parent-child relationships; b) comparing names of said subcell designs against a history database and parsing and storing into a new database only those subcell designs that are not found within said history database, said history database representing previously parsed subcell designs; c) from said new and history databases, constructing a hierarchical tree of said subcell designs from said parent-child relationships; d) selecting a selected subcell design from said hierarchical tree; e) performing design rule verification on said selected subcell design only if said selected subcell design is not indicated within a validation store; f) performing steps d)-e) for each subcell design of said hierarchical tree and generating a design rule verification report on said integrated circuit design layout; and g) storing into said validation store the geometry of each subcell design selected at step d) that passed design rule verification.
Claim 3
Dependent Claim 23 words
A method as described in claim 1 wherein said stream of layout information is represented presented in the Graphic Design Stream (GDSII) format.
Claim 4
Dependent Claim 48 words
A method as described in claim 1 wherein said step e) also comprises the step of performing netlist extraction on each subcell design that is not indicated within said validation store to obtain a netlist of said subcell design and storing each netlist into a physical netlist database.
Claim 5
Dependent Claim 105 words
A method as described in claim 3 further comprising the steps of: h) selecting a selected subcell design from said hierarchical tree; i) using a layout versus schematic checker to compare an extracted netlist corresponding to said selected subcell design of said physical netlist database to a logical netlist database of said selected subcell design; and j) performing steps h)-i) for each subcell design of said hierarchical tree and generating a layout versus schematic verification report on said integrated circuit layout design; and k) storing into said validation store netlist information of each subcell design selected at step h) that passed layout versus schematic verification.
Claim 6
Dependent Claim 72 words
A method as described in claim 1 further comprising the steps of: performing netlist extraction on a parent subdesign of each unrecognized subcell design of said hierarchical tree to obtain connectivity data on each input/output port of said unrecognized subcell design, an unrecognized subcell design being a subcell design that is not indicated within said validation store; and performing layout versus schematic verification on said connectivity data against a logical netlist database.
Claim 7
Dependent Claim 77 words
A method as described in claim 1 further comprising the steps of: determining areas of overlap between said subcell designs of said hierarchical tree; flattening said areas of overlap and storing any flattened data into a flattened database; performing design rule verification on said flattened data; performing netlist extraction on said flattened data to obtain netlist data on said areas of overlap; and performing layout versus schematic verification on said netlist data of said areas of overlap.
Claim 8
Dependent Claim 44 words
A method as described in claim 6 wherein said step of determining areas of overlap comprises the step of determining areas of overlap between a subdesign that is indicated within said validation store and a subdesign that is not indicated within said validation store.
Claim 9
Dependent Claim 74 words
A method as described in claim 1 wherein step e) comprises the steps of: provided said selected subcell design is not indicated within said validation store, searching all child subcell designs of said selected subcell design to determine whether or not said child subcell designs are indicated within said validation store; and performing design rule verification only on child subcell designs of said selected subcell design that are not indicated within said validation store.
Claim 10
Dependent Claim 222 words
A computer system comprising a processor coupled to a bus and a computer readable memory unit coupled to said bus wherein said computer readable memory unit contains instructions stored therein that when executed by said processor cause said computer system to implement a method of verifying the an integrated circuit layout design, said method comprising the steps of: a) receiving a stream of layout information representing said integrated circuit layout design, said stream of information comprising a plurality of subcell designs having parent-child relationships; b) comparing names of said subcell designs against a history database and parsing and storing into a new database only those subcell designs that are not found within said history database, said history database representing previously parsed subcell designs; c) from said new and history databases, constructing a hierarchical tree of said subcell designs from said parent-child relationships; d) selecting a selected subcell design from said hierarchical tree; e) performing design rule verification on said selected subcell design only if said selected subcell design is not indicated within a validation store; f) performing steps d)-e) for each subcell design of said hierarchical tree and generating a design rule verification report on said integrated circuit design layout; and g) storing into said validation store the geometry of each subcell design selected at step d) that passed design rule verification.
Claim 11
Dependent Claim 222 words
A computer system comprising a processor coupled to a bus and a computer readable memory unit coupled to said bus wherein said computer readable memory unit contains instructions stored therein that when executed by said processor cause said computer system to implement a method of verifying the an integrated circuit layout design, said method comprising the steps of: a) receiving a stream of layout information representing said integrated circuit layout design, said stream of information comprising a plurality of subcell designs having parent-child relationships; b) comparing names of said subcell designs against a history database and parsing and storing into a new database only those subcell designs that are not found within said history database, said history database representing previously parsed subcell designs; c) from said new and history databases, constructing a hierarchical tree of said subcell designs from said parent-child relationships; d) selecting a selected subcell design from said hierarchical tree; e) performing design rule verification on said selected subcell design only if said selected subcell design is not indicated within a validation store; f) performing steps d)-e) for each subcell design of said hierarchical tree and generating a design rule verification report on said integrated circuit design layout; and g) storing into said validation store the geometry of each subcell design selected at step d) that passed design rule verification.
Claim 12
Dependent Claim 23 words
A computer system as described in claim 9 wherein said stream of layout information is represented in the Graphic Design Stream (GDSII) format.
Claim 13
Dependent Claim 49 words
A computer system as described in claim 9 wherein said step e) also comprises the step of performing netlist extraction on each subcell design that is not indicated within said validation store to obtain a netlist of said subcell design and storing each netlist into a physical netlist database.
Claim 14
Dependent Claim 109 words
A computer system as described in claim 11 wherein said method further comprises the steps of: h) selecting a selected subcell design from said hierarchical tree; i) using a layout versus schematic checker to compare an extracted netlist corresponding to said selected subcell design of said physical netlist database to a logical netlist database of said selected subcell design; and j) performing steps h)-i) for each subcell design of said hierarchical tree and generating a layout versus schematic verification report on said integrated circuit layout design; and k) storing into said validation store netlist information of each subcell design selected at step h) that passed layout versus schematic verification.
Claim 15
Dependent Claim 76 words
A computer system as described in claim 9 wherein said method further comprising the steps of: performing netlist extraction on a parent subdesign of each unrecognized subcell design of said hierarchical tree to obtain connectivity data on each input/output port of said unrecognized subcell design, an unrecognized subcell design being a subcell design that is not indicated within said validation store; and performing layout versus schematic verification on said connectivity data against a logical netlist database.
Claim 16
Dependent Claim 81 words
A computer system as described in claim 9 wherein said method further comprising the steps of: determining areas of overlap between said subcell designs of said hierarchical tree; flattening said areas of overlap and storing any flattened data into a flattened database; performing design rule verification on said flattened data; performing netlist extraction on said flattened data to obtain netlist data on said areas of overlap; and performing layout versus schematic verification on said netlist data of said areas of overlap.
Claim 17
Dependent Claim 45 words
A computer system as described in claim 14 wherein said step of determining areas of overlap comprises the step of determining areas of overlap between a subdesign that is indicated within said validation store and a subdesign that is not indicated within said validation store.
Claim 18
Dependent Claim 75 words
A computer system as described in claim 9 wherein step e) comprises the steps of: provided said selected subcell design is not indicated within said validation store, searching all child subcell designs of said selected subcell design to determine whether or not said child subcell designs are indicated within said validation store; and performing design rule verification only on child subcell designs of said selected subcell design that are not indicated within said validation store.
Claim 19
Dependent Claim 267 words
A computer implemented method of verifying an integrated circuit layout design, said method comprising the steps of: a) constructing a hierarchical tree of subcell designs from parent-child relationships between said subcell designs, said subcell designs representing said integrated circuit layout design, said step a) comprising the step of comparing names of said subcell designs against a history database and parsing and storing into a new database only those subcell designs that are not found within said history database, said history database representing previously parsed subcell designs; b) selecting a selected subcell design from said hierarchical tree; c) performing design rule verification and netlist extraction on said selected subcell design only if said selected subcell design is not indicated within a validation store, said netlist extraction generating a netlist of said selected subcell design; d) performing steps b)-c) for each subcell design of said hierarchical tree and generating a design rule verification report on said integrated circuit layout design; e) storing into said validation store geometry data of each subcell design selected at step b) that passed design rule verification; f) selecting a selected subcell design from said hierarchical tree; g) using a layout versus schematic checker to compare an extracted netlist corresponding to said selected subcell design to a logical netlist representation of said selected subcell design; and h) performing steps f)-g) for each subcell design of said hierarchical tree and generating a layout versus schematic verification report on said integrated circuit layout design; and i) storing into said validation store said extracted netlist of each subdesign selected at step f) that passed layout versus schematic verification.
Claim 20
Dependent Claim 267 words
A computer implemented method of verifying an integrated circuit layout design, said method comprising the steps of: a) constructing a hierarchical tree of subcell designs from parent-child relationships between said subcell designs, said subcell designs representing said integrated circuit layout design, said step a) comprising the step of comparing names of said subcell designs against a history database and parsing and storing into a new database only those subcell designs that are not found within said history database, said history database representing previously parsed subcell designs; b) selecting a selected subcell design from said hierarchical tree; c) performing design rule verification and netlist extraction on said selected subcell design only if said selected subcell design is not indicated within a validation store, said netlist extraction generating a netlist of said selected subcell design; d) performing steps b)-c) for each subcell design of said hierarchical tree and generating a design rule verification report on said integrated circuit layout design; e) storing into said validation store geometry data of each subcell design selected at step b) that passed design rule verification; f) selecting a selected subcell design from said hierarchical tree; g) using a layout versus schematic checker to compare an extracted netlist corresponding to said selected subcell design to a logical netlist representation of said selected subcell design; and h) performing steps f)-g) for each subcell design of said hierarchical tree and generating a layout versus schematic verification report on said integrated circuit layout design; and i) storing into said validation store said extracted netlist of each subdesign selected at step f) that passed layout versus schematic verification.
Claim 21
Dependent Claim 56 words
A method as described in claim 17 wherein said step a) further comprises the steps of: receiving a stream of layout information representing said integrated circuit layout design, said stream of information comprising said subcell designs which have parent-child relationships; from said new and history databases, constructing said hierarchical tree of subcell designs from said parent-child.
Claim 22
Dependent Claim 22 words
A method as described in claim 18 wherein said stream of layout information is represented in the Graphic Design Stream (GDSII) format.
Claim 23
Dependent Claim 72 words
A method as described in claim 17 further comprising the steps of: performing netlist extraction on a parent subdesign of each unrecognized subcell design of said hierarchical tree to obtain connectivity data on each input/output port of said unrecognized subcell design, an unrecognized subcell design being a subcell design that is not indicated within said validation store; and performing layout versus schematic verification on said connectivity data against a logical netlist database.
Claim 24
Dependent Claim 77 words
A method as described in claim 17 further comprising the steps of: determining areas of overlap between said subcell designs of said hierarchical tree; flattening said areas of overlap and storing any flattened data into a flattened database; performing design rule verification on said flattened data; performing netlist extraction on said flattened data to obtain netlist data on said areas of overlap; and performing layout versus schematic verification on said netlist data of said areas of overlap.
Claim 25
Dependent Claim 74 words
A method as described in claim 17 wherein step c) comprises the steps of: provided said selected subcell design is not indicated within said validation store, searching all child subcell designs of said selected subcell design to determine whether or not said child subcell designs are indicated within said validation store; and performing design rule verification only on child subcell designs of said selected subcell design that are not indicated within said validation store.

References Cited (Backward Citations)

US5050091A Cited
US5544067A Cited
US5281558A Cited
US5528508A Cited
US5604680A Cited
US5625564A Cited
US5629861A Cited
US5787006A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-12-27 2003-06-28 2003-12-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-12-27 2007-06-28 2007-12-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-12-27 2011-06-28 2011-12-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag