首页 > 技术 > 内容

基于Xilinx FPGA上实现深度递归神经网络语言模型

时间:2026-01-29  作者:Diven  阅读:0

可编程逻辑(PLD)是由通用的集成电路产生的,逻辑功能按照用户对器件编程来确定,用户可以自行编程把数字系统集成在PLD中。经过多年的发展,可编程逻辑器件由70年代的可编程逻辑阵列器件 (PLD) 发展到目前的拥有数千万门的现场可编程阵列逻辑 (FPGA),随着人工智能研究的火热发展,FPGA的并行性已经在一些实时性很高的神经网络计算任务中得到应用。由于在FPGA上实现浮点数会耗费很多硬件资源,而定点数虽然精度有限,但是对于不同应用通过选择合适的字长精度仍可以保证收敛,且速度要比浮点数表示更快而且资源耗费更少,已经使其成为嵌入式AI和机器学习应用程序的理想选择。

最新的证明点是英国伯明翰大学电子电气和系统工程系的Yufeng Hao和Steven Quigley最近发表的论文。论文标题为“在Xilinx FPGA上实现深度递归神经网络语言模型“,介绍了使用Python编程语言成功实现和训练基于固定点深度递归神经网络(DRNN); Theano数学库和多维数组的框架; 开源的基于Python的PYNQ开发环境; Digilent PYNQ-Z1开发板以及PYNQ-Z1板上的赛灵思Zynq Z-7020的片上系统SoC。Zynq-7000系列装载了双核ARM Cortex-A9处理器和28nm的Artix-7或Kintex-7可编程逻辑。在单片上集成了CPU,DSP以及ASSP,具备了关键分析和硬件加速能力以及混合信号功能,出色的性价比和最大的设计灵活性也是特点。使用Python DRNN硬件加速覆盖(赛灵思公司提出的硬件库,使用Python API在硬件逻辑和软件中建立连接并交换数据),两个合作者使用此设计为NLP(自然语言处理)应用程序实现了20GOPS(10亿次每秒)的处理吞吐量,优于早期基于FPGA的实现2.75倍到70.5倍。

论文的大部分讨论了NLP和LM(语言模型),“涉及机器翻译,语音搜索,语音标记和语音识别”。本文随后讨论了使用Vivado HLS开发工具和Verilog语言实现DRNN LM硬件加速器,可以为PYNQ开发环境合成一个定制的硬件覆盖。由此产生的加速器包含五个过程元素(PE),能够在此应用程序中提供20GOPS的数据吞吐量。以下是设计的框图:

DRNN加速器框图

Vivado设计套件为下一代超高效率的C/C++和基于IP的设计提供了新的方法。融入了新的超快高效率设计方法集,用户可以实现10-15倍的效率的提升。Vivado HLS支持ISE和Vivado设计环境,可以通过集成C,C++和SystemC标准到赛灵思的可编程器件中而无需创建RTL模型,加快IP的创建。

这篇论文中包括了大量深入的技术细节,但是这一句话了这篇博客文章的理由:“更重要的是,我们展示了软件和硬件联合设计和仿真过程在神经网络领域的应用“。考虑到PYNQ-Z1开发板的售价为229美元,这种说法是完全正确的。

猜您喜欢


砂轮修整器是用于修整和维护砂轮的工具,确保砂轮在使用过程中保持最佳的切削性能和加工精度。通过去除砂轮表面的磨损和变形,使砂轮恢复到理想的形状和粗糙度,从而提高加...
2023-11-02 00:00:00
圆板牙是常见的机械切削工具,应用于金属加工和制造行业。根据不同的用途和设计,圆板牙可以分为以下几类。根据切削方式的不同,圆板牙可以分为直切型和斜切型。直切型主要...
2013-12-05 00:00:00
你是否 pernah 注意到一些贴片电阻上标注着0?这个看似简单的标识,其实代表着电阻值为零欧姆。并非真正意义上的零电阻,而是指电阻值非常小,通常小于0.001...
2024-11-29 10:26:25
铝壳电阻因其优异的散热性能和稳定的电阻值,被应用于各种电子设备中。正邦(JPCON)作为国内知名的铝壳电阻制造商,高质量和多样化的产品赢得了市场的认可。本文将围...
2021-08-09 11:26:28
同心度仪是用于测量和检测机械零件同心度的重要工具。在工业生产和机械加工中是不可少的配件。通过精确测量轴或孔的同心度,同心度仪能够有效地帮助工程师和技术人员识别出...
2019-11-20 00:00:00
TCL脚本语言Tcl(Tool Command Language)是一种很通用的脚本语言,它几乎在所有的平台上都可以解释运行,而且VIVADO也提供了TCL命...
2018-04-11 12:09:00
温度保险丝作为关键的安全保护元件,有着着不可替代的作用。比普温度保险丝因其优良的性能和可靠的品质,受到众多厂商和用户的青睐。本文将全面介绍比普温度保险丝的分类及...
2024-12-01 06:36:30
独石电容是电子元件中重要的器件。在电路中起到储存电能的作用。不同型号的独石电容有着不同的特性。本文将介绍独石电容的几种主要型号。C0G电容C0G电容是一个常见类...
2025-04-12 12:30:36
开关电源作为现代电子设备中重要的一部分,其性能直接影响着设备的稳定性和效率。而开关电源的反馈方式,则是决定其性能的关键因素。本文将对两种主要的反馈方式——原边反...
2024-06-03 00:00:00
CPLD和FPGA都是由逻辑阵列模块构成的,但是CPLD的LAB基于乘积和宏单元,而FPGA的LAB使用基于LUT的逻辑单元。CPLD的LAB围绕中心全局互连排...
2023-06-28 11:28:00