CN1130027C - 应用分散误差检测位的数据通信系统和方法 - Google Patents

应用分散误差检测位的数据通信系统和方法 Download PDF

Info

Publication number
CN1130027C
CN1130027C CN97194355A CN97194355A CN1130027C CN 1130027 C CN1130027 C CN 1130027C CN 97194355 A CN97194355 A CN 97194355A CN 97194355 A CN97194355 A CN 97194355A CN 1130027 C CN1130027 C CN 1130027C
Authority
CN
China
Prior art keywords
error
bit
detecting position
message
data bit
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.)
Expired - Fee Related
Application number
CN97194355A
Other languages
English (en)
Other versions
CN1217838A (zh
Inventor
P·W·登特
R·拉梅斯
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.)
Ericsson Inc
Original Assignee
Ericsson 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 Ericsson Inc filed Critical Ericsson Inc
Publication of CN1217838A publication Critical patent/CN1217838A/zh
Application granted granted Critical
Publication of CN1130027C publication Critical patent/CN1130027C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • 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/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory 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/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
    • 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
    • H03M13/2906Coding, 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 using block codes
    • H03M13/2927Decoding strategies

Landscapes

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

Abstract

这里公开了一种用于对数据位进行通信的通信系统和方法,包括产生误差检测位并将其分散在一个要发送的数据位序列中,以提供一个要发送的消息。分散的数据位可以是与数据位有关的,也可以是确定的与数据位无关的。对要发送的消息进行卷积编码,并通过一个通信媒介发送。由一个卷积解码器对接收的消息进行卷积解码,其中该卷积解码器可操作地连接到一个误差指示逻辑电路上。分散的误差检测位可以用于检测在传输中的不可校正的误差,或者根据分散的误差检测位的确定值约束卷积解码,以提供一个改进的误差校正操作。

Description

应用分散误差检测位的 数据通信系统和方法
发明领域
本发明涉及用在信号通信中的编码和解码系统和方法,特别涉及对应用误差检测和误差校正编码传输的数据消息进行编码和解码的系统和方法。
发明背景
在诸如无线电信道的易出误差的通信信道中传输数据,可以采用误差检测编码和/或误差校正编码来减少发送数据中的误差。发送的数据经常是数字信息,包括由二进制位信息组成的消息,其中每位的值可以为1和0。则任何给定的消息是一个包括多个分散的1和0的串。可以理解,任何L位的串可以表示2L个唯一的消息中的一个。这些消息可以代表数字化的声音信息或一些其他形式的信息。
误差检测编码和误差校正编码都可以用于通信系统中。误差检测编码的一个简单例子是将消息的一个相同拷贝加在该消息上,同时发送出去,然后对接收到的消息和接收到的拷贝进行逐位比较。对于每一位,在消息和拷贝之间的任何不一致都表明有传输误差。消息的不一致的总数是该数据传输的可靠性在数量上的测量尺度。可以理解,由于在所述消息和拷贝中相同位位置处的同步误差不能被识别为是不一致,所以,所述不一致的总数是可靠性的一个不确切的量度。
一种常用的误差检测技术,循环冗余校验(CRC)技术,产生根据数据消息位确定的“校验”位,并将之加在消息上。校验位包括一个“校验字”,该校验字对于一给定消息是专用的。校验字可以附在该消息的后面,这样两者可以用相同的编码器处理,一起通过通信信道传输,并且都用接收机内的相同的解码器处理。然后,在接收机内的CRC计算器可以产生相应于接收到的解码消息位的校验位,这个由接收机计算出的校验字可以和与消息一起接收的解码的校验字进行比较。任何不一致都指出在传输中检测到的误差,,并且不一致的程度可以用作为数据传输的可靠性的定量量度。然而,在也使用误差校正编码的系统中,这种误差检测方法存在的一个问题是,在能够测试误差检测编码之前,接收到的消息必须完成误差校正解码。
与之相对,误差校正编码的一个简单例子是发送给定消息的两个以上的相向拷贝,对在接收端接收的所有消息进行逐位比较。从接收机输出的消息中的一位应该是1还是0可以在“位民主”的基础上来决定,“位民主”是指由为该位位置接收到的位值的大多数决定其输出。可以假定传输误差在消息拷贝中是随机分布的,所以在大多数拷贝的相同位位置不太可能出现传输误差。
一种已知的误差校正技术是卷积编码,其中,根据消息位确定已知作为奇偶位传送的位。消息位被认为一次有L位,对于每L个消息位发送r个奇偶校验位。例如,奇偶校验位可以计算为消息的各个位的一定的布尔组合。发送卷积编码的奇偶校验位将卷积编码与其他的编码方案、例如分组编码区别开来,分组编码就是将小数目的消息位变换为一个冗余分组码字,发送几个这样的分组码字以传送整个消息。下面给出了对已知的卷积编码技术的基本说明,以帮助理解本发明的背景。
卷积误差校正技术的一种已知形式在美国专利No.5,349,589(“589专利”)中已进行了讨论。“589专利”的方法将数据位分成密钥位、判定位和未保护位。密钥位进行CRC类型误差检测编码,密钥位和判定位都进行卷积误差校正编码。带有CRC位的密钥位被加到判定位上,并输入到卷积编码器。在接收端,一个帧合并程序将解码的密钥位和判定位与接收的未保护位合并。“589专利”还建议使用尾接位来初始化和结束维特比(Viterbi)卷积算法。
现在参考图1讨论卷积编码的一个例子。图1中所示的是一个带有卷积编码器22的发射机20,卷积编码器22包括一个移位寄存器24,要编码的信息位通过该移位寄存器24移位。移位寄存器保持有限的L位,数字L被认为是代码的约束(constraint)长度,因为代码被约束为一次考虑L位。在任一时刻,将移位寄存器24中的标为B1、B2、B3、B4、…、BL的各位加到一个产生各个位的两个或更多个不同的布尔组合的组合逻辑网络26。如图1所示,移位寄存器24中的各位可以由一个CRC误差检测发生器28提供,该CRC误差检测发生器28接收要发送的消息信息,并如上所述产生及附带消息校验位。
由网络26产生的组合为奇偶校验位,这在上面已经提到,可以用P1、P2、…、Pr来表示。这些奇偶校验位通过一个通信信道发送给接收机30,接收机30具有一个解码器32,将这些奇偶校验位变换回数据位B1、B2、B3、B4、…、BL,并最终恢复发送的消息信息。
应该理解的是,如图1所示的组合逻辑网络26也可以用一个存储在常规的存储器内的包括2L个入口(entry)的查找表来实现。然后,L位移位寄存器24中内容B1、B2、B3、B4、…、BL的各个模式(pattern)将分别对查找表中的入口进行寻址,产生奇偶校验位的特征集合。于是,移位寄存器24中的各位的模式的布尔组合存储在查找表中,而不是由逻辑网络生成。
如果对于通过移位寄存器24的位的每次移位生成两个奇偶校验位,则称此代码为码率为1/2的代码,其中奇偶校验位的个数为发送的初始数据位的两倍。如果传输速率是固定的,则发送这种奇偶校验位所需的时间是发送初始数据位所需时间的两倍。更一般地,如果每次移位生成r个奇偶校验位,则称此代码为码率为1/r的代码。一般将奇偶校验位传输速率取为消息信息位速率的r倍。
例如,用于产生码率为1/2、约束长度为五的代码的奇偶校验位的布尔组合方程可以为:
P1=B1+B2+B3+B4+B5
P2=B13+B4+B5
其中,“+”表示模2加法。可以看出,由于0+0=0;0+1=1+0=1;以及1+1=0,模2加法在逻辑上等于“异”操作。
如上所述,对于码率为1/r的代码,产生的奇偶校验位是输入数据位的r倍,并且,如果所有的奇偶校验位都发送,则为消灭误差提供了r倍冗余。然而,可以理解,并不需要发送所有的奇偶校验位。如果发射机和接收机已经预先接受了某种确定不发送哪些奇偶校验位的常规方法,则代码被称作为收缩卷积代码。收缩代码一般会使编码速率为m/r,例如13/29,其中,需要适应为消息信息位速率的r/m倍的传输速率。
各种码率和约束长度的产生最佳代码的奇偶方程表在科技文献中已经公开。例如,参见C.Clarke、Jr.和J.Cain的“用于数字通信的误差校正编码”,附录B,通风压力(plenum press),纽约(1981)。
已知的对卷积代码进行解码的方法包括阈值解码、顺序最大似然序列估计(SMLSE)、以及堆栈算法。SMLSE技术通常指维特比算法,在文献D.Forney,“维特比算法”,Proc.IEEE,Vol.61,pp.268-278(1973年3月)等中进行了说明。解码方法的说明可以在上面提到的Clarke和Cain的文章中找到。
对于码率为1/2、约束长度为五的代码的SMLSE卷积解码算法的操作如图2所示。在SMLSE解码器中,将多个电子存储单元33、34、35安排在被称为状态(state)的分组内,状态数为2L-1,其中L是要解码的代码的约束长度。存储单元保存至少两种不同类型的信息,即,单元33中保存位历史,单元34中保存关于状态的路径量度(pathmetric)。另外,与状态有关的状态号可以作为每个L-1位的二进制位模式存储在单元34中。
路径量度可以被认为是代表一个假设的位序列和一个实际的(例如接收的)位序列之间的相关程度的置信因子。随着假设和实际位序列的一致程度的增加,路径量度变小,关于该假设位序列的可靠性更大。可以明白,“假设位序列”或简称为“假设”一般是指任何具有某种成为所感兴趣的实际位序列的概率的假想位序列。因此,一个假设可以代表消息信息位、奇偶校验位或其他码字。
大多数SMLSE解码器的一个重要部分是编码算法的一个“拷贝”38。对于图1中所示的通信系统例子,拷贝38可以是一个L-位移位寄存器和一个用于实现在编码器22中使用的方程以产生奇偶校验位P1、P2、…、Pr的组合逻辑网络。或者,拷贝38也可以是一个L-位移位寄存器和一个存储在电子存储器中的2L个入口的查找表。在这两种情况中,由拷贝38产生2L个假设,并用一个比较器39将其与接收的奇偶校验位数据流直接进行比较。
存储单元34中的(L-1)位状态号代表编码移位寄存器24的可能内容中的除了一位的其他所有位。第L位代表要解码的下一位,可以为0或1。对于由状态号代表的其他位的所有可能组合测试这两种可能性。这样,所有2L个可能的位组合都由解码器进行测试,并且存储运行置信因子,即路径量度35,用于估计在假设位序列和接收的奇偶校验位序列之间的相关度。
对于码率为1/2、约束长度为五的代码的SMLSE算法的步骤基本上如下所示。
步骤1。对于第一种状态,标号为0000,假设新位也是一个0。因此,将假设00000加到拷贝38上,以获得两个所期望的奇偶校验位P1(00000)和P2(00000)。以这种方式,采用与图1中所示编码器22中所采用的相同的奇偶校验方程来对假设信息进行编码。
步骤2。用比较器39将接收的实际的奇偶校验位P1(实际)和P2(实际)与假设的奇偶校验位P1(00000)和P2(00000)进行比较。比较结果为下列之一:两位都匹配;一位匹配,一位不匹配;或者两位都不匹配。如果P1(00000)和P2(00000)都与接收的实际奇偶校验位P1(实际)和P2(实际)匹配,则由一个加法器36将值0加到与状态0000有关的路径量度上,该路径量度可以表示为Gp=(0000)。同样,如果只有一个匹配,则将值1加到Gp=(0000)。如果P1(00000)和P2(00000)都与接收的实际奇偶校验位P1(实际)和P2(实际)不匹配,则将值2加到Gp=(0000)。以这种方式,对于任何给定状态,路径量度值代表该特定状态的在假设和实际位序列之间的累积不匹配值。一个状态的累积不匹配值越大,则路径量度值越大,该状态的运行置信因子越小。
步骤3。对于状态1000重复步骤1和2。假设新的第五位为0,则将模式10000加到拷贝38上,并将其输出位P1(10000)和P2(10000)与实际接收位P1(实际)和P2(实际)进行比较。状态1000的路径量度表示为Gp=(1000),与步骤2中相同,根据P1(实际)和P2(实际)与P1(10000)和P2(10000)的比较结果进行更新。
步骤4。用一比较器37对状态0000和1000的更新的路径量度Gpm(0000)和Gp=(1000)进行比较。当拷贝38产生的位模式10000和00000左移一位、并且最左边的一位移位进存储单元33中的相应位历史、从而两种情况都剩下0000时,无论哪个状态具有较低的路径量度,并因此具有较小的不匹配,都成为新的状态0000。
因此,在新位为0的情况下,状态1000或0000都可以是下一状态0000的先行状态。退出编码器拷贝38模式而成为下一状态0000的位历史33的最右位的最左位是0还是1,这取决于哪一状态由于其具有最低的路径量度而继续存在。而且,在新的位历史存储器33中的其他相应位是从继续存在的选定状态复制过来的,改写了未选定的已不存在的状态的各位。例如,如图3所示,如果路径量度Gp=(1000)为1.8,路径量度Gpm(0000)为9.5,则选择状态1000继续存在,为新的状态0000将左移的位10110111改写进位历史33。
步骤5。假设新位为1,重复步骤1-4。于是,将实际接收位的假设00001和10001分别加到拷贝38上,以获得所期望的各对奇偶校验位P1(00001)、P2(00001)和P1(10001)、P2(10001)。这些成对的奇偶校验位与实际接收的奇偶校验位P1(实际)和P2(实际)进行比较,得到更新的路径量度Gp=(0000)和Gp=(1000),然后进行比较。其结果是一个新的状态0001,其先行状态有可能是0000和1000。
步骤6。对于所有其他对先行状态重复步骤1-5:0001和1001(产生新状态0010和0011);0010和1010(产生新状态0100和0101);0011和1011(产生新状态0110和0111);0100和1100(产生新状态1000和1001);0101和1101(产生新状态1010和1011);0110和1110(产生新状态1100和1101);以及0111和1111(产生新状态1110和1111)。
在上述六个步骤结束时,已处理了两个实际接收的奇偶校验位,并将一个新的解码位移位进所有的位历史存储单元33。这些存储的模式都是最后的SMLSE序列的候选序列。由于位历史改写其他位历史的方式,当选定一对状态中的一个继续存在时,存储单元33中的较早位趋向一致。如果所有位历史中的最早位都一致,则可以作为一个最终决定被移去,位历史存储单元33长度减少一位。
对于其他码率的代码,例如码率为1/4的代码,其算法与之相似,只是由每个假设产生四个奇偶校验位,并与四个接收位比较,对零、一、二、三或四个不匹配产生可能的累积路径量度增量。
在已知算法的另一种变化中,接收的奇偶校验位不仅仅由它们的位极性来表征,还由表示“1”或“0”的程度的幅度或质量量度来表征。当检测出与一个本地预测的假设奇偶校验位的不匹配时,如果接收的位质量较高、因而较少怀疑其符号确实是正确的,则与如果质量较低、接收的位极性是令人怀疑的这种情况比较起来,路径量度恶化程度更大。这种在概念上与“硬”解码相对的“软”解码应用一种与-LOG(概率)有关的“软”位质量量度,其中,“概率”是位极性为正确的概率。当使用这种对数量度时,则累积量度代表所有位概率的乘积的负对数。从而,具有最小累积量度的状态和位历史序列代表具有正确的最高概率的序列。通常,假定噪声为高斯型的,在这种情况下,补偿(penalty)项可以表示为与位幅度的平方成正比。当检测到一个不匹配时,可以通过将一个与1/(-LOG(概率))成正比的项加到累积对数量度来影响对于在本地预测的假设位与接收的高质量位之间的不匹配的补偿。每当接收的位极性为正确的概率较高但仍然检测到一个不匹配时,这种加法可以只显著地影响该量度。
这种卷积编码器和解码器也可以用于非二进制符号,例如三进制或四进制符号。
SMLSE维特比解码器确定最接近地解释所接收信号的数据位序列。维特比算法允许逐次地确定最好的序列,从而避免测试关于N个可能序列的所有二的N次幂的必要。在某些编码方案中,为了给逐次确定建立一初始点,在输入数据位之前先将编码器初始化到一已知初始状态。在这种情况下,对于解码器只有一种允许的初始状态。在每一逐次步骤,状态数加倍,直到达到二的(代码约束长度-1)次幂。在此点之后,每次假设一新的未知位时,状态数都加倍,但由于一个早先假定的位现在被确定为两个特定值中的一个,所以状态数又立即减半。因此,状态数一直保持恒定,直到假定了最后一个未知数据位。然后,在某些编码方案中,将已知位输入编码器,以使得最后一个数据位通过编码器。当编码器中再没有剩下别的数据位时,其输出不依赖于这些数据,因此不必发送。接收机解码器对于该终端状态为何种状态有一个先验,每次当又有一个未确定的数据位从编码器输出时,剩下的可能状态数减半,直到只剩下一个状态。这种通过从一单个初始状态到一单个结束状态的向上和向下逐渐缩减来终止一个卷积分组编码器的方法被称为“使用尾接位(tail bit)”。在编码器中的在开始时的(或在结束时用于冲出最后一数据位的)已知位导致了额外的发送位。这些只是用于初始化编码器和终止编码器的附加位可以通过应用另一种被称为尾接移位(tail biting)的方法来避免。在尾接移位中,用L个数据位初始化编码器,其中L是编码器中的内部存储单元数,也称之为约束长度。于是,可能的初始状态有2L个。
在这个例子中的解码器假设所有初始状态都是可能的,而不只是一单个状态。发送的依赖于前L位的前几个编码位与在接收机内的相应的预测进行比较,并对每种可能性计算不匹配或路径量度。然后,将一个数据位移出编码器,移入一个新的数据位。这使得状态数减半,但由于新位是未知的,预测和路径量度计算的数目又加倍到与原来相同的数目。维特比MSLE机可以被认为是在状态数减半并且刚好在假定一个新位之前的那点开始和结束一个循环的。在这种情况下,虽然路径量度的计算数总是2L,但必须存储的状态数和路径量度数是2(L-1),而不是2L。在将最后的数据位输入进编码器之后,应用尾接移位,通过将前L-1个数据位再次输入,使最后的数据位通过编码器,从而有效地完成这个循环。接收机可以通过再次处理第一信号采样来继续这个循环,直到在解码输出中观察不到进一步的改变。或者,一个尾接移位解码器可以持续一定数目的周期,在该点选择具有最低的累积路径量度的状态作为最接近的状态。
如上所述,附带一个CRC代码也不是没有缺陷的—附带的乘以代码的码率的CRC位的位数扩展了要发送的编码位的位数。如果在带有和不带有CRC的系统之间的比较是在发送相等的能量的基础上进行的,则应该将由于增加了CRC代码而导致的发送额外位的能量从用于发送数据的能量中减去。因此,使用CRC一般将导致比不使用CRC有较高的误差率。但这些误差是可检测的。
增加位到要发送的数据上的现有技术、例如使用尾接位的方法和CRC代码还具有的缺陷就是,增加附加位来发送,不仅会增加相关的能量花费和对传输速率的需求,并且对于接收通信系统的误差校正解码操作的性能一般不会提供任何改进。确定位误差校正编码系统可以提供改进的误差校正解码,但一般被设计为并不能提供误差检测。另外,CRC误差检测方法一般需要在测试误差检测之前已经完成了误差校正解码。
发明概述
因此,本发明的一个目的是提供同时具有改进的误差校正和误差检测能力的改进的通信系统和方法。
本发明的另一目的是提供改进的对数据进行编码以便在解码期间获得一个误差指示的系统和方法。
本发明的另一目的是提供用于发送和接收一个信号的方法和系统,其中,接收机可以不用显著的能量补偿而对数据进行解码并放弃误差检测,也可以以一个能量补偿对数据进行解码但因而获得一个误差检测指示。
本发明的通信系统和方法将多个已知位分散在数据块中,而不是将它们聚集在一端。其优点是在解码操作进行期间能够连续地计算一个误差校验指示,同时,与“尾接移位”方法相比,在数据块中的数据位上提供一个更加均匀的位误差概率。此外,不象现有技术中的CRC方法,插入的额外位不会引起数据位误差率的增加。本发明提供在获得误差检测的同时、提供改进的误差校正解码的通信系统和方法。
在本发明的通信系统和方法的一个实施例中,提供了一种具有一个约束误差校正解码系统的通信系统和方法,该解码系统基于确定的分散误差检测位约束解码,并基于对解码过程由确定的误差检测位约束的情况的估计,进一步提供一个误差指示,从而提供了改进的解码性能。确定的误差检测位可以是在数据的数值和位置上与数据有关的,也可以是与数据无关的。
在本发明的通信系统和方法的另一实施例中,在卷积编码之前将误差检测位分散在数据中,并且由一个无约束卷积编码器对接收的编码消息进行卷积解码,测试误差检测位以确定在传输中是否出现了未校正的误差。此消息也根据确定的误差检测位进行约束卷积解码,以提供改进的误差校正解码能力。如果表明没有误差,则可以将无约束卷积编码器的输出选择为接收的消息。或者,如果未检测到误差,也可以将约束卷积解码器的输出选择为接收的消息。如果表明有误差,则可以将约束卷积编码器的输出选择为接收的消息。
在本发明的通信系统和方法的一个实施例中,提供了发送和接收功能。发送功能包括根据一个要发送的数据位序列的各个部分产生多个确定的误差检测位,并将确定误差检测位分散在该数据位序列的多个预定位置,以便提供一个要发送的消息。将该消息进行卷积编码并发送。接收功能包括接收一个编码消息,并对接收的编码消息进行卷积解码。将接收的编码消息的相应于确定误差检测位的预定位置的解码位与根据接收的编码消息的相应于接收的编码消息中包含数据位的部分的解码位产生的预测误差检测位进行比较,根据该比较产生一个误差指示。
在本发明的通信系统和方法的另一个实施例中,也根据一个确定状态卷积解码处理对接收的编码消息进行约束卷积解码。根据接收的编码消息的相应于接收的编码消息中包含数据位的部分的解码位产生预测的误差检测位。对于任何一个解码序列,如果其中的在相应于确定的误差检测位的预定位置中的一个位置处的选定位与相应的预测误差检测位的位值不匹配,则舍弃该解码序列。
在本发明的通信系统和方法的其他实施例中,产生的分散的误差检测位是与数据位无关的。因此,不必作为解码数据位的函数来产生预测的误差检测位。
附图简要说明
图1是一个常规的包含卷积误差校正编码和CRC误差检测的通信系统的方框图;
图2是卷积解码算法的一个例子的方框图;
图3是本发明的通信系统的一个实施例的原理方框图;
图4是本发明的通信系统的发送电路的一个实施例的原理方框图;
图5是本发明的通信系统的接收电路的一个实施例的原理方框图;
图6是显示本发明的对数据位进行通信的一个实施例的操作的流程图;
图7是显示用于本发明的对数据位进行通信的约束卷积解码操作的一个实施例的操作的流程图;
图8是显示用于本发明的对数据位进行通信的另一个实施例的操作的流程图。
最佳实施例的详细说明
本发明的用于对数据进行通信的方法和系统提供了获得一个误差指示而无需会引起误差率增加的能量补偿的能力,还提供了一个约束的确定状态卷积解码器以获得误差校正中的改进性能,或者是既提供误差检测又提供改进的误差校正的能力。下面将参考附图对本发明的方法和系统进行全面的说明,其中,附图显示了本发明的实施例。但本发明也可以用许多不同的形式来实施,而不应仅限于这里所陈述的实施例,提供这些实施例是为了全面、充分地公开本发明,并将本发明的范围完全地提供给本领域的技术人员。
现在参考图3,图3显示了本发明的一个通信系统的原理方框图。这种系统可以有助于用于发送和接收各种类型的信息,其中,这些信息必须通过一个通信媒介,从而有可能在由接收机接收之前将噪声引入发送的信号中。发送的信息可以是数字化的声音信息,例如用于数字蜂窝式通信系统的信息,也可以是一些其他形式的信息。如图3所示,通信系统40包括接收电路42和发送电路44。接收电路42和发送电路44与用户交互,以提供或接收数据或控制信息,如46所示。如图3中的实施例所示,接收电路42和发送电路44都可操纵地连接到天线48上,以便从通信传输媒介接收和发送消息。应该理解,接收电路42和发送电路44也可以带有分开的天线48。还应理解的是,接收电路42和发送电路44每个都可以带有多个天线48,以便允许例如在各种频率同时发送和接收消息。还应理解的是,在本发明的通信系统40中,也可以将一个相似的、可以接收和发送信息的其他通信系统单元40’放在较远位置处,通信系统40既可以通过通信传输媒介向其发送消息也可以从其接收消息。
应该理解的是,接收电路42和发送电路44可以用分立逻辑、微处理器/控制器(或其他软件执行设备)、定制或混合电路、存储器件、或者上述或其他已知的用于实现这里所说的各种逻辑操作的硬件的组合来实现。还应理解的是,接收电路42和发送电路44的各个模块不必由分离的硬件部件来实现,而是可以组合进一单个芯片或是各个部件的组合。
现在参考图4,提供了本发明的发送电路44的一个实施例的原理方框图。发送电路44包括误差检测位发生器50或其他的误差检测位发生装置,用于根据要发送的N1数据位52序列的各个部分产生多个确定误差检测位(E1,…,EN2)53、53’,并且将确定误差检测位分散到数据位52中的多个预定位置,以提供要发送的消息位序列54。或者,误差检测位发生器50可以产生多个与数据无关的确定误差检测位。发送电路44还包括误差校正编码器56或其他卷积编码装置,响应于误差检测位发生器50,用于对消息位序列54编码。发送电路44还包括调制器58,与天线48或其他发射装置可操作地连接,响应于误差校正编码器56,用于发送由误差校正编码器56提供的编码消息位序列(奇偶校验位)57。由于误差校正编码器56是一个卷积编码器,所以如同上面在背景技术部分所提到的,编码位一般是指奇偶校验位。调制器58的输出提供给天线48,以便通过通信媒介发送。
虽然这里说明的发明涉及的是奇偶校验位的顺序发送和数据位的顺序接收,应该理解,通过对多个位序列的并行处理,同样可以获得本发明的优点。例如,对于一个码率为2的代码,对于每个要移位进来的消息位,可以在分开的频率上同时提供对2个奇偶校验位中的每一位的发送。但是,一般最好如同前面在背景技术部分所讨论的,通过提供一个比消息位速率成比例地大的传输位速率,来提供对奇偶校验位的顺序传送。
再参考图4,如52所示,将一个N1个数据位的序列提供给误差检测位发生器50。数据位用序列D1、D2、…、DN1表示。如同这里所描述的,数据位被认为是二进制位,值为1或0。但是,应该理解,采用非二进制符号,例如三进制或四进制符号,也可以实现本发明的优点。
误差检测位发生器50将N2个误差检测位53、53’分散在N1个数据位序列52中,以提供消息位序列54。插入的N2个误差检测位53、53’表示为E1,…,EN2。如图4所示,在消息54中,可以以一种规则的方式插入误差检测位53、53’,例如如图4所示,在每两个数据位之后插入。但是,误差位也不必插在均匀的位置上,只要将误差位插在消息54的预定位置就行。
插入的N2个误差检测位53、53’可以是N1个数据位52的子集的函数,也可以是独立于N1个数据位52或其组合。例如,误差检测位53、53’可以是全1、全0或是1和0的组合。N2个误差检测位53、53’也可以是N1个数据位52的子集的函数。如图4所示,误差检测位E153可以是数据位D1和D2的函数。例如,可以将E1计算为D1和D2的异或函数。误差检测位53、53’的位置也可以被确定为数据位52的函数。无论确定误差检测位53、53’使用何种方法,通信系统40的发送电路44和消息54发送到的通信系统40’(未显示)的接收电路42’(未显示)在确定误差检测位53、53’的值和其放置位置的方法上必须保持一致。
还应理解的是,虽然如图4所示在本发明中分散在数据中的是单个误差检测位53、53’,但误差检测位53、53’也可以两位或多位一起插在不同的放置点。另外,如上所述,当误差检测位53、53’被确定为数据位52的子集的函数时,与数据有关的误差检测位53、53’如图所示在其依赖的数据位52之后立即提供给误差校正编码器56(即,在消息位序列54中E1紧跟在D1和D2之后),当然,并不一定必须将消息位54以这种顺序来提供才能获得本发明的优点。但如同下面将要说明的,在本发明的实施例中,将误差检测位53、53’如图4所示放在其所依赖的数据位52之后将会获得更多的好处。将N1+N2个消息位54的扩充块提供给误差校正编码器56。如同前面在背景技术部分所说明的,卷积编码处理根据采用的卷积码率来扩展用于发送的位数。例如,码率为2的代码将使要发送的位数加倍。由于N1个数据位52已经由误差检测位发生器50增加了N2个误差检测位53、53’,所以一个没有收缩的码率为r的代码将导致由编码器56产生r(N1+N2)个奇偶校验位来传输。然而,通过采用一个码率为r N1/(N1+N2)的代码,N1+N2个位的扩充块可以被扩展到rN1个位,该代码如果需要的话可以收缩。
当应用一个码率为r的代码将产生多于所期望数目的rN1个编码位时,要进行收缩,其中r为一个简单整数,或者为简单整数之比。在这种情况下,由N2个误差检测位53、53’生成的额外的位为rN2个。因此,通过收缩来删除rN2个奇偶校验位。在对所有位进行解码之后,为了获得大致相等的误差概率,可以将被收缩的奇偶校验位选择在处于额外的N2个误差检测位53、53’插入到消息54中的位置。于是,通过将一些依赖于某些数据位的编码的(奇偶校验)位收缩而去除,但将一些以不同的方式依赖于那些数据位的位(误差检测位53、53’)增加回来,从而对于被影响的数据位可以获得代码的全部性能。奇偶校验位57由误差校正编码器56提供给调制器58,以变换到一种适于通过通信传输媒介、例如无线电信道的形式。
现在参考图5,提供了本发明的接收电路42的一个实施例的原理方框图。接收电路42包括解调器70,解调器70可操作地连接到天线48(如图3所示)或其他的接收装置,用于接收通过通信传输媒介(例如,无线电信道)的编码消息。这些估值可以是“硬”决定(二进制1或0),也可以是“软”决定,该“软”决定最好是一个奇偶校验位分别为1或0的概率的对数的估值。
然后将硬(或软)奇偶校验位信息通过响应于解调器70用于对奇偶校验位的估值71进行解码的卷积解码装置。在下面要描述的实施例中,卷积解码器72是一个维特比SMLSE卷积解码器,一般地可以按照在背景技术部分描述的而不是这里所描述的这样一种解码器的说明来工作。
接收电路42还包括误差指示逻辑电路74或其他误差指示发生装置,响应于卷积解码器72,用于根据接收的编码消息(奇偶校验位的估值)71的相应于确定误差检测位53、53’的预定位置的解码位与由误差指示逻辑电路74产生的预测误差检测位(未显示)的比较产生一个误差指示。如果出现了任何不匹配,或者根据一个误差计数值或一些其他的根据检测出的误差产生一个误差指示的指标,可以指示出误差。在本发明的具有误差检测位53、53’的实施例中,其中误差检测位53、53’是作为数据位52的子集的相关函数而产生的,根据接收的编码消息71的相应于接收的编码消息71包含数据位的部分产生预测误差检测位。当误差检测位53、53’是与数据无关时,误差指示逻辑电路74根据与产生消息的发送通信系统40’(未显示)共享的一致的误差检测位53、53’的模式,确定误差检测位53、53’在每个预定位置的期望值。
卷积解码器72,例如如图2所示的已知的维特比SMLSE解码器,可以包括存储器,用于存储假设位34、选定位的每一假设位状态的历史33和每一假设位状态34的置信因子或量度35。卷积解码器72还可以包括编码器的拷贝38和比较器39,比较器39将候选状态的假设奇偶校验位与接收的发送奇偶校验位的估值71进行比较。然后根据在假设奇偶位和接收的奇偶校验位的估值之间的匹配和不匹配历史为每一种可能状态更新量度35。
如同下面关于本发明的方法的说明将要进行的更全面的描述,误差指示逻辑电路74从卷积解码器72接收解码数据和误差检测位,并产生一个误差指示76。在图5中所示的本发明的实施例中,误差指示逻辑电路74还可操作地连到约束卷积解码器80上。对于每一个接收的奇偶校验位序列的估值71,卷积解码器72产生一个N1+N2位接收的候选消息位序列78。接收的候选消息位序列78是相应于发送的N1+N2位消息位序列54从卷积解码器72的维特比SMLSE解码过程中剩下的最好的候选序列。
相似地,对于发送的每个N1+N2位消息位序列54,约束卷积解码器80提供接收的候选消息位序列82,其中,接收的候选消息位序列82代表从本发明的约束卷积解码过程产生的单个剩下的候选消息。从这里对本发明的方法的说明中可以看出,接收电路42可以既包括卷积解码器72又包括约束卷积解码器80。接收电路42还可以只包括卷积解码器72或只包括约束卷积解码器80。
在图5所示的本发明的一个实施例中,将误差指示76和接收的消息位序列82提供给选择电路84或其他选择装置。如果误差指示76指示没有检测到误差,则选择接收的消息位序列82作为正确的接收的消息位序列86。然后,当误差指示76表明在解码的接收的消息中未检测到误差时,将正确的接收的消息位序列86,或者在没有应用约束卷积解码器80的情况下,将接收的消息位序列78提供给数据发生电路88或其他用于将数据和误差检测位分开的装置,在这里将接收的误差检测位(E1,…,EN2)除去,以提供输出数据90。
现在参见图6,提供了显示本发明的一个实施例的操作流程图。这些操作可以用硬件、软件或其组合来实现,以提供本发明的系统和方法。图6中显示了对一个由用户提供的N1位数据位序列52的操作。在方框100,误差检测位发生器50应用一个发送通信系统和所期望的目标接收通信系统都知道的预定函数来确定第一误差检测位53、53’。如前所述,在方框100,误差检测位可以被确定为一个与数据无关的函数,或者为一个依赖于数据位52的子集的函数。
当误差检测位与数据有关时,在方框100的操作包括根据数据位的相应子集的预定函数计算第一误差检测位。在方框102,误差检测位发生器50将数据位中的确定的第一误差检测位分散在预定位置,从而提供消息位序列54。
如上所述,预定位置可以提前固定或者依赖于数据位。此外,单个位或两个或多个位都可以分散在消息位序列54的多个预定点。在任何情况下,误差检测位都是分散在数据位中,而不是象上面在背景技术部分所描述的现有技术CRC误差检测方法中那样将其附在数据位的后面。
在方框104中,由误差校正编码器56对消息位序列54进行卷积编码,以提供一个代表要发送的编码消息的奇偶校验位序列。在方框106,由调制器58将所提供的奇偶校验位序列变换成适合于在通信媒介上传输的形式,并通过天线48在通信媒介上发送。
方框100至方框106的操作由通信系统40的向另一通信系统40’(未显示)发送数据的发送电路44来执行。下面要说明的操作可以由通信系统40的接收电路42在已经从远处的通信系统40’(未显示)接收的接收编码消息上来执行。如图这里所要说明的,应该理解,作用在由发送框106发送的编码消息奇偶校验位上的接收步骤一般是由通信系统40’(未显示)的接收电路42’(未显示)来接收和处理的。但为了简化为本发明的系统部件的参考,由下列步骤处理的消息将被描述为由通信系统40的接收电路42接收的消息。
在方框108,接收电路42的解调器70通过天线48从通信媒介接收所发送的奇偶校验位的估值71。应该理解,方框108的操作包括接收所发送的奇偶校验位的估值,这是因为通信媒介由可能会引入噪声,噪声在由方框106发送的发送奇偶校验位在方框108被接收之前会影响这些奇偶校验位。在方框110,卷积解码器72对接收的所发送奇偶校验位的估值71进行解码,提供一个相应于消息位序列54的候选位序列78。方框110的操作可以采用SMLSE维特比算法。在方框112,误差指示逻辑电路74根据在方框100用于确定第一误差检测位53、53’的预定函数从在方框110产生的解码位中确定出第二误差检测位。方框112可以由误差指示逻辑电路74协同卷积解码器72一起执行。当用于在方框100确定第一误差检测位53、53’的预定函数是要发送的数据的子集的函数时,方框112的操作包括应用与在方框100中的相同的数据位子集的预定函数在预期包含数据位的位置从由卷积解码器72解码的位中计算出第二误差检测位。
在方框114,接收电路42将在方框112确定的第二误差检测位与方框110提供的处于相应于第一误差检测位53、53’的预定位置的位置处的解码位进行比较,以提供误差指示76。例如,如果检测到任何不匹配,则在方框112指示一误差。与方框112一样,方框114由误差指示逻辑电路74和卷积解码器72执行。
如上所述,每个误差检测位所依赖的数据位的子集最好在相应的非独立误差检测位之前立即发送。这在本发明的一个实施例中是所期望的,其中,只要在方框110对一个相应于第一误差检测位53、53’的预定位置的位进行了解码,就可以执行方框112和方框114,从而在方框110完成卷积解码操作之前,方框114可以提供一个误差指示。这使得在检测到一个数据传输误差之后可以立即终止解码,从而可以延长通信系统40中的电池的使用寿命。对于本发明的应用,例如移动蜂窝式电话,这是一个所期望的特征,可以在电池功率上使通信系统40的工作时间延长。
可选择地,在本发明的一个实施例中,在方框116,约束卷积解码器80协同误差指示逻辑电路74应用本发明的确定状态卷积解码处理对接收的所发送奇偶校验位的估值71进行约束卷积解码。在方框116的操作在根据在方框100中用于产生第一误差检测位53、53’的预定函数进行解码的同时,提供一个在相应于选定的第一误差检测位53、53’的预定位置的位置具有位的第二候选位序列82。在预定位置的各位被约束到相等的值,这些值是应用加到接收的所发送奇偶校验位的估值上确定第一误差检测位步骤所采用的预定函数计算出的。
现在参见图7,显示了方框116的约束卷积解码操作的一个实施例的流程图。在方框120,约束卷积解码器80对处于相应于第一误差检测位53、53’的预定位置的位置处的位作为不确定的位(即,象数据位)进行解码。在方框122,误差指示逻辑电路74协同约束卷积解码器80一起应用在方框100所用的数据位的子集的预定函数,从在方框110由约束卷积解码器80提供的位于预期包含数据位的位置处的解码位计算出第二误差检测位。
如图7所示,第一误差检测位53、53’是根据数据位的子集的一个函数确定的与数据有关的位。然而,应该理解的是,本发明也包含将不是数据位的子集的函数的预定误差检测位分散在数据位中。在采用与数据无关的误差检测位时,在方框122的操作包括根据在方框100用于确定第一误差检测位的一致的预定函数确定第二误差检测位,而不需要如同上面对于方框122所述的根据与数据位的子集相联系的计算。
在方框124,对于任何正在进行的解码序列,当在相应于第一误差检测位53、53’的一个预定位置的位置处的选定位与相应的第二误差检测位的计算值不匹配时,接收电路42舍弃该解码序列。以这种方式,约束卷积解码器80最终在方框116提供出一个第二候选位82,在该第二候选位82中,误差校正解码处理已经约束到为确定的位位置选择位值的最佳路径,该位值被认为是发送给通信系统40的值。
然而,如果在方框116执行约束卷积解码的约束卷积解码器80对一个具有在数据传输中出现的不可校正的误差的消息进行处理,则会受到一个限制。通过在方框116使所得的第二候选位序列82取代插入的误差检测位的正确值,所得的解码序列82将会掩盖不正确的插入的误差检测位,并因而掩盖了所指示的在传输中的误差。
因此,在本发明的一个在方框116应用可选的约束卷积解码操作的实施例中,在方框118,如果在方框114指示没有误差,则来自方框116的第二候选位序列82可以被选择为接收的消息。或者,如果指示没有误差,则第一候选位序列78可以被选择为接收的消息,因为这两个候选位序列将被认为是相同的。如果在方框114指示有误差,则由于第二候选位序列82可以提供接收的消息的一个改进的估值,所以可以被选择为接收的消息。方框114响应于在方框110的无约束卷积解码输出进行操作。以这种方式,在方框116可以提供改进的卷积解码输出,在获得误差检测指示能力的同时,受益于插入的误差检测位的确定值,从而当通信中出现不可校正的误差时,接收通信系统40能够确定出现了这种误差。
图8的流程图显示了本发明的另一个实施例。在图8中显示的实施例既提供了本发明的约束卷积解码方法的优点,又提供了不需要如图5所示的卷积解码器72和卷积解码器80的误差检测指示的优点。在方框130,误差检测位发生器50将第一误差检测位53、53’作为数据位的子集的一个预定函数进行计算。在方框132,误差检测位发生器50将数据位的第一误差检测位53、53’分散在预定位置,以提供消息位序列54。在方框134,误差校正编码器56对消息54进行卷积编码,以提供表示要发送的编码消息的奇偶校验位57。在方框136,调制器58通过天线48在通信媒介上发送所提供的奇偶校验位57。
如同在图6的方法中所说明的,应该理解,发送和接收操作一般是在通信系统40和一个远处的通信系统40’(未显示)之间进行的。但为了将这里所说明的操作与已经说明的方框图联系起来,下面将对于一个已经由通信系统40接收的消息来说明接收端的操作。
在方框138,接收电路42通过天线48接收发送的奇偶校验位,解调器70对这些位进行解调,提供奇偶校验位的估值71。在方框140,约束卷积解码器应用在前面与图7相联系所说明的确定状态卷积解码处理对奇偶校验位的估值71进行解码,以便在应用方框130的数据位的子集的预定函数进行解码的同时,提供一个在相应于选定的第一误差检测位53、53’的预定位置的位置处具有位的候选位序列82。
然而,在图8所示的本发明的实施例中,在方框142,估计在方框124舍弃任何解码序列的次数,以提供一个误差指示。换句话说,在卷积解码处理上的确定位限制的次数提供了一个对于在方框140的解码操作多少次被“拉回”“正确”状态的指示,其中,卷积解码处理被强制确定哪些将不是无约束卷积解码算法的选定的解码序列路径。解码处理不得不被约束“拉回”的情况的数目很大表示出现一个不可校正的误差的似然性,其中该不可校正的误差只是被在方框140强制解码操作选择一个指示未检测到误差的候选位序列所掩盖。
图8显示了本发明的一个仅使用了一个约束卷积解码器的实施例,其中,误差检测位53、53’是与数据有关的数据位的子集的函数,但应该理解,如同在图6中的实施例一样,当预定的误差检测位53、53’是与数据无关的时,同样也可以获得本发明的优点。在这种情况下,在方框130的操作只包括将第一误差检测位53、53’作为一个与数据位无关的预定函数来确定。同样,在方框140的约束卷积解码操作是基于与数据无关的预定函数,而不是基于数据位的子集的一个函数。
在图8中显示的本发明的方法的一个实施例中,允许解码器只测试与编码处理一致的数据序列,这是发送和接收数据节约能量最有效的方式。然而,当使用在现有技术中的节约能量差一些的解码CRC的方法时,插入的额外位能够提供一个误差指示。
在附图和说明书中已经公开了本发明的最佳实施例,本发明的范围在后面的权利要求中进行了陈述。

Claims (17)

1.一种对一个数据位组进行通信的方法,包括如下步骤:
对一个消息进行卷积编码,以提供代表编码消息的奇偶校验位用于发送;
在一个通信媒介上发送奇偶校验位;
从通信媒介接收所发送奇偶校验位的估值;以及
对所发送奇偶校验位的估值进行卷积解码,以提供一个相应于所述消息的候选位序列,其特征在于,该方法包括下列步骤:
应用一个预定函数为该数据位分组确定第一误差检测位(100,130);
将第一误差检测位分散在数据位分组的预定位置,以提供所述消息(100,132);
根据预定函数从候选位序列确定出第二误差检测位(112,122);以及
将第二误差检测位与候选位序列在相应于第一误差检测位的预定位置的位置处的位进行比较,以提供一个误差指示(114,142)。
2.如权利要求1所述的对数据位进行通信的方法,其中,所述确定第一误差检测位的步骤包括步骤:应用一个与数据无关的预定函数为数据位分组确定第一误差检测位。
3.如权利要求1所述的对数据位进行通信的方法,其中,所述确定第一误差检测位的步骤包括步骤:将每个第一误差检测位作为数据位分组的数据位的不同子集的一个预定函数进行计算,以提供与数据有关的第一误差检测位,其中,所述确定第二误差检测位的步骤包括步骤:应用与所述确定第一误差检测位的步骤所用的相同的数据位分组的数据位的子集的预定函数,从预期包含数据位的位置处的候选位序列的位计算出第二误差检测位。
4.如权利要求1所述的对数据位进行通信的方法,其中,当一个相应于一个第一误差检测位的预定位置的位在所述卷积解码步骤被解码时,执行所述确定第二误差检测位的步骤和所述比较步骤,以便在完成所述卷积解码步骤之前提供一个误差指示。
5.如权利要求1所述的对数据位进行通信的方法,其特征在于,该方法还包括步骤:
对所述估值进行约束卷积解码,以提供一个第二候选位序列,其中,在该第二候选位序列中的相应于第一误差检测位的预定位置的位置处的位被约束到相等的值,这些值是应用加到接收的所发送奇偶校验位的估值上的所述确定第一误差检测位步骤的预定函数来计算的(116,140);以及
选择所述第一候选位序列或所述第二候选位序列作为接收的消息(118,124)。
6.如权利要求5所述的对数据位进行通信的方法,其中,所述选择步骤包括:如果在所述比较步骤指示没有误差,选择第一候选位序列作为接收的消息,如果在所述比较步骤指示有误差,选择第二候选位序列作为接收的消息。
7.如权利要求5所述的对数据位进行通信的方法,其中,所述选择步骤包括,如果在所述比较步骤指示没有误差,选择第二候选位序列作为接收的消息。
8.如权利要求1所述的对数据位进行通信的方法,其中,所述卷积解码步骤包括对要解码的消息执行一个顺序最大似然序列估计预测步骤。
9.一种对一个数据位分组进行通信的方法,包括步骤:
对一个消息进行卷积编码,以提供代表编码消息的奇偶校验位用于发送;
在一个通信媒介上发送奇偶校验位;以及
从通信媒介接收所发送奇偶校验位的估值,其特征在于,该方法包括下列步骤:
将第一误差检测位作为数据位分组的数据位的子集的一个预定函数来进行计算(100,130);
将数据位分组中的第一误差检测位分散在预定位置,以提供所述消息(102,132);
对所发送奇偶校验位的估值进行约束卷积解码,以提供一个候选位序列,其中,在相应于第一误差检测位的预定位置的位置处的位被约束到相等的值,这些值是应用加到接收的所发送奇偶校验位的估值上的所述计算第一误差检测位步骤的数据位组的数据位的子集的预定函数来计算的(116,140)。
10.如权利要求9所述的对数据位进行通信的方法,其中,所述约束卷积解码步骤包括步骤:
对处于相应于第一误差检测位的预定位置的位置处的位作为不确定数据位的位进行解码(120);
应用所述计算第一误差检测位步骤的数据位分组的数据位的子集的预定函数从预期包含数据位的位置处的候选位序列的位计算出第二误差检测位(122);以及
舍弃任何在其中的位于相应于第一误差检测位的一个预定位置的位置处的选定位与相应的第二误差检测位的计算值不匹配的解码序列(124);
以及,其中所述对数据进行通信的方法的特征还在于:
估算舍弃一个解码序列的次数,以提供一个误差指示(142)的步骤。
11.一种对一个数据位分组进行通信的方法,包括步骤:
对一个消息进行卷积编码,以提供代表编码消息的奇偶校验位用于发送;
在一个通信媒介上发送奇偶校验位;
从通信媒介接收所发送奇偶校验位的估值,其特征在于,该方法还包括下列步骤:
将数据位分组中的预定位分散在预定位置,以提供所述消息(102,132);
通过舍弃任何在其中的位于相应于预定位的一个预定位置的位置处的选定位与相应的预定位的状态不匹配的解码序列,应用一个确定状态卷积解码处理对所发送奇偶校验位的估值进行约束卷积解码,以提供一个候选位序列,该候选位序列中具有约束到来自在相应预定位的预定位置的位置处的所述分散步骤的预定位的状态的位(116,140);以及
累计舍弃一个解码序列的次数,以提供一个误差指示(142)。
12.一种通信系统,包括用于对一个消息进行编码的卷积编码装置,响应于所述卷积编码装置、用于发送所述编码消息的发送装置(58),用于接收一个编码消息的接收装置(70),以及响应于所述接收装置、用于对所述接收的编码消息进行解码的卷积解码装置(72),其特征在于,所述通信系统包括:
误差检测位发生装置(50),用于产生多个确定的误差检测位,并将要发送的数据位分组中的所述确定的误差检测位分散在多个预定间隔位置,以提供一个用于发送的消息;
误差指示发生装置(74),响应于所述卷积解码装置,用于根据相应于确定的误差检测位的预定位置的接收的编码消息的解码位与预测误差检测位的值的比较,产生一个误差指示;以及
其中,所述卷积编码装置(56)响应于所述误差检测位发生装置,用于对所述消息进行编码。
13.如权利要求12所述的系统,还包括:
约束卷积解码装置(80),响应于所述接收装置(70),用于根据一个确定状态卷积解码处理对所述接收的编码消息进行解码,所述约束卷积解码装置包括,
用于根据对于相应于所述确定误差检测位的预定位置的所述确定误差检测位的预期值确定预期的误差检测位的装置;以及
用于舍弃任何在其中的位于相应于确定误差检测位的一个预定位置的位置处的选定位与相应的预期误差检测位的位值不匹配的解码序列的装置(84)。
14.如权利要求12所述的系统,其中所述多个确定的误差检测位是基于要发送的一个数据位分组的各个部分,以及根据相应于接收的编码消息中包含数据位的部分的接收的编码消息的解码位产生所述预测误差检测位。
15.如权利要求14所述的系统,其特征在于,还包括:
约束卷积解码装置(80),响应于所述接收装置(70),用于根据一个确定状态卷积解码处理对所述接收的编码消息进行解码,所述约束卷积解码装置包括,
用于根据相应于接收的编码消息中包含数据位的部分的接收的编码消息的解码位产生预测误差检测位的装置;以及
用于舍弃任何在其中的位于相应于确定误差检测位的一个预定位置的位置处的选定位与相应的预测误差检测位的位值不匹配的解码序列的装置(84)。
16.如权利要求15所述的系统,其中,所述卷积解码算法是一种顺序最大似然序列估计技术。
17.如权利要求16所述的系统,其中,所述解码器(72)包括存储器,用于存储假设位状态、每个所述假设位状态的选定位的历史、以及每个所述假设位状态的置信因子。
CN97194355A 1996-05-03 1997-05-01 应用分散误差检测位的数据通信系统和方法 Expired - Fee Related CN1130027C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/642,056 US5910182A (en) 1996-05-03 1996-05-03 Data communications systems and methods using interspersed error detection bits
US08/642,056 1996-05-03

Publications (2)

Publication Number Publication Date
CN1217838A CN1217838A (zh) 1999-05-26
CN1130027C true CN1130027C (zh) 2003-12-03

Family

ID=24574998

Family Applications (1)

Application Number Title Priority Date Filing Date
CN97194355A Expired - Fee Related CN1130027C (zh) 1996-05-03 1997-05-01 应用分散误差检测位的数据通信系统和方法

Country Status (8)

Country Link
US (1) US5910182A (zh)
EP (1) EP0896764A1 (zh)
JP (1) JP2000509928A (zh)
KR (1) KR100341790B1 (zh)
CN (1) CN1130027C (zh)
AU (1) AU721475B2 (zh)
CA (1) CA2250510C (zh)
WO (1) WO1997042716A1 (zh)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6347122B1 (en) * 1998-01-13 2002-02-12 Agere Systems Guardian Corp. Optimal complement punctured convolutional codes for use in digital audio broadcasting and other applications
US7536624B2 (en) 2002-01-03 2009-05-19 The Directv Group, Inc. Sets of rate-compatible universal turbo codes nearly optimized over various rates and interleaver sizes
US6430722B1 (en) * 1998-01-23 2002-08-06 Hughes Electronics Corporation Forward error correction scheme for data channels using universal turbo codes
US6141391A (en) * 1998-02-04 2000-10-31 Lsi Logic Corporation System for improving the performance at low signal-to-noise ratios of receivers with Viterbi decoders
US6199190B1 (en) 1998-02-11 2001-03-06 Conexant Systems, Inc. Convolution decoding terminated by an error detection block code with distributed parity bits
EP1018220B1 (en) * 1998-08-06 2007-07-25 Samsung Electronics Co., Ltd. Channel encoding/decoding in communication system
KR100373965B1 (ko) * 1998-08-17 2003-02-26 휴우즈 일렉트로닉스 코오포레이션 최적 성능을 갖는 터보 코드 인터리버
US6292919B1 (en) * 1998-08-25 2001-09-18 General Electric Company Methods and apparatus for exchanging data in an imaging system
AU5685499A (en) * 1998-08-27 2000-03-21 Hughes Electronics Corporation Method for a general turbo code trellis termination
EP1093613A4 (en) 1999-04-27 2002-02-06 Hughes Electronics Corp SYSTEM AND METHOD THAT USES A SPEED ADJUSTMENT MECHANISM IN COMMUNICATION NETWORK
KR20010057145A (ko) * 1999-12-18 2001-07-04 윤종용 Xor 코드, 이를 이용한 직렬 연접 부호기 및 복호기
CN1187928C (zh) * 2000-03-13 2005-02-02 松下电器产业株式会社 发送装置及增益补偿方法
WO2001076075A1 (en) * 2000-03-31 2001-10-11 Koninklijke Philips Electronics N.V. Error correcting integrated circuit and method
US8656246B2 (en) * 2001-04-16 2014-02-18 Qualcomm Incorporated Method and an apparatus for use of codes in multicast transmission
GB2400001A (en) * 2003-03-27 2004-09-29 Tandberg Television Asa Constraining a Viterbi decoding trellis using known synchronisation bits
US7228485B1 (en) 2003-04-03 2007-06-05 Marvell International Ltd. Error correction using error detection codes
US7191385B2 (en) * 2003-04-24 2007-03-13 Locus Location Systems, Llc Error correction in a locating method and system
US8345793B2 (en) * 2008-03-10 2013-01-01 Telefonaktiebolaget Lm Ericsson (Publ) Compensation of diagonal ISI in OFDM signals
JP4968146B2 (ja) * 2008-03-31 2012-07-04 ソニー株式会社 放送信号受信機およびその受信制御方法、並びにic
JP4922242B2 (ja) * 2008-06-05 2012-04-25 パナソニック株式会社 符号化装置、符号化方法、及びビタビ復号装置
US8352829B1 (en) * 2009-06-02 2013-01-08 Juniper Networks, Inc. Regeneration of a packet CRC
JP4660612B2 (ja) * 2009-07-09 2011-03-30 株式会社東芝 情報再生装置及び情報再生方法
US8649521B2 (en) 2010-01-28 2014-02-11 Cleversafe, Inc. Obfuscation of sequenced encoded data slices
US20190108366A1 (en) * 2010-01-28 2019-04-11 International Business Machines Corporation Secure data transmission utilizing distributed storage
JP2013046148A (ja) * 2011-08-23 2013-03-04 Tokai Rika Co Ltd 通信方法及び通信システム、送信装置及び受信装置、並びにタイヤ空気圧監視システム
WO2017186307A1 (en) * 2016-04-29 2017-11-02 Telefonaktiebolaget Lm Ericsson (Publ) Polar code successive cancellation list decoding
CN111930727B (zh) * 2020-06-23 2023-04-28 宁波三星医疗电气股份有限公司 一种设备数据主动上报打点记录方法及数据补偿方法
US11580396B2 (en) 2020-10-13 2023-02-14 Aira Technologies, Inc. Systems and methods for artificial intelligence discovered codes
US11088784B1 (en) 2020-12-24 2021-08-10 Aira Technologies, Inc. Systems and methods for utilizing dynamic codes with neural networks
US11575469B2 (en) 2020-12-28 2023-02-07 Aira Technologies, Inc. Multi-bit feedback protocol systems and methods
US11368250B1 (en) 2020-12-28 2022-06-21 Aira Technologies, Inc. Adaptive payload extraction and retransmission in wireless data communications with error aggregations
US11191049B1 (en) 2020-12-28 2021-11-30 Aira Technologies, Inc. Systems and methods for improving wireless performance
US11477308B2 (en) 2020-12-28 2022-10-18 Aira Technologies, Inc. Adaptive payload extraction in wireless communications involving multi-access address packets
US11483109B2 (en) 2020-12-28 2022-10-25 Aira Technologies, Inc. Systems and methods for multi-device communication
US11489624B2 (en) 2021-03-09 2022-11-01 Aira Technologies, Inc. Error correction in network packets using lookup tables
US11489623B2 (en) 2021-03-15 2022-11-01 Aira Technologies, Inc. Error correction in network packets
US11496242B2 (en) * 2021-03-15 2022-11-08 Aira Technologies, Inc. Fast cyclic redundancy check: utilizing linearity of cyclic redundancy check for accelerating correction of corrupted network packets

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3933822A1 (de) * 1989-10-10 1991-04-18 Deutsche Forsch Luft Raumfahrt Verfahren zum codieren und decodieren von binaeren daten sowie einrichtung zur durchfuehrung des verfahrens
GB2252702A (en) * 1991-01-15 1992-08-12 British Telecomm Channel coding for speech
US5349589A (en) * 1991-07-01 1994-09-20 Ericsson Ge Mobile Communications Inc. Generalized viterbi algorithm with tail-biting
IL118832A (en) * 1992-01-16 1998-03-10 Qualcomm Inc Method and device for data integration and transmission and overuse
US5577053A (en) * 1994-09-14 1996-11-19 Ericsson Inc. Method and apparatus for decoder optimization

Also Published As

Publication number Publication date
EP0896764A1 (en) 1999-02-17
KR100341790B1 (ko) 2002-11-30
CA2250510A1 (en) 1997-11-13
CN1217838A (zh) 1999-05-26
CA2250510C (en) 2006-07-11
AU721475B2 (en) 2000-07-06
WO1997042716A1 (en) 1997-11-13
US5910182A (en) 1999-06-08
AU2929997A (en) 1997-11-26
JP2000509928A (ja) 2000-08-02
KR20000010748A (ko) 2000-02-25

Similar Documents

Publication Publication Date Title
CN1130027C (zh) 应用分散误差检测位的数据通信系统和方法
CN1083189C (zh) 用于译码器最优化的方法和装置
EP3510699B1 (en) Method and apparatus for encoding data using a polar code
US8196016B1 (en) Trapping set decoding for transmission frames
AU724573B2 (en) Convolutional decoding with the ending state decided by CRC bits placed inside multiple coding bursts
CN1150681C (zh) 选择串接码内循环冗余校验生成器的方法
EP3994799B1 (en) Iterative bit flip decoding based on symbol reliabilities
WO1996008895A9 (en) Method and apparatus for decoder optimization
CN1232589A (zh) 利用软信息输出使差错率最小的解码器
CN1306711A (zh) 从软数据得出码字估值的数字数据译码器
CN1886926A (zh) 用于计算接收信号误码率的方法和设备
CN1777041A (zh) 用于收缩卷积码的软判决译码的接收机系统和方法
CN1405981A (zh) 改进的非规则低密度奇偶校验码纠错译码方法
US20050210358A1 (en) Soft decoding of linear block codes
CN111106838B (zh) 一种通信同步方法、装置及系统
CN113507289B (zh) 一种编码器、解码器及码字生成方法
CN1257627A (zh) 无线电通信系统中的比特检测方法
EP0981863B1 (en) Method and apparatus for enhanced performance in a system employing convolutional decoding
CN1855796A (zh) 选择n个加扰码块中的一个
CN1741614A (zh) 使用冗余对视/音频和语音数据进行解码的方法和系统
CN112350799B (zh) 一种信道编码的纠错方法、系统、装置及介质
TWI430585B (zh) 區塊碼解碼方法與裝置
US20230176232A1 (en) Decoder for a receiver
EP3125454A1 (en) Data processing method and device for correcting errors in defective copies of a data packet
CN101777919B (zh) 区块码解码方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20031203

Termination date: 20140501