本章内容 >第七章编织码 >7.1编织码编码基本原理 >7.2编织码的译码 2
本章内容 第七章 编织码 7.1 编织码编码基本原理 7.2 编织码的译码 2
第七章编织码 >编织码(Voven Code)是在编织卷积码(1997年由三位欧洲学者提出)的 基础上发展起来的一种组合码。最早的组合编码是级联码,由Forney提出 ,其目的是找到一类纠错码及其译码算法,在R Tūrbo码的出现提供了一个性能优越的编码方法,其思想精髓被推广到其他 的编码方案中。1998年,Benedntto?提出了以卷积码为成员码的串行级联卷 积码(SCCC),该码保持了Turbo码在低信噪比时的最大似然译码性能, 同时消除了Tbo码在高信噪比时的“误码平台”效应。除了以卷积码为分 量码外,还可以用分组码作分量码,Pyndiah提出了分组Turbo码。于是, 在这样的思路引导下,Hos提出了编织卷积码(WCC),又推广到更一般 的编织码,其系统结构可完全包容传统分组码、卷积码以及各类Trbo码。 3
第七章 编织码 编织码(Woven Code)是在编织卷积码(1997年由三位欧洲学者提出)的 基础上发展起来的一种组合码。最早的组合编码是级联码,由Forney提出 ,其目的是找到一类纠错码及其译码算法,在R<C的情况下使得差错概率 随码长呈指数下降,而译码复杂度呈代数关系增加,从而获得高的编码增 益。由于使用了两个或更多相对简单的成员码来构成级联码,因此,其纠 错性能和许多非级联码的长码相当。常见结构形式是内码采用约束长度短 的卷积码和最大似然译码算法,外码采用高码率的多进制RS码和代数译码 结构。 Turbo码的出现提供了一个性能优越的编码方法,其思想精髓被推广到其他 的编码方案中。1998年,Benedntto提出了以卷积码为成员码的串行级联卷 积码(SCCC),该码保持了Turbo码在低信噪比时的最大似然译码性能, 同时消除了Turbo码在高信噪比时的“误码平台”效应。除了以卷积码为分 量码外,还可以用分组码作分量码,Pyndiah提出了分组Turbo码。于是, 在这样的思路引导下,Host提出了编织卷积码(WCC),又推广到更一般 的编织码,其系统结构可完全包容传统分组码、卷积码以及各类Turbo码。 3
7.1编织码编玛基本原理 > 编织码的基本原理类似于纺织业中的织布原理,其编码结构主要有三种: 外经(Outer Warp.)、内经(Inner Warp)和斜纹(TwilI)结构。它们是 指外编码器的输出码字比特在缓冲器中以按列读出(外经)或按行读出( 内经)输入到各个内编码器。 1.Host's Ph.D thesis:On Woven Convolutional Codes.1999 2.Host,etc.Woven Convolutional Codes I:Encoder Properties.IEEE Trans. On Info.Theory.Vol.48,No.1.2002.p149-161. 3.Jordan,etc.Woven Convolutional Codes II:Decoding Aspects.IEEE Trans.On Info.Theory.Vol.50,No.10.2004.p2522-2529. 4
7.1 编织码编码基本原理 编织码的基本原理类似于纺织业中的织布原理,其编码结构主要有三种: 外经(Outer Warp)、内经(Inner Warp)和斜纹(Twill)结构。它们是 指外编码器的输出码字比特在缓冲器中以按列读出(外经)或按行读出( 内经)输入到各个内编码器。 4 1. Host’s Ph.D thesis:On Woven Convolutional Codes. 1999 2. Host, etc. Woven Convolutional Codes I: Encoder Properties. IEEE Trans. On Info. Theory. Vol.48, No.1. 2002. p149—161. 3. Jordan, etc. Woven Convolutional Codes II: Decoding Aspects. IEEE Trans. On Info. Theory. Vol.50, No.10. 2004. p2522—2529
外经结构编码沿 >外经编码器结构如下图所示,假定外编码器由K个普通二进制编码器并行级 联组成,所有成员编码器生成矩阵G(k=1,2,,K)可以相同,也可以 不同。内编码器由一个普通二进制编码器构成,其生成矩阵为G。假定外编 码器的每个子编码器的码率为R,=b,/心。,即输入信息比特数为b。,输出序列 长为c。u被分为K个b长度的数据块,即图中的 u=(u02.…2,) ,每个0=(49g…以) ,i=1,,b。,第k个成员编码器的信息序列就 为4=(u2… 这些信息子块再以并行的方式输入到K个并联 的子编码器中,每个子编码器的输出序列(长度为c。)以串行方式按行写入 缓冲器(共K行),缓冲器的输出按列读出,作为内编码器(编码速率为 R=b/C)的输入信息序列,此结构的总编码速率为R=RR。 u 5
外经结构编码器 外经编码器结构如下图所示,假定外编码器由K个普通二进制编码器并行级 联组成,所有成员编码器生成矩阵 (k=1, 2, …, K)可以相同,也可以 不同。内编码器由一个普通二进制编码器构成,其生成矩阵为Gi 。假定外编 码器的每个子编码器的码率为Ro=bo/co,即输入信息比特数为bo,输出序列 长为co。u被分为K个bo长度的数据块,即图中的 ,每个 , 第k个成员编码器的信息序列就 为 ,这些信息子块再以并行的方式输入到K个并联 的子编码器中,每个子编码器的输出序列(长度为co )以串行方式按行写入 缓冲器(共K行),缓冲器的输出按列读出,作为内编码器(编码速率为 Ri =bi /ci )的输入信息序列,此结构的总编码速率为R=RoRi 。 5 o Gk ( ) () () () () 1 2 , 1,..., i ii i K o u uu u i b = = ( ) (1) (2) ( ) ob u uu u = ( ) (1) (2) ( ) o o b k kk k u uu u = 1 o u 2 o u o K u o Kv ... 1 o G 2 o G 2 o v o GK 1 o v... 1 o v 2 o v o Kv ... i u o u i G i u i v
内经结构编巧沿 >与外经结构相反,内经结构中是由一个二进制编码器作为外编码器,K 个并联二进制编码器构成内编码器。外编码器的输出码序列按列写入缓 冲器(共K行),作为K个并联内编码器的信息序列。外编码器的编码速 率为R,=b,/c。,内编码器的编码速率为R=b/心,则内经编码器的总的编 码速率为R=RR。 6
内经结构编码器 与外经结构相反,内经结构中是由一个二进制编码器作为外编码器,K 个并联二进制编码器构成内编码器。外编码器的输出码序列按列写入缓 冲器(共K行),作为K个并联内编码器的信息序列。外编码器的编码速 率为Ro=bo/co,内编码器的编码速率为Ri =bi /ci ,则内经编码器的总的编 码速率为R=RoRi 。 6 i Kv ... 1 i G 2 i G 2 i v i GK 1 i v... 1 i u 2 i u i K u ... o v o u o G i v o v 1 i u 2 i u i K u
斜纹结构编巧沿 > 斜纹结构是前两种结构的综合,如下图所示。外编码器由K,个码率为 R。=b。/c的二进制编码器并联组成,内编码器由K个码率为R=b/c的二进 制编码器并联组成。信息序列u被分为KKb长的子块,这些子块输入 到K,个并联的外编码器,输出按行写入缓冲器,按列读出作为内编码器 的信息序列,输入到K个并联的内编码器。斜纹编码器的总的编码速率 为R=RRo >显然,外经结构和内经结构都是斜纹结构的特殊情况。当K=1及K。>1时 为外经结构,当K>1及K。=1时为内经结构,当K=1及K。=1时为通常的级 联码结构 7
斜纹结构编码器 斜纹结构是前两种结构的综合,如下图所示。外编码器由Ko个码率为 Ro=bo/co的二进制编码器并联组成,内编码器由Ki 个码率为Ri =bi /ci 的二进 制编码器并联组成。信息序列uo被分为KoKi bo长的子块,这些子块输入 到Ko个并联的外编码器,输出按行写入缓冲器,按列读出作为内编码器 的信息序列,输入到Ki 个并联的内编码器。斜纹编码器的总的编码速率 为R=RoRi 。 显然,外经结构和内经结构都是斜纹结构的特殊情况。当Ki =1及Ko>1时 为外经结构,当Ki >1及Ko=1时为内经结构,当Ki =1及Ko=1时为通常的级 联码结构 。 7 1 o u 2 o u o o K u o o Kv ... 1 o G 2 o G 2 o v o o GK 1 o v... o u i i Kv ... 1 i G 2 i G 2 i v i i GK 1 i v... i v 1 i u 2 i u i i K u o v i u
>在斜纹结构中,K和K的值应满足:gcd(K,K)=1,如不满足, 则编织码 的经纬不能构成斜纹。 例如K。=10,K=3时,内编码器和外编码器间缓 冲器中信息分布如图(a)所示。 左边10个箭头表示外编码器,右边3个箭头表示内 编码器,缓冲器中来自外编码器的码流按行写入, 读出按列进行。即第一个码比特输入到第一个内 编码器作为它的信息比特,第二个码比特输入到 第二个内编码器,第三个码比特输入到第三个内 编码器,第四个码比特输入到第一个内编码器, 依次类推。可见,输入到相应内编码器的比特序 列在缓冲器中组成图(a)中的斜纹结构。 例如K。=10,K=4时,内编码器和外编码器间缓 冲器中信息分布如图(b)所示。 形成不了斜纹结构!相当于两个K。=5,K2的斜 纹编码器的并联。 8
在斜纹结构中,Ko和Ki 的值应满足:gcd(Ko,Ki )=1,如不满足,则编织码 的经纬不能构成斜纹。 8 例如Ko =10, Ki =3时,内编码器和外编码器间缓 冲器中信息分布如图(a)所示。 (a) (b) 左边10个箭头表示外编码器,右边3个箭头表示内 编码器,缓冲器中来自外编码器的码流按行写入, 读出按列进行。即第一个码比特输入到第一个内 编码器作为它的信息比特,第二个码比特输入到 第二个内编码器,第三个码比特输入到第三个内 编码器,第四个码比特输入到第一个内编码器, 依次类推。可见,输入到相应内编码器的比特序 列在缓冲器中组成图(a)中的斜纹结构。 例如Ko =10, Ki =4时,内编码器和外编码器间缓 冲器中信息分布如图(b)所示。 形成不了斜纹结构!相当于两个Ko =5, Ki =2的斜 纹编码器的并联
编织码的分类 > 编织码的包容性很强,具体体现在分量码型上,按其分量码型的组成可 分为两大类:一是其分量码为单一码型的,即内外码采用同样的码型; 二是其分量码为混合码型,即内外码型不同。无论是哪一类分量码型, 经过编织后所构成的新码型(编织码),其距离都得到了提高 (即纠错 能力提高)。不同的码型采用不同的交织器。 (1)编织卷积码(WCC,Woven Convolutional Code) WCC是串行级联卷级码,其内外编码器都是卷级码,总体上可视为一个卷级码,因 此可以用卷级码的性质来分析和优化。(研究最为广泛) (2)编织Turbo码(WTC) WTC的编码器结构如图所示,它由K个并行 外编码器和一个内编码器组成(都是卷级 码)。信息序列u被分为K个子块,分别作 为K个码率为R。=b。c。的外编码器的输入,u 外编码器的部分输出序列y0 (k=1, 2,,K组成内编码器的输入序列u,其他 输出序列y(2)(k=1,2,K直接与内编码 器的输出V一起组成最终的编织码v。 9
编织码的分类 编织码的包容性很强,具体体现在分量码型上,按其分量码型的组成可 分为两大类:一是其分量码为单一码型的,即内外码采用同样的码型; 二是其分量码为混合码型,即内外码型不同。无论是哪一类分量码型, 经过编织后所构成的新码型(编织码),其距离都得到了提高(即纠错 能力提高)。不同的码型采用不同的交织器。 9 (1)编织卷积码(WCC,Woven Convolutional Code) WCC是串行级联卷级码,其内外编码器都是卷级码,总体上可视为一个卷级码,因 此可以用卷级码的性质来分析和优化。(研究最为广泛) (2)编织Turbo码(WTC) WTC的编码器结构如图所示,它由K个并行 外编码器和一个内编码器组成(都是卷级 码)。信息序列u被分为K个子块,分别作 为K个码率为Ro=bo/co的外编码器的输入, 外编码器的部分输出序列 (k =1, 2, …,K)组成内编码器的输入序列ui ,其他 输出序列 (k=1,2,…,K)直接与内编码 器的输出vi一起组成最终的编织码v。 o,(1) k v o,(2) k v 1 o u 2 o u o K u o,(1) Kv ... 1 o G 2 o G ,(1) 2 o v o GK ,(1) 1 o v ... u ,(2) 1 o v ,(2) 2 o v o,(2) Kv i G v i u i v o,(2) v
(3)编织分组码(WBC) WBC编码器如下图所示,外码编码器由K个分组码编码器或者卷级码编码器组成, 内码编码器由一个卷级码编码器构成,交织器按行交织。 交织器 1 交织器 交织器 (4)串行级联码(SCC,Serial Cascaded Code) SCC编码器如下图所示,由内外码编码器及交织器级联组成,它可看成编织码的特 例。 交织器 10
10 (3)编织分组码(WBC) WBC编码器如下图所示,外码编码器由K个分组码编码器或者卷级码编码器组成, 内码编码器由一个卷级码编码器构成,交织器按行交织。 (4)串行级联码(SCC, Serial Cascaded Code) SCC编码器如下图所示,由内外码编码器及交织器级联组成,它可看成编织码的特 例。 1 o u 2 o u o K u o Kv ... 1 o G 2 o G 2 o v o GK 1 o v ... o u 交织器 交织器 交织器 1 o v 2 o v o Kv i G i u i v i G i v 交织器 i o u v o u o G
7.2编织码的译玛 >以编织卷积码为例,讲解译码原理。WCC的译码与其编码特性有关,由 于WCC为组合编码,其译码可以采用Trbo码的译码方式,将各个成员 码分离出来分别进行译码,最后再将各译码器的值按一定的方式组合, 就可得到最终的译码结果;也可采用内外译码器迭代的方式来提高译码 的准确性。 >WCC的译码主要有三种:传统的软输入软输出Viterbit译码(SOVA)山 、SW-BCJR译码算法I和pipeline译码算法l。 1.S.Benedetto,etc.A soft-input soft-output APP module for iterative decoding of concatenated codes.IEEE Communications letters.Vol.1,No.1,1997.p22-24. 2.S.Benedetto,etc.Soft-output Decoding Algorithms in Iterative Decoding of Turbo Codes.TDA Progress Report.1996.p63-87. 3.R.Jordan,etc.Pipeline Decoding of Woven convolutional codes. Proc.3rd ITG Conf.Sour ce,Channel Coding.Munich,2000. 11
7.2 编织码的译码 以编织卷积码为例,讲解译码原理。WCC的译码与其编码特性有关,由 于WCC为组合编码,其译码可以采用Turbo码的译码方式,将各个成员 码分离出来分别进行译码,最后再将各译码器的值按一定的方式组合, 就可得到最终的译码结果;也可采用内外译码器迭代的方式来提高译码 的准确性。 WCC的译码主要有三种:传统的软输入软输出Viterbi译码(SOVA)[1] 、SW-BCJR译码算法[2]和pipeline译码算法[3]。 11 1. S. Benedetto, etc. A soft-input soft-output APP module for iterative decoding of concatenated codes. IEEE Communications letters. Vol.1, No.1, 1997. p22-24. 2. S. Benedetto, etc. Soft-output Decoding Algorithms in Iterative Decoding of Turbo Codes. TDA Progress Report. 1996. p63-87. 3. R. Jordan, etc. Pipeline Decoding of Woven convolutional codes. Proc. 3rd ITG Conf. Sour ce, Channel Coding. Munich, 2000