Browse Prior Art Database

Timing Analysis Using Slack Stealing

IP.com Disclosure Number: IPCOM000120121D
Original Publication Date: 1991-Mar-01
Included in the Prior Art Database: 2005-Apr-02
Document File: 2 page(s) / 59K

Publishing Venue

IBM

Related People

Goetz, JW: AUTHOR [+2]

Abstract

A very accurate timing analysis of single latch logic designs (as opposed to master-slave designs) is accomplished using static timing tools and iteratively accounting for cycle or slack stealing. Slack stealing is a technique that recognizes when a small path delay on one side of a latch can overcome a long path delay on the other side. This new technique avoids falsely reporting performance problems in good designs.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 62% of the total text.

Timing Analysis Using Slack Stealing

      A very accurate timing analysis of single latch logic
designs (as opposed to master-slave designs) is accomplished using
static timing tools and iteratively accounting for cycle or slack
stealing.  Slack stealing is a technique that recognizes when a small
path delay on one side of a latch can overcome a long path delay on
the other side.  This new technique avoids falsely reporting
performance problems in good designs.

      First, a possible range of timing constraint values (Tcl to
Tct, where Tcl = leading edge clock time and Tct = trailing edge
clock time) is determined for all latches. Next, a timing constraint
(Tx) is initialized for each latch at the center of an active clock
window, i.e., Tx = Tcl + (Tct-Tcl)/2.  Then, all latches are sorted
into a minimum number of groups such that no latch in any group feeds
another latch in the same group.  Then, for each group of latches,
timing analysis is performed to find slack times Tsi and Tso, where
Tsi = latch input slack time and Tso = latch output slack time.  At
each latch in the group, constraints are reset such that slack at the
latch input and output are equal, i.e., Tx = Min(Tct, Max{Tcl, Tx +
(Tsi - Tso)/2}).  If all slack times in the design are positive,
meaning the signal met its arrival goal or constraint, testing is
exited since no timing problems remain.  If the maximum amount by
which any slack was changed exceeds some predetermined threshold,
testi...