Computer Hardware CPU / Micro processors / MicroControllers Defined

Embedded Controller
A Controller built into a product that is often hidden from the end user. For example, kitchen appliances, such as a microwave oven ..
Controller
A device that controls the operation of part or all of a system. It may simply turn a device on and off, or it may react to input from sensors and provide subtle and/or complex adjustment of the system through it's outputs. A controller may be as simple as a relay, or as complex as a personal computer.
CPU
The Central Processing Unit or "processor", is the primary component in a digital computer. It accepts inputs, performs calculations, and produces outputs. Calculations are performed by executing instructions stored in memory. The CPU must be connected to inputs, outputs and memory in order to be useful.
Microprocessor
A miniturized CPU, often including some memory.
Microcontroller
An integration of a microprocessor and some I/O devices into a single chip. Features may include low power, real time (very fast or at least predictable speed), I/O ports for common protocals, analog, and current driving applications.

From the Embedded Processor and Microcontroller primer and FAQ:

A controller is used to control (makes sense!) some process or aspect of the environment. A typical microcontroller application is the monitoring of my house. As the temperature rises, the controller causes the windows to open. If the temperature goes above a certain threshold, the air conditioner is activated. If the system detects my mother-in-law approaching, the doors are locked and the windows barred. In addition, upon detecting that my computer is turned on, the stereo turns on at a deafening volume (for more on this, see the section on development tools).

Controller: At one time, controllers were built exclusively from logic components, and were usually large, heavy boxes (before this, they were even bigger, more complex analog monstrosities).

Microprocessor based Controller: Later on, microprocessors were used and the entire controller could fit on a small circuit board. This is still common - you can find many [good] controllers powered by one of the many common microprocessors (including Zilog Z80, Intel 8088, Motorola 6809, and others).

Microcontroller: As the process of miniaturization continued, all of the components needed for a controller were built right onto one chip. A one chip computer, or microcontroller was born. A microcontroller is a highly integrated chip which includes, on one chip, all or most of the parts needed for a controller. The microcontroller could be called a "one-chip solution". It typically includes:

By only including the features specific to the task (control), cost is relatively low. A typical microcontroller has bit manipulation instructions, easy and direct access to I/O (input/output), and quick and efficient interrupt processing. Microcontrollers are a "one-chip solution" which drastically reduces parts count and design costs.

Embedded Controller: Simply (and naively stated) an embedded controller is a controller that is embedded in a greater system. A rigid definition is difficult if not impossible to formulate, since the usual response is "most embedded controllers are...". The problem here is "most". We can't seem to shake that word from the definition. No matter how clever you feel your definition is, some wiseguy will come along and find an exception, or two, or 50.

You COULD say that an embedded controller is a controller (or computer) that is embedded into some device for some purpose other than to provide general purpose computing. Of course, someone will eventually prove you wrong, but who cares?

A common example of a general purpose computer, would be a typical PC clone. The x86 processor in this machine can't really be considered an embedded controller, since the machine is typically used for general purpose computing. However, what is general purpose computing? Take this same PC clone, turn it into a multi-media machine, and voila! You have an appliance - much on the order of a microwave oven or television. Is the x86 processor now considered an embedded controller Or, is the PC clone itself now considered an embedded controller, controlling the multi-media peripherals? Hey - I don't know about you, but I'm getting too old for this nonsense.

Is a microcontroller an embedded processor? Is an embedded processor a microcontroller? What's the difference between an embedded processor and a microcontroller? Well, today - not much. With the continuing process of high scale integration continuing at a dizzying pace, many standard architecture processors are turning up as microcontrollers. A few such examples are the Motorola 68EC300, Intel 386 EX, and the IBM PowerPC 403GB. These chips could be called super-microcontrollers.

So, what's the difference between an embedded processor and a microcontroller? I wouldn't touch that question with a ten foot logic probe.

We might be safe by stating that an embedded processor controls something (for example controlling a device such as a microwave oven, car braking system, or a cruise missile). Is this always true? Maybe. Maybe not. You know, it just doesn't end.

The main thing is not to get to hung up on precise definitions. Black and white? Hell no, we've got grey scale, dithering, diffusion, you name it! Same thing goes here with embedded controllers, just go with the flow. It all depends on your point of view.

Alright, if you really must insist, we'll take a stab at defining what an embedded controller is - realize however that there will be many exceptions. Embedded controllers adhere to a philosophy similar to that of microcontrollers, high integration. By including [many] features necessary for the task at hand, an embedded controller (processor) can be a powerful yet cost effective solution. However, where a microcontroller [almost by definition] is a computer on a chip, an embedded controller might need external components before it is considered a "computer." This is especially true regarding RAM. Since including large amounts of RAM (megabytes) on a processor is not really practical (due to cost and available silicon real estate) and because many embedded controllers are real powerhouses requiring large amounts of RAM, the RAM is often external to the processor.