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

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

3天内不再提示

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

牵手一起梦 来源:电子产品世界 作者:电子产品世界 2020-01-16 09:40 次阅读

引言

目前,正交频分复用(OFDM)技术成为多媒体传感器网络信息传输的主流研究方向,并越来越受到人们的关注。OFDM对于符号定时非常敏感,定时误差会造成符号间干扰(ICI),所以符号定时算法的研究在OFDM技术中是至关重要的。

定时同步算法通常分为基于非辅助数据的同步算法和基于辅助数据的同步算法。目前应用最广泛的基于导频的定时和频偏估计算法是由Schmidl提出的。这种算法采用相同的两段训练序列进行定时,该方法采用递推公式进行计算,实现复杂度很低,在OFDM系统中被广泛采用,然而这种方法的定时判决函数存在一个误差平台,会引起很大的定时偏差。为了减小定时判决函数的误差平台造成的影响,Minn对Schmidl的方法做出了一定的改进。Minn的定时判决函数是一个尖峰,在一定程度上消除了误差平台的影响;Park提出了一种定时判决函数更加尖锐的波形。但是由于循环前缀的存在,这种方法的判决函数有很大的旁瓣,在循环前缀较长时,几乎与主瓣的高度相同,在信噪比较低的情况下,很难得到正确的定时结果。采用训练序列与本地PN码互相关有明显的单峰值,但在频偏较大的情况下,定时判决函数会严重变形,引起较大的定时误差。

本文针对一种长短序列相结合的符号定时算法,给出了精确定时的FPGA设汁方案,并对该方法进行了FPGA实现。在实现的过程中,采用状态机、流水线等设计方法,优化了系统的资源和运算速度,增强了本设计的应用价值。

本文首先介绍了OFDM系统的帧结构,然后介绍了精同步的FPGA实现结构,并对实现结构进行了分析,最后对相关Matlab仿真结果进行了分析,并给出精同步FPGA的实现资源损耗报表。

1 、OFDM数据帧结构

本文中OFDM系统参照目前广泛应用于无线局域网中的IEEE 802.11a标准,以突发模式传输数据,其数据帧前端的前导码用作同步,AGC,频偏估计。它的前导码结构如图1所示。前导码包括长训练序列和短训练序列两个部分。短训练序列分为10段,每段长度为32个抽样点;长训练序列分为2段,每段长度为128个抽样点,加上保护前缀,总长度为640个抽样点。前导码之后是数据部分。

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

2 、精同步FPGA设计及分析

2.1 精同步FPGA设计

精同步用于信号的精确定时。本文假设系统已经完成粗频偏估计,系统的频偏在精同步能够容忍的范围内。该设计采用本地序列地与长训练序列相关的方法,由于本地序列不受噪声的影响,相关运算后,判决函数存在明显的单峰值,可进行精确定时。系统后续数据帧还有循环保护前缀和信道估计的处理,精同步的已经可以达到系统性能的要求。

本文从资源消耗角度出发,对传统方法进行了改进,在不降低系统性能的前提下优化了系统资源消耗。

精同步主要由本地相关器、累加器和阈值判决器三个模块组成,设计采用流水线的方式,实现结构如图2所示。

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

式中:r(n)表示输入数据;C(n)是与本地序列相关的相关值;P(n)表示信号的功率,用作信号能量的归一化。

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

本地相关器的实现是精同步的关键部分,本地相关器的实现中需要用到复数乘法器,本文采用的复数乘法算法如式(5)所示:

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

由于精同步是与本地序列相关,不存在递推公式,为了降低资源损耗,在选取本地序列时,仅截取实部和虚部的符号位,即每个本地序列的实部和虚部仅用-1,0,1表示,这样每个复数乘法可以转换成加法。

本文对判决函数的计算方法进行了改进,式(3)是对|C(n)|进行一阶泰勒展开,只取0次项与1次项作为|C(n)|的近似结果。

在峰值检测时,本文采用乘法代替除法进行门限判定,门限判决函数如式(6)所示:

|C(n)|》gate*P(n) (6)

达到门限判定条件时,精捕获成功,并通过计数的方式找到FFT窗的位置,完成定时同步。

2.2 FPGA设计方案资源消耗分析

与传统方法相比,本文提出的方案在资源消耗上大大降低,主要体现在以下几个方面:

(1)在本地相关器的实现上。式(5)表明,每次复数乘法运算只需要进行3个乘法运算,节省了1个乘法资源。在进行相关运算时,传统方法在计算每个相关值时需进行384个乘法运算,在本文中,由于实部和虚部都只用符号位表示,乘法器可以用数据选择器与加法器实现,大大节省了乘法器资源。

(2)在判决函数的计算上。传统方法每计算一个判决函数的值,需要进行4个乘法,2个加法计算。本文提出的近似方法中,每次判决函数的计算只需要2次乘法,2次加法,1次比较与1次移位操作,节省了乘法器资源。

(3)在硬件实现时。除法器对资源消耗非常大,本文用比较容易实现的乘法代替传统方法中的除法运算,节省了系统资源。

当然,本文对资源的优化是因为采取了一定的近似处理和截位处理,会带来一定的量化误差,在一定程度上会降低系统的性能,但仿真结果表明,这种性能的损失在可接受范围内。

3、 仿真及实现

3.1 仿真结果

利用本地序列截取符号和判决函数的近似对改进方案进行了仿真。该系统中,给定子载波数为N=128,码速率定为Rb=5 Mb/s,子载波间隔为19.2 kHz,数字调制采用QPSK,信道模型选用AWGN模型,设定信噪比为5 dB。

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

图3是采用本地序列截取2 b的判决函数M(n)的Matlah仿真图;图4是采用本地序列截取4 b的Matlab仿真图。检测峰值时,第一个峰值是由于循环前缀存在的影响,峰值检测时检测第二个峰值。

从图3,图4中可以看出,截位虽然会损耗算法的性能,但是判决函数存在明显峰值,选择适当的阈值时,仍然可以精确定时同步,可见减少本地序列的精度对性能并未造成很大的影响。

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

图5是采用判决函数取近似值的Matlab仿真图,图6是判决函数取确定值的Matlab仿真图。检测峰值时,第一个峰值是由于循环前缀存在的影响,峰值检测时检测第二个峰值。从图5,图6中可以看出,在判决函数近似处理虽然会损耗算法的性能,但是判决函数仍然存在明显峰值,选择适当的阈值时,仍然可以精确定时同步,可见减少对判决函数的近似对性能并未造成很大的影响。

表1是在AWGN环境下精同步位置的仿真结果,每个信噪比下经过5 000帧的仿真。符号同步偏差表示每个信噪比下的精同步平均错误长度,可见在系统的性能并未明显降低。

3.2 精同步模块实际实现

硬件设计是基于XLINX公司的SPRTAN6系列中的XC6SLX150-2FGG484芯片,采用Verilog HDL语言,仿真软件是ISE自带的ISIM,开发环境是ISE。

整个OFDM系统同步的ISIM仿真波形如图7所示。其中:clk_i表示时钟信号;reset_i表示同步复位信号;clk5M_en_i表示5 MHz时钟使能信号;nrst_j表示异步复位信号;acq_val_o表示粗捕获指示信号;dataI_o,dataQ_o表示经过粗捕获和粗频偏估计的输出信号;

sync_val_o表示精同步指示信号。

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

经过ISE综合后,改进前和改进后精同步占用资源分布如表2所示。

基于OFDM系统的帧结构实现精同步的FPGA设计与仿真研究

由表2可见本文对系统资源优化的效果十分明显。

4 、结语

本文分析了一种OFDM系统精同步算法的原理,给出了FPGA硬件实现方案和结果分析,该方案在采用经典算法的同时,对算法进行了改进,在不降低精同步性能的前提下大大降低了计算复杂度,并且设计结构简单,易于实现,具有较好的工程实用价值。

责任编辑:gt

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

    关注

    2526

    文章

    48092

    浏览量

    740016
  • FPGA
    +关注

    关注

    1602

    文章

    21320

    浏览量

    593158
  • 仿真
    +关注

    关注

    50

    文章

    3872

    浏览量

    132155
收藏 人收藏

    评论

    相关推荐

    基于802.11的同步算法研究

    ,降低计算复杂度,提高可实现性。5 结束语本文在研究OFDM-WLAN的基础上提出了利用短训练符号的延时自相关信息来完成802.11a的精确同步
    发表于 08-06 10:38

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

    802.11a物理层协议 2.3.1 主要参数 2.3.2 物理层协议数据单元(ppdu)结构 2.3.3 信道构成 第3章 ofdm基带处理器总体架构 3.1 ieee 802.11a基带处理器
    发表于 04-24 09:21

    FPGA设计中同步系统实现

    FPGA设计中同步系统实现数字通信时,一般以一定数目的码元组成一个个“字”或“句”,即组成一个个“
    发表于 08-11 16:22

    FPGA设计中同步系统实现

    FPGA设计中同步系统实现数字通信时,一般以一定数目的码元组成一个个“字”或“句”,即组成一个个“
    发表于 08-11 17:44

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

    模块的算法和FPGA实现进行详细探讨,内容涵盖一个完整无线通信系统的绝大部分模块,包括扰码、编码、交织、OFDM调制/解调、
    发表于 11-02 11:09

    如何实现OFDM水声通信系统定时同步

    时、空、频变的多径信道,它具有强多径、窄频带和强噪声等特点,将OFDM传输技术应用到水声通信中,实现OFDM水声通信系统定时同步,已成为水声
    发表于 08-01 06:52

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

    正交频分复用(OrthogonalFrequency Division Multiplexing,OFDM)技术已经成为第四代移动通信研究的热点,同时,OFDM同步又是
    发表于 08-19 08:22

    OFDM系统中频域同步技术及FPGA实现方法是什么

    本文主要介绍各部分的算法方案及电路实现时所用的FPGA元件的基本结构、设计思路。最后通过对电路的仿真波形可以看出,这些频域同步算法和
    发表于 05-07 06:52

    一种新的MIMO-OFDM同步技术解析

    本文提出的新的 MIMO-OFDM同步方法设置了新的导引符号配置方法,可以在接收端时域得到相同的两个半段序列,进行时间粗同步和频率同步,频域再根据导引插入规则进行时间
    发表于 05-27 06:39

    基于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)技术已经成为第四代移动通信研究
    发表于 02-20 15:15 1810次阅读
    导频叠加<b class='flag-5'>OFDM</b><b class='flag-5'>同步</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>

    如何使用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 FPGA实现OFDM系统

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