Nothing Special   »   [go: up one dir, main page]

0% found this document useful (0 votes)
54 views8 pages

Embedded Systems PDF

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 8

Embedded systems

Embedded Systems
CONTENTS
1. Objective

2. Embedded systems
Definition of embedded systems
Characteristics of embedded systems
3. Embedded systems requirements
Functional requirements
Hardware requirements
Software requirements
4. Evolution of embedded systems
Electronic control systems
Microprocessor-based systems
Microcontroller-based systems
Complete systems on a chip (SOC)
FPGA-based systems
5. Bibliography
Sistemas empotrados | 3

Objective Embedded systems are characterized by the fact that


they are dedicated operating systems, completely
The objective of this topic is to define the concept of autonomous (24/7) and no user intervention is required.
embedded systems, as well as their main characteristics. Looking further into the details, the main characteristics
On the other hand, the main requirements of this type of of most embedded systems can be listed as follows:
systems will be discussed, as well as their evolution, from
• Control system: most embedded systems perform
the initial electronic systems through microprocessors
a control function of the physical system they are
and microcontrollers, and finishing with complete
serving. Control systems can be defined as those
systems on a chip and FPGAs.
that allow the environment (physical system) to be
modified to suit the needs required in the design
Embedded systems (Figure 1).
This functionality is implemented through what is
Embedded systems, or also known as integrated called a control loop, as shown in Figure 1. In this
systems, are computer systems dedicated to provide control loop, the embedded system periodically
service exclusively to a given physical system [1]. performs the following actions:
This definition is contrary to the generally accepted - Collect the current state of the environment by
concept of a computer, also known as a general purpose using appropriate hardware sensors.
computer, where the function of such a computer is to - Decide whether the current state of the system
support multiple systems and users in a general way, is the desired one and, if not, what should be the
dynamically changing its function as required. action to be taken to correct this.
This is not the case for embedded computing systems, - Modify the environment according to the decision
which must be designed from the outset to perform a made with the help of suitable hardware drives to
single function related to the external system it serves perform the desired action.
• Real-time system: In many cases, embedded
Definition of embedded systems systems must consider not only that they fulfill the
required functionality, but also that they perform it
In general terms, embedded systems can be defined as a within a predefined time frame. This is especially
complete computer system (HW + SW) designed entirely important in those that perform control tasks,
for a single function, which is to support a physical where the periodicity of the control loop must be
system in which it is integrated as part of it. adequate and respected. Otherwise, an action
performed after the deadline may be useless or
This definition clarifies a couple of key points in the
have the opposite effect (e.g. braking a vehicle after
nature of an embedded system:
hitting an obstacle). Meeting these deadlines thus
• Complete computer system (HW + SW): the becomes new requirements to be complied with by
embedded system is always treated as an integrated the embedded system.
whole. Both hardware and software are viewed as a • Dedicated systems: it is part of the embedded
single unit. systems for a useful life, where they must only
• Designed entirely for a single function: all perform a single mission: to serve the system in
components of an embedded system (hardware which they are integrated. Therefore, it is necessary
devices, system software, application) are chosen to choose the resources available (both HW and SW)
and/or designed for the sole purpose of serving the strictly for the fulfillment of this task. If insufficient
physical system in question. resources (both HW and SW) are available, it will not
be able to perform its function. However, it is also
• Integrated with the system it supports: the
inappropriate to have too many resources available.
embedded system is treated in all respects as a
Too many hardware resources will unnecessarily
component of the physical system it serves, into
increase production costs. Likewise, too many
which it is physically incorporated as an additional
software resources will complicate the design
part.
process and, in particular, hinder the fulfillment of
• the time requirements you may need.

Characteristics of embedded
systems Embedded systems
requirements
The requirements that most embedded systems must
meet can be summarized in three categories, namely:
Sistemas empotrados | 4

Controller
FIC 001

Process Signal - “Flow rate”


Remote Value
SP (PV)

Set Point
Local (SP)
manual inputs
SP
Controller output Signal - “Valve position”
(CO)
FCV 001 FTX
Flow control valve 001
(FCE)

Process fluid flow (manipulated variable - MV)


Figure 1.. Example of a control loop.

Functional requirements • Physical size requirements: the embedded system


must meet physical size constraints in most cases.
At the functional level, it is necessary to consider all This is because it is considered an integral part of
the requirements derived from their own nature as the final system and, as such, must be able to fit
part of another system to which they provide services, into the space reserved for that system.
generally control services, and which they must perform
• Energy expenditure requirements: In many cases,
uninterruptedly 24/7. These requirements can be listed
embedded systems are part of mobile systems or
as follows:
systems that do not have a stable and continuous
• Reliability requirements: Embedded systems, for source of energy nearby. For this reason, such
the most part, are intended for 24/7 uninterrupted embedded systems must rely on the use of battery
use without human intervention. This nature power or generators with limited power. Thus,
forces them to comply with important reliability limited energy expenditure is not only desirable but
requirements, both in terms of eliminating defects required for proper operation.
during the design and manufacturing process and Computing capacity requirements: Embedded systems
overcoming possible failures during their lifetime are systems dedicated to a single mission. This may
autonomously using fault tolerance techniques. require more or less computing power. When deciding
Temporal requirements: many embedded systems, the available hardware resources it is usually advisable
especially those that perform control tasks, must to adjust them as much as possible to the real needs
comply with a series of temporal requirements of the system. Excessive computational resources will
when performing their tasks. These requirements lead to higher system production costs. This may be
are usually defined as complying with a certain indifferent in critical or one-time development systems,
periodicity in achieving the tasks to be performed but it becomes a crucial point if mass production is
repetitively. Failure to comply with this periodicity intended to increase profits. This forces you to choose
can lead to undesired effects even if the action from a wide range of hardware components in order to
performed is the correct one, simply because it was select those that best suit the needs of the system.
performed too late (Example: putting out the fire in
the kitchen when the water has already evaporated).

Hardware requirements
• At the hardware level, all the requirements that
the embedded computer system must meet at
the physical level must be considered. These
requirements derive mainly from the need to
integrate the embedded system as a component
of the physical system, which must also operate
without any interruption 24/7. These requirements
can be listed as follows:
Sistemas empotrados | 5

Electronic control systems


Software requirements In the beginning, electronic-based embedded systems
At the software level, we must consider all the limitations were not based on what are known as computer systems.
that derive from the available hardware resources. Instead, they were based on electronic systems, usually
Likewise, the possible time requirements to be met by the analog, that allowed basic control of other systems. An
system must be known. The software of an embedded example of this would be the use of a resistor-capacitor
system is usually referred to as firmware and normally circuit to implement a programmable timer (by varying
includes a single application and supporting system the resistance with a potentiometer).
software (which may consist of an operating system,
a runtime environment or both). Thus, referring to the
supporting system software, the software requirements Microprocessor-based systems
can be listed as follows: Until the emergence of fully developed computer
processors on a single chip (microprocessors),
• Portability requirements: In general, software
computing systems did not make their stellar appearance
developed for an embedded system must be able
in the field of embedded systems. Previously, there were
to be easily ported to multiple architectures. This is
a few isolated examples of computer systems doing
necessary to make it easier to adapt the hardware
embedded systems work (e.g., control of spacecraft in the
to the system requirements. In the case of support
lunar program). However, it was not until miniaturization,
system software it is especially critical, since
which led to the appearance of microprocessors, that
that same software must be suitable for multiple
embedded systems began to appear in mass quantities.
embedded systems.
Thanks to them, it was possible to construct a complete
• Modularity requirements: the supporting system computing system (central processing unit, memory and
software must be able to meet the requirements of I/O devices) on a single electronic board.
multiple embedded systems. This includes limiting
overheads due to software. This makes it easier Some of the most famous microprocessor models are
to reduce costs by limiting the hardware capacity the following:
of the system, which also makes it easier to meet
time requirements. However, it is also necessary for • x86 family: the processors of the x86 family have
this system software to have the ability to support been developed by Intel, which was the developer
multiple and varied I/O devices. The way to meet of the first microprocessor in history (named 4004)
these two opposing requirements is to allow easy and the first commercial microprocessor (named
configuration of the system software through 8080). This family of microprocessors is the one
a modular design that allows only those parts that was used as the basis for the development of
necessary for proper operation to be included in the personal computers (PC) and is the best known at
final system. the present time.
• Modifiability requirement: the software must be • Motorola 68k family: this family of microprocessors
easily modifiable to suit the specific requirements of was very famous in previous years, as it was the
the embedded system. This is especially important basis of Apple's first personal computers. As well as
for supporting system software. The designer must several other models of computers and consoles.
be able to include new sections of code to realize It has also had an important use in embedded
functionalities not initially contemplated. For this systems.
reason, it is highly recommended to have the source • PowerPC family: PowerPC microprocessors were
code of such system software available. a collaborative development between Motorola,
Apple and IBM in the 1990s. Its use was varied in
Evolution of embedded various computer systems and embedded systems.
• SPARC family: microprocessors initially developed
systems for SUN computers. It was one of the first examples
of standard architecture for microprocessor
The evolution of embedded systems has gone hand in
development and one of the first based on RISC
hand with the evolution of general purpose computing
(reduced instruction set computer) architecture.
systems. However, the history of embedded systems
has its own milestones and development factors. To
show a complete picture, the topic will be focused on the
different stages of the evolution of embedded systems
[2].
Sistemas empotrados | 6

