You are on page 1of 14

Embedded Systems Tutorial: What is,

History & Characteristics


What is a System?
A system is an arrangement where all its component work according to the
specific defined rules. It is a method of organizing, working, or performing one
or more tasks according to a fixed plan.

What is an Embedded System?


Embedded System is a combination of computer software and hardware
which is either fixed in capability or programmable. An embedded system can
be either an independent system, or it can be a part of a large system. It is
mostly designed for a specific function or functions within a larger system. For
example, a fire alarm is a common example of an embedded system which
can sense only smoke.
In this Embedded Systems tutorial, you will learn:

 Example of Embedded Systems


 History of Embedded system
 Characteristics of an Embedded System
 Important terminologies used in embedded system
 What is Microcontroller?
 What is a Microprocessor?
 Architecture of the Embedded System
 Types of Embedded System
 Difference between Microprocessor and Microcontroller
 Applications of Embedded Systems
 Advantages of Embedded System
 Disadvantages of Embedded System
 Top Embedded Systems Interview Questions and Answers

Example of Embedded Systems


Laser Printer
Laser Printers are one of the examples of Embedded Systems which uses
embedded systems to manage various aspect of the printing. Apart from
performing the main task of printing, it has to take user inputs, manage
communication with the computer system, to handle faults, and sense papers
left on the tray, etc.

Here, the main task of the microprocessor is to understand the text and
control the printing head in such a way that it discharges ink where it is
needed.

To perform this, it needs to decode the different files given to it and


understand the font and graphics. It will consume substantial CPU time to
process the data as well as it has to take user inputs, control motors, etc.

History of Embedded system


Here, are important milestones from the history of embedded system:

 In 1960, embdded system was first used for developing Apollo


Guidance System by Charles Stark Draper at MIT.
 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 embedded CE 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 of an Embedded System


Characteristics of an Embedded System

Following are important characteristics of an embedded system:

 Requires real time performance


 It should have high availability and reliability.
 Developed around a real-time operating system
 Usually, have easy and a diskless operation, ROM boot
 Designed for one specific task
 It must be connected with peripherals to connect input and output
devices.
 Offers high reliability and stability
 Needed minimal user interface
 Limited memory, low cost, fewer power consumptions
 It does not need any secondary memory in computer.

Important terminologies used in embedded


system
Now in this Embedded Systems tutorial, we will cover some important terms
used in embedded system.

Reliability:
This measure of the survival probability of the system when the function is
critical during the run time.

Fault-Tolerance:
Fault-Tolerance is the capability of a computer system to survive in the
presence of faults.

Real-Time:
Embedded system must meet various timing and other constraints. They are
imposed on it by the real-time natural behavior of the external world.

For example, an airforce department which keeps track of incoming missile


attacks must precisely calculate and plan their counter-attack due to hard real-
time deadline. Otherwise, it’ll get destroyed.

Flexibility:
It’s building systems with built-in debugging opportunities which allows remote
maintenance.

For example, you are building a spacecraft which will land on another planter
to collect various types of data and send collected detail back to us. If this
spacecraft went insane and lost the control, we should be able to make some
important diagnostic. So, flexibility is vital while designing an embedded
system.

Portability:
Portability is a measure of the ease of using the same embedded software in
various environments. It requires generalized abstractions between the
application program logic itself and the low-level system interfaces.

What is Microcontroller?
A microcontroller is a single-chip VLSI unit which is also called
microcomputer. It contains all the memory and I/O interfaces needed,
whereas a general-purpose microprocessor needs additional chips to offered
by these necessary functions. Microcontrollers are widely used in embedded
systems for real-time control applications.
What is a Microprocessor?
A microprocessor is a single chip semiconductor device. Its CPU contains a
program counter, an ALU a stack pointer, working register, a clock timing
circuit. It also includes ROM and RAM, memory decoder, and many serial and
parallel ports.

Architecture of the Embedded System


Below is basic architecture of the Embedded System:

Architecture of the Embedded System

1) Sensor:
Sensor helps you to measures the physical quantity and converts it to an
electrical signal. It also stores the measured quantity to the memory. This
signal can be ready by an observer or by any electronic instrument such as
A2D converter.

2) A-D Converter:
A-D converter (analog-to-digital converter) allows you to convert an analog
signal sent by the sensor into a digital signal.

3) Memory:
Memory is used to store information. Embedded System majorly contains two
memory cells 1) Volatile 2) Non volatile memory.

4) Processor & ASICs:


This component processes the data to measure the output and store it to the
memory.

5) D-A Converter:
D-A converter (A digital-to-analog converter) helps you to convert the digital
data fed by the processor to analog data.

6) Actuator:
An actuator allows you to compare the output given by the D-A converter to
the actual output stored in it and stores the approved output in the memory.

Types of Embedded System


Three types of Embedded Systems are:

 Small Scale
 Medium Scale
 Sophisticated

Types of Embedded System

Small Scale Embedded Systems:


This embedded system can be designed with a single 8 or 16-bit
microcontroller. It can be operated with the help of a battery. For developing
small scale embedded system, an editor, assembler, (IDE), and cross
assembler are the most vital programming tools.
Medium Scale Embedded Systems:
These types of embedded systems are designed using 16 or 32-bit
microcontrollers. These systems offer both hardware and software
complexities. C, C++, Java, and source code engineering tool, etc. are used
to develop this kind of embedded system.

Sophisticated Embedded Systems


This type of embedded systems have lots of hardware and software
complexities. You may require IPS, ASIPS, PLAs, configuration processor, or
scalable processors. For the development of this system, you need hardware
and software co-design & components which needs to combine in the final
system.

Difference between Microprocessor and


Microcontroller
Learn the difference between Microprocessor and Microcontroller

Microprocessor Microcontroller
It uses functional blocks like register, ALU, timing, and It uses functional blocks of microprocessors like RAM
control units. I/O, ADC, and DAC.
In Microprocessor, bit handling instruction is less, One
Microcontroller offers many kinds of bit handling instr
or two types only.
Offers rapid movements of code and data between
Offers rapid movements of code and data in the microc
external memory and microprocessor.
Helps you to design general purpose digital computers
Helps you to design application-specific dedicated syst
system.
It allows you to do multitasking at a time. It is a single task oriented system.
In Microprocessor system, you can decide the number of In Microcontroller system, the fixed number for memo
memory or I/O ports needed. microcontroller ideal to complete the specific task.
Offers support for external memory and I/O ports, which This type of system is lightweight and cheaper compar
makes it heavier and costlier system. microprocessor.
External devices need more space, and their power This type of system consumes less amount of space, an
consumption is quite higher. consumption is also very low.

Applications of Embedded Systems


Following are the important applications of Embedded system:

Robotic science
 Ground Vehicles
 Drones
 Underwater Vehicles
 Industrial Robots

Medical

 Dialysis Machine
 Infusion Pumps
 Cardiac Monitor
 Prosthetic Device

Automotive

 Engine Control
 Ignition System
 Brake System

Networking

 Router
 Hubs
 Gateways
 Electronics Instruments

Home Devices

 TVs
 Digital Alarm
 Air Conditioner
 DVD Video Player
 Cameras

Automobiles

 Fuel Injection
 Lighting System
 Door Locks
 Air Bags
 Windows
 Parking Assistant System
 Anti-stealing Alarms Whippers Motion
Industrial Control

 Robotics
 Control System
 Missiles
 Nuclear Reactors
 Space Stations
 Shuttles

Advantages of Embedded System


Here, are Pros/benefits of using Embedded System:

 It is able to cover a wide variety of environments


 Less likely to encore errors
 Embedded System simplified hardware which, which reduces costs
overall.
 Offers an enhanced performance
 The embedded system is useful for mass production.
 The embedded system is highly reliable.
 It has very few interconnections.
 The embedded system is small in size.
 It has a fast operation.
 Offers improved product quality.
 It optimizes the use of system resources.
 It has a low power operation.

Disadvantages of Embedded System


Here, are important cons/ drawbacks of using Embedded system.

 To develop an embedded system needs high development effort.


 It needs a long time to market.
 Embedded systems do a very specific task, so it can’t be programmed
to do different things.
 Embedded systems offer very limited resources for memory.
 It doesn’t offer any technological improvement.
 It is difficult to backup of embedded files.

Summary
 A system is an arrangement where all its component assembles work
according to the specific define rules.
 Embedded System definition : Embedded systems meaning a
combination of computer software and hardware which is either fixed in
capability or programmable.
 Example of embedded systems is laser printer which manage various
aspect of the printing.
 In 1960, embdded system was first used for developing Apollo
Guidance System by Charles Stark Draper at MIT.
 Embedded system requires real time performance
 Reliability measure of the survival probability of the system when the
function is critical during the run time.
 Fault-Tolerance is the capability of a computer system to survive in the
presence of faults.
 Embedded system must meet various timing and other constraints.
 Flexibility is building systems with built-in debugging opportunities which
allows remote maintenance.
 Portability is a measure of the ease of using the same embedded
software in various environments.
 A microcontroller is a single-chip VLSI unit which is also called
microcomputer.
 A microprocessor is a single chip semiconductor device. Its CPU
contains a program counter, an ALU a stack pointer, working register, a
clock timing circuit.
 Architecture of the Embedded System includes: Sensor, A-D Converter,
Memory, Processor & ASICs, D-A Converter, and Actuator.
 Three types of Embedded Systems are: 1) Small Scale, 2) Medium
Scale, and 3) Sophisticated.
 Major difference between In Microprocessor and Microcontroller is that
In Microprocessor, bit handling instruction is less while Microcontroller
offers many kinds of bit handling instruction.
 Application of Embedded System includes: 1) Robotic science, 2)
Medical, 3) Automotive, 3) Networking, 4)Home Devices, 5)
Automobiles, and 6) Industrial Control.
 Major advantages of Embedded System is that It is able to cover a wide
variety of environments.
 The major drawback of Embedded System is that it needs a long time to
market.
Embedded Systems
Embedded systems are a cornerstone of the electronics industry today.
An embedded system is a computer or processor based system that has been designed for a specific purpose.
The system gains its name from the fact that the software is embedded into it for a particular application. The
embedded system is not like a PC or other computer that can run a variety of programmes and fulfil a whole
host of tasks.
The item using an embedded system is designed for a specific task and has its software preloaded, although
updates may be undertaken from time to time.

Embedded systems basics


It may be asked what is an embedded system. With many processor based systems and computers it is useful to
define what an embedded system is. A convenient definition for an embedded system is: An embedded system
is any computer system contained within a product that is not described as a computer.
Using this embedded system definition it is possible to understand the various basic characteristics one.
Typically they are:

 Embedded systems are designed for a specific task. Although they use computer techniques, they cannot
be used as a general purpose computer using a variety of different programmes for different task. In this
way their function can be focussed onto what they need to do, and they can accordingly be made cheaper
and more efficiently.
 The software for embedded systems is normally referred to as firmware. Rather than being stored on a
disc, where many programmes can be stored, the single programme for an embedded system is normally
stored on chip and it is referred to as firmware.
Embedded systems contain two main elements:

 Embedded system hardware: As with any electronic system, an embedded system requires a hardware
platform on which to run. The hardware will be based around a microprocessor or microcontroller. The
embedded system hardware will also contain other elements including memory, input output (I/O)
interfaces as well as the user interface, and the display.
 Embedded system software: The embedded system software is written to perform a particular function.
It is typically written in a high level format and then compiled down to provide code that can be lodged
within a non-volatile memory within the hardware.

Embedded systems hardware


When using an embedded system there is a choice between the use of a microcontroller or a microprocessor.

 Microcontroller based systems: A microcontroller is essentially a CPU, central processor unit, or


processor with integrated memory or peripheral devices. As fewer external components are needed,
embedded system using microcontrollers tend to be more widely used
 Microprocessor based systems: Microprocessors contain a CPU but use external chips for memory and
peripheral interfaces. As they require more devices on the board, but they allow more expansion and
selection of exact peripherals, etc, this approach tends to be used for the larger embedded systems.
Whatever type of processor is used in the embedded system, it may be a very general purpose type of one of
the many highly specialised processors intended for a particular application. In some cases custom designed
chips may be viable for a particular application if quantities are sufficiently high. One common example of a
standard class of dedicated processor is the digital signal processor, DSP. This type of processor is used for
processing audio and image files in particular. Processing is required very quickly as they may be used in
applications such as mobile phones and the like.

Embedded systems software


One of the key elements of any embedded system is the software that is used to run the microcontroller.
There is a variety of ways that this can be written:

 Machine code: Machine code is the most basic code that is used for the processor unit. The code is
normally in hex code and provides the basic instructions for each operation of the processor. This form of
code is rarely used for embedded systems these days.
 Programming language: Writing machine code is very laborious and time consuming. It is difficult to
understand and debug. To overcome this, high level programming languages are often used. Languages
including C, C++, etc are commonly used.

Embedded systems design tools


Many embedded systems are complicated and require large levels of software for them to operate.
Developing this software can be timing consuming, and it has to be very accurate for the embedded system to
operate correctly. Coding in embedded systems is one of the main areas where faults occur.
To help simplify the process, software development tools are normally used. These help the software developer
to programme more quickly, and also more accurately..
Typically the software is written in a high level and then compiled down into a form that is contained within
the non-volatile memory of the system. This is normally referred to as the firmware.
Microprocessors and microcontrollers can generically be termed forms of microcomputer.
The microcomputer is essentially the engine behind any form of embedded system or even larger stand-alone
computers.

Embedded processor definition


The embedded processor can be defined as a small, relatively inexpensive computing unit with a
microprocessor or microcontroller as its central processing unit. It also includes memory, and input/output
(I/O) facilities.

Embedded processor basics


Whatever the form of computer, the basic processing engine is essentially the same. It consists of a number of
elements, each performing different functions to enable the overall microcomputer to operate.

Basic embedded processor unit block diagram


The main elements within a computer or embedded processing engine include:

 Processor / CPU: The processor or more correctly the central processing unit is the circuit block where
the logical processing is undertaken. It allows addition subtraction and other functions to be undertaken.
 Read only memory, ROM: The ROM is typically used for the storage of a programme. In larger
computers it is used for the storage of the boot programme, but in embedded processors and computing
systems it is sued for the storage of all the programme. Unlike RAM, a ROM is a permanent form of
storage that does not lose its content when the power is removed. Some forms of ROM are re-
programmable and the programme data can be updated when the correct conditions are set. This form of
ROM is called a programmable read only memory or PROM.
 Random access memory, RAM: The RAM elements of the embedded processor are used for temporary
storage of programme data or instructions. The data can be written to the RAM at any time, and an
important feature of the processor RAM is that it loses its date when the power is removed. RAM comes
in two forms - static and dynamic.

o Dynamic RAM: Dynamic RAM is used within a processor of any form, and also an embedded
processor. It is the primary form of RAM used and is used to store the majority of the data. It is
more dense than static RAM, but is slower than static RAM.
o Static RAM: This form of RAM is used with some processors, especially within computers for
cache memory - memory that is used for frequently access data. It is faster than dynamic RAM
but less dense.
 Interface: The interface or I/O which stands for Input / Output is the way in which the overall computer
interacts with the outside world.
 Data bus: The data bus is the data bus, consisting of several lines that is used to pass data long. The
data bus is typically used to send complete bytes of data at a time, i.e. bit parallel and byte serial. As such
systems require the number of lines equal to the number of bytes in each byte. Thus typically data bus
widths may be 4, 8, 16, 32 64 bits wide dependent upon the system.
The processor hardware for the embedded system can take many physical forms. It may be a small
microcontroller based system set up for a specific task where only a small amount or processing is required, or
it may be a larger microprocessor based system capable of undertaking much more exacting tasks. Whatever
the requirements, the embedded processor will have the same basic structure and the same basic circuit blocks.

CPU is the heart of any computer or embedded system. It is


where the actual processing occurs within the computer system .

You might also like