1 CPUCPU(中央处理器)是一台计算机的运算核心和控制核心。它由CPU运算器、控制器和寄存器以及数据、控制和状态总线组成。它的主要功能是解释计算机指令和处理计算机软件中的数据。计算机的可编程性主要是指CPU的编程。
20世纪70年代以前,CPU是由几个独立的单元组成的,后来发展出集成电路制成的CPU。这些高度收缩的部件被称为微处理器,其中分离的CPU的最复杂的电路可以被制成单个微小而强大的单元,这被称为核心。几乎所有CPU的工作原理都可以分为四个阶段:取指、解码、执行和写回。CPU从内存或高速缓存中取出指令,放入指令寄存器,解码并执行指令。所谓计算机的可编程性,主要是指CPU的编程。
2 MPU(微处理器单元),称为微处理器,是一种可编程专用集成电路。MPU只是一个处理器,需要大量的内存等其他外设组成一个系统。MCU内部有处理器、内存、Flash等模块,只需要几个外设就可以组成一个系统。
在80年代非常流行,当时的微机和游戏机都用MPU。例如,摩托罗拉 68000芯片是一款主流的MPU。下图是一张阿尔法Micro AM-1000系列微电脑电路板,电路板右侧中间最大的芯片是MPU 68000。
后来MPU逐渐没落。可以认为MPU发现只剩下intel和AMD x86系列CPU了。这种CPU越来越复杂,叫它微处理器。在个人电脑领域,你可以看到如下图这样的主板。CPU、内存、声卡等等插在主板上就组成了一台电脑。整个主板体积庞大,制造复杂。
3 MCUMCU(微控制单元),称为微控制器,是指集成了CPU、存储器、定时器/计数器、各种输入输出接口等的微型计算机。在集成电路芯片上随着大规模集成电路的出现和发展,形成了芯片级芯片。与个人电脑中使用的通用微处理器相比,它强调自给自足(无需外部硬件)和节约成本。它最大的优点是体积小,可以放在仪器内部,但存储容量小,输入输出接口简单,功能低。
单片机的发展经历了8位8051单片机、16位AVR单片机、32位STM单片机。
MCU集成了处理器和各种模块,如USB控制器、UART控制器、存储器、Flash等。建立一个电子系统只需要一些外部设备。
4 SoC片上系统(System on a Chip)或System on a Chip(英文:System on a Chip,缩写:SoC)是将计算机或其他电子系统集成到单个芯片上的集成电路。单芯片系统可以处理数字信号、模拟信号、混合信号甚至更高频率的信号。单片系统常用于嵌入式系统。单片系统的集成规模非常大,一般达到几百万到几千万门。
SoC可以基于MCU或MPU,并将提供执行某些类型的应用所需的一切。例如,对于图像处理,SoC可以具有MPU、数字信号处理器(DSP)和/或图形处理单元(GPU)的组合,用于执行快速算法计算,以及驱动显示器和HDMI或其他音频/文章输入/输出技术。SoC可以在单片微型集成电路上实现整个芯片系统。
5 MPU和MCU的区别微控制器(MCU)往往比微处理器(MPU)更便宜,设置更简单,操作更简单。MCU可以看作是一个单片机,集成了ROM,RAM等。在芯片内部,而MPU有支持各种功能(如存储器、接口、I/O)的外设芯片,可以任意更换不同厂商的同类型外设。微控制器和微处理器的一个重要区别是微处理器通常运行操作系统。操作系统允许多个进程通过多个线程同时运行。需要驱动程序来支持外围设备。
MCU将运行裸机接口,表示没有操作系统。没有操作系统,MCU一次只能运行一个控制回路。从软件的角度来看,这意味着单个线程在微控制器的处理器或中央处理器(CPU)上运行。
MCU只有与外界交互的基本选项。MCU可能具有I2C、SPI、UART(串行)以及有时低级USB连接。这些基本接口通常只用于MCU编程。MCU的目的是永远运行一个相当简单的控制循环,或者直到它被中断或停止。MCU往往比MPU便宜。MCU无线通信不是不可以,但是请记住MCU一次只能运行一个线程。要得到服务,任何其他输入或进程都必须等待单个线程或控制循环完成它首先执行的操作。除了I2C、SPI或UART等基本接口外,微处理器通常还有许多接口。MPU也可能有更复杂的接口,比如以太网、蓝牙、WiFi、闪存等。
判断一个设备是MCU还是MPU越来越难,因为现在的MCU可以做很多事情,包括更复杂的外围设备。MCU和MPU的区别就变得不那么明显了,因为现在有些MCU对于更复杂的外设有简单的软件驱动,可以找到更多片上集成外设的MPU。
标签:MPUMCUCPU