CN112532254B - 星载低复杂度的Turbo码译码方法及Turbo译码器 - Google Patents

星载低复杂度的Turbo码译码方法及Turbo译码器 Download PDF

Info

Publication number
CN112532254B
CN112532254B CN202011262007.2A CN202011262007A CN112532254B CN 112532254 B CN112532254 B CN 112532254B CN 202011262007 A CN202011262007 A CN 202011262007A CN 112532254 B CN112532254 B CN 112532254B
Authority
CN
China
Prior art keywords
value
metric value
time
decoder
moment
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
CN202011262007.2A
Other languages
English (en)
Other versions
CN112532254A (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202011262007.2A priority Critical patent/CN112532254B/zh
Publication of CN112532254A publication Critical patent/CN112532254A/zh
Application granted granted Critical
Publication of CN112532254B publication Critical patent/CN112532254B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/29Coding, 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种星载低复杂度的Turbo码译码方法及Turbo译码器,方法包括分支度量值的计算和存储、前向度量值的计算和存储、前向度量值的回溯、后向度量值的计算、对数似然比的计算几个主要步骤。Turbo译码器采用上述方法。本发明利用提出的位运算函数bitop代替max函数,并对分支度量值和前向度量值进行了优化存储,对前向度量值进行逆向回溯计算,利用后向度量值计算的中间值进行似然比计算,与统Max‑Log‑MAP方法相比,在保持译码性能和译码时延不变的基础上,存储复杂度降低了75%。满足导航卫星上行注入接收机对处理器低功耗、低存储和低时延的要求。

Description

星载低复杂度的Turbo码译码方法及Turbo译码器
技术领域
本发明涉及卫星导航技术领域,具体的涉及一种星载低复杂度的Turbo码译码方法及Turbo译码器。
背景技术
Turbo码以其逼近香农极限的性能已广泛应用于通信领域。而在卫星导航领域,通常星地距离两万多公里,未来将大规模使用移动注入平台对导航卫星进行低功率上行注入。为了实现导航卫星的长距离、低功率、稳定可靠的上行电文接收,需要在电文中增加高增益的纠错编码,如Turbo码。但导航卫星中的上行注入接收机,使用的数字信号处理器通常是低存储和低主频的,资源极其有限,要同时完成多个通道注入信号接收与处理,同时实现多通道信号的Turbo译码,对于上行注入接收机的设计是一个巨大挑战。
标准的Turbo译码算法是SISO(Soft Input Soft Output,软输入软输出)的迭代反馈译码算法,具有代表性的是SOVA(Soft Output Viterbi Algorithm,软输出维特比)算法和MAP(Maximum A Posteriori Probability,最大后验概率)算法,其中MAP算法由于在低信噪比下具有最优的实现性能,成为大多数译码器的首选。然而MAP算法的空间和时间复杂度都很高,于是在工程上出现了许多简化的次最优的MAP算法,如Log-MAP,Max-Log-MAP、查表Log-MAP、Scale-Max-Log-MAP等,这些算法都是将算法中最耗时的指数求和运算进行了近似的简化运算,以牺牲部分译码性能为代价来降低译码复杂度,提高译码速度。
译码性能是指在给定的信噪比条件下,接收端译码器输出信号的错误概率,即误码率。误码率越低,译码性能越好。译码复杂度包括计算复杂度和存储复杂度。其中,计算复杂度是指处理器完成一次译码所需要的指令周期数;存储复杂度是指处理器完成一次译码所需要的存储容量。译码性能和译码复杂度是工程中存在的主要矛盾,如何在确保译码性能损失最小的情况下提高译码器计算速度和资源消耗量,一直是困扰工程实现的问题。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种星载低复杂度的Turbo码译码方法及Turbo译码器,能够确保译码性能损失最小的情况下提高译码器计算速度和资源消耗量。
根据本发明实施例的一种星载低复杂度的Turbo码译码方法,包括:
S1、导航卫星上行注入接收机的译码器中,一个分量译码器接收数据;
S2、分支度量值的计算和存储:对分量译码器接收的第k时刻信息值和检验值,计算第k时刻的分支度量值,然后将分支度量值存储;
S3、前向度量值的计算和存储:根据第k-1时刻的前向度量值,结合k-1时刻的分支度量值,并根据位运算函数bitop计算第k时刻的前向度量值,计算出k时刻的前向度量值后对其进行归一化处理然后存储;
S4、前向度量值的回溯:根据第k时刻的前向度量值进行逆向回溯计算得到k-1时刻的前向分支度量值;
S5、后向度量值的计算:根据第k+1时刻的后向度量值,结合第k时刻分支度量值,并根据位运算函数bitop计算第k时刻的后向度量值,计算出k时刻的后向度量值后对其进行归一化处理;
S6、对数似然比的计算:通过后向度量值计算的中间值计算对数似然比;
S7、分量译码器的译码结果输出。
根据本发明实施例的一种Turbo译码器,包括译码器,所述译码器用于运行上述的星载低复杂度的Turbo码译码方法。
根据本发明实施例的星载低复杂度的Turbo码译码方法及Turbo译码器,至少具有如下技术效果:本发明实施方式利用信息位与校验位的对应关系,降低分支度量值的存储量;采用提出的位运算函数bitop替代max函数,极大简化了指数求和运算的复杂度;对前向度量值进行优化存储和逆向回溯,降低了前向度量值的存储量;利用后向度量值的中间值计算似然比,减少重复计算,降低了计算时延。与传统Max-Log-MAP方法相比,在保持译码性能和译码时延不变的基础上,存储复杂度显著降低,满足导航卫星上行注入接收机对处理器低功耗、低存储和低时延的要求。
根据本发明的一些实施例,所述步骤S2中第k时刻的分支度量值的计算公式为:
Figure GDA0002937886730000031
Figure GDA0002937886730000032
其中,
Figure GDA0002937886730000033
Figure GDA0002937886730000034
为第k时刻的分支度量值,Lk为分量译码器对输入信息位的先验信息;xk表示在导航卫星上行注入接收机端,输入到分量译码器的信息值;yk表示在导航卫星上行注入接收机端,输入到分量译码器的校验值。
根据本发明的一些实施例,所述步骤S3中第k时刻的前向度量值的计算公式为
Figure GDA0002937886730000035
Figure GDA0002937886730000041
其中,
Figure GDA0002937886730000042
Figure GDA0002937886730000043
分别是αk(b0)和αk(b1)的对数表示形式;
Figure GDA0002937886730000044
Figure GDA0002937886730000045
分别是αk-1(a0)和αk-1(a1)的对数表示形式;αk-1(a0)为第k-1时刻分量译码器的寄存器状态值a0对应的前向度量值,αk-1(a1)为第k-1时刻分量译码器的寄存器状态值a1对应的前向度量值,(a0,a1=1,2…n);αk(b0)为第k时刻分量译码器的寄存器状态值为b0时对应的前向度量值,(b0,b1=1,2…n);αk(b1)为第k时刻分量译码器的寄存器状态值为b1时对应的前向度量值,
Figure GDA0002937886730000046
位运算符bitop定义为
bitop(x,y)=(x>>8)&y
“>>”为带符号按位右移操作符,“&”为按位与操作符。
根据本发明的一些实施例,所述步骤S3中存储的前向度量值为Λ1与Λ2异号时的前向度量值
Figure GDA0002937886730000047
其中
Figure GDA0002937886730000048
c0为对应的寄存器状态值。
根据本发明的一些实施例,所述步骤S3中的归一化处理中采用固定归一化系数A,A为导航卫星上行注入接收机接收的信号幅度的对数值。
根据本发明的一些实施例,所述步骤S4中逆向回溯计算的方式为
根据第k时刻的前向度量值
Figure GDA0002937886730000049
Figure GDA00029378867300000410
逆向求k-1时刻前向度量值
Figure GDA00029378867300000411
Figure GDA00029378867300000412
具体步骤为
假设
Figure GDA00029378867300000413
然后进行分支判断:
当y1=0时,
Figure GDA00029378867300000414
当y2=0时,
Figure GDA00029378867300000415
否则,
Figure GDA0002937886730000051
Figure GDA0002937886730000052
其中,
Figure GDA0002937886730000053
为第k时刻的分支度量值,
Figure GDA0002937886730000054
Figure GDA0002937886730000055
分别是αk(b0)和αk(b1)的对数表示形式;
Figure GDA0002937886730000056
为Λ1与Λ2异号时的前向度量值,c0为对应的寄存器状态值,
Figure GDA0002937886730000057
位运算符bitop定义为
bitop(x,y)=(x>>8)&y
“>>”为带符号按位右移操作符,“&”为按位与操作符。
根据本发明的一些实施例,所述步骤S5中k+1时刻的后向度量值的计算方式为
Figure GDA0002937886730000058
Figure GDA0002937886730000059
Figure GDA00029378867300000510
Figure GDA00029378867300000511
Figure GDA00029378867300000512
Figure GDA00029378867300000513
其中,βk(a0)为第k时刻分量译码器的寄存器状态值a0对应的后向度量值,βk(a1)为第k时刻分量译码器的寄存器状态值a1对应的后向度量值,
Figure GDA00029378867300000514
Figure GDA00029378867300000515
Figure GDA00029378867300000516
分别为βk(a0)和βk(a1)计算的中间值,
Figure GDA00029378867300000517
为分支度量值;
利用位运算函数bitop得后向度量值计算公式为:
Figure GDA00029378867300000518
Figure GDA00029378867300000519
其中
Figure GDA0002937886730000061
分别为βk(a0)、βk(a1)的对数形式,其中
Figure GDA0002937886730000062
Figure GDA0002937886730000063
分别为
Figure GDA0002937886730000064
的对数形式;位运算符bitop定义为
bitop(x,y)=(x>>8)&y
“>>”为带符号按位右移操作符,“&”为按位与操作符。
根据本发明的一些实施例,所述步骤S5中的归一化处理中采用固定归一化系数A,A为导航卫星上行注入接收机接收的信号幅度的对数值。
根据本发明的一些实施例,所述步骤S6中对数似然比为L(uk),其计算公式为
Figure GDA0002937886730000065
其中uk为第k时刻信息位,并且
Figure GDA0002937886730000066
max运算与位运算bitop的关系为:
max(x,y)=y-bitop(y-x,y-x)。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例中星载低复杂度的Turbo码译码方法的流程图;
图2为前向度量值的蝶式运算原理图;
图3为后向度量值的蝶式运算原理图;
图4为本发明和现有技术的试验效果对比图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
参考图1,一种星载低复杂度的Turbo码译码方法,包括以下步骤:
S1、导航卫星上行注入接收机的译码器中,一个分量译码器接收数据;
S2、分支度量值的计算和存储
已知现有的分支度量值的计算和存储方法如下:
假设一帧数据有N个信息位,在编码器中,第k时刻指第k输入编码器信息位的时刻;在译码器中,第k信息位的接收对应第k接收时刻。分支度量值
Figure GDA0002937886730000071
表示在地面的卫星上行信号注入平台中,第k时刻编码器的输入信息位uk与编码器对应输出的校验位vk(uk,vk=0or1)在第k接收时刻上的联合概率,其对数表示形式
Figure GDA0002937886730000072
为:
Figure GDA0002937886730000073
其中,Lk为分量译码器对uk的先验信息;xk表示在导航卫星上行注入接收机端,输入到分量译码器的信息值,该信息值与uk相对应;yk表示在导航卫星上行注入接收机端,输入到分量译码器的校验值,该校验值与vk相对应。假设xk和yk均采用8bit有符号数表示,其中最高位表示符号位,低7bit表示数据位。则导航卫星上行注入接收机第k时刻的分支度量值有以下4种可能的取值,分别是输入分量译码器的信息位和校验位为0或1时的组合:
Figure GDA0002937886730000081
Figure GDA0002937886730000082
Figure GDA0002937886730000083
Figure GDA0002937886730000084
从上述现有的分支度量值的计算和存储方法中可以推知:
Figure GDA0002937886730000085
是一个固定值,而1/2是常数,计算似然比时,分子分母可以相互抵消,也不需要存储。若忽略分支度量的1/2常数项,记:
Figure GDA0002937886730000086
Figure GDA0002937886730000087
Figure GDA0002937886730000088
Figure GDA0002937886730000089
就可以恢复出第k时刻所有的分支度量值,因此只需要存储
Figure GDA00029378867300000810
Figure GDA00029378867300000811
即可。这样,分量译码器中分支度量的存储量可以压缩到传统Max-Log-MAP算法的1/n(假设Turbo编码器使用了m个状态寄存器,则分量译码器的寄存器状态值的取值范围为1,2…n,其中n=2m)。
本发明采用的分支度量值的计算和存储方法如下:
对分量译码器接收的第k时刻信息值xk和检验值yk,利用下述公式计算第k时刻的分支度量值
Figure GDA00029378867300000812
Figure GDA00029378867300000813
并存储:
Figure GDA00029378867300000814
Figure GDA00029378867300000815
S3、前向度量值的计算和存储
已知现有的前向度量值的计算和存储方法如下:
已知第k-1时刻分量译码器的寄存器状态值a0对应的前向度量值为αk-1(a0),第k-1时刻分量译码器的寄存器状态值a1对应的前向度量值为αk-1(a1)(a0,a1=1,2…n)。第k时刻分量译码器的寄存器状态值为b0时,对应的前向度量值为αk(b0),第k时刻分量译码器的寄存器状态值为b1时,对应的前向度量值为αk(b1)(b0,b1=1,2…n)。已知第k-1时刻的前向度量值αk-1(a0)和αk-1(a1),求第k时刻的前向度量值αk(b0)和αk(b1),可以使用蝶式结构进行计算,如图2所示为第k-1时刻分支度量值与第k-1时刻前向度量值的乘加运算组合形式。在分量译码器中,分支度量值和前向度量值组合的蝶式运算有两种形式,第一种为分支度量值
Figure GDA0002937886730000091
与前向度量值的组合,第二种为分支度量值
Figure GDA0002937886730000092
与前向度量值的组合,其推导方式与第一种方式相同。下面以图2的第一种情况为例进行说明,由第k-1时刻的前向度量值求第k时刻的前向度量值的计算公式为:
Figure GDA0002937886730000093
Figure GDA0002937886730000094
当采用Max-Log-MAP方法时,上述蝶式运算可变形成以下的运算形式:
Figure GDA0002937886730000095
Figure GDA0002937886730000096
其中
Figure GDA0002937886730000097
Figure GDA0002937886730000098
分别是αk(b0)和αk(b1)的对数表示形式,
Figure GDA0002937886730000099
Figure GDA00029378867300000910
分别是αk-1(a0)和αk-1(a1)的对数表示形式,max(x,y)表示取x与y中的最大值。
而本发明采用的前向度量值的计算和存储方法如下:
Figure GDA00029378867300000911
Figure GDA00029378867300000912
其中,
Figure GDA00029378867300000913
位运算符bitop定义为:
bitop(x,y)=(x>>8)&y
“>>”为带符号按位右移操作符,“&”为按位与操作符。
从上述两种方法中使用的max运算与位运算bitop的关系为:
max(x,y)=y-bitop(y-x,y-x)
从上述过程中可以看出,采用Max-Log-MAP方法时,求一个前向度量值,需要2次加法(1次加法需要1个指令周期)、1次减法(1次减法需要1个指令周期)、1次比较(1次比较需要5个指令周期),共需要8个指令周期。而本发明求一个前向度量值需要3次加/减法、2次位运算(包括移位和按位与操作,1次位运算需要1个指令周期),共需要5个指令周期。
在计算出前向度量值后对其进行归一化,现有的Max-Log-MAP译码算法中,采用第k时刻最大的前向度量值作为归一化系数,还需要进行n-1次取大的操作。
而本发明采用固定归一化系数A,A为导航卫星上行注入接收机接收的信号幅度的对数值,在一帧信号的译码过程中始终保持不变。
现有的方法在存储前向度量值时,存储计算得到的第k时刻所有寄存器状态值对应的归一化后的前向度量值αk(b0)、αk(b0),αk(bn-1),一共n个。
而本发明在存储前向度量值时,只需存储Λ1与Λ2异号时的前向度量值,假设此时对应的寄存器状态值为c0,则存储的前向度量值为
Figure GDA0002937886730000101
Figure GDA0002937886730000102
则1个蝶式运算最多存储1个前向度量值。
S4、前向度量值的回溯
假设第k时刻所有寄存器状态值对应的前向度量值已知,仍然以图2的蝶式运算为例,由前向度量值
Figure GDA0002937886730000103
逆向求k-1时刻前向度量值
Figure GDA0002937886730000104
Figure GDA0002937886730000105
的方法如下:
假设
Figure GDA0002937886730000106
则做如下的分支判断:
当y1=0时,
Figure GDA0002937886730000111
当y2=0时,
Figure GDA0002937886730000112
否则,
Figure GDA0002937886730000113
Figure GDA0002937886730000114
以上运算,最大消耗3个判断,6个位运算,4个加/减运算。
S5、后向度量值的计算
已知现有的后向度量值的计算和存储方法如下:
假设第k时刻分量译码器的寄存器状态值a0对应的后向度量值为βk(a0),第k时刻分量译码器的寄存器状态值a1对应的后向度量值为βk(a1)(a0,a1=1,2…n)。第k+1时刻分量译码器的寄存器状态值为b0时,对应的后向度量值为βk+1(b0),第k+1时刻分量译码器的寄存器状态值为b1时,对应的后向度量值为βk+1(b1)(b0,b1=1,2…n)。已知第k+1时刻的后向度量值βk+1(b0)和βk+1(b1),,求第k时刻的后向度量值βk(a0)和βk(a1),也可以使用蝶式结构进行计算,如图3所示,为第k时刻分支度量值与第k+1时刻后向度量值的乘加运算组合形式。后向度量值的计算是也蝶式结构,在计算时也可成对出现。在分量译码器中,分支度量值和后向度量值组合的蝶式运算也有两种形式,与前向度量的蝶式运算组合形式相同。下面仍然以分支度量值
Figure GDA0002937886730000115
与后向度量的组合为例,如图3所示,后向度量值的计算公式为:
Figure GDA0002937886730000116
Figure GDA0002937886730000117
当采用Max-Log-MAP方法时,上述蝶式运算可变形成以下的运算形式:
Figure GDA0002937886730000118
Figure GDA0002937886730000119
其中
Figure GDA0002937886730000121
分别为βk(a0)、βk(a1)、βk+1(b0)、βk+1(b1)的对数形式。
而本发明采用的后向度量值的计算方法如下:
Figure GDA0002937886730000122
Figure GDA0002937886730000123
Figure GDA0002937886730000124
Figure GDA0002937886730000125
Figure GDA0002937886730000126
Figure GDA0002937886730000127
其中
Figure GDA0002937886730000128
Figure GDA0002937886730000129
分别为βk(a0)和βk(a1)计算的中间值。利用bitop函数得后向度量值计算公式为:
Figure GDA00029378867300001210
Figure GDA00029378867300001211
其中
Figure GDA00029378867300001212
Figure GDA00029378867300001213
Figure GDA00029378867300001214
分别为
Figure GDA00029378867300001215
的对数形式。
后向度量值的归一化操作与前向度量一样,采用固定归一化值系数归一化系数A。
S6、对数似然比的计算。
由于后向度量值不需要存储,可以利用后向度量值计算的中间值来计算对数似然比。使用以下公式计算第k时刻信息位uk的对数似然比:
Figure GDA00029378867300001216
其中
Figure GDA0002937886730000131
再运用max(x,y)=y-bitop(y-x,y-x)式关系转换成位运算bitop的形式可以得到最终的对数似然比L(uk)。
判断当L(uk)≥0时,则uk=1,否则uk=0。
S7、完成帧数据的计算,分量译码器将译码结果输出。
表1是利用本发明与现有技术进行对比的存储量分析表,假设分量译码器中寄存器状态值的取值最大为n,完整的一帧信息有N个信息位。对于每1个分支度量值和前向度量值,均使用8bit(8bit=1byte)的存储宽度进行存储。Max-Log-MAP方法的前向度量值和分支度量值分别使用了nN和2nN个byte,而本发明的前向度量值和分支度量值只使用了0.25nN和2N个byte,存储量是传统方法的1/4和1/n,极大减小了数字信号处理器的存储器使用量。
前向度量(byte) 分支度量(byte)
Max-Log-MAP nN 2nN
本方法 0.25nN 2N
表1本发明与现有技术进行对比的存储量分析表
表2是利用本发明与现有技术进行对比的计算量分析表,假设译码器中寄存器状态值的取值最大为n,以1个分量译码器1次迭代所需的计算量为例进行对比,Max-Log-MAP方法计算量为32n-7个指令周期,本方法为33n-4个指令周期。另外本算法的归一化系数使用固定门限,Max-Log-MAP方法使用度量值最大值作为归一化的门限,因此本方法与Max-Log-MAP方法相比,总体计算量相当。
Figure GDA0002937886730000132
Figure GDA0002937886730000141
表2本发明与现有技术进行对比的计算量分析表
图4是利用本发明与现有技术进行对比的性能对比图,假设一帧信息有1808bit,编码器的生成多项式为
Figure GDA0002937886730000142
采用码率1/2的Turbo码编码,编码后的信息使用BPSK调制并在高斯加性白噪声的信道下传输。导航卫星上行注入接收机使用本发明与Max-Log-MAP方法等两种方法进行译码,仿真在接收信号信噪比0~1.8dB范围内译码器输出信息的误码率。如图4所示,本发明与Max-Log-MAP方法相比并没有损失计算精度,因此译码性能相当。
本发明还包括一种运行上述方法的Turbo译码器。
综上所述,本发明实施例利用提出的位运算函数bitop代替max函数,并对分支度量值和前向度量值进行了优化存储,对前向度量值进行逆向回溯计算,利用后向度量值计算的中间值进行似然比计算,与统Max-Log-MAP方法相比,在保持译码性能和译码时延不变的基础上,存储复杂度降低了75%。满足导航卫星上行注入接收机对处理器低功耗、低存储和低时延的要求。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所述技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

Claims (5)

1.一种星载低复杂度的Turbo码译码方法,其特征在于,包括:
S1、导航卫星上行注入接收机的译码器中,一个分量译码器接收数据;
S2、分支度量值的计算和存储:对分量译码器接收的第k时刻信息值和检验值,计算第k时刻的分支度量值,然后将分支度量值存储;
所述步骤S2中第k时刻的分支度量值的计算公式为:
Figure FDA0003892589770000011
Figure FDA0003892589770000012
其中,
Figure FDA0003892589770000013
表示第k时刻需存储的分支度量值1,
Figure FDA0003892589770000014
表示第k时刻需存储的分支度量值2,Lk为分量译码器对输入信息位的先验信息;xk表示在导航卫星上行注入接收机端,输入到分量译码器的信息值;yk表示在导航卫星上行注入接收机端,输入到分量译码器的校验值;
S3、前向度量值的计算和存储:根据第k-1时刻的前向度量值,结合k-1时刻分支度量值,并根据位运算函数bitop计算第k时刻的前向度量值,计算出k时刻的前向度量值后对其进行归一化处理然后存储;所述步骤S3中第k时刻的前向度量值的计算公式为
Figure FDA0003892589770000015
Figure FDA0003892589770000016
其中,
Figure FDA0003892589770000017
Figure FDA0003892589770000018
分别是αk(b0)和αk(b1)的对数表示形式;
Figure FDA0003892589770000019
Figure FDA00038925897700000110
分别是αk-1(a0)和αk-1(a1)的对数表示形式;αk-1(a0)为第k-1时刻分量译码器的寄存器状态值a0对应的前向度量值,αk-1(a1)为第k-1时刻分量译码器的寄存器状态值a1对应的前向度量值,(a0,a1=1,2…n);αk(b0)为第k时刻分量译码器的寄存器状态值为b0时对应的前向度量值,(b0,b1=1,2…n);αk(b1)为第k时刻分量译码器的寄存器状态值为b1时对应的前向度量值,
Figure FDA0003892589770000021
位运算符bitop定义为bitop(x,y)=(x>>8)&y
“>>”为带符号按位右移操作符,“&”为按位与操作符;
S4、前向度量值的回溯:根据第k时刻的前向度量值进行逆向回溯计算;所述步骤S4中逆向回溯计算的方式为
根据第k时刻的前向度量值
Figure FDA0003892589770000022
Figure FDA0003892589770000023
逆向求k-1时刻前向度量值
Figure FDA0003892589770000024
Figure FDA0003892589770000025
具体步骤为
假设
Figure FDA0003892589770000026
然后进行分支判断:
当y1=0时,
Figure FDA0003892589770000027
当y2=0时,
Figure FDA0003892589770000028
否则,
Figure FDA0003892589770000029
Figure FDA00038925897700000210
其中,
Figure FDA00038925897700000211
为Λ1与Λ2异号时的前向度量值,c0为对应的寄存器状态值,
Figure FDA00038925897700000212
S5、后向度量值的计算:根据第k+1时刻的后向度量值,结合第k时刻分支度量值并根据位运算函数bitop计算第k时刻的后向度量值,计算出k时刻的后向度量值后对其进行归一化处理;所述步骤S5中k时刻的后向度量值的计算方式为记
Figure FDA0003892589770000031
Figure FDA0003892589770000032
Figure FDA0003892589770000033
Figure FDA0003892589770000034
Figure FDA0003892589770000035
Figure FDA0003892589770000036
其中,βk(a0)为第k时刻分量译码器的寄存器状态值a0对应的后向度量值,βk(a1)为第k时刻分量译码器的寄存器状态值a1对应的后向度量值,
Figure FDA0003892589770000037
Figure FDA0003892589770000038
Figure FDA0003892589770000039
分别为βk(a0)和βk(a1)计算的中间值,
Figure FDA00038925897700000310
为分支度量值;
利用位运算函数bitop得后向度量值计算公式为:
Figure FDA00038925897700000311
Figure FDA00038925897700000312
其中
Figure FDA00038925897700000313
分别为βk(a0)、βk(a1)的对数形式,其中
Figure FDA00038925897700000314
Figure FDA00038925897700000315
分别为
Figure FDA00038925897700000316
的对数形式;
S6、对数似然比的计算:通过后向度量值计算的中间值计算第k时刻输入分量译码器数据的对数似然比;所述步骤S6中对数似然比为L(uk),其计算公式为
Figure FDA00038925897700000317
其中uk为第k时刻信息位,并且
Figure FDA0003892589770000041
max运算与位运算bitop的关系为:
max(x,y)=y-bitop(y-x,y-x);
S7、译码结果输出。
2.根据权利要求1所述的星载低复杂度的Turbo码译码方法,其特征在于:所述步骤S3中存储的前向度量值为Λ1与Λ2异号时的前向度量值
Figure FDA0003892589770000042
其中
Figure FDA0003892589770000043
c0为对应的寄存器状态值。
3.根据权利要求1所述的星载低复杂度的Turbo码译码方法,其特征在于:所述步骤S3中的归一化处理中采用固定归一化系数A,A为导航卫星上行注入接收机接收的信号幅度的对数值。
4.根据权利要求1所述的星载低复杂度的Turbo码译码方法,其特征在于:所述步骤S5中的归一化处理中采用固定归一化系数A,A为导航卫星上行注入接收机接收的信号幅度的对数值。
5.一种Turbo译码器,其特征在于,包括译码器,所述译码器用于运行权利要求1至4任意一项所述的星载低复杂度的Turbo码译码方法。
CN202011262007.2A 2020-11-12 2020-11-12 星载低复杂度的Turbo码译码方法及Turbo译码器 Active CN112532254B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011262007.2A CN112532254B (zh) 2020-11-12 2020-11-12 星载低复杂度的Turbo码译码方法及Turbo译码器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011262007.2A CN112532254B (zh) 2020-11-12 2020-11-12 星载低复杂度的Turbo码译码方法及Turbo译码器

Publications (2)

Publication Number Publication Date
CN112532254A CN112532254A (zh) 2021-03-19
CN112532254B true CN112532254B (zh) 2023-04-07

Family

ID=74982239

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011262007.2A Active CN112532254B (zh) 2020-11-12 2020-11-12 星载低复杂度的Turbo码译码方法及Turbo译码器

Country Status (1)

Country Link
CN (1) CN112532254B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102111162A (zh) * 2009-12-28 2011-06-29 重庆重邮信科通信技术有限公司 Turbo 分量译码方法、分量译码器、支路计算器及Turbo 译码器
CN107147401A (zh) * 2017-03-31 2017-09-08 西安电子科技大学 基于简化双二元Turbo码度量值的译码方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7346833B2 (en) * 2002-11-05 2008-03-18 Analog Devices, Inc. Reduced complexity turbo decoding scheme
US7181382B2 (en) * 2003-05-08 2007-02-20 Microsoft Corporation System and method for testing, simulating, and controlling computer software and hardware

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102111162A (zh) * 2009-12-28 2011-06-29 重庆重邮信科通信技术有限公司 Turbo 分量译码方法、分量译码器、支路计算器及Turbo 译码器
CN107147401A (zh) * 2017-03-31 2017-09-08 西安电子科技大学 基于简化双二元Turbo码度量值的译码方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Complexity reduced turbo decoding with concatenated detection codes;Lei Cao;《2003 IEEE 58th Vehicular Technology Conference. VTC 2003-Fall (IEEE Cat. No.03CH37484)》;20040504;678-681 *
星载低复杂度Turbo译码器的实现技术研究;张芪;《宇航学报》;20131231;1621-1627 *

Also Published As

Publication number Publication date
CN112532254A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
US6982659B2 (en) Method and apparatus for iterative decoding
KR100566084B1 (ko) 콘벌루션 인코딩된 코드워드를 디코딩하기 위한 소프트 결정 출력 디코더
KR100487183B1 (ko) 터보 부호의 복호 장치 및 방법
US7159168B2 (en) Iterative decoding with likelihood weighting
US7657819B2 (en) Method and apparatus for termination of iterative turbo decoding
EP1127411B1 (en) Efficient trellis state metric normalization
US20010021233A1 (en) Soft-decision decoding of convolutionally encoded codeword
US6879648B2 (en) Turbo decoder stopping based on mean and variance of extrinsics
US20020040461A1 (en) Decoder and decoding method
US6732327B1 (en) Scaled-feedback turbo decoder
US6868518B2 (en) Look-up table addressing scheme
US7391826B2 (en) Decoding method and apparatus
CN101147327A (zh) 使用篱栅的蝴蝶结构来映射解码的度量计算
CN112532254B (zh) 星载低复杂度的Turbo码译码方法及Turbo译码器
US20030091129A1 (en) Look-up table index value generation in a turbo decoder
US7552379B2 (en) Method for iterative decoding employing a look-up table
US6614858B1 (en) Limiting range of extrinsic information for iterative decoding
US6886127B2 (en) Implementation of a turbo decoder
US20030023919A1 (en) Stop iteration criterion for turbo decoding
CN114553370B (zh) 译码方法、译码器、电子设备及存储介质
JP2614524B2 (ja) 誤り訂正符号の復号方法
EP1455457A1 (en) Simple early stopping criterion for maximum likelihood soft output decoding algorithms
CN2884696Y (zh) 用于Turbo码译码器中的归一化装置
US7032165B2 (en) ACS unit in a decoder
CN113824450A (zh) 一种多元ldpc码的译码方法、译码器及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant