基于IEEE 802.11a的OFDM帧检测算法研究与FPGA实现
扫描二维码
随时随地手机看文章
摘 要: 通过对传统基于能量值的帧检测算法的研究,采用了一种延时相关算法,克服了传统算法中能量值变化大的缺点,使阈值的选取较为简便,并基于FPGA硬件平台实现了该算法。硬件仿真结果表明,该算法达到了低运算量,具有可实现性的要求,是一种比较理想的帧检测算法。
关键词: OFDM; 帧检测; FPGA
正交频分复用[1]OFDM(Orthogonal Frequency Division Multiplexing)技术作为4G通信系统的物理层调制方式,具有抗频率选择性衰落、抗载波间干扰(ICI)、频谱利用率高以及克服符号间干扰(ISI)等优点。到目前为止,OFDM 已经被广泛应用于欧洲的广播电视系统、ADSL、数字音频广播(DAB)、数字视频广播(DVB)、高清晰度电视(HDTV) 等领域,其在无线局域网(WLAN)的应用也是研究的热点问题之一。
根据IEEE 802.11a标准规定,在52个子载波中插入了4个导频符号。因其信息量较小,而且提取过程繁琐,所以在同步过程中,较少采用导频信息,而是利用数量较多信息量较大的训练符号[2]。
合理的帧检测过程最大程度地滤除了前导训练符号前的噪声信息,可以较为准确地找到每个OFDM帧的起始和结束位置,精确地提取出训练符号的信息,实现准确的定时和频率偏差估计。本文采用一种改进的延时相关帧检测算法,它利用短训练序列的长度信息和相关特性,与常用算法对比,此算法能够较准确地找到帧的起始位置,并具备FPGA硬件实现的合理性。
1 IEEE 802.11a物理层数据单帧结构
IEEE 802.11a的帧结构包括10个周期重复的短训练符号、2个周期重复的长训练符号、SIGNAL域以及数据域。详细帧结构如图1所示,其中G1、G2、G3为循环前缀。
帧检测利用了帧结构中经过精心设计的短训练符号。根据协议规定[3],每个短训练符号包含16个时域样值,实际中一般都是将它们的时域样值存储在片内存储器中,发送时只需按规定时序重复读出,加在长训练序列前。短训练符号的周期性使其具有理想的相关特性,本文采用的延时相关帧检测算法就是利用前导结构中10个短训练序列的相关性对接收数据的训练符号位置信息进行提取的过程。
2 OFDM帧检测算法
常用的帧检测算法是利用短训练符号的长度及其相关特性,将通过算法后的判决值与规定阈值进行比较判断帧检测的情况。若判决值大于或等于规定阈值,则判定检测到帧头;若判决值小于规定阈值,则判定为噪声或无信号,未检测到帧头,即:
时,窗口A的能量最大。当数据经过窗口A到达窗口B时,窗口B的能量开始增加,而窗口A的能量不变。数据分组从窗口A到窗口B有一个从小到大再到小的变化过程,故取判决值:
图4中,横坐标为接收信号采样点数,纵坐标为算法判决值的大小。当采样点在0~800时,接收数据为噪声信息。由于噪声的相似度很低,其相关性很差,相关运算得到的结果较小,故判决值较小,基本都在0.5以下。当采样点在800~1 600时,分组数据到来,由于分组数据的短训练序列具有周期性,故其具有理想的相关性,若没有噪声干扰,判决值应保持为1。在加入噪声干扰的情况下,判决值在很短的时间内增加到较大的数值,并在判决值1上下小范围浮动。
从仿真结果可以看出,噪声的判决值和分组数据的判决值相差明显,所以阈值可以选在0.5~0.8之间。相比以上两种算法,延时相关算法精度较高,且阈值选取容易了很多。
3.3 硬件实现和结果分析
本设计使用了XILINX公司的Spartan-3E开发板,接收数据由MATLAB仿真的IEEE 802.11a OFDM发送系统产生,将其转换为二进制数据并存储于IP核存储器中,进行算法硬件下载实现时,可以通过代码直接调用IP核中的数据作为接收数据。基于FPGA的算法设计中采用了模块化的编程思想,根据延时相关算法的流程图,将算法一一模块化。接收数据首先进入数据控制模块,控制模块将数据分流为两路相差32个时间长度的数据,分别送入运算模块。经过延时相关运算和能量计算,运算模块将相关运算与能量计算的比值送入判决模块,最终判决模块根据判决值与阈值的比较结果,向数据控制模块反馈使能信号,控制数据的输出与否。这种模块分工的思想便于程序的修改,尤其便于阈值的选取。通过ISE软件中的功能仿真结果对比,最终将阈值选择为0.6,并要求判决值保持48个长度,这是为了避免实际中的突发较大功率噪声对结果的干扰。功能仿真的结果如图5所示。输入数据结构如图5所示,分为实部(datainRe)和虚部(datainIm)两部分。410 ns前为加入的噪声序列,410 ns后为数据帧序列。
通过定义管脚,生成比特流,将其下载到Spartan-3E开发板中,使用在线逻辑分析仪(chipscope)观察管脚输出,如图7所示。在实际硬件中,帧检测模块能够完成帧检测过程,并保持一定精度,其波形与功能仿真一致。
从功能仿真和硬件输出来看,延时相关算法帧检测误差较小,虽然由于模块设计产生了一定的延时,但检测精度得到了改进,阈值波动范围小,容易选择,且能够在硬件上实现。总体来讲,延时相关算法是一种可行的帧检测算法。
帧检测作为接收机同步的第一步,有着举足轻重的意义,其准确性直接影响接收机以及整个OFDM系统的性能。根据IEEE 802.11a标准规定,帧检测算法一般不利用导频,多数情况下是利用前导结构中的短训练符号进行。延时相关算法合理利用了帧结构中的短训练符号,通过与两种常用帧检测算法的对比,这种算法阈值选取范围小,易于硬件实现;提取精度高,没有增加过多的运算量,有助于节省硬件资源。FPGA硬件平台的功能仿真充分验证了延时相关算法的优越性,它可以较为精确地找到接收信号数据分组的开头部分,是一种较为理想的帧检测算法。
参考文献
[1] 胡心怡,方睿,李日欣,等.OFDM技术发展综述[J].通信技术,2010(8):132-134.
[2] SPETH M, DAECKE D, MEYR H. Minimum overhead burst synchronization for OFDM based broadband transmission[C].IEEE Global Telecommunications Conference,Sydney:1998:2777-2782.
[3] ZYREN J, PETRICK A. Brief tutorial on IEEE 802.11 Wireless LANs[G]. Application Note 9829, Intersil Corporation, 1999.
[4] 孙山林,侯春萍.全相位OFDM系统的最大自相关帧同步[J].计算机工程与应用,2009(4):23-29.
[5] 党健.OFDM系统中同步与信道估计技术的研究[D].西安:西安电子科技大学,2010:20-31.
[6] 郭俊卿,陈云,胡俊.一种改进的OFDM系统定时同步算法[J].电子设计工程,2011,19(14):151-152,159.