Throughput Limits of Handshake Protocols
Four-phase handshakes guarantee safe data transfer across asynchronous clock domains but severely limit throughput due to round-trip synchronization latency.
A hardware block transfers a 32-bit data word from a transmitter domain operating at clk_tx (500 MHz) to a receiver domain operating at clk_rx (250 MHz). The protocol uses a standard four-phase handshake. The transmitter asserts REQ. The receiver synchronizes REQ through a 2-stage flip-flop synchronizer, then updates its state machine to assert ACK. The transmitter synchronizes ACK through its own 2-stage synchronizer, then updates its state machine to deassert REQ. Finally, the receiver synchronizes the deasserted REQ and deasserts ACK, completing the cycle.
Assume ideal phase alignment: every clock domain crossing requires exactly 2 destination clock cycles for synchronization, plus 1 destination clock cycle for the local state machine to register the synchronized signal and update its output.
Calculate the latency limits of this synchronization mechanism and determine the maximum data rate.
Constraints
clk_txoperates at 500 MHz (2 ns period).clk_rxoperates at 250 MHz (4 ns period).- Synchronization takes exactly 2 destination clock cycles.
- State machine updates take exactly 1 destination clock cycle.
Topics
Solve this problem
Place the gates, wire them up and watch the signals settle. Every submission runs on the same simulation engine that grades it.
This problem is part of Codiode Pro. The statement above is free to read.
The circuit builder and code editor need a desktop screen. On a phone, read the problem here and open it on a laptop to solve.