截短维特比译码方法及其译码器的制作方法

文档序号:7675563阅读:467来源:国知局
专利名称:截短维特比译码方法及其译码器的制作方法
技术领域
本发明涉及一种码分多址移动通信应用技术领域的译码方法及其译码器,特别是涉及一种截短维特比译码方法与实现该方法的译码器。
背景技术
卷积编码和维特比译码是一种有效的前向纠错的方法,其广泛应用于无线通信领域。该维特比译码算法是用于卷积码译码的一种极大似然译码算法。该记卷积码为(n,k,m),则编码速率为k/n,每个时刻编码状态数为2m。在3GPP中,采用1/2,1/3卷积码,即(2,1,8)、(3,1,8)卷积码,m为8,表示寄存器个数;3GPP的卷积码编码时有8个附加的0比特,一般称为尾比特。
请结合参阅图1所示,现将现有传统的非截短维特比译码算法概述说明如下1、假定第i时刻的每个状态都有一条相应的幸存路径,其积累度量分别为Rj(i)(j=0,...,2m-1)。
2、设第i+1时刻某状态j有来自第i时刻状态s和t的两条支路,记支路度量分别为r(s,j),r(t,j),0≤S,t≤2M-1。
3、计算i+1时刻到达状态j的两条可能路径的积累度量,然后比较大小,保存积累度量值较大的路径(幸存路径),删去积累度量值较小的路径,并更新积累度量值(加比选)。即if(Rs(i)+r(s,j)>Rt(i)+r(t,j))]]>Rj(i+1)=Rs(i)+r(s,j);]]>elseRj(i+1)=Rt(i)+r(t,j)。
4、同理可得到第i+1时刻其它2m-1个状态的积累度量值及对应的幸存路径。
5、从第m个时刻开始计算,一直到处理完一个编码块数据,然后从零状态回溯输出译码数据。
但在实际实现时,考虑到要减少译码延迟时间与节省硬件资源,一般都采用截短的维特比译码方法,即不等收完一个码块的数据就开始译码输出部分数据,其译码步骤与非截短译码相比就是上述的第5步不同。对于截短译码,假设译码深度为L,则上述非截短译码的第5步骤修改为5′、从第m个时刻开始计算,每当到达译码深度第L个时刻但还没到达码块末尾时,从当前2m个状态中挑选出一个状态作为译码回溯位置,回溯输出前面第L-1个位置的一个译码输出比特。此状态必须满足的条件是它具有最大的积累度量;当到达译码深度第L个时刻同时到达码块末尾时,直接从零状态回溯输出整个译码深度L的比特数据。
截短译码第5部的回溯位置选择方法(即译码器判决并输出首段信息元的方法)传统方法上还有以下几种方法(1)、从2m条路径中任选一条留选路径,把它的首段信息元作为译码器输出。
(2)、取出所有2m路径的首段信息元,按大数准则判决输出。
(3)、对路径的度量值定出一个门限,当某一路径的门限超过此值(若为最小距离准则则小于门限),就输出此路径的首段信息元。
传统上无论那种截短译码方法,都有一个共同的优点,即相对非截短译码方法来说,减少了译码延迟时间和节省了硬件存储器的资源;但是也有一个共同的缺点,即因为采取了截短,译码时没有充分利用卷积码的一个码块的所有相关信息,所以在性能上相对于非截短译码方法来说效果要差一些。由此可见,上述现有传统的截短译码方法仍存在有缺陷,而丞待加以进一步改进。
有鉴于上述现有传统的截短译码方法存在的缺陷,本发明人基于丰富的实务经验及专业知识,积极加以研究创新,经过不断的研究、设计,并经反复试验及改进后,终于创设出确具实用价值的本发明。

发明内容
本发明所要解决的主要技术问题在于,克服现有传统的截短译码方法存在的缺陷,而提供一种保持译码深度与硬件存储资源不变,而可使其性能更优的新型截短译码方法。
本发明所要解决的另一技术问题在于,提供一种实现上述保持译码深度与硬件存储资源不变、性能更优的新型截短译码方法的译码器。
本发明解决其主要技术问题是采用以下技术方案来实现的。依据本发明提出的一种截短维特比译码方法,包括以下步骤(1)、读入量化的译码输入,计算每一状态两种可能的支路度量;(2)、根据对两种可能的支路度量的计算结果,计算每一状态的两种可能的路径积累度量值;(3)、根据所计算的路径积累度量值,挑选出每一状态的两种可能的路径积累度量值的较大值,保存其前导状态的位置;(4)、接着,判断当前时刻是否达到码块末尾,如果达到码块末尾,则从0状态回溯输出一个码块剩下的最后一段译码深度L的比特数据,如果没有达到码块末尾,则(5)、进一步判断是否达到译码深度L,如果没有达到译码深度L,则回到步骤(1)继续译码,如果达到译码深度L,判断是否已经达到码块末尾的前t个时刻位置,其中t表示0<t<m中的一个数,m是寄存器个数;如果判断结果是否定的,则从2m个状态中挑选最大路径积累度量对应的状态,并从此状态回溯输出往前数第L-1个时刻位置的1比特数据,然后回到步骤(1)继续译码,如果判断是肯定的,则(6)、从2t个状态中挑选最大路径积累度量对应的状态,并从此状态回溯输出往前数第L-1个时刻位置的比特数据,然后回到步骤1继续进行译码处理。
本发明解决其另一技术问题是采用以下技术方案来实现的。依据本发明提出的一种截短维特比译码器,其包括分支度量运算器,用于接收量化的解调数据,以计算译码路径分支度量;积累度量运算器,根据分支度量运算器计算的结果计算译码路径积累度量,并且将得到幸存路径的积累度量存储到状态度量存储器中;状态度量存储器,用于存储幸存路径的积累度量;回溯位置搜索器,用于从积累度量运算器输出的m个寄存器的2m个状态的积累度量值中挑选参与排序的状态和对应的积累度量值,找出最大的积累度量值和对应的状态,并且在译码时刻到达尾码时,从2t个状态中挑选和找出最大路径积累度量值和对应状态,其中t表示0<t<m中的一个数;和回溯处理器,用于处理回溯位置搜索器输出的最大路径积累度量值和对应状态,并输出译码数据。
本发明解决其技术问题还可以采用以下技术措施来进一步实现。
前述的截短维特比译码器,其中所述的其中所述的回溯位置搜索器包括一个状态挑选器,用于从积累度量运算器输出的m个寄存器的2m个状态的积累度量值中挑选参与排序的状态和对应的积累度量值;一个有限状态排序器,用于从状态挑选器挑选的参与排序的状态和对应的积累度量中找出最大的积累度量值和对应的状态;一个保存器,保存有限状态排序器输出的每个最大积累度量值和对应的状态。
本发明与现有技术相比具有明显的优点和有益效果。由以上技术方案可知,本发明与现有传统的截短译码方法相比,其至少具有以下的优点和有益效果1、由于增加了判断译码时刻达到码块末尾的前t(0<t<m)个时刻位置时,从2m个状态中挑选最大路径积累度量对应的状态,并从此状态回溯输出往前数第L-1个时刻位置的1比特数据,从更小的状态范围里搜索出回溯的状态位置,避免了噪声状态的干挠,减少了待搜索的可能回溯状态的个数,提高了回溯状态位置的搜索精度,从而减少了硬件实现的运算复杂度,同时也提高了译码性能。
2、本发明实施的译码器,应用于3GPP通信系统,其与现有传统的截短译码方法相比,没有增加时间与空间的复杂度,然而却大大提高了译码性能,从而更加适于实用。
综上所述,本发明截短维特比译码方法及其译码器,有效的克服了现有传统的截短译码方法存在的缺陷,其不但可以保持译码深度与硬件存储资源不变,而且可以使其性能更优良。其不论在方法上、结构上或功能上皆有较大的改进,而且在技术上有较大的进步,并产生了好用及实用的效果,而确实具有增进的功效,从而更加适于实用,诚为一新颖、进步、实用的新设计。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。


图1为维特比译码积累度量计算示意图。
图2为本发明所述的截短维特比译码流程图。
图3为本发明所述的译码器结构图。
图4为回溯位置搜索器内部结构及与其外部器件的接口关系图。
具体实施例方式
以下结合附图及较佳实施例,对依据本发明提出的截短维特比译码方法及其译码器其具体实施方式
、结构、特征及其功效,详细说明如后。
请参阅图3、图4所示,本发明截短维特比译码方法及其译码器,在本实施例中其仅为示范性实施例,其采用的是1/3卷积码,m为8,尾比特为8位,译码输入数据量化为6比特,编码块长C为264,译码深度L为60。
在本实施例中,本发明的截短维特比译码器9,其包括分支度量运算器1,用于接收量化的解调数据,以计算译码路径分支度量;积累度量运算器2,根据分支度量运算器计算的结果计算译码路径积累度量,并且将得到幸存路径的积累度量存储到状态度量存储器中;状态度量存储器6,用于存储幸存路径的积累度量;回溯位置搜索器3,用于从积累度量运算器输出的m个寄存器的2m个状态的积累度量值中挑选参与排序的状态和对应的积累度量值,找出最大的积累度量值和对应的状态,并且在译码时刻到达尾码时,从2t个状态中挑选和找出最大路径积累度量值和对应状态,其中t表示0<t<m中的一个数;和回溯处理器5,用于处理回溯位置搜索器输出的最大路径积累度量值和对应状态,并输出译码数据。
在本实施例中,本发明采用1/3卷积码,每个时刻读入3个量化为6比特的解调数据,进入分支度量运算器1进行译码路径分支度量计算,在积累度量运算器2内进行译码路径积累度量计算,并存储幸存路径的积累度量到状态度量存储器6;通过计数器7与控制器8确定什么时候以及采取什么样的搜索策略在回溯位置搜索器3内搜索回溯的译码寄存器状态位置;分支度量运算器1、积累度量运算器2、回溯位置搜索器3构成ACS(Add CompareSelect,加比选)单元4,但是因为回溯位置搜索器3的内部实现与通常的回溯位置搜索器不同,因此此处的ACS单元4也非通常意义的ACS,具体地说,该回溯位置搜索器3包括一个状态挑选器,用于从积累度量运算器2输出的m个寄存器的2m个状态的积累度量值中挑选参与排序的状态和对应的积累度量值;一个有限状态排序器,用于从状态挑选器挑选的参与排序的状态和对应的积累度量中找出最大的积累度量值和对应的状态;一个保存器,保存有限状态排序器输出的每个最大积累度量值和对应的状态。
实施本实施例,在从基站到终端的下行链路中,译码输入数据量化为6比特,编码块长C为264,译码深度L为60,则译码寄存器状态数有256种,用0~255表示。
当译码时刻达到译码深度L即60之前,不进行回溯,达到60以及60后开始搜索回溯位置并回溯输出前59位置的1比特,在译码时刻达到257之前,ACS的处理与一般的ACS一样,当译码时刻在257~263之间,需作本发明的特殊处理,当译码时刻达到257时在128种状态2×(0~127)中搜索回溯位置;当译码时刻达到258时在64态4×(0~63)中搜索回溯位置;当译码时刻达到259时在32种状态8×(0~31)中搜索回溯位置;当译码时刻达到260时在16种状态16×(0~15)中搜索回溯位置;当译码时刻达到261时在8种状态32×(0~7)中搜索回溯位置;当译码时刻达到262时在4种状态64×(0~3)中搜索回溯位置;当译码时刻达到263时在2种状态128×(0~1)中搜索回溯位置。
当译码时刻达到模块末尾264时刻时,在回溯处理器5中直接从零状态一次性回溯输出最后一段译码深度L(为60)比特长的数据,至此完成整个译码过程。
本发明的所述截短维特比译码方法,其实施方法如图2所示。
具体的执行过程如下(1)、执行流程1,给2m个译码寄存器状态赋积累度量的初始值。
(2)、执行流程2,读入2或3个量化的RAKE解调后数据缓存。如果是1/2卷积码,则读入2个RAKE解调后的数据,如果是1/3卷积码,则读入3个RAKE解调后的数据;(3)、因为当前时刻2m个状态中的每一状态只有两种可能的前导状态,所以从前一时刻到达当前时刻某一状态的支路只有两条,只需计算这可能的两条支路度量。即执行流程3;(4)、利用流程3的结果,执行流程4,计算每一状态的两种可能的路径积累度量值;(5)、利用流程4的结果,执行本流程5,挑选出每一状态的两种可能的路径积累度量值的较大值,保存其前导状态的位置,舍去另一前导状态的位置,紧接着流程5的后续流程是执行流程6;(6)、判断当前时刻是否达到码块末尾,如果达到码块末尾,则从流程11执行;如果没有达到码块末尾,则从流程7执行;(7)、进一步判断是否达到译码深度L,如果没有达到译码深度,则回到流程2继续译码;如果达到译码深度L,则从流程8执行;(8)、判断是否已经达到码块末尾的前t(0<t<m)个时刻位置,例如设码块长度为C,初始时刻从1开始计数,判断当前时刻是否达到第C-(m-1),C-(m-2),C-(m-3),C-(m-4),...C-1时刻位置,如果判断结果为“否”,则从流程9执行;如果判断结果为“是”,则从流程10执行;(9)、从2m个状态中挑选最大路径积累度量对应的状态,并从此状态回溯输出前L-1个时刻位置的1比特数据,流程9的后续流程为流程2;(10)、从2t个状态中挑选最大路径积累度量对应的状态,并从此状态回溯输出往前数第L-1个时刻位置的1比特数据。流程10的后续流程为流程2;(11)、从0状态回溯输出一个码块剩下的最后一段译码深度L的比特数据;流程11执行完,则整个译码过程结束;流程8与流程10是本发明的关键点。在此对流程10再作进一步介绍。我们熟知,译码寄存器状态为m比特位,每一位bi,i=0,…m-1取值为0或1,共能表示所有2m个状态,如表1所示。表1为译码寄存器状态2进制表。

表1译码寄存器左边为低位,右边为高位,则2m个状态用10进制表示即为0~2m-1,例如全0时为0,全1时为2m-1,当译码时刻达到第C-(m-1)个时刻位置时,此时译码器内部的假设编码寄存器状态没有2m个,因为此时已有1个尾比特0输入,即b0=0,所以只剩2m-1个状态,回溯位置搜索器3只需对度量运算器2送来的2m个状态积累度量值中的2m-1个状态积累度量值(对应的状态的10进制表示为21×(0~(2m-1-1)))进行排序,找出最大状态积累度量值及对应的状态的10进制表示,并将状态的10进制表示送给回溯处理器5。
当译码时刻达到第C-(m-2)个时刻位置时,已有2个尾比特0输入,即b0=0,b1=0此时译码器内部的假设编码寄存器状态只剩2m-2个,回溯位置搜索器3只需对度量运算器2送来的2m个状态积累度量值中其中的2m-2个状态积累度量值(对应的状态的10进制表示为22×(0~(2m-2-1)))进行排序,找出最大状态积累度量值及对应的状态的10进制表示,并将状态的10进制表示送给回溯处理器5。
当译码时刻达到第C-(m-3)个时刻位置时,已有3个尾比特0输入,即b0=0,b1=0,b2=0此时译码器内部的假设编码寄存器状态只剩2m-3个,回溯位置搜索器3只需对度量运算器2送来的2m个状态积累度量值中其中的2m-3个状态积累度量值(对应的状态的10进制表示为23×(0~(2m-3-1)))进行排序,找出最大状态积累度量值及对应的状态的10进制表示,并将状态的10进制表示送给回溯处理器5。当译码时刻达到第C-1个时刻位置时,已有(m-1)个尾比特0输入,即b0=0,b1=0,b2=0,...bm-2=0,此时译码器内部的假设编码寄存器状态只剩2l=2个,回溯位置搜索器3只需对度量运算器2送来的2m个状态积累度量值中其中的2个状态积累度量值(对应的状态的10进制表示为102m-1×(0~1)]]>)进行排序,找出最大状态积累度量值及对应的状态的10进制表示,并将状态的10进制表示送给回溯处理器5。
这一段描述的结构图如图4。3GPP的卷积码编码时有8个附加的0比特,一般称为尾比特。因此我们译码时可以充分利用这个信息。改进传统的截短译码方法,传统的译码方法没有流程8与10,没有充分利用尾比特信息。
正因为尾比特蕴含了上述信息,所以本发明在实施截短译码时,增加一个判断即流程8,结合流程10从更小的状态范围里搜索出回溯的状态位置,避免了噪声状态的干挠,从而提高了译码性能。同时相对传统截短译码方法,只是增加了一个判断机制,改变了部分搜索方法,没有增加硬件实现的时间复杂度与空间复杂度;在WCDMA第三代宽带通信系统中,解调后的信号输入给本发明的译码器进行译码能提高系统的性能。
本发明的关键点是流程图2中的流程8与流程10,以及图3中嵌在ACS4中的特殊的回溯位置搜索器3,见图4。
在相同的条件下(瑞利衰落的无线传播环境、两条传播路径、用户终端的移动速度较低),分别采用本发明所提到的解码技术与传统的解码技术进行下行链路的全链路仿真,得到如下表2所示的仿真性能验证结果。
表2 本发明所用解码技术与传统的解码技术仿真性能比较

表2说明了本发明提供的短译码方法和实现该方法的译码器既保持了译码深度与硬件存储资源不变,而性能更优。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
权利要求
1.一种截短维特比译码方法,包括以下步骤(1)读入量化的译码输入,计算每一状态两种可能的支路度量;(2)根据对两种可能的支路度量的计算结果,计算每一状态的两种可能的路径积累度量值;(3)根据所计算的路径积累度量值,挑选出每一状态的两种可能的路径积累度量值的较大值,保存其前导状态的位置;(4)接着,判断当前时刻是否达到码块末尾,如果达到码块末尾,则从0状态回溯输出一个码块剩下的最后一段译码深度L的比特数据,如果没有达到码块末尾,则(5)进一步判断是否达到译码深度L,如果没有达到译码深度L,则回到步骤(1)继续译码,如果达到译码深度L,判断是否已经达到码块末尾的前t个时刻位置,其中t表示0<t<m中的一个数,m是寄存器个数;如果判断结果是否定的,则从2m个状态中挑选最大路径积累度量对应的状态,并从此状态回溯输出往前数第L-1个时刻位置的1比特数据,然后回到步骤(1)继续译码,如果判断是肯定的,则(6)从2t个状态中挑选最大路径积累度量对应的状态,并从此状态回溯输出往前数第L-1个时刻位置的比特数据,然后回到步骤1继续进行译码处理。
2.一种截短维特比译码方法中用的一种截短维特比译码器,包括分支度量运算器,用于接收量化的解调数据,以计算译码路径分支度量;积累度量运算器,根据分支度量运算器计算的结果计算译码路径积累度量,并且将得到幸存路径的积累度量存储到状态度量存储器中;状态度量存储器,用于存储幸存路径的积累度量;回溯位置搜索器,用于从积累度量运算器输出的m个寄存器的2m个状态的积累度量值中挑选参与排序的状态和对应的积累度量值,找出最大的积累度量值和对应的状态,并且在译码时刻到达尾码时,从2t个状态中挑选和找出最大路径积累度量值和对应状态,其中t表示0<t<m中的一个数;和回溯处理器,用于处理回溯位置搜索器输出的最大路径积累度量值和对应状态,并输出译码数据。
3.根据权利要求2所述的一种截短维特比译码方法中用的一种截短维特比译码器,其特征在于所述的回溯位置搜索器包括一个状态挑选器,用于从积累度量运算器输出的m个寄存器的2m个状态的积累度量值中挑选参与排序的状态和对应的积累度量值;一个有限状态排序器,用于从状态挑选器挑选的参与排序的状态和对应的积累度量中找出最大的积累度量值和对应的状态;一个保存器,保存有限状态排序器输出的每个最大积累度量值和对应的状态。
全文摘要
维特比译码是对卷积编码的经典译码方法,由于实现上时间与空间的限制,实现时的维特比译码需截短,性能将有所下降。本发明充分利用卷积码的尾比特信息,改变传统的回溯处理方式,提出一种更为精细的回溯处理方式,且不提高原来的时间与空间复杂度,但提高了译码性能。
文档编号H04J13/02GK1434594SQ02101978
公开日2003年8月6日 申请日期2002年1月19日 优先权日2002年1月19日
发明者刘华斌 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1