The major difference between microprocessor and microcontroller is that a microprocessor is an IC designed to perform general-purpose digital computations. As against a microcontroller is an IC integrated with various devices to perform a specific application.
Another important difference between a microprocessor and a microcontroller is that the PCB size of a microprocessor-based system is large. While in case of a microcontroller-based system the PCB size is comparatively small.
We will discuss other important parameters that differentiate the two. But before that look at the contents to be discussed in this article.
Content: Microprocessor Vs Microcontroller
|Basis for Comparison||Microprocessor||Microcontroller|
|Functional Units||ALU, registers, CU.||ALU, register, CU, IO ports, RAM, ROM, ADC, DAC, timer and counters.|
|Data transfer instructions||It has large number of data transfer instructions.||Comparitively less number of such instructions.|
|Size of PCB||Large||Small in comparison to microprocessor.|
|Processing speed||1 GHz||8 to 50 MHz.|
|Uses||Finds its use in general purpose computing systems.||Used in systems that are manufactured for specific application.|
|Efficiency||Less efficient||More efficient|
|Power consumption||High||Low in comparison to microcontroller|
|Reliability||Less reliable||More reliable|
|Example||8085, 8086 etc||8051, 8951 etc.|
Definition of Microprocessor
A microprocessor is an integrated chip designed to perform computation tasks. The basic functional unit of a microprocessor includes ALU, registers and control unit. Microprocessors are classified on the basis of data size in which ALU operates.
Suppose the ALU of the microprocessor is operating on 8-bit data in one cycle then it will be an 8-bit microprocessor. Similarly, if ALU is operating on 16-bit data then it is a 16-bit microprocessor.
A microprocessor holds the ability to perform arithmetic and logical operations. The set of instructions that are to be executed by a microprocessor is stored in a memory device present in an external location to the microprocessor.
The programs which are required to be executed is stored by the manufacturer in the memory device.
Basically, the execution of any instruction inside the processor includes three cycles. Firstly, the data is fetched then it is decoded and then finally it is executed according to the decoded instruction.
The data or code is fetched through the bus when the appropriate control signals are generated by the CU so that the ALU can do the desired operation.
Hence we say the processor executes the desired operation but the instruction code which is performed by it is stored in an external chip or memory element. Thus we say that a microprocessor is a chip designed for general-purpose computational systems.
Definition of Microcontroller
A microcontroller is an IC that integrates various components inside it and thus is designed to dedicatedly operate as a single-chip system. A microcontroller includes ALU, CU, register, RAM, ROM, I/O ports, timer and counters etc.
So, the operations that are needed to be executed is present inside the memory unit (EPROM/EEPROM) in the microcontroller itself.
A microcontroller based system holds an external memory only when the internal memory becomes insufficient to hold the data or programs.
Whenever a need for program execution is generated by the system then the PC produces the address of the desired instruction which is to be fetched. The internal buses of the system fetch the data or program when control signals are generated by the CU.
After fetching the decoding unit decodes the instruction and the ALU executes the decoded instruction.
Like microprocessors, the microcontrollers are also classified on the basis of the size of data on which it operates in one cycle.
As we have already discussed that a microcontroller has dedicated memory unit inside it which holds the specific code or program over which the system has to operate.
This is the reason why microcontrollers are said to be designed to operate specifically for a dedicated system. Because it is practically not possible to change the program stored in the memory unit inside the microcontroller for general-purpose systems.
Key Differences Between Microprocessor and Microcontroller
- The two generates a key difference on the basis of functional unit present in them. A microprocessor contains ALU, register, CU. As against a microcontroller consists of ALU, CU, I/O port, RAM, ADC or DAC.
- Microprocessors are more expensive than microcontrollers.
- A microprocessor has a comparatively large number of data transfer instructions as compared to a microcontroller.This is so because in case of microprocessor the code or data is transferred between the microprocessor and external memory. While a microcontroller allows the transfer of code and data within it because the memory unit is present in the microcontroller itself.
- As the microprocessor chip only holds the processing elements thus it needs to be interfaced with other additional chips in order to have a microcomputer-based system. Thus its PCB will be of large size.As against a microcontroller does not need to have additional IC’s for the microcomputer-based system. Thus is small in size.
- Due to the presence of various IC, a microprocessor-based system is quite bulky. Whereas a microcontroller chip is comparatively less bulky.
- The operating speed of a microprocessor is about 1 GHz. While a microcontroller operates comparatively at a lower speed of about 8 to 50 MHz.
- A microprocessor is designed to perform the operation in a general-purpose digital system. As against a microcontroller is specifically designed for dedicated systems.
- Microprocessors are less efficient as compared to microcontrollers.
- A microcontroller consumes comparatively less power than a microprocessor.
From the above discussion, we can say a microprocessor-based system is less reliable as compared to a microcontroller based system.