芯片相关名词

CPU、GPU、MPU、NPU、TPU等概念

CPU

中央处理器(CPU,Central Processing Unit),是电子计算机的主要设备之一,电脑中的核心配件。其功能主要是解释计算机指令以及处理计算机软件中的数据。电脑中所有操作都由 CPU 负责读取指令,对指令译码并执行指令的核心部件。

CPU 的结构主要包括运算器(ALU, Arithmetic and Logic Unit)、控制单元(CU, Control Unit)、寄存器(Register)、高速缓存器(Cache)和它们之间通讯的数据、控制及状态的总线。

MPU

MPU (Micro Processor Unit)微处理器,微机中的中央处理器(CPU)称为微处理器(MPU),是构成微机的核心部件,也可以说是微机的心脏。它起到控制整个微型计算机工作的作用,产生控制信号对相应的部件进行控制,并执行相应的操作。

GPU(Graphics Processing Unit)

GPU 即图形处理器,就如它的名字一样,GPU 最初是用在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上运行绘图运算工作的微处理器。GPU 无法单独工作,必须由 CPU 进行控制调用才能工作。CPU 可单独作用,处理复杂的逻辑运算和不同的数据类型,当需要大量的处理类型统一的数据时,则可调用 GPU 进行并行计算。

TPU(Tensor Processing Unit)

张量处理单元(TPU)是一种定制化的 ASIC 芯片,它由谷歌从头设计,并专门用于机器学习工作负载。

NPU(Neural network Processing Unit)

所谓 NPU 即神经网络处理器。用电路模拟人类的神经元和突触结构。NPU 的典型代表有国内的寒武纪芯片。

MCU、DSP、SOC、FPGA、ARM等概念

MCU(Micro Control Unit)

MCU 本质为一片单片机,指将计算机的 CPU、RAM、ROM、定时计数器和多种 I/O 接口集成在一片芯片上,形成的芯片级的计算机。

MCU 大都在结构上是基于冯·诺伊曼结构的,这种结构清楚地定义了嵌入式系统所必需的四个基本部分:一个中央处理器核心,程序存储器(只读存储器或者闪存)、数据存储器(随机存储器)、一个或者更多的定时/计数器,还有用来与外围设备以及扩展资源进行通信的输入/输出端口——所有这些都被集成在单个集成电路芯片上。指令集上早期的 MCU 是采用 CISC 的,后面被 RISC 取代。在总线位数上,MCU 覆盖了 4 位、8 位、16 位、32 位,应用十分广泛。

MCU 面世时间最长,各种厂商都有它们自己的架构与指令集,功耗一般较低,主频一般为 MHz, 入门最容易,上手也快,开发难度较小,并且它的成本低,在低端市场应用最为广泛。

DSP(Digital Signal Processing)

DSP 即数字信号处理,简称 DSP。DSP 是用数值计算的方式对信号进行加工的理论和技术。另外 DSP 也是 Digital Signal Processor 的简称,即数字信号处理器,它是一种专用于实时的数字信号处理的微处理器。结构上它采用哈佛结构,同样采用流水线技术。此外,DSP 被用于宿主环境时可作为直接内存存取设备运作,还支持从模拟数字转换器(ADC)获得数据,最终输出的是由数字模拟转换器(DAC)转换为模拟信号的数据,支持一定的并行处理。

DSP 相对于 FPGA 的一个优势是它的功耗相对较低,DSP 生产厂商通过提高处理器的主频、努力降低功耗来保证它的市场占有率,因为在高性能的数字处理市场上 FPGA 似乎更占有优势。虽然 DSP 的主频不如 ARM 高,但 DSP 具有单时钟周期内完成一次乘法和一次加法的能力,一般的 ARM 不具备这样的能力。

DSP 入门较容易,但单芯片成本较高,主要还是应用于对计算能力要求高的应用。当然 DSP 也可以搭载操作系统,搭载操作系统后可适用于多任务的应用上。

DSP 主要针对一些计算能力要求较高的应用,如视频图像处理、智能机器人、数字无线、宽带访问、数字音频、高分辨率成像和数字电机控制等。

SoC(System On Chip)

SoC 的定义多种多样,由于其内涵丰富、应用范围广,很难给出准确定义。一般说来, SoC 称为系统级芯片,也有称片上系统,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容。同时它又是一种技术,用以实现从确定系统功能开始,到软/硬件划分,并完成设计的整个过程。

