타이밍 분석과 CDC
쓰기 측 250 MHz, 읽기 측 200 MHz이며 둘 다 매 사이클 1워드씩 전송합니다. 64워드의 버스트를 받는 FIFO에 계산상 필요한 최소 깊이는 얼마입니까(동기화로 인한 지연은 무시하고, 소수점 이하는 올림합니다)?
- A51워드
- B64워드
- C13워드
정답과 해설 보기
정답: C. 13워드
64워드를 쓰는 데 걸리는 시간은 64 × 4 ns = 256 ns이고, 그동안 읽을 수 있는 것은 256 ÷ 5 ns = 51.2워드분입니다. 남는 양은 64 − 51.2 = 12.8워드이므로 올림하여 13워드가 필요합니다. 51워드는 읽을 수 있는 양 쪽을 답한 값, 64워드는 버스트를 통째로 저장하는 경우의 값으로, 충분하기는 하지만 최소는 아닙니다. 실제 설계에서는 포인터 동기화 지연분을 더하고, 그레이 코드 포인터를 쓰기 쉬운 2의 거듭제곱인 16워드 등으로 올립니다.