SNAP-V: A RISC-V SoC with Configurable Neuromorphic Acceleration for Small-Scale Spiking Neural Networks
SNAP-V: 基于RISC-V的SoC,优化小规模SNN推理,平均突触能耗1.05 pJ。
核心发现
方法论
本文提出了一种基于RISC-V的神经形态SoC,名为SNAP-V,专为小规模脉冲神经网络(SNN)应用优化。该系统集成了两种加速器变体:Cerebra-S(总线型)和Cerebra-H(片上网络型),以实现高效的SNN推理。通过RISC-V核心进行管理任务,两个加速器均采用并行处理节点和分布式存储。实验结果表明,软件和硬件推理之间的平均准确性偏差为2.62%,在45 nm CMOS技术中,每次突触操作的平均能量为1.05 pJ。
关键结果
- 结果1:在多个网络配置中,软件和硬件推理的平均准确性偏差为2.62%,表明硬件实现的精确性。
- 结果2:在45 nm CMOS技术中,每次突触操作的平均能耗为1.05 pJ,显示出极高的能效。
- 结果3:Cerebra-H的最大时钟频率达到96.24 MHz,比Cerebra-S提高了9.46倍,显著提升了实时响应能力。
研究意义
本研究通过设计SNAP-V SoC,填补了大规模神经形态硬件与小规模嵌入式系统之间的空白。该系统在能效和实时性方面表现优异,适合用于机器人、边缘智能和低功耗自适应控制等领域。通过灵活的接口和通用计算能力,SNAP-V为小规模SNN的实际部署提供了一种资源高效的解决方案,有助于推动神经形态计算在实际应用中的普及。
技术贡献
SNAP-V的技术贡献在于其创新的架构设计,结合了RISC-V的开放性和模块化特性,使其能够在单一平台上实现通用处理和事件驱动计算。Cerebra-S和Cerebra-H的设计提供了不同的性能基准和优化见解,尤其是Cerebra-H的分层片上网络架构,有效解决了通信瓶颈问题,提升了系统的能效和性能。
新颖性
SNAP-V是首个将RISC-V与小规模SNN加速器结合的SoC,提供了灵活的接口和高效的事件驱动计算能力。与现有的大规模神经形态平台不同,SNAP-V专为小规模应用设计,避免了资源浪费,显著提升了能效。
局限性
- 局限1:虽然SNAP-V在小规模SNN应用中表现优异,但其架构可能不适合大规模神经网络的需求,尤其是在需要更高计算能力的场景中。
- 局限2:Cerebra-S的设计虽然简单,但在通信和内存访问方面存在瓶颈,影响了系统的整体性能。
- 局限3:目前的实现主要基于45 nm CMOS技术,可能在更先进的制程中需要重新优化。
未来方向
未来的研究方向包括探索SNAP-V在更广泛应用场景中的适用性,特别是在更先进的制程技术下的性能优化。此外,还可以研究如何进一步集成更多的传感器接口和控制逻辑,以增强系统的通用性和适应性。
AI 总览摘要
脉冲神经网络(SNN)因其低功耗和计算效率在边缘计算中获得了广泛关注。然而,现有的实现要么使用传统的片上系统(SoC)架构,存在内存-处理器瓶颈,要么使用大规模神经形态硬件,对于小规模SNN应用来说效率低下且浪费资源。本文提出了SNAP-V,一种基于RISC-V的神经形态SoC,具有两种加速器变体:Cerebra-S(总线型)和Cerebra-H(片上网络型),专为小规模SNN推理优化,集成了RISC-V核心用于管理任务,两个加速器均具备并行处理节点和分布式存储。
实验结果显示,软件和硬件推理之间的平均准确性偏差为2.62%,在45 nm CMOS技术中,每次突触操作的平均能量为1.05 pJ。这些结果表明,所提出的解决方案能够实现准确、节能的SNN推理,适合实时边缘应用。
SNAP-V的设计目标是弥合大规模神经形态硬件与小规模嵌入式系统之间的差距。通过结合RISC-V的开放性和模块化特性,系统能够在单一平台上实现SNN工作负载的高效管理,同时支持传感器处理、控制逻辑和信号编码等附加嵌入式任务,消除了对外部微控制器或伴随芯片的需求。
Cerebra-S和Cerebra-H的设计提供了不同的性能基准和优化见解,尤其是Cerebra-H的分层片上网络架构,有效解决了通信瓶颈问题,提升了系统的能效和性能。通过灵活的接口和通用计算能力,SNAP-V为小规模SNN的实际部署提供了一种资源高效的解决方案,有助于推动神经形态计算在实际应用中的普及。
然而,SNAP-V在小规模SNN应用中表现优异,但其架构可能不适合大规模神经网络的需求,尤其是在需要更高计算能力的场景中。此外,目前的实现主要基于45 nm CMOS技术,可能在更先进的制程中需要重新优化。未来的研究方向包括探索SNAP-V在更广泛应用场景中的适用性,特别是在更先进的制程技术下的性能优化。
深度分析
研究背景
脉冲神经网络(SNN)作为第三代神经网络模型,通过引入时间动态和事件驱动计算,扩展了传统人工网络。与传统的人工神经网络(ANN)不同,SNN通过离散的脉冲事件进行通信,实现稀疏和异步处理。这一特性显著降低了能耗,并提高了时间精度,特别适合于边缘和嵌入式系统。在计算层面,已经提出了多种神经元模型来模拟生物脉冲行为。高度详细的模型如Hodgkin–Huxley提供了强大的生物现实感,但计算量大,不适合硬件实现。简化模型,尤其是Leaky Integrate-and-Fire(LIF)神经元,通过轻量级方程抽象出脉冲动态,显著降低了计算和硬件开销。信息在SNN中通过脉冲序列进行编码,直接影响计算效率。常见策略包括速率编码,其中发放频率表示信号强度,以及时间编码如首次脉冲时间(TTFS)和相位编码,利用精确的脉冲时间进行低延迟计算。神经元模型和编码方案的选择对神经形态硬件的实现复杂性、功耗和延迟有重要影响。在本研究中,选择LIF模型是由于其确定性的时间行为和硬件简单性,使其非常适合于针对实时嵌入式操作的紧凑神经形态架构。
核心问题
尽管大规模SNN旨在复制复杂的皮层网络,许多嵌入式应用在紧凑、任务特定的架构上运行效率更高。在这种背景下,小规模SNN可以定义为大约10到2000个神经元的网络。这种规模的网络通常用于机器人、信号处理和传感器驱动的应用,其中能效、确定性行为和低延迟至关重要。尽管存在如Intel的Loihi(131,072个神经元)和SpiNNaker(多芯片配置下可达10亿个神经元)等大规模神经形态平台,许多实际应用需要显著更小的网络,导致硬件利用率大幅下降。在机器人领域,Gridbot仅使用1,321个神经元进行空间导航,而NeuroPod在庞大的SpiNNaker平台上仅使用22个神经元进行昆虫启发的运动。控制应用展示了更极端的不匹配:自主赛车系统使用39个神经元,车道保持控制器需要34个神经元,四旋翼的事件驱动PID控制使用大约35-40个神经元。除了控制任务,机器人定位系统通常使用700-800个神经元,而微尺度发动机优化仅需8个神经元。这些例子表明,小规模SNN不是大网络的简化版本,而是为特定时空任务量身定制的架构,具有可预测的延迟、高效的内存访问和最小的通信开销,这些特性更适合于专用的小规模神经形态平台,而不是在大规模过度配置的硬件上运行。
核心创新
SNAP-V的核心创新在于其架构设计,结合了RISC-V的开放性和模块化特性,使其能够在单一平台上实现通用处理和事件驱动计算。具体创新包括:
1) 设计和实现了一个RISC-V集成的神经形态SoC,优化用于小规模SNN的推理。
2) 提出了两种渐进的神经形态加速器设计:Cerebra-S(小型)为性能分析和优化提供了基准,而Cerebra-H(高性能)则是基于Cerebra-S的发现而精炼的集群架构,具有分层片上网络。
3) 在RTL级功能验证中展示了软件和硬件推理的高度一致性,平均准确性偏差低于3%。
4) 详细的功耗和能量特性揭示了内存主导的系统行为,并实现了每次操作的低突触能耗。
方法详解
SNAP-V的设计和实现方法包括以下步骤:
- �� 采用RISC-V的开放和模块化ISA,实现设计灵活性和与开源SoC框架的兼容性。
- �� 使用Rocket Custom Coprocessor(RoCC)接口将神经形态子系统与RISC-V核心紧密集成。
- �� 通过RoCC接口,从SpikeCore发出自定义SNN指令,实现高效的配置、脉冲数据传输和与加速器的同步。
- �� 加速器控制器实现指令解码、双片上网络管理和CPU与加速器之间的时间同步。
- �� 采用硬件实现的速率编码方案,将传感器数据转换为脉冲序列,并通过片上网络路由到神经元集群。
- �� 在硬件级别集成脉冲编码和解码,实现感知、计算和执行之间的紧密耦合。
实验设计
实验设计包括使用多个网络配置进行软件和硬件推理的比较,评估系统的准确性和能效。实验在45 nm CMOS技术下进行,测量每次突触操作的平均能耗。通过RTL级功能验证,展示了软件和硬件推理之间的高度一致性。实验还包括对Cerebra-S和Cerebra-H的性能和能效进行比较,特别是Cerebra-H的分层片上网络架构在通信瓶颈问题上的解决效果。
结果分析
实验结果显示,软件和硬件推理之间的平均准确性偏差为2.62%,在45 nm CMOS技术中,每次突触操作的平均能量为1.05 pJ。Cerebra-H的最大时钟频率达到96.24 MHz,比Cerebra-S提高了9.46倍,显著提升了实时响应能力。Cerebra-H的分层片上网络架构有效解决了通信瓶颈问题,提升了系统的能效和性能。
应用场景
SNAP-V适用于机器人、边缘智能和低功耗自适应控制等领域。其灵活的接口和通用计算能力使其能够在单一平台上实现SNN工作负载的高效管理,同时支持传感器处理、控制逻辑和信号编码等附加嵌入式任务。SNAP-V为小规模SNN的实际部署提供了一种资源高效的解决方案,有助于推动神经形态计算在实际应用中的普及。
局限与展望
尽管SNAP-V在小规模SNN应用中表现优异,但其架构可能不适合大规模神经网络的需求,尤其是在需要更高计算能力的场景中。此外,Cerebra-S的设计虽然简单,但在通信和内存访问方面存在瓶颈,影响了系统的整体性能。目前的实现主要基于45 nm CMOS技术,可能在更先进的制程中需要重新优化。未来的研究方向包括探索SNAP-V在更广泛应用场景中的适用性,特别是在更先进的制程技术下的性能优化。
通俗解读 非专业人士也能看懂
想象一下,你有一个智能厨房,里面有各种各样的厨具和设备。SNAP-V就像是这个厨房的智能大脑,能够高效地管理和协调所有的厨房活动。RISC-V核心就像是厨房的主厨,负责总体规划和管理,而Cerebra-S和Cerebra-H则像是专门的厨师,分别负责不同的烹饪任务。Cerebra-S就像是一位擅长简单菜肴的厨师,能够快速准备基础菜品,而Cerebra-H则像是一位经验丰富的大厨,能够处理复杂的菜肴和多任务操作。整个系统通过一种智能的通信网络(就像厨房的内部通讯系统)来协调各个厨师之间的合作,确保每道菜都能在最佳时间上桌。这个智能厨房不仅能高效地处理日常烹饪任务,还能根据需要进行调整和优化,以适应不同的烹饪需求和条件。
简单解释 像给14岁少年讲一样
嘿,小伙伴!想象一下,你在玩一个超级酷的游戏,里面有很多角色,每个角色都有自己的任务。SNAP-V就像是这个游戏的超级指挥官,负责协调和管理所有角色的行动。RISC-V核心就像是游戏的主控台,负责总体规划,而Cerebra-S和Cerebra-H就像是不同的游戏角色,各自负责不同的任务。Cerebra-S就像是一个快速的跑腿角色,能够迅速完成简单的任务,而Cerebra-H则像是一个强大的战斗角色,能够处理复杂的任务和多任务操作。整个系统通过一种智能的通信网络(就像游戏中的聊天系统)来协调各个角色之间的合作,确保每个任务都能顺利完成。这个超级指挥官不仅能高效地管理游戏中的所有任务,还能根据需要进行调整和优化,以适应不同的游戏场景和挑战。
术语表
RISC-V (精简指令集计算机-V)
RISC-V是一种开放的指令集架构,具有模块化和可扩展性,允许设计者根据需要定制指令集。
在本文中,RISC-V用作SNAP-V SoC的基础架构,支持神经形态加速器的集成。
SoC (片上系统)
SoC是一种集成了多个计算组件的芯片,包括处理器、内存和接口,用于实现完整的计算系统。
本文设计的SNAP-V是一种专为小规模SNN优化的RISC-V SoC。
SNN (脉冲神经网络)
SNN是一种神经网络模型,通过离散的脉冲事件进行通信,模拟生物神经元的行为,具有低功耗和高时间精度的特点。
SNAP-V的设计目标是优化小规模SNN的推理性能。
Cerebra-S
Cerebra-S是SNAP-V中的一种神经形态加速器,采用总线型架构,提供基本的性能基准。
Cerebra-S用于评估SNAP-V在小规模SNN应用中的基本性能。
Cerebra-H
Cerebra-H是SNAP-V中的一种神经形态加速器,采用分层片上网络架构,优化了通信和能效。
Cerebra-H通过改进的架构设计提升了SNAP-V的整体性能。
片上网络 (NoC)
片上网络是一种用于芯片内通信的架构,通过网络拓扑结构连接不同的计算单元,实现高效的数据传输。
Cerebra-H采用片上网络架构,优化了神经元之间的通信。
突触能耗
突触能耗是指在神经网络中每次突触操作所消耗的能量,通常以皮焦耳(pJ)为单位。
在SNAP-V中,每次突触操作的平均能耗为1.05 pJ。
事件驱动计算
事件驱动计算是一种计算模式,系统根据事件的发生进行处理,而不是连续地进行计算。
SNAP-V通过事件驱动计算实现了高效的SNN推理。
Leaky Integrate-and-Fire (LIF) 神经元
LIF神经元是一种简化的神经元模型,通过轻量级方程模拟脉冲动态,降低了计算和硬件开销。
SNAP-V选择LIF模型用于神经形态加速器的设计。
速率编码
速率编码是一种神经编码策略,通过发放频率表示信号强度,用于在神经网络中传递信息。
SNAP-V的编码硬件单元采用速率编码方案将传感器数据转换为脉冲序列。
开放问题 这项研究留下的未解疑问
- 1 如何在更先进的制程技术下优化SNAP-V的性能和能效?现有的实现主要基于45 nm CMOS技术,未来可能需要在更小的制程节点上进行重新设计和优化,以提高系统的性能和能效。
- 2 如何在SNAP-V中集成更多的传感器接口和控制逻辑,以增强系统的通用性和适应性?目前的设计主要关注小规模SNN的推理性能,未来可能需要扩展系统的功能,以支持更多的嵌入式任务。
- 3 如何在SNAP-V中实现更高效的内存管理和数据传输,以进一步降低系统的能耗?现有的设计已经在通信和内存访问方面进行了优化,但仍有可能通过改进内存管理策略来进一步降低能耗。
- 4 如何在SNAP-V中实现更灵活的神经元模型和编码方案,以支持更广泛的应用场景?目前的设计主要基于LIF模型和速率编码方案,未来可能需要探索其他神经元模型和编码方案,以支持更复杂的任务。
- 5 如何在SNAP-V中实现更高效的硬件-软件协同设计,以提高系统的开发效率和性能?现有的设计已经在硬件和软件之间实现了紧密的集成,但仍有可能通过改进协同设计策略来提高系统的性能和开发效率。
应用场景
近期应用
机器人导航
SNAP-V可以用于机器人导航系统,通过高效的SNN推理实现实时路径规划和环境感知,适合资源受限的嵌入式平台。
边缘智能设备
SNAP-V适用于边缘智能设备,如智能摄像头和传感器,通过低功耗的事件驱动计算实现实时数据处理和分析。
低功耗控制系统
SNAP-V可以用于低功耗控制系统,如无人机和自动驾驶汽车,通过高效的SNN推理实现实时控制和决策。
远期愿景
智能家居系统
SNAP-V可以集成到智能家居系统中,通过高效的SNN推理实现智能设备的自动化控制和管理,提高生活质量。
医疗监测设备
SNAP-V可以用于医疗监测设备,通过低功耗的事件驱动计算实现实时健康数据分析和异常检测,提升医疗服务水平。
原文摘要
Spiking Neural Networks (SNNs) have gained significant attention in edge computing due to their low power consumption and computational efficiency. However, existing implementations either use conventional System on Chip (SoC) architectures that suffer from memory-processor bottlenecks, or large-scale neuromorphic hardware that is inefficient and wasteful for small-scale SNN applications. This work presents SNAP-V, a RISC-V-based neuromorphic SoC with two accelerator variants: Cerebra-S (bus-based) and Cerebra-H (Network-on-Chip (NoC)-based) which are optimized for small-scale SNN inference, integrating a RISC-V core for management tasks, with both accelerators featuring parallel processing nodes and distributed memory. Experimental results show close agreement between software and hardware inference, with an average accuracy deviation of 2.62% across multiple network configurations, and an average synaptic energy of 1.05 pJ per synaptic operation (SOP) in 45 nm CMOS technology. These results show that the proposed solution enables accurate, energy-efficient SNN inference suitable for real-time edge applications.
参考文献 (20)
A 0.086-mm$^2$ 12.7-pJ/SOP 64k-Synapse 256-Neuron Online-Learning Digital Spiking Neuromorphic Processor in 28-nm CMOS
C. Frenkel, M. Lefebvre, J. Legat 等
A 4096-Neuron 1M-Synapse 3.8-pJ/SOP Spiking Neural Network With On-Chip STDP Learning and Sparse Weights in 10-nm FinFET CMOS
Gregory K. Chen, Raghavan Kumar, H. Sumbul 等
Darwin3: A large-scale neuromorphic chip with a Novel ISA and On-Chip Learning
De Ma, Xiaofei Jin, Shichun Sun 等
Spiking Neural Networks and Their Applications: A Review
Kashu Yamazaki, Viet-Khoa Vo-Ho, D. Bulsara 等
Lapicque's introduction of the integrate-and-fire model neuron (1907).
L. F. Abbott, F. Laurence, Abbott
Efficient Video and Audio Processing with Loihi 2
S. Shrestha, Jonathan Timcheck, Paxon Frady 等
End to End Learning of Spiking Neural Network Based on R-STDP for a Lane Keeping Vehicle
Zhenshan Bing, Claus Meschede, Kai Huang 等
Loihi: A Neuromorphic Manycore Processor with On-Chip Learning
Mike Davies, N. Srinivasa, Tsung-Han Lin 等
Scalable NoC-based Neuromorphic Hardware Learning and Inference
Haowen Fang, Amar Shrestha, De Ma 等
A Small, Low Cost Event-Driven Architecture for Spiking Neural Networks on FPGAs
J. P. Mitchell, Catherine D. Schuman, T. Potok
Scalable Hierarchical Network-on-Chip Architecture for Spiking Neural Network Hardware Implementations
Snaider Carrillo, J. Harkin, L. McDaid 等
GAP-8: A RISC-V SoC for AI at the Edge of the IoT
E. Flamand, D. Rossi, Francesco Conti 等
Caspian: A Neuromorphic Development Platform
J. P. Mitchell, Catherine D. Schuman, R. Patton 等
A Scalable Multicore Architecture With Heterogeneous Memory Structures for Dynamic Neuromorphic Asynchronous Processors (DYNAPs)
S. Moradi, Ning Qiao, F. Stefanini 等
Neural Coding in Spiking Neural Networks: A Comparative Study for Robust Neuromorphic Systems
Wenzhe Guo, M. Fouda, A. Eltawil 等
Efficient Neuromorphic Signal Processing with Loihi 2
G. Orchard, E. P. Frady, D. B. Rubin 等
SYNtzulu: A Tiny RISC-V-Controlled SNN Processor for Real-Time Sensor Data Analysis on Low-Power FPGAs
Gianluca Leone, Matteo Antonio Scrugli, Lorenzo Badas 等
Gridbot: An autonomous robot controlled by a Spiking Neural Network mimicking the brain's navigational system
Guangzhi Tang, K. Michmizos
Real-Time Evolution and Deployment of Neuromorphic Computing at The Edge
Catherine D. Schuman, Steven R. Young, Bryan P. Maldonado 等
Event-based PID controller fully realized in neuromorphic hardware: a one DoF study
R. Stagsted, A. Vitale, Alpha Renner 等