一种非递归的SC译码似然比确定方法及装置与流程

文档序号:14124101阅读:191来源:国知局
一种非递归的SC译码似然比确定方法及装置与流程

本发明涉及信道编码领域,具体涉及一种非递归的sc译码似然比确定方法及装置。



背景技术:

sc(successivecancellation)是极化码(polarcode)的第一个也是目前应用最为广泛的译码算法。极化码具有香农限可达的纠错性能。与ldpc相比,不但具有更好的纠错性能,并且具有更低的编译码复杂度。极化码目前在信道编码领域与量子密钥分发(quantumkeydistribution,qkd)领域均有广泛的应用。

在传输消息之前,通信双方首先需要确定期望的信道传输码率,记为r。由香农定理,为了可靠传输需满足r≤i(w)。然后通信双方需要根据信道挑选方法从n个极化信道中挑选出nr个使得信道wn的可靠性尽可能地高,记k=nr。这些被选中的极化信道的序号称为信息位,未被选中的极化信道的序号被称为冻结位。记信息位的集合为i,冻结位的集合可记为ic,最后,通信双方需要约定冻结位上填充的比特值,记为因此极化码可由四元组()表示。

发送方通过极化码编码操作将编码为后,通过信道w经由n次发送给接收方,设接收方接收到的比特串为该过程也可以看作在组合信道wn上输入消息为输出消息为的传输过程。接收方需要根据以及四元组信息(),估计的值,记为组合信道wn由n个极化信道组成,第i个极化信道的输入为ui,输出为因此比特ui的估计值可根据与部分估计序列计算。由于的计算依赖于sc译码算法需要对逐个进行译码判决。

sc译码器按式(1)依次计算比特的值,

其中为似然比(likelihoodratio,lr),定义为

公式(2)可通过递归公式(3)与(4)计算,

其中

g(a,b,s)=a1-2s·b.(6)

现有的基于软件平台实现的sc译码算法均采用递归的方式实现,例如文献[1-3]。sc译码算法的递归实现来源于sc译码器的递归树形表示。图1给出了n=8时sc译码器的递归树形表示,其中节点mk表示第n/2k层的2k个似然比计算单元,表示输入到第n/2k层某个节点的b-a+1个似然比,为信道似然比,表示第n/2k层某个节点输出的b-a+1个部分和。每个非根非叶子节点以其父节点输出的似然比为输入,利用式(5)中的函数f或式(6)中的函数g对这些似然比进行处理并输出给左右子节点,对左右子节点返回的部分和进行处理得到部分和并输出给父节点。根节点m3以信道似然比为输入,经过处理输出给左右子节点m2,但是并不对左右子节点返回的部分和进行处理;叶子节点m0对输入的似然比按式(1)进行译码判决得到估计比特并返回部分和

图2示例了非根非叶子节点数据处理的一般过程。节点mk接收父节点mk+1的似然比并将其经过处理传递给左右子节点。传递给左子结点mk-1的似然比为

传递给右子结点mk-1的似然比为

其中为左子结点返回的部分和,a=j·2k+1,节点mk按式(9)与式(10)处理左右子节点返回的部分和得到部分和并输出给父节点mk+1。

上述的递归过程直至叶子节点m0处结束。这种递归的实现方式总共需要2n-2次函数调用,空间复杂度为o(nlog2n)。

文献[4]为了减少函数调用成本,对递归的sc译码算法进行了部分递归展开。具体来说是对节点m3进行了递归展开处理。此时,该算法的函数递归调用次数为n/4-2,空间复杂度仍为o(nlog2n)。

综上,文献[1-3]中算法的缺点在于递归函数调用次数太多,为2n-2次。文献[4]虽然通过递归展开减少了递归函数调用次数,但是其仍为n/4-2。当n很大时,这些文献中的算法的递归函数调用次数太大。在实际应用中,极化码的帧长n一般为220。此外文献[1-4]中算法的空间复杂度均为o(nlog2n),比较高。



技术实现要素:

本发明的目的是为了解决现有的递归的sc译码算法调用递归函数的次数太多,空间复杂度比较高,进而导致通信过程中计算时间较长、占用存储空间较大的缺点,而提出一种非递归的sc译码似然比确定方法及装置。

