掌桥专利:专业的专利平台
掌桥专利
首页

一种Turbo码译码方法

文献发布时间:2024-04-18 19:53:33


一种Turbo码译码方法

技术领域

本发明属于通信编译码技术领域,涉及一种Turbo码译码方法。

背景技术

自1993年Turbo码的论文发表以后,由于其接近Shannon极限的优异译码性能在编码界引起了轰动。从早期的3G,到如今正在广泛应用的4G,以及最近正在激烈讨论中的5G备选编码方案,可以说Turbo码在整个移动通信的发展中占据着举足轻重的地位。

Turbo码优异的性能源自于它独特的编码结构和迭代译码的思想。Turbo码的编码器主要由两个递归系统卷积码分量编码器、交织器、删余矩阵和复接器组成。如附图1所示。

与Turbo码的编码相比较,Turbo码的译码过程就显得较为复杂。Turbo译码方法主要有基于最大后验概率(MAP)的软输出算法和软输出Viterbi(SOVA)算法两大类。MAP类算法还包括Log-MAP和Max-Log-MAP。Log-MAP算法是将标准MAP算法取对数运算,使乘除法运算变成加减法运算,在硬件实现时可以大大简化,译码性能与MAP算法相同,Max-Log-MAP算法对Log-MAP算法进一步简化,译码性能有所下降。因为Log-MAP和Max-Log-MAP算法复杂度较低且更适合并行计算,与FPGA等超大规模集成电路的优势相符,所以工程实现中基本采用这两种译码算法。

附图2为Turbo码的迭代译码结构,译码器工作过程简单介绍如下,其中k表示时间索引,数据上标或者下标中p代表并行数据,1和2代表并行的第几路数据。

串并转换:将接收到的串行数据序列转换为并行的信息序列x

迭代计算:此步骤是Turbo码译码过程的关键,包括改进型Max-Log-Map在内的译码算法都应用于此步计算中。将经过串并转换后的x

判决输出:达到预定的迭代次数后,对子译码器2产生的似然值输出Le

Log-MAP算法中,当Turbo码编码器中的寄存器个数为M个时,译码器中存在2

发明内容

(一)发明目的

本发明的目的是:为了保证Turbo码的强纠错性能的同时尽可能降低硬件实现复杂度,本发明将现有Turbo码译码方法中普通的串行结构进行改进,提出一种时延低、存储资源少的改进型Turbo码译码方法。

(二)技术方案

为了解决上述技术问题,本发明提供一种Turbo码译码方法,其包括以下步骤:

S1:计算分支度量;

S2:计算前向状态度量和后向状态度量;

S3:计算信息比特的后验概率对数似然比;

S4:计算外部信息;

S5:硬判决。

其中,步骤S1中,计算分支度量γ

式中:k为时间索引,状态转移栅格图中的任一个路径为e,r

其中,步骤S1中,信道置信度定义为

其中,步骤S2中,计算前向状态度量A

式中:s表示k时刻网格图的状态,

其中,步骤S3中,计算信息比特的后验概率对数似然比Le

式中:

其中,步骤S4中,计算外部信息La

式中:La(μ

其中,步骤S5中,按照步骤S1~S4迭代计算,达到设定的迭代次数后,利用Le

至此,译码结束。

其中,步骤S3中,计算信息比特的后验概率对数似然比过程中的max﹡(·)运算定义如下:

mnx*(f(e))=ln(Σe

式中f(e)泛指任意的函数。

其中,max﹡(·)在运算中有两种变形情况:

(1)对于两个变量x和y的情况,有:

max*(x,y)=ln(e

=max(x,y)+f

式中,max(x,y)为取x和y中的最大值的运算,f

(2)对于多个变量的情况,由Log-MAP算法用递归的形式实现max﹡(·)的计算,定义:

计算得到S

将上述各式中的max﹡(·)简化为取最大值的运算,忽略函数f

S

(三)有益效果

上述技术方案所提供的Turbo码译码方法,具有以下有益效果:

(1)复杂度:改进型Max-Log-MAP算法与Log-MAP算法相比,存储资源消耗大大降低,而与传统Max-Log-MAP算法相比只多一个一维查找表。

(2)性能:对以上三种算法进行Matlab仿真:调制方式为BPSK,帧长选312,码率为1/5,随即交织,AWGN信道,迭代次数选8次。结果表明,改进型Max-Log-MAP算法的性能接近Log-MAP算法,而传统Max-Log-MAP算法性能要比Log-MAP算法降低0.5~0.8dB。

附图说明

附图1为典型的Turbo码编码结构;

附图2为Turbo码的迭代译码结构;

附图3为8个变量情况下传统的Log-MAP算法实现框图;

附图4为8个变量情况下改进型Max-Log-MAP算法实现框图;

附图5为Log-MAP、传统Max-Log-MAP以及改进型Max-Log-MAP算法性能仿真图。

具体实施方式

为使本发明的目的、内容和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

本发明基于Log-MAP算法进行分支度量、前后向状态度量、信息比特的后验概率对数似然比以及外部先验信息的计算,最后进行硬判决完成译码。对于其中的max﹡(·)运算,对只具有2个输入变量的按Log-MAP算法进行精确计算,对具有多个输入变量的按Max-Log-MAP算法简化为取最大值的max运算,这样两者相融合,能够达到复杂度低、性能损失极小的效果。

总结来说,改进型Max-Log-MAP译码算法有针对性地改进Turbo译码计算中间参数过程中的局部步骤,达到复杂度与性能的最优化解,其核心思想有如下两点:

a、对只具有2个输入变量的max﹡(·)运算进行精确计算。

b、对具有多个输入变量的max﹡(·)运算简化为取最大值的max运算。

具体地,本实施例Turbo译码方法将各种软信息在两个子译码器之间不断迭代传递,达到一定迭代次数后,对最终输出的软信息就行硬判决就能得到原始信息比特,主要包括以下步骤:

S1:计算分支度量;

S2:计算前向状态度量和后向状态度量;

S3:计算信息比特的后验概率对数似然比;

S4:计算外部信息;

S5:硬判决。

本实施例Turbo译码方法采用改进型Max-Log-MAP译码算法进行。

步骤S1中,计算分支度量γ

式中:k为时间索引,状态转移栅格图中的任一个路径为e,r

步骤S2中,计算前向状态度量A

式中:s表示k时刻网格图的状态,

步骤S3中,计算信息比特的后验概率对数似然比Le

式中:

步骤S4中,计算外部信息La

式中:La(μ

步骤S5中,按照步骤S1~S4迭代计算,达到设定的迭代次数后,利用Le

至此,译码结束。

在上述运算中,计算信息比特的后验概率对数似然比过程中的max﹡(·)运算定义如下:

max*(f(e))=ln(Σe

式中f(e)泛指任意的函数。通常可对上述max﹡(·)操作进行变形:

(1)对于两个变量(x和y)的情况,有:

max*(x,y)=ln(e

=max(x,y)+f

式中,max(x,y)为取x和y中的最大值的运算,f

(2)对于多个变量的情况,传统的Log-MAP算法可以用递归的形式实现max﹡(·)的精确计算。定义

假设已经计算得到S

如果将上述各式中的max﹡(·)操作均简化为取最大值的运算,相当于忽略函数f

S

假设Turbo码编码器中使用M=3个寄存器,用传统的Log-MAP算法进行译码,计算信息比特的后验概率对数似然比需要进行2

本文提出的改进型Max-Log-MAP算法,即在计算信息比特的后验概率对数似然比Le

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

技术分类

06120116337533