본문 바로가기
Processor & SoC

AMBA AXI - Handshake

by jae_walker 2021. 2. 14.

기본적으로 각 channel은 Valid/Ready interface로 동작한다.

 

Transfer와 Transaction의 차이?

- Transfer : a single exchange of information, with one VALID and READY handshake

- Transaction : an entire burst of transfers, containing an address transfer, one or more data transfers, and, for write sequences, a response transfer.

 

Deadlock과 Handshake

  • A source cannot wait for READY to be asserted before asserting VALID.
  • A destination can wait for VALID to be asserted before asserting READY.

Deadlock 방지를 위해서 기본적으로 주인님은 노예의 상태 (ready)를 신경 쓰지 않고 자신이 tranfer를 원할 때 valid를 보낸다. destination (slave)는 주인님의 오더를 보고 ready를 assert할 수 있다. 이 경우, master가 valid를 보냈을 때 ready가 assert 되어 있지 않은 경우 transfer를 어떻게 마무리할 지에 대한 protocol이 필요하다. 예를 들어, valid와 data가 갔는데 ready가 떨어져 있는 경우에는 slave가 받을 때 까지 동작을 멈추고 기다리도록 약속할 수도 있고, 그냥 버릴 수도... 아니면 ready가 절대

'Processor & SoC' 카테고리의 다른 글

마이크로프로세서  (0) 2017.12.30