
4 Chapter 1: Introduction
Variations on the Theme
Unlike software designed for general-purpose computers, embedded software can-
not usually be run on other embedded systems without significant modification.
This is mainly because of the incredible variety in the underlying hardware. The
hardware in each embedded system is tailored specifically to the application, in
order to keep system costs low. As a result, unnecessary circuitry is eliminated and
hardware resources are shared wherever possible. In this section you will learn
what hardware features are common across all embedded systems and why there
is so much variation with respect to just about everything else.
By definition all embedded systems contain a processor and software, but what
other features do they have in common? Certainly, in order to have software, there
must be a place to store the executable code and temporary storage for runtime
data manipulation. These take the form of ROM and RAM, respectively; any
embedded system will have some of each. If only a small amount of memory is
required, it might be contained within the same chip as the processor. Otherwise,
one or both types of memory will reside in external memory chips.
All embedded systems also contain some type of inputs and outputs. For example,
in a microwave oven the inputs are the buttons on the front panel and a tempera-
ture probe, and the outputs are the human-readable ...