Embedded Systems
What an embedded system is, how it differs from a general purpose computer, and why your washing machine does exactly one job extremely reliably.
What an embedded system is
An embedded system is a computer built into a larger device to perform a single specific task, or a small set of dedicated tasks.
The computer is not the product. The washing machine is the product, and the computer inside it exists only to run the wash cycles.
Everyday examples
- Washing machine, dishwasher and microwave controllers
- Traffic light controllers
- Central heating thermostats
- Engine management systems in cars
- Digital cameras
- Fitness trackers
- Pacemakers
- Vending machines
- Domestic burglar alarms
Neither is a smartphone. They run many different programs chosen by the user, which makes them general purpose computers. The test is: can the user install whatever software they like?
Embedded versus general purpose
| Embedded system | General purpose computer | |
|---|---|---|
| Purpose | One dedicated task | Many different tasks |
| Software | Fixed, usually stored in ROM, rarely changed by the user | Installed and removed freely by the user |
| Hardware | Minimal, only what the task requires | Full range: keyboard, screen, expansion slots |
| Processing power | Low, matched exactly to the job | High, must cope with unpredictable demands |
| Power consumption | Very low | Comparatively high |
| Cost | Cheap to manufacture in volume | Expensive |
| Physical size | Small, often a single chip | Large |
| Operating system | Often none, or a small real time OS | Full operating system such as Windows or macOS |
| Reliability | Very high, the task is fixed and well tested | Lower, more can go wrong |
| User interface | Very limited: a few buttons and lights | Rich: keyboard, mouse, touchscreen, monitor |
Why the differences exist
Because the task never changes, the designer knows exactly what the system needs. That makes it possible to strip out everything else. The result is cheaper, smaller, uses less power, generates less heat, and is far less likely to fail, because there is far less to fail.
Because an embedded system performs only one dedicated task, its hardware and software can be designed and optimised specifically for that task, which makes it cheaper, smaller, more power efficient and more reliable than a general purpose computer doing the same job.
The trade off
The flexibility is gone. You cannot make your washing machine play music, and updating the software may be difficult or impossible without replacing the chip. For the manufacturer that is a feature, not a bug: fewer possibilities means fewer things that can go wrong.
- A general purpose computer: many parts, and it runs whatever you install.
- An embedded system: one small board, built into the device it controls.
- It runs one program, written once, stored in ROM, never replaced.
- That is why it boots instantly, costs pennies and almost never crashes.
Key terms you must be able to define
- Embedded system
- A computer built into a larger device to perform one dedicated task or a small set of dedicated tasks.
- General purpose computer
- A computer designed to run many different programs chosen by the user, such as a laptop or desktop.
- ROM
- Read only memory. Non volatile memory holding the fixed program an embedded system runs.
- Real time system
- A system that must respond to inputs within a guaranteed time limit, such as an anti lock braking system.
- Dedicated function
- The single specific job an embedded system is built to carry out.
Flashcards
Say the definition out loud before you flip the card. Retrieving it from memory is what builds recall, reading it again is not.
Reach the top grade on this topic
This topic is short, so the marks are won on precision.
Choose your examples carefully. A smartphone is a trap: it looks like a small device but it is general purpose. Safe examples are a washing machine controller, a traffic light system, a microwave and a central heating thermostat.
Give reasons that follow from the single task. Everything good about an embedded system, low cost, small size, low power, high reliability, follows from the same root cause: the task is fixed, so the design can be stripped back to exactly what is needed. Say that link explicitly.
Know the disadvantage. Higher mark questions often ask for a drawback. The answer is loss of flexibility: the system cannot be repurposed and the software is usually difficult or impossible for the user to update.
- Be able to give three correct examples instantly
- Be able to state four differences from a general purpose computer in a table format
- Be able to explain one advantage and one disadvantage with reasons
Mistakes that cost marks here
- Giving a smartphone or tablet as an example. They run user chosen software, so they are general purpose.
- Saying an embedded system 'has no operating system'. Many have a small real time operating system. Say it is often minimal or absent rather than never present.
- Writing that embedded systems are 'less powerful' as if it is a flaw. It is a deliberate design choice, because the task does not need more power.
- Forgetting the disadvantage. Loss of flexibility and difficulty of updating is worth a mark in a two sided question.
A modern car contains somewhere between 50 and 150 embedded systems. The engine management unit alone runs continuously and makes thousands of adjustments per second, and it has to be right every time, because there is no restart button at 70 mph.
Knowledge check
Exam-style questions
Five written questions in the style of the real paper. Write a full answer, then let the marker check it against the mark scheme.
- LA computer system built into a larger device
- LDesigned to perform one specific or dedicated task
An embedded system is a computer system that is built into a larger device or machine, and it is designed to carry out one specific dedicated task rather than a range of different tasks chosen by the user.
- LFirst valid example named, such as a washing machine controller
- LTask of the first example stated
- LSecond valid example named
- LTask of the second example stated
One example is the controller inside a washing machine, which manages the wash cycle by controlling the water inlet valve, the drum motor speed and the heating element according to the programme the user has selected. A second example is a central heating thermostat, which monitors the temperature reported by a sensor and switches the boiler on or off to keep the room at the target temperature.
- LCheaper to produce because only the hardware needed for the task is included
- LReason linked to the fixed task, such as no need for a screen, keyboard or expansion
- LMore reliable because the single fixed program can be tested thoroughly and there is less to go wrong
- LSmaller and lower power, so it fits inside the appliance and generates little heat
The first advantage is cost. Because the system only ever has to run the microwave, the manufacturer can include just the processing power, memory and inputs the task requires, with no monitor, keyboard or expansion slots, so the unit is far cheaper to produce in volume. The second advantage is reliability. The embedded system runs a single fixed program stored in ROM, which can be tested exhaustively before release, and there are far fewer hardware and software components that could fail than in a general purpose computer, so the microwave is much less likely to crash or need maintenance.
- LEmbedded systems perform one dedicated task, general purpose computers run many different programs
- LEmbedded software is fixed and usually stored in ROM, general purpose software is installed by the user
- LEmbedded systems use minimal hardware and have limited interfaces, general purpose computers have full input and output devices
- LEmbedded systems use less power and are physically smaller
The first difference is purpose. An embedded system is built to carry out one dedicated task, such as controlling a set of traffic lights, whereas a general purpose computer such as a laptop is designed to run many different programs chosen by the user. The second difference is how the software is handled. In an embedded system the program is fixed and usually stored in ROM, so it is not intended to be changed by the user, while on a general purpose computer the user installs, updates and removes applications freely. This also means embedded systems need only minimal hardware and a very limited interface, often just a few buttons and lights, whereas a general purpose computer needs a keyboard, a monitor and support for a wide range of peripherals.
- LEmbedded system is cheaper to produce per unit
- LSmaller physical size fits inside the machine and uses less power
- LMore reliable because a single tested program runs on minimal hardware
- LDisadvantage: difficult or impossible for the user to update the software
- LDisadvantage: no flexibility, the system cannot be repurposed or given new features later
- LReaches a supported conclusion for this specific product
An embedded system is a strong choice here. Because a coffee machine only ever needs to run a fixed set of brewing programmes, the manufacturer can specify exactly the processing power, memory and inputs required, which makes each unit significantly cheaper to produce than fitting a general purpose computer. The reduced hardware is also physically smaller, so it fits easily inside the casing, and it draws far less power and generates less heat, which matters in an appliance that already produces heat. Reliability is the strongest argument: a single fixed program running on minimal hardware can be tested exhaustively, and there are far fewer components that could fail, so warranty returns should be low. There are drawbacks. The software is normally stored in ROM, so fixing a bug or adding a new drink option after release may require physically replacing a chip or recalling units, and the system cannot be repurposed for anything else. On balance, because the function of a coffee machine is stable and well defined, and cost and reliability matter far more to the manufacturer than future flexibility, the embedded system is the better choice, provided the design allows firmware to be updated during servicing.