Presentation is loading. Please wait.

Presentation is loading. Please wait.

COMP3221/9221: Microprocessors and Embedded Systems COMP3221: Microprocessors and Embedded Systems Lecture 31: Embedded Systems

Similar presentations


Presentation on theme: "COMP3221/9221: Microprocessors and Embedded Systems COMP3221: Microprocessors and Embedded Systems Lecture 31: Embedded Systems"— Presentation transcript:

1 COMP3221/9221: Microprocessors and Embedded Systems COMP3221: Microprocessors and Embedded Systems Lecture 31: Embedded Systems http://www.cse.unsw.edu.au/~cs3221 Lecturer: Hui Wu Session 2, 2005

2 COMP3221/9221: Microprocessors and Embedded Systems Overview What is an embedded system? Characteristics of embedded systems Embedded system requirements

3 COMP3221/9221: Microprocessors and Embedded Systems Embedded Systems An embedded system is a combination of hardware and software to perform a specific function; is part of a larger system; works in a reactive and time-constrained environment.

4 Characteristics of Embedded Systems Application specific  An embedded system performs a single or fixed set of functions;  All functions are known a priori before the system design begins.  The fixed functionality provides opportunities for design optimization.  Application specific processor design can be a significant component of some embedded systems  Advantages  Customization yields lower area, power, cost and higher performance.  Disadvantages  Higher hardware/software development overhead, resulting in longer time-to-market. Strict design constraints  performance, timing, power, area, cost, reliability etc.

5 Characteristics of Embedded Systems (Cont.) Multiple heterogeneous processing units  General processor, ASIC (Application Specific Integrated Circuit), ASIP (Application Specific Instruction set Processor), DSP (Digital Signal Processing processor) etc. Reactive  Embedded systems constantly interact with their environment, taking in data from sensors and/or other input devices and making appropriate responses. Real-time  Embedded systems interact with their environments in a timely manner. Parallel and distributed computing  Many embedded systems use parallel/distributed architecture where multiple processing units are tightly or loosely coupled.

6 COMP3221/9221: Microprocessors and Embedded Systems Examples of Embedded Systems Consumer electronics, e.g., cellular phones, personal digital assistants, interactive game boxes, cameras, camcorders,.... Consumer products, e.g., washers, microwave ovens,... Automobiles (anti-lock braking, engine control,...) Industrial process controllers & avionics/defence applications Computer/Communication products, e.g., printers, FAX machines,...

7 COMP3221/9221: Microprocessors and Embedded Systems Traditional Embedded Systems Design: Major Procedures Modelling  Specifying the behaviours of the target embedded system. Hardware-software partitioning  Partitioning the specifications into either hardware components or software components.  Hardware components are implemented in co-processors.  Software components run on custom hardware or a general microprocessor. Hardware design and software design  Hardware design includes co-processor design, interfaces etc.  Software design includes interrupt handlers, task scheduler etc.

8 COMP3221/9221: Microprocessors and Embedded Systems Traditional Embedded Systems Design: Major Procedures (Cont.) Modelling Hardware-software partitioning Hardware designSoftware design

9 COMP3221/9221: Microprocessors and Embedded Systems Problems with Traditional Embedded Systems Design The precise information (execution time etc) about each task is not available at the partitioning stage. Designers have to use estimated values in partitioning, leading to bad partitioning and therefore bad design. How to solve this problem?  Use hardware-software co-design.

10 COMP3221/9221: Microprocessors and Embedded Systems What Is Hardware-Software Co-design? The hardware/software designs proceed in parallel, with feedbacks and interactions occurring between the two as the design progresses. An multi-objective function of cost, area, power etc is used to find an optimal design.

11 COMP3221/9221: Microprocessors and Embedded Systems Goals of Embedded System Design Reduce time-to-market. Produce an optimal design which minimize the multi- objective function of cost, area, power etc. New design methodology and CAD tools for automating embedded system design are needed.  CAD today addresses synthesis problems at a purely hardware level:  efficient techniques for data-path and control synthesis down to silicon.

12 COMP3221/9221: Microprocessors and Embedded Systems Disciplines Involved in Embedded System Design Application domain (Signal processing, process control, machine control, robot,...). Software engineering  How to build a correct and reliable embedded system?  Software reuse? Programming Languages and Compilers  How to reduce the execution time of each task?  How to reduce the power consumption of processors and memory?

