Apparatus and method to facilitate hierarchical netlist checking
AssigneeMicron Technology, Inc.
InventorJohn Regnier
Life of this patent
Estimating the term…
Abstract
An apparatus and method are disclosed which determine locations where verification data should exist in a circuit representation and then propagates verification or circuit properties within a circuit representation. For a hierarchical representation of a circuit, a minimum number of modified circuit entities are created and added to the hierarchical representation such that pertinent critical net and property information is represented at each hierarchical level.
Claims25
A circuit representation analysis and verification data propagation system comprising:
- a first data structure for storing a first plurality of search target data comprising one or more critical connective pathway identifiers;
- a second data structure for storing a circuit representation which comprises connective pathways and connective pathway identifiers;
- a first processing sequence for determining a location for a one or more first connective pathway search targets from said first data structure within said second data structure;
- a second processing sequence for storing said location for a one or more first connective pathway search targets in a third data structure;
- a third processing sequence for determining a connective pathway location and identifier for a one or more second connective pathways that are interconnected with said search target data located in said first processing sequence;
- and
- a fourth processing sequence for renaming and storing said connective pathway location and identifier data determined in said third processing sequence within said second data structure.
2-20. (canceled)
A circuit representation analysis and verification data propagation system comprising:
- a first data structure which stores critical circuit attribute data;
- a second data structure which stores a circuit representation;
- a first processing sequence which determines locations of critical circuit attribute data in circuit entities in said circuit representation;
- a second processing sequence which determines circuit attributes for a first circuit entity of said circuit entities and an instance of a first circuit entity within said circuit representation;
- a third processing sequence which compares and determines circuit attribute differences between said first circuit entity and said instance of a first circuit entity in said circuit representation;
- a fourth processing sequence which searches a third data structure for a stored version of a match circuit entity which matches said instance of a first circuit entity, said fourth processing sequence performs search when said third processing sequence determines a variation between said first circuit entity and said instance of a first circuit entity;
- a fifth processing sequence which, when said fourth processing sequence does not find a said stored version of a circuit entity in said third data structure, copies said instance of a first circuit entity and stores said copy as a second circuit entity first circuit entity data in said second data structure, said fifth processing sequences creates an identifier for said second circuit entity comprising a root of the identifier for said instance of a first circuit entity and an appended circuit entity change indicator data;
- and
- a sixth processing sequence which, after fifth processing sequence completes processing, adds verification data to said second entity data and replaces one or more second circuit entity data, said verification data addition and circuit attribute replacement is accomplished when said sixth processing sequence determines a circuit attribute or element associated with a critical data location within said instance of a first circuit entity matches a pattern or selection criteria associated with a critical circuit attribute data stored in said first data structure, said sixth processing sequence also storing said second circuit entity with said verification data and replaced attributes from said sixth processing sequence processing in said third data structure.
A computer implemented system for distributing circuit attributes in a circuit representation comprising:
- a first data structure for storing search target data which describes one or more elements in a circuit representation;
- a second data structure for storing circuit verification data which describes attributes which are used to perform verification of circuit representation functions, each of said data is related to a said search target data;
- a third data structure for storing a circuit representation;
- a first processing sequence that selects a first circuit entity in said circuit representation;
- a second processing sequence which selects an element in said first circuit entity and then determines if said element is listed in said search target data;
- a third processing sequence which creates a marked data which describes verification data locations within said first circuit entity when a match is found between a said search target data and circuit elements in said first circuit entity, said third processing sequence then storing said marked data within a fourth data structure;
- a fourth processing sequence which creates a second circuit entity based upon said marked data and verification data, said second circuit entity comprising said selected first circuit entity and verification data which corresponds to said verification data location, said verification data placed in said verification data locations.
A system for analyzing a circuit representation and propagating verification data comprising:
- a means for storing a first circuit representation;
- a means for storing a first plurality of search targets which describe one or more elements within said first circuit representation;
- a means for analyzing said first circuit representation and determining locations for placement of verification data in said first circuit representation based upon relationships of said search target data to one or more elements within said first circuit representation;
- a means for creating circuit entities which describe combinations of a plurality of circuit elements within said first circuit representation with verification data placed in said locations for placement of verification data in said first circuit representation;
- and
- a means for storing said circuit entities in said first circuit representation.
A storage medium containing program code for operating a computer to create new circuit entities from a hierarchical representation of a circuit by the operations comprising:
- selecting an element during a traversal of a hierarchical representation of a circuit;
- determining a location for circuit error verification data based upon a comparison of a search target database with said selected element;
- and
- replacing or adding a verification data identifier at said location for circuit error verification data in said hierarchical representation unless said location is described in an operation override database which comprises a second plurality of search target database, said plurality of search targets comprises one or more sets of circuit elements and/or entities, and another database which contains one or more sequences for replacing or adding which are associated with each said one or more sets of circuit elements and/or entities.
A method for analyzing a circuit representation and propagating verification data comprising:
- storing search target data in a first data structure;
- storing verification data which describes attributes which are used to perform verification of circuit representation functions, each of said data being related to a said search target data in a second data structure;
- storing a circuit representation in a third data structure;
- searching said third data structure for a said search target listed in said first data structure;
- determining locations for placement of said verification data in said circuit representation based upon relationships of said search target data to one or more elements within the circuit representation;
- and
- creating a first circuit entity which describe a plurality of related circuit elements within the third data structure with verification data placed in said determined locations for placement of verification data in the circuit representation.
Dependencies are inferred from the claim text.