Electronic – Simple questions about synchronizer

flipflopsynchronization

1) For table 1 of Berkeley paper , why "Input must be valid for at least two clock periods in the new domain." ?

The explanation:

the width of the input pulse must be greater than the period of the synchronizer clock plus the required hold time of the first synchronizer flip-flop. The safest pulse width is twice the synchronizer clock period.

Could anyone tell why it has to do with hold time of the first synchronizer flip-flop ?

2) For pulse synchronizer or what we known as toggle synchronizer, I do not understand the explanation highlighted in yellow that is given below:

One restriction of a pulse synchronizer is that input pulses must have a minimum spacing between pulses equal to two synchronizer clock periods.

This problem is more severe when the clock period of input pulse is greater than twice the synchronizer clock period

pulse synchronizer

Best Answer

The input signal needs to be stable in order to avoid issues with meta stability. Consider the timing diagram taken from this article: meta stability C1 and A are in your source clock domain and C2 and B are in your destination clock domain. If the clock edges violate the timing constraints, the B flip-flop may not detect the high A input. If A changes before the next C2 edge, the high A signal will be missed. This is why you need to hold A stable for two clock periods.