Patent ID: 8615673

Claim:
A method for maintaining synchronization among a plurality of devices using clocks, wherein the plurality of devices operate together for a plurality of iterations in an iterative looped manner, comprising: each device establishing a clock based on a common signal, wherein the clock does not pause, and wherein each clock has a constant relationship with each other clock over time; each device rounding a first step time of a first step of a first iteration to one of two first nearest clock cycles, wherein the first step time does not occur on either of the two first nearest clock cycles, and wherein the first step time specifies an end of the first step; upon reaching the one of the two first nearest clock cycles, each device performing a respective action in a synchronized manner with respect to the other devices; over one or more additional steps of the first iteration, each device rounding a respective step time for each of the one or more additional steps to remove rounding error, wherein said rounding the respective step time is performed dynamically during run time; and upon reaching the end of a step, each device performing a respective action in a synchronized manner with respect to the other devices.