跳转到内容
新建笔记

处理器、微控制器与 SoC:核心、芯片与集成层次

CPU、MPU、MCU 和 SoC 描述的层次并不完全相同。CPU 主要指执行指令的计算核心;MPU、MCU 通常是芯片产品类别;SoC 强调把系统功能集成到一颗芯片。它们不能排成“普通、增强、更高级”的单一等级。

先区分核心、芯片与系统

跳转到“先区分核心、芯片与系统”
名称主要含义常见组成与用途
CPU,中央处理器执行机器指令的处理核心,也常用于称呼包含这些核心的处理器产品算术逻辑单元、寄存器、控制逻辑等;通过存储系统取指、读写数据
MPU,微处理器以处理器能力为中心的芯片类别在嵌入式产品中常配外部主存,可集成缓存、存储控制器、接口和加速器;用于复杂界面、联网或较丰富的软件系统
MCU,微控制器面向控制任务的集成芯片类别通常集成 CPU、片内 RAM、定时器、中断控制器和多种外设;程序存储可在片内,也可能依赖外部器件
SoC,系统级芯片系统功能的片上集成方式可包含一个或多个 CPU 核心、总线、存储控制器、外设、GPU 或其他专用单元;具体组合取决于目标应用

CPU 的“取指、译码、执行、写回”可以帮助理解指令处理流程,但并不是所有 CPU 都采用恰好四级流水线。实际实现可能使用更多或更少阶段、乱序执行或其他结构。

CPU 核心必须与存储和其他部件协同,但这些部件不一定在芯片外。处理器内部的寄存器、缓存或片内 RAM,与板上的外部内存也不是同一种层次。

微处理器的应用也包括个人电脑和服务器;嵌入式 MPU 是其中一类常见产品取向。手机、平板则常使用集成 CPU、GPU、音频处理及通信接口等功能的 SoC。音频、网络功能可以部分集成在芯片中,也可能依赖外部器件,具体取决于型号;这些是应用和组成例子,不能当作分类的必要条件。

微控制器常用于传感器采集、电机控制、家电控制和低功耗终端,可运行裸机程序或实时操作系统。微处理器常用于需要较大内存、图形界面、文件系统或 Linux 等软件环境的设备。这里描述的是常见取向,不能据此断言“MCU 不能运行操作系统”或“MPU 没有任何存储与外设”。ST 的 MCU/MPU 概览也把它们作为不同应用取向的产品系列介绍。

选择时应检查实际芯片的内存容量与位置、是否提供所需的内存管理能力、外设连接、功耗、启动方式和软件支持。主频、核心数量或有没有片内 Flash 中的任何一项,都不足以单独定义全部 MCU/MPU 产品。例如 ST 的 STM32N6 入门应用说明明确将它称为不含片内 Flash 的微控制器。

另外,文档中的 MPU 也可能指 Memory Protection Unit,内存保护单元,例如 Arm CMSIS 的 MPU 接口。如果上下文在讨论区域权限、访问保护或处理器寄存器,就不能把它读成这里的 Microprocessor Unit。

SoC 可以同时包含不同计算单元

跳转到“SoC 可以同时包含不同计算单元”

SoC 强调集成,不表示一定比 MCU 或 MPU 更强,也不保证无需外部 RAM、电源或其他外围器件。它与 MCU/MPU 的用法可能重叠。

例如,AMD 的 Zynq SoC 系列在一个器件中组合处理器系统和可编程逻辑。因此“有 CPU”和“有 FPGA 逻辑”并不互斥。

名称与前面概念的关系
DSP,数字信号处理器侧重信号运算的可编程处理器类别,常具有适于乘加、数据流或实时处理的指令与结构;可作为独立器件或集成计算核心
FPGA,现场可编程门阵列通过配置逻辑资源与互连实现数字电路;并非天然就是按固定指令集执行程序的 CPU,但可实现软核 CPU,也可与硬核处理器集成
GPU,图形处理器起源于图形处理的并行计算单元;可集成到 SoC,或作为独立处理器使用

FPGA 内部被称作 DSP 的乘加硬件块,与独立的 DSP 处理器不是同一概念。最终应看结构图、指令集、存储接口和资源说明,而不是只看缩写。