CN101969310A - Turbo码并行译码器的QPP内交织器及其交织方法 - Google Patents

Turbo码并行译码器的QPP内交织器及其交织方法 Download PDF

Info

Publication number
CN101969310A
CN101969310A CN 201010516709 CN201010516709A CN101969310A CN 101969310 A CN101969310 A CN 101969310A CN 201010516709 CN201010516709 CN 201010516709 CN 201010516709 A CN201010516709 A CN 201010516709A CN 101969310 A CN101969310 A CN 101969310A
Authority
CN
China
Prior art keywords
interleaving
block
value
address
written
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 201010516709
Other languages
English (en)
Other versions
CN101969310B (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.)
Shanghai Jiaotong University
Original Assignee
Shanghai 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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN2010105167099A priority Critical patent/CN101969310B/zh
Publication of CN101969310A publication Critical patent/CN101969310A/zh
Application granted granted Critical
Publication of CN101969310B publication Critical patent/CN101969310B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

一种移动通信技术领域的用于Turbo码并行译码器的QPP内交织器及其交织方法,该内交织器包括:第一交织单元、第二交织单元和存储单元,第一交织单元用于计算出第一个小码块的交织地址并输出至第二交织单元,第二交织单元依据第一个小码块的外信息在交织时待写入的内存块的块号并结合存储单元输出的计算参数来快速计算出其余小码块的外信息在交织时待写入的内存块的块号。本发明能快速地产生并行的无冲突的交织地址,能提高处理速度,适应了Turbo的高速并行要求,该方法只需要少量的存储资源,也不增加译码延迟,而且非常容易实现。

Description

Turbo码并行译码器的QPP内交织器及其交织方法
技术领域
本发明涉及的是一种移动通信技术领域的方法,具体是一种Turbo码并行译码器的QPP内交织器及其交织方法。
背景技术
第三代通信技术(3G)以后的通信标准需要满足的速率很高,如LTE需要达到300Mbps以上,因此Turbo译码在高速率时需要采用并行译码器实现,在并行译码过程中需要同时计算出多个交织器地址,而且这些地址不能造成写内存冲突,所谓的写内存冲突指的是并行译码器在译码过程中要保证在同一时刻不能写入相同的内存块,幸运的是,LTE等通信技术标准中的交织器采用的是二次置换多项式(QPP)交织器,这种交织器是最大无冲突的,可以用于任意并行度的译码。在QPP内交织器中输出比特的下标i与输入比特的下标∏(i)满足以下关系:∏(i)=(f1·i+f2·i2)modK,f1和f2由数据块的长度K决定,它们的值满足QPP交织器最大无冲突的性质。
假设Turbo译码时采用的并行度为W,也就是将码长为K的码块分为W个小码块,每一个小码块的长度为M,它们之间的关系满足:K=W*M。常见的并行度W为2,4,8等。在并行译码过程中在任意时刻i需要同时产生W个交织地址:∏(i+lM),0≤l<W,译码器根据这W个交织地址将该时刻产生的外信息无冲突地写入到W个内存中,完成交织过程,整个交织过程如图1所示。
在整个交织过程中,交织地址生成器是核心,现有的技术实现交织地址生成器主要有两种:一种是基于存储的方法,事先计算好各种码长对应的交织地址并存储在存储单元中,在译码的时候读取即可,这种方法需要占用大量的存储空间,在LTE标准中,粗略估算需要8M左右的内存空间存储所有188种码长对应的交织地址和解交织地址;第二种方法是实时计算的方法,递推计算得到∏(i):
Figure BDA0000029238750000011
其中:g(i)=(2f2i)modK=g(i-1)+(2f2)modK,其中∏(i)的初始值为∏(0)=0,g(i)的初始值为g(0)=0。
将计算出的∏(i)通过串并转换电路后得到并行输出的W个交织地址:∏(i+lM),0≤l<W。这个过程如图2所示;这种实时计算的方法在每一个时钟内只能计算出一个交织地址,要经过一定的延迟才能同时输出W个交织地址,因此造成了很大的延迟才能完成整个译码的过程。
发明内容
本发明针对现有技术存在的上述不足,提供一种Turbo码并行译码器的QPP内交织器及其交织方法,能快速地产生并行的无冲突的交织地址,能提高处理速度,适应了Turbo的高速并行要求,该方法只需要少量的存储资源,也不增加译码延迟,而且非常容易实现。
本发明是通过以下技术方案实现的:
本发明涉及一种Turbo码并行译码器的QPP内交织器,包括:第一交织单元、第二交织单元和存储单元,其中:第一交织单元用于计算出第一个小码块的交织地址并输出至第二交织单元,第二交织单元依据第一个小码块的外信息在交织时待写入的内存块的块号并结合存储单元输出的计算参数来快速计算出其余小码块的外信息在交织时待写入的内存块的块号。
所述的交织地址包括第一个小码块的外信息在交织时待写入的内存块的块号以及写入该内存块的地址。
本发明涉及上述QPP内交织器的交织方法,包括以下步骤:
步骤一、确定并行度为W,则每个小码块的长度为M,其中W与M都为整数,且要满足K=W*M,K为码长;
步骤二、按递推法生成第一个小码块的交织地址∏(i),i为对应的时刻,0≤i<M;
所述的交织地址∏(i)是指:
Figure BDA0000029238750000021
其中:
g(i)=(2f2i)modK=g(i-1)+(2f2)modK,∏(i)的初始值为∏(0)=0,g(i)的初始值为g(0)=0。
步骤三、通过
Figure BDA0000029238750000022
Figure BDA0000029238750000023
的商,
Figure BDA0000029238750000024
Figure BDA0000029238750000025
的余数求出该交织地址所对应的外信息在交织时待写入的内存块的块号
Figure BDA0000029238750000026
以及写入该内存的地址
Figure BDA0000029238750000027
Figure BDA0000029238750000028
步骤四、其余(W-1)个小码块在时刻i的交织地址所对应的外信息在交织时待写入的内存块的地址
Figure BDA0000029238750000029
其中2≤j≤W。
步骤五、根据
Figure BDA00000292387500000210
其中:
Figure BDA00000292387500000211
Figure BDA0000029238750000031
求出其余(W-1)个小码块在时刻i的交织地址所对应的外信息在交织时待写入的内存块的块号具体步骤为:
5.1)计算出在选定的并行度W下各种码长的
Figure BDA0000029238750000033
并存储在存储单元中,其中2≤j≤W;
5.2)计算出在选定的并行度W下各种码长对应的值2f2modW,同样将该值存储在存储单元中;
5.3)在译码过程中,当计算得到了
Figure BDA0000029238750000034
时,同时从存储单元中读取事先存储好的
Figure BDA0000029238750000035
和2f2modW的值,依据的值计算出
Figure BDA0000029238750000037
依据
Figure BDA0000029238750000038
计算出同时依据
Figure BDA00000292387500000310
和2f2modW的值计算出
Figure BDA00000292387500000311
5.4)当计算得到了
Figure BDA00000292387500000312
时,依据
Figure BDA00000292387500000313
的值计算出
Figure BDA00000292387500000314
同时依据
Figure BDA00000292387500000315
和2f2modW的值计算出
Figure BDA00000292387500000316
步骤六、根据以上步骤生成的Ram_addri和Ram_idxi将外信息无冲突的写入W个内存块内,完成交织过程。
本发明的Turbo码并行译码器的QPP内交织器及其交织方法与现有技术的区别主要体现在以下几个方面:首先该方法充分利用了QPP交织器固有的规律直接生成交织时外信息需写入的内存块的块号和写入该内存时的地址;其次在一个时钟内同时生成W个交织地址,无任何延迟;该方法实现非常简单,资源消耗少,能快速地运算出交织地址,满足LET高速并行的要求。
附图说明
图1为Turbo高速并行译码器的交织过程示意图。
图2为现有的并行交织地址生成器结构。
图3为本发明QPP内结构示意图。
图4为本发明交织方法流程图。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图3所示,本实施例涉及一种QPP内交织器,包括:第一交织单元、第二交织单元和存储单元,其中:第一交织单元用递推的方法计算出第一个小码块的交织地址,该交织地址包括第一个小码块的外信息在交织时待写入的内存块的块号以及写入该内存块的地址;第二交织单元依据第一交织单元计算出的第一个小码块的外信息在交织时待写入的内存块的块号来快速计算出其余小码块的外信息在交织时待写入的内存块的块号;
如图4所示,上述QPP内交织器的交织过程包括以下步骤:
第一步、计算出在选定的并行度W下各种码长的
Figure BDA0000029238750000041
并存储在存储单元中。一般而言,
Figure BDA0000029238750000042
的值是有规律性的重复,在LTE标准中,对于W为8,K为2048时,
Figure BDA0000029238750000043
K为40时,
Figure BDA0000029238750000044
只需把
Figure BDA0000029238750000045
中的部分数存储在存储单元中,比如W为8时,对各种码长只要存储
Figure BDA0000029238750000046
中的前两个数,如[7,7],[5,1]等。
第二步、计算出在选定的并行度W下各种码长对应的值2f2modW,同样将该值存储在存储单元中。f2是一个偶数,在LTE标准中,对于W为8时,2f2modW或者为0或者为4。
第三步、在译码过程中,当计算得到了
Figure BDA0000029238750000047
时,同时从存储单元中读取事先存储好的和2f2modW的值,依据
Figure BDA0000029238750000049
的值计算出依据计算出
Figure BDA00000292387500000412
同时依据
Figure BDA00000292387500000413
和2f2modW的值计算出
Figure BDA00000292387500000414
因为
Figure BDA00000292387500000415
满足
Figure BDA00000292387500000416
根据
Figure BDA00000292387500000417
计算出
Figure BDA00000292387500000418
Figure BDA00000292387500000419
可以事先计算出来,它和
Figure BDA00000292387500000420
是一一对应的关系,当从存储单元中读取出
Figure BDA00000292387500000421
时就可以对应得到
Figure BDA00000292387500000422
那么
Figure BDA00000292387500000423
即在一个时钟内就能同时计算出
Figure BDA00000292387500000424
无任何延迟。同时依据
Figure BDA00000292387500000425
和2f2modW的值计算出
Figure BDA00000292387500000426
第四步、当计算得到了
Figure BDA00000292387500000427
时,依据的值计算出同时依据
Figure BDA00000292387500000430
和2f2modW的值计算出重复以上过程,就可以在计算得到了
Figure BDA00000292387500000432
时同时计算出
Figure BDA00000292387500000433
通过以上步骤可见本发明的Turbo码并行译码器的QPP内交织器及其交织方法只需要存储少量的数据(
Figure BDA00000292387500000434
和2f2modW)就可以快速简单的并行计算出W个交织地址,满足了Turbo码高速并行的要求。在LTE标准中,假设选取的并行度W为常见的8并行度,则需要的存储数据量为:188*(3+3+3)=1692bits即可,和现有技术中基于存储的方法所需要的8M bits相比大大减少。

