1
H/W 2
Example) PC is NOT an embedded system. 3
RCW Mirus 4
TRON OS Real-time Operating System MS WinCE 5
Must provide correct results at required time deadline For examples Security system that checks ID badges Robot that welds sheet metal Automated teller machine Types Hard real-time systems Soft real-time systems Most of control system is real-time embedded systems 6
An embedded system is implemented by hardware function itself, but not SW, to ensure real-time response Embedded software must work with hardware, so it should have real-time characteristics - real-time software How to implement real-time applications Using hardware functionality Interrupt mechanism of microprocessor Polling is slow Simple single-processing program loop Complex multiprocessing program based on RTOS Designing real-time embedded systems is different 7
Increasing design complexity and size 16/32 bit microprocessor based mega-byte applications Increasing software content over 50 % of development costs More developers, team based development Usually multi-tasking implementation (and real-time) Off-the-shelf RTOS is widely used Using C language and network more and more Standardization requirement UNIX, POSIX etc 8
RTOS(Real-time Operating System) VxWorks, psos, QNX, OS-9, VRTX VxWorks OSE WindRiver Device Driver Enea OSE Systems, RTOS 9
LynxOS LinuxWorks UNIX OS, Real-Time Application RTLinux Finite State Machine Labs, Embedded Linux Windows CE VRTX Microsoft Embedded Windows OS Mentor Graphics RTOS 10
psos Integrated Systems WindRiver VxWorks QNX QNX Software Systems UNIX Real-Time Platform Package OS-9 Microware, RTOS, 11
RTOS Nucleus Plus Accelerated Technology, RTOS Full Source Code Royalty PDA 50, 1, 2 SuperTask US Software, Nucleus Source Code Open, No Royalty microc/os(uc/os) RTOS Jean J. Labrosse Source Code, Royalty Upgrade Upgrade uc/os-ii 12
RTOS RTOS MAKER Agent Royalty Policy VxWorks WindRiver WindRiver Korea Yes OSE Enea OSE Systems Yes VRTX Mentor Graphic Yes psos WindRiver WindRiver Korea Yes Ncleus Plus Accelerated Technology ATI Korea No Super Task US Software No microc/os(uc/os) No QNX QNX Software Systems Yes OS-9 Microware Microware Korea Yes LynxOS LinuxWorks Yes RTLinux Finite State Machine Labs Yes Windows CE Microsoft Microsoft Yes 13
H/W : : : (External Devices) PC H/W vs. H/W H/W PC :HDD,ODD,DVD :KBD,MOUSE,SPKR 14
MHz MHz 8, 16, 32, 64 PC : Intel or AMD (complexity) : CPU core : CPU core 15
ARM ARM ARM Acorn Computer Limited Acorn BBCmicro 6502 PC VLSI Technology Acorn ARM ARM ARM ARM7 60Mips ARM10 500Mips ARM XScale 733MHz 16
PowerPc PowerPC IBM RS/6000 IBM, 1993 PowerPC Architecture Specification 32 64 PowerPC (IBM RS/6000 IBM pseries ) 32-bit PC PowerPC,, ' ' 32 (32 64 ) GPRs (General Purpose Registers) PC (Program Counter- IAR/Instruction Address Register NIP/Next Instruction Pointer ), LR (link register), CR (condition register) MPC850 50MHz MPC7450 733MHz 17
MIPS MIPS MIPS 1980 MIPS RISC 1984 MIPS Computer System Inc. R4000 64 1992 SGI(Silicon Graphics Inc.), MIPS Technology Inc NEC,, Sony, LSI Logic, Philips MIPS core MIPS MIPS RISC 64 64 (32 ) 64 DSP MDU(Multiple- Divide Uint) MAC 6 MIPS32 50-150MHz (R4000), DSP DSP MDU MIPS64 MIPS-3D 18
: : ROM: ROM (Read Only Memory), PROM (Programmable Read Only Memory), EPROM (Erasable Programmable Read Only Memory) FLASH PC : BIOS (Basic Input Output System) EPROM -> (booting) PC PC BIOS RAM RAM PC 19
RAM DRAM(Dynamic Random Access Memory) DRAM SRAM(Static Random Access Memory) SRAM : Random Access CD (serial) 20
(Polling) : Simple Implementations (Interrupt) : Efficient Implementations,, (Sensor),,, ( ) 21
: (Heater) 70 65 70 : binary 1 70 0 1 ; 0 1 1 0 0 22
(analog) analog-to-digital converter (ADC) ADC n- m- LED : on/off 7-segment display : LCD (Liquid Crystal Display) : 23
(serial port) RS232C, m :, (parallel port) ; USB (Universal Serial Bus) IEEE 1394 USB : 12 Mbps 127,,,, MP3 Player IEEE 1394: Apple Firewire 400 Mbps 63, CD/CD-RW 24
: (Ethernet) IEEE 802.3 (Local Area Network LAN) 10Base-T : 10Mbps CSMA/CD (Carrier Sense Multiple Access/Collision Detect) 10/100 : 100 Mbps Gigabit 10Gigabit 25
802.11a, 802.11b CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance) 802.11g 802.11a : 5GHz OFDM (Orthogonal Frequency Division Multiplexing) 54Mbps 802.11b : 2.4GHz direct sequence spread spectrum 11Mbps 802.11b ( 300 feet: 802.11a 60 feet ) 26
S/W OS : RTOS, Embedded Linux S/W: OS API, Network API, S/W: / PC S/W vs. S/W S/W OS S/W S/W PC Windows Windows API HDD Visual Studio.NET RTOS, Linux RTOS & Linux API 27
(Operating System) but Linux, Microsoft XP 2000pro embedded Linux, pocket PC (Real-time Operating System RTOS) Qplus 28
S/W TCP/IP ( C, C++, ),, ( Visual studio, Qplus ESTO) 29
S/W : Desktop Publishing, Personal Information Management (PIM), Computer Aided Design (CAD),,, RAM ROM 30
31
Digital TV, / /, PDA,, ebook, POS, ATM,, ITS,,,,,,,, 32
TV,,, Digital TV Digital + Digital : VOD(Video On Demand), TV 33
PDA,,, PDA (PIM Personal Information Management), PCS, ->,,, MP3,,, GPS ipaq 3850 34
, PABX (private automatic branch exchange),,, : IP-PCX IAP (IP based-private Communication exchange Integrated Access Platform) ATM(Asynchronous Transfer Mode) Switching VoIP(Voice over IP) Internet VoIP IP PBXIP 35
/,, : Global Star 2100 (Honeywell Aerospace),,, RTOS,, 36
/ : (barcode), (Reader) POS(Point Of Sales), RF (tag) : ATM,,, ID, POS PC,,,, 37
/, (ITS : Intelligent Transport Systems),,,, GPS ITS, 38
,,, SCX-5312F,,, 39
/ FA (Factory Automation) PLC (Programmable Logic Controller), : 40
(genome) 31.8 base pair of DNA Applied Biosystems ABI PRISM 3700 DNA 68332 VxWorks RTOS 10 41
Xbox playstation 2 Emotion Engine multimedia processor MIPS nintendo64 (nintendo gameboy advance) 32-Bit ARM 2.9 TFT 32,768 42
H/W : : 32 => 64., DSP, H/W DRAM FLASH.? SOC (System-on-a-chip). CPU,, DSP, PCB CPU,,. IP(Intellectual Property ) Post-PC,,,,, 43
OS S/W Plug-and-play RTOS Linux will be there. Windows : CE,.NET System S/W API Device Driver : MS Platform builder Middleware Application S/W Component Based Design: Plug-and-play S/W S/W Modeling CAD Tool (UML) Development Tool CAD Tools for Rapid S/W development Automatic Source Code Generation Tool: Objectime, RoseRT 44
H/W StrongARM1110 MPC850 AXIS(ETRAX) MC68EZ328 45
SA1110 block diagram StrongARM-1110 46
Basic Architecture StrongARM-1110 - Memory and PCMCIA control module (MPCM) - Memory interface supporting ROM, Synchronous Mask ROM (SMROM), Flash, DRAM, SDRAM, SRAM, SRAM-like variable latency I/O, and PCMCIA control signals - System control module (SCM) Twenty-eight general-purpose interruptible I/O ports Real-time clock, watchdog, and interval timers Power management controller Interrupt controller Reset controller Two on-chip oscillators for connection to 3.686 MHz and 32.768 khz crystals - Peripheral control module (PCM) Six-channel DMA controller Gray/color, active/passive LCD controller 16550-compatible UART IrDA serial port (115 Kbps, 4 Mbps) Synchronous serial port (UCB1100, UCB1200, SPI, TI, µwire) Universal serial bus (USB) device controller 47
SA1110 pins 48
SA1110 memory map Reserved(384Mbytes) 0x90000000 0x80000000 0x50000000 0x40000000 0x30000000 0x20000000 0x18000000 0x10000000 0x08000000 0x00000000 ZEROS BANK (128Mbytes) DRAM BANK 3(128Mbytes) DRAM BANK 2(128Mbytes) DRAM BANK 1(128Mbytes) DRAM BANK 0(128Mbytes) LCD and DMA Registers (256Mbyte) Memory and Expansion Registers (256Mbyte) System Control Module Registers (256Mbyte) Peripheral Control Module Registers (256Mbyte) Reserved(768Mbytes) Static Bank Select 5(128Mbytes) Static Bank Select 4(128Mbytes) PCMCIA Socket 1 Space (256Mbyte) PCMCIA Socket 0 Space (256Mbyte) Static Bank Select 3(128Mbytes) Static Bank Select 2(128Mbytes) Static Bank Select 1(128Mbytes) Static Bank Select 0(128Mbytes) 0xC8008000 0xC8000000 0xC0008000 0xC0000000 PCMCIA Ethernet RAMDISK IMAGE ZIMAGE RAMDISK IMAGE zimage BLOB SDRAM 64MByte 32 bit bus RAS0 CAS0 0xC0008000 0xC0000000 0xC0000000 Flash 16MByte 16 bit bus CS0 RAMDISK VMLINUX Page table 49
MPC850 block diagram MPC850 50
MPC850 Basic Architecture Single-issue, 32 bit version of the embedded PowerPC core 2Kbyte data cache, 1Kbyte instruction cache MMU with 8 entry translation lookaside buffer(tlbs) 0-66MHz System Integration unit Memory controller General-purpose timers Low power support Serial communications controller - Ethernet / IEEE802.3 - UART 51
AXIS AXIS block diagram 52
AXIS Basic Architecture High performance 100MIPS(200MIPS/W) 32-bit RISC CPU, 112k Dhrystones Ethernet controller supporting 100Mbit/10Mbit MII Disk interface configurable as either EIDE/AT-2 parallell I/O port Four serial ports with baud rate up to 1843.2kbaud 16-bit GPIO Data bus width (16bit or 32bit) Bus interface ( SRAM, DRAM, EPROM,parallel EEPROM, Flash ) 8 kilobyte on chip cache memory DMA controlled network Low power consumption 256-pin PBGA package 53
MC68EZ328 block diagram MC68EZ328 54
AXIS Basic Architecture EC000 core Chip-select logic and bus interface Phase-locked loop and power control Interrupt controller Parallel general-purpose I/O ports Pulse-width modulator General-purpose timer Serial peripheral interface UART and infra-red communication support LCD controller Real-time clock DRAM controller in-circuit emulation module Bootstrap mode 55
SA1110 SoC board block diagram PCMCIA_SLOT PCMCIA_SLOT SERIAL PORT-A SERIAL PORT-A SERIAL PORT-B SERIAL PORT-B ETHERNET PORT ETHERNET PORT StrongARM1110 FPGA BOARD FPGA BOARD XILINX XILINX (SPARTAN_XC2S200E) (SPARTAN_XC2S200E) 20 20 ALTERA ALTERA (ACEX EP1K100QC208-2) (ACEX EP1K100QC208-2) 10 10 USB PORT USB PORT HEADSET HEADSETAUDIO AUDIO (UDA (UDA STEREO 1341) STEREO 1341) LED (GPIO) LED (GPIO) FLASH_MEMORY 16M FLASH_MEMORY 16M FLASH_MEMORY 16M FLASH_MEMORY 16M SDRAM(16M) SDRAM(16M) SDRAM(16M) SDRAM(16M) SDRAM(16M) SDRAM(16M) SDRAM(16M) SDRAM(16M) LCD LCD TFT-LCD TFT-LCD (320*240) (320*240) TOUCH TOUCH SCREEN SCREEN (UCB1300) (UCB1300) 56
Serial cable JTAG cable Host platform : Pentium PC OS : Wow linux paranr2 ethernet serial port minicom cross compiler Target board SA-1110 SoC board 57