15.01.2013 Views

U. Glaeser

U. Glaeser

U. Glaeser

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

FIGURE 10.37 Time borrowing for single-phase, latch-based design.<br />

also design complexity and verification effort. Because of these reasons, single latch-based designs are<br />

rarely used in practice.<br />

Notice that the latch setup time is not part of Eq. (10.5). Consequently, it can be concluded that the<br />

setup time does not affect the timing of a latch-based design (although the latency of the latch does).<br />

This is true except when time borrowing is applied. This is the subject of the next subsection.<br />

Time Borrowing<br />

Time borrowing is the most important aspect of a latch-based design. So far it has been said that in a<br />

latch-based design critical signals should not be blocked, and that the max-timing constraint is given by<br />

Eq. (10.2); however, depending on the latch placement, the nonblocking requirement can still be satisfied<br />

even if Eq. (10.2) is not. Figure 10.37 illustrates such a case. With reference to the model in Fig. 10.33,<br />

input D1 is assumed to be blocked. So the transition of Q1 happens a CK-to-Q delay after clock (TCKQ) and starts propagating through the max path. As long as D′ 1 arrives to the receiving latch before the setup<br />

time, the D-to-Q transition is guaranteed to be nonblocking. In this way, the propagation of D′ 1 is allowed<br />

to “borrow” time into the next clock cycle without causing a timing failure.<br />

The maximum time that can be borrowed is determined by the setup time of the receiving latch. The<br />

timing requirement for such condition is formulated as follows:<br />

and rearranged as:<br />

© 2002 by CRC Press LLC<br />

CK<br />

D1 Q1 D 1 ′<br />

Q 1 ′<br />

Transparent<br />

T CKQ<br />

T CYC<br />

(10.6)<br />

(10.7)<br />

By subtracting Eq. (10.2) from Eq. (10.7), the maximum amount of time borrowing, T borrow, can be<br />

derived and it is given by<br />

Assuming that T CKQ ≈ T DQ, Eq. (10.8) reduces to<br />

Opaque<br />

Transparent<br />

TSETUP (10.8)<br />

(10.9)<br />

So the maximum time that can be borrowed from the next clock cycle is approximately equal to the<br />

length of the transparent period minus the latch setup time.<br />

Because time borrowing allows signal propagation across a clock cycle boundary, timing constraints<br />

are no longer limited to a single pipeline stage. Using the timing diagram of Fig. 10.37 as a reference,<br />

T MAX<br />

TCKQ + Tmax < TCYC + TON – Tsetup T ON<br />

Tmax < TCYC + TON – ( Tsetup + TCKQ) Tborrow = TON – ( Tsetup + TCKQ) + TDQ Tborrow =<br />

TON – Tsetup T DQ

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!