CN100571097C - 一种用于Turbo码译码器中减少存储资源的方法 - Google Patents

一种用于Turbo码译码器中减少存储资源的方法 Download PDF

Info

Publication number
CN100571097C
CN100571097C CNB2005101107539A CN200510110753A CN100571097C CN 100571097 C CN100571097 C CN 100571097C CN B2005101107539 A CNB2005101107539 A CN B2005101107539A CN 200510110753 A CN200510110753 A CN 200510110753A CN 100571097 C CN100571097 C CN 100571097C
Authority
CN
China
Prior art keywords
homogeneous
turbo code
data
code decoder
decoder
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.)
Active
Application number
CNB2005101107539A
Other languages
English (en)
Other versions
CN1790967A (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 Xuanpu Industrial Co., Ltd.
Original Assignee
SHANGHAI XUANPU INDUSTRIAL Co Ltd
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 XUANPU INDUSTRIAL Co Ltd filed Critical SHANGHAI XUANPU INDUSTRIAL Co Ltd
Priority to CNB2005101107539A priority Critical patent/CN100571097C/zh
Publication of CN1790967A publication Critical patent/CN1790967A/zh
Application granted granted Critical
Publication of CN100571097C publication Critical patent/CN100571097C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明提供一种用于Turbo码译码器中减少存储资源的方法,其包含以下步骤:1、对Turbo码译码器的输入信号,软输入/软输出译码器产生的外附信息进行非均匀压缩;2、将非均匀压缩后的数据存入存储器;3、应用与步骤1中的非均匀压缩算法对应的非均匀解压缩算法,解压缩由存储器中读出的数据;4、Turbo码译码器用步骤3中产生的非均匀解压缩后的数据进行译码运算。本发明方法对Turbo码译码器的输入信号和外附信息进行非均匀压扩,可以在基本不降低Turbo译码器性能的情况下,大大节省Turbo码译码器的存储资源消耗。

Description

一种用于Turbo码译码器中减少存储资源的方法
技术领域
本发明涉及一种应用于通信***或者无线通信***的,特别是码分多址(Code-Division Multiple Access,简称CDMA)***中节省Turbo码译码器存储资源的方法。
背景技术
信道编、解码技术在整个移动通信***中具有相对独立的地位,是其关键技术之一,决定着移动通信***的性能。信道编、解码主要是降低信号传播功率和解决信号在无线传播环境中不可避免的衰落问题。编、解码技术结合交织技术的使用可以降低误码率性能,与无编码情况相比,传统的卷积码可以将误码率降低两个数量级达到10-3~10-4,而Turbo码可以将误码率进一步降低到10-6,逼近香农极限。此外,Turbo码还具有编、解码实现较为简单等优点。
由于Turbo码的一系列优点,它已经在各个移动通信标准中得到了很大的应用,第三代移动通信标准的cdma2000、WCDMA(Wideband Code-DivisionMultiple Access,宽带码分多址)和时分同步码分多址(Time DivisionSynchronous Code-Division Multiple Access,简称TD-SCDMA)***中都将Turbo码作为信道编码方案之一,用于高数据速率(32kbps以上)、高业务质量的物理链路。
Turbo码的原理是基于对传统级联码的算法和结构的修正,内交织器的引入使得迭代解码的正反馈得到了很好的消除。Turbo码编码器由两个递归***卷积码(recursive systematic convolutional code,简称RSC码)、内交织器和删除器组成。如图1所示,为cdma2000***中的Turbo码编码器的结构,根据符号删除器打孔(puncture)形式的不同,该Turbo码的编码码率可以在1/6到1/2之间变化。从译码复杂度和译码性能两方面综合考虑,Turbo码一般采用迭代形式的最大后验概率(maximum a posteriori,简称MAP)译码算法进行译码。由于MAP算法的运算复杂度较高,近来又衍生出了两类简化的MAP算法,分别为Log-MAP算法和Max-Log-MAP算法。图2给出了经典的Turbo码迭代译码器结构图。Turbo码译码器由两个基于MAP算法的软输入、软输出译码器(soft-input soft-output decoder,简称SISO译码器)、交织器和去交织器构成,经对输入信号交替译码、软输出多次迭代译码、过零硬判决后得到译码输出。
Turbo码译码器实现的一个难点在于它需要消耗大量的存储单元。以WCDMA***Turbo码为例,它需要支持的最大帧长为5114,同时由于WCDMA***Turbo码的码率为1/3,再加上12个尾比特,因此Turbo码译码器的输入数据个数为(5114×3+12)。假设译码器的输入信号为N比特(通常需要6比特),则译码器输入共有(5114×3+12)×N=15354×N比特;同时假设译码器内部两个软输入/软输出译码器(SISO译码器)产生的外附信息(extrinsic information,zik)为M比特(通常需要10比特),则外附信息共有5114×2×M=10288×M比特。因此如何在尽可能不降低译码器性能的情况下,减少输入比特和外附信息的位宽,将大大节省Turbo码译码器的存储资源消耗,减少专用集成电路(Application Specified Integrated Circuit,简称ASIC)的面积,降低成本。
Turbo码译码器需要的存储器资源主要用来存储输入数据和外附信息,很显然可以采用线性压扩的方法节省Turbo码译码器的存储资源消耗。但是如果采用线性压缩的方法,信号幅度小的值将被进一步压缩为0,仿真结果表明这将对Turbo码译码器的性能产生较大的劣化。
故可采用非均匀压扩的方法节省Turbo码译码器的存储资源消耗,目前在语音编码***中使用较为普遍的非均匀压缩的方法包括μ率非均匀压缩算法和A率非均匀压缩算法:
所述的μ率非均匀压缩算法公式如下所示:
y = y max × log e [ 1 + μ ( | x | / x max ) ] log e ( 1 + μ ) sgn ( x )
sgn ( x ) = + 1 , x &GreaterEqual; 0 - 1 , x < 0
其中,μ是一正常数,x和y分别代表输入和输出信号,xmax和ymax分别是输入和输出信号的最大值。
所述的A率非均匀压缩算法公式如下所示:
y = y max &times; A &times; ( | x | / x max ) 1 + log e A sgn ( x ) , 0 < | x | x max &le; 1 A y max &times; 1 + log e [ A ( | x | / x max ) ] 1 + log e A sgn ( x ) , 1 A < | x | x max < 1
sgn ( x ) = + 1 , x &GreaterEqual; 0 - 1 , x < 0
其中,A是一正常数,x和y分别代表输入和输出信号,xmax和ymax分别是输入和输出信号的最大值。
但上述两种非均匀压缩算法均为对数压缩方法,由于Turbo码译码器的输入数据和SISO译码器产生的外附信息都是定点数据,故在硬件实现上是相当复杂,有一定难度的,故μ率/A率非均匀压缩算法均不适用于Turbo码译码器。
发明内容
本发明的目的在于提供一种用于Turbo码译码器中减少存储资源的方法,对Turbo码译码器的输入信号和外附信息进行非均匀压扩,可以在基本不降低Turbo译码器性能的情况下,大大节省Turbo码译码器的存储资源消耗。
为达上述目的,本发明提供一种用于Turbo码译码器中减少存储资源的方法,其包含以下步骤:
步骤1:对Turbo码译码器的输入信号,以及软输入/软输出译码器产生的外附信息进行非均匀压缩,减少数据的位宽比特数:
所述的非均匀压缩算法为:对需要进行非均匀压缩的数据信号根据幅度的大小进行分段;对于幅度较小的数据信号,保持输入信号不变;对于幅度依次增大的信号,采用斜率依次递减,且斜率均小于1的线性函数进行分段线性压缩;该非均匀压缩算法的分段函数表达式为:
y = ( x + A 1 ) / k 1 + B 1 m 1 &le; x &le; n 1 &CenterDot; &CenterDot; &CenterDot; ( x + A i ) / k i + B i m i &le; x &le; n i &CenterDot; &CenterDot; &CenterDot; ( x + A N ) / k N + B N m N &le; x &le; n N - - - ( 1 )
其中,1/ki表示斜率,ki>1,ki体现了各分段函数的压缩特性;调整Ai和Bi的值,使各分段函数接口处的值保持一致;
步骤2:将经过非均匀压缩的数据存入存储器(Memory)中,可节省存储资源;
步骤3:应用与步骤1中的非均匀压缩算法对应的非均匀解压缩算法,对从存储器中读出的数据进行解压缩,恢复原始信号所包含的信息;
所述的非均匀解压缩算法与步骤1中所述的非均匀压缩算法互为逆函数关系,其函数表达式为:
y = ( x - B 1 ) &times; k 1 - A 1 ( m 1 + A 1 ) / k 1 + B 1 &le; x &le; ( n 1 + A 1 ) / k 1 + B 1 &CenterDot; &CenterDot; &CenterDot; ( x - B i ) &times; k i - A i ( m i + A i ) / k i + B i &le; x &le; ( n i + A i ) / k i + B i &CenterDot; &CenterDot; &CenterDot; ( x - B N ) &times; k N - A N ( m N + A N ) / k N + B N &le; x &le; ( n N + A N ) / k N + B N - - - ( 2 )
步骤4:Turbo码译码器用步骤3中产生的非均匀解压缩后的数据进行译码运算。
本发明提供的一种用于Turbo码译码器中减少存储资源的方法,采用非均匀压缩算法对Turbo码译码器的输入信号和外附信息进行非均匀压缩:即对信号在幅度小的区域内增加量化级数,保持数据精度,对信号在幅度大的区域减少量化级数,节省数据存储宽度,在保证Turbo码译码器的译码性能的情况下,节省Turbo码译码器的存储资源。
附图说明
图1为背景技术中cdma2000***的Turbo码编码器;
图2为背景技术中Turbo码迭代译码器;
图3为本发明提供的用于Turbo码译码器中减少存储资源的方法的示意图;
图4为采用不同的压缩方案时,帧长5114的WCDMA***Turbo码译码器的误码率曲线;
图5为采用不同的压缩方案时,帧长5114的WCDMA***Turbo码译码器的误帧率曲线。
具体实施方式
以下通过图3~图5,结合WCDMA***的Turbo码,说明本发明的一个具体实施例,以使进一步了解本发明的发明内容。
由于采用的WCDMA***Turbo码译码器的输入信号的数据位宽为6比特,软输入/软输出译码器(SISO译码器)产生的外附信息的数据位宽为10比特,故该译码器所需要的存储单元为:
(5114×3+12)×6+5114×2×10=194404比特。
如图3所示,本实施例的具体步骤如下:
步骤1:对Turbo码译码器的输入信号,以及软输入/软输出译码器产生的外附信息进行非均匀压缩,减少数据的位宽比特数:
所述的非均匀压缩算法为:对需要进行非均匀压缩的数据信号根据幅度的大小进行分段;对于幅度较小的数据信号,保持输入信号不变;对于幅度依次增大的信号,采用斜率依次递减,且斜率均小于1的线性函数进行分段线性压缩;
对所述的Turbo码译码器的输入信号采用如下的非均匀压缩算法,将原来6比特的数据位宽压缩为4比特:
y = x / 8 + 2 16 &le; x &le; 31 x / 4 + 1 8 &le; x &le; 15 x / 2 2 &le; x &le; 7 x - 1 &le; x &le; 1 x / 2 - 7 &le; x &le; - 2 x / 4 - 1 - 15 &le; x &le; - 8 x / 8 - 2 - 32 &le; x &le; - 16 ;
对所述的SISO译码器产生的外附信息采用如下的非均匀压缩算法,将原来10比特的数据位宽压缩为6比特:
y = ( x - 163 ) / 64 + 25 164 &le; x &le; 511 ( x - 67 ) / 16 + 19 68 &le; x &le; 163 ( x - 19 ) / 8 + 13 20 &le; x &le; 67 ( x - 7 ) / 2 + 7 8 &le; x &le; 19 x - 8 &le; x &le; 7 ( x + 8 ) / 2 - 8 - 20 &le; x &le; - 7 ( x + 20 ) / 8 - 14 - 68 &le; x &le; - 21 ( x + 68 ) / 16 - 20 - 164 &le; x &le; - 69 ( x + 164 ) / 64 - 26 - 512 &le; x &le; - 165 ;
步骤2:将经过非均匀压缩的数据存入存储器(Memory)中,可节省存储资源;
采用上述的非均匀压缩算法分别对Turbo码译码器的输入信号和SISO译码器产生的外附信息进行压缩后,该Turbo码译码器所需要的存储单元共为:
(5114×3+12)×4+5114×2×6=122784比特;
与未压缩时相比,节省了约37%的存储资源。
步骤3:应用与步骤1中的非均匀压缩算法对应的非均匀解压缩算法,对从存储器中读出的数据进行解压缩,恢复原始信号所包含的信息;
所述的非均匀解压缩算法与步骤1中所述的非均匀压缩算法互为逆函数关系;
对所述的Turbo码译码器的输入信号采用如下的非均匀解压缩算法,将4比特的数据位宽解压缩为6比特:
x = ( y - 2 ) &times; 8 4 &le; y &le; 5 ( y - 1 ) &times; 4 3 &le; y &le; 4 y &times; 2 1 &le; y &le; 2 y - 1 &le; y &le; 1 y &times; 2 - 3 &le; y &le; - 2 ( y + 1 ) &times; 4 - 4 &le; y &le; - 3 ( y + 2 ) &times; 8 - 5 &le; y &le; - 6 ;
对所述的SISO译码器产生的外附信息采用如下的非均匀解压缩算法,将6比特的数据位宽解压缩为10比特:
x = 511 y = 31 ( y - 25 ) &times; 64 + 163 25 &le; y &le; 30 ( y - 19 ) &times; 16 + 67 19 &le; y &le; 24 ( y - 13 ) &times; 8 + 19 13 &le; y &le; 18 ( y - 7 ) &times; 2 + 7 7 &le; y &le; 12 y - 8 &le; y &le; 6 ( y + 8 ) &times; 2 - 8 - 14 &le; y &le; - 9 ( y + 14 ) &times; 8 - 20 - 20 &le; y &le; - 15 ( y + 20 ) &times; 16 - 68 - 26 &le; y &le; - 21 ( y + 26 ) &times; 64 - 164 - 31 &le; x &le; - 27 - 512 y = - 32 ;
步骤4:Turbo码译码器用步骤3中产生的非均匀解压缩后的数据进行译码运算。
请参见图4和图5,分别给出了帧长为5114时,采用非均匀压缩与不采用非均匀压缩时的译码器误的码率(BER)曲线和误帧率(BLER)曲线。
从图中可以看出,如果不采用非均匀压缩的话,Turbo码译码器直接用4比特输入,译码性能大约会劣化0.2dB;而直接采用6比特来存储SISO译码器输出的外附信息,译码器在比特信噪比(Eb/No)增大到某个值后,由于外附信息饱和,译码器性能将出现“平板效应”(error floor)。
而如果采用本发明的方法,对SISO译码器输出的外附信息采用10比特压缩为6比特的非均匀压缩,基本对译码性能没有损失;对Turbo码译码器输入信号采用6比特压缩为4比特的非均匀压缩,大约有0.06dB的性能劣化。
由此可见,仿真结果表明,本发明采用的非均匀压缩的方法对Turbo码译码器的输入信号和软输入/软输出译码器产生的外附信息进行压扩。可以在基本不降低译码器性能的情况下,大大节省Turbo码译码器的存储资源消耗。

Claims (3)

1.一种用于Turbo码译码器中减少存储资源的方法,其包括如下步骤:
步骤1:对Turbo码译码器的输入信号,以及软输入/软输出译码器产生的外附信息进行非均匀压缩,减少数据的位宽比特数;
所述的非均匀压缩算法为:对需要进行非均匀压缩的数据信号根据幅度的大小进行分段;对于幅度较小的数据信号,保持输入信号不变;对于幅度依次增大的信号,采用斜率依次递减,且斜率均小于1的线性函数进行分段线性压缩;该非均匀压缩算法的分段函数表达式为:
y = ( x + A 1 ) / k 1 + B 1 m 1 &le; x &le; n 1 . . . ( x + A i ) / k i + B i m i &le; x &le; n i . . . ( x + A N ) / k N + B N m N &le; x &le; n N ;
其中,1/ki表示斜率,ki>1;x表示所述Turbo码译码器的输入信号、以及软输入/软输出译码器产生的外附信息,y表示压缩后的数据;
步骤2:将经过非均匀压缩的数据存入存储器中,节省存储资源;
步骤3:应用与步骤1中的非均匀压缩算法对应的非均匀解压缩算法,对从存储器中读出的数据进行解压缩,恢复原始信号所包含的信息;
所述的非均匀解压缩算法与步骤1中所述的非均匀压缩算法互为逆函数关系;
步骤4:Turbo码译码器用步骤3中产生的非均匀解压缩后的数据进行译码运算。
2、如权利要求1所述的用于Turbo码译码器中减少存储资源的方法,其特征在于,步骤1所述的非均匀压缩算法的函数表达式中,调整参数Ai和Bi的值,保持各分段函数接口处的值一致。
3、如权利要求1所述的用于Turbo码译码器中减少存储资源的方法,其特征在于,步骤3所述的非均匀解压缩算法的函数表达式为:
y = ( x - B 1 ) &times; k 1 - A 1 ( m 1 + A 1 ) / k 1 + B 1 &le; x &le; ( n 1 + A 1 ) / k 1 + B 1 . . . ( x - B i ) &times; k i - A i ( m i + A i ) / k i + B i &le; x &le; ( n i + A i ) / k i + B i . . . ( x - B N ) &times; k N - A N ( m N + A N ) / k N + B N &le; x &le; ( n N + A N ) / k N + B N ;
x表示压缩后的数据,y表示解压缩后的数据。
CNB2005101107539A 2005-11-25 2005-11-25 一种用于Turbo码译码器中减少存储资源的方法 Active CN100571097C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101107539A CN100571097C (zh) 2005-11-25 2005-11-25 一种用于Turbo码译码器中减少存储资源的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101107539A CN100571097C (zh) 2005-11-25 2005-11-25 一种用于Turbo码译码器中减少存储资源的方法

Publications (2)

Publication Number Publication Date
CN1790967A CN1790967A (zh) 2006-06-21
CN100571097C true CN100571097C (zh) 2009-12-16

Family

ID=36788510

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101107539A Active CN100571097C (zh) 2005-11-25 2005-11-25 一种用于Turbo码译码器中减少存储资源的方法

Country Status (1)

Country Link
CN (1) CN100571097C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1942578A1 (en) * 2006-11-29 2008-07-09 Broadcom Corporation Address generation for contention-free memory mappings of turbo codes with ARP (almost regular permutation) interleaves

Also Published As

Publication number Publication date
CN1790967A (zh) 2006-06-21

Similar Documents

Publication Publication Date Title
Wang et al. VLSI implementation issues of turbo decoder design for wireless applications
US6829313B1 (en) Sliding window turbo decoder
CN1557052B (zh) 数字通信***中使用涡轮解码来减少位误差率和帧误差率的装置和方法
JP4298170B2 (ja) マップデコーダ用の区分されたデインターリーバメモリ
CN104218956A (zh) 一种无线接收设备的软比特译码方法及装置
CN101442321B (zh) 涡轮码的并行译码以及数据处理方法和装置
Martina et al. State metric compression techniques for turbo decoder architectures
US6868518B2 (en) Look-up table addressing scheme
CN100571097C (zh) 一种用于Turbo码译码器中减少存储资源的方法
US20030091129A1 (en) Look-up table index value generation in a turbo decoder
AU766116B2 (en) Memory architecture for map decoder
Papaharalabos et al. SISO algorithms based on Max-Log-MAP and Log-MAP turbo decoding
US20030023919A1 (en) Stop iteration criterion for turbo decoding
CN101425870B (zh) 一种Turbo码迭代译码方法
US6886127B2 (en) Implementation of a turbo decoder
CN1777045A (zh) 用于Turbo码译码器中减少存储资源的方法及装置
Song et al. The implementation of turbo decoder on DSP in W-CDMA system
Park et al. A block-wise MAP decoder using a probability ratio for branch metrics
Yu et al. Performance analysis of turbo codes in wireless rician fading channel with low rician factor
Suzuki et al. AK= 3, 2 Mbps low power turbo decoder for 3/sup rd/generation W-CDMA systems
CN2884696Y (zh) 用于Turbo码译码器中的归一化装置
Al-Mohandes et al. Iteration reduction of turbo decoders using an efficient stopping/cancellation technique
CN1135005C (zh) 级联卷积码解码的外赋信息处理方法
US9136880B2 (en) Method for stopping iteration in an iterative turbo decoder and an iterative turbo decoder
Wang et al. Finite wordlength analysis and adaptive decoding for Turbo/MAP decoders

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: SHANGHAI XUANPU INDUSTRY CO.,LTD.

Free format text: FORMER OWNER: KAIMING INFORMATION SCIENCE CO., LTD.

Effective date: 20090821

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090821

Address after: D District, Xhenzhuang Industrial Zone, Shanghai, China: 201108

Applicant after: Shanghai Xuanpu Industrial Co., Ltd.

Address before: Shanghai city Xhenzhuang Industrial Zone No. 18 Shen road, post encoding: 201108

Applicant before: Kaiming Information Science & Technology Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant