Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Embedded System Xiaoming JU 2005.2.

Similar presentations


Presentation on theme: "Introduction to Embedded System Xiaoming JU 2005.2."— Presentation transcript:

1

2 Introduction to Embedded System Xiaoming JU 2005.2

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

4 © 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”

5 © 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

6 © 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

7 © 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………

8 © 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

9 © 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.

10 © 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.

11 © 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.

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

13 © 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).

14 © 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.

15 © 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.

16 © 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.

17 © 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.

18 © 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

19 © 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

20 © 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

21 © 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

22 © 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

23 © 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

24 © 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.

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

26 © 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.

27 © 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.

28 © 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.

29 © 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.

30 © 2005 JXMIntroduction to Embedded Systems29 Our requirements form

31 © 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

32 © 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.

33 © 2005 JXMIntroduction to Embedded Systems32 GPS moving map requirements form

34 © 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.

35 © 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.

36 © 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.

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

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

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

40 © 2005 JXMIntroduction to Embedded Systems39 GPS

41 © 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.

42 © 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.

43 © 2005 JXMIntroduction to Embedded Systems42 Thank you


Download ppt "Introduction to Embedded System Xiaoming JU 2005.2."

Similar presentations


Ads by Google