首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

FPGA协同处理的优势

FPGA协同处理的优势

传统的、基于通用DSP处理器并运行由C语言开发的算法的高性能DSP平台,正在朝着使用FPGA预处理器和/或协处理器的方向发展。这一最新发展能够为产品提供巨大的性能、功耗和成本优势。  尽管优势如此明显,但习惯于使用基于处理器的系统进行设计的团队,仍会避免使用FPGA,因为他们缺乏必要的硬件技能,来将FPGA用作协处理器(图1)。不熟悉像VHDL和Verilog这样传统的硬件设计方法,限制或阻止了FPGA的使用,这通常会导致设计成本过高,且功耗过大。ESL,一套全新推出的设计工具,能够解决这一设计难题。它在保留常规软硬件设计方式的同时,帮助基于处理器的设计者使用可编程逻辑加速自己的设计。

图1 - DSP硬件平台
  借助FPGA协处理提升性能
  设计人员能够利用由FPGA架构的并行性所带来的使用灵活的特点,大幅提升DSP系统的性能。通常的设计示例包括(并不局限于)FIR滤波、FFT、数字下变频和前向纠错(FEC)模块等。
  Xilinx VirtexTM-4和Virtex-5架构提供了多达512个并行乘法器,它们能够以超过500MHz的速度运行,提供256
GMAC的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这样的系统工具,来进行实体化。这种直接实体化方式,能够让开发人员以最小的开销达到最高的性能。

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