1. iROM이 실행되면서 최소한의 Boot를 함(RAM의 정보가 없음)
2. NAND Flash에 있는 bootheader(RAM activate 정보포함)를 SRAM으로 복사
3. SRAM code실행(Ram이 activate됨)
4. NAND Flash의 u-boot을 RAM으로 복사
5. u-boot을 실행(부트 시작)
***bootheader-> SRAM과 DRAM에서 실행되는 루틴이 다름
인터럽트 우선순위는 interrupt controller에 의해서 처리(masking 작업, 선점 우선순위 등)
다수의 DMA가 하나의 버스를 이용 → DMA contention → arbitary 작업을 통해 해결. 이는 arbiter가 진행
DMA vs PIO
DMA : 오디오 데이터전송, LCD(bulk data전송)
PIO : 소량의 데이터를 처리하는 경우
UART : synchronous clock에 맞춰서 동작 → 정보를 다 받기 위해, 하지만 중간에 보내는 term이 존재.
이러한 term때문에 asynchronous라고 함(clock 속도는 동일해야함)
'개인자료 > 프로그래밍' 카테고리의 다른 글
[150616 ~ 150619] Linux Device Driver Lecture (2) | 2015.06.21 |
---|---|
[150615] ARM Crash Course (0) | 2015.06.21 |
[STM32F103x] PWM (0) | 2015.06.20 |
[STM32F103x] 외부 인터럽트(TIMx_EXTI) (0) | 2015.06.20 |
[STM32F103x] 타이머(Timer) (1) | 2015.06.13 |
[150609] Crosstool-ng를 이용한 Toolchain 만들기 (0) | 2015.06.09 |
[망고보드_STM32] LED On (1) | 2015.06.03 |
망고보드(M32) 시리얼 케이블 만들기_Serial to 3Pin (0) | 2015.06.02 |
Embedded Reference (0) | 2015.06.02 |
ARM에 사용되는 Register (0) | 2015.06.01 |
임베디드 레시피 및 망고보드(Cortex M-3) 구입 (0) | 2015.05.29 |