Electronic design automation system and methods utilizing groups of multiple cells having loop-back connections for modeling port electrical characteristics
First Claim
1. In an electronic design automation system, a method of generating a netlist description comprising the computer implemented steps of:
- a) accessing an HDL specification representing an integrated circuit to be realized in physical form and accessing constraints applicable to said electronic design;
b) compiling said HDL specification with a compiler to produce a netlist description of said integrated circuit wherein said netlist description comprises multi-bit cells, multi-bit components and combinational logic, said step b) comprising the steps of;
b1) inserting scannable multi-bit cells and scannable multi-bit components by replacing said multi-bit cells and said multi-bit components with equivalent scannable multi-bit cells and equivalent scannable multi-bit components, respectively; and
b2) installing a loopback connection between a scan-out port of a respective scannable multi-bit cell and a scan-in port of said respective scannable multi-bit cell; and
b3) installing a loopback connection between a scan-out port of a respective scannable multi-bit component and a scan-in port of said respective scannable multi-bit component; and
c) storing said netlist description into computer memory.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer implemented process and system for electronic design automation (EDA) using groups of multiple cells having loop-back connections for modeling port electrical characteristics. Multi-bit cells have multiple gates of the same function implemented within a same cell. Multi-bit components have multiple multi-bit cells implemented within a same component. Scannable multi-bit cells and components are similar to multi-bit cells and components but contain scannable sequential elements with scan chains installed. Multi-bit cells may or may not have each sequential cells'"'"' input and each sequential cells'"'"' output available externally. The scannable sequential elements of a multi-bit component are ordered into a predefined scan chain which is defined by the library containing the multi-bit component or multi-bit cell. During scan replacement processes of the EDA compile process, multi-bit cells and components of the netlist are replaced with scannable multi-bit cells and components. Also, during optimization, multi-bit cells and components undergo equivalence replacement to meet specified constraints (e.g., area, performance, etc.). To model the electrical characteristics of the port during certain optimizations, loopback connections are applied to the multi-bit components from the scan out port to the scan in port of the multi-bit cell or component, therefore, one loopback connection spans multiple sequential cells within the multi-bit cell or component. During certain optimizations, loopback connections are applied to multiple sequential cells that are coupled together but do not necessarily reside in a multi-bit cell or component. By spanning multiple sequential cells, circuit degeneration is reduced thereby providing better circuit optimizations for netlists having scan circuitry.
186 Citations
20 Claims
-
1. In an electronic design automation system, a method of generating a netlist description comprising the computer implemented steps of:
-
a) accessing an HDL specification representing an integrated circuit to be realized in physical form and accessing constraints applicable to said electronic design;
b) compiling said HDL specification with a compiler to produce a netlist description of said integrated circuit wherein said netlist description comprises multi-bit cells, multi-bit components and combinational logic, said step b) comprising the steps of;
b1) inserting scannable multi-bit cells and scannable multi-bit components by replacing said multi-bit cells and said multi-bit components with equivalent scannable multi-bit cells and equivalent scannable multi-bit components, respectively; and
b2) installing a loopback connection between a scan-out port of a respective scannable multi-bit cell and a scan-in port of said respective scannable multi-bit cell; and
b3) installing a loopback connection between a scan-out port of a respective scannable multi-bit component and a scan-in port of said respective scannable multi-bit component; and
c) storing said netlist description into computer memory. - View Dependent Claims (2, 3, 4, 5, 6, 7)
installing a long loopback connection over multiple scan cells wherein said long loopback connection is coupled to a scan-in port of a first scan cell of said multiple scan cells and also coupled to a scan-out port of a last scan cell of said multiple scan cells;
optimizing using said long loopback connection which prevents circuitry degeneration of said first and last scan cells; and
removing said long loopback connection.
-
-
4. A method as described in claim 1 further comprising the steps of:
-
d) removing said loopback connections from said netlist description; and
e) constructing scan chains that include said scannable multi-bit cells and said scannable multi-bit components, wherein said step e) utilizes existing scan chain ordering of any existing scan chain segments found within scan scannable multi-bit cells and scan scannable multi-bit components of said netlist description.
-
-
5. A method as described in claim 1 wherein said step b2) comprises the step of, provided said respective scannable multi-bit cell does not already contain an existing scan chain ordering, then installing connections to scan-in ports and scan-out ports of said respective scannable multi-bit cell to construct a scan chain ordering for said respective scannable multi-bit cell.
-
6. A method as described in claim 1 wherein said step b3) comprises the step of, provided said respective scannable multi-bit component does not already contain an existing scan chain ordering, then installing connections to scan-in ports and scan-out ports of said respective scannable multi-bit component to construct a scan chain ordering for said respective scannable multi-bit component.
-
7. A method as described in claim 1 wherein said constraints define design rule and performance limitations applicable to said design.
-
8. An electronic design automation system having a processor coupled to computer memory wherein said memory contains instructions that when executed implement a method of generating a netlist description comprising the computer implemented steps of:
-
a) accessing an HDL specification representing an integrated circuit to be realized in physical form and accessing constraints applicable to said electronic design;
b) compiling said HDL specification with a compiler to produce a netlist description of said integrated circuit wherein said netlist description comprises multi-bit cells, multi-bit components and combinational logic, said step b) comprising the steps of;
b1) inserting scannable multi-bit cells and scannable multi-bit components by replacing said multi-bit cells and said multi-bit components with equivalent scannable multi-bit cells and equivalent scannable multi-bit components, respectively; and
b2) installing a loopback connection between a scan-out port of a respective scannable multi-bit cell and a scan-in port of said respective scannable multi-bit cell; and
b3) installing a loopback connection between a scan-out port of a respective scannable multi-bit component and a scan-in port of said respective scannable multi-bit component; and
c) storing said netlist description into said computer memory. - View Dependent Claims (9, 10, 11, 12, 13)
installing a long loopback connection over multiple scan cells wherein said long loopback connection is coupled to a scan-in port of a first scan cell of said multiple scan cells and also coupled to a scan-out port of a last scan cell of said multiple scan cells;
optimizing using said long loopback connection which prevents circuitry degeneration of said first and last scan cells; and
removing said long loopback connection.
-
-
11. An electronic design automation system as described in claim 8 wherein said method further comprising the steps of:
-
d) removing said loopback connections from said netlist description; and
e) constructing scan chains that include said scannable multi-bit cells and said scannable multi-bit components, wherein said step e) utilizes existing scan chain ordering of any existing scan chain segments found within scan scannable multi-bit cells and scan scannable multi-bit components of said netlist description.
-
-
12. An electronic design automation system as described in claim 8 wherein said step b2) of said method comprises the step of, provided said respective scannable multi-bit cell does not already contain an existing scan chain ordering, then installing connections to scan-in ports and scan-out ports of said respective scannable multi-bit cell to construct a scan chain ordering for said respective scannable multi-bit cell.
-
13. An electronic design automation system as described in claim 8 wherein said step b3) of said method comprises the step of, provided said respective scannable multi-bit component does not already contain an existing scan chain ordering, then installing connections to scan-in ports and scan-out ports of said respective scannable multi-bit component to construct a scan chain ordering for said respective scannable multi-bit component.
-
14. In an electronic design automation system, a method of generating a netlist description comprising the computer implemented steps of:
-
a) compiling an HDL specification to produce a netlist description of an integrated circuit, wherein said netlist description represents an integrated circuit design and comprises individual memory cells, multi-bit cells and multi-bit components, said step a) comprising the steps of;
a1) inserting scannable multi-bit cells and scannable multi-bit components by replacing said multi-bit cells and said multi-bit components with equivalent scannable multi-bit cells and equivalent multi-bit components, respectively;
a2) inserting individual scan cells by replacing said individual memory cells with equivalent individual sequential cells; and
a3) installing loopback connections between respective scan-in and scan-out ports of said scannable multi-bit cells and said scannable multi-bit components; and
b) storing said netlist description into computer memory. - View Dependent Claims (15, 16, 17, 18, 19, 20)
a4) installing a long loopback connection over multiple individual scan cells wherein said long loopback connection is coupled to a scan-in port of a first scan cell of said multiple individual scan cells and also coupled to a scan-out port of a last scan cell of said multiple individual scan cells; and
a5) optimizing said scannable multi-bit cells, said scannable multi-bit components and said individual scan cells wherein said step a5) uses said loopback connections installed by steps a3) and a4) to simulate electrical characteristics of scan-in and scan-out ports of said scannable multi-bit cells, said scannable multi-bit components and said individual scan cells.
-
-
16. A method as described in claim 15 wherein said step a) further comprises the steps of:
-
a6) removing said long loopback connections; and
a7) installing self-loops between scan-in and scan-out ports of said individual scan cells.
-
-
17. A method as described in claim 14 further comprising the steps of:
-
c) removing said loopback connections from said netlist description; and
d) constructing scan chains that include said scannable multi-bit cells, said scannable multi-bit components and said individual scan cells, wherein said step d) maintains existing scan chain ordering found within said scannable multi-bit cells and said scannable multi-bit components of said netlist description.
-
-
18. A method as described in claim 14 wherein said step a3) comprises the steps of:
-
provided a respective scannable multi-bit cell does not already contain an existing scan chain ordering, then installing connections to scan-in ports and scan-out ports of said respective scannable multi-bit cell to construct a scan chain ordering for said respective scannable multi-bit cell; and
provided a respective scannable multi-bit component does not already contain an existing scan chain ordering, then installing connections to scan-in ports and scan-out ports of said respective scannable multi-bit component to construct a scan chain ordering for said respective scannable multi-bit component.
-
-
19. A method as described in claim 14 wherein said step a1) and said step a2) each comprise the step of performing sequential mapping based scan equivalence.
-
20. A method as described in claim 14 wherein said scannable multi-bit cells each comprise n number of replicated scannable sequential cells that are each multiplexed input D flip-flops.
Specification