AI芯片是专门设计用于加速人工智能(AI)计算任务的处理器,通常具有优化的硬件架构和指令集,能够高效地执行深度学习推理和训练等任务。
AI芯片分类
AI芯片可以按照不同的维度进行分类,包括架构、能力和部署位置:
1 按架构分类
GPGPU(通用计算图形处理单元)
GPGPU是一种基于图形处理器(GPU)的通用计算加速器,具有大量的计算核心和高带宽的内存,能够高效地执行并行计算任务,适用于深度学习推理和训练等计算密集型任务。GPGPU可以通过软件和硬件优化支持深度学习模型,是非常重要的AI芯片,因为卷积和矩阵乘累加(MACs)是深度学习算法的核心,占据了百分之九十以上的计算量。Nvidia是GPGPU技术的主要推动者和领导者之一,其GPU产品广泛应用于通用计算领域,如GeForce、Quadro和Tesla系列都支持GPGPU技术。Nvidia还提供了丰富的开发工具和库,如CUDA(Compute Unified Device Architecture),一种并行计算平台和编程模型,允许开发人员使用C/C++编程语言编写GPU加速的应用程序,并利用GPU的并行计算能力加速计算任务。
(笔者后面会专门针对Nvidia ADAS SoC芯片建立专题介绍,尤其是不同微架构技术。)
ASIC(专用集成电路)
ASIC是一种定制化的集成电路,专门设计用于特定的应用领域或任务,如深度学习推理和训练任务,ASIC通常具有优化的硬件结构和指令集,能够提供高效的计算性能和能效比;缺点是电路设计开发周期长,功能难以扩展,但在功耗、可靠性、集成度等有优势。谷歌TPU、NPU、地平线BPU都属于ASIC专用AI芯片。
FPGA(现场可编程门阵列)
FPGA是一种可编程的硬件器件,具有可编程的硬件结构,可以根据用户的需求重新配置其内部逻辑门结构,广泛用于快速原型设计、定制电路设计、信号处理、图像处理等领域,以及一些对硬件加速有需求的应用,如加速深度学习推理、加密算法等。与ASIC相比,FPGA具有更高的灵活性和可编程性,但通常性能和功耗方面会有一定的损失;GPGPU虽然高度可编程,但功耗很高,FPGA可以弥合GPGPU和ASIC之间的鸿沟。
例如:Xilinx的Vivado、Altera(现在Intel)的Quartus等。
4)神经拟态计算芯片:
神经拟态计算芯片是一种基于神经元模型和突触连接的计算单元的特殊类型的AI加速器,模拟了人脑神经元和突触之间的连接和交互方式,具有较低的能耗和高度并行的计算能力,可以同时存储和处理数据,这种逻辑结构与传统冯诺依曼结构明显不同。例如IBM的TrueNorth和Intel的Loihi。