多码长多码率的低密度奇偶校验码的编码方法

文档序号:7525796阅读:138来源:国知局
专利名称:多码长多码率的低密度奇偶校验码的编码方法
技术领域
本发明涉及一种多码长多码率的低密度奇偶校验码的编码方法,尤其涉及一种以码长为2032比特、码率为1/2的低密度奇偶校验码为核心的扩展编码,是一种用于纠正信道差错数据的高效编码方法,属于通信信道编码技术领域。

背景技术
在数字通信系统中,使用信道编码方法,可以有效地解决数据传输和存储中的可靠性问题。在当前已有的信道编码方法中,低密度奇偶校验码(Low-Density Parity-Check code,以下简称LDPC码)编码具有最为强大的纠错能力,这是目前已知最接近香农限(信道容量)的编码方法,具有很强的应用前景。
LDPC码是一种随机分组码,没有特定的生成多项式和校验多项式。LDPC码采用超稀疏随机矩阵作为校验矩阵。一个LDPC码由该校验矩阵进行定义。当校验矩阵确定后,对应确定一种LDPC码,同时也确定了该LDPC码的编码方法。LDPC码的编码方法具体阐述如下 设超稀疏随机矩阵H为LDPC码的校验矩阵(定义H为M×N维二进制超稀疏随机矩阵,M为LDPC校验序列的长度,N为LDPC码序列的长度),输入的信息序列S为I0,I1,...,IK-1,通过校验矩阵计算得到校验序列P为P0,P1,...,PM-1最终形成LDPC码序列C C=(v0,v1,...vN-1)=(I0,I1,...,IK-1,P0,P1,...,PM-1), 式中,K为LDPC码序列中信息序列的长度。
在分组码中,校验矩阵与LDPC码序列的关系可以表示为 H·CT=0(1) 即是 令HM×N=[H1,H2],其中H1为M×K维矩阵,H2为M×M维矩阵, 则 上式中,T为转置符号,-1为求逆符号。由式(3)可知,当超稀疏随机校验矩阵H确定时,对于任意的信息序列I0,I1,...,IK-1,可得到对应的校验序列P0,P1,...,PM-1,从而得到对应的LDPC码字。因此,校验矩阵一旦确定,对应的LDPC编码方法随即确定。由此可以得出,校验矩阵的设计就是LDPC编码方法的设计。
目前,在LDPC校验矩阵的设计过程中,面临很多挑战。这是因为LDPC码是一种随机码,其校验矩阵中非零元素的位置是按照一定规律随机生成。其非零元素的随机性直接决定了编码方法的复杂度以及误码性能。在设计过程中,如果校验矩阵设计得非常规则,则对应的编码方法实现简单,但带来的缺点是误码性能会变得很差;如果校验矩阵中非零元素的位置设计得随机性高,则误码性能可大大提高,但对应的编码方法的实现复杂度必然很高。因此,如何设计LDPC码的超稀疏校验矩阵,使得对应的编码方法在保证误码性能的同时,实现复杂度低,这是一个值得深入研究的问题。
现有的LDPC校验矩阵构造方法有两类。第一类方法基于完全随机构造的校验矩阵。该校验矩阵可采用RU算法进行编码为首先对该校验矩阵进行行列位置交换(可保持矩阵的稀疏性),经行列交换后的校验矩阵如图1所示。该矩阵为(N-K)×N维,使用该矩阵能对长度为K的信息序列进行编码,产生长度为N-K的校验序列,最终生成码长为N的码字。经行列变换后校验矩阵分为6个子矩阵,其中(N-K-g)×(N-K-g)维的子矩阵T具有下三角形式(即上三角全为0)。利用此校验矩阵进行编码如下 首先,接收来自信息源的信息序列S,其中S长度为K; 其次,利用图2的校验矩阵对信息序列S进行编码以求得校验序列P1和P2,其中校验序列P1和P2长度分别为g和N-K-g; 校验序列P1、P2计算公式如下 P1T=-Φ-1(-ET-1AST+CST) P2T=-T-1(AST+BP1T) Φ=-ET-1B+D,|Φ|=0(4) 其中|Φ|为行列式计算; 最后,将信息序列S和生成的校验序列P1、P2合成码字C=(S,P1,P2)输出。
该LDPC编码方法充分保留了LDPC校验矩阵的随机特性,能有效地保障误码性能,其缺点是实现复杂度高。在硬件实现的过程中,运算复杂,不利于推广使用。
另一类方法是基于半随机构造的校验矩阵。本申请人提出了一种非规则低密度奇偶校验码的系统码设计方法及通信系统(中国专利号CN100364237C),在该专利中公开了这种校验矩阵的构造方法。通过该方法构造的校验矩阵具有优良的特性,在对应的编码方法实现复杂度和误码性能两方面都能达到很好的效果,其校验矩阵H的结构如图2所示。该矩阵为(N-K)×N维,使用该矩阵能对长度为K的信息序列S进行编码,产生长度为N-K的校验序列P,最终生成码长为N的码字C。该校验矩阵由两个子矩阵A、B组成,其中A子阵是由一基矩阵扩展而成的(N-K)×K维超稀疏矩阵,B子阵为具有类似双对角线形式的(N-K)×(N-K)维矩阵。


则此校验矩阵H表示为
利用该校验矩阵的编码方法简述如下 首先,接收来自信息源的信息序列S,其中S长度为K; 其次,按照计算公式对信息序列S进行编码以求得校验序列P,其中校验序列P长度为N-K。
其计算公式如下 其中
最后,将信息序列S和生成的校验比特P合成码字C=(S,P)输出。
由于矩阵A是一个超稀疏矩阵,且E-1是一个下三角矩阵,与矩阵的乘积可以通过一个简单的卷积电路通过时分复用的方式即可实现。因此,整个编码过程复杂度非常低,非常有利于超大规模集成电路(VLSL)的实现。
使用该专利提出的方法,能得到在各种码长以及各种码率下具有优良的结构特性的校验矩阵,根据这些校验矩阵进行编码,编码方法简单,复杂度低,且具有良好的误码性能。但是,这类编码方法对校验矩阵的设计提出了更为苛刻的要求,即要求对校验矩阵中的A子阵进行细致优化设计,在规则结构和非零元素随机分布之间取得折衷,达到保证误码性能的同时,编码方法实现复杂度低的效果。


发明内容
本发明的目的是提出高码率低密度奇偶校验码的低复杂度编码方法,以克服已有技术实现复杂度高的缺点,使误码性能优异,同时降低编码的复杂度。
本发明提出的多码长多码率的低密度奇偶校验码的编码方法,用于将长度为KC比特的信息序列编码成为长度为NC比特的码序列,包括以下步骤 (1)对长度为KC比特的信息序列进行预处理,若KC>1016,将KC个信息比特分成t组,使得


为向下取整,其中t-1组信息序列长为

一组信息序列长为

满足

在t-1组长为

的信息序列后面填充

个0,长为

的信息序列后面填充

使得每个信息序列长度为1016比特; 若KC<1016,则在序列后面填充1016-KC个0,使得信息序列长度为1016比特; (2)建立一个校验矩阵H
其中,

A1016×1016由基矩阵Ab扩展得到,扩展系数L为127,基矩阵Ab中每一个零元素扩展为127×127维全零阵,非零元素利用迦罗华域GF(27)扩展为127×127维非零子阵,扩展时对应的偏置因子和跳转因子如下表所示
上述表格中,第一个元素为偏置因子,第二个元素为跳转因子,斜线表示该位置没有偏置及跳转因子,在基矩阵Ab中对应零元素; (3)根据上述长度为1016比特的信息序列S=(I0,I1,...,I1015)和校验矩阵H,计算校验序列P=(P0,P1,...,P1015) 计算公式为 . . . . . . . . . . . . …… . . . . . . 上述公式中,符号

表示二进制的模二加法; (4)将上述信息序列S和校验序列P合成,得到码长为2032比特、码率为1/2的码序列C,C=(S,P); (5)在上述码长为2032比特、码率为1/2的码序列C中,删除上述填充的值为0的信息比特,若KC>1016,将进行删除处理后的t组码序列再进行叠加,得到一个码长为1016t+KC比特的码序列,若KC<1016,删除处理后得到一个码长为1016+KC比特的码序列; (6)对上述删除叠加操作后得到的码序列进行处理,若KC>1016,判断NC与1016t+KC的大小当NC>1016t+KC时,在上述码长为1016t+KC的码序列中选取NC-KC-1016t个校验比特,并在所述码长为1016t+KC的码序列后填充选取的校验比特,得到码长为NC的码序列;当NC<1016t+KC时,在上述码长为1016t+KC的码序列中选取1016t+KC-NC个校验比特并删除,得到码长为NC的码序列; 若KC<1016,判断NC与1016+KC的大小当NC>1016+KC时,在上述码长为1016+KC的码序列中选取NC-KC-1016个校验比特,并在所述码长为1016+KC的码序列后填充选取的校验比特,得到码长为NC的码序列;当NC<1016+KC时,在上述码长为1016+KC的码序列中选取1016+KC-NC个校验比特并删除,得到码长为NC的码序列。
上述方法还可以包括将得到的码长为NC的码序列

进行交织,得到码长为NC,排列顺序为

的低密度校验码。
本发明提出的多码长多码率的低密度奇偶校验码的编码方法,其优点是与已有的基于完全随机构造校验矩阵的编码方法相比,本发明的编码方法在误码性能上没有损失,甚至在局部点上误码性能更为优越。同时,与已有的基于完全随机构造矩阵的编码方法相比,本方法的实现复杂度非常低,非常有利于硬件实现,具有很强的应用前景。



图1是已有的基于完全随机构造的LDPC校验矩阵经行列交换后的形式图。
图2是已有的基于半随机构造的LDPC校验矩阵形式图。
图3是本发明方法的编码流程图。

具体实施例方式 本发明提出的多码长多码率的低密度奇偶校验码的编码方法,其流程框图如图3所示,以码长2032比特、码率为1/2的低密度奇偶校验码为核心,将长度为KC比特的信息序列编码成为长度为NC比特的码序列,包括以下步骤 (1)对长度为KC比特的信息序列进行预处理,若KC>1016,将KC个信息比特分成t组,使得


为向下取整,其中t-1组信息序列长为

一组信息序列长为

满足

在t-1组长为

的信息序列后面填充

个0,长为

的信息序列后面填充

使得每个信息序列长度为1016比特;然后,对每个长度为1016比特的序列进行编码; 除本发明中描述的信息序列分组方法外,还有多种方法可以用来对信息序列进行分组,如将KC个信息比特分成t组,使每组的信息比特长度分别为W1,W2,...,Wt,其中W1,W2,...,Wt满足如下条件 0<W1,W2,...,Wt≤1016 W=(W1+W2+...+Wt)/t Sn2=[(W-W1)2+(W-W2)2+...+(W-Wt)2]/t Sn取最小值 (2)建立一个超稀疏半随机校验矩阵H
其中,

A1016×1016由基矩阵Ab扩展而来,扩展系数L为127,基矩阵Ab中每一个零元素扩展为127×127维全零阵,非零元素的扩展基于以下原理。
设α为伽罗华域GF(2m)中的一个本原元素,并且扩展系数L=2m-1(m为素数),那么域GF(2m)中的所有元素可以表示成为0=α∞,1=α0,α1,α2,...,αL-1。此外,由于m为素数,由伽罗华域的有关定理可知,对于满足0<i<L,0≤j<L两个整数i,j,序列αi·(αj)0,αi·(αj)1,...,αi·(αj)L-1组成了域GF(2m)的所有非零元素。若m次不可约多项式f(x)是GF(2)上的一个本原多项式,设f(α)=0,则用这个关系可以构造GF(2m),其中域元素序列αi·(αj)0,αi·(αj)1,...,αi·(αj)L-1所对应的值序列f(αi·(αj)0),f(αi·(αj)1),...,f(αi·(αj)L-1)则为正整数序列1,2,...,L的一个伪随机交织,记作(f(αi),f(αj)),称f(αi)为偏置因子,f(αj)为跳转因子。利用伪随机交织序列f(αi·(αj)0),f(αi·(αj)1),...,f(αi·(αj)L-1),以L-1为非零元素的行号,f(αi·(αj)L-1)-1为非零元素的列号,可以得到一个L×L维的扩展矩阵。
由此,对应于Ab中的每一个非零元素,一旦获知其对应的偏置因子和跳转因子,则可获得一个L×L维的扩展矩阵,而对于Ab中的零元素则直接扩为L×L维全零阵。因此,矩阵A由其基矩阵Ab以及基矩阵中的每个非零元素所对应的偏置因子和跳转因子完全确定。
本发明中对应的基矩阵Ab共有40个非零元素,因而对应有40组偏置因子和跳转因子如表1所示,其中每组因子对应一个127×127维子阵。
表1
在表格中,第一个元素为偏置因子,第二个元素为跳转因子,斜线表示该位置没有偏置及跳转因子,在基矩阵Ab中对应零元素。
本发明中f(α)=1+α3+α7,本原元α=2,m=7,L=127。
(3)利用上述1016×2032维的校验矩阵H对长度为1016比特的信息序列S=(I0,I1,...,I1015)进行编码,得到长度为1016比特的校验序列P=(P0,P1,...,P1015),将信息序列S和生成的校验序列P合成,得到长度为2032比特的码序列C,其中C=(S,P),具体过程为 由于在分组码中,校验矩阵H与LDPC码序列C的关系可以表示为 H·CT=0 故
其中
由公式(6)可知,如果能获得A1016×1016,便可对应得到1016个校验比特,而矩阵A1016×1016由表1完全确定。
举例说明,在表1中,第0行第0列为121,59,即基矩阵Ab中第0行第0列的非零元素在扩展时对应的偏置因子为121,跳转因子为59。
由于在迦罗华域GF(2m)中,每个元素都可以采用本原元α的幂及其线性和α0,α1,α2,...,αm-1的形式表示。根据生成多项式f(α),每个元素都采用如下符号表示 n(α0,α1,α2,...,αm-1) 其中整数n代表αn,二进制m维向量(α0,α1,α2,...,αm-1)代表 αn=α0+α1α+...+αm-1αm-1 由于f(α)=1+α3+α7,α=2,则根据迦罗华域的表可知 偏置因子 跳转因子 其中下标d为十进制表示,下标n为迦罗华域元素表示。
因此可知i00=97,j00=89,其中i00对应于基矩阵Ab中第0行第0列的偏置因子,j00对应于基矩阵Ab中第0行第0列的跳转因子。
根据迦罗华域的表,可把域元素序列所对应的值序列依次求出,如 …… 这里用到了迦罗华域GF(2m)的一条性质若m次不可约多项式f(x)是GF(2)上的一个本原多项式,设f(α)=0,则由于,本发明涉及迦罗华域GF(27),即m为7,因此α127=1。
利用可得到Ab中第0行第0列的非零元素所扩展成的127×127维矩阵,其中第0行的非零元素位置为第120列,第1行的非零元素位置为第84列,......,第126行的非零元素位置为第17列。
因此在阵A1016×1016中,第0行第120列,第1行第84列,......,第126行第17列有非零元素。
同理,表1中第0行第1列为14,90,即基矩阵Ab中第0行第1列的非零元素在扩展时对应的偏置因子为14,跳转因子为90。
根据迦罗华域的表可知 偏置因子 跳转因子 其中下表d为十进制表示,下表n为迦罗华域元素表示。
因此可知i01=104,j01=70。
根据迦罗华域的表,可把域元素序列所对应的值序列依次求出,如 …… 利用可得到Ab中第0行第1列的非零元素所扩展成的127×127维方阵,其中第0行的非零元素位置为第13列,第1行的非零元素位置为第57列,......,第126行的非零元素位置为23列。
由于基矩阵Ab中第0行第0列的元素也对应扩展为一个127×127维的方阵,因此由Ab中第0行第1列的非零元素扩展成的127×127维方阵,在矩阵A1016×1016中的列位置需要在原基础上加上127的偏移量。因此在阵A1016×1016中在第0行第140列,第1行第184列,......,第126行第150列有非零元素。
表1中第0行第2列无对应的偏置因子和跳转因子,即该位置对应于一个127×127维的全零阵。
依次类推,由表1,可将一个8×8维的矩阵中的每一个元素都扩展为一个127×127维矩阵,最终得到一个1016×1016维的矩阵A1016×1016,再根据公式(6),即可求出1016个校验比特的值。
进一步说明如下 在确定1016×1016维矩阵A1016×1016后,结合校验矩阵
其中
可知校验矩阵H1016×2032的第0行在第120列,第140列,第576列,第774列,第937列和第1016列的位置值为1,由公式(6) v120+v140+v576+v774+v937+v1016=0 即I120+I140+I576+I774+I937+p0=0 由此 符号

表示二进制模二加法,即是逻辑上的异或。
校验矩阵H1016×2032的第1行在第84列,第184列,第595列,第849列,第1014列,第1016列和第1017列的位置值为1,由公式(6) v84+v184+v595+v849+v1014+v1016+v1017=0 即I84+I184+I595+I849+I1014+p0+p1=0 由此 同理可依次得出p2、p3、...、p1015的计算公式,如下所示。
. . . . . . . . . . . . …… . . . . . . 上述公式中,符号

表示二进制的模二加法; 当计算校验比特值p127n(n=0,1,2,3,4,5,6,7)时,根据所述公式,将存储的信息序列中对应的信息比特读取出来进行模二加法运算,即得到所求的校验比特值p127n; 计算其余校验比特值时,根据所述公式,将存储的信息序列中对应的信息比特读取出来进行模二加法运算,然后与该校验比特的前一校验比特值进行模二加,运算结果为该校验比特值; (4)将信息序列S和计算得到的校验序列P合成,最后得到码长为2032比特、码率为1/2的码序列C,C=(S,P); (5)在上述码长为2032比特、码率为1/2的码序列C中,删除上述填充的值为0的信息比特,若KC>1016,把上述得到的t组码长为2032比特的码序列中,在每个码序列的信息序列S里填充的0删除,得到t-1组码长为

的码序列,一组码长为

的码序列,然后进行叠加,得到一个码长为1016t+KC比特的码序列;若KC<1016,把上述得到的码长为2032比特的码序列中,信息序列S的后1016-KC个比特删除,得到一个码长为1016+KC的码序列; (6)对上述删除叠加操作后得到的码序列进行处理,若KC>1016,判断NC与1016t+KC的大小当NC>1016t+KC时,在上述码长为1016t+KC的码序列中选取NC-KC-1016t个校验比特,并在所述码长为1016t+KC的码序列后填充选取的校验比特,得到码长为NC的码序列;当NC<1016t+KC时,在上述码长为1016t+KC的码序列中选取1016t+KC-NC个校验比特并删除,得到码长为NC的码序列; 若KC<1016,判断NC与1016+KC的大小当NC>1016+KC时,在上述码长为1016+KC的码序列中选取NC-KC-1016个校验比特,并在所述码长为1016+KC的码序列后填充选取的校验比特,得到码长为NC的码序列;当NC<1016+KC时,在上述码长为1016+KC的码序列中选取1016+KC-NC个校验比特并删除,得到码长为NC的码序列。
将得到的码长为NC的码序列

进行交织,得到码长同样为NC,排列顺序为

的低密度奇偶校验码,具有与原码序列同样的特性,因此也属于本发明的保护范围。
如表2所示,与已有的基于完全随机构造校验矩阵的编码方法相比,由本发明提出的编码方法所得到的码序列其误码性能没有损失,在局部点上性能更为优越。
表2 同时,基于完全随机构造矩阵的编码方法,由式(4),可得该方法复杂度如表3、4所示,其中表3为基于完全随机构造矩阵的编码方法中P1的计算,表4为基于完全随机构造矩阵的编码方法中P2的计算。
表3
表4
而本方法计算P的实现复杂度如表5所示 表5

权利要求
1、一种多码长多码率的低密度奇偶校验码的编码方法,用于将长度为KC比特的信息序列编码成为长度为NC比特的码序列,其特征在于该编码方法包括以下步骤
(1)对长度为KC比特的信息序列进行预处理,若KC>1016,将KC个信息比特分成t组,使得
为向下取整,其中t-1组信息序列长为
一组信息序列长为
满足
在t-1组长为
的信息序列后面填充
个0,长为
的信息序列后面填充
使得每个信息序列长度为1016比特;
若KC<1016,则在序列后面填充1016-KC个0,使得信息序列长度为1016比特;
(2)建立一个校验矩阵H
其中,
A1016×1016由基矩阵Ab扩展得到,扩展系数L为127,基矩阵Ab中每一个零元素扩展为127×127维全零阵,非零元素利用迦罗华域GF(27)扩展为127×127维非零子阵,扩展时对应的偏置因子和跳转因子如下表所示
上述表格中,第一个元素为偏置因子,第二个元素为跳转因子,斜线表示该位置没有偏置及跳转因子,在基矩阵Ab中对应零元素;
(3)根据上述长度为1016比特的信息序列S=(I0,I1,…,I1015)和校验矩阵H,计算得到校验序列P=(P0,P1,…,P1015)
计算公式为
..
..
..
..
..
..
……
..
..
..
上述公式中,符号
表示二进制的模二加法;
(4)将上述信息序列S和校验序列P合成,得到码长为2032比特、码率为1/2的码序列C,C=(S,P);
(5)在上述码长为2032比特、码率为1/2的码序列C中,删除上述填充的值为0的信息比特,若KC>1016,将进行删除处理后的t组码序列再进行叠加,得到一个码长为1016t+KC比特的码序列,若KC<1016,删除处理后得到一个码长为1016+KC比特的码序列;
(6)对上述删除叠加操作后得到的码序列进行处理,若KC>1016,判断NC与1016t+KC的大小当NC>1016t+KC时,在上述码长为1016t+KC的码序列中选取NC-KC-1016t个校验比特,并在所述码长为1016t+KC的码序列后填充选取的校验比特,得到码长为NC的码序列;当NC<1016t+KC时,在上述码长为1016t+KC的码序列中选取1016t+KC-NC个校验比特并删除,得到码长为NC的码序列;
若KC<1016,判断NC与1016+KC的大小当NC>1016+KC时,在上述码长为1016+KC的码序列中选取NC-KC-1016个校验比特,并在所述码长为1016+KC的码序列后填充选取的校验比特,得到码长为NC的码序列;当NC<1016+KC时,在上述码长为1016+KC的码序列中选取1016+KC-NC个校验比特并删除,得到码长为NC的码序列。
2、如权利要求1所述的编码方法,其特征在于还包括将得到的码长为NC的码序列
进行交织,得到码长为MC,排列顺序为
的低密度校验码。
全文摘要
本发明涉及一种多码长多码率的低密度奇偶校验码的编码方法,尤其涉及一种以码长为2032比特、码率为1/2的低密度奇偶校验码为核心的扩展编码,是一种用于纠正信道差错数据的高效编码方法,属于通信信道编码技术领域。首先对长度为KC比特的信息序列进行预处理,使得信息序列长度为1016比特;建立一个校验矩阵H;根据该信息序列和校验矩阵H,计算校验序列,将信息序列S和校验序列P合成,得到码长为2032比特、码率为1/2的码序列;对码序列进行删除和叠加操作,对操作后得到的码序列进行处理,得到码长为NC的码序列。本发明编码方法的优点是在误码性能上没有损失,甚至在局部点上误码性能更为优越;实现复杂度非常低,非常有利于硬件实现,具有很强的应用前景。
文档编号H03M13/00GK101577554SQ20091008506
公开日2009年11月11日 申请日期2009年5月31日 优先权日2009年5月31日
发明者殷柳国, 陆建华, 裴玉奎 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1