文章目录
前言
本文首先给出了信号功率、噪声功率、与信噪比的概念,以及信噪比线性值和分贝值的换算关系,然后使用MATLAB生成信号,并叠加awgn形成噪声信号,基于该仿真代码计算出信号功率、噪声功率,并说明其与信噪比的关系。
一、信号功率、噪声功率、与信噪比
1.信号功率
信号功率是指信号的平均功率,一般用S表示。若信号由序列A=[A0, A1, A2, … Ai, … AN]给出,则信号功率由下式给出:
信号功率的单位是W(瓦特)。
2.噪声功率
噪声功率是指噪声的平均功率,一般用N表示。它是噪声序列平方和的平均值,单位也是W(瓦特)。
3.信噪比
信噪比是指信号功率S与噪声功率N的比值,一般用SNR表示。SNR由下式给出:
显然,SNR是无量纲的。工程中一般使用SNR的dB值,此时便称SNR的单位是分贝(dB)。
4.信噪比线性值与分贝值的换算关系
若用S/N表示SNR的线性值(即由信号功率和噪声功率直接计算得到的比值),用SNR_dB表示SNR的分贝值,则两者之间换算关系如下:
SNR_dB = 10*log10(S/N)
S/N = 10^( SNR_dB/10)
例如,若已知SNR_dB=20dB和信号功率S=0.5W,则可计算出噪声功率N=S/[10^( SNR/10)]=0.005W。
二、MATLAB仿真分析
下面以awgn的使用为例,给出MATLAB仿真中信号功率、噪声功率、与信噪比的应用举例。
1.建立awgn信道通信模型
首先使用MATLAB生成一段余弦信号,并将其送入awgn函数增加噪声,然后用带噪信号和原始信号作差得到噪声序列。代码如下:
% 指定信号的参数,频率1Hz,采样频率为64Hz,信号持续时间为10秒(640个samples)。
A = 1; % 余弦波的振幅
f =