Você está na página 1de 37

- By

M. Ashokkumar
(Guest Faculty)
 A system is a way of working, organizing or
doing one or many tasks according to a fixed
plan, program, or set of rules.
 A system is also an arrangement in which all
its units assemble and work together
according to the plan or program.
◦ Consider a watch. It is a time-display system.
◦ Consider a washing machine. It is an automatic
clothes-washing system.
 Definition - "An embedded system is a
system that has embedded software and
computer-hardware, which makes it a system
dedicated for an application(s) or specific part
of an application or product or a part of a
larger system:"
 An embedded system is a system that has
three main components
◦ Hardware.
◦ Main application software.
◦ Real time operating system (RTOS) that supervises
the application software running on hardware and
organizes access to a resource according to the
priorities of tasks in the system
 Constraints
(I) available system-memory
(2) available processor speed
(3) the need to limit power dissipation when running
the system continuously in cycles of 'wait for events',
'run', 'stop', `wake-up' and 'sleep'.
 A processors has two essential units: Program
Flow Control Unit (CU) and Execution Unit
◦ The CU includes a fetch unit for fetching
instructions from the memory.
◦ The EU has circuits that implement the instructions
pertaining to data transfer operations and data
conversion from one form to another. The EU
includes the Arithmetic and Logical Unit (ALU) and
control task, say, halt, interrupt, or jump to another
set of instructions
An embedded system processor chip or core can
be one of the following:
1. General Purpose Processor (GPP):
2. Application Specific Instruction-Set Processor (ASIP).
1. Microcontroller
2. Embedded microcontroller
3. Digital Signal Processor (DSP) and media processor
4. Network processor, 10 processor or domain-specific
programmable processor
3. Single Purpose Processors as additional processors
1. Coprocessor (e.g., as used for graphic processing
2. Accelerator (e.g., Java codes accelerator).
3. Controllers (e.g., for peripherals, direct memory
accesses and buses).
4. GPP or ASIP cores integrated into either an ASIC or
a VLSI circuit or a Field Programmable Gate Array
(FPGA) core integrated with processor units in a VLSI
(ASIC) chip.

5. Application Specific System Processor (ASSP).

6. Multicore processors or multiprocessor

 For a system designer, the following are
important considerations when selecting a
1. Instruction set
2. Maximum bits in an operand (8 or 16 or 32) in a
single arithmetic or logical operation
3. Clock frequency in MHz and processing speed in
Million Instructions Per Second (MIPS)
4. Processor ability to solve complex algorithms
while meeting deadlines for their processing
 A microprocessor or GPP is used because:
(i) processing based on the instructions available in
a predefined general purpose instruction set
(ii) GPP can be used for a new system by just
changing the embedded software in the ROM.
(iii) Ready availability of a compiler and debugger
through Integrated Development Environment
(iv) Ready availability of well-tested and debugged
processor-specific APIs.
 A microprocessor is a single VLSI chip that
has a CPU and may also have some other
units (e.g., caches, floating point processing
arithmetic unit, pipelining and superscaling
units) that are additionally present and that
result in faster processing of instructions.

 High performance processors have pipeline

and superscalar architecture, fast ALUs and
Floating Point Processing Units (FLPUs).
 A pipeline architecture means that the
instructions have between 3 and 9 stages.
Different instructions are at different stages
of the pipeline at any given instance.
 A superscalar architecture refers to two or
more sets of instructions executing in parallel
 A microcontroller is an integrated chip that
has processor, memory and several other
hardware units in it; these form the
microcomputer part of the embedded system.
 Single purpose processors used in embedded
systems include:
1. Coprocessor
2. Graphics processor
3. Pixel coprocessor
4. Encryption engine
5. Decryption engine
6. A discrete cosine transformation (DCT) and
inverse transformation (DCIT) processor
7. Protocol stack processor
8. Network processor
9. Network processor
10.Accelerator (for example, Java codes accelerator)
11.CODEC (Coder and Decoder)
14.Controller (e.g., for peripheral, direct memory
access or bus).
Single purpose processors are used for specific
applications or computations or as controllers for
peripherals, direct memory accesses and buses.
1. Power Source

Embedded system operate in one of the following four

power ranges: 5.0 V ± 0.25 V, 3.3 V ± 0.3 V, 2.0 V ± 0.2 V
and 1.5 V ± 0.2 V.

Low voltage operations

I. In portable or hand-held devices such as a cellular
phone [when compared to 5V, a CMOS 2V circuit
power dissipation reduces by one-sixth, — (2 V/5 V)2.
II. In a system with smaller overall geometry, low voltage
system processors and 10 circuits generate lesser heat
and thus can be packed into a smaller space.
2. Clock Oscillator Circuit and Clocking Units

The clock controls the time for executing an

instruction. After the power supply, the clock is the
basic unit of system.

A processor needs a clock oscillator circuit. The

clock controls the various clocking requirements of
the CPU, of the system timers and the CPU machine
3. System Timers and Real-time Clocks
A timer circuit is configured as the system-clock,
which ticks and generates system interrupts
A timer circuit is suitably configured as the real-
time clock (RTC) that generates system interrupts
periodically for the schedulers, real-time programs
and for periodic saving of time and date in the
 To schedule the various tasks and for real-time
programming, an RTC or system clock is needed.
4. Reset Circuit, Power-up Reset and Watchdog-
Timer Reset
Reset means that the processor begins the
processing of instructions from a starting address.
A program that is reset and runs on a power-up
can be one of the following:
(i) A system program that executes from the
(ii) A system boot-up program.
(iii) A system initialization program.
The watchdog timer reset is a required feature in
control applications.
5. Memory
5. Memory (contd…)
1. Internal RAM of 256 or 512 bytes in a microcontroller for
registers, temporary data and stack.
2. Internal ROM/PROM/ E2PROM for about 4 kB to 64 kB of
program (in the case of microcontrollers).
3. External RAM for the temporary data and stack (in most
systems) or internal caches
4. Internal flash (in many systems the results of processing
can be saved in nonvolatile memory: for example, system
status periodically and images, songs, or speeches after
suitable format compression).
5. Memory stick (or card)
6. External ROM or PROM for embedding software (in almost
all systems other than microcontrollerbased systems).
7. RAM memory buffers at ports.
8. Caches (in pipelined and superscalar microprocessors).
6. Input, Output and IO Ports, IO Buses and IO

 A system gets inputs from the touch screen, keys in a

keypad or keyboard, sensors and transducer circuits.

 A controller circuit in a system gets inputs from the

sensor and transducer circuits.

 A receiver of signals or a network card gets the input

from a communication system.

 Ports receives inputs from a network or peripheral.

6. Input, Output and IO Ports, IO Buses
and IO Interfaces ( contd…)

◦ A processor identifies each input port by its
memory buffer addresses, called port addresses.
Just as a memory location holding a byte or word is
identified by an address, each input port is also
identified by the address. The system gets the
inputs by the read operations at the port addresses.
6. Input, Output and IO Ports, IO Buses
and IO Interfaces (contd…)

◦ Each output port is identified by its memory-buffer
addresses (called port addresses). The system
sends the output by a write operation to the port
6. Input, Output and IO Ports, IO Buses
and IO Interfaces ( contd…)

 Ports can have serial or parallel communication

with the system address and data buses.
 In serial communication a one-bit data line is
used and bits are sent serially in successive time
 Universal Asynchronous Receiver and Transmitter
(UART) is a popular communication protocol for
serial communication.
6. Input, Output and IO Ports, IO Buses
and IO Interfaces (contd…)

◦ A system port may have to send output to

multiple channels.
◦ A demultiplexer or multiplexer circuit is
then used.
6. Input, Output and IO Ports, IO Buses and IO
Interfaces (contd…)

 A bus consists of a common set of lines to connect
multiple devices, hardware units and systems for
communication between any two of these at any given

 A bus communication protocol specifies how signals

communicate on the bus.

 A bus may be a serial or parallel bus that transfers one or

multiple data hits at an instance
6. Input, Output and IO Ports, IO Buses and IO
Interfaces (contd…)

The Bus protocol must specifies the following:

(i) ways of arbitration when several devices need to

communicate through the bus; ( arbitration – negotiations)

(ii) ways of polling bus requirement from each device at

an instance;

(iii) ways of daisy chaining the devices so that bus is

granted to a device according to the device-priority in the
6. Input, Output and IO Ports, IO Buses and
IO Interfaces (contd…)

BUS (contd…)
◦ For networking the distributed units or systems,
there are different types of serial and parallel bus
protocols: I2C, CAN, USB, ISA, EISA and PCI.

◦ For wireless networking of systems there are

802.11, IrDA, Bluetooth and ZigBee protocols.
7. DAC Using a PWM and an ADC

DAC is a circuit that converts digital 8 or

10 or 12 bits to the analog output.

The analog output is with respect to the

reference voltage.

When all input bits are equal to I. then the

analog output is the difference between
the positive and negative reference pin
7. DAC Using a PWM and an ADC

 A pulse width modulator (PWM) with an

integrator circuit is used for the DAC.

 PWM inputs are from 00000000 to

11111111 for an 8-bit DAC operation.

 Analog output V = K * pw.

where K is constant and pw is the pulse
7. DAC Using a PWM and an ADC

 Suppose a circuit (external to the

microcontroller) gives an output of 1.024 V
when the pulse width is 50% of the total
pulse time period. and 2.047 V when the
width is 100%. When the width is made 25%.
by reducing by half the value in the PWM
output control-register. the integrator
output will become 0.512 V. The constant K
depends on integrator amplifier gain.
7. DAC Using a PWM and an ADC

Analog to-Digital Converter

 ADC is a circuit that converts the analog
input to digital 4, 8, 10 or 12 bits. The analog
input is applied between the positive and
negative pins and is converted with respect to
the reference voltage.
 The ADC in the system microcontroller can
be used in many applications such as data
acquisition systems (DAS), digital cameras,
analog control systems and voice digitizing,
8. LCD, LED and Touchscreen Displays

9. Pulse Dialer, Modem and


8. Keyboards

9. Interrupt Handler