EMBEDDED SYSTEMS
An Introduction
CONTENTS
What is an Embedded system? Classification of Embedded Systems Application Areas and Examples Characteristics of Embedded Systems Architecture Design and Development of Embedded Systems
WHAT IS AN EMBEDDED SYSTEM?
DEFINITION
An Embedded System is a microprocessor based system that is embedded as a sub-system, in a larger system (which may or may not be a computer system.). Any device that includes a computer but is not itself a general purpose computer.
EMBEDDING A COMPUTER
THE SIMPLEST MODEL
CLASSIFICATION OF EMBEDDED SYSTEMS
CLASSIFICATION
Small Scale Embedded System
Medium Scale Embedded System
Sophisticated Embedded System
SMALL SCALE EMBEDDED SYSTEM
Single 8 bit or 16 bit microcontroller. Little hardware and software complexity. Can be battery operated. Usually C is used for developing these systems. There is a need to limit power dissipation when system is running continuously. Programming tools: Editor, Assembler and Cross Assembler.
MEDIUM SCALE EMBEDDED SYSTEM
Single or few 16 or 32 bit microcontrollers or Digital Signal Processors (DSP) or Reduced Instruction Set Computers (RISC). Both hardware and software complexity. Programming tools: RTOS, Source Course Engineering Tool, Simulator, Debugger and Integrated Development Environment (IDE).
SOPHISTICSTED EMBEDDED SYSTEM
Enormous hardware and software complexity. Need scalable processor or configurable processor and programming logic arrays. Constrained by the processing speed available in their hardware units. Programming tools: May not be readily available at a reasonable cost or may not be available at all. A compiler or retarget able compiler might have to be developed for this.
APPLICATION AREAS AND EXAMPLES
APPLICATION AREAS
Automotive electronics
Aircraft electronics Trains Telecommunication
APPLICATION AREAS
Medical systems
Consumer electronics Fabrication equipment Smart buildings.
EXAMPLES
Personal digital assistant (PDA) Printer Cell phone Automobile: engine, brakes, dash, etc. Television Household appliances Surveillance systems
AUTOMOTIVE EMBEDDED SYSTEMS
Todays high-end automobile may have 100 microprocessors:
4-bit microcontroller checks seat belt; Microcontrollers run dashboard devices; 16/32-bit microprocessor controls engine.
EXAMPLE: AUTOMOBILE
TYPES OF EMBEDDED SYSTEM
Similar to General Computing
PDA, Video games, Set-top boxes, automatic teller machine.
Control Systems
Feedback control of real time systems Vehicle engines, flight control, nuclear reactors
Signal Processing
Radar, Sonar, DVD players
Communication and Networking
Cellular phones, Internet appliances
Nature of System Functions
Control laws Sequencing Logic Signal Processing Application Specific Interfacing Fault Response
CHARACTERISTICS OF EMBEDDED SYSTEMS
CHARACTERISTICS OF EMBEDDED SYSTEMS
Sophisticated functionality Real-time operation (always?) Low manufacturing cost Application dependent processor Restricted memory Low power
Power consumption is critical in battery-powered devices.
Excessive power consumption increases system cost even in wall-powered devices.
MANUFACTURING COST
Manufacturing cost has different components.
Non-recurring Engineering cost for design and development; Cost of production and marketing each unit;
Best technology choice will depend on the number of units we plan to produce.
REAL-TIME OPERATION
Must finish operations by deadlines.
Hard real time: missing deadline causes failure. Soft real time: missing deadline results in degraded performance.
Many systems are multi-rate: must handle operations at widely varying rates.
APPLICATION DEPENDENT REQUIREMENTS
Fault-tolerance
Continue operation despite hardware or software faults.
Safe
Systems to avoid physical or economic damage to person or property
MORE FEATURES
Dedicated systems
Predefined functionality accordingly hardware or software designed. Programmability rarely used during lifetime of the system. Real-time, fault-tolerant, safe.
ARCHITECTURE
ARCHITECTURE
IMPLEMENTING EMBEDDED SYSTEM
Hardware
Processing Element Peripherals
Input and output devices Interfacing Sensors & Actuators Interfacing Protocols
Memory Bus
HARDWARE SOFTWARE PARTIONING OF TASKS
Software
System Software Application
HARDWARE EVOLUTION
Systems-on-chip Application Specific Processors Digital Signal Processing General Purpose Microprocessors & Microcontrollers
FASTER CLOCK RATE HIGHER DEGREE OF INTEGRATION
SOFTWARE
Programs must be logically and temporally correct. Must deal with inherent physical concurrency.
Reactive Systems
Reliability and fault-tolerance are critical issues Application specific and single purpose.
Challenges in Embedded System Design
How much hardware do you need? What is word size of the CPU? Size of Memory? How do we meet our deadlines? Faster Hardware or Cleverer Software?
EMBEDDED SYSTEM DESIGN
Multi-Objective Dependability Affordability Safety Security Scalability Timelines Multi-Discipline Electronic Hardware Software Mechanical Hardware Control Algorithms Humans Society/ Institutions Life Cycle Requirements Design Manufacturing Deployment Logistics Retirement
Design Goals
Performance Overall speed, deadlines. Functionality and user interface Manufacturing cost Power consumption Other requirements (physical size etc.)
Functional vs. Non-functional Requirements
Functional requirements:
Output as a function of input
Non-functional requirements:
Time required to compute output; Size, weight etc. Power consumption Reliability
Design and Development Process
REQUIREMENTS
SPECIFICATIONS
ARCHITECTURE
COMPONENT DESIGN
SYSTEM INTEGRATION
CONCLUDING REMARKS
Embedded computers are all around us. Many systems have complex embedded hardware and software. Embedded systems pose many design challenges: design time, deadlines, power etc. Design methodologies help us manage the design process.
REFERENCES
[Link]