• MIPS family: a family of RISC microprocessors boards, etc.


widely used in education, but also in many
embedded systems. Microcontroller-based systems
• ARM family: acronym for "Advanced RISC Thanks to the use of microprocessors, it is possible to
machines". Developed by the British company ARM reduce the size of embedded systems to that of a simple
ltd. It is the processor of choice for a wide range of electronic board. However, the next step is to reduce the
mobile devices (phones, tablets, etc.). It is currently size of these systems even further. To do this, instead of
one of the most widespread microprocessor designing a single chip for the process control unit (CPU),
families. an entire computing system (including CPU, memory and
• RISC-V family: is an open standard for I/O) is included on a single chip
microprocessor development. It is based on RISC
architecture and its most important feature is that Microcontrollers allow embedded system integration
it does not necessarily require a license to develop to reach a new level. With the entire embedded system
it. It is one of the most promising options in the occupying the space of a single microchip, it is possible to
current panorama. include the embedded system on the board of the physical
system it is intended to serve. Elements not included in
the microcontroller may be included in the computational
Standard base plates system, but this does not usually require the use of a
dedicated electronics board for the embedded system.
Initially, microprocessor-based embedded systems
were developed using motherboards designed ad-hoc Translated with www.DeepL.com/Translator (free
for the particular system (as was the case with general version).
purpose systems). However, over time, motherboards
developed generically for particular microprocessor In general, microcontrollers have a wide range of
families appeared. Examples of this include: computational capabilities. However, they are much

• ATX boards: is the standard used for personal


