EbN0、SNR换算及误码率公式的理论推导计算 |
您所在的位置:网站首页 › 计算视频码率的函数 › EbN0、SNR换算及误码率公式的理论推导计算 |
文章目录
前言一、EbN0 、SNR的转换二、理论公式推导1.第一种MQAM的近似公式2.第二种MQAM的近似公式2.1 BPSK的公式推导2.2 QPSK的公式推导2.3 几种推导方式的关系论述
三. 仿真结果
前言
事情的起因源自学长给的MQAM误码率理论曲线,其中有2种曲线,Fig.1 中仿真曲线与理论曲线重合,Fig.2 中在低EbN0的时候出现了不贴合的现象,这让我非常疑惑,于是查找了理论公式的原始推导,网上的命名与定各种各样,非常容易让人混淆,于是在此重新整理出几种理论误码率推导的方法。 Fig.1. BER vs. EbN0 @MQAM Sim,Approx_Theory Fig.2. BER vs. EbN0 @MQAM Sim,Theory_2 一、EbN0 、SNR的转换在下面理论推导中需要用到Es和Eb的转换,先把转换公式列出。 E s = E b × l o g 2 ( M ) S N R = E s N 0 = E b N 0 × B i t R a t e B a u d R a t e S N R _ d B = 10 l o g 10 E b N 0 + 10 l o g 10 B i t R a t e B a u d R a t e = E b N 0 _ d B + 10 l o g 10 ( M ) E_s=E_b×log_2(M) \\ SNR=\frac{E_s}{N_0}=\frac{E_b}{N_0}×\frac{BitRate}{BaudRate} \\SNR\_{dB}=10log_{10}\frac{Eb}{N_0}+10log_{10}\frac{BitRate}{BaudRate}=EbN0\_dB+10log_{10}(M) Es=Eb×log2(M)SNR=N0Es=N0Eb×BaudRateBitRateSNR_dB=10log10N0Eb+10log10BaudRateBitRate=EbN0_dB+10log10(M) 实际应用中要分清 二、理论公式推导本文推导前提是AWGN信道 1.第一种MQAM的近似公式这里直接给出第一种理论公式,这种公式的推导比较复杂,这里不作具体研究。 P b ≈ 2 l o g 2 M ⋅ ( 1 − 1 M ) ⋅ e r f c ( 3 S N R 2 ( M − 1 ) ) P_{\mathrm{b}}\approx \frac{2}{log_2M}\cdot \left( 1-\frac{1}{\sqrt{M}} \right) \cdot erfc\left( \sqrt{\frac{3SNR}{2(M-1)}} \right) Pb≈log2M2⋅(1−M 1)⋅erfc(2(M−1)3SNR ) 特例是,当M=2或4,也就是BPSK和QPSK的情况,上式可以取等号,也就是说此时不是近似公式,而恰好是理想公式。 2.第二种MQAM的近似公式 2.1 BPSK的公式推导Fig.3. BPSK 高斯噪声分布函数 单个符号错误概率,例如S0误码为S1的概率为 P S 0 = P ( n ≥ d 2 ) = ∫ d 2 ∞ 1 2 π σ 2 e − n 2 2 σ 2 d n = ∫ d 2 σ ∞ 1 2 π e − t 2 2 d t ( n σ = t , d n = σ d t ) = Q ( d 2 σ ) \begin{aligned} P_{S0}=P(n\ge \frac{d}{2})&=\int_{\frac{d}{2}}^{\infty}{\frac{1}{\sqrt{2\pi \sigma ^2}}}e^{-\frac{n^2}{2\sigma ^2}}dn\\ &=\int_{\frac{d}{2\sigma}}^{\infty}{\frac{1}{\sqrt{2\pi}}}e^{\frac{-t^2}{2}}dt\quad (\frac{n}{\sigma}=t,dn=\sigma dt)\\ &=Q(\frac{d}{2\sigma})\\ \end{aligned} PS0=P(n≥2d)=∫2d∞2πσ2 1e−2σ2n2dn=∫2σd∞2π 1e2−t2dt(σn=t,dn=σdt)=Q(2σd) 其中, Q为高斯错误概率函数, 满足等式 Q ( x ) = 1 2 e r f c ( x 2 ) Q\left( x \right) =\frac{1}{2}erfc\left( \frac{x}{\sqrt{2}} \right) Q(x)=21erfc(2 x) 符号的平均能量, 也就是星座图的平均功率Es E s = 1 2 ( ( d 2 ) 2 + ( d 2 ) 2 ) = d 2 4 E_s=\frac{1}{2}((\frac{d}{2})^2+(\frac{d}{2})^2)=\frac{d^2}{4} Es=21((2d)2+(2d)2)=4d2 推得 d = 2 E s d=2\sqrt{E_s} d=2Es 用概率权重求整体误符号率Ps P S = 1 2 P S 0 + 1 2 P S 1 = Q ( d 2 σ ) P_S=\frac{1}{2}P_{S0}+\frac{1}{2}P_{S1}=Q\left( \frac{d}{2\sigma} \right) PS=21PS0+21PS1=Q(2σd) BPSK一个符号对应一个Bit,所以 P b = P S = 1 2 e r f c E b N 0 P_b=P_S=\frac{1}{2}erfc\sqrt{\frac{E_b}{N_0}} Pb=PS=21erfcN0Eb 2.2 QPSK的公式推导Fig.4. QPSK 星座图 与BPSK类似 P S i i ∈ { 0 , 1 , 2 , 3 } = 2 P ( n ≥ d / 2 ) − P 2 ( n ≥ d / 2 ) = 2 Q ( d 2 σ ) − Q 2 ( d 2 σ ) \underset{i\in \left\{ 0,1,2,3 \right\}}{P_{S_i}}=2P(n\ge d/2)-P^2(n\ge d/2)=2Q(\frac{d}{2\sigma})-Q^2(\frac{d}{2\sigma}) i∈{0,1,2,3}PSi=2P(n≥d/2)−P2(n≥d/2)=2Q(2σd)−Q2(2σd) E s = 1 4 × 4 × ( 2 d 2 ) 2 = d 2 2 E_s=\frac{1}{4}\times 4\times \left( \frac{\sqrt{2}d}{2} \right) ^2=\frac{d^2}{2} Es=41×4×(22 d)2=2d2 d = 2 E s d=\sqrt{2E_s} d=2Es P S = 2 Q ( d 2 σ ) − Q 2 ( d 2 σ ) P_S=2Q(\frac{d}{2\sigma})-Q^2(\frac{d}{2\sigma}) PS=2Q(2σd)−Q2(2σd) P S = e r f c E b N 0 − 1 4 e r f c 2 E b N 0 P_S=erfc\sqrt{\frac{E_b}{N_0}}-\frac{1}{4}erfc^2\sqrt{\frac{E_b}{N_0}} PS=erfcN0Eb −41erfc2N0Eb 到这里,前面都与BPSK类似,但是对于二维的信号,Ps与Pb满足下式,该式其实是定义是,是最准确的公式 P s = 1 − ( 1 − P b ) N P_s=1-(1-P_b)^N Ps=1−(1−Pb)N 其中 N = log 2 M N=\log _2M N=log2M 该式泰勒展开,在Pb足够小时,展开到一次项,得到近似关系 P s = P b log 2 M P_s=P_b\log _2M Ps=Pblog2M 于是QPSK的误码率可以推到 P b = 1 2 e r f c E b N 0 − 1 8 e r f c 2 E b N 0 P_b=\frac{1}{2}erfc\sqrt{\frac{E_b}{N_0}}-\frac{1}{8}erfc^2\sqrt{\frac{E_b}{N_0}} Pb=21erfcN0Eb −81erfc2N0Eb 2.3 几种推导方式的关系论述首先从前面的定义式反推出 P b = 1 − 1 − P s N P_b=1-\sqrt[N]{1-P_s} Pb=1−N1−Ps 这是最准确的关系式,如果在仿真中使用足够长的序列,最后的性能曲线会趋近于该式算出的结果。下表是前面提到的3种理论BER计算方式,Sim代表定义式,也就是仿真所趋近的实际值,Theory-1是2.1节提出的近似式,Theory-2是在2.2节推导出的式子,16QAM不做详细推导,具体可以参考: M-QAM的SER/BER/误码率计算 三个方式的关系为,Sim是最准确的公式表达,Theory-1是通过积分推导得到的近似公式,Theory-2是泰勒展开得到,但弊端是在高信噪比的时候才更加准确,否则需要展开出更多项来逼近真实值。 三. 仿真结果
仿真代码链接:https://download.csdn.net/download/qq_26157161/88886758 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |