All about CPUs: Microprocessor, Microcontroller and Single Board Computer
Ever heard of CPUs? Then you must have come across these terms: Microprocessor (MPU), Microcontroller (MCU) as well as Single Board Computer (SBC). But do you know, they’re actually very different yet similar in a way! Confused? No fret! Today, we will examine each of their differences and uses in our day-to-day life!
Before we hop right into each of them, let’s talk briefly about CPU, since this is where all the processors begin!
What is the CPU?
To put simply, CPU is the core component in a computing unit, which is responsible for processing and executing instructions. It runs the operating system and applications, constantly receiving input from the user or active software programs.
Now that you understand more about CPU, lets’ look at Microprocessor (MPU), Microcontroller (MCU) and Single Board Computer (SBC) in detail!
What is a Microprocessor (MPU)?
The Microprocessor (MPU) is also known as Micro Processing Unit, it is the central unit of a computer system that performs arithmetic and logic operations. It also incorporates the function of a CPU on an integrated circuit.
How does MPU work?
MPU basically accepts binary data as the input, processes the data according to instructions stored in its memory, and provides results (also in binary form) as output.
To understand how it works better, you can refer to a basic block diagram below:
As you can see, a microprocessor consists of an ALU, control unit and register array, Memory Unit:
- ALU (Arithmetic and Logical Unit): Performs arithmetic and logical operations on the data received from an input device or memory
- Control unit: Controls the instructions and flow of data within the computer
- Register array: includes registers identified by letters and accumulator
- Memory Unit: Stores data
Basic Terms to note
- Bus: Describe the set of conductors that transmit data or that address or control information to the microprocessor’s different elements. (MPU usually has 3 types: data bus, the address bus, and control bus.)
- Clock Speed: Normally measured in Hertz and expressed in measurements like MHz (megahertz) and GHz (gigahertz), refers to the speed at which a microprocessor could execute instructions.
- Instruction Set: A series of commands that a microprocessor can understand, basically the interface between hardware and software.
- Word Length: The number of bits in the processor’s internal data bus, an 8-bit MPU can process 8-bit data at one time.
- Cache Memory: It stores data or instructions that the software or program frequently references during operation, increases overall speed as it allows the processor to access data more quickly.
Categories of MPU
Reduced Instruction Set Computer (RISC)
- Generally utilised
- Fewer instructions
- Simpler circuits
- Operates faster
- More registers
- Uses more RAM
- Uses a fixed number of clock cycles
Complex Instruction Set Computer (CISC)
- The direct opposite of RISC
- Reduce the number of instructions
- Complex instructions
- Operates slower
- Uses little RAM
- Fewer registers
- Numerous clock cycles
Popular MPUs
- Intel
- AMD
Applications of MPU
- Automobile
- Credit card processing unit
- Security systems
- Household devices
What is a Microcontroller (MCU)?
The microcontroller is also known as Microcontroller unit, it is an integrated circuit (IC) device used for controlling other portions of an electronic system, usually via a microprocessor unit (MPU), memory, and some peripherals.
How does MCU work?
They basically take inputs from the device they controlling and retain control by sending the device signals to different parts of the device, usually run on one specific program and are dedicated to a single task. Thus, they’re comparably weaker than MPU.
Similarly, here’s a block diagram of MCU to help you understand better:
As you can see, a microcontroller typically consists of CPU, Memory (RAM and ROM), Timer, I/O port, Serial Ports, Interrupt control:
- CPU: Brain of the MCU, responsible for fetching the instruction, decodes it, then execute it.
- Memory: Similar to how it functions in MPU, used to store data and program. But in MCU, there are RAM and ROM or flash memories for storing program source codes.
- Timer: Provides all timing and counting functions inside the microcontroller. It is used to perform clock functions, modulations etc.
- I/O port: It allows you to drive/interface various devices such as LCD’S, LED’S, printers, memories, etc to a microcontroller.
- Serial Ports: Provides various serial interfaces between a microcontroller and other peripherals like parallel ports.
- Interrupt control: Provides interrupt (delay) for a working program, it could occur internally or externally.
Types of MCUs
- 8-bit: The most cost-effective and commonly used by many
- 16-bit
- 32-bit
Popular MCUs
- ATMega328
- ESP32
Applications of MCU
- Communication systems
- Robotics field
- The peripheral controller in PC
- Biomedical instruments
- IoT
What is a Single Board Computer (SBC)?
Single Board Computers are small computing devices that have all of the elements of a complete computer contained within one single circuit board. It is a low cost, self-contained, simple that could be easily connected to other hardware.
How does SBC work?
SBCs uses a System-on-Chip (SoC), which integrates all or most components of a computer or other electronic system. It works exactly like how an MPU does but even more, such as signal processing, wireless communication, artificial intelligence etc., on top of transmitting data.
Just like the block diagram shown in the previous 2 sections, here’s an SBC block diagram to help you visualize better:
As you can tell from the block diagram, an SBC looks like a combination of both MPU and MCU but with a lot more functions:
- CPU/SoC: Brain of the SBC, responsible for fetching the instruction, decodes it, then execute it.
- Memory: Similar to how it functions in MPU and MCU, used to store data and program. However, unlike the previous 2, there are RAM and ROM or flash memories for storing program source codes.
- Clock/Timer: Provides all timing and counting functions inside the microcontroller. It is used to perform clock functions, modulations etc.
- I/O port: It allows you to drive/interface various devices such as LCD’S, LED’S, printers, memories, etc to a microcontroller.
- Serial Ports: Provides various serial interfaces between a microcontroller and other peripherals like parallel ports.
- ADC/DAC: Analog to Digital Converter (ADC), which converts the analog signal into the digital signal. Digital to Analog Converter (DAC) and it converts the Digital signal into an analog signal.
- Wireless Connectivity: Consists of Bluetooth and WiFi
Popular SBCs:
- Raspberry Pi
- NVIDIA
- Rock Pi
Applications of SBCs
- Programming
- Embedded Applications
- Backplane
- Robotics
- Home automation
Comparison between Microprocessor, Microcontroller and Single Board Computer
Microprocessor (MPU) | Microcontroller (MCU) | Single Board Computer (SBC) |
The heart of a computer system | The heart of an embedded system | Microcomputer |
Memory and I/O components has to be connected externally | Has an external component with an internal memory and I/O components | Has an external component with an internal memory and I/O components |
Unable to use in compact systems | Able to use in compact system | Able to use in compact system |
Cost of the system is higher | Cost of the system is lower | Cost of the system is lower |
Since memory and I/O components are external, each instruction goes through the external operation. Thus it’s slower. | Components are internal, where the operation takes place internally, thus it’s faster | Components are internal, where the operation takes place internally, thus it’s faster |
Widely used in PC and laptops, big control systems | Widely used in small control systems | Widely used in programming and small control systems |
Summary
And that’s all on Microprocessor (MPU), Microcontroller (MCU) as well as Single Board Computer (SBC)! Did you learn something new? Able to differentiate them now? Hope that this article could help you choose the right processors for your projects.
If this article is up to your alley, check out the related readings to learn more!
Suggested Readings
Raspberry Pi Related
Overview of Computer Ports: Types, Functions and Comparison – Learn about SBC ports and Raspberry Pi’s background!
Analog-to Digital Converter (ADC): Reading Raspberry Pi Analog – Interested to use ADC with Raspberry Pi? Check out this article to find out!
New Raspberry Pi Compute Module 4 (CM4) released from $25 and up – Learn more about the newest Raspberry Pi Compute Module 4!
Raspberry Pi Alternatives: 16 Best Single Board Computers in 2020 – Interested in getting an SBC that isn’t Raspberry Pi? Check out this article for recommendations!
Arduino Related
How does Arduino work with Ultrasonic Sensor? – Learn about what interesting projects you can do using Arduino and ultrasonic sensor!
Best Arduino Boards and Microcontrollers (MCUs) for IoT and Wearables – Interested in getting an Arduino or MCU? Check out this article to help you with that!