1.3 Synchronous vs. Asynchronous Operation
The UTMR module is designed to operate completely isolated from the main system which simplifies the timing, especially when running off of an external clock. The timer being isolated means that any input or output signal or command needs to be synchronized to the timer domain. This synchronization is controlled by the CSYNC bit.
When the CSYNC bit is cleared, all input signals and commands are fed
directly into the timer module, and all output signals go to the system domain
immediately. There is no synchronization delay because the signals are registered
immediately. If the edge of the input signal or command occurs too close to the active
clock edge, a clock collision may occur and there is a chance that the input signal or
command will be missed. To avoid this, consider setting CSYNC = 1
to
synchronize the signals. Use of CSYNC = 0
is only recommended when the
clock is non-continuous (like push button, or a counter) and it is expected that the
clock and ERS edges won’t collide.