CN103354483A - 通用的高性能Radix-4SOVA译码器及其译码方法 - Google Patents

通用的高性能Radix-4SOVA译码器及其译码方法 Download PDF

Info

Publication number
CN103354483A
CN103354483A CN201310247968XA CN201310247968A CN103354483A CN 103354483 A CN103354483 A CN 103354483A CN 201310247968X A CN201310247968X A CN 201310247968XA CN 201310247968 A CN201310247968 A CN 201310247968A CN 103354483 A CN103354483 A CN 103354483A
Authority
CN
China
Prior art keywords
external information
decoding
module
delta
bit
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
CN201310247968XA
Other languages
English (en)
Other versions
CN103354483B (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.)
Xidian University
Original Assignee
Xidian 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 Xidian University filed Critical Xidian University
Priority to CN201310247968.XA priority Critical patent/CN103354483B/zh
Publication of CN103354483A publication Critical patent/CN103354483A/zh
Application granted granted Critical
Publication of CN103354483B publication Critical patent/CN103354483B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种通用的高性能Radix-4SOVA译码器及其译码方法,主要解决现有技术在Radix-4SOVA译码器中只支持基于比特交织的二进制Turbo码的问题。其实现步骤是:接收信道信息并存储;读取第一个分量码的信道信息,进行第一次分量译码,即依次计算分支度量,累积路径度量,可信度,对数似然比和外信息,并交织该外信息后存储;读取第二个分量码的信道信息,完成第二次分量译码;判断是否达到最大迭代次数,如果否,开始下一次迭代译码,反之,硬判决对数似然比得到译码比特的估计值,译码结束。本发明采用基于比特对的可信度更新方法,可实现二进制Turbo码和双二进制卷积Turbo码通用可配置的高性能译码,可用于LTE和WiMAX系统中的通用可配置Turbo译码器。

Description

通用的高性能Radix-4SOVA译码器及其译码方法
技术领域
本发明属于无线通信技术领域,更进一步涉及信道编码技术领域中的一种Radix-4SOVA译码器,可用于LTE/WiMAX系统中的Turbo码译码。
背景技术
高吞吐率且高性能的Turbo码译码是下一代宽带无线通信系统中的一个核心技术。Turbo码译码算法分为两类:一类是由Viterbi算法演化而来的软输出维特比SOVA算法;一类是最大后验概率MAP算法,以及由MAP算法延伸出的对数最大后验概率Log-MAP算法和Max-Log-MAP算法。从译码时延的角度来说,MAP类算法需要计算前向和后向两次递归过程,具有较大的译码延迟,而SOVA算法只需要在前向递归过程中回溯一个固定长度,因此译码延迟相对较小,从而有利于在高速率通信场景中得到应用。
为了提高译码速率,近年来SOVA算法的Radix-4结构得到了广泛的研究,Haratsch E F等人在“A Radix-4Soft-Output Viterbi Architecture”(IEEE InternationalSymposium on VLSI Design,Automation and Test,Hsinchu,2008:224-227.)提出了一种高译码速率的Radix-4SOVA译码器。该译码器通过将编码网格图中两步状态转移合并成一步进行译码,从而提高了译码速度;该译码器存在的不足是:由于更新规则仍采用的是传统Radix-2SOVA的更新规则,所以不适合WiMAX系统中基于比特对交织的双二进制卷积Turbo码CTC。
西安电子科技大学ISN国家重点实验室提出的专利申请“通用可配置的高速率Turbo码译码系统及其方法”(申请日:2012年1月4日,申请号:201210001563.3,公开号:CN102523076A)中公开了一种通用可配置的高速率Turbo码译码系统及其方法。该发明利用基-4的Max-Log-MAP(Radix-4Max-Log-MAP)算法和基-4的软输出维特比(Radix-4SOVA)算法之间的共性,完成在一个译码系统中同时实现两种算法通用可配置的译码,从而可以根据无线信道条件,实时地选择其中一种算法进行译码,有效地降低了同时独立实现上述两种算法的硬件资源消耗,保证了下一代宽带无线通信系统对Turbo码译码器的低硬件资源消耗和高译码速率的要求;另外该发明还采用了一种新的更新规则,一次可以完成两个度量差对可信度的更新,且该发明中的新更新规则比传统Radix-2SOVA算法的更新规则更适合Radix-4SOVA算法。但其缺点同样是:所采用的Radix-4SOVA算法只适用于基于比特交织的二进制Turbo码,而不适用于基于比特对交织的双二进制的卷积Turbo码。
众所周知,LTE标准中的编码部分采用了基于比特交织的二进制Turbo码,而WiMAX标准中采用了基于比特对交织的双二进制卷积Turbo码。因此,之前的Radix-4SOVA译码器均不能满足在下一代无线通信的不同标准中通用译码需求。
发明内容
本发明的目的在于针对上述现有技术的不足,提供一种通用的高性能Radix-4SOVA译码器及其译码方法,以实现二进制Turbo码和双二进制卷积Turbo码的通用译码,并提高译码器的译码性能。
为了实现上述目的,本发明的技术思路是:从基于比特对的可信度更新角度出发,利用基于比特对的更新递推公式,对传统Radix-4SOVA算法的基于比特的可信度更新方法进行改进,使译码器既支持基于比特交织二进制Turbo码,也支持基于比特对交织的双二进制卷积Turbo码,从而实现了LTE/WiMAX系统的通用可配置的高性能Turbo码译码。
一.译码器结构
根据上述技术思路,本发明的译码器包括:
输入数据存储模块(1),用于接收并存储接收到的信道信息序列;
分支度量计算模块(2),利用输入数据存储模块(1)提供的信道信息序列,以及Turbo外信息计算存储模块(7)或CTC外信息计算存储模块(10)提供的先验信息序列,并根据分支度量计算公式,计算译码时两步状态转移的分支度量,并将计算得到的分支度量输出给累积路径度量计算模块(3);
累积路径度量计算模块(3),用于对分支度量计算模块(2)输出的分支度量,利用累积路径度量的递归计算公式,计算译码路径的累积路径度量,并将累积路径度量输出给可信度计算模块(4);
可信度计算模块(4),利用累积路径度量计算模块(3)输出的累积路径度量,并根据可信度递归更新公式,对译码比特对的可信度进行更新,并将更新后的可信度输出给可信度存储模块(5);
可信度存储模块(5),用于存储可信度计算模块(4)输出的译码比特对的可信度,当译码器工作在LTE系统时,将译码比特对的可信度输出给Turbo对数似然比计算模块(6),当译码器工作在WiMAX系统时,将译码比特对的可信度输出给CTC对数似然比计算模块(9);
Turbo对数似然比计算模块(6),利用可信度存储模块(5)提供的译码比特对的可信度,根据二进制Turbo码的对数似然比计算公式,计算译码比特的对数似然比,并将计算得到的对数似然比输出给Turbo外信息计算存储模块(7)和Turbo硬判决模块(8);
Turbo外信息计算存储模块(7),利用Turbo对数似然比计算模块(6)输出的对数似然比,计算译码比特的外信息,并对该外信息交织后存储,将存储的信息输出给分支度量计算模块(2),作为下一次分量译码的先验信息;
Turbo硬判决模块(8),利用Turbo译码的硬判决规则对Turbo对数似然比计算模块(6)输出的对数似然比进行硬判决,输出待译码比特的估计值;
CTC对数似然比计算模块(9),利用可信度存储模块(5)的译码比特对的可信度,根据双二进制CTC码的对数似然比计算公式,计算译码比特对的对数似然比,并将计算得到的对数似然比输出给CTC外信息计算存储模块(10)和CTC硬判决模块(11);
CTC外信息计算存储模块(10),利用CTC对数似然比计算模块(9)输出的对数似然比,计算译码比特对的外信息,并对该外信息交织后存储,将存储的外信息输出给分支度量计算模块(2),作为下一次分量译码的先验信息;
CTC硬判决模块(11),利用CTC译码的硬判决规则对CTC对数似然比计算模块(9)输出的对数似然比进行硬判决,输出待译码比特的估计值。
二.译码方法
利用上述译码,本发明的译码方法包括如下步骤:
(1)输入数据存储模块(1)接收并存储编码端发送的码字信息序列,存储容量为两帧,一帧用于接收,一帧用于译码,两帧交替进行;
(2)读取信息,进行第一次分量译码:
(2a)分支度量计算模块(2)按照顺序地址读取输入数据存储模块(1)中第一个分量码的系统信息序列和校验信息序列;
(2b)根据译码器的工作系统,分支度量计算模块(2)读取Turbo外信息计算存储模块(7)或CTC外信息计算存储模块(10)的外信息序列:
当译码器工作在LTE系统时,分支度量计算模块(2)按照顺序地址读取Turbo外信息计算存储模块(7)中译码比特的外信息序列,作为本次分量译码的先验信息序列,其中译码比特的外信息序列的初始值初始化为0;
当译码器工作在WiMAX系统时,分支度量计算模块(2)按照顺序地址读取CTC外信息计算存储模块(10)中译码比特对的外信息序列,作为本次分量译码的先验信息序列,其中译码比特对的外信息序列的初始值初始化为0;
(3)分支度量计算模块(2)利用系统信息序列、校验信息序列和先验信息序列,通过分支度量计算公式,计算译码时两步状态转移的分支度量;
(4)累积路径度量计算模块(3)利用分支度量,通过累积路径度量的递归计算公式计算译码路径的累积路径度量;
(5)对译码比特对的可信度进行更新并存储:
(5a)可信度计算模块(4)对译码比特对的可信度进行更新,得到k+1时刻状态关于译码比特对ul,l+1=00、ul,l+1=01、ul,l+1=10和ul,l+1=11的可信度:
LLR ( u l , l + 1 = 00 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 00 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
LLR ( u l , l + 1 = 01 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 01 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
LLR ( u l , l + 1 = 10 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 10 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
LLR ( u l , l + 1 = 11 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 11 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
其中,ul,l+1表示相邻两个时刻编码器输入的信息比特组成的一个信息比特对,l=k-2,k-4,…,k-δ,δ=20,k=3,5,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000045
表示k+1时刻编码器的状态s,s∈{0,1,…,2v-1},v表示编码器的寄存器个数,
Figure BDA00003376210000046
表示译码器从1到k+1时刻接收到的信息序列,LLR表示译码比特对的可信度符号,
Figure BDA00003376210000047
表示k-1时刻编码器的状态si,i=0,1,2,3, Δ k - 1 → k + 1 s i → s = M ( l ‾ k - 1 s i → P k + 1 s ) - max l ‾ k - 1 s j { M ( l ‾ k - 1 s j → P k + 1 s ) } 表示从k-1时刻状态si转移到k+1时刻状态s的累积路径度量与转移到状态s的最大累积路径度量之差,
Figure BDA00003376210000052
表示k-1时刻状态si的幸存路径,
Figure BDA00003376210000053
表示从k-1时刻的幸存路径
Figure BDA00003376210000054
转移到第k+1时刻状态s的累积路径度量;
(5b)将转移到k+1时刻状态
Figure BDA00003376210000055
对应分支uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的累积路径度量减去其最大值后,分别赋值给
Figure BDA00003376210000056
LLR ( u k , k + 1 = 01 | P k + 1 , s y 1 k + 1 ) , LLR ( u k , k + 1 = 10 | P k + 1 , s y 1 k + 1 ) LLR ( u k , k + 1 = 11 | P k + 1 , s y 1 k + 1 ) .
(5c)将上述更新后的可信度存储到可信度存储模块(5);
(6)根据译码器的工作系统,选择相应的对数似然比计算模块,计算对数似然比:
(6a)当译码器工作在LTE系统时,选择Turbo对数似然比计算模块(6)利用二进制Turbo码的对数似然比计算公式,计算译码比特的对数似然比;
(6b)当译码器工作在WiMAX系统时,选择CTC对数似然比计算模块(9)利用双二进制CTC码的对数似然比计算公式,计算译码比特对的对数似然比;
(7)根据译码器的工作系统,选择相应的外信息计算存储模块,计算外信息并存储:
(7a)当译码器工作在LTE系统时,选择Turbo外信息计算存储模块(7)利用Turbo码的外信息计算公式,计算译码比特的外信息,并对该外信息交织后存储,作为下一次分量译码的先验信息;
(7b)当译码器工作在WiMAX系统时,选择CTC外信息计算存储模块(10)利用CTC码的外信息计算公式,计算译码比特对的外信息,并对该外信息交织后存储,作为下一次分量译码的先验信息;
(8)读取信息,进行第二次分量译码:
(8a)分支度量计算模块(2)按照交织和顺序地址分别读取输入数据存储模块(1)中第二个分量码的系统信息序列和校验信息序列;
(8b)根据译码器的工作系统,分支度量计算模块(2)读取Turbo外信息计算存储模块(7)或CTC外信息计算存储模块(10)的外信息序列:
当译码器工作在LTE系统时,分支度量计算模块(2)按照顺序地址读取Turbo外信息计算存储模块(7)中译码比特的外信息序列,作为本次分量译码的先验信息序列;
当译码器工作在WiMAX系统时,分支度量计算模块(2)按照顺序地址读取CTC外信息计算存储模块(10)中译码比特对的外信息序列,作为本次分量译码的先验信息序列;
(8c)利用第二个分量码的系统信息序列、校验信息序列和先验信息序列,按照步骤(3)-(7)的计算方法获得第二个分量译码的外信息,并对该外信息解交织后存储,完成一次迭代译码;
(9)判断当前迭代次数是否达到最大迭代次数8次,如果达到,执行步骤(10);反之,返回步骤(2),进行下一次迭代;
(10)根据译码器的工作系统,选择相应的硬判决模块进行硬判决操作:
(10a)当译码器工作在LTE系统时,选择Turbo硬判决模块(8)按照Turbo码的硬判决规则对译码比特进行硬判决,得到译码比特的估计值,译码结束;
(10b)当译码器工作在WiMAX系统时,选择CTC硬判决模块(11)按照CTC码的硬判决规则对译码比特对进行硬判决,得到译码比特对的估计值,译码结束。
本发明与现有技术相比具有以下优点:
第一,由于本发明的可信度更新是基于比特对完成的,因此本发明可实现二进制Turbo码和双二进制卷积Turbo码通用可配置译码,从而克服了现有Radix-4SOVA算法只适用于LTE系统中基于比特交织的二进制Turbo码的缺点。
第二,由于本发明在可信度更新时考虑了所有的路径,所以可以认为当译码深度足够大时,即为约束长度的5倍时,比特对的可信度已经选择了全局最优路径上的软信息,因此本发明的Radix-4SOVA译码器具有较好的译码性能。
第三,由于本发明采用的是基于比特对的译码,且不需要计算后向状态度量,因此本发明具有高译码吞吐量。
附图说明
图1是本发明译码器的方框图;
图2是本发明Turbo外信息计算存储模块(7)的方框图;
图3是本发明CTC外信息计算存储模块(10)的方框图;
图4是本发明译码方法的流程图;
图5是本发明在LTE系统中的误码性能仿真图;
图6是本发明在WiMAX系统中的误码性能仿真图。
具体实施方式
下面结合附图对本发明做进一步详细描述。
参照附图1,本发明的译码器包括:输入数据存储模块1、分支度量计算模块2、累积路径度量计算模块3、可信度计算模块4、可信度存储模块5、Turbo对数似然比计算模块6、Turbo外信息计算存储模块7、Turbo硬判决模块8、CTC对数似然比计算模块9、CTC外信息计算存储模块10和CTC硬判决模块11。其中:
输入数据存储模块1,接收编码端发送的码字信息序列,并将接收到的信息按两帧容量进行存储,当接收完第一帧后开始译码,第二帧开始接收,当第二帧接收完开始译码时,第一帧开始接收,两帧交替进行接收和译码。
分支度量计算模块2,按顺序地址读取输入数据存储模块1中的信道信息序列;同时根据译码器的工作系统,按顺序地址读取Turbo外信息计算存储模块7或CTC外信息计算存储模块10中的先验信息序列:当译码器工作在LTE系统时,读取Turbo外信息计算存储模块7中译码比特先验信息序列,当译码器工作在WiMAX系统时,读取CTC外信息计算存储模块10中译码比特对的先验信息序列;然后利用信道信息序列和先验信息序列,根据分支度量计算公式,计算译码时两步状态转移的分支度量,并将计算得到的分支度量输出给累积路径度量计算模块3。
累积路径度量计算模块3,利用分支度量计算模块2提供的分支度量,根据累积路径度量的递归计算公式,计算译码路径的累积路径度量
Figure BDA00003376210000071
并将上述计算得到的累积路径度量输出给可信度计算模块4,其中累积路径度量的递归计算公式为:
M ( l ‾ k + 1 s ) = M ( l ‾ k - 1 s ′ ′ ) + γ k , k + 1 ( s ′ ′ , s ) ,
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000073
表示网格图上第k+1时刻状态s的幸存路径所走过的状态,表示
Figure BDA00003376210000075
的累积路径度量,
Figure BDA00003376210000076
表示的前k-1个时刻的路径状态,γk,k+1(s",s)表示从k-1时刻状态s"转移到k+1时刻状态s的两步状态转移对应的分支度量,s′′,s∈{0,1,…,2v-1},v表示编码器的寄存器个数;
可信度计算模块4,利用累积路径度量计算模块3输出的累积路径度量,并根据可信度递归更新公式,对译码比特对的可信度进行更新,得到k+1时刻状态关于译码比特对ul,l+1=00、ul,l+1=01、ul,l+1=10和ul,l+1=11的可信度:
LLR ( u l , l + 1 = 00 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 00 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
LLR ( u l , l + 1 = 01 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 01 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
LLR ( u l , l + 1 = 10 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 10 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
LLR ( u l , l + 1 = 11 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 11 | P k - 1 , s i y 1 k - 1 ) + Δ k - 1 → k + 1 s i → s }
其中,ul,l+1表示相邻两个时刻编码器输入的信息比特组成的一个信息比特对,l=k-2,k-4,…,k-δ,δ=20,k=3,5,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000085
表示k+1时刻编码器的状态s,s∈{0,1,…,2v-1},v表示编码器的寄存器个数,
Figure BDA00003376210000086
表示译码器从1到k+1时刻接收到的信息序列,LLR表示译码比特对的可信度符号,
Figure BDA00003376210000087
表示k-1时刻编码器的状态si,i=0,1,2,3, Δ k - 1 → k + 1 s i → s = M ( l ‾ k - 1 s i → P k + 1 s ) - max l ‾ k - 1 s j { M ( l ‾ k - 1 s j → P k + 1 s ) } 表示从k-1时刻状态si转移到k+1时刻状态s的累积路径度量与转移到状态s的最大累积路径度量之差,
Figure BDA00003376210000089
表示k-1时刻状态si的幸存路径,
Figure BDA000033762100000810
表示从k-1时刻的幸存路径
Figure BDA000033762100000811
转移到第k+1时刻状态s的累积路径度量;
然后,将上述更新后的可信度输出给可信度存储模块5。
可信度存储模块5,按顺序地址存储可信度计算模块4输出的译码比特对的可信度,并根据译码器的工作系统,将该可信度输出给相应的对数似然比计算模块;当译码器工作在LTE系统时,将译码比特对的可信度输出给Turbo对数似然比计算模块6,当译码器工作在WiMAX系统时,将译码比特对的可信度输出给CTC对数似然比计算模块9。
Turbo对数似然比计算模块6,顺序读取可信度存储模块5中的译码比特对的可信度,并根据二进制Turbo码的对数似然比计算公式,计算译码比特的对数似然比:
L ( u k | y 1 N )
= ln exp ( LLR ( u k , k + 1 = 10 | P k + 1 + δ s * , y 1 k + 1 + δ ) ) + exp ( LLR ( u k , k + 1 = 11 | P k + 1 + δ s * , y 1 k + 1 + δ ) ) exp ( LLR ( u k , k + 1 = 00 | P k + 1 + δ s * , y 1 k + 1 + δ ) ) + exp ( LLR ( u k , k + 1 = 01 | P k + 1 + δ s * , y 1 k + 1 + δ ) )
L ( u k + 1 | y 1 N )
= ln exp ( LLR ( u k , k + 1 = 01 | P k + 1 + δ s * , y 1 k + 1 + δ ) ) + exp ( LLR ( u k , k + 1 = 11 | P k + 1 + δ s * , y 1 k + 1 + δ ) ) exp ( LLR ( u k , k + 1 = 00 | P k + 1 + δ s * , y 1 k + 1 + δ ) ) + exp ( LLR ( u k , k + 1 = 10 | P k + 1 + δ s * , y 1 k + 1 + δ ) )
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000095
分别表示译码比特uk和uk+1的对数似然比,
Figure BDA00003376210000097
表示接收到的译码信息序列,表示最大似然路径在k+1+δ时刻的状态s*,δ表示译码深度且δ=20,
Figure BDA00003376210000099
表示从1到k+1+δ时刻接收到的信息序列,
Figure BDA000033762100000910
LLR ( u k , k + 1 = 01 | P k + 1 + δ s * , y 1 k + 1 + δ ) , LLR ( u k , k + 1 = 10 | P k + 1 + δ s * , y 1 k + 1 + δ ) LLR ( u k , k + 1 = 11 | P k + 1 + δ s * , y 1 k + 1 + δ ) 分别表示k+1+δ时刻状态
Figure BDA000033762100000914
关于uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的可信度;
然后,将上述计算得到的对数似然比输出给Turbo外信息计算存储模块7和Turbo硬判决模块8。
Turbo外信息计算存储模块7,利用Turbo对数似然比计算模块6输出的对数似然比,根据Turbo码的外信息计算公式,计算译码比特的外信息,然后利用QPP交织器对该外信息进行基于比特的交织,并将交织后外信息存储到该模块,将存储的信息输出给分支度量计算模块2,作为下一次分量译码的先验信息。
参照附图2,本发明的Turbo外信息计算存储模块7包括:Turbo外信息计算子模块71、QPP交织器72和Turbo外信息存储子模块73。其中:
Turbo外信息计算子模块71,利用Turbo对数似然比计算模块6输出的对数似然比,根据Turbo码的外信息计算公式,计算译码比特的外信息:
L e ( u k ) = L ( u k | y 1 N ) - L a ( u k ) - L c · y k z
L e ( u k + 1 ) = L ( u k + 1 | y 1 N ) - L a ( u k + 1 ) - L c · y k + 1 z
其中,k=1,3,…,N-1,N表示码长且取偶数,Le(uk)和Le(uk+1)分别表示译码比特uk和uk+1的外信息,La(uk)和La(uk+1)分别表示uk和uk+1的先验信息,Lc表示信道可信度量值,
Figure BDA00003376210000102
Figure BDA00003376210000103
分别表示第k个和第k+1个时刻译码器接收到的系统信息;
将上述计算得到的外信息输出给QPP交织器72;
QPP交织器72,用于对Turbo外信息计算子模块71输出的外信息进行基于比特的交织,并将交织后的外信息输出给Turbo外信息存储子模块73;
Turbo外信息存储子模块73,用于对QPP交织器输出的外信息进行存储,并将存储的外信息输出给分支度量计算模块2,作为下一次分量译码的先验信息。
Turbo硬判决模块8,利用Turbo译码的硬判决规则对Turbo对数似然比计算模块6输出的对数似然比进行硬判决,Turbo码的硬判决规则为:
u ^ k = 1 , L ( u k | y 1 N ) &GreaterEqual; 0 0 , L ( u k | y 1 N ) < 0
u ^ k + 1 = 1 , L ( u k + 1 | y 1 N ) &GreaterEqual; 0 0 , L ( u k + 1 | y 1 N ) < 0
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000106
Figure BDA00003376210000107
分别表示译码比特uk和uk+1的估计值,
Figure BDA00003376210000108
分别表示uk和uk+1的对数似然比;
判决完成后,输出译码比特的估计值。
CTC对数似然比计算模块9,利用可信度存储模块5的译码比特对的可信度,根据双二进制CTC码的对数似然比计算公式,计算译码比特对的对数似然比:
L ( u k , k + 1 = 00 | y 1 N ) = 0
L ( u k , k + 1 = 01 | y 1 N ) = LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
L ( u k , k + 1 = 10 | y 1 N ) = LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
L ( u k , k + 1 = 11 | y 1 N ) = LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
其中,k=1,3,…,N-1,N表示码长且取偶数,uk,k+1表示第k个和第k+1个译码比特组成的译码比特对, L ( u k , k + 1 = 00 | y 1 N ) , L ( u k , k + 1 = 01 | y 1 N ) , L ( u k , k + 1 = 10 | y 1 N ) 分别表示uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的对数似然比,
Figure BDA00003376210000115
表示接收到的译码信息序列;
将上述计算得到的对数似然比输出给CTC外信息计算存储模块10和CTC硬判决模块11。
CTC外信息计算存储模块10,利用CTC对数似然比计算模块9输出的对数似然比,根据CTC码的外信息计算公式,计算译码比特对的外信息,然后利用CTC交织器对该外信息进行基于比特对的交织,并将交织后外信息存储到该模块,将存储的外信息输出给分支度量计算模块2,作为下一次分量译码的先验信息。
参照附图3,本发明的CTC外信息计算存储模块10包括:CTC外信息计算子模块101、CTC交织器102和CTC外信息存储子模块103。其中:
CTC外信息计算子模块101,利用CTC对数似然比计算模块9输出的对数似然比,根据CTC码的外信息计算公式,计算译码比特对的外信息:
Le(uk,k+1=00)=0
L e ( u k , k + 1 = 01 ) = L ( u k , k + 1 = 01 | y 1 N ) - L c y k + 1 z - L a ( u k , k + 1 = 01 )
L e ( u k , k + 1 = 10 ) = L ( u k , k + 1 = 10 | y 1 N ) - L c y k z - L a ( u k , k + 1 = 10 )
L e ( u k , k + 1 = 11 ) = L ( u k , k + 1 = 11 | y 1 N ) - L c y k z - L c y k + 1 z - L a ( u k , k + 1 = 11 )
其中,Le(uk,k+1=00)、Le(uk,k+1=01)、Le(uk,k+1=10)和Le(uk,k+1=11)分别表示uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的外信息,La(uk,k+1=01)、La(uk,k+1=10)和La(uk,k+1=11)分别表示uk,k+1=01、uk,k+1=10和uk,k+1=11的先验信息;
将上述计算得到的外信息输出给CTC交织器102;
CTC交织器102,用于对CTC外信息计算子模块101输出的外信息进行基于比特对的交织,并将交织后的外信息输出给CTC外信息存储子模块103;
CTC外信息存储子模块103,用于对CTC交织器102输出的外信息进行存储,并将存储的外信息输出给分支度量计算模块2,作为下一次分量译码的先验信息。
CTC硬判决模块11,利用CTC译码的硬判决规则对CTC对数似然比计算模块(9)输出的对数似然比进行硬判决,CTC码的硬判决规则为:
u ^ k , k + 1 = 00 , if { MAX = L ( u k , k + 1 = 00 | y 1 N ) } 01 , if { MAX = L ( u k , k + 1 = 01 | y 1 N ) } 10 , if { MAX = L ( u k , k + 1 = 10 | y 1 N ) } 11 , if { MAX = L ( u k , k + 1 = 11 | y 1 N ) }
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000122
表示译码比特对
Figure BDA00003376210000123
的估计值, MAX = max L ( u k , k + 1 = 00 | y 1 N ) , L ( u k , k + 1 = 01 | y 1 N ) , L ( u k , k + 1 = 10 | y 1 N ) , L ( u k , k + 1 = 11 | y 1 N ) ;
判决完成后,输出译码比特对的估计值。
参照附图4,对本发明的译码方法做进一步描述。
步骤1,输入数据存储模块1接收并存储编码端发送的码字信息序列,该模块的存储容量为两帧,当接收完第一帧后开始译码,第二帧开始接收,当第二帧接收完开始译码时,第一帧开始接收,两帧交替进行接收和译码。
步骤2,读取第一个分量码的系统信息序列、校验信息序列和外信息序列,进行第一次分量译码。
(2a)分支度量计算模块2按照顺序地址读取输入数据存储模块1中第一个分量码的系统信息序列和校验信息序列;
(2b)根据译码器的工作系统,分支度量计算模块2读取Turbo外信息计算存储模块7或CTC外信息计算存储模块10的外信息序列:
当译码器工作在LTE系统时,分支度量计算模块2按照顺序地址读取Turbo外信息计算存储模块7中译码比特的外信息序列,作为本次分量译码的先验信息序列,其中译码比特的外信息序列的初始值初始化为0;
当译码器工作在WiMAX系统时,分支度量计算模块2按照顺序地址读取CTC外信息计算存储模块10中译码比特对的外信息序列,作为本次分量译码的先验信息序列,其中译码比特对的外信息序列的初始值初始化为0。
步骤3,分支度量计算模块2利用系统信息序列、校验信息序列和先验信息序列,通过分支度量计算公式,计算译码时两步状态转移的分支度量。
当译码器工作在LTE系统时,分支度量计算公式如下:
&gamma; k , k + 1 ( s &prime; &prime; , s ) = L c 2 ( y k z &CenterDot; x ~ k z + y k p &CenterDot; x ~ k p + y k + 1 z &CenterDot; x ~ k + 1 z + y k + 1 p &CenterDot; x ~ k + 1 p ) + u k &CenterDot; L a ( u k ) + u k + 1 &CenterDot; L a ( u k + 1 )
其中,γk,k+1(s",s)表示从k-1时刻状态s"转移到k+1时刻状态s的两步状态转移对应的分支度量,k=1,3,…,N-1,N表示码长且取偶数,s'',s∈{0,1,…,2v-1},v表示编码器的寄存器个数,Lc=4Es/N0为信道可信度量值,Es表示单个调制符合的能量,N0表示噪声功率谱密度,
Figure BDA00003376210000132
Figure BDA00003376210000133
分别表示k时刻译码器接收到的系统信息和校验信息,
Figure BDA00003376210000134
Figure BDA00003376210000135
分别表示k+1时刻译码器接收到的系统信息和校验信息, x ~ k z = 2 x k z - 1 , x ~ k p = 2 x k p - 1 , x ~ k + 1 z = 2 x k + 1 z - 1 , x ~ k + 1 p = 2 x k + 1 p - 1 ,
Figure BDA00003376210000137
Figure BDA00003376210000138
分别表示k时刻分量编码器输出的系统信息和校验信息,
Figure BDA000033762100001310
分别表示k+1时刻分量编码器输出的系统信息和校验信息,uk和uk+1表示编码器输入的信息,La(uk)表示uk的先验信息,La(uk+1)表示uk+1的先验信息。
当译码器工作在WiMAX系统时,分支度量计算公式如下:
&gamma; k , k + 1 ( s &prime; &prime; , s ) = L c 2 ( y k z &CenterDot; x ~ k z + y k p &CenterDot; x ~ k p + y k + 1 z &CenterDot; x ~ k + 1 z + y k + 1 p &CenterDot; x ~ k + 1 p ) + L a ( u k , k + 1 )
其中,k=1,3,…,N-1,N表示码长且取偶数,uk,k+1=(uk,uk+1)表示相邻两个时刻编码器输入的信息比特组成的一个信息比特对,La(uk,k+1)表示uk,k+1的先验信息。
步骤4,累积路径度量计算模块3利用分支度量,通过累积路径度量的递归计算公式计算译码路径的累积路径度量,累积路径度量的递归计算公式如下:
M ( l &OverBar; k + 1 s ) = M ( l &OverBar; k - 1 s &prime; &prime; ) + &gamma; k , k + 1 ( s &prime; &prime; , s )
其中,
Figure BDA000033762100001313
表示网格图上第k+1时刻状态s的幸存路径所走过的状态,
Figure BDA000033762100001314
表示
Figure BDA000033762100001315
的累积路径度量,表示
Figure BDA000033762100001317
的前k-1个时刻的路径状态。
步骤5,对译码比特对的可信度进行更新并存储。
(5a)可信度计算模块4对译码比特对的可信度进行更新,得到k+1时刻状态关于译码比特对ul,l+1=00、ul,l+1=01、ul,l+1=10和ul,l+1=11的可信度:
LLR ( u l , l + 1 = 00 | P k + 1 s , y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 00 | P k - 1 s i , y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
LLR ( u l , l + 1 = 01 | P k + 1 s , y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 01 | P k - 1 s i , y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
LLR ( u l , l + 1 = 10 | P k + 1 s , y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 10 | P k - 1 s i , y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
LLR ( u l , l + 1 = 11 | P k + 1 s , y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 11 | P k - 1 s i , y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
其中,ul,l+1表示相邻两个时刻编码器输入的信息比特组成的一个信息比特对,l=k-2,k-4,…,k-δ,δ=20,k=3,5,…,N-1,N表示码长且取偶数,表示k+1时刻编码器的状态s,s∈{0,1,…,2v-1},v表示编码器的寄存器个数,
Figure BDA00003376210000147
表示译码器从1到k+1时刻接收到的信息序列,LLR表示译码比特对的可信度符号,
Figure BDA000033762100001417
表示k-1时刻编码器的状态si,i=0,1,2,3, &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s = M ( l &OverBar; k - 1 s i &RightArrow; P k + 1 s ) - max l &OverBar; k - 1 s j { M ( l &OverBar; k - 1 s j &RightArrow; P k + 1 s ) } 表示从k-1时刻状态si转移到k+1时刻状态s的累积路径度量与转移到状态s的最大累积路径度量之差,表示k-1时刻状态si的幸存路径,
Figure BDA000033762100001410
表示从k-1时刻的幸存路径
Figure BDA000033762100001411
转移到第k+1时刻状态s的累积路径度量;
(5b)将转移到k+1时刻状态
Figure BDA000033762100001412
对应分支uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的累积路径度量减去其最大值后,分别赋值给
Figure BDA000033762100001413
LLR ( u k , k + 1 = 01 | P k + 1 s , y 1 k + 1 ) , LLR ( u k , k + 1 = 10 | P k + 1 s , y 1 k + 1 ) LLR ( u k , k + 1 = 11 | P k + 1 s , y 1 k + 1 ) .
(5c)将上述更新后的可信度存储到可信度存储模块5,存储深度为译码深度δ,其中δ=20。
步骤6,根据译码器的工作系统,选择相应的对数似然比计算模块,计算对数似然比。
(6a)当译码器工作在LTE系统时,选择Turbo对数似然比计算模块6,利用二进制Turbo码的对数似然比计算公式,计算译码比特的对数似然比,二进制Turbo码的对数似然比计算公式表示如下:
L ( u k | y 1 N )
= ln exp ( LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) exp ( LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) )
L ( u k + 1 | y 1 N )
= ln exp ( LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) exp ( LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) )
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000155
Figure BDA00003376210000156
分别表示译码比特uk和uk+1的对数似然比,表示接收到的译码信息序列,表示最大似然路径在k+1+δ时刻的状态s*,δ表示译码深度且δ=20,
Figure BDA00003376210000158
表示从1到k+1+δ时刻接收到的信息序列,
Figure BDA00003376210000159
LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) , LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) 分别表示k+1+δ时刻状态关于uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的可信度。
(6b)当译码器工作在WiMAX系统时,选择CTC对数似然比计算模块9,利用双二进制CTC码的对数似然比计算公式,计算译码比特对的对数似然比,双二进制CTC码的对数似然比计算公式表示如下:
L ( u k , k + 1 = 00 | y 1 N ) = 0
L ( u k , k + 1 = 01 | y 1 N ) = LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
L ( u k , k + 1 = 10 | y 1 N ) = LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
L ( u k , k + 1 = 11 | y 1 N ) = LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
其中,k=1,3,…,N-1,N表示码长且取偶数,uk,k+1表示第k个和第k+1个译码比特组成的译码比特对, L ( u k , k + 1 = 00 | y 1 N ) , L ( u k , k + 1 = 01 | y 1 N ) , L ( u k , k + 1 = 10 | y 1 N )
Figure BDA000033762100001521
分别表示uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的对数似然比,
Figure BDA00003376210000161
表示接收到的译码信息序列。
步骤7,根据译码器的工作系统,选择相应的外信息计算存储模块,计算外信息并存储。
(7a)当译码器工作在LTE系统时,选择Turbo外信息计算存储模块7利用Turbo码的外信息计算公式,计算译码比特的外信息,并对该外信息交织后存储,作为下一次分量译码的先验信息,其中,Turbo码的外信息计算公式如下:
L e ( u k ) = L ( u k | y 1 N ) - L a ( u k ) - L c &CenterDot; y k z
L e ( u k + 1 ) = L ( u k + 1 | y 1 N ) - L a ( u k + 1 ) - L c &CenterDot; y k + 1 z
其中,Le(uk)表示uk的外信息,Le(uk+1)表示uk+1的外信息。
(7b)当译码器工作在WiMAX系统时,选择CTC外信息计算存储模块10利用CTC码的外信息计算公式,计算译码比特对的外信息,并对该外信息交织后存储,作为下一次分量译码的先验信息,其中,CTC码的外信息计算公式如下:
Le(uk,k+1=00)=0
L e ( u k , k + 1 = 01 ) = L ( u k , k + 1 = 01 | y 1 N ) - L c y k + 1 z - L a ( u k , k + 1 = 01 )
L e ( u k , k + 1 = 10 ) = L ( u k , k + 1 = 10 | y 1 N ) - L c y k z - L a ( u k , k + 1 = 10 )
L e ( u k , k + 1 = 11 ) = L ( u k , k + 1 = 11 | y 1 N ) - L c y k z - L c y k + 1 z - L a ( u k , k + 1 = 11 )
其中,Le(uk,k+1=00)、Le(uk,k+1=01)、Le(uk,k+1=10)和Le(uk,k+1=11)分别表示uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的外信息,La(uk,k+1=01)、La(uk,k+1=10)和La(uk,k+1=11)分别表示uk,k+1=01、uk,k+1=10和uk,k+1=11的先验信息。
步骤8,读取第二个分量码的系统信息序列、校验信息序列和外信息序列,进行第二次分量译码。
(8a)分支度量计算模块2按照交织和顺序地址分别读取输入数据存储模块1中第二个分量码的系统信息序列和校验信息序列;
(8b)根据译码器的工作系统,分支度量计算模块2读取Turbo外信息计算存储模块7或CTC外信息计算存储模块10的外信息序列:
当译码器工作在LTE系统时,分支度量计算模块2按照顺序地址读取Turbo外信息计算存储模块7中译码比特的外信息序列,作为本次分量译码的先验信息序列;
当译码器工作在WiMAX系统时,分支度量计算模块2按照顺序地址读取CTC外信息计算存储模块10中译码比特对的外信息序列,作为本次分量译码的先验信息序列;
(8c)利用第二个分量码的系统信息序列、校验信息序列和先验信息序列,按照步骤(3)-(7)的计算方法获得第二个分量译码的外信息,并对该外信息解交织后存储,完成一次迭代译码。
步骤9,判断当前迭代次数是否达到最大迭代次数8次,如果达到,执行步骤(10);反之,返回步骤(2),进行下一次迭代。
步骤10,根据译码器的工作系统,选择相应的硬判决模块进行硬判决操作。
(10a)当译码器工作在LTE系统时,选择Turbo硬判决模块8,按照Turbo码的硬判决规则对译码比特进行硬判决,Turbo码的硬判决规则表示如下:
u ^ k = 1 , L ( u k | y 1 N ) &GreaterEqual; 0 0 , L ( u k | y 1 N ) < 0
u ^ k + 1 = 1 , L ( u k + 1 | y 1 N ) &GreaterEqual; 0 0 , L ( u k + 1 | y 1 N ) < 0
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000173
分别表示译码比特uk和uk+1的估计值,
Figure BDA00003376210000174
分别表示uk和uk+1的对数似然比。
(10b)当译码器工作在WiMAX系统时,选择CTC硬判决模块11,按照CTC码的硬判决规则对译码比特对进行硬判决,CTC码的硬判决规则表示如下:
u ^ k , k + 1 = 00 , if { MAX = L ( u k , k + 1 = 00 | y 1 N ) } 01 , if { MAX = L ( u k , k + 1 = 01 | y 1 N ) } 10 , if { MAX = L ( u k , k + 1 = 10 | y 1 N ) } 11 , if { MAX = L ( u k , k + 1 = 11 | y 1 N ) }
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure BDA00003376210000181
表示译码比特对uk,k+1的估计值, MAX = max L ( u k , k + 1 = 00 | y 1 N ) , L ( u k , k + 1 = 01 | y 1 N ) , L ( u k , k + 1 = 10 | y 1 N ) , L ( u k , k + 1 = 11 | y 1 N ) .
利用上述硬判决规则得到译码比特的估计值后,译码结束。
本发明的效果可通过以下仿真作进一步说明。
1.仿真条件
对于LTE系统,采用典型的编码速率为1/3的LTE Turbo编码器,分量编码器的存储级数为v=3,生成多项式为(13,15),交织器选用LTE标准中的二次置换多项式交织器;对于WiMAX系统,采用编码速率为1/3的CTC编码器,分量编码器的存储级数为v=3,生成多项式为(15,13,11),比特对交织器选用WiMAX标准中的CTC交织器。另外,调制方式为QPSK,迭代次数为8次,噪声环境为高斯白噪声信道,更新深度δ=20,交织长度N=2880。
2.仿真内容与结果
仿真一:
用本发明的译码器与传统Radix-4SOVA译码器、Radix-4Max-Log-MAP译码器在上述仿真条件下,对误码率随信噪比变化的性能进行LTE系统中的仿真比较,仿真结果如附图5所示。
由图5可见,本发明的误码性能逼近Radix-4Max-Log-MAP译码器,且与传统Radix-4SOVA译码器相比,在误码率BER=10-5处其译码性能增益为0.5dB,说明本发明的译码性能得到了很大改善。
仿真二:
用本发明的译码器与Radix-4Max-Log-MAP译码器在上述仿真条件下,对误码率随信噪比变化的性能进行了WiMAX系统中的仿真比较,仿真结果如附图6所示。
由图6可见,本发明的译码器在WiMAX系统中的误码性能同样逼近Radix-4Max-Log-MAP译码器,说明本发明具有优良的译码性能。

Claims (8)

1.一种通用的高性能Radix-4SOVA译码器,包括:
输入数据存储模块(1),用于接收并存储接收到的信道信息序列;
分支度量计算模块(2),利用输入数据存储模块(1)提供的信道信息序列,以及Turbo外信息计算存储模块(7)或CTC外信息计算存储模块(10)提供的先验信息序列,并根据分支度量计算公式,计算译码时两步状态转移的分支度量,并将计算得到的分支度量输出给累积路径度量计算模块(3);
累积路径度量计算模块(3),用于对分支度量计算模块(2)输出的分支度量,利用累积路径度量的递归计算公式,计算译码路径的累积路径度量,并将累积路径度量输出给可信度计算模块(4);
可信度计算模块(4),利用累积路径度量计算模块(3)输出的累积路径度量,并根据可信度递归更新公式,对译码比特对的可信度进行更新,并将更新后的可信度输出给可信度存储模块(5);
可信度存储模块(5),用于存储可信度计算模块(4)输出的译码比特对的可信度,当译码器工作在LTE系统时,将译码比特对的可信度输出给Turbo对数似然比计算模块(6),当译码器工作在WiMAX系统时,将译码比特对的可信度输出给CTC对数似然比计算模块(9);
Turbo对数似然比计算模块(6),利用可信度存储模块(5)提供的译码比特对的可信度,根据二进制Turbo码的对数似然比计算公式,计算译码比特的对数似然比,并将计算得到的对数似然比输出给Turbo外信息计算存储模块(7)和Turbo硬判决模块(8);
Turbo外信息计算存储模块(7),利用Turbo对数似然比计算模块(6)输出的对数似然比,计算译码比特的外信息,并对该外信息交织后存储,将存储的信息输出给分支度量计算模块(2),作为下一次分量译码的先验信息;
Turbo硬判决模块(8),利用Turbo译码的硬判决规则对Turbo对数似然比计算模块(6)输出的对数似然比进行硬判决,输出待译码比特的估计值;
CTC对数似然比计算模块(9),利用可信度存储模块(5)的译码比特对的可信度,根据双二进制CTC码的对数似然比计算公式,计算译码比特对的对数似然比,并将计算得到的对数似然比输出给CTC外信息计算存储模块(10)和CTC硬判决模块(11);
CTC外信息计算存储模块(10),利用CTC对数似然比计算模块(9)输出的对数似然比,计算译码比特对的外信息,并对该外信息交织后存储,将存储的外信息输出给分支度量计算模块(2),作为下一次分量译码的先验信息;
CTC硬判决模块(11),利用CTC译码的硬判决规则对CTC对数似然比计算模块(9)输出的对数似然比进行硬判决,输出待译码比特的估计值。
2.根据权利要求1所述的通用的高性能Radix-4SOVA译码器,其特征在于,Turbo外信息计算存储模块(7),包括:
Turbo外信息计算子模块(71),利用Turbo对数似然比计算模块(6)输出的对数似然比,根据Turbo码的外信息计算公式,计算译码比特的外信息,并将计算得到的外信息输出给QPP交织器(72);
QPP交织器(72),用于对Turbo外信息计算子模块(71)输出的外信息进行基于比特的交织,并将交织后的外信息输出给Turbo外信息存储子模块(73);
Turbo外信息存储子模块(73),用于对QPP交织器输出的外信息进行存储,并将存储的外信息输出给分支度量计算模块(2),作为下一次分量译码的先验信息。
3.根据权利要求1所述的通用的高性能Radix-4SOVA译码器,其特征在于,CTC外信息计算存储模块(10),包括:
CTC外信息计算子模块(101),利用CTC对数似然比计算模块(9)输出的对数似然比,根据CTC码的外信息计算公式,计算译码比特对的外信息,并将计算得到的外信息输出给CTC交织器(102);
CTC交织器(102),用于对CTC外信息计算子模块(101)输出的外信息进行基于比特对的交织,并将交织后的外信息输出给CTC外信息存储子模块(103);
CTC外信息存储子模块(103),用于对CTC交织器(102)输出的外信息进行存储,并将存储的外信息输出给分支度量计算模块(2),作为下一次分量译码的先验信息。
4.一种通用的高性能Radix-4SOVA译码方法,包括如下步骤:
(1)输入数据存储模块(1)接收并存储编码端发送的码字信息序列,存储容量为两帧,一帧用于接收,一帧用于译码,两帧交替进行;
(2)读取信息,进行第一次分量译码:
(2a)分支度量计算模块(2)按照顺序地址读取输入数据存储模块(1)中第一个分量码的系统信息序列和校验信息序列;
(2b)根据译码器的工作系统,分支度量计算模块(2)读取Turbo外信息计算存储模块(7)或CTC外信息计算存储模块(10)的外信息序列:
当译码器工作在LTE系统时,分支度量计算模块(2)按照顺序地址读取Turbo外信息计算存储模块(7)中译码比特的外信息序列,作为本次分量译码的先验信息序列,其中译码比特的外信息序列的初始值初始化为0;
当译码器工作在WiMAX系统时,分支度量计算模块(2)按照顺序地址读取CTC外信息计算存储模块(10)中译码比特对的外信息序列,作为本次分量译码的先验信息序列,其中译码比特对的外信息序列的初始值初始化为0;
(3)分支度量计算模块(2)利用系统信息序列、校验信息序列和先验信息序列,通过分支度量计算公式,计算译码时两步状态转移的分支度量;
(4)累积路径度量计算模块(3)利用分支度量,通过累积路径度量的递归计算公式计算译码路径的累积路径度量;
(5)对译码比特对的可信度进行更新并存储:
(5a)可信度计算模块(4)对译码比特对的可信度进行更新,得到k+1时刻状态
Figure FDA000033762099000311
关于译码比特对ul,l+1=00、ul,l+1=01、ul,l+1=10和ul,l+1=11的可信度:
LLR ( u l , l + 1 = 00 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 00 | P k - 1 , s i y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
LLR ( u l , l + 1 = 01 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 01 | P k - 1 , s i y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
LLR ( u l , l + 1 = 10 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 10 | P k - 1 , s i y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
LLR ( u l , l + 1 = 11 | P k + 1 , s y 1 k + 1 ) = max P k - 1 s i { LLR ( u l , l + 1 = 11 | P k - 1 , s i y 1 k - 1 ) + &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s }
其中,ul,l+1表示相邻两个时刻编码器输入的信息比特组成的一个信息比特对,l=k-2,k-4,…,k-δ,δ=20,k=3,5,…,N-1,N表示码长且取偶数,
Figure FDA00003376209900035
表示k+1时刻编码器的状态s,s∈{0,1,…,2v-1},v表示编码器的寄存器个数,
Figure FDA00003376209900036
表示译码器从1到k+1时刻接收到的信息序列,LLR表示译码比特对的可信度符号,表示k-1时刻编码器的状态si,i=0,1,2,3, &Delta; k - 1 &RightArrow; k + 1 s i &RightArrow; s = M ( l &OverBar; k - 1 s i &RightArrow; P k + 1 s ) - max l &OverBar; k - 1 s j { M ( l &OverBar; k - 1 s j &RightArrow; P k + 1 s ) } 表示从k-1时刻状态si转移到k+1时刻状态s的累积路径度量与转移到状态s的最大累积路径度量之差,
Figure FDA00003376209900039
表示k-1时刻状态si的幸存路径,表示从k-1时刻的幸存路径
Figure FDA00003376209900041
转移到第k+1时刻状态s的累积路径度量;
(5b)将转移到k+1时刻状态
Figure FDA00003376209900042
对应分支uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的累积路径度量减去其最大值后,分别赋值给 LLR ( u k , k + 1 = 01 | P k + 1 s , y 1 k + 1 ) , LLR ( u k , k + 1 = 10 | P k + 1 s , y 1 k + 1 ) LLR ( u k , k + 1 = 11 | P k + 1 s , y 1 k + 1 ) .
(5c)将上述更新后的可信度存储到可信度存储模块(5);
(6)根据译码器的工作系统,选择相应的对数似然比计算模块,计算对数似然比:
(6a)当译码器工作在LTE系统时,选择Turbo对数似然比计算模块(6)利用二进制Turbo码的对数似然比计算公式,计算译码比特的对数似然比;
(6b)当译码器工作在WiMAX系统时,选择CTC对数似然比计算模块(9)利用双二进制CTC码的对数似然比计算公式,计算译码比特对的对数似然比;
(7)根据译码器的工作系统,选择相应的外信息计算存储模块,计算外信息并存储:
(7a)当译码器工作在LTE系统时,选择Turbo外信息计算存储模块(7)利用Turbo码的外信息计算公式,计算译码比特的外信息,并对该外信息交织后存储,作为下一次分量译码的先验信息;
(7b)当译码器工作在WiMAX系统时,选择CTC外信息计算存储模块(10)利用CTC码的外信息计算公式,计算译码比特对的外信息,并对该外信息交织后存储,作为下一次分量译码的先验信息;
(8)读取信息,进行第二次分量译码:
(8a)分支度量计算模块(2)按照交织和顺序地址分别读取输入数据存储模块(1)中第二个分量码的系统信息序列和校验信息序列;
(8b)根据译码器的工作系统,分支度量计算模块(2)读取Turbo外信息计算存储模块(7)或CTC外信息计算存储模块(10)的外信息序列:
当译码器工作在LTE系统时,分支度量计算模块(2)按照顺序地址读取Turbo外信息计算存储模块(7)中译码比特的外信息序列,作为本次分量译码的先验信息序列;
当译码器工作在WiMAX系统时,分支度量计算模块(2)按照顺序地址读取CTC外信息计算存储模块(10)中译码比特对的外信息序列,作为本次分量译码的先验信息序列;
(8c)利用第二个分量码的系统信息序列、校验信息序列和先验信息序列,按照步骤(3)-(7)的计算方法获得第二个分量译码的外信息,并对该外信息解交织后存储,完成一次迭代译码;
(9)判断当前迭代次数是否达到最大迭代次数8次,如果达到,执行步骤(10);反之,返回步骤(2),进行下一次迭代;
(10)根据译码器的工作系统,选择相应的硬判决模块进行硬判决操作:
(10a)当译码器工作在LTE系统时,选择Turbo硬判决模块(8)按照Turbo码的硬判决规则对译码比特进行硬判决,得到译码比特的估计值,译码结束;
(10b)当译码器工作在WiMAX系统时,选择CTC硬判决模块(11)按照CTC码的硬判决规则对译码比特对进行硬判决,得到译码比特对的估计值,译码结束。
5.根据权利要求4所述的通用的高性能Radix-4SOVA译码方法,其特征在于,所述步骤(6a)中的二进制Turbo码的对数似然比计算公式,表示如下:
L ( u k | y 1 N )
= ln exp ( LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) exp ( LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) )
L ( u k + 1 | y 1 N )
= ln exp ( LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) exp ( LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) ) + exp ( LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) )
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure FDA00003376209900055
分别表示译码比特uk和uk+1的对数似然比,
Figure FDA000033762099000511
表示接收到的译码信息序列,
Figure FDA000033762099000512
表示最大似然路径在k+1+δ时刻的状态s*,δ表示译码深度且δ=20,
Figure FDA000033762099000513
表示从1到k+1+δ时刻接收到的信息序列, LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) , LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) , LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) 分别表示k+1+δ时刻状态关于uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的可信度。
6.根据权利要求4所述的通用的高性能Radix-4SOVA译码方法,其特征在于,所述步骤(6b)的双二进制CTC码的对数似然比计算公式,表示如下:
L ( u k , k + 1 = 00 | y 1 N ) = 0
L ( u k , k + 1 = 01 | y 1 N ) = LLR ( u k , k + 1 = 01 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
L ( u k , k + 1 = 10 | y 1 N ) = LLR ( u k , k + 1 = 10 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
L ( u k , k + 1 = 11 | y 1 N ) = LLR ( u k , k + 1 = 11 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; ) - LLR ( u k , k + 1 = 00 | P k + 1 + &delta; s * , y 1 k + 1 + &delta; )
其中,k=1,3,…,N-1,N表示码长且取偶数,uk,k+1表示第k个和第k+1个译码比特组成的译码比特对, L ( u k , k + 1 = 00 | y 1 N ) , L ( u k , k + 1 = 01 | y 1 N ) , L ( u k , k + 1 = 10 | y 1 N ) L ( u k , k + 1 = 11 | y 1 N ) 分别表示uk,k+1=00、uk,k+1=01、uk,k+1=10和uk,k+1=11的对数似然比。
7.根据权利要求4所述的通用的高性能Radix-4SOVA译码方法,其特征在于,所述步骤(10a)的Turbo码的硬判决规则,表示如下:
u ^ k = 1 , L ( u k | y 1 N ) &GreaterEqual; 0 0 , L ( u k | y 1 N ) < 0
u ^ k + 1 = 1 , L ( u k + 1 | y 1 N ) &GreaterEqual; 0 0 , L ( u k + 1 | y 1 N ) < 0
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure FDA000033762099000611
分别表示译码比特uk和uk+1的估计值,
Figure FDA000033762099000612
Figure FDA000033762099000613
分别表示译码比特uk和uk+1的对数似然比。
8.根据权利要求4所述的通用的高性能Radix-4SOVA译码方法,其特征在于,所述步骤(10b)的CTC码的硬判决规则,表示如下:
u ^ k , k + 1 = 00 , if { MAX = L ( u k , k + 1 = 00 | y 1 N ) } 01 , if { MAX = L ( u k , k + 1 = 01 | y 1 N ) } 10 , if { MAX = L ( u k , k + 1 = 10 | y 1 N ) } 11 , if { MAX = L ( u k , k + 1 = 11 | y 1 N ) }
其中,k=1,3,…,N-1,N表示码长且取偶数,
Figure FDA000033762099000615
表示译码比特对uk,k+1的估计值, MAX = max L ( u k , k + 1 = 00 | y 1 N ) , L ( u k , k + 1 = 01 | y 1 N ) , L ( u k , k + 1 = 10 | y 1 N ) , L ( u k , k + 1 = 11 | y 1 N ) .
CN201310247968.XA 2013-06-20 2013-06-20 通用的高性能Radix-4SOVA译码器及其译码方法 Expired - Fee Related CN103354483B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310247968.XA CN103354483B (zh) 2013-06-20 2013-06-20 通用的高性能Radix-4SOVA译码器及其译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310247968.XA CN103354483B (zh) 2013-06-20 2013-06-20 通用的高性能Radix-4SOVA译码器及其译码方法

Publications (2)

Publication Number Publication Date
CN103354483A true CN103354483A (zh) 2013-10-16
CN103354483B CN103354483B (zh) 2016-08-10

Family

ID=49310805

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310247968.XA Expired - Fee Related CN103354483B (zh) 2013-06-20 2013-06-20 通用的高性能Radix-4SOVA译码器及其译码方法

Country Status (1)

Country Link
CN (1) CN103354483B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105162474A (zh) * 2015-09-09 2015-12-16 中国科学院自动化研究所 一种基四算法下的加比选计算方法和装置
CN105356895A (zh) * 2015-11-26 2016-02-24 航天恒星科技有限公司 一种Turbo码译码方法及装置
CN105515591A (zh) * 2014-09-23 2016-04-20 中国科学院计算技术研究所 一种Turbo码译码系统及方法
CN105790882A (zh) * 2014-12-17 2016-07-20 深圳市中兴微电子技术有限公司 一种降低误检率的方法及装置
CN106301391A (zh) * 2016-08-08 2017-01-04 西安电子科技大学 一种改进的软输出咬尾卷积码译码方法
CN108023670A (zh) * 2016-11-04 2018-05-11 展讯通信(上海)有限公司 一种分组码译码方法及装置
CN113114278A (zh) * 2021-03-07 2021-07-13 西安电子科技大学 双二进制Turbo译码实现方法、系统、设备及应用

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090164868A1 (en) * 2007-12-21 2009-06-25 Beceem Communications Inc. Method and apparatus for buffering an encoded signal for a turbo decoder
CN102523076A (zh) * 2012-01-04 2012-06-27 西安电子科技大学 通用可配置的高速率Turbo码译码系统及其方法
WO2013039376A1 (en) * 2011-09-12 2013-03-21 Mimos Berhad Interleaver for duo -binary turbo codes for a wimax communication system
CN103001739A (zh) * 2012-11-27 2013-03-27 上海交通大学 适用于无线广播系统的喷泉码译码方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090164868A1 (en) * 2007-12-21 2009-06-25 Beceem Communications Inc. Method and apparatus for buffering an encoded signal for a turbo decoder
WO2013039376A1 (en) * 2011-09-12 2013-03-21 Mimos Berhad Interleaver for duo -binary turbo codes for a wimax communication system
CN102523076A (zh) * 2012-01-04 2012-06-27 西安电子科技大学 通用可配置的高速率Turbo码译码系统及其方法
CN103001739A (zh) * 2012-11-27 2013-03-27 上海交通大学 适用于无线广播系统的喷泉码译码方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ROHDE & SCHWARZ: "《Measurement of Channel Parameters for Supporting Throughput FOM in Radiated Performance Measurements》", 《3GPP TSG RAN WG4 (RADIO) MEETING》, 26 February 2010 (2010-02-26) *
任德锋: "《一种新的基-4SOVA译码算法》", 《电子与信息学报》, 31 August 2011 (2011-08-31) *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105515591A (zh) * 2014-09-23 2016-04-20 中国科学院计算技术研究所 一种Turbo码译码系统及方法
CN105515591B (zh) * 2014-09-23 2019-10-25 中国科学院计算技术研究所 一种Turbo码译码系统及方法
CN105790882A (zh) * 2014-12-17 2016-07-20 深圳市中兴微电子技术有限公司 一种降低误检率的方法及装置
CN105790882B (zh) * 2014-12-17 2019-04-30 深圳市中兴微电子技术有限公司 一种降低误检率的方法及装置
CN105162474A (zh) * 2015-09-09 2015-12-16 中国科学院自动化研究所 一种基四算法下的加比选计算方法和装置
CN105162474B (zh) * 2015-09-09 2018-11-27 北京思朗科技有限责任公司 一种基四算法下的加比选计算方法和装置
CN105356895A (zh) * 2015-11-26 2016-02-24 航天恒星科技有限公司 一种Turbo码译码方法及装置
CN106301391A (zh) * 2016-08-08 2017-01-04 西安电子科技大学 一种改进的软输出咬尾卷积码译码方法
CN106301391B (zh) * 2016-08-08 2019-07-16 西安电子科技大学 一种改进的软输出咬尾卷积码译码方法
CN108023670A (zh) * 2016-11-04 2018-05-11 展讯通信(上海)有限公司 一种分组码译码方法及装置
CN113114278A (zh) * 2021-03-07 2021-07-13 西安电子科技大学 双二进制Turbo译码实现方法、系统、设备及应用
CN113114278B (zh) * 2021-03-07 2023-03-14 西安电子科技大学 双二进制Turbo译码实现方法、系统、设备及应用

Also Published As

Publication number Publication date
CN103354483B (zh) 2016-08-10

Similar Documents

Publication Publication Date Title
CN103354483A (zh) 通用的高性能Radix-4SOVA译码器及其译码方法
CN102523076B (zh) 通用可配置的高速率Turbo码译码方法
CN102064838B (zh) 基于新型无冲突交织器的低延迟并行Turbo译码方法
CN107911195B (zh) 一种基于cva的咬尾卷积码信道译码方法
CN104579369A (zh) 一种Turbo迭代译码方法和译码装置
CN105634508A (zh) 一种低复杂度近性能限的Turbo译码器的实现方法
CN104092470B (zh) 一种Turbo码译码装置及方法
Weithoffer et al. Fully pipelined iteration unrolled decoders the road to TB/S turbo decoding
EP1471677A1 (en) Method of blindly detecting a transport format of an incident convolutional encoded signal, and corresponding convolutional code decoder
US20130007568A1 (en) Error correcting code decoding device, error correcting code decoding method and error correcting code decoding program
CN104767537B (zh) 一种用于OFDM电力线通信系统的Turbo译码方法
CN103986557A (zh) 低路径延迟的LTE Turbo码并行分块译码方法
CN102158235A (zh) turbo译码的方法及装置
Kene et al. Soft output decoding algorithm for turbo codes implementation in mobile Wi-Max environment
CN103595424B (zh) 分量译码方法、译码器及Turbo译码方法、装置
CN102832954B (zh) 一种基于软信息平均最小值的Turbo码译码迭代停止方法
US8984377B2 (en) Stopping methods for iterative signal processing
Chen et al. Design of a low power viterbi decoder for wireless communication applications
CN102571107A (zh) LTE系统中高速并行Turbo码的解码系统及方法
JP3892471B2 (ja) 復号方法
US7917834B2 (en) Apparatus and method for computing LLR
CN103701475A (zh) 移动通信系统中8比特运算字长Turbo码的译码方法
CN101299654A (zh) 基于酉空时符号Turbo码的对数域简化译码算法
CN103973319B (zh) 全整数Turbo码迭代译码的方法和系统
Ljunger Turbo decoder with early stopping criteria

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: 20160810

Termination date: 20210620