1 / 90

Real-Time Embedded Systems

Real-Time Embedded Systems. Assist. dr. Barbara Koroušić Seljak Barbara.Korousic@ijs.si (01) 4773-363. Course synopsis. Fall semester : Basics of real-time and embedded systems Embedded systems’ modeling Software and program design concepts Operating systems for real-time applications.

salim
Télécharger la présentation

Real-Time Embedded Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Real-Time Embedded Systems Assist. dr. Barbara Koroušić Seljak Barbara.Korousic@ijs.si (01) 4773-363

  2. Course synopsis • Fall semester: • Basics of real-time and embedded systems • Embedded systems’ modeling • Software and program design concepts • Operating systems for real-time applications Jožef Stefan International Postgraduate School

  3. Course synopsis • Spring semester: • Designing and developing embedded systems • Implementation and performance issues Jožef Stefan International Postgraduate School

  4. Benefits? Learn about ... • ... challenges and approaches in real-time embedded system design • …performance estimation of real-time embedded systems • ... current research areas Jožef Stefan International Postgraduate School

  5. Basics of real-time and embedded systems • Real-time systems Jožef Stefan International Postgraduate School

  6. Real-time (RT) systems • Categories of computer systems: • Batch: has no operational deadline from event to system response; • Interactive on-line: quick response is longed-for, but not required; • Real-time: system response is required within a predefined timescale, otherwise the system won’t work properly. Jožef Stefan International Postgraduate School

  7. Characteristics of a batch system • The user pre-processes all programs and information at a local site, and at some convenient time these jobs are passed to a remote computer. When all jobs are finished, the results are transmitted back to the originating site. Jožef Stefan International Postgraduate School

  8. Normally, access to such a system is made using computer-based remote terminals, and all transactions are handled by the central computer in a time-sliced fashion. These systems are widely used in banking, holiday booking and mail-order systems. Their response time depends on the amount of activity. Characteristics of an on-line system Jožef Stefan International Postgraduate School

  9. Characteristics of a RT system • A control computer detects events triggered by sensors, and responds over actuators within predefined time bounds. Jožef Stefan International Postgraduate School

  10. History of real-time computing • The term real-time derives from its use in early simulation. • Originally, this term referred to a simulation that proceeded at a rate that matched that of the real process it was simulating. Jožef Stefan International Postgraduate School

  11. RT Applications ● Low weighting; ● ● ● ● High weighting Jožef Stefan International Postgraduate School

  12. hard deadline value time Hard RT Applications • Critical deadlines • Usually, low SW complexity • Example: airbag deployment system in motor vehicles fast system – late deployment defeats the whole purpose of airbag protection Jožef Stefan International Postgraduate School

  13. soft deadline value time Soft RT Applications • Deadlines are not critical • Usually, more complex and large SW; man-machine interface • Examples: factory automation system, barcode recognition system fast/slow system – if fast/slow operator response is required Jožef Stefan International Postgraduate School

  14. Basics of real-time and embedded systems • Real-time systems • Embedded systems Jožef Stefan International Postgraduate School

  15. Categories of RT systems • Categories of computing systems: • General-purpose computing systems; • Embedded systems (ESs). • RT systems may be general-purpose or embedded systems. • We are going to discuss RT embedded systems. Jožef Stefan International Postgraduate School

  16. Characteristics of general-purpose systems • Broad class of applications; • Programmable by the end user; • Faster is better. • Criteria: • Cost, • performance (average speed); • Examples: personal computers, laptops, mainframes, servers. Jožef Stefan International Postgraduate School

  17. What is an ES? • An embedded system is an electronic component within a physical system. sensors / actuators external process man-machine interface embedded system (a combination of tailored HW & SW) reactive & time-constrained environment Jožef Stefan International Postgraduate School

  18. Characteristics of ESs • Single-functioned: • A single system-tailored task or a very small number of related tasks are executed repeatedly; • Minimal end-user intervention; • Tightly constrained: • Low cost, low power, small size, easy-to-use, etc; • Reactive & real-time: • Continually reacts to events in the system’s physical environment; • Must perform certain tasks in real-time on a physical platform. Jožef Stefan International Postgraduate School

  19. Examples of ESs in common environments (1) Jožef Stefan International Postgraduate School

  20. Examples of ESs in common environments (2) Jožef Stefan International Postgraduate School

  21. Short list of embedded applications • Consumer electronics (MP3 players, smart clothes, wearable devices) • Home appliances (microwave owens, home security system) • Office automation (modems, printers, scanners) • Business equipment (intruder alarm systems, POS terminals) • Automobiles (fuel injection, anti-lock brakes) • Aircrafts, satellites, trains, submarines (navigation systems) • Medicine (life-support systems, medical devices) • Telecommunication (network switches/routers, cell phones) • Automation systems (monitors, robots) Jožef Stefan International Postgraduate School

  22. Microprocessor and semiconductor chips’ trends Jožef Stefan International Postgraduate School

  23. Late 1940’s: MIT Whirlwind computer was designed for real-time operations: Originally designed to control an aircraft simulator; In the 1960’s: The first recognizably ES was the Apollo Guidance Computer (MIT Instrumentation Laboratory); By the end of the 80’s: ESs were the norm rather than the exception for almost all electronics devices (microcontrollers, I2C). Apollo Guidance computer Brief history of ESs (1) Whirlwind computer Intel 4004 Jožef Stefan International Postgraduate School

  24. Brief history of ESs (2) Today’s complex ESs are based on networks of distributed microprocessors that run many off-the-shelf operating systems and communicate through wired and wireless buses, LANs and WANs; • A high-end automobile may have 100 microprocessors: • 4-bit microcontrollers check seat belts; • microcontrollers run dashboard devices; • 16/32-bit microprocessor controls engine. Jožef Stefan International Postgraduate School

  25. Brief history of ESs (3) • What do we expect from high-performance ESs today? • Giga-ops of computing power; • For example, cell phones that use SW-radio techniques will need to deliver at least 10 billion operations per second; • Multimedia applications. • It is difficult to achieve this performance level in the face of real-time and low power or other constraints. Jožef Stefan International Postgraduate School

  26. Few statistical facts • General-purpose computers: • Millions of units produced per year. • Embedded systems: • Billions of units produced yearly (VDC Report, 2006). • More than 98% of processors applied today are in ESs. • Mean age of embedded developers: 39,6. Jožef Stefan International Postgraduate School

  27. Students Student Research area • Student 1 • Student 2 • Student 3 • Student 4 • Student 5 • Student 6 • Student 7 Jožef Stefan International Postgraduate School

  28. ESs’ modeling • Challenges: • Technological: build an embedded system of predictable functionality and quality (performance & robustness) considering the system’s constraints; Jožef Stefan International Postgraduate School

  29. Execution constraints CPU speed memory power HW failure rates Computing methods algorithms reuse System’s reaction constraints performance (deadlines, jitter, throughput) robustness (security, safety, availability) How to satisfy the technological challenge? Jožef Stefan International Postgraduate School

  30. Execution constraints CPU speed memory power HW failure rates Computing methods algorithms reuse System’s reaction constraints performance (deadlines, jitter, throughput) robustness (security, safety, availability) Hardware design? new computer architectures (open & flexible multi-core SoC) Jožef Stefan International Postgraduate School

  31. Execution constraints CPU speed memory power HW failure rates Computing methods algorithms reuse System’s reaction constraints performance (deadlines, jitter, throughput) robustness (security, safety, availability) Software design? new software architectures (1-2 million lines of code) Jožef Stefan International Postgraduate School

  32. Execution constraints CPU speed memory power HW failure rates Computing methods algorithms reuse System’s reaction constraints performance (deadlines, jitter, throughput) robustness (security, safety, availability) Control design? novel system-level analysis, modeling methods and tools Jožef Stefan International Postgraduate School

  33. Execution constraints CPU speed memory power HW failure rates Computing methods algorithms reuse System’s reaction constraints performance (deadlines, jitter, throughput) robustness (security, safety, availability) HW/SW Codesign! Design, validation & maintenance processes need to support the high-performance HW & communication technologies! Jožef Stefan International Postgraduate School

  34. Co-specification Problem analysis Requirement specifications HW/SW partitioning Co-synthesis Interface SW HW SystemC code C code VHDL code System Integration Co-simulation Co-verification HW/SW Co-design Approach • In the past, HW and SW design technologies were very different. • Today, synthesis approaches enable a unified view of HW and SW: • Design of HW and SW can start from behavioral (system-level) description in sequential program model; • Electronic System Level Design. Jožef Stefan International Postgraduate School

  35. The Co-design Ladder (Vahid&Givargis, 2002) Sequential program codes (e.g., C, VHDL, SystemC) SW Behavioral synthesis(1990s, 2000s) Compilers (1960s,1970s) Register transfers RT synthesis (1980s, 1990s) Assembly instructions Logic equations/FSMs Assemblers, linkers (1950s, 1960s) Logic synthesis (1970s, 1980s) Machine instructions Logic gates Traditional program on a programmable processor VLSI, ASIC, or PLD implementation HW Jožef Stefan International Postgraduate School

  36. Embedded Systems Design Challenge • Design goal: • Construct a system with desired functionality. • Key design challenge: • Simultaneously optimize numerous design metrics: • Time-to-prototype • Time-to-market • Maintainability • Correctness, reliability, safety, etc. 8 months Jožef Stefan International Postgraduate School

  37. ESs’ modeling • Challenges: • Technological: build an embedded system of predictable functionality and quality (performance & robustness) considering the system’s constraints; • Scientific: integrate Electrical Engineering and Computer Science methodologies. Jožef Stefan International Postgraduate School

  38. Electrical engineering Differential equations Linear algebra Probability theory Sythesis Theories of estimation Theories of robustness Computer science Logic Discrete structures Automata theory Theories of correctness Verification How to satisfy the scientific challenge? Let’s take down the cultural wall between the two fields! Jožef Stefan International Postgraduate School

  39. Modeling (1) Main steps of the ES’s design: • Definition of system’s constraints / requirements; • Derivation of an abstract system, i.e. a model; • Automatic generation of a system. Jožef Stefan International Postgraduate School

  40. SW design HW design model model a program a HW description a compiler generates a computer-aided design tool synthesizes a code a circuit Modeling (2) • However, we cannot separate computation (SW) from physicality (platform & environment)! Jožef Stefan International Postgraduate School

  41. Analytical modeling (1) • Analytical model is asimulation, based on an abstract system’s representation, which: • attempts to find analytical (equation-based) solutions to problemsthat enable the prediction of the system’s behavior from a set of parameters and initial conditions. Jožef Stefan International Postgraduate School

  42. Analytical modeling (2) • Types of analytical models: • algorithm-based (language-based: Ada, RT-Java / synthesis-based: VHDL, Verilog), • equation-based (MATLAB/Simulink) • object-oriented, • dynamic simulation, • implementation platform independent (model-based); • ANSYS. Jožef Stefan International Postgraduate School

  43. Analytical modeling (3) • Building blocks: • types: transistors, logic gates, functional components (adders), architectural components (processors); • structure changes: deterministic, or probabilistic; • composition: interconnected, inherently parallel, determined by data flows; • formal semantics: transfer functions, typically specified by equations; Examples: netlists, dataflow diagrams, and other notations for describing system’s structure. Jožef Stefan International Postgraduate School

  44. Embedded MATLAB: automatic code generation of C and C++ objects, optimized for ESs. Analytical modeling (4) Jožef Stefan International Postgraduate School

  45. Computational modeling (1) • Computational model is a computer program, or a network of computers, which attempts to simulate an abstract model of a particular system: • simulation is combined with the reality of actual events; • solutions to the problem are machine-based. Jožef Stefan International Postgraduate School

  46. Computational modeling (2) • Types of computational models: • machine-based (RT/UML, AADL) • object-oriented, • dynamic simulation, • more generic (execution semantics independent) – model-based. Jožef Stefan International Postgraduate School

  47. Computational modeling (3) • Building blocks: • types: objects, threads; • structure changes: dynamically; • composition: sequential, determined by control flows; • formal semantics: abstract machine (virtual machine / automaton); Examples: programs, state machines, and other notations for describing system dynamics. Jožef Stefan International Postgraduate School

  48. Computational modeling (4) • Be realistic about the UML: • Lack of analytical tools for computational models to deal with physical constraints; • Generally, codeis still individually designed, not automatically generated. Jožef Stefan International Postgraduate School

  49. Analytical vs. computational modeling Jožef Stefan International Postgraduate School

  50. Software and program design concepts • SW Prototyping Jožef Stefan International Postgraduate School

More Related