Claims (4)

1.一种用于Turbo码并行译码器的QPP内交织器,其特征在于,包括:第一交织单元、第二交织单元和存储单元,其中:第一交织单元用于计算出第一个小码块的交织地址并输出至第二交织单元,第二交织单元依据第一个小码块的外信息在交织时待写入的内存块的块号并结合存储单元输出的计算参数来快速计算出其余小码块的外信息在交织时待写入的内存块的块号;所述交织地址包括第一个小码块的外信息在交织时待写入的内存块的块号以及写入该内存块的地址。
2.一种根据权利要求1所述的内交织器的交织方法,其特征在于,包括以下步骤:
步骤一、确定并行度为W,则每个小码块的长度为M,其中W与M都为整数,且要满足K=W*M,K为码长;
步骤二、按递推法生成第一个小码块的交织地址∏(i),i为对应的时刻,0≤i<M;
步骤三、通过的商,
Figure FDA0000029238740000013
Figure FDA0000029238740000014
的余数求出该交织地址所对应的外信息在交织时待写入的内存块的块号
Figure FDA0000029238740000015
以及写入该内存的地址
Figure FDA0000029238740000016
Figure FDA0000029238740000017
步骤四、其余(W-1)个小码块在时刻i的交织地址所对应的外信息在交织时待写入的内存块的地址
Figure FDA0000029238740000018
其中2≤j≤W;
步骤五、根据
Figure FDA0000029238740000019
其中:
Figure FDA00000292387400000111
求出其余(W-1)个小码块在时刻i的交织地址所对应的外信息在交织时待写入的内存块的块号
Figure FDA00000292387400000112
步骤六、根据以上步骤生成的Ram_addri和Ram_idxi将外信息无冲突的写入W个内存块内,完成交织过程。
3.根据权利要求2所述的根据权利要求1所述的内交织器的交织方法,其特征是,所述的交织地址∏(i)是指:其中:g(i)=(2f2i)modK=g(i-1)+(2f2)modK,∏(i)的初始值为∏(0)=0,g(i)的初始值为g(0)=0。
4.根据权利要求2所述的根据权利要求1所述的内交织器的交织方法,其特征是,所述的步骤五具体包括以下步骤:
第一步、计算出在选定的并行度W下各种码长的
Figure FDA0000029238740000021
并存储在存储单元中,其中2≤j≤W;
第二步、计算出在选定的并行度W下各种码长对应的值2f2modW,同样将该值存储在存储单元中;
第三步、在译码过程中,当计算得到了时,同时从存储单元中读取事先存储好的
Figure FDA0000029238740000023
和2f2modW的值,依据的值计算出
Figure FDA0000029238740000025
依据
Figure FDA0000029238740000026
计算出
Figure FDA0000029238740000027
同时依据
Figure FDA0000029238740000028
和2f2modW的值计算出
Figure FDA0000029238740000029
第四步、当计算得到了时,依据
Figure FDA00000292387400000211
的值计算出
Figure FDA00000292387400000212
同时依据
Figure FDA00000292387400000213
和2f2modW的值计算出
Figure FDA00000292387400000214
CN2010105167099A 2010-10-22 2010-10-22 Turbo码并行译码器的QPP内交织器及其交织方法 Expired - Fee Related CN101969310B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105167099A CN101969310B (zh) 2010-10-22 2010-10-22 Turbo码并行译码器的QPP内交织器及其交织方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105167099A CN101969310B (zh) 2010-10-22 2010-10-22 Turbo码并行译码器的QPP内交织器及其交织方法

Publications (2)

Publication Number Publication Date
CN101969310A true CN101969310A (zh) 2011-02-09
CN101969310B CN101969310B (zh) 2012-11-28

Family

ID=43548420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105167099A Expired - Fee Related CN101969310B (zh) 2010-10-22 2010-10-22 Turbo码并行译码器的QPP内交织器及其交织方法

Country Status (1)

Country Link
CN (1) CN101969310B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102324999A (zh) * 2011-05-16 2012-01-18 中兴通讯股份有限公司 一种交织地址的并行计算方法及系统
CN102356554A (zh) * 2011-08-23 2012-02-15 华为技术有限公司 Turbo码数据交织处理方法和用于交织Turbo码数据的交织器
CN102739358A (zh) * 2012-06-01 2012-10-17 武汉邮电科学研究院 一种用于LTE的并行Turbo码内交织器的实现方法
CN104184536A (zh) * 2013-05-21 2014-12-03 华为技术有限公司 基于LTE Turbo译码的子块交织控制方法、装置及设备
WO2017000682A1 (zh) * 2015-06-30 2017-01-05 深圳市中兴微电子技术有限公司 一种译码方法、装置及存储介质
CN108845958A (zh) * 2018-06-19 2018-11-20 中国科学院软件研究所 一种交织器映射和动态内存管理系统及方法
CN113992212A (zh) * 2021-12-27 2022-01-28 成都星联芯通科技有限公司 数据交织方法及fpga

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008067149A2 (en) * 2006-11-30 2008-06-05 Motorola, Inc. Turbo-encoding with contention-free interleavers

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008067149A2 (en) * 2006-11-30 2008-06-05 Motorola, Inc. Turbo-encoding with contention-free interleavers

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《ICIEA 2008》 20080605 Guihua Zhang etc. Design of Turbo Codes Based on QPP Interleavers for Deep-space Communication 第591-595页 1-4 , *
《计算机工程与设计》 20080930 黄卉等 基于非规则方法的并行Turbo交织器研究 第4678-4680页 1-4 第29卷, 第18期 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102324999A (zh) * 2011-05-16 2012-01-18 中兴通讯股份有限公司 一种交织地址的并行计算方法及系统
CN102324999B (zh) * 2011-05-16 2015-12-16 中兴通讯股份有限公司 一种交织地址的并行计算方法及系统
CN102356554A (zh) * 2011-08-23 2012-02-15 华为技术有限公司 Turbo码数据交织处理方法和用于交织Turbo码数据的交织器
WO2012083714A1 (zh) * 2011-08-23 2012-06-28 华为技术有限公司 Turbo码数据交织处理方法和用于交织turbo码数据的交织器
CN102356554B (zh) * 2011-08-23 2013-06-12 华为技术有限公司 Turbo码数据交织处理方法和用于交织Turbo码数据的交织器
CN102739358A (zh) * 2012-06-01 2012-10-17 武汉邮电科学研究院 一种用于LTE的并行Turbo码内交织器的实现方法
CN104184536A (zh) * 2013-05-21 2014-12-03 华为技术有限公司 基于LTE Turbo译码的子块交织控制方法、装置及设备
CN104184536B (zh) * 2013-05-21 2018-05-11 华为技术有限公司 基于LTE Turbo译码的子块交织控制方法、装置及设备
WO2017000682A1 (zh) * 2015-06-30 2017-01-05 深圳市中兴微电子技术有限公司 一种译码方法、装置及存储介质
CN108845958A (zh) * 2018-06-19 2018-11-20 中国科学院软件研究所 一种交织器映射和动态内存管理系统及方法
CN108845958B (zh) * 2018-06-19 2022-05-17 中国科学院软件研究所 一种交织器映射和动态内存管理系统及方法
CN113992212A (zh) * 2021-12-27 2022-01-28 成都星联芯通科技有限公司 数据交织方法及fpga

