0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Xilinx DSP slices 实现 SDF 流水 FFT Core

C29F_xilinx_inc 来源:互联网 作者:佚名 2017-09-19 11:07 次阅读

背景:

快速傅里叶变换(FFT)在雷达、通信电子对抗等领域有广泛应用。近年来随着现场可编程门阵列(FPGA)的飞速发展,与DSP技术相比,由于其并行信号处理结构,使得FPGA能够很好地适用于高速信号处理系统,但是,由于Altera公司研制的FFT IP核,价钱昂贵,不适合大规模应用,在特定领域中,设计适合于自己领域需要的FFT处理器是较为实际的选择,下面将关注一些关于流水级FFT处理器的一些最新发展。

SDF FFT Core → FPGA DSP slice:

近期,在IEEE VLSI系统专栏学报处有一篇12页的题为“Efficient FPGA Mapping of Pipeline SDF FFT Cores”的新论文即将被发表(在IEEE Xplore可见)。而在这篇论文中作者就如何将一个SDF(single-path delay feedback单路延迟反馈)FFT核映射到Xilinx的全可编程芯片内部的DSP48 slices的可编程逻辑及其他可用的存储资源上进行了深入周密的细节性讨论。尽管这篇论文主要是针对Virtex-4和Virtex-6系列FPGA进行讨论的,但是作者也明确指出,由于Xilinx 7系列和UltraScale/UltraScale+ 系列FPGA与Virtex-6使用相同的slice 架构,所以这种映射其实很容易被推广的。

在论文中,作者详细阐述了Xilinx的产品,主要是从Virtex-4 FPGA开始到Xilinx后来的所有全可编程芯片等多代产品内部的DSP48 slices的一个发展过程:首先,Virtex-4 FPGA系列包含一18X18bit乘法器和48bit累加器的XtremeDSP(DSP48);之后的Virtex-6系列FPGA加入了25x18bit乘法器和48bit累加器的DSP48 slices ;较新的7系列FPGA和Zynq-7000系列SoC则内嵌了25x18bit乘法器和48bit累加器的DSP48 slices;而最强的UltraScale/UltraScale+系列FPGA则包括了27x18bit乘法器和48bit加法器的DSP48E2。除此之外,在Xilinx每一代FPGA的DSP48 slices的发展中都有很多额外的改进,比如时钟率具有较稳定的提高,也正是这么多代产品的不断迭代,才使得现在的DSP48E2 功能更加强大。下图是论文中作者提到的关于DSP48E2 功能实现的细节。

图1 DSP48E2 功能细节

同时,在这片IEEE的论文中还讨论了如何将此FFT核蝶形转换到较少的LUT单元中,而如何有效转换关系到是否可以实现DSP48 preadders的蝶形地址,在实现过程中,通过将有效的数据映射和转换因子存储到BRAM 及分布式存储资源中,有效地完成 radix-2k算法转换因子的共享,此外采用重新定时和流水的方式来缩短实现时间。

虽然这篇博客展示的任何技术都是来自于论文中,读者也可以从IEEE论文网站得到,但是还是会给出论文中的一些结论(以便可以提起您去检索并阅读全文的兴趣):“报告的实现结果表明,相比于之前的有关实现而言,通过利用Virtex-4和Virtex-6内部的DSP48实现一个FFT核,可以使其性能分别提高350%到400%,同时,还可以获得一个更高的混合时钟频率,并且整个实现过程只需要更少的存储资源。这也正好如以前发表过的最好的报告结果一样,都是使用完全一样的架构,使用同Virtex-4完全一样的算法,也体现出这种转换的优势十分明显,所以,为提高性能,可以尝试将架构映射到FPGA硬件结构中来实现。

总结:

在目前的市场中,尤其是一些互联网公司,都开始利用FPGA做硬件加速的实现,不仅是因为FPGA的可用性,更主要的是各大公司都看中了硬件实现软件算法时对整个算法质量的极大提升,这类市场也恰好是我们Xilinx未来竞争的关键点所在。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Xilinx
    +关注

    关注

    70

    文章

    2119

    浏览量

    119368
  • FFT
    FFT
    +关注

    关注

    15

    文章

    425

    浏览量

    58631

原文标题:性能飞升350%~400%!Xilinx DSP slices 实现 SDF 流水 FFT Core

