Skip to main content
QUICK REVIEW

[论文解读] Low Latency Neural Networks using Heterogenous Resources on FPGA for the Belle II Trigger

S. Baehr, S. Mccarney|arXiv (Cornell University)|Oct 30, 2019
Particle Detector Development and Performance参考文献 8被引用 4
一句话总结

本论文提出了一种面向Belle II实验的优化FPGA神经z-Vertex触发器,通过时间复用调度乘加(MAC)操作,并均衡使用SRAM-LUT与DSP资源,将DSP资源使用量降低了40%。该方法使两个并行神经网络能够在5µs延迟预算内运行,提升了吞吐量,同时在Virtex UltraScale FPGA上实现了时序收敛。

ABSTRACT

One of the major components of the Belle II trigger system is the neural network trigger. Its task is to estimate the z-Vertex particle tracks observed in the experiments drift chamber. The trigger is implemented on FPGAs to ensure exibility during operation and leverage their IO capabilities. Meanwhile the implementation has to estimate the vertex in a few hundred nanoseconds to fulfil the requirements of the experiment. A first version of that trigger was operational during the first collisions. While it was able to estimate the vertex, it had some drawbacks regarding the possible throughput and timing closure. These are the focus of this work, which modifies the original design to allow two networks running in parallel and less routing congestion. We conducted a rescheduling of multiply and accumulate which are the basic operations in such networks. While the original design tried to parallelize as much as possible, the rescheduling tries to reduce the number of parallel data transmission by reusing processing modules. This way resource consumption was reduced by 40% for DSPs. To further increase the throughput by operating an additional network in parallel, we investigated the balanced use of SRAM-LUTs and DSPs for multiply and accumulate operations. With the found balancing ratio the trigger is able to operate two neural networks in parallel on the targeted FPGA within the required latency.

研究动机与目标

  • 解决现有FPGA神经z-Vertex触发器在Belle II实验中面临的资源拥塞与吞吐量限制问题。
  • 在保持5µs延迟和31.75 MHz吞吐量要求的前提下,降低DSP资源消耗。
  • 通过优化SRAM-LUT与DSP之间的资源平衡,实现在单个FPGA上并行运行两个神经网络。
  • 通过重新调度MAC操作在时钟周期间的分布,提升布线效率并实现时序收敛。
  • 为未来需要更高轨迹处理能力的升级需求,开发可扩展的解决方案。

提出的方法

  • 将乘加(MAC)操作重新调度至多个时钟周期,以减少并行数据传输并复用处理单元。
  • 在单个神经元内及神经元之间实现MAC操作的时间复用执行,以最小化资源需求。
  • 在DSP与SRAM-LUT之间均衡MAC计算,采用40%的LUT与60%的DSP,避免资源瓶颈。
  • 通过交错与流水线化层处理,降低延迟并提升资源利用率,同时不超出5µs的截止时间。
  • 使用控制器管理时间复用设计中跨时钟周期的多路选择器路由与数据流。
  • 在Virtex UltraScale XCVU080 FPGA上,通过资源利用率与时序分析评估设计方案。

实验结果

研究问题

  • RQ1如何重新调度神经网络触发器中的MAC操作,以在不增加延迟的前提下降低DSP资源使用?
  • RQ2在低延迟FPGA设计中,SRAM-LUT与DSP之间实现MAC单元的最优平衡是什么?
  • RQ3通过异构资源利用,是否可以在5µs延迟预算内执行两个并行神经网络?
  • RQ4MAC操作的时间复用对布线拥塞与整体设计可布线性有何影响?
  • RQ5在保持31.75 MHz吞吐量与5µs延迟要求的前提下,资源消耗可降低到何种程度?

主要发现

  • MAC操作的时间复用使DSP使用量相比原始并行设计降低了40%,实现了297个基于DSP的MAC单元。
  • 异构实现方案使用了44%的DSP与30%的SRAM-LUT,而纯DSP方案则使用68%的DSP与17%的LUT。
  • SRAM-LUT与DSP的均衡使用通过重用输入值而非并行布线,减少了布线拥塞。
  • 设计实现了最高127 MHz的频率,尽管增加了流水线,但仍满足5µs延迟约束。
  • 优化后的设计可在同一FPGA上支持两个并行神经网络,为未来升级提供更高吞吐量。
  • 该方法减轻了关键路径上的资源压力,提升了XCVU080 FPGA上的时序收敛性与设计稳定性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。