主要内容

OFDM同步

该示例显示了基于IEEE®802.11a™标准的与OFDM同步进行数字通信的方法。System对象™从通​​信工具箱使用,提供OFDM调制和解调并帮助同步功能。特别地,该示例说明了解决载波频率恢复,定时恢复和频域均衡等现实世界无线通信问题的方法。

实现

此示例基于IEEE 802.11a标准描述OFDM同步的MATLAB®实现[3.]。

介绍

IEEE 802.11a标准描述了OFDM调制信号的传输,用于本地和大都市区域网络中系统之间的信息交换。该示例利用该标准概述的物理层,特别是前导码符号和OFDM网格结构。

这个例子的目的是:

  • 为了模拟能够成功恢复消息的OFDM无线通信系统,这些系统被各种模拟信道损坏损坏。

  • 为了说明OFDM系统设计和OFDM符号同步的关键通讯工具箱™工具的使用

  • 说明Matlab Coder™的性能优势

初始化

可调节的发射器参数,包括每个帧中的有效载荷消息,由多个OFDM符号和传输帧的数量组成。

消息='活长繁荣,从MathWorks的通讯工具箱团队队!';numframes = 1e2;%可调通道参数EBN0DB = 12;%信道噪声水平(DB)频率OFFSET = 1E4;%频率偏移(Hz)阶段OFFSET = 15;%相偏移(度)延迟= 80;整个数据流的%初始样本偏移量(样本)%显示恢复的消息displayrecoveredmsg = false;%启用范围可视化USESCOPES = TRUE;%检查Matlab编码器许可证USECODEGEN = CHECKCODEGENLICENSE;如果USECODEGEN FPRINTF([' - 查找--matlab编码器许可证。'......'发射器和接收器功能将被编译为'......'额外的模拟加速.-- \ n']);结尾默认情况下,变送器和接收器功能将重新编译每个运行之间的%,这并不总是必要的。禁用接收者%编译,将“Compileit”更改为False。Compileit = UseCodegen;
- 查找atlab编码器许可证。将编译发送器和接收器功能以进行额外的仿真加速度.--

系统的代码架构

此示例模拟基于IEEE 802.11a标准的数字通信系统[3.]。该系统分为四个功能:GenerateOfDmsignal,ApplyofdmChannel,ReceiveOfdmsignal和CalculateOfdMber。

1)generateofdmsignal:设置和步骤一个OfdMtransmitter系统对象。该对象将有效载荷消息转换为第一PSK调制的比特流,然后是OFDM调制,并且最终被前导码OFDM符号预先前列以形成单个帧。发送器重复此帧numframes.时代。

2)ApplyofdmChannel:使用载波偏移,定时偏移和添加白色高斯噪声(AWGN)模拟通道。

3)ReceiveOfDmsignal:设置和步骤OFDMReceiver系统对象。该对象在接收器处模拟一系列组件,包括定时恢复,载波频率恢复,信道均衡和解调。该对象还可以被配置为显示多个范围以可视化接收器处理。OFDMReceiver对象的步骤方法的输出是来自检测到的帧的解码比特流。

4)CalculateOfDmber:根据每个帧中的原始有效载荷消息计算系统帧误差率(FER)和误码率(BER),以及从OFDMEIVER System对象输出的位输出。

各个组件和算法的描述

发射机

OFDMTransmitter系统对象基于具有提供的ASCII有效载荷的IEEE 802.11a标准生成OFDM信号。每个传输帧由几个OFDM符号组成,包括前导码和数据符号。基于所提供的值,发射器重复相同的帧。框架填充以在必要时填充OFDM网格。

渠道

该组件模拟过空气传输的影响。它通过两个相位和频率偏移来降低发送信号,延迟到发射器和接收器之间的模拟信道延迟,以及AWGN。AWGN的噪声水平在DB中给出。

接收者

此OFDMReceiver系统对象恢复原始传输的有效载荷消息。它按此顺序分为四个主要操作:

1)定时恢复:此组件负责确定给定帧的开始的示例位置。更具体地,它利用通过互相关发现的接收帧中的已知前导序列。交叉相关数据将包含特定的峰值布置/间隔,其允许识别。前导码本身旨在在时域中产生这种特定形状。该识别方法基于[1]。对该操作负责的对象的定位汇流方法使用归一化的最小峰值高度,以及最小数量的所需峰来提供可能的前导码匹配。

2)载波频率恢复:通过计算802.11a前导码的长部分之间的时域中的时域的相位差来实现频率估计。然后将该相位差PHI转换为频率偏移。这是最初由Schmidl和Cox发布的常用技术[2]。该相位测量的这种实现假定真正的偏移在PI或FFT的一个频率箱内。在802.11a的情况下,箱为312.5khz。

3)频域均衡:由于频率估计可以是不准确的,因此在OFDM符号的子载波级别处存在额外的相位旋转。以及相位旋转,信道衰落也会影响接收的信号。这两种损伤都是通过频域均衡器校正的。均衡器具有两个阶段,利用序言和导频数据。首先,通过使用从接收的长前程样本产生的抽头来均衡所接收的有效载荷。然后提取导频子载波,并在频率内插值以提供完整的信道估计。使用这些导频估计值,接下来的有效载荷。

4)数据解码器:最后解调OFDM子载波,然后,PSK解调成位,可以从中恢复原始有效载荷消息。

计算

该组件基于原始有效载荷消息和来自接收器处的检测到的帧的解码比特流来计算系统FER和BER。在计算中不计入未检测到的帧。

显示恢复的消息

为每个检测到的帧显示接收器处的恢复消息。由于原始信息长度未发送到接收器,因此每个帧中的填充位也被恢复为字符并显示。因此,您可能会在每个恢复的消息的末尾看到最多7个无意义的字符。

范围

  • 星座图,示出了频域均衡前后的接收信号

  • 矢量图表的均衡器抽头用于给定帧

  • 频谱分析仪显示检测到的数据帧

  • 显示检测到帧的开始的时间图

  • 显示检测到帧的发射器载波偏移的频率估计的时间图

OFDM同步测试概述

通过GenerateOfdmsignal函数重新生成大数据向量,用于给定的EBN0值。然后通过ApplyOfdMChannel函数传递此数据,该函数引入了几个常见的频道损伤。最后,数据传递给接收器以进行恢复。RepectOfDmsignal函数通过逐帧处理数据来操作。在使用代码生成和代码简单时,该处理机制是用于性能优势的自包含。默认情况下,此脚本为发送器和接收器功能生成代码;这是通过使用的Codegen.Matlab Coder™产品提供的命令。这Codegen.命令将MATLAB®函数转换为C ++静态或动态库,可执行文件或MEX文件,从而生成用于加速执行的代码。生成的C代码比原始MATLAB代码快几倍。

在操作期间,接收器将显示一系列图表,示出了某些同步结果和对信号的影响。

用MATLAB编码器编译变送器如果Compileit Codegen.generateofdmsignal.-  args.{编码器.Constant(消息),编码器.Constant(NumFrames)}结尾%生成传输信号如果UseCodegen [TXSIG,Framelen] = GenerateOfdmsignal_Mex(消息,NumFrames);别的[txsig,framelen] = generateofdmsignal(消息,numframes);结尾通过通道%通过信号rxsig = applyofdmchannel(txsig,eBn0db,延迟,频率Offacefset);用MATLAB编码器编译接收者如果Compileit Codegen.ReceiveOfdmsignal.-  args.{rxsig,coder.constant(framelen),coder.constant(displayrecoveredmsg),coder.constant(useescopes)}结尾%恢复信号如果USECODEGEN [DECMSGINBITS,NUMFRAMESDETTECTECTION] = RECOWOFDMSIGNAL_MEX(rxsig,framelen,displayrecoveredmsg,useScopes);别的[decmsginbits,numframesdetected] = roceofdmsignal(rxsig,framelen,displayrecoveredmsg,useScopes);结尾%计算平均BER[FER,BER] = CARCUTEOFDMBER(消息,DECMSGITBITS,NUMFRAMESDETCEDTED);fprintf('\ nat eBno =%5.2fdb,%d中检测到的%d帧中检测到fer =%f和ber =%f \ n'......eBn0db,numframesdetected,numframes,fer,ber);
代码成功。代码成功。在EBNO = 12.00db,在100个发射帧中检测到100帧,带有FER = 0.010000和BER = 0.000098

概括

此示例利用了几个MATLAB系统对象以在AWGN通道上使用OFDM模拟数字通信。它展示了如何模拟OFDM系统的几个部分,例如调制,频率估计,定时恢复和均衡。模拟还通过一系列图显示有关同步算法的操作的信息。此示例还利用代码生成,允许模拟比原始MATLAB代码快几倍。

附录

在此示例中使用以下系统对象:

在此示例中使用以下辅助功能:

参考

  1. Minn,H ;;曾,M .;Bhargava,V.K,“关于OFDM系统的时序偏移估计,”通信信件,IEEE,Vol.4,No.7,PP.242,244,2000年7月

  2. Schmidl,下午。COX,D.C.,“OFDM的”强大的频率和时序同步,“通信,IEEE交易,IEEE交易,Vol.45,No.12,PP.1613,1621,1997年12月

  3. IEEE STD 802.11a,“第11部分:无线LAN介质访问控制(MAC)和物理层(PHY)规格”,1999。