I/O 인터페이스와 버스
AXI의 각 채널에서 사용되는 VALID와 READY에 의한 주고받기(핸드셰이크)에서 데이터가 전달되는 것은 언제입니까?
- A송신 측의 VALID와 수신 측의 READY가 모두 1인 클록 에지
- B송신 측이 VALID를 1로 한 순간, READY와 관계없이
- C수신 측이 READY를 1로 한 순간, VALID와 관계없이
정답과 해설 보기
정답: A. 송신 측의 VALID와 수신 측의 READY가 모두 1인 클록 에지
송신 측은 유효한 데이터가 있을 때 VALID를 1로 하고, 수신 측은 받을 수 있을 때 READY를 1로 합니다. 클록 에지에서 둘 다 1이면 전달이 성립합니다. 수신 측이 바쁠 때는 READY를 0으로 하여 송신 측을 기다리게 할 수 있으므로(백프레셔), 속도가 다른 블록끼리도 데이터를 잃지 않고 연결할 수 있습니다. 송신 측은 READY를 기다리지 않고 VALID를 내보내는 규칙이 있어, 서로 기다리다 멈추는 상태를 방지합니다.
- A. 올바릅니다. 양쪽이 갖추어졌을 때만 전달합니다.
- B. 수신 측이 준비되지 않으면 받을 수 없습니다.
- C. 송신 측의 데이터가 유효하지 않으면 의미가 없습니다.