借助FPGA协同处理提升性能和降低应用设计成本

时间:2025-11-02  作者:Diven  阅读:0

传统的、基于通用DSP处理器并运行由C语言开发的算法的高性能DSP平台,正在朝着使用FPGA预处理器和/或协处理器的方向发展。这一最新发展能够为产品提供巨大的性能、功耗和成本优势。

借助FPGA协同处理提升性能和降低应用设计成本

尽管优势如此明显,但习惯于使用基于处理器的系统进行设计的团队,仍会避免使用FPGA,因为缺乏必要的硬件技能,来将FPGA用作协处理器(图1)。不熟悉像VHDL和Verilog这样传统的硬件设计方法,限制或阻止了FPGA的使用,这通常会导致设计成本过高,且功耗过大。ESL,一套全新推出的设计工具,能够解决这一设计难题。在保留常规软硬件设计方式的帮助基于处理器的设计者使用可编程逻辑加速自己的设计。

借助FPGA协处理提升性能

设计人员能够利用由FPGA架构的并行性所带来的使用灵活的特点,大幅提升DSP系统的性能。通常的设计示例包括(并不局限于)FIR滤波、FFT、数字下变频和前向纠错(FEC)模块等。

Xilinx  VirtexTM-4和Virtex-5架构提供了多达512个并行乘法器,能够以超过500MHz的速度运行,提供256GMAC的DSP峰值性能。通过在FPGA上实现高速并行处理,而在DSP上实现高速串行处理,可以使整个DSP系统的性能得到优化,同时降低系统的功率需求。

借助FPGA嵌入式处理降低成本

带有FPGA协处理器的DSP硬件系统,为C算法范畴之内的运算(例如DSP处理器、FPGA可配置逻辑块(CLB)和FPGA嵌入式处理器之间的算法划分)提供了许多实现方法。Virtex-4器件提供了两种嵌入式处理器——通常被用作系统控制的MICroBlazeTM软核处理器和性能更高的PowerPCTM硬核处理器。由FPGA架构实现的并行操作,能够被直接用于DSP的数据路径,或被配置为一个嵌入式处理器的硬件加速器。

设计者所面对的挑战是如何在所提供的硬件资源之间划分DSP的系统操作,才能做到最为有效和最节省成本。使用FPGA嵌入式处理器的最大好处并不总是显而易见的,但这一硬件资源的确能够极大地降低系统的整体成本。FPGA嵌入式处理器提供了这样一个机会:将所有非关键性操作集中于嵌入式处理器上所运行的软件,从而最大限度降低系统所需硬件资源的总量。

C程序到系统门

在FPGA的应用中,术语“C程序到系统门”特指如下两种实现方法——在FPGA架构上直接实现一个DSP模块或为MICroBlaze或PowerPC 405嵌入式处理器创建一个硬件加速器(图2)。

当操作直接在DSP数据路径中进行时,将FPGA作为一个DSP模块来实现操作,能够获得最高的性能。这一方法先将C代码直接综合成RTL代码,然后在DSP的数据通路中对模块进行实体化。你可以使用传统的HDL设计方法,或通过像Xilinx System Generator for DSP这样的系统工具,来进行实体化。这种直接实体化方式,能够让开发人员以最小的开销达到最高的性能。

主流的C综合工具可实现的性能,能够与手写RTL相媲美——但要做到这一点,需要对C综合工具的工作原理和代码风格有详尽的了解。为了达到所要求的性能,通常需要对代码进行修改,并且添加内联综合指令,以插入并行和流水线级。虽然要进行这些改进,但是设计效率还是能够大大提高。C系统模型仍然是驱动设计流程的主要因素。

作为替代方案,为Xilinx嵌入式处理器创建一个硬件加速器通常是一个更为简单的方法。在该方法中,仍然主要使用处理器来运行C程序,只是将对性能有重大影响的操作以硬件加速器的形式放置到FPGA逻辑中执行。这是更偏向于以软件为中心的设计方法。这一方法会牺牲一些性能。与DSP模块的方法相似,C程序被综合成RTL代码,所不同的是顶层实体被接口逻辑包围,以便能与Xilinx嵌入式处理器的总线相连。这就创建了一个硬件加速器,能够被调入到Xilinx EDK环境中,并且被软件友好的C程序调用。

对将C程序映射到硬件加速器的性能要求,通常不是那么苛刻。这里的目标是使性能比使用纯软件实现的方法得到提高,同时保持软件友好的设计流程。虽然仍有编码技术和内联综合指令,但通常可以不使用就达到所要求的性能提升。

设计方法——采用FPGA协处理的障碍

正确划分和实现一个复杂DSP系统,需要花费大量时间和精力掌握所需的技能。2005年,Forward Concepts市场调查公司为了确定在DSP设计中选用FPGA最重要的标准,开展了一项调查。调查的结果表明开发工具是最重要的选择标准,如图3所示。

调查结果显示,使用FPGA协处理器实现DSP硬件系统的优势,已经得到用户的充分认可,但对于传统的DSP设计者来说,开发工具现有的状况,成为采用这一设计方法的障碍。

Xilinx ESL计划

ESL设计工具将数字设计的抽象度在RTL的基础上又提高了一步。其中部分工具专门用来将由C/C++开发的系统模型映射到包含FPGA和DSP处理器的DSP系统中。此举的目的是使硬件平台对软件设计者变得透明(图4)。

今年,为了全面解决上述障碍,Xilinx公司和主要的ESL工具厂商携手启动了一个被称为ESL计划的合作项目。这一合作计划的主要目标是赋予设计者软件编程的能力,使能够在可编程硬件中轻松地实现自己的想法,而无需学习传统的硬件设计技巧。该计划融合了ESL成员机构的创新,能够加速产品开发进程,推动设计人员采用世界上最先进的设计方法。

将Xilinx ESL合作伙伴的工具结合在一起,能够提供的互补性解决方案,这些解决方案已针对一系列产品、平台和最终用户进行了优化。Xilinx公司也在集中力量研究互补技术。例如,AccelDSP综合为在浮点MATLAB中开发的算法提供了硬件实现的方法,而Xilinx System Generator for DSP使得用ESL设计开发的模块,能够轻松地与Xilinx IP和嵌入式处理器结合起来。借助多个极富创新精神的合作伙伴的工作,是实现程序员期望的FPGA设计流程最快捷的途径。

猜您喜欢

现代电子产品的设计中,封装技术的选择对电路性能、尺寸和成本都有着重要影响。VQFN(薄型方形无引脚封装)是一种广泛应用于集成电路的封装形式,尤其是VQFN9_2...
2025-02-24 14:25:38

三角槽圆头自攻螺丝是应用于各种机械和建筑领域的紧固件,其独特的设计使其在使用中展现出多种优势。三角槽的设计可以有效防止螺丝滑脱,增强了连接的稳定性。圆头的形状使...
2019-12-02 00:00:00

液压工具在工业和建筑领域中是重要配件,其分类多样,适用于不同的工作需求。液压千斤顶是常见的工具,用于汽车维修和重物搬运。利用液压原理,能以较小的力举起重物,极大...
2011-06-05 00:00:00


你是否好奇,电动汽车、手机、笔记本电脑等设备是如何安全、高效地使用电池的呢?答案就在于一个关键技术——BMS电池管理系统。简单来说,BMS就像电池的大脑,时刻监...
2024-07-06 00:00:00

贴片电阻R004的阻值为0.004欧姆,通常表示为4毫欧姆。 R 代表小数点,后面的三位数字表示阻值。 理解这个命名规则对于识别贴片电阻的阻值很重要。 004 ...
2024-11-29 10:26:28

现代照明技术的发展中,LED灯已经成为节能环保照明的首选。而作为LED灯必不可少的伙伴,LED灯驱动器的选择显得尤为重要。本文将为您介绍如何根据需求随心搭配LE...
2024-10-05 00:00:00

在FPGA系统设计中,按键是最常见的人机交互接口部件。在没有微控制器参与的情况下,FPGA系统中按键的功能相对较弱,通常可以将按键抖动和按键处理结合起来统一考虑...
2020-07-20 17:13:00

电容电路板符号是电子设计中重要部分。正确使用符号,能帮助设计师更好理解电路。本文将介绍电容电路板符号的基本概念和常见类型。 电容的基本定义电容是储存电能的元件。...
2025-04-02 00:31:40

点胶机作为现代制造业中不可少的设备,具备多项显著优势。点胶机能够实现高精度的点胶操作,确保胶水均匀分布,减少浪费,提高产品质量。其自动化程度高,能够大幅提升生产...
2009-04-07 00:00:00