超级干货:BPSK/QPSK数字调制系统误码率MATLAB仿真

本文旨在通过简单实例来对基于MATLAB的数字调制解调系统仿真进行一个较为全面的介绍,并加深对一些基础知识的理解。且有详细解释大多数人在进行数字调制MATLAB仿真时遇到的大部分问题。

数字调制的概念

数字调制是把数字信号即二进制比特或一定长度的比特串变换为连续信号波形,进而在连续信道中传输的过程。其向信道编译码器提供了一条透明的离散编码信道。大多数情况下,我们将调制过程分成以下几个子过程:

1. 比特(串)到星座图中信号的映射(mapping)。(离散信号)
2. 离散信号(可以为一维实信号或二维复信号)向波形(waveform)的转换。(连续基带信号)
3. 基带波形与载波相乘变换到射频。(可能先到中频再上变频到射频)

所以一般情况下,不进行特殊说明,调制指的是过程1,即映射。映射包含了两层含义:

  • 星座图
  • 星座图中各信号点对应的比特串

后者也称为标识(labeling)方式,当星座图确定时,映射指的也就是标识,不过以标识称之更加准确。 M M M阶调制存在 M ! M! M! 种可能的标识方案,标识方案对系统的性能有很大的影响。最常见的标识方式为 Gray 标识,其特点是星座图中邻近的两个信号,其标识仅有一位不同,这样当误符号率一定时,误比特率(BER)最小。

BPSK与QPSK仿真实例

星座图与标识方式

在这里插入图片描述

上述星座图并不是唯一的,也可以有任意的旋转角度。

对于BPSK调制,比特到信号的映射关系 s = μ ( b ) s=\mu(b) s=μ(b)可以表示为:
s = 1 − 2 b , b = 0 , 1 s=1-2b, b=0, 1 s=12b,b=0,1
对于QPSK,映射 s = μ ( b 1 , b 0 ) s=\mu (b_1, b_0) s=μ(b1,b0)可以表示为:
s = ( 1 − 2 b 0 ) + j ( 1 − 2 b 1 ) 2 s=\dfrac{(1-2b_0)+j(1-2b_1)}{\sqrt{2}} s=2 (12b0)+j(12b1)
利用上面两个映射关系,就可以实现自己调制,而不用使用MATLAB中的函数或工具箱中的函数(或Object)。

调制模块代码

以下代码完成调制功能:

%% BPSK Modulation
frameLength = 10000;
b = randi([0, 1], frameLength, 1);
s_bpsk = 1 - 2 * b;

%% QPSK Modulation

% method 1
frameLength = 10000; % bits per data frame
b = randi([0, 1], frameLength, 1);
qpskMod = comm.QPSKModulator('BitInput', true, 'PhaseOffset', pi/4, 'SymbolMapping', 'Gray');
s_qpsk_1 = qpskMod(b);

% method 2
frameLength = 10000; % bits per data frame
M = 4; % Modulation Order
symLength = frameLength / M; % symbols per data frame
sym = randi([0, M-1], symLength, 1);
s_qpsk_2 = pskmod(sym, M, pi/4, 'gray');

注意:BPSK调制尽量不要使用MATLAB中自带函数。
如pskmod函数和comm.BPSKModulator,你可以自行尝试一下,调制的结果是复数形式,虽然虚部为0。但是当你使用awgn函数加噪声时,该函数会给两个维度(实部和虚部)都加上噪声,而不是只给一个维度上加,这必然导致实际的噪声功率为设想的一半。换句话说,仿真结果相比理论情况有3dB的增益,不过这是错误的。

添加AWGN噪声

E b N o , E s N o , S N R \dfrac{E_b}{N_o}, \dfrac{E_s}{N_o}, SNR NoEb,NoEs,SNR的辨析

基本概念

  1. E b E_b Eb表示信息比特能量, E s E_s Es表示符号能量

    在一个星座图中,每一个符号 s s s都有其符号能量 E s = ∣ s ∣ 2 E_s=|s|^2 Es=s2,该星座图的平均符号能量为:
    E ‾ s = ∑ m = 0 M − 1 ∣ s m ∣ 2 \overline E_s=\sum_{m=0}^{M-1}|s_m|^2 Es=m=0M1sm2

  2. N o N_o No表示高斯白噪声的单边功率谱密度

  3. S N R SNR SNR表示每一个采样时刻信号功率与噪声功率的比值
    S N R = σ s 2 σ n 2 SNR=\dfrac{\sigma_s^2}{\sigma_n^2} SNR=σn2σs2

