Saturday, August 30, 2008

Microprocessor vs Microcontroller

This article will explain the different between microprocessor and microcontroller. Rather that we go straight to formal definition of both, it much easy to understand by looking at the example.
Below are names of microprocessor:-

Intel 8086, 8088, 80486, Pentium, Motorola 68000, AMD64

Below are names of microcontroller:-

Microchip PIC16F84A, Motorola MC68HC11, TI MSP430, Atmel AVR

Firstly, we describe what both have something in common. Both have a basic operations of a microcomputer. It has central processing unit, that fetch, decode, execute and writeback of machine instructions. It could be a simple loading data from memory and store to another locations. Or complex math operations to work on vector data.

The different between microprocessor and microntroller is the amount of peripheral that is put on a single IC (integrated circuits). The microprocessor IC alone wont make much use by itself. Other peripheral such as memory, video controller, ethernet,etc will make it become useful. With all this peripheral or support device connected together it will then become a router, PC, thin client,etc. Familiar stuff that we all see in our everyday life.

Microcontroller on other hand, have most of the peripheral put on the single IC. It has both volatile and non volatile memory, serial transceiver, general purpose IO, etc. By having all the peripheral inside, it will make the final device more compact, portable and low power. You could still design a blood pressure monitor or digital camera using a microprocessor but you will not get the shape and size that you see today on the device.

Why not make everything a microcontroller..?
Microprocessor is design in mind to do best in pure processing. It will have a very big data bus (32bit, 64bit), high clock speed, pipeline architecture, big instructions sets, etc. Much of silicon area on the IC are for this purpose, pure processing. In order to communicate with the outside, it has memory and data bus where all the peripheral can connected to. That's why the computer you are using able to run Microsoft Windows, open a word document, internet explorer and all sort of multitasking stuff.

Microcontroller is design to be as compact as possible. If you want to use a microcontroller as a digital camera, it has peripheral built into it for that purpose. By doing that, it will reduce the component count for the product. It also manage to make power consumption low and suitable for being portable and battery operated.

No comments: