Vous êtes sur la page 1sur 16

What are Embedded Systems?

Embedded systems have become an integral part of human lives,


they are designed with a specific function. Characteristics like,
compressed size, low cost, and an overall simple design, makes
them very popular nowadays.

Embedded systems, in today’s society play a vital role in many


devices, such as: home appliances, equipment instrumentation, and
the usages are likely to grow more in the future.

This world is filled with many examples of embedded systems, and


we use them every day, think of the digital watch that you wear,
which monitors the burnt calories, or even at home, think about an
IoT (Internet of Things) intervention, which allows you to control
different aspects whilst you’re not physically available in the
setting, for instance, controlling whether or not your house lights
are switched on from a mobile device.

While indeed these systems can be relatively simple, there is a


growing number of either supplant human decision-making or
capabilities beyond what a human could provide. For instance,
aviation systems, or drones, are able to integrate data from the
sensor and act upon that information much faster than a human can
comprehend.

In a nutshell, an embedded system can be acknowledged as a small


component in a larger framework. As stated above, there is a wide
area of applications that utilise embedded systems, the
functionality and complexity which is required from these systems
are all increasing, and so development becomes ultimately harder.
This, therefore, requires new ways of thinking to enhance the
development processes and the way they are manufactured.

What is Embedded software development?


With the use of software engineering, embedded software
development is the process of handling various types of machines
and devices that are different from the traditional computer.

To develop an embedded software system, this requires the


integration of software engineering with non-computer devices.

Quite a few industries utilise embedded systems within their


organisation, typically industries like aviation, consumer
electronics, manufacturing science, medical science, and
automotive technology.

An embedded system usually requires a wide range of operating


systems, programming tools, and microprocessors. Each system has
to be customised and adjusted to the needs of the hardware that it
has to control and run on.

An embedded system can be recognised as a combination of both


hardware and software, either fixed in capability or programmable.
Usually, these systems will be designed for a specific function(s)
within the larger scope of the system.

Embedded systems can be found in everyday appliances such as


mobile devices, vending machines, medical equipment, agricultural
devices and cameras.
What are the types of embedded systems?
Based on functionality and application area:
• Standalone embedded systems:
• A less complex/simple independent system that
functions alone, it does not require a host
system like a computer.
• i.e. Digital watch, mp3 player, calculator
• Mobile embedded systems:
• The most commonly used embedded system, that
have a wide range of usages as they are used in
portable embedded systems.
• i.e cell phones, wireless camera
• Real-time embedded systems:
• Performs a task in the defined interval. Real
time embedded systems are split into two:
• Soft Real time embedded systems:
• Deadline to complete task may vary.
• i.e Microwave oven
• Hard real time embedded systems:
• Task must have a given deadline.
• i.e. Traffic light controller
• Networked embedded systems:
• These systems are connected to a network (as
the name implies). System forms a
communication with the server or with an
individual node using the network.
• i.e ATM machine, IoT devices, card swipe
machine
Based on performance and architecture:
• Small scale embedded system:
• An entry level 8/16 bit processor system. The
processor has very limited resources like ROM,
RAM, and processing speed.
• i.e. CD Drive, printer, automatic door lock
• Medium scale embedded systems:
• This embedded system consists of 16/32 bit
microprocessors. These are usually faster than
“small scale systems” due to greater number of
bits, that provide a higher speed.
• Sophisticated/Complex embedded systems:
• Sophisticated embedded systems are made to
execute complex functions. The system has both
complex hardware and software.
• i.e. Network router, embedded web server
• Ready made Embedded systems:
• Depending on the task complexity and
requirements, developers can develop systems
using already made boards, this will decrease
development time and increase productivity:
Examples of boards include:

• Beaglebone
• Banana Pi
• Intel Galileo
• Raspberry Pie
• Arduino Board

What are the requirements of an embedded system?


The requirements of embedded systems are different from the
requirements of the traditional computer based system. To develop
and adopt embedded systems, software such as C++, C, ADA, etc,
are used and some systems which have to specialised use operating
systems such as Linux, OSE, Nucleus RTOS, Windows CE, and
ThreadX.

Usually, with application development, there is a consideration to


external factors such as temperature and other environmental
factors which may affect performance, however with embedded
software development this is not the case.

What are the characteristics of an embedded system?


When embedded systems are programmed they are expected to
achieve a certain level of efficiency.

Once an embedded system is produced, it cannot be changed or


upgraded by the users. Therefore they must come with high
stability, reliability and to a certain extent tolerate a few different
conditions.

Below is a detailed list of the characteristics of an embedded


system:

• Single Function:
An embedded system is known to be task-specific, meaning, they
will do the task assigned by the programmer repeatedly across their
lifetime. For instance, a navigation system will function as a
navigation system only, or an mp3 player will function as an mp3
player.
• Tightly constrained:
All computer systems must have design constraints, however those
on an embedded system can be especially tight.

Embedded systems must be designed to fit on a single chip, and


perform fast enough to process that data in real time, furthermore,
they must also be designed in a way to consume the least power
possible to be able to extend battery life.

• Reactive and Realtime:


Not only are embedded systems task-specific, they are also “time-
specific”, which means that they are created to perform their tasks
in a certain time frame. For instance, the flap system of an aircraft
wing, if they are stuck and do not fully extend, this will mean that
an aircraft will have to land at a greater speed due to the decrease
in air resistance, which may cause a rough or emergency landing.

Embedded systems usually have very minimal or even no user


interface. Once the program is set, the appliance for instance will
do as told, like a washing machine.

Depending on the actual system which is designed, an embedded


system is programmed to react to external stimuli, for instance, a
thermometer.

• Microprocessors based:
The system must be a micro-controller or microprocessor-based

• The difference between micro-controller and


microprocessor:
Micro-controller Microprocessor

Micro-controller have a CPU, An integrated circuit which only has a CPU inside,
with a fixed amount of ROM and there is nothing else on the chip, like RAM, ROM
RAM, as well as other objects on etc They must be added externally to allow them to
the chip be functional

Microprocessors deal with unspecific tasks


Perform task-specific tasks applications, such as gaming, websites, document
creation

Lower clock speed Higher clock speed

Operate at a higher energy level due to dealing with


Operate at a lower energy level
complex tasks

Less costly, as certain peripherals More costly, as they need other peripherals, such as
already come with the chip RAM, buffer, I/O ports, ROM to operate and function

User interface:(MUST)
For embedded systems to function, they require a user interface in
order for the user to interact and communicate with the system.

The user interface depends on the application that the embedded


system is being used on. It can be a screen for a mobile phone, or it
can be switches or a sensor.

Basic Structure of an Embedded System:


Sensor:
This sensor converts a physical quantity (which is measured), to an
electrical signal. This then can be read by an electronic instrument
or an observer. The sensor stores this measured quantity to the
memory.
A-D Convertor:
An analog-digital convertor, converting any analog signals sent by
the sensor into a digital signal.

Processor & ASIC’s:


The output is measured by the processor and is stored in the
memory.
D-A Convertor:
Digital-analog convertor converting any digital data which is given
from the processor to analog data.

Actuator:
In this system, the actuator will compare the output provided by
the digital-analog convertor to the actual/expected output stored in
it. Then it stores it as the approved output.

Components of an embedded system


Embedded systems are divided into two types of components:
Hardware components and Software components
Hardware components include:
• Power supply:
• A power supply is an essential part of an
embedded system. The power supply may be
provided from a battery or an adapter.
Depending on the application that the embedded
system is being used in.
• A good power supply means:
• Efficiency, stable & smooth output, transient
response.
• Processor:
• The processor acts as the main brain in an
embedded system. An embedded system can use
a micro-controller or a microprocessor.
• Some of the criteria that is considered when
choosing a processor are:
• Speed, amount of RAM & ROM, operating
voltage, packaging
• Memory:
• There are usually three types of memory
associated with embedded systems: (RAM &
ROM are more common)
• Read-Only memory(ROM):
• This is used to store a program. When the
system is powered on, the system will get the
code it requires to operate from the ROM
memory.
• Random Access Memory(RAM):
• This type of memory is volatile memory and is
used to store data temporarily in storage
• Electrically Erasable Programable Read-Only Memory
(EEPROM):
• This type of memory is unique, it is the least
used from the three. It allows content to be
erased and reprogrammed by using a high volt
pule input. This is used to store the data by the
program itself.
• Timers-Counters:
• For applications which require a delay to
function or to operate, a timer and counter is
used to generate a delay for a specific time
interval without affecting the normal code
execution.
• Communication ports:
• Embedded systems have a number of different
types of communication ports to communicate
with other embedded systems/devices.
• Input and Output:
• To communicate and interact with these
systems, some form of input is required. The
input can be in the form of a user touch screen.
• Application Specific Integrated Circuit (ASIC):
• The circuit consist of a chip that is customised
for a particular use.
Software components include:
• Assembler:
• Assembly language is converted to HEX code
using this utility.
• Emulator:
• Hardware or software which has a similar
functionality to the target system which will be
deployed. It can be considered as a replica of the
target system.
• Debugger:
• Allows programmers to find and solve errors
when the output is trying to be achieved but
fails.
• Compiler:
• Converts programming language into target code
that an interface can understand.
• It converts high level code to low level code like,
machine code, assembly language, or object
code.

Advantages of embedded systems


The advantage of adding embedded systems to the system
environment are the following:

• Small size & specific:


• Embedded systems are specific to carry out
certain and unique functions, rather than a
system which incorporates many functions, this
means their size and custom design will only
have the necessary components for them to
function.
• Reduced cost:
• Considering it is function specific, the user will
be paying for a specific function that they desire,
rather than many functions which are included
anyways, regardless if a user asks for them, this
inevitably means that cost can be reduced.
• Portability:
• As the first point mentioned “size”, this also
encapsulates another attribute which is
advantageous, and that is portability. Portable
systems include mobile phones.
• Low power operation:
• Many applications for example in medicine
require energy saving appliances that can
function for hours without having to plug them
back into a power supply to recharge. This
useful feature allows embedded systems to be
reliable when functioning.
• Real time response:
• Embedded systems are also called real time
systems, where the response to external event
has to be instant. Therefore, they are beneficial
for applications where the response to an
external stimuli is critical. E.g: the deployment
of airbags inside a car after collision for
instance.

What are the limitations of embedded systems?


The limitations of any particular embedded system are the
specifications for which it was designed for. Some of the limitations
are listed below:

• Difficult to upgrade:
• Embedded systems are hard to upgrade, this is
because they are system specific, you may
require to remove and produce/add a new
embedded system instead, designed specifically
for the upgrade being done.
• Nearly not scalable:
• Carrying on from the point above, a system
upgrade could means that if a system becomes
more evolved, or if a working environment
becomes more enhanced, then the embedded
system will not be able to function as efficiently.
• No upgrades available:
• Once the embedded system is configured and
placed into functioning order, it cannot be
changed, moreover this means any enhancement
or any upgrade of any sort can not be executed.
• Difficult maintenance:
• Not only are embedded system difficult to
maintain as they require specific hardware
constantly, it is also known to be difficult to
obtain back-ups of embedded files.
• Limited hardware & troubleshooting difficulty:
• Having a system for specific tasks isn’t all
beneficial of-course, this is because hardware
constantly needs to be purchased, whether it
was old or new, to maintain the function the
system is trying to execute. Furthermore,
troubleshooting and the transfer of data from
one system to another can be problematic.

Summary and Facts


Embedded systems are all around us nowadays, from digital
cameras, printers, wireless headphones, or a microwave oven etc,
they have been amalgamated into every our lives.

Embedded systems are a micro-controller or microprocessor that


are designed to carry out specific, dedicated, single function, time
critical tasks.

The reason we use embedded systems are because:


• Low cost
• customisable
• Easy to upgrade
• Performance
• Battery Operated
• Performance
• Small size
What are the types of embedded systems?
• Based on functionality and application area:
• Standalone embedded systems
• Mobile embedded systems
• Real-time embedded systems
• Soft Real time embedded systems
• Hard real time embedded systems
• Networked embedded systems
• Based on performance and architecture:
• Small scale embedded system
• medium scale embedded systems
• Sophisticated/Complex embedded systems
Basic Structure of an Embedded System
• Sensor
• A-D Convertor
• Processor & ASIC’s
• D-A Convertor
• Actuator
Components of Embedded Systems
Hardware components and Software components
Hardware components include:
• Power supply
• Processor
• Memory
• Read-Only memory (ROM)
• Random Access Memory (RAM)
• Electrically Erasable Programable Read-Only Memory
(EEPROM)
• Timers-Counters
• Communication ports
• Input and Output
• Application Specific Integrated Circuits (ASIC)
Software components include:
• Assembler
• Emulator
• Debugger
• Compiler
Characteristics of an Embedded System:
• Single Function
• Tightly constrained
• Reactive and Realtime
• Microprocessors based
• User interface:(MUST)
Ready made Embedded systems for users to implement on:
Examples of boards include:

• Beaglebone
• Banana Pi
• Intel Galileo
• Raspberry Pie
• Arduino Board
Advantages of embedded systems:
1. Small size & specific
2. Reduced cost
3. Portability
4. Low power operation
5. Real time response
What are the limitation of embedded systems?
1. Difficult to upgrade
2. Nearly not scalable
3. No upgrades available
4. Difficult maintenance
5. Limited hardware & troubleshooting difficulty

Vous aimerez peut-être aussi