Timing analysis and CDC

The write side writes a 120-word burst at one word per cycle at 200 MHz. The read side, on a 150 MHz clock, reads one word in only 2 out of every 3 cycles. What is the minimum depth needed to avoid overflow (ignore synchronization delay)?

  1. A30 words
  2. B60 words
  3. C40 words
Show answer and explanation

Answer: B. 60 words

Writing 120 words takes 120 × 5 ns = 600 ns. The read side's effective rate is 150 MHz × 2/3 = 100 million words per second, so 60 words can be read in 600 ns. The maximum that accumulates in the FIFO is therefore 120 − 60 = 60 words. 30 words is calculated at the full 150 MHz as if the read side could read every cycle (90 words in 600 ns), and 40 words simply takes one third of the burst. The key is to compare effective rates including idle cycles, not clock frequencies.

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. The write side runs at 250 MHz and the read side at 200 MHz, both transferring one word per cycle. What is the minimum calculated depth for a FIFO receiving a 64-word burst (ignore synchronization delay and round up fractions)?
  2. Which is the correct structure of a reset synchronizer that generates, from an active-low external reset, an internal reset that is "asserted asynchronously and deasserted synchronously"?
  3. Two control signals from the same sending domain are each received through a separate two-stage synchronizer and ANDed on the receiving side. What is the problem with this design?
  4. Why is checking with a CDC verification tool considered necessary even when STA and RTL simulation have been done?
  5. Why can it be a problem to leave the paths that carry an asynchronous FIFO's Gray code pointers to the other domain unconstrained (false path) just because they are asynchronous?