CN105207682B - 基于动态校验矩阵的极化码置信传播译码方法 - Google Patents
基于动态校验矩阵的极化码置信传播译码方法 Download PDFInfo
- Publication number
- CN105207682B CN105207682B CN201510607383.3A CN201510607383A CN105207682B CN 105207682 B CN105207682 B CN 105207682B CN 201510607383 A CN201510607383 A CN 201510607383A CN 105207682 B CN105207682 B CN 105207682B
- Authority
- CN
- China
- Prior art keywords
- value
- decoding
- belief propagation
- check matrix
- code
- 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
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 110
- 230000010287 polarization Effects 0.000 title claims abstract description 74
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000004891 communication Methods 0.000 claims description 10
- 230000008030 elimination Effects 0.000 claims description 5
- 238000003379 elimination reaction Methods 0.000 claims description 5
- 238000004422 calculation algorithm Methods 0.000 abstract description 28
- 230000000977 initiatory effect Effects 0.000 abstract 1
- 238000012937 correction Methods 0.000 description 6
- 230000007547 defect Effects 0.000 description 5
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1128—Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1191—Codes on graphs other than LDPC codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种基于动态校验矩阵的极化码置信传播译码方法,解决了现有技术利用传统BP译码算法时较低性能和较高时间复杂度的问题。本发明实现方法的步骤:(1)设置模块参数;(2)初始化参数;(3)调整校验矩阵为低密度形式;(4)执行置信传播译码;(5)判定码字估值向量是否为有效向量;(6)计算绝对对数似然值的最小值;(7)计算阈值;(8)判定译码是否成功;(9)输出译码结果。本发明通过调整极化码的校验矩阵,减少其中的短环,从而使得BP算法能够快速收敛,并结合早期停止标准,在提高极化码译码性能的同时,保持较低的时间复杂度。
Description
技术领域
本发明属于通信技术领域,更进一步涉及信道编码技术领域中一种基于动态校验矩阵的极化码置信传播译码方法。本发明可用来解决移动通信、个人通信、深空通信、卫星通信以及第三代移动通信等各种通信系统中的中、短码长的极化码的传统置信传播译码中较低性能和较高时间复杂度的问题。
背景技术
极化码是E.Arikan基于信道极化现象提出的一种新的信道编码方法,在理论上被证明可以达到香农极限,并且具有较低的编译码计算复杂度,这是无线通信领域的重大突破,已经成为编码领域备受瞩目的研究热点。极化码具有确定性的构造方法,并且是第一种、也是已知的唯一能够被严格证明可“达到”信道容量的一种信道编码方法。
现有的极化码的置信传播(BeliefPropagation,BP)译码方法是基于生成矩阵构造的编码因子图上执行的,在该算法的迭代过程中,在从最右列到最左列的相邻节点之间,软信息得以更新和传播;然后,译码器进行逆过程,并且通过最右列的节点更新计划表。这是BP译码算法的一个循环过程。当达到最大迭代次数MBP以后,基于最左列节点的信息的来决定的ui估值尽管它具有和连续删除(succession cancellation,SC)译码算法相同的译码复杂度,但是该译码算法中,帧错误率还是很高,译码性能并不理想,并且由于迭代次数过多,所以时间复杂度较高。
北京邮电大学拥有的专利技术“一种循环冗余校验辅助的极化码译码方法”(授权公告日:2012年9月26日,授权公告号:CN 102694625 B)中公开了一种循环冗余校验辅助的极化码译码方法。该译码方法通过搜索辅助方法确定参数,构造译码方法的辅助结构,搜索候选比特估计序列并且执行循环冗余校验,能大大地提高采用极化码作为信道编译码的通信系统的纠错能力。该方法虽然提高了采用极化码作为信道编译码的通信系统的纠错能力,但是该方法仍然存在不足之处:在对有限个信道进行极化后,仍然存在部分未被极化的信道。因此,有限码长的极化码在这个译码下的抗噪性并不理想,并且存在低输出高延迟的问题。
张双青和刘爱军在其发表的论文“一种改进的极化码置信译码器”(《通信技术》
vol.47,no.3,pp.253-257,Mar.2014.)中公开了一种极化码对数域BP译码的修正算法。该方法通过对错误计算的对数似然信息进行修正以提升译码性能,首先,对于译码因子图中参与该似然信息计算的节点,引入一个修正参数,以修正该节点承载的信息的对数似然信息(修正参数可以由密度进化的高斯近似算法得到),然后,通过置信译码改进算法进行译码。数据结果表明,在牺牲很小的复杂度的条件下,相比原算法,修正算法能够获得0.2dB左右的比特信噪比增益。该方法的不足之处是:在该改进的算法下,误帧率依然很大,译码的性能并没有明显的提高,并且由于译码迭代次数过多,算法的复杂度较高。
发明内容
本发明的目的在于针对上述已有技术的不足,提出一种基于动态调整校验矩阵的极化码置信传播译码方法,避免了低输出高延迟的问题,提高了极化码的译码性能,同时具有较低的复杂度。
为实现上述目的,本发明方法的思路是:首先,对极化码的校验矩阵进行调整,使其对应不可靠比特位的那些列成为单位子阵,然后,执行置信传播译码算法,若输出结果满足判定条件则译码结束,否则进行下一轮矩阵调整并重新执行置信传播译码。这种译码方法使得极化码的校验矩阵变成低密度形式,并且减少了其中短环的数量,从而提高极化码在置信传播译码算法下的性能。
本发明方法的实现步骤如下:
(1)设置译码模块的参数:
(1a)设置置信传播译码的最大迭代次数,其取值为译码模块容许范围内的正整数;
(1b)设置校验矩阵调整的最大次数,其取值为译码模块容许范围内的正整数;
(2)初始化参数:
(2a)将置信传播译码的迭代次数初始化为0;
(2b)将校验矩阵调整的次数初始化为0;
(3)调整校验矩阵为低密度形式:
(3a)计算生成矩阵中每个元素值;
(3b)将生成矩阵中所有元素的值,组成生成矩阵;
(3c)将生成矩阵中所有对应极化码中固定位的列进行转置操作后,组成校验矩阵;
(3d)计算极化码码字比特对应的对数似然值;
(3e)对极化码码字比特对应的最新的对数似然值取绝对值,得到极化码码字比特对应的绝对对数似然值;
(3f)将极化码码字所有比特对应的绝对对数似然值,组成一个绝对对数似然值向量;
(3g)将绝对对数似然值向量中的值,按照由小到大的顺序排序,将排序后的前N-K个绝对对数似然值对应的比特的下标标号,组成一个向量B,其中,N表示极化码的长度,K表示极化码中信息位的长度;
(3h)将校验矩阵中对应向量B中每个元素值的列,执行高斯消去操作,得到转化后的单位子矩阵;
(3i)将校验矩阵的单位子矩阵第j+1行加到第j行,其中,j的取值范围为[1,N-k-1],N表示待译码的极化码的长度,K表示待译码的极化码中信息位的长度,得到低密度校验矩阵;
(4)置信传播译码:
(4a)计算极化码码字比特对应的外部信息;
(4b)计算极化码码字比特对应的更新后的对数似然值;
(4c)计算极化码码字比特的估值;
(4d)将极化码码字所有比特的估值组成一个码字估值向量;
(5)判定码字估值向量是否为有效向量:
若码字估值向量与校验矩阵的乘积是0向量,则将该码字估值向量判定为有效向量,执行步骤(6);若码字估值向量与校验矩阵的乘积不是0向量,并且当前的置信传播译码的迭代次数尚未超过置信传播译码的最大迭代次数,则将该码字估值向量判定为无效向量,将置信传播译码的迭代次数加1,执行步骤(4);
(6)计算绝对对数似然值的最小值;
(7)计算阈值;
(8)判定译码是否成功:
如果绝对对数似然值的最小值大于等于阈值,表示译码成功,执行步骤(9);如果绝对对数似然值的最小值小于阈值,并且校验矩阵调整的次数小于等于校验矩阵调整最大次数,表示译码未成功,将矩阵的调整次数加1,执行步骤(3);
(9)将码字估值向量的信息部分作为译码结果输出。
本发明与现有技术相比具有以下优点:
第一,由于本发明采用调整校验矩阵为低密度形式的校验矩阵进行置信传播译码,克服了现有技术中的置信传播译码算法中基于编码因子图译码的高误帧率的不足,使得本发明的方法通过使用低密度和少短环的校验矩阵,从而提高了收到的软信息的可靠性,加速了置信传播译码算法的收敛,降低了帧错误率,明显地提高了译码性能。
第二,由于本发明采用判定码字估值向量是否为有效向量和判定译码结果是否成功来实现及时停止译码算法的迭代,克服了现有技术中的置信传播译码算法中迭代次数过多的不足,使得本发明的方法实现了及时地判定置信传播译码算法是否收敛,及时停止迭代,降低了译码的复杂度,提高了译码性能。
附图说明
图1为本发明的流程图;
图2为采用本发明和现有技术的译码方法的性能对比图;
图3为采用本发明和现有技术的译码方法的时间复杂度对比图。
具体实施方式
下面结合附图对本发明做进一步描述。
参照附图1,对本发明的具体步骤做进一步描述。
步骤1,设置译码模块的参数。
设置置信传播译码的最大迭代次数,该最大迭代次数取值为译码模块容许范围内的正整数。置信传播译码的最大迭代次数设置得越大,译码性能会越好,但是译码时间也会越长。综合考虑译码的时间和性能,置信传播译码的最大迭代次数一般取值范围为[1,50]。在本发明的实施例中,将置信传播译码的最大迭代次数设置为50。
设置校验矩阵调整的最大次数,其取值为译码模块容许范围内的正整数。校验矩阵调整的最大次数设置得越大,译码性能会越好,但是译码时间也会越长。综合考虑译码的时间和性能,综合考虑译码的时间和性能,校验矩阵调整的最大次数一般取值范围为[1,20]。在本发明的实施例中,将校验矩阵调整的最大次数设置为10。
步骤2,初始化参数。
将置信传播译码的迭代次数初始化为0。将校验矩阵调整的次数初始化为0。
步骤3,调整校验矩阵为低密度形式。
计算生成矩阵中每个元素的值:
其中,Gab表示生成矩阵中第a行第b列的元素值,a的取值范围为[1,N],b的取值范围为[1,N],N表示待译码的极化码的长度,∏表示求积操作,log2表示以2为底的对数操作,表示异或操作,bi表示该元素所在列的二进制形式的第i位数值,i的取值范围为[1,log2N],表示该元素所在行的二进制形式的第log2N-i位数值。
将生成矩阵中所有元素的值,组成生成矩阵。
将生成矩阵中所有对应极化码中固定位的列进行转置操作后,组成校验矩阵。
当待译码的极化码为一个码长为8,信息位长度为4的极化码时,在高斯信道下其对应的生成矩阵是:
则对应的校验矩阵是:
计算极化码码字比特对应的对数似然值:
r(0)(xi)=ln(Pr(yi|xi=0)/Pr(yi|xi=1))
其中,γ(0)(xi)表示初始化极化码码字比特xi对应的对数似然值,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,ln表示以e为底的自然对数操作,Pr(|)表示事件发生的条件概率,yi表示接收端接收的第i位比特信息。
对极化码码字比特对应的最新的对数似然值取绝对值,得到极化码码字比特对应的绝对对数似然值。只有第一次矩阵调整时,使用初始化得到的对数似然值γ(0)(xi),之后的矩阵调整使用的都是上一轮译码时得到的最新的对数似然值r(L)(xi),γ(0)(xi)表示初始化极化码码字比特xi对应的对数似然值,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,r(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的更新后的对数似然值,L表示置信传播译码的迭代次数。
将极化码码字所有比特对应的绝对对数似然值,组成一个绝对对数似然值向量。
将绝对对数似然值向量中的值,按照由小到大的顺序排序,将排序后的前N-K个绝对对数似然值对应的比特的下标标号,组成一个向量B,其中,N表示极化码的长度,K表示极化码中信息位的长度。绝对对数似然值用来衡量该比特估计值的可靠程度,因此绝对值越大,说明该位的估计值越可靠,否则的话说明该判定值越不可靠。从小到大排序后,前N-K个绝对对数似然值对应的比特,被认为是比较不可靠的。
将校验矩阵中对应向量B中每个元素值的列,执行高斯消去操作,得到转化后的单位子矩阵。由于极化码的校验矩阵是高密度形式,存在许多短环,本步就是要把校验矩阵中对应着前N-K个最小绝对似然值的那些比特下标的列变换成单位子阵,即使得这N-K列变成稀疏的形式。在执行高斯消去操作时,需要按照向量B中的下标顺序,逐一对校验矩阵中相应的列,执行高斯消去操作。校验矩阵的N-K列变成如下形式:
将校验矩阵的单位子矩阵第j+1行加到第j行,其中,j的取值范围为[1,N-k-1],N表示待译码的极化码的长度,K表示待译码的极化码中信息位的长度,得到低密度校验矩阵。完成本步骤的操作后,校验矩阵的单位子矩阵中每行的度由1变成2。
步骤4,置信传播译码。
计算极化码码字比特对应的外部信息:
其中,e(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的外部信息,L表示置信传播译码的迭代次数,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,Σ表示求和操作,表示低密度形式的校验矩阵第j行第i列元素的值,j的取值范围为[1,N-K],K表示待译码的极化码中信息位的长度,tanh-1(·)表示做双曲正切倒数操作,∏表示求积操作,表示低密度形式的校验矩阵第j行第p列元素的值,p的取值范围为[1,N],tanh(·)表示做双曲正切操作,r(L-1)(xi)表示置信传播译码第L-1次迭代时码字比特xi对应的对数似然值。
计算极化码码字比特对应的更新后的对数似然值:
r(L)(xi)=r(L-1)(xi)+ηe(L)(xi)
其中,r(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的更新后的对数似然值,L表示置信传播译码的迭代次数,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,r(L-1)(xi)表示置信传播译码第L-1次迭代时极化码码字比特xi对应的对数似然值,η表示缓冲系数,其取值范围为[0,1],e(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的外部信息。η取0到1之间任一数值即可,在本发明的实施例中,η的值设为0.5。
计算极化码码字比特的估值:
其中,表示极化码码字比特xi的估值,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,r(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的更新后的对数似然值,L表示置信传播译码的迭代次数。
将极化码码字所有比特的估值组成一个码字估值向量。
步骤5,判定码字估值向量是否为有效向量。
若码字估值向量与校验矩阵的乘积是0向量,则将该码字估值向量判定为有效向量,执行步骤6。若码字估值向量与校验矩阵的乘积不是0向量,并且当前的置信传播译码的迭代次数尚未超过置信传播译码的最大迭代次数,则将该码字估值向量判定为无效向量,将置信传播译码的迭代次数加1,执行步骤4。
首先,按照置信传播译码常规的早期停止标准的方法判定码字估值向量,就是检测码字估值向量与校验矩阵的乘积是否是0向量。若码字估值向量与校验矩阵的乘积不是0向量,说明码字估值向量不是有效码字,如果当前的置信传播译码的迭代次数超过了置信传播译码的最大迭代次数,则说明置信传播译码在校验矩阵上仍然不收敛,译码器执行下一轮的矩阵调整操作。但是若码字估值向量与校验矩阵的乘积是0向量,根据极化码置信传播译码的规则和我们仿真的结果,仍然不能肯定码字估值向量就是有效的码字,因此设计了下面的步骤。
步骤6,计算绝对对数似然值的最小值:
M=min(|r(L)(xi)|)
其中,M表示所有绝对对数似然值的最小值,min(·)表示取所有值的最小值操作,|·|表示取绝对值操作,r(L)(xi)表示置信传播译码第L次迭代时极化码码字比特xi对应的更新后的对数似然值,L表示置信传播译码的迭代次数,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度。
步骤7,计算阈值:
其中,β表示阈值,SNR表示高斯信道的信噪比。
本发明的实施例中,在信道信噪比较小的时候,阀值取较小值(比如0.5)和取较大的值(比如7.5)时,译码性能变化不大。在信道信噪比较高时,阀值的值取得越大,译码性能越好,但是译码时间也会越长。综合考虑译码性能和译码时间,在本发明的实施例中,信噪比小于2.5时,阈值取0.5,信噪比大于等于2.5时,阈值取15.5。
步骤8,判定译码是否成功。
如果绝对对数似然值的最小值大于等于阈值,表示译码成功,执行步骤9;如果绝对对数似然值的最小值小于阈值,并且校验矩阵调整的次数小于等于校验矩阵调整最大次数,表示译码未成功,将矩阵的调整次数加1,执行步骤3。
比特的绝对对数似然值越大,就说明该位为0或1的概率越大,当码字估值向量所有比特中绝对对数似然值的最小值都大于阀值时,说明译码输出的码字估值向量中每一位为0(或1)的概率都比该位为1(或0)的概率至少大eβ倍,e是自然对数,β是阈值。因此,我们选择出绝对对数似然值的最小值,并让其与阀值比较,若绝对对数似然值的最小值大于阈值,则认为码字估值向量是有效的码字;否则的话,说明码字估值向量不是有效码字,若校验矩阵调整的次数小于等于校验矩阵调整的最大次数,需要继续调整校验矩阵,若校验矩阵调整的次数大于校验矩阵调整的最大次数,则译码器译码失败。在做下一轮矩阵调整时,依据的比特似然值是最近的一次置信传播译码计算出的比特似然值,执行步骤2中相应操作后,对原始的校验矩阵进行调整。
步骤9,将码字估值向量的信息部分作为译码结果输出。
下面结合附图对本发明的译码效果作进一步描述。
1、仿真条件:
本发明的仿真实验是在MATLAB 7.0软件下进行的。在本发明的仿真实验中,为了真实地模拟加性高斯白噪声信道,采用伪随机序列模拟高斯白噪声和BPSK的信号调制方法,信源输出端的信息序列采用随机数生成,码长为1024,码率是0.5,带宽为20M的信道模型。
参照附图2比较本发明和现有技术的译码性能。
图2中横轴表示信噪比,纵轴表示帧错误率。以实心圆标示的曲线表示采用现有技术原连续删除译码算法下极化码的帧错误率。以正方形标示的曲线表示采用现有技术标准置信传播译码下极化码的帧错误率。以菱形标示的曲线表示采用现有技术列表译码算法下极化码的帧错误率,该列表长度为20。以叉号标示的曲线表示本发明算法下极化码的帧错误率,其中,置信传播译码的最大迭代次数设置为50,校验矩阵调整的最大次数设置为10。从图2中可以看出,在信道的信噪比相同时,本发明译码算法的帧错误率明显低于现有技术的译码算法,拥有较好的译码性能。
参照附图3比较本发明和现有技术的时间复杂度。
图3中横轴表示信噪比,纵轴表示平均的BP译码迭代次数。以正方形标示的直线表示采用现有技术标准BP译码所需的迭代次数,因为是固定迭代次数,所以迭代次数不管信噪比是多少均不变。以圆形标示的曲线表示采用现有技术基于生成矩阵的早停止标准的标准BP译码的平均迭代次数。以叉号标示的曲线表示采用现有技术改进版的低复杂度的标准BP译码的平均迭代次数。以实心圆标示的曲线是本发明平均BP译码的平均迭代次数,其中,置信传播译码的最大迭代次数设置为50,校验矩阵调整的最大次数设置为10。从图3中可以看出,在信道的信噪比相同时,本发明译码算法的迭代次数低于现有技术的标准BP译码算法,并且本发明所需的平均迭代次数随着信噪比的增加迅速降低,保持了较低的时间复杂度。
Claims (8)
1.一种基于动态校验矩阵的极化码置信传播译码方法,用于通信系统信号接收端的译码模块,以实现从含有噪声及干扰的接收序列中最大化无失真地恢复出信道发送端信息;该方法的步骤如下:
(1)设置译码模块的参数:
(1a)设置置信传播译码的最大迭代次数,其取值为译码模块容许范围内的正整数;
(1b)设置校验矩阵调整的最大次数,其取值为译码模块容许范围内的正整数;
(2)初始化参数:
(2a)将置信传播译码的迭代次数初始化为0;
(2b)将校验矩阵调整的次数初始化为0;
(3)调整校验矩阵为低密度形式:
(3a)计算生成矩阵中每个元素值;
(3b)将生成矩阵中所有元素的值,组成生成矩阵;
(3c)将生成矩阵中所有对应极化码中固定位的列进行转置操作后,组成校验矩阵;
(3d)计算极化码码字比特对应的对数似然值;
(3e)对极化码码字比特对应的对数似然值取绝对值,得到极化码码字比特对应的绝对对数似然值;
(3f)将极化码码字所有比特对应的绝对对数似然值,组成一个绝对对数似然值向量;
(3g)将绝对对数似然值向量中的值,按照由小到大的顺序排序,将排序后的前N-K个绝对对数似然值对应的比特的下标标号,组成一个向量B,其中,N表示极化码的长度,K表示极化码中信息位的长度;
(3h)将校验矩阵中对应向量B中每个元素值的列,执行高斯消去操作,得到转化后的单位子矩阵;
(3i)将校验矩阵的单位子矩阵第j+1行加到第j行,其中,j的取值范围为[1,N-k-1],N表示待译码的极化码的长度,K表示待译码的极化码中信息位的长度,得到低密度校验矩阵;
(4)置信传播译码:
(4a)计算极化码码字比特对应的外部信息;
(4b)计算极化码码字比特对应的更新后的对数似然值;
(4c)计算极化码码字比特的估值;
(4d)将极化码码字所有比特的估值组成一个码字估值向量;
(5)判定码字估值向量是否为有效向量:
若码字估值向量与校验矩阵的乘积是0向量,则将该码字估值向量判定为有效向量,执行步骤(6);若码字估值向量与校验矩阵的乘积不是0向量,并且当前的置信传播译码的迭代次数尚未超过置信传播译码的最大迭代次数,则将该码字估值向量判定为无效向量,将置信传播译码的迭代次数加1,执行步骤(4);
(6)计算绝对对数似然值的最小值;
(7)计算阈值;
(8)判定译码是否成功:
如果绝对对数似然值的最小值大于等于阈值,表示译码成功,执行步骤(9);如果绝对对数似然值的最小值小于阈值,并且校验矩阵调整的次数小于等于校验矩阵调整最大次数,表示译码未成功,将矩阵的调整次数加1,执行步骤(3);
(9)将码字估值向量的信息部分作为译码结果输出。
2.根据权利要求1所述的基于动态校验矩阵的极化码置信传播译码方法,其特征在于,步骤(3a)所述的计算生成矩阵中每个元素值的公式如下:
其中,Gab表示生成矩阵中第a行第b列的元素值,a的取值范围为[1,N],b的取值范围为[1,N],N表示待译码的极化码的长度,Π表示求积操作,log2表示以2为底的对数操作,表示异或操作,bi表示该元素所在列的二进制形式的第i位数值,i的取值范围为[1,log2N],表示该元素所在行的二进制形式的第log2N-i位数值。
3.根据权利要求1所述的基于动态校验矩阵的极化码置信传播译码方法,其特征在于,步骤(3d)所述的计算极化码码字比特对应的对数似然值的公式如下:
r(0)(xi)=ln(Pr(yi|xi=0)/Pr(yi|xi=1))
其中,r(0)(xi)表示初始化极化码码字比特xi对应的对数似然值,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,ln表示以e为底的自然对数操作,Pr(|)表示事件发生的条件概率,yi表示接收端接收的第i位比特信息。
4.根据权利要求1所述的基于动态校验矩阵的极化码置信传播译码方法,其特征在于,步骤(4a)所述的计算极化码码字比特对应的外部信息的公式如下:
其中,e(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的外部信息,L表示置信传播译码的迭代次数,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,∑表示求和操作,表示低密度形式的校验矩阵第j行第i列元素的值,j的取值范围为[1,N-K],K表示待译码的极化码中信息位的长度,tanh-1(·)表示做双曲正切倒数操作,П表示求积操作,表示低密度形式的校验矩阵第j行第p列元素的值,p的取值范围为[1,N],tanh(·)表示做双曲正切操作,r(L-1)(xi)表示置信传播译码第L-1次迭代时码字比特xi对应的对数似然值。
5.根据权利要求1所述的基于动态校验矩阵的极化码置信传播译码方法,其特征在于,步骤(4b)所述的计算极化码码字比特对应的更新后的对数似然值的公式如下:
r(L)(xi)=r(L-1)(xi)+ηe(L)(xi)
其中,r(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的更新后的对数似然值,L表示置信传播译码的迭代次数,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,r(L-1)(xi)表示置信传播译码第L-1次迭代时极化码码字比特xi对应的对数似然值,η表示缓冲系数,其取值范围为[0,1],e(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的外部信息。
6.根据权利要求1所述的基于动态校验矩阵的极化码置信传播译码方法,其特征在于,步骤(4c)所述的计算极化码码字比特的估值的公式如下:
其中,表示极化码码字比特xi的估值,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度,r(L)(xi)表示置信传播译码第L次迭代时码字比特xi对应的更新后的对数似然值,L表示置信传播译码的迭代次数。
7.根据权利要求1所述的基于动态校验矩阵的极化码置信传播译码方法,其特征在于,步骤(6)所述的计算绝对对数似然值的最小值的公式如下:
M=min(|r(L)(xi)|)
其中,M表示所有绝对对数似然值的最小值,min(·)表示取所有值的最小值操作,|·|表示取绝对值操作,r(L)(xi)表示置信传播译码第L次迭代时极化码码字比特xi对应的更新后的对数似然值,L表示置信传播译码的迭代次数,xi表示发送端发送的第i位比特信息,i的取值范围为[1,N],N表示待译码的极化码的长度。
8.根据权利要求1所述的基于动态校验矩阵的极化码置信传播译码方法,其特征在于,步骤(7)所述的计算阈值的公式如下:
其中,β表示阈值,SNR表示高斯信道的信噪比。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510607383.3A CN105207682B (zh) | 2015-09-22 | 2015-09-22 | 基于动态校验矩阵的极化码置信传播译码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510607383.3A CN105207682B (zh) | 2015-09-22 | 2015-09-22 | 基于动态校验矩阵的极化码置信传播译码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105207682A CN105207682A (zh) | 2015-12-30 |
CN105207682B true CN105207682B (zh) | 2018-07-17 |
Family
ID=54955160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510607383.3A Active CN105207682B (zh) | 2015-09-22 | 2015-09-22 | 基于动态校验矩阵的极化码置信传播译码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105207682B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017196391A1 (en) * | 2016-05-12 | 2017-11-16 | Intel Corporation | Constructing, representing, and encoding polar codes |
CN108429599B (zh) * | 2017-02-13 | 2022-03-01 | 上海诺基亚贝尔软件有限公司 | 用于通信系统中的数据处理的方法和设备 |
CN107248866B (zh) * | 2017-05-31 | 2020-10-27 | 东南大学 | 一种降低极化码译码时延的方法 |
CN109995380B (zh) * | 2018-01-02 | 2021-08-13 | 华为技术有限公司 | 译码方法及设备 |
CN108092673B (zh) * | 2018-02-10 | 2021-04-16 | 中国传媒大学 | 一种基于动态调度的bp迭代译码方法及系统 |
CN108900236A (zh) * | 2018-06-12 | 2018-11-27 | 千寻位置网络有限公司 | 卫星通信方法及终端、中继站及通信系统 |
WO2019242022A1 (zh) * | 2018-06-22 | 2019-12-26 | 华为技术有限公司 | 一种极化码译码方法及译码装置 |
CN109194446B (zh) * | 2018-09-14 | 2020-05-12 | 北京邮电大学 | 基于神经网络的极化码盲检测方法和装置 |
CN109257148B (zh) * | 2018-11-26 | 2020-05-22 | 北京理工大学 | 一种基于高斯近似阈值判断的极化码bp译码方法 |
CN114448575B (zh) * | 2022-03-17 | 2024-02-06 | 东南大学 | 基于动态拷贝映射的极化码重传译码方法 |
CN116155453B (zh) * | 2023-04-23 | 2023-07-07 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种面向动态信噪比的译码方法及相关设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102694625A (zh) * | 2012-06-15 | 2012-09-26 | 北京邮电大学 | 一种循环冗余校验辅助的极化码译码方法 |
CN104079382A (zh) * | 2014-07-25 | 2014-10-01 | 北京邮电大学 | 一种基于概率计算的极化码译码器和极化码译码方法 |
CN104539296A (zh) * | 2015-01-21 | 2015-04-22 | 西安电子科技大学 | 一种基于提前终止迭代策略的极化码改进bp译码方法 |
-
2015
- 2015-09-22 CN CN201510607383.3A patent/CN105207682B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102694625A (zh) * | 2012-06-15 | 2012-09-26 | 北京邮电大学 | 一种循环冗余校验辅助的极化码译码方法 |
CN104079382A (zh) * | 2014-07-25 | 2014-10-01 | 北京邮电大学 | 一种基于概率计算的极化码译码器和极化码译码方法 |
CN104539296A (zh) * | 2015-01-21 | 2015-04-22 | 西安电子科技大学 | 一种基于提前终止迭代策略的极化码改进bp译码方法 |
Non-Patent Citations (3)
Title |
---|
Bo Yuan等.Early Stopping Criteria for Energy-Efficient Low-Latency Belief-Propagation Polar Code Decoders.《IEEE TRANSACTIONS ON SIGNAL PROCESSING》.2014,第62卷(第24期), * |
Ryuhei Mori 等.PerformanceofPolarCodeswiththeConstructionusingDensityEvolution.《IEEE COMMUNICATIONS LETTERS》.2009,第13卷(第7期), * |
一种改进的极化码置信译码器;张青双 等;《通信技术》;20140331;第47卷(第3期);第253-257页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105207682A (zh) | 2015-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105207682B (zh) | 基于动态校验矩阵的极化码置信传播译码方法 | |
US10312947B2 (en) | Concatenated and sliding-window polar coding | |
US7716561B2 (en) | Multi-threshold reliability decoding of low-density parity check codes | |
KR101718543B1 (ko) | 개선된 비트 반전 알고리즘 기반의 저밀도 패리티 검사 부호를 위한 복호 방법, 장치 및 이를 위한 기록 매체 | |
US20220231703A1 (en) | Error detection in communication systems using polar coded data transmission | |
CN106130687B (zh) | 衰落信道下基于译码比特可靠性的Polar码删余方法 | |
CN107565984B (zh) | 一种预编码为非规则码的Raptor码优化编码方法 | |
CN105846827B (zh) | 基于算术码与低密度奇偶校验码的迭代联合信源信道译码方法 | |
CN108809518B (zh) | 用于降低错误性能的级联Spinal码构建方法 | |
CN109450594B (zh) | 云接入网上行链路的无速率码度数分布优化方法 | |
CN103905149A (zh) | 码本设计方法、通信设备以及码本训练方法 | |
CN107565978A (zh) | 基于Tanner图边调度策略的BP译码方法 | |
CN108574492A (zh) | 一种改进的ldpc码和积译码方案 | |
CN110233698B (zh) | 极化码的编码及译码方法、发送设备、接收设备、介质 | |
CN113542167A (zh) | 利用极化码和均衡器的水声通信方法 | |
CN101577607B (zh) | 可提前结束迭代的归一化最小和译码方法 | |
CN106330201A (zh) | 基于变量节点可靠性动态选择策略的多进制ldpc码更新方法 | |
CN100539441C (zh) | 一种低密度奇偶校验码的译码方法 | |
CN114421971A (zh) | 一种适用于多元ldpc码的动态多符号翻转译码方法 | |
US10205468B2 (en) | Decoding method, apparatus, and algorithm for nonbinary LDPC codes | |
WO2021073338A1 (zh) | 译码方法和译码器 | |
CN107181567B (zh) | 一种基于门限的低复杂度mpa算法 | |
JP2022163465A (ja) | 受信装置および復調のためのパラメータ生成方法 | |
WO2020088256A1 (zh) | 译码方法及装置 | |
KR20090012189A (ko) | Ldpc 부호의 성능 개선을 위한 스케일링 기반의 개선된min-sum 반복복호알고리즘을 이용한 복호 장치 및그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |