CN1780152A - 迭代译码方法和系统 - Google Patents
迭代译码方法和系统 Download PDFInfo
- Publication number
- CN1780152A CN1780152A CN 200410094615 CN200410094615A CN1780152A CN 1780152 A CN1780152 A CN 1780152A CN 200410094615 CN200410094615 CN 200410094615 CN 200410094615 A CN200410094615 A CN 200410094615A CN 1780152 A CN1780152 A CN 1780152A
- Authority
- CN
- China
- Prior art keywords
- sequence
- verification
- hard decision
- decoder
- information
- 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.)
- Pending
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
公开了一种迭代译码系统和方法。为了降低Turbo码译码的时延,满足高速实时译码的需要,本发明在迭代译码的过程中,输出信息位和校验位的硬判决值,然后检验它们是否满足卷积码的约束关系,如果满足则停止迭代。采用本发明的系统和方法,执行较少的迭代次数就能够结束译码过程,从而减小了译码时延。
Description
技术领域
本发明涉及迭代译码,具体涉及一种Turbo码译码方法和系统,其能够以较小的迭代次数进行译码。
背景技术
目前,Turbo码已经广泛应用到深空通信,第三代移动通信等很多领域。然而,由于Turbo码的译码需要反复迭代的特点,它存在着译码时延大的缺点,因此研究自适应迭代技术是十分必要的。对于译码质量较差的数据帧采用较多的迭代次数,而对于译码质量较好的数据帧采用较少的迭代次数,如此对不同的数据帧动态地分配译码迭代次数,能够大大降低译码时延,有助于Turbo码的实用化。
迭代译码是Turbo码的一个基本特征。通常,一个固定的迭代次数M会被事先设定,接收端的每个数据帧都会进行M次迭代,这种方法称为固定迭代方法。一般M取得足够大以适应最差情况,然而在多数情况下Turbo码不用迭代M次就已经收敛了。如果我们能够准确判断出每个数据帧的译码收敛情况并在它收敛后立即停止迭代译码,则能大大降低译码时延同时又不降低其译码性能(误码率和误帧率)。目前,已经有较多的论文研究了这一问题。其中主要的算法包括CRC校验法、互熵算法及其改进型(Yu算法)、SCR算法和SDR算法。对于自适应迭代算法,通常也会设置一个最大迭代次数M,以避免在恶劣情况下停止准则全都不适用时Turbo码会无限制的迭代下去的问题。
1 CRC校验法
CRC校验方法是在每个数据帧后附加若干CRC校验位,再把这个扩展的数据帧进行Turbo编码。在接收端,每次迭代都做出硬判决,当满足CRC校验时就停止迭代。这种方法非常简单而且迭代次数很少,但是有较大的性能损失,误码率偏高,而且浪费了系统带宽。
2 互熵算法
互熵算法在第i次迭代后计算成员译码器似然比值之间的互熵(cross entropy)T(i)。当T(i)小于αT(1)时,停止迭代。α一般取(10-2-10-4)。T(i)的计算式如下:
其中i表示迭代次数,N表示帧长,uk表示第k个信息位,Le2 i(uk)表示uk在第i次迭代后由第二SISO译码器输出的外信息值,L1 i(uk)表示uk在第i次迭代中间由第一SISO译码器输出的似然比值。
3 符号变化率(Sign Change Ratio:SCR)算法
SCR算法是Rose在互熵算法的基础上提出的一种简化方法,它主要计算第二SISO译码器的相邻两次迭代输出的外信息的符号变化个数(SCR),设为C(i),i为迭代次数。当C(i)≤qN时,就停止迭代。q是远小于1的正常量,N是帧长。
4 符号差分率(Sign Difference Ratio:SDR)算法
SDR算法是Yufei Wu在SCR算法的基础上提出的更加简化的方法,它主要计算迭代过程中SISO译码器的输入和输出的外信息的符号变化个数(SDR),设为C(i),i为迭代次数。当C(i)≤qN时,就停止迭代。q是远小于1的正常量,N是帧长。
5 Yu算法
Nam Yul Yu也是在互熵算法的基础上提出了一种简化算法,其译码流程如下:
步骤1:初始化参数i=1,M1=∞,Tf=5,Td=10。i为迭代次数,Tf,Td为常量。
步骤2:开始迭代译码,更新
表示第二SISO译码器在i次迭代过程中输出的信息比特uk的似然比值。
步骤3:如果i>1,计算门限值
否则,i加1,跳转至步骤2。
步骤4:如果M(i)>T1(i),跳转到步骤5。否则,i加1,跳转至步骤2。
步骤5:计算门限值T2(i)=M1+Td。如果M(i)>T2(i),停止迭代。否则,M1=M(i),i加1,跳转至步骤2。
上述的互熵算法、符号变化率算法、符号差分率算法以及Yu算法都存在迭代次数较大的问题。
发明内容
针对上述问题,本发明提出了一种迭代译码方法,其利用Turbo译码过程中输出的硬判决值进行迭代停止的判断。
根据大量的仿真观察,Turbo码的译码结果大致有以下三种情况:1,Turbo译码经过几次迭代后,误码个数逐渐减少,直至收敛到正确的码字;2,Turbo译码经过几次迭代后收敛到一个错误的码字;3,Turbo译码不收敛,错误码字呈现一种不规则的振荡现象。在中高能噪比
区间,大概率发生的是第一种情况,而在低能噪比的区间,大概率发生的是第三种情况。第二种情况是小概率事件。对于低能噪比区间,误码振荡,Turbo码会迭代至最大的次数M。对于中高能噪比区间,随着能噪比的升高,Turbo码所需的迭代次数越来越少,而且一旦收敛到正确的码字时,相邻两次软入软出(SISO)输出的似然比值的符号(硬判决值)不再变化。
按照传统的观点,卷积码是没有自校验功能的,而诸如LDPC码这样的线性分组码可以自校验。然而,我们发现Turbo码也具有自校验的性能,其基本思想是:在迭代译码的过程中,输出信息位和校验位的硬判决值,然后检验它们是否满足卷积码的约束关系。如果满足则停止迭代。
在本发明的第一方面,提出了一种迭代译码系统,包括:第一译码器,用于对输入的第一路校验位和信息位进行译码,输出第一外信息和第一信息位硬判决序列;第一正交织器,用于对从第一译码器输出的第一外信息和第一信息位硬判决序列进行交织,输出经交织的第一外信息和第一信息位硬判决序列;卷积码编码器,用于对经交织的第一信息位硬判决序列执行卷积编码,输出校验序列;第二正交织器,用于对输入的信息位进行交织,输出交织信息位;第二译码器,用于对来自第一正交织器的经交织的第一外信息、来自第二正交织器的交织信息位和输入的第二路校验位进行译码处理,输出第二路校验位硬判决序列和第二外信息;反交织器,用于对第二译码器输出的第二外信息进行反交织,输出经反交织的第二外信息,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码处理;校验判决器,用于判断从卷积码编码器输出的校验序列和从第二译码器输出的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;其中,从第一正交织器输出迭代结束时的经交织的第一信息位硬判决序列,作为译码输出。
采用上述结构,使得在迭代译码的过程中减小了迭代次数,从而降低了译码的时延,能够满足高速实时译码的需要。
此外,上述的迭代译码系统还包括计数器,用于对迭代次数进行计数,在所述迭代次数超过预定的最大次数时,向第一译码器发出终止信号,结束迭代过程。
这样,可以在避免在恶劣情况下停止准则全都不适用时译码过程会无限制的迭代下去的问题。
此外,在上述的迭代译码系统中,所述校验判决器通过对校验序列和第二路校验位硬判决序列进行差分处理来判断二者是否相同。
这样,仅需对两个序列执行简单的减法运算就可以判断出二者是否相同,简化了系统的结构。
此外,在上述的迭代译码系统中,所述校验判决器按位对校验序列和第二路校验位硬判决序列进行差分处理,以判断二者是否相同。
这样,在两个序列较长时,不需要对整个序列进行全部比较,就可以判断出二者是否相同,进一步减小了译码系统的时延。
此外,在上述迭代译码系统中,所述校验判决器对校验序列和第二路校验位硬判决序列进行异或运算,判断二者是否相同。
这样,可以采用通用的逻辑单元来判断两个序列是否相同。
此外,在上述的迭代译码系统中,所述校验判决器按位对校验序列和第二路校验位硬判决序列进行异或运算,判断二者是否相同。
这样,在校验判决时,不需要对两个序列中所有的位进行异或运算,就可以判断出二者是否相同,进一步减小了译码系统的时延。
在本发明的第二方面,提出了一种迭代译码系统,包括:第一译码器,用于对输入的第一路校验位和信息位进行译码,输出第一外信息和第一路校验位硬判决序列;第一正交织器,用于对从第一译码器输出的第一外信息进行交织,输出经交织的第一外信息;第二正交织器,用于对输入的信息位进行交织,输出交织信息位;第二译码器,用于对来自第一正交织器的经交织的第一外信息、来自第二正交织器的交织信息位和输入的第二路校验位进行译码,输出第二外信息和第二信息位硬判决序列;反交织器,用于对第二译码器输出的第二路校验位硬判决序列和第二外信息进行反交织,输出经反交织的第二外信息和第二信息位硬判决序列,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码处理;卷积码编码器,用于对从反交织器输出的第二信息位硬判决序列进行卷积编码,输出校验序列;校验判决器,用于判断从卷积码编码器输出的校验序列和从第一译码器输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;其中,从反交织器输出迭代结束时的经交织的第二信息位硬判决序列作为输出。
在本发明的第三方面,一种迭代译码系统,包括:第一译码器,用于对输入的第一路校验位和信息位进行译码处理,输出第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列;第一正交织器,用于对从第一译码器输出的第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列进行交织,输出经交织的第一外信息和第一信息位;第二卷积码编码器,用于对经交织的第一信息位硬判决序列执行卷积编码,输出第一校验序列;第二正交织器,用于对输入的信息位进行正交织,输出交织信息位;第二译码器,用于对来自第一正交织器的经交织的第一外信息、来自第二正交织器的交织信息位和输入的第二路校验位进行译码处理,输出第二路校验位硬判决序列、第二外信息和第二信息位硬判决序列;反交织器,用于对第二译码器输出的第二外信息和第二信息位硬判决序列进行反交织,输出经反交织的第二外信息和第二信息位硬判决序列,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码处理;第一卷积码编码器,用于对从反交织器输出的第二信息位硬判决序列进行卷积编码,输出第二校验序列;第一校验判决器,用于判断从第二卷积码编码器输出的第一校验序列和从第二译码器输出的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;第二校验判决器,用于判断从第一卷积码编码器输出的第二校验序列和从第一译码器输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;其中在第一译码器收到结束信号时,从第一正交织器输出经交织的第一信息位硬判决序列,作为译码输出,或者,在第二译码器收到结束信号时,从反交织器输出经反交织的第二信息位硬判决序列,作为译码输出。
在本发明的第四方面,提出了一种迭代译码方法,包括:第一译码步骤,由第一译码器对输入的第一路校验位和信息位进行译码,输出第一外信息和第一信息位硬判决序列;第一正交织步骤,由第一正交织器对在第一译码步骤得到的第一外信息和第一信息位硬判决序列进行交织,输出经交织的第一外信息和第一信息位硬判决序列;卷积码编码步骤,由卷积码编码器对经交织的第一信息位硬判决序列执行卷积编码,输出校验序列;第二正交织步骤,由第二正交织器对输入的信息位进行交织,输出交织信息位;第二译码步骤,由第二译码器对第一正交织步骤获得的经交织的第一外信息、在第二正交织步骤获得的交织信息位和输入的第二路校验位进行译码,输出第二路校验位硬判决序列和第二外信息;反交织步骤,由反交织器对在第二译码步骤获得的第二外信息进行反交织,输出经反交织的第二外信息,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;校验判决步骤,由校验判决器判断在卷积码编码步骤获得的校验序列和在第二译码步骤获得的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;其中,从第一正交织器输出迭代结束时的经交织的第一信息位硬判决序列,作为译码输出。
在本发明的第五方面,提出了一种迭代译码方法,包括:第一译码步骤,由第一译码器对输入的第一路校验位和信息位进行译码,输出第一外信息和第一路校验位硬判决序列;第一正交织步骤,由第一正交织器对在第一译码步骤获得的第一外信息进行交织,输出经交织的第一外信息;第二正交织步骤,由第二正交织器对输入的信息位进行交织,输出交织信息位;第二译码步骤,由第二译码器对在第一正交织步骤获得的经交织的第一外信息、在第二正交织步骤获得的交织信息位和输入的第二路校验位进行译码,输出第二外信息和第二信息位硬判决序列;反交织步骤,由反交织器对在第二译码步骤获得的第二路校验位硬判决序列和第二外信息进行反交织处理,输出经反交织处理的第二外信息和第二信息位硬判决序列,并且经反交织处理的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;卷积编码步骤,由卷积码编码器对在反交织步骤获得的第二信息位硬判决序列进行卷积编码,输出校验序列;校验判决步骤,由校验判决器判断在卷积码编码步骤获得的校验序列和在第一译码步骤获得的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;其中,从反交织器输出迭代结束时的经交织的第二信息位硬判决序列作为输出。在本发明的第六方面,提出了一种迭代译码方法,包括步骤:第一译码步骤,由第一译码器对输入的第一路校验位和信息位进行译码,输出第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列;第一正交织步骤,由第一正交织器对在第一译码步骤获得的第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列进行交织,输出经交织的第一外信息和第一信息位;第二卷积编码步骤,由第二卷积码编码器对经交织的第一信息位硬判决序列执行卷积编码,输出第一校验序列;第二正交织步骤,由第二正交织器对输入的信息位进行正交织,输出交织信息位;第二译码步骤,由第二译码器对在第一正交织步骤获得的经交织的第一外信息、在第二正交织步骤获得的交织信息位和输入的第二路校验位进行译码,输出第二路校验位硬判决序列、第二外信息和第二信息位硬判决序列;反交织步骤,由反交织器对在第二译码步骤获得的第二外信息和第二信息位硬判决序列进行反交织,输出经反交织的第二外信息和第二信息位硬判决序列,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;第一卷积编码步骤,由第一卷积码编码器对从反交织步骤获得的第二信息位硬判决序列进行卷积编码,输出第二校验序列;第一校验判决步骤,由第一校验判决器判断在第二卷积码编码步骤获得的第一校验序列和在第二译码步骤获得的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;第二校验判决步骤,用于判断从第一卷积码编码器输出的第二校验序列和从第一译码器输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;其中在第一译码器收到结束信号时,从第一正交织器输出经交织的第一信息位硬判决序列,作为译码输出;或者,在第二译码器收到结束信号时,从反交织器输出经反交织的第二信息位硬判决序列,作为译码输出。
采用本发明的迭代译码系统和方法,使得在迭代译码的过程中减小了迭代次数,从而降低了译码的时延,能够满足高速实时译码的需要。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细说明。
图1是Turbo码编码系统的示例图;
图2是根据本发明第一实施例的Turbo码译码系统的方框图;
图3是根据本发明第二实施例的Turbo码译码系统的方框图;
图4是根据本发明第三实施例的Turbo码译码系统的方框图;
图5是根据本发明第一实施例的Turbo码译码系统的工作流程图;
图6是根据本发明第二实施例的Turbo码译码系统的工作流程图;
图7是根据本发明第三实施例的Turbo码译码系统的工作流程图;
图8是根据本发明的Turbo码译码系统的校验判决器中执行的判决过程的图;
图9是根据本发明的Turbo码译码系统的校验判决器中执行的另一校验判决过程的图;
图10是对信息序列和校验序列进行分段的示例图;
图11是是根据本发明的Turbo码译码系统用于确定误码块时执行的判决过程的图;
图12是各种自适应算法随能噪比变化的平均迭代次数比较图;
图13是各种自适应算法随能噪比变化的误码率比较图;
图14现有技术的Turbo码译码系统的结构框图。
具体实施方式
图1示出了Turbo码编码系统框图,该编码系统包括第一递归系统卷积码编码器100、交织器200和第二递归系统卷积码编码器300。第一递归系统卷积码编码器100由异或单元1000、1003和移位寄存器1001、1002构成,而第二递归系统卷积码编码器300由异或单元3000、3003和寄存器3001、3002构成。
图1中的标记S是输入的信息比特流(System Bits),即信息位。P1是信息位S经过第一递归系统卷积码(卷积码1)编码器100输出的校验位比特流(Parity Bits),即第一路校验位。P2是信息位S经过交织器200处理后输入到第二递归系统卷积码(卷积码2)编码器300并由其输出的校验位比特流,即第二路校验位。
在通信系统中,经过编码的信息位流通过特定的信道到达接收端。由于信道中存在噪声和干扰等缘故,接收端所接收的信息位流中会出现错误。在这种情况下,需要在译码过程中对错误进行校正。
图14示出了现有的Turbo码译码系统的结构框图,其中的P1校验位、S信息位和P2校验位分别是加了噪声或者被干扰的第一路校验位、信息位和第二路校验位。现有技术的Turbo码译码系统包括:第一译码器110,例如软入软出(SISO)译码器,其对输入的信息位S和第一路校验位P1进行译码处理,输出第一外信息序列;第一正交织器141,用于对来自第一译码器140的第一外信息序列进行交织处理,输出交织的外信息序列;第二正交织器142,用于对输入的信息位S进行交织处理,输出交织的信息位;第二译码器145,例如同样是SISO译码器,其对来自第二正交织器142的交织的信息位、输入的第二路校验位P2和第一正交织器141输出的交织外信息进行译码处理,输出第二外信息;反交织器146,用于对第二外信息进行反交织处理,输出经反交织处理的外信息,其中经反交织处理的外信息还被反馈到第一译码器140的输入端,以与所述的第一路校验位P1和信息位S一起进行译码处理。
在上述译码系统所进行的译码过程中,在迭代结束时,从反交织器146输出经过反交织处理的外信息,作为输出。
以下参照附图2-7对本发明的迭代译码系统及其工作过程进行详细说明。图2-4分别示出了根据本发明第一、第二和第三实施例的迭代译码系统的方框图,图5-7分别示出了图2-4所示的系统的工作流程图。
【第一实施例】
图2是根据本发明第一实施例的Turbo码译码系统的框图,其中S表示接收到的信息位,P1表示接收到的第一路校验位,P2表示接收到的经过交织的第二路校验位。第一译码器20和第二译码器25表示软入软出译码器(MAP或者SOVA),第一译码器20输出信息位的硬判决值和外信息,而第二译码器25输出信息位S的外信息和第二路校验位的硬判决值,整个Turbo译码是串行迭代的过程。
如图2所示,本发明第一实施例的译码系统包括:第一译码器20,用于对输入的第一路校验位P1和信息位S进行译码处理,输出第一外信息和第一信息位硬判决序列;第一正交织器21,用于对从第一译码器20输出的第一外信息和第一信息位硬判决序列进行交织处理,输出经交织处理的第一外信息和第一信息位硬判决序列;卷积码编码器24,用于对经交织处理的第一信息位硬判决序列执行卷积编码,输出校验序列;第二正交织器22,用于对输入的信息位S进行交织处理,输出交织信息位;第二译码器25,用于对来自第一正交织器21的经交织处理的第一外信息、来自第二正交织器22的交织信息位和输入的第二路校验位进行译码处理,输出第二路校验位硬判决序列和第二外信息;反交织器26,用于对第二译码器25输出的第二外信息进行反交织处理,输出经反交织处理的第二外信息,并且经反交织处理的第二外信息被反馈到第一译码器20的输入端,与第一路校验位P1和信息位S一起进行译码处理;校验判决器23,用于判断从卷积码编码器24输出的校验序列和从第二译码器25输出的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器20发出终止信号,结束迭代过程。此外,从第一正交织器21输出迭代结束时的经交织处理的第一信息位硬判决序列,作为译码输出。
此外,上述根据本发明第一实施例的译码系统中还可以包括图中未示出的计数器,在迭代的次数超过预定的最大次数M时,向第一译码器20发出终止信号,结束迭代过程。
作为校验判决器23的实现方式,可以使用减法器,用于对校验序列和第二路校验位硬判决序列进行差分处理。此外,作为其他的实现方式,还可以使用比较器,或者能够执行异或运算的逻辑单元。
图5是图2所示的迭代译码系统进行译码的流程图。如图5所示,在步骤S501,将计数器设置为0。然后,在步骤S502执行第一译码过程,由第一译码器20对输入的第一路校验位P1和信息位S进行译码处理,输出第一外信息和第一信息位硬判决序列。
接下来,在步骤S503执行第一正交织过程,由第一正交织器21对在S501得到的第一外信息和第一信息位硬判决序列进行交织处理,输出经交织处理的第一外信息和第一信息位硬判决序列。在步骤S504,执行卷积码编码过程,由卷积码编码器24对经交织处理的第一信息位硬判决序列执行卷积编码,输出校验序列。
在步骤S505,执行第二正交织过程,由第二正交织器22对输入的信息位S进行交织处理,输出交织信息位。然后,在步骤S506执行第二译码过程,由第二译码器25对第一正交织步骤S503获得的经交织处理的第一外信息、在第二正交织步骤S505获得的交织信息位和输入的第二路校验位进行译码处理,输出第二路校验位硬判决序列和第二外信息。
在步骤S507,执行反交织过程,由反交织器26对在第二译码步骤S505获得的第二外信息进行反交织处理,输出经反交织处理的第二外信息,并且经反交织处理的第二外信息被反馈到第一译码器20的输入端,与第一路校验位P1和信息位S一起进行译码处理。
然后,在步骤S508,执行校验判决过程,由校验判决器23判断在卷积码编码步骤S504获得的校验序列和在第二译码步骤S506获得的第二路校验位硬判决序列是否相同。
如果在步骤S508得到的判断结果是肯定的,即二者相同,则在步骤S509输出第一正交织步骤S503获得的第一信息位硬判决序列,作为译码结果。
如果在步骤S508得到的判断结果是否定的,即二者不同,则在步骤S510将计数器增加1。然后,在步骤S511判断计数值是否大于预定的最大计数阈值M。
如果在步骤S511得到的判断结果是否定的,即此时的计数值小于预定的最大计数阈值M,则流程返回到步骤S502,进行下一次迭代译码过程。否则,流程转入步骤S509,输出第一正交织步骤S503获得的第一信息位硬判决序列,作为译码结果。
需要注意的是,由于本发明的系统的工作流程实际上是一种迭代过程,因此,在上面描述的步骤之间不是顺序关系,而仅仅是出于清楚说明的目的。
【第二实施例】
图3是根据本发明第二实施例的迭代译码系统的方框图。第二实施例的译码系统与第一实施例的不同之处在于:在第一实施例中卷积码编码器设置在第一正交织器的下游,在校验判决器中判断卷积码编码器输出的校验序列和第二译码器输出的校验位硬判决序列是否相同;而在第二实施例中把卷积编码器设置在反交织器的下游,并且在校验判决器中判断卷积编码器输出的校验序列和第一译码器示出的校验位硬判决序列是否相同。
如图3所示,本发明第二实施例的迭代译码系统包括:第一译码器30,用于对输入的第一路校验位P1和信息位S进行译码处理,输出第一外信息和第一路校验位硬判决序列;第一正交织器31,用于对从第一译码器30输出的第一外信息进行交织处理,输出经交织处理的第一外信息;第二正交织器32,用于对输入的信息位S进行交织处理,输出交织信息位;第二译码器35,用于对来自第一正交织器31的经交织处理的第一外信息、来自第二正交织器32的交织信息位和输入的第二路校验位P2进行译码处理,输出第二外信息和第二信息位硬判决序列;反交织器36,用于对第二译码器35输出的第二路校验位硬判决序列和第二外信息进行反交织处理,输出经反交织处理的第二外信息和第二信息位硬判决序列,并且经反交织处理的第二外信息被反馈到第一译码器30的输入端,与第一路校验位P1和信息位S一起进行译码处理;卷积码编码器38,用于对从反交织器36输出的第二信息位硬判决序列进行卷积编码,输出校验序列;校验判决器37,用于判断从卷积码编码器38输出的校验序列和从第一译码器30输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器35发出终止信号,结束迭代过程。
此外,从反交织器36输出迭代结束时的经交织处理的第二信息位硬判决序列作为输出。
此外,上述译码系统中还可以包括计数器,在迭代的次数超过预定的最大次数M时,向第二译码器35发出终止信号,结束迭代过程。
作为校验判决器37的实现方式,可以使用减法器,用于对校验序列和第一路校验位硬判决序列进行差分处理。此外,作为其他的实现方式,还可以使用比较器,或者能够进行异或或者同或运算的逻辑单元。
图6是图3所示的迭代译码系统进行译码的流程图。如图6所示,在步骤S601,将计数器设置为0。然后,在步骤S602,执行第一译码过程,由第一译码器30对输入的第一路校验位P1和信息位S进行译码处理,输出第一外信息和第一路校验位硬判决序列。
接下来,在步骤S603,执行第一正交织过程,由第一正交织器对在第一译码步骤S602获得的第一外信息进行交织处理,输出经交织处理的第一外信息。
在步骤S604,执行第二正交织过程,由第二正交织器32对输入的信息位S进行交织处理,输出交织信息位。然后,在步骤S605,由第二译码器35对在第一正交织步骤S603获得的经交织处理的第一外信息、在第二正交织步骤S604获得的交织信息位和输入的第二路校验位P2进行译码处理,输出第二外信息和第二信息位硬判决序列。
在步骤S606,执行反交织过程,由反交织器36对在第二译码步骤S605获得的第二路校验位硬判决序列和第二外信息进行反交织处理,输出经反交织处理的第二外信息和第二信息位硬判决序列,并且经反交织处理的第二外信息被反馈到第一译码器30的输入端,与第一路校验位P1和信息位S一起进行译码处理。
在步骤S607,执行卷积编码步骤,由卷积码编码器38对在反交织步骤S606获得的第二信息位硬判决序列进行卷积编码,输出校验序列。然后,在步骤S608,执行判决过程,由校验判决器37判断在卷积码编码步骤S607获得的校验序列和在第一译码步骤S602获得的第一路校验位硬判决序列是否相同。
如果在步骤S608得到的判断结果是肯定的,即二者相同,则在步骤S609输出反交织步骤S606获得的第二信息位硬判决序列,作为译码结果。
如果在步骤S608得到的判断结果是否定的,即二者不同,则在步骤S610将计数器增加1。然后,在步骤S611判断计数值是否大于预定的最大计数阈值M。
如果在步骤S611得到的判断结果是否定的,即此时的计数值小于预定的最大计数阈值M,则流程返回到步骤S602,进行下一次迭代译码过程。否则,流程转入步骤S609,输出反交织步骤S606获得的第二信息位硬判决序列,作为译码结果。
【第三实施例】
图4示出了根据本发明第三实施例的Turbo码译码系统的框图,其中S表示接收到的信息位,P1表示接收到的第一路校验位,P2表示接收到的经过交织的第二路校验位。第一译码器40和第二译码器45表示软入软出的译码器(MAP或者SOVA),第一和第二译码器输出信息位S的外信息和硬判决值,整个Turbo译码是串行迭代的过程。
如图4所示,本发明第三实施例的译码系统包括:第一译码器40,用于对输入的第一路校验位P1和信息位S进行译码处理,输出第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列;第一正交织器41,用于对从第一译码器40输出的第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列进行交织处理,输出经交织处理的第一外信息和第一信息位;第二卷积码编码器44,用于对经交织处理的第一信息位硬判决序列执行卷积编码,输出第一校验序列;第二正交织器42,用于对输入的信息位S进行正交织处理,输出交织信息位;第二译码器45,用于对来自第一正交织器41的经交织处理的第一外信息、来自第二正交织器42的交织信息位和输入的第二路校验位进行译码处理,输出第二路校验位硬判决序列、第二外信息和第二信息位硬判决序列;反交织器46,用于对第二译码器45输出的第二外信息和第二信息位硬判决序列进行反交织处理,输出经反交织处理的第二外信息和第二信息位硬判决序列,并且经反交织处理的第二外信息被反馈到第一译码器40的输入端,与第一路校验位P1和信息位S一起进行译码处理;第一卷积码编码器48,用于对从反交织器46输出的第二信息位硬判决序列进行卷积编码,输出第二校验序列;第一校验判决器43,用于判断从第二卷积码编码器44输出的第一校验序列和从第二译码器45输出的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器40发出终止信号,结束迭代过程;第二校验判决器47,用于判断从第一卷积码编码器48输出的第二校验序列和从第一译码器40输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器45发出终止信号,结束迭代过程。
此外,在第一译码器42收到结束信号时,从第一正交织器41输出经交织处理的第一信息位硬判决序列,作为译码输出,或者在第二译码器45收到结束信号时,从反交织器46输出经反交织处理的第二信息位硬判决序列,作为译码输出。
此外,上述译码系统中还可以包括计数器,在迭代的次数超过预定的最大次数M时,向第一译码器40和第二译码器45发出终止信号,结束迭代过程。
作为第一校验判决器43和第二判决器47的一种实现方式,可以使用减法器,用于对第一校验位序列和第二路校验位硬判决序列进行差分处理。此外,作为其他的实现方式,还可以使用比较器,或者能够进行异或或者同或运算的逻辑单元。
图7是图4所示的迭代译码系统进行译码的流程图。如图7所示,在步骤S701,将计数器设置为0。然后,在步骤S702,执行第一译码过程,由第一译码器40对输入的第一路校验位P1和信息位S进行译码处理,输出第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列。然后,在步骤S703,执行第一正交织过程,由第一正交织器41对在第一译码步骤S702获得的第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列进行交织处理,输出经交织处理的第一外信息和第一信息位。
在步骤S704,执行第二卷积编码步骤,由第二卷积码编码器44,对经交织处理的第一信息位硬判决序列执行卷积编码,输出第一校验序列。
在步骤S705,执行第二正交织过程,由第二正交织器42对输入的信息位S进行正交织处理,输出交织信息位。然后在步骤S706,执行第二译码过程,由第二译码器45对在第一正交织步骤S703获得的经交织处理的第一外信息、在第二正交织步骤S705获得的交织信息位和输入的第二路校验位进行译码处理,输出第二路校验位硬判决序列、第二外信息和第二信息位硬判决序列。
在步骤S707,执行反交织过程,由反交织器46对在第二译码步骤S706获得的第二外信息和第二信息位硬判决序列进行反交织处理,输出经反交织处理的第二外信息和第二信息位硬判决序列,并且经反交织处理的第二外信息被反馈到第一译码器40的输入端,与第一路校验位P1和信息位S一起进行译码处理。
在步骤S708,执行第一卷积编码步骤,由第一卷积码编码器48对从反交织步骤S707获得的第二信息位硬判决序列进行卷积编码,输出第二校验序列。
在步骤S709,执行第一判决过程,由第一校验判决器43判断在第二卷积码编码步骤S704获得的第一校验序列和在第二译码步骤S706获得的第二路校验位硬判决序列是否相同。
如果在步骤S709得到的判断结果是肯定的,即二者相同,则在步骤S710输出在第一正交织步骤S703获得的第一信息位硬判决序列,作为译码结果。
如果在步骤S709得到的判断结果是否定的,即二者不同,则在步骤S711将计数器增加1。然后,在步骤S712判断计数值是否大于预定的最大计数阈值M。
如果在步骤S712得到的判断结果是否定的,即此时的计数值小于预定的最大计数阈值M,则流程返回到步骤S702,进行下一次迭代译码过程。否则,流程转入步骤S710,输出第一正交织步骤S703获得的第一信息位硬判决序列,作为译码结果。
或者,在步骤S713,执行第二判断过程,由第二校验判决器47判断在第一卷积码编码步骤708获得的第二校验序列和在第一译码步骤S702获得的第一路校验位硬判决序列是否相同。
如果在步骤S713得到的判断结果是肯定的,即二者相同,则在步骤S710输出在反交织步骤S707获得的第二信息位硬判决序列,作为译码结果。
如果在步骤S713得到的判断结果是否定的,即二者不同,则在步骤S714将计数器增加1。然后,在步骤S715判断计数值是否大于预定的最大计数阈值M。
如果在步骤S715得到的判断结果是否定的,即此时的计数值小于预定的最大计数阈值M,则流程返回到步骤S702,进行下一次迭代译码过程。否则,流程转入步骤S710,输出反交织步骤S707获得的第二信息位硬判决序列,作为译码结果。
下面结合附图8和9说明在上述实施例中执行的判决校验过程。
图8给出了第一校验判决过程的流程图。如图8所示,输入待比较的两个校验序列P和Ps,然后进行逐比特位的比较。如果在某一时刻两个序列的比特位不一样,则认为校验失败,停止比较。否则,如果在整个序列长度内两个校验序列完全一样,则认为校验正确,停止比较。在图8中,随着t的数值的增加对整个序列进行校验,一旦发现在某时刻t,P和Ps不同,则停止校验。
在步骤S802,输入两个待比较的检验序列P和Ps,并设t=0。然后在步骤S804,将t加1,即开始对序列的第一位进行校验。接下来,在步骤S806,比较P(t)和Ps(t)是否相同,如果相同,则在步骤S810判断此时t的数值是否等于序列的长度,也就是判断该序列的各个位是否判断结束。如果判断是否定的,流程返回到步骤S804,t加1,对下一位进行判断,否则对序列的各个位的判断结束,流程进入步骤S812,认为检验正确,停止比较。
相反,如果在步骤S806的判断结果是否定的,则流程直接转入步骤808,认为检验失败,同样停止比较。
此外,按照传统的观点,只有线性分组码具有自校验的功能,然而我们发现Turbo码也具有自校验的性能。Turbo码的自校验过程如下:如果相邻两次软入软出译码过程中,某次软入软出(SISO)译码器输出了校验位(P)的硬判决序列
而上一次软入软出(SISO)译码器输出了其相应的信息位(S)的硬判决序列
我们将
输入到其相应的卷积码编码器可以得到其输出的校验序列
而后对
和
进行差分检测。如果检测结果为全零(亦即
和
完全相同),则说明此次译码器输出有效。如果有效,则判决译码收敛,停止迭代,否则继续迭代。
上述的第一判决过程适用于卷积码的初始状态已知的场合,此时我们把S作为输入能得到唯一的输出校验序列P。然而,在实践中,有些情况下并不知道卷积码的初始状态。对于这个问题,使用最大似然判决过程,其原理如图9所示。
在本发明的第二判决过程中,首先将所有的状态都做为可能的初始状态,并设置初始时刻t为零。然后,由卷积码编码器根据卷积码的网格图和输入信息序列S得到每个似然路径上t时刻的校验位P′(t),并在校验判决器中和输入校验序列t时刻的比特P(t)相比较。如果相等则保留此似然路径,并计算下一时刻的状态。如果不等则丢弃此似然路径。如果在某一时刻似然路径上得到的校验位P′(t)和输入校验序列t时刻的比特P(t)全都不等,则认为校验失败,停止比较。如果译码长度内存在一条似然路径,其校验序列P′和输入的校验序列P在任意时刻都相等,则认为校验正确,并且此似然路径为最大似然路径,我们可以得到其相应的初始状态和末状态。
如图9所示,在步骤S902,将所有的状态作为可能的初始状态,设t=0。然后,在步骤S904,令t加1。接下来,在步骤S906,输入由网格图和信息位S计算得到的每个似然路径熵t时刻的校验位P’(t),以及P(t)。在步骤S908,针对每一条似然路径,判断P’(t)和P(t)是否相同。
如果在步骤S908判断出二者相同,则流程转入步骤S912,判断此时的t是否等于序列的最大长度。如果在步骤S912的判断是肯定的,则流程进入步骤S914,认为检验正确,停止比较;否则,流程进入步骤S916,保留此似然路径并记录每个时刻的状态值。然后流程返回到步骤S904,t加1,进行下一轮的判断。
如果在步骤S908判断出二者全不相等,则流程进入步骤S910,认为校验失败,停止比较。
在实践中,常常需要分段检查信息序列S的正确性。例如,为了确定错误在序列中的位置,将序列分成多个段,如将信息序列S分为前半段Sf和后半段Sb,分别判决其正确性(误块率)。图10给出了将信息序列和校验序列分为前后两段的示例图。
为此,提出了一种可用于分段检测的校验判决法,它的一个示例如图11所示。设将输入的信息序列S分为前半段Sf和后半段Sb,输入的校验位序列P分为前半段Pf和后半段Pb。上述的校验序列P代表了第一路校验位序列P1和第二路校验位序列P2。
首先,以Sf和Pf为输入进行译码并利用上述的第一校验判决过程,即用第一校验判决过程可以得到前半段的校验判决结果和末状态。如果校验正确,以前半段的末状态为后半段的初状态再次使用第一校验判决过程,以得到后半段的校验结果。
如果校验失败,后半段的初始状态就不是确定的,因而,要用第二检验过程,即最大似然校验判决过程的方法对后半段进行判决。同理,也可以对信息序列S可以进行任意的分段校验。
如图11所示,在步骤S1102,将信息序列S分成前半段Sf和Sb,将校验序列P分成Pf和Pb。然后,在步骤S1104,将卷积码判决的初始状态设置为0。在步骤S1106,对前半段Sf和Pf进行译码,并执行初始状态已知的校验判决过程,即初始状态已知情况下的校验判决方法,从而得到前半段Sf和后半段Pf的判决结果和末状态。
接下来,在步骤S1108,判断上述的判断结果是否为真。如果判断结果为真,则在步骤S1110,以前半段的末状态作为后半段的初始状态,针对后半段Sb和Pb进行译码并执行初始值已知的校验判决方法。接着,在步骤1114得到后半段Sb和Pb的判决结果。
相反,如果在步骤S1108,得到的结果是否定的,则在步骤S1112针对后半段Sb和Pb进行译码并执行最大似然校验判决方法。然后流程进行步骤S1114。
下面以最大后验概率(MAP)译码为例,给出输出校验位硬判决值的方法。首先,与信息位的似然比定义类似,可以先定义校验位的对数似然比,如下式所示:
pk表示第k时刻卷积码所输出的校验比特,那么我们容易得到:
α,β,γ分别表示前向递推,反向递推和分支转移概率,s′,s分别表示k-1和k时刻卷积码寄存器的状态。
易知pk的硬判决值
(sign表示取符号)
在对各种自适应迭代算法所做的仿真比较研究中,采用的相关实验参数为:生成多项式g1=(5)8,反馈多项式g2=(7)8,尾比特数=2,码率
MAP算法,最大迭代次数为12。编码前的信息比特为990bits,编码后为2974bits,每个并行卷积码都附加2个尾比特进行状态归零。交织器都采用WCDMA协议中的交织算法。信道为加性白高斯噪声信道。
图13比较了在上述情况下各种自适应算法随能噪比变化的误码率。从图中可以看出:本发明,SCR,互熵,SDR,Yu算法与固定迭代12次的算法相比误码率基本一致,没有明显的性能损失。
图12比较了各种自适应算法随能噪比变化的平均迭代次数。从图中可以看出:本发明所需的迭代次数最少,而SCR和互熵算法都比本发明多一次迭代(一个SISO译码和交织周期),SDR算法比SCR算法多一次迭代,而Yu算法最差。就计算复杂度而言,互熵算法最复杂,Yu的算法其次,本发明和SCR,SDR算法一样都是最简单的。所以,本发明满足“好”的自适应迭代算法准则,其综合性能最佳。
在前面的说明中,已经参考特定实施例对本发明进行了说明。但是本领域的普通技术人员将应该认识到在没有脱离本发明范围和精髓的情况下是能够有各种变化和修改的。因此,说明书和附图是说明意义上的而非限制意义上的,并且所有的修改要包括在本发明的范围之中。因此,本发明意图包括所有落入权利要求范围的变化和修改。
Claims (36)
1.一种迭代译码系统,包括:
第一译码器,用于对输入的第一路校验位和信息位进行译码,输出第一外信息和第一信息位硬判决序列;
第一正交织器,用于对从第一译码器输出的第一外信息和第一信息位硬判决序列进行交织,输出经交织的第一外信息和第一信息位硬判决序列;
卷积码编码器,用于对经交织的第一信息位硬判决序列执行卷积编码,输出校验序列;
第二正交织器,用于对输入的信息位进行交织,输出交织信息位;
第二译码器,用于对来自第一正交织器的经交织的第一外信息、来自第二正交织器的交织信息位和输入的第二路校验位进行译码,输出第二路校验位硬判决序列和第二外信息;
反交织器,用于对第二译码器输出的第二外信息进行反交织,输出经反交织的第二外信息,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;
校验判决器,用于判断从卷积码编码器输出的校验序列和从第二译码器输出的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;
其中,从第一正交织器输出迭代结束时的经交织的第一信息位硬判决序列,作为译码输出。
2.根据权利要求1所述的迭代译码系统,其特征在于还包括计数器,用于对迭代次数进行计数,在所述迭代次数超过预定的最大次数时,向第一译码器发出终止信号,结束迭代过程。
3.根据权利要求1或2所述的迭代译码系统,其特征在于所述校验判决器通过对校验序列和第二路校验位硬判决序列进行差分处理来判断二者是否相同。
4.根据权利要求3所述的迭代译码系统,其特征在于所述校验判决器按位对校验序列和第二路校验位硬判决序列进行差分处理,以判断二者是否相同。
5.根据权利要求1或2所述的迭代译码系统,其特征在于所述校验判决器对校验序列和第二路校验位硬判决序列进行异或运算,判断二者是否相同。
6.根据权利要求5所述的迭代译码系统,其特征在于所述校验判决器按位对校验序列和第二路校验位硬判决序列进行异或运算,判断二者是否相同。
7.一种迭代译码系统,包括:
第一译码器,用于对输入的第一路校验位和信息位进行译码,输出第一外信息和第一路校验位硬判决序列;
第一正交织器,用于对从第一译码器输出的第一外信息进行交织,输出经交织的第一外信息;
第二正交织器,用于对输入的信息位进行交织,输出交织信息位;
第二译码器,用于对来自第一正交织器的经交织的第一外信息、来自第二正交织器的交织信息位和输入的第二路校验位进行译码,输出第二外信息和第二信息位硬判决序列;
反交织器,用于对第二译码器输出的第二路校验位硬判决序列和第二外信息进行反交织,输出经反交织的第二外信息和第二信息位硬判决序列,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;
卷积码编码器,用于对从反交织器输出的第二信息位硬判决序列进行卷积编码,输出校验序列;
校验判决器,用于判断从卷积码编码器输出的校验序列和从第一译码器输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;
其中,从反交织器输出迭代结束时的经交织的第二信息位硬判决序列作为输出。
8.根据权利要求7所述的迭代译码系统,其特征在于还包括计数器,用于对迭代次数进行计数,在所述迭代次数超过预定的最大次数时,向第二译码器发出终止信号,结束迭代过程。
9.根据权利要求7或8所述的迭代译码系统,其特征在于所述校验判决器通过对校验序列和第一路校验位硬判决序列进行差分处理来判断二者是否相同。
10.根据权利要求9所述的迭代译码系统,其特征在于所述校验判决器按位对校验序列和第一路校验位硬判决序列进行差分处理,以判断二者是否相同。
11.根据权利要求7或8所述的迭代译码系统,其特征在于所述校验判决器对校验序列和第一路校验位硬判决序列进行异或运算,判断二者是否相同。
12.根据权利要求11所述的迭代译码系统,其特征在于所述校验判决器按位对校验序列和第一路校验位硬判决序列进行异或运算,判断二者是否相同。
13.一种迭代译码系统,包括:
第一译码器,用于对输入的第一路校验位和信息位进行译码,输出第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列;
第一正交织器,用于对从第一译码器输出的第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列进行交织,输出经交织的第一外信息和第一信息位;
第二卷积码编码器,用于对经交织的第一信息位硬判决序列执行卷积编码,输出第一校验序列;
第二正交织器,用于对输入的信息位进行正交织,输出交织信息位;
第二译码器,用于对来自第一正交织器的经交织的第一外信息、来自第二正交织器的交织信息位和输入的第二路校验位进行译码,输出第二路校验位硬判决序列、第二外信息和第二信息位硬判决序列;
反交织器,用于对第二译码器输出的第二外信息和第二信息位硬判决序列进行反交织,输出经反交织的第二外信息和第二信息位硬判决序列,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;
第一卷积码编码器,用于对从反交织器输出的第二信息位硬判决序列进行卷积编码,输出第二校验序列;
第一校验判决器,用于判断从第二卷积码编码器输出的第一校验序列和从第二译码器输出的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;
第二校验判决器,用于判断从第一卷积码编码器输出的第二校验序列和从第一译码器输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;
其中在第一译码器收到结束信号时,从第一正交织器输出经交织的第一信息位硬判决序列,作为译码输出,
或者,在第二译码器收到结束信号时,从反交织器输出经反交织的第二信息位硬判决序列,作为译码输出。
14.根据权利要求13所述的迭代译码系统,其特征在于还包括计数器,用于对迭代次数进行计数,在所述迭代次数超过预定的最大次数时,向第一译码器和第二译码器发出终止信号,结束迭代过程。
15.根据权利要求13或14所述的迭代译码系统,其特征在于所述第一校验判决器通过对第一校验序列和第二路校验位硬判决序列进行差分处理来判断二者是否相同;
所述第二校验判决器通过对第二校验序列和第一路校验位硬判决序列进行差分处理来判断二者是否相同。
16.根据权利要求15所述的迭代译码系统,其特征在于所述第一校验判决器通过按位对第一校验序列和第二路校验位硬判决序列进行差分处理来判断二者是否相同;
所述第二校验判决器通过按位对第二校验序列和第一路校验位硬判决序列进行差分处理来判断二者是否相同。
17.根据权利要求13或14所述的迭代译码系统,其特征在于所述第一校验判决器通过对第一校验序列和第二路校验位硬判决序列进行异或运算来判断二者是否相同;
所述第二校验判决器通过对第二校验序列和第一路校验位硬判决序列进行异或运算来判断二者是否相同。
18.根据权利要求17所述的迭代译码系统,其特征在于所述第一校验判决器通过按位对第一校验序列和第二路校验位硬判决序列进行异或运算来判断二者是否相同;
所述第二校验判决器通过按位对第二校验序列和第一路校验位硬判决序列进行异或运算来判断二者是否相同。
19.一种迭代译码方法,包括:
第一译码步骤,由第一译码器对输入的第一路校验位和信息位进行译码,输出第一外信息和第一信息位硬判决序列;
第一正交织步骤,由第一正交织器对在第一译码步骤得到的第一外信息和第一信息位硬判决序列进行交织,输出经交织的第一外信息和第一信息位硬判决序列;
卷积码编码步骤,由卷积码编码器对经交织的第一信息位硬判决序列执行卷积编码,输出校验序列;
第二正交织步骤,由第二正交织器对输入的信息位进行交织,输出交织信息位;
第二译码步骤,由第二译码器对第一正交织步骤获得的经交织的第一外信息、在第二正交织步骤获得的交织信息位和输入的第二路校验位进行译码,输出第二路校验位硬判决序列和第二外信息;
反交织步骤,由反交织器对在第二译码步骤获得的第二外信息进行反交织,输出经反交织的第二外信息,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;
校验判决步骤,由校验判决器判断在卷积码编码步骤获得的校验序列和在第二译码步骤获得的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;
其中,从第一正交织器输出迭代结束时的经交织的第一信息位硬判决序列,作为译码输出。
20.根据权利要求19所述的迭代译码方法,其特征在于,对迭代次数进行计数,在所述迭代次数超过预定的最大次数时,向第一译码器发出终止信号,结束迭代过程。
21.根据权利要求19或20所述的迭代译码方法,其特征在于在所述校验判决步骤,通过对校验序列和第二路校验位硬判决序列进行差分处理来判断二者是否相同。
22.根据权利要求21所述的迭代译码方法,其特征在于在所述校验判决步骤,按位对校验序列和第二路校验位硬判决序列进行差分处理,以判断二者是否相同。
23.根据权利要求19或20所述的迭代译码方法,其特征在于在所述校验判决步骤,对校验序列和第二路校验位硬判决序列进行异或运算,判断二者是否相同。
24.根据权利要求23所述的迭代译码方法,其特征在于在所述校验判决步骤,按位对校验序列和第二路校验位硬判决序列进行异或运算,判断二者是否相同。
25.一种迭代译码方法,包括:
第一译码步骤,由第一译码器对输入的第一路校验位和信息位进行译码,输出第一外信息和第一路校验位硬判决序列;
第一正交织步骤,由第一正交织器对在第一译码步骤获得的第一外信息进行交织,输出经交织的第一外信息;
第二正交织步骤,由第二正交织器对输入的信息位进行交织,输出交织信息位;
第二译码步骤,由第二译码器对在第一正交织步骤获得的经交织的第一外信息、在第二正交织步骤获得的交织信息位和输入的第二路校验位进行译码,输出第二外信息和第二信息位硬判决序列;
反交织步骤,由反交织器对在第二译码步骤获得的第二路校验位硬判决序列和第二外信息进行反交织,输出经反交织的第二外信息和第二信息位硬判决序列,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;
卷积编码步骤,由卷积码编码器对在反交织步骤获得的第二信息位硬判决序列进行卷积编码,输出校验序列;
校验判决步骤,由校验判决器判断在卷积码编码步骤获得的校验序列和在第一译码步骤获得的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;
其中,从反交织器输出迭代结束时的经交织的第二信息位硬判决序列作为输出。
26.根据权利要求25所述的迭代译码方法,其特征在于,对迭代次数进行计数,在所述迭代次数超过预定的最大次数时,向第二译码器发出终止信号,结束迭代过程。
27.根据权利要求25或26所述的迭代译码方法,其特征在于在所述校验判决步骤,通过对校验序列和第一路校验位硬判决序列进行差分处理来判断二者是否相同。
28.根据权利要求27所述的迭代译码方法,其特征在于在所述校验判决步骤,按位对校验序列和第一路校验位硬判决序列进行差分处理,以判断二者是否相同。
29.根据权利要求25或26所述的迭代译码方法,其特征在于在所述校验判决步骤,对校验序列和第一路校验位硬判决序列进行异或运算,判断二者是否相同。
30.根据权利要求29所述的迭代译码方法,其特征在于在所述校验判决步骤,按位对校验序列和第一路校验位硬判决序列进行异或运算,判断二者是否相同。
31.一种迭代译码方法,包括步骤:
第一译码步骤,由第一译码器对输入的第一路校验位和信息位进行译码,输出第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列;
第一正交织步骤,由第一正交织器对在第一译码步骤获得的第一外信息、第一信息位硬判决序列和第一路校验位硬判决序列进行交织,输出经交织的第一外信息和第一信息位;
第二卷积编码步骤,由第二卷积码编码器对经交织的第一信息位硬判决序列执行卷积编码,输出第一校验序列;
第二正交织步骤,由第二正交织器对输入的信息位进行正交织,输出交织信息位;
第二译码步骤,由第二译码器对在第一正交织步骤获得的经交织的第一外信息、在第二正交织步骤获得的交织信息位和输入的第二路校验位进行译码,输出第二路校验位硬判决序列、第二外信息和第二信息位硬判决序列;
反交织步骤,由反交织器对在第二译码步骤获得的第二外信息和第二信息位硬判决序列进行反交织,输出经反交织的第二外信息和第二信息位硬判决序列,并且经反交织的第二外信息被反馈到第一译码器的输入端,与第一路校验位和信息位一起进行译码;
第一卷积编码步骤,由第一卷积码编码器对从反交织步骤获得的第二信息位硬判决序列进行卷积编码,输出第二校验序列;
第一校验判决步骤,由第一校验判决器判断在第二卷积码编码步骤获得的第一校验序列和在第二译码步骤获得的第二路校验位硬判决序列是否相同,并且在二者相同的情况下向第一译码器发出终止信号,结束迭代过程;
第二校验判决步骤,用于判断从第一卷积码编码器输出的第二校验序列和从第一译码器输出的第一路校验位硬判决序列是否相同,并且在二者相同的情况下向第二译码器发出终止信号,结束迭代过程;
其中在第一译码器收到结束信号时,从第一正交织器输出经交织的第一信息位硬判决序列,作为译码输出,
或者,在第二译码器收到结束信号时,从反交织器输出经反交织的第二信息位硬判决序列,作为译码输出。
32.根据权利要求31所述的迭代译码方法,其特征在于对迭代次数进行计数,在所述迭代次数超过预定的最大次数时,向第一译码器和第二译码器发出终止信号,结束迭代过程。
33.根据权利要求31或32所述的迭代译码方法,其特征在于在所述第一校验判决步骤,通过对第一校验序列和第二路校验位硬判决序列进行差分处理来判断二者是否相同;
在所述第二校验判决步骤,通过对第二校验序列和第一路校验位硬判决序列进行差分处理来判断二者是否相同。
34.根据权利要求33所述的迭代译码方法,其特征在于在所述第一校验判决步骤,通过按位对第一校验序列和第二路校验位硬判决序列进行差分处理来判断二者是否相同;
在所述第二校验判决步骤,通过按位对第二校验序列和第一路校验位硬判决序列进行差分处理来判断二者是否相同。
35.根据权利要求31或32所述的迭代译码方法,其特征在于在所述第一校验判决步骤,通过对第一校验序列和第二路校验位硬判决序列进行异或运算来判断二者是否相同;
在所述第二校验判决步骤,通过对第二校验序列和第一路校验位硬判决序列进行异或运算来判断二者是否相同。
36.根据权利要求35所述的迭代译码方法,其特征在于在所述第一校验判决步骤,通过按位对第一校验序列和第二路校验位硬判决序列进行异或运算来判断二者是否相同;
在所述第二校验判决步骤,通过按位对第二校验序列和第一路校验位硬判决序列进行异或运算来判断二者是否相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410094615 CN1780152A (zh) | 2004-11-17 | 2004-11-17 | 迭代译码方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410094615 CN1780152A (zh) | 2004-11-17 | 2004-11-17 | 迭代译码方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1780152A true CN1780152A (zh) | 2006-05-31 |
Family
ID=36770292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410094615 Pending CN1780152A (zh) | 2004-11-17 | 2004-11-17 | 迭代译码方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1780152A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207387B (zh) * | 2007-09-28 | 2010-11-24 | 威盛电子股份有限公司 | 涡轮解码器及其终止判断电路及循环迭代操作的停止方法 |
CN101075812B (zh) * | 2007-06-08 | 2011-01-05 | 中国科学技术大学 | 一种并行级联结构的系统形式低密度码的构造方法 |
CN101442394B (zh) * | 2008-11-10 | 2011-06-29 | 西安电子科技大学 | 可迭代译码的网络编码协作通信方法 |
CN102130747A (zh) * | 2011-04-29 | 2011-07-20 | 东南大学 | 一种长期演进系统的拓扑码传输块译码迭代的动态分配方法 |
CN101465654B (zh) * | 2009-01-06 | 2012-07-18 | 中山大学 | 基于校验和错误模式的ldpc码的译码停止判决方法 |
CN101582737B (zh) * | 2008-05-15 | 2012-09-12 | 展讯通信(上海)有限公司 | 卷积Turbo码交织器和解交织器 |
CN101630989B (zh) * | 2008-07-14 | 2012-10-03 | 上海华为技术有限公司 | 一种数据发送方法、装置及通信系统 |
CN103095392A (zh) * | 2011-10-31 | 2013-05-08 | 扬智电子科技(上海)有限公司 | 迭代译码方法及其通信装置 |
CN103401564A (zh) * | 2007-12-19 | 2013-11-20 | 松下电器产业株式会社 | 编码器、解码器、发送装置、接收装置及其方法 |
CN107565982A (zh) * | 2017-09-20 | 2018-01-09 | 上海东软载波微电子有限公司 | Turbo迭代译码的输出控制方法、装置及译码设备 |
CN108847914A (zh) * | 2018-03-23 | 2018-11-20 | 中国人民解放军战略支援部队信息工程大学 | 一种循环迭代协同信号处理方法及装置 |
WO2020052672A1 (zh) * | 2018-09-12 | 2020-03-19 | 中兴通讯股份有限公司 | Turbo乘积码的译码方法、装置、译码器及计算机存储介质 |
CN113067582A (zh) * | 2019-12-13 | 2021-07-02 | 华为技术有限公司 | 一种并行译码方法及装置 |
-
2004
- 2004-11-17 CN CN 200410094615 patent/CN1780152A/zh active Pending
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075812B (zh) * | 2007-06-08 | 2011-01-05 | 中国科学技术大学 | 一种并行级联结构的系统形式低密度码的构造方法 |
CN101207387B (zh) * | 2007-09-28 | 2010-11-24 | 威盛电子股份有限公司 | 涡轮解码器及其终止判断电路及循环迭代操作的停止方法 |
CN103401564B (zh) * | 2007-12-19 | 2018-09-11 | 松下电器(美国)知识产权公司 | 编码器、解码器、发送装置、接收装置及其方法 |
CN103401564A (zh) * | 2007-12-19 | 2013-11-20 | 松下电器产业株式会社 | 编码器、解码器、发送装置、接收装置及其方法 |
CN101582737B (zh) * | 2008-05-15 | 2012-09-12 | 展讯通信(上海)有限公司 | 卷积Turbo码交织器和解交织器 |
CN101630989B (zh) * | 2008-07-14 | 2012-10-03 | 上海华为技术有限公司 | 一种数据发送方法、装置及通信系统 |
CN101442394B (zh) * | 2008-11-10 | 2011-06-29 | 西安电子科技大学 | 可迭代译码的网络编码协作通信方法 |
CN101465654B (zh) * | 2009-01-06 | 2012-07-18 | 中山大学 | 基于校验和错误模式的ldpc码的译码停止判决方法 |
CN102130747A (zh) * | 2011-04-29 | 2011-07-20 | 东南大学 | 一种长期演进系统的拓扑码传输块译码迭代的动态分配方法 |
CN102130747B (zh) * | 2011-04-29 | 2013-05-01 | 东南大学 | 一种长期演进系统的拓扑码传输块译码迭代的动态分配方法 |
CN103095392B (zh) * | 2011-10-31 | 2016-06-01 | 扬智电子科技(上海)有限公司 | 迭代译码方法及其通信装置 |
CN103095392A (zh) * | 2011-10-31 | 2013-05-08 | 扬智电子科技(上海)有限公司 | 迭代译码方法及其通信装置 |
CN107565982A (zh) * | 2017-09-20 | 2018-01-09 | 上海东软载波微电子有限公司 | Turbo迭代译码的输出控制方法、装置及译码设备 |
CN107565982B (zh) * | 2017-09-20 | 2020-11-17 | 上海东软载波微电子有限公司 | Turbo迭代译码的输出控制方法、装置及译码设备 |
CN108847914A (zh) * | 2018-03-23 | 2018-11-20 | 中国人民解放军战略支援部队信息工程大学 | 一种循环迭代协同信号处理方法及装置 |
CN108847914B (zh) * | 2018-03-23 | 2021-03-23 | 中国人民解放军战略支援部队信息工程大学 | 一种循环迭代协同信号处理方法及装置 |
WO2020052672A1 (zh) * | 2018-09-12 | 2020-03-19 | 中兴通讯股份有限公司 | Turbo乘积码的译码方法、装置、译码器及计算机存储介质 |
US11381259B2 (en) | 2018-09-12 | 2022-07-05 | Zte Corporation | Decoding method and device for turbo product codes, decoder and computer storage medium |
CN113067582A (zh) * | 2019-12-13 | 2021-07-02 | 华为技术有限公司 | 一种并行译码方法及装置 |
CN113067582B (zh) * | 2019-12-13 | 2024-04-12 | 华为技术有限公司 | 一种并行译码方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1487118B1 (en) | Error detection methods in wireless communication systems | |
CA2250510C (en) | Data communications systems and methods using interspersed error detection bits | |
CN1279698C (zh) | 运用Turbo码中的质量标记标准的迭代停止准则 | |
US8726137B2 (en) | Encoding and decoding methods for expurgated convolutional codes and convolutional turbo codes | |
CN1780152A (zh) | 迭代译码方法和系统 | |
US20150006992A1 (en) | Method and decoder for processing decoding | |
CN1406415A (zh) | 在码分多址移动通信系统中终止叠代解码的设备和方法 | |
CN1761160A (zh) | 解码方法和设备 | |
CN101039119A (zh) | 编码与解码的方法及系统 | |
CN1316829A (zh) | 纠错编码型的数字传输方法 | |
JPH10178355A (ja) | 連接符号の誤り訂正復号装置及び復号方法 | |
CN1823474A (zh) | 解码装置及解码方法 | |
KR102281107B1 (ko) | 데이터 부호화 방법, 인코더, 디코더 및 통신 시스템 | |
CN1756090A (zh) | 信道编码装置和方法 | |
CN1731686A (zh) | 一种维特比译码器及用于维特比译码器的加比选单元电路 | |
CN1822530A (zh) | 一种检测和纠正数据误码的方法及系统 | |
CN1172448C (zh) | 解码数据信号的方法 | |
KR100738250B1 (ko) | Llr의 부호 비교를 이용한 터보 복호기의 반복복호제어장치 및 방법 | |
CN1741614A (zh) | 使用冗余对视/音频和语音数据进行解码的方法和系统 | |
CN1574651A (zh) | Turbo解码器及其所使用的动态解码方法 | |
US8942326B2 (en) | Channel decoding method and tail biting convolutional decoder | |
EP2567463A1 (en) | Technique for processing encoded information in a wireless communication network | |
CN1129257C (zh) | 串行回溯的最大似然解码方法及其使用该方法的解码器 | |
CN102857242A (zh) | 咬尾卷积码译码方法与装置 | |
CN108476027A (zh) | 窗口交织的turbo(wi-turbo)码 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |