主要内容

基本甚高频数据恢复

这个例子展示了如何执行基本的VHT数据恢复。它还展示了如何恢复VHT数据时,接收信号有载波频率偏移。可以使用类似的程序来恢复HT和非HT格式的数据。

基本数据恢复

无线局域网工具箱™ 提供生成和恢复IEEE®802.11ac的功能™ 符合标准的波形。数据恢复过程包括以下步骤。

  1. 生成VHT波形

  2. 通过通道传递波形

  3. 提取VHT-LTF并解调

  4. 使用解调的VHT-LTF估计信道

  5. 提取数据字段

  6. 利用信道和噪声方差估计恢复数据

方框图显示了这些步骤及其相应的命令。

创建VHT配置对象。

cfg=wlanVHTConfig;

通过使用VHT配置对象创建VHT传输波形。将数据序列设置为[1;0;1;1].波形发生器函数重复数据序列以生成指定数量的数据包。

txSig=wlanWaveformGenerator([1;0;1;1],cfg);

通过AWGN信道传递接收到的信号。

rxSig = awgn (txSig, 10);

确定波形的场指数。

ind=wlanFieldIndices(cfg);

从接收到的信号中提取VHT-LTF。

rxVHTLTF = rxSig (ind.VHTLTF (1): ind.VHTLTF (2):);

VHT-LTF解调。利用解调信号估计信道响应。

Demovhtltf=wlanvhtltf解调(rxVHTLTF,cfg);胸部=WLANVHTLTF信道估计值(解调VHTLTF,cfg);

提取VHT数据字段。

rxData=rxSig(ind.VHTData(1):ind.VHTData(2),:);

利用信道和噪声方差估计恢复信息位。确认前8位匹配的输入数据序列的两个重复[1;0;1;1]

rxBits=wlanVHTDataRecover(rxData,胸部,0.1,cfg);rxBits(1:8)
ans=8x1 int8列向量1 0 1 1 1 0 1 1

带频率校正的数据恢复

当载波频率偏移出现时,数据恢复是通过这些步骤完成的。

  1. 生成VHT波形

  2. 通过通道传递波形

  3. 提取L-STF并执行粗略的频率偏移估计

  4. 通过使用粗略估计校正偏移

  5. 提取L-LTF并进行精细的频率偏移估计

  6. 通过使用精细估计校正偏移

  7. 提取VHT-LTF并解调

  8. 使用解调的VHT-LTF估计信道

  9. 提取数据字段

  10. 利用信道和噪声方差估计恢复数据

方框图显示了这些步骤及其相应的命令。

设置通道带宽和采样率。

生化武器=“CBW160”fs=160e6;

创建支持2x2 MIMO传输的VHT配置对象。万博1manbetx

cfg=wlanVHTConfig(“信道带宽”生化武器,...“NumTransmitAntennas”2,“NumSpaceTimeStreams”,2);

生成包含随机PSDU的VHT波形。

txPSDU=randi([01],cfg.PSDULength*8,1);txSig=wlanWaveformGenerator(txPSDU,cfg);

创建一个2x2 TGac通道。

tgacChan=wlanTGacChannel(“采样器”fs,“信道带宽”生化武器,...“NumTransmitAntennas”2,“numreceiveantens”,2);

创建相位和频率偏移对象。

pfOffset=通信相位频率偏移(“采样器”fs,“FrequencyOffsetSource”,“输入端口”);

通过有噪声的TGac通道传递传输的波形。

rxSigNoNoise=tgacChan(txSig);rxSig=awgn(rxSigNoNoise,15);

向接收信号引入500hz的频率偏移。

rxSigFreqOffset=pfOffset(rxSig,500);

查找PPDU所有组件字段的开始和停止索引。

ind=wlanFieldIndices(cfg);

提取L-STF。估计并校正载波频率偏移。

rxLSTF=rxSigFreqOffset(ind.LSTF(1):ind.LSTF(2),:);foffset1=WLANCOASECOFESTIMATE(rxLSTF,cbw);rxSig1=pfOffset(rxSigFreqOffset,-foffset1);

从校正信号中提取L-LTF。估计并校正剩余频率偏移。

rxLLTF=rxSig1(ind.LLTF(1):ind.LLTF(2),:);foffset2=WLANFINCFOESTIMATE(rxLLTF,cbw);rxSig2=pfOffset(rxSig1,-foffset2);

提取并解调VHT-LTF。估计信道系数。

rxVHTLTF=rxSig2(ind.VHTLTF(1):ind.VHTLTF(2),:);Demovhtltf=wlanvhtltf解调(rxVHTLTF,cfg);胸部=WLANVHTLTF信道估计值(解调VHTLTF,cfg);

从接收和频率校正的PPDU中提取VHT数据字段。恢复数据字段。

rxData=rxSig2(ind.VHTData(1):ind.VHTData(2),:);rxPSDU=wlanVHTDataRecover(rxData,胸部,0.03,cfg);

计算接收到的数据包中的位错误数。

numer=biterr(txPSDU,rxPSDU)
numErr = 2