Difference Between Microprocessor and Microcontroller

Difference Between Microprocessor and Microcontroller

Introduction

The terms Microprocessors and Microcontrollers have always been confused with each other. Both of them are designed for real-time application. They share many common features but at the same time, they have significant differences. Before we discuss the difference between Microprocessor and Microcontroller. Let’s define the terms Microprocessor and Microcontroller first.

Table of Contents

What is a Microprocessor?

The microprocessor is an integrated circuit that is made up of millions of transistors. The CPU (Central Processing Unit) is a microprocessor. However, all Microprocessors are not CPUs. The CPU is a chip that functions as the brain of a computer. The microprocessors are the circuitry that surrounds the CPU.  A Microprocessor is more than a CPU, it contains other processors such as graphics processor units, sound cards, and network cards encased in microprocessors. So a CPU is a part of a microprocessor, but a microprocessor is more than the CPU. Small Content Box

History of Microprocessor

The history of Microprocessors begins in 1959, when Fairchild Semiconductors invented the first integrated circuit(IC) Later on Gordon Moore, Andrew Grove, and Robert Noyce started their own company named Intel in 1968. This company grew from a startup to an industrial giant by 1981. In 1971, Intel introduced the first Microprocessor named Intel 4004, with a clock speed of 108KHz. It was a 4-bit microprocessor and this generation was known as the first generation. The development of microprocessors continued over time and in 1973-1978, the second generation microprocessors like Intel 8085 Microprocessor, Motorola 6800 and 6801, and Zilog-Z80 were fabricated. These were 8-bit microprocessors. In 1978, the third-generation microprocessor Intel 8008 came into existence. In the early ’80s and 1995, Intel launched the fourth-generation and fifth-generation microprocessors respectively. These were 32-bit as well as 64-bit microprocessors respectively.

The microprocessor is an integrated circuit that is made up of millions of transistors.Fairchild Semiconductors invented the first integrated circuit(IC).

 Components of Microprocessor

There are three basic parts of microprocessors Memory, CPU, and Bus.

1. CPU

The CPU is fabricated at a very large-scale integrated circuit(VLSI) and it consists of the following components.

i. ALU

It performs the arithmetic, logical, and program sequencing operations.

ii. Instruction Register.

Responsible for holding the instructions to be executed.

iii. Decoder

Decodes the instructions and sends them to the ALU.

iv. Register

It holds the intermediate results obtained during the program processing.

v. BUS

The second part is BUS and it is a connection line used to connect the internal parts of the microprocessor chip. A microprocessor consists of three types of buses such as data bus, address bus, and control bus.

a.Data Bus

It is a bidirectional bus having width equals to word length. It carries data to and from the memory.

b.Address Bus

It is a unidirectional bus that carries the address of a memory location or I/O port from CPU to memory or I/O port.

c.Control Bus

It is also a bidirectional bus that is responsible for controlling the signals like clock signals, interrupt signals, or ready signals.

Memory

The third part of the microprocessor is memory. A microprocessor consists of two types of memory RAM and ROM.

RAM or Random Access Memory is volatile and ROM (Read only Memory ) is non-volatile.

Types of Microprocessor

Microprocessors can be classified into different types on the basis of different criteria. Some of the most common types of microprocessors are given below.

  • CISC(Complex Instruction Set Computer) Microprocessor
  • DSP (Digital Signal Processor)
  • RISC(Reduced Instructions Set Computers) Microprocessor
  • Input/Output Processor (IOP)
  • Bit-Slice Microprocessors (BSM)
  • Graphics Processors
  • Coprocessor
  • Parallel Processing
  • EPIC(Explicitly Parallel Instruction Computing)
  • Vector Processor
  • SIMD Processor/ Array Processor

1. CISC(Complex Instruction Set Computer) Microprocessor

Such types of microprocessors have large set instructions, which makes them suitable for the applications that require complex operations.

2. DSP (Digital Signal Processor)

DSPs are specialised microprocessors designed for high-speed processing of digital signals, such as audio and video. These processors are best suited for the applications that require real time signal processing, such as audio and video compression and decompression,speech recognition and radar system.

3. RISC(Reduced Instructions Set Computers) Microprocessor

This kind of microprocessors have a small set of instructions, which makes them more efficient in terms of processing speed and power consumption. RAM PowrePC Series are the examples of RISC Processors.

4. Input/Output Processor (IOP)

input /output processor is nothing but it is a processor with direct memory access capabilities. It means it has the ability to access the memory directly without the CPU involvement. In this the computer system is divided into two memory units and the number of processors. In each input/output processor it controls and manages I would ask. It can fetch and execute its own instructions.

5. Bit-Slice Microprocessors (BSM)

Bit-slice was a scheme of producing the different parts of a Central Processing Unit as individual chips that could be combined in various ways. This allowed you to build just about any other computer or microprocessor out of bit-slice elements. Bit-slice was realised as the AMD2900 series and the book was written by members of the 2900 design team. It will give you an excellent foundation in the logical workings of a CPU.

6. Graphics Processors

A specialised electronic circuit that is used to enhance image processing and computer graphics is called graphics processor. GPU is a most important type of computing technology that is being used for both personal and business computing. It is used in different applications at large scale including graphics and video rendering.

7. Coprocessors

It is a special kind of processor or special processor  that is used in computers to perform special tasks such as extensive arithmetic calculations or processing of graphical displays.

8. Parallel Processing

Parallel Processing

Parallel processing is a method in which multiple processors are used to speed up the processing is called parallel processing. Such types of processors work simultaneously to complete a program. It divides a task into multiple smaller tasks. Each processor is responsible to complete the smaller task independently at the same time. Parallel processing increases the efficiency and speed of computers. Parallel processing is used in supercomputers for complex applications like weather forecasting etc.

It is divided into two types.

i) Single Instruction Multiple Data(SIMD)

One instruction is applied to a bunch of information or distinct data at a constant time.

ii) Multiple Instruction Multiple Data(MIMD)

MIMD is a technique employed to achieve parallelism. Machines using MIMD have a number of processors that function asynchronously and independently. At any time, different processors may be executing different instructions on different pieces of data.

9. EPIC(Explicitly Parallel Instruction Computing)

By using compilers, it allows instructions to be computed parallely. It also processes the complex instructions in fewer clock frequencies. The instructions are encoded in 128-bit bundles in EPIC processors. In this type of microprocessor each bundle consists of three instructions encoded in 41-bits each and a 5-bit template. The 5-bit template consists of the information about the type of instructions and which type of instruction can be executed in parallel.

10. Vector Processor

As clear from its name, it performs vector operations.It is a kind of CPU(Central Processing Unit) that is designed to perform mathematical operations. Vector processors involve operations on multiple data simultaneously in a single instruction(SIMD) as per Flynn’s taxonomy. Such types of processors can be found in supercomputers as well as in some graphics processing units(GPUs).

11. SIMD Processor/ Array Processor

SIMD stands for Single Instruction Multiple Data. SIMD means a single instruction operates on multiple pieces of data at the same time. Not all instructions in the instruction set need to have this property. For example, MMX was a SIMD extension on x86, and the Pentium that MMX first appeared on was superscalar. Although it had only one SIMD unit. Recent CPUs include multiple SIMD/Vector units.

 Features Of Microprocessor

Microprocessors have different features some of which are given below.

Sr#FeaturesDescription
1Bit SizeThe number and types of interrupts supported.
Example: 8085 has 5 interrupts, 8086 has 2 hardware interrupts and 256 software interrupts.
2Address LinesThe number of address lines indicates the memory addressing capability.
Example: 8085 has 16 address lines, allowing it to address up to 64KB locations.
3Data LinesThe number of data lines, specifying the size of data that can be used.
Example: 8085 has an 8-bit data bus, allowing 8-bit data operations.
4Memory Organization TechniqueDescribe how a processor organizes memory.
Example: 8086 uses segmented memory, dividing the 1MB addressable memory into 16 logical segments with segment and offset addresses.
5Clock FrequencyThe clock speed is measured in hertz(HZ).
Example: 8085 has a clock frequency of 3.072 MHz, while 8086 variants range between 5MHz to 10MHz.
6InterruptsThe number and types of interrupts supported.
Example: 8085 has 5 interrupts, 8086 has 2 hardware interrupts, and 256 software interrupts.
 Features Of Microprocessor

Applications of Microprocessor

Applications of microprocessors can be observed in every field of life. some important uses of microprocessors are explained below with examples.

Sr#ApplicationExamples
1Household DevicesTV, Toaster, Computers, CCTVs, Home Lighting
2Industrial ApplicationAutomatic Assembly Lines, Data Acquisition Systems, CNCs
3Transport IndustryCars, Planes, GPS Systems
4Electronic ApplicationsWashing Machines, Refrigerators, Microwave Ovens
5Medical DevicesPatient Monitoring System, Digital Thermometers
6EntertainmentGaming Consoles, Audio/Video Systems
7Office AutomationPrinters, Scanners, Photocopiers
8CommunicationMobile Phones, Routers, Modems
Applications of Microprocessor

What is a Microcontroller?

It is an integrated circuit that is programmed to do a specific task. Microcontrollers are like mini-computers. Microcontrollers are hidden in tons of appliances, gadgets, and other electronics. It is a self-contained system with peripherals, memory, and a processor that can be used as an embedded system. Most programmable Microcontrollers that are used today are embedded in other consumer products or machinery including phones, peripherals, automobiles, and household appliances for computer systems.

History of Microcontroller

The history of microcontrollers begins in 1970-1971 when Intel was working on inventing the World’s first Microprocessor. Gary Boone of Texas Instruments was working on quite a similar concept and invented the Microcontroller. Boone designed a single integrated circuit chip that could hold nearly all the essential circuits to form a calculator; only the display and the keypad were not incorporated.

TMS1802NC

Surprisingly this exceptional breakthrough in the field of electronics and communication was given the mundane name of TMS1802NC. However, the device was not ordinary. It had 5000 transistors providing 3000 bits of program memory and 128 bits of access memory. so it was possible to program it to perform a range of functions.

First TMS1000 Microcontroller

Gary Boone and Michael Cochran succeeded in creating the first microcontroller, TMS1000. It contained ROM, R/W memory, Processor, and Clock on a single chip. Its key specifications are its clock speed of 0.3 MHz, ROM of 1KB, and RAM of 32 bits.

Intel Microcontrollers

The first Intel’s Microcontroller 8048 was introduced in 9176. Intel also created many significant microcontrollers, besides producing the world’s first ever microprocessor. 4048 microcontroller was used as the processor in the PC Keyboard of IBM(International Business Machine).

8051 Microcontroller

The 8051 Microcontroller was introduced in 1980. It was one of the most popular microcontrollers.it is even used now and considered to be one of the most long lived microcontrollers.

Motorola Microcontrollers

Motorola-Microcontrollers

In 1978, Motorola introduced the 6801 with RAM, ROM and EPROM 6805. In 9185, 6811 Microcontroller was introduced by Motorola having 8-bit CPU, 8K ROM, 256 byte RAM, 512 Byte EEPROM. In 1997, Motorola introduced the 68HC12 which is upward compatible with 6811.

PIC Microcontrollers

PIC-Microcontrollers

PIC is a family of Microcontrollers made by Microchip Technology. The original PIC 1650 was developed by General Instruments. PIC stands for Programmable Interface Controller. Such types of microcontrollers originated from Howard university in 1975. PIC uses Haward architecture and has a reduced instruction set.

Atmel Microcontrollers

Atmel-Microcontrollers

Atmel introduced its first flash microcontroller AT89C51 in 1993, based on the 8051 core. It was a low power , high performance CMOS 8-bit Microcontroller with 4K bytes of flash programmable and erasable read only memory.

Basic Principles of Operation

Microcontrollers are used for specific applications. They do not need to be powerful because most applications only require a clock of a few MHz and small amounts of storage. A microcontroller basically needs to be programmed to be useful. It is only as useful as the code written for it. For example if you wanted to turn on a red light when temperature reaches a certain point, the programmer would have to explicitly specify how that will happen through his code.

Components of Microcontroller

Components of Microcontroller

As we know that a Microcontroller is a mini computer and it is embedded on a single integrated chip. The components of a microcontroller are as follows.Digital input/ output ports, Processor, Timer, Counter, Memory, Analog I/O, Interfaces, Debugging Unit, Interrupt Controller, etc.

Types of Microcontroller

Microcontrollers are divided or classified into various categories based on memory, bits, architecture and instruction sets.

1. Microcontrollers According to the size

  •  8 bits Microcontroller

