一种咬尾阶梯码的编码及解码方法

文档序号:9670465阅读:1535来源:国知局
一种咬尾阶梯码的编码及解码方法
【技术领域】
[0001] 本发明属于数字通信系统中的信道编码领域,设及应用差错控制编码W降低传输 误码率的数字通信系统,更为具体的是,设及信道编码的一种新型的编解码方案。
【背景技术】
[0002] 为减少信息在传输过程中发生的各种突发和随机的错误,差错控制编码是一种重 要的方式。差错控制编码包含分组码、卷积码等子类,具有不同的检错纠错能力。乘积码是 纠错码中重要的一个分支,它通过交织器实现对信息位的迭代编码,能显著增强编码增益, 但编解码过程十分复杂。
[0003] 由BenjaminP.Smith等人提出的阶梯码(staircasecode)是一类具有卷积性质 的乘积码,适用于IOOGbps的高速光通信系统,相对于普通的乘积码而言具有比较低的复 杂度,同时保证了比较高的纠错能力和编码增益。
[0004] 阶梯码的编码过程如下: 阳005] 1. 1将BCH(1023, 993)码的生成多项式
[0006] g(x) = (x^°+x^+l) (x^°+x^^+x+l) (x^°+x*^+x^+x^+x+l)
[0007] 增加额外的两位校验位,构成生成多项式为
[0008] g(X) = (xl°+x3+l) (x"+x3+x2+x+l) (X"+xS+x3+x2+X+l)(义2+1)
[0009] 的BCH(1023, 991)码,再将其中I位信息位固定构成缩短的BCH(1022, 990)码,作 为分量码。
[0010] 1. 2将接收到的信息每498X512位分为一组,分别填充进大小为512X498的矩 阵(此处W及之后对矩阵大小的表示均遵循"行数X列数"的顺序)中,运些矩阵记作 Bi,L,Bz,L,…,B。,L(n〉〇)。 W11] 1.3将大小为512X512的全零矩阵作为参照,将矩阵Bi,,的数据拼接在迟^的右 边,构成一个大小为512X990的矩阵,记作Ai。使用1. 1中的分量码对矩阵Al的每一行编 码,得到的校验位构成大小为512X32的矩阵Bi,k,将8^拼接在B1,^右边,构成的矩阵记作 Bi,如图1所示。 阳〇1引I.4在矩阵巧的底端增加2XS12的全零矩阵,再将矩阵B2,l拼接在其右边,构成 一个大小为512X990的矩阵,记作Az。按1. 3中的方式对矩阵Az的每一行编码,得到的校 验位构成大小为512X32的矩阵B2,k,将B2,k拼接在B2,l右边,构成的矩阵记作B2,如图2所 /J、-O
[0013] 1. 5按照1. 4中的方式类推,构造矩阵As,A4,…,A"(n〉0),并对其编码。传输每次 编码后得到的矩阵Bi, Bz, Bs,…,Bn(n〉0)。
[0014] 阶梯码的编码具有乘积码的特点,即每一个信息位包含于行列两个分量码之中, 同时,每一个矩阵都与前后的矩阵互相关联,具有卷积码的特点。
[0015] 对阶梯码的解码是在一个长度为L的滑窗中完成的,具体方式如下。
[0016] 2.I首先将L个接收到的矩阵Bi,B2,B3,…,B,存入滑窗,按照编码方案中同样的方 式构造矩阵\,对其中的每一行进行解码,再对矩阵Au中的数据进行解码,如此反复,直至 将矩阵Al中的每一行解码,将此称之为一个迭代过程。
[0017] 2. 2反复重复2. 1的迭代过程,直至没有错误或者迭代次数达到上限。至此,对Bi 的解码完成,输出Bi。
[001引 2. 3接受一个新的矩阵Bw,将滑窗中的数据更新为Bz,Bs,Ba,…,Bw,按照同样的 方式,对Bz进行解码,直至将所有数据解码完成,输出解码得到的数据。
[0019] 阶梯码的码率为239/255,每一帖数据(130560位)中含有122368位信息位 和8192位校验位,符合ITU-T推荐标准G. 709,在输出误码率为10IS时的净编码增益为 9. 41地,距离香农限只有0. 56地。
[0020] 但是,阶梯码的解码过程包含W下两个问题。
[0021] 1)为了保证纠错的能力,必须使滑窗的长度增加,但解码过程中需要对L个矩阵 迭代解码W完成一个矩阵的输出,增加L会造成很大的时延。
[0022] 2)考虑图3所示的情况,假设此时滑窗内包含了Bi到BW四个矩阵,且每一行 (列)的分量码最多能纠正3个错误。则此时运四个矩阵内的错误都无法被纠正,运些未纠 正的错误会影响之后矩阵的解码。也就是由于阶梯码的卷积特性,一个矩阵内的错误会一 直影响之后的解码过程,降低了整体的性能。

【发明内容】

[0023] 为了克服阶梯码在解码过程中的时延问题和未纠正错误对整体性能的影响,本发 明提供了一种咬尾阶梯码编解码及解码方法,能够保证在与阶梯码相近纠错能力的基础 上,缩短解码的时延,并且利用分组码的特性使得每一组的解码相互独立,降低未纠正错误 对整个解码过程的干扰。
[0024] 所述咬尾阶梯码编码方法,包括如下步骤
[00巧]1)选择一种(n,k)线性分组码作为分量码,其中n代表码长,nG(500, 5000),k 代表编码前信息长度; W26]。按照阶梯码中的方式对接受到的信息进行分组,构造矩阵Bi,B2,Bs,… ,B。(n〉0),先在第一个矩阵Bi的下方添加一个参与编码的全零矩阵,接着用分量码对剩余矩 阵进行编码,编码的同时产生校验位矩阵,再将分组内最后一个矩阵与第一个矩阵编码完 成首尾的衔接,最后用得到的校验位矩阵替代Bi内补充的全零矩阵,完成编码。
[0027] 所述咬尾阶梯码编码方法的进一步设计在于,所述步骤2)中,具体包括如下步 骤:
[0028] A)将接收到的信息按照一定长度分组,分别填充进相同大小的初始矩阵中,每个 矩阵的大小应为i
,利于应用步骤1)中的(n,k)分组码进行编码,所述初始矩阵记 作Bi,l,Bz,L,…,B。,L(n〉〇);
[0029] B)在矩阵及的下方增加一个大小办
惭全零矩阵,再将矩阵Bz,诚接 在其右边,构成一个大小为fXfe的待编码矩阵,记作As,该矩阵的每一行长度等于k,即等 于分量码所需的信息长度。再使用所述分量码对矩阵As的每一行编码,得到的校验位构成 一个大小为
I校验矩阵,记作B2,k,再将B2,k拼接在B2,l右边,构成的矩阵记作B2;
[0030]C)将矩阵Bs, 接在fi[右边,构成一个新的待编码矩阵,记作As,使用所述分量码 对矩阵As的每一行编码,得到的校验位构成一个新的校验位矩阵,记作B3,K,再将Bs,K拼接 在B3,l右边,构成的矩阵记作B3; 阳03UD)重复步骤C)构造矩阵A4,As,…,A。(n〉0),并对A。进行编码;
[0032] 巧将矩阵BiJ并接在在最后一个矩阵编码后得到的矩阵巧右边,构成最后一个 待编码的矩阵,记作Al,使用所述分量码对矩阵Al的每一行编码,得到的校验位构成一个 校验矩阵,记作\k,再将拼接在BW右边,构成的矩阵记作B1,最后传输得到的矩阵 Bi,Bz,Bs,…,Bn(n〉0)。
[0033] 所述咬尾阶梯码编码方法的进一步设计在于,矩阵B^, …,B。,^勺大小为
,待编码矩阵的大小为
矩阵Bi,Bz,Bs,…,B。的大小为
,同时,也可W通过对矩阵内的信息填零来降低码率,W满足传输的要求。
[0034] 所述咬尾阶梯码编码方法的进一步设计在于,最后一个矩阵和第一个矩阵编码后 得到的校验矩阵仅被包含在一个分量码之中。
[0035] 所述咬尾阶梯码编码方法的进一步设计在于,包括如下步骤:
[0036] 1)选择一种(n,k)线性分组码作为分量码,其中n代表码长,nG(500, 5000),k 代表编码前信息长度;
[0037] 。通过阶梯码中的方式构造矩阵Bi,Bz,Bs,…,B?0),先对第一个矩阵Bi与第 二个矩阵Bz的上
行编码,在编码同时得到校验位矩阵,接着在得到的校验矩阵下方添 加一个参与之后的编码的全零矩阵,剩余矩阵的编码方式与阶梯码相同,最后将分组内最 后一个矩阵与第一个矩阵编码完成首尾的衔接,再将得到的校验矩阵与第二个矩阵Bz的下 n-k行编码,最后用得到的校验矩阵替代之前在校验矩阵中添加的全零矩阵,完成编码。
[0038] 所述咬尾阶梯码编码方法的进一步设计在于,所述步骤2)中具体包括如下步骤: W39]a)将矩阵B2,l最上方的
行拼接在矩阵的右边,得到一个大小为
的待编码矩阵,记作As,1,使用所述分量码对矩阵As,1的每一行编码,得到的校验 位构成一个校验矩阵,记作Bz,K1,将Bz,Ki的下方增加一个大小(n-k)X(n-k)为的全零矩阵, 再将其拼接在日2,^右边,构成的矩阵记作B2;b)将矩阵B3,^^接在矩阵技|^右边,构
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1