3G测试系统中的Viterbi译码及其DSP实现及优化
摘要 介绍了一种用于测试TD-SCDMA手机终端测试平台中的关键技术——Viterbi译码。研究用约束度K=9的卷积编码和最大似然Viterbi译码的差错控制方案,在Viterbi译码算法中,提出了原位运算度量、保存路径转移过程和循环存取幸存路径等方法,能有效地减少存储量、降低功耗,使得K=9的Viterbi译码算法可在CCS集成环境平台和TMS320C55X DSP芯片上实现,其性能指标符合3GPP通信协议标准要求,文中给出了适用于DSP编程的算法,给出了DSP具体实现,同时给出了硬件的仿真结果。
0、引言
随着TD-SCDMA产业化进程的日益明朗,3G之战还未吹号,硝烟味已弥漫了黎明前的市场。这就要求尽快提供好的手机终端。对手机终端的性能测试越显得迫在眉睫。由于重邮信科3G研究院在TD方面有着很成熟的技术和经验,在此基础上我们不但推出了3G样机,而且致力于开发好的TD手机测试平台,本文所介绍的Viterbi译码方法是独具特色的TD测试平台中所用到的。3GPP中TD-SCDMA系统采用了3种信道编码方案:卷积编码、Turbo编码和不编码。不同类型的传输信道所使用的编码方案和编码效率是不同的。本文介绍针对卷积编码的Viterbi译码方案。针对DSP设计的特点,本文在不改变纠错性能的前提下提出了一系列的方法,如原位运算、保存转移、循环存取等,旨在将存储器的容量减到最小,将整体功耗降到最低。
1、Viterbi译码原理[1]
Viterbi译码算法(简称VA算法)是由Viterbi在1967年首先提出的,它是一种针对卷积码的最大似然译码算法。他不是在网格图上依次比较所有的可能路径,而是接受一段,计算、比较一段,保留最有可能的路径,从而达到整个码序列是一个最大似然序列。Viterbi译码算法优点是在码的约束比较小时,它比序列译码算法效率更高、速度更快,译码器也较简单。缺点就是随着约束长度的增加算法的复杂度增加很快。约束长度N为7时要比较的路径就有64条,为8时路径变为128条。(2<<(N-1))。所以Viterbi译码一般应用在约束长度小于10的场合中。虽然有许多算法降低了复杂性、减少了运算量,但它们必然以牺牲性能为代价。本文研究的出发点是立足于不降低算法性能,寻求在实现最大似然译码时的优化方法。而这点我们主要是通过与硬件实现相结合做到的。Viterbi算法主要由路径度量的“加比选”运算、度量的更新、路径的更新、最大似然路径的回溯过程组成。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !