今天的文章,我们继续聊聊芯片。
肖早君在之前的文章中表示,业界通常将半导体芯片分为数字芯片和模拟芯片。其中,数字芯片占据了较大的市场份额,达到70%左右。
数字芯片又可细分为:逻辑芯片、存储芯片和微控制单元(MCU)。
内存芯片和MCU稍后介绍。今天小枣君专注于逻辑芯片。
逻辑芯片说白了其实就是计算芯片。它包含各种逻辑门电路,可以实现运算和逻辑判断功能。它是最常见的芯片之一。
大家常听到的CPU、GPU、FPGA、ASIC等都是逻辑芯片。而现在特别流行的AI所用的所谓“AI芯片”,主要指的就是它们。
CPU(中央处理单元)
我们先来说说大家最熟悉的CPU,英文全称是Unit,中央处理器。
中央处理器
大家都知道CPU是计算机的心脏。
现代计算机都是基于 20 世纪 40 年代诞生的冯·诺依曼架构。在该架构中,包括算术单元(也称为逻辑运算单元,ALU)、控制器(CU)、存储器、输入设备和输出设备等组件。
冯·诺依曼架构
当数据到来时,会先放入内存。然后,控制器将从存储器中取出相应的数据,交给运算单元进行计算。运算完成后,结果返回内存。
这个过程还有一个比较有趣的名字:“取(fetch)-(解码)-(执行)-(内存访问)-Write Back”。
可以看到,CPU负责运算单元和控制器两大核心功能。
具体来说,算术单元(包括加法器、减法器、乘法器和除法器)负责执行算术和逻辑运算,是真正的工作。控制器负责从存储器读取指令、解码指令和执行指令。
CPU除了运算单元和控制器外,还包括时钟模块和寄存器(高速缓存)等部件。
时钟模块负责管理CPU时间,为CPU提供稳定的时基。它驱动CPU中的所有操作,并通过周期性地发出信号来调度各个模块的工作。
寄存器是CPU中的高速存储器,用于临时存储指令和数据。它在CPU和内存(RAM)之间的“缓冲区”比普通内存更快,防止内存“拖累”CPU的工作。
寄存器的容量和访问性能可以影响CPU对内存的访问次数,进而影响整个系统的效率。后面讲内存芯片的时候我们会提到。
CPU一般根据指令集架构来分类,包括x86架构和非x86架构。 x86 基本上是复杂指令集(CISC),而非 x86 基本上是精简指令集(RISC)。
PC和大多数服务器都采用x86架构,其中Intel和AMD占据主导地位。非x86架构种类很多,近年来迅速崛起,主要有ARM、MIPS、Power、RISC-V、Alpha等,后面会具体介绍。
GPU(图形处理单元)
我们来看看GPU。
GPU是显卡的核心部件。它的英文全称是Unit,图形处理单元(图形处理器)。
GPU不能等同于显卡。显卡除了GPU之外,还包括显存、VRM稳压模块、MRAM芯片、总线、风扇、外围设备接口等。
显卡
1999年,率先提出GPU的概念。
之所以提出GPU,是因为游戏和多媒体业务在20世纪90年代迅速发展。这些业务对计算机的3D图形处理和渲染能力提出了更高的要求。传统的 CPU 无法处理,因此引入了 GPU 来分担工作。
按照形式,GPU可以分为独立GPU(dGPU、/GPU)和集成GPU(iGPU、GPU),也就是我们常说的独立显卡和集成显卡。
GPU 也是计算芯片。因此,它和CPU一样,包括运算单元、控制器、寄存器等部件。
不过,由于GPU主要负责图形处理任务,其内部架构与CPU有很大不同。
如上图所示,CPU核心(包括ALU)数量比较少,最多只有几十个。然而CPU有很大的高速缓存(Cache)和复杂的控制器(CU)。
之所以这样设计,是因为CPU是通用处理器。作为计算机的主要核心,它的任务非常复杂。它必须处理不同类型的数据计算并响应人机交互。
复杂的条件和分支,以及任务之间的同步和协调,会带来大量的分支跳转和中断处理工作。需要更大的缓存来保存各种任务状态,以减少任务切换时的延迟。它还需要更复杂的控制器来进行逻辑控制和调度。
CPU的强项是管理和调度。真正的功函数不强(ALU约占5%~20%)。
如果我们把处理器想象成一家餐厅,那么CPU就像是一家拥有数十名高级厨师的全能餐厅。这家餐厅可以烹制各种美食,但因为菜品太多,需要花很多时间来协调和准备菜肴,而且上菜速度也比较慢。
GPU 则完全不同。
GPU是为图形处理而设计的,其任务非常明确且单一。它的作用是图形渲染。图形是由海量像素组成的,是类型高度统一、相互不依赖的大规模数据。
因此,GPU的任务就是在尽可能短的时间内完成对大量同质数据的并行运算。所谓的调度、协调的“杂事”其实很少。
鱼云提供全球范围的云服务器和物理服务器租赁服务,具备强大的DDoS防御功能,确保您业务安全稳定运行,同时提供灵活定制和专业支持以满足多样化需求。