您现在的位置:首页 >> 通信 >> 内容

OFDM系统同步技术的matlab仿真,包括符号定时同步,采样钟同步,频偏估计

时间:2022/12/19 17:26:53 点击:

  核心提示:A130包括程序操作录像+word文档...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/Y5qWmp9q

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览




3.算法概述

        同步是OFDM系统中非常关键的问题,同步性能的优劣直接影响到OFDM技术能否真正被用于无线通信领域。在OFDM系统中,存在多种级别的同步:载波同步、符号定时同以及样值同步,其中每一级别的同步都会对OFDM系统性能造成影响。这里我们首先分析了OFDM系统内不同级别的同步问题,然后在此基础上介绍了几种分别用于载波同步和符号定时同步的方法。通过分析可以看到,只要合理地选择适当的同步方法,就可以在OFDM系统内实现同步,从而为其在无线通信系统中的应用打下坚实的基础。  

4.部分源码

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

    %--------------去除残余频偏------------------------------------------

    ofdm_noise4=ofdm_noise3((jk-2)*N_sym_fram+1:(jk-1)*N_sym_fram);%每一帧符号*帧数

    kkj=1:1:N_sym_fram;

    fd_offset=exp(-1i*2*pi*fd_est(jk).*(kkj-1)/FFTLen);

    ofdm_offset_fd=ofdm_noise4.*fd_offset;

    %ofdm_offset_fd=ofdm_noise4;

    %----------------串并转换--------------------------------------------

    ofdm_rank=reshape(ofdm_offset_fd,FFTLen+CPLen,sym_num+1);

    %----------------去CP------------------------------------------------

    ofdm_rank_noCP=ofdm_rank((CPLen+1:FFTLen+CPLen),(1:sym_num+1));

    %---------------  FFT------------------------------------------------

    ofdm_noCP_FFT=sqrt(8)/sqrt(FFTLen)*fft(ofdm_rank_noCP);

    %----------------去除采样时钟----------------------------------------

    for nn=1:sym_num+1

        for kk=1:FFTLen

            if kk<=FFTLen/2

                fs_est_m(kk,nn)=exp(-1i*2*pi*(kk-1)/FFTLen*fs_est(jk)*(FFTLen+CPLen)*(nn-1))*exp(-1i*pi*(kk-1)*fs_est(jk)*(FFTLen-1)/FFTLen);

            else kk > FFTLen/2;

                fs_est_m(kk,nn)=exp(1i*2*pi*(FFTLen-kk+1)/FFTLen*fs_est(jk)*(FFTLen+CPLen)*(nn-1))*exp(1i*pi*(FFTLen-kk+1)*fs_est(jk)*(FFTLen-1)/FFTLen);

            end

        end

    end

    kkl=(jk-2)*(sym_num+1)+1:1:(jk-1)*(sym_num+1);

    ofdm_rec_FFT(1:FFTLen,kkl)=ofdm_noCP_FFT.*fs_est_m;

    %+------------------------------------------------------------------

    %|                     残余频偏跟踪

    %+------------------------------------------------------------------

    ofdm_rec_FFT2(1:FFTLen,1:sym_num+1)=ofdm_rec_FFT(1:FFTLen,kkl);

    cpilot_slot=[10,43,75,105,151,181,213,246];

    %---------------------导频抽取-----------------------------------

    for i=1:1:length(cpilot_slot)

        ofdm_sfo_pilot((1:sym_num),i)=conj(ofdm_rec_FFT2(cpilot_slot(i),1:sym_num))';

    end

    %---------------------符号间对应差分---------------------------------

    ofdm_sfo_pilot_diff=zeros(sym_num-2,length(cpilot_slot));

    P_num=floor(length(cpilot_slot)/2);

    for l=1:1:sym_num-2

        for k=1:1:length(cpilot_slot)

            ofdm_sfo_pilot_diff(l,k)=ofdm_sfo_pilot(l+2,k)*conj(ofdm_sfo_pilot(l+1,k)); %去除第一个符号训练序列

        end

        ofdm_sfo_pilot_C1(l)=sum(ofdm_sfo_pilot_diff(l,(1:P_num)));

        ofdm_sfo_pilot_C2(l)=sum(ofdm_sfo_pilot_diff(l,(P_num+1:end)));

    end

    %---------------------求残余频偏-------------------------------------

    ofdm_sfo_sum_C1(jk)=sum(ofdm_sfo_pilot_C1);

    ofdm_sfo_sum_C2(jk)=sum(ofdm_sfo_pilot_C2);

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

A130

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168