02.15 CPU、GPU、FPGA、ASIC芯片的对比

CPU、GPU、FPGA、ASIC芯片的对比

开发环境:

CPU、GPU由于发展历程久,无论是开发工具还是从业的开发人员都比其他平台多。FPGA虽然灵活多变,但需要用到硬件编程语言(Verilog)市场人才较少,生态不完善,开发难度大,对小公司来说挑战非常大。

峰值浮点运算能力:

虽然TPU的峰值运算能力高于GPU,但由于GPU支持32位的单精度浮点运算,TPU的计算单位为8位整数运算,所以GPU是训练端运算能力最强芯片,而TPU由于精度有限只能用于推断。

功耗及能耗比:

由于更接近与底层IO,所以ASIC的能效比最高,而FPGA有冗余的晶体管所以能效次之。CPU和GPU属于通用处理器,需要指令调用编译后执行,需要大量的数据迁移成本,能效较差。

CPU、GPU、FPGA、ASIC芯片的对比

一、CPU

CPU是系统的主控芯片在智能设备中起着运算及调用设备其他各功能构件的作用,是智能设备的“大脑”。

硬件构架:

CPU、GPU、FPGA、ASIC芯片的对比

control:为逻辑控制单元

ALU:为算术计算单元,包括定点计算单元、浮点计算单元

DRAM:表示存储单元,即片内存储单元。

Cache:为缓存。主要用于临时存储从片内存储单元中调用的指令。

主要特征:

延时较长:CPU在执行指令时,采取串行计算模式,各指令之间需要按顺序处理,

因此周期较长,延迟较高。

功能丰富:CPU硬件架构上逻辑控制单元较多,一般情况下占芯片总面积的60%。

计算能力弱:CPU硬件架构中计算单元数目较少。一般情况下,计算单元面积占40%。

能耗较高:由于CPU 指令执行流程较复杂, 指令执行时需要经过较多的逻辑判断,

因此芯片功耗较大。

CPU、GPU、FPGA、ASIC芯片的对比

二、GPU

GPU是专为执行复杂的数学和几何计算而设计的数据处理芯片,构成相对简单,大部分晶体管主要用于构建控制电路(比如分支预测等)和Cache,只有少部分的晶体管来完成实际的运算工作。

硬件构架:

CPU、GPU、FPGA、ASIC芯片的对比

主要特征:

延时较长:GPU 在执行指令时, 采取串行计算模式,各指令之间需要按顺序处理,因此周期较长,延迟较高。

功能有限:GPU 架构中逻辑控制单元较少,对于具有复杂逻辑判断算法运行效率不高,适合

重复性的大数据量计算。

计算能力强:GPU计算单元数目非常多。一般情况计算单元面积占60%-70% ,因此非常适用

大量并行计算。

能耗最高:由于GPU芯片晶体管数量远大CPU,运行时要处理大量运算,所以芯片产生的能耗

最高。

主要产品:

CPU、GPU、FPGA、ASIC芯片的对比

三、FPGA

FPGA是集成大量基本门电路及存储器的芯片,通过硬件语言设计逻辑电路,并烧入FPGA配置文件来定义这些门电路及存储器间的连线,从而将FPGA转变为不同的处理器。

硬件架构:

CPU、GPU、FPGA、ASIC芯片的对比

主要特征:

延时较短:FPGA 处理数据时,由特定逻辑电路直接专门处理,没有读取、编译

指令等过程,直接执行运算。

功能多变:FPGA 由大量的CLB 、IO 、PI组成,可以定制设计,同时也可在原来

的芯片上进行优化修改,具备可编程性。

计算能力有限:FPGA每个最小单元的计算能力较低,主要靠并行计算,因此计算能力

受到处理单元数量限制。

能耗较低:FPGA无其他指令读取分析过程, 同时在每次设计好结构后专用性比较

强, 走线相对简单。

主要产品:

CPU、GPU、FPGA、ASIC芯片的对比

四、ASIC

在集成电路界ASIC被认为是一种为专门目的而设计的集成电路。是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路,是不可通用配置的高度定制专用芯片。

硬件架构:

CPU、GPU、FPGA、ASIC芯片的对比

主要特征:

延时最短:ASIC算是对特定算法进行固化的电路,没有FPGA 的冗余电路,处理

时直接在硬件上计算,延时最短。

功能单一:ASIC基于特定算法程序定制,在算法模型出现变化时,原来的ASIC运行

效率将大大降低。

计算能力有限:一般情况下,ASIC与FPGA类似,即单个运算单元的处理能力有限,

主要靠并行计算。

能耗最低:ASIC 基于特定算法定制,不会浪费较多硬件资源,同时电路走线也比较清

晰、直接。

主要产品:

CPU、GPU、FPGA、ASIC芯片的对比


分享到:


相關文章: