CN103957016B - 一种低存储容量的Turbo码译码器及其设计方法 - Google Patents
一种低存储容量的Turbo码译码器及其设计方法 Download PDFInfo
- Publication number
- CN103957016B CN103957016B CN201410199648.6A CN201410199648A CN103957016B CN 103957016 B CN103957016 B CN 103957016B CN 201410199648 A CN201410199648 A CN 201410199648A CN 103957016 B CN103957016 B CN 103957016B
- Authority
- CN
- China
- Prior art keywords
- beta
- turbo code
- lifo
- smc
- tolerance
- 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.)
- Expired - Fee Related
Links
Abstract
本发明提供一种低存储容量的Turbo码译码器及其设计方法,包括BMUα和BMUβ,所述BMUβ与LIFO SMC存储器相连,所述BMUα与LIFO SMC存储器均连接至后验概率LLR计算单元,所述BMUβ和LIFO SMC存储器之间通过一个压缩计算单元相连,所述LIFO SMC存储器和后验概率LLR计算单元之间通过一个再生计算单元相连,所述压缩计算单元对后向度量进行排序构造序号数组并计算增量值,所述序号数组与增量值存储于所述LIFO SMC存储器中,所述再生计算单元访问所述LIFO SMC存储器中的序号数组与增量值,估算后向度量。本发明所提供的Turbo译码器,LIFO SMC容量降低效果更好,不仅适用于单比特Turbo码,也适用于双二元的Turbo码,使低LIFO SMC容量译码器结构设计方案得到了统一。
Description
技术领域
本发明涉及通信技术领域,更具体的说,涉及一种低存储容量的Turbo码译码器及其设计方法。
背景技术
Turbo码是一类具有逼近香农极限的纠错码,可以提高系统容量和通信服务质量,目前在现代大容量宽带通信系统中得到了广泛的应用,并形成了一系列的技术标准,如第三代移动通信的3GPP标准,全球微波互联接入WiMAX,第四代宽带大容量无线通信系统802.16m等。在采用Turbo码的接收机中,Turbo码的译码器结构设计对接收机整体性能具有非常重要的影响。经典的Turbo码分量译码器结构如图1所示,该分量译码器工作过程如下:1)按时序从后向前读取接收机软比特值和先验概率LLR(对数似然比),在BMUβ(后向度量计算单元)中计算分支度量;2)在后向度量计算单元中,从后向前递归计算后向度量,并将后向度量值存放在LIFO SMC(后进先出的状态度量缓存)中;3)按时序从前向后读取接收机软比特值和先验概率LLR,在BMUα(前向度量计算单元)中计算分支度量;4)在前向度量计算单元,递归计算前向度量;5)利用BMUα计算的分支度量,前向递归计算的前向度量,以及访问LIFO SMC存储器读取的后向度量,计算后验概率LLR,然后在外信息计算单元计算出外信息值。
由于前向度量与后向度量的计算方向正好相反,分量译码器中须有大容量的后进先出LIFO SMC,写入递归计算的后向度量值;而在计算后验概率LLR时,又须访问LIFO SMC才能读出后向度量值。在Turbo码译码器的硬件实现中,大容量的LIFO SMC增加了芯片面积,扩大了静态工作电流;对LIFO SMC频繁的访问操作,则扩大了译码器的动态工作电流。与LIFO SMC相关的功耗,占整个译码器功耗的50%以上。
为降低译码器的功耗,一个有效的策略是以增加计算量为代价,减少对LIFO SMC的访问次数或LIFO SMC容量。对于单比特的Turbo码,可设置反转计算单元和反转标志寄存器,先用反转计算单元测试度量值的反向计算可能性,将那些不能被反转计算的度量值标志存放起来。之后,根据反转计算标志,对于能被反转计算的度量值,通过反转计算得到,而不必访问LIFO SMC;不能被反转计算的度量值,则通过访问LIFO SMC得到,从而有效降低了对LIFO SMC的访问次数。对于双二元Turbo码,因其网格图比单比特Turbo码要复杂的多,使得反转计算法过于复杂,且译码延时较大,又提出了追溯计算的译码器设计方法。在这种方法中,LIFO SMC存储的是度量差值和符号比特,使得LIFO SMC的位宽更小;利用度量差值和符号比特,追溯计算单元又能恢复出对应的度量值,从而降低了LIFO SMC的容量。
发明内容
针对上述现有技术中存在的技术问题,本发明提供一种低存储容量的Turbo码译码器及其设计方法,更大幅度降低了LIFO SMC容量,不仅适用于单比特Turbo码,也适用于双二元的Turbo码,使低LIFO SMC容量译码器结构设计方案得到了统一。
为达到上述目的,本发明所采用的技术方案如下:
一种低存储容量的Turbo码译码器,包括BMUα(前向度量计算单元)和BMUβ(后向度量计算单元),所述BMUβ与LIFO SMC存储器相连,所述BMUα与LIFO SMC存储器均连接至后验概率LLR计算单元,所述BMUβ和LIFO SMC存储器之间通过一个压缩计算单元相连,所述LIFOSMC存储器和后验概率LLR计算单元之间通过一个再生计算单元相连,所述压缩计算单元对后向度量进行排序构造序号数组并计算增量值,所述序号数组与增量值存储于所述LIFOSMC存储器中,所述再生计算单元访问所述LIFO SMC存储器中的序号数组与增量值,估算后向度量。
所述压缩计算单元包括排序模块。
所述排序模块包括比较单元。
所述再生计算单元包括递归加计算模块。
所述再生计算单元包括序号重排模块。
一种低存储容量的Turbo码译码器设计方法,采用上述的Turbo码译码器来完成,其中,所述压缩计算单元对后向度量进行排序构造序号数组并计算增量值的设计方法如下:
设Turbo码的状态数为n,n是4的倍数,则每个译码时刻有n个后向度量βk(sj2,k),其中j2=0,1,2,…n-1为后向度量的状态序号,k为译码时序,所述压缩计算单元的工作步骤如下:
1)、将计算的n个后向度量输入到排序模块,由公式(1)得到序号数组ISk:
2)、由公式(2)计算对应的v个增量值βincv,k:
所述后向度量βk(sj2,k)依次输入所述排序模块中的比较单元CU,数值大的度量和对应的序号经输出端口传给下一级CU,较小的度量和序号反馈回比较器,并在反馈端口输出,对于n个后向度量βk(sj2,k),排序模块中共包括n-1个CU,前后串接,将输入的后向度量中最小的度量值和序号由反馈端口输出,而将其他度量值输出给下一个CU,当最后一个CU完成比较后,即可得到序号数组ISk,以及用于计算增量值βincv,k的后向度量。
所述再生计算单元利用访问LIFO SMC存储器中的ISk和βincv,k,依以下步骤估算n个后向度量:
1)、在所述再生计算单元的第一个递归加计算模块,从0初值开始递归加βinc1,k,依次计算j2×βinc1,k(j2=0,1,2,3,4);
2)、在所述再生计算单元的第d(d=2,…,v)个递归加计算模块,βincd,k用于递归加计算
3)、在所述再生计算单元的序号重排模块,由式(3)将上述步骤1)和2)估算的度量值,分配给对应序号的后向度量
与现有技术相比,本发明的有益效果如下:
1、单比特的Turbo码和双二元Turbo码,低功耗译码器的结构设计方法有很大不同,很难设计兼容的单比特Turbo码和双二元Turbo码译码器。本发明的Turbo码译码器设计方案,只与前向(或后向)度量的数量有关系,即适用于单比特Turbo码,也适用于双二元的Turbo码,使低LIFO SMC容量译码器结构设计方案得到了统一。
2、已有的低功耗译码器结构设计方案,对LIFO SMC的访问次数和LIFO SMC容量降低幅度有限。本发明采用了新的设计思路,LIFO SMC中存储的是度量序号和增量值,大幅度降低了LIFO SMC容量。以8状态的Turbo码为例,LIFO SMC容量降低了57.5%。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是经典的Turbo码分量译码器结构图;
图2是本发明所提供的Turbo码分量译码器结构图;
图3(a)是比较单元结构图;
图3(b)是排序模块结构图;
图4是压缩计算单元与再生计算单元结构图;
图5是单比特Turbo码误码率性能比较图;
图6是双二元卷积Turbo码误码率性能比较图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
与已有的Turbo码译码器结构设计方案相比,本发明的最大特征在于LIFO SMC中存储的不是度量值,而是度量值的序号和增量值。为此,在经典Turbo码的译码器结构设计方案的基础上,增加了一个压缩计算单元和一个再生计算单元。压缩计算单元位于后向度量计算单元和LIFO SMC之间,而再生计算单元位于LIFO SMC和后验概率LLR计算单元之间,如图2所示。
设Turbo码的状态数为n(n是4的倍数),则每个译码时刻有n个后向度量βk(sj2,k),其中j2=0,1,2,…n-1为后向度量的状态序号,k为译码时序。压缩计算单元的工作步骤如下:
1)、将计算的n个后向度量输入到排序模块,由公式(1)得到序号数组ISk:
2)、由公式(2)计算对应的v个增量值βincv,k:
由压缩计算单元工作步骤,n个后向度量需做排序计算,从度量值小到大的顺序构造序号数组ISk,并输出对应的后向度量用于计算增量值βincv,k。实现上述功能的结构如图3(a)和图3(b)所示。图3(a)为比较单元(CU)的结构原理图,后向度量βk(sj2,k)依次输入,数值大的度量和对应的序号经输出端口传给下一级CU,较小的度量和序号反馈回比较器,并在反馈端口输出。对于n个后向度量βk(sj2,k),图3(b)中共n-1个CU,前后串接,将输入的后向度量中最小的度量值和序号由反馈端口输出,而将其他度量值输出给下一个CU,当最后一个CU完成比较后,即可得到序号数组ISk,以及用于计算增量值βincv,k的后向度量。
再生计算单元利用访问LIFO SMC得到的ISk和βincv,k,依以下步骤估算n个后向度量:
1)、在第一个递归加计算模块,从0初值开始递归加βinc1,k,依次计算j2×βinc1,k(j2=0,1,2,3,4);
2)、在第d(d=2,…,)v个递归加计算模块,βincd,k用于递归加计算
3)、在序号重排模块,由式(3)将步骤1)和2)估算的度量值,分配给对应序号的后向度量
压缩计算单元与再生计算单元结构图如图4所示。
在经典Turbo码的译码器结构设计中,度量值采用(10,3)量化方案(10表示每个度量值在存储器中占10个比特的宽度,3表示小数部分为3个比特,以下类似)。对于一n状态的Turbo码,设译码窗口宽度为N,则LIFO SMC的容量为10×n×N。本发明的Turbo码译码器结构设计方案,增加了一个压缩计算和一个再生计算单元,存储的是度量值的序号和增量值,每个序号所占的比特宽度为共有个增量值,采用的(5,3)的量化方案,因此LIFO SMC的容量为因此,本发明的Turbo码译码器结构设计方案具有更小的LIFO SMC容量。
以8状态的Turbo码为例,表1给出了LIFO SMC容量比较结果。与经典的译码器结构设计方案相比,LIFO SMC容量降低了57.5%,且优于追溯计算的译码器结构设计方案。
表1 8状态Turbo码的LIFO SMC容量比较
再生计算单元,以一定的误差估算后向度量,而误码率性能约降低0.1dB。以3GPP标准中的单比特Turbo码和802.16m标准中的双二元卷积Turbo码为例,信息帧长为800比特,迭代次数为8次,在高斯白噪声信道和Log-MAP算法条件下,图5和图6分别给出了单比特Turbo码和双二元卷积Turbo码误码率BER的性能仿真比较曲线图。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (8)
1.一种低存储容量的Turbo码译码器,包括BMUα(前向度量计算单元)和BMUβ(后向度量计算单元),所述BMUβ与LIFO SMC存储器相连,所述BMUα与LIFO SMC存储器均连接至后验概率LLR计算单元,其特征在于,所述BMUβ和LIFO SMC存储器之间通过一个压缩计算单元相连,所述LIFO SMC存储器和后验概率LLR计算单元之间通过一个再生计算单元相连,所述压缩计算单元对后向度量进行排序构造序号数组并计算增量值,所述序号数组与增量值存储于所述LIFO SMC存储器中,所述再生计算单元访问所述LIFO SMC存储器中的序号数组与增量值,估算后向度量。
2.根据权利要求1所述的低存储容量的Turbo码译码器,其特征在于,所述压缩计算单元包括排序模块。
3.根据权利要求2所述的低存储容量的Turbo码译码器,其特征在于,所述排序模块包括比较单元。
4.根据权利要求1所述的低存储容量的Turbo码译码器,其特征在于,所述再生计算单元包括递归加计算模块。
5.根据权利要求4所述的低存储容量的Turbo码译码器,其特征在于,所述再生计算单元包括序号重排模块。
6.一种低存储容量的Turbo码译码器设计方法,其特征在于,采用如权利要求1至5中任一所述的Turbo码译码器来完成,其中,所述压缩计算单元对后向度量进行排序构造序号数组并计算增量值的设计方法如下:
设Turbo码的状态数为n,n是4的倍数,则每个译码时刻有n个后向度量βk(sj2,k),其中j2=0,1,2,…n-1为后向度量的状态序号,k为译码时序,所述压缩计算单元的工作步骤如下:
1)、将计算的n个后向度量输入到排序模块,由公式(1)得到序号数组ISk:
2)、由公式(2)计算对应的v个增量值βincv,k:
7.根据权利要求6所述的低存储容量的Turbo码译码器设计方法,其特征在于,所述后向度量βk(sj2,k)依次输入所述排序模块中的比较单元CU,数值大的度量和对应的序号经输出端口传给下一级CU,较小的度量和序号反馈回比较器,并在反馈端口输出,对于n个后向度量βk(sj2,k),排序模块中共包括n-1个CU,前后串接,将输入的后向度量中最小的度量值和序号由反馈端口输出,而将其他度量值输出给下一个CU,当最后一个CU完成比较后,即可得到序号数组ISk,以及用于计算增量值βincv,k的后向度量。
8.根据权利要求7所述的低存储容量的Turbo码译码器设计方法,其特征在于,所述再生计算单元利用访问LIFO SMC存储器中的ISk和βincv,k,依以下步骤估算n个后向度量:
1)、在所述再生计算单元的第一个递归加计算模块,从0初值开始递归加βinc1,k,依次计算j2×βinc1,k(j2=0,1,2,3,4);
2)、在所述再生计算单元的第d(d=2,…,v)个递归加计算模块,βincd,k用于递归加计算
3)、在所述再生计算单元的序号重排模块,由式(3)将上述步骤1)和2)估算的度量值,分配给对应序号的后向度量
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410199648.6A CN103957016B (zh) | 2014-05-12 | 2014-05-12 | 一种低存储容量的Turbo码译码器及其设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410199648.6A CN103957016B (zh) | 2014-05-12 | 2014-05-12 | 一种低存储容量的Turbo码译码器及其设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103957016A CN103957016A (zh) | 2014-07-30 |
CN103957016B true CN103957016B (zh) | 2017-02-15 |
Family
ID=51334257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410199648.6A Expired - Fee Related CN103957016B (zh) | 2014-05-12 | 2014-05-12 | 一种低存储容量的Turbo码译码器及其设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103957016B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105939160B (zh) * | 2016-01-04 | 2019-06-07 | 西南大学 | LTE-Advanced标准中低存储容量Turbo码译码器及设计方法 |
CN107147401B (zh) * | 2017-03-31 | 2019-06-21 | 西安电子科技大学 | 基于简化双二元Turbo码度量值的译码方法 |
CN108449092B (zh) * | 2018-04-03 | 2022-02-08 | 西南大学 | 一种基于循环压缩的Turbo码译码方法及其装置 |
CN111181575B (zh) * | 2019-12-19 | 2021-09-14 | 西南大学 | 一种基于反向蝶形计算的Turbo码译码器及处理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697492A (zh) * | 2009-11-02 | 2010-04-21 | 广州杰赛科技股份有限公司 | 双二元卷积Turbo码译码方法和装置 |
CN102523076A (zh) * | 2012-01-04 | 2012-06-27 | 西安电子科技大学 | 通用可配置的高速率Turbo码译码系统及其方法 |
-
2014
- 2014-05-12 CN CN201410199648.6A patent/CN103957016B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101697492A (zh) * | 2009-11-02 | 2010-04-21 | 广州杰赛科技股份有限公司 | 双二元卷积Turbo码译码方法和装置 |
CN102523076A (zh) * | 2012-01-04 | 2012-06-27 | 西安电子科技大学 | 通用可配置的高速率Turbo码译码系统及其方法 |
Non-Patent Citations (1)
Title |
---|
一种基于对称性的双向双二进制卷积Turbo码译码结构研究;詹明 等,;《电子与信息学报》;20120531;第34卷(第5期);第1179-1184页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103957016A (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Reduced-latency SC polar decoder architectures | |
CN101951266B (zh) | Turbo并行译码的方法及译码器 | |
CN103957016B (zh) | 一种低存储容量的Turbo码译码器及其设计方法 | |
CN100425000C (zh) | 双涡轮结构低密度奇偶校验码解码器及解码方法 | |
CN101388674B (zh) | 一种译码的方法、译码器以及Turbo码译码器 | |
CN104092470B (zh) | 一种Turbo码译码装置及方法 | |
CN101777921B (zh) | 用于显式存储片上系统的结构化ldpc码译码方法及装置 | |
US8661308B2 (en) | Method and device for fast cyclic redundancy check coding | |
CN105634508A (zh) | 一种低复杂度近性能限的Turbo译码器的实现方法 | |
CN102340320B (zh) | 卷积Turbo码双向并行译码方法 | |
CN104168032A (zh) | 兼容LTE和WiMAX的4并行度、基-16高性能Turbo译码器 | |
CN101147327B (zh) | 使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置 | |
CN102404011A (zh) | 维特比解码实现方法及装置 | |
CN103986557A (zh) | 低路径延迟的LTE Turbo码并行分块译码方法 | |
CN101420279A (zh) | 移动多媒体广播中高速ldpc译码器及译码方法 | |
CN101299613B (zh) | ZigZag码译码方法及其装置 | |
CN102611464B (zh) | 基于外信息并行更新的Turbo译码器 | |
WO2017128731A1 (zh) | 动态功耗控制的编码方法及编解码器 | |
CN103595424A (zh) | 分量译码方法、译码器及Turbo译码方法、装置 | |
CN103475378B (zh) | 一种适用于光通信的高吞吐率ldpc译码器 | |
CN105375934A (zh) | 一种针对咬尾卷积码的Viterbi解码器及解码方法 | |
CN103701475B (zh) | 移动通信系统中8比特运算字长Turbo码的译码方法 | |
CN102571107A (zh) | LTE系统中高速并行Turbo码的解码系统及方法 | |
CN102832951B (zh) | 一种基于概率计算的ldpc译码公式的实现方法 | |
Bhowal | Transformation of ACS module to CSA module of low-power Viterbi decoder for digital wireless communication applications |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170215 Termination date: 20200512 |