1、中国科学技术大学硕士学位论文LDPC编码技术研究姓名:冯军申请学位级别:硕士专业:通信与信息系统指导教师:周武旸20080501摘 要捅 妥LDPC(LowDensity ParityCheck codes)码是一种基于矩阵构造编码和迭代译码的新型信道编码方案,它具有很低的译码复杂度,并且拥有逼近香农极限的优异性能,目前最好的LDPC码字性能距香农极限仅O0045dB。随着研究的深入,LDPC码的编码复杂度也得到很大改善,这使得它在无线通信、深空通信、光纤通信以及介质存储等多个领域都得到了广泛的应用。本文首先介绍了信道编码的发展历程,以及LDPC码的基本原理和摹本概念,然后从校验矩阵的构造方法
2、、迭代译码算法以及性能分析等几个方面对LDPC码进行了讨论,介绍了相关技术的主要研究成果,并针对每种技术提出了自己的看法和改进方案。LDPC码校验矩阵的构造方法主要包括随机化构造、半随机化构造和结构化构造三种类型,在引入各种算法原理的同时比较了它们各自的优缺点。然后本文提出一种基于先验信息的LDPC码编码方法,该方法通过在校验矩阵中的弱比特位置插入先验信息,可以有效避免由小循环以及不合理的度分布带来的不利影响,提高了译码性能,加快了译码迭代收敛速度。对于LDPC码的译码算法,分硬判决和软判决两部分进行了讨论,分析了各算法的性能、特点以及适用性。在此基础上,本文提出一种改进的加权BP译码算法。考
3、虑到校验矩阵各个比特节点受到的保护程度有差异,它们在迭代译码过程中提供的概率信息也具有不同的可靠性,因此在处理信启、迭代时为每个比特节点赋予一个权值,以优化它们提供的信息的概率贡献。结果表明,这样的处理可以提高系统性能,减少正确译码所需迭代次数。最后本文还研究了密度进化和高斯近似等理论分析方法。通过跟踪译码迭代过程中信息的概率密度函数,它们可以有效预测具有某一类特性的LDPC码字的性能,同时还能够确定信道域值,并帮助优化设计低密度校验矩阵的度分布。关键词:LDPC码,矩阵构造,先验信息,加权译码中国科学技术大学硕士学俺沦文can dete咖ine the channel value limit
4、 for success如ltransmission,and could optimize thedegree distribution forIowdensity parity matrixKey Words:LDPC codes,matrix construction,priori-knowledge,weighted decoding中国科学技术大学学位论文原创性和授权使用声明本人声明所呈交的学位论文,是本人在导师指导下进行研究工作所取得的成果。除己特别加以标注和致谢的地方外,论文中不包含任何他人已经发表或撰写过的研究成果。与我一同工作的同志对本研究所做的贡献均已在论文中作了明确的说明。
5、本人授权中国科学技术大学拥有学位论文的部分使用权,即:学校有权按有关规定向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅,可以将学位论文编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。保密的学位论文在解密后也遵守此规定。作者签名:垄登渺g年r其J!日第l章 绪论第1章 绪论11 数字通信系统描述通信系统是为了将信源信息高效、可靠地传送到接收端。有扰通信信道的噪声会对传输信息产生干扰,从而可能降低通信可靠性。所以,通信系统设计的中心问题是在随机噪声干扰下如何有效而可靠地传输信息。一般地,通信系统的可靠性用错误比特率(BER)来衡量,有效性用传输速率
6、R比特信道符号来衡量。早期人们普遍认为通信系统的可靠性与有效性是一对不可调和的矛盾【l J,在有扰通信信道上要实现任意小的信息传输错误概率的唯一途径就是把传输速率降低至零。Shannon信息和编码理论的奠基性论文通信的数学理论f2】于1948年发表之后改变了这一观念,他首次阐明了在有扰信道中实现可靠通信的方法,指出实现有效而可靠地传输信息的途径是编码。目前典型的数字通信系统,如有线通信、无线通信、雷达和声纳等系统的基本组成如图11所示。编码信道图11数字通信系统模犁在数字通信系统中,信源编码器将消息源产生的二进制信息序列进行信源编码,目的是在允许的失真范围内,通过尽可能地去除信源中的冗余,从而
7、使用最少的比特以尽可能有效地表示信源。在这里,对于信号失真的度量依赖于信源的性质和实际的应用环境,其中,最为常用的失真度量为信号的均方误差。Sh锄on在信源编码定理【4】中指出,对于给定信源和失真度量D,一定存在最小速率为R=尺(D)(比特信源符号)的信源编码方式用以描述信源而平均失真不超过D。显然,信源的率失真函数尺(D)给出了在确定失真度量条件下信源的最小速率。信号在信道中传输时,存在着信道噪声、衰落、各种干扰以及信道本身的非理想频率响应等诸多不利因素。为了保证数据传输的可靠性,通常将信源编码器输出的信息比特流在发送之前进行信道编码,即通过有效地添加冗余,使得接收器能够以非常高的概率正确的
8、从已经失真的接收信号中还原出原始信息比特流。Sh踟on在他著名的信道编码定理中给出了在噪声信道中数据传输速率的上界,即信道容量。信道编码定理是:若中国科学技术大学硕士学位论文有一离散、平稳、无记忆信道,其信道容量为C,只要待传送的实际信启率尺C时,任何编码的R必大于O。该定理指明,存有扰信道中,只要信息传输速率小于信道容量,就有可能实现任意可靠的信息传输。这个存在性定理告诉我们可以实现接近信道容量的传输速率进行通信。当在噪声信道上的数据传输速率R小于诱噪声信道的容量C时,一定存在一种信道编码方案使得在接收端出错的概率任意小;反之,如果RC,则一定不存在这样的方案。根据以上讨论不难看出,编码在现
9、代通信系统中起着全关重要的作用,已经成为了现代通信系统中不可或缺的一个重要组成部分。编码可以从总体上划分为两类:信源编码和信道编码。这两类编码在通信系统中有着不同的作用,其中,信源编码研究如何更加有效地表示信源,而信道编码则是研究如何克服信道中的各种失真从而保证数据的可靠传输。Sh锄on在信源信道分离定理【41(sourcech锄el separatjon cheo叫)中指出,假定在接收端所允许的信号的最大失真为D,如果信源的码率小于信道容量尺(D)2)的情况,得到了RS(ReedSolomon)码。RS码的最大优点是其非二元特性可以纠正突发错误并日它也能纠正随机错误。但直到1967年Berl
10、ekamp给出了一个非常有效的译码算法之后,RS码才在实际系统中崭露头角,比如在CD播放器、DVD播放器以及CDPD(Cellular DigitalPacket Data)标准中都得到了很好的应用。上面所讨论的这些都是分组码,分组码本身的一些不足,限制了它的运用。第一,它必须是按帧传输、按帧译码,这样在帧长较长时会带来一定的时延。第二是要求准确的帧同步,这样才能准确译码。多数分组码要求解调器的硬判决输出,这样又会带来一些判决误差,影响性能。另外,分组码的译码方法通常都采用大数逻辑译码和捕错译码,其译码复杂度与码长成指数关系,码长越长,译码复杂度越大,而且上升趋势很快,所以基本上不实用。能够实
11、用的只是短码长的情形,而短码的性能有限,难以达到逼近Sharulon极限的目标,Shannon限的逼近需要长码,这就需要去寻找能够有效译码的长分组码。中国科学技术大学颂士学位论文1955年,EIiaLs等人首先提出了卷积码【9】。卷积码不是将数据分割成不同的分组,而是通过移位寄存器将校验比特加入输入数据流中。每甩比特输出是当前七比特输入和寄存器中的聊比特的线性组合,每次输出总的比特数与约束长度七有关,其码率为存一次编码间隔中数据比特七与输出比特数行之比。卷积码与分组码不同在于它在编码的过程中引入了寄存器,增加了码元之间的相关性,在相同的复杂度下可以获得比分组码更高的编码增益,但是这种相关性同时
12、也增加了分析和设计卷积码的复杂性。随着人们对卷积码研究的深入,在卷积码的译码算法方面出现了序列译码算法、门限译码算法和维特比(Viterbi)译码算法【加】。维特比iterbi)译码算法的出现,使卷积码逐渐成为研究和应用的重点,以后出现的TCM(栅格编码调制)技术进一步确立了卷积码在纠错码应用中的主导地位,特别是在通信系统中得到了极为广泛的应用。其中,约束长度肛7,码率为12和13的Odenwalder卷积码已经成为商业卫星通信系统中的标准编码方法。在移动通信领域,GSM采用约束长度肛5,码率为12的卷积码;在IS95 CDMA系统中,上行链路中采用的是约束长度庐9,码率为12的卷积码。卷积码
13、的主要问题是对突发性错误的纠错能力差。但是采用交织和卷积码结合的方式,可以在码比特送入信道前,进行分组交织,再进行卷积码编码,存接收端,先解交织,再译码。经过这一交织与解交织的过程,突发性错误就变成了随机错误。卷积码性能得到改善。经过上个世纪几十年的研究和实践,纠错码理论和技术取得了很大的发展,但是距离Shannon理论极限仍然还有一定的距离,难以找到逼近Sha肌on极限的编码方案,这使得人们一度认为Shamon极限仅仅是理论上的极限,是不可能达到的。此时,法国的CBe啪u等人在1993年提出了一种全新的信道编码方案:Turbo码J,在信道编码的理论和应用中取得了突破性的进展,具有里程碑的意义
14、。它打破了串行级联编码的结构,采用并行级联编码。Turbo码的基本思想在于利用短码构造长码,在译码时,将长码化为短码,再利用软输入软输出的迭代译码算法(MAP算法,SOVA算法)达到了接近Shannon极限的性能。Turbo码的优异性能使其一度成为编码界研究的热点,其理论和技术也逐渐成熟起来。Turbo码在通信中有广词的应用前景,在诸如星际探测、移动通信、数字电视、数字广播、卫星通信中都得到广泛应用。但是Turbo码也有自身的缺点,它的译码复杂度仍然较高,且码长较长时,交织器的存在使得时延较大。就在人们热点研究Turbo码的时候,有人注意到了一种早在1962年就由Gallager提出来的信道编
15、码方案LDPC码(Low Dens埘Par时Check codes)屹J【13J,它利用校验矩阵的稀疏性,使得译码复杂度只与码长成线性关系,在长码长的情况下仍然可以有效的进行译码,因而具有更简单的译码算法。后来DJMackay、MNeal和NWibe唱等人对LDPC码重新进行了研究fJ4】15】,发现LDPC码与Turbo一样具有逼近Sha衄on极限的4第l幸 绪论为其前向纠错编码方案;美国Hu曲es公司和一些研究机构也已经研究出使用LDPC码的编译码芯片。Wimax以及B3G等标准里面也采用了低密度的编译码方案。相信随着LDPC码的进一步技术成熟,更多的未来通信系统会采用这种具有优异性能和应
16、用前景的编码方法。14 论文研究内容及安排第一章介绍了信息论和信道编码的发展历程,重点介绍了LDPC码的提出与发展过程,分析了每种信道编码的优缺点,同时在它们之间就某方面的特性作了简要比较。第二章主要介绍了LDPC码的一些基本概念和基本原理,包括其产生、发展、特点、定义以及编译码思想。第三章从编码的角度重点分析了目前主要的低密度校验矩阵构造方法,并给出了一种基于先验信息的LDPC码编码方案。第四章重点讨论了LDPC码的迭代译码算法,并提出一种基于加权方案的BP译码改进算法。第五章介绍了两种LDPC码的经典理论分析方法,比较了它们各自的特点。第六章是对本文所讨论内容的总结,以及对目前LDPC码的
17、研究现状的看法,同时指出了LDPC码的未来发展趋势。第2章LDPC码基本原珲第2章 LDPC码基本原理21 LDPC码概述LDPC(LowDens时Par时Check Codes)码是一种由稀疏校验矩阵定义的线性分组码,最初由Gallager于1962年提出【12】。但由于当时技术条件的限制,人们的兴趣大都集中在有实现可能的编码方式上,比如卷积码、级联码等,以至于LDPC码在很长一段时间内几乎被人们遗忘。直到1996年,Mackay和Neal随机构造的LDPc码114 J存码长很长时性能超过了Berrou等人提出的Turbo码,而且在实现上更有优势,才激起人们重新研究LDPC码的热情。LDPC
18、码具有诸多优异特性。其校验矩阵是一个天然交织器,译码复杂度随着码长的增加呈线性增长,且具有逼近Sh锄on极限的性能;它的描述和实现简单,有严格的理论分析工具可对其进行验证;它的译码算法可并行处理,有利于在硬件上的并行实现,减少了译码时延;可进行动态判决译码,即在迭代译码过程中进行译码判决,以决定是否结束译码进程,如此可以减少译码迭代次数;由于具有较大的码距,使得不能被译码检测的错误很少,因此具有良好的检错性能;很少出现误码甲台(error floor)现象,误码率随信噪比的增大快速下降;有成熟的T锄er图和因子图等简单实用的图模型描述,使得理论分析更加简单有效。目前仍然存在很多因素在限制LDP
19、C码的实际应用。由于校验矩阵中短循环的存在,当码长很短时性能较差,因此只有长码才能体现LDPC码存性能上的优势,但随之带来了许多问题。长码的编码复杂度高,而且对于硬件存储器的需求也大,虽然目前已经有了线性时间编码复杂度的实现方法,但与卷积码等编码方式相比仍然太大。另外,LDPC码需要对一组信息序列一起编码,码长较长时,为了接收完所有信息比特进行编码,需要等待较多的时间,而这将带来编码的时延。所以研究更加快速实用的编码方法成为一个重点问题。 22 LDPC码的定义LDPC码可用一个稀疏的非系统的校验矩阵且。圳。定义,其中月为码长,七为信息位个数,所有码字C均满足CHr=0。校验矩阵“稀疏”是因为
20、矩阵中除了少数元素为“l“外,其余大部分元素全部是“0”,其每行中“1”的个数(以下简称行重)远远小于校验矩阵的列数。根据LDPC码校验矩阵元素为“1”分布情况的不同,可以将之分为Regular和Irregular两种。Regular LDPC码(正则LDPC码)中,每一行为“l”的元素个数相同并且每一列为“1”的元素个数也一样,即矩阵的各行行重和各列列重分别一致;反之,如果校验矩阵的行重或者列重不一致就称为I玎egular LDPC码(非正则LDPC码)。根据GalIager最早给出的正则LDPC码的定义,描述如下【12】:9中国科学技术大学颁上学位论文正则LDPC码:对于一个码长为甩,校验
21、位长为耽的LDPC码,若其校验矩阵每行“1”的个数全为k,每列“1”的个数全为i,则称其为正则LDPC码,记参数为(J幼,并且通常满足条件?歹毛朋,k以。Gallager证明了当歹3时,这类LDPC码具有很好的汉明距离特性。非正则LDPC码:类似于正则LDPC码的定义,不同的是校验矩阵每列“l“的个数或每行“1“的个数不全部相同。研究表明,通过优化非正则LDPC码的校验矩阵中元素“l”的分布,可以得到比正则LDPC码更好的性能,不过在硬件实现方面具有更大的复杂度,需要更多系统资源。对于校验矩阵风。,假设其秩为,=rank(邱,那么其合法码字个数是2一,。若校验矩阵不满秩,即,聊,则合法码字个数
22、大于2一m。LDPC码的码率R应该为R=伽一枷,而大家常常用R=(聆一所)门计算码率,由于RR,所以应让校验矩阵尽量满秩,才可以让月接近真实的R值。LDPC码的校验矩阵一般都是用非系统形式给出的。例如,个(10,2,4)的校验矩阵可以用图21所示:0=1 1 1 1 0 0 O 0 O 01 0 O O l 1 1 0 O OO 1 O O 1 O O 1 1 00 O 1 O O 1 O 1 O 1O 0 O 1 O 0 1 0 1 1图21 (10,2,4)LDPC码的校验矩阵除了用校验矩阵表示LDPC码以外,还可以用双向的图模型表示LDPC码,其中Talmer图表示是比较方便的一种,可以
23、形象地刻画LDPC码的编译码特性。Taruler图是一种双向图,可以用G=(y,E)表示,其中y是节点的集合,y=U圪。对维数为聊“的校验矩阵日。,圪=(6l,62,玩)称为比特节点,对应校验矩阵的列,同时对应码字中的比特位;圪=似,c2,c。)是校验节点,对应校验矩阵的行,也就是校验方程。E是比特节点和校验节点之间相连的边的集合K,同类节点之间没有边相连,只有在两类节点之间有边存在。如果校验矩阵的第f行第列元素为非零,则Tanner图的第,个比特节点与第f个校验节点有一条边相连。即当矗,=l时,节点c与6,之间有一条边相连,边(c,6,)E。与节点相连的边数目称为该节点的度(degree),
24、从某个节点出发又回到此节点为一循环(cycle),所经过的边的条数称为循环的周长,其中最短循环的周长称为图G的girth。校验矩阵的行重和列重与节点的度一致,Tanner图与校验矩阵一对应。上图中的校验矩阵刘应的Tanner图如图22所示,具有10个比特节点和5个校验节点,每个比特节点都有2条边,每个校验节点都有4条边。lO中国科学技术大学硕士学位沦文日=睇:) 陋2,日=I (22)l C D E J 。该矩阵形状如下:卜一n-mHIg一m-占I_一心图23 近似下三角校验矩阵形状将校验矩阵左乘如下矩阵匕一- ,得到b曼+cE幺j口) p4,l f24、一ET一|A+cET。l B+D o
25、1 j 。那么mr=驴可以分解为如下两个表达式:4sr+却;+印;=口 (2-5)(一ET一1 A+c)sT+一ETB+D)pl=o Qq定义够=一Er一,曰+D,并日假设妒非奇异,则求解上面两式可得:pf=一缈一7f,一E丁一7彳+ajr (2-7)p罗=一r一似Jr+却;J (2-8)通过如上两个公式可以计算校验信息p,和p:,从而得到码字。下面对这种矩阵变换编码方法的复杂度进行分析,由前面推导可知,因为系统信息比特可以直接得到,所以复杂度就集中在计算p,和p:的两个公式。根据Richardson和Urbanl(e在32】中有关复杂度计算的描述,对于p,和p:的计算复杂度估计分别如表21和
26、表22所示:统计两个关于计算校验信息p,和p:的复杂度的分析表格,可以得到矩阵变换方法的编码复杂度为D(以+92)。为了降低编码复杂度,应该让g尽量小。Richardson等存文章中提出了三种Greedy算法对矩阵的下三角化进行讨论,它们是Greedy算法A、Greedy算法B和Greedy算法C,其中Greedy算法AH、Greedy算法BH和Greedy算法CH分别表示直接作用算法A、B和C于校验矩阵,而Greedy算法AHT、Greedy算法BHT12第2章LDPC码摹木原理和Greedy算法CHT表示作用三种算法于校验矩阵的转置。三种Greedy算法可以让g尽量小,从而降低LDPC编码
27、的复杂度,表2-1 校验信息p J的计算复杂度分析 操作 解释 复杂度4sr 稀疏矩阵与向量的乘法 D(胛)Z-J(彳Jr) 令一=4j 7,复杂度同上 0(门)一E(r一爿s 7) 令y;=丁一彳J 7,复杂度同上 D(门)csl 稀疏矩阵与向量的乘法 0(甩)(一Er一7彳Jr)+(or) 两个向量的加法运算 D(甩)一97 fEr一。4sr+C奢r) gg的密集矩阵与向量的乘法 0(92)表22 校验信息p 2的计算复杂度分析操作 解释 复杂度爿Jr 稀疏矩阵与向量的乘法 p(刀)B设 稀疏矩阵与向量的乘法 D(胛)纠sr)+(却7J 两个向量的加法 0(甩)一丁一阳Jr+却f夕 令一=
28、(爿Jr+却7),则jr一7一, D(刀)仍然是稀疏矩阵与向量的乘法矩阵燹决算法编冯过程总结如卜:第一步:预处理过程,输入非奇异校验矩阵,输出形如(三三:)的等价矩阵,并且要保证一Er一曰+JD为非奇异矩阵。预处理过程包括近似下三角化校验矩阵和矩阵的秩校验。近似下三角化是通过行列置换将校验矩阵变成形如(:三:)的近似下三角矩阵,并且通过应用几个Greedy算法让g尽量小。矩阵的秩校验则是利用高斯消元法完成如下矩阵运算:(一:丁一,1)(:三:)=(一Er乞+c一;,占+j口) c29,关键是要检验矩阵一r一,占+D是否奇异,如果奇异,那么需要进一步进行列置换使它最终非奇异。 第二步:实际编码过
29、程,当校验矩阵已经按照预处理过程的要求化成了形如中国科学技术大学硕士学位论文(三三:)的非奇异矩阵,那么对于给定的输入信息序列s,只需要通过公式(27)和(2-8)计算校验信息p,和儿就可以得到编码输出码字c=p,p,肌)。校验矩阵变换编码算法虽然可以实现近似线性的编码复杂度,但是它对编码矩阵的原始结构要求较高,很多矩阵仅通过简单的行列置换并不能满足该方法的诸多限制条件,因此应用也遇到一些困难。降低编码复杂度的另外一个有效措施是设计具有特殊结构的校验矩阵,如循环码和准循环码,仅通过信息位或者校验位数量的移位寄存器即可实现该类编码,复杂度低,与分组长度成线性关系,没有大的编码延迟,而且易于硬件实
30、现。类循环码已经成为当前的一个研究热点。24 LDPC码的译码思想LDPC码的译码算法有硬判决译码算法、软判决译码算法和混合判决译码算法三种。它们有着不同的纠错性能和译码运算复杂度,硬判决译码复杂度低,但性能相刘。最差;软判决译码纠错性能最好,刁过复杂度也最高;混合判决译码则在性能和复杂度之间有一个折中。Gallager在其博士论文【12中提出了两种LDPC码的译码方法,一种称为比特翻转(Bit Flipping,BF)译码,另一种是信息传递译码。BF译码是一种基于迭代的硬判决译码算法,它首先对输入译码器的数据进行硬判决,然后将得到的“O”、“1”序列代入所有校验方程计算各个校验子的结果,如果
31、发生错误,校验方程不满足,则根据校验结果找出使得校验式不成立数目最多的比特节点,并将该比特节点对应的比特值进行翻转(0变为1或l变为0),至此完成一次迭代。迭代中止条件是达到最大迭代次数或者所有校验方程都校验成立。BF译码操作简单,硬件实现容易,但性能要比软判决译码差很多。Gallager的软判决概率译码可以看作是Tanner图上的置信传播(Belief PropagaIion,BP)译码算法,也称为和|算法(Sum Product Algo“thm,SPA)或信息传递(MessagePassing,MP)译码算法,由于其性能最优,因此应用也最广。译码思想大致是:对某一个接收码字进行译码时,先
32、根据接收数据和信道信息初始化每个比特节点的概率软信息;再将比特节点的概率信息传递给校验节点,校验节点的概率信息是参与该校验方程的所有比特节点对该校验方程的概率贡献:然后校验节点将概率信息传递给比特节点,对于某个比特节点而言,该软信息就是它所参与的所有校验方程对它的概率贡献;最后,比特节点利用从它参与的所有校验方程那里得到的概率信息以及信道初始化信息进行译码判决。如此则完成了一次信息传递和迭代过程,当某次判决译码成功或者达到迭代次数上限时就停止译码,否则进入下一次迭代过程。经过几十年地不断发展,LDPC码的译码算法得到不断完善,出现了很多新的译码算法。包括1981年Tanner提出的基于Tann
33、ef图的并行译码算法,1998年Richardson,14第翼矍鋈嘉甜为烈靳簦萋北蠹羹l蓁霎翼|霎|薹|冀霰豢萎j预羹搓冀嚣霎喜雾疆塑曼章薹垂;羹垂耋谚岑羹臻i羹一霎l飘i毫t薹i塾霪焉墨甥型|霎蘸堋博嗜錾塞囊至牟拆蓁咎氅囊一萋;鬟i;鬟$;靼震理鬟孽噬舂强蔼瑶嵩蠼窿鋈羹都亲妤嘉捌霎壅薹雾西醋;粕妻西浏浑塞邑舐霎磺她啪臻唾膏羹臻,曼霎型虱勤马幽蚕茧薹摹虿蠹装蓁鹰惯佃鹭也I复舞霎有的虑萎纛露j薹吲鹤;薹|强第3章LDPC码校验矩阵构造方法第3章 LDPC码校验矩阵构造方法LDPC码的编码关键就是构造低密度奇偶校验矩阵,不仅如此,校验矩阵在译码过程中也起着至关重要的作用。根据构造方式的不同,目前L
34、DPC码校验矩阵主要有随机化、半随机华和结构化等几种构造方法。随机化构造方法在LDPC码的早期研究中出现较多,以Gallager、Mackay以及Richardson等人为代表。此方法构造的校验矩阵由于具有随机特性,因而纠错性能良好,但由于矩阵结构不固定,无法实现简单编码,译码时校验矩阵的存储复杂度也高,所以在实际系统中的不易应用,特别是磁记录和光纤通信等高速传输场合。近年来结构化的构造方法已经成为LDPC码校验矩阵构造领域的主要研究热点,如循环码和类循环码、几何设计法、组合设计法以及性能优越的PEG方法等。这是因为结构化构造方法不仅可以克服校验矩阵中短循环的产生,而且生成的LDPC码字可以是
35、循环码或类循环码,具有线性时间编码复杂度,同时矩阵具有确定的结构,便于硬件实现。性能上由于结构化方法可以设计ginh较大的码字,因此并不会比随机校验矩阵构造的码字差多少。31 随机构造法311 Gallager构造法Gallager最早在13】中提出了一种简单的LDPC码校验矩阵随机化构造法,此方法构造的校验矩阵度分布为(矾,以),其中矾3,构造过程如下:根据校验矩阵码长以及行列重等参数,首先设计一个基矩阵风,基矩阵中每列都只有一个元素值为1,并且第f行中为l的元素全都分布在从(f一1)以+1到试的以个连续列中,如图31所示。然后对基矩阵做随机列变换,得到其余玑一1个子矩阵,并将这矾一1个子矩
36、阵以等概率随机排列的方式叠放在基矩阵的下面,从而构成一个LDPC码的集合,如图32所示。风=ll 11、-、rJt个l11l1、-vJ以个l图3。l 基矩阵结构H=HQ乃(凰)死一-(风)1 111、-、,-Jt个l图32 由基矩阵构造LDPC码的校验矩阵其中刀,(凰)表示通过凰的随机列变换生成的子矩阵。可以看出用这样的方法得到第3章LDPC码校验矩阵构造方法32 半随机构造法校验矩阵的随机构造方法可以不受码长、码率等参数限制,参数选择灵活而且性能好,不过其不固定的结构使得编码复杂度高。下面介绍一类半随机的LDPC码,它们具有编码简单以及参数选择灵活的特点。321半随机LDPC码文献【34】介
37、绍了一类半随机LDPC码,它将码长为九,信息位为七的LDPC码校验矩阵分解为两个子矩阵,形如胃=【H一日d】。其中“是一个(胛一七)克的矩阵,称为信息位矩阵,它采用随机方法构造;日,是一个(,l一。七)(”一七)的矩阵,称为校验位矩阵,它是双对角线形式的下三角方阵,具有如下形式:H p=1 0 OU U1 1 OU UO 1 1【) U0 O 01 O0 0 01 1相应的将校验矩阵所对应的码字向量c分解为对应的校验位向量c,和信息位向量cd,即有c=【cp一】,校验矩阵与码字向量c之间有如下关系:广,胁r=日,日d】|二|H,f,+HoJ=口 (3-1)LJ在二进制情况下,公式(31)可变换
38、成如下形式:日即P=日屯d (32)由上式可知,给定任意一个信息位向量cd,能够利用构造出的校验位矩阵日P和信息位矩阵日d直接计算出cp,从而得到码字向量c。有两种方法可以计算c,一是cP=日PrI【日c,cd】,二是直接对公式(32)进行高斯消元求得cP,后者较前者更简单,具有线性计算复杂度。总结半随机构造法,先是利用随机方法构造一个信息位矩阵HJ,然后根据参数设定一个校验位矩阵日,给定信息位向量cd后,再分两步完成编码:l、计算中间映射向量l,=日dcd2、用高斯消元法解方程H,c,=l,求得校验位向量c,从而获得编码码字c=陋,cd】322兀旋转LDPC码文献35】描述了一种基于兀旋转的
39、LDPC码构造方法,它实际上是在半随机LDPC码的基础上来构造的。由半随机LDPC码的校验矩阵结构可知日=【P4】,在冗旋转19中国科学技术大学硕上学位沦文次数。假设区组矩阵抒是以X中的元素为行,区组为列的矩阵,那么矩阵中元素拓,=l表示元素屯被区组6,所包含,否则,=O。根据如上对应关系,还可以得到w=掀。介绍了BIBD理论后,下面详细讨论如何利用三维循环网格图来构造BIBD和LDPC码的校验矩阵。3312基于三维循环网格图的BIBD构造根据BIBD理论,如果构造了一个BIBD,那么就可以对应得到一个LDPC码的奇偶校验矩阵,从而得到一组LDPC码字。这里介绍一种用三维循环网格图构造BIBD
40、的方法。首先构造一个尺度为CRQ的三维循环网格图,描述如下:上口,ffcP(C,R,Q)=(x,J,z):0xC一1,0yR一1,OzQ一1)其中R为质数,Q、C为正整数(C一般取为3),C、又、Q可分别看作三维循环网格图对应X、Y、Z坐标上的量,如图33所示:图33 (3,5,283)三维循珂、网格图构造网格图之后,需要对网格内各个元素点进行编号,一般按照Z轴优先,X轴其次,Y轴最后的顺序将各个元素节点编号填入网格内。想要在网格图内部构造组平面,然后在各个平面内生成一组直线,直线对应着均衡不完全区组设计的各个区组,而直线上各个点就对应着区组中的元素。为了构造一组平面,先在图中顶部RC平面内构
41、造一组直线,然后沿着该直线向Z轴切开网格图,得到一组切面作为甲面组,再在该组甲面内部作直线得到区组。下面详细介绍这个过程以及相关参数的选择。321拈嬲嬲32X萋錾曼篓蚕篓瞬卸卿矧崮矛杰霪霪囊陉薹|雾巡,蠢霸童列霾墓ii。l登j照苌垂竖萋蓁蠢;竺羹囊豁爷;可墨葫童墅雾舅耱鐾;墼冀琵罂篷嘎萋巨缘分;羹和不-平行子翥鬟薹瑟馨烊篓霎鋈可汁堕塞i夔i羹l捌霎:部霪萋叫崾雾隧霎莲;萋型一堇垡爵鲜i薹|囊鋈诗篓一倒丰獯摒;丽菊丽菰稀萋僮卷雾耋萋二羹=型f蓁耄二照冀嚣型理蓁;耄羹羹;嚣耋靖蟹鋈i;霎仕薹球蓁希端型而萎芦萋墼薹羹;蓁薰藿錾霎:薰鬟;*望i璀暄季暨蟛量;冀|警喜=翼些附鸯冀篷填鍪螫;弱塑需攫薹爷蠡
42、可她i雕戊姜量茎绸鏊i耄刿型。副引誊薹|趔薹i掣萋霎妻氨薹蒺圭;季錾霎秘i蓼凳;襄冀鼋囊妻;萋塑誉昼萋鲔 null x中l斐 蚕薹霉喜藩同巍刍她嗣童墓;i霎蓊墼嚣黧饕;溪豢垫薹塞塑耋霉臻建鬻到墅要,k墼笔握篓露菘囊堤蔷哩墼霁攀藉掣羹j掣利如蠢超翼繁乳囊按凰器斜;一手帑器竹薹辩蓁*羹!萋一霎。剥壁笋塞翥情瘗幕=囊雾翥鬟羹掣塞纛霉些茎喜藿l萎霎萎霎霪主璧莲l耋囊器ii耋霎二掌;貉臻萝主鐾瞧铂攀厦缘萋季一些羹纛;蓄羹毪一蠢珊奏薹筵循圉L墨;彳_蓝丙薹雾篓薹嚣旭凰稍蓁鏊F:型沛囊羹刽型冀卧更需雾番碡蓁三蓁丽蠹羹院蓍羹妻黼鬟;蹦裂薹甭百;露澜羹霪;基霎;妻l蓄萋|幕幽薹面;奏耄i引引勰拳当箫希麓曩霎皿雾
43、蹙;雾爱誓誊;希萎爨蔫篓囊一萨一零显篓萋篓墓主耋雾鏖留鲢喾r雕雾囊;型爱萼提叠曜螺葡篓蚕墅雾髅堡雾萋起遵圣i蠕姜嚣矿以|;蓐墅薹涠嗟狻囊j攀堕雾;磊瑚淄哺誊毛耋;奠,秦翼掣利邑劐双蓁l薹霎萋一霎蓁萎奏奏:毒萎萎耋专辜詈睾篓篓霎i鬈髦:ii皇蠢1垂蓄i等 羹薹雾鍪霆蓁薹羹雾蒌囊蓁鏊羹圃雾羔篓熏瓷垂耋纛囊霎霸裂载墓型霎叫誉i是鏊曜旱耋群哙导囊善膏叁囊苴;猁降靖甥莉攀鍪雾莹量蓁塞篙裂导潦廿慧遣悟静j墓存囊鋈望羹零藿塌露唆皤蠖季妊薹雾陲鬻甚竖爵錾爱薯悬篪坫:鬟薹羹孰趔薹囊囊薹亚篓。;r基霸蒂忑幕罐:荫篓蔫鞲鍪阿塑篷鐾蠢萎薹黍鬲端;赢裂蠢笪雾树融掣验理阻堕芎篡i薹!蓁;塞蔷剖娄割剽剡翔塞蓊旨矍薹叶羹霆参
44、列塑希量垫謦雾蓁冀鬣鬣撵鍪篓墓;薹翥娶摹髦薹搿埔囊蚓馥蚕二莓嶷环囊埔蘸攀;钙邂筌蠢羟巍璎翔一蜊薹喜;翦;雾l囊j鬟攀蓄j喜南篓耋稀鬓冀褐;鏊豆冀雾瓤錾篓蕈煞醑耪裤猎诺落耀垮瑗霎霎;季摹旨露孽季萋|耋黎青薹菱妻喜羹囊j蓁i羹攀和蘩瑚送竖C熹鋈蒸孺雾靴蒜誊i剐彭雾霁荫;萎驰匪羹斜囊萋鬈篓笺导美需鬟器!荔馨循型驯薷萎墼豢羹冀雾藿馥雾囊蓬璧絷鬟羲笞毋;一羹薹引赚醋至鱼谨蓁薹型冀誊囊经瞥藿缉士塑亘线薹名;塞静曩型妻蓁零狻耀瑙望嚣塑塑鑫靶毖袭霎弛冀蓄辇萋蓠羹雾簿粤至霁塑羹薹捌酉雾羞亟袋;毳杉:灞隋囊碍毳簦茎曲士辫型显零薹蓁型缸霉墅蓁篓;霾薅l萋一主i羹蓁薹篓霎萎紊妻窭墼霸凳鎏莠蓁垄i主!薹羹! null
45、x第3非 LDPC码接艟摊孵毋碹刀;篓逸一携避霆!薹羹鋈霪蓁雾茎蓁皑鉴矍羹耋葡!碧豳萋崇磊落些簿擀群鬻掣醋霄蛩融翅i降陶羹儒涮礞缚储薹能妊翼i季。罾坚颡囊震羹鬯琵*薹!霉一l j茎士褥蛾剥耋蓁雨,枣奶碰僦蓟和蓟划耋藿参羹薹薹匡羹羹蓁萋妻薹萎i霎垂鐾li耋薹ii当“爹茎囊窭需拶譬墼转群一鏊薹芳;蠢蓁烈;篓稻蠢霁鬟朝乳霎銎I;燮霰鎏垦鬻丢雾奘薷甥罐噻鹱霉=蒜囊蓥第薹|l羹羹藕堀强薹坦臻霎璧粪罐太墓m薹塞霪塞弱;鬻塑鬟裤笛i薹魁坚囊;:蔷缳il震l鲢剿稳别墅零i导堂;螃降刽隋朔畴囊耐巍嵩甘苦蒙;苴箸晏鉴lll麒羹鄯蓟画蠢一後一能氧萎茎3囊孽琴i萎矿型固彰列薹羹;麓馏墁翟醭鬈掣蜡霉薹鬲缳鳓矍鬻塑将孺薹
46、霎!重爵博糁蓁|i硐雾阿誊菖黟照运裢得;塑鍪謦艘罐嶝霎i荐;分兜蓓啄砻阿薹錾塞薹萋一羹蒌蒌羹薹。妻雾霎霎萝莹薹萼主雾羹鬻l蓁;i!?鍪委?耋霪;篓 羹熏囊冀垂薹鋈粪冀蓁薹萋髻薹囊毒奏辚型痒蜀塑霎冀虿蓍理挂藿堪薹降雾i燃蔓驽凝萋娶过蓁荪F融钔兰彭ii7l研雾圈霪哥曜债博圃蟹薹雕邵醵弘娃醐融錾雾!菁理雕型霸缝蹦硭南辐旌萎刖一圳羹薹蒯鼬黼戈“辅掘训搦划为i沾嶝霎萋哩雾|羹|錾刖卤型塑萝;篇出墨蓁雾菰集;匿箝藩蕾垂鬻笾蓁羹羹鬻玉雅蛩磊;著塑霎薹籍鏊I舛巷懒蓥擞塑薹曛甜i参。蓁:薹菱鬻澎猁莲硷篡罐冀磊强耋鳞矗薹篇髯鞋薹雾一绻烈型磁偌沲曼薹芎颤?嘲囊滔霎薹塑磊颡叫西药霎;雪塞霾垡耋季i强瀵臻瑙坦汽州强一礞
47、辇垂|篓|妻|萋!粪鬻翼羹迂薹i冀霎鬟鎏霾鼙;蔫塑星塑囊蓁雾霆管孵冀震蠹教鞭簇提环粪曼;蒌雾锢霎麦薹塑雾髦薷霪耋塞蓁蓥埋;枣i萋蓁|辫霞爵笋薹割萋薹塞蓠蓁需幽毋。凰劐瑗幕蘸;羹委冀蓥囊羹鬻崩羹蓁藿蓊羹薹舔j惹薹霸再薹肇奏篓麓薹瓢霎蝇难皱翻盯支剽镁塑爹矍;一理坚翟罄召型智裂雾磊誉型型型爱磅式方阵璧颡璺藿催i掣息鋈耋剧轷羹稀篮怎耀翼雾鳖型菰竺薹鬈邕垂盘薹篓薹需需舜眩塑奏耋蜀黍登襄叁萎副鬻囊。蓁蓼;塾蠹霎m薹臻氆捌碉琅捌羹篓量鍪雨酗妻羹霎傍j规鬻i萋;i耋!錾雾耄恼锗毒翼蠢藿辫键羹翥霆尉司l萎|i羹霎l犁击雅睦薹 null x中国科学技术大学硕士学位论文G=【(ck。B缸铆(M)7k(M)。鲫(州)
48、】 (3-9)根据环上乘法和加法运算的封闭性,两个分块循环矩阵运算的结果还是一个分块循环矩阵,所以G显然也是一个分块循环矩阵。因此,存假定鼠。矩阵满秩的条件下,得出了二进制的分块循环生成矩阵G的系统形式。不过对一个RC尺C的多项式矩阵求逆比较复杂,可以利用高斯消元法,对核一心矩阵。作高斯消元处理,得到核心生成矩阵q。基本思想:通过一系列的行交换和行间相加运算(如有必要可作列交换),将且。化简为fk川,最。xf(坩卅)1的形式,那么G州=I(州M)7,肿-c)咧)I。在对皿。化简过程中如涉及到列交换,则需要在进行化简的同时记录每次列交换的位置,最后根据这些记录对瓯憎进行相应的逆列交换,从而得到符合条件的核心生成矩阵,并根据映射规则得到最终的二进制生成矩阵G。这种做法看起来易于实现,不过对于多项式矩阵的高斯消元也的确比较复杂。由于多项式环中并不是每个元都有乘积逆元,所以直接高斯消元不太可能。简单以Q=3为例,0=3的多项式环为:O,l,x,x2,l+x,1+x2,z+x2,l+x+石2)其中运算是对l+x3求模的,由于l+石是1+z3的因式,所以找不到l+x的乘法逆元,但是对于单个z的指数项的元总是有逆元的。具体步骤如下:一、 先把校验矩阵化为,尸1,其中涉及到行交换或者列交换,要保证需化为单位矩阵的元素不为0,并且只含有最多一项关于