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

Logic path length reduction using boolean minimization

Assignee: International Business Machines Corp
•
Filing: 1987-12-02
•
Granted: 1990-04-10
•
Expires: 2007-12-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus and method for reducing the number of gate levels of a logic network. The gates of the network are levelized in a forward and backward direction to determine the worst path length of the network. A gate in the worst path is selected in accordance with a specified scoring function. A local Boolean compression is applied to the selected gate, thereby reducing the number of gate levels of the logic network.

Inventors

  • 👤 David J. Hathaway

Bibliographic Details

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

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 230 words
A method for reducing a logic network to a specified number of gate levels, the logic network having a plurality of gates, a number of gate levels, at least one input, at least one output, and at least one worst path which represents a path through the logic network having at least as many gate levels as any other path through the logic network, the method comprising the steps of: receiving data representing the topology of the logic network; levelizing the gates of the logic network in a forward and a backward direction; determining all of the gates of the logic network which are in the at least one worst path; specifying a scoring function; selecting, in accordance with the scoring function, one of the gates in the at least one worst path; applying a local Boolean compression to the selected gate, thereby producing a compressed logic network having fewer gate levels than the number of gate levels of the logic network prior to compression; comparing the number of gate levels of the compressed logic network with the specified number of gate levels; and if the compressed logic network has a number of gate levels which is greater than the specified number of gate levels, then repeating said levelizing, determining, specifying, selecting, applying, and comparing steps on the compressed logic network until the specified number of gate levels is achieved.
Claim 2
Independent Claim 230 words
A method for reducing a logic network to a specified number of gate levels, the logic network having a plurality of gates, a number of gate levels, at least one input, at least one output, and at least one worst path which represents a path through the logic network having at least as many gate levels as any other path through the logic network, the method comprising the steps of: receiving data representing the topology of the logic network; levelizing the gates of the logic network in a forward and a backward direction; determining all of the gates of the logic network which are in the at least one worst path; specifying a scoring function; selecting, in accordance with the scoring function, one of the gates in the at least one worst path; applying a local Boolean compression to the selected gate, thereby producing a compressed logic network having fewer gate levels than the number of gate levels of the logic network prior to compression; comparing the number of gate levels of the compressed logic network with the specified number of gate levels; and if the compressed logic network has a number of gate levels which is greater than the specified number of gate levels, then repeating said levelizing, determining, specifying, selecting, applying, and comparing steps on the compressed logic network until the specified number of gate levels is achieved.
Claim 3
Dependent Claim 32 words
The method according to claim 1, wherein the selected gate is at least two levels from the at least one input and at least one level from the at least one output.
Claim 4
Dependent Claim 39 words
The method according to claim 1, further comprising the step of: determining those gates of the logic network in a long path which represents a path through the logic network having more than the specified number of gate levels.
Claim 5
Dependent Claim 47 words
The method according to claim 1, further comprising the step of: calculating for each of the gates a long path convergence factor which represents a number of paths through the logic network having more than the specified number of gate levels which converge at a particular gate.
Claim 6
Dependent Claim 70 words
The method according to claim 1, further comprising the steps of: determining for each of the gates of the logic network an arrival time which represents the maximum path length from the at least one input to a particular gate; and determining for each of the gates of the logic network a required time which represents the minimum path length from the at least one output to a particular gate.
Claim 7
Dependent Claim 36 words
The method according to claim 5, further comprising the step of: calculating for each of the gates of the logic network a slack value which represents a difference between the required time and the arrival time.
Claim 8
Dependent Claim 32 words
The method according to claim 1, further comprising: calculating for each of the gates a worst path convergence factor which represents a number of worst paths which converge at a particular gate.
Claim 9
Dependent Claim 57 words
The method according to claim 7, further comprising the step of: applying a trial local Boolean compression on those gates of the logic network having a worst path convergence factor greater than zero and which are at least two levels from the at least one input and at least one level from the at least one output.
Claim 10
Dependent Claim 36 words
The method according to claim 8, further comprising the step of: calculating a gate count increase value which represents a number of gates added to the logic network after said trial local Boolean compression is applied.
Claim 11
Dependent Claim 37 words
The method according to claim 8, further comprising the step of: calculating a connection count increase value which represents a number of input connections added to the logic network after said trial Boolean compression step is applied.
Claim 12
Independent Claim 387 words
A method for reducing a logic network to a specified number of gate levels, the logic network having a plurality of gates, a number of gate levels, at least one input, at least one output, and at least one worst path which represents a path through the logic network having at least as many gate levels as any other path through the logic network, the method comprising the steps of: receiving data representing the topology of the logic network; levelizing the gates in a forward and backward direction; calculating for each of the gates a worst path convergence factor which represents a number of worst paths which converge at a particular gate; calculating for each of the gates a long path convergence value which represents a number of paths through the logic network having more than the specified number of gate levels which converge at a particular gate; applying a trial local Boolean compression on those gates of the logic network having a worst path convergence factor greater than zero and which are at least two levels from the at least one input and at least one level from the at least one output; calculating a gate count increase value which represents a number of gates added to the logic network after said trial local Boolean compression is applied; calculating a connection count increase value which represents a number of input connections added to the logic network after said trial Boolean compression is applied; specifying a scoring function; selecting, in accordance with the scoring function, one of the gates in the at least one worst path; applying a local Boolean compression to the selected gate, thereby producing a compressed logic network having fewer gate levels than the number of gate levels of the logic network prior to compression; comparing the number of gate levels of the compressed logic network with the specified number of gate levels; and if the compressed logic network has a number of gate levels which is greater than the specified number of gate levels, than repeating said levelizing, worst path convergence factor calculating, long path convergence value calculating, trial Boolean compression applying, gate count increase calculating, connection count increase calculating, specifying, selecting, local Boolean compression applying, and comparing steps on the compressed logic network until the specified number of gate levels is achieved.
Claim 13
Independent Claim 387 words
A method for reducing a logic network to a specified number of gate levels, the logic network having a plurality of gates, a number of gate levels, at least one input, at least one output, and at least one worst path which represents a path through the logic network having at least as many gate levels as any other path through the logic network, the method comprising the steps of: receiving data representing the topology of the logic network; levelizing the gates in a forward and backward direction; calculating for each of the gates a worst path convergence factor which represents a number of worst paths which converge at a particular gate; calculating for each of the gates a long path convergence value which represents a number of paths through the logic network having more than the specified number of gate levels which converge at a particular gate; applying a trial local Boolean compression on those gates of the logic network having a worst path convergence factor greater than zero and which are at least two levels from the at least one input and at least one level from the at least one output; calculating a gate count increase value which represents a number of gates added to the logic network after said trial local Boolean compression is applied; calculating a connection count increase value which represents a number of input connections added to the logic network after said trial Boolean compression is applied; specifying a scoring function; selecting, in accordance with the scoring function, one of the gates in the at least one worst path; applying a local Boolean compression to the selected gate, thereby producing a compressed logic network having fewer gate levels than the number of gate levels of the logic network prior to compression; comparing the number of gate levels of the compressed logic network with the specified number of gate levels; and if the compressed logic network has a number of gate levels which is greater than the specified number of gate levels, than repeating said levelizing, worst path convergence factor calculating, long path convergence value calculating, trial Boolean compression applying, gate count increase calculating, connection count increase calculating, specifying, selecting, local Boolean compression applying, and comparing steps on the compressed logic network until the specified number of gate levels is achieved.
Claim 14
Dependent Claim 38 words
The method according to claim 11, wherein said scoring function is a function of at least one of the worst path convergence factor, gate count increase value, the long path convergence factor, and the connection count increase value.
Claim 15
Dependent Claim 69 words
The method according to claim 11, further comprising the steps of: determining for each of the gates of the logic network an arrival time which represents the maximum path length from the at least one input to a particular gate; and determining for each of the gates of the logic network, a required time which represents the minimum path from the at least one output to a particular gate.
Claim 16
Dependent Claim 32 words
The method according to claim 13, further comprising the step of: calculating for each of the gates a slack value which represents the difference of the required time minus the arrival time.
Claim 17
Dependent Claim 19 words
The method according to claim 14, wherein those gates having the most negative slack values are in worst path.
Claim 18
Dependent Claim 27 words
The method according tro claim 15, wherein those gates having negative slack values which are more positive than the most negative slack values are in long paths.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-04-09 1993-10-09 1994-04-10 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-04-09 1997-10-09 1998-04-10 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-04-09 2001-10-09 2002-04-10 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag