← Back to Patent Explorer
US5491640A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for synthesizing datapaths for integrated circuit design and fabrication

Assignee: NXP BV
•
Filing: 1994-07-08
•
Granted: 1996-02-13
•
Expires: 2014-07-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for fabricating an integrated circuit includes the steps of: (a) developing a set of circuit specifications for an integrated circuit; (b) encoding the set of circuit specifications in a hardware description language (HDL); (c) synthesizing a netlist including a sequential datapath with a datapath synthesizer from the HDL; and (d) fabricating an integrated circuit as specified by the netlist. A method for datapath synthesis includes the steps of: (a) providing a datapath library including sequential components and combinational components; (b) developing a set of circuit specifications for an integrated circuit; (c) encoding the set of circuit specifications in a HDL; (d) developing a number of IC expression trees derived from the HDL; (e) matching the IC expression trees with library expression trees derived from the datapath library to provide a map of matches; and (f) synthesizing according to the map to create a datapath netlist including both sequential datapaths and combinational datapaths. A datapath synthesizer includes a digital processor, memory coupled to the digital processor, and a datapath library stored in the memory. An input device is used to input a HDL description of circuit specifications into memory, and an IC expression generator develops a number of IC expression trees from the HDL. A matcher compares the plurality of IC expression trees with library expression trees derived from the datapath library to provide a map of matches, and a synthesizer provides a netlist including both sequential datapaths and combinational datapaths according to the map.

Inventors

  • 👤 Balmukund K. Sharma
  • 👤 Mossaddeq Mahmood

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 15:29
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 154 words
A method for fabricating an integrated circuit comprising: developing a set of circuit specifications for an integrated circuit; encoding said set of circuit specifications in a hardware description language and inputting said hardware description language into a digital computer; providing a datapath library including both sequential components and combinational components, wherein said sequential components exhibit sequential logic having an output dependent on inputs and also dependent on a state of a memory unit included within said sequential component, and wherein said combinational components exhibit combinational logic having an output only dependent on inputs to said combinational logic; synthesizing from said hardware description language and on said computer a netlist including a sequential component selected from said datapath library, said synthesizing step including generating IC expression trees from said hardware description language and synthesizing said netlist utilizing said IC expression trees and said datapath library; and fabricating the integrated circuit as specified by said netlist.
Claim 2
Independent Claim 154 words
A method for fabricating an integrated circuit comprising: developing a set of circuit specifications for an integrated circuit; encoding said set of circuit specifications in a hardware description language and inputting said hardware description language into a digital computer; providing a datapath library including both sequential components and combinational components, wherein said sequential components exhibit sequential logic having an output dependent on inputs and also dependent on a state of a memory unit included within said sequential component, and wherein said combinational components exhibit combinational logic having an output only dependent on inputs to said combinational logic; synthesizing from said hardware description language and on said computer a netlist including a sequential component selected from said datapath library, said synthesizing step including generating IC expression trees from said hardware description language and synthesizing said netlist utilizing said IC expression trees and said datapath library; and fabricating the integrated circuit as specified by said netlist.
Claim 3
Dependent Claim 20 words
A method for fabricating an integrated circuit as recited in claim 1 wherein said netlist further includes a combinational component.
Claim 4
Dependent Claim 39 words
A method for fabricating an integrated circuit as recited in claim 2 wherein said netlist further includes random logic, wherein said random logic includes logic of said circuit specifications that is not included in datapaths of said circuit specifications.
Claim 5
Dependent Claim 100 words
A method for fabricating an integrated circuit as recited in claim 3 wherein said step of synthesizing a netlist comprises the steps of: parsing said hardware description language into a control data flow graph; generating an IC expression tree for each output of the control data flow graph; partitioning each IC expression tree into a random logic category and a datapath category; synthesizing random logic using logic synthesis, said logic synthesis utilizing a provided gate library; synthesizing datapath using datapath synthesis, said datapath synthesis utilizing said datapath library; and combining said datapath and said random logic to form said netlist.
Claim 6
Dependent Claim 64 words
A method for fabricating an integrated circuit as recited in claim 4, wherein said step of synthesizing datapath comprises the steps of: generating a component output expression tree for each output of each component in said datapath library; matching each IC expression tree against each component output expression tree to create a map; and creating a datapath netlist using said map and optimization criteria.
Claim 7
Dependent Claim 57 words
A method for fabricating an integrated circuit as recited in claim 5, wherein said library components are encoded in said hardware description language, and further comprising the step of parsing said library components into component control data flow graphs, wherein said step of generating a component output expression tree operates on said component control data flow graphs.
Claim 8
Dependent Claim 26 words
A method for fabricating an integrated circuit as recited in claim 6 wherein said optimization criteria include at least one of area, speed and delay criteria.
Claim 9
Dependent Claim 36 words
A method for fabricating an integrated circuit as recited in claim 7 wherein said matching step uses a recursive matching process to produce a set of matches between said library components and said IC expression tree.
Claim 10
Dependent Claim 51 words
A method for fabricating an integrated circuit as recited in claim 8 wherein said step of fabricating an integrated circuit comprises: producing IC mask specifications based upon said netlist; producing a plurality of IC masks from said mask specifications; and using said plurality of IC masks to fabricate said integrated circuit.
Claim 11
Independent Claim 134 words
A method for datapath synthesis comprising: providing a datapath library including sequential components and combinational components, wherein said sequential components exhibit sequential logic having an output dependent on inputs and dependent on a state of a memory unit included within said sequential component, and wherein said combinational components exhibit combinational logic having an output only dependent on inputs to said combinational logic; developing a set of circuit specifications for an integrated circuit; encoding said set of circuit specifications in a hardware description language; developing a plurality of IC expression trees derived from said hardware, description language; matching said plurality of IC expression trees with library expression trees derived from said datapath library to provide a map of matches; and synthesizing both sequential components and combinational components for said integrated circuit according to said map.
Claim 12
Independent Claim 134 words
A method for datapath synthesis comprising: providing a datapath library including sequential components and combinational components, wherein said sequential components exhibit sequential logic having an output dependent on inputs and dependent on a state of a memory unit included within said sequential component, and wherein said combinational components exhibit combinational logic having an output only dependent on inputs to said combinational logic; developing a set of circuit specifications for an integrated circuit; encoding said set of circuit specifications in a hardware description language; developing a plurality of IC expression trees derived from said hardware, description language; matching said plurality of IC expression trees with library expression trees derived from said datapath library to provide a map of matches; and synthesizing both sequential components and combinational components for said integrated circuit according to said map.
Claim 13
Dependent Claim 51 words
A method for datapath synthesis as recited in claim 10 wherein said step of generating a plurality of IC expression trees includes the steps of: parsing said hardware description language into a control data flow graphs; and generating an IC expression tree for each output of said control data flow graphs.
Claim 14
Dependent Claim 56 words
A method for datapath synthesis as recited in claim 11 wherein said step of generating a plurality of IC expression trees further includes the step of: partitioning said IC expression trees into a random logic category and a datapath category, where only said IC expression trees in said datapath category are subject to said matching step.
Claim 15
Dependent Claim 24 words
A method for datapath synthesis as recited in claim 12 further comprising the step of: developing said library expression trees from said datapath library.
Claim 16
Dependent Claim 70 words
A method for datapath synthesis as recited in claim 13 wherein said sequential components and said combinational components of said datapath library are written in said hardware description language, and wherein said step of developing said library expression trees includes the steps of: parsing said hardware description language of said sequential components and said combinational components; and generating an expression tree for each output of each component in said library.
Claim 17
Dependent Claim 20 words
A method for datapath synthesis as recited in claim 12 wherein said step of matching implements a recursive matching process.
Claim 18
Dependent Claim 34 words
A method for datapath synthesis as recited in claim 13 wherein said recursive matching process utilizes a stack to recursively match all combinations of said components in said library with said IC expression tree.
Claim 19
Dependent Claim 31 words
A method for datapath synthesis as recited in claim 10 wherein said step of synthesizing includes the steps of: creating a netlist according to both said map and to optimization criteria.
Claim 20
Dependent Claim 24 words
A method for datapath synthesis as recited in claim 17 wherein said optimization criteria include at least one of area, speed and delay criteria.
Claim 21
Dependent Claim 174 words
A datapath synthesizer comprising: a digital processor; memory coupled to said digital processor; a datapath library stored in said memory, said datapath library including sequential components and combinational components, wherein said sequential components exhibit sequential logic having an output dependent on inputs and dependent on a state of a memory unit included within said sequential component, and wherein said combinational components exhibit combinational logic having an output only dependent on inputs to said combinational logic; an input device for inputting to said memory a set of circuit specifications for an integrated circuit encoded in a hardware description language; an IC expression tree generator which develops, using said digital processor, a plurality of IC expression trees derived from said hardware description language; a matcher which maps, using said digital processor, said plurality of IC expression trees with library expression trees derived from said datapath library to provide a map; and a synthesizer, using said digital processor, to synthesize a netlist for said integrated circuit including both sequential components and combinational components according to said map.
Claim 22
Dependent Claim 174 words
A datapath synthesizer comprising: a digital processor; memory coupled to said digital processor; a datapath library stored in said memory, said datapath library including sequential components and combinational components, wherein said sequential components exhibit sequential logic having an output dependent on inputs and dependent on a state of a memory unit included within said sequential component, and wherein said combinational components exhibit combinational logic having an output only dependent on inputs to said combinational logic; an input device for inputting to said memory a set of circuit specifications for an integrated circuit encoded in a hardware description language; an IC expression tree generator which develops, using said digital processor, a plurality of IC expression trees derived from said hardware description language; a matcher which maps, using said digital processor, said plurality of IC expression trees with library expression trees derived from said datapath library to provide a map; and a synthesizer, using said digital processor, to synthesize a netlist for said integrated circuit including both sequential components and combinational components according to said map.
Claim 23
Dependent Claim 50 words
A datapath synthesizer as recited in claim 19 further comprising: a parser to convert, using said digital processor, said hardware description language into a control data flow graphs; and a generator to produce, using said digital processor, an IC expression tree for each output of said control data flow graphs.
Claim 24
Dependent Claim 50 words
A datapath synthesizer as recited in claim 20 wherein IC expression tree generator includes: a partitioner to separate, using said digital processor, said IC expression trees into a random logic category and a datapath category, where only said IC expression trees in said datapath category are subjected to said matcher.

References Cited (Backward Citations)

US4831543A Cited
US5146583A Cited
US4922432A Cited
US5197016A Cited
US4967367A Cited
US5175843A Cited
US5163016A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-02-12 1999-08-14 2000-02-13 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-02-12 2003-08-14 2004-02-13 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-02-12 2007-08-14 2008-02-13 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag