低路径延迟的LTETurbo码并行分块译码方法

文档序号:7804489阅读:227来源:国知局
低路径延迟的LTE Turbo码并行分块译码方法
【专利摘要】本发明公开了一种低路径延迟的LTE?Turbo码并行分块译码方法,主要解决传统的LTE?Turbo码并行分块译码方法中交织过程路径延迟较大的问题。其实现步骤包括:(1)将解复用后的信息流送入软输入软输出译码器,(2)将输出信息流中的每个码块分成n个迭代单元,对其进行地址交织,(3)预计算迭代单元的初始地址,利用初始地址计算每个迭代单元的交织地址,(4)将交织后的信息反馈给软输入软输出译码器,对反馈信号依次进行一次迭代和二次迭代,(5)对二次迭代后结果解交织,并对解交织的结果判决后译码输出。本发明减小了路径延迟和存储资源消耗,可用于LTE系统。
【专利说明】低路径延迟的LTE Turbo码并行分块译码方法
【技术领域】
[0001]本发明属于无线通信领域,涉及LTE Turbo码的并行分块译码方法,可用于长期演进LTE系统。
【背景技术】
[0002]近年来,基于LTE标准的Turbo译码的高速FPGA实现得到广泛关注。随着通信传输速率的不断提高,传统的串行译码已不能满足系统吞吐率的要求,并行译码算法越来越引起工程领域的重视,其中交织技术是LTE标准的Turbo译码器中并行译码的关键技术之一。二次置换多项式交织器QPP因其“无冲突”并行内存访问的优势而广泛应用于3GPPLTE Turbo码,业内学者和技术人员一直不懈努力,寻找保证并行译码的吞吐率不变的条件下,占用存储资源总和少,同时减少交织器的路径延迟的交织方法。
[0003]传统的二次置换多项交织器的实现方法主要有以下两种:基于查找表的方法和即时计算的方法。基于查找表方法最大的缺陷是占用大量的芯片面积,尤其是对于LTE这样支持不同块长的系统,需要把每一种块长的交织地址都存储下来,这样占用的资源是非常庞大的,甚至超过了译码器其他模块占用的资源总和。即时计算的方法,要保证并行译码的吞吐率不变,就要使地址计算单元工作在一个更高的时钟,这样做会增加硬件的功耗,同时也对硬件电路本身的设计提出更高的要求。
[0004]Takeshita 等人在“ New deterministic interleaver designs for turbo codes”第一次提出二次置换多项式交织器。2010年,Lee等人在“Architecture design of QPPinterleaver for parallel turbo decoding”提出了一种并行迭代结构的二次置换多项式交织器。这种二次置换多项式交织方法可以保证每个译码处理单元在同一时刻访问不同的存储器,所以称为无冲突交织器。
[0005]Lee等人提出的这种并行迭代结构的二次置换多项式交织器,无需预计算和存储交织地址,减小了译码器芯片面积,同时也无需提高交织地址计算单元的工作时钟。虽然在一定程度上增加了交织器的复杂度,但是所带来的存储资源的增加相对于整个译码器来说是很小的,而且这种并行迭代结构可以灵活地支持各种不同的块长,因而非常适用于LTE系统。但是,由于在一个时钟周期内,η个迭代单元并非真正同时工作的,最后一个迭代单元要等前η-l个迭代单元处理完毕后才开始计算,这样随着分块数的增加,地址计算单元的路径延迟也会随之增大。由于地址计算单元是交织器的关键单元,地址计算单元的路径延迟造成整个LTETurbo码并行分块译码的路径延迟也增加。

【发明内容】

