add ip --> gpio 검색 (sw, led)
wdata -->32비트를 한번에 옮길수있다.
Offset 알아보기
방향설정
input,output 어떻게 설정해야하는지 문서를 보고 알아가지고와
AMBA BUS의 주요 매커니즘
W 시그널과 W 데이터주소 같이 공존 --> 왜? 나읽을게 하고 시그널주고 읽어감
R 시그널과 R 데이터주소 같이공존 -->왜 ? ''
MASTER --> CORE
SLAVE --> ax_gpio
slave가 master를 부를수있는경우 --> interupt !!
0x41200_0000 ~ 0x41200_0004 -->GPIO_DATA영역
1이 증가하는것은 8bit가 증가하는거나 다름없음
GPIO_DATA영역이 0~4이므로 할당된 비트는 32비트
channel 1 --> led
0x4120_0004 --> a
a & ~0x04 -->output으로 바꿈
어떤주소에 어떤값을 쓰면 gpio가 input이 되고 output이되는지 써져있음
channel 2개
base adress
보드에 있는 Push btn 연결해서
Push btn을 누르는 동안 led에 불이 들어오게 만들어봐 --> custom해서 비트를 늘리고 xdc파일 추가
gpio input, output 2개
핀 32개 총 64개 컨트롤 가능
---------------------------------
pdf 11장 공부
11 - 4 중요
A pplication
R eal time
M icrocontroller
11 - 4
processing System
i/o mux --> 특정핀을 정해서 쓰는게 아니라 핀한개가 여러기능을 할수있고, 사용자가 핀에 기능을 넣어주면 mux를 통해서 만들어줄수가 있음
static Memory Controller --> flash memory 탑재
<매우중요!>
AMBA Switches
PL영역이 잘하는일
PS영역(Core)이 잘하는일이 따로있어서 임무를 분담해서 써야한다.
잘하는일이 뭘까? 를생각해보자
AMD라는 회사는 회로도만 판다. 그리고 다른 STM이나 TI여러 회사들은 필요에따라 ARM을 사용해서 필요에 맞게 기능을 더 추가해서 만든다. 머리통은 ARM CORE 라는뜻
그러면 ARM CORE 와 통신을 해야하는데 통신할수있는 통신규격이 AXI다.
AMBA BUS는 왜 2개로 나눠져있을까??
DDR MEMORY 통신하는쪽
느린애들끼리 통신하는쪽
이유: 느린애들때문에 빠른걸 통신이 힘들기 때문에 빠른애들을 따로 연결해둠
PS interconnect