Timing analysis and CDC

To pass a level signal reliably from a 400 MHz domain to a 100 MHz domain through a synchronizer, the signal width should be at least 1.5 times the receiving clock period. What is the minimum width in sending-clock cycles?

  1. A4 cycles
  2. B6 cycles
  3. C15 cycles
Show answer and explanation

Answer: B. 6 cycles

The receiving period is 1 ÷ 100 MHz = 10 ns, and 1.5 times that is 15 ns. The sending period is 1 ÷ 400 MHz = 2.5 ns, so a width of at least 15 ÷ 2.5 = 6 cycles is needed. 4 cycles (10 ns) is exactly one receiving period; if both the start and end of the signal fall right at edges, both captures can fail and the signal can be missed. With 1.5 times, there is always at least one edge that captures a stable value. 15 cycles confuses ns with cycles.

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. In toggle synchronization (a scheme in which the sending side generates and passes a level signal that inverts each time a pulse arrives), how is the original pulse recovered on the receiving side?
  2. What constraint applies when passing pulses from a fast clock domain to a slow one with toggle synchronization?
  3. In a four-phase handshake using req and ack, what is the correct signal sequence for passing one data item?
  4. Which is a drawback of transferring data between clock domains with a handshake?
  5. Why are the write and read pointers of an asynchronous FIFO converted to Gray code before being synchronized into the other domain?