Transcript 0 - 동아대학교
임베디드시스템
2013년도 가을학기
담당교수
조장우, 동아대학교 컴퓨터공학과, SF 619호
e-mail: [email protected]
www: http://web.donga.ac.kr/jwjo
phone: 200-7780
성적평가
중간
시험: 30%
기말
시험: 30%
실험 보고서: 20%
설계
과제: 10%
출
석: 10%
교재
ACHRO-4210 을 이용한 안드로이드 설계 및 응용,
휴인스
ACHRO-4210 을 이용한 리눅스 설계 및 응용, 휴인
스
ACHRO-4210 을 이용한 안드로이드 애플리케이션
프로그래밍 실습, 휴인스
참고문헌
입문자를 위한 임베디드시스템, 사이텍미디어
재미있는 임베디드시스템 디자인, CMPBooks
RTOS를 이용한 실시간 임베디드 시스템 디자인, 에이
콘
임베디드시스템을 위한 RTOS, 에이콘
…
임베디드 시스템이란?
특정한 기능을 수행하기 위하여 결합된
컴퓨터 시스템
HW 로 구현한 기능과 비교
Computers Inside a Product (or a System)
다양한 목적으로 사용되는 PC와 달리, 한 가지 또는
몇 가지 특수한 작업을 수행
PDA, 스마트폰과 같이 Embedded System에서도 점차 범
용성을 띄어 가고 있다
2012-06-27
임베디드 시스템 구현 방법
하드웨어구현 VS. 소프트웨어구현
부동소수점연산(80386과 이전의 프로세서)
모뎀, 랜카드
프린터
네트워크 기능이 추가되면?
논리곱(Logical and)
SW: bool a, b, c; c = a && b;
HW: AND gate
소프트웨어의 장점
일반적으로 소프트웨어 개발에서는 개발 도구를 염가로
갖출 수 있음
같은 CPU 보드라도 소프트웨어를 바꿔 넣음으로써 다른
처리를 하게 할 수 있고 메모리의 용량에 빈 곳이 있으면,
기능을 추가할 수도 있음
프로그램에 문제(버그)가 발견되면 즉석에서 수정할 수
있음
하드웨어의 단점
ASIC 등의 하드웨어 개발에서는 일반적으로 고가의 개발
도구를 필요로 함
개발에는 큰 투자와 시간이 필요
또 다른 처리를 하게 하거나 기능을 추가하려면, 그로 인
한 회로가 필요
또 회로에 잘못이 발견되었을 때에 그것을 수정하기 위해
서는 많은 수고와 비용 요구
소프트웨어의 단점
소프트웨어를 동작시키려면 “CPU+메모리”가 필요
하드웨어만으로 처리하는 경우와 소프트웨어로 처리하는 경
우를 비교하면, 일반적으로는 하드웨어로 처리하는 쪽이 고속
임
그러나 일부러 ASIC를 개발하는 것보다는 훨씬 싼 가격으로 CPU 보
드를 실현할 수 있음
사람이 버튼을 눌러 LED를 점등 시키는 것과 같은 그다지 고속이 아
닌 처리는 소프트웨어로도 충분히 처리할 수 있지만
ns급의 성능이 요구되는 처리는 하드웨어로 처리해야 함
소프트웨어에서의 처리 성능을 높이기 위해서는 한층 고속의
CPU를 사용해야 함
그러나 고성능의 CPU는 가격도 비싸고
그것이 제품 가격에 반영되므로 어느 정도 성능의 CPU를 채용해야
하는가 하는 것은 사실 매우 중요한 문제임
임베디드 시스템의 구성
임베디드 시스템 구성
임베디드 H/W
프로세서/컨트롤러, 메모리, I/O 장치, 네트워크 장치, 센서,
구동기
임베디드 S/W
운영체제, 시스템 S/W, 응용 S/W
H/W
S/W
Micro Processor
OS - Kernel
Memory
입출력 장치
네트워크 장치
시스템 소프트웨어
응용 소프트웨어
임베디드 시스템
범용컴퓨터와 비교
임베디드
마이크로 프로세서의 성능?
전체 제품의 일부
특정 기능 수행
필요한 주변장치
사용자의 개입 없이 동작
범용컴퓨터
마이크로 프로세서
제품 자체
범용 기능 수행
필요할 수 있는 주변장치
사용자와 대화형으로 동작
프로세서
Where Has CS Focused?
Interactive
Computers
200M
per Year
In Vehicles
Where Are the Processors?
Direct
2%
Robots Vehicles
6%
12%
8.5B Parts
per Year
Servers,
etc.
EmbeddedIn Robots
Source: DARPA/Intel (Tennenhouse)