利用循环冗余校验纠错的装置和方法

文档序号:7511302阅读:339来源:国知局
专利名称:利用循环冗余校验纠错的装置和方法
技术领域
本发明一般地涉及移动通信,更具体地,涉及能够利用循环冗余校验(Cyclic Redundancy Check, CRC)纠错的装置和方法。
技术背景在通信系统中,经常使用CRC编码方案来实现信息码差错的检测。图1示意性地示出了一般的移动通信系统。简单地说,在发射机端, 要传输的信息被编码,以形成以帧为单位的数字数据流。数据流被调制, 然后在信道上被发射。在接收机端,接收信号被解调,得到基带数据,然 后经过解码,还原出所传输的信息。由于信道衰落、干扰、噪声等各种因 素的影响,在接收机端接收的信号会出现误差,从而导致得到的比特串或 符号串存在差错。例如,在利用四相移键控(Quadrature Phase Shift Keying, QPSK)调制的系统中,由于相位误差导致的误判,可能会使得 原始发送的符号(O, O)被接收机端认为是(O, 1),出现符号差错。为了可以发现这样的差错,用于检错的编码机制被使用。其中,CRC 编码方案由于检错能力强且简单易行,在移动通信系统中被普遍采用。简单地说,根据CRC方案,在编码阶段,k比特的信息码被编码为由 k比特的信息码和n-k比特的校验位串接而成的n比特CRC码字(被称为 (n,k)码)。CRC码字通过如下计算得到的将k比特的信息码向高位方向 移动n-k比特,并用0填充低位n-k比特;将得到的二进制串作为被除 数,将与一个生成多项式的系数相对应的二进制串作为被除数,进行模2 除法,得到的二进制余数即是校验位;将校验位与原信息码串接起来便形 成了 CRC编码的码字。可见,如果将得到的码字作为被除数,将与该生 成多项式的系数相对应的二进制串作为除数,进行模2除法,得到的余数 应当全部为0。这样,如果在接收机端,用接收的码字进行相同的除法,得到的余数(下文中称为校验子(syndrome))不为0,则可以判断出包 含信息码的码字出现差错。通常,如果CRC不通过,接收机将丢弃接收的码字,并要求发射机 重传数据。这降低了通信系统的性能。因此,希望在通信系统中,能够利 用CRC既进行检错又进行纠错。但是,由于CRC的特性,利用CRC进行 纠错是相对复杂并且受到限制的。并且,由于一些通信系统自身的特性, 使用CRC进行纠错是困难的,尤其是对于个人手持电话系统(Personal Handy-phone System, PHS)。虽然已经提出了使用CRC进行纠错的一些 方案,但是通常仅限于纠正序列中出现的单比特差错。然而,在一些通信 系统中,单比特纠错缺少实际的价值。发明内容本发明提供了一种能够在通信系统中利用CRC检错并纠正满足一定 条件的符号错误的装置和方法。根据本发明的一个方面,提供了一种在通信系统中利用CRC纠错的 方法,包括设置一个或多个CRC纠错表,CRC纠错表中的信息指示可 纠正差错样式与相应的校验子的对应关系;对接收的CRC码字执行CRC 运算,生成校验子;如果校验子为零,则接收的码字被判断位校验正确; 如果校验子不为零,则在CRC纠错表中査找与该校验子相对应的项;如 果在CRC纠错表中找到与该校验子相对应的项,则根据与该项相对应的 可纠正差错样式纠正接收的码字;如果相应的项不在表中,则将接收的码 字判断为不可纠正。根据本发明的另一个方面,提供了一种用于在通信系统中利用CRC 纠错的装置,包括存储单元,被配置为存储一个或多个CRC纠错表, CRC纠错表中的信息指示可纠正差错样式与相应的校验子的对应关系; CRC计算单元,被配置为对接收的CRC码字执行CRC校验运算,生成校 验子;表査找单元,被配置为如果校验子不为零,则在CRC纠错表中査 找与该校验子相对应地项;纠错单元,被配置为如果与该校验子相对应的 项在CRC纠错中被找到,则根据与该项相对应的可纠正差错样式纠正接的码字识别为不可纠正。根据本发明的一个实施例,还可以在接收的码字被纠错之后,对纠错 后的码字进行验证,以进一步保证纠错的正确性。本发明对于利用DQPSK的通信系统,例如PHS系统尤其有用。对于 这样的系统,经常在一个码字中发生由于一次判决错误导致的连续两个符 号范围内的两比特差错。根据本发明的一个实施例,将可纠正差错样式设 定为信息码中两个连续符号范围内的两比特差错。具体地,设置为两个连 续符号范围内的符合模式"对错对错"、"对错错对"、"错对对错"或 "错对错对"的差错。本发明还包括利用根据本发明的CRC纠错装置的通信接收机。 本发明能够利用CRC纠错表纠正符合可纠正差错样式的两比特差 错,以降低误帧率,提高通信性能。本发明对于PHS系统尤其有益。


结合附图,从下面对本发明优选实施例的详细描述,将更好地理解本 发明,附图中类似的参考标记指示类似的部分,其中-图1示意性地示出了一般的移动通信系统;图2是示出了根据DQPSK调制方案的符号与差分相位之间的关系的 示图;图3是示出了标准PHS系统的控制信道和业务信道的时隙格式的示图;图4是示出了根据本发明一个实施例的CRC纠错装置的示例性配置 的框图;图5是示出了根据本发明一个实施例的CRC纠错装置的示例性处理 的流程图;图6A是示出了根据本发明一个实施例的"错对错对"模式的示例性 CRC纠错表的示图;图6B是示出了根据本发明一个实施例的"错对对错"模式的示例性 CRC纠错表的示图;图6C是示出了根据本发明一个实施例的"对错错对"模式的示例性 CRC纠错表的示图;图6D是示出了根据本发明一个实施例的"对错对错"模式的示例性CRC纠错表的示图;图7是示出了根据本发明另一个实施例的示例性CRC纠错表的示图;图8是示出了根据本发明另一个实施例的CRC纠错装置的示例性配 置的框图;以及图9是示出了根据本发明另一个实施例CRC纠错装置的示例性处理 的流程图。
具体实施方式
下面,将参考附图描述本发明的原理和示例性的实施例。应当意识 到,所描述的实施例仅是用于举例说明的目的,本发明并不限于所描述的 具体实施例。在下面的详细说明中,将使用PHS系统作为示例。但是应当 理解,本发明并不限于特定的PHS系统,而是可以类似地应用于其他通信 系统。如所公知的,PHS系统采用差分四相移键控(Differential Quadrature Phase Shift Keying, DQPSK)调制方案。在DQPSK调制方案中,定义了 分别由两比特表示的四种符号(0,0)、 (0, 1)、 (l,O)和(l, 1)。通信时,利 用对差分相位的判决来确定符号。图2示出了根据一种DQPSK调制方案 的符号与差分相位之间的关系。PHS系统采用了 CRC编码方案。图3示出了标准PHS系统的控制信 道和业务信道的时隙格式,其中字段长度均以符号为单位。从图中可见, 在控制信道和业务信道中,都存在长度为8符号(16比特)的CRC校验 码字段。如所公知的,标准PHS系统采用CRC-CCITT生成多项式g(x)= x16+x12+X5 + l。本发明的发明人发现,在例如PHS系统的通信系统中,单比特纠错常 常是没有实际价值的。如果出现一次相位判决错误,将会影响两个相继的符号。例如,如果当前信号的相位判决错误,可能会造成当前信号与前一 信号的相位差判决和与后一信号的相位差判决都发生错误,这使得相应的两个连续符号错误。由于星座映射满足格雷(Gray)规则,因此会发生两 比特差错,其中连续的两个符号中的每一个中分别存在一比特差错。举例来说,假设一个信息码序列被表示为ai, a2, a3,..., an。在接收机 端, 一次相位判决错误将导致两个连续符号错误,例如(32]<+1, a2k+2^P(a2k+3,根据格雷规则,将出现两比特差错,例如仏2k+i,或^2k+2, a2k+^或(a2k+2, a2k+4}。上述差错模式可以归纳为在两个连续符号范 围内的"错对错对"、"错对对错"、"对错错对"和"对错对错"。其 中,"错对错对"与"对错对错"可以概括为"错对错"模式。理论上,CRC不具有纠正在任何随机位置发生的两比特差错的能力, 因为在随机位置与校验子之间不存在一一对应的关系。但是,经过推导, 本发明的发明人发现,如果仅针对两个相继符号中发生的两比特差错,则 存在一一对应的关系,也就是说,校验子可以被用于纠正这种差错。因 此,本发明提出了利用CRC纠正两比特差错的方法的装置。下文中,将 符合可纠正条件的信息比特差错位置样式称为可纠正差错样式。根据本发 明的一个实施例,可纠正差错样式满足上述的两个连续符号范围内的两比 特差错模式。实际上,在例如PHS的通信系统中,出现一次判决错误的情况是最为 普遍的。因此,根据本发明的利用CRC纠正两个连续符号中的两比特差 错的方案是具有实际意义和价值的。至少,根据本发明的方案,可以降低 误帧率(FER),改善解调性能。下面,参考附图描述根据本发明的示例性的实施例。 图4示出了根据本发明一个实施例的CRC纠错装置的示例性配置。 根据本发明的CRC纠错装置可以代替传统的CRC校验模块而实现在接收 机中。如图4所示,CRC纠错装置400主要包括用于执行CRC运算的 CRC计算单元401;用于存储CRC纠错表的存储单元402;与存储单元 402和CRC计算单元401耦合的表査找单元403,用于根据校验子执行 CRC纠错表査找;和与表査找单元403耦合的纠错单元404,用于根据表查找的结果进行差错纠正。图5示出了根据该实施例的CRC纠错装置的示例处理流程。初始 时,在步骤S501将设置CRC纠错表,该CRC纠错表被保存在存储单元 402中。CRC纠错表是保存了这样的信息的表这些信息指示了每种可能 的可纠正差错样式与相应校验子的对应关系。例如,表中保存了每种可能 的可纠正差错样式和其相应的校验子。注意,可纠正差错样式例如是符合 上述在两个连续符号范围内的"错对错对"、"错对对错"、"对错错 对"和"对错对错"模式的两比特差错样式。图6A 6D分别示出了根据本发明一个实施例的示例性CRC纠错表, 其分别对应于模式"错对错对"、"错对对错"、"对错错对"和"对错 对错"。每张表的左列是用于可纠正差错样式的比特串,其长度与信息码 长度相同。其中,"0"代表相应的位置没有差错,"l"代表相应的位置 存在差错。用Pij代表第i种模式的第j种可纠正差错样式。每张表的右列 是当出现符合可纠正差错样式的差错时,在CRC运算中将得到的相对应 的校验子。校验子的长度由CRC生成多项式决定。在PHS系统中,校验子的长度为16比特。用Sij代表与可纠正差错样式P'j相对应的校验子。表中的每个CRC校验子可以通过CRC计算预先得到。由于CRC计算是公知 的,这里省略对其的详细描述。当然,本发明的CRC纠错表并不限于图6A 6D所示的形式。例如, "错对错对"模式和"对错对错"模式的表可以合并为一张表("错对 错"模式)。也可以在一张表中保存全部模式的可纠正差错样式。另外, 在图6A 6D中,校验子和可纠正差错样式用二进制比特串来表示。但 是,也可以采用其他的表示形式,只要能够从其确定与校验子相对应的可 纠正差错样式,例如,可以仅指示非零位的相对或绝对位置。图7示出了根据本发明一个实施例的更加简单的CRC纠错表,其中 仅保存校验子,而相应的可纠正差错样式可以根据条目的计数值来确定。 例如,当采用如图6A 6D所示的顺序安排表条目(即表的第一条对应于 第1和第2符号发生差错,第二条对应于第2和第3符号发生差错,…) 时,图7中的表的第k条校验子对应于第k和第k+l符号发生了模式i的差错。利用图7的表,可以更加容易地利用计数器或地址指针的值确定相 对应的可纠正差错样式。利用图7所示的简化的表,可以节省存储空间。现在返回参考图5。 CRC纠错表可以在接收机被制造的时候进行设置 并存储在存储单元402中。或者,可以在接收机的控制器的控制下进行设 置或更改。例如,通过无线电或其他接口下载并存储和/或更新CRC纠错 表。CRC纠错表设置完成之后,在以后的通信过程中可以不再执行步骤 S501。通信中,接收机接收的信号经过规定的处理之后,将得到接收的CRC 码字(由于这些处理的本领域公知且与本发明并不直接相关的,因此这里 省略对其的详细描述)。代替仅执行校验的传统CRC校验模块,根据本 发明实施例的CRC纠错装置400将对接收的CRC码字进行CRC检错,并 且如果检测出差错,将尝试进行纠错。在步骤S502, CRC纠错装置400的CRC计算单元401对接收的码字 执行CRC计算,生成校验子。具体地说,CRC计算单元401以接收的码 字作为除数,将与生成多项式g(x)的系数相对应的二进制串作为被除数, 进行模2除法,将得到的二进制余数作为校验子。在步骤S503,如果计算得到的校验子为零,则CRC计算单元401判 断接收的码字(或其中包含的接收的信息码)被校验为正确。校验通过的 码字(或其中包含的信息码)从CRC纠错装置400被输出,以用于接收 机的下一个环节的处理。如果计算得到的校验子不为零,则在步骤S503, CRC计算单元401 判断接收的码字(或其中包含的接收的信息码)出现了差错,并将计算得 到的校验子通知给表査找单元403以启动纠错。表査找单元403在存储单元402中所存储的CRC纠错表中査找包含该 校验子或者与该校验子相对应的项,并将査找结果提供给纠错单元404。 在步骤S504,如果表查找单元403在CRC纠错表中没有找到与CRC计算 单元401计算出的校验子相匹配的项,则过程进行到步骤S505,纠错单元 404将接收的码字(或其中包含的接收信息)码判断为存在为不可纠正的 错误。如果接收的码字被CRC纠错装置400判断为不可纠正,接收机将采取相应的措施,例如丢弃接收的码字(或其中包含的信息码),并要求 发射机重传。在步骤S504,如果表査找单元403在CRC纠错表中找到了与CRC计 算单元401计算出的校验子相匹配的项,则将与该项相对应的可纠正差错 样式信息提供给纠错单元404,并且过程进行到步骤S506。在步骤S506,纠错单元404根据表査找单元403提供的信息,对接收 的码字中所包含的信息码进行纠正。具体地说,纠错单元404根据与计算 出的校验子相对应的可纠正差错样式确定差错位置,纠正接收的码字中的 信息码相应位置的比特。以图6A 图6D所示的CRC纠错表为例。假设CRC计算单元401计 算出的校验子等于S2k,表査找单元403将在CRC纠错表中找到S^和与 之相对应的可纠正差错样式P\ (其第2k+l比特和第2k+4比特为1,其余 比特为0)。并将pZk提供给纠错单元404。纠错单元404基于P2k,纠正 接收的码字中的信息码的第2k+l比特和第2k+4比特,即将相应位置的0 纠正为1或将1纠正为0。例如,可以通过将二进制比特串P^与接收的码 字中的信息码进行异或操作来进行纠正。当然,本发明并不限于上述的纠错示例。例如,同样假设CRC计算 单元401计算出的校验子等于S2k,当使用图7所示的形式的CRC纠错表 时,表查找单元403将在与模式2 "错对对错"相对应的表的第k项找到 S\,并将差错模式和计数值k提供给纠错单元404。纠错单元404根据差 错模式"错对对错"和计数值k,纠正接收的信息码的第2k+l比特和第 2k+4比特。例如,纠错单元404将接收的信息码循环左移k-l个符号,然 后将左4个比特与和"错对对错"模式相对应的二进制串"1001"进行异 或运算,再将信息码循环左移至原始顺序,从而纠正信息码。图8示出了根据本发明另一个实施例的CRC纠错装置的示例性配 置。根据该实施例,为了保证纠错的准确性,添加了纠错验证单元801。 纠错验证单元801用于验证纠正后的码字是否正确。图9示出了根据该实施例的CRC纠错装置800的示例性处理过程,其 中步骤S901 S906分别与上述参考图5描述的步骤S501 206类似。在步骤S906纠错单元404对接收的码字进行纠错之后,在步骤S907,纠错 验证单元801将纠正后的码字提供给CRC计算单元401,并使CRC计算 单元401对纠正后的码字执行CRC运算。如果对纠正后的码字计算的校 验子为零,则在步骤S908,校验通过,纠错验证单元801判断纠错成功。 如果对纠正后的码字计算的校验子不为零,则在步骤S908,校验不通过, 纠错验证单元801判断纠错失败,并将接收的码字判断为存在为不可纠正 的错误。上面已经参考具体实施例说明了根据本发明的方法和装置。根据本发 明,不但可以利用CRC进行检错,还可以利用CRC对两个连续符号范围 内的符合可纠正差错样式的符号错误进行纠错。如上所述,在利用差分 QPSK的PHS系统中, 一次判决错误将引起两个连续符号中的符合上述可 纠正差错样式的错误。本发明的两比特纠错能力在如PHS这样的使用差分 QPSK调制的系统中尤其有益。上面已经在PHS系统的环境中描述了本发明示例性实施例,但是应当 理解,本发明也可以类似地应用于其他通信系统,尤其是采用差分四相移 键控的通信系统。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本 发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可 以在领会本发明的精神之后,作出各种改变、修改和添加。上面已经描述了根据本发明的利用CRC进行检错和纠错的装置,该 装置可以实现在通信系统的接收机中。本发明还包括利用这种装置的通信 接收机,以及利用这种通信接收机的通信系统。虽然作为示例性的配置,附图中已经示出了根据本发明实施例的CRC 纠错装置中的耦合在一起的单元。但是,根据本发明的CRC纠错装置并 不限于图中所示的具体配置。例如, 一些被示出为分立的单元可以组合在 一起,或者一个单元可以按照其功能被分为若干个单元。例如,图8中所 示的纠错验证单元801也可以设置在纠错单元404中,或者其功能可以由 纠错单元404完成。另外,CRC纠错装置也可以另外包括其他单元或模 块,例如可以对CRC运算参数进行控制的模块,或者其他功能模块。本领域的技术人员可以根据具体的应用进行添加或更改。上述的单元和装置都可以实现为硬件、软件、固件或者它们的组合。 当以软件方式实现时,上述单元或装置是被用于执行所需任务的程序或者 代码段,由接收机中的计算设备执行。这些程序或代码当被一个或多个计 算设备执行时,使得计算设备实现根据本发明的方法。程序或者代码段可 以通过通信网络传输到接收机的存储设备中,或者被存储在机器可读介质 中,通过适当的接口读入接收机的存储设备中。机器可读介质可以包括能 够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM (EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段也可以 经由诸如因特网、内联网等的计算机网络被下载。本发明可以以其他的具体形式实现,而不脱离其精神和本质特征。本 发明的范围由所附权利要求而非上述描述定义,并且,落入权利要求的含 义和等同物的范围内的全部改变都被包括在本发明的范围之中。
权利要求
1.一种在通信系统中利用循环冗余校验纠错的方法,包括设置一个或多个循环冗余校验纠错表,所述循环冗余校验纠错表中的项指示可纠正差错样式与相应的校验子的对应关系;对接收的循环冗余校验码字执行循环冗余校验运算,生成校验子;如果所述校验子为零,则将所述接收的码字判断为校验正确;并且如果所述校验子不为零,则在所述循环冗余校验纠错表中查找与所述校验子相对应的项;如果在所述循环冗余校验纠错表中找到与所述校验子相对应的项,则根据与该项相对应的可纠正差错样式纠正所述接收的码字;并且如果在所述循环冗余校验纠错表中没有找到与所述校验子相对应的项,则将所述接收的码字判断为不可纠正。
2. 根据权利要求1所述的方法,还包括在所述纠正之后,对所述纠正后的码字执行循环冗余校验运算;并且 如果所述纠正后的码字被校验为不正确,则将所述接收的码字判断为 不可纠正。
3. 根据权利要求1所述的方法,其中 码中的两个连续符号范围内的差错。
4. 根据权利要求3所述的方法,其中所述可纠正差错样式包括信息 ,所述可纠正差错样式是符合以 下至少一种模式的两比特差错对错对错; 对错错对; 错对对错;或 错对错对。
5. 根据权利要求1所述的方法,其中所述通信系统是差分四相移键控通信系统。
6. 根据权利要求1所述的方法,其中 所述通信系统是个人手持电话系统。
7. —种用于在通信系统中利用循环冗余校验纠错的装置,包括 存储单元,被配置为存储一个或多个循环冗余校验纠错表,所述循环冗余校验纠错表中的条目指示可纠正差错样式与相应的校验子的对应关系;循环冗余校验计算单元,被配置为对接收的循环冗余校验码字执行循环冗余校验运算,生成校验子;表查找单元,被配置为如果所述校验子不为零,则在所述循环冗余校 验纠错表中查找与所述校验子相对应的项;以及纠错单元,被配置为如果与所述校验子相对应的项在所述循环冗余校 验纠错中被找到,则根据与该项相对应的可纠正差错样式纠正所述接收的 码字;否则,将所述接收的码字判断为不可纠正。
8. 根据权利要求7所述的装置,还包括纠错验证单元,所述纠错验证单元被配置为使所述循环冗余校验计算 单元对所述纠正后的码字执行循环冗余校验运算,并且如果所述纠正后的 码字被校验为不正确,则将所述接收的码字识别为不可纠正。
9. 根据权利要求7所述的装置,其中,所述可纠正差错样式包括信息 码中的两个连续符号范围内的差错。
10. 根据权利要求9所述的装置,其中,所述可纠正差错样式是符合 以下至少一种模式的两比特差错对错对错; 对错错对; 错对对错;或 错对错对。
11. 根据权利要求7所述的装置,其中,所述通信系统是差分四相移 键控通信系统。
12. 根据权利要求7所述的装置,其中,所述通信系统是个人手持电 话系统。
13. —种包括如权利要求7所述的装置的通信接收机。
全文摘要
本发明提供了一种利用循环冗余校验纠错的装置和方法。根据本发明的一个实施例,设置CRC纠错表,CRC纠错表中的信息指示可纠正差错样式与相应的校验子的对应关系。对接收的码字执行循环冗余校验运算,如果校验子不为零,则在CRC纠错表中进行查找。如果在表中找到含有或者与该校验子对应的项,则根据与该项对应的可纠正差错样式纠正接收的码字。根据一个实施例,可纠正差错样式为连续的两个符号范围内的两比特差错。本发明可以降低误帧率,尤其适于个人手持电话系统。
文档编号H03M13/09GK101232348SQ200710154160
公开日2008年7月30日 申请日期2007年9月19日 优先权日2006年10月4日
发明者茜 李, 陈晓春 申请人:马维尔国际贸易有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1