https://chanfifo77.tistory.com/63

 

[Verilog] 13. AXI(Advanced eXtensible Interface)

AXI (Advanced eXtensible Interface) Master Interface와 Slave Interfacesms R/W 동작으로 연결됩니다. Read Operation 부분은 Write와 다르게 Reponse Channel이 존재하지 않는 모습을 확인 할 수 있습니다. 각각의 Channel은

chanfifo77.tistory.com

위 AXI 동작을 보고 오셔도 좋습니다.

 

 

https://chanfifo77.tistory.com/64

 

[Verilog] 14. AXI Read / Handshake

오늘은 AXI Read 동작과 Handshake 동작에 대한 부분을 알아보겠습니다. 먼저 Simulation Pulse를 확인하고 Read Operation과 Handshake에 대해 알아보도록 하겠습니다. Valid-Ready Handshake Valid와 Ready는 Handshake Sig

chanfifo77.tistory.com

 

위 포스팅에서 Handshake Operation에 대해서 보고오시면 좋습니다!

 

 


AXI Lite

 

AXI-Lite는 AXI의 간소화 버전입니다. 

 

 

AXI Slave 단은 이렇게 Master와 연결 되어있습니다. 참 복잡해보이죠.

하나 하나 보겠습니다.

 

일단 Lane을 나누는 기준을 Handshake Operation으로 보았습니다.

Valid <--> Ready 동작을 기준으로 나누어서, 

1) ADDR Write

2) DATA Write

+) Response

3) ADDR Read

4) DATA Read

이렇게 5개의 단으로 나눌 수 있습니다.

하지만 Response는 모든 Write 동작마다 동작하기 때문에 Response를 제외한 나머지 동작들을 하나씩 살펴보겠습니다.

 

 

 


1. ADDR_WRITE

 

먼저 위 그림에서 첫번쨰 줄에서 ADDR WRITE가 이루어집니다.

1. Master가 WRITE할 Address를 준비합니다.

2. Handshake 동작 한 후 Adderss가 Slave로 전송됩니다. 

3. 값을 받으면 Response 값을 Master로 전송합니다.

4. Master가 Protection 값을 보낼 준비를 합니다.

5. Handshake 동작 한 후에 PROT가 Slave로 전송됩니다.

6. 값을 받으면 Response 값을 Master로 전송합니다.

 

 


2. DATA_WRITE

 

이번에는 그림에서 가운데 줄에서 DATA WRITE가 이루어집니다.

1. Master가 WRITE할 DATA를 준비하고, 유효한 DATA를 확인합니다.

2. Handshake 동작 한 후 STRB(strobe)가 Slave로 전송됩니다. 

3. Response 값 Master로 전송합니다.

4. Master가 DATA 값을 보낼 준비를 합니다.

5. Handshake 동작 한 후에 DATA가 Slave로 전송됩니다.

6. Response 값 Master로 전송합니다.

 


3. ADDR_READ

 

ADDR READ는 

1) Master가 보낼 ADDR을 준비합니다.

2) Handshake 동작 후, ADDR이 Slave로 전송됩니다.

 

 


4. DATA_READ

3. ADDR_READ 동작이 끝난 후에

 

1) Slave가 보낼 DATA를 준비합니다.

2) HandShake 동작 후, DATA를 Master에게 전송합니다.

3) (그림에는 없지만) DATA가 잘 전달 되면, Master가 RESP 신호를 Slave에게 전송합니다.

 

오늘은 AXI-Lite 동작에 대해서 알아보았습니다.