350 likes | 591 Views
Embedded Systems Design. Paul Pop, associate professor Embedded systems engineering section. Embedded Systems. Invisible computers , inside most of the devices we use, from a music player, a mobile phone, to cars, trains, medical equipment, and so on.
E N D
Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section
Embedded Systems • Invisible computers, inside most of the devices we use, from a music player, a mobile phone, to cars, trains, medical equipment, and so on. • an embedded system special-purpose computer system, part of a larger system which it controls • More than humans on the planet, already • 40 billion of such devices by 2020 • 99% of processors used in embedded systems • 4 billion embedded processors sold last year • €71 billion global market in 2009, growth of 14% • Market size is about 100 times the desktop market
Embedded systems are everywhere o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o • Our daily lives depend on embedded systems
From your bathroom... Product: Sonicare Plus toothbrush. Microprocessor: 8-bit Zilog Z8.
To Mars... • Product: NASA's Mars Sojourner Rover.Microprocessor: 8-bit Intel 80C85.
Characteristics of embedded systems • Single-functioned • Dedicated to perform a single function • Complex functionality • Often have to run sophisticated algorithms or multiple algorithms. • Cell phone, laser printer. • Tightly-constrained • Low cost, low power, small, fast, etc. • Reactive and real-time • Continually reacts to changes in the system’s environment • Must compute certain results in real-time without delay • Safety-critical • Must not endanger human life and the environment
Automotive Electronics ACC Stop&Go BFD ALC KSG 42 voltage Internet Portal GPRS, UMTS Telematics Online Services BlueTooth Car Office Local Hazard Warning Integrated Safety System Steer/Brake-By-Wire I-Drive Lane Keeping Assist. Personalization Software Update Force Feedback Pedal… Navigation System CD-Changer ACC Adaptive Cruise Control Airbags DSC Dynamic Stability Control Adaptive Gear Control Xenon Light BMW Assist RDS/TMC Speech Recognition Emergency Call… Level of dependency Electronic Gear Control Electronic Air Condition ASC Anti Slip Control ABS Telephone Seat Heating Control Autom. Mirror Dimming … Electronic Injections Check Control Speed Control Central Locking … 1970 1980 1990 2000 Embedded systems: 90% future innovations 40% price source: BMW
Smartphone architecture example Battery RF Baseband ASIC Charger Energy management ASIC 64MB NOR FLASH White LED driver ARM9 64MB SDRAM Back-light LEDs Mixed-Signal ASIC UMA core SIM 2MPix camera module IHF BT Module LED Flash Keyboard Application processor 512MB NAND FLASH MMC ARM9 512 MB DDR DRAM Frame buffer ASIC UMA core Position sensors LCDs
Architectures: Networked embedded systems ... Distributedfunctionality Distributedfunctionality ... Distributedacross networks Several functionsper processor
Application areas: critical vs. best-effort • Critical (e.g., avionics) • Based on worst-case assumptions • Static reservation of resources • Schedulability analysis and static scheduling • Simple execution platforms • Leads to overdesign (underutilization) • Best effort (e.g., multimedia, networks) • Based on average-case • Dynamic reservation of resources • Sophisticated architectures • Adaptive scheduling mechanisms • Leads to temporary unavailability • Bridging the gap: partitioned architectures
Graphical illustration of Moore’s law • Something that doubles frequently grows more quickly than most people realize! • A 2002 chip could hold about 15,000 1981 chips inside itself 1981 1984 1987 1990 1993 1996 1999 2002 10,000 transistors 150,000,000 transistors Leading edge chip in 1981 Leading edge chip in 2002
Tubes to Chips: Integrated Circuits • Driven by Information Processing needs IBM Power 5 IC (2004) IBM 701 calculator (1952) Slide soruce: Krish Chakrabarty, Duke University
Tubes to Chips: Biochips • Driven by biomolecular analysis needs Agilent DNA analysis Lab on a Chip (1997) Test tube analysis Slide soruce: Krish Chakrabarty, Duke University
Tubes to Chips: Biochips, cont. Automation Automation Automation Integration Integration Integration Miniaturization Miniaturization Miniaturization Test tubes Robotics Microfluidics Slide soruce: Krish Chakrabarty, Duke University
Biochip Architecture Slide soruce: Krish Chakrabarty, Duke University
Embedded systems design problem • Find an implementation that can perform the computation such that the requirements are satisfied. • Embedded systems perform computations (software) that are subject to physical constraints (hardware) • Reaction to a physical environment: deadline, throughput, jitter • Execution on a physical platform: processor speed, power, reliability • The need for an embedded systems design discipline • Computer science separates computation from physical constraints • Computer engineering ignores computation
Traditional embedded systems design • Design and build the target hardware • Develop the software independently • Integrate them and hope it works • Does not work for complex systems
Design crisis Gates/cm2 Moore’s Law Widening Gap Design Productivity Software Productivity Log Scale 0.35µ 0.25µ 0.18µ 0.12µ 0.15µ 0.1µ Technology (micron)
We need a better design methodology • Design methodology: the process of creating a system • Goal: optimize competing design metrics • Time-to-market • Design cost • Manufacturing cost • Quality, etc. • Design flow: sequence of steps in a design methodology. • May be partially or fully automated. • Use tools to transform, verify design. • Design flow is one component of design methodology. Methodology also includes management, organization, etc.
Abstraction and clustering IP Block Performance Inter IP Communication Performance Models IP Blocks SDF Wire Load RTL Clusters SW Models RTL Gate Level Model Capacity Load Transistor Model Capacity Load cluster cluster cluster abstract abstract abstract abstract 1970’s 1980’s 1990’s Year 2000 +
Abstraction and clustering: Platforms Platform API Application Software Software Software Platform Hardware Platform Hardware Input devices Output Devices I O Network • The “PC platform” makes development easier • x86 instruction-set architecture • fully specified set of buses and • a specified set of I/O devices • Similar platform definitions for specific embedded systems application areas
System-level design Application model System platform model Application model System-leveldesign tasks Architecture model Model of system implementation Evaluation Softwaresynthesis Hardware synthesis Constructive vs.improvement Analysis vs. simulation
Typical design tasks: Mapping and scheduling P1 m1 m2 P2 P3 m3 m4 P4 N1 N2 P1 P4 N1 Deadline Schedule table P2 P3 N2 m3 m4 S2 S1 m1 m2 Bus • Given • Application: set of interacting processes • Platform: set of nodes • Timing constraints: deadlines • Determine • Mapping of processes and messages • Schedule tables for processes and messages • Such that the timing constraints are satisfied
Biochips design tasks Allocation Binding Placement Scheduling
Safety-Critical Systems • Safety is a property of a system that will not endanger human life or the environment. • A safety-related system is one by which the safety of the equipment or plant is ensured. • Safety-critical system is: • Safety-related system, or • High-integrity system • Our daily lives depend on embedded systems