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

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

3天内不再提示

使用Xilinx FPGA实现OFDM系统

FPGA之家 来源:FPGA之家 2023-07-10 10:50 次阅读

OFDM中调制使用IFFT,解调使用IFFT,在OFDM实现系统中,FFT和IFFT时必备的关键模块。在使用Xilinx的7系列FPGA(KC705)实现OFDM系统时,有以下几种选择:

(1)在Vivado中调用官方的FFT的IP核(AXI-Stream总线);

(2)在Vivado HLS中调用官方的FFT的IP核(内部FFT通信AXI-Stream总线),可以自己增加外部封装接口类型;

(3)Verilog编写FFT,很复杂,找到了一个1024点的并行流水线的,但是资源耗费太大,8192点时很难满足,不采用;

(4)使用HLS用C语言自己编写FFT,程序比较简单,开发快,但是我需要100M时钟下跑8192点FFT的时钟时序约束不够,跑不到100M;

最后还是选择使用HLS里面调用FFT的库,并且根据我们的项目需要,对其外部输入输出封装成一个AXI-Master接口,并且在Devcpp里面使用C语言实现(不考虑延时和资源消耗等)对比结果,发现基本一致。

本节主要讲Devcpp里的实现结果。

1.定义计算点数和复数类型

f592e08c-1ec9-11ee-962d-dac502259ad0.png

2.计算

(1)初始化蝶形因子;

(2)比特反转,变址运算;

(3)FFT蝶形循环计算;

(4)计算功率,输出结果;

f5bf2598-1ec9-11ee-962d-dac502259ad0.png

3.结果验证

以100Hz的sin函数作为输入信号,幅值-1~1,输出功率最大值在p[100],趋近于1。

f5de5e5e-1ec9-11ee-962d-dac502259ad0.png

4.计算IFFT

(1)将输入的复数取共轭;

(2)调用FFT;

(3)对输出的数据取共轭;

完成。

最初始的sin信号如下:

f60b1ca0-1ec9-11ee-962d-dac502259ad0.png

经过FFT之后,对结果取共轭,并且缩小N点(8192)倍,再次调用FFT,对输出取共轭,得到IFFT结果如下:

f61e1f9e-1ec9-11ee-962d-dac502259ad0.png

​​审核编辑:汤梓红

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

    关注

    1602

    文章

    21320

    浏览量

    593195
  • Xilinx
    +关注

    关注

    70

    文章

    2121

    浏览量

    119373
  • FFT
    FFT
    +关注

    关注

    15

    文章

    425

    浏览量

    58638
  • C语言
    +关注

    关注

    180

    文章

    7530

    浏览量

    128658
  • HLS
    HLS
    +关注

    关注

    1

    文章

    126

    浏览量

    23683

原文标题:FPGA实现OFDM通信——FFT与IFFT(1)——C语言实现N点FFT

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    应用于LTE-OFDM系统的Viterbi译码在FPGA中的实现

    应用于LTE-OFDM系统的Viterbi译码在FPGA中的实现OFDM系统中,为了获得正确无
    发表于 09-19 09:41

    【参考书籍】基于XILINX FPGAOFDM通信系统基带设计—史治国

    本帖最后由 eehome 于 2013-1-5 10:02 编辑 第1章正交频分复用系统的基本原理. 1.1 无线通信系统 1.2 ofdm系统发展历史与现状 1.2.1 发展历
    发表于 04-24 09:21

    【基于Xilinx FPGAOFDM通信系统基带设计】随书光盘

    物理层标准IEEE 802.11a为实例,研究如何在FPGA实现一个OFDM通信系统的基带收发机。《基于XILINX
    发表于 11-02 11:09

    adc采样后数据无法实现ofdm(fft)解调

    近期在利用fpga spartan6系列进行OFDM系统开发工作,基带实现平台为xilinx spartan6系列,我们
    发表于 08-14 22:02

    怎么使用xilinx系统生成器实现ofdm

    大家好!!! 我正在使用xilinx系统生成器实现ofdm。在发送器部分,对于星座映射,我使用的是16位QAM,这是一个matlab文件。通过使用“Mcode块”,我有点将matlab
    发表于 04-19 10:32

    怎么使用FPGA实现OFDM系统同步算法?

    OFDM同步技术的目的就是为了防止码间干扰和载波干扰。当前OFDM同步的算法是根据OFDM原理提出的基于数据符号方法,它的优点是捕获快、精度高,适合分组数据通信,具体的实现是在分组数据
    发表于 08-19 08:22

    基于FPGAOFDM 宽带数据通信同步系统设计与实现

    基于FPGAOFDM 宽带数据通信同步系统设计与实现:正交频分复用(OFDM)是第四代移动通信的核心技术,本文介绍了一种基于
    发表于 06-25 08:18 44次下载

    OFDM系统中DAGC的应用研究及FPGA实现

    OFDM系统中DAGC的应用研究及FPGA实现 介绍IDFT/DFT精度在OFDM系统基带解调
    发表于 12-30 10:10 1次下载

    导频叠加OFDM同步方法的FPGA实现

    导频叠加OFDM同步方法的FPGA实现,目前正交频分复用(OFDM)技术已经成为第四代移动通信研究的热点,同时OFDM同步又是
    发表于 02-20 15:15 1811次阅读
    导频叠加<b class='flag-5'>OFDM</b>同步方法的<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>

    基于FPGAOFDM系统设计与实现

    本文基于802.16a协议的原理架构,本着小成本、高效率的设计思想,建立了一个基于FPGA的可实现流水化运行的OFDM系统的硬件平台,包括模拟前端及
    发表于 05-25 09:38 5964次阅读
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>OFDM</b><b class='flag-5'>系统</b>设计与<b class='flag-5'>实现</b>

    应用于LTE_OFDM系统的Viterbi译码在FPGA中的实现

    应用于LTE_OFDM系统的Viterbi译码在FPGA中的实现
    发表于 05-11 11:30 11次下载

    基于XILINX FPGAOFDM通信系统基带设计完整版电子书免费下载

    基于XILINX FPGAOFDM通信系统基带设计
    发表于 01-08 14:23 0次下载

    如何使用FPGA设计和实现OFDM系统OFDM中的FFT模块设计及其FPGA实现

    建立了一个基于FPGA的可实现流水化运行的OFDM系统的硬件平台,包括模拟前端、基于FPGAOFDM
    发表于 12-13 16:45 22次下载
    如何使用<b class='flag-5'>FPGA</b>设计和<b class='flag-5'>实现</b><b class='flag-5'>OFDM</b><b class='flag-5'>系统</b>和<b class='flag-5'>OFDM</b>中的FFT模块设计及其<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>

    Xilinx FFT IP核到FPGA实现OFDM

    笔者在校的科研任务,需要用FPGA搭建OFDM通信系统,而OFDM的核心即是IFFT和FFT运算,因此本文通过Xilinx FFT IP核的
    的头像 发表于 07-10 10:43 728次阅读
    从<b class='flag-5'>Xilinx</b> FFT IP核到<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b><b class='flag-5'>OFDM</b>

    基于FPGAOFDM调制器设计与实现

    电子发烧友网站提供《基于FPGAOFDM调制器设计与实现.pdf》资料免费下载
    发表于 10-26 09:25 0次下载
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>OFDM</b>调制器设计与<b class='flag-5'>实现</b>