用于图像处理器的并行Turbo译码方法

文档序号:7542406阅读:221来源:国知局
用于图像处理器的并行Turbo 译码方法
【专利摘要】本发明提出一种用于图像处理器的并行Turho译码方法。包括以下步骤:接收待处理编码数据,并将编码数据分为多个编码块,其中,每个编码块包括前向状态变量和后向状态变量;对前向状态变量和后向状态变量进行并行递推计算,以获得遍历网格的多个状态的变量值;根据遍历网格的多个状态的变量值获得多个比特的对数似然比信息;以及对多个比特的对数似然比信息进行迭代运算直至满足预设条件时,输出译码序列。根据本发明实施例的方法,通过Turbo译码的并行性和图像处理器的多核特性,实现了译码的稿吞吐速率,同时保证了译码的误比特率性能。
【专利说明】用于图像处理器的并行Turbo译码方法
【技术领域】
[0001]本发明涉及电子信息【技术领域】,特别涉及一种用于图像处理器的并行Turbo译码方法。
【背景技术】
[0002]1993年,C.Berrou等人提出了 Turbo码的编译码方案,打破了将截止速率作为可靠通信速率门限的观念,误比特率达到了接近Shannon极限的性能。Turbo码的提出,使人们更关注基于概率的软判决迭代译码方法。由于Turbo码接近Shannon极限的误比特率性能,它被广泛用于无线通信系统中。
[0003]由于Turbo码的译码使用软输入软输出(SISO)译码器,需要迭代译码、交织和解交织的过程,导致了较大的译码延时。随着下一代移动通信系统的飞速发展,Turbo码的现有译码方法已渐渐不能满足高吞吐量、低时延的要求。
[0004]当前研究和采用比较多的Turbo译码加速方法是在FPGA和ASIC平台上设计并行化的Turbo译码电路。基于FPGA/ASIC的Tutoo译码方法虽然能够显著提高译码吞吐速率,满足通信系统实时性要求,但电路灵活性差,通常难以适用于多种体制、多种参数并存的无线通信系统需求,而且开发周期长,维护和升级成本较高。而随着基于通用处理器(GeneralPurpose Processor-GPP)的软件无线电(Software Radio-SR)技术的不断发展,越来越多的研究开发人员考虑在GPP平台上实现和优化Turbo译码算法,其中GPU就是一种很好的GPP备选平台。GPP原本用于图像计算,随着科技的发展,GPU逐渐开始用于通用计算目的,即所谓的GPGPU (General Purpose GPU)。利用GPU的多核特性实现Turbo译码的并行,不但能够满足实时性要求,而且具有很高的灵活性,易于修改和维护,升级成本低。因此,从GPP-SR应用的角度看,相比FPGA和ASIC,用GPU实现Turbo译码并行化是灵活性更高、升级维护更方便的实现方案。
[0005]CUDA (Compute Unified Device Architecture),是一种由 NVIDIA 推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。它包含了 CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。开发人员可以使用C语言为CUDA架构编写程序,通过核函数(kernel)定义各线程操作,通过多线程并发执行达到超高计算性能。
[0006]支持CUDA的GPU包含多个多核流处理器(stream multiprocessor, SM),每个SM内含8个单指令多数据流(SIMD)的核。CUDA将多个线程划分为线程块(block),每32个warp成一个线程束(warp)。如果warp内的32个线程都执行同样的指令,那么32个操作可以同时进行,并在4个指令周期内完成。访问存储器经常会造成线程操作的延迟等待,GPU通过切换执行不同warp来隐藏访存造成的延时。GPU可使用的存储器有全局存储器、共享存储器、常量存储器和寄存器。后三种存储器位于片上,能够提供快速访问。其中每个线程可以有各自独立的寄存器,而共享存储器的数据可被一个block内的线程共享,从而实现线程通信。每个block的共享存储器分为16个bank,数据依次存储在这些bank中。当不同的线程访问同一个bank中的数据时,会发生bank冲突,造成等待延时。常量存储器大多情况下被用来存储不变的只读数据。由于GPU的片上存储器资源十分有限,因此合理地分配存储器来最小化访存延时显得尤为重要。
[0007]目前关于Turbo译码器的GPU实现的研究较少,且大都基于较早的GPU硬件平台,计算能力为1.X,并行方法和性能都受到了一定的限制,例如Wu, M., Yang Sun, Cavallaro,J.R., " Implementation of a3GPP LTE turbo decoder accelerator on GPU, " SignalProcessing Systems(SIPS),2010IEEE Workshop on, vol., n0., pp.192-197,6_80ct.2010中使用的GPU型号是NVIDIA Tesla C1060,其计算能力是1.3。

【发明内容】

[0008]本发明的目的旨在至少解决上述的技术缺陷之一。
[0009]为此,本发明的目的在于提出一种用于图像处理器的并行Turbo译码方法。
[0010]为达到上述目的,本发明的实施例提出一种用于图像处理器的并行Turbo译码方法,包括以下步骤:接收待处理编码数据,并将所述编码数据分为多个编码块,其中,每个编码块包括前向状态变量和后向状态变量;对所述前向状态变量和后向状态变量进行并行递推计算,以获得遍历网格的多个状态的变量值;根据所述遍历网格的多个状态的变量值获得多个比特的对数似然比信息;以及对所述多个比特的对数似然比信息进行迭代运算直至满足预设条件时,输出译码序列。
[0011]根据本发明实施例的方法,通过Turbo译码的并行性和图像处理器的多核特性,实现了译码的稿吞吐速率,同时保证了译码的误比特率性能。
[0012]在本发明的一个实施例中,所述接收待处理编码数据,并将所述编码数据分为多个编码块之后还包括:通过保护机制对所述前向状态变量和后向状态变量进行保护。
[0013]在本发明的一个实施例中,所述保护机制包括前次迭代值初始化法、双训练窗口法或双滑动窗训练法。
[0014]在本发明的一个实施例中,对所述每个编码块的前向状态变量和后向状态变量进行并行递推计算通过N个分组线程实现,其中,N为正整数。
[0015]在本发明的一个实施例中,所述通过N个分组线程对所述每个编码块的前向状态变量和后向状态变量进行并行递推计算,进一步包括:通过N/2个分组线程对所述前向状态变量进行并行递推计算;以及通过剩余N/2个分组线程对所述后向状态变量进行并行递推计算。
[0016]在本发明的一个实施例中,所述N个分组线程对所述每个编码块的前向状态变量和后向状态变量进行并行递推计算中每个线程运算互不干扰。
[0017]在本发明的一个实施例中,所述对数似然比信息通过如下计算,所述公式
【权利要求】
1.一种用于图像处理器的并行Turbo译码方法,其特征在于,包括以下步骤: 接收待处理编码数据,并将所述编码数据分为多个编码块,其中,每个编码块包括前向状态变量和后向状态变量; 对所述前向状态变量和后向状态变量进行并行递推计算,以获得遍历网格的多个状态的变量值; 根据所述遍历网格的多个状态的变量值获得多个比特的对数似然比信息;以及 对所述多个比特的对数似然比信息进行迭代运算直至满足预设条件时,输出译码序列。
2.如权利要求1所述的用于图像处理器的并行Turbo译码方法,其特征在于,所述接收待处理编码数据,并将所述编码数据分为多个编码块之后还包括: 通过保护机制对所述前向状态变量和后向状态变量进行保护。
3.如权利要求2所述的用于图像处理器的并行Turbo译码方法,其特征在于,所述保护机制包括前次迭代值初始化法、双训练窗口法或双滑动窗训练法。
4.如权利要求1所述的用于图像处理器的并行Turbo译码方法,其特征在于,对所述每个编码块的前向状态变量和后向状态变量进行并行递推计算通过N个分组线程实现,其中,N为正整数。
5.如权利要求4 所述的用于图像处理器的并行Turbo译码方法,其特征在于,所述通过N个分组线程对所述每个编码块的前向状态变量和后向状态变量进行并行递推计算,进一步包括: 通过N / 2个分组线程对所述前向状态变量进行并行递推计算;以及 通过剩余N/2个分组线程对所述后向状态变量进行并行递推计算。
6.如权利要求4所述的用于图像处理器的并行Turbo译码方法,其特征在于,所述N个分组线程对所述每个编码块的前向状态变量和后向状态变量进行并行递推计算中每个线程运算互不干扰。
7.如权利要求1所述的用于图像处理器的并行Turbo译码方法,其特征在于,所述对数似然比信息通过如下计算,所述公式为,
Λ (.0 = IHHX [fV, ^ J , ) + ^ ,(.Sk—j.,S^ ) -f ,:1,(,? )j —[?f — ι{Λ1.-1) +十 (?)!Η—τ
-二 mη-K Ai(Xik) — IiiiRX Λ"K)..S',S 其中,Λ(4)为对数似然比信息,a (Sk^1)为前向状态变量,Yk(Sk^17Sk)为sk_jp sk之间的分支度量,i3k(sk)为后向状态变量,S+为是有序偶(?+ sk)的子集即信息比特4 =1的状态子集,s_为信息比特4 二0的状态子集,4为信息比特,A1(A)为第i个比特为I的概率,Λη(χ;)为第i个比特为O的概率。
【文档编号】H03M13/29GK103475380SQ201310404408
【公开日】2013年12月25日 申请日期:2013年9月6日 优先权日:2013年9月6日
【发明者】汪玉, 陈翔, 朱继, 温子煜, 杨华中 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1