【研究生学习】SNR、Eb/N0和Es/N0的关系
在通信领域中,如果想要衡量一种通信系统的性能,那么SNR、Eb/N0以及Es/N0是绕不开的概念,在一些讲通信原理或者数字通信的书中,如果注意观察,往往会看到一些误比特率的曲线,这种曲线的横坐标就用的是SNR和Eb/N0;除此之外,如果是在matlab中仿真过一些通信系统的,也会发现在matlab中使用AWGN信道的模块时,会需要你选择到底是SNR还是Eb/N0还是Es/N0
那么这篇博客解决的问题的是:
- SNR、Eb/N0以及Es/N0到底是什么
- 它们之间在实际的通信系统中如何互相转换
同时,在阅读这篇博客之前,希望读者能有通信原理的部分基础,至少也要了解模拟调制和数字调制的部分
参考资料:
- 第1章(1):BPSK调制解调器仿真
- 张少侃,吕聪敏,甘浩. 数字通信系统中Eb/N0与SNR转换方法的研究[J]. 现代计算机,2019(12):33-36. DOI:10.3969/j.issn.1007-1423.2019.12.007.
- AWGN Channel
- AWGN Channel
SNR、Eb/N0与Es/N0的概念以及相互的关系
SNR、Eb/N0与Es/N0到底是什么
SNR(Signal-Noise Ratio)即信噪比,在模拟通信系统中,是接收端模拟信号的重要测量指标,可以通过频谱仪等仪器直接实际测量接收端的模拟信号得到
Eb/N0则是指通信系统中传输一比特信息所需要的能量和噪声功率谱密度的比值,是衡量整个通信系统性能归一化的一个性能指标
那么一看这两个概念的定义似乎都是衡量信号与噪声功率或者能量的关系,那么为什么要提出两个概念呢?
首先从能量和功率的角度出发:
- 对于模拟信号而言,模拟波形的持续时间为无限长,其能量为无穷大,因此不能用能量来描述模拟信号,故而对于模拟信号而言,功率是一个更有用的参数
- 而对于数字信号而言,采用的是时间长度为码元间隔Ts的波形来发送和接收码元,每个码元的平均功率(在整个时间轴上取平均)等于0,因此不能用功率来描述数字信号,故而采用码元能量更适用于描述数字信号波形
其次从数字通信系统出发:
- 数字通信系统会采用不同的调制技术,而不同调制技术下的频谱效率不同,频谱效率定义如下:
频谱效率,也称频带利用率,定义为单位带宽的传输速率
\[\eta=\frac{传输速率}{占用频带宽度}=\frac{R_s}{B_T}(Baud/Hz)=\frac{R_b}{B_T}(bps/Hz) \]
频谱效率其实就是评价通信系统的系统效率的参量,因此在评价系统的性能时,只采用SNR就无法体现频谱效率的作用,因此如果想要将系统效率的作用排除在外,就必须从单个比特着手去比较,故而采用了Eb/N0这样的概念,数字通信系统中常采用Eb/N0~BER来衡量通信系统的性能。
那么Es/N0又是什么呢,这个和Eb/N0长的很像的东西其实和Eb/N0差不多,只不过它代表的是传输一符号信息所需要的能量和噪声功率谱密度,可以通过Eb/N0直接转换得到:
其中k为每一个符号的信息bit数,取决于通信系统所采用的调制的类型以及信道编码的码率,比如对于采用1/2码率编码以及8-PSK调制,每个符号的信息bit数就为(1/2)log2(8)=3/2
由于Es/N0和Eb/N0之间的相互转换比较简单,故后续的内容只需研究Eb/N0与SNR的转换即可
SNR、Eb/N0与Es/N0之间的相互转换
在推导之前,有必要先了解一下一些符号的定义:
- Eb:单位比特的能量
- N0:噪声的功率谱密度
- S:信号功率
- N:噪声功率
- br:用户信息的传输速率,单位是bps
- Tb:传输每比特信息所需要的时间,Tb=1/br
- sr:信道中的符号传输速率,单位是符号每秒
- Rc:通信系统的信道编码速率
- Rm:通信系统的调制率,Rm=log2(M),M是调制星座图点数,比如对于BPSK而言,M=2,对于QPSK而言,M=4
- d:扩频倍数
- insValue:平方根升余弦滚降成型滤波器的插值倍数
- α:平方根升余弦滚降滤波器的滚降因子
- W:传输信道带宽
根据定义,信号的功率S等于传输每比特信息所需的能量Eb除以传输每比特所需要的时间Tb,噪声的功率N等于噪声功率谱密度N0乘以传输信号的信道带宽W,可列出公式如下:
又根据调制速率和编码速率的定义:
代入可得:
转换公式的对数形式如下:
对于CDMA体制通信系统,假设系统用户个数为U个,U个用户数据之间通过正交码字直序扩频叠加起来一起传输,假设Sr为U个用户数据叠加的信号总功率,S为单个用户数据的信号功率,则有Sr=U*S,但是在接收端测量模拟信号的功率只能测量叠加的所有用户信号总功率Sr,因此对于CDMA体制通信系统,Eb/N0和SNR的转换公式如下:
对于FDMA和TDMA体制通信系统,令U=1即可
对于一般的通信系统而言,发端成型滤波器和收端匹配滤波器是一致的,常见的均为平方根升余弦滚降滤波器,假定成型滤波器和匹配滤波器都采用平方根升余弦滚降滤波器,其频谱如下图所示:
一般情况下,在实际进行测试时,对于信号功率必须测量的信号带宽是W,而不是sr,这是因为只有测量W带宽内的信号才能不漏掉信号功率,因为发端信号的频谱就是上图中的平方根升余弦滚降成型滤波器波形(发端成型滤波的波形)
但是在测量噪声功率时,可以测量sr带宽,也可以测量W带宽,因为上图中的1、2、3、4阴影部分的面积全是相等的,故而测量sr带宽的白噪声功率就是等于白噪声通过匹配滤波后的功率(即白噪声频谱是平坦的,通过匹配滤波后的白噪声形状就是上图中的平方根升余弦滚降滤波器频谱),同时测量W带宽的噪声功率就是测量白噪声通过匹配滤波前的功率,如果将这两种噪声分别记为Ns(sr带宽的噪声功率)和Nw(W带宽的噪声功率),可知$ Nw=(1+\alpha)*Ns $
这样就可以写出两种不同情况下的转换公式:
- 当实际测量的噪声功率带宽为sr时(测量信号功率的带宽必须为W),转换公式为:
- 当实际测量的噪声功率带宽为W时(测量信号功率的带宽必须为W),转换公式为:
因此可见,实际采用的噪声功率测量带宽决定了Eb/N0和SNR的具体转化公式,而不管怎么测试噪声功率,信号的功率测量的带宽必须为W
matlab中的验证
matlab中也有关于SNR、Eb/N0与Es/N0之间关系的说明,我们可以阅读一下看一看是否和上面说的一样,读者可以看一下在我在最开始给出的参考资料的第三个以及第四个,会发现matlab直接给出了Es/N0与SNR的转换公式,如下图所示:
关于matlab中的转换公式与上面自己推导出的转换公式之间的联系如下图所示:
除此之外,matlab中的转换公式还区分了复信号和实信号: