1 / 25

“Politehnica” University of Timişoara Facult y of Automation and Computers

This lecture provides an introduction to advanced embedded systems, covering topics such as design goals, methodologies, specifications, reliability, safety, and security. It also explores embedded systems hardware, software, operating systems, real-time process scheduling, multiprocessors, hardware/software codesign, and validation.

schwartz
Download Presentation

“Politehnica” University of Timişoara Facult y of Automation and Computers

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. “Politehnica” University of TimişoaraFacultyof Automation and Computers Advanced Embedded Systems Master Computer Engineering Program, 1st year Lecturer: prof. dr. ing. Mircea POPA

  2. Advanced Embedded Systems Lecture 1 Embedded Systems – General Features

  3. Advanced Embedded Systems • Content: • Introduction • General features • Design goals and methodologies • Specifications • Reliability, safety and security • Embedded systems hardware • Input/ outputs • CPU • Interrupts • Embedded systems software • Operating systems • Real time process scheduling • Programs • Multiprocessors in embedded systems • Hardware/ software codesign • Validation of embedded systems

  4. Advanced Embedded Systems • References: • P. Mawerdell, Embedded System Design; Springer, 2006 • W. Wolf, High-Performance Embedded Computing;Morgan Kaufmann Publishers, 2007 • R. Zurawski, Embedded Systems Handbook;CRC, 2005

  5. Advanced Embedded Systems 1. Definitions and connections • There are several definitions; • Dortmund definition: • Embedded systems are information processing systems that are embedded into a larger product; • Berkeley definition: • Embedded software is software integrated with physical processes; • My definition: • Embedded Systems is a field of the computer engineering domain based on user programmable logic circuits, oriented on real – time applications; • User programmable logic circuits: microprocessors, microcontrollers, DSPs; • Microprocessors: for general purpose applications; • Microcontrollers: for real – time applications; • DSPs: for digital processing of analog signals (used especially in audio and video areas);

  6. Advanced Embedded Systems • ESs are destined to one application or a family of applications; • They may contain a microcomputer but usually are self - stating systems included in the devices they control; • The basic circuit is the microcontroller; • ESs are support for: ubiquitous computing, pervasive computing, ambient intelligence – they define the “Post PC era”; • The influence of ESs and communication technologies on ubicom:

  7. Advanced Embedded Systems 2. Common characteristics of ESs • Frequently, ESs are connected to the external world through sensors, for monitoring the environment and actuators, for controlling the environment; • Dependability: • The main reason is that ESs are directly connected to the external world and directly and immediately influences it; • They have to be dependable because in many cases are safety – critical (e.g. nuclear power plants, cars, trains, airplanes etc.) • Dependability means: • Reliability: the probability that a system will not fail; • Maintainability: the probability that a failing system can be repaired within a certain time; • Availability: the probability that a system is available; • Safety: is the property that a failing system will not cause any harm; • Security: the property that authentic communication is guaranteed and data are confidential unless otherwise specified;

  8. Advanced Embedded Systems • Efficiency: metrics for evaluating it: • Energy: many ESs are mobile being powered by batteries; battery technology improves at a lower rate than the increasing rate of the computational requirements so the available electrical energy must be used very efficiently; not so important for static ESs unless the case when power supplies are not available; • Code size: ESs don’t have hard disks for storing the code so it must be memorized in the system; the internal memory have limited capacity and it must be very efficiently used, meaning the code size should be minimized; • Run time efficiency: the minimum amount of hardware resources should be used for implementing the required functionality; parameters of the hardware (e.g. clock frequencies and supply voltages) should be optimized; • Weight: being portable, many ESs must have low weight; • Cost: very important for competitiveness on the market, especially when a great number of ESs are needed (e.g. in consumer electronics);

  9. Advanced Embedded Systems • Oriented or even dedicated towards a certain application or family of applications: • An ES will run always the same software; • Usually additional programs are not implemented because: • Running additional programs will make the system less dependable; • Running additional programs is only feasible if memory is unused, but unused resources should not exist in efficient systems; • ESs have dedicated user – interfaces: • ESs do not use classical peripherals such as keyboards, mice and monitors; • Instead they use push – buttons, steering wheels, pedals, leds, LCDs, 7 segment dispalys; • Many ESs are hybrid systems: they contain analog and digital parts; the analog parts can be for inputs or outputs and the digital part is for processing and can be for inputs or outputs; frequently the analog part is included in the CPU (microcontroller);

  10. Advanced Embedded Systems • Real – time constraints: • Hard real – time constraint: not meeting that constraint can result in a catastrophe (for example if an ES don’t control the brake of a car in a predetermined time); • Soft real – time constraint: not meeting that constraint will result in a loss of the quality provided by the system (for example, in audio or video areas); • ESs have to guarantee system response in worst case; solutions for improving the average performance (e.g. cache memories) or the average delay (e.g. by retransmissions) are not useful; • Reactive systems: • A reactive system is in continuous interaction with its environment and executes at a pace determined by that environment; • Reactive systems can be modeled by automata: they are in a certain state, waiting for an input, and when this comes they execute some computations and pass in a new state and possibly generate an output; they react in the same way for each input.

  11. Advanced Embedded Systems • Some differences from general purpose computers: • Human interface: leds, LCDs, cameras, switches, minikeyboards and neither monitors nor keybords; • Simple input/ output devices, no peripheral equipments; • Diagnostic port: for ES + the controlled system, not only for the computing part; • FPGAs, ASICs, analogic hardware for increasing performance or safety; • Software has a fixed function and is specific to the application; a general purpose computer may execute several programs chosen by the user but an ES may execute several programs chosen by the programmer; • Dimensions, power consumption and cost; • Lower speed: PCs are oriented to massive processing applications while ESs are oriented to real – time applications (input/ output rather than processing operations); • Limited capacity for memories: no need for much memory in case of real – time applications.

  12. Advanced Embedded Systems 3. Applications areas • Automotive: • 90% of innovation in a car is related to electronics; • ABS, ESP, smart keys, blind angle alert system, tire pressure, … • Many microcontrollers in a car: can be more than 100; are connected in different networks; • Heterogeneous microcontrollers: 8 bit for doors, lights, 16 bit for other of the functions, 32 bit for engine, airbags etc. • Aerospace: • Planes, spatial vehicles; • Flight control, anti – collision, pilot information systems etc. • Dependability is extremely important; • Trains: dependability is extremely important; • Telecommunications: mobile phones contain several microcontrollers; low – power aspects are very important;

  13. Advanced Embedded Systems • Medical systems: • Portable monitoring systems; • Artificial eye; • Measurements systems for medical parameters (e.g. the blood pressure); • Military applications: radar, weapons, missiles, navigation etc. • Authentication systems: • Ex.: SMARTpen; it analyses physical parameters (tilt, force, acceleration) while the user is signing; the values are sent to a host and compared with information available about the user allowing to verify both the image of the signature and the way it is produced; • Other examples: finger print sensors, face recognition systems;

  14. Advanced Embedded Systems • Robotics: • Mechanical aspects are very important; • A lot of information are sensed and sent to local or central ESs and commands are generated by ESs for moving, artificial voice, image processing etc. • Consumer electronics: all kind of electrical household machines: microwaves, washing machines, refrigerators, audio, video, cameras, phones, garden equipments etc. • Smart buildings: • For snugness, optimization and security; • 2 types: work spaces and homes; • Integration of multimedia devices and put under the control of a PC; • Intelligent lighting systems for minimizing the consume; • The same for HVAC systems; • The accesses in the rooms of a smart building locating a company can be monitored and traced;

  15. Advanced Embedded Systems • Industrial equipments: • Automation of processes: • Special machines: carpentry machines, forestry machines etc. • Counting systems on a pipeline; • Calibrating systems; • Welding machines:

  16. Advanced Embedded Systems • Toys: LEGO mind storms robotic kit • It is a set including programmable bricks, electric motors, sensors and technical pieces such as gears, axles and beams; • A programmable brick is built around an 8 bit microcontroller which is programmable by downloading a program written on a PC or a MAC, through a RF interface; • Languages: • Lego types: RCX, ROBOLAB • Third party classical: C, C++, Java, Visual Basic etc.

  17. Advanced Embedded Systems • Smart sensors: • Cricket sensors: • RF sensors; • Ultrasonic sensors; • Tiny OS; • Powered with batteries or externally; • RS232 interface for being programmed or transferring data; • 2 modes: • Beacon, • Listener; • The time difference between the RF pulse and the ultrasonic pulse indicates the distance among a beacon and a listener; • Applications: space identifiers and position coordinates: the beacons are deployed in a delimited space and they will indicate the position of one or several mobile listeners;

  18. Advanced Embedded Systems • MICAz • Atmega 128L microcontroller; • ZigBee RF interface; • MICA2DOT • Same microcontroller; • RF interface;

  19. Advanced Embedded Systems 4. Importance of embedded systems • In 2000, 75% of all 32 bit processors were integrated into embedded systems; • In 1996, an average american came into contact with 60 microprocessors/ microcontrollers/ DSPs per day; • Today we carry ESs: cards, mobile phones etc. • A journalist stated in 1995: “… embedded chips form the backbone of the electronics driven world in which we live ,,, they are part of almost everything that runs on electricity.” • A variant of the Moore law shows that: “for many products in the area of consumer electronics the amount of code is doubling every two years” (Vaandrager, 1998); • Classical example: the TV set: 1KB in 1979, 64 KB in 1990, 2 MB in 2000; • ESs are the bricks of the “Post PC era” in which information processing is more and more moving from PCs to ESs;

  20. Advanced Embedded Systems 5. Structure • Typically, an ES is made of 5 parts: • CPU; • Memory; • Specific input/ outputs; • Basic software; • Application software; • CPU: microprocessors, microcontrollers, DSPs; • Memory: the ideal situation is when the internal memory is sufficient for avoiding external memories, which may require other circuits too; • Specific input/ outputs: leds, LCDs, … • Basic software: RTOS (for complex ESs, e.g. distributed ESs); simple ESs (e.g. for household appliances) don’t need basic software; • Application software: ensures that the ES works according to the requirements; implements operations like: monitoring, processing, command and control.

  21. Advanced Embedded Systems • Example: Atmel AT89C51 (8051) Starter Kit & Serial Port Programmer • Features: • Easy Flash memory programming with the serial port of a computer; • On-board power regulator and power on LED; • Diode for reverse power supply polarity protection; • Use of the same serial port for programming, transmitting and receiving; • Toggling between programming/execution modes with a press of a single switch eliminating the need for any complex changes in the hardware; • Square post headers provide access to all port pins for easy interfacing to external devices; • Built-in LEDs on port to test the bit pattern; • AT89C51RD2 supplied with kit • Built-in 64KB flash memory and 2KB RAM Flash; • Data retention life of more than 10 years; • No special skills required to operate the kit; • Hex file can be downloaded easily with the help of a user friendly FLIP software; • A variety of ATMEL Microcontroller ICs (8051 family, DIP 40 pin with flash memory) are supported by the kit.

  22. Advanced Embedded Systems • An other example: WiFi RCM4400W RabbitCore • Features: • At the heart of the RCM4400W WiFi module is the Rabbit 4400 microprocessor, featuring a clock speed of up to 58.98MHz; other features include a true hardware DMA, auxiliary I/O, a quadrature decoder, input capture, GPIO lines shared with up to six serial ports, and four levels of alternate pin functions that include a variable phase PWM; • RabbitCore module running @ 58.98 MHz; • Integrated scalable Wi-Fi/802.11 wireless connectivity; • Serial to WiFi bridge capability; • 512K flash memory; • 512K fast program-execution SRAM; • 512K data SRAM; • Up to 35 general-purpose I/O lines configurable; • 3.3 V I/O lines; • Low-power modes down to 2 kHz; • Small size: 1.84" x 2.85" x 0.50" (47 mm 72 mm 13 mm).

  23. Advanced Embedded Systems 6. Educational aspects • The first discipline focused on: • Description of the hardware of classical (uniprocessor) ESs, meaning microcontrollers, memories, typical input/ outputs, internal peripherals; • Description of the software of classical ESs, meaning languages (assembler and C); • Description of classical applications, such as the automotive area and the Embedded Internet; • This discipline treats the ESs at a higher level, focusing on the design aspects of ESs, meaning: • General requirements; • Specification languages; • Scheduling and validation techniques; • Embedded operating systems; • General hardware of ESs; • Distributed ESs; • Hardware/ software codesign;

  24. Advanced Embedded Systems • A simplified design information flow: • The starting point is the application; standard hardware and software components must be considered and reused whenever possible; • The application must be put in specifications; they are the starting point of the design; • Design activities mean mapping operations to concurrent tasks, high – level transformations (such as loop transformations), mapping of operations to either hardware or software, design space exploration, compilation and scheduling;

  25. Advanced Embedded Systems • Special purpose hardware may be necessary; • Compilation can be done with standard compilers but they are not optimized for embedded processors; as a consequence compiler techniques should be applied for obtaining efficiency; • Scheduling is possible after obtaining the binary code for each task; • Finally, software and hardware descriptions can be merged, obtaining a complete description of the design; this is the input for the fabrication; • It is necessary to validate and evaluate the design at each phase; there are not other guarantees for the correctness of the design; • The validation consists of checking intermediate and final design descriptions against other descriptions; • Different parameters must be evaluated during the design: performance, dependability, energy consumption etc. • The design activities must follow the design information flow presented but not always in a linear way; • In practice, some design activities may be repeated; it may become necessary to return to the specifications, or to consider other components etc.

More Related