Main Content

wlanNonHTOFDMDemodulate

非HT OFDM波形的解调场

Description

例子

符号= wlannonhtofdmdemeDemulate(rx,,,,field,,,,CFG通过正交频划分多路复用(OFDM)解调非高通量(非HT)时域信号,恢复频域信号rx。功能解调rx通过使用非HT传输参数CFGand signal field valuefield

符号= wlannonhtofdmdemeDemulate(rx,,,,field,,,,带宽specifies the channel bandwidth of the transmission.

例子

符号= wlannonhtofdmdemeDemulate(___,,,,“ Ofdmsymboloffset”,,,,符号除了以前的语法中的任何输入参数的组合外,还指定OFDM符号采样偏移量为循环前缀长度的一部分。

Examples

collapse all

配置并生成非HT时间域波形。

cfg = wlannonhtconfig('MCS',,,,4); bits = randi([0 1],8*cfg.PSDULength,1,'int8');waveform = wlanwaveformgenerator(位,CFG);

通过添加白色高斯噪声(AWGN)通道传输波形,信噪比(SNR)为30。

SNR = 30;rxwaveform = awgn(waveform,snr);

从接收的波形中提取非HT数据字段。

字段='nonht-data';ind = wlanFieldIndices(cfg,field); rx = rxWaveform(ind(1):ind(2),:);

通过解调时间域数据信号来恢复频域信号。

sym = wlannonhtofdmdemeDemeDulate(rx,field,cfg);

从解调信号中提取数据子载波。

info = wlannonhtofdminfo(field,cfg);sym = sym(info.dataindices,:,::);

Recover the PSDU and confirm that it matches the transmitted PSDU.

NoiseVarest = 10^(-snr/10);psdu = wlannonhtdatabitRecover(sym,noiseVarest,cfg);quequal(位,psdu)
ans =逻辑1

配置并生成具有160 MHz通道带宽和动态带宽操作的非HT数据信号。

带宽='CBW160';cfg = wlannonhtconfig('信道带宽',,,,带宽,,,,'PSDULength',,,,1,,,,...'SignalChannelBandwidth',真的,“带宽片”,,,,'Dynamic');bit = randi([0 1],8*cfg.psdulength,1,'int8');[range,~] = scramblerRange(cfg); scramInit = randi(range); y = wlanNonHTData(bits,cfg,scramInit);

通过AWGN通道传输波形,其SNR为50。

snr = 50; noiseVarEst = 10^(-snr/10); rx = awgn(y,snr);

通过OFDM解调非HT数据信号,指定OFDM符号采样偏移来恢复频域信号。

字段='nonht-data';符号= 0.5; sym = wlanNonHTOFDMDemodulate(rx,field,bandwidth,“ Ofdmsymboloffset”,symoffset);

Extract the data subcarriers.

info = wlannonhtofdminfo(字段,带宽);sym = sym(info.dataindices,:);

恢复PSDU的前20个MHz子通道,通过指定通道状态信息来增强OFDM子载波的拆除。确认接收和传输的PSDU匹配。

csi = ones(48,1); [psdu,scramInit] = wlanNonHTDataBitRecover(sym(1:48,:),noiseVarEst,csi,cfg); isequal(bits,psdu)
ans =逻辑1

通过解释扰流器状态来恢复和显示带宽信号。

[bandwidth,dyn] = wlanInterpretScramblerState(scramInit)
带宽='CBW160'
dyn =逻辑1

输入参数

collapse all

接收到的时间域信号,指定为大小的复杂值矩阵ns-by-nr

  • ns是时间域样本的数量。如果nsis not an integer multiple of the OFDM symbol length,ls指定的字段,然后函数忽略sthe remainingmod(ns,,,,ls符号bols.

  • nr是接收天线的数量。

数据类型:double
复杂的数字支持:万博1manbetx是的

要解调的字段,,,,specified as one of these values.

  • 'l-ltf'- 解调旧训练领域(L-LTF)。

  • 'l-sig'– Demodulate the legacy signaling (L-SIG) field.

  • 'nonht-data'- 解码非HT数据字段。

数据类型:char|细绳

non-HT transmission parameters, specified as awlannonhtconfig目的。

通道带宽,指定为这些值之一。

  • 'cbw5'- 5 MHz的频道带宽

  • 'cbw10'- 10 MHz的频道带宽

  • 'cbw20'- 20 MHz的频道带宽

  • 'cbw40'– Channel bandwidth of 40 MHz

  • 'cbw80'- 80 MHz的频道带宽

  • 'CBW160'– Channel bandwidth of 160 MHz

数据类型:char|细绳

OFDM符号采样偏移,作为循环前缀长度的一部分,在间隔[0,1]中指定为标量。

The value that you specify indicates the start location for OFDM demodulation relative to the beginning of the cyclic prefix.

Example:0.45

数据类型:double

输出参数

collapse all

Demodulated frequency-domain signal, returned as a complex-valued array of sizensc-by-n符号-by-nr

  • nsc是解调场中的主动占用子载波的数量。

  • n符号is the number of OFDM symbols.

  • nr是接收天线的数量。

数据类型:double
复杂的数字支持:万博1manbetx是的

扩展功能

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

版本历史记录

在R2020b中引入