CN105939160A - LTE-Advanced标准中低存储容量Turbo码译码器及设计方法 - Google Patents
LTE-Advanced标准中低存储容量Turbo码译码器及设计方法 Download PDFInfo
- Publication number
- CN105939160A CN105939160A CN201610006354.6A CN201610006354A CN105939160A CN 105939160 A CN105939160 A CN 105939160A CN 201610006354 A CN201610006354 A CN 201610006354A CN 105939160 A CN105939160 A CN 105939160A
- Authority
- CN
- China
- Prior art keywords
- max
- forward state
- state metric
- lte
- formula
- 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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明提供了一种LTE‑Advanced标准中低存储量Turbo码译码器及其设计方法,包括一重算模块,所述重算模块用于在前向状态度量计算出来后,需要编号为j=0,2,5,7的前向状态度量值来计算后验概率时,这些度量值通过所述重算模块被重新计算出来,而只有编号为j=1,3,4,6的前向状态度量值被存储在SMC中,从而使得SMC容量降低50%。本发明提出的适合反向重算的Max*函数与其反向重算,以及对应的硬件实现结构,由于SMC中只需存储一半的前向状态度量值,SMC的容量降低了50%,且引入的额外计算复杂度较低。
Description
技术领域
本发明涉及通信技术领域,具体地,涉及一种基于适合反向重算Max*函数的低存储量Turbo码译码器及其设计方法。
背景技术
Turbo码:Turbo码是一种逼近香农极限的纠错码,在无线通信中得到了广泛应用。目前,Turbo码已为LTE-Advanced标准所采用,以保证高速、可靠的数据传输。在Turbo码译码器结构设计的研究中,误码率,吞吐率和功耗是三个最为重要的指标。
状态度量缓存(State Metric Cache:SMC):译码器中需要大容量的状态度量缓存(SMC)。
功能仿真:本文的硬件仿真由FPGA实现,采用HDL语言进行编程,之后进行功能仿真,以检验硬件电路是否满足设计要求。
微电子技术的发展,深度亚微米技术使得算术运算的功耗远小于对SMC访问操作的功耗。因此,以增加冗余计算为代价,代替对SMC的访问操作,是一个非常有效的低存储容量译码器结构设计方法。D.S.Lee等提出了状态度量的反向试探计算译码方法,只有那些不能被反向计算的状态度量才会存放在SMC中,并设置特殊的标志寄存器做识别;L.C.Hung等人提出的基-4追溯计算法,将8个状态度量转换为6个差值度量和2个比特的符号位,SMC容量降低了20%;M.Mart ina等人提出的Wash-Hadamard变换法,SMC容量降低了约50%,但引入的变换和反变换较为复杂,对译码器吞吐率有一定负面影响,且该变换本质上是一种有损压缩变换,使得译码器误码率不甚理想。且现有技术在采用Turbo码的接收机中,译码器功耗占整个接收机功耗的一半左右,而译码器功耗的50%以上用于对SMC的访问操作;进一步地,大容量的SMC使得译码器芯片面积较大,增加了静态漏电流功耗。
发明内容
针对上述现有技术中存在的缺陷,本发明的目的是提供一种基于适合反向重算Max*函数的低存储量Turbo码译码器及其设计方法,为降低SMC容量,减小引入的冗余计算的复杂度,以LTE中的Turbo码为研究对象,将网格图做分解,提出一种前向度量后向计算的译码器结构设计方法。
为达到上述目的,本发明所采用的技术方案如下:
LTE-Advanced标准中低存储量Turbo码译码器,包括一重算模块,所述重算模块用于在前向状态度量计算出来后,需要编号为j=0,2,5,7的前向状态度量值来计算后验概率时,这些度量值通过所述重算模块被重新计算出来,而只有编号为j=1,3,4,6的前向状态度量值被存储在SMC中,从而使得SMC容量降低50%。
一种LTE-Advanced标准中低存储量Turbo码译码器设计方法,基于前向状态度量后向计算的方法,在每个译码时刻的8个前向状态度量中,有4个度量值不需要存储在SMC中,当需要这4个未存储的前向状态度量时,它们在后向状态度量递归计算的同时,重新计算出来,为保证误码率,对Max*函数进行简化及逆计算,对前向状态度量进行后向计算,避免对误码率造成影响。
所述对Max*函数进行简化的方法,具体如下:
设x=|d2-d1|,对式(8)中的两个校正函数做折线逼近,如下式所示,
ln(1+e-x)
≈max{-0.5x+0.6875,-0.125x+0.40625,-0.0078125x+0.0625} (9-1)
ln(1+ex)≈max{0.75x+0.6875,x} (9-2)
进一步地,结合式(7),式(8)被改写为式(10),
式(10)即可求解Max*函数的近似值,而且对误码率性能没有影响;
其中:x1、x2是前一个译码时刻的前向状态度量值,c1、c2是对应的当前译码时刻分支度量值,d1,d2是中间变量,表示前向状态度量值和对应分支度量值的和)。
所述对Max*函数进行逆运算求解x2的方法,具体如下:
d1=x1+c1
y是Max*函数简化计算后的近似值。
当0.6875<y-d1<0.03125时,需要做乘1/3的操作,为避免复杂的乘法操作,将1/3修改为0.34375,即0.25+0.0625+0.03125,引入3%的计算误差。
所述对Max*函数进行简化及逆计算实现的硬件包括加法单元、移位单元和比较单元。
与现有技术相比,本发明具有如下的有益效果:
在传统的Turbo码译码器结构下,前向状态度量计算出来后,只有编号为j=1,3,4,6的前向状态度量值被存储在SMC中。当需要编号为j=0,2,5,7的前向状态度量值来计算后验概率时,本发明通过增加重算模块,这些度量值将在新增加的重算模块中被重新计算出来,使得SMC容量因此而降低了50%。本发明将LTE标准中的Turbo码网格图做分解,提出了一种降低SMC容量50%的译码器结构设计方案,研究了一种适合未存储前向状态度量逆计算的雅可比对数式简化计算方法,推导出了其对应的逆计算方法,并给出了硬件实现框图,简洁高效,引入的计算复杂度较低,而译码性能与Log-MAP算法相比,误码率损失了约0.03dB。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1(a)为LTE标准中Turbo码编码器结构示意图;
图1(b)为LTE标准中分量编码器网格图;
图2为前向状态度量计算的网格图分解;
图3为译码器结构设计框图;
图4(a)为校正函数的逼近比较图一;
图4(b)为校正函数的逼近比较图二;
图5为初步的误码率仿真图;
图6(a)为雅可比对数式简化计算实现框图;
图6(b)为对应FPGA的功能仿真;
图6(c)为逆计算实现框图;
图6(d)为对应FPGA的功能仿真。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
本发明是基于一种前向度量后向计算的译码器结构设计方法。在每个译码时刻的8个前向状态度量中,有4个度量值不需要存储在SMC中。当需要这4个未存储的前向状态度量时,它们可以在后向状态度量递归计算的同时,重新计算出来。为保证理想的误码率,提出了一种Max*函数的简化计算方法,并推导了该Max*函数的逆计算,使得前向状态度量的后向计算也较为简单,不会对误码率造成负面影响。
1.译码器分析与结构的提出
LTE标准采用的Turbo码编码器和分量编码器的网格图如图1所示。
根据图1(a)、图1(b)所示本发明一实施例中的网格图,可以得出图2中的分解。从状态度量的前向递归计算来看,由 和对应的分支度量计算得到(j为编码器的寄存器状态,1≤k≤N为时序下标,N为译码窗口宽度)。如果从后向计算的方向来看,可以由 和对应的分支度量计算得到。分析的反向计算,可以将状态j分为两个部分:j=1,3,4,6和j=0,2,5,7。
因此,在的前向递归计算过程中,可以只将这4个度量值存储在SMC中。当需要来计算后验概率对数似然比的时候,可以利用存储在SMC中的和相应的分支度量来重新计算。由于SMC中只需存储一半的前向状态度量值,SMC的容量降低了50%,结构设计框图如图3所示。
与现有的Turbo码译码器相比,图3的结构有两点不同:第一,SMC中存储了一半的前向状态度量;第二,只插入了一个计算模块比现有技术中的译码器结构设计框图简单的多。
2.前向状态度量的重新计算
根据Log-MAP算法,前向状态度量计算如式(1)所示:
其中,二变量的Max*函数(雅可比对数式)定义如式(2)所示:
Max*(x1,x2)=ln[exp(x1)+exp(x2)] (2)
对于多变量的Max*函数,研究表明,取所有变量中最大的两个值即可,对误码率的影响很小,而不必采用雅可比对数式的递归实现。
由图2和式(1),可得的具体计算公式并将其做逆运算可解得 的计算公式:
由图3的译码结构,可知式(3)中,来自计算后向状态度量时的分支度量, 和 来自对SMC的访问,只有 是未知的。考虑到式(3)中的4个子公式具有相同的形式,为分析方便,定义了式(4)的Min*函数,在式(5)的条件下,将式(3)的子公式写出式(7)的形式。
y=Max*(x1+c1,x2+c2) (5)
x2+c2=Min*(y,x1+c1) (6)
综上所述,前向状态度量的反向计算,归结为在式(6)的条件下,已知y、x1、c1和c2,求解x2。
3.基于雅可比对数式和Min*函数近似的反向计算
在Log-MAP算法中,指数和对数计算过于复杂,因此实际的译码器结构设计中,雅可比对数式都采取了近似计算的方式,以一定的误码率损失为代价,换取降低译码复杂度的好处。以误码率和实现复杂度为考察指标,式(7)的雅可比对数式近似计算具有非常均衡的性能(本质上是对光滑曲线的4折线逼近)。
基于式(7)的近似计算,由式(6)求解x2,比较容易想到的有两种方法:
1),类似式(7)构造式(7)中Min*函数的折线近似计算;
2),构造基于式(7)的逆计算。
实际研究结果如下:
方法1),类似式(7),构造出了式(6)Min*函数的高精度折线近似,但仿真结果表明,误码率很差,1.1dB时的误码率,仅相当于Log-MAP算法时的0.3dB,而误帧率几乎没有改善。详细分析重新计算出来的状态度量,发现式(6)对输入值很敏感,式(7)引入的逼近误差被恶性放大,使得重新计算出来的状态度量值误差过大。
方法2),针对式(7)的4折线逼近,构造了对应的逆计算,发现当y=d1时,只能得到d2≤d1-2/3,而不是一个具体值,显然无法获得理想的误码率。详细分析表明,问题在于式(7)采取了近似计算,当d1-d2≥2/3时,式(7)的计算结果与d2的没有任何关系,进而无法求解x2。
经过分析,问题根源在于现有的雅可比对数式近似计算不适合逆计算,|d1-d2|超过某一特定值后,较小的自变量将会被忽略掉。当这个忽略的自变量是d2时,逆计算失去了意义。
基于以上分析,需要构造一个新的雅可比对数式简化计算方法,它能保证任何条件下,d2变量都不会被忽略。为此,提出了一种新的雅可比对数式简化计算方法,如式(8)所示。
设x=|d2-d1|,对式(8)中的两个校正函数做折线逼近,如式(9)所示。为便于硬件实现和后续逆计算求解x2,参数经过优化,使用移位操作即可实现乘法运算。
ln(1+ex)≈max{0.75x+0.6875,x} (9-2)
式(9)中两个校正函数的逼近效果如图4(a)、图4(b)所示。
进一步地,结合式(7),其中d1=x1+c1,d2=x2+c2,式(8)被改写为式(10):
式(10)计算较为简单,采用较少复杂度的比较、加法和移位操作,即可求解雅可比对数式的近似值,而且对误码率性能影响很小。
对式(10)做逆计算求x2,得到如式(11)所示。
d1=x1+c1
式(11)能精确的重新计算出x2,且引入的计算复杂度较小。MATLAB仿真表明,重新计算出来的前向状态度量最大计算误差不超过10-12,误码率性能与Log-MAP算法非常接近。
考虑到以下两点:
1),译码器的硬件实现中,分支度量是(9,3)量化,状态度量是(10,3)量化((q,f)量化中,q是量化总比特数,f是小数位比特数),计算精度有限;
2),式(11)中,当0.6875<y-d1<0.03125时,需要做乘1/3的操作,为避免复杂的乘法操作,将1/3修改为0.34375(即0.25+0.0625+0.03125),引入了约3%的计算误差。
因此,最终的误码率会有一定影响。初步的MATLAB仿真表明,较Log-MAP算法损失了0.03dB,如图5所示,其中δ为度量因子。
3.硬件实现框图
根据以上分析,给出了图6(a)和6(c)所示的雅可比对数式和其逆计算的实现框图。采用简单的移位、加法和比较操作,引入了较小的计算复杂度,即可达到较高的计算精度。根据图6(b)和图6(d)的仿真图可知(仿真时采用十位二进制数,左起第一位表示符号位,第二位到第五位是整数位,最后五位表示小数位),最后逆计算x2为0.01111,而由图(b)可知x2=0.1,误差为0.00001,换算成十进制为0.03125,这是由于在雅可比逆计算式(11)中引入了约3%的计算误差。
本发明提供了一种LTE-Advanced标准中Turbo码的低存储容量译码器结构设计方法,包括译码网格图的分解,译码器结构设计方案,适合反向重算的Max*函数与其反向重算,以及对应的硬件实现结构。根据网格图的分解,将前向状态度量的计算按序号分成j=1,3,4,6和j=0,2,5,7两个部分,可以只将这4个度量值存储在SMC中,当需要来计算后验概率对数似然比的时候,可以利用存储在SMC中的和相应的分支度量来重新计算。为了上述结构是实现,本发明提出了适合反向重算的Max*函数与其反向重算,以及对应的硬件实现结构。由于SMC中只需存储一半的前向状态度量值,SMC的容量降低了50%,且引入的额外计算复杂度较低。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (6)
1.LTE-Advanced标准中低存储量Turbo码译码器,其特征在于,包括一重算模块,所述重算模块用于在前向状态度量计算出来后,需要编号为j=0,2,5,7的前向状态度量值来计算后验概率时,这些度量值通过所述重算模块被重新计算出来,而只有编号为j=1,3,4,6的前向状态度量值被存储在SMC中,从而使得SMC容量降低50%。
2.根据权利要求1所述的LTE-Advanced标准中低存储量Turbo码译码器设计方法,其特征在于,基于前向状态度量后向计算的方法,在每个译码时刻的8个前向状态度量中,有4个度量值不需要存储在SMC中,当需要这4个未存储的前向状态度量时,它们在后向状态度量递归计算的同时,重新计算出来,为保证误码率,对Max*函数进行简化及逆计算,对前向状态度量进行后向计算,避免对误码率造成影响。
3.根据权利要求2所述的LTE-Advanced标准中低存储量Turbo码译码器设计方法,其特征在于,所述对Max*函数进行简化的方法,具体如下:
设x=|d2-d1|,对式(8)中的两个校正函数做折线逼近,如下式所示,
ln(1+e-x)
≈max{-0.5x+0.6875,-0.125x+0.40625,-0.0078125x+0.0625} (9-1)
ln(1+ex)≈max{0.75x+0.6875,x} (9-2)
进一步地,结合式(7),式(8)被改写为式(10),
式(10)即可求解Max*函数的近似值,而且对误码率性能没有影响;
其中:d1,d2大于0,x1、x2是前一个译码时刻的前向状态度量值,c1、c2是对应的当前译码时刻分支度量值,d1,d2是中间变量,表示前向状态度量值和对应分支度量值的和)。
4.根据权利要求3所述的LTE-Advanced标准中低存储量Turbo码译码器设计方法,其特征在于,所述对Max*函数进行逆运算求解x2的方法,具体如下:
d1=x1+c1
y是Max*函数简化计算后的近似值。
5.根据权利要求4所述的LTE-Advanced标准中低存储量Turbo码译码器设计方法,其特征在于,当0.6875<y-d1<0.03125时,需要做乘1/3的操作,为避免复杂的乘法操作,将1/3修改为0.34375,即0.25+0.0625+0.03125,引入3%的计算误差。
6.根据权利要求2所述的LTE-Advanced标准中低存储量Turbo码译码器设计方法,其特征在于,所述对Max*函数进行简化及逆计算实现的硬件包括加法单元、移位单元和比较单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610006354.6A CN105939160B (zh) | 2016-01-04 | 2016-01-04 | LTE-Advanced标准中低存储容量Turbo码译码器及设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610006354.6A CN105939160B (zh) | 2016-01-04 | 2016-01-04 | LTE-Advanced标准中低存储容量Turbo码译码器及设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105939160A true CN105939160A (zh) | 2016-09-14 |
CN105939160B CN105939160B (zh) | 2019-06-07 |
Family
ID=57153023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610006354.6A Expired - Fee Related CN105939160B (zh) | 2016-01-04 | 2016-01-04 | LTE-Advanced标准中低存储容量Turbo码译码器及设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105939160B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108449092A (zh) * | 2018-04-03 | 2018-08-24 | 西南大学 | 一种基于循环压缩的Turbo码译码方法及其装置 |
CN109347600A (zh) * | 2018-09-26 | 2019-02-15 | 河南科技大学 | 一种极化码译码方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6857101B1 (en) * | 1999-12-14 | 2005-02-15 | Intel Corporation | Apparatus and method of storing reference vector of state metric |
CN101938330A (zh) * | 2010-09-02 | 2011-01-05 | 复旦大学 | 一种多码率Turbo码译码器及其存储资源优化方法 |
CN103957016A (zh) * | 2014-05-12 | 2014-07-30 | 西南大学 | 一种低存储容量的Turbo码译码器及其设计方法 |
-
2016
- 2016-01-04 CN CN201610006354.6A patent/CN105939160B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6857101B1 (en) * | 1999-12-14 | 2005-02-15 | Intel Corporation | Apparatus and method of storing reference vector of state metric |
CN101938330A (zh) * | 2010-09-02 | 2011-01-05 | 复旦大学 | 一种多码率Turbo码译码器及其存储资源优化方法 |
CN103957016A (zh) * | 2014-05-12 | 2014-07-30 | 西南大学 | 一种低存储容量的Turbo码译码器及其设计方法 |
Non-Patent Citations (1)
Title |
---|
詹明: ""双二元卷积Turbo码译码算法与译码器结构设计研究"", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108449092A (zh) * | 2018-04-03 | 2018-08-24 | 西南大学 | 一种基于循环压缩的Turbo码译码方法及其装置 |
CN108449092B (zh) * | 2018-04-03 | 2022-02-08 | 西南大学 | 一种基于循环压缩的Turbo码译码方法及其装置 |
CN109347600A (zh) * | 2018-09-26 | 2019-02-15 | 河南科技大学 | 一种极化码译码方法 |
CN109347600B (zh) * | 2018-09-26 | 2021-01-05 | 河南科技大学 | 一种极化码译码方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105939160B (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102523076B (zh) | 通用可配置的高速率Turbo码译码方法 | |
CN103685111B (zh) | 一种数字预失真参数的求取方法及预失真系统 | |
CN101388674B (zh) | 一种译码的方法、译码器以及Turbo码译码器 | |
CN100425000C (zh) | 双涡轮结构低密度奇偶校验码解码器及解码方法 | |
CN105939160A (zh) | LTE-Advanced标准中低存储容量Turbo码译码器及设计方法 | |
CN105259410A (zh) | 一种强噪声干扰下的欠采样波形的频率估计方法及其装置 | |
CN105634508A (zh) | 一种低复杂度近性能限的Turbo译码器的实现方法 | |
CN102231101B (zh) | 一种除法器及除法处理方法 | |
CN113077047A (zh) | 一种基于特征图稀疏性的卷积神经网络加速器 | |
CN103957016B (zh) | 一种低存储容量的Turbo码译码器及其设计方法 | |
CN107241070A (zh) | 一种确定dpd系数的方法、fpga及dpd处理系统 | |
CN106059597B (zh) | 一种基于概率Turbo译码器的有符号概率计算单元 | |
CN103809931A (zh) | 一种专用高速浮点指数运算器的设计 | |
CN102594507B (zh) | 一种软件无线电系统中的高速并行Turbo译码方法及系统 | |
CN101425870B (zh) | 一种Turbo码迭代译码方法 | |
CN103188040A (zh) | Turbo均衡及其帧间、帧内相关预测的方法和装置 | |
CN116224126A (zh) | 一种电动汽车锂离子电池健康状态估计方法及系统 | |
CN103701475B (zh) | 移动通信系统中8比特运算字长Turbo码的译码方法 | |
Abhishek et al. | The Carleman-Newton method to globally reconstruct a source term for nonlinear parabolic equation | |
CN104734728A (zh) | 基于mwc系统的盲多带稀疏信号快速恢复算法 | |
CN106844295A (zh) | 一种基于压缩传感的量子态重构方法及系统 | |
CN111814107B (zh) | 一种高精度实现平方根倒数的计算系统及其计算方法 | |
CN104536943B (zh) | 一种低除法量的矩阵求逆定点实现方法及装置 | |
CN107888537A (zh) | 一种在大规模天线系统中改善系统复杂度的信号检测方法 | |
CN104753542A (zh) | 用于ldpc码的比特翻转和线性规划组合译码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
DD01 | Delivery of document by public notice |
Addressee: Wu Jun Document name: Notification of Passing Examination on Formalities |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190607 Termination date: 20200104 |
|
CF01 | Termination of patent right due to non-payment of annual fee |