Used to execute arithmetic and logical operations like addition, subtraction, multiplication and division etc. Examples 8031 and 8051 both are8-bit Microcontrollers.

  • 16 bits Microcontroller

Used to perform arithmetic and logical operations where higher accuracy and performance is required. For example 8096 is a 16-bit microcontroller.

  • 32 bits Microcontroller

Used in automatically controlled appliances like automatic operational machines, medical appliances, etc.

Sr#TypeDescription
18-bit MicrocontrollersThese 8-bit microcontrollers are best suitable for applications with relatively simpler processing requirements.
216-bit Digital Signal Controllers(DSC)These are designed for digital signal processing applications.
316-bit General Purpose MicrocontrollersSuch 16-bit microcontrollers are suitable for a wide range of general purpose embedded applications.
432-bit MicrocontrollersThese 32-bit architecture microcontrollers offer higher processing power and capabilities.
Microcontrollers According to the size

2. Microcontrollers According to Memory Device

  • External Memory Microcontrollers

This type of microcontroller is designed in such a way that they don’t have a program memory on the chip. Examples: Intel 8031 Microcontroller.

  • Embedded Memory Microcontrollers

This type of Microcontroller is designed in such a way that it has all programs and data, counters, timers, I/O ports on the same chip.8051 is the best example of such type of microcontroller.

3. Memory Architecture

  • Harvard Memory Architecture Microcontroller
  • Von Neumann or Princeton Memory Architecture Microcontroller

4. Based on Instruction Sets

  • Complex Instruction Set Computer(CISC)

It allows the user to insert a single instruction as an alternative to many simple instructions.

  • Reduced Instruction Set Computer(RISC)

It reduces the operational time by shortening the clock cycle per instruction.

 Features of Microcontroller

  • Processor Type:
    • Varies based on application: 4-bit, 8-bit, 16-bit, 32-bit, and 64-bit processors
  • Memory Types:
    • Volatile Memory: RAM (Random Access Memory)
    • Non-volatile Memory: Flash Memory
    • Non-volatile Memory: EPROM (Erasable Programmable Read Only Memory)
    • Non-volatile Memory: EEPROM (Electrically Erasable Programmable Read Only Memory)
  • Use Without Additional Components:
    • Microcontrollers can be easily used without additional computing components
  • Onboard Memory:
    • Microcontrollers are designed with onboard memory
  • I/O Operations:
    • Pins available for I/O (Input/Output) operations, enabling direct interaction with sensors and components
  • Architectures:
    • Usually based on Harvard architecture and Von Neumann architecture
  • Data Exchange Methods between Processor and Memory:
    • Both Harvard and Von Neumann architectures offer different methods for data exchange between processor and memory

Applications of Microcontroller

It is a single-chip microcontroller and its applications are as follows.

  • They are used in machine tools, chemical processors, and medical instruments.
  • Microcontrollers are used in many low-cost products like electronic toys, microwave ovens, VCRs, etc.
  • They are also used in home security systems as well.
  • Intelligent  multimeter can also be built by using a microcontroller
  • Personal computers and keyboards are also designed with the help of microcontrollers.

Latest Microcontrollers

Latest Microcontrollers

Today, in addition to general-purpose gadgets, unique microcontrollers are being created for areas like lighting, automotive, communications, and low-power-driven consumer goods. The latest microcontrollers available are Atmel series, AVR, ATX Mega, AT Mega 328P, PIC18F877A, 8051, Arduino, and ARM(Advanced Risc Machine) etc.

Architecture of Microcontroller

Architecture of Microcontroller

Difference Between Microprocessor and Microcontroller

Difference Between Microprocessor and Microcontroller

1. Primary Difference Between Microprocessor and Microcontroller

 Now what is the difference between Microprocessor and  Microcontroller?

Visually if we see any microprocessor and microcontroller there is hardly any difference between them. they almost look very identical, but they are different in many aspects. They are different in terms of the applications they are used,  they are different in terms of the cost. They are different in terms of the processing power which they possess. They are also different in terms of the power consumption.

