一般地讲本发明涉及通信领域,更具体地讲是涉及在射频信道上传送的亚声频数据字的纠错。 在蜂窝无线电话系统中工作时,数据消息是在无线电话机与基站之间连续地传送的。这些消息包括请求无线电话收发信机改变发送功率电平,改变信道指配,释放呼叫或其它类似的请求的命令。这些数据消息的一部分是在前向的和反向的话音信道上发送的。在使用亚声频数据的系统中,这些消息是插入在连续的数据流中。如在转让给本发明的受让人的美国4984290号专利(Levine等人)中所描述的系统就是这种系统的一个例子。窄带先进的移动业务(NAMPS)是这种系统的另一个例子,在Motorola NAMPS Air Interface Specification Revision D中详细地进行了描述,可从本发明的受让人得到该材料。在上述说明书的2.7.2.2和3.7.2.2两节中更详细地叙述了前向和反向话音信道。
在窄带前向话音信道(基站到无线电话机)上使用的数据消息格式由28比特的内容组成的,它被编码为以100比特/秒发送地具有间隔为5的(4,28)纠错的博斯-查德胡里-霍昆格姆(BCH)编码的曼彻斯特调制数据消息。BCH码用于校正两比特的差错,而且是标准的(63,51)BCH码的缩短型。完全解码,允许的(40,28)BCH的两比特纠错要求使用复杂的解码算法,如要求用加罗瓦域算法计算的伯力肯普(Berlekamp)所确定的算法。S.Lin和D.Costello Jr.的“差错控制编码”,141-183(1983)详细地讨论了BCH解码。一种更实用的且不太复杂的解码器是差错俘获解码器,它用于校正一比特的差错。对目前说明的单比特差错俘获器被用作BCH解码器。
在30比特字同步码型的单个传输以200比特/秒使用不归零(NRZ)调制发送之后,再发送前向话音信道消息。在同步码型中允许四个差错。比特同步是通过接收七个24比特连续发送的200比特/秒的数字监视声频单音(DSAT)序列的一个序列并保持与它同步来实现的。(48,36)BCH编码的曼彻斯特调制的数据消息用在窄的反向话音信道(无线电话机到基站)。
类似地,反向话音信道消息也是在30比物字同步码型的单个传输之后传送。反向话音信道的比特同步是用类似于前向话音信道的DSAT序列来实现的。
不用在一些典型的蜂窝系统中使用的多次重复,而是用自动重复请求过程(ARQ)实现衰落保护。当收到BCH码可校正的亚声频数据消息时,该接收单元发送一个确认到发送单元。如果该发送单元收不到确认则该消息可被发送总共三次。
如果无线电话机处于低信号电平、多路径或雷利衰落的环境中,则数据消息被接收时可能包含不可校正的差错。如果三次接收的消息都有BCH码不可校正的差错,则该消息被忽略而且不发送确认。结果需要校正这些BCH码不可校正差错,从而减少亚声频数据通信的消息差错率。
本发明的方法是校正已传送多次的数据消息的差错。该方法包括步骤:接收数据消息至少两次,逻辑地组合接收的第一和第二字以构成差错指示字,和响应该差错指示字通过至少补码第一或第二字的一比特来解码第一或第二接收的字。
图1表示本发明过程的流程图。
图2表示使用本发明的过程的现有技术自动重复请求过程的统计比特差错率相对于差错校正的曲线图。
图3表示用现有技术纠错校正的信号差错的RF信号电平相对于用本发明的过程校正的信号差错的RF信号电平的曲线图。
图4表示根据本发明的过程的两个消息和结果的差错指示字的例子。
本发明的扩展纠错(EEC)过程减少了亚声频数据通信的消息差错率。该过程把消息中的差错数目减少到一个差错,因此允许BCH差错俘获解码器纠错以校正最后一个差错。
为了说明本发明的过程,NAMPS系统的BCH纠错作为一个例子。但是,这个过程可用于至少发送消息两次的任何情况中并且使用前向纠错过程。前向纠错过程采用自动地校正检测的差错的纠错码。S.Lin和D.Costello Jr.的差错控制编码,12-14,(1983)中详细地讨论前向纠错。
本发明的过程在图1的流程图中进行说明。这个过程可应用于在至少已接收两次的消息不能通过BCH纠错进行差错校正的ARQ消息。如果在传输期间由于不适当的同步而已丢失一个消息时,则本发明的纠错过程也可以纠错指定的三个ARQ消息中的两个消息。
通过异或(XOR)两个接收的消息(101),以下称有消息A和B,该过程由产生擦除比行位置开始。XOR操作产生包含逻辑1的差错指示字,在每个位置指示在A或B消息中差错的位置。在两个消息中的差错数确定使用本发明的纠错过程的哪一部分。如果差错指示字指示在两个消息中总共存在两个或四个差错(102),则执行与如果发现三个或五个差错(103)不同的纠错。
对于在两个消息中位于相同位置的差错,XOR操作在差错指示字中不会产生擦除比特。在这个情况下,该消息包含将产生错误解码的看不见的差错。后面将更详细地讨论这个错误解码方面。
如果发现两个或四个差错(102),则消息A的第一擦除比特被补码(104)。这个比特的位置由差错指示字的第一个逻辑1位置表示。在最佳实施例中,第一个擦除比特从左边开始。替代的实施例可使用从任何位置开始的第一个擦除比特。图4说明差错指示字的第一个逻辑1位置(402)指示的消息A(401)第一擦除比特的位置。
消息A原来至少包含两个差错,不然BCH纠错程序已完成成功的纠错。在第一擦除被补码之后,如果补码比特是消息A中的一个差错,则这时消息A最多包含一个差错。这时修改的消息可用BCH纠错程序进行差错校正。这时消息A被解码(104)。
如果对消息A进行成功的解码(105),消息B的第一擦除被补码(106),执行BCH纠错和修改消息被解码。如果消息B不是成功地解码(107),消息A是要使用的正确消息(109)。如果两个消息都成功地被解码(108),那么已产生两个不同的消息和一个错误地解码的消息。这是由于该算法产生差错使纠错解码器的错误。因此,两个成功的解码只在一个消息不是正确地解码时才可能。在这种情况下,使用单个校正的差错的消息,或者任一个有单个校正的差错,则两个消息都废除。
如果消息A不是成功地解码(105),则消息B的第一擦除被补码并尝试解码(110)。如果消息B成功地解码(111),则使用消息B(112)。如果消息B还没被成功地解码(111),那么废除两个消息(140)。
如果在差错指示字中发现的擦除数总共为三或五个(103),则执行另一个过程。由差错指示字中的位置指示的消息A中的第一对擦除比特被补码(113)。然后进行解码修改的消息A的尝试。如果消息A成功地被解码(114),则消息B中相同比特对位置被补码并执行解码修改的消息B的尝试(115)。
如果消息B也成功地被解码(116),那么通过比特对补码已产生两个不同的消息而且一个消息是错误地解码的。在这种情况下,两个消息都被废除(117)。如果消息B不是成功地解码(116),那么使用已经成功地解码的消息A(118)。
如果消息A不是成功地解码(114),则在消息A中被补码的相同擦除比特对在消息B中被补码(119)。这时进行解码修改的消息B的尝试。如果消息B成功地被解码(120),则使用消息B(121)。
消息B的不成功的解码(120)指明两个差错是在消息A和B之间分开的。因此,本发明的过程只需要进行前两个擦除。
为达到此目的,该过程补码消息A的第一个擦除比特并进行解码消息A的另一次尝试(122)。如果进行了成功的解码孩(123),则消息B中相同的擦除比特位置被补码并尝试解码(124)。如果消息B也成功地解码(125),则一个消息被错误地解码而且两个消息都被忽略(126)。当擦除数是5而没有看不见的差错或擦除数是3且有一个看不见的差错时,这保护不错误地解码该消息。如果消息B不是成功地解码(125),则消息A已成功地被纠错并使用解码的消息A(127)。
如果消息A没有取得成功的解码(123),消息B的相同的擦除比特位置被补码并进行解码操作(128)。如果消息B成功地被解码(129),那么消息B已成功地纠错和被使用(130)。
如果消息B没有成功地解码(129),则消息A的第二擦除比特被补码并进行解码的另一次尝试(131)。如果消息A已成功地解码(132),则在消息B中消息A的相同擦除比特被补码并对修改的消息B进行另一次解码尝试(133)。如果消息B已成功地解码(137),则通过比特对的补码已经产生两个不同的消息而且一个消息是错误解码的。在这种情况下,两个消息都被废除(138)。如果消息B没有成功地解码(137),则消息A已成功地纠错并且使用消息A(139)。
如消息A没有成功地解码(132),则消息B的第二擦除比特被补码并对消息B进行解码操作(134)。如果消息B成功地解码(135),则消息B已成功地纠错并使用这个消息(136)。如果消息B没有成功地解码(135),那么消息A或消息B都没有成功地纠错而且两者都被忽略(141)。
在最坏的情况本发明的过程要求七次解码以保证正确。没有这个过程,至少需要三十次解码来解码所有的擦除组合。
对于线性码,与码消息相同的差错码型把发送的码消息变换入另一个码消息。这称为错误解码。当应用单比特纠错时,差错码型必须包括除了产生错误的一个比特之外的所有可能的码消息比特。因此,错误解码的概率取决于本发明的EEC过程产生的差错码型的概率。对于(40,28)BCH码,最高位码型是加权=5的码字。幸亏在658008可能的加权=5组合中只存在134码字。
错误解码的确定由于在两个接收消息中的相同比特位置出现的差错的存在而更复杂了。由于XOR操作,这些差错不是由本发明的过程定位的。由于一个不可见差错错误解码的概率以下列计算确定。为了计算,假设有四个擦除和一个不可见的差错。
EEC过程可能增加消息B中差错数到四个,这时它包括一个不可见的差错。说明如下:
消息A:bbbebebbbbbbbbbbbeb…b
消息B:bbbgbbbbebbebbbbbeb…b
擦除:00010100100100000i0…0
其中b=接收的正确比特,
e=接收的差错比特,
g=过程产生的比特差错,
i=不可见的比特差错。
这个出现的概率等于一个不可见差错出现的总和概率与产生不正确解码的四个差错的概率。表示为:
P错误〔e=4,i=1〕=P〔i=1〕×P〔不正确解码〕
假定在每个消息A和B中已知至少存在两个差错,则不可见差错出现的概率是在每个消息的剩余38比特中存在附加的差错和消息A的这个差错覆盖消息B中的三个差错中的一个差错的概率。两个消息38比特的一个比特中附加差错出现的概率是:
P〔附加的差错〕=P(1-P)37×P(1-P)37=P(1-P)74
式中P是比特差错概率。不可见差错的概率是:
P〔i=1〕=(3/38)P〔附加差错〕=7.9E-2P2(1-P)74
有四个比特差错码型的不正确解码出现的概率是四个随机差错覆盖加权=5的码字的概率。有加权=5的134(40,28)BCH码字。
P〔不正确解码〕=(134/658008)×5=1.0E-3
因此,错误解码的概率是:
P错误〔n=4,i=1〕=P〔i=1〕×P〔不正确解码〕
P错误〔n=4,i=1〕=7.9E-5(P2(1-P)74)
当P=0.01时:
P错误〔n=4,i=1〕=3.76E-9。
这些计算表明由于不可见差错出现错误解码的概率是极小的。
如果BCH解码器具有较大的纠错能力,本发明的过程可扩大到解码大量的差错。换句话说,这个过程总是能够把纠错能力扩大到超过BCH解码器的纠错能力。在第二消息收到之后和如果需要在等待第三消息时,可以使用本发明的EEC过程。
图2和3说明使用本发明的过程的益处。图2的曲线表示使用NAMPS标准ARQ的无线电话的统计比特差错率和使用本发明的:纠错过程的无线电话的NAMPS差错率之间的比较。上面的曲线表示在两个消息之后的消息差错概率。下一条曲线表示在两个消息之后并使用本发明的EEC过程的消息差错概率。最下面曲线表示在三个消息之后的消息差错概率。
图2表示在收到两个消息之后和以本发明的EEC过程处理之后消息差错概率接近于具有接收三个消息的标准NAMPS ARQ的性能。在第二个消息之后而不是等待第三消息,使用EEC过程减少了消息纠错和发送确认到发送单元所要求的时间。
图3的曲线表示作为RF信号电平的函数的本发明的EEC过程和标准的NAMPS ARQ之间的比较。两个图仅仅表示相对的性能,而且由于假定的统计条件,不表示在衰落RF信道上的实际的性能增益。
简言之,已经说明了数据消息纠错的过程。虽然在上述讨论中使用BCH码,但是本发明的过程是根据比特工作的,而不是编码类型,因此可用在使用任何前向纠错过程的任何两个消息上。本发明的这个纠错过程扩展了由前向纠错程序完成的纠错。通过使用本发明的纠错过程,消息差错率大大地改善了。