IP Library Granted Patent US 7,676,773
Granted Patent B2
US 7,676,773 · App. 11/724,143 · Granted Mar 9, 2010

Trace optimization in flattened netlist by storing and retrieving intermediate results

Assignee: LSI Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,676,773
App. No.
11/724,143
Granted
Mar 9, 2010
Kind
B2
Abstract

A method of trace optimization in a flattened netlist of a circuit is disclosed. The method generally includes the steps of (A) generating a first total result by tracing a first path through the flattened netlist, (B) writing an intermediate result in a memory, the intermediate result characterizing a module having a plurality of instances in the circuit, (C) adding the intermediate result as read from the memory to the first total result upon crossing each of the instances of the module along the first path and (D) writing the first total result into the memory.

Claims (36)

1. A method of trace optimization in a flattened netlist of a circuit, comprising the steps of:

(A) generating a first total result by tracing a first path through said flattened netlist;

(B) writing an intermediate result in a computer storage memory, said intermediate result characterizing a module having a plurality of instances in said circuit; and

(C) adding said intermediate result as read from said computer storage memory to said first total result upon crossing each of said instances of said module along said first path.

2. The method according to claim 1 , further comprising the steps of:

generating a second total result by tracing a second path through said flattened netlist; and

adding said intermediate result as read from said computer storage memory to said second total result upon crossing each of said instances of said module along said second path.

3. The method according to claim 1 , further comprising the step of:

checking whether a current node on said first path is an input node to a current one of said instances.

4. The method according to claim 3 , further comprising the step of:

determining if said module was previously characterized.

5. The method according to claim 4 , further comprising the step of:

generating said intermediate result by characterizing said current instance where said current instance comprises an initial occurrence along said first path.

6. The method according to claim 1 , further comprising the step of:

calculating a section result by characterizing a section of said first path where a current node in not one of said instances.

7. The method according to claim 6 , further comprising the step of:

adding said section result to said first total result without reading an earlier evaluation of said section result from said computer storage memory.

8. The method according to claim 1 , wherein said intermediate result comprises a delay through said module.

9. The method according to claim 1 , wherein said intermediate result comprises a propagation through said module.

10. The method according to claim 1 , further comprising the step of:

writing said first total result into said computer storage memory.

11. A computer storage medium recording a computer program, when executed by a computer, causes said computer to implement the steps of claim 1 .

12. A system comprising:

a memory; and

a processor configured to (i) generate a first total result by tracing a first path through a flattened netlist of a circuit, (ii) write an intermediate result into said memory, said intermediate result characterizing a module having a plurality of instances in said circuit and (iii) add said intermediate result as read from said memory to said first total result upon crossing each of said instances of said module along said first path.

13. The system according to claim 12 , wherein said processor is further configured to (i) generate a second total result by tracing a second path through said flattened netlist and (ii) add said intermediate result as read from said memory to said second total result upon crossing each of said instances of said module along said second path.

14. The system according to claim 12 , wherein said processor is further configured to check whether a current node on said first path is an input node to a current one of said instances.

15. The system according to claim 14 , wherein said processor is further configured to determine if said module was previously characterized.

16. The system according to claim 15 , wherein said processor is further configured to generate said intermediate result by characterizing said current instance where said current instance comprises an initial occurrence along said first path.

17. The system according to claim 12 , wherein said processor is further configured to calculate a section result by characterizing a section of said first path where a current node in not one of said instances.

18. The system according to claim 17 , wherein said processor is further configured to add said section result to said first total result without reading an earlier evaluation of said section result from said memory.

19. The system according to claim 12 , wherein said intermediate result comprises a delay through said module.

20. The system according to claim 12 , wherein said intermediate result comprises a propagation through said module.

21. A system comprising:

means for storing; and

means for (i) generating a first total result by tracing a first path through a flattened netlist of a circuit, (ii) writing an intermediate result in said means for storing, said intermediate result characterizing a module having a plurality of instances in said circuit and (iii) adding said intermediate result as read from said means for storing to said first total result upon crossing each of said instances of said module along said first path.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Apr 15, 2022
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
Reel/Frame 059720/0223 →
SECURITY INTEREST Recorded Feb 1, 2018
From: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 045216/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2017
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.; BROADCOM CORPORATION
To: BELL SEMICONDUCTOR, LLC
Reel/Frame 044887/0109 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
MERGER Recorded Jan 20, 2010
From: LSI LOGIC CORPORATION
To: LSI CORPORATION
Reel/Frame 023813/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2007
From: RANGASAMY, UMESH; ADIGA, SRINIDHI
To: LSI LOGIC CORPORATION
Reel/Frame 019110/0128 →
Continuity (1)
Related Publication 20080229268A1 · Sep 18, 2008