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.48 Complementary dual-phase, latch-based design.<br />

guaranteed to work correctly at some lower than nominal frequency, even in the event that unexpected<br />

min-timing violations are discovered on silicon. This is the most important characteristic of this type of<br />

latching design, and the main reason why such designs were so popular before automated timing verification<br />

became more sophisticated.<br />

Although min-timing constraints are greatly reduced in a two-phase, nonoverlapping latch-based<br />

design, designers should be aware that the introduction of an additional latch per stage results in twice<br />

as many potential min-timing races that need to be checked in contrast to a single latch design. This<br />

becomes a more relevant issue in a two-phase, complementary latch-based design, as discussed next.<br />

Complementary Dual-Phase, Latch-Based Design<br />

A two-phase, complementary latch-based design (Fig. 10.48) is a special case of the generic nonoverlapping<br />

design, where clock CKA is a 50% duty cycle clock, and clock CKB is complementary to CKA. In such a<br />

design, the nonoverlapping time between the clock phases is zero. The main advantage of this approach<br />

is the simplicity of the clock generation and distribution. In most practical designs, only one clock phase<br />

needs to be globally distributed to all sub-units, generating the complementary clock phase locally.<br />

Max-timing<br />

Similar to a nonoverlapping design, the maximum propagation delay is given by Eq. (10.17), and it is<br />

unaffected by the clock skew. The pipeline overhead is 2T DQ.<br />

Time Borrowing<br />

Time borrowing is similar to a single-phase latch, except that T ON is half clock cycle. Therefore, maximum<br />

time borrowing is given by<br />

So complementary clocks maximizes time borrowing.<br />

© 2002 by CRC Press LLC<br />

Sending<br />

Latch<br />

D1 Q Max Path<br />

1<br />

Middle<br />

Receiving<br />

Latch<br />

Latch<br />

D1 ′ Q1 ′ Max Path D1 ″ Q1 ″<br />

D2 Q2 D2 ′ Q1 ′ D2 ″ Q2 ″<br />

Min Path<br />

Min Path<br />

CK<br />

CK<br />

Tborrow = TCYC/2 – ( Tsetup + Tskew) (10.20)<br />

Min-timing<br />

The min-timing requirement is similar to the nonoverlapping scheme, except that T NOV is zero. Therefore,<br />

Tmin ><br />

Thold – TCKQ + Tskew (10.21)<br />

The simplification of the clocking scheme comes at a price though. Although Eq. (10.21) is less stringent<br />

than Eq. (10.16) (no T ON in it), it is not as good as Eq. (10.19). Furthermore, a min-timing failure in<br />

such a design cannot be fixed by slowing down the clock frequency, making silicon debugging in such a<br />

situation more challenging. This is a clear example of a design trade-off that designers must face when<br />

picking a latching and clocking scheme.<br />

The next section discusses how a latch-based design using complementary clock phases can be further<br />

transformed into a edge-triggered-based design.<br />

Edge-Triggered, Flip-Flop-Based Design<br />

The major drawback of a single-phase latch based design is min-timing. The introduction of dual-phaselatch-based<br />

designs greatly reduces the risk of min-timing failure; however, from a physical implementation<br />

perspective, the insertion of a latch in the middle of a pipeline stage is not free of cost. Each<br />

CK

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

Saved successfully!

Ooh no, something went wrong!