人工智能芯片—过去、现在和未来(转)
2019-10-11 11:05:12
  • 0
  • 0
  • 0
  • 0

作者:学术plus高级评论员 杨巍 

一、人工智能的三大技术流派

符号学派又称为逻辑学派,在人工智能早期发展中占据主导地位。该学派认为人工智能源于数学逻辑,其实质是模拟人的抽象逻辑思维,用符号描述人类的认知过程。二十世纪七十年代出现了具备专业知识和逻辑推断能力的专家系统,推动了人工智能的工程应用。但是,高性能个人计算机的普及应用以及专家系统成本的居高不下,使符号学派在人工智能领域主导地位逐渐被连接学派取代。

连接学派又称为仿生学派,当前占据主导地位。该学派认为人工智能源于仿生学,应以工程技术手段模拟人脑神经系统的结构和功能。早在1943年,美国心理学家麦卡洛克和数学家皮特斯就提出了利用神经元网络对信息进行处理的数学模型—MP模型,自此人类开启了对神经元网络的研究。1982年Hopfield神经网络模型和1986年BP神经网络模型的提出,使神经网络的理论研究取得重大突破。2006年,连接主义的领军学者Hinton教授提出深度学习算法,大大提高了神经网络的学习训练能力。

行为学派又称为控制学派,近年来随着Alpha Go取得的重大突破而吸引了广泛关注。该学派认为人工智能源于控制论,智能行为产生的基础是“从感知到行动”的反应机制,智能是在与外界环境交互作用中表现出来的。

在人工智能发展历程中,符号学派、连接学派和控制学派不仅先后在各自领域取得了成果,也逐步走向了相互借鉴和融合发展的道路。

二、人工智能产业的技术架构

人工智能产业的技术架构

人工智能产业技术架构从内到外依次是基础层、技术层和应用层。

基础层是人工智能芯片,它位于架构的中心,是人工智能算法实现的物理载体;

技术层涉及计算机视觉、语音识别、语义分析、知识图谱、人机交互、自主无人系统、虚拟现实等一些技术领域;

应用层包含了技术层所涉及技术方向在不同领域的应用场景,如自动驾驶、智能医疗、智慧城市、智慧金融、智慧教育等场景。

三、人工智能芯片

(一)人工智能芯片概念

目前,人工智能芯片尚无统一的定义,面向人工智能应用的芯片都可称为人工智能芯片。人工智能芯片可以处理人工智能算法,可以通过特殊设计来加速人工智能算法。

(二)人工智能芯片发展历程

人工智能芯片的发展历程

人工智能芯片是随着人工智能技术和应用需求的爆发而迅速发展起来的。早期,人工智能技术尚未渗透到人类生活的方方方面,数据量少,算法简单,通用CPU的算力即可满足需求,人工智能芯片尚未得到重视。

在Hinton教授首次证明了大规模深度神经网络学习的可能性之后,随着高清视频、大型游戏等行业的发展,图像处理器(GPU,Graphic Processing Unit)发展迅速,GPU的并行计算特性不但满足了图像和视频领域的应用需求,还能够显著提高深度学习算法的运算效率,因此业界开始尝试使用GPU进行人工智能计算。2006年,NVIDIA推出了通用计算架构CUDA,为GPU提供了便捷的编程环境,两年后又推出了最早面向人工智能应用的Terga GPU芯片。

2010年以来,由于大数据技术和产业的蓬勃发展,数据量呈现出爆发式的增长态势,传统的计算架构已经难以满足深度学习的大规模并行计算需求,业界开始对人工智能芯片进行更深入的研究和探索。IBM探索了类脑芯片架构并发布了True North系列芯片;NVIDIA发布了首个为深度学习专门设计的GPU架构Pascal;Google利用1.6万个GPU构建众核并行计算平台来训练深度神经网络模型,并成功应用于语音和图像识别等领域。

人工智能应用场景的多元化和复杂化对人工智能芯片计算能力提出了更高的要求。2015年以来,业界开始研发人工智能专用芯片。Google相继发布了系列人工智能ASIC芯片TPU;NVIDIA发布了Volta架构,大幅提升了GPU效能;国内的华为和寒武纪也相继推出各类架构的人工智能芯片。2019年以来,人工智能芯片的发展更是呈现出百家争鸣的局面,面向特定应用场景的专用芯片、芯片通用设计平台等层出不穷,将人工智能芯片研发和应用推向高潮。

总体来看,人工智能芯片迎来的发展高潮,是在复杂多元应用场景下数据、算法、算力共同驱动的必然结果。大数据时代,数据大爆炸,需要人工智能芯片具备海量数据处理能力;场景定义硬件时代,算法多元化,需要人工智能芯片通过架构创新适应算法实现需求;计算正在从云端向边缘拓展,数据实时高效处理成为必然趋势,需要人工智能芯片提高大规模实时计算能力。

(三)人工智能芯片的产业链和全景图

人工智能芯片的产业链

人工智能芯片产业链从上游到下游,依次是设计、晶圆制造、封装测试和集成应用。在设计环节,又可以细分为IP供应商、EDA软件和IC设计。目前,国内外已经有很多厂商在人工智能芯片产业链的各个环节布局,有的还覆盖多个环节,如Synopsys、华为等。

当前,人工智能芯片已经引起了全球科技界、产业界的高度关注。

Intel、NVIDIA等传统的芯片厂商加速向芯片AI化转型;

寒武纪、地平线、Brain Chip等国内外初创公司通过架构创新等途径积极抢占人工智能芯片技术制高点;

华为、百度、微软、Google、特斯拉等一些科技巨头公司通过特定场景应用牵引人工智能芯片发展,加速推动人工智能芯片应用落地;

众多厂商深耕人工智能IP、编译器、基准测试等领域,为人工智能芯片夯实发展根基。

人工智能芯片产业全景图(2019年8月更新)

(四)人工智能芯片的分类


人工智能芯片可以从多个维度进行分类。

按照技术架构,可以分为GPU、FPGA、ASIC和类脑芯片。前三类芯片架构以传统的冯·诺依曼架构为基础,通过提高计算能力来满足人工智能应用需求;类脑芯片基于神经形态架构,与传统的冯·诺依曼架构有本质不同。

按照功能,可以分为训练类和推理类人工智能芯片;

按照应用场景,可以分为云端人工智能芯片和边缘人工智能芯片。云端人工智能芯片强调海量数据运算能力,主要用于算法训练,边缘端人工智能芯片强调实时运算处理能力,主要用于推理计算。

人工智能芯片的分类

(五)典型人工智能芯片

1. GPU

GPU被称为图像处理器,是从事图像和图形处理的专用微处理器。CPU与GPU的对比如图所示。CPU是通用处理器,需要兼顾计算和控制功能。其运算逻辑单元(ALU,Arithmetic Logic Unit)资源较少,每个核中只有约30%的晶体管是计算单元,而70%的晶体管承担控制器和寄存器的功能。CPU自身存在的局限性,已经难以满足人工智能应用需求。与CPU相比,GPU的ALU资源十分丰富,在逻辑控制单元的控制下,可以执行大规模并行加速计算,在图像处理和密集型数据并行处理等方面效率远远高于CPU,擅长处理重复性任务,通常用于人工智能算法训练。但是,GPU也存在硬件结构和功能相对固定,无法按需灵活配置等不足。

CPU和GPU的对比

Tesla V100是NVIDIA于2017年发布的一款GPU人工智能芯片,采用全新一代NVIDIA Volta架构,拥有超过210亿个晶体管,架构内配置了640个Tensor内核和5120个CUDA内核,双精度浮点运算性能达7.5TFLOP/s,单精度运算性能达15TFLOP/s,混合精度矩阵乘法和累加达120 Tensor TFLOP/s。

NVIDIA Tesla V100

NVIDIA Tesla V100是目前世界上最高性能的并行处理器之一,专门用于密集型高性能计算、AI、和图形处理任务。在NVIDIA Volta架构支持下,Tesla V100可以在单片GPU中提供100片CPU的运算性能,在现实场景中用户可以将多个V100 GPU组合起来搭建一个强大的深度学习运算中心,曾经需要数周时间的AI模型可以在几天之内训练完成,大幅提高AI模型训练和应用效率。

2. FPGA

FPGA称为现场可编程门阵列(Field Programmable Gate Array),是在可编程器件基础上进一步发展形成的半定制化芯片,具有可重构、低功耗、多任务并行的特点。

FPGA提供了功能按需配置的能力,用户利用硬件描述语言(如Verilog HDL等)编写FPGA配置程序,对门电路资源及其与存储器之间的联接关系进行按需配置,实现特定功能,并可以根据应用需求多次配置FPGA实现不同功能。

FPGA可同时进行数据并行和任务并行计算,在处理特定应用时效率更高。如在进行特定运算时,CPU需要若干时钟周期来完成,而FPGA可以通过编程配置实现专用电路,仅需少量时钟周期甚至在一个时钟周期内就可以完成任务。但是,FPGA也存在着计算资源少、基础单元计算能力有限等不足。

FPGA的功能结构

VERSAL ACAP是XILINX于2018年发布的全球首款自适应计算加速平台。其架构基于FPGA演化而来,整合了标量处理引擎、自适应硬件引擎和智能引擎以及前沿的存储器和接口技术,具有软件可编程、异构加速和动态自适应重配置等特征,能够通过软件抽象工具链快速开发优化应用,针对云端、边缘等不同领域的众多应用可支持AI推断加速,能够通过重新配置硬件实现功能快速动态调整。

XILINX VERSAL ACAP

VERSAL ACAP功能结构

3. ASIC

ASIC被称为特定应用专用芯片(Application Specific Integrated Circuit),是为了满足特定应用需求而专门定制的芯片。与通用芯片相比,ASIC具有体积小、功耗低、计算性能高、计算效率高等优点。但是,由于ASIC是专用功能的定制化芯片,研发过程中需要做大量的设计和验证,需要开发专用的掩膜版用于芯片制造,一旦设计制造完成后芯片功能就固化了,因此,ASIC存在着可重构性低、定制成本高、研发周期长等问题。据统计,ASIC从设计到量产一般需要18-24个月。

张量处理器TPU是Google于2016年发布的一款专门为Google深度学习框架Tensor Flow设计的ASIC芯片,先后共发布了三代产品,目前最新一代为TPU3.0。TPU的核心是由乘加器组合形成的256×256的运算器阵列,可以执行8位无符号和有符号整数乘法和加法。与CPU、GPU不同,TPU的ALU直接相连并处理传递信息,无需内存,从而大大减少了计算延迟。

Google TPU

TPU功能结构

4. 类脑芯片

无论是通用芯片CPU,还是GPU、FPGA、ASIC等人工智能芯片,都是以计算和存储分离的冯·诺依曼架构为基础的。在冯·诺依曼架构中,数据从处理单元外的存储器提取,处理完毕后再写回存储器。由于运算单元和存储单元的接口存在输入/输出速度差异,当访问存储单元的速度无法匹配运算单元数据处理的速度时,即使再增加运算单元也无法进一步提高运算速度,这就是“冯·诺依曼瓶颈”。提高人工智能芯片性能和能效的关键在于支持海量数据运算和高效的数据访问。在面对海量数据实时计算场景时,受“冯·诺依曼瓶颈”限制,芯片计算加速能力难以无限提升。这就驱动着研究人员通过创新架构来提升人工智能芯片性能。

“冯·诺依曼瓶颈”

类脑芯片不采用经典的冯·诺依曼架构,而是以神经形态架构为基础,通过模仿人类大脑的信息处理方式进行计算。人类大脑利用神经元来实现信息处理和交互,神经元相当于计算单元,通过轴突、树突、突触来实现信息的传递、交互和存储。每个神经元的计算都在本地进行,众多神经元采用分布式并行工作方式,每个神经元只承担一部分计算任务。类脑芯片利用架构创新,摆脱了冯·诺伊曼瓶颈限制,可实现海量数据的大规模并行计算,是目前最具发展前景的人工智能芯片。

类脑计算

神经元与类脑芯片

Loihi芯片是Intel于2017年公布的一款异构设计的类脑芯片,由128个神经形态核心和3个低功耗的Intel X86核心组成,拥有13万个神经元和1.3亿个触突。支持可编程的学习规则,每个神经形态核心都包含一个学习引擎,在操作中可以通过编程去适配网络参数,支持监督学习、无监督学习、强化学习和其他的学习范式。Loihi芯片的命名灵感源于夏威夷海底的一座不断喷发的活火山,每一次喷发都会扩大夏威夷岛的范围。Intel将芯片命名为Loihi,表明该芯片具备不断自我学习的能力。

Intel Loihi类脑芯片

昇腾芯片是华为自主研发的云端类脑芯片。2018年,华为发布了两款昇腾芯片,分别是基于7nm工艺的昇腾910和基于12nm工艺的昇腾310芯片。

昇腾芯片采用华为自主研发的“达芬奇”架构,核心由3D Cube、Vector向量计算单元、Scalar标量计算单元等多个单元组成,每个单元承担不同的运算任务,共同实现高效并行计算,每个核心可以在一个时钟周期内实现4096个MAC操作,应用覆盖训练和推理等全场景。该芯片支持多种混合精度计算,具备高算力、高能效、灵活可重构等特性。8W典型功耗下,8位整数精度下的性能达512TOPS,16位浮点数精度下的性能达256TFLOPS。

华为昇腾系列芯片

华为“达芬奇”架构

TianJic芯片是清华大学研发的全球首款异构融合类脑芯片,包含156个FCores核心,拥有大约40000个电子神经元和1000万个电子突触,可支持神经模态脉冲神经网络、卷积神经网络、循环神经网络等同时运行。TianJic芯片基于28nm工艺制造,采用存算一体技术,无需外挂DDR缓存,可大大节省空间、功耗和成本。2019年8月1日,第三代TianJic芯片登上了Nature杂志封面,研究团队报道了搭载TianJic芯片的智能无人自行车系统的试验结果。在语音命令控制下,智能无人自行车系统可以轻松实现转弯、加速、目标识别和自动避障等功能。

TianJic芯片

Nature杂志封面

从计算能力、灵活性、能耗性、成本、开发周期、发展成熟度等方面对CPU和四类人工智能芯片进行综合对比,结果如图所示。可以看出,在计算能力方面,类脑芯片最强,ASIC次之;在灵活性方面,FPGA最高,类脑芯片次之;在能耗性方面,类脑芯片最低,ASIC次之;在成本和开发周期方面,类脑芯片和ASIC成本高周期长;在发展成熟度方面,CPU成熟度最高,GPU、FPGA次之,类脑芯片最具发展前景。

四、人工智能芯片未来发展趋势

(一)软件定义

软件定义的核心是可重构计算架构。可重构计算架构是一种介于通用处理芯片和专用集成电路之间的、利用可配置的硬件资源,根据不同的应用需求灵活重构的新型体系结构,兼具处理器的灵活性和专用集成电路的高性能和低功耗。

美国国防部高级研究计划局(DARPA)于2017年6月启动了“电子复兴计划”(ERI:Electronics Resurgence Initiative),旨在从材料、架构、设计等方面对集成电路开展创新研究。其中的“Page 3计划”专门将软件定义硬件列为架构创新的一个重要方向,强调通过软件定义实现硬件重构。

美国“电子复兴计划”

“电子复兴计划”的“Page 3计划”

清华大学针对软件定义芯片开展了深入研究,设计了可重构计算芯片架构,研发了Thinker系列可重构人工智能芯片。Thinker芯片基于函数化的可重构计算架构,可以根据控制单元的要求配置计算单元阵列并执行任务,也可以根据软件的要求将划分后的任务送到数据通道执行。目前,清华大学已经推出了面向通用神经网络计算的Thinker I,面向极低功耗神经网络计算的Thinker II,以及面向极低功耗语音应用的Thinker S。

清华大学的Thinker系列芯片

(二)存算融合

存算融合的一个典型范例就是基于忆阻器的类脑计算。忆阻器的概念由美国加州大学伯克利分校的Leon O Chua教授于1971年首次提出,他在研究电荷、电流、电压和磁通量四者之间的关系时,推断在电阻、电容和电感器之外,应该还存在一个代表电荷和磁通量之间关系的器件,其电阻值会随着通过该器件的电荷量而改变;当掉电时,器件电阻值保持不变,从而实现电荷记忆功能。2008年,惠普实验室研究人员在Nature期刊上发表了文章“Found:the missing circuit element”,证实了忆阻器是确实存在的。

忆阻器之父Leon O Chua教授

忆阻器由两个发送和接收电信号的电极以及之间的存储层组成,存储层的物理参数可以通过电学刺激进行重新配置,形成记忆效应。通过在器件两端施加电压,可以灵活地改变其阻值,从而实现突触的可塑性。忆阻器将存储和计算在同一个器件实现,尺寸小、能耗低、结构简单、信息储存和处理效率高,可大规模集成,是类脑芯片领域的研究热点。

忆阻器的功能结构

清华大学报道了基于忆阻器的类脑计算的研究成果,他们首次实现了基于1024个氧化物忆阻器阵列的类脑计算,搭建了原型系统并进行了人脸识别测试。在最基本的单个忆阻器上实现了存储和计算的融合,与基于冯·诺依曼架构的Intel至强(Xeon)处理器相比,该原型系统具有1000倍以上的能耗优势。

(三)快速定制

在芯片设计1.0时代,芯片设计都是基于标准流程,每次研发都从电路开始设计,消耗周期长成本高;2000年以后,基于IP的模块化设计方法将芯片设计带入2.0时代,这种方式简化了芯片设计流程,降低了开发成本和设计风险。随着AIoT时代来临,新的应用需求层出不穷,继续沿袭芯片设计1.0和2.0时代的模式,已经难以适应快速变化的市场需求,芯片设计出来可能就已经落后了。AIoT时代需要更加高效的设计方法,使芯片能够以最快速度推向精准市场。这将推动芯片设计进入3.0时代—基于芯片基础设施的快速功能定制。

芯片设计时代的演变

遵循芯片设计3.0时代的理念,阿里巴巴旗下平头哥半导体公司于2019年8月发布了芯片基础设施“无剑”。无剑是面向AIoT时代的一站式芯片设计平台,由SoC架构、处理器、各类IP、操作系统、软件驱动和开发工具等模块构成,能够承担AIoT芯片约80%的通用设计工作量,让芯片研发企业专注于剩余20%的专用设计工作,从而降低芯片研发门槛,提高研发质量和效率。作为系统芯片开发的基础共性技术平台,“无剑”能够帮助芯片设计企业将设计成本降低50%,设计周期压缩50%,从而使芯片快速定

最新文章
相关阅读