kids encyclopedia robot

Embedded system facts for kids

Kids Encyclopedia Facts

An embedded system is a special kind of computer. It is built to do only a few specific jobs, and it's usually hard to change what it does. The word "embedded" means it's a hidden part of a bigger system or machine.

Unlike a regular computer, an embedded system often doesn't have a keyboard, monitor, or mouse. But just like any computer, it has a processor (its "brain"), software (its instructions), and ways to get information (input) and send it out (output).

ADSL modem router internals labeled
This picture shows the inside of an ADSL modem/router, which is a modern example of an embedded system. You can see its processor, memory, and flash storage.

For example, the computer inside an elevator tells the motor to move it to different floors when you push buttons. A special system inside a satellite television box reads signals from the dish and turns them into something your TV can understand. These systems often need to work very quickly, almost instantly. This is called real-time computing. If a satellite box was slow, your TV picture might look bad. Regular computers can sometimes pause briefly, but embedded systems usually cannot.

Embedded systems control many everyday devices. They are in card readers for hotel doors and in many parts of a car. They can be small, like in an MP3 player or a digital camera. They can also be very large, like in traffic light systems, airplanes, or assembly lines in factories.

What Are Embedded Systems Used For?

Embedded systems are everywhere! They are used in many different types of electronic devices, including:

Key Features of Embedded Systems

Embedded systems have some important characteristics that make them different from regular computers:

  • Specific Task: They are built to do one or a few jobs very well, unlike general-purpose computers that can do many things.
  • Hidden Design: They often don't look like a computer. They might not have a full screen or a keyboard.
  • Real-Time Action: Many embedded systems must react very quickly, almost instantly. This is crucial for things like car brakes or medical devices.
  • Safety First: They need to be very safe and reliable. This is especially true for medical equipment or systems controlling airplanes.
  • Fast Start-Up: They start working very quickly. You wouldn't want to wait minutes for your car or emergency equipment to turn on.
  • Special Software: They might use a special, small operating system called a real-time operating system (RTOS). Or sometimes, they don't need a full operating system at all.
  • Firmware: The instructions for embedded systems are called firmware. They are stored on special memory chips and run with limited computer parts.

Sometimes, embedded systems are not just one device. They can be a group of systems working together, like the radio, engine control, and pollution control in a car. Some can even connect to the internet or cell phone networks.

How Do You Talk to Them?

Digital-clock-radio-premium
This digital clock radio shows a simple user interface with buttons and an LCD screen.

Embedded systems can have very different ways for people to interact with them. Some have no user interface at all, just sending and receiving electrical signals. Others might have a full graphical user interface like a modern computer.

Often, they have a few push-buttons, a small screen, and some LEDs (small lights). More advanced systems might have a touch screen, where the buttons on the screen change their meaning depending on what you're doing, like on smart phones.

The Inside Story: Hardware

The hardware of an embedded system includes the chips, wires, circuit boards, buttons, and displays.

The Brain: CPUs

The most important chip is the central processing unit (CPU). This chip runs all the software instructions. It can be a standard microprocessor or a microcontroller. Microcontrollers are special because they include the processor and other simple parts all on one chip. This makes the system smaller and cheaper, but also less flexible.

Unlike CPUs in regular computers, bigger and faster isn't always best for embedded systems. Many embedded processors are very small. This helps them use less space, less power, or cost less. While regular computers use powerful 32-bit or 64-bit processors running at gigahertz (GHz) speeds, embedded processors are often 4 to 32 bits and run much slower, usually at tens of megahertz (MHz).

Ready-Made Computer Boards

Soekris net4801 board
The Soekris net4801 board is an embedded system designed for network uses.

Sometimes, it's easier to use computer boards that are already made. These "ready-made" boards are often smaller than those in regular computers. They might use operating systems like Windows CE, Linux, or special embedded real-time operating systems.

Using these pre-made boards can save time for engineers. They can also use the same software tools as regular computers. Examples include ATMs or displays in casinos. This works well if the system doesn't need to react super-fast.

Special Chips: ASIC and FPGA

If a device needs to be very small or will be sold in huge numbers, it makes sense to create a custom chip. This is called a system on a chip (SoC). An SoC holds a complete system – the processor, memory, and connections – all on one single integrated circuit.

SoCs can be made as a special-order application-specific integrated circuit (ASIC). Or, they can be built using a field-programmable gate array (FPGA), which can be programmed by the people making the embedded system.

Connections: Peripherals

Embedded systems communicate with the outside world or other parts using special connections called peripherals. These include:

  • Serial Ports: Like RS-232, used for older connections.
  • USB: The Universal Serial Bus is a common way to connect devices.
  • Networks: Such as Ethernet for internet connections, or Controller Area Network (CAN) for cars.
  • Simple Input/Output (GPIO): This can be a single wire that sends an on/off signal, used for small keypads or turning on an LED light.
  • Analog to Digital Converters (ADC/DAC): These measure things that change smoothly, like light levels, or control motor speed.

The Brains: Software

Operating Systems

Many embedded systems don't need a full operating system like Windows or macOS. Some use very small, simple operating systems that start quickly. Others don't need one at all. Embedded systems are built to do their jobs very reliably. Because their hardware is simpler, they are often cheaper and run faster.

A regular computer needs to be ready for new device drivers and software for hardware it doesn't know about yet. It also needs to run many different programs.

As embedded systems become more powerful, they are starting to use features once found only in regular computers. This includes protected memory and open programming environments like Linux or NetBSD.

Here are some types of operating systems, from simple to complex:

  • Simple Control Loop: A basic timer and a loop that repeatedly calls different parts of the program. This is common for very small systems.
  • Interrupt Controlled: Tasks start when specific events happen. This could be a timer, a button press, or new data arriving.
  • Non-Preemptive Multitasking: Each task runs until it finishes, then it tells the operating system to start the next task.
  • Preemptive Multitasking (Multi-threading): A task can be paused after a short time to let another task run. This means no single task can "hog" the system. At this level, the system has an "operating system" kernel and can run tasks in parallel.

Real-time operating systems (RTOS) include products like MicroC/OS-II, Green Hills INTEGRITY, QNX, or VxWorks. Most people don't know these names, but they are used in many places where time and safety are very important. People use them every day without realizing it.

Larger operating systems like Embedded Linux and Windows CE are also becoming common for more powerful devices, such as wireless routers and GPS devices. They allow developers to reuse existing code for device drivers, web servers, and firewalls.

Tools for Building Software

Like other software developers, embedded system designers use compilers, assemblers, and debuggers to create their software. They might also use some special tools:

  • For systems that process digital signals, developers might use math tools like MATLAB.
  • Special compilers can be used to make the software run even better on the specific hardware.
  • An embedded system might even have its own special programming language or design tool.

Debugging tools help find and fix problems in the software:

  • An in-circuit debugger (ICD) connects directly to the processor. It can start and stop the processor and let developers see what the software is doing.
  • External debugging uses logging or serial port output to track how the system is working.
  • An in-circuit emulator can replace the processor on the board, giving full control over its actions.
  • A complete emulator simulates the entire hardware system on a regular PC. This "virtual" machine allows developers to test everything without the actual hardware.
  • Developers also use tools like a logic analyzer or multimeter to check electrical signals.

These tools allow programmers to load and run software, see the code running, and control its operation. Some advanced systems can even track how much memory the software uses or what tasks are running.

Safety and Reliability

Embedded systems are often found in machines that need to work for years without problems. In some cases, they must even fix themselves if an error happens. This means their software is usually developed and tested much more carefully than software for personal computers. Also, parts that can easily break, like disk drives and fans, are avoided.

Safety and reliability are very important in these situations:

  • Some systems cannot be easily shut down for repair, or it's too hard to fix them. Examples include space systems (satellites, rovers), underwater cables, and nuclear power plant controls.
  • If the system fails, it could harm people. This includes aircraft controls, chemical factory controls, train signals, and heart defibrillators.
  • A system failure or mistake could cause huge financial losses. This applies to telephone switches, factory controls, cash registers, and ATMs.

Here are ways embedded systems recover from errors, whether they are software bugs (like memory leaks) or small hardware issues:

  • A Watchdog timer restarts the embedded system if it stops working.
  • Duplicate parts mean one system can take over if another fails.
  • Software "limp modes" allow the system to keep working with limited functions.

Related Topics

Images for kids

See also

Kids robot.svg In Spanish: Sistema embebido para niños

kids search engine
Embedded system Facts for Kids. Kiddle Encyclopedia.