主要内容

OFDM解调流的样本

这个例子展示了如何使用无线OFDM解调器区块HDL工具箱时域OFDM解调复杂样品为一个向量输入副载波。这个示例模型支持HDL代码生成的金宝appOFDMDemod子系统。

设置输入数据参数

设置这些工作空间变量的模型来使用。你可以根据你的要求修改这些值。

rng (“默认”);numOFDMSym = 2;maxFFTLen = 128;DCRem = true;RoundingMethod =“地板”;= false正常化;cpFraction = 1;fftLen = 64;cpLen = 16;numLG = 6;numRG = 5;如果DCRem NullInd = [1: numLG fftLen / 2 + 1 fftLen-numRG + 1: fftLen);其他的NullInd = [1: numLG fftLen-numRG + 1: fftLen);% #好< UNRCH >结束symbOffset =地板(cpFraction * cpLen);vecLen = 2;

生成随机输入帧样本

使用MATLAB函数生成帧的随机样本randn

data = randn (fftLen numOFDMSym) + 1我* randn (fftLen numOFDMSym);dataIn = ofdmmod(数据、fftLen cpLen);

帧转换为流的随机样本

随机样本帧转换为一连串的随机样本给他们作为块的输入。

data = dataIn (:);有效= true(长度(dataIn) / vecLen, 1);fftSig = fftLen *的(长度(dataIn), 1);CPSig = cpLen *的(长度(dataIn), 1);LGSig = numLG *的(长度(dataIn), 1);RGSig = numRG *的(长度(dataIn), 1);resetSig = false(长度(数据),1);sampleTime = 1 / vecLen;stopTime = (maxFFTLen * 3 * numOFDMSym) / vecLen;

运行仿真金宝app软件模型

运行模型导入脚本输入信号变量的块和出口流解调输出样本块MATLAB工作区。

modelname =“genhdlOFDMDemodulatorModel”;open_system (modelname);= sim (modelname);simOut =挤压(out.dataOut (: 1 out.validOut = = 1));

解调流样品使用MATLAB函数

解调的随机输入样品使用ofdmdemod_baseline函数。

[dataOut1] = ofdmdemod_baseline (dataIn、fftLen cpLen, symbOffset, NullInd。”[],正常化,RoundingMethod);matOut = dataOut1 (:);

比较模型块输出与金宝appMATLAB函数输出

比较模型的输出模型的输出金宝appofdmdemod_baseline函数。

图(“单位”,“归一化”,“outerposition”[0 0 1 1])次要情节(2,1,1)情节(真实(matOut (:)));持有;情节(真实(simOut (:)));网格传奇(“参考”,“金宝app模型”)包含(“样本指数”)ylabel (“级”)标题(的比较模型块和MATLAB函数金宝app实部的次要情节(2,1,2)情节(图像放大(matOut (:)));持有;情节(图像放大(simOut (:)));网格传奇(“参考”,“金宝app模型”)包含(“样本指数”)ylabel (“级”)标题(的比较模型块和MATLAB函数金宝app虚部的)sqnrRealdB = 10 * log10 (var(真实(simOut (:))) / abs (var(真实(simOut (:))) var(真实(matOut (:)))));sqnrImagdB = 10 * log10 (var(图像放大(simOut (:))) / abs (var(图像放大(simOut (:))) var(图像放大(matOut (:)))));流(' \ n OFDM解调器:\ n SQNR真正的部分是%。2 f dB”,sqnrRealdB);流(' \ n SQNR虚部%。2 f dB \ n”,sqnrImagdB);
OFDM解调器:SQNR实部为47.77 dB SQNR的虚部为42.69分贝

另请参阅