Sistemi Embedded Introduzione

Similar documents
Introduction to Embedded Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Introduction to Embedded Systems

Introduction to Embedded Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Lecture 12: EIT090 Computer Architecture

Davide Rossi DEI University of Bologna AA

Digital Systems Design. Introduction to embedded and digital systems

FPGA BASED SYSTEM DESIGN. Dr. Tayab Din Memon Lecture 1 & 2

Embedded Systems and Software

CprE 588 Embedded Computer Systems

Microprocessors And Microcontroller

COSC What is an embedded system?

Design of Embedded Systems

ECE332, Week 2, Lecture 3. September 5, 2007

ECE332, Week 2, Lecture 3

HARDWARE SOFTWARE CO-DESIGN

Embedded system. Microprocessor System Design EHB432E Lecture -1. Embedded system. Embedded system. Istanbul Technical University

Introduction. Definition. What is an embedded system? What are embedded systems? Challenges in embedded computing system design. Design methodologies.

Lecture 1 Introduction To 3410

CENG 336 Introduction to Embedded Systems Development. Lecture 1: An Introduction to Computers and Embedded Systems

Introduction to Embedded Systems

Embedded System Design

Embedded System Design

Lesson 2. Introduction to Real Time Embedded Systems Part II. mywbut.com

ICS 180 Spring Embedded Systems. Introduction: What are Embedded Systems and what is so interesting about them?

CENG-336 Introduction to Embedded Systems Development

José Costa What is an embedded system? Examples of embedded systems. Characteristics of embedded systems

Embedded Computation

Embedded Systems Design. Dimitrios Soudris

Dept. Computer and Information Science (IDA) Linköpings universitet Sweden

CMPE 310: Systems Design and Programming

ELEC 5260/6260/6266 Embedded Computing Systems

ELEC 5260/6260/6266 Embedded Computing Systems

Mixed-Signal Analog. C.S. Lee. Senior Vice President High-Volume Analog & Logic

EC EMBEDDED AND REAL TIME SYSTEMS

Reminder. Course project team forming deadline. Course project ideas. Friday 9/8 11:59pm You will be randomly assigned to a team after the deadline

Part 2: Principles for a System-Level Design Methodology

Hardware Software Codesign of Embedded Systems

Ch1. Embedded System Overview

Hardware Software Codesign of Embedded System

CS 211: Computer Architecture course wrapup: : goodbye to cs211!

Embedded Systems 1. Introduction

RE for Embedded Systems - Part 1

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems)

TDDI11 Embedded Software Programmering av inbyggda system

Signals and Systems. Signal Processing Communication Principle Linear Systems Control System. Fall Signals and Systems.

Reminder. Course project team forming deadline. Course project ideas. Next milestone

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Microcontrollers and Embedded Processors Module No: CS/ES/2 Quadrant 1 e-text

The Embedded System Design Process. Wolf Text - Chapter 1.3

Introduction to Embedded Systems

Design Metrics. A couple of especially important metrics: Time to market Total cost (NRE + unit cost) Performance (speed latency and throughput)

Reference: Barry & Crowley, Modern Embedded Computing: Designing Connected, Pervasive, Media-Rich Systems, Morgan Kaufmann, 2012.

Embedded Systems and Software

Embedded Systems. Octav Chipara. Thursday, September 13, 12

Typical DSP application

Operating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm

Embedded System Design

MEMS & Advanced Analog

Introduction to System-on-Chip

EMBEDDED SYSTEM BASICS AND APPLICATION

Long Term Trends for Embedded System Design

Embedded Systems: Hardware Components (part I) Todor Stefanov

Overview of Embedded Systems in Medical Applications

ITONLINEEXAM.COM. Chapter 1 Basic Introduction to Computers

EE414 Embedded Systems Ch 2. Custom Single- Purpose Processors: Hardware

Digital Audio Broadcasting. Xilinx Solutions for DAB Receiver Systems

Parameterized System Design

Calendar Description

Hardware-Software Codesign. 1. Introduction

CHAPTER 1: REAL TIME COMPUTER CONTROL

Basic Components of Digital Computer

The Global Market for ASICs

APPLICATIONS FOR EMBEDDED COMESH William Bricken January 2003 ADVANTAGES

Microprocessors, Lecture 1: Introduction to Microprocessors

EEL 4783: HDL in Digital System Design

Agenda. Introduction Market trend and application 1394 Market Analysis Data 1394 and industry Applications. Other Technologies USB DVI

Embedded Systems Introduction

ECE 1161/2161 Embedded Computer System Design 2. Introduction. Wei Gao. Spring

VLSI Design Automation. Maurizio Palesi

Mechatronic Design Approach D R. T A R E K A. T U T U N J I P H I L A D E L P H I A U N I V E R S I T Y, J O R D A N

Classification of Semiconductor LSI

Chapter 5: ASICs Vs. PLDs

Embedded Systems. Information. TDDD93 Large-Scale Distributed Systems and Networks

Syllabus Instructors:

Real-Time Systems 1. Basic Concepts

Computer Architecture s Changing Definition

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi. Lecture - 10 System on Chip (SOC)

Predicting the Next Wave of Semiconductor Growth

EMBEDDED SYSTEMS INTRODUCTION

Parts of the Computer System. Parts of the Computer System. Parts of the Computer System. Essential Computer Hardware. Information Processing Cycle

Abstract. 1 Introduction. Reconfigurable Logic and Hardware Software Codesign. Class EEC282 Author Marty Nicholes Date 12/06/2003

Components & Characteristics of an Embedded System Embedded Operating System Application Areas of Embedded d Systems. Embedded System Components

EEL 4783: Hardware/Software Co-design with FPGAs

Define the term, computer, and describe the relationship between data and information

Future Directions in Miniaturization inemi, January 16, 2008, Shanghai

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE4220. PROGRAMMABLE LOGIC DEVICES (PLDs)

EE382V: System-on-a-Chip (SoC) Design

COMPLEX EMBEDDED SYSTEMS

ASIC Design Starts for by Key End Market Applications

IMC5-1EO. Embedded Operating Systems. Damien MASSON Last modification: November 12, 2013

U.S. CONSUMER TECHNOLOGY SALES & FORECASTS

Transcription:

Sistemi Embedded Introduzione Riferimenti bibliografici Embedded System Design: A Unified Hardware/Software Introduction, Frank Vahid, Tony Givargis, John Wiley & Sons Inc., ISBN:0-471-38678-2, 2002. Computers as Components: Principles of Embedded Computer Systems Design, Wayne Wolf, Morgan Kaufmann Publishers, ISBN: 1-55860-541-X, 2001 1 Embedded systems overview Computing systems are everywhere Most of us think of desktop computers PC s Laptops Mainframes Servers But there s another type of computing system Far more common... 2 1

Embedded systems overview Embedded computing systems Computing systems embedded within electronic devices Hard to define. Nearly any computing system other than a desktop computer Billions of units produced yearly, versus millions of desktop units Perhaps 50 per automobile 3 Embedded Systems Embedded system: any device that includes a programmable computer but is not itself a general-purpose computer. Take advantage of application characteristics to optimize the design 4 2

Embedding a computer output analog CPU input analog embedded computer mem Application areas (1) Automotive electronics Aircraft electronics Trains Telecommunication Military applications 6 3

Application areas (2) Consumer electronics 7 A short list of embedded systems Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR s, DVD players Video game consoles Video phones Washers and dryers 8 4

Cars Multiple processors Up to 100 Networked together Multiple networks Functions: ABS: Anti-lock braking systems ESP: Electronic stability control Airbags Theft prevention with smart keys Blind-angle alert systems... etc... 9 BMW 850i sensor sensor brake brake ABS hydraulic pump brake brake sensor sensor 5

Cars Large diversity in processor types: 8-bit door locks, lights, etc. 16-bit most functions 32-bit engine control, airbags Form follows function Processing where the action is Sensors and actuators distributed all over the vehicle 11 Cars BMW 7 series Up to 70 Electronic Modules Electronic Cost : 25% total Car cost Semiconductor Content > 1000 $ 6

Some common characteristics of embedded systems Single-functioned - Executes a single program, repeatedly 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 13 Digital Camera CCD Digital camera chip A2D CCD preprocessor Pixel coprocessor D2A lens JPEG codec Microcontroller Multiplier/Accum DMA controller Display ctrl Memory controller ISA bus interface UART LCD ctrl Single-functioned -- always a digital camera Tightly-constrained -- Low cost, low power, small, fast Reactive and real-time 14 7

Some common characteristics of embedded systems An embedded system is designed to perform one or a few specific applications: The applications to be executed are known at design time It is often desirable flexibility of the system for future updates or for re-use of the component. Normally this goal is obtained by making the system reprogrammable Often have to run sophisticated algorithms or multiple algorithms. - Cell phone, laser printer. Characteristics of embedded systems Embedded Systems interact with the physical environment. They include devices such as sensors and actuators -Transducers, sensors and actuators are essential enabling technologies for embedded systems MEMS (microelectromechanical sensors) accelerometers, gyroscopes, inertial modules, pressure sensors Embedded Systems are Hybrid Dystems ( digital + analogic) A/D and D/A are included Dedicated user interface: - no mouse, keyboard and screen - display with reduced size reduced number on I/O devices 8

Characteristics of embedded systems Some functions are more efficiently executed using dedicated hardware devices such as DSP, IP cell, etc. Typical DSP applications: generic signals : filtering, DFT, FFT, etc. voice: encoding, decoding, equalization, etc. modem: modulation, demodulation Characteristics of embedded systems Many ES must meet real-time constraints Real-time system must react to stimuli from the controlled object (or the operator) within the time interval dictated by the environment. For real-time systems, right answers arriving too late are wrong. Must finish operations by deadlines. - Hard real time: missing deadline causes failure. - Soft real time: missing deadline results in degraded performance. Many systems are multi-rate: must handle operations at widely varying rates. 18 9

Characteristics of embedded systems Typically, ES are reactive systems: A reactive system is one which is in continual interaction with is environment and executes at a pace determined by that environment [Bergé, 1995] Behavior depends on input and current state. automata model appropriate, 19 Challenges for implementation in hardware Lack of flexibility (changing standards). Mask cost for specialized HW becomes very expensive Trend towards implementation in Software 20 10

Heterogeneous HW/SW Implementations of Embedded Systems Cost Only HW, High cost and High performance. Only SW, Low cost and Low performance. Performance Mixed HW-SW, Medium cost and performance. Additionally, flexibility and tight time to market requirements favour SW implementations. Importance of Embedded Software and Embedded Processors... the New York Times has estimated that the average American comes into contact with about 60 micro-processors every day... [Camposano, 1996] Latest top-level BMWs contain over 100 micro-processors [Personal communication] Most of the functionality will be implemented in software 22 11

Challenges for implementation in software If embedded systems will be implemented mostly in software, then why don t we just use what software engineers have come up with? Exponential increase in software complexity In some areas code size is doubling every 9 months [ST Microelectronics, Medea Workshop, Fall 2003]... > 70% of the development cost for complex systems such as automotive electronics and communication systems are due to software development 23 Challenges for Embedded Software How can we capture the required behavior of complex systems? How do we validate specifications? How do we translate specifications efficiently into implementation? Do software engineers ever consider power dissipation? How can we check that we meet real-time constraints? Which programming language provides real-time features? How do we validate embedded real-time software? (large volumes of data), testing m 24 12

Challenges for Embedded Software It is not sufficient to consider ES just as a special case of software engineering EE knowledge must be available, Walls between EE and CS must be torn down 25 Co-design In the past: Hardware and software design technologies were very different Recent maturation of synthesis enables a unified view of hardware and software Now: Hardware/software codesign Compilers ( 1960's,1970's ) Assembly instructions Assemblers, linkers ( 1960's,s'1950) Machine instructions Microprocessor plus programbits: software Sequential program code (e.g., C, VHDL) Implementation Behavioral synthesis ( 1990's ) Register transfers RT synthesis ( 1990's,s'1980) Logic equations / FSM's Logic synthesis ( 1980's,s'1970) Logic gates VLSI, ASIC, or PLD implementation: hardware The choice of hardware versus software for a particular function is simply a tradeoff among various design metrics. there is no fundamental difference between what hardware or software can implement. 26 13

Design metrics 27 Design challenge optimizing design metrics Obvious design goal: Construct an implementation with desired functionality Key design challenge: Simultaneously optimize numerous design metrics Design metric A measurable feature of a system s implementation Optimizing design metrics is a key challenge 28 14

Design challenge optimizing design metrics Common metrics Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system Size: the physical space required by the system Performance: the execution time or throughput of the system Power: the amount of power consumed by the system Flexibility: the ability to change the functionality of the system without incurring heavy NRE cost 29 Design challenge optimizing design metrics Common metrics (continued) Time-to-prototype: the time needed to build a working version of the system Time-to-market: the time required to develop a system to the point that it can be released and sold to customers Maintainability: the ability to modify the system after its initial release Correctness, safety, many more 30 15

Design metric competition -- improving one may worsen others Power Performance Size NRE cost Digital camera chip CCD A2D CCD preprocessor Pixel coprocessor D2A lens JPEG codec DMA controller Microcontroller Multiplier/Accum Display ctrl Memory controller ISA bus interface UART LCD ctrl Expertise with both software and hardware is needed to optimize design metrics Not just a hardware or software expert, as is common A designer must be comfortable with various technologies in order to choose the best for a given application and constraints Hardware Software 31 Time-to-market Time required to develop a product to the point it can be sold to customers Market window Reve nues ($) Time (months) Period during which the product would have highest sales Average time-to-market constraint is about 8 months Delays can be costly 32 16

Revenues ($) Revenues ($) 10/14/2013 Losses due to delayed market entry On-time Market rise Delayed D W On-time Delayed entry entry Peak revenue Peak revenue from delayed entry Market fall Time 2W Simplified revenue model Product life = 2W, peak at W Time of market entry defines a triangle, representing market penetration Triangle area equals revenue Loss The difference between the ontime and delayed triangle areas 33 Losses due to delayed market entry Area = 1/2 * base * height Market rise On-time Delayed Peak revenue Peak revenue from delayed entry Market fall On-time = 1/2 * 2W * W Delayed = 1/2 * (W-D+W)*(W-D) Percentage revenue loss = (D(3W-D)/2W 2 )*100% Try some examples On-time entry D Delayed entry W Time 2W Lifetime 2W=52 wks, delay D=4 wks (4*(3*26 4)/2*26^2) = 22% Lifetime 2W=52 wks, delay D=10 wks (10*(3*26 10)/2*26^2) = 50% Delays are costly! 34 17

Total Cost ($) per product cost ($) 10/14/2013 NRE and unit cost Costs: Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system total cost = NRE cost + unit cost * # of units per-product cost = total cost / # of units = (NRE cost / # of units) + unit cost Example NRE=$2000, unit=$100 For 10 units total cost = $2000 + 10*$100 = $3000 per-product cost = $2000/10 + $100 = $300 Amortizing NRE cost over the units results in an additional $200 per unit 35 NRE and unit cost Compare technologies by costs -- best depends on quantity Technology A: NRE=$2,000, unit=$100 Technology B: NRE=$30,000, unit=$30 Technology C: NRE=$100,000, unit=$2 10000000 100000 1000000 10000 100000 A B C 1000 100 A B C 10000 10 1000 10 50 250 1250 6250 31250 1 10 50 250 1250 6250 31250 Numer of units (volume) Numer of units (volume) But, must also consider time-to-market 36 18

The performance design metric Widely-used measure of system, widely-abused Clock frequency, instructions per second not good measures Digital camera example a user cares about how fast it processes images, not clock speed or instructions per second Latency (response time) Time between task start and end e.g., Camera s A and B process images in 0.25 seconds Throughput Tasks per second, e.g. Camera A processes 4 images per second Throughput can be more than latency seems to imply due to concurrency, e.g. Camera B may process 8 images per second (by capturing a new image while previous image is being stored). Speedup of B over S = B s performance / A s performance Throughput speedup = 8/4 = 2 37 19