车载开发之MCU与MPU的区别

MCU与MPU

  • 概述
  • 不同点
    • CPU架构
    • 命令集

概述

两者都是配备CPU(Central Processing Unit)进行运算处理的半导体器件(在本文中统称为微型计算机)。
通常,MCU(微控制器单元)是通用的,而面向多机能和高性能时则采用MPU(微处理器单元)。

不同点

项目 MCU MPU
运算bit数 主流8~32bit 最低32bit,主流64bit
工作频率 数兆到数百兆赫 主流是从几百兆赫到几千兆赫
架构 流水线系统或随机逻辑系统是主流(但有些是超级标量的) 超级标量方式是主流
内存管理 可以有些外置内存,但主内存是内置的,有些内置缓存和MMC单元 外部内存是主流,有些内置缓存和MMC单元
命令集 基本算术运算,仅逻辑运算 除了基本算术运算、逻辑运算之外,还包括DSP指令和浮动少数点指令
价格
例子 ARM Cortex-M,(针对小面积/低功率控制器应用而开发的) ARM Cortex-A,(是以面向高性能应用程序的处理器为理念开发的)

CPU架构

架构有RISC或CISC的不同之处,但MCU的内部配置主要采用管道或随机逻辑方案。MPU主要采用超级标量。

CISC、RISC是指指令集架构的设计方法。更简单地说,它代表了命令方式的不同。CISC是Complex Instruction Set Computer,RISC是Reduce Instruction Set Computer的缩写。CISC可以翻译为“复杂指令集计算机”,RISC可以翻译为“缩小指令集计算机”。复杂指令是指一个指令执行一系列复杂处理的方式。CISC是一种通过尽可能少的指令来完成各种处理来提高微型计算机性能的计算方法。相反,缩小命令是一个命令只进行简单处理的命令。但是,每一个简单的命令,一个一个的命令将被快速执行。RISC是一种通过快速执行多个缩小指令来提高微型计算机的总性能的计算方法。CISC和RISC有各自的优点和缺点,最好根据用途/目的进行选择。

命令集

MCU的指令集是一般四则运算和逻辑运算的主要运算指令,而MPU还增加了浮点运算和DSP运算。通过浮点运算和DSP运算,可以在短时间内处理工程上多位数的运算和复杂的积和运算等。但是,相应地,内部的硬件就会变得复杂。

如果MCU的指令集不支持浮点运算、DSP运算,则不会发生这种情况,其中也有支持浮点运算、DSP运算的MCU。例如,ARM公司的Cortex-M4和Cortex-M7系列既支持浮点运算,也支持DSP运算,Cortex-M7支持双精度浮点运算。

浮点运算在软件中也是可行的,但如果安装了专用硬件浮点运算单元(FPU),则可以进行高速处理。FPU允许您无限处理“实数”(C语言float类型),从而支持高级应用程序。例如,在汽车领域,动力传动系统、ABS、牵引控制等。它还用于数码家电、游戏等3D图像处理、激光打印机、数码相机等图像处理。在工业设备领域用于电源控制等。

DSP(数字信号处理器)是专为在短时间内执行大量复杂操作的应用而设计的计算器。具体应用包括语音处理、图像处理、信号调制/解调、快速傅立叶变换和数字滤波器。微型计算机也有可以进行高速处理的产品,但毕竟是通用产品,所以如果想高速处理复杂的运算,DSP就很方便了。

你可能感兴趣的:(车载,嵌入式,嵌入式,自动驾驶)