Microcontroller X Microprocessor

Smart Comparison Table —Quick Table — Episode # 92

J3
Jungletronics
4 min readFeb 24, 2020

--

Hi, you might be asking:

Fig 1. µProcessor x µController

Who said it? Take our revealing table:

Fig 2. Table Based on Tom Crosley Article: https://www.quora.com/Why-is-a-microprocessor-considered-more-powerful-than-a-microcontroller; Please, Download .pdf from this link :)

Microprocessors, like Qualcomm Snapdragon, used in mobile phones, are an integrated circuit that contains all the functions of a central processing unit of a computer.

Fig 3. Example of µProcessor: Scorpion processors Qualcomm QSD8250

A microprocessor is faster than a microcontroller, but it is bulky, and they serve different purposes (see More Often Used item in the table above).

The microprocessor includes the CPUs used in desktop computers, laptops, tablets, and cell phones and even boards like the Raspberry Pi that runs Linux.

Once a program is developed by a person, it must be written into memory before a microprocessor can execute it. They run programs out of dynamic RAM (often several GBs) which is external to the CPU.

Programs in microprocessor systems, like Windows or Linux, are loaded off of an external device like a hard drive or SSD and run in the RAM.

For example, the liquid-cooled Intel Core i7–7700K processor in a desktop PC runs at 4.2 GHz and has 32 GB of RAM; the Broadcom BCM2837 in Raspberry Pi runs at 1.2 GHz and has 1 GB of RAM.

Because of the need to interface with GB’s of external memory with a 64-bit data path, newer microprocessors can have over 1000 pins.

Fig 4. Block Diagram of a Basic Microcomputer — From https://slideplayer.com/

Microcontrollers, like Arduino’s AVR Atmega328p chip, generally run just one program as long as they are powered. That program is programmed onto the controller from a personal computer using a dedicated hardware programming device (or via USB bootloader, in the Arduino’s case). It generally runs their programs out of Flash memory (from less than a KB on an 8-bit µC to a couple of MBs for a 32-bit one), and have RAM starting at a few bytes for an 8-bitter up to 640 KB or so for a 32-bit µC. Both the Flash and RAM memory are located in the same chip as the CPU.

Fig 5. Example of µController: Atmega328p (Arduino chip)

Microcontrollers are used in applications that require low cost and chip count, combining on a single chip a CPU, a ROM, a RAM, and various peripherals functions and I/O Interfaces. Few of them might have an external address/data bus interface (called EBI — external bus interface), but it is often limited to 128 MB or so. For example, the PIC32MZ DA series can access 128 MB of DDR RAM. But this is much less than required for most systems using a microprocessor 8-bit µCs may run at only 4 to 20 MHz; the 32-bit ones anywhere from 100 to 300 MHz, less than 1/10 the speed of the faster microprocessors.

Microcontrollers without an external memory interface (the vast majority) don’t need external data or address buses. They only need power, ground, and I/O pins to tie to the peripherals inside the chip. Some can have as few as half-dozen pins.

Most have somewhere between 28 pins and 100 or so.

The advantages of Microcontroller are as follows:

It is a special type of processor which is somewhat flexible so the program will run fastly. It has a fast response speed because of the integrated components inside the processor. It takes a small time for performing tasks.

Microcontrollers are more often used for embedded systems that have a specific task, such as a small or large appliance; automobile cruise control; intelligent thermostat; TV or cable/satellite set-top box, etc.

And That’s all for now :)

If you have questions about this topic, please let me now.

This post is heavily based on Tom Crosley’s article; He is an Embedded systems programmer for over 40 years. Thank you for this hard work, man!

Download All Files for This Project

Credits & References

Why is a microprocessor considered more powerful than a microcontroller?

fig 6. Tom Crosley, Embedded systems programmer for over 40 years — Thank you, man!

--

--

J3
Jungletronics

😎 Gilberto Oliveira Jr | 🖥️ Computer Engineer | 🐍 Python | 🧩 C | 💎 Rails | 🤖 AI & IoT | ✍️