通信系统中基于matlab的BPSK信噪比检测算法及实现

这篇具有很好参考价值的文章主要介绍了通信系统中基于matlab的BPSK信噪比检测算法及实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

根据是否需要辅助数据,信噪比估计算法可以分为数据辅助类算法(Data aided, DA)和非数据辅助类算法(No Data aided, NDA)。DA估计算法准确性较高,但是需要提供先验信息,需要牺牲信道传输效率。NDA方法在传输数据信息的同时进行信噪比估计,不影响信息传输效率,适用范围较广。

根据所采纳的信号处理方法,信噪比估计可以分为最大似然估计(Maximum Likelihood, ML)、谱分析法以及统计量法。在这三种方法中,最大似然估计能够在存在辅助信号的情况下得到最高水平的精度。

二进制相移键控(Binary Phase Shift Keying ,BPSK)是一种数字频带调制中的非线性调制,通过调制载波的不同相位来传送数据。由于BPSK是一种相位调制方式,在相位上引入信息,对接受信号的幅度变化不敏感,因此BPSK具有抗干扰性强、抗多径衰落等优点。

bpsk系统matlab实现,fpga开发,matlab,算法

bpsk系统matlab实现,fpga开发,matlab,算法

bpsk系统matlab实现,fpga开发,matlab,算法是二进制基带信号时间间隔,bpsk系统matlab实现,fpga开发,matlab,算法是持续时间为bpsk系统matlab实现,fpga开发,matlab,算法,高度为1的矩形脉冲。BPSK可以通过模拟调相法、数字键控法调制,采用与接收的BPSK信号同频同相的相干载波解调。在解调时,用以恢复的本地载波与所需的相干载波可能同相,也可能反相,这会造成倒bpsk系统matlab实现,fpga开发,matlab,算法现象,可用2DPSK取代克服该问题。

基于统计量的估计方法有二阶四阶矩估计法(Second and Fourth Order Moments, M2M4)与分离符号矩(Split Symbol Moment, SSME),通过构造统计量分离信号和噪声。

M2M4算法精确度与采样信号数成正比,在小信噪比时误差较大。采样信号bpsk系统matlab实现,fpga开发,matlab,算法的二阶矩如下:

bpsk系统matlab实现,fpga开发,matlab,算法

由于信号与噪声相互独立,bpsk系统matlab实现,fpga开发,matlab,算法bpsk系统matlab实现,fpga开发,matlab,算法为实数,因此bpsk系统matlab实现,fpga开发,matlab,算法bpsk系统matlab实现,fpga开发,matlab,算法的互相关系数为0。且噪声为零均值单位方差加性高斯白噪声,即,bpsk系统matlab实现,fpga开发,matlab,算法。因此,上式可化简为:

bpsk系统matlab实现,fpga开发,matlab,算法

同理,四阶矩bpsk系统matlab实现,fpga开发,matlab,算法可化简为下式:

bpsk系统matlab实现,fpga开发,matlab,算法

其中,bpsk系统matlab实现,fpga开发,matlab,算法

联立两式可得:

bpsk系统matlab实现,fpga开发,matlab,算法

bpsk系统matlab实现,fpga开发,matlab,算法

则,信噪比可表示为:

bpsk系统matlab实现,fpga开发,matlab,算法

M2M4算法在实践中使用时间平均替代统计平均,对采样信号求二次方、四次方,在四种算法中计算最为简单。

bpsk系统matlab实现,fpga开发,matlab,算法

该估计算法要求将BPSK信号转换为基带信号,即双极性不归零信号。

matlab参考代码如下:文章来源地址https://www.toymoban.com/news/detail-765496.html

clear;clc;
%% 参数设置
global M2 M4 ;
    bps = 1000;% 码元速率(每秒比特数)
    SNRs = zeros(size(bps)); % 保存信噪比结果
    SNR_estimaed=[];
    T = 1/bps; % 符号持续时间
    fs =10000; % 采样频率为码元速率的50倍
    Ts = 1/fs; % 采样间隔
    Ns = T/Ts; % 每个码元的采样点数
    sps=2;%rcondesign,upfirdn的采样点数
    t=0:1/fs:T-1/fs;
    fc=1e3;%载波频率
    count=1;
    N=500;%二进制符号数
%% 计算bps码元速率下的信噪比
    %% 生成BPSK信号

        bits = randi([0 1], 1, N); % 随机生成1000个二进制比特
        symbols = 2*bits - 1; % BPSK调制,映射到实数值序列
        upsamples = repmat(symbols, Ns, 1); % 扩展为持续时间为T的矩形波
        waveform = upsamples(:)'; % 将矩阵转换为向量
        input=waveform;
%        modulation=real(exp(2i*pi*fc*t));%调制函数
%         modulation=exp(2i*pi*fc*t);%调制函数
        modulation=ones(1,Ns);
  %% 加成形滤波器(M2M4不适合加滤波器)
%     rrcfilter=rcosdesign(0.5,Ns/2,sps,'sqrt');%x=10*sps+1个点升余弦滤波器
%     input=upfirdn(waveform,rrcfilter,sps);%y=x+(bpsk-1)*sps个点
%         L=Ns/2+1;%矩形滤波器长度
%         rectangle=rectwin(L)'/L;
%         input=conv(rectangle,input);
    %% 调制
        b=[];%存储bpsk调制
        for j=1:N
            start=Ns*j-Ns+1;
            stop=Ns*j;
            a=waveform(start:stop);
            b = [b,a.*modulation];
        end
        input=b;
    %% 添加高斯白噪声
    for x =1:30
        SNRdB =x-10;% 信噪比(以dB为单位)
        output=[,];
        received = awgn(input, SNRdB, 'measured'); % 添加高斯白噪声
    %% 加匹配滤波器 M2M4算法加滤波器将影响大信噪比时估计准确性
%         output=upfirdn(received,conj(fliplr(rrcfilter)),1,sps);%对rrc滤波器先反折再共轭
%         output=conv(received,conj(fliplr(rectangle)));
%         received=output;
    %% 使用M2M4算法计算信噪比
        SNR_estimated(count,x)=M2M4(received);
    end

%% 打印结果
% 生成信噪比范围
a = -9:20; % 信噪比范围
%% 理论信噪比的影响
% 第一个图:信噪比估计值与实际值比较
figure; % 创建一个新的图形窗口
hold on; % 启用绘图保持模式
grid on; % 显示网格线
plot(a, SNR_estimated,'ok-', 'linewidth', 1.1, 'markerfacecolor', [36, 169, 225]/255); % 绘制信噪比估计值曲线
plot(a, a,'ok-', 'linewidth', 1.1, 'markerfacecolor', [29, 191, 151]/255); % 绘制实际信噪比曲线
xlabel('理论信噪比值'); % 设置横轴标签
ylabel('估计信噪比值'); % 设置纵轴标签
title('信噪比估计值与实际值比较'); % 设置子图标题
legend('估计信噪比', '实际信噪比'); % 设置图例

hold off; % 关闭绘图保持模式

% 第二个图:估计误差与理论信噪比值关系
figure
hold on
grid on; % 显示网格线
plot(a, SNR_estimated - a,'ok-', 'linewidth', 1.1, 'markerfacecolor', [36, 169, 225]/255); % 绘制估计误差与理论信噪比之间的关系曲线
xlabel('理论信噪比值'); % 设置横轴标签
ylabel('估计误差值'); % 设置纵轴标签
legend('估计误差'); % 设置图例
title('估计误差与理论信噪比关系'); % 设置子图标题

到了这里,关于通信系统中基于matlab的BPSK信噪比检测算法及实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 不同分辨率图像峰值信噪比[PSNR]

    PNNR:全称为“Peak Signal-to-Noise Ratio”,中文直译为峰值信噪比 前言 一、定义 二、Python代码 1.自定义 2.Tensorflow 总结 峰值信噪比是一种衡量图像质量的指标,描述的是最大值信号与背景噪音之间的关系。 一般来说,PSNR高于40dB说明图像质量极好(即非常接近原始图像);在

    2024年02月01日
    浏览(53)
  • 理解信噪比SNR,Eb/N0,Es/N0

    之前学习主要考虑的SNR和误码率,对Eb/N0和Es/N0不太了解,这次边记录边学习一下(希望随着自己的学习可以不断完善)。 信噪比,即信号功率与噪声功率的比值: S:信号功率,N:噪声功率。 Eb/N0:每个二进制bit能量与噪声功率谱密度的比值(比特信噪比)。 Es/N0:  每个符号

    2024年02月04日
    浏览(44)
  • python求不同分辨率图像的峰值信噪比,一文搞懂

    可以使用 Python 的 NumPy 和 OpenCV 库来实现这个任务。提前准备一张图片作为素材。 峰值信噪比(Peak Signal to Noise Ratio,PSNR)是衡量图像质量的常用指标,它表示图像中信号和噪声的比值。通常,较高的 PSNR 值表示图像质量较高。 PSNR 的公式如下: 其中, MAX 是图像的最大亮度

    2024年02月05日
    浏览(48)
  • 常规波束形成——时域与频域常规窄带波束形成、信噪比计算(附代码)

    最近学习了一下《最优阵列处理技术》,应老师要求写一个线性均匀水听器阵列的常规波束形成,由于是初学者,写的可能会有点问题,欢迎大家提出修改建议和指导,写这个主要是记录自己的思考,其次是和初学者进行交流提升。 要实现波束形成,首先得了解频率波束响应

    2024年02月04日
    浏览(44)
  • 图像增强的两个评价指标:峰值信噪比PSNR和结构相似度SSIM

    图像增强的评价指标在像素层面上通常包含平均绝对误差(MAE)、均方误差法(MSE)、峰值信噪比(PSNR)以及结构相似度(SSIM)。目前在图像增强领域比较权威的客观评价标准为峰值信噪比(PSNR)和结构相似度(SSIM)。 注:这两个指标都需要由标准图做参考(不是原图)

    2024年02月05日
    浏览(46)
  • 适用于计算成像领域无参考图像的图像信噪比评价方法(SNR,PSNR,SSIM)(基础)

    适用于计算成像领域无参考图像的图像信噪比评价方法(基础) Image Signal-to-Noise-ratio evaluation method to reference-free images in the field of computitional imaging (basic). 注:英文可以不看 ,博主在练习英文而已,英文只是中文的翻译,可以直接看中文! 在许多计算成像领域中,我们没有办

    2024年02月03日
    浏览(44)
  • 『CV学习笔记』图像超分辨率等图像处理任务中的评价指标PSNR(峰值信噪比)

    图像超分辨率等图像处理任务中的评价指标PSNR(峰值信噪比) 峰值信噪比(Peak Signal-to-Noise Ratio, PSNR)是图像超分辨率等图像处理任务中常用的一个指标,用来评估图像质量。PSNR的值越高,表示失真越小,图像质量越好。 PSNR是通过对比原图像和处理后图像的每个像素的差异来

    2024年02月06日
    浏览(50)
  • m基于FPGA的BPSK调制解调通信系统verilog实现,包含testbench,包含载波同步

    目录 1.算法仿真效果 2.算法涉及理论知识概要 3.verilog核心程序 4.完整算法代码文件 vivado2019.2仿真结果如下:        对比没载波同步和有载波同步的仿真效果,我们可以看到,当不存在载波同步时,数据的包络会有一个缓慢的类正弦变换,这是由于存在频偏导致的。而当加

    2024年02月16日
    浏览(46)
  • 136基于matlab的自适应滤波算法的通信系统中微弱信号检测程序

    基于matlab的自适应滤波算法的通信系统中微弱信号检测程序,周期信号加入随机噪声,进行滤波,输出滤波信号,程序已调通,可直接运行。 136 matlab自适应滤波算法LMS (xiaohongshu.com)

    2024年01月18日
    浏览(46)
  • 基于MATLAB的BPSK和QPSK调制的性能比较

    摘要: 本文基于研究了MATLAB设计了一个数字通信系统,该系统研究比较了同一数据在不同信噪比下通过高斯信道时BPSK和QPSK的误码率,以及通过同一个瑞利信道时,不同信噪比下两种调制方式的误码率,同时本文也对BPSK和QPSK作了简要介绍。最后,本文研究了QPSK在高斯信道和

    2024年02月06日
    浏览(92)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包