专利名称:用于Turbo码译码器中的归一化装置的制作方法
技术领域:
本实用新型涉及一种用于Turbo码译码器中的归一化装置。
背景技术:
Turbo码的原理是基于对传统级联码的算法和结构的修正,内交织器的引入使得迭代解码的正反馈得到了很好的消除。Turbo码编码器由两个递归系统卷积码(recursive systematic convolutional code,简称RSC码)、内交织器和删除器组成。图一给出了cdma2000系统中Turbo码编码器的结构。根据删除器打孔(puncture)形式的不同,该Turbo码的编码码率可以在1/6到1/2之间变化。从译码器实现复杂度和译码性能综合考虑,Turbo码一般采用迭代形式的最大后验概率(maximum a posteriori,简称MAP)译码算法进行译码。由于MAP算法的运算复杂度较高,近来又衍生出了两类简化的MAP算法,分别为Log-MAP算法和Max-Log-MAP算法。图二给出了经典的Turbo码迭代译码器结构图。Turbo码译码器由两个基于MAP算法的软输入、软输出的译码器(soft-input soft-output decoder,简称SISO译码器)、交织器和去交织器构成,经对输入信号交替译码、软输出多次迭代译码、过零硬判决后得到译码输出。
Turbo码译码算法的复杂度主要由其SISO译码器决定,由于软输入、软输出译码算法涉及实数运算,比较复杂,且需要迭代多次,造成实现电路的规模较大,而吞吐量较低。下面对最基本的MAP算法进行简单的介绍假设两个SISO译码器的软输出为Λ1(dk)=logP{dk=1/R1N}P{dk=0/R1N}---(1)]]>其中,dk表示的是未编码信息比特序列中第k个比特,R1N=(x1N,y1k1N)]]>或(x1N,y2k1N)表示的是接收到的信息比特序列x1N和两个校验比特序列y1k1N或y2k1N,分别用于两个SISO译码器,Λ1(dk)表示的是dk的对数似然概率(logarithmlikelihood ratio,简称LLR)。
经过推导,Λ1(dk)可以表示如下形式Λ(dk)=ΣmΣm'γ1(Rk,m',m)αk-1(m')βk(m)ΣmΣm'γ0(Rk,m',m)αk-1(m')βk(m)---(2)]]>其中,m和m′分别表示k时刻和k-1时刻的编码器状态(Sk和Sk-1);αk(m)=p{Sk=m,R1k}=Σm'Σγi(Rk,m',m)αk-1(m')---(3)]]>表示前向路径度量(forward path metric);βk(m)=P{RK+1N/Sk=m}=Σm'Σiγi(Rk+1,m,m')βk+1(m')---(4)]]>表示后向路径度量(backward path metric);γi(Rk,m′,m)=P{dk=i,Sk=m,Rk/Sk-1=m′}(5)表示分支度量(branch metric)。
考虑到实现复杂度和Turbo码译码器性能的折中,实际实现中经常采用的是Max-Log-MAP算法,采用log(ea+eb)=max(a,b)简化MAP算法。采用Max-Log-MAP算法,求解前、后向路径度量和分支度量公式中需要的指数、对数运算变成了简单的线性的加法运算和求最值运算,大大减少了译码的复杂度。
从(3)和(4)可以看出,前、后向路径度量都是通过递推而计算得到的,且每一个要计算M个状态的α和β值。由于度量是不断累加的,如果不考虑每一步做归一化处理,即使初始时刻α和β所需要的量化比特数并不多,但经过很多步累加后(WCDMA和TD-SCDMA系统Turbo码的最长帧长为5114),位宽将会变的很长(对WCDMA和TD-SCDMA系统而言,将会增加13比特),从而需要大量的芯片面积,且使运算速度大受影响,降低Turbo码译码器的译码速率。因此,考虑到Turbo码译码器的硬件实现复杂度和资源消耗,要求α和β值所占的位宽越少越好。但是,为了保证Turbo码译码器的性能,对运算的量化比特数必须有一定的要求,即运算中的位数不能太少,否则将会使前、后向路径度量溢出,大大劣化Turbo码的译码性能,这就与实现规模及运算速度之间相矛盾。
实用新型内容实用新型提供的一种用于Turbo码译码器中的归一化装置,能在基本不影响Turbo码译码器性能的情况下,减少前、后向路径度量所需要的比特宽度。
为了达到上述目的,本实用新型提供了一种用于Turbo码译码器中的归一化装置,包括初始前向路径度量和后向路径度量计算单元,输出当前前向路径度量和后向路径度量;第一加法器,其输入端输入相对于译码器输入信号的偏移量和外附信息的偏移量,输出上述两偏移量总和;第二加法器,其输入端接收来自所述度量计算单元的当前前向路径度量和后向路径度量和来自第一加法器的偏移量总和,输出路径度量和偏移量总和之和;最小值选择器,接收来自第二加法器的一组输出路径度量和偏移量总和之和,选择其中的最小值;减法器,接收来自第二加法器的输出路径度量和偏移量总和之和以及来自最小值选择器的最小值,输出前向路径度量和后向路径度量。
本实用新型提供的一种用于Turbo码译码器中的归一化装置,把前、后向路径度量计算中每一步运算后的计算结果控制在很有限的范围内,从而使得运算位数大大下降,并且此归一化方法运算可以使得参加运算的所有变量都是正数,简化运算的复杂度。
该装置包括第一比较器,接收信息比特xk和校验比特yk,输出相对于译码器输入信号的偏移量。
所述初始前向路径度量和后向路径度量计算单元输入端输入信息比特。
所述初始前向路径度量和后向路径度量计算单元输入端输入校验比特。
所述初始前向路径度量和后向路径度量计算单元输入端输入先验信息。
图1为背景技术中cdma2000系统的Turbo码编码器;图2为背景技术中Turbo码迭代译码器;图3为本实用新型的归一化装置的结构图;图4为当Turbo码帧长为1280时,采用本实用新型对α和β进行处理与α和β采用足够位宽的误码率曲线;图5为当Turbo码帧长为1280时,采用本实用新型对α和β进行处理与α和β采用足够位宽的误帧率曲线。
具体实施方式
以下根据图3~图5来具体说明本实用新型的最佳实施方式本装置就是对参加每一步计算α和β的变量加上特定的偏移量(offset),使得计算出的α和β都为正数,然后计算所有α或β的最小值,以此作为归一化值,将每个前、后向路径度量减去该归一化值作为归一化操作。仿真结果表明,应用此方法,可以在前、后向路径度量使用较少位宽的情况下,取得较好的性能。
在Max-Log-MAP算法中,前、后向路径度量的计算公式如下所示α^k(m)=log[αk(m)]==maxm'(xkuki+ykvki,m'σ2+F(zk)+α^k-1(m'))---(6)]]>β^k(m)=log[βk(m)]=maxm'(xk+1uk+1i+yk+1vk+1i,m'σ2+F(zk+1)+β^k+1(m'))---(7)]]>其中,F(zk)=zk-max(0,zk)dk=1-max(0,zk)dk=0]]>表示的是SISO译码器之间互相传递的外附信息,uki=1-2×xk,vkl,m=1-2×yk]]>分别表示二元相移键控调制(简称BPSK)或者正交相移键控调制(简称QPSK)调制下,Turbo码编码器输出的信息符号序列和校验符号序列。由于Turbo码编码器中RSC编码器的初始状态和终结状态都是0,因此前向路径度量的初始值和后向路径度量的初始值如下所示
α^0(m)=∞m=00m≠0---(8)]]>β^N(m)=∞m=00m≠0---(9)]]>并且从SISO译码器的软输出(LLR)的推导可以看出,在Max-Log-MAP算法中,由于所有的操作都是加法、减法和求最值操作等线性运算,因此α和β同时减去某个值并不影响最后译码结果。利用这个特性就可以在计算α和β时加上一定的偏移量使得α和β的结果都是正数。这样做的优点在于,考虑到参加α和β计算的所有变量都是补码形式,如果计算结果有正有负,进行求最值操作时需要根据操作数的符号采用不同的操作。但是如果所有的变量都是正数,只需要一个比较器就可以完成最值操作,这将减少硬件实现的复杂度。
图3给出了本发明的归一化装置的实现结构图。如图所示,本实用新型提供了用于Turbo码译码器中的归一化装置,包括比较器31,根据公式(6)、(7)得到偏移量zkoffset,比较器32,接收信息比特xk和校验比特yk,输出相对于译码器输入信号的偏移量;初始前向路径度量和后向路径度量计算单元37,输入端输入信息比特、校验比特和先验信息,输出当前前向路径度量和后向路径度量;第一加法器33,其输入端输入相对于译码器输入信号的偏移量和外附信息的偏移量,输出上述两偏移量总和;第二加法器34,其输入端接收来自所述度量计算单元37的当前前向路径度量和后向路径度量和来自第一加法器33的偏移量总和,输出路径度量和偏移量总和之和;最小值选择器35,接收来自第二加法器34的一组输出路径度量和偏移量总和之和,选择其中的最小值;减法器36,接收来自第二加法器34的输出路径度量和偏移量总和之和以及来自最小值选择器35的最小值,输出前向路径度量和后向路径度量。
对每一个译码时刻计算得到的前、后向路径度量进行归一化的具体步骤如下步骤1根据公式(6)和(7)中F(zk)的符号,得到相对于外附信息的偏移量ZKOFFSET如下所示Zkoffset=max(|zk-max(0,zk)|,|-max(o,zk)|)(10)步骤2根据Turbo码译码器输入的信息比特xk和校验比特yk得到相对于译码器输入信号的偏移量XYkoffset如下所示Xykoffset=2×max(|xk/σ2|,|yk/σ2|)(11)步骤3用公式(6)和(7)计算每个前、后向路径度量时,加上Zkoffset和Xykoffset,从而保证了计算得到的前、后向路径度量都是正数。
步骤4计算完M个前、后向路径度量后,统计所有α和β的最小值αmin和βmin。
步骤5对前、后向路径度量进行归一化操作。归一化有两种形式1)直接对步骤3得到的每个前、后向路径度量减去αmin和βmin;2)将步骤4得到的αmin和βmin用于下一译码时刻路径度量的归一化。
综上所述,归一化后的前、后向路径度量计算公式如下所示α^k(m)=log[αk(m)]]]>=maxm'(xkuki+ykvki,m'σ2+F(zk)+α^k-1(m'))+zoffset+xyoffset-αmin---(12)]]>
β^k(m)=log[βk(m)]]]>=maxm'(xk+1uk+1i+yk+1vk+1i,m'σ2+F(zk+1)+β^k+1(m'))+zoffset+xyoffset-βmin---(13)]]>具体实施本例中,采用的WCDMA系统Turbo码译码器的输入数据位宽为6比特,软输入/软输出译码器(SISO译码器)产生的外附信息位宽为10比特。如果不采用本实用新型的归一化装置,前、后向路径度量所需要的位宽至少为24比特时,才能保证计算α和β时不会发生溢出。如果采用本实用新型所提供的归一化装置,仿真结果表明,前、后向路径度量的位宽为8比特时就可以保证Turbo码译码性能基本没有损失。
图4和图5给出了当Turbo码帧长为1280时,采用本实用新型的归一化装置对α和β进行处理与α和β采用足够位宽的误码率、误帧率的对比曲线。从仿真结果可以看出,本实用新型所采用的归一化装置确实可以在不影响Turbo码译码器性能的情况下,大大减少前、后向路径度量的位宽。
权利要求1.一种用于Turbo码译码器中的归一化装置,其特征在于,包括初始前向路径度量和后向路径度量计算单元,输出当前前向路径度量和后向路径度量;第一加法器,其输入端输入相对于译码器输入信号的偏移量和外附信息的偏移量,输出上述两偏移量总和;第二加法器,其输入端接收来自所述度量计算单元的当前前向路径度量和后向路径度量和来自第一加法器的偏移量总和,输出路径度量和偏移量总和之和;最小值选择器,接收来自第二加法器的一组输出路径度量和偏移量总和之和,选择其中的最小值;减法器,接收来自第二加法器的输出路径度量和偏移量总和之和以及来自最小值选择器的最小值,输出前向路径度量和后向路径度量。
2.如权利要求1所述的用于Turbo码译码器中的归一化装置,其特征在于,该装置包括第一比较器,接收信息比特xk和校验比特yk,输出相对于译码器输入信号的偏移量。
3.如权利要求1或2所述的用于Turbo码译码器中的归一化装置,其特征在于,所述初始前向路径度量和后向路径度量计算单元输入端输入信息比特。
3.如权利要求1或2所述的用于Turbo码译码器中的归一化装置,其特征在于,所述初始前向路径度量和后向路径度量计算单元输入端输入校验比特。
4.如权利要求1或2所述的用于Turbo码译码器中的归一化装置,其特征在于,所述初始前向路径度量和后向路径度量计算单元输入端输入先验信息。
专利摘要本实用新型提供了一种用于Turbo码译码器中的归一化装置,包括初始前向路径度量和后向路径度量计算单元;第一加法器,输入相对于译码器输入信号的偏移量和外附信息的偏移量,输出上述两偏移量总和;第二加法器,接收来自所述度量计算单元的当前前向路径度量和后向路径度量和来自第一加法器的偏移量总和,输出路径度量和偏移量总和之和;最小值选择器,接收来自第二加法器的一组输出路径度量和偏移量总和之和,选择其中的最小值;减法器,接收来自第二加法器的输出路径度量和偏移量总和之和以及来自最小值选择器的最小值,输出前向路径度量和后向路径度量。使得运算位数大大下降,参加运算的所有变量都是正数,简化运算的复杂度。
文档编号H03M13/00GK2884696SQ20052004722
公开日2007年3月28日 申请日期2005年12月5日 优先权日2005年12月5日
发明者单鸣 申请人:凯明信息科技股份有限公司