CPU、MPU、MCU、SOC的概念和区别

概念

1、cpu

cpu(central processing unit)是一台计算机的运算核心和控制核心,CPU由运算器、控制器和寄存器以及实现他们联系的数据、控制总线构成,cpu典型的三级流水线操作是取值、译码、执行,差不多所有CPU的执行原理可以分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback),CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码,并执行指令,所谓的计算机的可编程性主要指对CPU的编程。

2、mpu

mpu(micro processor unit),叫微处理器,与微控制器(mcu)不同,通常可以看做一个功能强大的cpu,这种芯片一般用于个人计算机或高端工作站的核心CPU,例如intel的X86,ARM的一些Cortex-A,飞思卡尔的i.MX6、全志A20、TI AM335X等都属于MPU。

3、mcu

mcu(micro control unit),叫微控制器,即平常所说的单片机,随着大规模集成电路的发展,将计算机CPU、RAM、ROM、定时器、计数器和多种I/O接口集成在一片芯片上,形成芯片级的芯片,比如51,STM,Cortex-M这些芯片,相当于内部集成了整个计算机系统,可以加一些简单的外围器件(电阻、电容等)即可运行代码,其有处理器,有外围接口,基于已有的系统架构进行开发,应用者主要工作是添加外围设备和开发软件程序,而像ARM(Cortex-A系列,前文已经说明此为mpu)直接放代码运行不了,因为本质上是cpu,必须添加响应RAM或ROM才能运行代码。

4、soc

soc(system on chip),叫片上系统,MCU只是芯片级的芯片,而SOC是系统级芯片,它既包含了mcu中的内置RAM、ROM等资源,也拥有mpu的强大功能,可以放系统级的代码,也就是说可以运行操作系统。

5、sopc

sopc(system on a programmable chip),叫可编程片上系统,它可更改硬件配置,即自己构造芯片。

区别:

1、mcu和mpu的区别

mcu在一块芯片中集成了整个计算机系统,可以直接加简单的外围器件运行代码,本质上是一个完整的单片机,有处理器、有各种接口,所有开发基于已经存在的系统架构,应用者只需添加外围设备和开发软件程序。

mpu是增强版的cpu,直接放代码是运行不了的。

2、cpu和soc的区别

soc可以认为是将mcu集成化和mpu强处理能力优点二合一,其中mcu是cpu集成了各种外设,mpu是增强版的cpu。

cpu通过总线连接各种外设,mcu通过芯片内部总线连接芯片外设接口。目前大多数芯片都属于soc,没有纯粹的cpu了。

说明:本文是摘抄的网上相关说明介绍,如有疑问可私信交流。

你可能感兴趣的:(mcu,单片机,嵌入式硬件)