A microprocessor is designed and developed for general-purpose computing requirements used in desktops, laptops, and notepads. Whereas a microcontroller is designed and developed keeping in mind its limited but specialized purpose. The microprocessor is a programmable multi-purpose silicon ship consisting of an arithmetic logic unit, control unit, instruction decoders, and register array. The microcontroller on the other hand is the heart of the embedded system consisting of all the digital components required to make it a complete computer system. Microprocessors don’t have RAM, ROM, and other peripherals on the chip. Microcontrollers have stringent power consumption requirements as these are used in standalone battery-operated systems whereas microprocessors are designed for new processing power and operate at a greater speed than microcontrollers and power from a wall power supply. From the instruction set design perspective, the microprocessor implies complex instruction set architecture and the microcontroller uses reduced instruction set architecture. Microcontroller is designed based on the Howard architecture and the microprocessor is based on Princeton Architecture. ARM Cortex M and Atmel’s AVR, microchips peripheral interrupt controller are examples of microcontrollers. Intel’s x86 series of processors, Pentium, etc, are examples of general-purpose microprocessors.

Sr#MicroprocessorMicrocontroller
1General PurposeLimited task but specialised purpose
2Desktop, LaptopEmbedded system
3Only CPUCPU & other on-chip components
4Limited task but specialized purposeOptimized for processing power
5High costLow cost
6Processing speed in GHzProcessing speed a few MHz to 100s of MHz
7IS architecture-CISCIS architecture-RISC
8VON Neumann architectureHarvard architecture
9Intel’s x68 & Motorola 68KARM Cortex & Atmel’s AVR
Difference Between Microprocessor and Microcontroller

2. Application Perspective Differences

Application-Perspective-Differences

In terms of applications, the difference between microprocessor and microcontroller can be seen. The classic example is a personal computer or laptop. Using a laptop we can do a lot of stuff, like gaming, web browsing, photo editing, creating documents, mathematical calculations, simulations, or media streaming, etc. so the microprocessor is used in an application where the task is not predefined, and it depends upon the user. Or it is used in an application where intensive processing is required. In the case of a microcontroller, they are used for specific tasks. So based on the inputs which are given to the microcontroller it does some processing and it gives the result as an output. Here the input could be a user input or the inputs that are coming from the sensors. Examples of microcontroller applications are digital cameras, washing machines, and microwave ovens.

3. difference between microprocessor and microcontroller in terms of internal structure

difference-between-microprocessor-and-microcontroller-in-terms-of-internal-structure

As we discussed earlier, microprocessors are used in applications where the task is not predefined. So they can be used for a very light application like creating documents or a very intensive application like gaming or media streaming. So the amount of memory that is required depends upon the application. So if we see the microprocessor chip it only contains the CPU and all the memory elements and the I/O interfaces are connected to it externally. So in the case of a microprocessor, memory elements like RAM, ROM, I/O Ports, Serial interface, and timers all are connected externally. In the case of microcontrollers, as they are used for a specific task, the amount of memory and I/O Ports that are required are limited. In this case, all the memory elements and I/O Ports are integrated along with the CPU inside a single chip. So the size of the overall system is much smaller as compared to the microprocessor, as all the memory elements and I/O ports are connected externally.

4. Differences in terms of Processing Power and Memory

Differences in terms of Processing Power and Memory

Here we discuss the difference between Microprocessor and microcontroller in terms of Processing power and memory. Microprocessors are operated at a much higher speed. So if we see the clock speed of a microprocessor it is in the range of gigahertz(GHz). The clock speed varies from 1GHz to 4GHz for the high-end processors. As the microprocessors have to run an operating system, the amount of memory that is RAM and ROM which is required is quite high. If we see the RAM, which is volatile in the microprocessors, it ranges from 512 MB to up to 32 GB for the high-end microprocessors. Similarly, if we see the ROM in the microprocessors it ranges from 128 GB to up to 2 TB(Tera Byte). The common peripherals interfaces that we see in the microprocessor are USB, high-speed ethernet, and the UART. in the case of the microcontroller clock speed ranges from 1MHz to up to 300MHz, RAM ranges from 2KB to up to 256KB, Flash memory from 32 KB to up to 2MB, and the common peripheral interfaces which we can find inside the microcontroller are I2C, SPI and UART.

5. Differences in terms of Cost and Consumption

5. Differences in terms of Cost and Consumption

Now we go to discuss the differences in terms of cost and consumption. In the case of a microprocessor, as all the memory elements and I/O ports are connected externally, the overall cost of the system as well as power consumption is higher compared to the microcontrollers.