A Study of the Speedups and Competitiveness of FPGA Soft Processor Cores using Dynamic Hardware/Software Partitioning
现场可编程门阵列(FPGA)为设计人员提供了快速创建硬件电路的能力。FPGA可配置逻辑容量的增加和FPGA成本的降低使设计人员能够更容易地将FPGA纳入其设计中。FPGA供应商已经开始提供可配置的软处理器内核,这些内核可以合成到他们的FPGA产品中。虽然具有软处理器内核的FPGA为设计人员提供了更高的灵活性,但与硬核处理器相比,此类处理器通常具有降低的性能和能耗。在此之前,我们提出了翘曲处理,一种能够通过动态和透明地重新实现关键软件内核作为片上可配置逻辑中的自定义电路来优化软件应用程序的技术。在本文中,我们研究了基于MicroBlaze软核的翘曲处理系统的潜力,以消除软核处理器的性能和能量开销相比,一个硬核处理器。我们证明,基于软核的翘曲处理器实现平均加速比为5.8和57%的能源减少相比,单独的软核。我们的数据表明,基于软核的翘曲处理器产生的性能和能耗与现有的硬核处理器的竞争力,从而扩大了软处理器内核的FPGA上更广泛的应用程序的有用性。
2007-10-25 cs.AR
Model-based Hardware Design for FPGAs using Folding Transformations based on Subcircuits
我们提出了一个工具流程和结果的基于模型的硬件设计的FPGA从Simulink的描述,很好地集成到现有的环境。虽然目前的商业工具不利用一些高层次的优化,我们研究了有前途的方法,使用可重用的子电路折叠变换来控制嵌入式乘法器的使用和优化逻辑块的使用。我们表明,与原始模型相比,高达70%的资源改进是可能的,但它也表明,子电路的选择是一个关键的任务。虽然我们的工具流程已经提供了良好的结果,但子电路选择的研究和优化显然被确定为扩展对低级FPGA映射属性的高级控制的附加关键点。
2015-08-27 cs.AR
A Novel FPGA-based CNN Hardware Accelerator: Optimization for Convolutional Layers using Karatsuba Ofman Multiplier
本文提出一种基于FPGA的CNN硬件加速器,利用Karatsuba Ofman乘法器优化AlexNet、VGG16和VGG19的卷积层,以更少硬件资源实现高速乘法。
2024-12-29 cs.AR
Hardware-Efficient Accurate 4-bit Multiplier for Xilinx 7 Series FPGAs
Graduate School of Science and Technology, Faculty of Engineering, Shinshu University(长野大学理工学部工学研究科);Shinshu University(长野大学)
针对FPGA上并行低比特宽运算,提出仅用11个LUT和2个CARRY4的精确4位乘法器,减少1个LUT并缩短关键路径,延迟2.750ns。
2026-10-20 cs.AR
always_comm: An FPGA-based Hardware Accelerator for Audio/Video Compression and Transmission
提出一种基于 Nexys4 DDR FPGA 的全硬件可扩展视频会议栈,使用 M-JPEG 和 UDP 实现 30 FPS 音视频实时传输与播放,并通过仿真和综合评估了延迟与吞吐量。
2025-09-15 cs.AR
Bombyx: OpenCilk Compilation for FPGA Hardware Acceleration
École Polytechnique Fédérale de Lausanne(洛桑联邦理工学院)
Bombyx是一种面向FPGA硬件加速的OpenCilk编译器,通过将OpenCilk程序转换为Cilk-1中间表示,实现高效的任务级并行应用映射,并引入解耦优化提升性能。
2025-11-26 cs.AR
FPGA design of a cdma2000 turbo decoder
本文介绍了一种适用于cdma2000标准的Turbo解码器的FPGA硬件设计。基于MAX-Log-MAP算法,对Turbo码译码过程进行了研究和数学分析。文中给出了250比特数据包的译码结果,并分析了面积与性能的关系,以及Turbo码译码中硬件设计的关键变量。
2014-04-23 cs.AR
Architecture Support for FPGA Multi-tenancy in the Cloud
云部署现在越来越多地将FPGA加速器作为虚拟实例的一部分。虽然FPGA本质上仍然是单租户的,但对硬件加速的需求不断增长将不可避免地导致对支持FPGA多租户的方法和架构的需求。在本文中,我们提出了一个架构,支持空间共享的FPGA设备之间的多个租户在云中。该架构实现了一个片上网络(NoC)设计的快速数据移动和低硬件占用。在Xilinx Virtex Ultrascale+上对所提出的架构进行原型设计,证明了片上数据移动的最大频率接近规格,虚拟实例访问硬件加速器的吞吐量也很高。与单租户部署相比,我们展示了类似的性能,同时提高了FPGA利用率(我们的案例研究实现了6倍的FPGA利用率),这是虚拟化的主要目标之一。总体而言,我们的NoC互连实现了比最先进技术高出约2倍的最大频率和25.6 Gbps的带宽。
2020-06-14 cs.AR
Rosebud: Making FPGA-Accelerated Middlebox Development More Pleasant
我们介绍了一种设计FPGA加速中间盒的方法,通过解耦硬件加速器实现和软件应用程序编程的任务,简化了开发,调试和性能调整。Rosebud是一个框架,通过标准化的硬件/软件接口将硬件加速器链接到高性能数据包处理管道。这种关注点的分离使硬件开发人员能够专注于优化自定义加速器,同时使软件程序员能够以类似于软件库的方式重用、配置和调试加速器。我们通过在不到一个月的时间内构建一个基于大型黑名单的防火墙和移植Pigernet IDS模式匹配加速器来展示Rosebud框架的好处。我们的实验表明,Rosebud提供了高性能,服务约200 Gbps的流量,同时只增加了0.7-7微秒的延迟。
2023-03-17 cs.AR
A Reconfigurable Framework for AI-FPGA Agent Integration and Acceleration
Purdue University(普渡大学);University of Illinois Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校);University of Moratuwa(莫拉图瓦大学);Stanford University(斯坦福大学);Istinye University(伊斯提耶大学)
本文提出AI-FPGA代理框架,通过动态分区和硬件卸载实现深度学习推理的高效加速,实验显示在延迟和能效方面优于CPU和GPU。
2026-01-27 cs.AR
Design space exploration for image processing architectures on FPGA targets
由于图像和视频处理、通信和密码学中嵌入式应用的出现,图像信息的改善以获得更好的人类感知,如在卫星成像、医学成像、移动应用等几个领域中的去模糊、去噪,对于重新研究越来越重要。在这些发展的背后,主要责任在于半导体技术的进步,导致基于FPGA的可编程逻辑器件,它结合了定制硬件和专用DSP资源的优势。此外,FPGA提供了强大的可重构功能,因此是快速原型的理想目标。我们一直在努力利用FPGA技术的硬件并行性方面的特殊功能,导致更高的计算密度和吞吐量,并观察到更好的性能比那些人可以得到仅仅是移植的图像处理软件算法的硬件。在本文中,我们打算提出一个详细的审查,根据我们的专业知识和经验,进行必要的改造,以一个图像处理软件算法,包括优化技术,使其在硬件中的操作相对更快。
2014-04-15 cs.AR
Model Compression and Hardware-Aware Acceleration for Deep Learning on FPGAs: A Co-Design Taxonomy and Comparative Analysis
本综述针对FPGA的深度学习部署,建立压缩与硬件加速的分类体系,分析25项案例研究,发现领域表征缺口,明确六项开放挑战并给出具体下一步方向。
2026-08-25 cs.AR
FINN-GL: Generalized Mixed-Precision Extensions for FPGA-Accelerated LSTMs
Reconfigurable Computing Systems Lab(可重构计算系统实验室);Advanced Micro Devices (AMD) Research(Advanced Micro Devices (AMD) 研究)
本文基于开源FINN框架,利用ONNX的Scan算子建模LSTM循环特性并支持混合量化,通过自定义编译转换将量化计算图映射至FPGA硬件块,实现了广义的LSTM部署,并在股票预测任务中验证了其在性能、资源与精度间的平衡。
2025-06-25 cs.AI cs.AR cs.LG
A Novel Method for Soft Error Mitigation in FPGA using Adaptive Cross Parity Code
与专用集成电路(ASIC)相比,现场可编程门阵列(FPGA)在存在辐射和其他环境危害的情况下更容易受到瞬态故障的影响。因此,错误缓解和恢复技术是绝对必要的,以保护FPGA硬件从软错误所产生的,由于这种瞬态故障。提出了一种基于自适应交叉奇偶检验(ACPC)码的FPGA多位纠错方法。ACPC易于实现,所需的解码电路也很简单。在所提出的方案中,总的配置存储器分为两部分。一部分将包含ACPC硬件,它是静态的,并假定不受任何错误的影响。其他部分将存储用于逻辑的二进制文件,其将被保护免受瞬时错误,并且被假定为是动态可重配置的(部分可重配置区域)。来自辅助存储器的二进制文件通过ACPC硬件,并且在进入可重配置部分之前计算用于前向纠错(FEC)字段的位。在运行时场景中,来自配置存储器的动态可重配置部分的数据将被读回并通过ACPC硬件传递。ACPC硬件将在数据进入动态配置存储器之前纠正错误。我们提出了第一种新的瞬态故障校正方法,使用ACPC代码的FPGA。为了验证设计,我们用Kintex FPGA测试了所提出的方法。我们还测量了不同的参数,如关键路线,功耗,开销资源和纠错效率来估计我们提出的方法的性能。
2015-09-23 cs.AR
Implementation and Analysis of Thermometer Encoding in DWN FPGA Accelerators
Fulda University of Applied Sciences(富尔达应用科学大学)
本文提出了一种包含显式温度编码的DWN硬件生成器,通过实验表明温度编码显著增加LUT使用量,凸显了在DWN加速器中进行编码意识设计的重要性。
2025-12-17 cs.AR
SME: A High Productivity FPGA Tool for Software Programmers
几十年来,CPU一直是大多数计算中使用的标准模型。虽然CPU确实在某些领域表现出色,但异构计算(如可重新配置的硬件)在并行化、性能和功耗等领域显示出越来越大的潜力。这在支持深流水线或紧延迟要求的问题中尤其突出。然而,由于这些问题的性质,它们可能很难编程,至少对于软件开发人员来说是这样。同步消息交换(SME)是一个运行时环境,允许在C#中开发,测试和验证FPGA器件的硬件设计,并访问现代调试和代码功能。我们的目标是为软件开发人员创建一个框架,以便轻松实现FPGA设备的系统,而无需获得大量的硬件编程知识。本文简要介绍了SME模型以及SME的最新更新。最后,将介绍一系列学生项目和示例,以展示如何在SME中创建非常复杂的结构,即使是没有硬件经验的学生。
2021-04-20 cs.AR
A Survey of FPGA-Based Neural Network Accelerator
最近的研究表明,神经网络在机器学习中比传统的基于手工特征和模型的算法具有显著的优势。神经网络在图像、语音和视频识别等领域得到了广泛的应用。但神经网络推理的高计算和存储复杂性给其应用带来了很大困难。CPU平台很难提供足够的计算能力。GPU平台以其高计算能力和易用的开发框架成为神经网络处理的首选平台。另一方面,基于FPGA的神经网络推理加速器也成为一个研究课题。通过专门设计的硬件,FPGA是下一个可能在速度和能效方面超越GPU的解决方案。已经提出了各种基于FPGA的加速器设计,其具有软件和硬件优化技术以实现高速和能量效率。本文综述了基于FPGA的神经网络推理加速器的研究进展,并对其中的主要技术进行了总结。从软件到硬件,从电路级到系统级,对基于FPGA的神经网络推理加速器的设计进行了全面的分析,为以后的工作提供了指导。
2018-12-06 cs.AR
Hardware-Software Co-Design for Event-Driven SNN Deployment on Low-Cost Neuromorphic FPGAs
Kwangwoon University(光云大学);Indian Institute of Technology Delhi(印度理工学院德里分校);University of Illinois Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校)
本文提出一种保持语义的软硬件协同设计框架,实现PyTorch定义的SNN在事件驱动FPGA上的确定性部署,通过单一导出 artifact 实现软件定义到硬件执行的无缝衔接,实验表明在MNIST分类任务中达到87.40%的准确率,且在低功耗下实现高效能。
2026-08-31 cs.AR
An FPGA-Based Hardware Accelerator for Energy-Efficient Bitmap Index Creation
位图索引被认为是在线分析处理系统的一个很有前途的候选者,因为它不仅有效地支持并行处理,而且还支持复杂的多维查询。但是,位图索引创建是一项耗时的任务。本研究充分利用现场可编程门阵列(FPGA)的大规模并行计算能力,首次提出了两种位图索引生成硬件加速器BIC 64 K8和BIC 32 K16。每个加速器包含两个主要组件,即增强的内容可寻址存储器和查询逻辑阵列模块,允许BIC 64 K8和BIC 32 K16在每个时钟周期并行索引65,536个8位字和32,768个16位字。在Intel Arria V 5ASTFD 5 FPGA上的实验结果表明,在100 MHz时,BIC 64 K8和BIC 32 K16的索引吞吐率分别达到1.43 GB/s和1.46 GB/s。吞吐量也被证明是稳定的,无论数据集的大小。更重要的是,与基于中央处理单元和图形处理单元的设计相比,BIC 32 K16的能耗分别仅为6.76%和3.28%。
2018-04-20 cs.AR
A Memory-Efficient FM-Index Constructor for Next-Generation Sequencing Applications on FPGAs
FM-索引是用于字符串搜索的有效数据结构,并且广泛用于下一代测序(NGS)应用,例如序列比对和从头组装。最近,FM索引甚至被执行到读取级别,提高了对FM索引构建的有效算法的需求。在这项工作中,我们提出了一个硬件兼容的自辅助增量索引(SAII)算法和它的硬件架构。该算法在建立FM索引时不需要占用内存,而且实现算法的硬件系统非常紧凑。为了提高计算效率,设计了并行结构和专用的预取控制器。基于SAII的FM索引构造器在Altera Stratix V FPGA板上实现。所呈现的构造器可以支持大小高达131,072-bp的DNA序列,这对于从当前主要平台获得的小规模参考和读取是足够的。由于所提出的构造器需要很少的硬件资源,它可以很容易地集成到不同的硬件加速器设计的FM索引为基础的应用程序。
2021-02-05 cs.AR
Improving Reliability, Security, and Efficiency of Reconfigurable Hardware Systems
在这篇论文中,我研究的方法,以提高效率,可靠性和安全性的可重构硬件系统,即,介绍了FPGA通过局部动态重构的方法。可重构系统的效率可以通过在FPGA结构上动态加载优化的数据路径来提高。该技术被应用于大型数据库应用程序以及图像和信号处理应用程序的SQL查询加速。重点不仅是性能改进和资源效率,而且能源效率也得到了显著提高。在可靠性方面,研究了针对长任务时间辐射引起的故障和老化效应的对策,并将其应用于基于SRAM-FPGA的卫星系统。最后,为了提高基于FPGA的加密实现的安全性,以防止物理攻击,即,侧通道和故障注入分析以及逆向工程的基础上,提出了利用动态部分重构将静态电路结构转化为动态电路结构的方法。
2018-09-28 cs.AR
Optimization Techniques to Improve Inference Performance of a Forward Propagating Neural Network on an FPGA
本文描述了一个优化的前向分类神经网络,它已经事先训练的实现。所描述的实现突出了使用Python脚本来生成Verilog硬件实现的新颖方法。该实现的特点包括优化缩放输入数据,使用选定的adjuster代替乘法函数,硬件友好的激活函数和简化的输出选择。将详细介绍英特尔i7与Xilinx FPGA上的软件实现之间的28x28像素“手写”识别NN的推理性能比较。
2020-12-15 cs.AR
TurboFuzz: FPGA Accelerated Hardware Fuzzing for Processor Agile Verification
State Key Lab of Processors, Institute of Computing Technology, Chinese Academy of Sciences(处理器国家重点实验室,中国科学院计算技术研究所);University of Chinese Academy of Sciences(中国科学院大学);University of Cambridge(剑桥大学);The University of Sydney(悉尼大学)
TurboFuzz利用FPGA加速实现高效的处理器验证,通过优化测试生成和反馈机制提升覆盖率和性能
2026-02-03 cs.AR
FastFlow in FPGA Stacks of Data Centers
针对数据中心 FPGA 堆栈并行编程复杂的问题,本文扩展 FastFlow 并结合 Vitis,通过 csv 参数自动生成主机端代码,显著提升可扩展性并减少 96% 编码工作量。
2024-09-30 cs.AR
Design and implementation of real time AES-128 on real time operating system for multiple FPGA communication
安全性是数据通信系统中最重要的组成部分,密钥的随机性增加了密码算法的复杂性和安全性。因此,在最近的日期,这些算法正在补偿与巨大的存储空间和大量的硬件平台上的执行时间。现场可编程门阵列(FPGA)由于其可重构性、低价格和快速上市等优点,成为硬件平台的主要选择之一。在基于FPGA的嵌入式系统中,我们可以使用嵌入式处理器来执行特定的算法,并包含一个实时的操作系统(RTOS),其中线程可以减少资源利用率和时间消耗。该方法将运行时的进程划分为不同的小任务,由调度器执行,以满足实时操作系统的实时的截止时间。在Xilkernel实时操作系统Xilinx Spartan- 3E(XC 3S 500 E-FG 320)上,设计并实现了一个128位的高级加密标准(AES)对称密钥加密和解密算法,并通过了测试,优化了系统的执行速度和硬件利用率。
2012-05-10 cs.AR
From Patterns to Parsers: Automatic Generation of Efficient Hardware Parsers for FPGAs
Meta Platforms, Inc.(Meta平台公司);Department of Electrical and Computer Engineering, University of Waterloo(滑铁卢大学电气与计算机工程系)
该研究提出开源工具,从高级规范自动生成高效硬件解析器。利用PIR解耦前端与后端,扩展模式匹配。通过以太网和网络入侵检测流程演示,生成的解析器在频率和资源利用上表现出色,为多样应用实现高性能、资源高效的硬件解析器。
2026-07-20 cs.AR
FINNAS: FINN-Guided Hardware-Aware NAS and Pruning for FPGA Jet Substructure Classification
Reconfigurable Computing Systems Lab, Electronic & Electrical Engineering(可重构计算系统实验室,电子与电气工程系);Trinity College Dublin, Ireland(都柏林三一学院)
FINNAS提出FINN引导的硬件感知进化神经架构搜索框架,联合搜索量化MLP深度、宽度和精度,在CERNBox喷注子结构分类任务上,相比手动优化FINN加速器,精度提升至74.36%,LUT减少8.5倍,延迟减少1.77倍。
2026-09-16 cs.AR
ARMOR: Robust and Efficient CNN-Based SAR ATR through Model-Hardware Co-Design
University of Southern California(南加州大学)
ARMOR通过模型-硬件协同设计,在FPGA平台上实现SAR ATR的鲁棒性和高效性。
2026-03-04 cs.AR
FPGA Based Accelerator for Neural Networks Computation with Flexible Pipelining
FPGA由于其高功率效率和可配置性而适合于定点神经网络计算。然而,它的设计必须经过深入的改进,以利用有限的硬件资源实现高性能。我们提出了一个基于FPGA的神经网络加速器及其优化框架,它可以实现各种CNN模型和FPGA资源的最佳效率。针对高吞吐量,我们采用分层流水线架构,以提高DSP的利用率。为了获得最佳性能,还提出了一种灵活的算法来分配均衡的硬件资源到每一层,激活缓冲区的设计支持。通过在ZC706上均衡实现四个CNN模型,DSP的利用率和效率超过90%。对于ZC 706上的VGG 16,所提出的加速器实现的性能分别是参考的非流水线架构[1]、流水线架构[2]和[3]的2.58倍、1.53倍和1.35倍。
2021-12-28 cs.AR
Fault Detection for RC4 Algorithm and its Implementation on FPGA Platform
在密码算法的硬件实现中,即使该算法在数学上是安全的,也可以通过创建范围以引入受控错误位来实现秘密信息的泄漏。该技术对于嵌入在灵巧卡中的密码处理器是非常有效的。本文设计了几种RC 4算法的故障检测结构,并在Virtex5(ML505,LX110t)FPGA板上实现。结果表明,所提出的架构可以处理大多数的故障,而不会损失吞吐量消耗边际额外的硬件和电源。
2014-01-13 cs.AR
Performance Enhancement of Routers in Networks-on-Chip Using Dynamic Virtual Channels Allocation
本研究提出一种新的路由器架构,以改善虚拟通道的动态分配效能。建议的路由器的设计,以减少硬件的复杂性,并提高功耗和面积消耗,同时。在新结构的路由器中,所有的控制组件已实现内部的分配器路由器模块顺序。这优化了控制组件之间的通信,并消除了模块化通信的大部分硬件过载。消除额外的通信也降低了硬件复杂性。为了在实际的硬件资源中显示所提出的设计的有效性,所提出的路由器已实现到一个现场可编程门阵列(FPGA)。由于片上网络(NoC)的实现需要一定的芯片面积,所提出的方法也能够减少硬件资源的需求。在该方法中,FPGA的内部存储器用于实现控制单元。这种内存速度更快,可以用于特定的模式。FPGA存储器的使用节省了硬件资源,并允许基于FPGA的NoC的实现。
2014-12-09 cs.AR
On-FPGA Training with Ultra Memory Reduction: A Low-Precision Tensor Method
已经开发了各种硬件加速器,用于边缘设备上神经网络的节能和实时推理。然而,大多数训练是在高性能GPU或服务器上完成的,巨大的内存和计算成本阻止了在边缘设备上训练神经网络。本文提出了一种新的基于张量的训练框架,该框架在训练过程中提供了数量级的内存减少。提出了一种新的秩自适应张量化神经网络模型,并设计了一种硬件友好的低精度算法来训练该模型。我们提出了一个FPGA加速器,以证明这种训练方法在边缘设备上的好处。我们的初步FPGA实现实现$59\times$加速和$123\times$能源减少相比,嵌入式CPU,和$292\times$内存减少了标准的全尺寸训练。
2021-04-19 cs.AR
Pipeline Automation Framework for Reusable High-throughput Network Applications on FPGA
OVHcloud;Univ. Grenoble Alpes, CNRS, Grenoble INP 1 , TIMA(格勒诺布尔阿尔卑斯大学,法国国家科学研究中心,格勒诺布尔理工学院,TIMA)
PAF是一种基于流水线导向设计方法的开源框架,通过参数化能力实现FPGA上网络应用的高效重用与优化。
2026-01-21 cs.AR
A Compiler Infrastructure for FPGA and ASIC Development
本白皮书为硬件设计工具提出了一个统一的框架,以简化所述工具的开发和互操作性。通过在供应商、学术界和开源社区之间创建一个大型的硬件开发工具生态系统,我们希望能够显著提高硬件设计的生产力。
2020-02-29 cs.AR cs.PL
HPIPE: Heterogeneous Layer-Pipelined and Sparse-Aware CNN Inference for FPGAs
我们提出了一种新的卷积神经网络(CNN)加速器架构和FPGA的网络编译器,优于所有以前的工作。我们的网络编译器不是一次处理一层的通用处理元件,而是静态地划分可用的设备资源,并为CNN的每一层构建定制的硬件。通过为每一层构建硬件,我们可以将控制器打包到更少的查找表中,并使用专用路由。这些效率使我们的加速器能够利用2倍的DSP,并以2倍以上的频率在FPGA上进行稀疏CNN加速。我们评估我们的架构上的稀疏Resnet-50和密集的MobileNet Imagenet分类器的Stratix 10 2800 FPGA的性能。我们发现,稀疏Resnet-50模型的批量大小为1/4550图像/秒,这几乎是NVIDIA最快的机器学习目标GPU V100吞吐量的4倍,并且优于FPGA上的所有先前工作。
2020-07-20 cs.AR
Analysis and Optimization of I/O Cache Coherency Strategies for SoC-FPGA Device
与传统的基于PCIe的FPGA加速器不同,异构SoC-FPGA器件在CPU上运行的软件和硬件加速器之间提供了更紧密的集成。现代异构SoC-FPGA平台支持CPU和FPGA之间的多个I/O缓存一致性选项,但这些选项可能会对实现的带宽产生意外影响,具体取决于应用和数据访问模式。为了在CPU和加速器之间提供最有效的通信,了解数据事务行为并选择正确的I/O缓存一致性方法至关重要。在本文中,我们使用Xilinx Zynq UltraScale+作为SoC平台,展示了某些I/O缓存一致性方法在不同情况下的性能优劣,并最终影响整体加速器性能。基于我们的分析,我们进一步探讨了可能的软件和硬件修改,以提高不同的I/O缓存一致性选项的I/O性能。经过我们的改进,SoC设计的整体性能平均可以提高20%。
2019-08-04 cs.AR
A Foray into Efficient Mapping of Algorithms to Hardware Platforms on Heterogeneous Systems
与同质计算相比,异构计算可能会显着提高性能和每瓦性能,但问题是“算法到架构的理想映射是什么?””仍然是一个开放的。在过去的几年中,新型的计算设备,如FPGA,已经进入一般计算使用。在这项工作中,我们试图通过比较内核性能和性能每瓦的七个关键算法,根据伯克利的侏儒分类法添加到科学知识的身体。我们使用Rodinia基准测试套件对来自CPU、GPU和FPGA系列的三种不同高端硬件架构代表进行测试。我们发现的结果,支持架构和性能每瓦之间的一些不同的映射。也许最有趣的发现是,对于我们特定的硬件代表,FPGA应该被视为GPU和CPU在几个关键算法中的替代品:N体模拟,密集线性代数和结构化网格。
2016-05-23 cs.AR
Designing Hardware/Software Systems for Embedded High-Performance Computing
在这项工作中,我们提出了一个架构和方法来设计硬件/软件系统的高性能嵌入式计算的FPGA。硬件方面基于众核架构,其设计是在给定一组架构参数的情况下自动生成的。在ZYNQ-7020 FPGA平台上运行密集矩阵乘法和稀疏矩阵向量乘法,对体系结构和方法进行了评估。结果表明,使用系统级设计的系统,避免了复杂的硬件设计,仍然提供了良好的性能结果。
2015-08-27 cs.AR
Exceeding Conservative Limits: A Consolidated Analysis on Modern Hardware Margins
现代大规模计算系统(数据中心、超级计算机、云和边缘设置以及高端网络物理系统)采用由多核CPU、通用众核GPU和可编程FPGA组成的异构架构。这些架构的有效利用提出了几个挑战,其中一个主要的是功耗。电压降低是降低芯片功耗的最有效方法之一。随着硬件加速器(即,GPU和FPGA),可以采用对每个不同芯片的安全电压降低水平的综合评估来有效降低总功率。我们提出了一个调查的电压裕度降低在现代CPU,GPU和FPGA的系统级的最新研究。硅供应商插入的悲观电压保护带可以在所有设备中使用,以实现显著的功耗节省。平均而言,电压降低在多核CPU中可以达到12%,在众核GPU中可以达到20%,在FPGA中可以达到39%。
2020-06-01 cs.AR
FADEC: FPGA-based Acceleration of Video Depth Estimation by HW/SW Co-design
从视频的3D重建对于各种应用已经变得越来越流行,包括用于机器人和无人机的自主驾驶的导航、增强现实(AR)和3D建模。该任务通常结合了传统的图像/视频处理算法和深度神经网络(DNN)。虽然深度学习的最新发展提高了任务的准确性,但涉及的大量计算导致计算速度低和功耗高。尽管有各种针对DNN的特定领域硬件加速器,但要加速在传统图像/视频处理算法和DNN之间交替的应用程序的整个过程并不容易。因此,基于FPGA的端到端加速是低功耗嵌入式环境中的复杂应用所必需的。本文提出了一种新的基于FPGA的DeepVideoMVS加速器,DeepVideoMVS是一种基于DNN的3D重建深度估计方法。我们采用硬件/软件协同设计,以适当地利用现代SoC FPGA中的异构组件,如可编程逻辑(PL)和CPU,根据该方法的固有特性。由于有些操作不适合硬件实现,我们通过分析每个操作的执行次数和其内存访问模式,然后综合考虑硬件实现的难易程度和硬件预期的加速程度来确定要在软件中实现的操作。硬件和软件实现在PL和CPU上并行执行,以隐藏它们的执行延迟。建议的加速器是在Xilinx ZCU 104板上开发的,使用NNgen,一个开源的高级综合(HLS)工具。实验表明,该加速器的运行速度比在同一FPGA板上的纯软件实现快60.2倍,精度下降最小。
2022-12-16 cs.AR
Hardware-efficient Residual Networks for FPGAs
UC San Diego(加州大学圣迭戈分校)
残差网络(ResNets)在其网络中使用跳过连接-重用先前层的激活-以提高训练收敛性,但这些跳过连接为ResNets的硬件实现带来了挑战。硬件必须在处理更多的传入数据之前等待跳过连接被处理,或者将它们缓冲在其他地方。如果没有跳过连接,ResNets将更加高效。因此,我们提出了师生学习方法,逐渐修剪掉ResNet的所有跳过连接,构建一个我们称之为NonResNet的网络。我们发现,在FPGA上实现时,NonResNet将ResNet的BRAM利用率降低了9%,LUT利用率降低了3%,吞吐量提高了5%。
2021-02-02 cs.AR cs.CV
FPGA Hardware Acceleration of Monte Carlo Simulations for the Ising Model
在现场可编程门阵列(FPGA)板上实现了具有最近邻铁磁相互作用的二维Ising模型,并利用一种有效的单个自旋的硬件表示和一种全局-局部LFSR随机数发生器进行了大量的Monte Carlo模拟.关于磁系统的描述性属性,如能量,磁化强度和磁化率的一致的结果,同时实现了约6倍的加速因子相比,以前的基于FPGA的出版作品和几乎$10^4$倍,相比标准的CPU模拟。详细描述了所用的逻辑设计,并对所用的随机数发生器的质量进行了仔细的分析。所得结果证实了FPGA用于分析磁系统统计力学的潜力。
2016-02-09 cs.AR physics.comp-ph
A Self-Reconfigurable Computing Platform Hardware Architecture
现场可编程门阵列(FPGA)近来越来越多地用于计算密集型任务的高度并行处理。本文介绍了一种基于PC的FPGA硬件平台架构,允许通过PCI总线快速重新配置,并保留了简单的物理硬件设计。首先讨论了设计考虑因素,然后说明了由此产生的系统架构设计。最后,实验结果的FPGA资源用于本设计。
2004-11-20 cs.AR cs.DC
A General Neural Network Hardware Architecture on FPGA
University of Birmingham(伯明翰大学)
现场可编程门阵列(Field Programmable Gate Arrays,FPGA)以其高度并行的结构、低功耗和灵活的自定义算法在数据采集和处理行业中发挥着越来越重要的作用。特别是在人工智能领域,为了训练和实现神经网络和机器学习算法,需要高能效的硬件实现和大规模并行计算能力。因此,许多全球公司已将FPGA应用于人工智能和机器学习领域,如自动驾驶和自动口语识别(百度)[1] [2]和必应搜索(微软)[3]。考虑到FPGA在这些领域的巨大潜力,我们倾向于在具有丰富硬件资源和强大处理能力的XILINX ZU9CG片上系统(SOC)平台上实现通用神经网络硬件架构[4]。FPGA SOC平台上的通用神经网络架构可以高性能地执行深度神经网络(DNN)中的前向和后向算法,并且容易根据神经网络的类型和规模进行调整。
2017-11-06 cs.AR cs.CV cs.NE
A Survey of System Architectures and Techniques for FPGA Virtualization
FPGA加速器由于其硬件灵活性、高计算吞吐量和低功耗而在云计算和边缘计算中受到越来越多的关注。然而,FPGA的设计流程通常需要对底层硬件有特定的了解,这阻碍了应用程序开发人员对FPGA的广泛采用。因此,FPGA的虚拟化对于创建适用于应用程序开发人员的有用硬件抽象变得极其重要。这种抽象还可以在多个用户和加速器应用之间共享FPGA资源,这一点很重要,因为传统上FPGA主要用于单用户、单嵌入式应用场景。在FPGA虚拟化领域有许多工作,涵盖不同的方面,针对不同的应用领域。在本调查中,我们回顾了文献中用于FPGA虚拟化的系统架构。此外,我们确定了FPGA虚拟化的主要目标,在此基础上,我们总结了实现FPGA虚拟化的技术。该调查通过全面回顾现有文献,帮助研究人员有效地了解FPGA虚拟化研究。
2021-02-19 cs.AR cs.DC
Network Function Virtualization based on FPGAs:A Framework for all-Programmable network devices
网络功能虚拟化(NFV)是指使用商用硬件资源作为基本平台来执行与专用硬件设备相对的专用网络功能。目前,NFV主要基于通用处理器或通用网络处理器来实现。在本文中,我们提出使用FPGA作为NFV的理想平台,可用于提供虚拟化的灵活性和专用硬件的高性能。我们提出了在网络处理应用中使用FPGA动态重新配置以提供灵活的网络功能的早期尝试,并提出了基于FPGA的NFV平台的机会。
2014-06-02 cs.AR cs.NI
FSHMEM: Supporting Partitioned Global Address Space on FPGAs for Large-Scale Hardware Acceleration Infrastructure
分区全局地址空间(Partitioned Global Address Space,PGAS)通过全局共享内存空间提供高效的单边通信,已成为高性能计算(High Performance Computing,HPC)中最有前途的并行计算模型之一。与此同时,FPGA作为HPC系统的替代计算平台,以其定制计算和设计灵活性的优势而受到关注。然而,与传统的消息传递接口不同,PGAS的探索尚未在FPGA上进行。本文提出了FSHMEM,一个软件/硬件框架,使FPGA上的PGAS编程模型。我们在FPGA上实现了GASNet规范的核心功能,以实现硬件中的原生PGAS集成,同时其编程接口被设计为与传统软件高度兼容。实验结果表明,FSHMEM的峰值带宽达到3813 MB/s,是理论最大值的95%以上,比已有的工作高出9.5 $\times$。对于远程写入和读取操作,它分别记录0.35 $us$和0.59 $us$延迟。最后,我们对集成英特尔深度学习加速器的两个英特尔D5005 FPGA节点进行了案例研究。采用FSHMEM编程的两节点系统在矩阵乘法和卷积运算方面分别实现了1.94 $\times$和1.98 $\times$的加速比,显示了其在HPC基础设施中的可扩展性。
2022-07-11 cs.AR cs.DC
Dynamic FPGA Detection and Protection of Hardware Trojan: A Comparative Analysis
硬件木马检测和保护变得越来越重要,因为越来越多的不可信的第三方制造了许多关键系统的部件。检测硬件木马的最常见方法是将不受信任的设计与黄金(受信任)设计进行比较。然而,第三方知识产权(IP)是黑盒子,没有值得信任的黄金IP。因此,以前尝试检测硬件木马将无法与第三方IP。在这项工作中,我们提出了新的方法,木马保护和检测的现场可编程门阵列(FPGA),而不需要黄金芯片。呈现的方法在运行时而不是测试时工作。我们提供广泛的木马检测和保护方法。虽然最简单的方法开销较低,并且提供有限的保护机制,但引入了更复杂和昂贵的技术,可以检测硬件特洛伊木马,甚至从受感染的IP中清除系统。此外,我们研究了使用FPGA的部分重新配置功能,以摆脱感染的IP的成本。此外,我们讨论了构建IP核心认证机构,维护一个集中的数据库的不安全的供应商和IP的可能性。我们通过在FPGA上实现不同的方法来展示所介绍的方案的实用性。结果表明,简单的方法目前可以忽略不计的开销,因为我们试图提高安全性的延迟和功率开销增加。
2017-11-03 cs.AR cs.CR
Adaptive Computing in Robotics, Leveraging ROS 2 to Enable Software-Defined Hardware for FPGAs
Xilinx, Inc.(赛灵思公司)
传统的机器人软件开发是关于在给定机器人的CPU中使用预定义的架构和约束进行编程功能。相反,使用自适应计算,构建机器人行为就是对架构进行编程。通过利用自适应计算,机器人专家可以在运行时间调整其计算系统的一个或多个属性(例如,其确定性、功耗、安全态势或吞吐量)。然而,机器人专家并不是硬件工程师,而且他们中缺乏嵌入式专业知识。本白皮书采用了以ROS 2机器人专家为中心的自适应计算观点,并提出了一种架构,将FPGA作为ROS 2生态系统的一级参与者。所提出的架构是平台和技术无关的,并且易于移植。该架构的核心组件在Apache 2.0许可证下公开,为机器人专家利用自适应计算和创建软件定义硬件铺平了道路。
2021-08-30 cs.AR cs.RO
PUFBind: PUF-Enabled Lightweight Program Binary Authentication for FPGA-based Embedded Systems
针对FPGA嵌入式系统中软件被篡改导致安全风险的问题,提出基于PUF的轻量级软硬件协同认证方案PUFBind,绑定程序与特定FPGA,裸机运行无需修改原有设计,经原型验证资源开销低且平台无关。
2025-01-14 cs.AR cs.CR
Synetgy: Algorithm-hardware Co-design for ConvNet Accelerators on Embedded FPGAs
UC Berkeley(加州大学伯克利分校);Tsinghua University(清华大学);Politecnico di Torino(都灵理工大学);Xilinx Research Labs(赛灵思研究实验室)
近年来,使用FPGA加速ConvNets引起了人们的极大关注。然而,FPGA加速器设计并没有利用ConvNets的最新进展。因此,每秒帧数(FPS)等关键应用程序特性被忽略,而只支持简单地计算GOP,并且对应用程序成功至关重要的准确性结果通常甚至没有报告。在这项工作中,我们采用了算法硬件协同设计的方法来开发一个ConvNet加速器称为Synetgy和一个新的ConvNet模型称为DiracDeltaNet $^{\dagger}$。加速器和ConvNet都是根据FPGA要求定制的。DiracDeltaNet,顾名思义,是一个只有$1\times 1$卷积的ConvNet,而空间卷积被更有效的移位操作所取代。DiracDeltaNet在ImageNet上实现了具有竞争力的准确性(前5名为88.7\%),但比VGG 16少了42个$\times$参数和48个$\times$ OP。我们进一步将DiracDeltaNet的权重转换为4位,将激活转换为4位,精度损失小于1\%。这些量化很好地利用了FPGA硬件的性质。简而言之,DiracDeltaNet的小模型尺寸,低运算OP计数,低精度和简化的运算符使我们能够为FPGA共同设计高度定制的计算单元。我们通过高级综合在Ultra96 SoC系统上实现了DiracDeltaNet的计算单元。我们的加速器在ImageNet上的最终前5名准确率为8…
2020-05-11 cs.AR cs.CV
Optimizing Memory Performance of Xilinx FPGAs under Vitis
基于FPGA的加速技术因其低延迟和高能效而受到广泛关注。然而,使用原始的低级硬件描述语言(如Verilog)来编程FPGA通常需要对硬件设计细节和动手经验有很好的了解。幸运的是,FPGA社区打算解决这种低可编程性问题。例如,FPGA编程与GPU编程一样简单。尽管Vitis被证明可以提高可编程性,但如果没有对硬件流水线和存储子系统的精心设计,我们无法直接获得高性能。本文将重点放在存储子系统上,全面系统地测试优化方法对存储性能的影响。通过基准测试,我们定量分析了广泛应用程序(包括AI,HPC和数据库)的典型内存访问模式。此外,我们还提供了相应的优化方向,为每一个内存访问模式,以提高整体性能。
2020-10-18 cs.AR cs.DC
SECDA: Efficient Hardware/Software Co-Design of FPGA-based DNN Accelerators for Edge Inference
University of Glasgow(格拉斯哥大学);Northeastern University(东北大学)
边缘计算设备固有地面临严格的资源约束,这在部署具有高内存和计算需求的深度神经网络(DNN)时尤为明显。FPGA通常用于边缘设备。由于这些可重构电路可以实现比通用处理器更高的吞吐量和更低的功耗,因此它们特别适合DNN加速。然而,为边缘设备设计基于FPGA的DNN加速器的现有解决方案具有很高的开发开销,因为重复的FPGA合成通道、在模拟设计的硬件描述语言(HDL)中的重新实现以及加速器系统集成的成本。在本文中,我们提出了SECDA,这是一种新的硬件/软件协同设计方法,可以减少使用FPGA的边缘设备上优化DNN推理加速器的设计时间。SECDA将经济高效的SystemC仿真与硬件执行相结合,通过缩短设计评估时间来简化设计空间探索和开发过程。作为一个案例研究,我们使用SECDA在PYNQ-Z1板上有效地开发了两种不同的DNN加速器设计,PYNQ-Z1板是一个包含边缘FPGA的平台。我们快速迭代地探索系统的硬件/软件堆栈,同时识别和缓解性能瓶颈。我们评估了两个加速器设计与四个常见的DNN模型,实现了平均性能加速高达3.5 $\times$的模型与2.9 $\times$减少能源消耗超过CPU的推理。我们的代码可在https://github.com/gicLAB/SECDA上获得
2021-10-01 cs.AR cs.DC cs.LG
Towards Hardware Support for FPGA Resource Elasticity
FPGA越来越多地部署在云中,以加速各种应用。它们将在多个租户之间共享,以提高总拥有成本。部分重新配置技术通过将FPGA划分为区域,每个区域托管特定应用程序的加速器,从而实现FPGA上的多租户。然而,区域的大小一旦被定义就不能改变,导致FPGA资源利用率低下。本文主张将应用程序的加速需求划分为多个小的计算模块。设计的FPGA外壳可以重新配置可用的PR区域与这些模块,并使它们能够相互通信的交叉互连与Wishbone总线接口。对于每个重新配置的PR区域,它使用有效的目的地址和互连的带宽分配来更新寄存器文件。源自Wishbone主接口的任何无效通信请求在交叉开关的对应主端口中被屏蔽。用于PR区域的分配带宽由交叉开关的从端口中的加权轮询仲裁器确保。最后,设想的资源管理器可以基于应用的加速需求和PR区域的可用性来增加或减少分配给应用的PR区域的数量。
2022-07-04 cs.AR cs.DC