16

Possible Duplicate:
What’s the difference between a microcontroller and a microprocessor?

Please inform me of the difference, if any.

Niklas Rosencrantz
  • 1,694
  • 6
  • 33
  • 62
  • 3
    Nick, when you start typing the title of a new question you get a list of questions with similar titles. Please read them. The question I linked to as duplicate was the first in the list when I typed the title of your question. – stevenvh Oct 16 '12 at 09:53
  • @stevenvh this question appears different to me? He's not mentioning microcontrollers anywhere. – exscape Oct 16 '12 at 09:56
  • 2
    @exscape - In the answers to that question there's a couple of times mentioned that a microprocessor is just a CPU. – stevenvh Oct 16 '12 at 10:03
  • 1
    Thank you, I understand. I thought microcontroller had nothing to do with it, but it is answered there. – Niklas Rosencrantz Oct 16 '12 at 10:35
  • I think it's not duplicate. The fact that some answers of a question1 include some answers to question2 does not mean the question2 is a duplicate of question1. – starriet Mar 04 '22 at 03:35

2 Answers2

22

Do read the question (and answers) stevenh linked to, but your question is somewhat different.

A Central Procession Unit (CPU) is the part of a computer that sequences and executes instructions. Other parts in the traditional computer architecture are the memory and the I/O.

enter image description here

In the stone age days of computers a mainframe's CPU's occupied multiple cabinets. Later a minicomputer's CPU occupied one or a few PCBs. The next step was to integrate a CPU on a single chip. That is what we call a microprocessor (uP).

From there the development forks:

  • the CPU-on-a-chip is made more powerfull (faster, parallel execution, fast execution of complex instructions like divide and transcendentals), a cache is added, more CPU's are combined in one chip, etc. This results in the (mainly Intel) super-microprocessors of today.
  • a moderately powerfull CPU (more powerfull than those in a uC, but less than those in a desktop CPU) is combined with a small boot ROM and a set of complex peripherals, like a video/lcd subsystem, mpeg decoder, wired or wireless ethernet interface, USB intefaces, etc. to cerate a 'system-on-a-chip'. These chips form the hart of modern set-top boxes and the small Linux systems (Beaglebone, Raspberry Pi, etc.) derived from them.
  • The CPU is combined with memory and I/O on the same chip, creating a complete computer on a single chip. This is called a microcontroller (uC).
Wouter van Ooijen
  • 48,407
  • 1
  • 63
  • 136
  • 1
    Upvoted for saying the same as myself, but in greater detail. – colincameron Oct 16 '12 at 10:10
  • 1
    Where does System-on-a-chip fits in all these? I guess it's further development for the second type? – Lie Ryan Oct 16 '12 at 13:53
  • 1
    No taxonomy is perfect, reality always has its way. I would classify the typical System-on-a-chip with the first category, because it can not run without external RAM and ROM. But feel free to defined a third category. – Wouter van Ooijen Oct 16 '12 at 14:24
  • 1
    I added a 3d category :) – Wouter van Ooijen Sep 05 '15 at 10:07
  • So in summary, a microprocessor is a CPU integrated on a single chip? I.e. the CPU is a microprocessor if it is integrated on a single chip? – Sebastian Nielsen Feb 05 '21 at 16:36
  • The CPU is a microprocessor if it is integrated on a single chip, and there are no other things on that chip that would make it a full computer (in which case it would be a micro-controller). – Wouter van Ooijen Feb 06 '21 at 09:59
  • Great answer. Maybe we can add some examples of using microcontrollers such as Arduino. (Adding Raspberry Pi as an example was very informative I think) – starriet Mar 04 '22 at 04:04
  • You realise the Arduino is none of the above? It is an IDE and a library, targeting a wide range of hardware boards, some of which are also called Arduino. If you refer to the Arduino Uno, that is a board (PCB) with a specific micro-controller. – Wouter van Ooijen Mar 05 '22 at 13:29
  • What is exactly a chip? Is the motherboard a chip for example? – TornaxO7 Jan 04 '23 at 00:08
21

A CPU (central processing unit) is the part of a computer that executes instructions. This can be implemented using a single IC, a number of ICs, discrete transistors or a room full of vacuum tubes.

A microprocessor is a single-chip implementation of a CPU.

Nowadays pretty much all CPUs for general use are microprocessors, causing the two terms to be practically synonymous.

colincameron
  • 518
  • 4
  • 13
  • Is it "fair" to view microprocessor as a sort of umbrellaterm encompassing CPUs, GPUs, procecssors that specialy in accelerating machine learning algorithms, etc. ..? [I have read this article.](https://searchservervirtualization.techtarget.com/tip/CPU-vs-microprocessor-What-are-the-differences#:~:text=Many%20admins%20use%20CPU%20and,not%20all%20microprocessors%20are%20CPUs.) – Sebastian Nielsen Feb 05 '21 at 16:29
  • So the reason why *"almost all CPUs are microprocessors"* is because almost all CPUs are integrated on a single chip? – Sebastian Nielsen Feb 05 '21 at 16:40
  • IC = Integrated Circuit. For anyone who didn't know. – gignu May 30 '21 at 08:20
  • What about things like Network processing Unit (NPU) , Audio Processing UNIT (APU) and Graphic Processing UNIT (GPU) ? – quantum231 Aug 07 '21 at 15:14
  • Simple, but an exact explanation. – starriet Mar 04 '22 at 04:01