CN1276930A - 选择串接码内循环冗余校验生成器的系统和方法 - Google Patents

选择串接码内循环冗余校验生成器的系统和方法 Download PDF

Info

Publication number
CN1276930A
CN1276930A CN98808534A CN98808534A CN1276930A CN 1276930 A CN1276930 A CN 1276930A CN 98808534 A CN98808534 A CN 98808534A CN 98808534 A CN98808534 A CN 98808534A CN 1276930 A CN1276930 A CN 1276930A
Authority
CN
China
Prior art keywords
crc
maker
code
path
sign indicating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN98808534A
Other languages
English (en)
Other versions
CN1150681C (zh
Inventor
J·M·施泰因
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN1276930A publication Critical patent/CN1276930A/zh
Application granted granted Critical
Publication of CN1150681C publication Critical patent/CN1150681C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/47Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

一种用于选择循环冗余校验(CRC)多项式(或CRC生成器)的方法和装置利用了包含CRC码和卷积码的串接码。根据给定长度L下所有可能CRC多项式计算的距离谱选择CRC生成器(118)。距离谱包含在各种权重(或Hamming距离)下的路径数(或码字)列表。这些路径代表从全零发送序列(或零状态)分歧并又合并回零状态的误码信息序列I(x)。路径由CRC生成器校验。如果CRC校验通过,表明CRC校验未检测到误码信息序列,则计算该路径权重并更新该CRC多项式的距离谱。否则,如果CRC校验未通过,则忽略该路径。选择最小距离dmin最大的CRC生成器。

Description

选择串接码内循环冗余校验生成器的系统和方法
发明领域
本发明涉及选择串接码内循环冗余校验(CRC)生成器的方法和装置。本发明可用作为线性编码系统选择CRC多项式。
背景技术
随着数字通信的发展和通过受损有限带宽信道发送大量数据的需要,为方便纠正数据接收错误而对数字数据进行编码就显得非常需要了。数据发送一般受阻于发送信道内的故障,即发送带宽内的附加噪声和杂散信号。出于实践考虑,发射功率受到一定的限制,而且发射信号在到达接收机之前由于路径损耗而衰减并且受到其他现象(例如多路径信号传播)的影响而失真。数字通信系统通过设计可以判断接收机能够工作的最差情况信号质量。这种信号质量以每比特能量噪声比(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码的次最佳。
发明内容
本发明的目标是提供一种用于为线性编码系统选择CRC多项式(或CRC生成器)的新的改进方法。
按照本发明的一个方面,提供了一种选择串接码中CRC生成器的方法,它包括以下步骤:计算给定长度下所有CRC生成器的距离谱;从所述距离谱中选择最佳的CRC生成器。
按照本发明的另一方面,提供了一种选择串接码中CRC生成器的装置,它包括:计算给定长度下所有CRC生成器的距离谱的装置;从所述距离谱中选择最佳的CRC生成器的装置。
本发明还提供了线性编码系统,它利用包含CRC码和卷积码的串接码选择循环冗余校验(CRC)多项式,该系统包括:确定给定长度L下所有可能CRC多项式的距离谱的装置,每个距离谱包含赋予代表误码信息序列的各种权重的路径数列表,差错信息序列从全零发送序列分叉并又合并回零状态;以及根据确定的距离谱,通过校验CRC多项式选择的CRC多项式的装置,如果CRC校验通过,则计算该路径的权重并更新所通过CRC多项式的距离谱,如果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)的网络以尽可能减小复杂性。
附图的简要说明
通过以下结合附图对本发明的实施例的描述,可以更好地理解本发明的特征、目标和优点,附图中相同的标号表示相同的部分,其中:
图1为实现本发明的示意性线性编码系统的框图;
图2为示意性卷积编码器的框图;
图3为用来计算距离谱的信息序列I(x)的示意性树形图;
图4为CRC生成器选择过程的示意性流程图;以及
图5为最佳CRC生成器选择过程的示意性流程图。
实施发明的较佳方式
本发明实现于为包含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)(八进制)
    100001     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的卷积编码器,在dfree为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   CRCP(x)=21    CRCP(x)=23     CRCP(x)=25     CRCP(x)=27     CRCP(x)=31   CRCP(x)=33     CRCP(x)=35     CRCP(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-比特CRCP(x)=5   3-比特CRCP(x)=17   4-比特CRCP(x)=21   5-比特CRCP(x)=63   6-比特CRCP(x)=125   7-比特CRCP(x)=213   8-比特CRCP(x)=635   10-比特CRCP(x)=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码。将本发明用于各种串接码都属于本发明的范围。
上述对本发明所作的描述可以使本领域内技术人员利用本发明。对于他们而言,无需创造性的劳动即可对本发明作出各种修改和改动,因此本发明的范围和精神由后面所附权利要求限定。

Claims (17)

1.一种选择串接码内CRC生成器的方法,其特征在于包含以下步骤:
计算给定长度下所有CRC生成器的距离谱;
从所述距离谱内选择最佳的CRC生成器。
2.如权利要求1所述的方法,其特征在于所述计算步骤包含以下步骤:
确定信息序列;
判断所述信息序列是否回并入零状态;
如果所述信息序列已经回并入所述零状态,则针对所有CRC生成器检验所述信息序列;
如果所述信息序列通过所述检验步骤,则计算所述信息序列的权重;以及
更新所述信息序列通过检验步骤的每个CRC生成器的所述距离谱。
3.如权利要求2所述的方法,其特征在于所述计算步骤进一步包括以下步骤:
去除权重大于所述串接码两倍自由距离的信息序列。
4.如权利要求2所述的方法,其特征在于所述检验步骤包括如下步骤:
判断所述CRC生成器是否整除所述信息序列。
5.如权利要求1所述的方法,其特征在于所述选择步骤包含以下步骤:
根据所述距离谱确定所述CRC生成器的最小距离;以及
选择最小距离最大的CRC生成器。
6.如权利要求5所述的方法,其特征在于进一步包含以下步骤:
确定具有相同的最大的最小距离的CRC生成器的路径数;以及
选择路径数最小的CRC生成器。
7.如权利要求6所述的方法,其特征在于进一步包含以下步骤:
如果两个或更多的CRC生成器具有相同的所述最大的最小距离和路径数,则根据所述距离谱内下一最大权重选择CRC生成器。
8.如权利要求7所述的方法,其特征在于根据所述下一最大权重所述选择CRC生成器的步骤包括:
确定所述距离谱内所述下一最大权重;
确定所述下一最大最小距离上确定所述两个或更多CRC生成器的路径数;以及
选择所述下一最大最小距离上路径数最小的CRC生成器。
9.如权利要求8所述的方法,其特征在于包含如下步骤:
根据所述下一最大权重重复所述选择CRC生成器的步骤直到只有一个CRC生成器被选定或者考虑了所述距离谱内所有的权重。
10.如权利要求1所述的方法,其特征在于所述串接码包含CRC码和卷积码。
11.如权利要求10所述的方法,其特征在于所述卷积码为1/2码率、K=9的卷积码。
12.如权利要求10所述的方法,其特征在于所述卷积码为1/3码率、K=9的卷积码。
13.如权利要求10所述的方法,其特征在于所述卷积码符合IS-95标准。
14.如权利要求10所述的方法,其特征在于所述CRC生成器的所述给定长度大于1。
15.如权利要求1所述的方法,其特征在于所述串接码包含CRC码和线性码。
16.一种选择串接码内CRC生成器的装置,其特征在于包含:
计算给定长度下所有CRC生成器的距离谱的装置;
从所述距离谱内选择最佳的CRC生成器的装置。
17.一种用于利用包含CRC码和卷积码的串接码而选择循环冗余校验(CRC)多项式的线性码系统,其特征在于包含:
确定给定长度L下所有可能CRC多项式的距离谱的装置,每个距离谱包含在代表误码信息序列的各种权重下的路径数列表,误码信息序列从全零发送序列分歧并又合并回零状态;以及
根据确定的距离谱,通过校验CRC多项式选择CRC多项式的装置,
如果CRC校验通过,则计算该路径的权重并更新所通过的CRC多项式的距离谱,如果CRC校验未通过,则忽略该路径并且选择最小距离最大的CRC多项式。
CNB988085348A 1997-08-27 1998-08-24 选择串接码内循环冗余校验生成器的方法 Expired - Fee Related CN1150681C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/920,626 1997-08-27
US08/920,626 US6085349A (en) 1997-08-27 1997-08-27 Method for selecting cyclic redundancy check polynomials for linear coded systems

Publications (2)

Publication Number Publication Date
CN1276930A true CN1276930A (zh) 2000-12-13
CN1150681C CN1150681C (zh) 2004-05-19

Family

ID=25444095

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB988085348A Expired - Fee Related CN1150681C (zh) 1997-08-27 1998-08-24 选择串接码内循环冗余校验生成器的方法

Country Status (10)

Country Link
US (1) US6085349A (zh)
EP (1) EP1016222A1 (zh)
JP (1) JP2002519905A (zh)
KR (1) KR20010023315A (zh)
CN (1) CN1150681C (zh)
AR (1) AR016897A1 (zh)
AU (1) AU9032998A (zh)
TW (1) TW390085B (zh)
WO (1) WO1999010984A1 (zh)
ZA (1) ZA987690B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296455B (zh) * 2001-05-23 2011-08-24 高通股份有限公司 通信系统中所存储的服务参数的同步
CN102487282A (zh) * 2010-12-03 2012-06-06 上海华虹集成电路有限责任公司 一种实现可变长crc运算的电路
CN104143200A (zh) * 2014-07-16 2014-11-12 华南理工大学 一种图像附加信息的边框型编码与智能识别方法

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2878265B1 (ja) * 1998-03-16 1999-04-05 三菱電機株式会社 符号割当装置並びにその方法
FR2785744B1 (fr) * 1998-11-09 2001-01-26 Canon Kk Procede et dispositif de codage de sequences de donnees, procede et dispositif de decodage associes
US6483828B1 (en) * 1999-02-10 2002-11-19 Ericsson, Inc. System and method for coding in a telecommunications environment using orthogonal and near-orthogonal codes
JP3728578B2 (ja) * 1999-03-31 2005-12-21 富士通株式会社 マルチキャリア伝送における不均一誤り保護方法並びにその符号器及び復号器
DE19951451A1 (de) * 1999-10-25 2001-04-26 Bayerische Motoren Werke Ag Verfahren zum Absichern der Datenübertragung in einem Datenbus
JP3297668B2 (ja) 2000-04-26 2002-07-02 松下電器産業株式会社 符号/復号化装置及び符号/復号化方法
EP2627008A3 (en) 2000-12-29 2013-09-11 Intel Mobile Communications GmbH Channel codec processor configurable for multiple wireless communications standards
US6651213B2 (en) * 2001-03-19 2003-11-18 International Business Machines Corporation Programmable multi-level track layout method and system for optimizing ECC redundancy in data storage devices
DE10117034A1 (de) * 2001-04-05 2002-10-17 Siemens Ag Vefahren zur Kanalcodierung
DE60239455D1 (de) * 2001-05-23 2011-04-28 Qualcomm Inc Dienstenparametersynchronisierung von gespeicherten daten in einem kommunikationsystem
US7499698B2 (en) * 2002-01-28 2009-03-03 Qualcomm Incorporated Synchronization of stored service parameters in a communication system
KR100893053B1 (ko) * 2001-10-26 2009-04-15 엘지전자 주식회사 길쌈 부호화 및 복호화를 위한 프레임 구성 및 에러 검출방법
US7036067B2 (en) * 2003-03-28 2006-04-25 Arraycomm, Llc Error detection for multi-stream communications
KR100605745B1 (ko) * 2004-01-06 2006-07-31 삼성전자주식회사 노드들로 구성된 이동통신 시스템에서 데이터 전송 경로결정 장치 및 방법
US7392459B2 (en) * 2004-04-14 2008-06-24 Lucent Technologies Inc. Method and apparatus for preventing a false pass of a cyclic redundancy check at a receiver during weak receiving conditions in a wireless communications system
WO2008021930A2 (en) * 2006-08-11 2008-02-21 Distribution Control Systems Method of correcting message errors using cyclic redundancy checks
US8341510B2 (en) * 2007-06-22 2012-12-25 Sony Corporation CRC generator polynomial select method, CRC coding method and CRC coding circuit
US8397147B2 (en) * 2007-11-02 2013-03-12 Telefonaktiebolaget L M Ericsson (Publ) Optimum distance spectrum feedforward low rate tail-biting convolutional codes
US8375280B2 (en) * 2007-11-02 2013-02-12 Telefonaktiebolaget L M Ericsson (Publ) Optimum distance spectrum feedforward tail-biting convolutional codes
JP5298622B2 (ja) * 2007-12-21 2013-09-25 ソニー株式会社 送信装置および方法、受信装置および方法
EP2075918A3 (en) 2007-12-21 2012-09-12 Sony Corporation Transmission apparatus and method, reception apparatus and method, and program
JP4798164B2 (ja) * 2008-04-02 2011-10-19 ソニー株式会社 送信装置および方法、受信装置および方法、並びにプログラム
CN101321035B (zh) * 2008-07-09 2012-03-21 上海华为技术有限公司 差值上限获取方法、定点方法及装置
FR2944168A1 (fr) * 2009-04-06 2010-10-08 St Microelectronics Sa Procede de transmission d'un mot d'information binaire
JP5886194B2 (ja) * 2009-07-02 2016-03-16 マサチューセッツ インスティテュート オブ テクノロジー インフルエンザ感染の診断および/または処置のための組成物および方法
US8467480B2 (en) * 2009-09-14 2013-06-18 Qualcomm Incorporated Combining decision metrics for decoding based on payload difference
US10044469B2 (en) 2012-03-02 2018-08-07 Lsis Co., Ltd. Communication device and communication method
US10637610B2 (en) * 2015-07-20 2020-04-28 Huawei Technologies Co., Ltd. Information sending method and apparatus, and information receiving method and apparatus

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4901307A (en) * 1986-10-17 1990-02-13 Qualcomm, Inc. Spread spectrum multiple access communication system using satellite or terrestrial repeaters
US4979174A (en) * 1988-12-29 1990-12-18 At&T Bell Laboratories Error correction and detection apparatus and method
EP0411110A4 (en) * 1989-02-16 1993-02-24 Grumman Aerospace Corporation Very high speed error detection network
US5103451A (en) * 1990-01-29 1992-04-07 Motorola, Inc. Parallel cyclic redundancy check circuit
US5103459B1 (en) * 1990-06-25 1999-07-06 Qualcomm Inc System and method for generating signal waveforms in a cdma cellular telephone system
ZA947317B (en) * 1993-09-24 1995-05-10 Qualcomm Inc Multirate serial viterbi decoder for code division multiple access system applications
US5550870A (en) * 1994-03-02 1996-08-27 Lucent Technologies Inc. Viterbi processor
US5577053A (en) * 1994-09-14 1996-11-19 Ericsson Inc. Method and apparatus for decoder optimization
US5784392A (en) * 1995-06-26 1998-07-21 Nokia Mobile Phones Ltd. Viterbi decoder with l=2 best decoding paths
US5878057A (en) * 1995-10-06 1999-03-02 Tektronix, Inc. Highly parallel cyclic redundancy code generator

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296455B (zh) * 2001-05-23 2011-08-24 高通股份有限公司 通信系统中所存储的服务参数的同步
CN102487282A (zh) * 2010-12-03 2012-06-06 上海华虹集成电路有限责任公司 一种实现可变长crc运算的电路
CN104143200A (zh) * 2014-07-16 2014-11-12 华南理工大学 一种图像附加信息的边框型编码与智能识别方法
CN104143200B (zh) * 2014-07-16 2017-05-31 华南理工大学 一种图像附加信息的边框型编码与智能识别方法

Also Published As

Publication number Publication date
AU9032998A (en) 1999-03-16
TW390085B (en) 2000-05-11
ZA987690B (en) 1999-02-24
EP1016222A1 (en) 2000-07-05
KR20010023315A (ko) 2001-03-26
AR016897A1 (es) 2001-08-01
CN1150681C (zh) 2004-05-19
WO1999010984A1 (en) 1999-03-04
US6085349A (en) 2000-07-04
JP2002519905A (ja) 2002-07-02

Similar Documents

Publication Publication Date Title
CN1150681C (zh) 选择串接码内循环冗余校验生成器的方法
CN1155160C (zh) 发送和接收链接码数据的方法和装置
KR101170629B1 (ko) 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러 정정 다중-스테이지 코드 생성기 및 디코더
CN1154236C (zh) 纠错编码型的数字传输方法
EP1487119B1 (en) Error detection methods in wireless communication systems
CN1126312C (zh) 从软数据得出码字估值的数字数据译码器
KR100586343B1 (ko) 향상된 터보 코드 기반 증분 리던던시
CN1215671C (zh) 为空中文件转发提供差错保护的方法和装置
CN1101997C (zh) 在通信系统中确定速率的方法和设备
CN1210872C (zh) 减小的搜索符号估值算法
CN1207861C (zh) 利用不带有交织的并行编码的通信系统和方法
Soljanin et al. Hybrid ARQ with random transmission assignments
CN1510842A (zh) 通过重复利用奇偶校验比特对级联码进行解码
CN1643859A (zh) 移动通信系统中接收分组数据控制信道的装置和方法
EP0927464A1 (en) Convolutional decoding with the ending state decided by crc bits placed inside multiple coding bursts
US7984365B2 (en) Turbo decoder with stake heritage for data block redundant version decoding
JP2001285261A (ja) エラー訂正符号化型ディジタル伝送方法
Pan et al. Progressive transmission of images over fading channels using rate-compatible LDPC codes
CN1381096A (zh) 自适应涡轮编码和解码
Shi et al. Combining techniques and segment selective repeat on turbo coded hybrid ARQ
Arkoudogiannis et al. Turbo trellis-coded modulation: A weight spectrum view at the odd-even constraint
Freudenberger et al. An algorithm for detecting unreliable code sequence segments and its applications
CN114430279A (zh) 一种列表维特比译码方法、装置、译码器和存储介质
Wei Near Shannon limit decoding for 1% packet error rate

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: Holy land, California, Egypt

Patentee after: Qualcomm Inc.

Address before: Holy land, California, Egypt

Patentee before: Qualcomm Inc.

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040519

Termination date: 20110824