一种非递归的sc译码似然比确定方法,所述方法在传输信息之前,通信双方首先需要确定期望的信道传输码率,然后通信双方需要根据信道挑选方法从n个极化信道中挑选出nr个使得信道wn的可靠性尽可能地高,最后,通信双方需要约定冻结位上填充的比特值;

发送方通过极化码编码操作将编码为后,通过信道w经由n次发送给接收方,设接收方接收到的比特串为该过程也可以看作在组合信道wn上输入消息为输出消息为的传输过程;接收方需要根据以及四元组信息估计的值,记为组合信道wn由n个极化信道组成,第i个极化信道的输入为ui,输出为因此比特ui的估计值可根据与部分估计序列计算。由于的计算依赖于sc译码算法需要对逐个进行译码判决;

第i个极化信道的输入为ui,比特ui的估计值根据与部分估计序列计算;

当计算时,依次计算f2,f4,…,fn;

当计算时,依次计算其中fj表示使用公式f计算第j层的似然比公式f具体为:

gj表示使用公式g计算第j层的似然比公式g具体为:

g(a,b,s)=a1-2s·b.

ki为估计时似然比计算的最大递归深度;2≤i≤n。

本发明的有益效果为:

与现有技术相比,本发明提出的技术方案将递归函数调用次数减少为0次,将空间复杂度降为o(n)。递归函数调用次数的减少提高了sc译码算法的译码速度。为了说明这一效果,我们比较非递归的sc译码算法、递归的sc译码算法、以及文献[4]中部分递归展开(m3节点)的sc译码算法的译码速度性能。本发明的递归函数调用次数为0次,部分递归展开的sc译码算法的次数为递归的sc译码算法的函数调用次数为测试环境为:intelxeoncpue31225,主频为3.10ghz。每个数据点均为100组测试的平均值。

图3列出了三种比较算法的译码速度性能。从图中可以看出非递归的sc译码算法的速度最快,部分递归展开的sc译码算法次之,递归的sc译码算法最差。图4列出了非递归sc译码算法与部分递归展开的sc译码算法的译码速度与递归的sc译码算法的译码速度的比值,可以看出,非递归sc译码算法的译码速度是递归sc译码算法的2.2~3.3倍,部分展开的sc译码算法的译码速度是递归sc译码算法的1.6~2.2倍。

附图说明

图1为n=8时的sc译码器的递归树形表示的结构示意图;

图2为sc译码器的递归树的节点mk数据处理示意图;

图3为sc译码器速度对比图;

图4为非递归的sc译码算法与部分递归展开的sc译码算法的译码速度与递归的sc译码算法的译码速度的比值对比图。

具体实施方式

具体实施方式一:本实施方式提供一种非递归的sc译码似然比确定方法,所述方法在传输信息之前,通信双方首先需要确定期望的信道传输码率,然后通信双方需要根据信道挑选方法从n个极化信道中挑选出nr个使得信道wn的可靠性尽可能地高,最后,通信双方需要约定冻结位上填充的比特值;

发送方通过极化码编码操作将编码为后,通过信道w经由n次发送给接收方,设接收方接收到的比特串为该过程也可以看作在组合信道wn上输入消息为输出消息为的传输过程;接收方需要根据以及四元组信息估计的值,记为组合信道wn由n个极化信道组成,第i个极化信道的输入为ui,输出为因此比特ui的估计值能够根据与部分估计序列计算;由于的计算依赖于sc译码算法需要对逐个进行译码判决;

第i个极化信道的输入为ui,比特ui的估计值根据与部分估计序列计算。

sc译码算法中包含两种类型数据的计算:一是似然比的计算;二是部分和的计算。所以非递归的sc译码算法应该解决似然比与部分和的非递归计算问题。而本发明主要针对似然比的计算进行改进。

似然比计算的主要指导思想是最大化共享似然比。由递归公式(3)与(4),第n层的似然比,的计算可转化为两个第n/2层的似然比的计算,依次类推。但是对于某些层的似然比在计算时已经计算而无需再次计算,有些似然比却必须重新计算。最大化共享似然比的计算指的就是如何确定哪些似然比可以共享而哪些不可以,从而达到不重复计算任何可共享的似然比的目的。

换句话说,译码调度包括以下两个部分:

part1决定zi的值,即决定似然比递归计算的深度;

