0-1 임베디드 시스템
1. 임베디드 시스템이란?
: 하드웨어, 운영체제, 응용 소프트웨어, 네트워킹 등을 특수 목적에 맞게 최적화한 시스템
2. 임베디드 시스템의 역사(3)
- (초기): 제어용 시스템 -> 간단한 HD + 펌웨어 수준 실시간 운영체제 + 고정된 응용 프로그램
- (현재): 다양한 임베디드 시스템 -> 정보 가전 시스템, 이동 단말기
- (전망): 고 수준 제어 시스템 -> 일반화된 시스템에 소프트웨어를 교체하는 형태(고정 X)
(펌웨어: 특정 하드웨어 장치에 포함된 소프트웨어)
3. 임베디드 시스템 구성요소(3)
- 하드웨어: 주 프로세서, 제어를 위한 장치 인터페이스
- 소프트웨어: 임베디드 운영체제(실시간 운영체제, 임베디드 리눅스, 미들웨어 운영체제(안드로이드))
시스템 제어를 위한 응용 프로그램
- 개발 환경: 교차 개발 환경, 개발 호스트 시스템, 개발 타겟 시스템
4. SoC란?
: System-On-Chip으로, 하나의 칩에 프로세서, 메모리, I/O 제어 회로를 포함한, 임베디드 시스템을 위한 패키지
5. SoC 예(7)
: ARM Processors • Intel StrongARM • TI OMAP • Motorola Dragon Ball • Samsung S5PC110 (Galaxy S 프로세서) • Apple A12 • Qualcomm SnapDragon
6. SoC의 발전(4)
- 초기 SoC (3): Processor core + SRAM + Basic I/O
- 간단한 이동기기를 위한 SoC (4): Processor core + LCD controller + Memory controller + Various I/O interfaces
- 고기능 이동기기를 위한 SoC (4):간단한 이동 기기 SoC + Multimedia accelerator + Camera interface + 기타 다양한 기능을 위한 하드웨어
- 멀티 코어 SoC (2): Generic purpose processor cores + DSP cores
7. Processor Cores (6)
- X86: # intel 제작, # 임베디드에서는 사용률 낮음, # 리눅스와 윈도우에서 호환성이 높음
- ARM: # 휴대전화 프로세서의 코어로 사용, # 모든 ARM 프로세서는 동일한 명령어 집합 사용, # binary code 수준의 호환성, # JAG 디버거 폭넓게 사용됨.
- IBM/Motorola Power PC: # PPC리눅스 커널은 Java 등의 소프트웨어가 이식되어있음, # Apple에서 공동 개발
- MIPS: # ARM과 달리 다양한 명령어 집합 구현이 존재, # PowerPC와 비교했을 때 리눅스 지원이 제한적임.
- Hitachi SuperH:
- Motorola 68000:
0-2 아두이노 보드
1. 아두이노
: 아두이노 보드 + 통합 개발 환경
- Open 하드웨어(복제 보드 허용)/Open 소프트웨어(os지원, 임베디드 소프트웨어 개발이 쉬워짐)
2. 아두이노 보드
:마이크로 컨트롤러 보드.
- 종류: UNO, MEGA, DUE, Ethernet 등. 가격 저렴. 사용편리.
3. 아두이노 목표
: 쉬운 개발 환경 제공. (기존에는 보드,부트로더 등 개발해야하고 광범위한 지식이 필요했음.)
4. 아두이노 프로그램 언어
- 텍스트 기반 언어: C언어
- 그래픽 기반 언어: LabView for Arduino, Scratch for Arduino
5. 아두이노 보드
:마이크로 컨트롤러 보드.
- 종류(4): UNO, MEGA, DUE, Ethernet 등. 가격 저렴. 사용편리.
- 프로세서 종류(3): Atmega 168, 328, 32U4, 2560 processors/ Arm Cortex M3/ Intel Arduino Compatible Board
6. 아두이노 개발 환경 구축
- 아두이도 IDE 다운로드
- 코드 구조:
- setup()함수: 초기화 코드, 단 한번만 실행
- loop()함수: 메인 코드, 무한히 반복
- 개발 과정: 코딩 → 컴파일 → 업로드 → 실행
'Computer Science > Embedded System Design' 카테고리의 다른 글
[임베디드] 3장 라즈베리파이 실습 (2) (0) | 2023.10.20 |
---|---|
[임베디드] 3장 라즈베리파이 실습 (1) (0) | 2023.10.20 |
[임베디드] 2장 라즈베리파이 소개 (0) | 2023.10.20 |
[임베디드] 1장 아두이노보드 실습 (2) (0) | 2023.10.20 |
[임베디드] 1장 아두이노보드 실습 (1) (0) | 2023.10.20 |