相互之间的关系

  1. E b E_b Eb E s E_s Es之间的关系
    E b = E s i n f o r m a t i o n _ b i t s _ p e r _ s y m b o l E_b=\dfrac{E_s}{information\_bits\_per\_symbol} Eb=information_bits_per_symbolEs

注意此处为每个符号所携带的信息比特数,因为在存在信道编码的场景下,符号所携带的还有冗余校验比特。对于采用 M M M阶调制,以及码率为 R R R的信道编码的情况,上面公式中的 i n f o r m a t i o n _ b i t s _ p e r _ s y m b o l = log ⁡ 2 M ∗ R information\_bits\_per\_symbol=\log_2^M*R information_bits_per_symbol=log2MR

  1. N o N_o No σ n 2 \sigma_n^2 σn2的关系
    • 对于实信号,即一维调制(BPSK,PAM)
      N o = 2 σ n 2 N_o=2\sigma_n^2 No=2σn2
    • 对于复信号,即IQ调制
      N o = σ n 2 N_o=\sigma_n^2 No=σn2
      σ n I 2 = σ n Q 2 = σ n 2 2 = N o 2 \sigma_{nI}^2=\sigma_{nQ}^2=\dfrac{\sigma_n^2}{2}=\dfrac{N_o}{2} σnI2=σnQ2=2σn2=2No
      综上,可知对任意维度,都有
      N o = 2 σ 2 N_o=2\sigma^2 No=2σ2
      推导过程在附录中给出。
  2. E s E_s Es σ s 2 \sigma_s^2 σs2的关系
    在不存在上下采样的情况下(大多数时候),显然
    E s = σ s 2 E_s=\sigma_s^2 Es=σs2
    若每个符号采样 N N N点, N = T s y m T s N=\dfrac{T_{sym}}{T_s} N=TsTsym那么有:
    E s = N σ s 2 E_s=N\sigma_s^2 Es=Nσs2

有了以上3点, E b N o , E s N o , S N R \dfrac{E_b}{N_o}, \dfrac{E_s}{N_o}, SNR NoEb,NoEs,SNR之间的转化就变得很简单。

E b N o , E s N o , S N R \dfrac{E_b}{N_o}, \dfrac{E_s}{N_o}, SNR NoEb,NoEs,SNR的选择

对于通信系统性能的仿真,我们均是选择 E b N o \frac{E_b}{N_o} NoEb,可以将其视为归一化的信噪比。通信的目的是传输有效信息,在信道条件给定的情况下,不管系统采用何种调制方式、何种纠错码,我们总是希望平均为每一比特所花费的能量是最少的。所以我们总是选择 E b N o \frac{E_b}{N_o} NoEb 来进行仿真和比较。

MATLAB中添加AWGN噪声

上面提到我们更喜欢使用 E b N o \frac{E_b}{N_o} NoEb,那么这里就以 E b N o \frac{E_b}{N_o} NoEb为例进行说明。

  1. 使用awgn函数

    r = awgn(s, snr, 'measured');

    上面一行代码实现给发送端的信号 s s s加上信噪比 S N R = s n r SNR=snr SNR=snr的AWGN噪声。详情可参考MATLAB文档。那么现在的问题就是如何将 E b N o \frac{E_b}{N_o} NoEb转化为 S N R SNR SNR。下面分别以BPSK与QPSK为例进行分析:

	% BPSK
	frameLength = 1e6;
	EbNo_dB = 5;
	M = 2; % BPSK
	K = log2(M); % coded bits per symbol
	R = 1; %code rate, information bits per coded bit
	infoBitsPerSymbol = K * R;
	EsNo_dB = EbNo_dB + 10*log10(infoBitsPerSymbol);
	snr = EsNo_dB + 10*log10(2);
	b = randi([0,1],frameLength,1);
	s = 1-2*b;
	r = awgn(s, snr, 'measured');
% QPSK
EbNo_dB = 5;
frameLength = 1e6;
M = 4; % QPSK
K = log2(M); % coded bits per symbol
R = 1; %code rate, information bits per coded bit
infoBitsPerSymbol = K * R;
EsNo_dB = EbNo_dB + 10*log10(infoBitsPerSymbol);
snr = EsNo_dB;
b = randi([0,1],frameLength,1);
qpskMod = comm.QPSKModulator('BitInput', true, 'PhaseOffset', pi/4, 'SymbolMapping', 'Gray');
s = qpskMod(b);
r = awgn(s, snr, 'measured');

可以看出在将 E s N o \frac{E_s}{N_o} NoEs转化为 S N R SNR SNR时,QPSK与BPSK时不同的。这在前面已经解释了:

  • QPSK
    S N R = σ s 2 σ n 2 = E s σ n I 2 + σ n Q 2 = E s N o SNR=\dfrac{\sigma_s^2}{\sigma_n^2}=\dfrac{E_s}{\sigma_{nI}^2+\sigma_{nQ}^2}=\dfrac{E_s}{N_o} SNR=σn2σs2=σnI2+σnQ2Es=NoEs
  • BPSK
    S N R = σ s 2 σ n 2 = E s σ n I 2 = 2 E s N o SNR=\dfrac{\sigma_s^2}{\sigma_n^2}=\dfrac{E_s}{\sigma_{nI}^2}=\dfrac{2E_s}{N_o} SNR=σn2σs2=σnI2Es=No2Es
  1. 自己手动添加
%BPSK
EbNo_dB = 5;
M = 2; % BPSK
K = log2(M); % coded bits per symbol
R = 1; %code rate, information bits per coded bit
infoBitsPerSymbol = K * R;
EsNo_dB = EbNo_dB + 10*log10(infoBitsPerSymbol);
EsNo_Lin = 10^(EsNo_dB/10);
Es = 1; % PSK or other constellation(e.g. QAM) with unit average symbol energy
No = Es / EsNo_Lin;
sigma = sqrt(No/2); % each dimension
b = randi([0,1],frameLength,1);
s = 1 - 2 * b;
r = s + sigma*randn(size(s));
% QPSK
EbNo_dB = 5;
M = 4; % QPSK
K = log2(M); % coded bits per symbol
R = 1; %code rate, information bits per coded bit
infoBitsPerSymbol = K * R;
EsNo_dB = EbNo_dB + 10*log10(infoBitsPerSymbol);
EsNo_Lin = 10^(EsNo_dB/10);
Es = 1; % PSK or other constellation(e.g. QAM) with unit average symbol energy
No = Es / EsNo_Lin;
sigma = sqrt(No/2); % each dimension
b = randi([0,1],frameLength,1);
qpskMod = comm.QPSKModulator('BitInput', true, 'PhaseOffset', pi/4, 'SymbolMapping', 'Gray');
s = qpskMod(b);
r = s + sigma*(randn(size(s)) + 1j * randn(size(s)));

最大后验(MAP)解调算法

先进行如下符号约定:

符号含义
s l s_l sl发送的第 l l l个符号
r l r_l rl接收到的第 l l l个符号
χ b k \chi_b^k χbk k k k个比特为 b b b的符号子集, b = 0 , 1 b=0, 1 b=0,1
s l k s_l^k slk发送的第 l l l个符号中的第 k k k比特
s l k ‾ \overline{s_l^k} slk s l k s_l^k slk取反
L a ( b ) L_a(b) La(b)比特 b b b的先验似然比, L a ( b ) = p ( b = 0 ) p ( b = 1 ) L_a(b)=\dfrac{p(b=0)}{p(b=1)} La(b)=p(b=1)p(b=0)
L ( b ) L(b) L(b)比特 b b b的后验似然比, L ( b ) = p ( b = 0 ∣ r ) p ( b = 1 ∣ r ) L(b)=\dfrac{p(b=0\mid r)}{p(b=1\mid r)} L(b)=p(b=1r)p(b=0r)

L ( s l k ) = ln ⁡ p ( s l k = 0 ∣ r l ) p ( s l k = 1 ∣ r l ) = ln ⁡ p ( s l k = 0 , r l ) p ( s l k = 1 , r l ) = ln ⁡ ∑ s l ∈ χ 0 k p ( r l ∣ s l ) ⋅ p ( s l ) ∑ s l ∈ χ 1 k p ( r l ∣ s l ) ⋅ p ( s l ) = ln ⁡ ∑ s l ∈ χ 0 k [ p ( r l ∣ s l ) ⋅ ∏ k = 0 K − 1 p ( s l k ) ] ∑ s l ∈ χ 1 k [ p ( r l ∣ s l ) ⋅ ∏ k = 0 K − 1 p ( s l k ) ] \begin{aligned} L(s_l^k) &=\ln\dfrac{p\left(s_l^k=0\mid r_l \right)}{p\left(s_l^k=1\mid r_l \right)} \\ &=\ln\dfrac{p\left(s_l^k=0, r_l \right)}{p\left(s_l^k=1, r_l \right)} \\ &=\ln\dfrac{\sum\limits_{s_l\in \chi_0^k}p\left( r_l\mid s_l\right)\cdot p\left(s_l\right)}{\sum\limits_{s_l\in \chi_1^k}p\left( r_l\mid s_l\right)\cdot p\left(s_l\right)}\\ &=\ln\dfrac{\sum\limits_{s_l\in \chi_0^k} \left[ p\left( r_l\mid s_l\right)\cdot \prod\limits_{k=0}^{K-1}p\left(s_l^k\right) \right]}{\sum\limits_{s_l\in \chi_1^k} \left[ p\left( r_l\mid s_l\right)\cdot \prod\limits_{k=0}^{K-1}p\left(s_l^k\right) \right]} \end{aligned} L(slk)=lnp(slk=1rl)p(slk=0rl)=lnp(slk=1,rl)p(slk=0,rl)=lnslχ1kp(rlsl)p(sl)slχ0kp(rlsl)p(sl)=lnslχ1k[p(rlsl)k=0K1p(slk)]slχ0k[p(rlsl)k=0K1p(slk)]
由于 L a ( b ) = p ( b = 0 ) p ( b = 1 ) L_a(b)=\dfrac{p(b=0)}{p(b=1)} La(b)=p(b=1)p(b=0),所以:
p ( b = 0 ) = e L a ( b ) 1 + e L a ( b ) p ( b = 1 ) = 1 1 + e L a ( b ) \begin{aligned} p(b=0)=\dfrac{e^{L_a(b)}}{1+e^{L_a(b)}} \\ p(b=1)=\dfrac{1}{1+e^{L_a(b)}} \end{aligned} p(b=0)=1+eLa(b)eLa(b)p(b=1)=1+eLa(b)1
综上可得:
L ( s l k ) = ln ⁡ ∑ s l ∈ χ 0 k [ p ( r l ∣ s l ) e x p ( ∑ k = 0 K − 1 s l k ‾ ⋅ L a ( s l k ) ) ] ∑ s l ∈ χ 1 k [ p ( r l ∣ s l ) e x p ( ∑ k = 0 K − 1 s l k ‾ ⋅ L a ( s l k ) ) ] L(s_l^k) =\ln\dfrac{\sum\limits_{s_{l}\in\chi_{0}^{k}}\left[ p\left(r_l|s_l\right) {\rm exp}\left( \sum\limits_{k=0}^{K-1}\overline{s_l^k}\cdot L_a\left(s_l^k \right) \right) \right] }{\sum\limits_{s_l\in\chi_{1}^{k}}\left[ p\left(r_l|s_l\right) {\rm exp}\left( \sum\limits_{k=0}^{K-1}\overline{s_l^k}\cdot L_a\left(s_l^k \right) \right)\right]} L(slk)=lnslχ1k[p(rlsl)exp(k=0K1slkLa(slk))]slχ0k[p(rlsl)exp(k=0K1slkLa(slk))]
之所以推导MAP解调器公式,是因为这个模块不仅可用于硬判决、软判决,也可以当作一个软输入软输出解调器用在迭代检测系统中。对于前两种情况,不存在先验信息,或认为 L a = 0 L_a=0 La=0,即并不知道某个比特更倾向于为0或为1。上式可以简化为:
L ( s l k ) = ln ⁡ ∑ s l ∈ χ 0 k p ( r l ∣ s l ) ∑ s l ∈ χ 1 k p ( r l ∣ s l ) L(s_l^k) =\ln\dfrac{\sum\limits_{s_{l}\in\chi_{0}^{k}}p\left(r_l|s_l\right) }{\sum\limits_{s_{l}\in\chi_{1}^{k}}p\left(r_l|s_l\right)} L(slk)=lnslχ1kp(rlsl)slχ0kp(rlsl)
对于无信道编码的系统,直接进行硬判决得到信息比特:
s l k ^ = 1 − s i g n ( L ( s l k ) ) 2 \hat{s_l^k}=\dfrac{1-sign(L(s_l^k))}{2} slk^=21sign(L(slk))
对于有信道编码的系统,可以进行硬判决,然后将硬判决结果传给译码器;也可以直接将似然比交予软输入译码器进行译码。前者因为丢失信息,往往有2dB左右的性能损失。

MATLAB中BPSK与QPSK的解调器

BPSK解调器

前文提到不建议用MATLAB中自带函数或Object进行BPSK调制,并说明了原因。对于解调,我们也完全可以用以下3行代码完成:

b_hat = r; % 接收到的信道输出
b_hat(b_hat>-0) = 0;
b_hat(b_hat<0) = 1;

QPSK解调器

% 硬判决
qpskDemodHard = comm.QPSKDemodulator('BitOutput', true,...
                        'PhaseOffset', pi/4,'SymbolMapping','Gray');
b_hat = qpskDemodHard(r);

% 软判决
qpskDemodSoft = comm.QPSKDemodulator('BitOutput', true,...
                        'PhaseOffset', pi/4,'SymbolMapping','Gray',...
                        'DecisionMethod', 'Log-likelihood ratio',...
                        'VarianceSource','Property',...
                        'Variance', noiseVar);
Lb = qpskDemodSoft(r);
% passed to soft-in decoder ...

仿真结果

此处就不画仿真结果了。QPSK与BPSK具有相同的误比特率:
P b = 1 2 e r f c ( E b N o ) P_b=\frac{1}{2}erfc(\sqrt{\frac{E_b}{N_o}}) Pb=21erfc(NoEb )

补充

X ∼ N ( 0 , 1 ) X\sim\mathcal{N}(0, 1) XN(0,1),则其累积分布函数为:
Φ ( x ) = 1 2 π ∫ − ∞ x e t 2 2 d t \Phi \left(x\right)=\frac{1}{\sqrt{2\pi}}\int_{-\infty}^xe^{\frac{t^2}{2}}dt Φ(x)=2π 1xe2t2dt
Q Q Q函数定义为标准正态分布的右尾函数:
Q ( x ) = 1 2 π ∫ x ∞ e − t 2 2 d t = 1 − Φ ( x ) Q(x)=\frac{1}{\sqrt{2\pi}}\int_x^\infty e^{-\tfrac{t^2}{2}}dt = 1-\Phi(x) Q(x)=2π 1xe2t2dt=1Φ(x)
误差函数 e r f ( x ) erf(x) erf(x) 的物理意义是服从均值为 0 0 0, 方差为 1 2 \frac{1}{2} 21正态分布的随机变量 Y Y Y落在区间 ( − x , x ) (-x, x) (x,x)的概率:
e r f ( x ) = 2 π ∫ 0 x e t 2 d t erf(x)=\frac{2}{\sqrt{\pi}}\int_0^xe^{t^2}dt erf(x)=π 20xet2dt
互补误差函数 e r f c ( x ) erfc(x) erfc(x)的物理意义即 Y Y Y落在上述区间外的概率:
e r f c ( x ) = 2 π ∫ x ∞ e t 2 d t erfc(x)=\frac{2}{\sqrt{\pi}}\int_x^{\infty}e^{t^2}dt erfc(x)=π 2xet2dt
显然:
e r f c ( x ) = 1 − e r f c ( x ) erfc(x)=1-erfc(x) erfc(x)=1erfc(x)

Q ( x ) = 1 2 e r f c ( x 2 ) Q(x) = \frac{1}{2}erfc(\frac{x}{\sqrt{2}}) Q(x)=21erfc(2 x)

附录

假设匹配滤波器具有幅频响应 H ( ω ) H(\omega) H(ω),输入 r i ( t ) = s i ( t ) + n i ( t ) r_i(t)=s_i(t)+n_i(t) ri(t)=si(t)+ni(t),输出为 r o ( t ) = s o ( t ) + n o ( t ) r_o(t)=s_o(t)+n_o(t) ro(t)=so(t)+no(t)。其中:
s o ( t ) = 1 2 π ∫ − ∞ ∞ S ( ω ) H ( ω ) e j ω t d ω s_o(t)=\frac{1}{2\pi}\int_{-\infty}^{\infty}S(\omega)H(\omega)e^{j\omega t}d\omega so(t)=2π1S(ω)H(ω)ejωtdω
输出信号 s o ( t ) s_o(t) so(t)的功率为:
P s = ∣ s o ( t ) ∣ 2 = ∣ 1 2 π ∫ − ∞ ∞ S ( ω ) H ( ω ) e j ω t d ω ∣ 2 P_s=|s_o(t)|^2=|\frac{1}{2\pi}\int_{-\infty}^{\infty}S(\omega)H(\omega)e^{j\omega t}d\omega|^2 Ps=so(t)2=2π1S(ω)H(ω)ejωtdω2
输出噪声的功率为:
P n = 1 2 π ∫ − ∞ ∞ N o 2 ∣ H ( ω ) ∣ 2 d ω P_n=\frac{1}{2\pi}\int_{-\infty}^{\infty}\frac{N_o}{2}|H(\omega)|^2d\omega Pn=2π12NoH(ω)2dω
抽样时刻 t 0 t_0 t0时的输出信噪比为:
P s P n = ∣ 1 2 π ∫ − ∞ ∞ S ( ω ) H ( ω ) e j ω t 0 d ω ∣ 2 1 2 π ∫ − ∞ ∞ N o 2 ∣ H ( ω ) ∣ 2 d ω ≤ 1 2 π ∫ − ∞ ∞ ∣ H ( ω ) ∣ 2 d ω ⋅ 1 2 π ∫ − ∞ ∞ ∣ S ( ω ) ∣ 2 d ω N o 2 ⋅ 1 2 π ∫ − ∞ ∞ ∣ H ( ω ) ∣ 2 d ω = E s N o 2 \begin{aligned} \dfrac{P_s}{P_n}&=\dfrac{|\frac{1}{2\pi}\int_{-\infty}^{\infty}S(\omega)H(\omega)e^{j\omega t_0}d\omega|^2}{\frac{1}{2\pi}\int_{-\infty}^{\infty}\frac{N_o}{2}|H(\omega)|^2d\omega} \\ &\leq \dfrac{\frac{1}{2\pi}\int_{-\infty}^{\infty}|H(\omega)|^2d\omega \cdot \frac{1}{2\pi}\int_{-\infty}^{\infty}|S(\omega)|^2d\omega}{\frac{N_o}{2}\cdot\frac{1}{2\pi}\int_{-\infty}^{\infty}|H(\omega)|^2d\omega} \\ &=\dfrac{E_s}{\frac{N_o}{2}} \end{aligned} PnPs=2π12NoH(ω)2dω2π1S(ω)H(ω)ejωt0dω22No2π1H(ω)2dω2π1H(ω)2dω2π1S(ω)2dω=2NoEs
等号成立的条件是:
H ( ω ) = K S ∗ ( ω ) e − j ω t 0 H(\omega)=KS^*(\omega)e^{-j\omega t_0} H(ω)=KS(ω)ejωt0
显然可以看出实际输出的信号功率和噪声功率与下面的式子有关:
1 2 π ∫ − ∞ ∞ ∣ H ( ω ) ∣ 2 d ω \frac{1}{2\pi}\int_{-\infty}^{\infty}|H(\omega)|^2d\omega 2π1H(ω)2dω
不过一方面,我们完全可以通过调整 K K K,来使上述积分为1;另一方面,它同时乘在输出信号功率和噪声功率上,所以可以不考虑它的影响,而直接认为采样时刻有:
P s = E s P n = σ n 2 = N o 2 \begin{aligned} P_s&=E_s \\ P_n&=\sigma_n^2=\frac{N_o}{2} \end{aligned} PsPn=Es=σn2=2No
不过注意上述推导是在一个维度下进行的,或者简单认为就是2PAM的情况。
对于两个维度,即IQ调制时,
P n = σ n 2 = σ n I 2 + σ n Q 2 = N o P_n=\sigma_n^2=\sigma_{nI}^2+\sigma_{nQ}^2=N_o Pn=σn2=σnI2+σnQ2=No

  • 71
    点赞
  • 359
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
### 回答1: BPSK和QPSK数字调制中常用的两种调制方式。信道估计误码率是衡量信道估计精度的指标,通常涉及到误码率分析。 在高斯白噪声信道下,由于BPSK的调制方式只有两种相位状态,其误码率相对于QPSK会更低。这是因为QPSK调制方式有四种不同的相位状态,需要更高的信道估计精度,容易受到相位误差的影响而导致误码率增加。同时,BPSK的调制方式也比QPSK更容易实现,因此在一些低功耗、低成本的无线通信系统中,BPSK仍然是一种常用的调制方式。 然而,在复杂的通信系统中,BPSK通常不足以满足数据传输的需求。在这种情况下,需要更高的数据传输速率和更高的频谱效率,因此QPSK被广泛应用。为了克服其精度问题,现代无线通信系统通常结合复杂的信道估计算法和前向纠错方法,以提高QPSK误码率表现。 总之,BPSK和QPSK在信道估计误码率方面的表现取决于具体的通信系统需求。在要求信道估计精度较高的复杂通信场景下,QPSK通常是更好的选择;而在需要低功耗、低成本、简单可靠的通信系统中,BPSK则可能更适合应用。 ### 回答2: BPSK和QPSK都是数字调制技术中比较常见的一种,它们在数字通信系统中被广泛使用。BPSK为二进制相移键控,而QPSK为四相移键控。它们的信道估计误码率比较主要涉及到它们在数字通信系统中的应用以及其误码率的数学分析。 对于数字通信系统中的应用,BPSK和QPSK都需要通过信道估计来降低误码率。信道估计的核心是通过信道状态信息(CSI)来对信道进行估计,其中信道状态信息是指通过信道反馈或者预测等方式获取的关于信道的信息。在BPSK和QPSK中,无论是发送端还是接收端都需要信道估计。 在数学分析方面,BPSK和QPSK误码率比较需要从误码率理论入手。BPSK的误码率理论为 Pe=Q(sqrt(2Eb/N0)),其中Eb/N0为信噪比,Q(x)为高斯Q函数。QPSK误码率理论为Pe=0.5*erfc(sqrt(Eb/N0)),其中erfc(x)为互补误差函数。可以看出,两者的误码率理论公式有所不同,但是都与信噪比有关。 总体来说,BPSK和QPSK的信道估计误码率比较是没有绝对的结论的,因为它们的适用场景和应用环境不同。一般来说,QPSK在低信噪比下表现更优,而在高信噪比下,BPSK表现更稳定。但这还需要考虑信道的特点和具体实现的情况等多种因素。 ### 回答3: 首先,BPSK是一种基本的数字调制技术,它是一种二进制调制方式,发送数据时,只使用两种不同的相位。而QPSK则是一种浅调制技术,它在一个符号周期中传输两个比特,通过改变符号的相位和幅度,可以编码4种不同的信号,因此它是一种四进制调制方式。 在信道估计误码率比较方面,BPSK相比QPSK具有更高的容错能力。这是因为QPSK调制的每个符号包含两个比特,导致它在传输时更容易受到多径衰落、干扰等信道噪声的影响,从而增加了误码率。而BPSK调制的每个符号只使用一个比特,因此它在传输时更加抗干扰,信道估计误码率比较低。 另外,BPSK的调制极其简单,允许使用一些相对较低复杂度的解调器,这降低了实现BPSK通信系统的成本。而在QPSK系统中,为了抑制多径干扰和噪声,通常需要采用比BPSK更复杂的信道编解码器和调制器,这会增加系统的复杂度和成本。 总之,无论是在容错能力、信道估计误码率还是实现成本方面,BPSK相对于QPSK都具有优势。然而,在高速率应用中,QPSK更适合使用,因为它能传输更多的比特,并且能够更好地适应高速率需求。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值