Timing analysis and CDC
Two control signals from the same sending domain are each received through a separate two-stage synchronizer and ANDed on the receiving side. What is the problem with this design?
- AMetastability is amplified through the AND gate, and the entire receiving circuit remains unstable
- BTwo signals that changed simultaneously on the sending side may appear one cycle apart on the receiving side, producing a combination that should be impossible
- CThe two signals are always aligned to the same cycle on the receiving side, so no problem occurs
Show answer and explanation
Answer: B. Two signals that changed simultaneously on the sending side may appear one cycle apart on the receiving side, producing a combination that should be impossible
Separately synchronized signals merging again on the receiving side is called reconvergence. Even if the two signals change simultaneously on the sending side, whether each synchronizer resolves to the old or new value is independent, so a cycle in which only one of them has changed can occur on the receiving side. For example, if the two change 0→1 and 1→0 simultaneously, the AND should be 0 both before and after, yet a 1 can appear for one cycle. The remedies are to synchronize them as a single signal and then split it, or to use an encoding in which only one bit changes, such as Gray code.