0% found this document useful (0 votes)
4 views147 pages

Module 1-1

An embedded system is a specialized computing system that integrates hardware and software to perform dedicated functions, often without the need for secondary memory. The document outlines the history, characteristics, classifications, and applications of embedded systems, highlighting their importance in various industries such as automotive, healthcare, and consumer electronics. Key features include reliability, real-time performance, and the use of microcontrollers or microprocessors to execute specific tasks.

Uploaded by

arathipc2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views147 pages

Module 1-1

An embedded system is a specialized computing system that integrates hardware and software to perform dedicated functions, often without the need for secondary memory. The document outlines the history, characteristics, classifications, and applications of embedded systems, highlighting their importance in various industries such as automotive, healthcare, and consumer electronics. Key features include reliability, real-time performance, and the use of microcontrollers or microprocessors to execute specific tasks.

Uploaded by

arathipc2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 147

Embedded Systems

System
• A system is a unit where all its component
assembles and work together according to the
program or plan or fixed rules.
Definitions

• An Embedded System is one that has computer


hardware with software embedded in it as one
of its main component.
• Its software embeds in ROM.
• Doesn’t need a secondary memory as in
computer.
• Eg: Automatic Washing machine, Traffic signals
with timer, Cell phones.
• An Embedded System means a processor is
embedded into that application.
• It uses a microprocessor or microcontroller to
do that task
• In an embedded system there is only one
application software that is burned into the
ROM
• Eg: Printer, Keyboard
History of Embedded Systems
• In 1960, embdded system was first used for
developing Apollo Guidance System by Charles
Stark Draper at MIT (Massachusetts Institute of
Technology).
• In 1965, Autonetics, developed the D-17B, the
computer used in the Minuteman missile
guidance system.
• In 1968, the first embedded system for a vehicle
was released.
• Texas Instruments developed the first
microcontroller in 1971.
• In 1987, the first embedded OS, VxWorks, was
released by Wind River.
• Microsoft’s Windows CE (Compact Embedded) in
1996.
• By the late 1990s, the first embedded Linux
system appeared.
• The embedded market reach $140 billion in 2013.
• Analysts are projecting an Embedded market
larger than $40 billion by 2030.
Characteristics
• Reliability
• Maintainability
• Available
• Safety
• Security
• Single-functioned − An embedded system
usually performs a specialized operation and
does the same repeatedly. For example: A
pager always functions as a pager.
• Tightly constrained − All computing systems
have constraints on design metrics, but those
on an embedded system can be especially tight.
• Design metrics is a measure of an
implementation's features such as its cost, size,
power, and performance. It must be of a size to
fit on a single chip, must perform fast enough to
process data in real time and consume
minimum power to extend battery life.
• Reactive and Real time − Many embedded
systems must continually react to changes in
the system's environment and must compute
certain results in real time without any delay.
• Microprocessors based − It must be
microprocessor or microcontroller based.
• Memory − It must have a memory, as its
software usually embeds in ROM. It does not
need any secondary memories in the
computer.
• Connected − It must have connected
peripherals to connect input and output
devices.
• HW-SW systems − Software is used for more
features and flexibility. Hardware is used for
performance and security.
GPOS Vs ES
General Purpose Operating System Embedded System
A system which is a combination of A system which is a combination of
generic hardware and General special purpose hardware and
Purpose Operating System for embedded OS for executing a specific
executing a variety of applications set of applications

Contain a General Purpose Operating May or may not contain an operating


System(GPOS) system for functioning
Applications are alterable The firmware of the embedded
(programmable) by user (It is possible system is pre-programmed and it is
for the end user to re-install the non-alterable by end-user
Operating System, and add or
remove user applications)
Performance is the key deciding factor on Application specific requirements
the (like performance, power
selection of the system. Always „Faster is requirements, memory usage etc) are the
Better‟ key deciding factors
Less/not at all tailored towards reduced Highly tailored to take advantage of the
operating power requirements, options power saving modes supported by
for different levels of power management. hardware and Operating System
Response requirements are not time For certain category of embedded
critical systems like mission critical systems, the
response time requirement is highly
critical
Execution behavior is
Need not be deterministic in execution deterministic for certain type of
behavior embedded systems like „Hard Real Time‟
systems
Classification of Embedded Systems
• Classification based on Generation
• Classification based on Complexity
• Classification Based on deterministic
behavior
• Classification Based on Triggering
• Classification Based on Performance and
Functional Requirements
Embedded Systems - Classification based
on Generation
• First Generation: The early embedded
systems built around 8-bit microprocessors
like 8085 and Z80 and 4-bit microcontrollers
• EX. stepper motor control units, Digital
Telephone Keypads etc.
• Second Generation: Embedded Systems built
around 16-bit microprocessors and 8 or 16-bit
microcontrollers, following the first generation
embedded systems
• EX.SCADA, Data Acquisition Systems etc.
• Third Generation: Embedded Systems built
around high performance 16/32 bit
Microprocessors/controllers, Application
Specific Instruction set processors like Digital
Signal Processors (DSPs), and Application
Specific Integrated Circuits (ASICs).The
instruction set is complex and powerful.
• EX. Robotics, industrial process control,
networking etc.
• Fourth Generation: Embedded Systems built
around System on Chips (SoC’s), Re-
configurable processors and multicore
processors. It brings high performance, tight
integration and miniaturization into the
embedded device market
• EX Smart phone devices, MIDs etc.
Embedded Systems - Classification based on
Complexity

• Small Scale embedded Systems: The


embedded systems built around low
performance and low cost 8 or 16 bit
microprocessors/ microcontrollers. It is
suitable for simple applications and where
performance is not time critical. It may or may
not contain OS.
• Eg: Electronic toys, Smart cards
• Medium Scale: Embedded Systems built
around medium performance, low cost 16 or
32 bit microprocessors / microcontrollers or
DSPs. These are slightly complex in hardware
and firmware. It may contain GPOS/RTOS.
• Eg: Household Appliances
• Large Scale/Complex: Embedded Systems built around
high performance 32 or 64 bit
• RISC processors/controllers, multi-core processors and
PLD. It requires complex hardware and software. These
system may contain multiple processors/controllers and
co-units/hardware accelerators for offloading the
processing requirements from the main processor. It
contains RTOS for scheduling, prioritization and
management.
• Eg: Aerospace technologies, Industrial Automation,
Wireless communications
Embedded Systems - Classification Based
on deterministic behavior

• It is applicable for Real Time systems. The


application/task execution behavior for an
embedded system can be either
deterministic or non-deterministic.
• These are classified in to two types

– Soft Real time Systems: Missing a deadline may


not be critical and can be tolerated to a certain
degree
Eg: ATM, Multimedia Systems
– Hard Real time systems: Missing a program/task
execution time deadline can have catastrophic
consequences (financial, human loss of life, etc.)
Eg: Airbag controller, Anti-lock braking system
Embedded Systems - Classification Based
on Triggering
These are classified into two types
– Event Triggered :
• Activities within the system (e.g., task run-times) are
dynamic and depend upon occurrence of different events
• These systems rely to specific external events or activities
to initiate tasks.
• They respond to changes in variables such as
temperature, pressure etc.
• These are particularly suited for applications requiring
immediate responses or real time reactions.
Eg: Medical device monitoring, Intrusion detection systems.
–Time triggered:

• Activities within the system follow a statically


computed schedule (i.e., they are allocated time slots
during which they can take place) and thus by nature
are predictable.
• These are activated or initiated at pre determined
intervals or at a specific point of time
• Ensures timely and consistent execution of processes.
• They are used for data collection, industrial system
with routine control loops and scheduled car
maintenance system.
Classification Based on Performance and Functional
Requirements

 Networked Embedded Systems


• These connect to a network to access resources from
one location.
• This network may be a LAN, WAN, or the internet, and
the connection can be wired or wireless.
• This category represents the fastest-growing area in
embedded system applications.
• Embedded web servers, home security systems, ATM
machines, and card swipe machines are examples of
networked embedded systems.
 Real-Time Embedded Systems
• These systems provide the required output within a
predetermined time frame.
• They adhere to strict time constraints for task
completion.
• They can be further classified into soft and hard
real-time embedded systems.
• Examples of real-time embedded systems include
automotive airbag control systems and flight control
systems.
 Mobile Embedded Systems
• These systems are compact, user-friendly, and
resource-efficient.
• They are commonly found in portable devices
such as mobile phones, digital cameras, mp3
players, and personal digital assistants.
• These systems are designed for ease of use and
portability, making them ideal for on-the-go
applications.
 Standalone Embedded Systems
• These systems are self-sufficient and do not
rely on other systems.
• They accept input in analog or digital form,
process it, and generate an output.
• Some common examples include mp3
players, digital cameras, video game consoles,
etc.
Purpose of Embedded Systems
 Each Embedded Systems is designed to serve the
purpose of any one or a combination of the
following tasks.
• Data Collection/Storage/Representation
• Data Communication
• Data (Signal) Processing
• Monitoring
• Control
• Application Specific User Interface
Data Collection/Storage/Representation

• Performs acquisition of data from the external


world.
• The collected data can be either analog or digital
• Data collection is usually done for storage, analysis,
manipulation and transmission
• The collected data may be stored directly in the
system or may be transmitted to some other
systems or it may be processed by the system or it
may be deleted instantly after giving a meaningful
representation
Data Communication

• Embedded Data communication systems are deployed in applications


ranging from complex satellite communication systems to simple home
networking systems

• Embedded Data communication systems are dedicated for data


communication.

• The data communication can happen through a wired interface (like


Ethernet, RS-232C/USB/IEEE1394 etc) or wireless interface (like Wi-Fi,
GSM,/GPRS, Bluetooth, ZigBee etc).

• Network hubs, Routers, switches, Modems etc are typical examples for
dedicated data transmission embedded systems
Data (Signal) Processing
• Embedded systems with Signal processing
functionalities are employed in applications
demanding signal processing like Speech coding,
synthesis, audio video codec, transmission
applications etc
• Computational intensive systems
• Employs Digital Signal Processors (DSPs)
Monitoring

• Embedded systems coming under this category are


specifically designed for monitoring purpose
• They are used for determining the state of some
variables using input sensors
• They cannot impose control over variables.
• Electro Cardiogram (ECG) machine for monitoring
the heart beat of a patient is a typical example for
this.
• The sensors used in ECG are the different Electrodes
connected to the patient’s body
• Measuring instruments like Digital CRO, Digital
Multi meter, Logic Analyzer etc used in Control
& Instrumentation applications are also
examples of embedded systems for
monitoring purpose
Control
• Embedded systems with control functionalities are used for imposing control
over some variables according to the changes in input variables.

• Embedded system with control functionality contains both sensors and


actuators.

• Sensors are connected to the input port for capturing the changes in
environmental variable or measuring variable.

• The actuators connected to the output port are controlled according to the
changes in input variable to put an impact on the controlling variable to bring
the controlled variable to the specified range.
• Air conditioner for controlling room temperature is a
typical example for embedded system with “Control”
functionality.
• Air conditioner contains a room temperature sensing
element (sensor) which may be a thermistor and a
handheld unit for setting up (feeding) the desired
temperature
• The air compressor unit acts as the actuator. The
compressor is controlled according to the current room
temperature and the desired temperature set by the
end user.
Application Specific User Interface

• Embedded systems which are designed for a specific


application

• Contains Application Specific User interface (rather than


general standard UI ) like key board, Display units etc.

• Aimed at a specific target group of users.

• Mobile handsets, Control units in industrial applications etc


are examples.
Major Application Areas of Embedded Systems

• Consumer Electronics: Camcorders, Cameras etc.

• Household Appliances: Television, DVD players, washing machine, Fridge,


Microwave Oven etc.

• Home Automation and Security Systems: Air conditioners, sprinklers,


Intruder detection alarms, Closed Circuit Television Cameras, Fire alarms etc.

• Automotive Industry: Anti-lock breaking systems (ABS), Engine Control,


Ignition Systems, Automatic Navigation Systems etc.

• Telecom: Cellular Telephones, Telephone switches, Handset Multimedia


Applications etc.
• Computer Peripherals: Printers, Scanners, Fax machines etc.

• Computer Networking Systems: Network Routers, Switches, Hubs, Firewalls


etc.

• Health Care: Different Kinds of Scanners, EEG, ECG Machines etc.

• Measurement & Instrumentation: Digital multi meters, Digital CROs, Logic


Analyzers PLC systems etc.

• Banking & Retail: Automatic Teller Machines (ATM) and Currency counters,
Point of Sales (POS)

• Card Readers: Barcode, Smart Card Readers, Hand held Devices etc.
Building Blocks of a Typical Embedded
System
• An embedded system is a combination of 3
things, Hardware Software Mechanical
Components and it is supposed to do one
specific task only.
• A typical embedded system contains a single
chip controller which acts as the master brain
of the system.
• Embedded systems are basically designed to
regulate a physical variable or to manipulate the
state of some devices by sending some signals
to the actuators or devices connected to the
output port system, 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.
• The control is achieved by processing the
information coming from the sensors and user
interfaces and controlling some actuators that
regulate the physical variable.
• Keyboards, push button, switches, etc. are
Examples of common user interface input devices.
• LEDs, LCDs, Piezoelectric buzzers, etc examples for
common user interface output devices for a typical
embedded system.
• The core of the system performs some
predefined operations on input data with the
help of embedded firmware in the system and
sends some actuating signals to the actuator
connected to the output port of the system.
• The memory of the system is responsible for
holding the code (control algorithm and other
important configuration details).
• There are two types of memories are used in
any embedded system.
• Fixed memory (ROM) is used for storing code
or program.
• The user cannot change the firmware in this
type of memory.
• The most common types of memories used in
embedded systems for control algorithm
storage are PROM , EEPROM, UVEPROM and
FLASH.
• 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.
• 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.
The Core of the Embedded Systems
• : The core of the embedded system falls into any
one of the following categories.
 General Purpose and Domain Specific Processors
• Microprocessors
• Microcontrollers
• Digital Signal Processors
 Programmable Logic Devices (PLDs)
 Application Specific Integrated Circuits (ASICs)
 Commercial off the shelf Components (COTS)
GENERAL PURPOSE AND DOMAIN
SPECIFIC PROCESSOR

• Almost 80% of the embedded systems are


processor/ controller based.
• The processor may be microprocessor or a
microcontroller or digital signal processor,
depending on the domain and application.
Microprocessor

• A silicon chip representing a Central Processing Unit (CPU), which is


capable of performing arithmetic as well as logical operations
according to a pre-defined set of Instructions, which is specific to the
manufacturer.

• In general the CPU contains the Arithmetic and Logic Unit (ALU),
Control Unit and Working registers.

• Microprocessor is a dependant unit and it requires the combination of


other hardware like Memory, Timer Unit, and Interrupt Controller etc
for proper functioning.

• Intel claims the credit for developing the first Microprocessor unit Intel
4004, a 4 bit processor which was released in Nov 1971.
Microcontroller

• A highly integrated silicon chip containing a CPU, scratch pad


RAM, Special and General purpose Register Arrays, On Chip
ROM/FLASH memory for program storage, Timer and
Interrupt control units and dedicated I/O ports
• Microcontrollers can be considered as a super set of
Microprocessors
• Microcontroller can be general purpose (like Intel 8051,
designed for generic applications and domains) or application
specific (Like Automotive AVR from Atmel Corporation.
Designed specifically for automotive applications)
• Since a microcontroller contains all the
necessary functional blocks for independent
working, they found greater place in the
embedded domain in place of
microprocessors
• Microcontrollers are cheap, cost effective and
are readily available in the market
• Texas Instruments TMS 1000 is considered as
the world’s first microcontroller
Microprocessor Microcontroller

A silicon chip representing a Central


Processing Unit A microcontroller is a highly
(CPU), which is capable of performing integrated chip that
arithmetic as contains a CPU, scratch pad RAM,
well as logical operations according to a Special and
pre-defined set of Instructions General purpose Register Arrays,
On Chip
ROM/FLASH memory for program
storage, Timer
and Interrupt control units and
dedicated I/O ports
It is a dependent unit. It requires the It is a self contained unit and it
combination of doesn’t require
other chips like Timers, Program and external Interrupt Controller, Timer,
data memory chips, Interrupt UART etc for its functioning
controllers etc for functioning

Most of the time general purpose in Mostly application oriented or


design and Operation domain specific
Microprocesso Microcontroller
r
Doesn’t contain a built in I/O port. The Most of the processors contain multiple
built-in I/O
I/O Port ports which can be operated as a single
functionality needs to be implemented 8 or 16 or 32
with the help of bit Port or as individual port pins
external Programmable Peripheral
Interface Chips like
8255
Targeted for high end market where
performance is Targeted for embedded market where
Important performance is
not so critical (At present this
demarcation is invalid)
Limited power saving options Includes lot of power saving features
compared to
Microcontrollers
General Purpose Processor (GPP) Vs Application Specific
Instruction Set Processor (ASIP)

• General Purpose Processor or GPP is a processor designed


