You are on page 1of 79

Introduction to Embedded System Design (ESD).

Content Outline.
Embedded. System. Design. Definition of Embedded System by various authors. Difference between General Purpose Computing System & Embedded System. Characteristics of Embedded System.
2

Cont
Common Characteristics that distinguish Embedded System from other computing systems. Challenges for Embedded System. Classification of Embedded System. Categories of Embedded System. Specialties of Embedded System. Recent Trends in Embedded System.
3

Cont
Layered Architecture of Embedded System. Fundamental Component of Embedded System. Simplified Architecture of Embedded System.

Embedded
Fix Firmly in a Surrounding Mass. Being a Constituent within a Similar Surrounding. The word embedded implies that it lies inside the overall system, hidden from the viewer, forming an integral part of greater whole.

System
Set of Connected things that form a whole or work together Implies Way of Organizing . Set of rules or practices used together Implies Way of working or doing one or many tasks according to a fixed plan, program or set of rules.

Ex of a System Analog Clock


Dial Chassis Short Needle rotates every minute & returns to same position after twelve hour. Long Needle rotates every minute & returns to same position after an hour. Long & Thin Needle rotates every second & returns to same position after a minute.
7

Ex of System - Digital Clock


HOUR MINUTES SECONDS

Design
Drawing that shows how a thing is to be made Implies Mental Plan or General Form or Arrangement.

Various Authors Define EMBEDDED SYSTEM as

10

1. By SriRam Iyer & Pankaj Gupta


Microprocessor based system that doesnt look like a computer. They are Complex. Have Attributes like SMART & INTELLIGENT. Features of Smart Devices like a. Computational Power. b. Memory. c. Real time. d. Communication. e. Dynamic Decision
11

2. David E Simon
Inclusion of smaller & cheaper microprocessors in the products like digital watches, elevators, etc in order to make them SMART. Any computer system hidden in any of such products. Software is not same as desktop. Do several things at a time like a. Respond to external events. b. Able to withstand unusual conditions without human interventions. c. Work subjected to DEADLINES.
12

3. Wayne Wolf
Loosely defined as any device that includes a programmable computer. But is not itself intended to be a general purpose computer.

13

4. Todd D Martin
Electronic Systems that contain a microprocessor or microcontroller. Think them as computers the computer is hidden or embedded in the system.

14

5. Tim Wilmshurt
A system whose principal function is not computational. Controlled by a computer embedded within it. Computer is likely to be microcontroller or microprocessor.

15

6. Raj Kamal
Computer hardware with software embedded in it as one of its most important component. Dedicated computer based system for an application or product. May be either an independent system or part of an larger system.

16

7. Dr. K.V.K.K.Prasad
Computing device that does a specific focused job like DVD, VCD players etc They have a. Processor. b. Special hardware . c. Embedded software.

17

8. Shibu
Electronic/Electro-Mechanical system designed to perform a specific function. Combination of both hardware & software . Systems are UNIQUE. Designed for specialized application. Inevitable part of any product or equipment in all fields.

18

9. Frank Vahid
Any computing device other than the desktop computer.

19

General Purpose Computing System

Embedded System

1. Combination of generic hardware & general purpose operating system .


2. Executes variety of applications. 3. Contains a general purpose operating system.

Combination of special hardware & embedded operating system.


Executes a specific set of applications. May or may not contain a operating system for functioning.

4. Applications are alterable(reinstallation Software is pre-programmed & is of OS & add or removal of user application) nonalterable by the end user. In some by the user. applications it possible to update the OS. 5. Performance is the key deciding factor FASTER IS BETTER 6. No or least need of reduced operating power requirement, options for different levels of power. 7. Response requirement are not time critical. 8. Need not be deterministic in execution behavior. Specific Application decides key factors like performance, power requirement, memory usage, etc High need of power saving modes supported by the hardware & the operating system. Response time requirement is highly critical. Depending on the application execution behavior may or many not be 20 deterministic.

Microprocessor
1. Microprocessor is an IC which has only the CPU inside them i.e. only the processing powers such as Intels Pentium 1,2,3,4, core 2 duo, i3, i5 etc. These microprocessors dont have RAM, ROM, and other peripheral on the chip. 2. Microprocessor find applications where tasks are unspecific like developing software, games, websites, photo editing, creating documents etc. In such cases the relationship between input and output is not defined. They need high amount of resources like RAM, ROM, I/O ports etc. 3. The clock speed of the Microprocessor is quite high as compared to the microcontroller. 4.Microprocessor is a stand alone device.

Microcontroller
Microcontroller has a CPU, in addition with a fixed amount of RAM, ROM and other peripherals all embedded on a single chip. At times it is also termed as a mini computer or a computer on a single chip. Microcontrollers are designed to perform specific tasks. Specific means applications where the relationship of input and output is defined. Depending on the input, some processing needs to be done and output is delivered. Microcontrollers operate from a few MHz to 30 to 50 MHz, todays microprocessor operate above 1GHz as they perform complex tasks. Microcontroller is not a stand alone device & it is connected directly to the system external components.
21

Microprocessor 5. In Microprocessor more op-codes, few bit handling instructions.

Microcontroller But in Microcontroller: fewer op- codes, more bit handling Instructions, and also it is defined as a device that includes micro processor, memory, & input / output signal lines on a single chip. Microcontroller can be used for lower end projects because processor can be connected by external memory where as in controller it is fixed memory in some case we can add external memory also. Microcontroller is a computeronachip optimised to control electronic devices. It is designed specifically for specific tasks such as controlling a specific system. A microcontroller is basically a specialized form of microprocessor that is designed to be selfsufficient and costeffective.
22

6. Microprocessor is used in Higher end Industrial projects.

7. Microprocessor is a computer electronic component made from miniaturized transistors and other circuit elements on a single semiconductor integrated circuit.

Microprocessor 8.Microprocessor may or may not be a part of embedded system basically it depends on the application type.

Microcontroller Microcontroller is part of an embedded system, which is essentially the whole circuit board. An embedded system is a computer system designed to perform one or a few dedicated functions often with realtime computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. Microcontrollers from 8051 family or PIC family or any other have found there applications in small embedded systems like some kind of robotic system or a traffic signal control system. Also these devices handle same task or same program during there complete life cycle. Microcontrollers usually has to handle real time tasks.
23

9. Microprocessors like the Intel Core family or Pentium family processors or similar processors are in computers as a general purpose programmable device. In its life it has to handle many different tasks and programs given to it.

10. Microprocessors in a computer system may not handle a real time task at all times.

Characteristics
Do very specific task. Limited Resource. Work against deadlines. Constrained for power. Reliable. Operate in extreme environmental conditions. Cost Sensitive depending on the application developed. Proper selection of Operating System & Processor.
24

Characteristics other than computing systems


1. Single Functioned: a. Execution of specific program repeatedly. eg. Electronic Weight Scale b. Up gradation of the program with a newer version. eg. Cellphones c. Swapping in & out of the program due to size limitations. eg. Missile launching
25

Cont
2. Tightly Constrained: a. Design Metric measure of an implementations feature like cost, size, performance & power. b. Cost effective. c. Size fit on a single chip. d. Fast performance to process data in realtime. e. Minimum power consumption to extend battery life.
26

Cont.
3. Reactive & Real time: a. Continuously react to changes in systems environment. b. Compute results in real time without delay.

27

Challenges
1. Limited Operating System: a. OS Part of Application CODE. b. Various task like scheduling, memory management, hardware abstractions, management of input-output devices.

28

Cont..
2. Limited Secondary Memory: a. Memory requirement (size) depends on the code & the data. b. Boot done from non volatile memory like ROM & Flash memories.

29

Cont
3. Limited Random Access memory: a. No concept of swapping, virtual memory, etc. b. Be careful about leaks in the memory as programs tend to run forever. c. Eg: TV in a Stand By Mode

30

Cont.
4. Limited Processing Power: a. Depends on various applications. b. Depended on selection of type of Processor. c. Can be optimized through efficient application code. d. Proper selection of efficient computational algorithms.

31

Cont.
5. Interaction with Hardware: a. Modern OS is hardware independent. b. Embedded OS has the code which directly interacts with the underlying hardware. c. Thus differentiation between normal application programming & embedded programming.

32

Cont
6. Absence of Standard Input / Output (IO) devices: a. A computer: Mouse, Keyboard & Display. b. Most embedded systems are cost effective & are compact. c. Hence Programmer has no direct way of knowing what is happening within the system.
33

Classification
1. a. Based on Generation: First Generation: Simple Hardware Circuits Software written in Assembly Language 8 bit microprocessor. 4 bit microcontroller. ex. Digital telephone keypad, stepper motor control circuit, etc
34

Cont.
b. Second Generation: Complex Instruction set. Powerful & had Embedded OS than previous ones. 16 bit microprocessor. 8 or 16 bit microcontroller.

35

Cont..
c. Third Generation: More complex instruction set. More powerful. Concept of instruction pipelining. General Purpose OS. Application Specific Processors(uc & up) like DSP Application Specific Integrated Circuits. 16 bit microprocessor. 16 bit microcontrollers. Ex. Intel Pentium, Motorola 68k, etc high performance dedicated real time
36

