The microprocessor is a type of computer processor in which both the data processing logic and control are included on a single integrated circuit or small numbers of integrated circuits; in contrast, a microcontroller is a small, low-cost microcomputer on a single VLSI integrated circuit (IC) chip. It controls portions of an electronic system through a microprocessor unit (MOU) and some peripherals. In this article, we will learn the difference between a microprocessor and a microcontroller.
Let us discuss the definitions, types, functions and the difference between microprocessor and microcontroller.
Table of Contents
- Difference between microprocessor and microcontroller
- What is a microprocessor?
- Types of microprocessors
- What is microcontroller?
- Types of microcontrollers
- Similarities between Microprocessor and Microcontroller
Difference between Microprocessor and Microcontroller
Let us now learn the difference between a microprocessor and a microcontroller in an embedded system through the following table:
|Since memory and I/O are connected externally, the circuit becomes large in size.
|Since memory and I/O are present together, the internal circuit is small in size.
|It cannot be used in compact systems
|It can be used in compact systems.
|Cost is high
|Cost is low
|It is not suitable for devices that run on stored power since total power consumption is high due to external components.
|It can be used on devices that use stored power since total power consumption is low due to less external components.
|RAM, ROM, I/O units, and other peripherals are not embedded on a single chip.
|RAM, ROM, CPU and other peripherals are embedded on a single chip.
|Do not have power saving mode.
|Have a power-saving mode.
|Used in personal computers.
|Used in embedded systems.
|Less number of registers.
|More number of registers.
|Uses an external bus.
|Uses an internal controlling bus.
|Based on the Von Neumann model
|Based on the Harvard architecture
|It is a central processing unit on a single silicon-based integrated chip.
|It is a byproduct of the development of microprocessors with a CPU along with other peripherals.
|Complex and expensive due to a large number of instructions to process.
|Simple and inexpensive due to less number of instructions to process.
|Can run at a very high speed.
|Can run up to 200MHz or more.
What is a microprocessor?
Microprocessor is a type of computer processor in which both the data processing logic and control are included on a single integrated circuit or on small numbers of integrated circuits. These processors consist of logic, control and arithmetic circuits. Its integrated circuit is capable of interpreting and executing program instructions. These are multiple-purpose, clock-driven and register-based digital integrated circuits that accept input in binary data and process it as per the instruction stored in its memory.
Components of a Microprocessor
A microprocessor has the following components
- I/O Units
- Control units
- Arithmetic Logic Unit (ALU)
Types of Microprocessors
Microprocessors are segregated according to their usage. There are three main types of microprocessors:
1. CISC Microprocessor
Complex instruction set computer (CISC) microprocessors are designed for executing complex instructions that minimise the total number of instructions per program. In a complex instruction, there are multiple instructions, such as reading from memory or any arithmetic operation. It requires multiple machine cycles for executing an instruction due to the large size of the instruction set that has multiple addressing modes in a single instruction.
2. DSP (Digital Signal Processor)
These are the microprocessors that are designed for processing any signal such as radar, sonar, image processing, image processing, etc. They can process multiple signals at a time in parallel operation. These microprocessors convert between analogue (ADC) and digital (DAC) signals. Then, they process them by filtering, compressing and applying algorithms in the digital format.
3. RISC Microprocessor
A Reduced Instruction Set Computer (RISC) is designed for executing simple instructions. The number of instructions is reduced to 30-40. Instructions are simplified to reduce execution time. The format and the size of these instructions is fixed and limited. Since the instruction is completed in a clock cycle, more lines of program code and more memory are required for storing the instruction. There is less load on hardware and more on either compiler or software.
4. Input/Output Processor (IOP)
These are the special processors that control and manage the input-output tasks in a computer. They have direct access to memory, and unlike CPUs, they only process the I/O peripherals. While the CPU sends instructions for operation, IOP executes them.
5. Bit-Slice Microprocessors (BSM)
These microprocessors combine identical BSMs to form microprocessors of the desired word size. The objective is to design microprocessors of the desired width by increasing the bit size. Two or more identical BSMs are cascaded to form processors of both conventional and unconventional word sizes.
6. Graphics Processors
These are the special types of microprocessors that accelerate the process of image creation. GPU consists of a graphic processor and other essential components such as cooling components and RAM. They parallelly execute instructions, due to which they perform faster than CPUs. Graphic processors are found in gaming consoles, smartphones and computers and are used for rendering images in CGI or video games.
These are the special-purpose microprocessors that aid the primary processor in processing complex tasks to improve its performance. The Coprocessor shares its processing power with the primary processor to reduce the load off. It works independently and is very fast in executing tasks due to limited instruction sets. This microprocessor is used for single processing, I/O interfacing operations, complex arithmetic and graphic operations. It is physically distinct from the CPU.
Difference between 8085 and 8086 Microprocessors
Here is the comparison between 8085 and 8086 microprocessors in a tabular format:
|The 8085 is an accumulator based 8-bit microprocessor which can process 8-bit of data at a time.
|The 8086 is a register based 16-bit microprocessor which can process 16-bit of data at a time.
|The 8085 microprocessor is an 8-bit accumulator-based microprocessor.
|The 8086 microprocessor is a 16-bit general-purpose register-based microprocessor.
|Data bus size
|The 8085 microprocessor has a data bus of 8-bit size.
|The size of the data bus of the 8086 microprocessor is 16-bit.
|Address bus size
|The size of the address bus of the 8085 microprocessor is 16-bit.
|The size of the address bus of the 8086 microprocessor is 20-bit.
|Maximum Accessible Memory capacity
|The maximum accessible memory capacity of the 8085 microprocessor is 2^16 bytes or 64 kB.
|The 8086 microprocessor has a maximum accessible memory capacity of 2^20 bytes or 1 MB.
|ALU (Arithmetic Logic Unit) size
|The 8085 microprocessor has an 8-bit ALU.
|The 8086 microprocessor has 16-bit ALU.
|The 8085 microprocessor has an on-chip oscillator of 3 MHz.
|The 8086 microprocessor is available in three versions with a clock speed (frequency) of 5 MHz, 8 MHz and 10 MHz.
|Number of transistors
|The 8085 microprocessor consists of 6500 transistors in its structure.
|The 8086 microprocessor consists of 29000 transistors.
|The 8085 microprocessor can perform addition, subtraction, increase, decrease, compare, AND, OR, X-OR, shift and complement. However, it does not support multiplication and division.
|The 8086 microprocessor is able to perform all the operations of the 8085 microprocessor, as well as multiplication and division.
|Number of flags
|The 8085 microprocessor has 5 flags, named carry, auxiliary carry, parity, zero and sign flag.
|The 8086 microprocessor has 9 flags: carry, auxiliary carry, parity, zero, sign, trap, interrupt, direction, and overflow flag.
|Does not support memory segmentation.
|It supports memory segmentation as it is segmented, meaning a 20-bit address bus accesses 1 MB of memory but uses just four 64 kB segments from it.
|Modes of operation
|Supports a single mode of operation.
|Supports two modes of operation: minimum mode and maximum mode.
|The pipelining architecture is not supported by the 8085 microprocessor.
|The 8086 microprocessor supports pipelining architecture.
|8085 is a single-processor configuration microprocessor.
|8086 is a multiprocessor configuration microprocessor.
|8085 microprocessor does not have an instruction queue.
|8086 microprocessor has an instruction queue of 6 bytes, which is stored in the FIFO (First In, First Out) register.
|8085 microprocessor is cheaper.
|8086 microprocessor is relatively more expensive than the 8085 microprocessor
What is a microcontroller?
A microcontroller is a small, low-cost microcomputer on a single VLSI integrated circuit (IC) chip. It controls portions of an electronic system through a microprocessor unit (MOU) and some peripherals. Microcontroller contains processor cores with additional peripherals such as serial interface, time, programmable I/O, and memory on the same chip. It interacts with other components due to its functionality resulting from combining digital memory and a digital processor with additional hardware. A microcontroller is also an Embedded controller, a single-chip-computer, or a computer on a chip.
Check out the example of a microcomputer
Components of a Microcontroller
Microcontrollers consist of the following mentioned components:
- Central Processing Unit (CPU)
- Program Memory (ROM)
- Data Memory (RAM)
- Timers and Counters
- I/O Ports (I/O – Input/Output)
- Serial Communication Interface
- Clock Circuit (Oscillator Circuit)
- Interrupt Mechanism
- CAN (Controlled Area Network)
- SPI (Serial Peripheral Interface)
- I2C (Inter-Integrated Circuit)
- DAC (Digital to Analog Converter)
- ADC (Analog to Digital Converter)
- USB (Universal Serial Bus
Types of Microcontrollers
Let us learn about the different types of microcontrollers based on different parameters.
1. Microcontrollers According to the size
- 8-bit Microcontroller: These are 8-bit microcontrollers that are 1 byte wide long. These microcontrollers use a word size of 8 bits. Such a microcontroller can transfer and process information of 8 bits in a single cycle. Each cycle has a final bit data width range of 0×00 – 0xFF (0-255). These can clock at decently high frequencies in applications that do not require many rapid calculations. Here, internal registers are 8 bits wide, and memory access also reads 8 bits at a time. However, an 8 bits microcontroller may sometimes have a 16-bit address. ‘ATmega328p’ used in the Arduino Uno is an 8/16-bit hybrid microcontroller.
- 16-bit microcontroller: These have more precision and better performance than an 8-bit microcontroller. This is due to their bit data width having a range of 0×0000 – 0xFFFF (0-65535) for each cycle. It is a self-contained system that includes a processor, memory, and peripherals that can be embedded into any system. It allows better management of data and calculations at once. They have a faster clock speed and less power consumption than an 8-bit microcontroller.
- 32-bit microcontroller: These microcontrollers can execute functions with fewer instruction cycles due to their wider data bus. These have more memory and peripherals such as USB, Ethernet Mac, CAN, and SD/MMC that might not be available in 8-bit MCU. These microcontrollers operate at higher frequencies between tens to hundreds of Mhz.
2. Microcontrollers According to Memory Device
- Embedded Memory Microcontroller: Any embedded system with a microcontroller unit that consists of all functional blocks on a chip is known as an embedded microcontroller.
- External Memory Microcontroller: These microcontrollers do not have all functional blocks on a chip.
Similarities between Microprocessor and Microcontroller
Microprocessors and microcontrollers are different types of electronic devices that have a number of differences. However, both have a few similarities as well:
- Both are available as integrated circuits (ICs).
- These are used in different modern electronic equipment to automate processes.
- Both consist of ALU, CPU, registers, address bus, data bus and control bus.
Explore different types of computers.
I hope that you have now learned the basic differences between a microcontroller and a microprocessor. While microprocessors are the controlling unit of a micro-computer that is wrapped within a small chip, microcontrollers are chips that are optimized to control electronic devices. The two differ in their size, functionality and architecture on which they are based. Do visit this article to revise the difference between microprocessor and microcontroller.
Which is better between Microcontroller and microprocessor?
Both differ according to the devices in which they have been embedded. For small applications, microcontrollers are preferred whereas for bigger applications such as industrial controllers, microprocessors are used.
What are the applications of Microprocessors and Microcontrollers?
Microprocessors are often used in personal computers where users require powerful, high-speed processors with versatile capabilities that support a range of computing applications. Microcontrollers are most commonly used in embedded systems applications where devices are expected to execute basic functions reliably and without human interference for extended periods of time.
What are the key differences between Microcontrollers and Microprocessors in terms of cost, speed, and power consumption?
In terms of cost, microcontrollers tend to cost less than microprocessors due to their narrow individual applications and less complexity. In terms of speed, microprocessors have higher clocking speeds up to 4 GHz while microcontrollers can operate with much lower speeds of 200 MHz or less. In terms of power consumption, microcontrollers have low power consumption, making them ideal for applications that require the processor to function for long periods of time without human interference.
What are the functions of a Microprocessor?
A microprocessor performs various tasks including fetching instructions from memory, decoding the instructions, executing the instructions, and storing the results. It handles data manipulation, arithmetic operations, and control operations in a computer system.
How does a Microprocessor work?
A microprocessor works by executing a set of instructions stored in memory. It fetches each instruction, decodes it to determine the operation, executes the operation, and then stores the result. This process is repeated continuously.