for general computational tasks.
• GPPs are produced in large volumes and targeting the
general market. Due to the high volume production, the per
unit cost for a chip is low compared to ASIC or other specific
Ics.
• A typical general purpose processor contains an Arithmetic
and Logic Unit (ALU) and Control Unit (CU).

• Application Specific Instruction Set processors (ASIPs) are processors with
architecture and instruction set optimized to specific domain/application
requirements like Network processing, Automotive, Telecom, media applications,
digital signal processing, control applications etc.

• ASIPs fill the architectural spectrum between General Purpose Processors and
Application Specific Integrated Circuits (ASICs)

• The need for an ASIP arises when the traditional general purpose processor are
unable to meet the increasing application needs

• Some Microcontrollers (like Automotive AVR, USB AVR from Atmel), System on
Chips, Digital Signal Processors etc are examples of Application Specific Instruction
Set Processors (ASIPs).

• ASIPs incorporate a processor and on-chip peripherals, demanded by the


application requirement, program and data memory
Digital Signal Processors (DSPs)

• Powerful special purpose 8/16/32 bit microprocessors designed specifically to


meet the computational demands and power constraints of today's embedded
audio, video, and communications applications

• Digital Signal Processors are 2 to 3 times faster than the general purpose
microprocessors in signal processing applications

• DSPs implement algorithms in hardware which speeds up the execution whereas


general purpose processors implement the algorithm in firmware and the speed
of execution depends primarily on the clock for the processors

• DSP can be viewed as a microchip designed for performing high speed


computational operations for “addition”, “subtraction”, “multiplication” and
“division”
• A typical Digital Signal Processor incorporates
the following key units
--Program Memory
– Data Memory
– Computational Engine
– I/O Unit
• Eg: Audio video signal processing,
telecommunication and multimedia
applications
Application Specific Integrated Circuit
(ASIC)
• A microchip designed to perform a specific or unique
application. It is used as replacement to conventional
general purpose logic chips.

• ASIC integrates several functions into a single chip and


thereby reduces the system development cost.

• As a single chip, ASIC consumes very small area in the total


system and thereby helps in the design of smaller systems
with high capabilities/functionalities.
• ASICs can be pre-fabricated for a special
application or it can be custom fabricated by
using the components from a re-usable
“building block” library of components for a
particular customer application
• Fabrication of ASICs requires a non-refundable initial
investment (Non Recurring Engineering (NRE) charges) for the
process technology and configuration expenses

• If the Non-Recurring Engineering Charges (NRE) is born by a


third party and the Application Specific Integrated Circuit
(ASIC) is made openly available in the market, the ASIC is
referred as Application Specific Standard Product (ASSP)

• The ASSP is marketed to multiple customers just as a general-


purpose product , but to a smaller number of customers since
it is for a specific application
Programmable Logic Devices (PLDs)

• Logic devices provide specific functions, including device-to-device


interfacing, data communication, signal processing, data display, timing
and control operations, and almost every other function a system must
perform.

• Logic devices can be classified into two broad categories - Fixed and
Programmable. The circuits in a fixed logic device are permanent, they
perform one function or set of functions - once manufactured, they
cannot be changed.

• Programmable logic devices (PLDs) offer customers a wide range of logic


capacity, features, speed, and voltage characteristics - and these devices
can be re-configured to perform any number of functions at any time.
• Designers can use inexpensive software tools
to quickly develop, simulate, and test their
logic designs in PLD based design. The design
can be quickly programmed into a device, and
immediately tested in a live circuit .
• PLDs are based on re-writable memory
technology and the device is reprogrammed
to change the design.
Advantages of PLD
• PLDs offer customer much more flexibility during design cycle
• PLDSs do not require long lead times for prototype or
production-the PLDs are already on a distributor’s self and
ready for shipment
• PLDs allow customers to order just the number of parts
required when they need them. allowing them to control
inventory.
• PLDs are reprogrammable even after a piece of equipment is
shipped to a customer.
• The manufacturers able to add new features or upgrade the
PLD based products that are in the field by uploading new
programming file
Commercial off the Shelf Component (COTS)

• A Commercial off-the-shelf (COTS) product is


one which is used “as-is”
• COTS products are designed in such a way to
provide easy integration and interoperability
with existing system components
 Typical examples for the COTS hardware unit are
• Remote Controlled Toy Car control unit including the
RF Circuitry part
• High performance, high frequency microwave
electronics (2 to 200 GHz)
• High bandwidth analog-to-digital converters
• Devices and components for operation at very high
temperatures,
• Electro-optic IR imaging arrays
• UV/IR Detectors etc
• The major advantage of using COTS is that
they are readily available in the market, cheap
and a developer can cut down his/her
development time to a great extend.
• There is no need to design the module
yourself and write the firmware .
• Everything will be readily supplied by the
COTs manufacturer.
• The major problem faced by the end-user is that there are
no operational and manufacturing standards.

• The major drawback of using COTs component in


embedded design is that the manufacturer may withdraw
the product or discontinue the production of the COTs at
any time if rapid change in technology

• This problem adversely affect a commercial manufacturer


of the embedded system which makes use of the specific
COT
Memory

• Memory is an important part of an embedded system.


• The memory used in embedded system can be either
Program Storage Memory (ROM) or Data memory (RAM)
• Certain Embedded processors/controllers contain built in
program memory and data memory and this memory is
known as on-chip memory
• Certain Embedded processors/controllers do not contain
sufficient memory inside the chip and requires external
memory called off-chip memory or external memory.
Program Storage Memory(ROM)
• Stores the program instructions
• Retains its contents even after the power to it
is turned off.
• It is generally known as Non volatile storage
memory
• Depending on the fabrication, erasing and
programming techniques they are classified
into
Masked ROM
• One-time programmable memory.

• Uses hardwired technology for storing data.

• The device is factory programmed by masking and


metallization process according to the data provided by the
end user.
• The primary advantage of MROM is low cost for high volume
production.
• MROM is the least expensive type of solid state memory.
• The limitation with MROM based firmware
storage is the inability to modify the device
firmware against firmware upgrades.
• The MROM is permanent in bit storage, it is
not possible to alter the bit information

Programmable Read Only Memory
(PROM) / (OTP)
• It is not pre-programmed by the manufacturer

• The end user is responsible for Programming these devices.

• PROM/OTP has nichrome or polysilicon wires arranged in a matrix, these wires


can be functionally viewed as fuses.

• It is programmed by a PROM programmer which selectively burns the fuses


according to the bit pattern to be stored.

• Fuses which are not blown/burned represents a logic “1” where as fuses
which are blown/burned represents a logic “0”.The default state is logic “1”.
• OTP is widely used for commercial production
of embedded systems whose proto-typed
versions are proven and the code is finalized.
• It is a low cost solution for commercial
production.

• OTPs cannot be reprogrammed


Erasable Programmable Read Only Memory (EPROM)

• Erasable Programmable Read Only (EPROM) memory


gives the flexibility to re-program the same chip.
• During development phase , code is subject to
continuous changes and using an OTP is not economical.
• EPROM stores the bit information by charging the
floating gate of an FET(Field Effect Transistor)
• Bit information is stored by using an EPROM
Programmer, which applies high voltage to charge the
floating gate
• EPROM contains a quartz crystal window for
erasing the stored information. If the window
is exposed to Ultra violet rays for a fixed
duration, the entire memory will be erased.

• Even though the EPROM chip is flexible in


terms of re-programmability, it needs to be
taken out of the circuit board and needs to be
put in a UV eraser device for 20 to 30 minutes.
Electrically Erasable Programmable Read
Only Memory (EEPROM)
• Erasable Programmable Read Only (EPROM) memory gives
the flexibility to re-program the same chip using electrical
signals
• The information contained in the EEPROM memory can be
altered by using electrical signals at the register/Byte level.
• They can be erased and reprogrammed within the circuit.
• These chips include a chip erase mode and in this mode they
can be erased in a few milliseconds.
• It provides greater flexibility for system design.
• The only limitation is their capacity is limited when
compared with the standard ROM.
Program Storage Memory – FLASH

• FLASH memory is a variation of EEPROM technology.

• It combines the re-programmability of EEPROM and the high capacity


of standard ROMs.

• FLASH memory is organized as sectors (blocks) or pages

• FLASH memory stores information in an array of floating gate MOSFET


transistors

• The erasing of memory can be done at sector level or page level


without affecting the other sectors or pages

• Each sector/page should be erased before re-programming


Read-Write Memory/Random Access Memory (RAM)

• RAM is the data memory or working memory


of the controller/processor
• RAM is volatile, meaning when the power is
turned off, all the contents are destroyed
• RAM is a direct access memory, meaning we
can access the desired memory location
directly without the need for traversing
through the entire memory locations to reach
the desired memory position.
Static RAM (SRAM)
– Static RAM stores data in the form of Voltage.
– They are made up of flip-flops.
– In typical implementation, an SRAM cell (bit) is
realized using 6 transistors
– Four of the transistors are used for building
the latch (flip-flop) part of the memory cell and 2
for controlling the access.
– Static RAM is the fastest form of RAM available.
– Holds its content as long as power is available.
Dynamic RAM
– Dynamic RAM stores data in the form of charge.
They are made up of MOS transistor gates
– The advantages of DRAM are its high density and
low cost compared to SRAM
– The disadvantage is that since the information is
stored as charge it gets leaked off with time and to
prevent this they need to be refreshed periodically
– Special circuits called DRAM controllers are used
for the refreshing operation. The refresh operation
is done periodically in milliseconds interval
SRAM Cell DRAM Cell

Made up of 6 CMOS transistors (MOSFET) Made up of a MOSFET and a capacitor

Doesn‟t Require refreshing Requires refreshing

Low capacity (Less dense) High Capacity (Highly dense)

More expensive Less Expensive

Fast in operation. Typical access time is Slow in operation due to refresh


10ns requirements. Typical access time is 60ns.
Write operation is faster than read
operation.
Non Volatile RAM (NVRAM)
– Random access memory with battery backup
– It contains Static RAM based memory and a
minute battery for providing supply to the
memory in the absence of external power supply
– The memory and battery are packed together in a
single package
– NVRAM is used for the non volatile storage of
results of operations or for setting up of flags etc
– The life span of NVRAM is expected to be around
10 years
Sensors
• A transducer device which converts energy
from one form to another for any
measurement or control purpose.
• Sensors acts as input device.
• Example: IR, humidity , PIR(passive infra
red) , ultrasonic , piezoelectric , smoke
sensors
The I/O Subsystem
• The I/O subsystem of the embedded system
facilitates the interaction of the embedded
system with external world.
• The interaction happens through the sensors
and actuators connected to the Input and
output ports respectively of the embedded
system
Light Emitting Diode (LED)
• Light Emitting Diode (LED) is an output device for
visual indication in any embedded system
• LED can be used as an indicator for the status of
various signals or situations.
• Typical examples are indicating the presence of
power conditions like “Device ON”, “Battery low” or
“Charging of battery "for a battery operated
handheld embedded devices.
• LED is a p-n junction diode and it contains an anode
and a cathode
• For proper functioning of the LED, the anode of it
should be connected to +ve terminal of the supply
voltage and cathode to the –ve terminal of supply
voltage
• The current flowing through the LED must limited
to a value below the maximum current that it can
conduct.
• A resister is used in series between the power
supply and the resistor to limit the current through
the LED.
7-Segment LED Display

• The 7 – segment LED display is an output


device for displaying alpha numeric characters

• It contains 8 light-emitting diode (LED)


segments arranged in a special form. Out of
the 8 LED segments, 7 are used for displaying
alpha numeric characters
• The LED segments are named A to G and the decimal point LED
segment is named as DP.

• The LED Segments A to G and DP should be lit accordingly to display


numbers and characters

• The 7 – segment LED displays are available in two different


configurations, namely; Common anode and Common cathode

• In the Common anode configuration, the anodes of the 8 segments


are connected commonly whereas in the Common cathode
configuration, the 8 LED segments share a common cathode line
• Based on the configuration of the 7 – segment LED
unit, the LED segment anode or cathode is
connected to the Port of the processor/controller in
the order “A‟ segment to the Least significant port
Pin and DP segment to the most significant Port Pin.
• The current flow through each of the LED segments
should be limited to the maximum value supported
by the LED display unit.
• The current through each segment can be limited
by connecting a current limiting resistor to the
anode or cathode of each segment
Push button switch
• Push Button switch is an input device.
• Push button switch comes in two configurations,
namely “Push to Make” and “Push to Break”
• The switch is normally in the open state and it makes a
circuit contact when it is pushed or pressed in the
“Push to Make” configuration.
• In the “Push to Break” configuration, the switch is
normally in the closed state and it breaks the circuit
contact when it is pushed or pressed
• Push button is used for generating a momentary pulse
Piezo Buzzer
• It is a piezoelectric device for generating audio
indications in embedded applications.
• A Piezo buzzer contains a piezoelectric
diaphragm which produces audible sound in
response to the voltage applied to it.
• Piezoelectric buzzers are available in two types
1.Self-driving 2.External driving
• Self-driving contains are the necessary components to
generate sound at a predefined tone.
• External driving piezo Buzzers supports the generation of
different tones.

• The tone can be varied by applying a variable pulse train to


the piezoelectric buzzer.

• A Piezo Buzzer can be directly interfaced to the port pin of


the processor/Controller.
Stepper Motor
• Stepper motor is an electro mechanical device
which generates discrete displacement
(motion) in response to dc electrical signals.
• a stepper motor produces discrete rotation in
response to the dc voltage applied to it
• Stepper motors are widely used in industrial
embedded applications, consumer electronic
products and robotics control systems.
• 2 types.
– Unipolar: A unipolar stepper motor contains two windings
per phase. The direction of rotation (clockwise or
anticlockwise) of a stepper motor is controlled by
changing the direction of current flow. Current in one
direction flows through one coil and in the opposite
direction flows through the other coil. It is easy to shift the
direction of rotation by just switching the terminals to
which the coils are connected

– Bipolar: A bipolar stepper motor contains single winding


per phase. For reversing the motor rotation the current
flow through the windings is reversed dynamically. It
requires complex circuitry for current flow reversal
Relay
• An electro mechanical device which acts as
dynamic path selectors for signals and power.
• The “Relay‟ unit contains a relay coil made up
of insulated wire on a metal core and a metal
armature with one or more contacts.
• “Relay‟ works on electromagnetic principle.
• When a voltage is applied to the relay coil,
current flows through the coil, which in turn
generates a magnetic field.
• The magnetic field attracts the armature core and
moves the contact point.
• The movement of the contact point changes the
power/signal flow path.
• The Relay is normally controlled using a relay driver
circuit connected to the port pin of the
processor/controller
• A transistor can be used as the relay driver. The
transistor can be selected depending on the relay
driving current requirements.
Optocoupler

• Optocoupler is a solid state device to isolate two parts


of a circuit.
• Optocoupler combines an LED and a photo-transistor
in a single housing (package).
• In electronic circuits, optocoupler is used for
suppressing interference in data communication,
circuit isolation, High voltage separation,
simultaneous separation and intensification signal etc.
• Optocouplers can be used in either input circuits or in
output circuits
Other Components
• The other system components refer to the
components/circuits/ICs which are necessary for the
proper functioning of the embedded system.
• Some of these circuits may be essential for the proper
functioning of the processor/controller and firmware
execution.
 Watchdog timer
 Reset IC (or passive circuit)
 Oscillator circuit
 brown-out protection IC (or passive circuit), etc.
Reset Circuit
• The reset circuit is essential to ensure that the
device is not operating at a voltage level where the
device is not guaranteed to operate, during system
power ON.
• The reset signal brings the internal registers and
the different hardware systems of the
processor/controller to a known state and starts
the firmware execution from the reset vector .
• The reset signal can be either active high or active
low .
• Since the processor operation is synchronised to a clock
signal, the reset pulse should be wide enough to give time
for the clock oscillator to stabilise before the internal
reset state starts.
• The reset signal to the processor can be applied at power
ON through an external passive reset circuit comprising a
Capacitor and Resistor
• Select the reset IC based on the type of reset signal and
logic level (CMOS/TTL) supported by the
processor/controller in use.
• Some microprocessors/controllers contain built-in internal
reset circuitry and they don't require external reset
circuitry.
• Figure illustrates a resistor capacitor based
passive reset circuit for active high and low
configurations. The reset pulse width can be
adjusted by changing the resistance value R
and capacitance value C.
Brown-out protection circuit
• Brown-out protection circuit prevents the
processor/controller from unexpected program
execution behaviour when the supply voltage to the
processor/controller falls below a specified voltage.
• It is essential for battery powered devices since there
are greater chances for the battery voltage to drop
below the required threshold.
• The processor behaviour may not be predictable if the
supply voltage falls below the recommended op-erating
voltage.
• It may lead to situations like data corruption.
• A brown-out protection circuit holds the
processor/controller in reset state, when the operating
voltage falls below the threshold, until it rises above the
threshold voltage.
• Certain processors/controllers support built in brown-out
protection circuit which monitors the supply voltage
internally.
• If the processor/controller doesn't integrate a built-in
brown-out protection circuit, the same can be implemented
using external passive circuits or supervisor ICs.

• Figure illustrates a brown-out circuit
implementation using Zener diode and
transistor for processor/controller with active
low Reset logic.
• The Zener diode Dz and transistor Q forms the heart of this
circuit.
• The transistor conducts always when the supply voltage V is
greater than that of the sum of VBE and V₂ (Zener voltage).
• The transistor stops conducting when the supply voltage
falls below the sum of VBE and V.
• Select the Zener diode with required voltage for setting the
low threshold value for Vee.
• The values of R1, R2, and R3 can be selected based on the
electrical characteristics (Absolute maximum current and
voltage ratings) of the transistor in use.
Oscillator Unit
• The oscillator unit of the embedded system is responsible
for generating the precise clock for the processor.
• Certain processors/controllers integrate a built-in
oscillator unit and simply require an external ceramic
resonator/quartz crystal for producing the necessary clock
signals.
• A quartz crystal is normally mounted in a hermetically
sealed metal case with two leads protruding out of the
case.
• Certain devices may not contain a built-in oscillator unit
and require the clock pulses to be generated and supplied
externally.
• Quartz crystal Oscillators are avail-able in the form chips and
they can be used for generating the clock pulses in such a cases.
• The speed of operation of a processor is primarily dependent
on the clock frequency.
• The logical circuits lying inside the processor always have an
upper threshold value for the maximum clock at which the
system can run, beyond which the system becomes unstable
and non functional.
• The total system power consumption is directly proportional to
the clock frequency.
• The accuracy of program execution depends on the accuracy of
the clock signal.
• The accuracy of the crystal oscillator or ceramic resonator is
normally expressed in terms of +/-ppm (Parts per million).
Real-Time Clock (RTC)
• Real-Time Clock (RTC) is a system component responsible
for keeping track of time.
• RTC holds information like current time (In hours, minutes
and seconds) in 12 hour/24 hour format, date, month,
year, day of the week, etc. and supplies timing reference to
the system.
• RTC is intended to function even in the absence of power.
• RTCs are available in the form of Integrated Circuits from
different semiconductor manufacturers.
• The RTC chip contains a microchip for holding the time and
date related information and backup battery cell for
functioning in the absence of power, in a single IC package.
• The RTC chip is interfaced to the processor or controller of
the embedded system.
• For Operating System based embedded devices, a timing
reference is essential for synchronising the operations of the
OS kernel.
• The RTC can interrupt the OS kernel by asserting the interrupt
line of the processor/controller to which the RTC interrupt line
is connected.
• The OS kernel identifies the interrupt in terms of the Interrupt
Request (IRQ) number generated by an interrupt controller.
• One IRQ can be assigned to the RTC interrupt and the kernel
can perform necessary operations like system date time
updation, managing software timers etc when an RTC timer tick
interrupt occurs.
• The RTC can be configured to interrupt the processor at
predefined intervals or to interrupt the processor when the
RTC register reaches a specified value (used as alarm interrupt).
Watchdog Timer

• watchdog monitor the firmware execution and reset the


system processor/microcontroller when the program
execution hangs up.
• A watchdog timer, or simply a watchdog, is a hardware
timer for monitoring the firmware execution.
• Depending on the internal implementation, the watchdog
timer increments or decrements a free running counter
with each clock pulse and generates a reset signal to reset
the processor if the count reaches zero for a down
counting watchdog, or the highest count value for an up
counting watchdog.
• If the watchdog counter is in the enabled state, the
firmware can write a zero (for up counting watchdog
implementation) to it before starting the execution
of a piece of code (subroutine or portion of code
which is susceptible to execution hang up) and the
watchdog will start counting.
• If the firmware execution doesn't complete due to
malfunctioning, within the time required by the
watchdog to reach the maximum count, the counter
will generate a reset pulse and this will reset the
processor (if it is connected to the reset line of the
processor).
• If the firmware execution completes before the expiration of the watchdog
timer you can reset the count by writing a 0 (for an upcounting watchdog
timer) to the watchdog timer register.
• Most of the processors implement watchdog as a built-in compo- nent and
provides status register to control the watchdog timer (like enabling and
disabling watchdog functioning) and watchdog timer register for writing the
count value.
• If the processor/controller doesn't contain a built in watchdog timer, the
same can be implemented using an external watchdog timer IC circuit.
• The external watchdog timer uses hardware logic for enabling/disabling,
resetting the watch- dog count, etc instead of the firmware based 'writing' to
the status and watchdog timer register.
• In modem systems running on embedded operating systems, when a
watchdog timeout occurs, an interrupt is generated instead of resetting the
processor.
• The interrupt handler for this handles the
situation in an appropriate fashion.
• Figure illustrates the implementation of an
external watchdog timer based microprocessor
supervisor circuit for a small scale embedded
system.
printed circuit board (PCB)
• A printed circuit board (PCB) is an electronic assembly that uses copper
conductors to create electrical connections between components.
• PCBs also provide mechanical support for electronic components so that
a device can be mounted in an enclosure.
• All PCBs are built from alternating layers of conductive copper with layers
of electrically insulating material.
• Conductive features on printed circuit boards include copper traces,
pads, and conductive planes.
• The mechanical structure is made up of the insulating material laminated
between the layers of conductors.
• The overall structure is plated and covered with a non-conductive solder
mask, and silk screen is printed on top of the solder mask to provide a
legend for electronic components.
• After these fabrication steps are completed, the bare board is sent into
printed circuit board assembly, where components are soldered to the
board and the PCB can be tested.
EMBEDDED SYSTEM DESIGN PROCESS