文章出处:【微信号:xilinx_inc,微信公众号:赛灵思】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    芯片后仿之SDF 3.0解析(三)

    本文接着解析SDF3.0的Timing Checks Entries、Timing Environment Entries两个部分。
    的头像 发表于 04-16 11:08 437次阅读
    芯片后仿之<b class='flag-5'>SDF</b> 3.0解析(三)

    芯片后仿之SDF 3.0解析

    SDF文件是在VCS/NC-Verilog后仿真运行时将STD/IO/Macro门级verilog中specify的延迟信息替换为QRC/Star-RC抽取的实际物理延时信息,所以如果SDF文件
    的头像 发表于 12-18 09:56 479次阅读
    芯片后仿之<b class='flag-5'>SDF</b> 3.0解析

    Xilinx PCIE core管脚分配错误的解决方案

    最近弄PCIE,遇到一个问题,以前我们总认为:Xilinx的PCIE core的管脚是固定的,即指定了PCIE core的位置,对应的管脚也就指定了,真实情况是怎么样的呢?
    的头像 发表于 11-17 17:02 1670次阅读
    <b class='flag-5'>Xilinx</b> PCIE <b class='flag-5'>core</b>管脚分配错误的解决方案

    STM32的DSP库可以实现FFT变换输出吗?

    STM32的DSP库可以实现FFT变换输出吗
    发表于 10-12 06:02

    ST官方的DSP库可以支持1024点的FFT吗?

    ST官方的DSP库可以支持1024点的FFT
    发表于 10-11 07:00

    HPM6000系列微控制器DSP/FFT使用介绍

    电子发烧友网站提供《HPM6000系列微控制器DSP/FFT使用介绍.pdf》资料免费下载
    发表于 09-19 15:21 0次下载
    HPM6000系列微控制器<b class='flag-5'>DSP</b>/<b class='flag-5'>FFT</b>使用介绍

    调用HLS的FFT实现N点FFT

    在HLS中用C语言实现8192点FFT,经过测试,实验结果正确,但是时序约束不到100M的时钟,应该是设计上的延时之类的比较大,暂时放弃这个方案,调用HLS中自带的FFT库(hls:fft
    的头像 发表于 07-11 10:05 649次阅读
    调用HLS的<b class='flag-5'>FFT</b>库<b class='flag-5'>实现</b>N点<b class='flag-5'>FFT</b>

    【英飞凌PSoC 6 RTT开发板试用】语音识别之一:移植CMSIS-DSP库-FFT测试

    后面会基于本开发板实现语音识别,需要使用到FFT等关键算法,所以先移植CMSIS-DSP库,并进行FFT的测试。
    的头像 发表于 07-11 00:10 2191次阅读
    【英飞凌PSoC 6 RTT开发板试用】语音识别之一:移植CMSIS-<b class='flag-5'>DSP</b>库-<b class='flag-5'>FFT</b>测试

    使用Xilinx FPGA实现OFDM系统

    OFDM中调制使用IFFT,解调使用IFFT,在OFDM实现系统中,FFT和IFFT时必备的关键模块。在使用Xilinx的7系列FPGA(KC705)实现OFDM系统时,有以下几种选择
    的头像 发表于 07-10 10:50 654次阅读
    使用<b class='flag-5'>Xilinx</b> FPGA<b class='flag-5'>实现</b>OFDM系统

    Xilinx FFT IP核到FPGA实现OFDM

    笔者在校的科研任务,需要用FPGA搭建OFDM通信系统,而OFDM的核心即是IFFT和FFT运算,因此本文通过Xilinx FFT IP核的使用总结给大家开个头,详细内容可查看官方文档PG109。
    的头像 发表于 07-10 10:43 721次阅读
    从<b class='flag-5'>Xilinx</b> <b class='flag-5'>FFT</b> IP核到FPGA<b class='flag-5'>实现</b>OFDM

    利用Design Gateway的IP Core加速Xilinx VCK190评估套件上的AI应用

    Xilinx 的 Versal AI Core 系列器件旨在解决有关 AI 推理的最大而独特的难题
    的头像 发表于 07-07 14:15 583次阅读
    利用Design Gateway的IP <b class='flag-5'>Core</b>加速<b class='flag-5'>Xilinx</b> VCK190评估套件上的AI应用

    调用HLS的FFT实现N点FFT(hls:fft

    在HLS中用C语言实现8192点FFT,经过测试,实验结果正确,但是时序约束不到100M的时钟,应该是设计上的延时之类的比较大,暂时放弃这个方案
    的头像 发表于 07-07 09:08 1029次阅读
    调用HLS的<b class='flag-5'>FFT</b>库<b class='flag-5'>实现</b>N点<b class='flag-5'>FFT</b>(hls:<b class='flag-5'>fft</b>)

    Xlinx IP Core实现FFT变换——为什么你的matlab数据无法严格比对?

    Xilinx FFT 仿真实现 1.C仿真模型 Xinlinx的FFT IP提供了相应的C仿真模型,并且可以再matlab里调用,主要参数包括以下几个,相应的参数和硬件参数是一致的。
    发表于 06-19 18:34

    基2FFT的verilog代码实现及仿真

    上文基2FFT的算法推导及python仿真推导了基2FFT的公式,并通过python做了算法验证,本文使用verilog实现8点基2FFT的代码。
    的头像 发表于 06-02 12:38 692次阅读
    基2<b class='flag-5'>FFT</b>的verilog代码<b class='flag-5'>实现</b>及仿真

    采用FPGA实现FFT算法示例

     目前,硬件实现FFT算法的方案主要有:通用数字信号处理器(DSP)、FFT专用器件和现场可编程门阵列(FPGA)。DSP具有纯软件
    的头像 发表于 05-11 15:31 1908次阅读
    采用FPGA<b class='flag-5'>实现</b><b class='flag-5'>FFT</b>算法示例