Frequently Used Terms
Before we concentrate on microcontrollers, let us first list a few terms you will frequently encounter in the embedded systems field.
Microprocessor: This is a normal CPU (Central Processing Unit) as you can find in a PC. Communication with external devices is achieved via a data bus, hence the chip mainly features data and address pins as well as a couple of control pins. All peripheral devices (memory, floppy controller, USB controller, timer, . . . ) are connected to the bus. A microprocessor cannot be operated stand-alone, at the very least it requires some memory and an output device to be useful. Please note that a processor is no controller. Nevertheless, some manufacturers and vendors list their controllers under the term “microprocessor”. In this text we use the term processor just for the processor core (the CPU) of a microcontroller.
Microcontroller: A microcontroller already contains all components which allow it to operate standalone, and it has been designed in particular for monitoring and/or control tasks. In consequence, in addition to the processor it includes memory, various interface controllers, one or more timers, an interrupt controller, and last but definitely not least general purpose I/O pins which allow it to directly interface to its environment. Microcontrollers also include bit operations which allow you to change one bit within a byte without touching the other bits.
Mixed-Signal Controller: This is a microcontroller which can process both digital and analog signals.
Embedded System: A major application area for microcontrollers are embedded systems. In embedded systems, the control unit is integrated into the system3 . As an example, think of a cell phone, where the controller is included in the device. This is easily recognizable as an embedded system. On the other hand, if you use a normal PC in a factory to control an assembly line, this also meets many of the definitions of an embedded system. The same PC, however, equipped with a normal operating system and used by the night guard to kill time is certainly no embedded system.
Real-Time System: Controllers are frequently used in real-time systems, where the reaction to an event has to occur within a specified time. This is true for many applications in aerospace, railroad, or automotive areas, e.g., for brake-by-wire in cars.
Embedded Processor: This term often occurs in association with embedded systems, and the differences to controllers are often very blurred. In general, the term “embedded processor” is used for high-end devices (32 bits), whereas “controller” is traditionally used for low-end devices (4, 8, 16 bits). Motorola for example files its 32 bit controllers under the term “32-bit embedded processors”.
Digital Signal Processor (DSP): Signal processors are used for applications that need to —no surprise here— process signals. An important area of use are telecommunications, so your mobile phone will probably contain a DSP. Such processors are designed for fast addition and multiplication, which are the key operations for signal processing. Since tasks which call for a signal processor may also include control functions, many vendors offer hybrid solutions which combine a controller with a DSP on one chip, like Motorola’s DSP56800.