Fig: Major levels of abstraction in the


design process.
Requirements
• The initial stages of the design process capture the
sytem information for use in creating the
architecture and components.
• It include two phases:
• First, we gather an informal description from the
customers known as requirements, and
• we refine the requirements into a specification
that contains enough information to begin
designing the system architecture.
• Requirements may be functional or nonfunctional.
Non-functional requirements
• Performance: The speed of the system is often a major
consideration both for the usability of the system and for its
ultimate cost. performance may be a combination of soft
performance metrics such as approximate time to perform a
user-level function and hard deadlines by which a particular
operation must be completed.
• Cost: The target cost or purchase price for the system is
almost always a consideration. Cost typically has two major
components: manufacturing cost includes the cost of
components and assembly; nonrecurring engineering (NRE)
costs include the personnel and other costs of designing the
system.
• Physical size and weight: The physical aspects of the final
system can vary greatly depending upon the application. An
industrial control system for an assembly line may be
designed to fit into a standard-size rack with no strict
limitations on weight. A handheld device typically has tight
requirements on both size and weight that can ripple
through the entire system design.
• Power consumption: Power is important in battery-
powered systems and is often important in other
applications as well. Power can be specified in the
requirements stage in terms of battery life—the customer is
unlikely to be able to describe the allowable wattage.
A sample requirements form entries
• Name: Giving a name to the project not only simplifies talking about
it to other people but can also crystallize the purpose of the
machine.
• Purpose: This should be a brief one- or two-line description of what
the system is supposed to do.
• Inputs and outputs: These two entries are more complex than they
seem. The inputs and outputs to the system encompass:
 Types of data: Analog electronic signals? Digital data? Mechanical
inputs?
 Data characteristics: Periodically arriving data, such as digital audio
samples? Occasional user inputs? How many bits per data element?
 Types of I/O devices: Buttons? Analog/digital converters? Video
displays?
• Functions: This is a more detailed description of what
the system does. A good way to approach this is to work
from the inputs to the outputs: When the system
receives an input, what does it do? How do user
interface inputs affect these functions? How do different
functions interact?
• Performance: Many embedded computing systems
spend at least some time controlling physical devices or
processing data coming from the physical world. In most
of these cases, the computations must be performed
within a certain time frame. It is essential that the
performance requirements be identified early since they
must be carefully measured during implementation to
ensure that the system works properly.
• Power: The most important decision is whether the
machine will be battery powered or plugged into
the wall. Battery-powered machines must be much
more careful about how they spend energy.
• Physical size and weight: You should give some
indication of the physical size of the system to help
guide certain architectural decisions.
• Manufacturing cost: This includes primarily the
cost of the hardware components. Cost has a
substantial influence on architecture: A machine
that is meant to sell at $10 most likely has a very
different internal structure than a $100 system.
GPS MODULE
REQUIREMENTS FORM OF GPS MOVING
MAP MODULE
• Name : GPS moving map
• Purpose: Consumer-grade moving map for driving use
• Inputs : Power button, two control buttons
• Outputs : Back-lit LCD display 400 _ 600
• Functions : Uses 5-receiver GPS system; three user-
selectable resolutions; always displays current latitude and
longitude
• Performance: Updates screen within 0.25 seconds upon
movement Manufacturing cost:$30
• Power: 100mW
• Physical size and weight: No more than 2” _ 6, ” 12 ounces
Specification
• It serves as the contract between the
customer and the architects.
• The specification must be carefully written so
that it accurately reflects the customer’s
requirements and does so in a way that can be
clearly followed during design.
• The specification should be understandable
enough so that someone can verify that it
meets system requirements and overall
expectations of the customer.
• A specification of the GPS system would
include several components:
– Data received from the GPS satellite constellation.
– Map data.
– User interface.
– Operations that must be performed to satisfy
customer requests.
– Background actions required to keep the system
running, such as operating the GPS receiver.
Architecture Design

• Describing how the system implements those


functions is the purpose of the architecture.
• The architecture is a plan for the overall
structure of the system that will be used later
to design the components that make up the
architecture.
• The creation of the architecture is the first
phase of what many designers think of as
design.
BLOCK DIAGRAM FOR THE MOVING MAP
• we need to search the topographic database
and to render (i.e., draw) the results for the
display.
• We have chosen to separate those functions
so that we can potentially do them in parallel
—performing rendering separately from
searching the database may help us update
the screen more fluidly.
• The hardware block diagram shows that we
have one central CPU surrounded by memory
and I/O devices.
• We have chosen to use two memories:
a frame buffer for the pixels to be displayed
and
a separate program/data memory for general
use by the CPU.
 The software block diagram fairly closely follows the
system block diagram.
 we have added a timer to control when we read
the buttons on the user interface and render data
onto the screen.
 To have a truly complete architectural description,
we require more detail, such as where units in the
software block diagram will be executed in the
hardware block diagram and when operations will
be performed in time.
• The architectural description tells us what components we
need.
• The component design effort builds those components in
conformance to the architecture and specification.
• The components will in general include both hardware and
software modules.
• Some of the components will be ready-made.
• The CPU, for example, will be a standard component in almost
all cases, as will memory chips and many other components .
• In the moving map, the GPS receiver is a good example of a
specialized component that will be a predesigned, standard
component.
• We can also make use of standard software modules.
System Integration
• Only after the components are built do we have the
satisfaction of putting them together and seeing a working
system.
• Bugs are typically found during system integration, and good
planning can help us find the bugs quickly.
• By building up the system in phases and running properly
chosen tests, we can often find bugs more easily.
• If we debug only a few modules at a time, we are more likely to
uncover the simple bugs and able to easily recognize them.
• Only by fixing the simple bugs early will we be able to uncover
the more complex or obscure bugs that can be identified only
by giving the system a hard workout.

You might also like