International Conference on Field Programmable Logic and Applications(FPL)-2015-2020

19-1Bent Routing Pattern for FPGA

Xibo Sun, Hao Zhou, Lingli Wang*
8pages

Abstract

FPGA的布局布线在FPGA早期设计中十分重要,在目前的无向布局布线结构中,通过编程控制的开关实现信号的传输,在交叉的直角处需要额外的转角开关,从而导致布线长度增加、增大时延。现有的研究往往聚焦于布线的拓扑结构,考虑如何在垂直和水平方向分配各种wire;本文则另辟蹊径,提出了一种弯曲的布局模式,通过这种bent routing pattern,可以跨越水平和垂直方向完成拐角处的连接,并且仍然保持着原电路的对称性和规则性,最后基于退火算法进行了随机搜索的仿真,仿真结果表明,混合使用bent wire和straight wire进行FPGA的连接,减少了9%的关键路径延迟以及11%的area-delay。

19-2 A Low-Latency Multi-Version Key-Value Store Using B-tree on an FPGA-CPU Platform

Author:Yuchen Ren 1 , Jinyu Xie 1 , Yunhui Qiu 1 , Hankun Lv 1 , Wenbo Yin 1 , Lingli Wang 1 , Bowei Yu 2 , Hua Chen 2 ,
Xianjun He 2 , Zhijian Liao 2 , Xiaozhong Shi 2
*
5pages

Abstract

近年来许多低延迟的key-value store系统广受关注,比如为了降低网络中传输服务器端数据处理时间的远程直接数据存取技术(Remote Direct Memory Access,RDMA),RDMA通过网络把资料直接传入计算机的存储区,将数据从一个系统快速移动到远程系统存储器中,而不对操作系统造成任何影响,这样就不需要用到多少计算机的处理功能。
但是,大多数KVS系统目前并不支持不同机器上数据的访问或查询,比如进行快照(snapshot)。本文就基于FPGA搭建了一款低延迟-跨机器的存内KVS平台,使用布谷鸟散列(cuckoo hashing)构建哈希表存储key值,并且将每一组键值对与服务器存储端实际的key保持一致。搭建的这一系统支持以下操作:put,get,delete,CAS(Compare and Swap),getPredecessor和range query within a B-tree。上述操作,除了range query within a B-tree,都绕过了CPU执行。
以get操作为例,实验结果显示在5-level B-tree平均操作时间为8us,与在CPU上的执行时间相比,获得了9倍的加速。

18-1 RNA: An Accurate Residual Network Accelerator for Quantized and Reconstructed Deep Neural Networks

Authors:Cheng Luo 1 , Yuhua Wang 1 , Wei Cao 1 , Philip H.W. Leong 2 , Lingli Wang*
4pages

Abstract

随着DNN研究的深入,提出了一系列复杂精密的网络,如残差网络ResNet在图像分类任务中显示出良好的性能,但由于结构的复杂性和庞大的计算量使得残差网络的硬件实现是一件十分困难的事。
本文首先提出了一种量化-重建网络的方法(Quanized and reconstructed DNN,QR-DNN),可以在训练时加入BN层在硬件实施时再移除;其次基于QR-DNN设计了一款简洁高效的残差网络加速器(Residual Network Accelerator,RNA),在对数系统中完成权重的表示。RNA以一种脉动的方式实现移位-累加运算而不是乘法运算。
实验结果表明,QR-DNN策略的精度比目前其他方法提升了1-2%,RNA在定点数加速器中取得了最佳效果。本文在Xilinx Zynq XC7Z045板子上的加速效果为:s 804.03 GOPS, 104.15 FPS and 91.41%
top-5 accuracy for the ResNet-50 benchmark,在AlexNet和VGG上也做到了SOTA。

18-2 A Novel Low-Communication Energy-Efficient Reconfigurable CNN Acceleration Architecture

Authors:Di Wu,Jin Chen,Wei Cao,Lingli Wang*
4 pages

Abstract

Winograd是一种非常高效的快速卷积算法,可有效减少卷及计算的计算次数。[Ref:Winograd基于Winograd本文首先提出了一种矩阵计算方法进一步减少了Winograd本身的计算量,并且使用一种核分配策略(kernel-partitioning)使得Winograd可以适应较大步长的卷积运算。其次过多的片外通信off-chip communication也会阻碍计算效率,由于不同框架使得DRAM内部存储的数据各不相同,过多的DRAM access也不利于效率的提升,因此本文使用动态配置结合片上共享memory来减少对DRAM的访问。最终本文可配置三种不同的数据流,实验测试了VGG16,AlexNet和ResNet50的实现效果,最终加速性能: 685.6GOP/s,1250GOP/s and 507GOP/s for AlexNet, VGGNet16 and ResNet50。
实验平台:ZC706

18-3 Fast Adjustable NPN Classification Using Generalized Symmetries

Authors:Xuegong Zhou, Lingli Wang,Peiyi Zhao
7pages

Abstract

NPN分类是FPGA做逻辑综合和映射mapping时常用的技术手段,分类时常需要计算canonical form of a function,本文就提出了计算函数范式的一种新方法,通过对称-折叠不算减少计算的搜索空间,使得运行时间极速减少。通过这种计算方法可达到30x的加速比。

17-1 Accelerating Low Bit-Width Convolutional Neural Networks With Embedded FPGA

Authors:Li Jiao, Cheng Luo, Wei Cao, Xuegong Zhou, Lingli Wang*
4pages

Abstract

卷积神经网络可达到较高的分类准确率,但计算复杂,二值神经网络BNN通过二值化权重和激活值大大简化了计算但不可避免的带来了精度的损失。本文首先对比了低位宽CNN,BNN和标准的CNN的硬件实现效果,实验结果表明低位宽的CNN更适合嵌入式系统。其次,本文提出了一个二段式计算单元(two-stage arithmetic unit,TSAU)作为每一层计算的基础单元,从而加速低位宽CNN中每一层的计算。最后在Zynq XC7Z020硬件实现了 DoReFa-Net,其中权重和激活值分别用1bit和2bit代表最终加速效果为: 106 FPS throughput, 73.1% top-5 accuracy on the ImageNet dataset。
本文的实现方法在目前用FPGA的神经网络加速器中达到了SOTA,很好的权衡了accuracy,energy和resource efficiency.

17-2 FPGA Acceleration of the Scoring Process of X!TANDEM for Protein Identification

Authors:Jin Qiu, Ping Kang, Li Ding, Yipeng Yuan, Wenbo Yin, Lingli Wang
4pages

Abstract

串联质谱法(Tandem mass spectrometry)是蛋白质检测的主要技术手段,X!Tandem是一款蛋白库搜索软件,但在庞大的搜索空间中执行一次搜索任务往往需要耗费数小时甚至数天,因此急需一种高效的搜索方式。而X!Tandem搜索时间的70%-90%花费在剖面分析(Profiling analysis )上,主要通过计算串联待测质谱峰的离子强度来产生评分。本文就针对X!Tandem的scoring process过程使用FPGA进行加速,在Xilinx Virtex-7 XC7VX690T FPGA模拟了1次粒子生成和6次评分生成的过程,与X!Tandem的纯软实现(a 2.5GHz Intel i7-4870 processor with 16 GB memory)相比获得了26倍的加速,其中ion generation:67x,score generation:17x。并且评分生成模块的 scalability是线性变化的,比之前并行的加速策略的加速效果都要好。

16-1 FPGA Acceleration of the Scoring Process of X!TANDEM for Protein Identification

Author:Huimin Li, Xitian Fan, Li Jiao, Wei Cao, Xuegong Zhou, Lingli Wang*

Abstract

近年来卷积神经网络广泛用于计算机视觉领域,但一些大型的卷积神经网络对算力、内存要求极高,限制了CNN的硬件实现。本文则提出了一种端到端基于FPGA实现的神经网络加速器,可以将网络的所有层映射到同一芯片,网络各层次可以以流水线方式并行计算从而提升吞吐率;为了提高吞吐率和资源利用率,本文还提出了新的并行化策略,以一种patch-based的方式完成全连接层的计算,这样可以提升内部带宽的利用率;此外,通过给FC层输入两种特定规格的输入数据,可以大大减少片上所需buffer。在 Xilinx VC709部署实现AlexNet的实验结果显示,加速后性能达到: 565.94 GOP/s and 391 FPS , 156MHz clock frequency

16-2 Reconfigurable Architecture for Stream Applications

** Author:Xitian Fan, Huimin Li, Wei Cao*, Lingli Wang**

Abstract

本文针对计算机视觉领域下的物体检测任务,提出了一种由粗到细的可重构架构(CGRA),CGRA主要优化了流处理器部分(stream processing),设计了一个编程模块。CGRA用VHDL写成,用的SMIC 55nm工艺库。在CGRA框架中测试了8种计算:HOG,CNN,K-means,PCA,SPM,linear-SVM,softmax和 Joint-Bayesian,可以看到都是人脸/物体检测会用到的一些操作。实验结果显示在CGRA实现比CPU( Intel i7-3770)实现获得了1443x的能效提升,比FPGA获得了7.82x的能效提升。

16-3 Connect On the Fly: Enhancing and Prototyping of Cycle-Reconfigurable Modules

**Authors:Hao Zhou ∗ , Xinyu Niu † , Junqi Yuan ∗ , Lingli Wang ∗ , Wayne Luk **

Abstract

为了提成FPGA对动态数据各种操作的支持,本文提出了一款循环可重构模块(cycle-reconfigurable module),运行时只需要获取数据大小、location就可以完成数据的访问。整个模块包含:dynamic FIFOs,dynamic caches和dynamic shared memories三部分。基于SMIC 130nm工艺设计了包含cycle-reconfigurable module的FOGA芯片,整个module仅包含39个CLB,可在1.2ns内完成配置工作。适合于大规模搜索、稀疏矩阵乘法,与常规的FPGA的配置时间加速比为11x。

16-4 Memory Efficient and High Performance Key-value Store on FPGA Using Cuckoo Hashing

Authors:Wei Liang, Wenbo Yin ∗ , Ping Kang, Lingli Wang

Abstract

Key-Value Store是当下比较流行的话题,尤其在构建诸如搜索引擎、游戏服务器等大型互联网应用以及提供云计算服务的时候,怎样保证系统在海量数据环境下的高性能、高可靠性、高扩展性、高可用性、低成本成为各种系统架构探索的重点,而怎样解决KVS的吞吐量和延迟是最大的挑战。借助FPGA的并行计算可大大提高能效,而Cuckoo hashing是一种高效实现KVS的方法,可以有效提升资源利用率,保持几乎固定的最坏运行时间。
本文就基于Cuckoo hashing在FPGA上实现了KVS,memory利用率:81.7%,执行insert,search,delete操作的延迟仅有40ns,而执行search和delete操作的吞吐率达到了200MRPS,是当前SOTA的5倍。

15-1 Greedy Approach Based Heuristics for Partitioning SpMxV on FPGAs

Authors:Jiasen Huang’, Weina Lu2, Junyan Ren’

Abstract

早期为了解决稀疏矩阵乘法的0填充问题,主要的优化思路在于将稀疏矩阵分解为行向量或子矩阵,但稀疏性仍然不可避免的带来了性能的下降。本文提出了一种循环合并的方式(recursive merging),基于贪心策略不断地将非零向量合并到行向量集中,保证每一个集合中都是当前的局部最优解。在公开的University of Florida Sparse Matrix Collection benchmark中,本文这种算法取得了最高的mean density(96%),在 32 processor的XC7V485T 上进行稀疏矩阵乘法的加速比为249x。

15-2 UniStream: A Unified Stream Architecture Combining Configuration and Data Processing

*Author:Jian Yan 1 , Jifang Jin 1 , Ying Wang 1 , Xuegong Zhou 1 , Philip Leong 2 and Lingli Wang **

Abstract

本文的Unistream(unified stream)将比特流与数据流的处理合二为一,还提供了统一的API来支持比特流配置、数据流处理以及流的互连。 本文提出了评估流互连、硬件任务配置和系统级数据流处理的成本模型,可用于开发早期阶段的成本评估。 在XilinxVirtex-5和Virtex-6FPGA上演示了Unistream的灵活性和高能效。 在比特流配置/读回、数据加密/解密和离散余弦变换等方面的实验结果表明,采取不同的流模式可以显著提高性能。

你可能感兴趣的