Timing analysis and CDC
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)?
- A51 words
- B64 words
- C13 words
Show answer and explanation
Answer: C. 13 words
Writing 64 words takes 64 × 4 ns = 256 ns, during which 256 ÷ 5 ns = 51.2 words' worth can be read. The remainder is 64 − 51.2 = 12.8 words, so rounding up, 13 words are needed. 51 words is the amount that can be read, and 64 words is the value for buffering the entire burst, which is enough but not the minimum. In actual designs, margin for pointer synchronization delay is added and the depth is rounded up to a power of two such as 16 words, which suits Gray code pointers.