系统芯片是一个将计算机或其他电子系统集成单一芯片的集成电路。系统芯片可以处理数字信号、模拟信号、混合信号甚至更高频率的信号。系统芯片常常应用在嵌入式系统中。系统芯片的集成规模很大,一般达到几百万门到几千万门。**SOC 相对比较灵活,它可以将 ARM 架构的处理器与一些专用的外围芯片集成到一起,组成一个系统。**其实现有的 ARM 处理器如 Hisi-3507、Hisi-3516 等处理器都是一个 SOC 系统,尤其是应用处理器它集成了许多外围的器件,为执行更复杂的任务、更复杂的应用提供了强大的支持。

SOC 应用也十分广泛,主要是因为现有主流 ARM 芯片采用的架构便是 SOC 架构的一种,SOC 是一个比较广泛的概念,现阶段许多 ARM、DSP 都开始采用 SOC 的方式来将多个器件加到处理器上组成复杂的系统。

FPGA(Field-Programmable Gate Array)

FPGA 即现场可编程门阵列,它是在 PAL、GAL、CPLD 等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

FPGA 采用了逻辑单元阵列 LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块 CLB(Configurable Logic Block)、输出输入模块 IOB(Input Output Block)和内部连线(Interconnect)三个部分。用户可对 FPGA 内部的逻辑模块和 I/O 模块重新配置,以实现用户的逻辑。它还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。FPGA 有别于 DSP、ARM、MCU 的地方主要在于它的并行处理能力,它的强大并行性使复杂的运算得到极大的速度比提升。

FPGA 由于它的内部结构原因造成它的功耗相对较高、芯片发热量大;开发难度较大并且开发周期也相对较长,此外它的单芯片成本很高。

ARM(Advanced RISC Machine)

ARM:架构采用 32 位精简指令集(RISC)处理器架构,从 ARM9 开始 ARM 都采用了哈佛体系结构,这是一种将指令与数据分开存放在各自独立的存储器结构,独立的程序存储器与数据存储器使处理器的处理能力得到较大的提高。

现今 ARM7 采用了典型的三级流水线,ARM9 采用五级流水线技术,而 ARM11 使用了 7 级流水线,ARM Cortex-A9 更是使用了可变流水线结构(支持 8-11 级流水线)。在多核心的支持上 ARM Cortex-A9 最多可支持 4 个核心,这是 ARM 系列处理器中首次支持多核心技术。

ARM 多采用流水线技术,此技术通过多个功率部件并行工作来缩短程序执行时间,使指令能在多条流水线上流动,从而提高处理器的效率和吞吐率。

ARM 主要是搭载 Linux、Android、WinCE 等操作系统,在开发难度上看,相对 MCU、DSP 较难入门,它需要开发人员对操作系统有较深的了解;从成本来看,ARM 的单芯片成本较 MCU 要高,主要还是应用于一些较为复杂的系统上,加速产品上市,降低硬件设计门槛。

ARM 三个系列

A 系列

Cortex-A 核是 ARM 架构中的应用处理器核。它通常用于高性能计算和通用操作系统的执行,如 Android、Linux 等。Cortex-A 核具有多级流水线、超标量执行、乱序执行等高级特性,使其能够高效处理多线程和多任务。

应用场景:Cortex-A 核广泛应用于智能手机、平板电脑、服务器、网络设备、物联网网关等需要高性能和通用计算的领域。

R 系列

Cortex-R 核是 ARM 架构中的嵌入式实时处理器核。它专注于实时性能和可预测性,适用于处理实时控制任务,如汽车电子、工业控制、嵌入式系统等。Cortex-R 核具有低延迟、高吞吐量和硬实时性能。

应用场景:Cortex-R 核广泛用于汽车电子控制器、工业自动化、无线通信基站、嵌入式控制系统等需要实时响应和可靠性的领域。

M 系列

Cortex-M 核是 ARM 架构中的微控制器处理器核。它专注于低功耗、紧凑尺寸和实时控制,适用于小型嵌入式系统。Cortex-M 核通常具有单一周期执行、中断处理能力和低功耗模式。

应用场景:Cortex-M 核广泛应用于微控制器(MCU)、传感器节点、物联网设备、嵌入式传感器、医疗设备等需要低功耗和实时控制的领域。

ARM、MCU、DSP、FPGA、SOC各是什么?区别是什么?-电子工程专辑 (eet-china.com)

(5 封私信 / 80 条消息) ARM指令集构架的A、R、M三个系列分别指什么?用于何处? - 知乎 (zhihu.com)

CPU/GPU/TPU/NPU…XPU都是什么意思? - 知乎 (zhihu.com)