Model level power consumption optimization in hardware description generation
US-9355000-B1 · May 31, 2016 · US
US11010519B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11010519-B2 |
| Application number | US-202016897642-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 10, 2020 |
| Priority date | Jun 10, 2019 |
| Publication date | May 18, 2021 |
| Grant date | May 18, 2021 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A Register Transfer Level (RTL) representation is recovered from a netlist representing an integrated circuit (IC). The netlist is converted to a graph comprising nodes belonging to a set of node types and edges connecting the nodes. The set of node types includes an instance node type representing an electronic component and a wire node type representing signal transfer between components. The graph is converted to a standardized graph by replacing subgraphs of the graph with standardized subgraphs. An RTL representation of the standardized graph is generated by operations including building signal declarations in a hardware description language (HDL) from the wire nodes of the standardized graph and building signal assignments in the HDL from instance nodes of the standardized graph.
Opening claim text (preview).
The invention claimed is: 1. A non-transitory storage medium storing instructions which are readable and executable by an electronic processor to perform a Register Transfer Level (RTL) representation recovery method, the instructions including: instructions readable and executable by the electronic processor to convert a netlist representing an integrated circuit (IC) design to a graph comprising nodes belonging to a set of node types and edges connecting the nodes, wherein the set of node types includes an instance node type representing an electronic component and a wire node type representing signal transfer between components; instructions readable and executable by the electronic processor to convert the graph to a standardized graph by replacing subgraphs of the graph with standardized subgraphs; and instructions readable and executable by the electronic processor to generate an RTL representation of the standardized graph by operations including building signal declarations in a hardware description language (HDL) from the wire nodes of the standardized graph and building signal assignments in the HDL from instance nodes of the standardized graph. 2. The non-transitory storage medium of claim 1 , wherein the wire node type has a single input signal and one or more output signals, wherein the value of each output signal is equal to the value of the single input signal. 3. The non-transitory storage medium of claim 2 , wherein the instance node type has one or more input signals and a single output signal. 4. The non-transitory storage medium of claim 3 , wherein the set of node types further includes an input node type representing an input terminal of the netlist, an output node type representing an output terminal of the netlist, and a constant node type representing a constant signal source. 5. The non-transitory storage medium of claim 1 , wherein the instructions readable and executable by the electronic processor to replace subgraphs of the graph with standardized subgraphs include: instructions readable and executable by the electronic processor to replace nodes of the graph with standardized nodes using an IC nomenclature database; and instructions readable and executable by the electronic processor to replace a subgraph that includes a look-up table (LUT) node with a standardized subgraph that does not include a LUT node. 6. The non-transitory storage medium of claim 5 , wherein the subgraph that includes the LUT node is replaced by generating a truth table for the LUT node, converting the truth table to a Boolean expression, and generating the standardized subgraph that does not include a LUT node to represent the Boolean expression. 7. The non-transitory storage medium of claim 1 , wherein the instructions readable and executable by the electronic processor to convert the netlist representing the IC design to the graph include instructions readable and executable by the electronic processor to parse the netlist to create an abstract syntax tree (AST). 8. The non-transitory storage medium of claim 1 , wherein the RTL representation of the standardized graph is generated by operations further including: building synchronous device declarations in the HDL for synchronous device subgraphs of the standardized graph using a template RTL library, and instantiating instances of the declared synchronous devices in the HDL corresponding to the synchronous device subgraphs of the standardized graph. 9. A device for recovering a Register Transfer Level (RTL) representation from a netlist representing an integrated circuit (IC) design, the device comprising: an electronic processor; and a non-transitory storage medium storing instructions readable and executable by the electronic processor to perform an RTL representation recovery method, the instructions including: instructions readable and executable by the electronic processor to convert a netlist representing an IC design to a graph comprising nodes belonging to a set of node types and edges connecting the nodes, wherein the set of node types includes an instance node type representing an electronic component and a wire node type having a single input signal and one or more output signals with the value of each output signal being equal to the value of the single input signal; instructions readable and executable by the electronic processor to convert the graph to a standardized graph by replacing subgraphs of the graph with standardized subgraphs; and instructions readable and executable by the electronic processor to generate an RTL representation of the standardized graph. 10. The device of claim 9 , wherein the RTL representation of the standardized graph is generated by operations including building signal declarations in a hardware description language (HDL) from the wire nodes of the standardized graph and building signal assignments in the HDL from instance nodes of the standardized graph. 11. The device of claim 10 , wherein the RTL representation of the standardized graph is generated by operations further including: building synchronous device declarations in the HDL for synchronous device subgraphs of the standardized graph using a template RTL library, and instantiating instances of the declared synchronous devices in the HDL corresponding to the synchronous device subgraphs of the standardized graph. 12. The device of claim 9 , wherein the instance node type has one or more input signals and a single output signal, and the set of node types further includes an input node type representing an input terminal of the netlist, an output node type representing an output terminal of the netlist, and a constant node type representing a constant signal source. 13. The device of claim 9 , wherein the instructions readable and executable by the electronic processor to replace subgraphs of the graph with standardized subgraphs include: instructions readable and executable by the electronic processor to replace nodes of the graph with standardized nodes using an IC nomenclature database; and instructions readable and executable by the electronic processor to replace a subgraph that includes a look-up table (LUT) node with a standardized subgraph that does not include a LUT node. 14. The device of claim 13 , wherein the subgraph that includes the LUT node is replaced by generating a truth table for the LUT node, converting the truth table to a Boolean expression, and generating the standardized subgraph that does not include a LUT node to represent the Boolean expression. 15. The device of claim 9 , wherein the instructions readable and executable by the electronic processor to convert the netlist representing the IC design to the graph include instructions readable and executable by the electronic processor to parse the netlist to create an abstract syntax tree (AST). 16. A Register Transfer Level (RTL) representation recovery method comprising: converting a netlist representing an integrated circuit (IC) design to a graph comprising nodes belonging to a set of node types and edges connecting the nodes, wherein the set of node types includes an instance node type representing an electronic component and a wire node type representing signal transfer between components; converting the graph to a standardized graph by replacing subgraphs of the graph with standardized subgraphs; and generating an RTL representation of the standardized graph by operations including building signal declarations in a hardware description language (HDL) from the wire nodes of the standardized graph and building signal assignments in the HDL from in
detecting pattern defects · CPC title
Translation or migration, e.g. logic to logic, hardware description language [HDL] translation or netlist translation · CPC title
Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist · CPC title
Spare resources, e.g. for permanent fault suppression · CPC title
Structured ASICs · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.