包括结合多维调制的乘积码的数字传输系统与方法

申请号 CN97126056.7 申请日 1997-12-10 公开(公告)号 CN1189019A 公开(公告)日 1998-07-29
申请人 菲利浦电子有限公司; 发明人 A·曹莱; D·吉尔内拉;
摘要 数字传输系统将系统卷积码加到输入数据,以通过添加包括奇偶校验码位的冗余数据来产生带有网格封包的分组乘积码。然后,如此编码的数据被分配给经过多维数字调制的符号。在接收器端,解码装置执行沿两条路级联地实现的 迭代 解码,其方法是:计算多维数字调制的各子集的 硬判决 可靠度、以便产生 软判决 。本 发明 还涉及在这样的系统中实现的数据保护方法。用途: 有线电视 和 卫星电视 的数字传输。地面数据广播系统或在电话线上传输的系统。
权利要求

1.在数字传输系统中实现的保护输入数据的方法,所述方法包括 所述数据的编码阶段和迭代解码阶段,所述编码阶段包括容许迭代解 码的、执行系统卷积网格调制的第一步骤,所述步骤结合将编码数据 分配到数字调制符号的第二步骤,其特征在于:在第一步骤中,系统 网格编码具有编码码率P/(Q.M),其中M、P和Q为整数,Q和M大于1, 系统卷积码用来通过加入冗余数据产生带有网格封包的分组乘积码, 所述乘积码由矩阵的行编码和列编码产生的成分构成,所述矩阵通过 系统卷积码合成编码数据,而所述第二步骤将所述乘积码与具有含2M 个状态的维数Q的多维振幅调制结合,所述迭代解码过程是分组解码 过程。
2.根据权利要求1的方法,其特征在于:所述码率等于7/8,所述 调制为具有8维的8-D调制。
3.具有输入数据保护的数字传输系统,包括所述数据的编码装置 和迭代解码装置,编码装置包括:
-执行容许迭代解码的系统卷积网格编码的第一子集,
-以及将编码数据分配给数字调制符号的第二子集,
其特征在于:第一子集采用系统卷积网格编码,它具有编码码率 P/(Q.M),这里M、P和Q为整数,Q和M大于1,系统卷积码用来通过 加入包括至少一个奇偶校验位的冗余数据产生带有网格封包的分组乘 积码,所述乘积码由矩阵的行编码和列编码产生的成分构成,所述矩 阵通过系统卷积码合成编码数据,而第二子集将乘积码与具有含2M个 状态的维数Q的多维振幅调制结合,所述迭代解码过程是分组解码过 程。
4.根据权利要求3的系统,其特征在于:所述编码装置包括称作状 态机的、用来确定所述编码器的后继状态并产生网格封包冗余符号的 装置。
5.根据权利要求3的系统,其特征在于:所述码率等于7/8,所述 调制为具有8维的8-D调制,所述系统卷积编码装置通过加入一个冗余 位将七个输入符号编码成为八个输出符号。
6.根据权利要求5的系统,其特征在于:所述系统卷积编码装置包 括两个移位单元级,所述输出符号是通过线性组合来自所述移位单元 的数据获得的。
7.根据权利要求3至6中任一项的系统,其特征在于:所述迭代解 码装置至少包括两条相继操作的路径:
-沿着第一路径,系统通过以下装置在路径的每次迭代的情况下 进行第一迭代解码:
a)计算与系统卷积码相关的硬判决的计算装置,
b)计算与多维调制子集相关的硬判决的第一可靠度和与系统卷积 码的网格相关的第二可靠度的计算装置,
c)在每次判决的第一和第二可靠度中选择最小可靠度的选择装 置,
d)计算用于第一路径的下一次迭代、作为所选最小可靠度的函数 的软判决和硬判决的计算装置;
-沿着第二路径,系统在所述路径的每次迭代采用:
a)计算与奇偶校验码相关的硬判决的计算装置,
b)计算用于第二路径的各硬判决、作为第一路径的硬判决的函数 的第三可靠度的计算装置,
c)计算作为第三可靠度的函数的软判决、来自第二路径的后继的 迭代的软判决和来自第一路径的硬判决的计算装置。

说明书全文

发明涉及用于保护输入数据的数字传输系统,所述系统包括所述 数据的编码装置和迭代解码装置,所述编码装置包括用于执行系统卷 积网格编码、容许迭代解码的第一子集,以及用于向数字调制符号分 配编码数据的第二子集。

本发明还涉及在这种数字传输系统中实施的保护输入数据的方 法。

所述系统可用于有线电视卫星电视的数字传输,用于地面广播, 及用于电话线上的传输等。

将卷积编码与数字调制结合的选择性保护系统是众所周知的。更 具体地说,为了增强这种系统在误码率意义上的性能,在1993年5 月日内瓦ICC‘93的会议记录第1064-1071页C.BERROU、A. GLAVIEUX、P.THITIMAJSHIMA的题为“接近Shannon极限的纠 错编码和解码:涡轮码(1)”的文件中描述了称作涡轮码(Turbo code)的新一类卷积码。这些涡轮码具有接近Shannon提出的理论极 限的以误码率表达的性能。它们是并行连接的卷积码。这些卷积码基 于系统穿孔递归码,也就是说,它们由1/2码率的码得出,所述码的 一个输入位产生两个输出位,穿孔过程被用于位自身。这样的级联通 过适当插入包含信息的数据来实现。

在接收机端,称作涡轮解码的迭代解码包括对接收符号解码数次, 以改善系统在位误码率意义上的性能。随后的迭代解码由单个软判决 维特比(Viterbi)解码器完成。这种解码器与进行硬判决的传统Viterbi 解码器不同。在所述文件中,解码器的输出上的软判决产生硬判决的 可靠度,即正确判决的可能性。然后,解码器后跟着输出数据的取出 (deinterleaving)。

但是,在所述文件中公开的继之以迭代解码的涡轮码的使用不能超 过来自1/2码率码的穿孔系统码的极限,特别是当后者由它们与之协同 工作的数字调制独立应用时。更具体地说,这些码的缺点是它们只适 应具有低频谱效率(小于或等于2位/秒/赫)的调制,比如MDP2和MDP4 相位调制。等于所用带宽的两倍的最大值的比特率对应于这些码。为 了增加固定占用带宽的码率,我们可以采用正交调幅(QAM)形式的 高频谱效率调制。但是使用上述与QAM调制并列的穿孔卷积码不能提 供最佳性能,因为这些码的设计是不考虑调制的。

本发明的目的在于增强这种数字传输系统的性能,同时保证系统的 正常功能,将信噪比降至最低,并改善其频谱效率。

所述目的通过这样一种系统来实现,其中第一子集采用系统卷积 格式编码,它具有编码码率P/(Q.M),这里M、P和Q为整数,Q和 M大于1,系统卷积码用来通过加入包括至少一个奇偶校验位的冗余 数据产生具有网格封包的分组乘积码,乘积码由矩阵的行编码和列编 码产生的成分构成,所述矩阵通过系统卷积码合成编码数据,而第二 子集将乘积码与具有含2M个状态的维Q的多维振幅调制结合,所述 迭代解码过程是成组解码过程。

为了根据系统卷积码产生乘积码和另加冗余数据,编码装置可包括 称作状态机的装置,它根据输入状态和数据符号确定输出状态和冗余 符号。

状态机最好耦合到读取表,以确定系统卷积码的冗余符号和用来封 包网格的符号。

根据本发明,系统的特征也在于迭代解码装置至少包括两条相继操

作的路径:

-沿着第一路径,系统通过以下装置以路径的各迭代进行第一迭代 解码:

a)计算与系统卷积码相关的硬判决的计算装置,

b)计算与多维调制子集相关的硬判决的第一可靠度和与系统卷积

  码的网格相关的第二可靠度的计算装置,

c)在各决定的第一和第二可靠度中选择最小可靠度的选择装置,

d)计算用于第一路径的下一个迭代、作为所选最小可靠度的函数

  的软判决和硬判决的计算装置;

-沿着第二路径,系统对每个迭代采用:

a)计算与奇偶校验码相关的硬判决的计算装置,

b)计算用于第二路径的各硬判决、作为第一路径的硬判决的函数

  的第三可靠度的计算装置,

c)计算作为第三可靠度的函数的软判决、来自第二路径的先前迭

  代的软判决和来自第一路径的硬判决的计算装置。

本发明也涉及用于数字传输系统的输入数据保护方法,所述方法 包括用来对所述数据编码的编码阶段和迭代解码阶段,编码阶段包括 容许迭代解码的第一系统卷积网格编码步骤,所述步骤结合将编码数 据分配到数字调制符号的第二步骤,其特征在于:在第一步骤中,系 统网格编码具有编码码率P/(Q.M),其中M、P和Q为整数,Q和M大于 1,系统卷积码用来通过加入冗余数据产生具有网格封包的分组乘积 码,乘积码由矩阵的行编码和列编码产生的成分构成,所述矩阵通过 系统卷积码合成编码数据,而第二步骤将乘积码与具有含2M个状态的 维数Q的多维振幅调制结合,所述迭代解码过程为分组解码过程。

系统卷积编码这里以码率P/(Q.M)、最好是7/8来讨论。所述编码 结合2M状态(最好是4状态)的多维数字调制,以提供最佳性能。根 据所述实施例(M=2,Q=8,P=14,码率=14/16=7/8),通过处理取 得14位或7个符号(称作输入位)、将被编码为8个符号(称作输出符 号)的位流来获得所述编码。Q个符号(分别是8个输出符号)选择两 个2M级的符号(4级分别是{+1,-1,+3,-3}),也就是说,Q个实符 号具有2M级振幅调制,每个符号M个输出位(分别是4级4-AM,每个 符号两个输出位)。通过将系统卷积码加到矩阵的行和列上获得乘积 码,所述矩阵包含具有各行和各列的网格封包的信息位。随后,根据 乘积码来自矩阵的2M-AM(例如4-AM)符号两两组合,产生22M- QAM符号(例如16-QAM)。然后,根据传统技术,由载波传输编码 数据。

为了容许在接收端进行涡轮解码,乘积码必须系统化。所以,要用 到系统卷积码,也就是说,在编码之后,输入数据符号出现在输出时 不变。

以下描述的码率P/(Q.M),如7/8的卷积码这样来设计,对于给定的 信噪比,它们提供最低的误码率,这尤其是对4-AM或16-QAM调制。

这样,通过结合以最佳方式实现码率为7/8的系统卷积编码的编码 器结构和多维调制,获得信噪比方面和频谱效率方面都具有最佳性能 的系统。

根据本发明,使用系统卷积码的乘积码这里实际上结合正交调幅而 非并列来讨论。

所述系统有各种优点。

与采用具有MDP4相位调制的二进制穿孔码的先有技术系统相 比,我们具有高出两倍的传输容量(频谱效率介于2与4位/秒/赫之间)。

系统的硬件不是很复杂,因为仅需要单个软判决解码器来执行乘积 码的迭代解码。

所使用的码最好是码率为7/8、具有14个输入位和16个输出位的系 统卷积码。产生16个作为输入位和编码器状态(存储)的函数的输出 位的函数已经根据16-QAM调制最优化。

选择系统卷积码,码率最好是7/8,以便这些码结合16-QAM调制的 最小欧氏距离最大化,以改善性能。这尤其指编码和调制的结合。

参考下述实施例将更清楚本发明的这些和其他方面。

图中:

图1表示根据本发明的基带数字传输系统的方框图

图2表示划分为子集的树A0;

图3表示容许产生乘积码的行或列编码器的总体电路图;

图4表示包括也对冗余符号编码的编码器的数字传输系统;

图5表示8-D合成体的分支树;

图6表示码率为7/8的网格;

图7表示结合4-AM 8-D调制的码率为7/8的系统卷积编码器的总体 电路图;

图8表示4-AM符号的位分配;

图9表示8-状态码系统卷积编码器的方框图;

图10表示16-状态码系统卷积编码器的方框图;

图11表示图7所示编码器对码率为3/4的码的特殊实施例的方框 图;

图12表示计算网格封包符号的方框图;

图13表示根据本发明的第一阶段的解码装置的方框图;

图14表示子集S0,0和S0,1的网格;

图15表示在第一阶段执行的各解码步骤的流程;

图16表示根据本发明的第二阶段的解码装置的方框图;

图17表示奇偶校验码的网格。

图1表示根据本发明的基带数字传输系统的方框图。通过比如将它 们存入由地址分开的行和列构成的存储器10,将来自源5的要保护的输 入数据组织在矩阵中。系统包括行编码装置12和列编码装置14。这两 个编码装置产生分配到4-AM数字调制符号的数据。分配单元16将4- AM符号转换为16-QAM符号。这是4-AM符号的成对结合。

这些符号通过信道19根据传统技术传输到接收器装置。接收数据通 过容许执行下述环处理的缓存装置20。解码器包括相继操作的两条路 径,一条路径1涉及传输符号(指数i)的最低有效位的判决,另一条 路径2涉及传输符号(指数j)的最高有效位的判决。

在路径1上,在缓存装置20的输出端,数据进入具有两个输出的 Viterbi解码器221、提供为各迭代取得的估测符号和估测位i的硬判决输 出211及通过数据数字复用器(interleaver)241循环回到缓存装置20的 软判决输出231。

在路径2上,在缓存装置20的输出处,数据进入具有两个输出的奇 偶校验码解码器222、提供为各迭代取得的估测符号和估测位j的硬判决 输出212及通过数据数字复用器(interleaver)242循环回到缓存装置20 的软判决输出232。

路径2的解码过程在路径1解码过程之后、根据接收到的符号和路径 1的解码器估测的位i执行。

随着迭代处理的重复,估测符号变得更为可靠。以误码率测量,对 路径1平均在4或5次迭代之后获得改善,对路径2平均在2或3次迭代之 后获得改善。

为了构成乘积码,矩阵行的编码通过行编码器以以下方式进行。数 据被分组处理,对于这里取作实施例的码率为7/8的系统码,一个分组 包括2×(7N+4)2位。存储器10存储大小为(7N+4)×(7N+4)的信息矩 阵[I]。矩阵包括四个一组的数据符号{+1,-1,+3,-3}。每个符号对 应2个位。

然后,矩阵[I](1行=7N+4符号)的各行由系统卷积行编码器122 (图3)编码,同时产生数据符号(这是对应于编码前的矩阵[I]的四个 一组的符号的4-AM 4级符号{+1,-1,+3,-3})和冗余符号。对于每 一行,有N个由卷积7/8编码器产生的4-AM冗余符号(对于7N个数据 符号,有N个冗余符号),及4个用于封包网格的4-AM冗余符号。这4 个符号用信息矩阵行的最后4个符号产生。对于矩阵的列,进行相同操 作。

以码率7/8(编码器122)的系统卷积码为例来考虑。随着7个有用 数据符号,产生包括7个有用符号(系统卷积码)加上1个冗余符号的8 个符号。考虑由N+1个分组构成的矩阵的第一行(一个分组具有7个数 据符号,即14位),这N+1个分组为

(I1,1,...I1,7),(I1,8,...I1,14),...,

(I1,7N-6...I1,7N),(I1,7N+1,...I1,7N+4).

符号,例如I1,1包括两个位j1,1和i1,1。

根据图3的方框图实现的乘积码给出表I所示矩阵。

表I     I1,1...I1,7N+4        .....     Im,1...Im,7N+4        .....     I7N+4,1...I7N+4,7N+4     R1,1...R1,N        .....     Rm,1...Rm,N        .....     R7N+4,1...R7N+4,N    TR1,1...TR1,4        .....    TRm,1...TRm,4        .....    TR7N+4,1...TR7N+4,4     C1,1...C1,7N+4        .....     Cm,1...Cm,7N+4        .....     CN,1...CN,7N+4     TC1,1...TC1,7N+4        .....     TC4,1...TC4,7N+4

以各分组计算系统卷积码的冗余符号(即2位),分组1产生R1,1, 分组2产生R1,2,依此类推,直到产生R1,N的分组N。

假设编码器的初始状态等于零。在产生R1,N之后,编码器122处在状 态σ(N)。在网格封包装置128的辅助下,通过产生对应于8-状态卷积码 的网格过渡态的4个符号TR1,1、TR1,2、TR1,3、TR1,4(对于8-状态码)、 以便在所述过渡之后达到状态σ=0、迫使网格的状态到零来封包网 格。对于具有更多状态的码,有必要使用更多网格封包符号。TR1,1、 TR1,2、TR1,3、TR1,4是4个数据符号(I1,7N+1,...I1,7N+4)和网格σ(N)的状 态在一行被编码之后的函数,并由下述σ(N)寻址的表产生。

编码之后,获得表I所示4-AM符号的矩阵,其中:

Im,n是具有包括4-AM数据符号的大小为(7N+4)x(7N+4)的矩 阵。

Rm,n是具有包括对应于7/8码产生的行冗余符号的4-AM数据符号 的大小为(7N+4)xN的矩阵。

TRm,n是具有包括4-AM网格封包行冗余符号的大小为(7N+4)×4 的矩阵。

Cm,n是具有包括列冗余符号的大小为(N×7N+4)的矩阵。

TCm,n是具有包括网格封包列冗余符号的大小为(4×7N+4)的矩 阵。

行编码器12以以下方式操作(图3)。输入符号Im,n进入缓存器 120,然后进入为7个数据符号的分组产生一个冗余符号的码率为7/8的 编码器122。多路复用器124在输出处将符号串行化。所以,它在其输 出131处相继提供8个符号的组、每个组由7个数据符号和对应该分组的 冗余符号构成。然后,多路复用器相继提供所有8个符号的组。当所有 组已被提取时,所述行的最后4个数据符号被提取,然后提取为确定封 包符号、由单元128产生的4个网格封包符号。控制器17控制所述操作。

对于其他各行进行相同处理。以类似方式,对列(列编码器14) 实现类似处理。第一列的第一分组由符号I1,1,I2,1,...I7N+4,1产生。一个 冗余符号对应于各7个符号的分组,例如,符号C1,1对应于第一分组, 符号CN,1对应于最后一个分组。第一列的网格封包冗余符号是根据符号 I7N+,1,...I7N+4,1产生的符号TC1,1,TC2,1,TC3,1,TC4,1。由初始数据符 号、行编码冗余符号、列编码冗余符号和网格封包符号构成的所有数 据构成乘积码。

所述乘积码的一行构成用于对4-AM调制符号编码的符号的一个分 组。因为不管它们以行还是以列读取,初始数据符号保持相同,所以 对于采用乘积码的列,不必再次使用初始数据符号。因此只有乘积码 的列的冗余符号用于对4-AM调制符号编码(列编码器14)。来自乘积 码的行和列的4-AM符号用于对分配单元16中的16-QAM调制编码。

为了增强系统的性能,有可能也对刚刚计算的冗余符号编码。

以这种方式,矩阵列(行冗余列编码)可被编码,以产生分别具有 大小(N×N)、(N×4)、(4×N)和(4×4)的矩阵RCm,n、TRCm,n、RCTm, n和TRCTm,n(表II)。也以行编码的是列冗余矩阵Cm,n和TCm,n, 以产生分别具有大小(N×N)、(N×4)、(4×N)和(4×4)的矩阵CRm,n、 CRTm,n、TCRm,n和TCRTm,n。

在这种情况下,具有大小(7N+4)×(7N+4)的信息矩阵跟着行和 列,以与刚刚描述的方式相同的方式获得行冗余符号Rm,n和TRm,n 及列冗余符号Cm,n和TCm,n。然后,行冗余以列编码,列冗余以行编 码,以增强系统的性能。因此,例如,7N+4个符号(R1,1,...R7N+4,1) 的分组被编码,以产生来自7/8码冗余的头N个列冗余符号(RC1,1, ...RCN,1),然后产生封包网格的四个冗余符号(RCT1,1至RCT4,1)。 对于行冗余(R1,n,...R7N+4,n)的其他列,n=1,...,N及从4列(TR1,1, ...TR7N+4,1)到(TR1,4,...TR7N+4,4),处理过程相同。列冗余的行也 被编码,即行(Cm,1,...Cm,7N+4),对于m=1,...,N及4行(TC1,1, ...TC1,7N+4)到(TC4,1,...TC4,7N+4)。

这样获得以下矩阵:

          表II -矩阵[R]是矩阵[I]的行冗余矩阵, -矩阵[C]是矩阵[I]的列冗余矩阵, -矩阵[TR]是矩阵[I]的行的网格封包冗余矩阵, -矩阵[TC]是矩阵[I]的列的网格封包冗余矩阵, -矩阵[RC]是矩阵[R]的列冗余矩阵, -矩阵[CR]是矩阵[C]的行冗余矩阵, -矩阵[TCR]是矩阵[TC]的行冗余矩阵, -矩阵[RCT]是矩阵[R]的列的网格封包冗余矩阵, -矩阵[TRC]是矩阵[TR]的列冗余矩阵, -矩阵[TRCT]是矩阵[TR]的列的网格封包矩阵, -矩阵[CRT]是矩阵[C]的行的网格封包矩阵, -矩阵[TCRT]是矩阵[C]的行编码的网格封包矩阵。 更详细地考虑图3所示对矩阵的行编码的行编码器12的操作。

在缓存器120中存储着我们希望编码的行。一行包括(14N+8)位或 (7N+4)四个一组的数据符号。例如,对于顺次第k个分组,缓存器存 储具有14位(即7个符号)的N个分组(i1(k),j1(k),...,i7(k),j7(k))和 1个8位(即4个符号)的分组:

i1(N+1),j1(N+1)

i2(N+1),j2(N+1)

i3(N+1),j3(N+1)

i5(N+1),j5(N+1)

N个14位的分组相继经码率为7/8的系统卷积编码(编码器122)处 理。对于每个分组(第k个分组),编码器122产生U1(k)至U7(k)七个 4-AM数据符号,它们通过实现图8所述的位分配,对应于分组的14个 信息位和1个冗余符号U8(k),k=1,...,N(连接123)。

14个信息位的每个分组对应于7/8网格中的一个过渡。顺次第N+1 个最后的分组对应于封包网格的过渡。

根据8个信息位{i1(N+1),j1(N+1),i2(N+1),j2(N+1),i3(N+1), j3(N+1),i5(N+1),j5(N+1)}(4个四个一组的符号),这是行的最后 8个位,产生4-AM符号,即正如图8所示的位分配的U1(N+1),U2(N+ 1),U3(N+1),U5(N+1),其后计算4个冗余符号U4(N+1),U6(N+ 1),U7(N+1),U8(N+1),容许封包网格。这些符号都是编码器σN+1 在第N个分组编码之后的状态和8个位{i1(N+1),j1(N+1),i2(N+1), j2(N+1),i3(N+1),j3(N+1),i5(N+1),j5(N+1)}的函数。它由单元 128确定。

列编码器是一样的,除了在系统卷积7/8编码的输出端之外,那里 只有冗余符号。

容许对冗余进行双重编码的编码器方框图示于图4。与图1相同的单 元示以相同标号。在考虑之下的实施例情况中,存储器M10包含 (7N+4)2个符号。另一个存储器MR包含(7N+4)(N+4)个行冗余符号(符 号Rm,n,TRm,n)。另一个存储器MC包含(N+4)(7N+4)个列冗余符号 (符号Cm,n,TCm,n)。存储器MR和MC在完成M的行和列编码之后 装载。然后,MR的内容的编码接着列进行,MC的内容的编码接着行 进行,以分别产生(N+4)2个4-AM符号(RCm,n,TRCm,n,RCTm,n 和TRCTm,n)和(N+4)2个4-AM符号(CRm,n,CRTm,n,TCRm,n 和TRCTm,n)。交换机13和15保证在控制器17控制之下的操作的运 行。

最后,所有为表I或II的各乘积码矩阵构成的4-AM符号两两组合, 并通过信道以16-QAM合成体(以定义好的序列)的复数符号形式传 输。

没有冗余编码的乘积码的码率等于: ρ 1 = ( 7 N + 4 ) 2 ( 7 N + 4 ) 2 + 2 ( 7 N 2 + 32 N + 16 )

对于N=20,码率为0.765,并且频谱效率等于所述码率的4倍,即3.06 位/秒/赫。

具有双重冗余编码的乘积码的码率成为等于: ρ 2 = ( 7 N + 4 ) 2 16 ( N + 4 ) ( N + 1 ) + ( 7 N + 4 ) 2

所以,对于N=20,得到码率0.72,而频谱效率为2.88位/秒/赫。当 对0.18位/秒/赫的冗余编码时损失了频谱效率,但系统性能增强了。

图8表示位i,j向4-AM合成体的符号的位分配。

具有1-D维的4-AM合成体由集合A0={-3,-1,+1,+3}表示。A0的第 一分级包括两个子集B0和B1,B0={3,-1},B1={1,-3}(图2)。符 号,比如I1,1,包括两个位i1,1和j1,1。位i分配给第一级,对B0, i=0,而对B1,i=1。

A0的第二分级包括四个子集C0、C1、C2和C3,C0={+3},C 1={+1},C2={-1}及C3={-3}。指数j分配给所述第二级,对C0或C1, j=0,而对C2或C3,j=1。集合C的指数等于分配给产生它们的分支的 指数j、i的十进制值,即2j+I。

8-D合成体定义为各属A0的8个符号的分组的集合。图5表示8-D合 成体(A0)8的分支树,其中A0为一维(1-D)4-AM合成体。

对于(矩形)最小欧氏距离,集合(A0)8具有do2。所述集合被划 分为2个具有最小距离2do2的子集。具有值0或1的位Y0分配给每个子 集。

对于由所有属于Bi1,...,Bi8、 模数2的分组构成的子 集,Y0=0;

对于由所有属于Bi1,...,Bi8、 模数2的分组构成的子 集,Y0=1。

因此,Y0=0对应于所有4-AM符号分组(U1...U8)的集合,它们 在1-D子集中包含一个偶数成分,即B1={+1,-3}。

类似地,Y0=1对应于所有4-AM符号分组(U1...U8)的集合,它 们在1-D子集中包含一个奇数成分,即B1={-1,+3}。

然后,各8-D子集序列划分为2个其他8-D子集,依此类推。

每个分级分配一个位:

-Y0分配给第一级;

-Y1分配给第二级;

-Y2分配给第三级;

-Y3分配给第四级。

以下仅描述对应于Y0=0的子集。

第4分级之后,得到8个子集S0、S2、S4、S6、S8、S10、S12、S14(Si, i为偶数)。

子集Si的指数i为分配给Si的4位Y3、Y2、Y1、Y0的十进制值。

各子集具有形式U(Bi1...Bi8)(子集的总和),并由指数(i1,...i8) 的奇偶关系确定。在各子集Si中的最小(矩形)距离为4-do2。各子集 包含212=4096个84-AM符号的分组。

各子集Si包含16个子集(Bi1...Bi8),每个子集(Bi1...Bi8)包含 28=256个8-D分组。

最后,各子集Si划分为2个子集Si,0和Si,1,其中,

-Si,0为Si的分组的子集,其分组的最后4-AM符号为正(因此属

于C0或C1)。

-Si,1为Si的分组的子集,其分组的最后4-AM符号为负(因此属 于C2或C3)。

所以,Si,0对应于Si的8-D分组的子集,其最后的符号U8属于C0 或C1,也就是说,最后的符号对应于位j8=0。Si,0包含211个单元。

Si,1={Si的(U1,...U8),因此j8=1}。

例如,子集S6,1由(A0)8的分组(U1,U2,...U8)的子集确定,证实 j8=1和位i1至i8的4个奇偶关系:

   i1i3i5i7=0,

   i1i2i5i6=1,

   i1i2i3i4=1, Σ p = 1 8 i p = 0 其中,(ip,jp)为分配给4-AM符号Up(图8)的位。

总之,对于偶数i,Si,j是证实以下奇偶关系的4-AM符号的分组 U=(U1,...U8)的集合:

   i1i3i5i7=Y3

   i1i2i5i6=Y2

   i1i2i3i4=Y1

   i1i2i3i4i5i6i7i8=Y0=0

                    jg=j

其中,(Y3Y2Y1Y0)代表i的位,也就是说:i=8Y3+4Y2+2Y1+Y0, Y0=0,(iP,jp)为分组Up的第p个符号的位分配:

因此,为了产生所有Si,j分组(211个分组),足以扫描11位i1、i2、 i3、i5、j1、j2、j3、j4、j5、j6及j7的所有可能组合。对于给定组合,其他 位(i4,i6,i7,i8,j8)根据以上确定的子集Si,j的奇偶关系来计算。

系统7/8码率的卷积码以以下方式构成:

-子集Si,j分配给网格的并行分支。而且,采用具有偶数I的子集Si, j。这保证最小距离(矩形)等于4do2,其中do为4-AM合成体的最小距 离。

-对于具有码率7/8的码,必须有8个单独的来自编码器的给定状态 的过渡,它对应于8个所发送的4-AM符号(即16位)的14个输入位(其 中3个已编码位和11个未编码位)。因此,8-状态码的网格被完全连接。

-对于具有系统码的情况,即对于提供8-D分组的所发送的头7个 4-AM符号为7个数据符号(或14位)的情况,对于基于产生8个4-AM 符号的214个分组的状态的214个过渡,头7个必须采用214种可能的组 合。所以,足以将8个子集Si,j分配给来自一个状态的8个单独分支, 其中,i=0,2,4,6,8,10,12,14,j为任意值。

图6表示最佳7/8系统卷积码的网格。所述图中,σk为编码器在常数 k的状态,σk+1为编码器在常数k+1的状态,状态由编码器(3个移位寄 存器)的存储器中的3位确定。所述图也表示子集Si,j向不同网格过渡 的分配。网格以以下方式分析:

根据在常数kt的状态σ(k):

σk=(σk2,σk1,σk0),编码器继续在常数(k+1)T的另一个状态σ(k+1): σk+1=(σk+12,σk+11,σk+10)。

因此,编码器可以从状态[111]变到8个状态 [000][001][010][011][100][101][110][111]之一。

例如,注意到来自状态001的第三个过渡,也就是说,过渡 001→010,对应于S10、1。整个网格以相同方式分析。

图7表示码率7/8(图3)编码器122的方框图。在编码器的输入端的、 常数k下的14位(i1(k),j1(k)),1=1...7,选择发送的分组U1(k),...U7(k) 的头7个符号,如图8。为了计算冗余符号U8(k),即(i8(k),j8(k)), 首先计算子集Si的指数i(偶数i),它以相同方式对应于3位Y3(k)、 Y2(k)、Y1(k),i=8Y3+4Y2+2Y1+Y0,Y0=0。再计算位i8(k),它 是位i1(k),...i7(k)的奇偶校验位。位j8(k)是码率3/4的系统卷积编码器 230的冗余位,用于其输入位Y1、Y2和Y3。位(i8,j8)选择符号U8(k)。 在3/4码输出端,具有编码器σk+1的下一个状态,它将用于在行或列的 结尾处封包网格(k=N)。

位Y1(k)、Y2(k)、Y3(k)和i8(k)作为位i1(k),i2(k)...i7(k)的函数的 计算由以下方程式给出:

   Y1(k)=i1(k)i2(k)i3(k)i4(k)

   Y2(k)=i1(k)i2(k)i5(k)i6(k)

   Y3(k)=i1(k)i3(k)i5(k)i7(k)

   i8(k)=i1(k)i2(k)i3(k)i4(k)i5(k)i6(k)i7(k)

这些方程式由在单元210内实现的子集Si向位Y0、Y1、Y2和Y3 的位分配引出(图5)。

编码器(图7)的这种结构容许向从一个状态σ到另一个状态的网 格并行过渡分配Si,j8的所有8-D分组,i=8Y3+4Y2+2Y1。

图7的卷积编码器可通过表(图11)或移位寄存器(图9和10),或 通过计算机软件来实现。

在图11中,表220(存储器)给出冗余位j8(k)和未来状态σk+1(对于 具有2v个状态的码为v位),作为σk、Y1(k)、Y2(k)、Y3(k)的函数。表 220接收Y1、Y2、Y3及其经延迟单元222循环回到输入端的输出σk+1。

图9和10表示最佳8-状态码(v=3)和16-状态码(v=4)的方框图。 当系统的输出产生j8(k)时,对于8-状态码,由加法器单元3121、延迟单 元3102、加法器单元3123、延迟单元3103、加法器单元3124构成链路。

加法器单元3121接收Y1(k),

加法器单元3122接收Y3(k),

加法器单元3123接收Y2(k)和Y3(k),

加法器单元3124接收Y1(k)、Y2(k)和Y3(k)。

对于16-状态码(图10),系统由与8-状态系统相同的单元构成, 另加一个延迟单元3104和加法器单元3125。

图12涉及网格封包装置。让我们考虑编码器的状态σ和分配给过渡 (211个并行分支)来封包网格的子集Si,j8(8-D子集)。

i=8Y3+4Y2+2Y1

因为有211个封包网格的分支,我们将寻找作为4个数据符号U1、 U2、U3和U5的函数,即8个信息位i1、j1、i2、j2、i3、j3、i5和j5。

在封包网格的过渡时,分别对应于位(i1,j1)、(i2,j2)、(i3,j3)和(i5,j5) 发送4个数据符号U1、U2、U3和U5。

计算分两步进行(图12):根据编码器在对行或列进行编码结束时 的状态σN+1,位Y1(N+1)、Y2(N+1)、Y3(N+1)和j8(N+1)根据包含表III 的表210产生。

表III σ(二进制) (σ2,σ1,σ0) σ(十进制) Si,j8  Y3 Y2 Y1  j8   0     0     0     0  S0.0  0   0   0  0   0     0     1     1  S6.1  0   1   1  1   0     1     0     2  S2.1  0   0   1  1   0     1     1     3  S4.0  0   1   0  0   1     0     0     4  S12.0  1   1   0  0   1     0     1     5  S10.1  1   0   1  1   1     1     0     6  S14.1  1   1   1  1   1     1     1     7  S8.0  1   0   0  0

根据位Y1(N+1)、Y2(N+1)、Y3(N+1)和j8(N+1)计算位(i4,j4)、(i6, j6)、(i7,j7)和(i8,j8)(N+1),使得在计算装置240内产生符号U4(N+1)、 U6(N+1)、U7(N+1)和U8(N+1)成为可能。这些位计算如下:

   i4(N+1)=i1(N+1)i2(N+1)i3(N+1)Y1(N+1)

   i6(N+1)=i1(N+1)i2(N+1)i5(N+1)Y2(N+1)

   i7(N+1)=i1(N+1)i3(N+1)i5(N+1)Y3(N+1)

   i8(N+1)=i2(N+1)i3(N+1)i5(N+1)Y1(N+1)Y2(N+1)Y3(N+1)

可以假设j4和j6为任何值。比如它们假定为0(j4=j6=0)。

位j7是以下过渡的所有位(j1,...j7)的奇偶校验位: j 7 ( N + 1 ) = Σ k = 1 N Σ I = 1 7 j 1 ( k ) Σ I = 1 6 j 1 ( N + 1 )

这在图12所示的计算装置中实现。计算最好通过计算机软件实现。

解码装置示于图1。解码在两个不同阶段通过两个步骤进行。在第 一阶段,对所发送的符号(位i)的最低有效位(LSB)进行迭代解码。

通过信道接收的符号的矩阵存储在存储器20内,所述矩阵对应于传 输符号的矩阵(矩阵的大小同在发射器端编码的矩阵)。

行和其后的列相继独立解码。通过各迭代,产生关于位i(位矩阵) 的判决(连接211),将用在下一个迭代期间的实符号矩阵(判决的可 靠度)存储在存储器20中(连接231)。解插入器(de-interleaver)241 将所述数据延迟。

-为了对行和列解码,与用于所需实施例的8-D7/8卷积码对应地利 用软判决Viterbi解码器221。

第二阶段,在第一步的一定数量(通常3或4)的迭代之后,继续步 骤2(连接25),以对位j解码,也就是说,所发送的符号的最高有效 位(MSB)。

然后,行和其后的列被迭代解码,其中用到存储在存储器20中的实 符号矩阵和第一阶段检测到的位i的矩阵。

-列或行的解码器222为奇偶校验码的软判决解码器,所述奇偶校 验码用在7/8卷积码的网格对乘积码的各行和列封包的时候。

首先,考虑第一阶段(路径1)的操作。图13表示包括所发送的4- AM符号(位i)的LSB位的双重判决Viterbi解码装置221的级的总体电 路图。它们包括:

-计算矩阵的子集220,

-产生硬判决的Viterbi解码器222,

-计算判决的可靠度的子集224,

-计算软判决的子集226。

系统卷积码的解码包括采用软判决解码算法。为了简化说明,码率 7/8的系统卷积码将取作实施例。根据描述具有表I中的指数1的行的特 殊实施例,一系列乘积码通过已经在发射器端传输的以下符号构成(为 了简化说明,以下省略行指数,这里i=1):

-7N+4个数据符号:

I=I1,...,I7N+4

-N个码冗余符号:

R=R1,...,RN

-4个网格封包符号:

TR=TR1,TR2,TR3,TR4。

因为发送信道不尽完善,所以,接收到的符号D(0)=(D1(0),...,D(0)8N+8) 将较发射符号呈现差异。

在接收器端,对应于所发送的16-QAM符号的合成符号在通过信道 后被接收。各合成符号当作2个实符号的序列来考虑。然后,根据具有 与发射器端定义的矩阵相同的结构的矩阵,这些实符号存储在存储器 20(图1)中。所接收的实符号依与发射器端使用的相同的次序布置在 矩阵中。位i的解码过程是迭代,这意味着矩阵的行先解码,然后才是 列。以各迭代解码的行或列的数量在表I的情况下等于7N+4(无冗余 解码),而在冗余解码时(表II)等于8N+8。

首先,让我们考虑对矩阵的行的第v次迭代的迭代解码,也就是说, 实符号的分组:D(v-1)=(D1(v-1),...,D8N+8(v-1))。指数v是对应于迭代的次数的 整数。解码产生8N+8个实符号(软输出)的分组:D(v)=(D1(v),...,D8N+8(v)), 它将加给下一个迭代和对应于传输位i=(i1,...i8N+8)的位 的最佳判决,所发送的位分别是所发送的4-AM符号 (I1,...I7N+4,R1,...RN,TR1,...TR4)的第一分级的位(LSB位)。假设 7N+4个符号D1(v-1),...,D7N+4(v-1)对应于数据符号,N个符号D7N+5(v-1),..., D8N+4(v-1)对应于7/8码冗余符号,4个符号D8N+5(v-1),...,D8N+8(v-1)为封包网格 的冗余符号。这些符号按以下顺序处理: D 1 ( v - 1 ) , . . . D 7 ( v - 1 ) , D 7 N + 5 v - 1 ; D 8 ( v - 1 ) , . . . D 14 ( v - 1 ) , D 7 N + 6 ( v - 1 ) ;                                            …… D 7 N - 6 ( v - 1 ) , . . . D 7 N ( v - 1 ) , D 8 N + 4 ( v - 1 ) ; D 7 N + 1 ( v - 1 ) , . . . D 7 N + 4 ( v - 1 ) , D 8 N + 5 ( v - 1 ) , . . . D 8 N + 8 ( v - 1 ) .

解码分六步进行。以下说明指出从D(v-1)引出D(v)的方法。

第一步涉及量度(metric)的计算。计算量度(图13)的子集220 对8个符号(第一分组,1=0,...N-1)(D71+1(v-1),---D71+7(v-1),D7N+5+1(v-1))的 各分组在各8-D子集Si,j内进行量度检测和计算,并对对应于在乘积码 的行或列编码结束时封包网格的过渡的分组(D7N+1(v-1),---D7N+4(v-1),D8N+5(v-1),... D8N+8(v-1))进行量度检测和计算。为了简化,8-D分组表示 为(r1,...r8)。量度的计算以不同的步骤进行。

首先考虑在1-D合成体内的量度的计算。对于k=1,...7(分组的头7 个符号),最相近的4-AM符号在各子集B0={3,-1}和B1={1,-3}内被检 测,对应量度Mk,0和Mk,1分别被计算,其中Mk,i等于rk和Bi内最相近 的符号之间的矩形欧氏距离。

对于k=8,分别计算各子集Ci内的符号r8的量度M8,0、M8,1、M8,2和 M8,3,Ci=0,1,2,3,其中Ci包含对应于分配给4-AM合成体的2位的 十进制形式的值i的4-AM点。

然后,在2-D合成体内计算量度。对于头3个2-D分组(符号对), 即(r1,r2)(r3,r4)和(r5,r6),k=1,3,5的量度Mk,1(2)在4个2-D子集E1(2)=BiBi’ 内被检测并计算,其中1=2i+i’,i=0,1及i’=0,1。

2-D量度定义为2-D分组的2个符号的2个1-D量度的总和。得到 k=1,3,5的E1(2)内的(rk,rk+1)的量度:M(2)k,1=Mk,i+Mk+1i’,1=0,1,2, 3,同时1=2i+i’。

对于最后2-D分组r7、r8,在8个2-D子集E1j(2)=BiC2j+i,内计算量度 M7,1,j(2),i=0,1,j=0,1,同时1=2i+i’:M7,1j(2)=M7,i+M8,2j+i’。

然后,在4-D合成体内计算量度。在8个四维子集E1(4)内检测并计算 4-D分组(r1r2r3r4)的量度M1,1(4),1=0,1,...7: E 0 ( 4 ) = E 0 ( 2 ) E 0 ( 2 ) E 3 ( 2 ) E 3 ( 2 ) E 1 ( 4 ) = E 0 ( 2 ) E 1 ( 2 ) E 3 ( 2 ) E 2 ( 2 ) E 2 ( 4 ) = E 0 ( 2 ) E 2 ( 2 ) E 3 ( 2 ) E 1 ( 2 ) E 3 ( 4 ) = E 0 ( 2 ) E 3 ( 2 ) E 3 ( 2 ) E 0 ( 2 ) E 4 ( 4 ) = E 1 ( 2 ) E 0 ( 2 ) E 2 ( 2 ) E 3 ( 2 ) E 5 ( 4 ) = E 1 ( 2 ) E 1 ( 2 ) E 2 ( 2 ) E 2 ( 2 ) E 6 ( 4 ) = E 1 ( 2 ) E 2 ( 2 ) E 2 ( 2 ) E 1 ( 2 ) E 7 ( 4 ) = E 1 ( 2 ) E 3 ( 2 ) E 2 ( 2 ) E 0 ( 2 )

对于每个子集,计算2个4-D量度,并取出较小的量度。例如,对于 E0(4)计算:

-在E3(2)E3(2)内的量度M1,3(2)+M3,3(2);

-在E3(2)E3(2)内的量度M1,3(2)+M3,3(2);

-(r1r2r3r4)在E0(4)内的量度M1,0(4)等于:min[M1,0(2)+M3,0(2),M1, 3 (2)+M3,3(2)]。

对于分组(r5r6r7r8),1=0,1,...7,且j=0,1时,计算在子集E1j(4)内 的量度M5,1j(4)。子集E1j(4)以类似于E1(4)的方式定义,除了最后的符号对 是=0为正、对j=1为负之外。例如,E0j(4)=E0(2)E0j(2)UE3(2)E3j(2)。因此足以 用k,j代替第二2-D子集的指数k。在E0j(4)内的量度为: M5,0j(4)=min[M5,0(2)+M7,0j(2),M5,3(2)+M7,3,j(2)]。

最后,在16个8-D子集内计算量度。偶数i的子集Si,j为4个8-D子集的 并集,每个为2个4-D子集的级联:Si,j=∪E1(4)E1,j(4),i2=0,1及i3=0,1, 以及:

i=8Y3+4Y2+2Y1;

1=4i2+2i3+i4;

1’=4i6+2i7+i8;

i4=i2i3Y1

i6=i2Y2

i7=i3Y3

i8=i2i3i4i6i7.

在Si,j内计算r1...r8的量度时,有必要在4个8-D子集E1(4)E1’j(4)内计算量 度(在E1(4)内的(r1r2r3r4)的量度与在E1,j(4)内的(r5r6r7r8)的量度的和)。4 个量度的最小值给出在Si,j,Mi,j(8)内的8-D量度。

对于各8-D分组,检测并计算在各子集Si,j内的量度,所述量度将馈 送到Viterbi解码器。这些量度也是在过渡1,2,...,N+1期间的网格 分支的量度。

在第一阶段还进行第二解码步骤。子集222进行接收符号序列的传 统Viterbi解码。以这种方式得到行的解码最佳序列(硬判决): 及解码LSB位序列 以及对应8-D 子集的序列。

对应于解码状态的状态的序列为:

对应于N+1个过渡或分支,

为初始及最终零状态。对于各状态σ=0,...7和各时 刻j=0,...N+1存储状态量度Mj(i)(σ)的向量。最后,表中的留存路径被 存储。所有这些由Viterbi解码器222产生的结果用于计算可靠度。

在第三步,在子集224内计算各符号I(v)k或解码序列I(v)的各位i(v)k的 可靠度,k=1,...8N+8。可靠度表示解码符号的质量(准确度)。所 述可靠度可写为: F ( i ) = F 1 ( i ) , . . . F 8 N + 8 ( i )

顺次第k个符号的可靠度写为: F k ( v ) = log [ ( Σ c ( I ^ ( v ) ) Prob ( D ( v - 1 ) | C ) ) Prob ( D ( v - 1 ) | I ^ ( v ) ]

其中,D(v-1)为输入符号的序列, 是对应于邻近 的4-AM 符号的码字集。可靠度F(v)k可写为: F k ( v ) = log [ Σ c ( I ^ k ( v ) ) exp d 2 ( D ( v - 1 ) , I ^ ( v ) ) - d 2 ( D ( v - 1 ) , C ) N 0 ]

取其和的主要项目,可写为: F k ( v ) cm mi n C ( I ^ k ( v ) ) [ d 2 ( C , D ( v - 1 ) - d 2 ( I ^ ( v ) , D ( v - 1 ) ) ]

所述最小值给出最大的与产生邻近符号 的解码4-AM符号的误 码路径的对应。这种可靠度的定义也适于位 。实际上,邻近 的 符号对应于位i,它是i(v)k的补码。

可靠度的计算根据以下算法进行。

由Viterbi解码器解码的序列 对应于具有长度N+1的网格路径。 计算k=1,...8N+8时的判决 的可靠度F(v)k的计算算法如下:

k=1,...8N+8时的判决 的可靠度或k=1,...8N+8时的位 的 可靠度分两步计算。第一步包括计算与对应于并行过渡的误码路径相 比较的可靠度,第二步包括计算与网格的误码路径相比较的可靠度。 最后的可靠度为两者中较低者。

首先计算由于并行分支的可靠度FP。所述处理依符号序列Dk(v-1)和 一个一个分组地进行。每个处理过程使得计算由于对应于第1次过 渡(1=0,...,N-1)的8个符号(D71+1(v-1),...,D71+7(v-1),D7N+5+1(v-1))和 对应于第N+1次过渡(封包网格的过渡)的8个符号(D7N+1(v-1),..., D7N+4(v-1),D8N+5(v-1),...,D8N+8(v-1))的可靠度成为可能。因为网格的并 行分支分配给8-D子集Si,j,所述可靠度也是在包含对应于 (解码8-D 子集的序列由Viterbi解码器产生)的解码分组的8-D子集内的判决 的可靠度。

Si(r1,...r8)是分组(D1(v-1),...,D7(v-1),D7N+5(v-1)),以及比如对应于 检测4-AM符号 的解码8-D子集, 可见Si,j内的可靠度rk(对于k=1,...8)的计算归结为计算在子集S0,j内 的                                                                       的可 靠度,其中j’=jY1Y2Y8及i=8Y3+4Y2+2Y1。因此,在所有情况 下,这归结为计算在S0,0或S0,1内的可靠度,使得算法简便。

图14表示子集S0,0和S0,1的网格,其中,网格内的各路径对应于具有 形式Bi1Bi2...Bi7C2j8+i8的子集。

将描述S0,0的算法,即Si,i=S0,0,对于计算k=1,...8时的判决dk的可 靠度:

首先进行2-D量度的计算:

Mi,j(1)=M1,i+M2,j i=0,1;j=0,1

Mi,j(2)=M3,i+M4,j i=0,1;j=0,1

Mi,j(3)=M5,i+M6,j i=0,1;j=0,1

Mi,j(4)=M7,i+M8,j i=0,1;j=0,1

其中,Mk,i为k=1,...7时在Bi内的rk的量度;以及

M8,i为在Ci内的r8的量度。

在对S0,1,M8,i进行可靠度计算的情况下,在C2和C3(i=2,3)内进 行。

-因此由(r1,...r8)的最近路径在S0,0中寻找:

S0,0的网格的上部和下部分开考虑。在网格上部计算M(0,k)=min (M0,0(k),M1,1(k)),k=1,2,3,M(0,4)=min(M0,0(4),M1,1(4))。

在表[i(0,1),...i(0,8)]中存储给出最小值的位(i1,...i8),i1=i2, i3=i4,i5=i6,i7=i8,并计算: MET ( 0 ) = Σ k = 1 4 M ( 0 , k )

在网格下部计算M(1,k)=min(M0,1(k),M1,0(k)),k=1,2,3,               M(1,4)=min(M0,1(4),M1,0(4)) MET ( 1 ) = Σ k = 1 4 M ( 1 , k )

存储对应于[i(1,1),...i(1,8)]内的最小值的位i1...i8,i1=i2,i3=i4, i5=i6,i7=i8。

证实序列[i(0,1),...i(0,8)]和[i(1,1),...i(1,8)]是否为两个有效序列。 分别对序列[i(0,1),i(0,3),i(0,5),..i(0,7)]和[i(1,1),i(1,3),i(1,5),...i(1, 7)]计算奇偶校验位p(0)和p(1)。对k=0,1,如果p(k)=0,对应序列属于 网格(或S0,0),否则,序列将被修改

计算2-D矩阵的差值:

   δ(0,k)=|M0,0(k)-M1,1(k)|,k=1,2,3

   δ(0,k)=|M0,0(k)-M1,1(k)|,k=4

   δ(1,k)=|M0,1(k)-M1,0(k)|,k=1,2,3

   δ(1,k)=|M0,1(k)-M1,0(k)|,k=4

然后,对两个网格上部和下部(分别q=0,1)中的每一个计算4个量 度的最小值: δ(q,k),q=0,1。

存储在kmin(p)内给出的指数k,并计算Δ2(q)。

-如果奇偶校验位p(q)=1,则对位(i(q,2kmin(q)-1),i(q,2kmin(q)) 求补,Δ2(q)的量度MET(q)增加。所述操作对q=0(网格上部)和q=1 (网格下部)进行。

然后计算Δmin=|MET(0)-MET(1)|,存储给出MET(0)和MET(1)的较 低值的指数c(0或1)。

(d1,...d8)的可靠度FP(1),...,FP(8)在S0,0内初始化:

FP(2k-1)=FP(2k)=δ(c,k)+(1-2p(c))Δ(c)pour K≠Kmin(c)

FP(2k-1)=FP(2k)=Δ2(c)+(1-2p(c))Δ(c)pour k=kmin(c)

其中FP(k)为dk在S0,0内的可靠度。

然后,更新k=1,...8的可靠度FP(k):

对于k=1,...8,i(c,k)不等于I(1-c,k):

FP(k)=min[FP(k),Δmin]

对于k=1,2,3,4:

FP(2k-1)=min[FP(2k-1),Ak]

如果i(0,2k-1)=i(1,2k-1)

FP(2k-1)=min[FP(2k),Ak],如果i(0,2k)=i(1,2k),还有:

Ak=Δmin+δ(1-c,k)+[1-2p(1-c)]Δ(1-c)if k≠kmin(1-c)

Ak=Δmin+Δ2(1-c)+[1-2p(1-c)]Δ(1-c)if k=kmin(1-c).

确定网格(图15)的误码路径导致的可靠度。考虑行的解码(步骤 300)。

从以下步骤开始:

它是由Viterbi解码器在k=1,...8N+8时解码的4-AM符号的序 列;

它是对于k=1,...8N+8在时刻k(第k个过渡)的状态σ的 量度。

它是k=1,...8N+8时的输入符号(由前述迭代解码器产 生),以及可靠度阵列F(v)=(F(v),k=1,...8N+8)至FP(v)=(FP(v), k=1,...8N+8)或FP(v)是由并行过渡导致的可靠度(图15步骤301)。

-对于k=N+1,...2,其中k对应于一个时刻(过渡的指数),进行以 下操作:

a)根据解码器在解码路径内的第k个过渡之后的状态 在解码 路径的第k-1个过渡和 的7个其他先行状态、即σ(v)j,k-1,j=1...7(步 骤304)之后确定状态 。所以,对于从1到N+1变化的k的 的值 由Viterbi解码器产生,同时σ(v)j,k-1的值可存储在存储器中。

根据计算并存储在Viterbi解码器中的k=2,...N+1时的所述各2, 状态的量度σ1,k-1(v),σ2,k-1(v),...σ7,k-1(v)和 M k - 1 ( v ) ( σ 1 , k - 1 ( v ) ) M k - 1 ( v ) ( σ 2 , k - 1 ( v ) )                                           …… M k - 1 ( v ) ( σ 7 , k - 1 ( v ) ) M k ( v ) ( σ ^ k ( v ) )

为来自7个状态σ(v)j,k-1、j=1,...7的7个路径计算状态 的7个累积量 度。这7个累积量度为:

δ ( j ) = M k - 1 ( v ) ( σ j , k - 1 ( v ) ) + MET ( σ j , k - 1 ( v ) σ ^ k ( v ) ) , 其中 为从状态 到状态 的过渡的量度,它也是分配给所述过渡的 8-D子集的量度过。这些量度于Viterbi解码(步骤306)期间存储在存 储器内。

计算最佳量度和各累积量度之间的差值: Δ ( j ) = δ ( j ) - M k ( v ) ( σ ^ k ( v ) ) , j = 1 , . . . 7

其中 为状态 的最佳量度。

然后,检查到状态 的7个留存先行状态。退一步到顺次第j个留 存状态,即,从 到σ(v)j,k-1。然后,检查顺次第j个状态σ(v)j,k-1的每一 个留存状态,直到初始状态σ=0,它包括将过渡的指数从k变到1。

为了简化,可以检查状态σ(v)j,k-1的7个留存状态,直到时刻k-L、而 非时刻1的留存状态,因此过渡次数一定。对于L=3,性能的降低可忽 略。

把分配顺次第j个留存状态的第k’个过渡的8个4-AM符号与对于从k 变到1、或在第二种情况下从k变到(k-L)的k’的8个解码符号相比较。如 果解码符号和与对等的留存状态j的第k’个过渡的符号相邻,如果后者 比其可靠度低(步骤312),解码符号的可靠度被Δ(j)取代。

在对应于k从1变到8N+8的最小值的邻近Ik(v)的符号Ik(v)的表中,在 每次更新一个符号的可靠度时,通过用涉及留存状态j的顺次第k’个过 渡的对应的4-AM符号取代它来更新其邻近符号。

结果获得解码符号Ik(v)和对k=1,...8N+8(步骤326)的邻近的对应 的符号Ik(v)的可靠度Fk(v)。

然后在第四步将可靠度规格化,以容许计算k=1,...8N+8的软判决 k(v)。可用三种方法计算规格化的可靠度Fknorm(v)。可计算: F k norm ( v ) = F k ( v ) / F F k norm ( v ) = F k ( v ) + ( 1 - F ) F k norm ( v ) = ( F k ( v ) / β 1 ) + β 2

其中 F等于对全部可靠度矩阵计算的Fk(v)的平均数,β1和β2为实现

F=β1(1-β2)的常数。

随后,在第五步,计算未加权软判决(子集226,图13)。

软判决 根据Viterbi解码器给定的最佳判决 规格化可靠度 Fknorm(v)和以上得到的4-AM符号 的序列来计算。4-AM符号Ik(v)是符 号 的邻近符号,即 它对应于最可能在符号 之后出 现的4-AM符号。符号 由以下算式给出: D ~ k ( v ) = 1 / 2 ( I ^ k ( v ) + I ~ k ( v ) ) + sgn ( I ^ k ( v ) - I ~ k ( v ) ) F k norm ( v )

其中函数sgn定义为: sgn ( x ) = 1 if x > 0 0 if x = 0 - 1 if x < 0

因此,符号 对应于位于从 和 之间的判决阈限的距离 Fknonm(v)处的符号。因为E(Fknorm(v))=1,所以,符号 将集中在4-AM符 号附近。

为了改善性能,在第六步 以存储在存储器20内用于计算Dk(v) 的、通过信道接收的符号Dk(0)加权:

Dk(v)=αvDk(v)+(1-αv)Dk(0),其中αv为加权系数。例如:α1=0,6; α2=0,9;对于v大于1,α3=1。目的在于降低第一迭代期间的误码扩展 作用。步骤5和6在子集226内进行。

其次,考虑对位j解码的第二阶段(路径2)的操作。位j、继而4- AM符号的MSB位用加给乘积码的矩阵的各行和各列的奇偶校验码编 码。这在网格封包时实现。和所述位i一样,所述解码过程也是迭代解 码。

图16表示包括对所发送的4-AM符号的MSB位的奇偶校验码解码的 解码装置221的阶段的总体电路图。它们包括:

-解码器322,用于将给出硬判决的奇偶校验码解码;

-子集324,用于计算判决的可靠度;

-子集326,用于计算软判决。

对于第一迭代(m=1),符号xk(0)为信道输出端的接收符号,即: ( D 1 ( 0 ) , . . . D 7 N + 4 ( 0 ) , D 8 N + 5 ( 0 ) , . . . D 8 N + 7 ( 0 ) )

图17表示用奇偶校验码编码的7N+7位(j1,...j7N+4,j8N+5,j8N+6,j8N+7)的 网格。在所述网格中,从点I到点F的任何路径对应于具有长度7N+7的 码字。对于第m级的迭代的7N+7个符号xk(m-1)的分组的解码分3步分 配。

在第一步(步骤322),对xk(m-1)进行硬判决解码。在子集Bik内对这 些符号一个符号一个符号地进行阈限判决,其中k=1,...7N+4,8N+5, 8N+6,8N+7的 是由第一阶段的迭代解码在收敛后估测的4-AM符号 的LSB位的序列。所述阈限判决产生第一位估测 如果Bik内的判决 分别为正(负) 分别等于零(1)。

继后,对各符号计算将所述符号从子集 内的判决阈限tk(m-1)分开 的距离d(xk(m-1),tk(m-1))的绝对值,其中,B={3,-1}({1,-3})内的阈限 分别等于+1(-1),并计算距离d(xk(m-1),tk(m-1))的k的最小值Δ,第二最 小值Δ2亦然。

最后,计算位 的奇偶校验位p。如果奇偶校验满足要求(p=0), 则位jk(m)的序列为最佳序列,否则,位 取补,kmin是提供d(xk(m-1), tk(m-1))的最小值的指数Δ。

在第二步,进行可靠度的计算(步骤324)。判决jk(m)的可靠度由下 给出: FJ k ( m ) = ( 1 - 2 p ) Δ + d ( x k ( m - 1 ) , t k ( m - 1 ) ) k k min FJ k ( m ) = ( 1 - 2 p ) Δ + Δ 2 , k = k min

继后,可靠度根据以下规格化: FJ k norm ( m ) = FJ k ( m ) / FJ

其中FJ为可靠度FJk(m)的平均值。

在第三步,进行软判决xk(m)的计算(步骤326)。所述判决作为tk(m)、 jk(m)、Fjknorm(m)的函数借助于下式得到: x k ( m ) = t k ( m ) + 2 sgn ( 1 - 2 j ^ k ( m ) ) x FJ k norm ( m )

其中,sgn(.)为正负号函数。

本发明刚刚描述了在码率为7/8的系统卷积码的情况。本专业的 技术人员可将同样的编码和解码原理用于码率为P/(Q.M)、结合具有维 数Q和2M个状态的其他多维振幅调制的其他系统卷积码。

QQ群二维码
意见反馈