选择串接码内循环冗余校验生成器的方法

申请号 CN98808534.8 申请日 1998-08-24 公开(公告)号 CN1150681C 公开(公告)日 2004-05-19
申请人 夸尔柯姆股份有限公司; 发明人 J·M·施泰因;
摘要 一种用于选择循环冗余校验(CRC)多项式(或CRC生成器)的方法和装置利用了包含CRC码和卷积码的串接码。根据给定长度L下所有可能CRC多项式计算的距离谱选择CRC生成器(118)。距离谱包含在各种权重(或Hamming距离)下的路径数(或码字)列表。这些路径代表从全零发送序列(或零状态)分歧并又合并回零状态的误码信息序列I(x)。路径由CRC生成器校验。如果CRC校验通过,表明CRC校验未检测到误码信息序列,则计算该路径权重并更新该CRC多项式的距离谱。否则,如果CRC校验未通过,则忽略该路径。选择最小距离dmin最大的CRC生成器。
权利要求

1.一种选择串接码内循环冗余校验生成器的方法,其特征在于包含以 下步骤:
计算给定长度下所有循环冗余校验生成器的距离谱;
从所述距离谱内选择最佳的循环冗余校验生成器,
其中,所述计算步骤包含以下步骤:
确定信息序列;
判断所述信息序列是否回并入零状态;
如果所述信息序列已经回并入所述零状态,则针对所有循环冗余校
验生成器检验所述信息序列;
如果所述信息序列通过所述检验步骤,则计算所述信息序列的权
重;以及
更新所述信息序列通过检验步骤的每个循环冗余校验生成器的所述
距离谱,
所述选择步骤包含以下步骤:
根据所述距离谱确定所述循环冗余校验生成器的最小距离;以及
选择最小距离最大的循环冗余校验生成器。
2.如权利要求1所述的方法,其特征在于所述计算步骤进一步包括以 下步骤:
去除权重大于所述串接码两倍自由距离的信息序列。
3.如权利要求1所述的方法,其特征在于所述检验步骤包括如下步骤:
判断所述循环冗余校验生成器是否整除所述信息序列。
4.如权利要求1所述的方法,其特征在于进一步包含以下步骤:
确定具有相同的最大的最小距离的循环冗余校验生成器的路径数;以 及
选择路径数最小的循环冗余校验生成器。
5.如权利要求4所述的方法,其特征在于进一步包含以下步骤:
如果两个或更多的循环冗余校验生成器具有相同的所述最大的最小距 离和路径数,则根据所述距离谱内下一最大权重选择循环冗余校验生成器。
6.如权利要求5所述的方法,其特征在于根据所述下一最大权重所述 选择循环冗余校验生成器的步骤包括:
确定所述距离谱内所述下一最大权重;
在所述下一最大最小距离上确定所述两个或更多循环冗余校验生成器 的路径数;以及
选择所述下一最大最小距离上路径数最小的循环冗余校验生成器。
7.如权利要求6所述的方法,其特征在于包含如下步骤:
根据所述下一最大权重重复所述选择循环冗余校验生成器的步骤直到 只有一个循环冗余校验生成器被选定或者考虑了所述距离谱内所有的权重。
8.如权利要求1所述的方法,其特征在于所述串接码包含循环冗余校 验码和卷积码。
9.如权利要求8所述的方法,其特征在于,所述卷积码为1/2码率、 约束长度K=9的卷积码。
10.如权利要求8所述的方法,其特征在于所述卷积码为1/3码率、约 束长度K=9的卷积码。
11.如权利要求8所述的方法,其特征在于所述卷积码符合IS-95标准。
12.如权利要求8所述的方法,其特征在于所述循环冗余校验生成器的 所述给定长度大于1。
13.如权利要求1所述的方法,其特征在于所述串接码包含循环冗余校 验码和线性码。

说明书全文

(1)技术领域

发明涉及选择串接码内循环冗余校验(CRC)生成器的方法和装置。本 发明可用作为线性编码系统选择CRC多项式。

(2)背景技术

随着数字通信的发展和通过受损有限带宽信道发送大量数据的需要,为 方便纠正数据接收错误而对数字数据进行编码就显得非常需要了。数据发送 一般受阻于发送信道内的故障,即发送带宽内的附加噪声和杂散信号。出于 实践考虑,发射功率受到一定的限制,而且发射信号在到达接收机之前由于 路径损耗而衰减并且受到其他现象(例如多路径信号传播)的影响而失真。数 字通信系统通过设计可以判断接收机能够工作的最差情况信号质量。这种信 号质量以每比特能量噪声比(Eb/No)衡量并且由发射功率、路径损耗和噪声及 干扰决定。产生所需性能平的Eb/No考虑为系统的阈值水平。

在该阈值水平上,可以计算任意数字发送方案(例如二元相移键控 (BPSK)、正交相移键控(QPSK)、位移正交相移键控(OQPSK)或正交振幅调制 (QAM))的误码概率(PE)。一般情况下,被选定发送方案的PE并不适于应用。 通过在发送之前编码数字数据并在接收机端译码数据改善了PE。编码方案由 应用要求和信道特征决定。编码使得可以较低的有效数据率对发送数据内的 差错进行检测和纠正。

为改善PE,利用了两类编码,即卷积编码和分组编码。卷积编码提供了 良好的纠错能,但是一般情况下输出相关的突发错。而且Viterbi译码器 支持软决策的使用以在硬件复杂度增加最小的情况下改进性能。分组编码可 以是检错码(例如CRC码)或检错与纠错码(例如Reed-Solomon码)。由于CRC 码提供的性能以及在译码器内实现的简单性,CRC码被用于许多通信系统。 当一个码无法提供需要的性能水平时,可以采用包含两个或更多码的串接码。 采用包括卷积码和CRC码的串接码的通信系统实例就是在题为“利用卫星或 陆基中继器的扩展谱多址通信系统”的美国专利No.4,901,307和题为“生成 CDMA蜂窝电话系统内波形的系统和方法”的美国专利No.5,103,459中揭示 的码分多址(CDMA)通信系统,这两个专利已经转让给了本发明的受让人,并 且作为参考资料包含在本发明中。

1/N编码率的卷积编码器按照一组N个生成多项式将每个输入比特编码 为称为一个编码分支的N个编码比特。每个生成多项式G(x)计算出一个编码 比特。N个编码比特被组合为一个N比特的编码分支。译码器的约束长度K 是编码过程中所用数据比特数并且决定了编码的纠错能力。在一定的硬件和 计算复杂度代价下,较长的约束长度K产生更好的性能。一个状态由前K-1 个输入比特确定并且有2K-1种可能性。对于2K-1个状态中的每一个,’0’或’1’ 输入比特导致两种可能编码分支的其中一种。由于每个输入比特被编入N个 编码比特,所以卷积编码器的码率为1/N。通过对编码比特的截断可以从1/N 编码中获得其他的编码率。截断的编码完全按照J.Cain、G.Clark和J.Geist 在“”(IEEE信息论会刊,IT-25,pgs.97-100,1979年1月)中所述的那样 处理。

一般情况下,Viterbi译码器被用于在接收机端译码被发送的编码分支。 有关Viterbi译码器的理论和操作讨论包含在A.Viterbi的论文“通信系统 中的卷积码及其性质”(IEEE通信技术会刊,Vol.COM19,no.51971年10月, pgs.821-835)中。在有关信道噪声的一定假设下,Viterbi译码器实现了发 送数据路径的最大似然译码。对于每个接收的编码分支,计算了进入每个状 态的所有分支的分支度量并且加入相应的以前路径度量。挑选出进入每个状 态的最佳路径并存储为新的路径度量。被选择的路径存储在路径存储器内。 在“速率可变Viterbi译码器及其性能特性的研究”(第六届数字卫星通信国 际会议,Phoenix,AZ,1983年9月)中,Y.Yasuda等人指出,经过一定的返 回链接深度,最小路径度量的幸存路径都收敛于同一条路径。因此通过回溯 至少该链接返回距离对路径进行跟踪获得了Viterbi译码比特。

CRC码是线性系统循环分组码,它可以可靠地检测到长度为不超过n-k 的突发错,这里k为输入数据长度而n为输出编码长度。CRC码在本领域内 是公知的并且在许多参考资料(包括S.Lin和D.Costello的“差错控制编码: 基础和应用”,Prentice Hall,1995)中可以找到该主题的较佳论述。CRC 码由(n-k)阶CRC多项式P(x)确定。对于一个n-k的CRC码,k个数据符号组 成的被编码为称为码字的n个编码符号组成的块。

在系统分组码中,k个数据符号构成码字的第一个k个编码符号。k个 数据符号按照生成器多项式P(x)线性组合形成n-k个一致校验符号。由于CRC 码线性、系统和循环的性质,借助简单的移位寄存器和组合逻辑电路就可以 容易实现编码过程。同样,在接收机端,通过借助生成多项式划分接收到的 符号可以容易地实现译码。可以采用生成一致校验符号的同一简单电路完成 划分操作。如果没有发送差错,则移位寄存器的内容为零。

在示意性的CDMA通信系统中,卷积码和CRC码由“用于双模宽带扩展 谱蜂窝系统的TIA/EIA/IS-95移动站-基站兼容性标准”确定,以下简称为 IS-95标准。IS-95标准定义的卷积码用于前向链路为最佳码率为1/2,k=9 的卷积码和用于反向链路的码率为1/3,k=9的卷积码。但是IS-95标准定 义的CRC码是在假定输入数据是随机的(例如白噪声)情况下选定的。对于诸 如用于CDMA通信系统中的串接码而言,这种假定是无效的并且导致对CRC 码的次最佳。

(3)发明内容

本发明的目标是提供一种用于为线性编码系统选择CRC多项式(或CRC 生成器)的新的改进方法。

按照本发明的一个方面,提供了一种选择串接码内循环冗余校验生成 器的方法,它包含以下步骤:

计算给定长度下所有循环冗余校验生成器的距离谱;

从所述距离谱内选择最佳的循环冗余校验生成器,

其中,所述计算步骤包含以下步骤:确定信息序列;判断所述信息序 列是否回并入零状态;如果所述信息序列已经回并入所述零状态,则针对所 有循环冗余校验生成器检验所述信息序列;如果所述信息序列通过所述检验 步骤,则计算所述信息序列的权重;以及更新所述信息序列通过检验步骤的 每个循环冗余校验生成器的所述距离谱,

所述选择步骤包含以下步骤:根据所述距离谱确定所述循环冗余校验 生成器的最小距离;以及选择最小距离最大的循环冗余校验生成器。

在下述示意性实施例中,系统利用了包含CRC码和卷积码的串接码。CRC 生成器根据对给定长度L下所有CRC生成器计算的距离谱选定。每个距离谱 包含不同权重(或Hamming距离)下路径(码字)数的列表。权重决定了编码的 差错检测和纠错能力。在示意性的实施例中,只有权重大于或等于卷积码自 由距离dfree并小于两倍dfree的路径才被考虑。为了尽可能减少复杂性并且由 于权重大于两倍dfree的路径对编码性能产生的影响微不足道,这些路径被忽 略。

本发明的目标是尽可能减少未检测到包含CRC码和卷积码的串接码内误 码的概率。在示意性的实施例中,距离谱包含了各种权重下的路径数。这些 路径代表了误码信息序列I(x),它们从发送的全零序列(或零状态)分叉并且 又被合并回零状态。下述参考文献描述了生成信息序列I(x)和计算对应信息 序列I(x)的码字权重的系统方法。在本发明中,CRC生成器校验被合并回零 状态的信息序列I(x)。对于每个CRC生成器,如果CRC校验通过,表明CRC 校验未检测到差错信息序列,则计算该路径权重并通过使该权重下的路径数 增一更新该CRC生成器的距离谱。否则,如果CRC未通过校验,则由于CRC 校验能够检测该差错,所以忽略该差错信息序列。在示意性的实施例中,选 择具有最大的最小距离dmin的CRC生成器。如果有一个以上的CRC生成器具 有同样的最大dmin,则选择最大dmin下路径数最小的CRC生成器。

本发明的目标还针对尽可能减少CRC码选择过程的复杂性。在示意性的 实施例中,由于权重大于两倍dfree的路径对代码性能的影响微不足道,所以 它们不在考虑范围之内。通过限制权重考虑范围,可以删节信息序列I(x)的 网络以尽可能减小复杂性。

(4)附图说明

通过以下结合附图对本发明的实施例的描述,可以更好地理解本发明的 特征、目标和优点,附图中相同的标号表示相同的部分,其中:

图1为实现本发明的示意性线性编码系统的框图

图2为示意性卷积编码器的框图;

图3为用来计算距离谱的信息序列I(x)的示意性树形图;

图4为CRC生成器选择过程的示意性流程图;以及

图5为最佳CRC生成器选择过程的示意性流程图。

(5)具体实施方式

本发明实现于为包含CRC码和附加码的串接码选择CRC多项式(或CRC 生成器)的方法。在示意性实施例中,串接码包含CRC码和卷积码。在诸如 IS-95之类的现有技术中,当CRC校验应该检测到误码时是以译码数据是随 机的假设选择CRC生成器。但是对于串接码,由于数据还用已知结构的卷积 码进行编码,所以这种假设是无效的。最佳的CRC生成器在尽可能减小未检 测到的译码错误概率的同时提供较高的性能。正如本说明书中所采用的,最 佳CRC生成器表示为根据CRC选择过程中采用的判据标识被选择的CRC生成 器。

图1示出了利用串接码的示意性通信系统框图。信息序列I(x)被提供给 借助CRC生成器P(x)分组编码信息序列的CRC生成器10。信息序列、CRC奇 偶比特和零或更多的码尾比特被提供给借助生成器G(x)对比特进行编码的 卷积编码器12。来自卷积编码器12的编码符号被提供给调制器和发射机(MOD 和TMTR)14以对符号处理用于通过天线16发送。在接收机端,信号由天线 20接收并路由至处理接收信号以提供解调符号的接收机和解调器(RCVR和 DEMOD)22。解调符号被提供给Viterbi译码器24,它对符号进行译码并将译 码数据提供给CRC校验单元26。CRC校验单元26完成CRC校验并提供校验的 数据。CRC校验单元26还提供指示CRC校验通过还是失败的CRC比特。

通过计算所有CRC生成器的距离谱可以确定给定串接码的给定长度L的 最佳CRC生成器P(x)。距离谱包含各种权重(Hamming距离)下路径数(或码字) 的列表。Hamming距离是两条路径之差的量度并且决定了代码的检错和纠错 能力。在示意性的实施例中,距离谱以表格形式列出了权重大于或等于卷积 码自由距离dfree并且小于两倍dfree的路径数。由于权重大于两倍dfree的路 径对代码性能的影响微不足道,所以它们被忽略不计。对所考虑权重范围的 限制使得距离谱计算时网格得到删节,从而尽可能减小了CRC生成器选择过 程的复杂度。

在示意性实施例中,可假定发送系统发送全零序列,以下称为全零路径。 在发送期间,可能产生发送误码,导致接收的序列与零状态有分歧。最后误 码终止并且接收的序列被合并回零状态。在本发明中,由于删除可以被指 示出来或者可以为对应有误码序列的帧提出重新发送的请求,所以能够被 CRC码检测到的误码序列没有以表格形式列出。但是未被CRC码检测到的误 码序列(例如CRC码在实际上发生误码时指示误码序列有效)可能导致系统性 能的下降。

由于CRC码和卷积码都是线性的,所以根据代码生成矩阵乘法的结合性 质,串接码也是线性的。线性码的共同评价判据是代码的自由距离dfree(或 最小距离dmin)和距离谱。由于串接码也是线性的,所以可通过计算非零码字 的最小权重确定dmin。对于线性码,可通过将路径与全零路径比较确定其权 重。对于卷积码,全零路径包含了全零代码分支。因此非零路径的权重可以 通过沿路径求和所有代码比特权重计算出来。如同本说明书中所采用的那样, dfree只是卷积码的最小距离而dmin是串接码或CRC校验检测不到的误码的最 小距离。

在示意性的实施例中,只考虑包含一个差错事件的路径。由于包含两个 或更多差错事件的路径使搜索的复杂度急剧增大而对CRC生成器选择过程结 果的影响微小,所以它们没有被考虑。非零路径是从零状态分叉并且随后与 零状态合并的差错信息序列I(x)。如果路径已经与零状态合并,则完成CRC 校验。如果CRC校验通过(这指示CRC生成器未检测到该误码信息序列),则 计算该路径权重并相应更新该CRC生成器的距离谱。如果CRC校验失败,则 在距离谱计算中忽略该路径。在本领域内计算路径权重的方法是公知的。在 G.David Forney Jr.题为“采用贯序译码器分析卷积码结构”的参考文献(IEEE 信息论会刊,vol.IT-16,pgs.793-795,Nov.1970,以下称为Forney参考 文献)中描述了这样一种方法。

图2示出了示意性卷积编码器12的框图。卷积编码器是约束长度K=3 的码率为1/2的编码器,对于每个数据输入比特,有两个在节点44a和44b 上采样的编码输出比特。卷积编码器12由多项式生成器G1(x)=1+X+X2和 G2(x)=1+X2定义。编码器状态由存储器单元(D)40a和40b的二进制内容定义。 零状态意味着存储器单元40a和40b的内容为零。通过将数据输入比特移位 入存储器单元40a并将前一数据输入比特移位入存储器单元40b获得编码器 下一状态。编码器输出通过图2中加法器42实现的异或函数计算出来。

在示意性的实施例中,利用所有信息序列I(x)计算了给定长度下所有 CRC生成器的距离谱。在Forney的参考文献中描述了系统地生成信息序列I(x) 的方法。I(X)可以用图3所示网格树形图表示。该树对应图2示意性的卷积 编码器。由于只考虑与零状态分歧的路径,所以I(x)内的第一信息比特假定 为1。第二信息比特可以为零或1。对于每种比特假设(例如“0”和“1”), 计算代码比特并且确定下一状态。在图3中,虚线表示“0”的假设而实线表 示“1”的假设。状态位于节点上。在线的中部,表示了与信息比特(假定) 和状态对应的代码比特。对于第二信息比特的两种假设中的每一种,第三信 息比特可以是两种假设(“0”和“1”)中的一种。对每种假设再次计算代码 比特并确定下一状态。通过沿路径求和非零代码比特可以计算出每条路径的 累计权重。在图3中,计算路径的权重并用括号内的数值表示。如图3所示, 树随信息比特的增加而指数增长。在示意性的实施例中,树被删节为将权重 大于两倍dfree的权重排除在进一步考虑范围以外。这种删节简化了网格的复 杂度和CRC生成器选择过程。当树节点结束于全零状态,则已经找到误码序 列I(x)并且树不再从该节点延伸下去。由图3可见,路径60开始于全零状 态并且结束于全零状态。路径60从全零序列开始的距离为5并且认为权重也 为5。

在示意性的实施例中,计算了给定长度L下所有CRC生成器的距离谱并 将其存储在距离谱表内。CRC生成器的数量由CRC码的长度确定。具体而言, 对于长度为L的CRC码,考虑采用2L-1个CRC生成器。CRC生成器的第一比 特和最后比特总是“1”。表1示出了示意性4比特CRC码的所有CRC生成器 候选对象的列表。

表1-可能的4比特CRC生成器     CRC P(x)(二进制)     CRC P(x)(八进制)     10001     21     10011     23     10101     25     10111     27     11001     31     11011     33     11101     35     11111     37

在示意性的CRC生成器选择过程实施例中,利用信息序列I(x)计算了给 定长度下所有CRC生成器的距离谱并将其存储在距离谱表内。在示意性的实 施例中,利用两个循环来计算距离谱。第一循环遍历信息序列I(x)。第二循 环在第一循环内并遍历所有CRC生成器P(x)。对于每种信息序列Ij(x),判 断序列是否合并回零状态。如果序列合并回零状态,则由第二循环内的所有 CRC生成器校验该序列。对于每个CRC生成器Pi(x),如果序列通过CRC校验, 则计算该序列的权重并输入对于该CRC生成器的距离谱表内并更新权重。

对于卷积码,零状态由移位寄存器内的K-1个比特定义,这里K为卷积 编码器的约束长度。当编码器处于零状态,则输入编码器的零信息比特使得 下一状态为零状态并且输出代码比特为零。信息序列I(x)包含比特序列,其 中由于只考虑与零状态分歧的路径,所以序列内第一比特为“1”。随着附加 比特的生成,编码器通过一系列状态。当第一次到达零状态时找到I(x)序列。

信息序列I(x)可以有各种长度。对于奇数表示的CRC生成器P(x),当 且仅当P(x)整除xnI(x)(对于所有n=0,1,2等),则P(x)整除I(x)。因此通 过检查如果P(x)除以I(x)没有余数(例如CRC校验通过),则在不考虑CRC 代码块大小的前提下可以只考虑包含一个差错事件的序列。另外,被校验的 信息序列I(x)用n个零填充,从而不管帧大小如何都用序列填充一帧。

比较好的是,所选择的CRC生成器在给定CRC长度和卷积代码下最小距 离dmin最大。最小距离dmin和距离谱决定了代码的性能。在示意性实施例中, 用来选择最佳CRC生成器的判据是串接码的距离谱。将dmin最大的CRC生成 器选定为最佳的CRC生成器。对于相持的情况(例如两个或更多的CRC生成器 具有最大的dmin),则选择最大dmin下路径数量最小的CRC生成器。而且如果 仍有相持,则考虑下一最大权重。重复该过程直到选择一个CRC生成器或者 考虑距离谱表内所有的权重。可以采用其他判据(例如选择可以从距离谱计算 得到最小误码概率),但是它们也落在本发明范围之内。

在CRC生成器选择过程的另一实施例中,计算每个CRC生成器的距离谱 并与最佳距离谱比较。开始时最佳距离谱初始化为最差状态(例如通过设定距 离谱内路径数最大的最小权重)。如果当前CRC生成器的距离谱比最佳距离谱 更好,则用该CRC生成器的距离谱更新最佳距离谱,并且标识CRC生成器。 重复该过程直到生成了所有CRC生成器的距离谱并进行了比较。利用上述概 念选择CRC生成器的各种实施例都落在本发明的范围内。

I.选择最佳的CRC码

图4示出了本发明CRC生成器选择过程的示意性流程图。选择过程在块 102处开始。在第一步骤(块104)中,将存储计算得到的所有CRC生成器距离 谱的距离谱表初始化为零。在块106,根据上述Forney参考文献描述的方 法选择新的信息序列Ij(x)。通过如上所述,沿路径求和代码比特计算出对 应Ij(x)的码字的权重dj。在块108处,选择第一CRC生成多项式Pi(x)。随 后在块110处作校验以确定Pi(x)是否整除Ij(x)。为此可检查除法运算的余 数。如果Pi(x)未整除Ij(x),则过程转至块114。如果Pi(x)整除Ij(x),则 在块112通过使输入的数值递增来更新对于CRC生成器Pi(x)和权重di,j的距 离谱表内的输入。在块114,判断是否已经考虑了所有的CRC生成器P(x)。 如果不是,则过程返回块108并且选择下一CRC生成器Pi(x)。否则,如果 已经考虑了所有的CRC生成器P(x),则过程转入块116。

在块116,判断是否检查过权重小于两倍dfree的所有路径。如果不是, 则过程返回块106并且计算新的信息序列Ij(x)。否则,如果已经检查过权 重小于两倍dfree的所有路径,则过程继续进入块118,选择距离谱表内的最 佳CRC生成器P(x)。随后在块120处终止过程。

可以借助一组判据选择最佳的CRC生成器P(x)。在示意性的实施例中, 所用判据试图使串接码的最小距离最大并使每个距离上的路径数(或码字)最 小。由于CRC码的性能主要由最小距离决定,所以该判据便于应用并且提供 了较好的结果。但是也可以考虑采用诸如误码概率之类的其他判据并且也属 于本发明的范围。

图5示出了最佳CRC生成器选择过程(图4中的块118)的示意性流程图。 选择过程始于块202。在块204,该过程在距离谱表中选择最小的权重dj。 在示意性的实施例中,对于1/2码率、K=9的卷积编码器,在dfre。为12时的 最小权重为0-11(参见表2)。在第一循环内,该过程确定该权重下最小的路 径数Nmin。在进入第一循环之前,在块206将最小的路径数Nmin初始化为较 大数值的Nmax。在块208,即第一循环的第一步骤,在距离谱表内选择CRC 生成器Pi(x)。接着在块210确定权重dj下该CRC生成器Pi(x)的路径数Ni,j。 在块212,该路径数Ni,j与该权重下所有CRC生成器P(x)的最小路径数进行 比较。如果该CRC生成器Pi(x)的路径数Ni,j不小于Nmin,则过程进入块216。 否则,如果该CRC生成器Pi(x)的路径数Ni,j小于Nmin,则在块214将Ni,j设 定为Nmin。在块216,判断是否已考虑了距离谱表内所有的CRC生成器P(x)。 如果有一个或更多的CRC生成器未被考虑,则过程返回块208并且考虑下一 CRC生成器Pi(x)。否则,过程转入作为第二循环始点的块218。

第二循环从距离谱表内考虑的CRC生成器中去除次最佳CRC生成器。在 块220,即第二循环内的第一步骤,在距离谱表内选择CRC生成器Pi(x)。接 着在块222确定权重dj下该CRC生成器Pi(x)的路径数Ni,j。在块224,该路 径数Ni,j与第一循环确定的最小路径数Nmin进行比较。如果该CRC生成器Pi(x) 的路径数Ni,j不大于Nmin,则过程进入块228。否则,如果该CRC生成器Pi(x) 的路径数Ni,j大于Nmin(这表示该CRC生成器Pi(x)在该权重dj下包含比最佳 CRC生成器更多的路径),则在块226从距离谱表内去除该CRC生成器Pi(x)。 在块228,判断是否已考虑了距离谱表内所有的CRC生成器P(x)。

在第二循环内,只需考虑未从距离谱表内去除的CRC生成器。由于在前 一遍历第二循环时从距离谱表内去除的CRC生成器是次最佳的,所以它们可 以被忽略。如果有一个或更多的CRC生成器未考虑,则过程返回块220并且 考虑下一CRC生成器。否则,过程转入块230。

块118确定给定CRC长度和卷积码下的最佳CRC生成器。在有些例子中, 由于两个或更多的CRC生成器具有相同的距离谱,所以它们都是最佳的。当 距离谱表内只剩下一个CRC生成器Pi(x)或者已经考虑过了距离谱表内所有 权重时在块118结束。

在块230,判断距离谱表内是否剩下不止一个CRC生成器P(x)。如果距 离谱表内只剩下一个CRC生成器,则过程转入块234。否则,在块232判断 是否考虑了距离谱表内所有的权重。如果未考虑全部权重,则过程返回块204 并且考虑下一权重。否则,过程转入块234,将距离谱表内剩下的CRC生成 器P(x)视为该CRC长度和卷积码下的最佳CRC生成器。过程在块236结束。

II.示意性的CRC码选择

表2示出了示意性的4比特CRC生成器与1/2码率、K=9卷积码(由生成 器G0=753(八进制)和G1=561(八进制)定义)组合的距离谱。表1列出了8个 可能的CRC生成器。对于每个CRC生成器,计算了它们的距离谱。由于CRC 生成器P(x)=21(八进制)在最大的最小距离dmin为14处的路径数最小(1), 所以它是最佳的CRC生成器。其他的CRC生成器(P(x)=25,P(x)=33,P(x)=35 和P(x)=37)的dmin也为14,但是它们在dmin=14的路径数较大。

表3列出了串接码内各种长度的最佳CRC生成器的距离谱,串接码包含 由生成器G0=753(八进制)和G1=561(八进制)定义的R=1/2码率、K=9卷积码。 为比较起见,表3第二列示出了无CRC码的卷积编码器的距离谱。值得注意 的是,随着编码长度的增大,自由距离dfree也增大并且性能也得以改善。

                     表2-4比特CRC生成器的距离谱表     权重   (Hamming     距离     无     CRC     CRC   P(x)=     21   CRC   P(x)=     23     CRC     P(x)=     25   CRC   P(x)=     27   CRC   P(x)=     31     CRC     P(x)=     33     CRC     P(x)=     35   CRC   P(x)=   37     0-11   0     0     0     0     0     0     0     0     0     12   11     0     1     0     1     3     0     0     0     13   0     0     0     0     0     0     0     0     0     14   50     1     2     2     1     9     3     4     5     15   0     0     0     0     0     0     0     0     0     16   286     24     15     25     20     17     19     14     13     17   0     0     0     0     0     0     0     0     0     18   1630     106     110     81     105     106     99     116     108     19   0     0     0     0     0     0     0     0     0     20   9639     570     623     630     609     632     600     643     572     21   0     0     0     0     0     0     0     0     0     22   55152     3470     3431     3440     3362     3562     3529     3483     3522

                       表3-CRC卷积码的距离谱     权重   (Hamming     距离     无     CRC    2-比特  CRC  P(x)=   3-比特   CRC   P(x)=   4-比特   CRC   P(x)=   5-比特   CRC   P(x)=   6-比特   CRC   P(x)=   7-比特   CRC   P(x)=   8-比特   CRC   P(x)=   10-比特   CRC   P(x)=   5     17     21     63     125     213     635     2317     0-11   0   0     0     0     0     0     0     0     0     12   11   1     0     0     0     0     0     0     0     13   0   0     0     0     0     0     0     0     0     14   50   13     5     1     1     0     0     0     0     15   0   0     0     24     0     0     0     0     0     16   286   76     44     0     9     2     0     0     0     17   0   0     0     0     0     0     0     0     0     18   1630   425     206     106     53     130     10     2     0     19   0   0     0     0     0     0     0     0     0     20   9639   2340     1185     570     305     155     99     46     6     21   0   0     0     0     0     0     0     0     0     22   55152   13779     6863     3470     1729     859     432     231     61

本发明提供的改进可以用实例阐述。按照IS-95标准,用作1/8码率的 6比特CRC为P(x)=107(八进制)。该CRC生成器连同R=1/2、K=9的卷积编码 器产生最小距离dmin=14的CRC卷积串接码。参见表3,产生最大自由距离的 6比特CRC生成器为P(x)=125(八进制)。这种CRC生成器和同一R=1/2、K=9 卷积码下的串接码产生dmin=16。因此利用本发明选定的CRC码的串接码最小 距离比IS-95定义的CRC生成器大2。

III.计算距离谱

对于每个CRC生成器Pi(x),可以通过计算对应信息序列的码字的 Hamming距离(或权重)计算距离谱。如上所述,包含两个线性码的串接码也 是线性的。对于全零序列,利用标称上的CRC实施方案(其中寄存器被初始化 为零),CRC奇偶比特也为零。因此全零信息流的串接码字也为零。因此为了 寻找dmin,计算非零码字的权重就足够了。

在本发明中,只考虑了卷积码的单个差错事件(例如只有产生分歧并与 全零序列合并一次的路径)。由于两倍于距离dfree的路径对这些码字的CRC 码性能贡献较小,所以忽略它们不会影响精度。首先,考虑以I(x)表示的信 息序列,它开始于“1”(例如从零状态分异)并且在几个信息比特之后并入零 状态。在示意性的实施例中,只考虑了奇数的CRC多项式P(x)。在这种情况 下,当且仅当P(x)被xnI(x)整除,n=0,1,2,…,则P(x)被I(x)整除。因此 如果搜索了整除P(x)没有余数的所有路径I(x),则可以计算串接码的局部距 离谱(只考虑一个差错事件)而无需考虑数据序列长度(例如CRC块或帧尺 寸)。

本发明借助IS-95标准定义的正向链路的1/2码率、K=9卷积码作了描 述。本发明也可用于IS-95标准定义的反向链路的1/3码率、K=9卷积码。 实际上,本发明可以用于任何卷积码。

虽然本发明借助包含CRC码和卷积码的串接码作了描述,但是本发明也 可用于其他串接码。一些示意性的串接码包括卷积码和Reed-Solomon码、卷 积码和另一卷积码以及CRC码、卷积码和Reed-Solomon码。将本发明用于各 种串接码都属于本发明的范围。

上述对本发明所作的描述可以使本领域内技术人员利用本发明。对于他 们而言,无需创造性的劳动即可对本发明作出各种修改和改动,因此本发明 的范围和精神由后面所附权利要求限定。

QQ群二维码
意见反馈