Introduction to Embedded System Xiaoming JU 2005.2.

Slides:



Advertisements
Similar presentations
EMBEDDED SYSTEMS. Textbook: T. Bräunl Embedded Robotics, Springer 2003.
Advertisements

© 2000 Morgan Kaufman Overheads for Computers as Components System design techniques zDesign methodologies. zRequirements and specification.
© 2000 Morgan Kaufman Overheads for Computers as Components Introduction zWhat are embedded systems? zChallenges in embedded computing system design.
임베디드 ( 내장형 ) 시스템 z 교과서 y Computers as components Morgan Kaufmann by Wayne Wolf xwww.mkp.com/embedwww.mkp.com/embed y Surviving the SoC revolution KAP.
© 2008 Wayne Wolf Overheads for Computers as Components, 2nd ed. Introduction What are embedded computing systems? Challenges in embedded computing system.
Embedded Systems: Introduction
Today’s Lecture What is the embedded system?
CHAPTER 1 THE 8051 MICROCONTROLLERS. Microcontroller vs. General- Purpose Microprocessor General-purpose microprocessors have ◦ No RAM ◦ No ROM ◦ No I/O.
CS4101 嵌入式系統概論 Design and Development 金仲達教授 國立清華大學資訊工程學系 Slides from Computers as Components: Principles of Embedded Computing System Design, Wayne Wolf,
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2006 Serdar Taşıran.
Embedded Computing Design & Co-design of Embedded Systems Maziar Goudarzi.
Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments.
Embedded Systems Design: A Unified Hardware/Software Introduction 1 Introduction to embedded Systems.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Department of Electrical and Computer Engineering Texas A&M University College Station, TX Abstract 4-Level Elevator Controller Lessons Learned.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Introduction to Microprocessors Number Systems and Conversions No /6/00 Chapter 1: Introduction to 68HC11 The 68HC11 Microcontroller.
Introduction to Embedded Systems Introduction to Embedded Systems.
Embedded Computer Systems Chapter1: Embedded Computing Eng. Husam Y. Alzaq Islamic University of Gaza.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
ASPPRATECH.
Dalya Gaber. Definition:- Embedded system is any device that includes a computer but is not itself a general purpose computer. It has hardware & software.
Microcontroller: Introduction
1 ECE 354 Slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005 Embedded Systems.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
Introduction to Embedded Systems. What is an Embedded System? Electronic devices that incorporate a microprocessor or microcontroller within their implementation.
EC4012PA PIC 18F Introduction 2  Processor  Input Devices  Output Devices  Memory Devices 3.
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Embedded Systems. 2 A “short list” of embedded systems And the list goes on and on Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic.
Codesign of Embedded Systems1 Introduction to Embedded Systems Part of HW/SW Codesign of Embedded Systems Course (CE )
1 ECE 354 © Koren/Moritz 2008, some slides modified from Burleson, UMass and Wolf, Computers as Components, Morgan Kaufman, 2005 ECE 354 Lecture 1 The.
Embedded System Design
ECE-777 System Level Design and Automation Introduction 1 Cristinel Ababei Electrical and Computer Department, North Dakota State University Spring 2012.
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
Computers as Components: Principles of Embedded Computing System Design Xiaoming JU
COMP3221/9221: Microprocessors and Embedded Systems COMP3221: Microprocessors and Embedded Systems Lecture 31: Embedded Systems
Lecture 13 Introduction to Embedded Systems Graduate Computer Architecture Fall 2005 Shih-Hao Hung Dept. of Computer Science and Information Engineering.
Upgrade to Real Time Linux Target: A MATLAB-Based Graphical Control Environment Thesis Defense by Hai Xu CLEMSON U N I V E R S I T Y Department of Electrical.
Intro to Architecture – Page 1 of 22CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Introduction Reading: Chapter 1.
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
High Performance Embedded Computing © 2007 Elsevier Lecture 3: Design Methodologies Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte Based.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Embedded Systems Design: A Unified Hardware/Software Introduction 1 Chapter 3 General-Purpose Processors: Software.
EE3A1 Computer Hardware and Digital Design
What is a Microprocessor ? A microprocessor consists of an ALU to perform arithmetic and logic manipulations, registers, and a control unit Its has some.
© 2000 Morgan Kaufman Overheads for Computers as Components1 Design methodologies zA procedure for designing a system. zUnderstanding your methodology.
1: Embedded System Concepts CET360 Microprocessor Engineering J. Sumey.
Chapter 1: Embedded Computing Embedded System Design.
Computer Organization IS F242. Course Objective It aims at understanding and appreciating the computing system’s functional components, their characteristics,
Embedded Real-Time Systems
Embedded Systems. What is Embedded Systems?  Embedded reflects the facts that they are an integral.
Programmable Logic Devices
Microprocessor and Microcontroller Fundamentals
Classifications of Software Requirements
ECE354 Embedded Systems Introduction C Andras Moritz.
THE PROCESS OF EMBEDDED SYSTEM DEVELOPMENT
EMBEDDED SYSTEMS
CS4101 Introduction to Embedded Systems Design and Implementation
Chapter 1: Introduction
AS PER OBE SYLLABUS DTE KARNATAKA SHANTHU M.Tech SAI JAYANI ACADEMY (R) SIXTH SEMESTER Diploma in ELECTRONICS AND COMMUNICATION ENGINEERING.
Why microcontrollers in embedded systems?
Chapter 1: The 8051 Microcontrollers
ریز پردازنده. ریز پردازنده مراجع درس میکروکنترلرهای AVR برنامه نویسی اسمبلی و C محمدعلی مزیدی، سپهر نعیمی و سرمد نعیمی مرجع کامل میکروکنترلرهای AVR.
Introduction to Embedded Systems
Design Challenge.
CHAPTER 1 THE 8051 MICROCONTROLLERS
Course Code 114 Introduction to Computer Science
Presentation transcript:

Introduction to Embedded System Xiaoming JU

© 2005 JXMIntroduction to Embedded Systems2 Introduction zWhat are embedded systems? zChallenges in embedded system design. zDesign methodologies.

© 2005 JXMIntroduction to Embedded Systems3 Definition zWhat is a real-time system? y“A real-time computer system may be defined as one which controls an environment by receiving data, processing them, and returning the results sufficiently quickly to affect the environment at the time” y“Pertaining to processing of data by a computer in connection with another process outside the computer according to time requirements imposed by the outside process” zWhat is an embedded system? y“Anything that uses a computer but does not look like one” y “The microprocessor in an embedded system is like an electric motor in a washing machine” y“An Embedded system means the real-time software is a component of a larger HW/SW system”

© 2005 JXMIntroduction to Embedded Systems4 Embedding a computer CPU mem input output analog embedded computer Embedded Systems are quite diverse, no one statement describes them all

© 2005 JXMIntroduction to Embedded Systems5 Memory CPU FPGA/ASIC Human Interface A/D Conversion SENSORS Electromechanical backup & safety Actuators D/A Conversion Diagnostic port Auxililary systems External Environment From: Koopman, P., Embedded System Desing Issues- The rest of the Story, Proc of 1996 CCD

© 2005 JXMIntroduction to Embedded Systems6 Products with Embedded Systems ? zOf 4 billions microprocessors/microcontrollers sold per year, 95% are for embedded products: yVCRs, DVD players yCell phone yMicrowave yWasher yCamera yCars (antilock brake system, air-bag, gas injection, electricity distribution..) yPrinters, copiers y………

© 2005 JXMIntroduction to Embedded Systems7 Early history zLate 1940’s: MIT Whirlwind computer was designed for real- time operations. yOriginally designed to control an aircraft simulator. z1971: Intel 4004, first microprocessor (4bits), initially for a calculator. zMicroprocessors get so cheap that microprocessor-based control systems become the rule. zOnly limit: processing time.c

© 2005 JXMIntroduction to Embedded Systems8 Microprocessor varieties zMicrocontroller: includes I/O devices, on- board memory. zDigital signal processor (DSP): microprocessor optimized for digital signal processing. zTypical embedded word sizes: 8-bit, 16- bit, 32-bit.