[0006]本发明的目的在于针对已有技术的不足,提出一种低路径延迟的LTE Turbo码并行分块译码方法,以降低交织的路径延迟,进而降低整个译码过程的路径延迟。
[0007]实现本发明的技术思路是:本发明设计的Turbo译码方法,包括以下过程:将解复用后的信息流送入软输入软输出译码器,将输出信息流中每个码块分成η个迭代单元,对其进行地址交织:预计算迭代单元的初始地址,利用初始地址计算每个迭代单元的交织地址;将交织后的信息反馈,完成一次迭代,然后进行二次迭代,将结果解交织,最后对解交织的结果判决后译码输出。其具体实现过程如下:
[0008]I)对输入到译码器中的信息流进行解复用,得到系统比特信息流a、第一校验比特信息流b和第二校验比特信息流c这三个信息流;
[0009]2)将所述的三个信息流分别存储到RAM中,即将系统比特信息流a存储到第一存储器RAMl,将第一校验比特信息流b存储到第二存储器RAM2,将第二校验信息流c存储到第三存储器RAM3 ;
[0010]3)将软输入软输出译码器的先验信息I初始化为零,即I = 0,用软输入软输出译码器从RAMl中读取系统比特信息流a,从RAM2中读取第一校验比特信息流b ;
[0011]4)软输入软输出译码器在读取数据的同时进行后向度量及和前向度量
的迭代,以及对数似然比信息L (Uk)的计算,完成一次迭代的前半部分迭代,其中,Uk为编码器输入的比特,s是长期演进标准中编码器的Trellis图上的状态节点,Trellis图用来表示编码输入信号的状态转移,其在编码过程中得到;
[0012]5)将软输入软输出译码器输出的对数似然比信息L (Uk)减去本次迭代的先验信息I得到息流;
[0013]6)对步骤5)得到的信息流进行交织:
[0014]6a)将信息流中每一个长度为D的码块作为一整块数据,将长度为D的码块分成η个长度为W的子块;对每一个子块分别进行迭代计算交织地址,即将每一个子块定义为一个迭代单元,计算第P个子块中的第i个位置处的信息地址为X = i+pW,交织后的地址为Π (X),其中,D为Turbo码的码长,O≤P < n,0≤i < W,p与i都取整数;
[0015]6b)令第P个子块中的第i个位置处的信息地址X分别取0,W,2W,…,(n-1) W,预计算每个迭代单元的初始值为:n(0),n(W),n(2W),...,n((n-l)W),并存储到RAM中,计算公式如下:
[0016]Π (X) = (fj.x+f2.x2)modD,
[0017]其中D是码长,和f2是码长D确定的两个数值不同的交织器参数,其数值可由3GPP LTE标准Turbo码内交织器参数表获得;
[0018]6c)由步骤6b)中得到的迭代单元初始值Π (O),计算迭代单元O中X = I位置处的信息交织后的地址π (I),由π(1)计算X = 2位置处的信息交织后的地址Π (2),依次,最后计算出X = W-1位置处的信息交织后的地址n(w-1),即计算出交织地址:Π (I),Π (2),Π (3),...,Π (W-1),计算公式如下:
[0019]Π (χ+1) = Π (x)+g(x)modM,
[0020]其中,g(x)的计算公式如下:
[0021]g(x) = f1+f2+2f2.x,
[0022] 6d)对于每一个迭代单元由本迭代单元的初始值,重复步骤6c),分别计算每个迭代单元中的信息交织后地址,即计算出以下的交织地址:
[0023]Π (2W+1),Π (2W + 2),...,Π (3W-1),...,Π ( (n-1) W+1) , Π ( (n-1)W+2),...,Π (nff-1),其中,每个迭代单元计算过程是同时进行的;
[0024]7)将地址交织后的信息反馈给软输入软输出译码器的输入端,作为新的先验信息1,并从第三存储器RAM3中读取第二校验比特信息C,进行一次迭代的后半部分迭代;
[0025]8)重复步骤4)的迭代过程,即完成一次迭代的后半部分迭代;后半轮迭代完成后即完成一次迭代过程,输出对数似然比信息L(Uk);
[0026]9)用步骤8)中输出的对数似然比信息L(uk),减去本次迭代的先验信息1,得到的?目息流;
[0027]10)对步骤9)得到的信息流进行解交织,将解交织后的信息流反馈给软输入软输出译码器的输入端,作为下一次迭代的先验信息;
[0028]11)重复步骤4)~10),进行二次迭代译码过程,当二次迭代次数到达设定的最大迭代次数h时,对软输入软输出译码器输出的对数似然比信息直接进行解交织,其中,最大迭代次数h由译码输出端所要求的错误概率Pe的大小来确定;
[0029]12)对解交织后的信息流中每一个比特y分别进行判决,当y-δ >0时,信息比特判为y = 1,当y- S < O时,信息比特判为y = O ;将判决后的信息比特y按照判决前的排列顺序排列,得到判决后的信息流,即是Turbo译码输出,其中δ为判决门限,由采用的编码方式确定。 [0030]本发明具有如下优点:
[0031]I)本发明采用预计算迭代单元初始地址的方法,避免了传统的Turbo码并行分块译码中子块迭代单元之间的信息传递,实现了子块迭代单元真正的同时并行工作,减小了交织器的路径延迟。
[0032]2)本发明预计算迭代单元初始地址,对于η个迭代单元,只需存储每个迭代单元的初始值,带来的存储资源仅增加了 η倍,相对于整个译码器来说,存储资源的消耗是很小的。
【专利附图】

【附图说明】
[0033]图1是本发明的实现流程图;
[0034]图2是本发明的Turbo译码框图;
[0035]图3是本发明中将长度为40的码块分为5个长度为8的子块示意图;
[0036]图4是本发明中以码块长度为40的Turbo码为例,计算出的每个子块的交织地址图;
[0037]图5是本发明的误比特率性能仿真图;
【具体实施方式】
[0038]下面通过附图和实施例,对本发明的技术方法作进一步的描述。
[0039]参照图1和图2,本发明的具体实现步骤如下:
[0040]步骤1:对输入到译码器中的信息流进行解复用。
[0041]本实施例以1/3码率的Turbo码为例,首先由译码器检测是否有数据输入,当检测到有数据输入时,对输入的信息流进行解复用,解复用得到三个信息流,分别是:系统比特信息流a、第一校验比特信息流b、第二校验比特信息流C。
[0042]步骤2:将解复用后的三个信息流分别存储到RAM中。
[0043]利用有限状态机的辅助,将解复用后的三个信息流分别存储到RAM中,即将系统比特信息流a存储到第一存储器RAMl,将第一校验比特信息流b存储到第二存储器RAM2,将第二校验信息流c存储到第三存储器RAM3 ;
[0044]步骤3:软输入软输出译码器读取RAMl和RAM2中的数据。
[0045]将软输入软输出译码器的先验信息I初始化为零,即I = 0,用软输入软输出译码器从第一存储器RAMl中读取系统比特信息流a,从第二存储器RAM2中读取第一校验比特信息流b。
[0046]步骤4:利用软输入软输出译码器读取的数据进行对数似然比信息L(Uk)计算,进行一次迭代的前半部分迭代。
[0047]4.1)将图2中开关状态设置为如下状态:开关Sl、s2、s3、S4置O状态,开关s5、S6断开;
[0048]4.2)进行后向度量/? (.ν)的迭代:
~ ?ο, ^ = O
[0049]4.2a)设置迭代初始值:
【权利要求】
1.低路径延迟的LTE Turbo码并行分块译码方法,包括如下步骤: 1)对输入到译码器中的信息流进行解复用,得到系统比特信息流a、第一校验比特信息流b和第二校验比特信息流c这三个信息流; 2)将所述的三个信息流分别存储到RAM中,即将系统比特信息流a存储到第一存储器RAMl,将第一校验比特信息流b存储到第二存储器RAM2,将第二校验比特信息流c存储到第三存储器RAM3 ; 3)将软输入软输出译码器的先验信息I初始化为零,即I= 0,用软输入软输出译码器从RAMl中读取系统比特信息流a,从RAM2中读取第一校验比特信息流b ; 4)软输入软输出译码器在读取数据的同时进行后向度量戾(.、.)和前向度量式(乃的迭代,以及对数似然比信息L (Uk)的计算,完成一次迭代的前半部分迭代,其中,Uk为编码器输入的比特,s是长期演进标准中编码器的Trellis图上的状态节点,Trellis图用来表示编码输入信号的状态转移,其在编码过程中得到; 5)将软输入软输出 译码器输出的对数似然比信息L(Uk)减去本次迭代的先验信息I得到信息流; 6)对步骤5)得到的信息流进行交织: 6a)将信息流中每一个长度为D的码块作为一整块数据,将长度为D的码块分成η个长度为W的子块;对每一个子块分别进行迭代计算交织地址,即将每一个子块定义为一个迭代单元,计算第P个子块中的第i个位置处的信息地址为X = i+pff,交织后的地址为Π (X),其中,D为Turbo码的码长,O≤?<11,0≤1<胃,?与1都取整数; 6b)令第P个子块中的第i个位置处的信息地址X分别取0,W,2W,…,(n-l)W,预计算每个迭代单元的初始值为:Π(0),n(W),n(2W),...,n((n-l)W),并存储到RAM中,计算公式如下:
Π (X) = (fj.x+f2.x2)modD, 其中D是码长,和f2是码长D确定的两个数值不同的交织器参数,其数值可由3GPPLTE标准Turbo码内交织器参数表获得; 6c)由步骤6b)中得到的迭代单元初始值Π(0),计算迭代单元O中X= I位置处的信息交织后的地址Π(1),由Π(1)计算X = 2位置处的信息交织后的地址Π(2),依次,最后计算出X = W-1位置处的信息交织后的地址n(w-1),即计算出交织地址:Π (I),Π (2),Π (3),...,Π (W-1),计算公式如下:
Π (χ+1) = Π (x)+g(x)modM, 其中,g(x)的计算公式如下: g(x) = f!+f2+2f2.x, 6d)对于每一个迭代单元由本迭代单元的初始值,重复步骤6c),分别计算每个迭代单元中的信息交织后地址,即计算出以下的交织地址:
Π (2W+1) , Π (2W + 2),..., Π (3W-1),..., Π ((n-1)W+1), Π ( (n-1)W+2),...,Π (nff-1),其中,每个迭代单元计算过程是同时进行的; 7)将地址交织后的信息反馈到软输入软输出译码器的输入端,作为新的先验信息1,并从第三存储器RAM3中读取第二校验比特信息C,进行一次迭代的后半部分迭代;8)重复步骤4)的迭代过程,即完成一次迭代的后半部分迭代;后半轮迭代完成后即完成一次迭代过程,输出对数似然比信息L(uk); 9)用步骤8)中输出的对数似然比信息L(uk),减去本次迭代的先验信息1,得到的信息流; 10)对步骤9)得到的信息流进行解交织,将解交织后的信息流反馈到软输入软输出译码器的输入端,作为二次迭代的先验信息; 11)重复步骤4)~10),进行二次迭代译码过程,当二次迭代次数到达设定的最大迭代次数h时,对软输入软输出译码器输出的对数似然比信息直接进行解交织,其中,最大迭代次数h由译码输出端所要求的错误概率Pe的大小来确定; 12)对解交织后的信息流中每一个比特y分别进行判决,当y_δ >0时,信息比特判为y = 1,当y- s <0时,信息比特判为y = O ;将判决后的信息比特y按照判决前的排列顺序排列,得到判决后的信息流,即是Turbo译码输出,其中δ为判决门限,由采用的编码方式确定。
2.根据权利要求1所述的低路径延迟的LTETurbo码并行分块译码方法,其中所述步骤4)中对后向度量及(.s.)进行迭代,按如下步骤进行: 4a)设置迭代初始值~βΜ⑷= J0,;

[-00,其他 4b)利用后向度量初始值反,⑷计算第M-1时刻后向度量的数值;由第M-1时亥IJ后向度量Λμ M的数值计算第M-2时刻后向度量及f—2⑷的数值,依次前推,最后计算出第O时刻后向度量反(λ.)的数值,计算公式如下:
A I (、') =(Λ is ) + 7k I (.、,)), 其中,公式中k依次取M,M-1,…,I ;M为度量值的最大时刻;8和^是Trellis图上的 两个不同的状态节点,s为源节点,s'为目的节点;为分支度量,数值由Trellis图上状态节点s和s'确定;max*(x, y)为二元Jacobi对数函数, max* (x, y) = max (x, y)+log (l+e_|x_yl); 4c)将计算结果存储到RAM中。
3.根据权利要求1所述的低路径延迟的LTETurbo码并行分块译码方法,其中所述步骤4)中对前向度量4 ?.ν)的进行迭代,按如下步骤进行: 4d)设置迭代初始值= S ;

[-GO,其他 4f)利用前向度量初始值5。(4计算第I时刻前向度量兩(O的数值;利用第I时刻前向度量4 (s)的数值计算第2时刻前向度量冬(s)的数值,依次后推,最后计算出第M时刻前向度量Α, (.ν)的数值,计算公式如下:?/,.(.、') = m,x* (? I (.、')+n ('、',,.、.)), 其中,公式中k依次取1,2,3,…,M ;M为度量值的最大时刻;8和s'是Trellis图上的两个不同的状态节点,s为源节点,s'为目的节点;尺―为分支度量,数值由Trellis图上状态节点s和s'确定;max*(x, y)为二元Jacobi对数函数, max* (X,y) = max (x, y) +log (l+e_|x_yl)。
4.根据权利要求1所述的低路径延迟的LTE Turbo码并行分块译码方法,其中所述步骤4)中计算对数似然比信息L (Uk),按如下步骤进行: 4g)令k= 1,利用第I时刻的后向度量及(4、第O时刻的前向度量运⑴计算k= I时刻的对数似然比信息L (Uk),计算公式如下:
L{uk) = (max* (ak_, (s) + ft (s\s) + fik ⑷)—⑷ + fk (s\s) + β,⑷), 其中,第一项对应Trellis图上Uk = I的分支,第二项对应Trellis图上Uk = O的分支;s和s'是Trellis图上的两个不同的状态节点,s为源节点,s'为目的节点 为分支度量,数值由Trellis图上状态节点s和s'确定;max*(x,y)为二元Jacobi对数函数; 4h)分别令1^ = 2,3,"《^-1^,重复步骤40,完成对数似然比信息1^(10的计算,其中,M为度量值的最大时刻。
【文档编号】H04L1/00GK103986557SQ201410222021
【公开日】2014年8月13日 申请日期:2014年5月23日 优先权日:2014年5月23日
【发明者】宫丰奎, 刘铭, 殷实, 王勇, 张南 申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1