computers (PC) and microprocessors of the x86
family and compatible. It includes a series of formats
with different sizes (Standard-ATX, Micro-ATX, Mini-
ITX, Nano-ITX, Pico-ITX) being the smallest sizes
oriented to the development of embedded systems.
• PC-104 boards: is a motherboard standard used for
x86 family microprocessors, as shown in Figure 2,
which allows software compatibility with personal
computers (PCs). They are specifically designed for
embedded systems.
• ARM development kits: there is no major standard
without a series of commercial motherboards
based on ARM microprocessors. These
developments are very popular nowadays due to
their power and low cost in developing a multitude
of embedded systems. Some examples of these
Figure 2. Example of a PC-104 motherboard. Taken from: Vocaro (s.f.)
ARM development kits would be the following:
(https://commons.wikimedia.org/w/index.php?curid=1843860)
Beagleboard boards. Raspberry PI boards, ODROID

more prominent in the low-capacity computation range


than in the high-capacity range. This is due to the
cost savings they lead to and to the fact that systems
requiring a low level of resources are sufficiently served
by the microcontroller itself.

Typical components of a microcontroller are the


following:

• Central processing unit (CPU): the microprocessors


Sistemas empotrados | 7

used usually include all types of processors in any • High-end computational resources: the
power range. Thus, 8-bit, 16-bit, 32-bit processors computational resources of these systems are
can be used. Processors with different instruction comparable to most general-purpose computing
sets (CISC RISC, VLIW, etc.) or even different base systems.
architectures (Von Neuman: single memory for • Used as the basis for a high-end system: although
instructions and data; Harvard: separate memory all the resources included in a SOC are high-end,
for instructions and data). they are not usually used independently. Instead,
• Memory: The memory (both main and secondary) they are often used as the basis for an embedded
used in microcontrollers is almost entirely system developed on an electronic plaza, where a
electronic. In this sense, the main memory is usually multitude of other devices are included to comprise
implemented using three types of memory: the final embedded system.
- Volatile memory (RAM): this memory is used • Used for general purpose computing systems:
as data memory in a Harvard architecture or many systems nowadays that can be considered
as the entire main memory in a Von Neuman general purpose (Smartphone, Tablet, laptops, etc.)
architecture. are based on a complete system on a chip.
- Non-volatile memory (EPROM): this memory is •
used as code memory in a Harvard architecture or •
as BIOS memory in a Von Neuman architecture.
- Flash memory: this memory is used as secondary FPGA-based systems
storage (files and directories) to replace magnetic
disks. One of the most promising trends in the development of
• Input/Output: The input and output devices of embedded systems is FPGA-based systems. An FPGA
a microcontroller are usually restricted to those (also known as a programmable logic gate array) is an
communication devices that allow communication electronic chip composed of a multitude of electronic
with the physical system or with other computing components of different capacities (from a single logic gate
devices, as follows: to a complete processor) connected together following
- Serial communication devices: corresponds to one, or several, logic schemes (bus, array, switch, etc.),
different means of serial communication (based and where the logic gates connecting each element to the
on buses or switches) that allow communication communication medium can be activated or deactivated
with other computer systems to collaborate in the through a previous configuration, as shown in Figure 3.
development of the services provided. Examples The effect is the same as designing an electronic circuit
of these serial devices would be I2C, SPI, Ethernet, by distributing multiple electronic components on an
USB, etc. communication buses. electronic board and then connecting them to each other.
- Reading and writing of digital and analog signals: An FPGA can, potentially, be configured to be equivalent
these systems allow the connection of the to any desired integrated circuit. Because of this, they are
embedded system with basic electronic systems widely used as a prototyping mechanism, but also as an
(sensors and actuators). In this way it is possible inexpensive way to develop chips tailored to the application.
to integrate the embedded system with the actual
physical system to be controlled/served. Analog The way to configure a PGA is to make a description
signals must always be converted to digital in of the expected behavior of the integrated circuit
order to be processed by the embedded system. using a low-level programming language (usually a
So, analog/digital and digital/analog converters register transfer language such as VHDL). A compiler
are necessary for this purpose. called a synthesizer is in charge of converting the
program into the sequence of activation/deactivation
of logic gates needed to achieve an integrated
Complete systems on a chip (SOC) circuit that behaves as specified in the program.
Nowadays, the notion of putting together all the basic
elements of a computer on a single chip has reached an
unprecedented peak, especially with the emergence of Bibliography
complete systems on a chip (SOC). These SOC systems
[1] T. Wilmshurst. Designing embedded systems with
are the natural evolution of microcontrollers when they
PIC microcontrollers: principles and applications
reach computing capabilities comparable to general-
(Chapter 1: Tiny computers, hidden control).
purpose computing systems.
Amsterdam Boston: Newnes, 2010.
The definition of complete systems on a chip is the same [2] A. S. Tanenbaum, Modern operating systems
as that of microcontrollers (complete computer on a (Chapter 1.2: History of operating systems). Boston:
chip). The exceptions would be, however, as follows: Pearson, 2015.
Sistemas empotrados | 8

Programmable
Wire Switch
Segment

Figure 3. Programmable FPGA connection.

You might also like