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

2023-05-16

概念

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了。

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CPU、MPU、MCU、SOC的概念和区别 的相关文章

  • Ubuntu安装docker及出现问题解决

    Ubuntu安装docker及出现问题解决 文章目录 Ubuntu安装docker及出现问题解决一 安装docker二 解决docker安装成功后 xff0c docker命令无法正常使用的问题 一 安装docker docker的安装可参

随机推荐

  • stl大全

    什么是STL xff1f 大佬 xff1a 为什么C 43 43 比C更受人欢迎呢 xff1f 除了C 43 43 的编译令人感到更舒适 xff0c C 43 43 的标准模板库 xff08 STL xff09 也占了很重要的原因 当你还在
  • input 图片上传

    使用 在vue项目中使用input上传图片给后台时 xff0c 需要对图片文件流和请求头进行一些处理 1 获取上传图片文件流 span class token tag span class token tag span class toke
  • Unix环境高级编程代码(实时更新)

    实例1 3 列出一个目录中所有文件 xff08 ls c xff09 include 34 apue h 34 include lt dirent h gt int main int argc char argv DIR dp struct
  • ROS入门(二):launch文件解析

    ROS入门 xff08 二 xff09 xff1a launch文件解析 文章目录 ROS入门 xff08 二 xff09 xff1a launch文件解析一 launch文件的运行二 launch文件格式1 浏览顺序 xff08 Eval
  • RLException: [**] is neither a launch file in package [**] nor is [**] a launch file name,.......

    按照网上现有对这个问题的解决方法 xff1a 方法1 xff0c 在工作空间下source 方法2 xff1a 对其进行路径添加 这个问题的来源还有一种来源 xff0c 你得确定你在终端运行的这个launch文件名是否写对 xff0c 打开
  • Linux 安装node.js和npm教程

    第一步 xff1a 去node js官网下载安装包 或者直接 wget https nodejs org dist v10 15 0 node v10 15 0 linux x64 tar xz 第二步 xff1a 解压 tar xf no
  • could not establish connection to “hostname”

    解决方案 Try to delete the fingerprint a single line that corresponds to this particular connection not the whole file saved
  • 基于UCOSIII的环境检测项目

    基于UCOSIII的环境检测项目 运用STM32F103C8T6开发板为项目核心板 xff0c 并加入UCOSIII实时操作系统 在操作系统基础上 xff0c 搭配外围传感器实现基于STM32环境检测项目开发 主要运用库函数在操作系统基础上
  • 进程与线程

    进程与线程 讲线程之前要了解 xff1a 进程间的通信 xff08 Inter Process Communication IPC xff1a 理论上 xff0c 进程之间是独立的 xff0c 但实际上往往是多个进程之间的互相配合完成复杂的
  • STM32的八种工作模式

    一 模式介绍 STM32单片机具有高性能 低成本 低功耗的优点 xff0c 与它打交道就必须先了解它的几种工作模式 xff0c 它共有八种IO口模式 xff0c 分别是 xff1a 模拟输入 浮空输入 上拉输入 下拉输入 开漏输出 推挽输出
  • matlab学习笔记

    matlab笔记 上课期间自己整理的一系列matlab相关用法的笔记 xff0c 自认为也并不非常有条理 xff0c 但还是囤放在这里 xff0c 供需要的人查阅 取用 写在前面 help 43 函数名 xff1a 查找某函数的使用方法lo
  • 计算机组成原理——总线

    一 总线概述 1 xff0e 基本概念 xff08 1 xff09 总线简图 每个总线可能由很多根信号线组成 xff08 2 xff09 总线的物理实现 如上图 xff0c 4根信号线组成 一根 总线 xff0c 所有硬件部件都可以通过这根
  • 计算物理学复习笔记(一) 连续随机变量的抽样(直接、变换抽样,三类舍选法)

    文章目录 前言 前置知识一 直接抽样法二 变换抽样法三 舍选法1 第一类舍选法2 第二类舍选法3 第三类舍选法 总结 前言 使用教材 xff1a 马文淦 计算物理学 xff0c 限于篇幅 xff0c 这本书上部分知识写得并不十分详细 xff
  • Keil MDK配置ARM汇编/C语言混合开发环境

    Keil MDK配置ARM开发环境 1 安装Keil MDK 安装方法这里不再说明 xff0c 懂得都懂 xff01 x1f436 2 安装ARM开发包 在Keil MDK5之后 xff0c 不再原生支持ARM7 9 xff0c 需要自行安
  • ESP8266初学(一) 遇问题大全及解决方案(持续更新)

    最近开始学习wifi模块 xff0c 谁知一开始用PC连接调试wifi模块就遇到了很多问题 一 输入指令后没有反应 刚起步就头大 快乐地接好各种接口各种线 xff0c 连上电脑发现它冒蓝光光了 xff0c 好耶 xff01 然后兴致勃勃打开
  • PTA实验题:6-4 派生类的定义和使用 (10 分)

    按要求完成下面的程序 xff1a 1 定义一个Animal类 xff0c 包含一个void类型的无参的speak方法 xff0c 输出 animal language 2 定义一个Cat类 xff0c 公有继承自Animal类 xff0c
  • 模块学习(一)——编码电机

    想实现对电机的测速 xff0c 因此开始接触编码电机 此次采用的是RS365编码器电机 一 编码电机的初步了解 通过编码电机可以测出速度 常见一般编码电机分成两种 xff0c 一是光电编码器 xff0c 另一个是霍尔编码器 有六个接口 xf
  • nuxt如何处理用户登录状态持久化:nuxtServerInit 页面渲染前的store处理

    在一般的vue cli项目中 xff0c 我们可以用vuex persistedstate xff0c 它可以使vuex的状态持久化 xff0c 页面刷新都不会丢失 xff0c 原理当然是localStorage啦 xff01 当然也可以使
  • C语言查找字符

    C语言查找字符 相关文章路径 xff1a C语言求字符串的长度 gt C语言字符串的复制 gt C语言的字符串的联接 gt C语言字符串的比较 gt C语言查找字符 gt C语言BF算法 gt C语言输出字符串 gt C语言输入字符串 C
  • CPU、MPU、MCU、SOC的概念和区别

    概念 1 cpu cpu central processing unit 是一台计算机的运算核心和控制核心 xff0c CPU由运算器 控制器和寄存器以及实现他们联系的数据 控制总线构成 xff0c cpu典型的三级流水线操作是取值 译码