1. Embedded System 의 이해
2 목 차 Embedded System 정의 Embedded System 활용 분야 및 전망 Embedded System Hardware Embedded System Software
Embedded System 정의 Embedded 란 ? Micro processor 또는 Micro controller 가 내장 (embed) 되어 있는 시스템 Hardware 와 Software 가 결합되어 동작한다. 주로 특수한 목적에 활용된다. 사무 작업, 멀티미디어, 프로그램 개발, 웹 서핑 등 범용으로 다양한 분 야에 사용되는 PC 와 달리, 한 가지 또는 몇 가지 특수한 작업을 수행 PC 의 부품 ( 그래픽 카드, 사운드 카드 ) 자동차 엔진 제어 장치 가전 제품 제어 장치 (TV 리모콘, 전자 레인지 ) 최근에는 PDA 와 같이 Embedded System 에서도 점차 범용성을 띄어 가고 있다.
Embedded System 활용분야 Home Automation & Home Networking 가전 제품에 Microprocessor 또는 Microcontroller 를 내장하여 사람이 해야 할 일을 대신 수행하거나 network 을 통해 서로 연결되어 정보를 주 고 받고, 통제 관리 될 수 있는 환경을 말한다. Example 자동 온도 조절 장치 무인 경비 시스템 가스 누출 / 수도 감시 장치 이동 전화를 통한 가전 제품 제어 ( TV 녹화, 문단속, 세탁기, 에어컨 등 ) 인터넷 기능을 가진 가전 제품 (TV, 냉장고 등 )
Embedded System 활용분야 (1) Home Automation & Home Networking ( cont’ )
Embedded System 활용분야 (2) 정보 단말기 PDA, 휴대폰, 화상 전화기 등
Embedded System 활용분야 (3) 통신장비 라우터, 스위치 등의 네트워크 장비
Embedded System 활용분야 (4) Factory Automation 생산 공정의 제어 및 자동화에 필요한 시스템 고성능이 필요한 경우 즉, 실시간으로 공정이 제어되어야 하거나 또는 매우 정밀한 값이 처리 되어야 하는 공정에 실시간 운영체제를 갖춘 고 성능의 Embedded System 을 사용
Embedded System 활용분야 (5) 게임기
Embedded System 활용분야 (6) 환경 감시 시스템
Embedded System 시장 현황 2002 년 임베디드 시스템 세계시장 약 1,000 억 달러 규모 Embedded Software 분야 : 약 200 억 달러 규모 매년 평균 20% 의 성장률 2007 년 약 500 억 달러 수준으로 성장 전망 (RCW Mirus, 2001) 2002 년 국내 시장규모 약 7 천 8 백 억원 규모 2007 년 1 조 9 천 5 백 억원 규모로 성장 전망 ( 정보통신연구진흥원, 2002)
12 미국 프로세서, OS, 프로토콜 등 전 분야를 점유 미국은 군사 / 과학용 Embedded S/W 를 21 세기 핵심 분야로 선정하고, 매년 4 천억 달러 이상을 연구개발에 투자 유럽 개발도구, 브라우저 등의 일부 업체가 존재 군사 / 교통용 Embedded S/W 에 '99 년부터 7 년간 3 조 8 천억을 투자 일본 총무성 주도로 Ubiquitous 네트워크 개발을 추진 중 ‘84 년부터 TRON 협회에서 표준 Embedded OS 를 개발, 일본 내 가전제 품에 적용 중
13 참고 ) TRON 일반적으로 TRON 이라는 약자 불리 우는 트론은 사용자가 개인용 컴퓨터의 기능과 사용법을 정 의하는 컴퓨터 구조. 본래 일본의 전자 회사들이 주도하여 개방된 구조를 가진 새로운 CPU 와 시 스템 소프트웨어를 개발하여 일반 컴퓨터는 물 론 일반 가전 제품과 산업용 기계들에 이르기까 지 모든 제품을 하나의 구조로 통일하여 사용자 들이 보다 쉽고 편리하게 사용하며 이들 기계 사 이에서 정보를 교환할 수 있도록 도와주는 작업 들로 이루어져 왔다. 트론은 산업용 로보트를 이 용하여 공업 분야의 응용을 목적으로 하는 I 트론, 컴퓨터를 이용하여 일반 사무 업무 처리를 목적 으로 하는 B 트론 그리고 개인용 컴퓨터와 웍스 테이션 사용을 목적으로 하는 M 트론 그리고 이 들 여러 기계 장비를 통신망으로 연결하여 데이 터를 교환하면서 작업을 수행하도록 하는 C 트 론 등이 있다
Embedded System H/W Microprocessor 프로그램의 명령어 처리 8bit/16bit/32bit Arm 계열, Power PC 계열, MIPS 계열 Memory 프로그램 및 data 저장 RAM/ROM/FLASH memory Peripheral device 사용자와의 I/O, Microprocessor 보조를 위한 devices Key button, touch screen, LCD Network interface chip, Sound codec, UART chip
15 Embedded System H/W 향후 전망 컴퓨터 하드웨어 기술 : 무어의 법칙에 따라서 계속 발전 프로세서 데이터 처리용량 증가 : 32 비트 코어 => 64 비트 코어로 발전. 고성능의 파이프라인, DSP, 자바 처리 전용 H/W 추가 메모리 대용량화 DRAM FLASH 메모리의 사용증가. 네트워크 유 / 무선 네트워크의 대역폭의 계속적인 증가. SOC (System-on-a-chip) CPU, 메모리, DSP, 주변장치 등을 한 칩으로 만드는 기술 이전에 한 PCB 보드에 CPU 칩, 메모리 칩, 주변장치 칩 들을 따로 사용하여 설계. 각 칩에 해당되는 회로를 각각의 IP(Intellectual Property 또는 지적재산권 ) 로 확보해서 한 개의 칩으로 설계 Post-PC 시대의 하드웨어 기술의 핵심 고성능, 저전력, 저가격, 안정성, 내구성, 혁신적 디자인 등이 가능
Embedded System S/W System software System 의 하드웨어를 관리하고 응용프로그램에게 시스템을 사용할 수 있는 효율적이고 안전한 interface 를 제공하는 software 운영 체제 Linux, Window XP Embedded, Window CE, VxWorks, uC/OSII Device drivers Device 를 제어하기 위한 interface 제공 Application software 실제 필요한 기능을 수행하는 software PDA 의 일정 관리 software 휴대폰의 각종 서비스 (game, 벨소리, 전화번호부 )
17 Embedded OS Embedded Linux Embedded Real-time OS Nucleus RTOS Monta vista Linux Window CE Symbian’s EPOC Palm OS Qplus Tiny OS
18 정보통신부 임베디드 소프트웨어 육성 배경 임베디드 소프트웨어가 첨단 제품에 탑재 휴대폰, D-TV, 냉장고, 정보 가전 기기 금융, 자동차 등 다양한 서비스 창출 기대 세계적인 통신 인프라와 제조업 기반에 S/W 기술 접 목하여 비즈니스 창출 기회 Embedded Everywhere Smart Home/Town 유무선 도시통신망 행정, 교통, 교육, 의료, 재난, 환경, 물류 Ubiquitous Korea
19 Embedded S/W 적용
20 환경 감시시스템 Embedded S/W 적용
21 지능형 교통정보 시스템 Embedded S/W 적용
22 MICROS Micro Information Communication Remote Object-oriented Systems 초소형 원격 무선정보시스템 IEEE 저전력 개인용 무선 테트워크 역할 감지 (Sensing), 추적 (Tracking), 감시 (Monitoring), 행동화 (Actuator) 분야 교량, 교각 안전 진단용, 감시용
23 RISC 프로세서 특징 모든 명령을 하드웨어적으로 해독하고 실행한다. 모든 명령을 1 클럭 사이클 이내에 실행한다. 명령어 수가 적다. 명령어 형식의 수가 적다. 명령어에서 주소지정방식 수가 적다 명령어 길이가 워드 및 데이터 버스폭과 같은 길이로 통 합되어 있다. 범용 레지스터의 수가 많다. 대부분의 연산명령은 범용 레지스터를 중심으로 동작한 다.
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 지원
25 ARM 개발장비 MultiICE 400 MHz 에서 130KB/s 빠른 다운로드 여러개의 ARM 디바이스 디버그 ARM7, ARM9, ARM9E,ARM10, 인텔 XScale™ 지원 Low voltage 코어 디버그 플래쉬 메모리에 코드 다운로드 프로세서 정지 없이 호스트 콘솔 I/O 서비스 ( 예, printf)
26 ARM Program
Processor Modes ProcessormodeDescription UserUsr 정상 프로그램 실행 모드 FIQFiq 고속 데이터 전송 및 채널 처리 지원 IRQIrq 인터럽트 처리 모드 SupervisorSvc O/S 를 위한 보호 모드 AbortAbt 가상메모리와 ( 혹은 ) 메모리 보호 구현 UndefinedUnd 코프로세서의 소프트웨어 에뮬레이션 지원 SystemSys 특별한 권한을 가지는 O/S task 지원 (ARM4 이상 버전에서만 )
Total Register 31 general-purpose registers The 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
29 The Register Organization
30 Program Status Registers Flag Bit N : negative Z : zero C : carry V : overflow Q : DSP – overflow/saturation Control Bit I : irq disable F : fiq disable T : thumb execution NZCVQDNM(RAZ)IFT MMMMM M[4:0]Mode 0b10000 User 0b10001 FIQ 0b10010 IRQ 0b10011 Supervisor 0b10111 Abort 0b11011 Undefined 0b11111 System
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)
bit load/store Architecture 레지스터를 통한 값만을 처리하고 이러한 처리결과는 다시 레 지스터를 통한다. load instructions : 메모리 값을 레지스터에 복사 store instructions: 레지스터 값을 메모리에 복사 Single/multiple Load/Store instructions.
33 Pipeline Comparison
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.
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 를 제공
36 Thumb 16-bit Instructions 32-bit ARM instruction set 의 압축형 외부 메모리 사이에서 더 낮은 밴드폭을 가진다 코드 밀도를 높인다. A Thumb enabled ARM 32-bit ARM 과 16-bit Thumb instructions 을 같이 사용 ARM and Thumb code 사이에서 상호 데이터 교환가능 branch with exchange (BX) instruction 을 통해 상태 변화 Instruction 만이 16-bit 이다.
37 ARM7TDMI Block Diagram Decode 단계에서 16-bit Thumb 명령을 32-bit ARM 명령으로 전환하는 decompression diagram
38 Thumb Benefits
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
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 EmbeddedICE Macrocell.
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 이 가능하게 한다
42 ARM9TDMI
43 ARM920T
44 System on Chip 시스템온칩 (System-on-a-Chip) 이란 ? SoC (System on Chip) - 하드웨어 로직 뿐만 아니라 프로세서, 롬, 램, 컨트롤러, 주변장치의 회로를 하나의 Chip 에 집적화 하는 기술입니다. SoC 특징 - 모든 제품이 시스템온칩화 : 냉장고, D-TV, MPEG4, Mobile Phone - 회로의 복잡도 증가 : SoC Test 가 문제, IEEE P IEEE P1500 등 - 고성능, 저소비 전력 요구 : ARM Core 장점 - 설계 검증 시간, 비용증가 IP 사용증가로 이한 IP 검증 필요 IP 재사용및 IP 공유가 중요 Simulation, Emulation Tool 중요 TTL 1970 SoC 2002 ASIC, ASSP 1992 CPLD/FPGA 1987 반도체, 집적회로 변화
45 SoC Design Flow