LECTURE NOTES ON EMBEDDED SYSTEMS DESIGN

LECTURE NOTES ON EMBEDDED SYSTEMS DESIGN 25
Dr.HenryEvans Profile Pic
Dr.HenryEvans,Germany,Professional
Published Date:10-07-2017
Your Website URL(Optional)
Comment
1 LECTURE NOTES ON EMBEDDED SYSTEMS DESIGN IV B. Tech I semester (JNTUH-R13) Faculty Members Dr. M RAMESH BABU Professor Mr. MOHD.KHADIR Assistant Professor ELECTRONICS AND COMMUNICATION ENGINEERING INSTITUTE OF AERONAUTICAL ENGINEERING DUNDIGAL, HYDERABAD - 500 043 2 Embedded Systems Design LECTURE NOTES SYLLABUS: Unit-I Introduction to Embedded Systems: Definition of Embedded System, Embedded Systems Vs General Computing Systems, History of Embedded Systems, Classification, Major Application Areas, Purpose of Embedded Systems, Characteristics and Quality Attributes of Embedded Systems. UNIT-II Typical Embedded System: Core of the Embedded System: General Purpose and Domain Specific Processors, ASICs, PLDs,Commercial Off-The-Shelf Components (COTS), Memory: ROM, RAM, Memory according to the type of Interface, Memory Shadowing, Memory selection for Embedded Systems, Sensors and Actuators, Communication Interface: Onboard and External Communication Interfaces. UNIT-III Embedded Firmware: Reset Circuit, Brown-out Protection Circuit, Oscillator Unit, Real Time Clock, Watchdog Timer, Embedded Firmware Design Approaches and Development Languages. UNIT-IV RTOS Based Embedded System Design: Operating System Basics, Types of Operating Systems, Tasks, Process and Threads, Multiprocessing and Multitasking, Task Scheduling. UNIT- V Task Communication: Shared Memory, Message Passing, Remote Procedure Call and Sockets, Task Synchronization: Task Communication Synchronization Issues, Task Synchronization Techniques, Device Drivers, How to Choose an RTOS. TEXT BOOKS: 1. Introduction to Embedded Systems - Shibu K.V, Mc Graw Hill. REFERENCE BOOKS: 1. Embedded Systems - Raj Kamal, TMH. 2. Embedded System Design - Frank Vahid, Tony Givargis, John Wiley. 3. Embedded Systems – Lyla, Pearson, 2013 4. An Embedded Software Primer - David E. Simon, Pearson Education. 3 EMBEDDED SYSTEM: AN INTRODUCTION Unit Structure Objectives Introduction Definition of Embedded System History of Embedded System Embedded System & General purpose computer Classification of Embedded System Application of Embedded System Purpose of Embedded System Review Questions References & Further Reading OBJECTIVES  To understand what is an Embedded System and then define it  Look at embedded systems from a historical point of view  Classify embedded systems  Look at certain applications & purposes of embedded systems INTRODUCTION This chapter introduces the reader to the world of embedded systems. Everything that we look around us today is electronic. The days are gone where almost everything was manual. Now even the food that we eat is cooked with the assistance of a microchip (oven) and the ease at which we wash our clothes is due to the washing machine. This world of electronic items is made up of embedded system. In this chapter we will understand the basics of embedded system right from its definition. DEFINITION OF AN EMBEDDED SYSTEM  An embedded system is a combination of 3 things: a. Hardware b. Software c. Mechanical Components And it is supposed to do one specific task only. 4  Example 1: Washing Machine A washing machine from an embedded systems point of view has: a. Hardware: Buttons, Display & buzzer, electronic circuitry. b. Software: It has a chip on the circuit that holds the software which drives controls & monitors the various operations possible. c. Mechanical Components: the internals of a washing machine which actually wash the clothes control the input and output of water, the chassis itself.  Example 2: Air Conditioner An Air Conditioner from an embedded systems point of view has: a. Hardware: Remote, Display & buzzer, Infrared Sensors, electronic circuitry. b. Software: It has a chip on the circuit that holds the software which drives controls & monitors the various operations possible. The software monitors the external temperature through the sensors and then releases the coolant or suppresses it. c. Mechanical Components: the internals of an air conditioner the motor, the chassis, the outlet, etc  An embedded system is designed to do a specific job only. Example: a washing machine can only wash clothes, an air conditioner can control the temperature in the room in which it is placed.  The hardware & mechanical components will consist all the physically visible things that are used for input, output, etc.  An embedded system will always have a chip (either microprocessor or microcontroller) that has the code or software which drives the system. HISTORY OF EMBEDDED SYSTEM  The first recognised embedded system is the Apollo Guidance Computer(AGC) developed by MIT lab.  AGC was designed on 4K words of ROM & 256 words of RAM.  The clock frequency of first microchip used in AGC was 1.024 MHz.  The computing unit of AGC consists of 11 instructions and 16 bit word logic. 5  It used 5000 ICs.  The UI of AGC is known DSKY(display/keyboard) which resembles a calculator type keypad with array of numerals.  The first mass-produced embedded system was guidance computer for the Minuteman-I missile in 1961.  In the year 1971 Intel introduced the world's first microprocessor chip called the 4004, was designed for use in business calculators. It was produced by the Japanese company Busicom. EMBEDDED SYSTEM & GENERAL PURPOSE COMPUTER The Embedded System and the General purpose computer are at two extremes. The embedded system is designed to perform a specific task whereas as per definition the general purpose computer is meant for general use. It can be used for playing games, watching movies, creating software, work on documents or spreadsheets etc. Following are certain specific points of difference between embedded systems and general purpose computers: Criteria General Purpose Embedded system Computer Contents It is combination of It is combination of special generic hardware and a purpose hardware and general purpose OS for embedded OS for executing executing a variety of specific set of applications applications. Operating It contains general It may or may not contain System purpose operating system operating system. Alterations Applications are alterable Applications are non-alterable by the user. by the user. Key factor Performance” is key Application specific factor. requirements are key factors. Power More Less Consumpti on Response Not Critical Critical for some Time applications 6 CLASSIFICATION OF EMBEDDED SYSTEM The classification of embedded system is based on following criteria's:  On generation  On complexity & performance  On deterministic behaviour  On triggering On generation 1. First generation(1G):  Built around 8bit microprocessor & microcontroller.  Simple in hardware circuit & firmware developed.  Examples: Digital telephone keypads. 2. Second generation(2G):  Built around 16-bit µp & 8-bit µc.  They are more complex & powerful than 1G µp & µc.  Examples: SCADA systems 3. Third generation(3G):  Built around 32-bit µp & 16-bit µc.  Concepts like Digital Signal Processors(DSPs), Application Specific Integrated Circuits(ASICs) evolved.  Examples: Robotics, Media, etc. 4. Fourth generation:  Built around 64-bit µp & 32-bit µc.  The concept of System on Chips (SoC), Multicore Processors evolved.  Highly complex & very powerful.  Examples: Smart Phones. On complexity & performance 1. Small-scale:  Simple in application need  Performance not time-critical.  Built around low performance & low cost 8 or 16 bit µp/µc.  Example: an electronic toy 2. Medium-scale:  Slightly complex in hardware & firmware requirement.  Built around medium performance & low cost 16 or 32 bit µp/µc.  Usually contain operating system.  Examples: Industrial machines. 7 3. Large-scale:  Highly complex hardware & firmware.  Built around 32 or 64 bit RISC µp/µc or PLDs or Multicore Processors.  Response is time-critical.  Examples: Mission critical applications. On deterministic behavior  This classification is applicable for “Real Time” systems.  The task execution behavior for an embedded system may be deterministic or non-deterministic.  Based on execution behavior Real Time embedded systems are divided into Hard and Soft. On triggering  Embedded systems which are “Reactive” in nature can be based on triggering.  Reactive systems can be:  Event triggered  Time triggered APPLICATION OF EMBEDDED SYSTEM The application areas and the products in the embedded domain are countless. 1. Consumer Electronics: Camcorders, Cameras. 2. Household appliances: Washing machine, Refrigerator. 3. Automotive industry: Anti-lock breaking system(ABS), engine control. 4. Home automation & security systems: Air conditioners, sprinklers, fire alarms. 5. Telecom: Cellular phones, telephone switches. 6. Computer peripherals: Printers, scanners. 7. Computer networking systems: Network routers and switches. 8. Healthcare: EEG, ECG machines. 9. Banking & Retail: Automatic teller machines, point of sales. 10. Card Readers: Barcode, smart card readers. PURPOSE OF EMBEDDED SYSTEM 1. Data Collection/Storage/Representation  Embedded system designed for the purpose of data collection performs acquisition of data from the external world.  Data collection is usually done for storage, analysis, manipulation and transmission.  Data can be analog or digital. 8  Embedded systems with analog data capturing techniques collect data directly in the form of analog signal whereas embedded systems with digital data collection mechanism converts the analog signal to the digital signal using analog to digital converters.  If the data is digital it can be directly captured by digital embedded system.  A digital camera is a typical example of an embedded  System with data collection/storage/representation of data.  Images are captured and the captured image may be stored within the memory of the camera. The captured image can also be presented to the user through a graphic LCD unit. 2. Data communication  Embedded data communication systems are deployed in applications from complex satellite communication to simple home networking systems.  The transmission of data is achieved either by a wire-line medium or by a wire-less medium.  Data can either be transmitted by analog means or by digital means.  Wireless modules-Bluetooth, Wi-Fi.  Wire-line modules-USB, TCP/IP.  Network hubs, routers, switches are examples of dedicated data transmission embedded systems. 3. Data signal processing  Embedded systems with signal processing functionalities are employed in applications demanding signal processing like speech coding, audio video codec, transmission applications etc.  A digital hearing aid is a typical example of an embedded system employing data processing.  Digital hearing aid improves the hearing capacity of hearing impaired person 4. Monitoring  All embedded products coming under the medical domain are with monitoring functions.  Electro cardiogram machine is intended to do the monitoring of the heartbeat of a patient but it cannot impose control over the heartbeat.  Other examples with monitoring function are digital CRO, digital multi-meters, and logic analyzers. 5. Control  A system with control functionality contains both sensors and actuators. 30  Sensors are connected to the input port for capturing the changes in environmental variable and the actuators connected to the output port are controlled according to the changes in the input variable.  Air conditioner system used to control the room temperature to a specified limit is a typical example for CONTROL purpose. 6. Application specific user interface  Buttons, switches, keypad, lights, bells, display units etc are application specific user interfaces.  Mobile phone is an example of application specific user interface.  In mobile phone the user interface is provided through the keypad, system speaker, vibration alert etc. REVIEW QUESTIONS 1. Define Embedded System with the help of Microwave Owen as an example 2. Differentiate between general purpose computers & embedded systems 3. Give a classification of embedded systems 4. List some applications of embedded systems 5. Explain the various possible purposes of using and embedded system.  31 CHARACTERISTICS & QUALITY ATTRIBUTES OF EMBEDDED SYSTEMS Unit Structure Objectives Introduction Characteristics of Embedded System Quality Attributes of Embedded System Operational Attributes Non Operational Attributes Review Questions References & Further Reading OBJECTIVES After reading this chapter you will: 1. Understand the characteristics of Embedded system 2. Understand the attributes related to quality of embedded system. INTRODUCTION The characteristics of embedded system are different from those of a general purpose computer and so are its Quality metrics. This chapter gives a brief introduction on the characteristics of an embedded system and the attributes that are associated with its quality. CHARACTERISTICS OF EMBEDDED SYSTEM Following are some of the characteristics of an embedded system that make it different from a general purpose computer: 1. Application and Domain specific  An embedded system is designed for a specific purpose only. It will not do any other task.  Ex. A washing machine can only wash, it cannot cook  Certain embedded systems are specific to a domain: ex. A hearing aid is an application that belongs to the domain of signal processing. 32 2. Reactive and Real time  Certain Embedded systems are designed to react to the events that occur in the nearby environment. These events also occur real-time.  Ex. An air conditioner adjusts its mechanical parts as soon as it gets a signal from its sensors to increase or decrease the temperature when the user operates it using a remote control.  An embedded system uses Sensors to take inputs and has actuators to bring out the required functionality. 3. Operation in harsh environment  Certain embedded systems are designed to operate in harsh environments like very high temperature of the deserts or very low temperature of the mountains or extreme rains.  These embedded systems have to be capable of sustaining the environmental conditions it is designed to operate in. 4. Distributed  Certain embedded systems are part of a larger system and thus form components of a distributed system.  These components are independent of each other but have to work together for the larger system to function properly.  Ex. A car has many embedded systems controlled to its dash board. Each one is an independent embedded system yet the entire car can be said to function properly only if all the systems work together. 5. Small size and weight  An embedded system that is compact in size and has light weight will be desirable or more popular than one that is bulky and heavy.  Ex. Currently available cell phones. The cell phones that have the maximum features are popular but also their size and weight is an important characteristic.  For convenience users prefer mobile phones than phablets. (phone + tablet pc) 33 6. Power concerns  It is desirable that the power utilization and heat dissipation of any embedded system be low.  If more heat is dissipated then additional units like heat sinks or cooling fans need to be added to the circuit.  If more power is required then a battery of higher power or more batteries need to be accommodated in the embedded system. QUALITY ATTRIBUTES OF EMBEDDED SYSTEM These are the attributes that together form the deciding factor about the quality of an embedded system. There are two types of quality attributes are:- 1. Operational Quality Attributes.  These are attributes related to operation or functioning of an embedded system. The way an embedded system operates affects its overall quality. 2. Non-Operational Quality Attributes.  These are attributes not related to operation or functioning of an embedded system. The way an embedded system operates affects its overall quality.  These are the attributes that are associated with the embedded system before it can be put in operation. Operational Attributes a) Response  Response is a measure of quickness of the system.  It gives you an idea about how fast your system is tracking the input variables.  Most of the embedded system demand fast response which should be real-time. b) Throughput  Throughput deals with the efficiency of system.  It can be defined as rate of production or process of a defined process over a stated period of time.  In case of card reader like the ones used in buses, throughput means how much transaction the reader can perform in a minute or hour or day. 34 c) Reliability  Reliability is a measure of how much percentage you rely upon the proper functioning of the system .  Mean Time between failures and Mean Time To Repair are terms used in defining system reliability.  Mean Time between failures can be defined as the average time the system is functioning before a failure occurs.  Mean time to repair can be defined as the average time the system has spent in repairs. d) Maintainability  Maintainability deals with support and maintenance to the end user or a client in case of technical issues and product failures or on the basis of a routine system checkup  It can be classified into two types :- 1. Scheduled or Periodic Maintenance o This is the maintenance that is required regularly after a periodic time interval. o Example :  Periodic Cleaning of Air Conditioners  Refilling of printer cartridges. 2. Maintenance to unexpected failure  This involves the maintenance due to a sudden breakdown in the functioning of the system.  Example: 1. Air conditioner not powering on 2. Printer not taking paper in spite of a full paper stack e) Security  Confidentiality, Integrity and Availability are three corner stones of information security.  Confidentiality deals with protection data from unauthorized disclosure.  Integrity gives protection from unauthorized modification.  Availability gives protection from unauthorized user  Certain Embedded systems have to make sure they conform to the security measures. Ex. An Electronic Safety Deposit Locker can be used only with a pin number like a password. f) Safety  Safety deals with the possible damage that can happen to the operating person and environment due to the breakdown of an embedded system or due to the emission of hazardous materials from the embedded products. 35  A safety analysis is a must in product engineering to evaluate the anticipated damage and determine the best course of action to bring down the consequence of damages to an acceptable level. Non Operational Attributes a) Testability and Debug-ability  It deals with how easily one can test his/her design, application and by which mean he/she can test it.  In hardware testing the peripherals and total hardware function in designed manner  Firmware testing is functioning in expected way  Debug-ability is means of debugging the product as such for figuring out the probable sources that create unexpected behavior in the total system b) Evolvability  For embedded system, the qualitative attribute “Evolvability” refer to ease with which the embedded product can be modified to take advantage of new firmware or hardware technology. c) Portability  Portability is measured of “system Independence”.  An embedded product can be called portable if it is capable of performing its operation as it is intended to do in various environments irrespective of different processor and or controller and embedded operating systems. d) Time to prototype and market  Time to Market is the time elapsed between the conceptualization of a product and time at which the product is ready for selling or use  Product prototyping help in reducing time to market.  Prototyping is an informal kind of rapid product development in which important feature of the under consider are develop.  In order to shorten the time to prototype, make use of all possible option like use of reuse, off the self component etc. e) Per unit and total cost  Cost is an important factor which needs to be carefully monitored. Proper market study and cost benefit analysis should be carried out before taking decision on the per unit cost of the embedded product.  When the product is introduced in the market, for the initial period the sales and revenue will be low  There won’t be much competition when the product sales and revenue increase. 36  During the maturing phase, the growth will be steady and revenue reaches highest point and at retirement time there will be a drop in sales volume. REVIEW QUESTIONS 1. Explain the characteristics of an embedded system 2. Explain the Operational Quality Attributes of an embedded system 3. Explain the non quality attributes of an embedded system  ELEMENTS OF EMBEDDED SYSTEMS Unit Structure Objectives Introduction Elements of Embedded Systems. Case studies (examples) Washing machine Microwave owen Automotive Embedded System (AES) Review questions References & further reading OBJECTIVES After learning this chapter you will be able to: 1. Define and describe the elements of an embedded system 2. Understand how embedded system works with the help of two case studies: i. Washing Machine ii. Microwave Owen INTRODUCTION The previous chapter was an introduction to the world of embedded systems and helped us define what is an embedded system. This chapter introduces us to the elements of an embedded system and explains how embedded system works with the help of two case studies. ELEMENTS OF EMBEDDED SYSTEMS.  As defined earlier, an embedded system is a combination of 3 things: d. Hardware e. Software f. Mechanical Components And it is supposed to do one specific task only. Diagrammatically an embedded system can be represented as follows: Figure 2.0 : Elements of an Embedded System  Embedded systems are basically designed to regulate a physical variable (such Microwave Oven) or to manipulate the state of some devices by sending some signals to the actuators or devices connected to the output port system (such as temperature in Air Conditioner), in response to the input signal provided by the end users or sensors which are connected to the input ports.  Hence the embedded systems can be viewed as a reactive system.  Examples of common user interface input devices are keyboards, push button, switches, etc.  The memory of the system is responsible for holding the code (control algorithm and other important configuration details).  An embedded system without code (i.e. the control algorithm) implemented memory has all the peripherals but is not capable of making decisions depending on the situational as well as real world changes.  Memory for implementing the code may be present on the processor or may be implemented as a separate chip interfacing the processor In a controller based embedded system, the controller may contain internal memory for storing code  Such controllers are called Micro-controllers with on-chip ROM, eg. Atmel AT89C51. CASE STUDIES (EXAMPLES) Here are some case studies on some commonly used embedded systems that will help to better understand the concept. Washing Machine Let us see the important parts of the washing machine; this will also help us understand the working of the washing machine: 1) Water inlet control valve: Near the water inlet point of the washing there is water inlet control valve. When you load the clothes in washing machine, this valve gets opened automatically and it closes automatically depending on the total quantity of the water required. The water control valve is actually the solenoid valve. 2) Water pump: The water pump circulates water through the washing machine. It works in two directions, re-circulating the water during wash cycle and draining the water during the spin cycle. Figure 2.1 : Parts of a Washing Machine 3) Tub: There are two types of tubs in the washing washing machine: inner and outer. The clothes are loaded in the inner tub, where the clothes are washed, rinsed and dried. The inner tub has small holes for draining the water. The external tub covers theinner tub and supports it during various cycles of clothes washing. 4) Agitator or rotating disc: The agitator is located inside the tub of the washing machine. It is the important part of the washing machine that actually performs the cleaning operation of the clothes. During the wash cycle the agitator rotates continuously and produces strong rotating currents within the water due to which the clothes also rotate inside the tub. The rotation of the clothes within water containing the detergent enables the removal of the dirt particles from the fabric of the clothes. Thus the agitator produces most important function of rubbing the clothes with each other as well as with water. In some washing machines, instead of the long agitator, there is a disc that contains blades on its upper side. The rotation of the disc and the blades produce strong currents within the water and the rubbing of clothes that helps in removing the dirt from clothes. 5) Motor of the washing machine: The motor is coupled to the agitator or the disc and produces it rotator motion. These are multispeed motors, whose speed can be changed as per the requirement. In the fully automatic washing machine the speed of the motor i.e. the agitator changes automatically as per the load on the washing machine. 6) Timer: The timer helps setting the wash time for the clothes manually. In the automatic mode the time is set automatically depending upon the number of clothes inside the washing machine. 7) Printed circuit board (PCB): The PCB comprises of the various electronic components and circuits, which are programmed to perform in unique ways depending on the load conditions (the condition and the amount of clothes loaded in the washing machine). They are sort of artificial intelligence devices that sense the various external conditions and take the decisions accordingly. These are also called as fuzzy logic systems. Thus the PCB will calculate the total weight of the clothes, and find out the quantity of water and detergent required, and the total time required for washing the clothes. Then they will decide the time required for washing and rinsing. The entire processing is done on a kind of processor which may be a microprocessor or microcontroller. 8) Drain pipe: The drain pipe enables removing the dirty water from the washing that has been used for the washing purpose. Microwave Owen Let us see the important parts of the microwave oven; this will also help us understand the working of the washing machine: Figure 2.3 : Parts of a Microwave Owen A microwave oven consists of: 1. A high voltage transformer, which passes energy to the magnetron 2. A cavity magnetron, 3. A Control circuit with a microcontroller, 4. A waveguide, and 5. A cooking chamber 1. A Transformer transfers electrical energy through a circuit by magnetic coupling without using motion between parts. These are used for supplying power to the magnetron. 2. A Cavity magnetron is a microwave antenna placed in a vacuum tube and oscillated in an electromagnetic field in order to produce high GHz microwaves. Magnetrons are used in microwave ovens and radar systems. 3. A control circuit with a microcontroller is integrated on a circuit board. The microcontroller controls the waveguide and the entire unit so the microwaves are emitted at a constant rate. 4. A Waveguide is any linear structure that guides electromagnetic waves for the purpose of transmitting power or

Advise: Why You Wasting Money in Costly SEO Tools, Use World's Best Free SEO Tool Ubersuggest.