Cont..
d. Fourth Generation: Reconfigurable processors. Multicore processors. System On Chip (SOC)- implementation & integration of different functionalities with a processor core on an integrated circuit. High performance. Real time embedded OS. ex. Smart phone devices, mobile internet devices, etc

37

Cont
2. Based on Complexity & Performance Requirements: a. Small Scale ES: Simple Applications. Performance is not time critical. Less hardware & software complexities. Depending on application functioning OS may or may not be required. Board level Design.
38

Cont.
Microcontroller 8 or 16 bits. Software requirement: editor, assembler, cross assembler. High level language- C program compilation is done into assembly & executable codes are then placed into system memory. No need of Large amount of memory. Less power dissipation.
39

Cont..
b. Medium Scale ES: Slight Complex Hardware & Software Systems. Medium Performance. Embedded OS for functioning(GPOS or RTOS). 16 or 32 bit Microcontrollers or DSPs or RISCs. Software tools- RTOS, source code engineering tool, simulator, debugger, integrated development environment. Software can be customized according to hardware Use of Application Specific Processors & Internet Protocols.

40

Cont..
c. Large (Complex/Sophisticated) Scale ES: Highly complex hardware & software. Employed in mission critical applications. High performance. Use of scalable processors or configurable processors & programmable logic controllers. High performance RTOS for task scheduling, prioritization & management.
41

Cont.
3. Based on Deterministic Behavior: Applicable for realtime systems. 4. Based on Triggering (Time or Event): Reactive embedded systems like used in process control systems in industrial control applications.

42

Categories
1. Stand-Alone ES: Stand-Alone mode. Take inputs process them & produce the desired output. Ex automobile, control process industries,consumer products, etc.

43

Cont..
2. Real Time ES: Specific work has to be done in specified time period. Two types a. Hard RTES: Strict Deadlines. Ex missile launch system. b. Soft RTES: Without Strict deadliness but deadlines are equally important. Ex DVD player.
44

Cont.
3. Networked Information Appliances: Have network interfaces & are accessed by networks such as LAN or Internet. Run TCP/IP protocol stack. HTTP SERVER BASED SOFTWARE Ex
Desktop Internet TCP/IP Protocol Weather Monitoring System (Real Time)

45

Cont..
4. Mobile Devices: Design is like conventional ES. Limitations; memory constraints, small size, lack of good user interface, display, etc. Ex mobile phones, personnel digital assistant, etc.

46

Specialties
1.Reliability: Able to be relied on or consistently good. ES work for thousand of hours without break. Exs a. Cruise control system (mission critical) b. Temperature control system enclosed within another system with reset provided by a special hardware eg watchdog timer. c. Robots used in mining used in extreme environmental conditions such as high temperature, humidity, etc.
47

Cont..
2. Performance: Relates to timing constraints. Meet requirement (deadlines) for its safety. Ex Temperature Control.

48

Cont
3. Power Consumption: Most systems are battery operated. Use components of low consumption power. Increase the reliability of the system.

49

Cont..
4.Cost: Proper selection of Components. Take care when designing day to day life applications like consumer electronics or office automation eg electronic toy. For complex system cost is not a factor eg nuclear plant.

50

Cont.
5. Size: Important for both complex applications like spacecraft where size & weight matters in every inch & gram while for mobile phones with less components on the board.

51

Cont..
6. Limited User Interface: Sophisticated interface for input & output. Developing a user friendly interface with limitations of the input/output devices is a challenging task for software developers.

52

Cont..
7. Software Up gradation Capability: Systems designed for specific task. Software developed for a particular system once transferred to it the same software run through out's its life or in some systems it can be upgraded. Ex Public Call Office (PCO).

53

Recent Trends
1. Processor Power: Microprocessor or Microcontroller 8 to 64 bits. Depends upon requirement of design. Digital Signal Processor for real time analysis. Parameters- power, clock speed & memory addressing capability.

54

Cont..
2. Memory: Reduced cost. Enhanced functions by addition of network protocols & graphical user interface. Porting of OS on to the target system memory.

55

Cont.
3. Operating System: Porting OS on to the target system. Fast software development. Easy maintenance of code. Software developed in High Level Language. Open Source Software have complete source code which can be customized as per ones need.
56

Cont.
4. Communication Interface & Networking Capability: Low cost chips. Ex Ethernet, 802.11 WLAN, etc Advantage like embedded system can be accessed over a network for remote control of monotoring. Easy up gradation of the software through network interface. Porting of TCP/IP protocol stack & HTTP server software on to the system.

