1. embedded system의이해cfs2.tistory.com/upload_control/download.blog?f... ·...
TRANSCRIPT
1. Embedded System1. Embedded System의의 이해이해
www.huins.com 2
목목 차차
Embedded System 정의
Embedded System 활용 분야 및 전망
Embedded System HardwareEmbedded System Software
www.huins.com 3
1.1 Embedded System 1.1 Embedded System 정의정의
Embedded란?Micro processor 또는 Micro controller가 내장(embed)되어 있는 시스템
Hardware와 Software가 결합되어 동작한다.주로 특수한 목적에 활용된다.
사무 작업, 멀티미디어, 프로그램 개발, 웹 서핑 등 범용으로 다양한 분야에 사용되는 PC와 달리, 한 가지 또는 몇 가지 특수한 작업을 수행
PC의 부품( 그래픽 카드, 사운드 카드)자동차 엔진 제어 장치
가전 제품 제어 장치(TV 리모콘, 전자 레인지)최근에는 PDA와 같이 Embedded System에서도 점차 범용성을 띄어가고 있다.
www.huins.com 4
1.2 Embedded System 1.2 Embedded System 활용분야활용분야
Home Automation & Home Networking가전 제품에 Microprocessor 또는 Microcontroller를 내장하여 사람이해야 할 일을 대신 수행하거나 network을 통해 서로 연결되어 정보를 주고 받고, 통제 관리 될 수 있는 환경을 말한다.Example
자동 온도 조절 장치
무인 경비 시스템
가스 누출/수도 감시 장치
이동 전화를 통한 가전 제품 제어( TV 녹화, 문단속, 세탁기, 에어컨 등)인터넷 기능을 가진 가전 제품 (TV, 냉장고 등)
www.huins.com 5
1.2 Embedded System 1.2 Embedded System 활용분야활용분야(1)(1)
Home Automation & Home Networking ( cont’ )
www.huins.com 6
1.2 Embedded System 1.2 Embedded System 활용분야활용분야(2)(2)
정보 단말기PDA, 휴대폰, 화상 전화기 등
www.huins.com 7
1.2 Embedded System 1.2 Embedded System 활용분야활용분야(3)(3)
통신장비라우터, 스위치 등의 네트워크 장비
www.huins.com 8
1.2 Embedded System 1.2 Embedded System 활용분야활용분야(4)(4)
Factory Automation생산 공정의 제어 및 자동화에 필요한 시스템
고성능이 필요한 경우 즉, 실시간으로 공정이 제어되어야 하거나 또는매우 정밀한 값이 처리 되어야 하는 공정에 실시간 운영체제를 갖춘 고성능의 Embedded System을 사용
www.huins.com 9
1.2 Embedded System 1.2 Embedded System 활용분야활용분야(5)(5)
게임기
www.huins.com 10
1.2 Embedded System 1.2 Embedded System 활용분야활용분야(6)(6)
환경 감시 시스템
www.huins.com 11
1.3 Embedded System 1.3 Embedded System 시장시장 현황현황
2002년 임베디드 시스템 세계시장
약 1,000억 달러 규모
Embedded Software 분야 : 약 200억 달러 규모
매년 평균 20%의 성장률
2007년 약 500억 달러 수준으로 성장 전망(RCW Mirus, 2001)
2002년 국내 시장규모
약7천 8백 억원 규모
2007년
1조 9천 5백 억원 규모로 성장 전망 (정보통신연구진흥원, 2002)
www.huins.com 12
미국
프로세서, OS, 프로토콜 등 전 분야를 점유
미국은 군사/과학용 Embedded S/W를 21세기 핵심 분야로 선정하고, 매년 4천억 달러 이상을 연구개발에 투자
유럽
개발도구, 브라우저 등의 일부 업체가 존재
군사/교통용 Embedded S/W에 '99년부터 7년간 3조 8천억을 투자
일본
총무성 주도로 Ubiquitous 네트워크 개발을 추진 중
‘84년부터 TRON 협회에서 표준 Embedded OS를 개발, 일본 내 가전제품에 적용 중
www.huins.com 13
참고참고) TRON) TRON
일반적으로 TRON이라는 약자 불리 우는 트론은사용자가 개인용 컴퓨터의 기능과 사용법을 정의하는 컴퓨터 구조. 본래 일본의 전자 회사들이주도하여 개방된 구조를 가진 새로운 CPU와 시스템 소프트웨어를 개발하여 일반 컴퓨터는 물론 일반 가전 제품과 산업용 기계들에 이르기까지 모든 제품을 하나의 구조로 통일하여 사용자들이 보다 쉽고 편리하게 사용하며 이들 기계 사이에서 정보를 교환할 수 있도록 도와주는 작업들로 이루어져 왔다. 트론은 산업용 로보트를 이용하여 공업 분야의 응용을 목적으로 하는 I 트론, 컴퓨터를 이용하여 일반 사무 업무 처리를 목적으로 하는 B 트론 그리고 개인용 컴퓨터와 웍스테이션 사용을 목적으로 하는 M 트론 그리고 이들 여러 기계 장비를 통신망으로 연결하여 데이터를 교환하면서 작업을 수행하도록 하는 C 트론 등이 있다
www.huins.com 14
1.4 Embedded System H/W1.4 Embedded System H/W
Microprocessor프로그램의 명령어 처리
8bit/16bit/32bitArm 계열, Power PC 계열, MIPS 계열
Memory프로그램 및 data 저장
RAM/ROM/FLASH memoryPeripheral device
사용자와의 I/O, Microprocessor 보조를 위한 devicesKey button, touch screen, LCDNetwork interface chip, Sound codec, UART chip
www.huins.com 15
Embedded System H/W Embedded System H/W 향후향후 전망전망
컴퓨터 하드웨어 기술 : 무어의 법칙에 따라서 계속 발전프로세서
데이터 처리용량 증가: 32비트 코어 => 64비트 코어로 발전.고성능의 파이프라인, DSP, 자바 처리 전용 H/W 추가
메모리대용량화 DRAMFLASH 메모리의 사용증가.
네트워크유/무선 네트워크의 대역폭의 계속적인 증가.
SOC (System-on-a-chip)CPU, 메모리, DSP, 주변장치 등을 한 칩으로 만드는 기술이전에 한 PCB보드에 CPU칩, 메모리 칩, 주변장치 칩 들을 따로 사용하여설계.각 칩에 해당되는 회로를 각각의 IP(Intellectual Property 또는 지적재산권)로 확보해서 한 개의 칩으로 설계Post-PC 시대의 하드웨어 기술의 핵심
고성능, 저전력, 저가격, 안정성, 내구성, 혁신적 디자인 등이 가능
www.huins.com 16
1.5 Embedded System S/W1.5 Embedded System S/W
System softwareSystem의 하드웨어를 관리하고 응용프로그램에게 시스템을 사용할 수있는 효율적이고 안전한 interface를 제공하는 software운영 체제
Linux, Window XP Embedded, Window CE, VxWorks, uC/OSIIDevice drivers
Device를 제어하기 위한 interface 제공
Application software실제 필요한 기능을 수행하는 softwarePDA의 일정 관리 software휴대폰의 각종 서비스(game, 벨소리, 전화번호부)
www.huins.com 17
Embedded OS
Embedded Linux
Embedded Real-time OSNucleus RTOS
Monta vista Linux
Window CE
Symbian’s EPOC
Palm OS
Qplus
Tiny OS
www.huins.com 18
정보통신부임베디드 소프트웨어 육성 배경
임베디드 소프트웨어가 첨단 제품에 탑재휴대폰, D-TV, 냉장고, 정보 가전 기기
금융, 자동차 등 다양한 서비스 창출 기대
세계적인 통신 인프라와 제조업 기반에 S/W 기술 접목하여 비즈니스 창출 기회
Embedded EverywhereSmart Home/Town
유무선 도시통신망
행정, 교통, 교육, 의료, 재난, 환경, 물류
Ubiquitous Korea
www.huins.com 19
Embedded S/W 적용
www.huins.com 20
환경 감시시스템Embedded S/W 적용
www.huins.com 21
지능형 교통정보 시스템Embedded S/W 적용
www.huins.com 22
MICROS
Micro Information Communication Remote Object-oriented Systems
초소형 원격 무선정보시스템
IEEE802.15.4 저전력 개인용무선 테트워크
역할감지 (Sensing), 추적(Tracking), 감시(Monitoring), 행동화(Actuator)
분야교량, 교각 안전 진단용, 감시용
www.huins.com 23
RISC 프로세서 특징
모든 명령을 하드웨어적으로 해독하고 실행한다.
모든 명령을 1클럭 사이클 이내에 실행한다.
명령어 수가 적다.
명령어 형식의 수가 적다.
명령어에서 주소지정방식 수가 적다
명령어 길이가 워드 및 데이터 버스폭과 같은 길이로 통합되어 있다.
범용 레지스터의 수가 많다.
대부분의 연산명령은 범용 레지스터를 중심으로 동작한다.
www.huins.com 24
ARM 개발장비 ADS
Code Generation Tools - C and Embedded C++ compilers, Assembler, Linker for ARM and Thumb®instruction sets
An Integrated Development Environment for Windows
- CodeWarrior® IDE from Metroworks® (PC version only)
Powerful GUI debugger
Instruction set simulators
ROM-based debug tools (ARM Firmware Suite)
ARM cores and processors, ARM9E, ARM10, Jazelle, XScale™ARM Applications Library
Real Time Debug and Trace 지원
www.huins.com 25
ARM 개발장비 MultiICE
400 MHz에서 130KB/s 빠른 다운로드
여러개의 ARM 디바이스 디버그
ARM7, ARM9, ARM9E,ARM10,인텔 XScale™ 지원
Low voltage 코어 디버그
플래쉬 메모리에 코드 다운로드
프로세서 정지 없이 호스트 콘솔 I/O 서비스 (예, printf)
www.huins.com 26
ARM Program
www.huins.com 27
7 Processor Modes
특별한 권한을 가지는 O/S task 지원(ARM4이상 버전에서만)
SysSystem
코프로세서의 소프트웨어 에뮬레이션 지원UndUndefined
가상메모리와(혹은) 메모리 보호 구현AbtAbort
O/S를 위한 보호 모드SvcSupervisor
인터럽트 처리 모드IrqIRQ
고속 데이터 전송 및 채널 처리 지원FiqFIQ
정상 프로그램 실행 모드UsrUser
DescriptionmodeProcessor
www.huins.com 28
37 Total Register
31 general-purpose registersThe unbanked register, R0-R7
: refers to the same 32-bit physical register in all processor mode
The banked register, R8-R14
: refers to depends on the processor mode
Register15, PC
6 status register
www.huins.com 29
The Register Organization
www.huins.com 30
Program Status Registers
Flag BitN : negative
Z : zero
C : carry
V : overflow
Q : DSP – overflow/saturation
Control BitI : irq disable
F : fiq disable
T : thumb execution
01234
MMMMMTFIDNM(RAZ)QVCZN
System0b11111
Undefined0b11011
Abort0b10111
Supervisor0b10011
IRQ0b10010
FIQ0b10001
User0b10000
ModeM[4:0]
www.huins.com 31
The features of the ARM architecture
a 32-bit load/store architecture.
37 total registers for 7 processor modes:
Conditional execution of instructions
ARM (all instructions)
Thumb (one instruction)
www.huins.com 32
32-bit load/store Architecture
레지스터를 통한 값만을 처리하고 이러한 처리결과는 다시레지스터를 통한다.
load instructions : 메모리 값을 레지스터에 복사
store instructions:
레지스터 값을 메모리에 복사
Single/multiple Load/Store instructions.
www.huins.com 33
Pipeline Comparison
www.huins.com 34
ARM9TDMI Processor Core
ARM 32-bit and Thumb 16-bit instructions (v4T ISA). Very high code compatibility with ARM7TDMI: Portable to 0.25, 0.18 µm CMOS and below. Harvard 5-stage pipeline implementation:
Higher performance from reduced cycle per instruction (1.5)
Coprocessor interface for on-chip coprocessors:
Allows floating point, DSP, graphics accelerators.
EmbeddedICE debug capability with extensions:
Hardware single step Breakpoint on exception.
www.huins.com 35
TDMI
Thumb: 32-bit ARM instruction set의 16-bit 압축형
Debug: On-chip debug 지원, debug request가 오면, processor halt.
Multiplier: A full 64-bit result
EmbeddedICE™ Logic:
내장 ICE(In-circuit emulator)
JTAG 를 통해 프로그램 됨.
On-chip breakpoint와 watchpoint를 제공
www.huins.com 36
Thumb 16-bit Instructions
32-bit ARM instruction set의 압축형외부 메모리 사이에서 더 낮은 밴드폭을 가진다
코드 밀도를 높인다.
A Thumb enabled ARM32-bit ARM과 16-bit Thumb instructions을 같이 사용
ARM and Thumb code 사이에서 상호 데이터 교환가능
branch with exchange (BX) instruction을 통해 상태 변화
Instruction만이 16-bit이다.
www.huins.com 37
ARM7TDMI Block Diagram
Decode단계에서 16-bit Thumb 명령을 32-bit ARM 명령으로 전환하는decompression diagram
www.huins.com 38
Thumb Benefits
www.huins.com 39
Thumb Benefits
Thumb programs typically are:
~30% smaller than ARM programs
~30% faster when accessing 16-bit memory
Thumb reduces 32-bit system to 16-bit cost:
Consumes less power
Requires less external memory
www.huins.com 40
Debug Extensions
The ‘D’ debug extension adds:
Scan chains around the core.
Scan chain을 억세스 하는 A test access port (TAP) controller 제공
JTAG(Joint Test Action Group) boundary scan test architecture를 따른다.
Macrocell testusing an extension of the JTAG architecture
The ‘I’ EmbeddedICE Logic adds:
Breakpoints와 watchpoints 실행 로직
use the debug features of the core.
A scan chain to communicate with the EmbeddedICEMacrocell.
www.huins.com 41
EmbeddedICE feature
Scan Chain 0, Scan Chain 1와 the TAP controller +the EmbeddedICE logic plus Scan Chain 2
PC parallel port 에 직접 연결되는 the Multi-ICE protocol converter에 의해debud code 해석된다
Multi-ICE와 EmbeddedICE 는 ASIC 내부 processor의 완전한 debugging이 가능하게 한다
www.huins.com 42
ARM9TDMI
www.huins.com 43
ARM920T
www.huins.com 44
System on Chip
•시스템온칩 (System-on-a-Chip) 이란 ?
• SoC (System on Chip) - 하드웨어 로직 뿐만 아니라 프로세서, 롬, 램, 컨트롤러, 주변장치의 회로를하나의 Chip에 집적화 하는 기술입니다.
• SoC 특징- 모든 제품이 시스템온칩화 : 냉장고, D-TV, MPEG4, Mobile Phone- 회로의 복잡도 증가 : SoC Test 가 문제, IEEE P1149.1 IEEE P1500 등- 고성능, 저소비 전력 요구 : ARM Core 장점- 설계 검증 시간, 비용증가
•IP 사용증가로 이한 IP 검증 필요•IP 재사용및 IP 공유가 중요•Simulation, Emulation Tool 중요
•반도체, 집적회로 변화
TTL1970
SoC2002
ASIC, ASSP1992
CPLD/FPGA1987
www.huins.com 45
SoC Design Flow