13 COMP3221/9221: Microprocessors and Embedded Systems Operating Systems  How to schedule tasks such that all timing constraints are satisfied?  How to schedule tasks such that the processor power consumption is minimized? VLSI (computer aided) design  How to minimize the area and maximize the performance for a co-processor?  How to minimize the power consumption of a co-processor? Disciplines Involved in Embedded System Design (Cont.)

14 COMP3221/9221: Microprocessors and Embedded Systems Parallel/Distributed systems  Many embedded systems use parallel/distributed architecture where the multiple processors are tightly coupled or loosely coupled. Many issues exist.  Task scheduling;  Resources sharing etc. Real-time systems (Hard & soft real time systems)  How to specify and satisfy timing requirements?  How to share resource such that timing constraints are still satisfied? Disciplines Involved in Embedded System Design (Cont.)

15 COMP3221/9221: Microprocessors and Embedded Systems Embedded System Requirements Functional requirements Timing requirements Dependability requirements

16 Functional Requirements Data collection  Sensors  AD converters  Signal conditioning etc Direct digital control  Actuators Man-machine interface  Informs the operator of the current state of the controlled object  Assists the operator in controlling the system.

17 COMP3221/9221: Microprocessors and Embedded Systems Timing Requirements Tasks Release times and deadlines Minimal task distance Maximal task distance Task Periods Minimal error detection latency Minimal latency jitter etc.

18 Timing constraints are often imposed on tasks. Typical timing constraints include: Release time: A task cannot be executed before its release time. Deadline: A task is required to finish by its deadline. Minimal distance: The distance between two tasks is required to be greater than a specified value.  The distance is defined to be the difference of the start time of the other task completed later and the completion time of the task completed earlier. Maximal distance: The distance between two tasks is required to be less than a specified value. Timing Requirements (Cont.)

19 COMP3221/9221: Microprocessors and Embedded Systems Period: A periodic task must be executed periodically. For example, if the period of a task is 5, it must be executed and completed every 5 time units. … 0 2 5 7 10 12 T1 Figure 1: A periodic task T1 has a period of 5 and a worst-case execution time of 2. Timing Requirements (Cont.)

20 COMP3221/9221: Microprocessors and Embedded Systems Hard Timing constraints: Miss of any hard timing constraints may cause catastrophes e.g., control systems for aircraft/space probes/nuclear reactors. Soft timing constraints: The violation of soft timing constraints only causes performance degradation. e.g., game box. Embedded systems may contain both hard and soft timing constraints. Task scheduler is responsible for satisfying all timing constraints. Timing Requirements (Cont.)

21 Consider an embedded system with a single processor and a set of 3 tasks T1, T2 and T3 with the following attributes: T1 is a periodic task with a period of 4 and a worst-case execution time of 2; T2 is a periodic task with a period of 5 and a worst-case execution time of 2; T3 is a non-periodic task with a release time of 0, a deadline of 20 and a worst-case execution of 2. T1T2T1 0 2 4 6 8 10 12 14 16 18 20 T1T2 T3T2 Timing Requirements (Cont.)

22 Dependability Requirements Reliability  Number of failures per hour or Mean-Time-To-Failure (MTTF) in hours. Safety  critical failure modes  certification Maintainability  Mean-Time-To-Repair (MTTR). Availability  A = MTTF / (MTTF + MTTR) Security

23 Major Components in Embedded Systems Microprocessors/microcontrollers, co-processors, DSP cores, ASICs, ASIPs, FPGAs (Field Programmable Gate Arrays), memory (RAM, ROM, FLASH, EEPROM) and buses. Data acquisition and processing Communication System logic and control Interfaces Auxiliary units  display  storage  monitoring and protection  test and diagnosis.

24 — From LSI Logic web Page Courtesy: R. Gupta, UC Irvine Example Embedded System (I): DVD

25 — From Siemens web page Courtesy: R. Gupta, UC Irvine Example Embedded System (II): Dryer

26 COMP3221/9221: Microprocessors and Embedded Systems Reading Material 1.Chapter 1 in Embedded Systems Design: An Introduction to Processes, Tools, and Techniques by Arnold S. Berger. 2.S. Edwards, L. Lavagno, E. Lee, A. Sangiovanni-Vincentelli Design of Embedded Systems: Formal Methods, Validation and Synthsis. Proceedings of the IEEE, vol. 85 (no.3), March 1997, p366- 290.


Download ppt "COMP3221/9221: Microprocessors and Embedded Systems COMP3221: Microprocessors and Embedded Systems Lecture 31: Embedded Systems"

Similar presentations


Ads by Google