Whenever you hear about embedded systems, what comes to your mind? I
guess a lot of electronic chips, wires, PCBs etc. So how did these embedded
systems came into existence and how did it evolve and how it become such a
integral part of our lives? In todays world, we are surrounded by embedded
systems. Mobile phones, laptops, television, radio, refrigerators, ovens and
even home automation equipment – All are embedded systems.
If you think about it,
these are in fact control systems. Control system means a system intelligent
enough to control some variable parameters depending on inputs. So there are
inputs and outputs. Depending on inputs, the control systems control the output.
To achieve this, a system which has its own intelligence capable of analysing
the input and producing the output is needed. So these system are nothing but
embedded systems. So Embedded systems are brain of a control system.
So lets define embedded
system now. The systems embedded in control system which implements the logic
are called embedded systems.
These embedded systems are
electronic in nature and consists transistors in each of its chip, be it for
memory or processor or any other controller chips. As per Moore’s law, the
number of transistors per unit area doubles every year. And hence the power of
embedded chips increased drastically over the years and it took a major role in
our lives.
This
logic needed for a control system works based on inputs and embedded system
since they are electronic in nature, can only understand input parameters as
voltage (or current). So various sensors were invented. These sensors convert
physical parameters of interest like sount or light intensity or pressure etc
into electric voltage which can then be digitised and fed into embedded system
for processing. One example of sensor is microphone which converts the volume
of sound to electric pulses. The embedded controller processes the input and applies
the logic and forms the output which is also in form of voltage. But this has
to be converted into the physical form which is what matters for the outer
world. So for that we have actuators. An actuator converts the voltage to a
intended physical parameter like sound or light etc. An example for actuator
would be speaker which converts the voltage into sound. If the embedded system
logic takes feedback of output to make some adjustments then its called closed
loop control system else its called open loop control systems. They are seen
pictorially like below.
Closed Loop Control System |
Open Loop Control System |
So, till now we learnt that embedded
systems are integral part of control systems and they are the brain which
implements the logic of control system. Depending on the way this logic is
implemented, the embedded systems are classified into 2 categories
Ø ASIC
(Application Specific Integrated Chips) where the logic is hardwired in the
hardware itself.
Ø GPC (General
Purpose Controllers) where the logic is programmed into the hardware by means
of software.
ASICs are very specific to the
application and they cannot be used for any other purpose. The logic is completely
implemented in the hardware and hence the resources are very tailormade and
specific to the application and none of the resources are unused. CAN
controllers are an example for ASICs as the can protocol is hardwired in the
chip. Many automotive companies use ASICs in their ECUs mainly for regulators
and power-stages. The VLSI companies design the layout and manufacture these
ASICs which are custom made for their purpose and specifications. In case of
ASICs usually there is no software involved.
On the other hand, GPC are the
microprocessors and microcontrollers which has some basic and generic resources
which can be enabled or disabled and used by an embedded application to realise
the purpose. These general purpose controllers can be programmed to behave as
any desired chip within the limit of its resources. There are various
microcontroller manufacturers which manufacture various microcontrollers with
varied range of power and resources and sell it in the market. These range from
microcontrollers for low-end applications to high end applications too. These
microcontrollers can be taken and programmed to perform any logic needed for
the control system. When I say programmed, it means writing the logic in a high
level language(like c, C++ python etc) or controller specific low level
language(Assembly codes) and compile them (Using Compilation stages) to get the
machine readable binary files and using a tool flash this file into embedded
system and hence converting the GPC into the embedded brain performing the
logic needed for the control system.
These GPCs now a days are more famous
and used compared to ASICs. Because ASICs are custom made for a particular
application and once manufactured, these cannot be made to perform any other
logic than what they were originally designed for. On the other hand the GPCs
can be modified to perform any logic just by changing the code and re-flashing
different logics again and again. Since its very easy to modify the software
and impossible to modify the hardware, GPCs gained a lot of importance.
the below video explains these concepts beautifully:
the below video explains these concepts beautifully:
No comments:
Post a Comment