matlab中将ebn0转snr,EbNo(EbN0)和SNR

matlab中将ebn0转snr,EbNo(EbN0)和SNR
先从两个问题⼊⼿。
Q1:为什么要将EbNo转换为SNR呢?
A1:因为要加⼊⾼斯⽩噪声信道,⾼斯⽩噪声信道的噪声参数是与SNR直接相关的,所以要将EbNo转换为SNR。
Q2:为什么仿真要⽤EbNo,⽽不⽤SNR呢?
A1:因为⽤EbNo可以直观的看到系统性能,⽐如采⽤只采⽤QPSK,那么BER达到千分之⼀时,EbNo⼤约为7,如果采⽤单⽤户,进⾏了信道编码⼜进⾏了均衡,也采⽤QPSK星座映射,但EbNo为7时,BER为百分之⼀,那就证明系统设计有问题或者仿真出错了。因为SNR和EbNo是线性关系,所以⽤SNR为参数看BER只能看到⼤概的趋势,不能看到系统性能到底如何。
SNR到底怎么⽤EbNo表⽰,举个例⼦来说明。
假如要传送⼀些速率为1kb/s的数据,信道编码采⽤1/3卷积编码,每秒在这些编码数据前添加200bit的训练序列,星座映射采⽤QPSK,波形成形采⽤因⼦为0.25的升余弦函数,上采样倍数为10。
⾸先来看⼀下经过各模块速率的变化,原始信息速率为1kb/s,1/3卷积编码后变为3kb/s,也就是每秒传3000bit数据,添加200bit的训练序列后,变为每秒传3200bit,此时速率变为3.2kb/s,采⽤QPSK调制后,速率变为1.6ksymble/s。
再来看看EbNo和SNR的单位。
EbNo就是Eb/No。
Eb表⽰单位⽐特的能量,单位是焦⽿(Joules)。
No表⽰功率谱密度,单位是⽡特/赫兹(Watts/Hz)。
SNR就是S/R。
S表⽰信号功率,单位是⽡特(Watts)。
N表⽰噪声功率,单位是⽡特(Watts)。
显然SNR单位是⽆量纲的。EbNo的单位是Joules·Hz/ Watts,其实也是⽆量纲的。
因为Watts表⽰是焦⽿/秒(Joules /s),⽽1 Hz=1/s。这样可以得到下式。
Joules·Hz/ Watts=Joules·(1 /s)/(Joules /s)=1
所以EbNo的单位也是⽆量纲的,我厉害吧,很少有⼈推这个吧,虽然很简单。
就前⾯的例⼦来说,可以EbNo和SNR是这样转换的。
卷积编码SNR=EbNo·(1/3)·(3000/3200)·2·(1/10)·(1/1+0.25)
⽤dB表⽰,就是
SNR=EbNo+10log(1/3)+10log(3000/3200)+10log(2)+10log(1/10)+10log(1/1+0.25)
此处log以10为底,其中1/3是卷积码引⼊的,3000/3200是因为添加了训练序列这个额外的开销⽽引⼊,2是QPSK引⼊的,1/10是成形前上采样引⼊的,1/1+0.25是升余弦波形引⼊的。
⼀般很容易忘记考虑训练序列或者保护间隔,⼀般影响不⼤,本例中10log(3000/3200)接近0,但其他各项影响都很⼤,如果仿真结果性能超好,应该看看是否忘记哪项了。如果系统还进⾏了扩频,⽐如添加训练序列后进⾏了16倍扩频,那么还要考虑扩频增益带来的影响,应该还要加上10log(1/16)。为什么要这样加加减减要想清楚,举个⽐较很多⼈不理解的地⽅,⽐如“为什么要减去过采样的影响?”,可以从这个⽅⾯去理解,在基带数字信号处理时,接收端A/D变换之后,要进⾏匹配滤波,此时过采样
点数越⾼,同步精度越好,这样会带来性能的提⾼,为了提⾼性能,当然发送时所需要的SNR就越⼤,所以要减去(很遗憾,好像还是没解释太明⽩,但这可能是⽬前最容易理解的了,注意要意会)。
最后,希望⼤家牢记⼀些典型的数值,⽐如10log(2)为3,这样别⼈⼀说⽤16PSK,你就要反应出来,相对于现在的QPSK⽅式,系统性能⼤约要降低6dB。
我记性不好,所以趁不迷糊,希望能有所帮助,相信我没错的,助⼈为乐最开⼼了。学通信,基本概念要清晰。

本文发布于:2024-09-23 23:22:33,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/377781.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:训练   性能   序列
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议