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

Method for mapping in logic synthesis by logic classification

Assignee: International Business Machines Corp
•
Filing: 1994-06-10
•
Granted: 1996-07-16
•
Expires: 2014-06-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method within a logic synthesis system provides for using tags attached to the nodes in a parse string generated from an abstract description of a logic design to classify portions of a heterogeneous design as open control, structure dominant, or direct map. The classification is then used to govern the amount of optimization allowed during logic synthesis. The classification is further used to seed or bypass the covering algorithms to produce the technology implementation desired by the designer. Structure dominance is a technique for "seeding" patterns by a designer which best fit the structure to the technology, which implies that the structural representation of the design as entered by the designer dominates the patterns located by the covering algorithm. However, other pattern matching functions are allowed to find better matches, if they exist, and the covering algorithm is allowed the final choice. Direct map processing bypasses optimization and covering altogether to implement the structural representation exactly as written, if possible, using the available elements in the target technology library. In the event that direct map is not possible, the node is processed as structure dominant.

Inventors

  • 👤 Robert F. Damiano
  • 👤 Anthony D. Drumm
  • 👤 Michael K. Edwards
  • 👤 Robert L. Kanzelman
  • 👤 Kathy M. McCarthy

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 01:52
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/32; G06F30/327

Claims Analysis

Total Claims: 29
Claim 1
Independent Claim 161 words
A method of logic synthesis using a computer, comprising: providing a plurality of register transfer statements describing a target logic system within said computer; tagging selected register transfer statements within said computer to specify a plurality of directed control levels including an open level and a structure dominance level; parsing the plurality of register transfer statements to generate a node graph where a node corresponds to a register transfer statement and allowing each node to receive an attribute indicating a directed control level; transforming the nodes having the attribute indicating the structure dominance level by searching a target technology book for exact match patterns to the nodes and adding any exact match patterns located to the nodes; optimizing the node graph on the nodes having an attribute indicating the open control level and through the nodes having the attribute indicating the structure dominance level; and covering the optimized node graph using the nodes having the attribute indicating the structure dominance level.
Claim 2
Independent Claim 161 words
A method of logic synthesis using a computer, comprising: providing a plurality of register transfer statements describing a target logic system within said computer; tagging selected register transfer statements within said computer to specify a plurality of directed control levels including an open level and a structure dominance level; parsing the plurality of register transfer statements to generate a node graph where a node corresponds to a register transfer statement and allowing each node to receive an attribute indicating a directed control level; transforming the nodes having the attribute indicating the structure dominance level by searching a target technology book for exact match patterns to the nodes and adding any exact match patterns located to the nodes; optimizing the node graph on the nodes having an attribute indicating the open control level and through the nodes having the attribute indicating the structure dominance level; and covering the optimized node graph using the nodes having the attribute indicating the structure dominance level.
Claim 3
Dependent Claim 107 words
The method of logic synthesis of claim 1, wherein the step of transforming the nodes having the attribute indicating the structure dominance level further includes: after searching for exact matches for a node, determining if any exact matches were located; if no exact matches were found for a node, expanding the node to allow location of exact matches and adding the exact match patterns to the node; searching the technology book for complements to the exact matches for each node; if a node has a complement, adding a complement pattern to the node; and expanding all nodes while maintain all added exact match patterns and complement patterns.
Claim 4
Dependent Claim 21 words
The method of logic synthesis of claim 2, wherein the plurality of directed control levels further include a direct mapping level.
Claim 5
Dependent Claim 57 words
The method of logic synthesis of claim 3, and further comprising: prior to transforming the nodes having the attribute indicating the structure dominance level, transforming the nodes having the attribute indicating the direct mapping level; and if direct mapping for a node fails, transforming the node as though it had the attribute for the structure dominance level.
Claim 6
Dependent Claim 47 words
The method of logic synthesis of claim 4, wherein if direct mapping and structure dominance level transforming steps fail to generate any matches, unconstrained technology mapping at the open control level is permitted thereby rendering the register transfer level statements describing the target logic system technology independent.
Claim 7
Dependent Claim 88 words
The method of logic synthesis of claim 4, wherein the step of transforming the nodes having the attribute indicating direct mapping further comprise: searching a target technology library for exact matches to the nodes and mapping any exact matches located to the nodes; after searching for exact matches for a node, determining if any exact matches were located; and if no exact matches were located for a node, expanding the node by reducing fan-in to allow location of exact matches and adding the exact matches to the node.
Claim 8
Dependent Claim 33 words
The method of synthesizing logic as set forth in claim 3, and further comprising: responsive to user selection, adding attributes to a directly mapped box for controlling timing optimization by said computer system.
Claim 9
Independent Claim 111 words
An apparatus for performing logic synthesis comprising: attribute identifiers which may be attached to a register transfer level statement; a parser for converting a plurality of register transfer level statements to a node graph, wherein nodes correspond to register transfer statements which preserve attributes associated with the attribute identifiers; means for segregating the nodes by attribute into structure dominance nodes and open control nodes; a plurality of transform means for operating on the structure dominance nodes; a plurality of transform and optimization means for operating on the open control nodes and any structure dominance nodes not successfully transformed by the plurality of transform means; and means for covering the transformed nodes.
Claim 10
Independent Claim 111 words
An apparatus for performing logic synthesis comprising: attribute identifiers which may be attached to a register transfer level statement; a parser for converting a plurality of register transfer level statements to a node graph, wherein nodes correspond to register transfer statements which preserve attributes associated with the attribute identifiers; means for segregating the nodes by attribute into structure dominance nodes and open control nodes; a plurality of transform means for operating on the structure dominance nodes; a plurality of transform and optimization means for operating on the open control nodes and any structure dominance nodes not successfully transformed by the plurality of transform means; and means for covering the transformed nodes.
Claim 11
Dependent Claim 107 words
The logic synthesis apparatus of claim 8, further comprising: an attribute identifier for marking a register transfer level statement for direct mapping of nodes; and a plurality of transform means for operating on nodes preserving the nodes tagged for direct mapping; the plurality of transform means for operating on the structure dominance nodes being further effective for transforming the directly mapped nodes if not transformed by the transform means for direct mapping; and the plurality of transform and optimization means for operating on the open control nodes being further operative on any directly mapped nodes not successfully transformed by any of the transform programs for structure dominance.
Claim 12
Independent Claim 99 words
A method of synthesizing logic comprising the steps performed by a data processing system of: responsive to user selection of particular technology, tagging register transfer level statements for the technology within said data processing system; parsing an abstract description of a logic design in tagged register transfer level statements into a node graph wherein nodes correspond to register transfer statements and include attributes relating to the tags which specify a degree of optimization allowed on the nodes; segregating the nodes for transformation operations based upon attribute values; transforming the nodes; and covering the transformed nodes to produce a netlist.
Claim 13
Independent Claim 99 words
A method of synthesizing logic comprising the steps performed by a data processing system of: responsive to user selection of particular technology, tagging register transfer level statements for the technology within said data processing system; parsing an abstract description of a logic design in tagged register transfer level statements into a node graph wherein nodes correspond to register transfer statements and include attributes relating to the tags which specify a degree of optimization allowed on the nodes; segregating the nodes for transformation operations based upon attribute values; transforming the nodes; and covering the transformed nodes to produce a netlist.
Claim 14
Dependent Claim 26 words
The method of synthesizing logic as set forth in claim 10, wherein the step of transforming begins with the nodes which are allowed the least optimization.
Claim 15
Dependent Claim 39 words
The method of synthesizing logic as set forth in claim 11, and further comprising: if no exact technology match can be made on a node during the step of transforming, increasing the level of optimization permitted on the node.
Claim 16
Dependent Claim 29 words
The method of synthesizing logic as set forth in claim 10, and further comprising: responsive to user selection, adding attributes to the directly mapped nodes for controlling timing optimization.
Claim 17
Independent Claim 153 words
A method of performing logic synthesis, comprising: providing a plurality of register transfer statements describing a target logic system; tagging selected register transfer statements to specify a plurality of directed control levels including an open level and a structure dominance level; parsing the plurality of register transfer statements to generate a node graph where a node corresponds to a register transfer statement and allowing each node to receive an attribute indicating a directed control level; transforming the nodes having the attribute indicating the structure dominance level by searching a target technology book for exact match patterns to the nodes and adding any exact match patterns located to the nodes; optimizing the node graph on the nodes having an attribute indicating the open control level and through the nodes having the attribute indicating the structure dominance level; and covering the optimized node graph using the nodes having the attribute indicating the structure dominance level.
Claim 18
Independent Claim 153 words
A method of performing logic synthesis, comprising: providing a plurality of register transfer statements describing a target logic system; tagging selected register transfer statements to specify a plurality of directed control levels including an open level and a structure dominance level; parsing the plurality of register transfer statements to generate a node graph where a node corresponds to a register transfer statement and allowing each node to receive an attribute indicating a directed control level; transforming the nodes having the attribute indicating the structure dominance level by searching a target technology book for exact match patterns to the nodes and adding any exact match patterns located to the nodes; optimizing the node graph on the nodes having an attribute indicating the open control level and through the nodes having the attribute indicating the structure dominance level; and covering the optimized node graph using the nodes having the attribute indicating the structure dominance level.
Claim 19
Dependent Claim 107 words
The method of logic synthesis of claim 14, wherein the step of transforming the nodes having the attribute indicating the structure dominance level further includes: after searching for exact matches for a node, determining if any exact matches were located; if no exact matches were found for a node, expanding the node to allow location of exact matches and adding the exact match patterns to the node; searching the technology book for complements to the exact matches for each node; if a node has a complement, adding a complement pattern to the node; and expanding all nodes while maintain all added exact match patterns and complement patterns.
Claim 20
Dependent Claim 21 words
The method of logic synthesis of claim 15, wherein the plurality of directed control levels further include a direct mapping level.
Claim 21
Dependent Claim 57 words
The method of logic synthesis of claim 16, and further comprising: prior to transforming the nodes having the attribute indicating the structure dominance level, transforming the nodes having the attribute indicating the direct mapping level; and if direct mapping for a node fails, transforming the node as though it had the attribute for the structure dominance level.
Claim 22
Dependent Claim 47 words
The method of logic synthesis of claim 17, wherein if direct mapping and structure dominance level transforming steps fail to generate any matches, unconstrained technology mapping at the open control level is permitted thereby rendering the register transfer level statements describing the target logic system technology independent.
Claim 23
Dependent Claim 88 words
The method of logic synthesis of claim 17, wherein the step of transforming the nodes having the attribute indicating direct mapping further comprise: searching a target technology library for exact matches to the nodes and mapping any exact matches located to the nodes; after searching for exact matches for a node, determining if any exact matches were located; and if no exact matches were located for a node, expanding the node by reducing fan-in to allow location of exact matches and adding the exact matches to the node.
Claim 24
Dependent Claim 29 words
The method of synthesizing logic as set forth in claim 16, and further comprising: responsive to user selection, adding attributes to a directly mapped box for controlling timing optimization.
Claim 25
Independent Claim 88 words
A method of synthesizing logic comprising the steps of: responsive to user selection of particular technology, tagging register transfer level statements for the technology; parsing an abstract description of a logic design in tagged register transfer level statements into a node graph wherein nodes correspond to register transfer statements and include attributes relating to the tags which specify a degree of optimization allowed on the nodes; segregating the nodes for transformation operations based upon attribute values; transforming the nodes; and covering the transformed nodes to produce a netlist.
Claim 26
Independent Claim 88 words
A method of synthesizing logic comprising the steps of: responsive to user selection of particular technology, tagging register transfer level statements for the technology; parsing an abstract description of a logic design in tagged register transfer level statements into a node graph wherein nodes correspond to register transfer statements and include attributes relating to the tags which specify a degree of optimization allowed on the nodes; segregating the nodes for transformation operations based upon attribute values; transforming the nodes; and covering the transformed nodes to produce a netlist.
Claim 27
Dependent Claim 26 words
The method of synthesizing logic as set forth in claim 21, wherein the step of transforming begins with the nodes which are allowed the least optimization.
Claim 28
Dependent Claim 39 words
The method of synthesizing logic as set forth in claim 22, and further comprising: if no exact technology match can be made on a node during the step of transforming, increasing the level of optimization permitted on the node.
Claim 29
Dependent Claim 29 words
The method of synthesizing logic as set forth in claim 21, and further comprising: responsive to user selection, adding attributes to the directly mapped nodes for controlling timing optimization.

References Cited (Backward Citations)

US4703435A Cited
US4882690A Cited
US4833619A Cited
US5034899A Cited
US5150308A Cited
US4964056A Cited
US4896272A Cited
US5029102A Cited
US4922432A Cited
US5065335A Cited
US5003487A Cited
US5349659A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag