MCU vs MPU
A microcontroller (MCU) puts the CPU, memory and peripherals on one chip and does one job on very little power. A microprocessor (MPU) is mainly a fast CPU: it needs memory and storage beside it on the board, and usually runs a full operating system such as Linux.
What is inside
An MCU is a complete small computer on one chip: a CPU core, Flash for the program, SRAM for data, a clock, and peripherals such as GPIO pins, timers, ADCs and UARTs. Give it power and it runs your code straight from its own Flash.
An MPU, usually sold as an application-processor system-on-chip, has faster cores, caches and high-speed interfaces like USB and Ethernet. Its working memory is not on the chip, though. The board must add DRAM, storage such as eMMC or an SD card, and often a dedicated power-management IC (PMIC).
Why the MMU matters
The biggest software difference comes from the memory management unit (MMU). It gives every process its own virtual address space, which is what operating systems like Linux need. Most MCU cores, such as Arm Cortex-M, have no MMU. Many offer a simpler memory protection unit instead. Confusingly, that is also abbreviated "MPU", but it only fences off memory regions.
Side by side
| MCU | MPU | |
|---|---|---|
| Typical cores | Arm Cortex-M, AVR, RISC-V | Arm Cortex-A, x86 |
| Clock speed | Tens to hundreds of MHz | Hundreds of MHz to several GHz |
| RAM | KB to a few MB, on chip | Hundreds of MB to GB, external |
| Software | Bare metal or an RTOS | Linux, Android or another full OS |
| Boot time | Milliseconds | Seconds |
| Power | µA asleep, mW running | Hundreds of mW to watts |
| Examples | STM32, ATmega328P, RP2040 | BCM2711 (Raspberry Pi 4), NXP i.MX 8 |
Which one to choose
Pick an MCU when the job is focused: read sensors, drive motors, react within microseconds, or run for years on a battery. Pick an MPU when you need what an operating system gives you: a rich graphical interface, full networking stacks, a file system, or lots of memory.
Many products use both. The MPU runs the user interface while an MCU handles real-time control. Some chips, such as the STM32MP1, even combine a Cortex-A and a Cortex-M on one die.