15.01.2013 Views

U. Glaeser

U. Glaeser

U. Glaeser

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

FIGURE 10.51<br />

FIGURE 10.52<br />

Max-timing<br />

Pulsed latches are meant to be used as one per pipeline stage, as mentioned earlier, so the pipeline overhead<br />

is limited to only one latch delay (see Eq. (10.2)). This is half the overhead of a dual-phase, latch-based<br />

design. Furthermore, logic partitioning is similar to a flip-flop-based design, simplifying clock distribution.<br />

Time Borrowing<br />

Although still possible, the amount of time borrowing is greatly reduced when using pulsed latches. From<br />

Eq. (10.14), Tborrow<br />

= TON<br />

− ( Tsetup<br />

+ Tskew).<br />

If TON<br />

is chosen such that TON<br />

= Tsetup<br />

+ Tskew,<br />

then time borrowing<br />

is reduced to zero; however, the clock skew can still be hidden by the latch, i.e., it is not subtracted from<br />

the clock cycle for max-timing.<br />

Min-timing<br />

This is the biggest challenge designers face when using pulsed latches. As shown by Eq. (10.16), the<br />

minimum propagation delay in a latch-based system is given by Tmin<br />

> Thold<br />

− TCKQ<br />

+ TON<br />

+ Tskew.<br />

Ideally,<br />

to minimize min-timing problems, TON<br />

should be as small as possible. However, if it becomes too small,<br />

the borrowing time may become negative (see above), meaning that some of the clock skew gets subtracted<br />

from the cycle time for max-timing. Again, this represent another trade-off that designer must face when<br />

selecting a latching strategy. In general, it is good practice to minimize min-timing at the expense of<br />

max-timing. Although max-timing failures affect the speed distribution of functional parts, min-timing<br />

failures are in most cases fatal.<br />

From a timing analyzer perspective, pulsed latches can be treated as flip-flops. For instance, by redefining<br />

T ′<br />

hold = Thold<br />

+ TON,<br />

min-timing constraints look identical in both cases (see Eqs. (10.16) and<br />

(10.21)). Also, time borrowing in practice is rather limited with pulsed latches, so the same timing tools<br />

and methodology used for analyzing flip-flop based designs can be applied.<br />

Last but not least, it is important to mention that designs need not to adhere to one latch or clocking<br />

style only. For instance, latches and flip-flops can be intermixed in the same design. Or single and dualphase<br />

latches can be combined also, as depicted in Fig. 10.52. Here, pulsed latches are utilized in max<br />

paths in order to minimize the pipeline overhead, while dual-phase latches are used in min paths to<br />

eliminate, or minimize, min-timing problems. In this example, the combination of transparent-high and<br />

transparent-low pulsed latches works as a dual-phase nonoverlapping design. Clearly, such combinations<br />

require a good understanding of the timing constraints of latches and flip-flops not only by designers<br />

but also by the adopted timing tools, to ensure that timing verification of the design is done correctly.<br />

© 2002 by CRC Press LLC<br />

D 1<br />

D 2<br />

Q 1<br />

Q 2<br />

Pulsed latch-based design.<br />

D 1<br />

D 2<br />

Max Path<br />

Min Path<br />

Pulsed latch-based design combining single- and dual-pulsed latches.<br />

D 1 ′<br />

D 2 ′<br />

CK CK<br />

Q 1<br />

Q2 Min Path<br />

Max Path<br />

Min Path<br />

D 1′<br />

D 2 ′<br />

CK CK<br />

CK<br />

Q 1 ′<br />

Q 2 ′<br />

Q 1 ′<br />

Q 2 ′

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

Saved successfully!

Ooh no, something went wrong!