타이밍 분석과 CDC

500 MHz 클럭 도메인에서 1사이클(2 ns)만 1이 되는 펄스를 100 MHz 도메인으로 2단 동기화기를 통해 전달했습니다. 일어날 수 있는 문제로 올바른 것은?

  1. A수신 측에서 펄스가 5사이클분으로 늘어난다
  2. B펄스가 반드시 2번 캡처되어 2번의 이벤트로 취급된다
  3. C펄스가 수신 측 클럭의 에지 사이에 들어가 캡처되지 않고 사라지는 경우가 있다
정답과 해설 보기

정답: C. 펄스가 수신 측 클럭의 에지 사이에 들어가 캡처되지 않고 사라지는 경우가 있다

수신 측의 100 MHz 클럭은 10 ns마다만 에지가 있으므로, 2 ns 펄스는 에지와 에지 사이에서 시작해 끝나 버리는 경우가 많으며, 그 경우에는 전혀 캡처되지 않습니다. 동기화기는 메타스테빌리티로 인한 오동작 확률을 낮출 뿐, 짧은 펄스를 붙잡는 기능은 없으며 주파수 비에 맞춰 늘려 주지도 않습니다. 빠른 도메인에서 느린 도메인으로 펄스를 전달할 때는 펄스를 수신 측 주기보다 충분히 길게 늘리거나, 토글 동기화나 핸드셰이크를 사용합니다.

이 분야 연습하기 분야로 돌아가기

타이밍 분석과 CDC의 다른 문제

  1. 400 MHz 도메인에서 100 MHz 도메인으로 레벨 신호를 동기화기로 확실하게 전달하기 위해, 신호 폭을 수신 측 클럭 주기의 1.5배 이상으로 하려고 합니다. 송신 측 클럭으로 최소 몇 사이클의 폭으로 하면 됩니까?
  2. 토글 동기화(송신 측에서 펄스가 올 때마다 반전하는 레벨 신호를 만들어 전달하는 방식)에서 수신 측이 원래 펄스를 복원하는 방법으로 올바른 것은?
  3. 토글 동기화로 펄스를 빠른 클럭 도메인에서 느린 클럭 도메인으로 전달할 때의 제약으로 올바른 것은?
  4. req와 ack를 사용하는 4상 핸드셰이크로 데이터 하나를 전달할 때의 신호 순서로 올바른 것은?
  5. 핸드셰이크를 이용한 클럭 도메인 간 데이터 전송의 단점으로 올바른 것은?