타이밍 분석과 CDC
500 MHz 클럭 도메인에서 1사이클(2 ns)만 1이 되는 펄스를 100 MHz 도메인으로 2단 동기화기를 통해 전달했습니다. 일어날 수 있는 문제로 올바른 것은?
- A수신 측에서 펄스가 5사이클분으로 늘어난다
- B펄스가 반드시 2번 캡처되어 2번의 이벤트로 취급된다
- C펄스가 수신 측 클럭의 에지 사이에 들어가 캡처되지 않고 사라지는 경우가 있다
정답과 해설 보기
정답: C. 펄스가 수신 측 클럭의 에지 사이에 들어가 캡처되지 않고 사라지는 경우가 있다
수신 측의 100 MHz 클럭은 10 ns마다만 에지가 있으므로, 2 ns 펄스는 에지와 에지 사이에서 시작해 끝나 버리는 경우가 많으며, 그 경우에는 전혀 캡처되지 않습니다. 동기화기는 메타스테빌리티로 인한 오동작 확률을 낮출 뿐, 짧은 펄스를 붙잡는 기능은 없으며 주파수 비에 맞춰 늘려 주지도 않습니다. 빠른 도메인에서 느린 도메인으로 펄스를 전달할 때는 펄스를 수신 측 주기보다 충분히 길게 늘리거나, 토글 동기화나 핸드셰이크를 사용합니다.