基于DNN深度学习网络的OFDM信号检测算法的仿真,对比LS和MMSE

1.算法描述

随着无线通信的快速发展,5G正逐渐成长为支撑全社会各行业运作的大型基础性互联网络,其服务范围的大幅扩展对底层技术提出了诸多挑战,尤其是作为物理层关键技术之一的正交频分复用(Orthogonal Frequency Division Multiplexing,OFDM)。近来,深度学习因其在计算机视觉以及自然语言处理领域中的优异表现而备受关注,其极强的普适性也为传统通信提供了新的发展空间。就OFDM系统中的信道估计问题展开深入研究,探索深度学习在该领域的应用可能。


信道估计器是接收机一个很重要的组成部分。在OFDM系统中,信道估计器的设计上要有两个问题:一是导频信息的选择,由于无线信道的时变特性,需要接收机不断对信道进行跟踪,因此导频信息也必须不断的传送: 二是既有较低的复杂度又有良好的导频跟踪能力的信道估计器的设计,在确定导频发送方式和信道估计准则条件下,寻找最佳的信道估计器结构。 **在实际设计中,导频信息的选择和最佳估计器的设计通常又是相互关联的,因为估计器的性能与导频信息的传输方式有关。正交频分复用(orthogonalfrequencydivisionmultiplexing,ofdm)调制因其频带利用率高、抗频率选择性衰落的性能在通信系统中得到了广泛的应用,但ofdm解调对信道估计、时频偏估计、采样起始时刻偏差的估计精度要求很高,尤其是当使用高阶调制时,这一问题更为明显。信道估计和均衡是ofdm系统设计中的关键技术之一,通常ofdm系统的信道估计方法分为非盲信道估计方法和盲信道估计方法。非盲信道估计方法通常采用插入训练序列的方式或者插入导频的方式,盲信道估计方法则是在接收端采用相应的信号处理技术来获得信道时域或频域响应的估计值,有基于判决反馈的估计方法和基于相位的信道估计方法。



OFDM信号检测


OFDM(Orthogonal Frequency Division Multiplexing)即正交频分复用技术,实际上OFDM是MCM(Multi Carrier Modulation),多载波调制的一种。通过频分复用实现高速串行数据的并行传输, 它具有较好的抗多径衰落的能力,能够支持多用户接入。 OFDM技术由MCM(Multi-Carrier Modulation,多载波调制)发展而来。OFDM技术是多载波传输方案的实现方式之一,它的调制和解调是分别基于IFFT和FFT来实现的,是实现复杂度最低、应用最广的一种多载波传输方案。

OFDM主要思想是:将信道分成若干正交子信道,将高速数据信号转换成并行的低速子数据流,调制到在每个子信道上进行传输。正交信号可以通过在接收端采用相关技术来分开,这样可以减少子信道之间的相互干扰(ISI) 。每个子信道上的信号带宽小于信道的相关带宽,因此每个子信道上可以看成平坦性衰落,从而可以消除码间串扰,而且由于每个子信道的带宽仅仅是原信道带宽的一小部分,信道均衡变得相对容易。

OFDM技术是HPA联盟(HomePlug Powerline Alliance)工业规范的基础,它采用一种不连续的多音调技术,将被称为载波的不同频率中的大量信号合并成单一的信号,从而完成信号传送。由于这种技术具有在杂波干扰下传送信号的能力,因此常常会被利用在容易受外界干扰或者抵抗外界干扰能力较差的传输介质中。

通常的数字调制都是在单个载波上进行,如PSK、QAM等。这种单载波的调制方法易发生码间干扰而增加误码率,而且在多径传播的环境中因受瑞利衰落的影响而会造成突发误码。若将高速率的串行数据转换为若干低速率数据流,每个低速数据流对应一个载波进行调制,组成一个多载波的同时调制的并行传输系统。这样将总的信号带宽划分为N个互不重叠的子通道(频带小于Δf),N个子通道进行正交频分多重调制,就可克服上述单载波串行数据系统的缺陷。在向B3G/4G演进的过程中,OFDM是关键的技术之一,可以结合分集,时空编码,干扰和信道间干扰抑制以及智能天线技术,最大限度的提高了系统性能。包括以下类型:V-OFDM, W-OFDM, F-OFDM, MIMO-OFDM,多带-OFDM。


OFDM系统中二进制数据比特以PSK或苦QAM等调制方式调制到相应的子载波上。为了在接收端进行数据恢复,需要知道调制值的参考相位和幅度。在实际系统中,由于载波频率偏移、定时偏差以及信道的频率选择性衰落等的影响,信号会受到破坏,导致相位偏移和幅度变化等。为了准确恢复信号,接收端存在两种信号检测方法,差分检测和相干检测。相干检测利用信号的参考值来检测信号,所以对相干检测而言,如何在不引入过多训练序列的前提下得到检测所需的爹考值是我们需要考虑的问题,重点在于相干检测所需的信道估计算法。无线通信系统中经常采用差分检测或相干检测,在完善信道估计的前提下,为得到相同的误码率、后者所需要的信噪比比前者低3~4dB。 此外,差分检测方法比较适合于较低传输速率的OFDM系统,如欧洲的DAB系统,而对于要求高的传输速率和频谱效率的OFDM系统,相于检测则更合适。


在信号检测中另外一个重要工作是同步问题。OFDM系统中,在接收机对子载波解调之前必须进行两项同步工作:第一, 找出符号边界的位置和最佳的时间间隔使得信道间干扰(ICI)和符号间于扰(ISI)达到最小;第二,估计和纠正接收信号的载波频率偏移,因为任何的偏移会引入子载波间干扰和符号间干扰。尽管OFDM系统相对于单载汲系统来说对相位噪声和频率偏差更为敏感,但是事实证明,利用循环前缀和加入特殊的OFDM训练符号等方法,可以获得较好的时间同步和频率同步。


dnn


在信道变化迅速的系统中,通常依靠频域的导频子载波进行信道估计。导频子载波按照特定的规则插入到时频两维资源中。导频子载波处的信道响应可以通过最小二乘法(least-square,ls)和线性最小均方误差法(linearminimummeansquareerror,lmmse)进行估计,其他子载波处的信道响应则通过插值得到。基于判决反馈的盲信道估计方法将判决后的数据反馈至信道估计器进行去除调制信息操作,从而得到信道响应结果。基于相位的估计算法利用dqpsk调制信号幅度恒定相位为的整数倍的特性,利用接收信号相位在乘4、模2π、除以4的操作后,所有星座点都将变换到正实轴上(相位为0,幅度为1),这一操作相当于去除了dqpsk的调制信息,无需对信号进行判决。


近几年,人工智能尤其是深度学习在无线通信物理层中也得到了广泛的应用。深度学习(Deep Learning, DL),由Hinton等人于2006年提出,是机器学习(MachineLearning, ML)的一个新领域。深度学习被引入机器学习使其更接近于最初的目标----人工智能(AI,Artificial Intelligence)。深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字、图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语言和图像识别方面取得的效果,远远超过先前相关技术。它在搜索技术、数据挖掘、机器学习、机器翻译、自然语言处理、多媒体学习、语音、推荐和个性化技术,以及其它相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。


2.仿真效果预览

matlab2022a仿真结果如下:



3.MATLAB核心程序

for i = 1:NumIter

for snr = 1:length(NoiseVar)

[i,snr]

% 1. Testing data generation

noiseVar = NoiseVar(snr);


% OFDM pilot symbol (can be interleaved with random data symbols)

PilotSym = 1/sqrt(2)*complex(sign(rand(NumPilotSym,NumSC,NumPacket)-0.5),sign(rand(NumPilotSym,NumSC,NumPacket)-0.5));

PilotSym(1:PilotSpacing:end) = FixedPilotAll;


% OFDM data symbol

DataSym = 1/sqrt(2)*complex(sign(rand(NumDataSym,NumSC,NumPacket)-0.5),sign(rand(NumDataSym,NumSC,NumPacket)-0.5));


% Transmitted OFDM frame

TransmittedPacket = [PilotSym;DataSym];


% Received OFDM frame

ReceivedPacket = genTransmissionReceptionOFDM(TransmittedPacket,LengthCP,h,noiseVar);


% Collect the data labels for the selected subcarrier

DataLabel = zeros(size(DataSym(:,idxSC,:)));

for c = 1:NumClass

DataLabel(logical(DataSym(:,idxSC,:) == 1/sqrt(2)*Mod_Constellation(c))) = Label(c);

end

DataLabel = squeeze(DataLabel);


% Testing data collection

XTest = cell(NumPacket,1);

YTest = zeros(NumPacket,1);       

for c = 1:NumClass

[feature,label,idx] = getFeatureAndLabel(real(ReceivedPacket),imag(ReceivedPacket),DataLabel,Label(c));

featureVec = mat2cell(feature,size(feature,1),ones(1,size(feature,2)));

XTest(idx) = featureVec;

YTest(idx) = label;

end

YTest = categorical(YTest);


%% 2. DL detection


YPred = classify(Net,XTest,'MiniBatchSize',MiniBatchSize);

SER_DL(snr,i) = 1-sum(YPred == YTest)/NumPacket;


% 3. LS & MMSE detection


% Channel estimation

wrapper = @(x,y) performChanEstimation(x,y,RHH,noiseVar,NumPilot,NumSC,NumPath,idxSC);

ReceivedPilot = mat2cell(ReceivedPacket(1,:,:),1,NumSC,ones(1,NumPacket));

PilotSeq = mat2cell(FixedPilotAll,1,NumPilot,ones(1,NumPacket));

[EstChanLS,EstChanMMSE] = cellfun(wrapper,ReceivedPilot,PilotSeq,'UniformOutput',false);

EstChanLS = cell2mat(squeeze(EstChanLS));

EstChanMMSE = cell2mat(squeeze(EstChanMMSE));


% Symbol detection

SER_LS(snr,i) = getSymbolDetection(ReceivedPacket(2,idxSC,:),EstChanLS,Mod_Constellation,Label,DataLabel);

SER_MMSE(snr,i) = getSymbolDetection(ReceivedPacket(2,idxSC,:),EstChanMMSE,Mod_Constellation,Label,DataLabel);


end

end

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,163评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,301评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,089评论 0 352
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,093评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,110评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,079评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,005评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,840评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,278评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,497评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,394评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,980评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,628评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,649评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,548评论 2 352

推荐阅读更多精彩内容