在sc译码中,当计算时,仅需要重新计算第层的似然比,而第层的似然比可以共享计算时的结果,其中zi是i的共享因子,后文将给出共享因子的定义。

part2决定计算第n/2k(0≤k<zi)层的似然比时应该使用哪个计算公式(f还是g)。

现有的方法大多数通过计算或者或者(i-1)&2k(0≤k≤zi)的奇偶性决定计算公式(f或g)的选择[4,5],若为奇数,则使用公式f,否则使用公式g。

详细的方案原理如下:

定义1(共享因子)对任意给定的整数1≤i≤n,它的共享因子记为zi,定义为整数i-1二进制展开后末尾连续0的个数。特别地,当i=1时,zi=n-1。即其中m0为奇数。

则,可将i写成

从而可写成

由式(11)可知,当i=1时,对任意的(0≤k≤zi),总是等于1,即总是奇数;当i≥1时,如果k=zi,则为偶数,如果k<zi,则为奇数。

也就是说,当i=1时,第n/2k(0≤k<zi)层的似然比的计算公式为f;当2≤i≤n时,第层的似然比的计算公式为g,而第n/2k(0≤k<zi)层的似然比的计算公式为f。如式(12)所示。

因此,似然比的非递归计算算法为:当计算时,依次计算f2,f4,…,fn;当计算(2≤i≤n)时,依次计算其中fj表示使用公式f计算第j层的似然比(对应公式(3)),gj表示使用公式g计算第j层的似然比(对应公式(4))。ki为估计时似然比计算的最大递归深度。

公式f具体为:

gj表示使用公式g计算第j层的似然比公式g具体为:

g(a,b,s)=a1-2s·b.

ki为估计时似然比计算的最大递归深度;2≤i≤n。

具体实施方式二:本实施方式与具体实施方式一不同的是:

计算f2,f4,…,fn以及时,使用时分复用存储方式。

为了降低空间复杂度,我们在非递归的sc译码算法中对似然比与部分和采用时分复用存储。对于似然比,由于每次仅输入或输出一个节点的似然比,因此似然比的时分复用存储不会存在访问冲突。

综合具体实施方式一和二可以看出,本发明通过采用非递归的方式实现sc译码算法,将递归函数调用次数降为0次,提高了译码速率。此外通过对似然比与部分和采用时分复用的存储方式,将算法空间复杂度降为o(n)。

其它步骤及参数与具体实施方式一相同。

具体实施方式三:本实施方式提供一种非递归的sc译码似然比确定装置,所述装置是基于sc译码算法实现的,在传输信息之前,通信双方首先需要确定期望的信道传输码率,然后通信双方需要根据信道挑选方法从n个极化信道中挑选出nr个使得信道wn的可靠性尽可能地高,最后,通信双方需要约定冻结位上填充的比特值。

发送方通过极化码编码操作将编码为后,通过信道w经由n次发送给接收方,设接收方接收到的比特串为该过程也可以看作在组合信道wn上输入消息为输出消息为的传输过程;接收方需要根据以及四元组信息估计的值,记为组合信道wn由n个极化信道组成,第i个极化信道的输入为ui,输出为因此比特ui的估计值可根据与部分估计序列计算。由于的计算依赖于sc译码算法需要对逐个进行译码判决。

第i个极化信道的输入为ui,比特ui的估计值根据与部分估计序列计算,其特征在于:

本实施方式的装置包括:

第一计算模块,用于当i=1,即需要计算时,依次计算f2,f4,…,fn。

第二计算模块,用于当2≤i≤n,即需要计算时,依次计算其中fj表示使用公式f计算第j层的似然比公式f具体为:

gj表示使用公式g计算第j层的似然比公式g具体为:

g(a,b,s)=a1-2s·b.

ki为估计时似然比计算的最大递归深度;2≤i≤n。

本实施方式与具体实施方式一对应相同,本实施方式中不再详细描述。

其它步骤及参数与具体实施方式一或二相同。

具体实施方式四:本实施方式与具体实施方式一至三之一不同的是:计算f2,f4,…,fn以及时,使用时分复用存储方式。本实施方式与具体实施方式二对应相同,此处不再详细描述。

其它步骤及参数与具体实施方式一至三之一相同。

本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1