碧波液压网 欢迎你,游客。 登录 注册

基于TMS320C6000系列DSP的维特比译码程序优化设计

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  卷积码因为其编码器简单、编码增益高以及具有很强的纠正随机错误的能力,在通信系统中得到了广泛的应用。基于最大似然准则的维特比算法(VA)是在加性高斯白噪声(AWGN)信道下性能最佳的卷积码译码算法,也是常用的一种算法。

  一般来说,实现软判决维特比译码可以有三种方案供选择:专用集成电路(ASIC)芯片、可编程逻辑阵列(FPGA)芯片以及数字信号处理器(DSP)芯片。参考文献[3]对这三种方案的优劣做了详细的比较。使用DSP芯片实现译码是最为灵活的一种方案,但速度也是最慢的,因为整个译码过程都是由软件来实现的。

  在近年来兴起的软件无线电技术中,要求采用可编程能力强的的器件(DSP、CPU等)代替专用的数字电路。对信道编解码而言,这样做的优点在于只需要在程序上加以少量改动,就可以适应不同的编码速率以及各种通信系统所要求的不同的编解码方法。然而速度的瓶颈限制了DSP译码在实时系统中的应用,因此提高DSP的译码速度对于软件无线电有着重要的意义。本文的目的就是通过对译码程序结构优化,来提高DSP芯片执行VA算法的速度。

  1 维特比译码器

  首先,需要定义两个将在本文中用到的术语:

  输入帧--每次输入译码器的比特;

  输出帧--对应一个输入帧,译码器输出的比特。

  图1所示是卷积码译码器(VA算法)的一种典型结构。

  以(2,1,7)卷积码为例(输入帧含2比特,输出帧为1比特),来说明译码器的三个主要部分。

  1.1支路度量计算单元(BMG)

  计算当前输入帧对应的128条支路的路径度量值,并将其存人支路度量存储单元(BMM)。

  1.2加比选单元(ACS)

  将支路度量值与相连的前面的路径度量值相加得到延伸后的新路径的度量值;比较连接在同一个状态上的两条新路径的度量值;选择其中度量值较小的那条路径(幸存路径),并将它的度量值存储到新路径度量存储器(SM)中,幸存路径值(对应编码状态的输入比特)存储到路径存储器(PM)中。

  1.3幸存路径计算单元

  找到64条幸存路径中度量值最小的一个(最大似然路径),通过回溯操作(Traceback)在PM中找出该路径对应的所有输入比特,依次输出即为译码结果。

  每输出一帧,都对应着一次支路单元计算和64次ACS操作。ACS操作在总的运算时间里占了很大的比例。程序优化的主要工作就是设法减少每个ACS操作所需要的时钟周期数。

  2 TMS320C6000 DSP芯片的特点

  TMS320C6000系列DSP是基于TMS320C6000平台的32位浮点DSP处理器。它包含两个子系列:用于定点计算的TMS320C62x系列和用于浮点计算的TMS320C67x系列TMS320C6000系列CPU结构如图2所示。时钟频率最高可达到250MHz。该系列DSP包含两个通用的寄存器组A和B,每组有16个32位的寄存器。芯片内含8个运算功能单元:两个乘法器(.M1和.M2);六个算术逻辑单元(.L1.L2.S1.S2.D1.D2)。所有单元都能独立并行操作。以TM320C6701为例,它的工作频率最高为167MHz,最快速度可达8×167=1336MIPS。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论