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

Automated circuit design

Assignee: International Business Machines Corp
•
Filing: 1993-02-12
•
Granted: 1995-07-11
•
Expires: 2013-02-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for designing a digital circuit using a multiplicity of cells is disclosed. Each of the cells comprises a plurality of digital components. The goal of the method is to identify and use cells having a limited number of series transistors because the delay through the cell is related to the number of series transistors. The method comprises the step of selecting a maximum number of series transistors to be permitted in any one cell. Then a tree graph representing the digital circuit is generated. The tree graph comprises a multiplicity of nodes and respective children. Each of the nodes corresponds to a digital function within the digital circuit and each of the children represents an input for one of the digital functions. Next, an algorithm is executed at a multiplicity of the nodes to determine at each of the nodes a number of series transistors required by a cell rooted at the node. Then, a partial subgraph rooted at each of the nodes which has a number of series transistos less than or equal to the maximum number is selected. Each of the partial subgraphs comprises the respective root node and one or more descendents of the root node. Next, data describing a physical representation of one or more of the selected partial subgraphs is fetched or generated. Finally, the circuit is fabricated using the data for the fetched or generated cells.

Inventors

  • 👤 Yiu M. Leung

Bibliographic Details

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

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 182 words
A method for fabricating a digital circuit, said method comprising the steps of: generating a tree graph comprising a multiplicity of nodes and respective children, each of said nodes corresponding to a digital function within said digital circuit and each of said children representing an input for one of the digital functions; for each of a multiplicity of said nodes, if the node is an AND gate, determining s cell =s of node itself plus summation (s of each child-1), if the node is an OR gate, determining s cell =max (s of each child), and if the node is an Inverter, determining s cell =s of child plus 1, wherein s=1 for an Inverter, s=n for an n input AND gate, and s=1 for an n input OR gate; and fabricating the circuit based on a physical representation of a plurality of partial subgraphs rooted at respective nodes which have "s cell " values less than or equal to a specified number, each of said partial subgraphs comprising the respective root node and one or more descendants of said root node.
Claim 2
Independent Claim 182 words
A method for fabricating a digital circuit, said method comprising the steps of: generating a tree graph comprising a multiplicity of nodes and respective children, each of said nodes corresponding to a digital function within said digital circuit and each of said children representing an input for one of the digital functions; for each of a multiplicity of said nodes, if the node is an AND gate, determining s cell =s of node itself plus summation (s of each child-1), if the node is an OR gate, determining s cell =max (s of each child), and if the node is an Inverter, determining s cell =s of child plus 1, wherein s=1 for an Inverter, s=n for an n input AND gate, and s=1 for an n input OR gate; and fabricating the circuit based on a physical representation of a plurality of partial subgraphs rooted at respective nodes which have "s cell " values less than or equal to a specified number, each of said partial subgraphs comprising the respective root node and one or more descendants of said root node.
Claim 3
Dependent Claim 47 words
A method as set forth in claim 1 further comprising the step of identifying partial subgraphs comprising nodes on a critical path through said circuit; and wherein the s cell determinations are performed using nodes in the critical path and excluding nodes outside of the critical path.
Claim 4
Dependent Claim 52 words
A method as set forth in claim 1 wherein data describing physical representations of some of said plurality of subgraphs are fetched from a library and data describing physical representations of other of said plurality of subgraphs which occur identically or functionally identically a multiplicity of times in said circuit are generated.
Claim 5
Dependent Claim 50 words
A method as set forth in claim 1 further comprising the step of storing data describing said physical representation of one or more of said plurality of partial subgraphs in a library for subsequent use in fabricating said circuit, and wherein said storing step is performed before said fabricating step.
Claim 6
Independent Claim 251 words
A method for designing a digital circuit using a multiplicity of cells, each of said cells comprising a plurality of digital components, said method comprising the steps of: selecting a maximum number of series transistors to be permitted in any one cell; generating a tree graph representing said digital circuit, said tree graph comprising a multiplicity of nodes and respective children, each of said nodes corresponding to a digital function within said digital circuit and each of said children representing an input for one of the digital functions; executing the following algorithm at a multiplicity of said nodes to determine at each of said nodes a number of series transistors "s" required by a cell rooted at said node: if the node is an AND gate, s=s of node itself plus summation [s of each child-1] if the node is an OR gate, s=max [s of each child] if the node is an Inverter, s=s of child plus 1 wherein s=1 for an Inverter; s=n for an n input AND gate; and s=1 for an n input OR gate; selecting a partial subgraph rooted at each of said nodes which has an "s" value less than or equal to said maximum number, each of said partial subgraphs comprising the respective root node and one or more descendents of said root node; fetching or generating data describing a physical representation of one or more of the selected partial subgraphs; and fabricating the circuit using said data for said fetched or generated cells.
Claim 7
Independent Claim 251 words
A method for designing a digital circuit using a multiplicity of cells, each of said cells comprising a plurality of digital components, said method comprising the steps of: selecting a maximum number of series transistors to be permitted in any one cell; generating a tree graph representing said digital circuit, said tree graph comprising a multiplicity of nodes and respective children, each of said nodes corresponding to a digital function within said digital circuit and each of said children representing an input for one of the digital functions; executing the following algorithm at a multiplicity of said nodes to determine at each of said nodes a number of series transistors "s" required by a cell rooted at said node: if the node is an AND gate, s=s of node itself plus summation [s of each child-1] if the node is an OR gate, s=max [s of each child] if the node is an Inverter, s=s of child plus 1 wherein s=1 for an Inverter; s=n for an n input AND gate; and s=1 for an n input OR gate; selecting a partial subgraph rooted at each of said nodes which has an "s" value less than or equal to said maximum number, each of said partial subgraphs comprising the respective root node and one or more descendents of said root node; fetching or generating data describing a physical representation of one or more of the selected partial subgraphs; and fabricating the circuit using said data for said fetched or generated cells.
Claim 8
Dependent Claim 45 words
A method as set forth in claim 5 further comprising the step of identifying partial subgraphs comprising nodes on a critical path through said circuit; and wherein said algorithm is performed using nodes in the critical path and excluding nodes outside of the critical path.
Claim 9
Dependent Claim 50 words
A method as set forth in claim 5 wherein data describing physical representations of some of the selected subgraphs are fetched from a library and data describing physical representations of other of the selected subgraphs which occur identically or functionally identically a multiplicity of times in said circuit are generated.
Claim 10
Dependent Claim 42 words
A method as set forth in claim 5 further comprising the step of storing the fetched or generated data describing a physical representation of one or more of the selected partial subgraphs in a library for subsequent use in fabricating said circuit.
Claim 11
Independent Claim 302 words
A method for designing a digital circuit using a multiplicity of cells, each of cells comprising a plurality of digital components, said method comprising the steps of: selecting a maximum delay to be permitted in any one cell; generating a tree graph representing said cell, said tree graph comprising a multiplicity of nodes and respective children, each of said nodes corresponding to a digital function within said digital circuit and each of said children representing an input for said digital function; executing the following algorithm at a root node of said cell to determine a number of series pull-down transistors "s" required by said node: if the node is an AND gate, s=s of node itself plus summation [s of each child-1] if the node is an OR gate, s=max [s of each child] if the node is an Inverter, s=s of child plus 1 wherein s=1 for an Inverter; s=n for an n input AND gate; and s=1 for an n input OR gate; executing the following algorithm at a root node of said cell to determine a number of parallel pull-up transistors "p" required by said node: if the root is an AND gate, p=max[p of each child] if the root is an OR gate, p=p of root plus sum[p of each child-1] if the root is an Inverter, p=p of child plus 1 wherein p=1 for an inverter, p=1 for an n input AND gate, and p=n for an n input OR gate; estimating delay through said cell based on the equation: delay=K×(2×p+s) where K is a technology dependent parameter proportional to the fall time of a unit size transistor; and if the estimated delay exceeds said predetermined limit, rejecting said cell, and if the estimated delay does not exceed said predetermined limit, fabricating said circuit using said cell.
Claim 12
Independent Claim 302 words
A method for designing a digital circuit using a multiplicity of cells, each of cells comprising a plurality of digital components, said method comprising the steps of: selecting a maximum delay to be permitted in any one cell; generating a tree graph representing said cell, said tree graph comprising a multiplicity of nodes and respective children, each of said nodes corresponding to a digital function within said digital circuit and each of said children representing an input for said digital function; executing the following algorithm at a root node of said cell to determine a number of series pull-down transistors "s" required by said node: if the node is an AND gate, s=s of node itself plus summation [s of each child-1] if the node is an OR gate, s=max [s of each child] if the node is an Inverter, s=s of child plus 1 wherein s=1 for an Inverter; s=n for an n input AND gate; and s=1 for an n input OR gate; executing the following algorithm at a root node of said cell to determine a number of parallel pull-up transistors "p" required by said node: if the root is an AND gate, p=max[p of each child] if the root is an OR gate, p=p of root plus sum[p of each child-1] if the root is an Inverter, p=p of child plus 1 wherein p=1 for an inverter, p=1 for an n input AND gate, and p=n for an n input OR gate; estimating delay through said cell based on the equation: delay=K×(2×p+s) where K is a technology dependent parameter proportional to the fall time of a unit size transistor; and if the estimated delay exceeds said predetermined limit, rejecting said cell, and if the estimated delay does not exceed said predetermined limit, fabricating said circuit using said cell.

References Cited (Backward Citations)

US4815003A Cited
US5282148A Cited
US5287289A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-07-10 1999-01-09 1999-07-11 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-07-10 2003-01-09 2003-07-11 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-07-10 2007-01-09 2007-07-11 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag