在Turbo乘积码编码之前添加循环校验位的方法 技术领域 本发明属于信号传输领域,特别涉及一种在Turbo乘积码编码之前添加循环校验位的方法。
背景技术 地面无线传输信道是一个非常复杂的传输信道,无论固定接收还是移动接收,都面临严重的多径干扰和其它衰落因素影响。所以,信号经过信道传输以后,将不可避免地出现错码现象。为保证传输过程的正确性,需要对通信过程进行差错控制。在恢复图象之前,必须将这些可能出现的错码纠正过来,采用前向纠错方式(FEC)的信道纠错编解码就是比较有效的手段之一。信道编码实际上是通过加入一定的冗余信息作为传输的辅助信息,对抗信道衰落和其他干扰,来保证数据的可靠传输。信道编码是反映系统纠错能力的一个技术核心。现有的3个数字电视地面传输标准:美国的ATSC 8VSB、欧洲的DVB-T COFDM以及日本地ISDB-T,基本上都采用了向前纠错(FEC)的信道纠错编解码方式,保证传输的可靠性。
差错控制另外还有一层含义,即检错。由于在传输过程误码率较高时,单纯采用FEC容易出现“乱纠”现象,因此在实际情况中,可以将FEC纠错和检错方式结合起来使用。
实现检错功能的差错控制方法很多,传统的有:奇偶校验、校验和检测、重复码校验、恒比码校验、行列冗余码校验等,这些方法都是增加数据的冗余量,将校验码和数据一起发送到接收端。接收端对接收到的数据进行相同校验,再将得到的校验码和接收到的校验码比较,如果二者一致则认为传输正确。但这些方法都有各自的缺点,误判的概率比较高。
循环冗余校验(Cyclic Redundancy Check,缩写为CRC)是由分组线性码的分支而来,其主要应用是二元码组。编码简单且误判概率很低,在通信系统中得到了较好的应用。
Turbo乘积码(简称TPC码),是采用软输入软输出(SISO)迭代译码的乘积码,是传统Turbo码技术的一种发展。与传统Turbo码相比,TPC码可以在较高的编码效率情况下,比如R>2/3,仍然保持相当强的纠错能力,有利于提高频谱利用率;可提供更好的抗衰落性能,并能较大的改善误比特率—信噪比(BER-SNR)性能曲线的误码平层效应。这些性能均优于传统的Turbo码,以及传统的卷积编码,包括TCM编码。所以,TPC码比较适合于高频谱效率、高数据速率通信场合。
尽管TPC码具有较强的技术优势,但采用TPC码编码的数字信号传输系统,特别是在高码率传输模式下,仍然需要辅以检错、纠错技术来提高传输的可靠性。
发明内容 本发明的目的在于,为采用TPC码编码的数字信号传输系统,提供一种CRC校验方法。本发明通过在Turbo乘积码编码之前添加循环校验位的方法,提高系统的传输可靠性。
本发明以每2个TPC编码之前的TPC数据块为1个单元进行CRC校验,每个单元包含19个MPEG-II TS流中的MPEG-II包。
首先对第1个TPC块的前9个输入的MPEG-II包进行CRC校验,每个包添加8位校验比特,然后对第10个MPEG-II包的前94个字节进行CRC校验,也添加8位校验比特,最后对添加校验位后的第1个TPC块进行CRC校验,添加32位校验比特;接着对第2个TPC块的前半个MPEG-II包(即一个校验单元的第10个MPEG-II包的后94个字节)进行CRC校验,添加8位校验比特,然后对后续的9个MPEG-II包进行CRC校验,每个包也添加8位校验比特,最后对添加校验位后的第2个TPC块进行CRC校验,添加32位校验比特。
本发明通过在二维TPC编码之前加入少量CRC校验位,提高了系统的传输可靠性。在接收端,可以根据校验位获知数据是否出错,以决定是否还需要TPC解码纠错,这样可以大幅度提高解码质量、节省解码时间。而且,CRC校验还可以为MPEGII解码提供更可靠的误码掩盖的信息。
以下结合附图和实施例进一步描述本发明。
附图说明 图1为本发明对第一个TPC编码块添加CRC校验位的方法。
图2为本发明对第二个TPC编码块添加CRC校验位的方法。
具体实施方式 图1示出了本发明对第一个TPC编码块添加CRC校验位的方法,图2示出了本发明对第二个TPC编码块添加CRC校验位的方法。图1和图2中的两个TPC编码块构成本发明方法的一个CRC校验单元。
在图1和图2所示的实施例中,TPC编码采用二维TPC(128,120;128,120)编码,即120行120列的TPC编码输入矩阵经扩展汉明编码,形成一个128行128列的TPC编码输出矩阵。
如图1和图2所示,2个TPC编码之前的数据块TPC(120×120)共包含19个MPEG-II TS流中的MPEG-II包,本发明对其进行CRC校验的方法如下:
第1个TPC块,先对前9个输入的MPEG-II包进行CRC校验,每个包添加8位校验比特(CCITT-8),然后对第10个TS包的前94个字节进行CRC校验,也添加8位校验比特(CCITT-8),最后对添加校验位后的第1个TPC块进行CRC校验,添加32位校验比特(CCITT-32);
第2个TPC块,先对前半个TS包(即本校验单元的第10个TS包的后94个字节)进行CRC校验,添加8位校验比特(CCITT-8),然后对接下来的9个TS包进行CRC校验,每个包也添加8位校验比特(CCITT-8),最后对添加校验位后的第2个TPC块进行CRC校验,添加32位校验比特(CCITT-32)。
本发明采用了CCITT-8和CCITT-32这两种CRC校验方式:
CCITT-8的生成多项式为:G(x)=x8+x5+x4+1;CCITT-32的生成多项式为:
G(x)=x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1