IP Library Granted Patent US 7,458,049
Granted Patent B1
US 7,458,049 · App. 11/451,905 · Granted Nov 25, 2008

Aggregate sensitivity for statistical static timing analysis

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,458,049
App. No.
11/451,905
Granted
Nov 25, 2008
Kind
B1
Abstract

A system and a method are disclosed for circuit analysis. A circuit modeling system calculates sensitivities of gates for statistical static timing analysis of a circuit. Timing distribution sensitivities of gates and correlations between the sensitivities are determined. A Monte Carlo simulation is run using the sensitivities to determine timing distribution of paths and determine probabilities of paths being the critical path. Aggregate sensitivities for cells are also determined.

Claims (215)

1. A method of determining timing characteristics of an electrical element, the method comprising:

determining sensitivity of the electrical element in response to a number of process parameters representing process variation wherein the determining the sensitivity of the electrical element includes determining for the number of process parameters correlations between process parameters and determining statistical variations of the process parameters;

determining criticality of a plurality of paths to the electrical element, the criticality of a path in the plurality of paths including a probability distribution for negative slack; and

calculating an aggregate sensitivity of the electrical element in response to the sensitivity of the electric element and the criticality of one or more paths in the plurality of paths, wherein calculating the aggregate sensitivity of the electrical element includes summing the sensitivity of the electrical element and the criticality of the one or more paths in the plurality of paths to the electrical element.

2. The method of claim 1 further comprising optimizing one or more gates to minimize slack based on the aggregate sensitivity of the electrical element.

3. The method of claim 1 wherein the determining the sensitivity of the electrical element includes determining the sensitivity of an arc to the process parameters.

4. The method of claim 1 wherein determining the sensitivity of the electrical element includes determining

γ

k

=

M

i

=

1

C

i

2

σ

i

2

+

2

·

M

i

=

1

M

j

=

i

+

1

ρ

ij

C

i

C

j

σ

i

σ

j

where M is the number of process parameters, C i is the sensitivity of an arc k to process parameter i in the number of process parameters, ρ ij is the correlation between the process parameter i and process parameter j, and σ i is the standard deviation of process parameter i;

wherein calculating the aggregate sensitivity of the electrical element includes calculating an aggregate sensitivity A G for electrical element G by

A

G

=

N

k

=

1

π

k

γ

k

where N is the number of paths through electrical element G, and π k is the criticality of path k.

5. A system for analyzing an electrical circuit comprising a plurality of electrical elements, the system comprising:

a processor for executing programs; and

a circuit analyzer executable by the processor, the circuit analyzer including:

instructions for determining sensitivity of the electrical element in response to a number of process parameters representing process variation wherein the instructions for determining the sensitivity of the electrical element include instructions for determining for the number of process parameters correlations between process parameters and instructions for determining statistical variations of the process parameters;

instructions for determining criticality of a plurality of paths to the electrical element, the criticality of a path in the plurality of paths including a probability distribution for negative slack; and

instructions for calculating an aggregate sensitivity of the electrical element in response to the sensitivity of the electrical element and the criticality of the plurality of paths, wherein the instructions for calculating the aggregate sensitivity of the electrical element include instructions for summing the sensitivity of the electrical element and the criticality of the one or more paths in the plurality of paths to the electrical element.

6. The system of claim 5 further comprising instructions for optimizing one or more gates to minimize slack based on the aggregate sensitivity.

7. The system of claim 5 wherein the instructions for determining the sensitivity of the electrical element includes instructions for determining the sensitivity of an arc to the process parameters.

8. The system of claim 5 wherein the instructions for determining the sensitivity of the electrical element includes instructions for determining

γ

k

=

M

i

=

1

C

i

2

σ

i

2

+

2

·

M

i

=

1

M

j

=

i

+

1

ρ

ij

C

i

C

j

σ

i

σ

j

where M is the number of process parameters, C i is the sensitivity of an arc k to process parameter i in the number of process parameters, ρ ij is the correlation between process parameter i and process parameter j, and σ i is the standard deviation of process parameter i;

wherein the instructions for calculating the aggregate sensitivity of the electrical element includes instructions for calculating an aggregate sensitivity A G for electrical element G by

A

G

=

N

k

=

1

π

k

γ

k

where N is the number of paths through electrical element G, and π k is the criticality of path k.

9. A computer program product for use in conjunction with a computer system, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism including:

instructions for determining sensitivity of the electrical element in response to a number of process parameters representing process variation wherein the instructions for determining the sensitivity of the electrical element include instructions for determining for the number of process parameters correlations between process parameters and instructions for determining statistical variations of the process parameters;

instructions for determining criticality of a plurality of paths to the electrical element, the criticality of a path in the plurality of paths including a probability distribution for negative slack; and

instructions for calculating an aggregate sensitivity of the electrical element in response to the sensitivity of the electrical element and the criticality of one or more paths in the plurality of paths, wherein the instructions for calculating the aggregate sensitivity of the electrical element include instructions for summing the sensitivity of the electrical element and the criticality of the one or more paths in the plurality of paths to the electrical element.

10. The computer program product of claim 9 further comprising instructions for optimizing one or more gates to minimize slack based on the aggregate sensitivity.

11. The computer program product of claim 9 wherein the instructions for determining the sensitivity of the electrical element includes instructions for determining the sensitivity of an arc to the process parameters.

12. The computer program product of claim 9 wherein the instructions for determining the sensitivity of the electrical element includes instructions for determining

γ

k

=

M

i

=

1

C

i

2

σ

i

2

+

2

·

M

i

=

1

M

j

=

i

+

1

ρ

ij

C

i

C

j

σ

i

σ

j

where M is the number of process parameters, C i is the sensitivity of an arc k to process parameter i in the number of process parameters, ρ ij is the correlation between process parameter i and process parameter j, and σ i is the standard deviation of process parameter i;

wherein the instructions for calculating the aggregate sensitivity of the electrical element includes instructions for calculating an aggregate sensitivity A G for electrical element G by

A

G

=

N

k

=

1

π

k

γ

k

where N is the number of paths through electrical element G, and π k is the criticality of path k.

Assignments (5)
CHANGE OF NAME Recorded Sep 2, 2020
From: MAGMA DESIGN AUTOMATION, INC.
To: MAGMA DESIGN AUTOMATION LLC
Reel/Frame 053669/0442 →
RELEASE OF SECURITY INTEREST Recorded Nov 11, 2016
From: WELLS FARGO CAPITAL FINANCE, LLC
To: SYNOPSYS, INC.
Reel/Frame 040607/0632 →
NUNC PRO TUNC ASSIGNMENT Recorded Oct 19, 2012
From: MAGMA DESIGN AUTOMATION LLC
To: SYNOPSYS, INC.
Reel/Frame 029161/0846 →
SECURITY AGREEMENT Recorded Mar 23, 2010
From: MAGMA DESIGN AUTOMATION, INC.
To: WELLS FARGO CAPITAL FINANCE, LLC
Reel/Frame 024120/0809 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2006
From: TUNCER, EMRE; NARDI, ALESSANDRA; NAIDU, SRINATH; ANTONAU, ALIAKSANDR
To: MAGMA DESIGN AUTOMATION, INC.
Reel/Frame 018389/0426 →