Notice
Recent Posts
Recent Comments
Today
Total
04-28 05:24
Archives
관리 메뉴

Jeongchul Kim

1. 임베디드 시스템의 이해 본문

Embedded Linux

1. 임베디드 시스템의 이해

김 정출 2015. 12. 18. 21:52

1. 임베디드 시스템의 의미


임베디드 시스템 개요

1. 임베디드 시스템의 의미

임베디드 시스템은 특정 목적을 지닌 시스템이다. PC는 특정 목적이 아닌 범용 목적을 갖는 시스템이다.

예를 들어 PC는 프로그램 개발뿐 아니라 그래픽 작업도 할 수 있고, 게임, 멀티미디어 기능 등 범용의 기능을 제공한다.

하지만 임베디드 시스템인 핸드폰은 통신기능에 특화하여 개발되었고, 게임기도 게임기능에 특화하여 개발된 시스템이다. 임베디드 시스템의 구성은 정해진 기능에 필요한 하드웨어와 소프트웨어로 이루어진다.


2. 임베디드 시스템의 예

1. 가전제품

2. 유비쿼터스 시스템

3. 휴대용 정보기기

4. 의료기기

5. 공장 자동화 시스템

6. 비행기, 우주선

7. 자동차내 정보기기


3. 임베디드 시스템의 특징

1. 기능이 제한적이다

- 특정 기능에 특화된 시스템으로서 지정된 기능 외의 기능은 제공하지 않는다.


2. 크기에 제약이 있다.

- 모바일 제품이 많기 때문에 크기가 작고 가벼워야 한다.


3. 저전력이어야 한다.

- 배터리 용량의 한계로 전력 사용이 제한적임


4. 사용되는 프로세스나 운영체제가 다양하다.

- 임베디드용으로 사용함, PC용 프로세서와 운영체제는 사용 불가


5. 실시간성을 제공해야 한다.

- 의료기기, 공장 자동화 시스템, 군용에서는 한정된 시간 필수


6. 하드디스크(HDD)가 없다.

- HDD 대신 ROM, RAM, Flash 메모리로 구성됨.






임베디드 시스템 구성 요소

1. 임베디드 시스템의 구성

2. 프로세서

- CPU: 중앙 처리 장치(ALU+레지스터)


- Micro Processor: CPU에 최소한의 주변 장치(메모리, FPU 등)를 포함, 산술 연산 위주


- DSP: Micro Controller for Digital Signal Processing, 입출력 제어 사용



3. 특징

1. 저전력

2. 가격에 민감

3. 작은 사이즈

4. 고성능

5. 개발의 용이성

4. 임베디드 프로세서의 종류

1. 임베디드 프로세서 아키텍처

프로세서 아키텍처는 프로세서의 기본 구조를 말한다. 이에 따라서 명령어의 구성이나 레지스터의 구성 등 프로세서의 핵심적인 특징이 결정된다.

• ARM

• MIPS

• PowerPC


2. 임베디드 프로세서 Soc(System on a Chip)

SoC는 프로세서 코어에 UART나 타이머, 메모리, LCD 제어기 등 필요한 주변기기를 칩에 내장시켜 하나의 칩으로 만드는 기술을 뜻한다.

• PXA255(인텔)

• S3C2440(삼성)

• Au1200(AMD)

• MPC860(모토로라)


5. 임베디드 시스템 메모리

- ROM: 비휘발성 메모리로 읽기 가능, 쓰기 불가 / 실행 파일 및 운영체제 로드(Load)


- RAM: 휘발성 메모리로 읽기, 쓰기 가능 / DRAM, SRAM


- Flash 메모리: 블록 단위로 읽기, 쓰기 가능 / 임베디드 시스템에서는 하드디스크 대용으로 활용



6. 임베디드 시스템 메모리

1. 멀티태스킹 지원 요구

• 임베디드 시스템도 다양한 멀티미디어 기능과 네트워크 기능을 제공하기 위해서 OS 필요

• 대부분이 RTOS이지만 Windows CE, Embedded Linux 등 PC 환경 운영체제의 변형도 존재


2. RTOS(Real Time Operating System)

• 실시간성을 제공하는 운영체제로 지정된 시간 내에 서비스 보장

• GPOS에 비해 높은 신뢰성이 요구됨

• 사이즈가 작고, 기능별  추가/제거가 용이함.

• 고성능

• 종류: VxWorks, uC/OS(학부 연구용 http://www.micrium.com), pSOS, Nucleus, REX


3. GPOS(General Purpose Operating System)

• 범용 목적의 운영체제

• Windows, Linux와 같은 일반 PC 환경에서 사용

• 응용프로그램으로부터 하드웨어 추상화

• 종류: Windows CE, Embedded Linux


7. 임베디드 OS의 종류

1. Non-RTOS

• Windows CE

• Embedded Linux


2. RTOS

• VxWorks

• uC/OS

• pSOS

• Nucleus

• REX




8. RTOS의 구성 요소

1. 스케줄러(Scheduler): RTOS의 핵심으로 실시간성을 위해 태스크 관리에 따라 성능이 좌우됨.


2. 인터럽트 처리(Interrput Processing): 프로세서 외부의 장치가 프로세서 사용을 요청하는 신호


3. 자원관리(Resource Management): 리소스가 제한된 임베디드 시스템에서 자원 활용 방법

4. 태스크(Task): 스케줄러가 프로그램들을 실행시키기 위한 일의 작은 단위, 태스크들의 관리, 우선순위 책정, 스케줄링 알고리즘 선정


9. GPOS의 특징

1. Embedded Linux

• PC용 리눅스 커널을 변형하여 임베디드 시스템에 활용

• Open source 형태이기 때문에 코드 수정이 자유로움.

• 다양한 디바이스 드라이버

• 사용료에서 자유로움.

• 많은 분야에서 적용되고, 다양한 종류에 프로세서에 포팅(porting) 가능


2. Windows CE

• 다양한 API 제공으로 개발 용이

• 다양한 프로세서에 포팅 가능

• 많은 종류의 멀티미디어 기능 제공

• 통합 개발 환경(Visual Studio)을 제공




Comments