基于Loihi的智能计算系统
英特尔于2017年9月推出了自学习神经形态芯片Loihi,该芯片采用14nm工艺制造,面积为60平方毫米,集成了21亿个晶体管、13万个人工神经元和1.3亿个突触。Loihi采用异构设计,包括128个神经形态核,3个嵌入式x86处理器内核以及片外通信接口,这些接口将片上网络在四个平面方向上分层扩展到其他芯片。
Loihi采用异步片上网络实现各种核之间的通信,通过层次化的网络将信息发送到芯片外部。片上网络的协议支持扩展至 4096个片上神经元核,并通过分层寻址支持多达16384个芯片。每个神经形态核心都实现1024个脉冲神经单元。Loihi具有灵活且配置完善的SNN连接功能,能支持各种工作负载。每个核都包含一个学习引擎,在操作中可以通过编程去适配网络参数,支持监督学习、无监督学习、强化学习等学习范式。此外,它还支持多种稀疏、分层和循环神经网络拓扑结构,每个神经元 可以与成千上万个其他神经元通信。
目前Loihi芯片已经发展到了第五代。后来Intel又相继推出了Wolf Mountain、Nahuku、Kapoho Bay等产品。2020年年初发布的Pohoiki Springs系统,包含了768个Loihi芯片,实现了1亿个神经元。
Loihi在MNIST数据集中解决数字识别问题时,与其他典型的脉冲神经网络相比,能够以更少的操作数达到同样的精度;与卷积神经网络和深度学习神经网络相比,Loihi芯片在同样的任务中需要的资源更少;在能效比方面,与训练人工智能系统的通用计算芯片相比,Loihi芯片的能效提升了100倍以上。
Intel实验室和康奈尔大学的研究者团队在基于Kapoho Bay的系统上成功设计出了模拟大脑嗅觉回路的神经网络算法,能够在有明显噪声和遮盖的情况下学习和识别危险化学品。Loihi解决LASSO优化问题能量延迟比是103,优于在CPU上的同等解决方案。
SpiNNaker智能计算系统
2010年12月,英国曼彻斯特大学推出了SpiNNaker。该芯片是一个全局异步本地同步(GALS)系统,具有18个位于同步岛(synchronous islands)上的ARM968处理器节点,被轻量级的报文交换异步通信基础结构所围绕。SpiNNaker芯片包括 18个处理器、片上网络和共享组件,核心面积为102平方毫米。SpiNNaker 在启动时将其中一个核选作监控核,用来执行接下来的系统管理任务。通常使用16个内核来支持应用程序,保留一个备用核用于容错和提高制造良率。
SpiNNaker 机器按处理器内核个数分类,“10N”机器大约有10N个处理器内核。102和103机器是单个印刷电路板,较大的机器是机架或机柜。102机是4节点电路板,具有72个ARM处理器内核,通常将其部署为64个应用程序内核,4个监视处理器和4个备用内核。控制和I/O接口是单个100 Mbps以太网连接。103机是48节点电路板,具有864个ARM处理器内核,通常部署为 768个应用程序内核,48个监控处理器和48个备用内核。控制接口是两个100 Mbps以太网连接,一个用于板管理处理器,第二个用于SpiNNaker阵列。可以使用高速串行接口将多个103电路板连接在一起形成更大的系统。104机是一个包含12个48节点卡的单卡框架。它拥有10368个ARM处理器内核,被部署为9216个应用处理器,216个监视处理器和216个备用处理器。这台104机是最大的便携式SpiNNaker机器,旨在通过标准电源在台式环境中 运行。105机采用19英寸机架式机柜,其中包含5个卡框架,每个卡框架带有24个48节点卡。它具有103680个ARM处理器核心,通常部署为92160个应用处理器,2160个监控处理器和2160个备用处理器。
SpiNNaker API支持使用编程模型对脉冲神经网络进行建模。在SpiNNaker系统上使用PyNN对神经网络进行建模。PyNN/SpiNNaker组合利用ARM内核和路由器的可重配置性,构成了专用体系结构的计算和通信核心,让用户可以在不了解硬件的情况下快速测试具有不同拓扑或由不同神经模型构成的网络,并以标准方式返回结果。

打开网易新闻 查看精彩图片

BrainScales智能计算系统
BrainScaleS是一个基于数字混合模拟电路的晶圆级神经形态硬件系统,由海德堡大学和德累斯顿工业大学等研究小组合作开发。该系统拥有20万个模拟神经元和5千万个可访问突触。BrainScaleS系统通过模拟网络(Analog Network Chips,ANC)结构实现大量的模拟神经元电路及其突触连接。ANC使用180nm CMOS工艺制造,是创建HICANN(High Input Count Analog Neural Network)的基本单元。HICANN作为Brain-ScaleS的主要部件,包含了混合信号神经元和突触电路,实现了512个神经元和128k个突触。每8个HICANN芯片集成在一起与一个高带宽脉冲通信芯片(Digital Network Asics,DNC)互连。每4个DNC通过一个FPGA与主机进行数据交互。

打开网易新闻 查看精彩图片

当使用脉冲事件作为通信时,FPGA-DNC-HICANN 的通信连接能够支持40M事件/秒的传输速率。BrainScaleS通过相应的软件栈,如PyNN,将用户定义的抽象神经网络描述(即网络拓扑、模型参数和输入刺激)转换为相应的受硬件约束的实验配置参数。具体执行过程从PyNN中用户定义的实验描述开始,转换过程将模型神经元映射到硬件电路,路由神经元之间的连接以创建突触,并将模型参数转换为硬件设置。使用基于SLURM的资源调度和排队系统获得硬件访问权限后即可配置硬件,并在系统上运行相应的网络模型。
基于Darwin的智能计算系统
Darwin2(达尔文 2)是一款采用纯数字电路实 现的神经形态处理器芯片,具有低功耗、高可扩展的特点,由浙江大学牵头研发完成。单芯片支持15万个神经元、1000万个突触及4种不同的突触延时,其典型应用功耗低于100mW。它包含576个核心,每个核心支持时分复用至多为256个逻辑神经元,每个逻辑神经元共享配置信息和计算资源,但拥有独立的存储空间。Darwin2在离散时间LIF模型的基础上进行优化,增加了多种leak、reset模式,还加入了偏置和随机性,以支持更加复杂的应用场景。此外还采用步进电压分组唤醒机制和细粒度功耗管理机制来进一步降低功耗。各核心呈24×24 2D网格状分布,采用片上网络进行大规模并行通信。其中8×8的核心构成一个块,3×3的块构成一个芯片,块内采用同步通信,块间采用异步通信。全局异步局部同步的通信机制既保证了芯片的高性能又提供了可扩展性。芯片间采用了异步通信接口,支持往4个方向扩展,四芯片级联能达到60万神经元规模。
Darwin2使用SMIC 55nm CMOS低功耗工艺制造,面积为12.5×12.5mm。 为了测试芯片的性能和功耗,研究人员还设计了两 块开发板,分别集成了一颗和四颗Darwin2芯片,支持15万和60万的神经元规模。它们都通过Xilinx Zynq Z-7020 与芯片通信,Z-7020由PS和PL两部分构成。PS部分为双核ARM Cortex-A9处理器,运行控制软件,通过千兆以太网、USB、I2C、SPI等方式与其他系统通信。PL部分为Artix-7的可编程逻辑,实现了一个异步接口与芯片进行通信。四芯片的开发板,各芯片之间通过异步接口直接通信。

打开网易新闻 查看精彩图片

目前已经设计了多个应用来验证该芯片的逻辑准确性、性能、功耗与扩展能力,比较有代表性的应用有两个。一是语音识别,由于 SNN 具有时间 特性,适合进行语音等自然信号的实时处理。该应用构建了一个6万神经元的网络,使用了502个核心,实现了对15个汉语命令词的识别。经实际测试,识别延迟小于200ms,准确度可以达到99.4%。另一个是多目标检测,作为深度神经网络应用的代表,多目标检测需要用到规模庞大的神经网络,很考验芯片的扩展能力。该应用基于Faster RCNN 实现15类目标检测,构建了一个21层的神经网络,级联240颗芯片并行处理候选框。可以实现视频的实时处理,并在自建的数据集上达到95%的准确率。