[CDC] 4_Multi Bit CDC: Handshake
·
VLSI/Design
이전 챕터에서는 2-FF Synchronizer, Pulse Stretching, Handshake, Toggle Synchronizer를 직접 설계하고 시뮬레이션을 통해 동작을 확인했다. 이번 챕터에서는 Multi-Bit CDC 방법 중 실무에서 가장 대표적으로 사용되는 Handshake 방식을 중심으로 살펴본다. Multi-Bit CDC에서 2-FF를 쓰면 안 되는 이유CDC의 핵심 목표를 다시 정리하면 다음 두 가지다.Metastability의 격리신호/데이터 전달의 무결성 보장2-FF Synchronizer는 이 중 메타안정성 완화만을 목적으로 한다. 즉, 메타안정 상태가 뒤쪽 로직으로 전파될 확률을 낮춰줄 뿐, 멀티비트 데이터의 무결성(coherence)이나 정합성(atomicity)은 전혀 보..
[CDC] 1_Single Bit CDC: 2-FF Synchronizer
·
VLSI/Design
2-FF Synchronizer CDC를 할 때, Single Bit냐 Multi Bit냐에 따라 방법이 달라진다. Single Bit 신호를 클락 도메인 간에 안전하게 전달하는 가장 일반적이고 기본적인 방법은 2-Flip-Flop Synchronizer를 사용하는 것이다. 이 방법은 수신 측 클럭 도메인에서 동작하는 두 개의 FF을 직렬로 연결하여 사용한다.첫 번째 플립플롭 (FF1): 송신 클럭 도메인의 데이터 신호를 수신 클럭의 첫 번째 엣지에서 포착하려고 시도한다.여기서 메타안정성이 발생할 수 있다. 데이터가 수신 클럭의 Setup/Hold 시간 창 내에서 변경되면 FF1의 출력(Q1)은 불안정한 상태에 빠진다.Q1이 불안정한 상태에 있더라도, 대부분의 경우 하나의 수신 클럭 주기 내에는 안정..