Timing analysis and CDC

With a 1.0 ns clock, flip-flops are connected A→B→C. A→B needs 1.2 ns including clock-to-output delay and setup time, while 0.8 ns is enough for B→C. To meet setup on both by intentionally using skew, what should be done to B's clock (assume the clocks of A and C arrive at the same time)?

  1. AAdvance it by 0.2 ns
  2. BDelay it by 0.4 ns
  3. CDelay it by 0.2 ns
Show answer and explanation

Answer: C. Delay it by 0.2 ns

Delaying B's clock by 0.2 ns delays capture on A→B, giving it 1.0 + 0.2 = 1.2 ns. On B→C, launch is delayed, leaving 1.0 − 0.2 = 0.8 ns, but only 0.8 ns is needed, so this is enough. Skew introduced intentionally like this is called useful skew. Delaying by 0.4 ns leaves B→C only 0.6 ns, a violation, and advancing the clock makes A→B even tighter. Whenever skew is changed, hold must also be checked.

Practice this topic Back to topic

Books on Timing analysis and CDC Ad

As an Amazon Associate I earn from qualifying purchases.

More Timing analysis and CDC questions

  1. When a clock is divided by two with a divider circuit and used for another circuit, how should it be handled in SDC?
  2. In a flip-flop with asynchronous reset, which STA check examines whether reset deassertion is too close to a clock edge?
  3. Which path between two clock domains requires a synchronizer?
  4. How does the mean time between failures (MTBF) due to metastability change when a two-flip-flop synchronizer is extended to three stages?
  5. Raising the clock frequency on the receiving side of a synchronizer shortens MTBF. Why?