Microcontroller
It is also a small computer in which CPU, memory unit (RAM, ROM), I/O peripherals, timers, counters, are embedded in one integrated circuit(IC) where as in the microprocessor all these units are combined on a board through buses. Microcontroller can be interfaced easily to external peripherals like serial ports, ADC, DAC, Bluetooth, Wi-Fi, etc. the interfacing process is fast when compared to the microprocessor interfacing. The most of microcontroller uses RISC architecture. There are also some microcontroller uses CISC architecture like 8051, motorolla, etc.
Difference Between Microprocessor and Microcontroller:
· Architecture: Most of the microprocessors use CISC and Von-Neumann architecture. There microprocessors used Harvard and RISC also. But popularly microprocessor uses CISC. Whereas Microcontroller uses RISC and Harvard architecture. But there are some microcontroller uses CISC architecture like 8051 and SHARC. Microprocessor has ROM, RAM, secondary storage memory I/O peripherals, timers; counters etc are placed on a board and connected through buses where as in the microcontroller all these peripherals are combined in a single integrated circuit (IC).
· CPU Speed: Processors are more speed than controllers because of the clock. Processors can have high clock rate, even if they become heat due to over clock rate the heat sink will stop from overheating. Controllers may be slow when compared to the processors but they are reliably fast. The execution speed will always depends up on the clock. If we take the overall performance and application execution speed microcontroller will be fast because all the peripherals are inbuilt. Processors will be slow because it has get every resource from outside of the cpu through buses
· Design Time: The design an application microcontroller will take less time when compared to the processor. The interfacing between the peripherals and programming them will be easy when compared to the processor.
· Protection: if you programmed the microcontroller it is hard to get the program from the Rom by other users. The rom will be locked and it is very hard to retrieve the program from the rom of microcontroller. Processor will not give that much protection to its program.
· Cost: cost of microprocessors and implementing microprocessor based systems will be costly when compared to the microcontroller based system. The microprocessor system will never be a compact system. Most of the microcontroller based systems are compact systems
· Applications: processors are mainly used in computation systems, defense systems, network communications etc. microcontrollers are mainly used in embedded application like watches, cell phone, mp3 player, etc.
Whatever is the difference between controllers and processors, processors cannot be replaced by controllers and controllers cannot be replaced by processors. Each of them have unique way of usage in application development.