ESL 연구실 활동/LAB

[02~03] 임베디드 직무강좌

천숭이 2022. 4. 28. 15:25

# 임베디드 소프트웨어

특정 하드웨어의 임베디드 즉, 하드웨어에 내장되어 목적에 적합한 특정 기능을 수행하는 소프트웨어

 

# 부트로더

운영체제가 시스템에 로드되어 잘 동작하기 위한 사전 준비 작업을 하는 것

 

# 오픈소스 부트로더

GRUB

arm 기반 U-BOOT

 

# 운영체제 부트과정

전원이 켜지면 지정된 저장장치에서 기본 프로그램을 불러오고 메모리에 올려 실행함

 

* 부팅 디바이스의 OS는 커널을 의미한다

iROM에는 초기 코드가 포함되어 있어 전원이 들어오면 외부장치로부터 CPU적재

iROM 내부의 코드는 여러가지 부팅 방법을 제공

위 그림을 보면 Exynos-8890은 Controller,UFS,SPI,USB 부팅방법을 제공

 

# 동작 순서

1. 전원이 연결되면 iROM의 부트코더 수행

2. iROM 은 BL1 코드를 읽어서 내부의 iSRAM으로 옮겨 실행

3. iSRAM에 저장된 BL1이 실행하면서 하드웨어 초기화를 수행하고 BL2를 비롯한 나머지 부팅디바이스들을 DRAM으로 복사하여 실행

4. 메모리에 적재된 커널이 부팅 시작                                                                                                         

 

 

# 부드로더의 기능과 동작

- 하드웨어 초기화 (메모리설정, CPU 클락, 이더넷 포트 등등)

- 메모리 복사 (플래시롬 -> DRAM)

- 커널부팅 (커널이미지 -> 메모리로 이동 -> 압축 풀고 실행)

- 명령어 지원

- 디버깅 모드

 

# 시스템 부팅 절차에 따른 하드웨어 초기화 과정

                                                                           

'ESL 연구실 활동 > LAB' 카테고리의 다른 글

0502 CUDA 시도  (0) 2022.05.02
[05] 임베디드 직무강좌  (0) 2022.05.02
[04] 임베디드 직무강좌  (0) 2022.04.28
[01] 임베디드 직무강좌  (0) 2022.04.28
0418 - 2차 미팅  (0) 2022.04.19
✍HDL/ 컴구/ 논회 매일 보고 기록  (0) 2022.04.17