一种特博码解码的方法以及解码器的制作方法

文档序号:7516196阅读:308来源:国知局
专利名称:一种特博码解码的方法以及解码器的制作方法
技术领域
本发明属于通信领域中的信道编解码技术,更具体地涉及一种特博码解码的方法以及解码器。
在无线通信系统中,由于传输介质的不均匀性和不稳定性,传输的信号会受到时间扩散、衰落等干扰影响,造成接收的比特有随机性的差错。为了防止信道噪声的干扰影响,需要采用一定的方式来提高信息的传送可靠性和有效性。通过增加冗余度来降低误码率的纠错编码方法,被时间证明是一类有效可靠的重要手段。特别在移动通信和卫星通信系统中。纠错码得到广泛的技术应用。
特博(Turbo)码被证明是一种纠错能力很强的码。它的编码器是由两个或多个子编码器通过串联或并联的级联方式构成的,通常较普遍的特博(Turbo)码编码器是由两个卷积码编码器并联而成,输入信息位一路直接送入子编码器1,另一路经过交织器后送入子编码器2编码,编完后的数据再经过打孔器打孔调制到合适的码率输出。在cdma2000和WCDMA提案中建议的特博(Turbo)码编码器是由两个卷积码子编码器并联而构成的,如

图1所示。
图1是cdma2000和WCDMA提案中的特博(Turbo)码编码器的结构。14和16分别是上下两个子编码器。12是编码器内部的交织器,其作用是对输入数据的顺序进行重新编排,目的是调整权重的分布,使得子编码器14输入比特流的权重分布与子编码器16的不同。18是打孔器,对两个子编码器输出的六路比特进行打孔抽样和并串转换。
卷积码编码器通常用(n0,k0,m)来表示特征,n0是输出比特,k0是输入比特,m是寄存器个数。K表示约束长度,即为卷积码内部移位寄存器的个数m加1。cdma2000提案中特博(Turbo)码子(3,1,3)编码器如图2所示。
该图2是图1的编码器中的子编码器结构示意图。它是一个R=1/3码率的回归系统卷积码编码器,简写为RSC。20是移位寄存器,一共有三个移位寄存器,所以m=3,K=4。22是模2加法器,共有四个模2加法器。24是尾比特控制器,当一帧数据输入完毕后,需要对寄存器20清零,这时将尾比特控制器开关切换到下方,通过三个节拍,将三个寄存器20内的比特作为输入依次清零。
WCDMA提案中的特博(Turbo)码编码器的卷积码编码器(RSC)的子编码器与图2的子编码器的结构相似,只是没有Y1的输出,也是(2,1,3)的卷积码编码器(RSC)的结构。
特博(Turbo)码的解码器采用迭代递推的方法,通过多次迭代来不断提高解码精度。图3是特博(Turbo)码解码器的结构,其中的33,34是指软输入软输出解码器。
31是解打孔装置,是对应于图1中打孔器18的逆操作。32是解交织器,是对应于图1中交织器12的逆操作,还原交织前的顺序。35是符号判决器,当输入数据大于等于0时,输出1;当输入数据小于0时,输出0。
软输入软输出解码器(SISO)的解码分为最大后验概率解码(MAP)和最大似然解码(SOVA)。
本发明所涉及的是最大后验概率解码(MAP)。
二进制符号uk(uk=0,1)在信道中传输时受到噪声的干扰发生畸变,软输入软输出解码器(SISO)通过对接受符号序列的计算得到每个符号的对数似然比L(uK)=1nP(uK=1|RlN)P(uK=0|RlN)---(1)]]>P(uk=l|R1N)表示在接受序列为R1N的情况下发送符号uk为1的概率。根据Bayes规则,公式(1)可写为L(uK)=1nP(uK=1,RlN)/P(RlN)P(uK=0,RlN)/P(RlN)=1nΣuK=1p(SK-1=s′,SK=s,RlN)/p(RlN)ΣuK=0p(SK-1=s′,SK=s,RlN)/p(RlN)---(2)]]>求和对应的是卷积码中所有由uk=1(或uk=0)引起的Sk-1到Sk的状态转移上的概率计算。可按公式(3)计算P(sK-1=s′,SK=s,RlN)=p(s′,R1K-1)·p(s,RK|S′)·p(RK+1N|s)---(3)]]>令,αK(s)=p(SK=s,Rl,k),βk(s)=p(RK+1N|SK=s),]]>γk(s′,s)=p(Sk=s,Rk|Sk-1=s′),则αK(s)=Σs′αK-1(s′)·γK(s′,s)---(4)]]>βK-1(s′)=Σs′βk(s′)·γK(s′,s)---(5)]]>γk(s)=p(Sk=s|Sk-1=s′)·p(Rk|Sk=s,Sk-1=s′)=P(uk)·p(Rk|uk)(6)其中,P(uk)是先验概率,由信道转移概率所决定。公式(1)又可以写为L(uk)=1np(RlN|uk=1)p(RlN|uk=0)+1np(uk=1)p(uk=0)=1np(RlN|uk=1)p(RlN|uk=0)+Le(uk)---(7)]]>其中Le(uk)是关于uk先验信息,对应于图3中每个软输入软输出解码器(SISO)输入Le。
考虑到Rk是由图2中的ys、yp1、yp2构成,并且是相互独立的高斯随机变量,定义k时刻信息比特ys为xks,检验比特yP1、yP2为xPk,相应的经过信道为ySN,yNP,则p(Rk|uk)=A·exp{2(yksxks+ykpxkp)σ2}---(8)]]>其中σ2为高斯随机变量的均方差,A为一常量。定义信道可信度Lc,Lc=4aEs/No,其中a为与信道类型有关的参数,Es/No是信噪比,对于高斯白噪声信道上的QPSK调制,σ2=No/2由以上得γk(s′,s)=B·exp{Lcyksxks+Lcykpxkp+ukLe(uk)}---(9)]]>由公式(4)(5)可见,在已知的情况下,αk可以通过αk-1前向递推得到,βk可以通过βk+1后向递推得到。
以上公式的计算都是在指数域的计算,在实际电路实现中可以将指数域的运算通过取对数LOG运算化为乘加运算,即LOG-MAP。在LOG-MAP中,对于类似ex+ey的运算可以化为对数域的x+y,然而对于ex+ey的运算,也就是公式(4)(5)中的求和运算,可用Jacobian公式近似1n(ex+ey)=max(x,y)+ln(1+exp{-|x-y|})=max(x,y)+fc(|x-y)(10)如果公式(10)中近似只取max(x,y)项,则变为MAX-LOG-MAP方法;LOG-MAP方法保留了这项,对于这项的运算,通常是通过建立一个八值的查找表来完成的,这样不仅取得了较MAX-LOG-MAP方法更高的精度,而且实现的规模和复杂度也没增加多少。
根据特博(Turbo)码的实施要求,可以预见到软输入软输出解码器(SISO)要有较高的解码精度。在最大后验概率解码(MAP)方法中引入了含有信道信噪比的Lc项。在实际系统中,对信道情况的估计是一件很复杂的事情,精度往往是无法保证的。通常,信道情况估计的不准确会带来特博(Turbo)码解码的性能恶化,并导致系统的鲁棒性很差。
另外,最大后验概率解码(MAP)方法虽然是一种最优解码方法,但是在转换到对数域时,由于公式(10)的引入,通过查找表得到的值会引入一定的误差。由于该转换是非线性变换,合适的查找表对解码性能有一定的影响。
为此,本发明的目的是针对上述的缺点,提出一种特博码解码的方法。
为了实现上述目的,采用如下技术方案,本发明的方法为在软输入软输出解码过程中采用基于最大后验概率解码的方法,通过循环冗余校验码得到误帧率,再根据所得到误帧率采用若干个查找表对应于各种信道,使其中不同情况下的信道都有一个具有较好解码性能的查找表相对应。
本发明的装置为该解码器包括解打孔装置、二交织器、二解交织器、符号判决器、二软输入软输出解码器,解打孔装置是打孔器的逆操作,交织器对输入的顺序进行重新编排,解交织器是对应于交织器的逆操作,以还原为交织前的顺序,符号判决器根据输入以0为判断值而输出0或1的信号,不同的是所述的软输入软输出解码器包括γ计算模块及γ缓存区、α计算模块及α缓存区、β计算模块及β缓存区、L(uk)计算模块、网格图转移状态机、多表查找计算模块,其中,γ计算模块输入端接收的是解调下来的接收信息y和先验信息Le、以及网格图状态转移信息x,输出其计算的结果γ值到γ缓存区中,γ缓存区用来存放每个时刻计算得出的γ值;γ缓存区根据状态转移信息x输出相应的γ值到α计算模块和β计算模块中以及L(uk)计算模块中;多表查找计算模块,用来实现fc(·)的映射关系,其输入是误帧率(FER)指标值和需要查找的对应变量,输出是对应变量的查找映射值;α计算模块,其输入来自γ缓存区的γ值和来自α缓存区的前一时刻的α值和查找表映射值,并输出α计算值到α缓存区中,α缓存区根据状态转移信息x来提供前一时刻的α计算值给α计算模块和当前时刻的α计算值给L(uk)计算模块;β计算模块,其输入来自γ缓存区的γ值和来自β缓存区的后一时刻的β值和查找表映射值,并输出β计算值的β缓存区中,β缓存区根据状态转移信息x来提供β计算模块和L(uk)计算模块计算所需要的β值;L(uk)计算模块用来得到L(uk),其输入是来自γ缓存区、α缓存区和β缓存区的γ、α、β值,以及查找表的映射值;网格图转移状态机,用来产生当前时刻和上一时刻以及下一时刻之间的状态转移关系。
由于本发基于最大后验概率解码的方法,在软输入软输出解码过程中采用基于最大后验概率的方法,通过循环冗余校验码得到误帧率,再根据所得到误帧率并采用若干个查找表对应于各个信道,使其中不同情况下的信道情况下都有一个具有较好解码性能的查找表相对应。因此,该方法有效地克服在背景技术中所描述的缺点,由误帧率(FER)可知信道的粗略情况,选择相应的查找表。这种方法较单个查找表和直接利用信道估计信噪比的方法来说,不仅有更高的解码性能,而且不会出现性能恶化的情况,具有较好的鲁棒性。
下面结合附图和实施例,对本发明作一详细地说明图1为符合cdma2000和WCDMA提案的特博码编码器结构示意图。
图2为图1中的子编码器结构示意图。
图3为现有相对应图1中特博码编码器的解码器示意图。
图4是利用本发明的解码器后的编码、解码系统方框原理图。
图5是为实现本发明方法的软输入软输出解码器结构示意图。
图6是图5中的多表查找计算模块的结构示意图。

背景技术
的说明中,已分别对图1和图2、图3作了说明。在详细介绍本发明之前,为了对传统的编码和解码系统作一了解,请先参见图4,图4中,41是循环冗余校验码(CRC)编码模块,对一帧编码信息比特加循环冗余校验码(CRC)。42是特博(Turbo)码编码器,其内部结构就是图1和图2中所示的结构。43是一般的调制发射部分,44表示带有噪声的传输物理信道。45是对应调制发射部分43的接收解调部分。46是对应编码器42的特博(Turbo)解码部分,其内部结构与图3所示的结构相同。47是对应循环冗余校验码(CRC)编码模块41的解码模块,它产生的校验结果可以知道该帧特博(Turbo)码解码的数据是否有错误。解码模块47对每帧数据产生有错或无错的判断送到误帧率(FER)模块48。该模块48通过统计可以得到误帧率的指标,并送回解码部分46作为特博(Turbo)码解码器中软输入软输出解码器(SISO)选择查找表的依据。
本发明的方法在软输入软输出解码过程中采用基于最大后验概率解码的方法,通过循环冗余校验码得到误帧率,再根据所得到误帧率采用若干个查找表对应于各种信道,使其中不同情况下的信道都有一个具有较好解码性能的查找表相对应。
本发明的方法进一步包括以下步骤a,对信息以帧为单位加循环冗余校验码;b,通过循环冗余校验码解码来得到误帧率,从而得到信道的粗略估计,并由此作为多个查找表选择的依据;c,对近似运算用多个查找表来分段近一步提高精度;d,再由误帧率来选择查找表;e,最后,通过查找表来求得最大后验概率解码运算的结果。
所述的软输入软输出解码过程中接收和输出的都是软信息。
请再参阅图3、图5所示,根据上述方法而设计的特博码的解码器主要包括解打孔装置31、二交织器36、二解交织器32、符号判决器35、二软输入软输出解码器33、34,解打孔装置31是打孔器的逆操作,交织器36对输入的顺序进行重新编排,解交织器32是对应于交织器36的逆操作,以还原为交织前的顺序,符号判决器35根据输入以0为判断值而输出0或1的信号。图5中,51是公式(9)值的γ计算模块,其输入端接收的是解调下来的接收信息y和先验信息Le、以及网格图状态转移信息x,其输出计算的结果γ值到γ缓存区52中,γ缓存区52用来存放每个时刻计算得出的γ值,根据状态转移信息x输出相应的γ值到α计算模块54和β计算模块56中,53是多表查找计算模块,用来实现fc(·)的映射关系,其输入是误帧率(FER)指标值和需要查找的对应变量,输出是对应变量的查找映射值,上述的每个查找表可以仍然是8值查找表,也可以扩展为其它个数,对应不的的误帧率(FER)有不同的查找表,54是k时刻公式(4)的c计算模块,其输入来自γ缓存区52的γ值和来自α缓存区55的前一时刻的α值和查找表映射值,并输出α计算值到α缓存区55中,α缓存区55根据状态转移信息x来提供前一(k-1)时刻的α计算值给α计算模块54和当前时刻的α计算值给L(uk)计算模块58。56是k时刻的β计算模块,输入来自γ缓存区52的γ值、β缓存区57的后一时刻的β值和查找表映射值,并输出β计算值的β缓存区57中,β缓存区57根据状态转移信息x来提供β计算模块56和L(uk)计算模块58计算所需要的β值(用来提供k+1时刻的值给模块56)。L(uk)计算模块58是公式(7)的计算单元,用来得到L(uk),其输入是来自γ缓存区、α缓存区55和β缓存区57的γ、α、β值,以及查找表的映射值。59是网格图转移状态机,用来产生当前时刻和上一时刻以及下一时刻之间的状态转移关系和相应的公式(9)中的(xkP,xkS)。
请继续参阅图6所示,所述的多表查找计算模块进一步包括比较器、fc映射器、选择器、加法器、多个不同的查找表,其中,61是一比较器,输入为a,b,输出两个输入a,b中大的一个值。62是实现通过查表近似映射公式(10)中fc(·)映射,其输入是a,b和相应的映射查找表,输出是映射的结果。64是多个不同的查找表,在图6中给出的实施例是3个查找表,可以理解,实际表的个数在基于复杂度不大和可提高精度的前提下可以任意。63是选择器,通过误帧率(FER)来确定选择相应的查找映射表,送到62fc(·)映射中。65是加法器,该加法器将比较器61的结果和fc(·)映射62的结果相加,得到公式(10)的近似结果,也就是max(x,y)+fc(|x-y|)。
权利要求
1.一种特博码解码的方法,其特征在于该方法在软输入软输出解码过程中采用基于最大后验概率解码的方法,通过循环冗余校验码得到误帧率,再根据所得到误帧率采用若干个查找表对应于各种信道,使其中不同情况下的信道都有一个具有较好解码性能的查找表相对应。
2.如权利要求1所述的特博码解码的方法,其特征在于所述的方法进一步包括以下步骤a,对信息以帧为单位加循环冗余校验码;b,通过循环冗余校验码解码来得到误帧率,从而得到信道的粗略估计,并由此作为多个查找表选择的依据;c,对近似运算用多个查找表来分段近一步提高精度;d,再由误帧率来选择查找表;e,最后,通过查找表来求得最大后验概率解码运算的结果。
3.如权利要求1或2所述的特博码解码的方法,其特征在于所述的软输入软输出解码过程中接收和输出的都是软信息。
4.一种特博码的解码器,该解码器包括解打孔装置、二交织器、二解交织器、符号判决器、二软输入软输出解码器,解打孔装置是打孔器的逆操作,交织器对输入的顺序进行重新编排,解交织器是对应于交织器的逆操作,以还原为交织前的顺序,符号判决器根据输入以0为判断值而输出0或1的信号,其特征在于,所述的软输入软输出解码器包括γ计算模块及γ缓存区、α计算模块及α缓存区、β计算模块及β缓存区、L(uk)计算模块、网格图转移状态机、多表查找计算模块,其中γ计算模块输入端接收的是解调下来的接收信息y和先验信息Le、以及网格图状态转移信息x,输出其计算的结果γ值到γ缓存区中,γ缓存区用来存放每个时刻计算得出的γ值;γ缓存区根据状态转移信息x输出相应的γ值到α计算模块和β计算模块中以及L(uk)计算模块中;多表查找计算模块,用来实现fc(·)的映射关系,其输入是误帧率(FER)指标值和需要查找的对应变量,输出是对应变量的查找映射值;α计算模块,其输入来自γ缓存区的γ值和来自α缓存区的前一时刻的α值和查找表映射值,并输出α计算值到α缓存区中,α缓存区根据状态转移信息x来提供前一时刻的α计算值给α计算模块和当前时刻的α计算值给L(uk)计算模块;β计算模块,其输入来自γ缓存区的γ值和来自β缓存区的后一时刻的β值和查找表映射值,并输出β计算值的β缓存区中,β缓存区根据状态转移信息x来提供β计算模块和L(uk)计算模块计算所需要的β值;L(uk)计算模块用来得到L(uk),其输入是来自γ缓存区、α缓存区和β缓存区的γ、α、β值,以及查找表的映射值;网格图转移状态机,用来产生当前时刻和上一时刻以及下一时刻之间的状态转移关系。
5.如权利要求4所述的特博码的解码器,其特征在于所述的多表查找计算模块包括比较器、fc映射器、选择器、加法器、多个不同的查找表,其中,比较器输入为a,b,输出两个输入a,b中大的一个值;fc映射器输入是a,b和相应的映射查找表,输出是映射的结果;选择器通过误帧率来确定选择相应的查找映射表,送到fc映射器中;加法器将比较器的结果和fc映射器的结果相加。
全文摘要
本发明公开了一种特博码解码的方法以及解码器,该方法在软输入软输出解码过程中采用基于最大后验概率的方法,通过循环冗余校验码得到误帧率,再根据所得到误帧率并采用若干个查找表对应于各个信道,使其中不同情况下的信道都有一个具有较好解码性能的查找表相对应。该方法较单个查找表和直接利用信道估计信噪比的方法来说,不仅有更高的解码性能,而且不会出现性能恶化的情况,具有较好的鲁棒性。
文档编号H03M13/23GK1338824SQ0011962
公开日2002年3月6日 申请日期2000年8月17日 优先权日2000年8月17日
发明者苏宁, 胡波 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1