What's it all about?
They have long since conquered our everyday lives. There are many, damn many! Soon the uprising of the machines will begin and threaten the existence of mankind!
Enough of these apocalyptic science fiction fantasies.
But it’s not all nonsense. In fact, there are more embedded systems hiding in your immediate environment than you realize at first glance. There are small computers in your car, your cell phone, your game console, your Internet router, your home appliances, and all other electronic devices.
Computers to power
Do you realize how closely your life is connected with computers? But these systems don’t look like a conventional computer at all. That’s why this particular form is also called an embedded system.
The simplest definition of an embedded system is any computer system that is not designed for general purposes, but for one main task. This means that your notebook, your desktop PC or even your smartphone do not fall under this term. You will surely object that according to this definition, cell phones would be embedded devices as well, after all. That’s right, they are even a very good example of this. However, the smartphone, with its rapidly growing range of apps, is fulfilling more and more general purposes.
There can be only one
Embedded systems are usually only intended for one task. Therefore, a processor is selected during development that is exactly suitable for this task. General-purpose processors, with which the electronics retailers advertise their products (Pentium, Athlon, i3, etc.), can also be found in the embedded area, but these are actually designed for solving many different tasks. Thanks to multiple cores as well as multi-threading, even parallel working is possible.
Size does matter
The basis for deciding on a non-general-purpose processor is very versatile and is not limited to performance. Rather, the factors of cost, energy consumption and size play an overriding role here.
In most cases, a complete embedded system costs less than the cheapest PC processor. Some systems are also smaller than such a computing unit. Especially in the mobile sector, energy consumption is very important, and energy-efficient components must be sought. After all, the battery should last a long time..
Live long and prosper
If you want to categorize a system, you also need to look at the requirements. For example, look at the service life. How often do you replace your smartphone? Compare this to using a switch for the telephone network. You may have a company anniversary of 30 years. Lifetime has further influence on the required upgradability and backward compatibility. Because systems are not simply replaced with new ones, long support must be considered in system design.
As you can see, embedded device designers face more constraints than general-purpose computer designers. Performance, energy efficiency, cost, and physical dimensions tend to play a much larger role in embedded systems. That doesn’t mean they are harder to develop. But the overall priorities and balance between them are different for embedded devices.
Don’t cross the line
Most of the time, embedded systems can be easily distinguished from others. In the past, computing power was also a distinguishing feature, since embedded systems did not need that much to perform their only task.
Sometimes the line can’t be clearly drawn and you can’t assign a device to one side with certainty. This is partly due to the rapid development of technologies (Moore’s Law says hello) and partly due to the growing demands of users.
Embedded devices today solve very demanding tasks that would have brought the most expensive supercomputer to its knees not so long ago. Just look at the entertainment system in current cars.
Conversely, your notebook’s battery should power the increasing performance for even longer. Ideally, the device should be smaller, lighter and thus even better suited for mobile use.
I hope this brief insight has piqued your curiosity and sparked your interest in embedded systems. What embedded systems do you have at home? Or are you even a developer in this field?
Next time I would like to take a closer look with you at the differences between an embedded software developer and an IT software developer. I am very curious to hear your views!
Until then, I wish you much success!