고성능 SoC(System-on-Chip) 내에서 CPU, 메모리, 주변장치(IP) 간의 데이터 전송을 빠르고 병렬적으로 수행하기 위해 설계된 인터커넥트 버스 규격


-> AHB와 비교했을때, Burst 기반의data 전송시, Burst 전송시 master가address생성해야하는 AHB에 비해
AXI는 master는start address만 생성,후속주소는 slave가 생성한다는 큰 특징이 존재!!
-> 주소 channel의data량이현격히줄어듦
Out-of-Order transaction 도입 : 순서대로 보내지 않아도 됨!!
| 항목 | 설명 |
|---|---|
| 데이터 전송 방식 | Address / Data / Response 채널 분리 (총 5채널) |
| 동작 방식 | Burst-based, Pipeline 가능 |
| 버스 구조 | Master-Slave 구조 |
| 동작 모드 | Read / Write 독립 처리 가능 (Full-duplex) |
| 버전 | AXI3, AXI4, AXI4-Lite, AXI4-Stream |
-> AXI는 기본적으로 5개의 독립 채널로 동작!
| 채널 이름 | 역할 | 방향 (Master → Slave 기준) |
|---|---|---|
| AW (Write Address) | 쓰기 주소 전송 | M → S |
| W (Write Data) | 쓰기 데이터 전송 | M → S |
| B (Write Response) | 쓰기 완료 응답 | S → M |
| AR (Read Address) | 읽기 주소 전송 | M → S |
| R (Read Data) | 읽기 데이터 + 응답 | S → M |

| 항목 | 설명 |
|---|---|
| 고성능 / 고속 | 파이프라인과 버스트 전송으로 높은 대역폭 제공 |
| 병렬 처리 | Read/Write 채널이 독립되어 동시 접근 가능 |
| 확장성 | 다양한 IP 연결 (CPU, DMA, DDR Controller 등)에 적합 |
| 표준화 | 대부분의 FPGA/SoC (Xilinx, ARM, Intel)에서 공식 지원 |
| 유연성 | 다양한 데이터폭 (32/64/128/256bit 등) 지원 |
| 핸드셰이크 구조 | VALID/READY 기반으로 동기화되어 안정적 전송 |
| 항목 | 설명 |
|---|---|
| 복잡한 구조 | 5채널, 여러 제어 신호로 설계가 복잡함 |
| 자원 소모 큼 | 단순한 제어용에는 불필요하게 많은 신호선 |
| 지연 시간 증가 가능 | 높은 유연성 → 타이밍 경로 길어질 수 있음 |
| 학습 난이도 높음 | APB, AHB보다 이해/디버깅이 어려움 |
-> 가장큰 단점은 속도가 낮은 디바이스가 데이터 준비에 시간이 걸리게 되면 그동안 버스는 계속 대기해야함...-> bus 독점현상 -> 전체적인 시스템의 속도가 느려짐...

| 종류 | 특징 | 주로 쓰이는 곳 |
|---|---|---|
| AXI4 (Full) | Burst 지원, 고성능 | CPU ↔ DDR Controller, DMA |
| AXI4-Lite | 단일 전송, 단순 제어 | 레지스터 제어, 주변장치 IP |
| AXI4-Stream | 주소 없음, 순차 데이터 스트림 | 영상/오디오/네트워크 데이터 전송 |
| AXI3 | 예전 버전, 일부 구형 IP | 구형 SoC 호환용 |