57

Cont.
5. Programming Language: Core development Assembly Language. Cross Compilers High level Language. 6. Development Tools: Development, Debugging & Testing for modeling. Software - Robust & Reliable.
58

Cont..
7. Programmable Hardware: Programmable Logic Controller. Field Programmable Gate Array. Reduce no. of components. Hence System On Chip that is a programmable hardware - asingle chip is the embedded system (PROCESSOR + APPLICATION SPECIFIC INTEGRATED CIRCUIT + PERIPHERALS).
59

Layered Architecture of an Embedded System:


APPLICATION SOFTWARE

OPERATING SYSTEM

HARDWARE

60

Fundamental Components of Embedded System:


1. Computational / Processing Power:
USER INPUT DESIRED OUTPUT

PROCESSING

ENVIORNMENT
61

Cont.
The central processing unit (CPU) is a chip built into a computer that performs basic calculations that allow the computer to run. Processing power is a measurement of how powerful this chip is, i.e. how fast it can do the required calculations.

62

Cont.
2. Memory: Cheaper cost. No availability of expansion slots. Customized data structures & algorithms. RTOS reduces complexity of memory management. No secondary storage devices (eg. Floppy / hard disk).
63

Cont.
3. Real Time: Characterized by strictness, meeting deadlines & deterministic behavior. It is one that behaves predictably it responds within a particular amount of time (reply within known amount of time).

64

Cont
Types: a. Hard RTS: To meet deadline is most important. If deadline is missed then there may be loss of life or property. Eg: Aircraft, Pacemakers, etc.

65

Cont..
b. Soft RTES: To meet a deadline is important. But if it is missed then it wont cause any insignificant inconvenience to the user. Eg: TV, multimedia streaming over the internet, etc.

66

Cont..
c. Fast RTES: System that works with sub second response times. d. Slow RTES: System that takes a second or more time to respond.

67

Cont.
4. Communication Elements: Need to communicate with other devices. Able to perform desired operation by & for the user. Addition of intelligence. Eg: Internet, GPRS, etc.

68

Cont.
5. Soft Parameters: a. Cost: Major driving factor. Depends on application simple (electronic toy) to complex (aircraft). Includes: amount of memory required, peripherals required, etc.

69

Cont
b. Reliability: Capable of being relied on: dependable. Operation of embedded system over an hour upto its maximum. Optimize for some level of redundancy. Redundancy: Having some duplicate peripherals that can be used when the main peripheral fails. Eg: high uptime devices- routers, bridges, etc.
70

Cont.
c. Lifetime: Longer Lifetime. Robust & proven components. d. Power Consumption: Shut down those devices which dont require immediately. So efficient use of software (optimization of power) & its customization along with hardware. Awareness of Power saving features (peripherals & processors).
71

Simplified Architecture of ES:


RANDOM ACCESS MEMORY. READ ONLY MEMORY.

INPUT DEVICES.

CENTRAL PROCESSING UNIT.

OUTPUT DEVICES.

APPLICATION SPECIFIC INTEGRATED CIRCUITS.

COMMUNICATION INTERFACES.

72

Cont
1. a. Central Processing Unit (CPU): It can be any of the type Microcontroller: Low cost processor. On Chip itself there will be many other components like memory, serial communication, analog to digital converter, etc. Used for small applications. Requires less no. of components.
73

Cont.
b. Digital Signal Processor (DSP): Used in applications involving signal processing. Eg: audio & video. c. Microprocessor: Power processor. Requires more external components.
74

Cont
2. Memory: Random Access Memory (RAM) Contents are erased if power switched OFF to the chip. Read Only Memory (ROM) Retains the contents even if the power is switched OFF. Used to store the Software. When the power is switched ON the processor reads the ROM, the program is transferred to RAM & the program is executed.
75

Cont.
3. Input Devices: They are of limited capabilities. Interacting with embedded system is not an easy task. Keypad only to give the inputs (command or digit). Most embedded system take inputs from sensor or a transducer.
76

Cont
4. Output Devices: They have limited capabilities. Eg: LED, LCD, etc. Indicate health status of the system. Display the important parameters.

77

Cont.
5. Communication Interfaces: Interaction with other embedded systems. Transmission of data. Interfaces like RS232, RS422, Universal Serial Bus (USB), IEEE 1394, Ethernet, etc.

78

Cont
6. Application specific Integrated Circuits (ASIC): ICs contain circuit designed for doing a particular task. They interact with processor to carry out necessary work.

79

You might also like