We describe a simple self-stabilizing point-to-point communication protocol for multi-synchronous GALS (globally asynchronous locally synchronous) systems. Its implementation is based on a ring buffer, which compensates for the clock deviations of sender and receiver. Read and write pointers separated by a suitable offset facilitate metastability-free operation without the need for synchronizers. We conduct a detailed analysis of the required buffer size and offset, which allows to tailor the protocol to given clock parameters like frequency bounds and synchronization precision. Simulation results obtained by means of a VHDL implementation of our approach prove its practical feasibility.
展开▼