Also Published As

Publication number Publication date
CN101969310B (zh) 2012-11-28

Similar Documents

Publication Publication Date Title
CN101969310B (zh) Turbo码并行译码器的QPP内交织器及其交织方法
CN101777924B (zh) 一种Turbo码译码方法和装置
CN101854177B (zh) 一种高吞吐率的ldpc译码器
CN104092470A (zh) 一种Turbo码译码装置及方法
CN100546207C (zh) 一种基于DVB-RCS标准的双二元Turbo码译码方法
CN103905067B (zh) 多模译码器实现方法及装置
TWI569587B (zh) 解迴旋交錯器
CN104168032A (zh) 兼容LTE和WiMAX的4并行度、基-16高性能Turbo译码器
WO2012083714A1 (zh) Turbo码数据交织处理方法和用于交织turbo码数据的交织器
CN101489135A (zh) 一种方便ldpc长码在fpga实现的编码器及编码方法
Lee et al. VLSI implementation for low density parity check decoder
CN102158235A (zh) turbo译码的方法及装置
CN100508405C (zh) 提高Turbo码译码速度的并行译码方法及译码装置
CN102111163B (zh) Turbo编码器及编码方法
CN103986557A (zh) 低路径延迟的LTE Turbo码并行分块译码方法
CN102130696A (zh) 错误纠正码编码器、错误纠正码解码器、交织/去交织方法及软入软出解码方法
CN101931453A (zh) 一种基于随机序列的用于交织多址系统的方法
CN101662292B (zh) 一种交织器的确定方法及装置
CN103684655B (zh) 译码校验装置和方法、译码装置和方法以及接收端
CN102270993B (zh) 一种同时实现交织与解交织的Turbo译码器
CN102227097B (zh) 一种可变长度s随机交织器的生成方法
Chu et al. Power efficient low latency survivor memory architecture for Viterbi decoder
CN102201817A (zh) 基于存储器折叠架构优化的低功耗ldpc译码器
CN102571107A (zh) LTE系统中高速并行Turbo码的解码系统及方法
CN101924566B (zh) 用于长期演进的Turbo编码方法和Turbo编码器

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

Granted publication date: 20121128

Termination date: 20151022

EXPY Termination of patent right or utility model