译码方法最大后验概率译码共25页

合集下载

信道编码-线性分组码2

信道编码-线性分组码2
8/41

2013/4/11
6. 线性分组码的译码

若发送码矢为 Cj,信道干扰的错误图样是陪集首,则接收矢量 R 必在 Dj 中; 若错误图样不是陪集首,则接收矢量 R不在 Dj 中,则译成其 它码字,造成错误译码; 当且仅当错误图样为陪集首时,译码才是正确的。 可纠正的错误图样:这 2n-k 个陪集首称为可纠正的错误图样。
这意味着 Em 是第 l行中的一个矢量,但Em是第m行(m>l) 的第 一个元素, 而按阵列构造规则,后面行的第一个元素 是前面行中未曾出现过的元素,这就和阵列构造规则相矛 盾。
2013/4/11
7/41
6. 线性分组码的译码

线性码纠错极限定理:二元 (n,k) 线性码能纠 2n-k 个错误 图样。这 2n-k 个可纠的错误图样,包括0矢量在内,即把 无错的情况也看成一个可纠的错误图样。
[证明]:

(n,k) 线性码的标准阵列有 2k 列(和码矢矢量相等),2n/2k= 2n-k 行,且任何两列和两行都没有相同的元素。 陪集:标准阵列的每一行叫做码的一个陪集。 陪集首:每个陪集的第一个元素叫做陪集首。


每一列包含 2n-k 个元素,最上面的是一个码矢,其它元素是陪 集首和该码矢之和,例如第 j 列为 接下页

2013/4/11
12/41
6. 线性分组码的译码

从多维矢量空间的角度看完备码:
假定围绕每一个码字 Ci 放置一个半径为 t 的球,每个球内包含了与 该码字汉明距离小于等于 t 的所有接收码字 R 的集合;
这样,在半径为 t=[(dmin-1)/2] 的球内的接收码字数是



因为有 2k 个可能发送的码字,也就有2k 个不相重叠的半径为t的球。 包含在2k个球中的码字总数不会超过2n个可能的接收码字。

汉明码的编码和译码算法

汉明码的编码和译码算法

汉明码的编码和译码算法汉明码(Hamming)的编码和译码算法本⽂所讨论的汉明码是⼀种性能良好的码,它是在纠错编码的实践中较早发现的⼀类具有纠单个错误能⼒的纠错码,在通信和计算机⼯程中都有应⽤。

例如:在“计算机组成原理”课程中,我们知道当计算机存储或移动数据时,可能会产⽣数据位错误,这时可以利⽤汉明码来检测并纠错。

简单的说,汉明码是⼀个错误校验码码集,由Bell实验室的R.W.Hamming发明,因此定名为汉明码。

如果对汉明码作进⼀步推⼴,就得出了能纠正多个错误的纠错码,其中最典型的是BCH码,⽽且汉明码是只纠1bit错误的BCH码,可将它们都归纳到循环码中。

各种码之间的⼤致关系显⽰如下。

⼀、汉明码的编码算法输⼊:信源消息u(消息分组u)输出:码字v处理:信源输出为⼀系列⼆进制数字0和1。

在分组码中,这些⼆进制信息序列分成固定长度的消息分组(message blocks)。

每个消息分组记为u,由k个信息位组成。

因此共有2k种不同的消息。

编码器按照⼀定的规则将输⼊的消息u转换为⼆进制n 维向量v ,这⾥n >k 。

此n 维向量v 就叫做消息u 的码字(codeword )或码向量(code vector )。

因此,对应于2k 种不同的消息,也有2k 种码字。

这2k 个码字的集合就叫⼀个分组码(block code )。

若⼀个分组码可⽤,2k 个码字必须各不相同。

因此,消息u 和码字v 存在⼀⼀对应关系。

由于n 符号输出码字只取决于对应的k ⽐特输⼊消息,即每个消息是独⽴编码的,从⽽编码器是⽆记忆的,且可⽤组合逻辑电路来实现。

定义:⼀个长度为n ,有2k 个码字的分组码,当且仅当其2k 个码字构成域GF(2)上所有n 维向量组成的向量空间的⼀个K 维⼦空间时被称为线性(linear )(n, k)码。

汉明码(n ,k ,d )就是线性分组(n, k)码的⼀种。

其编码算法即为使⽤⽣成矩阵G :v = u ·G 。

LDPC码的译码算法

LDPC码的译码算法

LDPC 码的译码算法3.1 译码算法概述二进制信道的最佳译码方案无疑会是最大似然概率译码,其译码错误率也是用最大似然概率译码来分析的,但在实际运用中当码长较长时该方案的会产生硬件复杂度,存储器个数以及时延过大的问题。

Gallager 博士在1963年就针对这一问题提出了基于硬判决以及软判决的两种古典译码方案,这两种方案在后来的改进和演化中组不形成了现今常用的和积算法。

和积算法即是Log-BP 算法,是在对数域上计算置信传播(BP )概率,从而将乘积运算转化为加法运算的一种算法。

Log-BP 算法是在BP 算法的基础上得到的,与BP 算法相比,Log-BP 算法没有很多的乘法运算因而处理速度快并且在译码性能上Log-BP 算法没有下降太多。

3.2 LDPC 码的BP 译码算法BP 算法又称为Message Passing 算法主要是基于Tanner 图结构,信息在译码的过程中会在信息节点和校验节点间来回传播。

BP 算法在性能上有一定的损失主要是因为其建立在Tanner 图中没有环的基础上,然而实际中却有环的存在。

为理解BP 算法,首先应当掌握几个引理:假设二进制序列长度为L ,其个比特之间相互独立,P l 0,P l 1分别表示在其第l 位上取0和1的概率,则序列中出现偶数个1的概率:P (偶数个1)=()221111∏=-+Ll l P =()21110∏=-+Ll l l P P (3.1)P (奇数个1)=1-P(偶数个1)=()21110∏=--Ll l l P P (3.2)设码字在加性白高斯噪声信道中传输,则接收到的信道的输出信号在第n 个时间片为n n n d ω+=r(3.3)其中d n 的幅值±a 分别对应码字中的0,1且其等概率分布;ωn 是0均值,方差为σ2的高斯噪声,且它们之间相互独立。

假设一个LDPC 码A (N ,d v ,d c ),则在其对应的Tanner 图中,变量节点表示为{v n ;n=1,2,…,N },校验节点表示为{c m ;m=1,2,…,M },由式(2.1)得 M=(Nd v )/d c 。

译码方法最大后验概率译码

译码方法最大后验概率译码

19
检错与纠错原理
纠错编码之所以具有检错、纠错能力,是因 为在信息码元之外加入了监督码。监督码不
载信息,只是用来监督信息码在传输中有无
差错。 纠错编码所提高的可靠性,是以牺牲信道利
用率为代价换取的。
监督码引入越多,检错、纠错能力越强,但信 道的传输效率下降也越快。
20
码距与检错、纠错能力
• 汉明距离: –二个码字对应位置码元不同的个数。
• 纠错编码的检错纠错能力,要取决于码组的码距 • 码距越大,检错、纠错能力越强。
22
译码方法
消息组mi 编码器 码字ci 信道 接收码R 译码器 估值 i 消息还原
ˆ c
ˆi 消息m
• 最大后验概率译码(最佳译码):
–译码器接收到码字R之后,根据后验概率找
出可能性最大的发码Ci作为译码估值,从而 还原信源信息;
差错图样及其分类
纠错码分类 差错控制系统分类
2、检错与纠错的原理 3、码距与检错、纠错能力 4、译码方法
3
差错率及其分类
• 差错率是衡量传输质量的重要指标之一,它有 几种不同的定义。
• 码元差错率/符号差错率(Pe)
–指在传输的码元总数中发生差错的码元数
所占的比例,简称误码率。
–是指信号差错概率
发端重发这组数据。
16
检错与纠错原理
0
1-pb pb pb
0
• 0:晴,1:雨 • 若1→0,0→1;接收端无法发现错误
00晴 00
能发现 一个错误
1
1-pb
1
01 禁用码组 10 11雨 11
图6.1.4 BSC转移概率
• 插入1位监督码后具有检出1位错码的能 力,但不能予以纠正。

最大似然ML译码

最大似然ML译码
《通信原理课件》
一、循环码的编码电路
《通信原理课件》
图 9-4 (7,4)循环码的编码电路
《通信原理课件》
二、循环码的译码电路
《通信原理课件》
图9-5 (7,4)循环码的译码电路示意图
《通信原理课件》
9.5 卷积码
线性码可以分为分组码和卷积码。卷积码,又称连环码,由
埃里亚斯(Elias)于 1955 年最早提出,它是一种非分组码。不同于
《通信原理课件》
《通信原理课件》
9.4.1 循环码的码多项式
循环码可用多种方式进行描述。在代数编码理论中,通常用多项式 去描述循环码,它把码字中各码元当作是一个多项式的系数,即把一个
n 长的码字 C = cn1,cn2 ,cn3,,c1,c0 用一个次数不超过(n-1)的多
项式表示为
《通信原理课件》
《通信原理课件》
本章我们将讨论常见的信道编码和译码的方法。信道编码的数字 通信模型如图 9-1 所示。进入信道编码器的是二进制信息码元序列
M 。信道编码根据一定的规律在信息码元中加入监督码元,输出码 字序列 C 。由于信道中存在噪声和干扰,接收码字序列 R 与发送码 字序列 C 之间存在差错。信道译码根据某种译码规则,从接收到的码 字 R 给出与发送的信息序列 M 最接近的估值序列 Mˆ 。
样不变,后 r 位为监督码元。
图9-3 (n,k)线性分组码为系统码的结构
《通信原理课件》
9.3.1线性分组码的编码
在介绍线性分组码的原理之前,首先我 们来看一种简单而又常用的线性分组码— —奇偶监督码(也称为奇偶校验码),分 为奇数监督码和偶数监督码。无论信息码 元有多少,监督码元只有一位。在偶数监 督码中,监督码元的加入使得每个码字中 “1”的数目为偶数;在奇数监督码中,监 督码元的加入使得每个码字中“1”的数目 为奇数。

——循环码的译码

——循环码的译码

循环码的捕错译码
• 依据:能纠t个错的GF(q)上的(n,k)循环码, 不多于t个错误全在最低的n-k位中的充要 条件是w(S(x)) t。 • 证明:若这些错不全落在低n-k位中,则 E(x)-S(x)0,其重量d=2t+1,则w(E(x)) + w(-S(x)) d,而w(E(x)) t,=> w(S(x)) t + 1。
• 对收到的R(x)=C(x)+E(x),找到最可能发 生的错误图案E(x)
– 根据接收多项式R(x)计算伴随式S(x)
– 计算错误图案 E ( x) ,即形成伴随式S(x)的最 轻图案
– C ( x) R( x) E ( x)

伴随式的循环移位
• 令S(x)为R(x)的伴随式,则R(x)的循环移位 xR(x) mod xn-1的伴随式S1(x)是S(x)的模g(x) 移位运算的结果:S1(x)=xS(x) mod g(x) • 因此有:xjR(x) mod xn-1 => Sj(x)=xjS(x) mod g(x); • a(x)R(x) mod xn-1 => Sa(x)=a(x)S(x) mod g(x)
大数逻辑译码
• 正交一致校验矩阵:若某一特定码元位 (如xn-1)出现在H0矩阵中J行的每一行 中,而其它码元位至多在其中一行出现, 则称H0为正交于该码元位(xn-1)的正交一 致校验矩阵。 • 正交一致校验和式:正交一臻校验矩阵 中的各校验方程。
纠错能力与正交一致校验矩阵 的关系
• 一个线性分组码若在任一位上都能建立J 个正交一致校验和式,则该码能纠正 tJ/2个错误。 • 大数逻辑译码:当要判断第I位码元处是 否发生错误时,可以根据J个该位的正交 一致校验和式为0的个数来判断,如果为 不为0的个数大于J/2时则该位有错,否则 该位正确。

最大似然译码

最大似然译码

分组码定义:将信源的信息序列按照独立的分组进行处理和编码,称为分组码。

编码时将每k个信息位分为一组进行独立处理,变换成长度为n(n>k)的二进制码组。

简单实用编码包括奇偶监督码、二维奇偶监督码、恒比码、正反码,其中奇偶监督码和分组码又同属于代数码。

分组码一般用符号(n,k)表示,其中n是码组的总位数,又成为码组的长度(码长),k是码组中信息码元的数目,n–k= r 为码组中的监督码元数目。

在分组码中,把码组中“1”的个数目称为码组的重量,简称码重。

把两个码组中对应位上数字不同的位数称为码组的距离,简称码距。

码距又称汉明距离。

最大似然译码前面我们介绍了信道编码的基本概念,下面将详细分析有关译码的一些理论依据。

图5-6 信道编码器结构框图已知信道编码器的框图如图5-6所示,设任一个信息序列M是一个k位码元的序列,通过编码器按一定的规律(编码规则)产生若干监督元,形成一个长度为n的序列(n重数组)即码字(一种按特定规则排列并具有唯一含义的码序列),每一个信息序列将形成不同的码字与之对应,在二进制下,k长序列共有2k种组合,因此编码输出的码字集合共有2k个码字,而二进制下的n重共有2n种,显然编码输出的码字仅是所有二进制n重中的一部分,编码实际上就是从这2n种不同的n重数组中按一定规律(编码规则)选出2k个n重代表2k个不同的信源原始信息。

经编码后产生的(n,k)码送信道传输,由于信道干扰的影响将不可避免地发生错误,这种错误有两种趋势:①许用码字变成禁用码组,这种错误一旦出现,由于接收到的码组不在编码器输出的码字集合中,译码时可以发现,所以这种错误模型是可检出的。

②许用码字变成许用码字,即发端发生某一码字C i经传输后错成码集中的另一码字C j,这时收端无法确认是否出错,因此这是一种不可检出的错误模型。

可见,一个n重二进制码字C在传输中由于信道干扰的影响,到接收端可能变成2n种n 重中的任一个,为了能在接收端确认发送的是何消息,就需要建立一定的判决规则以获得最佳译码。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档