IP PortfolioSoC interconnectclock domain crossing

of_sync_bus

Multi-bit bus synchronizer (handshake)

Maturity fpga-routedTargets FPGA + ASICDifficulty MediumPriority 1

Transfers WIDTH-bit words between asynchronous clock domains with valid/ready on both sides. The word is held in a source register while a four-phase handshake (of_sync_handshake) crosses, and is captured in the destination only after it has been stable for several destination cycles.

FPGA-routed. The block meets timing on a routed FPGA netlist at a stated clock and its testbench passes on that netlist. It has not yet run on a board or in silicon.

Interfaces

PortDirectionKindWidthNotes
s_ininvalid-qualified bus32 
m_outoutvalid-qualified bus32 
src_clkinclock1 

Standards

No external standard applies.

More in clock domain crossing

IDBlockMaturity
of_sync_bitMulti-flop bit synchronizerfpga-routed
of_sync_handshakeFour-phase req/ack handshake synchronizersimulated
of_sync_pulseToggle pulse synchronizersimulated
of_sync_resetReset synchronizersimulated