AMBA(Advanced Microcontroller BUS Architecture) bus
APB, ASB, AHB, AXI, AXI-Stread 등 목적에 따라 구분된 버스들이 있음
AMBA AXI4 bus
5개의 독립적인 채널로 구성되며 각 채널은 AW, W, B, AR R로 시작하는 신호 이름으로 구분
- AW 채널 : 쓰기 주소 전송
- W 채널 : 쓰기 데이터 전송
- B 채널 : 쓰기 결과 전송
- AR 채널 : 읽기 주소 전송
- R채널 : 읽기 데이터 전송
공용 신호로 클럭(ACLK)와 초기화(ARESETn)
- ARESETn: 신호가 낮은 전압으로 구동할 때(통상 로직 0) 초기화
- ACLK: 버스 동작 기준 클럭이며 모든 버스 동작은 Rising edge에 동기
AMBA AXI4 bus채널 프로토콜
vaild와 ready신호 사용(dual-ready protocol)
- valid: 정보 전송 블록에서 전송할 정보가 준비되면 1로 구동
- ready: 정보 수신 블록에서 정보를 수신할 수 있는 경우 1로 구동
- valid와 ready신호 모두 1인경우 전송 완료
deadlock 방지 필요
- 정보를 전송할 블록에서는 ready신호에 무관하게 valid 신호를 구동
- 정보를 수신할 블록에서는 valid 신호에 무관하게 ready신호를 구동
AMBA AXI bus
- 다수의 버스 마스터와 다수의 버스 슬레이브를 지원
- 중재기와 디코더가 내부에 구현되어야 함
- 아래쪽 블록도는 AMBA AXI 버스 구현의 한 예
- 아래쪽 블록도에서 M2S에 디코더와 중재기가 필요
- 지정되지 않은 주소 영역을 참조할 경우 디코더 오류를 응답할 기본 슬레이브(default slave)가 내부에 구현되어야 함
AMBA AXI bus 특징
버스터 전송
- 시작 주소를 한번만 보내고
- 연속된 데이터 전송이 진행
Multiple outstanding
- 전송이 완료되기 전에도 새로운 전송을 요청할 수 있음
out of order completion
- 전송 요청 순서와 무관하게 완료될 수 있음
out of order completion of Multiple outstanding
- 연속된 여러 전송이 요청 순서와 다르게 완료되는 경우 전송 요청 블록에서 데이터를 읽거나 쓰는 요청을 하는 경우 구별자(ID)를 사용
AMBA AXI read transcation
1) 버스 마스터가 읽기 할 주소와 구별자를 버스를 통해 전송
2) 버스에서 주소 디코딩을 통해 슬레이브 선택
3) 슬레이브에서 읽기 데이터 준비하여 회신
4) 읽기 데이터와 응답 그리고 ID 전송
5) ID로 요청 마스터로 읽기 데이터와 응답을 전송
early termination은 허용되지 않음
AMBA AXI write transcation
1),2) 버스 마스터가 쓰기 할 주소와 ID 그리고 데이터를 버스를 통해 전송
3) 버스에서 주소 디코딩을 통해 슬레이브 선택
4) 슬레이브에서 write 데이터 처리
5) write response(ready, valid) 그리고 ID 전송
6) ID로 요청 마스터로 읽기 데이터와 response 전송
'AI System Semiconductor' 카테고리의 다른 글
13.2 디지털 회로 가속 설계(파이프라이닝, FIR(Finite impulse resonse)) (0) | 2025.01.14 |
---|---|
13.1 정적 타이밍 분석(STA), 동적 규율(Dynamic Discipline) (0) | 2025.01.14 |
12.4. AES암호 하드웨어 설계 (0) | 2025.01.10 |
12.2 Security Chip 주요 요소 기술 (0) | 2025.01.10 |
11.1 Hardware Security IP (0) | 2025.01.10 |