关键词:
类脑计算
类脑处理器
脉冲神经网络
片上网络
摘要:
大脑以极低的平均放电速率和极低功率密度完成学习、认知及控制等复杂任务,是人类最智能的体现。受大脑启发的类脑计算通过大规模集成电路系统(Very Large Scale Integratio,VLSI)来模拟神经系统中存在的神经生物学结构,以支持大规模脉冲神经网络(Spiking Neural Network,SNN)的计算。类脑处理器作为类脑计算的硬件平台,由多个计算阵列组成,可以支持不同种类SNN的部署,以完成多模态、非结构化数据的处理。片上网络(Network on Chip,NoC)有着高性能、可扩展等特性,被众多类脑处理器采用为通信框架,支持不同计算阵列间通信。SNN有着海量、并发、复杂且难以预测的脉冲数据交互需求,对类脑通信互连架构有着特定的设计要求。在对类脑处理器计算阵列和通信架构设计与优化的过程中遇到了诸多独立或关联的问题与挑战,需要综合考虑SNN和NoC的设计需求。为此,本文将基于NoC的类脑处理器的计算阵列与通信架构设计中遇到的挑战展开相关研究,针对具体的问题提出合理的解决方案。本文针对SCNN基于脉冲的卷积运算需求,设计并实现相应的异步计算阵列,以实现更低的延迟并需要更少的操作。类脑处理器采用NoC架构来支持不同计算阵列之间的脉冲通信。SNN通信特点以及NoC设计决定了处理器的通信效率。因此,本文从多个方面进行类脑处理器NoC的探索设计。SNN通信模式的多样性提出了不同NoC架构设计要求,本文从全局的角度探索了NoC的设计方案。在既定拓扑结构NoC下,路由算法决定了SNN中神经元的通信效率。本文设计并实现了2种路由协议,以提升数据的传输效率。路由协议一定程度的缓解了NoC通信压力,但SNN非统一、突发流量会导致NoC路由器的过载,引起路由热点的出现。本文采用SNN对NoC热点进行预测,为路由算法的设计提供指导,提升NoC性能。SNN神经元的海量扇出,导致了其在NoC上通信分散,存在大量的阵列间通信。本文通过对软硬件的联合设计探索,保证了网络的精度,并使更多通信集中在本地中,减少NoC阵列间的通信。本论文的主要工作和创新点如下:·本文提出了一种基于异步电路的脉冲卷积神经网络(Spiking ConvolutionalNeural Networks,SCNN)计算阵列。传统基于帧的卷积算法不能高效的处理SCNN中高度稀疏的地址事件表示(address event representation,AER)脉冲。为此,我们为SCNN使用了基于AER的卷积算法。我们设计了一款异步驱动的脉冲神经元,构建了异步驱动的SCNN硬件计算阵列,采用流水线的方式来提升计算效率。实验结果表明,该设计可以使MNIST AER数据集的识别准确率达到98%。与基于脉动阵列的加速器相比,减少了9倍计算量。·本文提出了一种针对特定SNN应用的NoC设计探索框架。该框架基于训练好的多种SNN应用仿真行为,采用不同的映射方式将其映射到基于NoC架构的模拟器上,找到满足特定约束下最合适的NoC设计方案,构建了NoC的设计空间。我们基于模拟退火算法进行了改进,进一步提升了探索的速度。我们分别在8×8和16×16规模的NoC下进行了验证。与基线配置的NoC相比,采用本文提出的探索框架,使得NoC的平均传输延迟减少了54%到93%。另外,本文提出的搜索算法,使得搜索速度提升了1.5到8倍。·本文提出了基于路径的类脑处理器NoC通信协议。SNN在短时间内会产生大量的一到多通信需求,会对NoC产生巨大的通信压力。因此,我们提出了两种基于路径的路由协议。第一种是基于哈密尔顿路径的拥塞感知自适应路由,能够根据网络的状态,自适应的选择路由方向。我们提出的路由协议降低了NoC的平均延迟分别、提升吞吐率。第二种是基于哈密尔顿路径的多播路由,充分考虑每个源节点的目的节点分布。与单播协议相比,执行时间得到5.1倍的加速,总跳数减少68.9%,最大传输延迟减少77.4%。与两种组播路由方法相比,本文提出的多播路径的最大长度减少了68.3%,减少了83.5%平均延迟和提高了2.8倍吞吐量。·本文提出了一个基于液体状态机(Liquid State Machine,LSM)的类脑处理器热点预测模型。当SNN映射到基于NoC的处理器时,预测器提取反映当前网络趋势的重要信息。然后对数据进行预处理,例如降维和归一化,以提取基本特征。此外,采用启发式算法搜索LSM的超参数,以提高预测精度。对于部署在NoC上FSDD和NMNIST数据集通信行为,基于LSM的热点预测器可以得到89.36%和90.19%的预测精度。·本文提出了一个基于2D/3D NoC空间感知的LSM生成框架。我们将2D/3D NoC平台的空间信息作为产生神经元间突触的因素之一,使得神经元之间的通信集中在核内。我们基于启发式