
2.3 译码方法与性能度量
基于接收序列、编码规则和信道的噪声特征,接收机进行判决,给出哪一个消息是实际发送的,这个判决操作称为译码。依赖于译码器的输入不同,译码分为硬判决译码和软判决译码。
(1)硬判决(hard-decision)译码:假定一个二元(n, k)线性分组码的码字c采用BPSK调制并在AWGN信道上传输。二进制调制器只有两个输入(M=2),而信道输出为实数y ∈(-∞, ∞)。如果解调器的输出采用两个电平量化(Q=2),则译码器的输入符号只有两种取值。这种情况下,解调器是做硬判决,基于解调器硬判决输出的译码称为硬判决译码。
(2)软判决(soft-decision)译码:如果解调器的输出采用多于两个电平量化(Q>2)或不进行量化,则解调器就是做软判决,基于这个软判决输出的译码称为软判决译码。
硬判决译码比软判决译码易于实现,但是软判决译码能够提供更好的性能,如图2.3所示。

图2.3 软判决与硬判决译码的信道容量
2.3.1 最佳译码
考虑一个(n, k)线性分组码C,它的校验矩阵为H,最小距离为dmin(C)。假定发送的是码字c,接收向量为y, 为译码输出。在数字通信中,使平均译码错误概率

最小的译码规则称为最佳译码规则。因为最小化等价于最大化
,从而有最大后验概率(MAP)译码器

即在C的码字中选择使条件概率P(c|y)为最大的码字作为译码器的输出。P(c|y)称为c的后验概率。根据Bayes规则,有P(c|y)=P(c)P(y|c)/P(y)。P(y)可看作一个归一化常数,如果每个码字等概率地发送,则MAP译码就等价于下述的最大似然(ML)译码。

即给定一个接收向量y, ML译码器总是选择使条件概率P(y|c)最大的码字作为译码结果。然而,如果译码器有关于c的先验信息,则MAP译码器将考虑该附加信息后选择最可能的码字。
上述MAP和ML译码是使码字错误概率最小的译码。在后面的讨论中,我们还会遇到逐符号MAP译码,即逐符号进行最大后验概率译码。令c={ci},对应ci的发送信号记为xi。逐符号MAP译码器根据下列规则进行译码。

它是使比特错误概率最小的译码,Turbo码中的BCJR译码算法就属于此类。
后面讨论的迭代译码算法虽不是最优的,但通常能以低复杂度达到接近ML或MAP译码的性能。
最小距离译码
在二元输入白高斯噪声(BI-AWGN)信道下,发送信号x=(-1)c,信道噪声服从均值为0、方差为σ2的高斯分布,因此有

显然,ML译码规则就等价于最小距离译码规则:

定义

是y和x之间的欧氏距离。
令z是y的硬判决结果。注意到在映射x=(-1)c下,dE(y, x)=2dH(z, c),对于BSC信道,最小距离译码规则简化为

总之,对于BSC,从ML译码器得到的是与信道输出y有最小汉明距离的码字c;对于BI-AWGN信道来说,ML译码器给出的是与信道输出y有最小欧氏距离的码序列x=(-1)c。所以,在BSC上对码优化设计时应该最大化两个码字之间的最小汉明距离(以及最小化在此距离上的码字对个数),而在BI-AWGN信道上对码设计时应该最大化两个码序列之间的最小欧氏距离(以及最小化在此距离上的码序列对个数)。
2.3.2 线性分组码的检错
考虑一个(n, k)线性分组码C,其校验矩阵H的大小为(n-k)×n。假设c是发送的码字,z是解调器输出的硬判决序列。由于信道噪声和干扰的存在,z与c可能不同。令z=c+e,其中e被称为错误向量(或错误图样)。为了检测接收向量z是否包含传输错误,计算如下GF(2)上的n-k维向量。

如果s=0,那么z就不是C中的码字,就检测出z中存在传输错误。此时,任何解这n-k个方程的方法就构成一种译码算法。最小距离译码就是找重量最轻的e,使得eHT=s。如果s=0,那么z就是C中的码字(虽然z不一定等于发送码字c,此时称发生不可检测错误)。因为向量s是用来检测接收向量z是否包含传输错误,所以称s为z的伴随式。
2.3.3 对数似然比
前面讨论的MAP与ML译码都是在概率域中推导的。在实际通信系统中,为了数值稳定及简化运算,软判决译码器的输入往往是对数似然比信息。令x∈{+1, -1}是一个二进制随机变量,其对数似然比(LLR)或L值定义为

其中,P(x=i)表示随机变量x取值为i的概率。图2.4给出了L(x)随x=+1的概率变化的曲线。可以看出,L(x)的符号给出了关于x的硬判决,而LLR的幅度给出了这个判决的可靠度。

图2.4 对数似然比曲线
对于一个信息比特xk,如果给定LLR L(xk),那么也很容易得到xk=+1或xk=-1的概率。注意到,则有

以及

上式也可写为

对于GF(2)上的两个独立随机变量u和v,它们的模2和u⊕v的LLR由下列Box-Plus运算给出:

这个关系经常用在LDPC码的译码中。
在译码中也经常用到条件对数似然比。如果假定发送比特xk在AWGN信道上用BPSK信号传输,解调器的输出为yk,则条件LLR定义为

由P(yk|xk)服从高斯分布可得

这个条件LLR也经常称为信道的软输出。
2.3.4 编码系统性能度量
对于数字通信系统,最常用的性能度量是比特错误概率Pb,它定义为译码器输出判决比特不等于编码器输入比特ui的概率[55]:

由于一般独立于i,因此有些文献也常将比特错误概率写为
。Pb也常称为误比特率,记为BER。
另外一种常用的性能度量是码字错误概率Pcw,定义为译码器输出判决不等于编码器输出码字c的概率:

在编码文献中,Pcw经常用不同的术语称呼,包括误字率(WER)和误帧率(FER)。一个密切相关的错误概率是,在很多编码系统中Puw≈Pcw。对于多元码,常用符号错误概率Ps来度量,定义为

其中,所有的编码器输入符号ui和译码器输出符号都是多元的。Ps也称为误符号率(SER)。
除了译码错误概率,编码增益也常用来度量编译码器的性能。具体地讲,编码增益是一种度量编码通信系统功率效率的重要参数。令Eb/N0表示每信息比特能量与信道噪声功率谱密度之比,编码增益定义为:为达到给定的目标错误概率,编码系统相对于未编码系统所需要的Eb/N0减少量(一般是采用相同调制方式)。用公式表示为
