一种级联码的译码方法及装置的制作方法

文档序号:7516620阅读:202来源:国知局
专利名称:一种级联码的译码方法及装置的制作方法
技术领域
本发明涉及中国移动多媒体广播(China Mobile Multimedia Broadcasting,简 称为CMMB)技术领域,尤其涉及一种级联码的译码方法及装置。
背景技术
信息传输的有效性和可靠性是评估通信系统的两个主要指标,为了增加信息传输 的可靠性,通常要对信息进行信道编码以增加一定的冗余度,使得码字具有自动检错和纠 错的能力。但是,冗余度并不是越多越好,为了兼顾信息传输的有效性,人们希望在冗余度 一定的情况下,通过设计优秀的编译码方法,使得在接收端获得良好的译码性能。数字通信 系统的仿真模型如图1所示。低密度奇偶校验(Low Density Parity Check,简称为LDPC)码是1962年由 Gallager提出的一种基于稀疏校验矩阵的线性分组码。1996年,MacKay和Neal对LDPC 码进行了再发现,证明其具有接近香农限的性能。现有的一些通信系统,如DVB(Digital Video Broadcasting,数字视步页广播)、WiMAX(Worldwide Interoperability for Microwave Access,全球微波互联接入)和CMMB系统中都采用LDPC码作为信道编码。根 据LDPC码校验矩阵H中元素1的分布,可以将其生成的LDPC码分为规则码与非规则码如 果矩阵H中每行有固定r个1,每列有固定c个1,则其生成的LDPC码称为(c,r)规则码; 如果H的行列中元素1的个数不固定,则其生成的LDPC码为非规则码。在CMMB系统中,采 用了 1/2码率的(3,6)规则码和3/4码率的(3,12)规则码作为信道编码的一部分,码字长 度均为9216。CMMB系统中LDPC码校验矩阵H可以通过一个码表进行循环移位创建。采用1/2 码率时,码表为一 18X6的矩阵,存放的是H矩阵前18行非零元素的位置,每隔18行可将 码表循环右移36位得到H矩阵其它行的非零元素位置。采用3/4码率时,码表为一 9 X 12 的矩阵,存放的是HH矩阵前9行非零元素的位置,每隔9行可将码表循环右移36位得到H 矩阵其它行的非零元素位置。这种结构可以大大减少H矩阵的存储空间。1/2码率时生成H矩阵的码表为0,6,12,18,25,300,7,19,26,31,56640,8,13,20,32,82701,6,14,21,3085,89591,15,27,33,9128,91881,9,16,34,8485,90932,6,28,35,4156,77602,10,17,7335,7545,91382,11,22,5278,8728,89623,7,2510,4765,8637,8875
3,4653,4744,7541,9175,91983,23,2349,9012,9107,91684,7,29,5921,7774,89464,7224,8074,8339,8725,92124,4169,8650,8780,9023,91595,8,6638,8986,9064,92105,2107,7787,8655,9141,91715,24,5939,8507,8906,91733/4码率时生成H矩阵的码表为0,3,6,12,16,18,21,24,27,31,34,74940,4,10,13,25,28,5233,6498,7018,8358,8805,92110,7,11,19,22,6729,6831,7913,8944,9013,9133,91841,3,8,14,17,20,29,32,5000,5985,7189,79061,9,4612,5523,6456,7879,8487,8952,9081,9129,9164,92141,5,23,26,33,35,7135,8525,8983,9015,9048,91542,3,30,3652,4067,5123,7808,7838,8231,8474,8791,91622,35,3774,4310,6827,6917,8264,8416,8542,8834,9044,90892,15,631,1077,6256,7859,8069,8160,8657,8958,9094,9116LDPC的输出码字C= {c。,C1,…,c9215}由输入信息比特S = {s。,S1,…,sK_J和 校验比特P = {p0, P1,…,P9215J组成,如下式所示
_ J Pi 0<i<92\5-KcCOL_ORDER{i) =9216-^<i< 9215式中,C0L_0RDER(i)为码字比特映射向量,K为信息比特长度(1/2码率时K = 4608,3/4 码率时 K = 6912)。CMMB系统中同时采用了 RS (Reed Solomon,里德-索洛蒙)码作为外码与LDPC码 组成级联码,编码流程如图2所示。RS码的每个码元取自有限域GF 056),为一(M0,k)的 截短码,k可以取值为176、192、2M和M0,根据不同的取值,可以获得不同纠错能力的RS码。LDPC码的译码一般采用基于BP算法的软判决译码算法,如归一化的Min-Sum算 法。RS码的译码方法一般包括纠错译码和纠删译码,纠删译码较之纠错译码具有更好的译 码性能。目前,针对RS码和LDPC码组成的级联码,传统的译码算法只是将LDPC码的译码 结果存入字节交织器后直接进行RS译码,因此RS码只能做纠错译码,这在一定程度上影响 级联码的译码性能。

发明内容
本发明要解决的技术问题是提供一种级联码的译码方法及装置,改善RS码和 LDPC码的级联码的译码性能,解决现有技术中级联码性能不好的问题。为了解决上述问题,本发明提供了一种级联码的译码方法,用于低密度奇偶校验 码(LDPC)和里德-索洛蒙0 )码组成的级联码的译码,所述方法包括
对比特解交织后的数据流进行LDPC软判决迭代译码,并利用校验矩阵对译码后 的LDPC码字进行校验判决;对译码后的LDPC码字的信息位进行解字节交织,并将LDPC码字的校验信息转换 成RS码字的删余信息;根据所述RS码字的删余信息选择译码模式,进行RS译码。进一步地,所述利用校验矩阵H对译码后的LDPC码字进行校验判决是指如果所述校验矩阵H与译码后的硬判决码字C的转置矩阵的乘积为零,则码字C 校验正确,并记录错误标记的值为正确;否则,码字C校验错误,并记录错误标记的值为错误。进一步地,所述将LDPC码字的校验信息转换成RS码字的删余信息是指将每一个LDPC码字对应的错误标记重复L次作为其所对应列的删余信息,其中, 所述L为LDPC码字的信息位长度与交织器列长度的比值,L为正整数。进一步地,所述根据RS码字的删余信息选择译码模式是指如果待删余位置信息的个数在RS纠删译码的可纠正范围内,则选择纠删译码模 式;否则,选择纠错译码模式。进一步地,所述RS纠删译码的可纠正范围是指所述待删余位置信息的个数小于 等于RS校验位的个数。进一步地,所述对译码后的LDPC码字进行解字节交织是指将所述译码后的LDPC码字按列顺序写入交织器,按行顺序读出。本发明还提供了一种级联码的译码装置,包括LDPC译码模块、解字节交织模块和 RS译码模块,所述装置还包括LDPC码字校验判决模块和RS译码模式选择模块,其中LDPC译码模块,用以完成LDPC码的软判决迭代译码,并将完成译码后的LDPC码字 的信息位输出给解字节交织模块,译码后的LDPC码字的信息位和校验位输出给LDPC码字 校验判决模块;LDPC码字校验判决模块,用以完成译码后的LDPC码字的校验判决,并将LDPC码字 的校验信息输出给解字节交织模块;解字节交织模块,用以将LDPC码字的信息位转换为字节的形式解交织输出,并提 取RS码字给RS译码模块,以及,对LDPC码字检验信息进行处理,将LDPC码字校验信息转 换成RS码字的删余信息,并输出给RS译码模式选择模块;RS译码模式选择模块,用以根据解字节交织模块输出的RS码字的删余信息完成 RS译码模式的选择,并将选择结果输出给RS译码模块;RS译码模块,用以根据RS译码模式选择模块输出的选择结果完成RS码字的纠错 或纠删译码。进一步地,所述LDPC码字校验判决模块,用以利用校验矩阵H对译码后的LDPC码 字按照以下方式进行校验判决如果所述校验矩阵H与译码后的硬判决码字C的转置矩阵的乘积为零,则码字C 校验正确,并记录错误标记的值为正确;否则,码字C校验错误,并记录错误标记的值为错误。进一步地,所述解字节交织模块,用以按照以下方式将LDPC码字的校验信息转换成RS码字的删余信息将每一个LDPC码字对应的错误标记重复L次作为其所对应列的删余信息,其中, 所述L为LDPC码字的信息位长度与交织器列长度的比值,L为正整数。进一步地,所述RS译码模式选择模块,用以按照以下方式完成RS译码模式的选 择如果待删余位置信息的个数在RS纠删译码的可纠正范围内,则选择纠删译码模 式;否则,选择纠错译码模式。采用本发明所述的RS码与LDPC码组成的级联码的译码方案,可以在不增加计算 复杂度的情况下提高RS译码的性能,从而使CMMB终端接收性能较之传统方法有很大提高。


图1是现有数字通信系统的仿真模型图;图2是现有技术的CMMB系统中信道编码流程图;图3是本发明实施例的级联码的译码装置的示意框图;图4是本发明译码方法与传统译码方法的性能对比仿真图。
具体实施例方式本发明提供了一种级联码的译码方法,应用于RS码和LDPC码组成的级联码的译 码,可适用于CMMB系统中,其主要包括如下步骤步骤a,对比特解交织后的数据流进行LDPC软判决迭代译码,并利用校验矩阵H对 译码后的LDPC码字进行校验判决;步骤b,对译码后的LDPC码字的信息位进行解字节交织,并将LDPC码字的校验信 息转换成RS码字的删余信息;步骤c,根据RS码字的删余信息选择译码模式,进行RS译码。其中,步骤a中,LDPC译码操作可选择基于BP算法的软判决译码算法,并可通过 模2和的运算对译码后的LDPC码字(即硬判决码字C,包括信息位和校验位)进行奇偶校 验如果校验矩阵H与硬判决码字C的转置矩阵的乘积为零,则码字C校验正确,否则,码 字C校验错误。具体地,假设译码后输出的硬判决码字C为一长度为N的行向量,校验矩阵 H为M行N列的矩阵,如果H · Ct = Ot,则码字C校验正确,同时将其对应的错误标记err_ flag设为0,表示码字C译码正确;否则,设err_flag的值为1,表示码字C译码错误。进一步地,步骤b中,对LDPC码字进行解字节交织具体是指将译码后的LDPC码 字的信息位转换成字节的形式解交织输出。由于LDPC码字在字节交织器中是按列存放的,根据CMMB协议可知,每一个LDPC 码字的信息位长度都是交织器列长度的L倍(L为正整数),因此,可采用如下方式将LDPC 码字的校验信息转换成RS码字的删余信息将每一个LDPC码字对应的错误标记err_f lag 重复L次作为其所对应列的删余信息。进一步地,步骤c中,根据RS码字的删余信息选择译码模式的过程具体包括如果RS码字的删余信息的个数在RS纠删译码的可纠正范围内,则选择纠删译码 模式;否则,选择纠错译码模式。其中,所述的RS纠删译码的可纠正范围是指待删余位置信息的个数小于等于RS校验位的个数。进一步地,上述的待删余位置是指通过err_flag得到的一个序列中错误标记 (err_flag为1)的位置,而待删余位置信息的个数则是指这个序列中错误标记的个数。下面结合附图及具体实施例对本发明技术方案的实施作进一步详细描述。如图2所示,本发明实施例提供的级联码的译码装置包括LDPC译码模块,用以完成LDPC码的软判决迭代译码,并将完成译码后的LDPC码字 的信息位输出给解字节交织模块,译码后的LDPC码字的信息位和校验位输出给LDPC码字 校验判决模块;LDPC码字校验判决模块,用以完成译码后的LDPC码字的校验判决,并将LDPC码字 的校验信息输出给解字节交织模块;解字节交织模块,用以将LDPC码字的信息位转换为字节的形式解交织输出,并提 取RS码字给RS译码模块,以及,对LDPC码字检验信息进行处理,将LDPC码字校验信息转 换成RS码字的删余信息,并输出给RS译码模式选择模块;RS译码模式选择模块,用以根据解字节交织模块输出的RS码字的删余信息完成 RS译码模式的选择,并将选择结果输出给RS译码模块;RS译码模块,用以根据RS译码模式选择模块输出的选择结果完成RS码的纠错或 纠删译码。其中,上述的LDPC译码模块用于在接收端的比特解交织输出之后,用于完成LDPC 码的软判决迭代译码,并且输出硬判决码字C。其中,上述的LDPC码字校验判决模块根据LDPC译码模块输出的硬判决码字C和 LDPC校验矩阵H,通过模2和计算完成对码字C的奇偶校验判决。假设C为一长度为N的 行向量,H为M行N列的矩阵,如果H · Ct = Ot,则码字C校验正确,同时将其对应的错误标 记err_flag设为0 ;否则,设err_flag = 1,表示码字C译码错误。其中,上述的解字节交织模块分别与LDPC译码模块及LDPC码字校验判决模块的 输出相连,用于将LDPC译码结果的信息位转换成字节的形式解交织输出,同时将LDPC码字 的检验信息转换成RS码字的删余信息输出。由于LDPC码字在字节交织器中是按列存放的, 根据CMMB协议可知,每一个LDPC码字的信息位长度都是交织器列长度(即行数)的L倍 (L为一整数值),将每一个LDPC码字对应的错误标记err_flag重复L次作为其所对应列 的删余信息。其中,上述的RS译码模式选择模块是根据解字节交织模块输出的删余信息进行 判断,选择对应的译码模式如果待删余位置信息的个数在RS纠删译码可纠正范围内,则 选择纠删译码模式;否则,选择纠错译码模式。所述的RS纠删译码的纠正范围是指RS码的 删余信息的个数小于等于RS校验位的个数。 其中,上述的RS译码模块分别与解字节交织模块和译码模式选择模块相连,RS译 码模块可进行纠错译码及纠删译码两种译码模式,根据RS译码模式选择模块的输出决定 相应译码模式的运算。以下将结合具体实施例对本发明的级联码的译码方法作更进一步详细阐述。本实施例的译码方法可适用于CMMB系统,其主要包括以下步骤步骤101,完成比特解交织后数据流的LDPC译码操作,并输出硬判决码字C ;
其中,LDPC译码模块的输入为比特的对数似然比信息,LDPC译码操作可选择目 前已有的基于BP算法的软判决译码算法,LDPC译码完成后输出的硬判决码字C的长度为 9216比特。步骤102,利用校验矩阵H对硬判决码字C进行奇偶校验;对于1/2码率的LDPC码,H为一 4068行9216列的矩阵;对于3/4码率的LDPC码, H为一 2304行9216列的矩阵。如果H · Ct = Ot,则码字C校验正确,同时将其对应的错误标记err_flag设为0 ; 否则,设err_flag= 1,表示码字C译码错误。其中,H与C的乘积可以看作一系列模2和 的运算,其计算方式为将H的每一行非零元素的位置所对应的码字C的值求和并做模2运 算,如果所有行的计算结果都为0,则H *CT = Ot ;如果运算过程中出现某一行计算结果不为 0的情况,则码字C译码错误,随之可以停止后续的模2和运算。步骤103,将LDPC译码结果的信息位转换成字节的形式解交织输出,同时将LDPC 码字的检验信息转换成RS码字的删余信息;其中所述的字节转换方式为将LDPC码字的信息位每8比特分为一组,将每一组 按照低位优先的次序转换为GF056)域中的表示形式。其中所述的解交织方式为LDPC码字按列顺序写入交织器,按行顺序读出。其中所述的LDPC码字的校验信息转换成RS码字的删余信息的具体实现步骤为 设LDPC码字的信息位比特长度为M,则字节长度为M/8 ;设字节交织器的行数为R,一个 LDPC所占用的字节交织器的列数为L = M/ (8R)。将每一个LDPC码字对应的错误标记err_ flag重复L次作为其所对应列的删余信息。步骤104,根据转换的RS码字的删余信息进行判断,选择对应的RS译码模式;其具体实现步骤为根据上述步骤103中得到的错误标记err_flag,计算err_ flag为1的个数E,对于系统中使用的RS码来说,假设其码长为N字节,信息位长度为K字 节,如果E小于或等于N-K (即RS校验位的个数),则输出纠删译码模式选择标志;否则,输 出纠错译码模式选择标志。步骤105,根据步骤103得到的RS码字以及步骤104得到的译码模式选择标志,对 RS码字进行相应的译码操作。图4中示出了当最大多普勒频移为IOOHz时,本发明的译码方案与传统方案的性 能对比,其中,纵坐标为BER(Bit Error Rate,误码率),横坐标为SNR (Signal to Noise Ratio,信噪比),从图4中可以看出,与传统方案相比,采用本发明提供译码方案,可将译码 性能提高约0. 7dB。当然,本发明还可以有其他多种实施例,在不违背本发明实质的情况下,熟悉本领 域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属 于本发明所附的权利要求的保护范围内。
权利要求
1.一种级联码的译码方法,其特征在于,用于低密度奇偶校验码(LDPC)和里德-索洛 蒙(旧)码组成的级联码的译码,所述方法包括对比特解交织后的数据流进行LDPC软判决迭代译码,并利用校验矩阵对译码后的 LDPC码字进行校验判决;对译码后的LDPC码字的信息位进行解字节交织,并将LDPC码字的校验信息转换成RS 码字的删余信息;根据所述RS码字的删余信息选择译码模式,进行RS译码。
2.如权利要求1所述的方法,其特征在于,所述利用校验矩阵H对译码后的LDPC码字进行校验判决是指 如果所述校验矩阵H与译码后的硬判决码字C的转置矩阵的乘积为零,则码字C校验 正确,并记录错误标记的值为正确;否则,码字C校验错误,并记录错误标记的值为错误。
3.如权利要求2所述的方法,其特征在于,所述将LDPC码字的校验信息转换成RS码字的删余信息是指 将每一个LDPC码字对应的错误标记重复L次作为其所对应列的删余信息,其中,所述 L为LDPC码字的信息位长度与交织器列长度的比值,L为正整数。
4.如权利要求3所述的方法,其特征在于,所述根据RS码字的删余信息选择译码模式是指如果待删余位置信息的个数在RS纠删译码的可纠正范围内,则选择纠删译码模式;否 则,选择纠错译码模式。
5.如权利要求4所述的方法,其特征在于,所述RS纠删译码的可纠正范围是指所述待删余位置信息的个数小于等于RS校验位 的个数。
6.如权利要求1所述的方法,其特征在于,所述对译码后的LDPC码字进行解字节交织是指 将所述译码后的LDPC码字按列顺序写入交织器,按行顺序读出。
7.一种级联码的译码装置,包括LDPC译码模块、解字节交织模块和RS译码模块,其特 征在于,所述装置还包括LDPC码字校验判决模块和RS译码模式选择模块,其中LDPC译码模块,用以完成LDPC码的软判决迭代译码,并将完成译码后的LDPC码字的信 息位输出给解字节交织模块,译码后的LDPC码字的信息位和校验位输出给LDPC码字校验 判决模块;LDPC码字校验判决模块,用以完成译码后的LDPC码字的校验判决,并将LDPC码字的校 验信息输出给解字节交织模块;解字节交织模块,用以将LDPC码字的信息位转换为字节的形式解交织输出,并提取RS 码字给RS译码模块,以及,对LDPC码字检验信息进行处理,将LDPC码字校验信息转换成RS 码字的删余信息,并输出给RS译码模式选择模块;RS译码模式选择模块,用以根据解字节交织模块输出的RS码字的删余信息完成RS译 码模式的选择,并将选择结果输出给RS译码模块;RS译码模块,用以根据RS译码模式选择模块输出的选择结果完成RS码字的纠错或纠 删译码。
8.如权利要求7所述的装置,其特征在于,所述LDPC码字校验判决模块,用以利用校验矩阵H对译码后的LDPC码字按照以下方 式进行校验判决如果所述校验矩阵H与译码后的硬判决码字C的转置矩阵的乘积为零,则码字C校验 正确,并记录错误标记的值为正确;否则,码字C校验错误,并记录错误标记的值为错误。
9.如权利要求8所述的装置,其特征在于,所述解字节交织模块,用以按照以下方式将LDPC码字的校验信息转换成RS码字的删 余fe息将每一个LDPC码字对应的错误标记重复L次作为其所对应列的删余信息,其中,所述 L为LDPC码字的信息位长度与交织器列长度的比值,L为正整数。
10.如权利要求9所述的装置,其特征在于,所述RS译码模式选择模块,用以按照以下方式完成RS译码模式的选择 如果待删余位置信息的个数在RS纠删译码的可纠正范围内,则选择纠删译码模式;否 则,选择纠错译码模式。
全文摘要
本发明公开了一种级联码的译码方法及装置,用于低密度奇偶校验码(LDPC)和里德-索洛蒙(RS)码组成的级联码的译码,所述方法包括对比特解交织后的数据流进行LDPC软判决迭代译码,并利用校验矩阵对译码后的LDPC码字进行校验判决;对译码后的LDPC码字的信息位进行解字节交织,并将LDPC码字的校验信息转换成RS码字的删余信息;根据所述RS码字的删余信息选择译码模式,进行RS译码。采用本发明方案,可以在不增加计算复杂度的情况下提高RS译码的性能,从而使CMMB终端接收性能较之传统方法有很大提高。
文档编号H03M13/29GK102130695SQ20101000343
公开日2011年7月20日 申请日期2010年1月15日 优先权日2010年1月15日
发明者姚扬中, 张涛, 曹南山, 游月意 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1