CN1710815A - 非对数域高速最大后验概率Turbo译码方法 - Google Patents

非对数域高速最大后验概率Turbo译码方法 Download PDF

Info

Publication number
CN1710815A
CN1710815A CN 200510021016 CN200510021016A CN1710815A CN 1710815 A CN1710815 A CN 1710815A CN 200510021016 CN200510021016 CN 200510021016 CN 200510021016 A CN200510021016 A CN 200510021016A CN 1710815 A CN1710815 A CN 1710815A
Authority
CN
China
Prior art keywords
prime
real number
soft
siso
sigma
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 200510021016
Other languages
English (en)
Other versions
CN100454768C (zh
Inventor
赵宏宇
范平志
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southwest Jiaotong University
Xian Jiaotong University
Original Assignee
Southwest Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southwest Jiaotong University filed Critical Southwest Jiaotong University
Priority to CNB2005100210161A priority Critical patent/CN100454768C/zh
Publication of CN1710815A publication Critical patent/CN1710815A/zh
Application granted granted Critical
Publication of CN100454768C publication Critical patent/CN100454768C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明公布了一种数字通信差错控制并行级联卷积特博(Turbo)码的非对数域高速最大后验概率(MAP)译码方法。本译码方法使用单极性二进制信号{0,1}代替传统的双极性二进制信号{+1,-1}来实现状态转移概率测度的计算,从而得到一种非对数域的高速软输入软输出(SISO)迭代译码算法。采用这种新的软输入软输出(SISO)迭代译码算法,能够完全消除标准MAP迭代译码过程中所必需进行的大量指数和对数运算,因而可以极大地降低译码延时。该译码方法与标准的MAP译码方法相比较,具有相同的最优纠错性能;与基于对数域的LOG-MAP译码方法相比较,具有更快的译码速度,其译码时延非常接近LOG-MAP算法的近似方法MAX-LOG-MAP。

Description

非对数域高速最大后验概率Turbo译码方法
所属技术领域
本发明涉及数字通信系统中的纠错编译码方法,尤其是采用并行级联卷积Turbo码的数字通信系统中的最大后验概率(MAP)迭代译码方法。
背景技术
在数字通信系统中,尤其是无线数字通信系统中,纠错码对于保障可靠的通信、提高通信质量起着重要的作用。此外,纠错码还被广泛应用于降低计算机存储和运算系统中的误码率,以延长计算机无故障运行时间。
C.贝努,A.格拉维休仕(C.Berrou,A.Glavieux,et.al.)等人于1993年在″near Shannon limit error-correcting coding and decoding:Turbo codes,″Proc.1993 Int.Conf.Communication,pp.1064-1070,(“接近香农限的纠错编译码方案:Turbo码”,1993年国际通信大会论文集,第1064页至1070页)论文中首次提出Turbo(特博)码的编译码方法。标准Turbo码编码器是由两个1/2码率的递归系统卷积码(RSC,Recursive Systematic Convolutional code)编码器通过一个随机交织器并行并置而成,编码后的校验位经过穿孔删余处理后,从而产生不同码率的码字。由于两个RSC分量编码器RSC1和RSC2是通过并行的方式进行级联编码,所以这种Turbo码也被称之为并行级联卷积码(PCCC,Parallel Concatenated Convolutional Code)。Turbo码巧妙地将卷积编码与随机交织器结合在一起,实现了随机编码的思想。在解码处理时,Turbo码通过迭代译码来逼近最大似然译码:Turbo码在解码时采用了软输入软输出(SISO,Soft-Input Soft-Output)译码模块,它由两个SISO译码模块SISO0和SISO1串行级联组成;译码模块SISO0对分量码RSC0进行软输入软输出译码,产生关于信息序列中每一比特的似然比信息,并将其中的外信息(Extrinsic Information),即先验概率的似然比,经过交织处理以后作为SISO1在对分量码RSC1进行软输入软输出译码时的先验信息;译码模块SISO1对分量码RSC1进行软输入软输出译码,产生关于交织信息序列中每一比特的先验概率的似然比,并经过解交织处理后,作为下一次SISO0在对分量码RSC0进行软输入软输出译码时的先验信息;经过多次迭代,SISO0和SISO1的外信息将趋于稳定,最大后验概率的似然比渐近值逼近于整个码的最大似然译码。C.贝努等人的仿真研究表明,基于(1,21/37八进制)系统递归卷积(RSC)分量编码器的并行级联Turbo码,在编码分组长度为65536,编码码率为1/2时,迭代次数达到18次时,误码率下降到10-5以下系统所需的信噪比仅为0.7dB,达到了接近香农限的性能。因其优异的纠错性能,近些年来Turbo码一直成为纠错编码领域的一大热点,并获得了大量成果。其中一个主要的研究领域是围绕Turbo码迭代译码算法的研究工作。到目前为止,人们已经先后提出了差错控制性能最优的最大后验概率译码(MAP,Maximum APosteriori)算法(包括标准的BCJR算法,对数域上的LOG-MAP算法。
Turbo码虽然表现出了优异的系统性能,但Turbo码的译码算法所需要的较大的迭代译码计算量,导致了它的译码延时很大。因此,到目前为止,Turbo码还难以满足大多数实时通信系统的要求。
为了尽可能地降低Turbo码的译码延时,满足数字通信系统中的实时传输要求,不少文献和专利提出了各种方法来设法降低Turbo码的迭代译码延时。如:对数域LOG-MAP算法及其简化算法MAX-LOG-MAP、LOG-MAP与MAX-LOG-MAP混合算法、减少状态搜索的M-BCJR和T-BCJR算法、滑动窗SW-MAP算法、仅仅包括前向迭代的OSA算法、软输出Viterbi(SOVA,Soft-Output Viterbi Algorithm)算法、使用提前停止迭代准则的近似算法等译码算法。但是,除LOG-MAP算法以外,上述各种减少译码延时的方法都要以降低差错控制性能为代价。就目前能够检索到的文献研究成果而言,SOVA算法的译码时延最小,但差错控制性能最差。LOG-MAP算法与标准MAP算法在差错控制能力上基本相同,而它的译码延时比标准MAP算法减少了50%~60%。MAX-LOG-MAP算法以牺牲较多的差错控制能力为代价,将译码时延进一步降低到标准MAP算法的9%~12%,已经非常接近SOVA算法的译码时延。目前的专利以及文献主要集中于对数域的最大后验概率译码(LOG-MAP)算法的实现及其快速译码方法上,与本发明类似的基于标准MAP算法的非对数域的快速实现方法,至2005年5月8日止,在欧洲、美国和中国的专利文献中还未检索到。
发明内容
本发明的目的是提供一种非对数域高速最大后验概率Turbo译码方法,该方法可以大幅度降低Turbo码的译码延时并且保证Turbo码的译码可靠性。
本发明解决其技术问题,所采用的技术方案是:一种非对数域高速最大后验概率Turbo译码方法,该方法采用两个完全相同的软输入软输出(SISO)译码器对通信系统接收端解调器输出的信息比特实数观测值序列和校验比特实数观测值序列进行译码,每个软输入软输出(SISO)译码器内部包括前向迭代、后向迭代和外信息计算三个运算模块,其特点是:
(1)第j个(j=0,1)软输入软输出(SISO)译码器有三个实数输入信号序列,分别是指数信息比特实数观测值xk′=exp(Lcxk)、指数校验比特实数观测值yj,k′=exp(Lcyj,k)和信息比特先验概率似然比l(j+1)mod2,k,其中,xk是通信系统接收端解调器输出的第k个信息比特Xk的实数观测值,yj,k是第j(j=0,1)个系统递归卷积(RSC)分量编码器输入信息比特Xk时输出的校验比特Yj,k的实数观测值,Lc为信道可靠性测度,Lc=4/N0,N0为高斯白噪声(AWGN)的单边功率谱密度;
(2)第j个(j=0,1)软输入软输出(SISO)译码器有两个实数输出信号序列,分别是送到另一个软输入软输出(SISO)译码器的先验概率似然比lj,k和用作译码判决的后验概率似然比Λ(Xk),其中,Λ(Xk)=xk′l0,kl1,k,当Λ(Xk)≥1时,将Xk译为1,否则将Xk译为0;
(3)第j个(j=0,1)软输入软输出(SISO)译码器输出的关于第k个信息比特Xk的先验概率似然比为 l j , k = Σ s ′ α k - 1 ( s ′ ) γ k ( e ) ( Y s ′ ( 1 ) ) β k ( t s ′ ( 1 ) ) Σ s ′ α k - 1 ( s ′ ) γ k ( e ) ( Y s ′ ( 0 ) ) β k ( t s ′ ( 0 ) ) , 其中,当 Y s ′ ( 1 ) = 0 ( i = 0,1 ) 时,信息比特Xk的先验概率似然比的状态转移概率测度 γ k ( e ) ( Y s ′ ( i ) ) = 1 , 否则,当 Y s ′ ( i ) = 1 时, γ k ( e ) ( Y s ′ ( 1 ) ) = y j , k ′ ; 而前向迭代计算公式为
α k ( s ) = Σ s ′ Σ i α k - 1 ( s ′ ) γ k ( i , Y s ′ ( i ) ) Σ s Σ s ′ Σ i α k - 1 ( s ′ ) γ k ( i , Y s ′ ( i ) ) , (i=0,1),后向迭代计算公式为
β k ( s ) = Σ s ′ Σ i β k + 1 ( s ′ ) γ k + 1 ( i , Y t ( i ) ) Σ s Σ s ′ Σ i α k ( s ′ ) γ k + 1 ( i , Y s ′ ( i ) ) , (i=0,1)计算,其中,状态转移概率测度γk(i,Ym (i))的全部4种可能值按下表计算,即
    i  Ym (i)  求值步骤 γk(i,Ym (i))值
    0     0  v0←1     v0
    0     1  v1←yj,k     v1
    1     0  v2←xk′l(j+1)mod2,k     v2
    1     1  v3←v1v2     v3
本发明的有益效果是:采用单极性二进制信号{0,1)取代传统的双极性二进制信号{+1,-1)来表达状态转移概率测度,从而在不增加存储器需求的条件下,能够将译码器的输入(来自解调器的输出信号)转变成指数值作为软输入软输出(SISO)译码器的输入,因而在两个软输入软输出(SISO)译码器内部的迭代译码过程中,第k步前向或者后向迭代时,计算状态转移概率测度所需的运算量由标准MAP算法的多次乘法、加法和至少两次指数运算下降到两次乘法运算;此外,由于采用信息比特的先验概率的似然比而不是先验概率的对数似然比作为两个软输入软输出(SISO)译码器的外信息,辟免了标准MAP算法计算外信息所必须的对数函数运算,因此极大地提高了计算效率,降低了译码时延。并且,本发明的计算公式源于精确的最大后验概率公式推导,从理论上讲,不会引起差错控制性能的减低。
计算机仿真实验表明,本发明的MAP译码实现方法产生的译码时延只相当于标准MAP译码算法的15%左右,远远优于LOG-MAP算法并非常接近MAX-LOG-MAP算法的译码时延;该方法在任意帧长(N从100~80,000)条件下,无论是1/2码率还是1/3码率,都不会使差错控制性能减低。如果采用并行处理技术,译码时延将进一步减低,从而满足实时译码需要。该方法的另一个优点是不需要增加任何额外的存储器开销。
上述的软输入软输出(SISO)译码器输入的指数信息比特实数观测值序列xk′、指数校验比特实数观测值序列y0,k′和y1,k′是由通信系统接收端解调器输出的信息比特实数观测值序列xk、来自系统递归卷积(RSC)分量编码器0的校验比特实数观测值序列y0,k和来自系统递归卷积(RSC)分量编码器1的校验比特实数观测值序列y1,k经过指数运算得来,指数运算与解调运算操作分别采用流水线方式并行同步进行,运算结果(xk′、y0,k′和y1,k′)存入存储器保存,然后送入SISO译码器进行迭代译码。
采用并行同步方式进行指数运算,使得软输入软输出(SISO)译码器的输入信号在解调操作结束时即全部完成,因此不占用译码时间,使本发明的译码时延进一步降低。
上述指数信息比特实数观测值xk′=exp(Lcxk)以及指数校验比特实数观测值yj,k′=exp(Lcyj,k)中的指数函数exp(z),其中z=Lcxk或Lcyj,k,exp(z)的计算采用近似方法,即exp(z)=2p(t+1),其中p=floor(zlog2e),floor(zlog2e)表示“小于或等于zlog2e的最大整数”,而t=zlog2e-p,算式2p(t+1)通过将t+1的二进制表示的小数点移位来简单实现。
曲线拟合和译码仿真表明,指数函数的上述近似计算方法具有很好的拟合度并且完全不影响差错控制性能。由于该近似方法只需要进行取整运算、少量加减法和一次移位运算,使得与解调操作并行同步进行的指数运算的硬件实现非常简单,使得本发明的译码时延进一步降低。
上述信息比特Xk的先验概率的似然比lj,k的饱和限幅值取10~13比特,这是因为当信号与噪声的功率比值较大或者迭代译码次数较多时,可能导致lj,k向上溢出,因此必须进行限幅处理。仿真表明,上述限幅值不会造成差错控制性能减低。
以下结合附图和具体实施方式对本发明作进一步详细说明。
附图说明
图1为本发明实施例单个SISO译码器结构图
图2为本发明实施例编码器结构图
图3为本发明实施例并行级联双软输入软输出(SISO)译码器结构图
图4为本发明实施例与其它常见译码算法的译码时延直方图
图5为本发明实施例与其它常见译码算法的误译率曲线图
具体实施方式
实施例
本发明在具体实施时,其具体作法是:
图1示出,非对数域高速最大后验概率Turbo译码方法,由两个相同的软输入软输出SISO译码器,j(j=0,1)组成。在软输入软输出(SISO)译码器j中,包括前向迭代运算模块、后向迭代运算模块以及计算先验概率似然比模块。
对于第j个(j=0,1)软输入软输出(SISO)译码器,它有三个实数输入信号序列,分别是指数信息比特实数观测值xk′=exp(Lcxk)、指数校验比特实数观测值yj,k′=exp(Lcyj,k)和信息比特先验概率似然比l(j+1)mod2,k,其中,xk是通信系统接收端解调器输出的第k个信息比特Xk的实数观测值,yj,k是对应于第j(j=0,1)个系统递归卷积(RSC)分量编码器输入信息比特Xk时输出的校验比特Yj,k的实数观测值,由于xk为第k个信息比特Xk的解调信号,yj,k是第j(j=0,1)个系统递归卷积(RSC:Recursive Systematic Convolutional)分量编码器输入信息比特Xk时输出的校验比特Yj,k的解调信号,它们满足关系式如下:
xk=2Xk-1+ik                           (公式1)
yj,k=2Yj,k-1+qk,                     (公式2)
其中,Xk,Yj,k∈{0,1},ik,qk为高斯白噪声(AWGN)。若高斯白噪声的单边功率谱密度为N0,则相应的信道可靠性测度Lc=4/N0
每个软输入软输出(SISO)译码器有两个实数输出信号序列,一个是送到另一个软输入软输出(SISO)译码器的信息比特先验概率似然比lj,k,另一个用于译码判决的关于信息比特Xk的后验概率似然比Λ(Xk),其中
(公式3)
当Λ(Xk)≥1时,将Xk译为1,否则将Xk译为0。
在第j个(j=0,1)软输入软输出(SISO)译码器内部,前向迭代运算模块进行的计算由下面的前向迭代公式给出,即
(公式4)
α k ( s ) = Σ s ′ Σ i α k - 1 ( s ′ ) γ k ( i , Y s ′ ( i ) ) Σ s Σ s ′ Σ i α k - 1 ( s ′ ) γ k ( i , Y s ′ ( i ) ) (公式5)
k=1,2,...,N-1(N为帧长),s,s′∈{0,1,...,2M-1}而后向迭代运算模块由下面的后向迭代公式给出,即
β N ( s ) = 1 N , s = 0,1 , . . . , 2 M - 1 (公式6)
β k ( s ) = Σ s ′ Σ i β k + 1 ( s ′ ) γ k + 1 ( i , Y i ( i ) ) Σ s Σ s ′ Σ i α k ( s ′ ) γ k + 1 ( i , Y s ′ ( i ) ) (公式7)
k=N-1,N-2,...,1,s∈{0,1,...,2M-1},
其中,t表示当卷积码编码器送入信息比特i时,编码器状态转移到s′时的编码器初始状态。
在上述前向和后向迭代公式中,γk(i,Ym (i))表示状态转移概率测度。其中,Ym (i)表示在卷积码编码器状态处于m(m=s′或t)时,送入信息比特i以后编码器输出的校验比特,此处,i, Y m ( i ) ∈ { 0,1 } .
在第j个(j=0,1)软输入软输出(SISO)译码器内部,计算先验概率似然比模块执行的操作是根据前向迭代以及后向迭代运算模块得到的全部αk(s)和βk(s)值计算第k个信息比特Xk的先验概率似然比,计算公式如下:
l j , k = Σ s ′ α k - 1 ( s ′ ) γ k ( e ) ( Y s ′ ( 1 ) ) β k ( t s ′ ( 1 ) ) Σ s ′ α k - 1 ( s ′ ) γ k ( e ) ( Y s ′ ( 0 ) ) β k ( t s ′ ( 0 ) ) (公式8)
其中,状态ts′ (i)(i=0,1)是卷积码编码器处于状态s′时,送入信息比特i以后发生状态转移以后的状态,显然 t s ′ ( i ) ∈ { 0,1 , . . . , 2 M - 1 } .
以上公式中,状态转移概率测度γk(i,Ym (i))由表1计算,而先验概率似然比的状态转移概率测度γk (e)(Ys′ (i))由表2计算。
                               表1
    i   Ym (i)  求值步骤  γk(i,Ym (i))值
    0     0  v0←1     v0
    0     1  v1←yj,k     v1
    1     0  v2←xk′l(j+1)mod2,k     v2
    1     1  v3←v1v2     v3
         表2
 Ys′ (i) γk (e)(Ys′ (i))值
  0     1
  1     yj,k
为了减低硬件复杂度,进一步降低译码时延,将指数观测值xk′,y1,k′的计算与解调运算操作采用流水线方式并行同步进行,运算结果(xk、y0,k′和y1,k′)存入存储器保存,然后送入软输入软输出(SISO)译码器进行迭代译码。
为了避免真正地计算指数函数,采用以下近似算法实现指数运算。
exp ( z ) = e z = 2 z lo g 2 e = 2 p · 2 t ≈ 2 p ( t + 1 ) (公式9)
其中,p=floor(zlog2e),t=zlog2e-p,floor(zlog2e)表示:″小于或等于zlog2e的最大整数″。于是0≤t<1,有2t≈t+1。
采用公式9计算指数函数时,乘以2p的操作只需要进行小数点的移位,因此极大地降低了计算复杂性。
信息比特Xk的先验概率的似然比lj,k的饱和限幅值取10~13比特,这是因为当信号与噪声的功率比值较大或者迭代译码次数较多时,可能导致lj,k向上溢出,因此必须进行限幅处理。
下面更详细地给出本发明应用于UMTS以及3GPP推荐的8状态系统递归卷积(RSC)分量码构成的1/2码率并行级联Turbo码进行迭代译码的具体过程、译码结果、译码时延以及比特误码率曲线。
进行迭代译码前,需要用现有技术进行编码,其编码过程简述如下。
编码流程
图2示出,UMTS以及3GPP推荐的8状态系统递归卷积(RSC)分量码构成的1/2码率并行级联Turbo码的编码器结构图该结构图与标准的并行级联卷积Turbo码相同。图2中,RSC编码器0与RSC编码器1完全相同,其生成函数为UMTS以及3GPP推荐的(1,15/13八进制),即前馈支路的生成多项式为1+D+D3(15八进制),反馈支路的生成多项式为1+D2+D3(13八进制)。该RSC编码器共有8个状态,码率为1/2。
为了使总的码率为1/2,需要将每个RSC编码器输出的校验比特进行删余(puncturing)。本实施例采用的删余方法是删去每个RSC编码器输出的第偶数个比特,于是每个编码器输出的校验比特被删去一半,而两个RSC编码器的校验比特合起来与信息比特数相同,得到总的1/2码率。
信息比特流按帧进行编码和译码。长度为N的信息帧包含有N个信息比特。每帧数据进行编码前,先将两个RSC编码器0,1的初始状态设置为0。N个信息比特依次送入RSC编码器0,经过交织后的信息比特送入RSC编码器1,编码器输出经过偶删余的N个校验比特,加上N个信息比特,总共得到2N个比特,其中,前面N个比特为信息元,紧接着的N/2个比特为RSC编码器0输出的校验元,最后是RSC编码器1产输出的N/2个校验元,这2N个二进制信号经过BPSK(二进制移相键控)调制后送入AWGN(高斯白噪声)信道。
为了简明清晰地说明上述编码过程,下面用一个具体的示例来说明。
假定信息帧长N=10,待通信的10个信息比特组成的序列为
X=(X1,X2,X3,X4,X5,X6,X7,X8,X9,X10)=(0,1,1,0,0,0,1,0,1,0)
假定采用一种随机交织器,其交织映射如下所示:
1,2,3,4,5,6,7,8,9,10 7,2,4,8,1,3,9,5,10,6
则反交织映射为交织映射的反函数。
于是,经过交织器变换以后送入RSC编码器1的信息比特序列为
X′=(X7,X2,X4,X8,X1,X3,X9,X5,X10,X6)=(1,1,0,0,0,1,1,0,0,0)。
RSC编码器0产生的N个完整的校验比特是
Y0=(Y0,1,Y0,2,Y0,3,Y0,4,Y0,5,Y0,6,Y0,7,Y0,8,Y0,9,Y0,10)=(0,1,0,0,0,1,1,0,1,1)
RSC编码器1产生的N个完整的校验比特是
Y1=(Y1,1,Y1,2,Y1,3,Y1,4,Y1,5,Y1,6,Y1,7,Y1,8,Y1,9,Y1,10)=(1,0,0,0,1,1,1,1,1,1)
经过删余处理,最后在加上载波信号之前的2N个BPSK二进制信号时间序列是
C=(-1,1,1,-1,-1,-1,1,-1,1,-1,-1,-1,-1,1,1,1,-1,1,1,1)
迭代译码流程
图3给出了本实施例两个相同的SISO译码器联合工作的模块结构图。该结构图与标准MAP译码体制的主要区别是软输入软输出(SISO)译码器的输入与输出以及每个SISO译码器内部的译码方法。此外,与标准MAP译码体制相比,本实施例增加了并行同步计算指观测值模块,其功能是用公式9的近似计算方法将解调器匹配滤波器的输出的实数信号xk,yj,k转变为指数观测值xk′,yj,k′。
来自解调器输出端的实数信号xk,yj,k(j=0,1)首先经过并行同步指数计算,得到指数观测值xk′,yj,k′并送入存储器,然后将指数观测值xk′,yj,k′分解为两个序列,即(xk′,y0,k′)和(xm′,y1,m′),实数序列(xk′,y0,k′)送入软输入软输出(SISO)译码器0,而实数序列(xm′,y1,m′)送入软输入软输出(SISO)译码器1,其中xm′是xk′的交织序列,而xk′是xm′的反交织序列。两个软输入软输出(SISO)译码器进行迭代译码,软输入软输出(SISO)译码器0输出的先验概率似然比序列l0,k经过交织变换后送入软输入软输出(SISO)译码器1,而软输入软输出(SISO)译码器1输出的先验概率似然比序列l1,m经过反交织变换以后送入软输入软输出(SISO)译码器0。每输出一次完整的先验概率似然比序列lj,k(j=0,1且k=1,2,...,N),就完成了一次迭代。经过多次迭代以后,两个软输入软输出(SISO)译码器停止迭代,最后软输入软输出(SISO)译码器1输出后验概率似然比序列Λ(Xm)并进行译码判决。本实施例中,软输入软输出(SISO)译码器0的后验概率似然比序列Λ(Xk)被弃置不用,因此图3中未画出。
下面接前面的示例,详细说明译码过程。
前面示例中给出的2N(N=10)个二进制双极性调制信号经过接收端解调,得到含有高斯白噪声的2N个实数观测值,假定信噪比Eb/N0(每信息比特能量/高斯白噪声单边功率谱密度)为SNRdB=1dB,则在对符号能量进行规一化处理的前提下,解调器输出的高斯白噪声的单边功率谱密度
N 0 = 1 R c exp ( ln 10 10 SN R dB ) = 1.5887 , 其中Rc=1/2,表示码率,于是信道可性测度Lc=4/N0=2.5179。此时,如果解调器输出的2N个含有噪声的实数观测值序列为
r=(-1.4424,1.2049,0.8903,-1.6562,-2.3847,0.6825,1.5161,0.3196,0.8344,-0.5740,
    -1.5454,0.2807,-0.9291,1.1879,0.6753,2.3015,-2.1767,0.7356,0.1764,-0.3818)
如果采用观测值的符号对上述接收信号的前面10个信息比特进行硬判决译码,译码后的信息比特组应为 x ~ = ( 0,1,1,0,0,1,1,1,1,0 ) , 对比发送序列X=(0,1,1,0,0,0,1,0,1,0),可知发生了两位错,即第6位和第8位。
这2N个实数观测值首先进行指数运算并存入存储器中。下面的两个序列,ra表示用公式9的近似方法得到的指数变换结果,rexp表示精确的指数函数值。
ra=(0.0275,22.0281,9.8723,0.0155,0.0026,5.9162,48.2354,2.3218,8.2476,0.2394,
     0.0217,2.0395,0.1016,21.0390,5.8122,348.1863,0.0043,6.6889,0.6797,0.4033)
rexp=(0.0265,20.7747,9.4089,0.0155,0.0025,5.5753,45.4862,2.2360,8.1735,0.2357,
       0.0204,2.0276,0.0964,19.9033,5.4757,328.5805,0.0042,6.3741,0.6414,0.3824)
上述近似指数变换序列ra进一步分解为SISO译码器0和SISO译码器1的输入信号。信号分解时,对信息比特后面的N个校验比特,每读取一个校验比特的指数观测值,就在其后增加一个1,即用1表示被删除的第偶数个校验比特的指数观测值(这相当于接收到的第偶数个校验比特的实数观测值为0)。于是,对应于两个SISO译码器输入的信息比特序列和校验比特序列分别是:
SISO译码器0
x′=(x1′,x2′,x3′,x4′,x5′,x6′,x7′,x8′,x9′,x10′)
   =(0.0275,22.0281,9.8723,0.0155,0.0026,5.9162,48.2354,2.3218,8.2476,0.2394)
y0′=(y0,1′,y0,2′,y0,3′,y0,4′,y0,5′,y0,6′,y0,7′,y0,8′,y0,9′,y0,10′)
    =(0.0217,1.0000,2.0395,1.0000,0.1016,1.0000,21.0390,1.0000,5.8122,1.0000)
SISO译码器1
x′′=(x7′,x2′,x4′,x8′,x1′,x3′,x9′,x5′,x10′,x6′)
     =(48.2354,22.0281,0.0155,2.3218,0.0275,9.8723,8.2476,0.0026,0.2394,5.9162)
y1′=(y1,1′,y1,2′,y1,3′,y1,4′,y1,5′,y1,6′,y1,7′,y1,8′,y1,9′,y1,10′)
    =(348.1863,1.000,0.0043,1.0000,6.6889,1.000,0.6797,1.000,0.4033,1.0000)
SISO译码器0输出的先验概率似然比l0,k经过交织映射以后送入SISO译码器1,而SISO译码器1输出的先验概率似然比l1,k经过反交织映射以后送入SISO译码器0,两个相同的SISO译码器串行地或者并行地进行译码,每输出一次完整的先验概率似然比序列lj,k(j=0,1且k=1,2,3,...,N),就完成了一次迭代译码,重复进行若干次迭代译码,直到两个软输入软输出SISO译码器内部的迭代停止判决测度达到阈值,或者迭代译码次数已经达到设定次数时停止译码。在迭代译码开始之前,序列l0,k和l1,k均被初始化为1(即初始时假定信息比特Xk=1的概率和Xk=0的概率相等)。
假定迭代次数为5次,先验概率的似然比的饱和值为1023(10比特),则经过各次迭代以后,先验概率似然比(外信息)序列的变化如下所示:
初始时:
I 0 ( 0 ) = ( l 0,1 ( 0 ) , l 0,2 ( 0 ) , l 0,3 ( 0 ) , l 0,4 ( 0 ) , l 0,5 ( 0 ) , l 0 , 6 ( 0 ) , l 0 , 7 ( 0 ) , l 0 , 8 ( 0 ) , l 0 , 9 ( 0 ) , l 0 , 10 ( 0 ) ) = ( 1,1,1,1,1,1,1,1,1,1 )
I 1 ( 0 ) = ( l 1 , 1 ( 0 ) , l 1,2 ( 0 ) , l 1,3 ( 0 ) , l 1,4 ( 0 ) , l 1,5 ( 0 ) , l 1 , 6 ( 0 ) , l 1 , 7 ( 0 ) , l 1 , 8 ( 0 ) , l 1 , 9 ( 0 ) , l 1 , 10 ( 0 ) ) = ( 1,1,1,1,1,1,1,1,1,1 )
第1次迭代以后
I 0 ( 1 ) = ( l 0,1 ( 1 ) , l 0,2 ( 1 ) , l 0,3 ( 1 ) , l 0,4 ( 1 ) , l 0,5 ( 1 ) , l 0 , 6 ( 1 ) , l 0 , 7 ( 1 ) , l 0 , 8 ( 1 ) , l 0 , 9 ( 1 ) , l 0 , 10 ( 1 ) )
=(0.1606,1.8830,2.1911,1.8618,1.8308,0.1032,0.2482,0.5299,0.7301,1.0000)
I 1 ( 1 ) = ( l 1 , 1 ( 1 ) , l 1,2 ( 1 ) , l 1,3 ( 1 ) , l 1,4 ( 1 ) , l 1,5 ( 1 ) , l 1 , 6 ( 1 ) , l 1 , 7 ( 1 ) , l 1 , 8 ( 1 ) , l 1 , 9 ( 1 ) , l 1 , 10 ( 1 ) )
=(1.1547,22.2996,0.5755,0.0410,1.3482,1.0000,1023.0000,0.1838,0.4887,1.6292)
第2次迭代以后
I 0 ( 2 ) = ( l 0,1 ( 2 ) , l 0,2 ( 2 ) , l 0,3 ( 2 ) , l 0,4 ( 2 ) , l 0,5 ( 2 ) , l 0 , 6 ( 2 ) , l 0 , 7 ( 2 ) , l 0 , 8 ( 2 ) , l 0 , 9 ( 2 ) , l 0 , 10 ( 2 ) )
=(0.2122,2.7247,4.6947,2.0647,2.0742,0.0376,0.2054,0.6352,1.3495,1.0000)
I 1 ( 2 ) = ( l 1 , 1 ( 2 ) , l 1,2 ( 2 ) , l 1,3 ( 2 ) , l 1,4 ( 2 ) , l 1,5 ( 2 ) , l 1 , 6 ( 2 ) , l 1 , 7 ( 2 ) , l 1 , 8 ( 2 ) , l 1 , 9 ( 2 ) , l 1 , 10 ( 2 ) )
=(1.2971,18.2611,0.5297,0.0357,1.4866,1.0000,1023.0000,0.2003,0.4786,1.9216)
第3次迭代以后
I 0 ( 3 ) = ( l 0,1 ( 3 ) , l 0,2 ( 3 ) , l 0,3 ( 3 ) , l 0,4 ( 3 ) , l 0,5 ( 3 ) , l 0 , 6 ( 3 ) , l 0 , 7 ( 3 ) , l 0 , 8 ( 3 ) , l 0 , 9 ( 3 ) , l 0 , 10 ( 3 ) )
=(0.2102,2.6097,4.5638,2.2039,2.2168,0.0393,0.2069,0.6401,1.3108,1.0000)
I 1 ( 3 ) = ( l 1 , 1 ( 3 ) , l 1,2 ( 3 ) , l 1,3 ( 3 ) , l 1,4 ( 3 ) , l 1,5 ( 3 ) , l 1 , 6 ( 3 ) , l 1 , 7 ( 3 ) , l 1 , 8 ( 3 ) , l 1 , 9 ( 3 ) , l 1 , 10 ( 3 ) )
=(1.3041,17.3042,0.5322,0.0367,1.4816,1.0000,1023.0000,0.1997,0.4797,1.9094)
第4次迭代以后
I 0 ( 4 ) = ( l 0,1 ( 4 ) , l 0,2 ( 4 ) , l 0,3 ( 4 ) , l 0,4 ( 4 ) , l 0,5 ( 4 ) , l 0 , 6 ( 4 ) , l 0 , 7 ( 4 ) , l 0 , 8 ( 4 ) , l 0 , 9 ( 4 ) , l 0 , 10 ( 4 ) )
=(0.2103,2.6152,4.5640,2.1965,2.2093,0.0392,0.2069,0.6397,1.3122,1.0000)
I 1 ( 4 ) = ( l 1 , 1 ( 4 ) , l 1,2 ( 4 ) , l 1,3 ( 4 ) , l 1,4 ( 4 ) , l 1,5 ( 4 ) , l 1 , 6 ( 4 ) , l 1 , 7 ( 4 ) , l 1 , 8 ( 4 ) , l 1 , 9 ( 4 ) , l 1 , 10 ( 4 ) )
=(1.3035,17.3536,0.5321,0.0367,1.4817,1.0000,1023.0000,0.1997,0.4797,1.9098)
第5次迭代以后
I 0 ( 5 ) = ( l 0,1 ( 5 ) , l 0,2 ( 5 ) , l 0,3 ( 5 ) , l 0,4 ( 5 ) , l 0,5 ( 5 ) , l 0 , 6 ( 5 ) , l 0 , 7 ( 5 ) , l 0 , 8 ( 5 ) , l 0 , 9 ( 5 ) , l 0 , 10 ( 5 ) )
=(0.2103,2.6150,4.5641,2.1969,2.2096,0.0392,0.2069,0.6397,1.3122,1.0000)
I 1 ( 5 ) = ( l 1 , 1 ( 5 ) , l 1,2 ( 5 ) , l 1,3 ( 5 ) , l 1,4 ( 5 ) , l 1,5 ( 5 ) , l 1 , 6 ( 5 ) , l 1 , 7 ( 5 ) , l 1 , 8 ( 5 ) , l 1 , 9 ( 5 ) , l 1 , 10 ( 5 ) )
=(1.3035,17.3513,0.5321,0.0367,1.4817,1.0000,1023.0000,0.1997,0.4797,1.9098)
第5次迭代以后,按公式3计算输出的后验概率似然比为
Λ=(Λ(X1),Λ(X2),Λ(X3),Λ(X4),Λ(X5),Λ(X6),Λ(X7),Λ(X8),Λ(X9),Λ(X10))
=(0.0075,999.4811,23.9740,0.0012,0.0086,0.2322,1023.0000,0.2966,5.1913,0.4572)于是译码判决后的输出为
X ~ = ( X ~ 1 , X ~ 2 , X ~ 3 , X ~ 4 , X ~ 5 , X ~ 6 , X ~ 7 , X ~ 8 , X ~ 9 , X ~ 10 ) =(0,1,1,0,0,0,1,0,1,0)
比对发送的信息比特序列X=(0,1,1,0,0,0,1,0,1,0),显然,译码无误。
本实施例采用的8状态RSC分量码是国际标准UMTS以及3GPP推荐的分量码,1/2码率是典型的实际应用码率,因而该方案具有很强的实用性。
本发明的实施例的译码延时如图4所示。图4中,三个“标准”译码时延直方图是指不采用状态转移概率测度在每次前向以及后向迭代之前预先计算技术的标准Turbo码译码算法的译码时延直方图,依次分别是标准MAP算法、标准查表LUT-LOG-MAP算法和标准MAX-LOG-MAP算法译码时延直方图,可见标准译码算法的译码时延最长。三个“双极性改进”译码时延直方图是指用传统的双极性二进制信号{+1,-1}实现状态转移概率测度并结合状态转移概率测度预计算技术的算法的直方图,依次分别是双极性改进MAP算法、双极性改进查表LUT-LOG-MAP算法和双极性改进MAX-LOG-MAP算法译码时延直方图。三个“单极性改进”译码时延直方图,是指采用本发明所提出的单极性二进制信号{0,1}实现状态转移概测度并结合状态转移概率测度预计算技术的算法,依次分别是本发明的单极性改进MAP算法、将单极性改进方法用于查表LUT-LOG-MAP算法和用于MAX-LOG-MAP算法得到的译码时延直方图。图中可见,三个“单极性改进”译码算法的译码时延最小,而本发明的译码时延非常接近MAX-LOG-MAP算法(MAX-LOG-MAP算法的差错控制性能远低于本发明),明显优于IUT-LOG-MAP算法。图4中,各译码算法的译码延时的测试条件为:通用计算机,帧长N=1000,1/2码率,信噪比Eb/N0=1dB,LUT-LOG-MAP的表长为8。每个算法分别测试了10000帧,然后将总译码延时进行平均。
本发明实施例,即RSC=(1,15/13八进制)、1/2码率、帧长N=1000,采用一种均匀分布随机交织器时的差错控制性能如图5所示。图5中,纵坐标BER(Bit Error Ratio)表示比特误码率,横坐标Eb/N0表示每信息比特能量与高斯白噪声单边功率谱密度之比(信噪比)。从图5中可以看到,本发明的Turbo码译码算法的比特误码率曲线与最优的Turbo码译码算法即标准MAP算法和最好的LUT-LOG-MAP算法的误码率曲线几乎重叠,可以认为它们具有相同的差错控制性能。

Claims (4)

1、一种非对数域高速最大后验概率Turbo译码方法,该方法采用两个完全相同的软输入软输出(SISO)译码器对通信系统接收端解调器输出的信息比特实数观测值序列和校验比特实数观测值序列进行译码,每个软输入软输出(SISO)译码器内部包括前向迭代、后向迭代和外信息计算三个运算模块,其特征在于:
(1)第j个(j=0,1)软输入软输出(SISO)译码器有三个实数输入信号序列,分别是指数信息比特实数观测值xk′=exp(Lcxk)、指数校验比特实数观测值yj,k′=exp(Lcyj,k)和信息比特先验概率似然比l(j+1)mod2,k,其中,xk是通信系统接收端解调器输出的第k个信息比特Xk的实数观测值,yj,k是对应于第j(j=0,1)个系统递归卷积(RSC)分量编码器输入信息比特Xk时输出的校验比特Yj,k的实数观测值,Lc为信道可靠性测度,Lc=4/N0,N0为高斯白噪声(AWGN)的单边功率谱密度;
(2)第j个(j=0,1)软输入软输出(SISO)译码器有两个实数输出信号序列,分别是送到另一个软输入软输出(SISO)译码器的先验概率似然比1j,k和用作译码判决的后验概率似然比Λ(Xk),其中,Λ(Xk)=xk′l0,kl1,k,当Λ(Xk)≥1时,将Xk译为1,否则将Xk译为0;
(3)第j个(j=0,1)软输入软输出(SISO)译码器输出的关于第k个信息比特Xk的先验概率似然比为 l j , k = Σ s ′ α k - 1 ( s ′ ) γ k ( e ) ( Y s ′ ( 1 ) ) β k ( t s ′ ( 1 ) ) Σ s ′ α k - 1 ( s ′ ) γ k ( e ) ( Y s ′ ( 0 ) ) β k ( t s ′ ( 0 ) ) , 其中,当 Y s ′ ( 1 ) = 0 ( i = 0,1 ) 时,信息比特Xk的先验概率似然比的状态转移概率测度 γ k ( e ) ( Y s ′ ( 1 ) ) = 1 , 否则,当 Y s ′ ( i ) = 1 时, γ k ( e ) ( Y s ′ ( i ) ) = y j , k ′ ; 而前向迭代计算公式为 α k ( s ) = Σ s ′ Σ i α k - 1 ( s ′ ) γ k ( i , Y s ′ ( i ) ) Σ s Σ s ′ Σ i α k - 1 ( s ′ ) γ k ( i , Y s ′ ( i ) ) , (i=0,1),后向迭代计算公式为 β k ( s ) = Σ s ′ Σ i β k + 1 ( s ′ ) γ k + 1 ( i , Y l ( i ) ) Σ s Σ s ′ Σ i α k ( s ′ ) γ k + 1 ( i , Y s ′ ( i ) ) , (i=0,1)计算,其中,状态转移概率测度 γ k ( i , Y m ( i ) ) 的全部4种可能值按下表计算,即     i  Ym (i)     求值步骤   γk(i,Ym (i))值     0    0   v0←1     v0     0    1   v1←yj,k     v1     1    0   v2←xk′l(j+1)mod2,k     v2     1    1   v3←v1v2     v3
2、如权利要求1所述的一种非对数域高速最大后验概率Turbo译码方法,其特征在于:所述的软输入软输出(SISO)译码器输入的指数信息比特实数观测值序列xk′、指数校验比特实数观测值序列y0,k′和y1,k′是由通信系统接收端解调器输出的信息比特实数观测信号序列xk、来自系统递归卷积(RSC)分量编码器0的校验比特实数观测值序列y0,k和来自系统递归卷积(RSC)分量编码器1的校验比特实数观测值序列y1,k经过指数运算得来,指数运算与解调运算操作分别采用流水线方式并行同步进行,运算结果(xk′、y0,k′和y1,k′)存入存储器保存,然后送入两个软输入软输出(SISO)译码器进行迭代译码。
3、如权利要求1所述的一种非对数域高速最大后验概率Turbo译码方法,其特征在于:所述的指数信息比特实数观测值xk′=exp(Lcxk)以及指数校验比特实数观测值yj,k′=exp(Lcyj,k)中的指数函数exp(z),其中z=Lcxk或Lcyj,k,exp(z)的计算采用近似方法,即exp(z)=2p(t+1),这里,p=floor(zlog2e),floor(zlog2e)表示“小于或等于zlog2e的最大整数”,而t=zlog2e-p,算式2p(t+1)通过将t+1的二进制表示的小数点移位来简单实现。
4、如权利要求1所述的一种非对数域高速最大后验概率Turbo译码方法,其特征在于:所述的信息比特Xk的先验概率的似然比lj,k的饱和限幅值取10~13比特。
CNB2005100210161A 2005-06-01 2005-06-01 非对数域最大后验概率Turbo译码方法 Expired - Fee Related CN100454768C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100210161A CN100454768C (zh) 2005-06-01 2005-06-01 非对数域最大后验概率Turbo译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100210161A CN100454768C (zh) 2005-06-01 2005-06-01 非对数域最大后验概率Turbo译码方法

Publications (2)

Publication Number Publication Date
CN1710815A true CN1710815A (zh) 2005-12-21
CN100454768C CN100454768C (zh) 2009-01-21

Family

ID=35707006

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100210161A Expired - Fee Related CN100454768C (zh) 2005-06-01 2005-06-01 非对数域最大后验概率Turbo译码方法

Country Status (1)

Country Link
CN (1) CN100454768C (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217336B (zh) * 2007-01-04 2011-02-09 浙江华立通信集团有限公司 TD-SCDMA/3G硬核turbo译码器
CN102405599A (zh) * 2009-02-19 2012-04-04 诺基亚公司 用于并行turbo解码的扩展turbo交织器
CN101626249B (zh) * 2009-08-19 2013-04-10 北京海尔集成电路设计有限公司 一种软输入软输出译码系统及方法
CN108429605A (zh) * 2018-03-09 2018-08-21 西安电子科技大学 基于可靠度分级的置信传播译码方法
CN110266322A (zh) * 2019-06-24 2019-09-20 上海航天测控通信研究所 一种甚高频数据交换系统的迭代译码方法
CN110299921A (zh) * 2019-06-11 2019-10-01 东南大学 一种模型驱动的Turbo码深度学习译码方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3917563B2 (ja) * 2002-07-03 2007-05-23 ヒューズ・エレクトロニクス・コーポレーション 低密度のパリティチェック(ldpc)コードをデコードする方法およびシステム
US7209527B2 (en) * 2002-07-08 2007-04-24 Agere Systems Inc. Turbo decoder employing max and max* map decoding
CN100364301C (zh) * 2003-03-17 2008-01-23 西南交通大学 一种用于数字通信差错控制的基于分块处理的并行Turbo编译码方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217336B (zh) * 2007-01-04 2011-02-09 浙江华立通信集团有限公司 TD-SCDMA/3G硬核turbo译码器
CN102405599A (zh) * 2009-02-19 2012-04-04 诺基亚公司 用于并行turbo解码的扩展turbo交织器
CN102405599B (zh) * 2009-02-19 2016-10-05 诺基亚技术有限公司 用于并行turbo解码的扩展turbo交织器
CN101626249B (zh) * 2009-08-19 2013-04-10 北京海尔集成电路设计有限公司 一种软输入软输出译码系统及方法
CN108429605A (zh) * 2018-03-09 2018-08-21 西安电子科技大学 基于可靠度分级的置信传播译码方法
CN108429605B (zh) * 2018-03-09 2020-04-07 西安电子科技大学 基于可靠度分级的置信传播译码方法
CN110299921A (zh) * 2019-06-11 2019-10-01 东南大学 一种模型驱动的Turbo码深度学习译码方法
CN110299921B (zh) * 2019-06-11 2023-01-17 东南大学 一种模型驱动的Turbo码深度学习译码方法
CN110266322A (zh) * 2019-06-24 2019-09-20 上海航天测控通信研究所 一种甚高频数据交换系统的迭代译码方法
CN110266322B (zh) * 2019-06-24 2023-02-07 上海航天测控通信研究所 一种甚高频数据交换系统的迭代译码方法

Also Published As

Publication number Publication date
CN100454768C (zh) 2009-01-21

Similar Documents

Publication Publication Date Title
CN1258885C (zh) 带有错误信息重新编码和反馈的透博译码方法
CN1557052A (zh) 数字通信系统中使用涡轮解码来减少位误差率和帧误差率的装置和方法
CN1409897A (zh) 级联卷积码译码器
CN101039119A (zh) 编码与解码的方法及系统
CN1710815A (zh) 非对数域高速最大后验概率Turbo译码方法
CN1728563A (zh) Turbo译码装置和Turbo译码方法
CN101060339A (zh) 一种在SCDMA系统中实现Turbo编译码方案的装置和方法
CN1271791C (zh) Turbo译码器及其实现方法
CN1259781C (zh) 最小欧氏距离最大化的星座映射级联纠错编码方法
CN1157883C (zh) 实现并行滑动窗最大后验概率算法的高速Turbo码译码器
CN1172448C (zh) 解码数据信号的方法
CN1294706C (zh) 对于具有输出外信息的编码调制系统的迭代解调解码方法及装置
CN1841941A (zh) 最大后验概率译码方法和装置
CN1455565A (zh) 一种用于数字通信差错控制的基于分块处理的并行Turbo编译码方法
CN1234220C (zh) 一种用于Turbo码的译码方法
CN1463084A (zh) Turbo编码BPSK调制系统的迭代解调解码方法及装置
CN1145266C (zh) 特博码解码方法及其解码器
CN101064584A (zh) 多层信道译码方法
CN1175580C (zh) 一种译码方法及实现该方法的译码装置
CN1767398A (zh) 一种用于Turbo码译码器中减小状态度量位宽的方法
Li et al. An efficient decoding algorithm for concatenated RS-convolutional codes
CN1702975A (zh) 空时Turbo码的二进制译码方法
CN1841942A (zh) 最大后验概率译码方法和装置
Wan et al. A novel parallel turbo coding technique based on frame split and trellis terminating
Yang et al. Implementation of Turbo code based on CCSDS

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090121

Termination date: 20110601