© 2005 JXMIntroduction to Embedded Systems9 Application examples zCanon EOS 3 camera has three microprocessors. yOne of 32-bit RISC CPU runs autofocus and eye control systems. zDigital TV: programmable CPUs + hardwired logic. zToday’s high-end automobile may have 100 microprocessors: y4-bit microcontroller checks seat belt; ymicrocontrollers run dashboard devices; y16/32-bit microprocessor controls engine.

© 2005 JXMIntroduction to Embedded Systems10 BMW 850i brake and stability control system zAnti-lock brake system (ABS): pumps brakes to reduce skidding. zAutomatic stability control (ASC+T): controls engine to improve stability. zABS and ASC+T communicate. yABS was introduced first---needed to interface to existing ABS module.

© 2005 JXMIntroduction to Embedded Systems11 BMW 850i, cont’d. brake sensor brake sensor brake sensor brake sensor ABS hydraulic pump

© 2005 JXMIntroduction to Embedded Systems12 Characteristics of embedded systems zSingle function (dedicated to a specific task). zTightly constrained based on design metrics such as. yCost ySize yPower yPerformance yReal time constraints zA wide verity of embedded processors and processor architectures are available. zMay not have an operating system if it does it is probably a real time operating system (RTOS).

© 2005 JXMIntroduction to Embedded Systems13 Real-time operation zMust finish operations by deadlines. yHard real time: missing deadline causes failure. ySoft real time: missing deadline results in degraded performance. zMany systems are multi-rate: must handle operations at widely varying rates.

© 2005 JXMIntroduction to Embedded Systems14 Why use microprocessors? zAlternatives: field-programmable gate arrays (FPGAs), custom logic, etc. zMicroprocessors are often very efficient: can use same logic to perform many different functions. zMicroprocessors simplify the design of families of products.

© 2005 JXMIntroduction to Embedded Systems15 The performance paradox zMicroprocessors use much more logic to implement a function than does custom logic. zBut microprocessors are often at least as fast: yheavily pipelined; ylarge design teams; yaggressive VLSI technology.

© 2005 JXMIntroduction to Embedded Systems16 Power zCustom logic is a clear winner for low power devices. zModern microprocessors offer features to help control power consumption. zSoftware design techniques can help reduce power consumption.

© 2005 JXMIntroduction to Embedded Systems17 Design challenge – optimizing design metrics zCommon metrics yUnit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost yNRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system ySize: the physical space required by the system yPerformance: the execution time or throughput of the system yPower: the amount of power consumed by the system yFlexibility: the ability to change the functionality of the system without incurring heavy NRE cost

© 2005 JXMIntroduction to Embedded Systems18 Challenges, etc. zCommon metrics (continued) yTime-to-prototype: the time needed to build a working version of the system yTime-to-market: the time required to develop a system to the point that it can be released and sold to customers yMaintainability: the ability to modify the system after its initial release yCorrectness, safety, many more

© 2005 JXMIntroduction to Embedded Systems19 Challenges, etc. zObvious design goal: yConstruct an implementation with desired functionality zKey design challenge: ySimultaneously optimize numerous design metrics zDesign metric  A measurable feature of a system ’ s implementation yOptimizing design metrics is a key challenge

© 2005 JXMIntroduction to Embedded Systems20 The next design challenge: SoC zSystem-on-chip (SoC) yprefabricated components: IP cores ygreat importance of software zHow do you design such systems? yMostly done in an ad- hoc-fashion DSP core 1 (ST18950): Sound codec DSP core 1 (ST18950): modem MCU 1 (ASIP): Master control MCU 2 (ASIP): Mem. Controller MCU 3 (ASIP): Bit manip. VLIW DSP: Programmable video operations std. extensions High-speed H/W: Video operators for DCT, inv. DCT, motion estimation Memory: Video RAM Glue logic I/O: Serial interface I/O: Host interface A/D & D/A Hardware Embedded Real-time Software SGS-Thomson Videophone

© 2005 JXMIntroduction to Embedded Systems21 How do you design embedded system? zClassical water-fall model: yRequirements specification: xDetermine what the client wants yAnalysis: xDetermine what needs to be done xIdeally we would have an executable specification of the system yDesign: xDetermine how the analysis result should be implemented xCome up with an implementation plan yImplementation: xCoding yTesting: xDetermine that the implementation is what needed to be done

© 2005 JXMIntroduction to Embedded Systems22 Required Features for Embedded System zThroughput zResponse zTestability zLow power zReliability zSafety z Maintainability z Security z Availability z Cost z Size/Weight z Survivability

© 2005 JXMIntroduction to Embedded Systems23 Design methodologies zA procedure for designing a system. zUnderstanding your methodology helps you ensure you didn’t skip anything. zCompilers, software engineering tools, computer-aided design (CAD) tools, etc., can be used to: yhelp automate methodology steps; ykeep track of the methodology itself.

© 2005 JXMIntroduction to Embedded Systems24 Levels of abstraction requirements specification architecture component design system integration Top-down Bottom-up

© 2005 JXMIntroduction to Embedded Systems25 Top-down vs. bottom-up zTop-down design: ystart from most abstract description; ywork to most detailed. zBottom-up design: ywork from small components to big system. zReal design uses both techniques.

© 2005 JXMIntroduction to Embedded Systems26 Stepwise refinement zAt each level of abstraction, we must: yanalyze the design to determine characteristics of the current state of the design; yrefine the design to add detail; yensure all design objects.

© 2005 JXMIntroduction to Embedded Systems27 Requirements zPlain language description of what the user wants and expects to get. zMay be developed in several ways: ytalking directly to customers; ytalking to marketing representatives; yproviding prototypes to users for comment.

© 2005 JXMIntroduction to Embedded Systems28 Functional vs. non- functional requirements zFunctional requirements: youtput as a function of input. zNon-functional requirements: ytime required to compute output; ysize, weight, etc.; ypower consumption; yreliability; yetc.

© 2005 JXMIntroduction to Embedded Systems29 Our requirements form

© 2005 JXMIntroduction to Embedded Systems30 Example: GPS moving map requirements zMoving map obtains position from GPS, paints map from local database. lat: 40 ° 13 ′ lon: 32 ° 19 ′ I-78 Scotch Road Display position Current position

© 2005 JXMIntroduction to Embedded Systems31 GPS moving map needs zFunctionality: For automotive use. Show major roads and landmarks. zUser interface: At least 400 x 600 pixel screen. Three buttons max. Pop-up menu. zPerformance: Map should scroll smoothly. No more than 1 sec power-up. Lock onto GPS within 15 seconds. zCost: $500 street price = approx. $100 cost of goods sold. zPhysical size/weight: Should fit in hand. zPower consumption: Should run for 8 hours on four AA batteries.

© 2005 JXMIntroduction to Embedded Systems32 GPS moving map requirements form

© 2005 JXMIntroduction to Embedded Systems33 Specification zA more precise description of the system: yshould not imply a particular architecture; yprovides input to the architecture design process. zMay include functional and non-functional elements. zMay be executable or may be in mathematical form for proofs.

© 2005 JXMIntroduction to Embedded Systems34 GPS specification zShould include: yWhat is received from GPS; ymap data; yuser interface; yoperations required to satisfy user requests; ybackground operations needed to keep the system running.

© 2005 JXMIntroduction to Embedded Systems35 Architecture design zWhat major components go satisfying the specification? zHardware components: yCPUs, peripherals, etc. zSoftware components: ymajor programs and their operations. zMust take into account functional and non-functional specifications.

© 2005 JXMIntroduction to Embedded Systems36 GPS moving map block diagram GPS receiver search engine renderer user interface database display

© 2005 JXMIntroduction to Embedded Systems37 GPS moving map hardware architecture GPS receiver CPU panel I/O display frame buffer memory

© 2005 JXMIntroduction to Embedded Systems38 GPS moving map software architecture position database search renderer timer user interface pixels

© 2005 JXMIntroduction to Embedded Systems39 GPS

© 2005 JXMIntroduction to Embedded Systems40 Designing hardware and software components zMust spend time architecting the system before you start coding. zSome components are yready-made, ysome can be modified from existing designs, yothers must be designed from scratch.

© 2005 JXMIntroduction to Embedded Systems41 System integration zPut together the components. yMany bugs appear only at this stage. zHave a plan for integrating components to uncover bugs quickly, test as much functionality as early as possible.

© 2005 JXMIntroduction to Embedded Systems42 Thank you