CN112234998A - 一种使用滑动窗口译码空间耦合ldpc码的方法及装置 - Google Patents
一种使用滑动窗口译码空间耦合ldpc码的方法及装置 Download PDFInfo
- Publication number
- CN112234998A CN112234998A CN202010827233.4A CN202010827233A CN112234998A CN 112234998 A CN112234998 A CN 112234998A CN 202010827233 A CN202010827233 A CN 202010827233A CN 112234998 A CN112234998 A CN 112234998A
- Authority
- CN
- China
- Prior art keywords
- decoding
- check
- node
- sliding window
- doping
- 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.)
- Pending
Links
Images
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/1148—Structural properties of the code parity-check or generator matrix
- H03M13/1151—Algebraically constructed LDPC codes, e.g. LDPC codes derived from Euclidean geometries [EG-LDPC codes]
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种使用滑动窗口译码空间耦合LDPC码的方法及装置,方法包括:获取SC‑LDPC的耦合链;在每个掺杂点对应的校验节点前插入第二数量个校验节点,当预设的滑动窗口在掺杂链中滑动时,确定当前时间落入滑动窗口的校验节点以及变量节点,对在该校验节点后且相邻的第二译码块进行译码。通过插入额外的校验节点,如此通过插入校验节点,不改变耦合链的耦合方式。对插入校验节点后的译码块,重新进行译码,使得插入校验节点后的译码块不依赖前一个译码块的信息,可以限制耦合链中错误信息的传播,因此可以提高对整个耦合链译码的准确性。
Description
技术领域
本发明属于通信技术领域,具体涉及一种使用滑动窗口译码空间耦合 LDPC码的方法及装置。
背景技术
LDPC-BCs(low density parity check block codes,低密度奇偶校验块码的卷积对应码)经常被应用于编码以及译码过程中。SC-LDPC(spatially coupled low densityparity check,空间耦合低密度奇偶校验码)是基于LDPC-BC原型序列构造的。SC-LDPC通过将L个不相交的(J,K)-规则 LDPC-BC原型序列耦合在一起形成单个耦合链,从而构造SC-LDPC。
现有技术为了使译码等待时间和内存最小化,针对SC-LDPC码提出了滑动窗口译码,将BP泛洪调度表应用于滑动窗口中的所有节点(变量节点以及校验节点)以进行固定的迭代次数,或者直到满足译码截止条件的循环译码方式。当滑动窗口在LDPC的耦合链中滑动时,滑动窗口向右移动一个译码块的单位,对译码块中的第一个符号(码字)进行译码,并计算每个译码块中每个符号的LLR(log-likelihood ratio,对数似然比)。当一个译码块中包含一个或多个符号不正确的对数似然比时,该译码块错误。
通常,如果只有几个符号的LLR不正确,那其LLR对译码结果准确性的影响微乎其微。然而,如果译码块包含大量不正确LLR的符号,且不正确LLR有较大的绝对值,而该译码块许多正确LLR的符号的LLR都很小,这些正确LLR符号与其他符合常常耦合链接,这些不正确LLR符号可能会对下一个符号的译码产生负面影响,从而导致错误在后续译码块之间传播,降低了对整个耦合链译码的准确性。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种使用滑动窗口译码空间耦合LDPC码的方法及装置。本发明要解决的技术问题通过以下技术方案实现:
第一方面,本发明实施例提供了一种使用滑动窗口译码空间耦合LDPC 码的方法,包括:
获取SC-LDPC空间耦合低密度奇偶校验码的耦合链;
其中,所述耦合链包括:多个译码块,所述译码块由相互连接的一个校验节点和一个变量节点对构成,相邻的译码块之间耦合连接;
在所述耦合链中选择第一数量个变量节点对作为掺杂点;
在每个掺杂点对应的校验节点前插入第二数量个校验节点,以使插入的校验节点与第一变量节点、第二变量节点的连接方式与未插入校验节点前所述耦合链中其他校验节点与变量节点的连接方式相同,获得包含插入的校验节点的掺杂链;
其中,所述第二变量节点是与所述第一变量节点相邻且位于所述第一变量节点前的变量节点,所述第一变量节点是与所述掺杂点相邻且位于所述掺杂点前的变量节点,所述掺杂点是与所述校验节点相对应的变量节点;
当预设的滑动窗口在所述掺杂链中滑动时,确定当前时间落入所述滑动窗口的校验节点以及变量节点;
当落入所述滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前的第一译码块,基于该第一译码块的前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块进行译码。
可选的,在所述耦合链中选择第一数量个变量节点对作为掺杂点包括:
在所述耦合链中随机选择第一数量个变量节点对作为掺杂点。
可选的,在所述耦合链中选择第一数量个变量节点对作为掺杂点包括:
按照预设的数量间隔,在所述耦合链中选择第一数量个变量节点对作为掺杂点。
可选的,在所述当预设的滑动窗口在所述掺杂链中滑动时,确定当前时间落入所述滑动窗口的校验节点以及变量节点之前,本发明第一方面实施例提供的使用滑动窗口译码空间耦合LDPC码的方法还包括:
在当前时间,将预设的滑动窗口按照预设滑动单位在所述掺杂链中滑动,以使落入所述滑动窗口的变量节点个数不变。
可选的,在所述在当前时间,将预设的滑动窗口按照预设滑动单位在所述掺杂链中滑动,以使落入所述滑动窗口的变量节点个数不变之前,本发明第一方面实施例提供的使用滑动窗口译码空间耦合LDPC码的方法还包括:
设置滑动窗口的变量宽度;
在当前时间,将预设的滑动窗口按照预设滑动单位在所述掺杂链中滑动;
当插入的校验节点落入所述滑动窗口时,增加所述变量宽度,以使落入所述滑动窗口的变量节点个数不变。
可选的,在所述当落入所述滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前的第一译码块,基于该第一译码块的前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块进行译码之后,本发明第一方面实施例提供的使用滑动窗口译码空间耦合LDPC码的方法还包括:
针对每个译码块,基于该译码块的译码结果,计算该译码块的误码率;
基于每个译码块的译码结果,计算译码块的误块率。
第二方面,本发明实施例提供的一种使用滑动窗口译码空间耦合LDPC 码的装置,包括:
获取模块,用于获取SC-LDPC空间耦合低密度奇偶校验码的耦合链;
其中,耦合链包括:多个译码块,译码块由相互连接的一个校验节点和一个变量节点对构成,相邻的译码块之间耦合连接;
选择模块,用于在耦合链中选择第一数量个变量节点对作为掺杂点;
获得模块,用于在每个掺杂点对应的校验节点前插入第二数量个校验节点,以使插入的校验节点分别与第一变量节点、第二变量节点的连接方式与未插入校验节点前耦合链中其他校验节点与变量节点的连接方式相同,获得包含插入的校验节点的掺杂链;
其中,第二变量节点是与第一变量节点相邻且位于第一变量节点前的变量节点,第一变量节点是与掺杂点相邻且位于掺杂点前的变量节点,掺杂点是与校验节点相对应的变量节点;
确定模块,用于当预设的滑动窗口在掺杂链中滑动时,确定当前时间落入滑动窗口的校验节点以及变量节点;
译码模块,用于当落入滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前且相邻的第一译码块,基于前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块进行译码。
可选的,选择模块,具体用于:
在耦合链中随机选择第一数量个变量节点对作为掺杂点。
可选的,选择模块,具体用于:
按照预设的数量间隔,在耦合链中选择第一数量个变量节点对作为掺杂点。
本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的装置还包括:
滑动模块,用于:
在当前时间,将预设的滑动窗口按照预设滑动单位在掺杂链中滑动,以使落入滑动窗口的变量节点个数不变。
本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的装置还包括:设置模块,用于:
设置滑动窗口的变量宽度;
在当前时间,将预设的滑动窗口按照预设滑动单位在掺杂链中滑动;
当插入的校验节点落入滑动窗口时,增加变量宽度,以使落入滑动窗口的变量节点个数不变。
本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的装置还包括:计算模块,用于:
针对每个译码块,基于该译码块的译码结果,计算该译码块的误码率;
基于每个译码块的译码结果,计算译码块的误块率。
本发明实施例提供的一种使用滑动窗口译码空间耦合LDPC码的方法,通过在规则SC-LDPC的基模图中插入额外的校验节点,如此通过插入校验节点,不改变耦合链的耦合方式。对插入校验节点后的译码块,重新进行译码,使得插入校验节点后的译码块不依赖前一个译码块的信息,可以限制耦合链中错误信息的传播,因此可以提高对整个耦合链译码的准确性。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种使用滑动窗口译码空间耦合LDPC码的方法的流程图;
图2是本发明实施例提供的通信技术中(3,6)规则SC-LDPC码基模图;
图3是本发明实施例提供插入校验节点后的耦合链的结构示意图;
图4是本发明实施例提供的误码率以及误块率的效果对比图;
图5是本发明实施例提供的一种使用滑动窗口译码空间耦合LDPC码的装置的结构图;
图6是本发明实施例提供的一种电子设备的结构图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
在介绍本发明实施例之前,首先分析本发明方法的构建原理,过程如下:
一帧可以划分为多个块,块编码后可以进行传输。假设在任意给定帧中,译码器存在两个工作状态,分别是:(1)随机错误状态Sre,其中块错误独立发生的概率为p;(2)错误传播状态Sep,其中块错误发生的概率为1。
同时假设,在每个时间单位t=1,2,3...L,译码器以q(q<<p)的概率独立地从Sre工作状态转换到工作状态Sep,并且一旦进入工作状态Sep,译码器在给定帧的其余部都分保持该工作状态Sep,L表示信息以固定长度L时间单位的帧,即帧长为L时间单位。
考虑到n、M和n表示码长,M表示一个变量节点包含的符号的个数,B表示总的仿真块数,要传输的块的总数是固定的,表示定义, N表示帧的数量,让Λ=αL,Ω=N/α,可以得到B=LN=ΛΩ,帧长度参数α≥1。Λ表示仿真帧的长度,Ω表示仿真帧的数目,当α=1对应于N个长度为L 的帧,而α>1则对应于模拟少数Ω帧的长度Λ>L,同时保持相同的模拟符号nMB。在正常(随机错误)译码器的工作条件下,仿真误块率BLER应该独立于α的取值。然而,当译码器错误传播时允许时,α的取值会影响 BLER。
对于长度为Λ的帧,译码器在时间t=τ时,首次进入Sep状态且一直保持Sep状态直到t=Λ,由此得到式(1):
其中,t=[t1:t2]表示时间从t1一直到t2,Pτ表示译码器在时间t=τ时,首次进入Sep状态直到t=Λ的概率。t=[τ:Λ]表示时间从τ一直到Λ,q表示译码器独立地从Sre工作状态转换到工作状态Sep的概率,P(Sep,t=[1:Λ])表示译码器在整个帧中保持Sre状态的概率。
由上式可知,译码器在整个帧中保持Sre状态的概率可以表示为:
假设在一个帧中的t=τ时刻,译码器进入Sep状态,则平均误块率BLER 表示为:
PBL(τ=1)=1
从上式可知状态Sep之前至少有一个正确译码的块,因此可以将平均误块率BLER表示为:
其中,p时译码器在随机错误状态Sre下,块错误独立发生的概率,PBL表示译码器进入Sep状态,帧的平均误块率。
下面详述通过不同情况下仿真实验,证明的帧长度对平均误块率的影响。
第一种,假设q=10-4,p=10-2,L=100,α=1,则Ω=N帧,每帧长为Λ=L=100,利用上式(2)以及(3)可以计算得到PBL=1.4982×10-2。
第二种,假设q=10-4,p=10-2,L=100,α=10,则Ω=N/10帧,每帧长为Λ=10L=1000,用上式(2)以及(3)可以计算得到PBL=5.7939×10-2。
第三种,假设q=10-4,p=10-2,L=100,α=100,则Ω=N/100帧,每帧长为Λ=100L=10000,利用上式(2)以及(3)可以计算得到PBL=3.74244×10-1。
有上述三种情况可知,仿真误块率BLER大小取决于帧长。帧长较短,误块率BLER较小。因此基于上述分析,本发明实施例提出一种使用滑动窗口译码空间耦合LDPC码的方法,下面对该方法按照实施例方式进行详述。
实施例一
请参见图1,图1是本发明实施例提供的一种使用滑动窗口译码空间耦合LDPC码的方法的流程图,如图1所示,使用滑动窗口译码空间耦合LDPC 码的方法,包括:
S11,获取SC-LDPC空间耦合低密度奇偶校验码的耦合链;
其中,耦合链包括:多个译码块,译码块由相互连接的一个校验节点和一个变量节点对构成,相邻的译码块之间耦合连接;
在本步骤中,鉴于在译码块在传输前需要编码,然后通过信道进行传输,在接收端接收到传输后的译码块后,需要对译码块进行译码,如此完成信息的传输。发射端与接收端会约定编码和译码的方式。因此可以在接收端获取SC-LDPC(spatially coupled lowdensity parity check,空间耦合低密度奇偶校验码)的耦合链,也可以在发射端获取SC-LDPC的耦合链。
其中,本发明实施例可以以同样的方式应用于任何(J,K)规则SC-LDPC 码。下面以通信技术中(3,6)规则SC-LDPC码基模图为例,参考图2,以通信技术中(3,6)规则SC-LDPC码基模图为例,规则SC-LDPC码基模图,在图2中译码块通过耦合方式的连接,形成了耦合链。一个译码块由一个变量节点对和一个校验节点构成,实体黑心圆是变量节点,空心方块是校验节点,校验节点对应一个变量节点对。每个译码块中包含2M个符号(码字),M表示一个变量节点包含的符号的个数(编码位个数)。
S12,在耦合链中选择第一数量个变量节点对作为掺杂点;
其中,第一数量不低于1,且第一数量是根据行业经验设定的数值。
参考图3,在图3中空心的圆表示掺杂点,在图3展示的掺杂点有2对,分别在t=τ1时以及在t=τ2时。
S13,在每个掺杂点对应的校验节点前插入第二数量个校验节点,以使插入的校验节点分别与第一变量节点、第二变量节点的连接方式与未插入校验节点前耦合链中其他校验节点与变量节点的连接方式相同,获得包含插入的校验节点的掺杂链;
其中,第二变量节点是与第一变量节点相邻且位于第一变量节点前的变量节点,第一变量节点是与掺杂点相邻且位于掺杂点前的变量节点,掺杂点是与校验节点相对应的变量节点。
参考图3,t=τ1时,掺杂点是空心圆,校验节点是方框,掺杂点对应的校验节点是第二个黑体方框,插入的校验节点是第一个黑体方框,在插入校验节点后,第一变量节点是掺杂点前一个变量节点,第二变量节点是第一变量节点前一个变量节点。
参考图3,t=τ1时,掺杂点分别在时刻t=τ1+1,t=τ1+2,t=τ1+3存在三条边与校验节点相连,在t=τ2时,掺杂点(传输信息)分别在 t=τ2+2,t=τ2+3,t=τ2+4存在三条边和校验节点相连。如果选择t=τj时的变量节点作为第j个掺杂点,则它与校验节点相连的时刻为 t=τj+j,t=τj+j+1,t=τj+j+2。另外,掺杂点之间的变量节点与前一对掺杂点的耦合方式相同。
S14,当预设的滑动窗口在掺杂链中滑动时,确定当前时间落入滑动窗口的校验节点以及变量节点;
可以理解,在本步骤中可以预先设置滑动窗口,在进行译码时,滑动窗口按照从左至右在掺杂链中滑动,译码器在滑动窗口边滑动边译码,当滑动一次,译码器完成一次译码。
参考图3,图3中w表示滑动窗口的宽度,在t=τ1时,虚线或者实线形成的闭合区域是滑动窗口,在t=τ2时,虚线形成的半闭合区域是滑动窗口。对校验节点掺杂的SC-LDPC译码时,可将滑动窗口译码应用于掺杂链,(3, 6)校验节点掺杂规则SC=LDPC的串口移动调度可以参考图3。对于大小为W的窗口,最早时刻(窗口最左边位置)的2M符号为译码符号,泛洪置信度传播译码在滑动窗口内执行,使用固定的迭代次数或使用停止规则循环进行译码。在一个译码块被译码后,窗口移动一个时间单位。但当一个掺杂点为译码块时,窗口移动一个变量节点时间单位,以包含一个新的变量节点,和之前一样。但是由于插入了校验节点,因此滑动窗口平移了两个校验节点时间单位来包含两个新的校验节点块(因此仍然包含相同数量的校验节点和变量节点)。在掺杂点被译码后,窗口再次移动一个时间单位,直到到达下一个掺杂点,重复上述过程。
S15,当落入滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前的第一译码块,基于该第一译码块的前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块进行译码。
可以理解,在耦合链中译码块之间互相耦合,前一个译码块会将自身的信息向后一个译码块进行传输,当前一个译码块译码正确时,则对后续译码块不会造成负面影响。而当前一个译码块中存在不正确的符号时,在这些不正确LLR符号与其他符号常常耦合链接,这些不正确LLR符号可能会对下一个符号的译码产生负面影响,从而导致错误在后续译码块之间传播,降低了对整个耦合链的译码的准确性。本发明通过插入校验节点,不改变耦合链的耦合方式,使得在校验节点后的译码块不依赖前一个译码块的信息,而是采用重新开始译码的方式,重新译码方式也与插入校验节点前耦合链的译码方式相同,以此降低帧长,因此可以限制耦合链中错误信息的传播。
本发明实施例通过在规则SC-LDPC的基模图中插入额外的校验节点,如此通过插入校验节点,不改变耦合链的耦合方式。对插入校验节点后的译码块,重新进行译码,使得插入校验节点后的译码块不依赖前一个译码块的信息,可以限制耦合链中错误信息的传播,因此可以提高对整个耦合链译码的准确性。
实施例二
在上述实施例1的基础上,本发明实施例提供的S12的步骤可以通过在耦合链中随机选择第一数量个变量节点对作为掺杂点实现。
可以理解,在耦合链中随机选择变量节点作为掺杂点的方式可以有效的提高获得掺杂链的效率,以此提高对译码块进行译码的效率。
实施例三
在上述实施例一的基础上,本发明实施例提供的S12的步骤还可以通过按照预设的数量间隔,在耦合链中选择第一数量个变量节点对作为掺杂点。
其中,预设的数量间隔可以根据滑动窗口的宽度而设定,也可以根据行业经验设定。数量间隔可以不大于滑动窗口的宽度。
可以理解,在耦合链中按照预设的数量间隔选择变量节点作为掺杂点,可以保持插入校验节点后的耦合链保持均匀的结构。因此在进行译码时,译码块的译码方式可以周期性的限制错误在耦合链中传输。
实施例四
在上述实施例一的步骤S14之前,本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的方法还包括:
在当前时间,将预设的滑动窗口按照预设滑动单位在掺杂链中滑动,以使落入滑动窗口的变量节点个数不变。
可以理解,需要保证滑动窗口边滑动译码器边译码,即译码器与滑动窗口的滑动节奏同步。如此译码器每次译码一个译码块,滑动窗口在耦合链中向右滑动一个滑动单位,滑动窗口按照该滑动单位滑动后,滑动窗口内的变量节点个数与未滑动前滑动窗口中的变量节点个数相同。如此保证滑动窗口与译码器同步执行。
在上述实施例四的步骤之前,本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的方法还包括:
步骤一:设置滑动窗口的变量宽度;
步骤二:在当前时间,将预设的滑动窗口按照预设滑动单位在掺杂链中滑动;
步骤三:当插入的校验节点落入滑动窗口时,增加变量宽度,以使落入滑动窗口的变量节点个数不变。
可以理解,在耦合链中插入校验节点后,校验节点的个数在随之改变,插入校验节点的个数越多,耦合链结构长度将增加。如此滑动窗口滑动时可以设置滑动窗口可以按照变量宽度增加自身的宽度,保证落入滑动窗口内的变量节点保持不变。参考图3中t=τ1,第一个至第三个滑动窗口的滑动过程。
实施例六
在上述实施例一的步骤15之后,本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的方法还包括:
步骤一:针对每个译码块,基于该译码块的译码结果,计算该译码块的误码率;
其中,通过统计每个译码块中错误译码的符号的个数,以及总符号的个数,然后确定错误译码的符号占总符号的个数的比例,确定为误码率。
步骤二:基于每个译码块的译码结果,计算译码块的误块率。
本步骤中,在对每个译码块中的码字进行译码后,可以将译码结果进行保存,可以根据上述式(2)以及(3)计算译码块的误块率,为后续进行验证提供铺垫。
下面对本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的方法的效果进行验证,并与未插入校验节点时的译码方法进行比较,过程如下:
令λj,j∈[0,1,2,...,l-1]表示图中每个子帧(掺杂点之间)的块数,l表示一帧中子帧的数量。每帧帧长Λ,有其中λj=τj+1-τj,τ表示时间。假设,如果错误传播发生在第i个子帧,译码器处于Sep工作状态将在该子帧末端被截断,将上述误块率BLER的分析独立的应用到每一个子帧中。
最后可以得到
其中,PBL,doped表示校验节点掺杂的BLER,表示掺杂的校验节点均匀分布情况下的BLER,PBL,λ(τ)表示在时刻t=τ译码器进入Sep工作状态的平均BLER,此公式中,λj表示图中每个子帧的块数,j表示该子帧中第j 个块。
以耦合链中掺杂的校验节点均匀分布情况为例,(λj=λ,j∈[0,1,...,l-1]),上式(4)可以改写为:
下面引入具体数据进行验证,对比采用本发明实施例方法的效果。
第一种:假设q=10-4,p=10-2,L=100,(3,6)规则SC-LDP不掺杂校验节点,α=10,则Ω=N/10帧,每帧长为Λ=10L=1000,PBL=5.7939×10-2。
第一种:假设q=10-4,p=10-2,L=100,(3,6)规则SC-LDPC在耦合链中间掺杂一个校验节点,λ0=λ1=λ=500,α=10,则Ω=N/10帧,每帧长为Λ=10L=1000,PBL=3.4391×10-2。
第三种:假设q=10-4,p=10-2,L=100,(3,6)规则SC-LDPC在耦合链均匀掺杂3个校验节点,λ0=λ1=λ2=λ3=λ=250,α=100,则Ω=N/100帧,每帧长为Λ=100L=10000,可以计算得到PBL=2.2321×10-2。
根据上述三种情况对比可知,校验节点掺杂的(3,6)规则SC-LDPC 码与标准(3,6)规则SC-LDPC码相比,误块率得到有效降低,译码器性能得到了很大的提升,掺杂点越多,其性能提升越大。
以仿真效果图为例,对本发明实施例的优势进行详细说明。
仿真参数:停止帧长度L=500,滑动窗口大小W=18,参考图4,图4 的横轴信噪比(Eb/N0,单位dB)图4的纵轴是误码率(bite error rate,BER) 和误块率BLER。图4展示了码率R=0.498的规则标准(3,6)规则SC-LDPC 码和码率为R=0.497的一个校验节点掺杂的标准(3,6)规则SC-LDPC码的误码率(bite error rate,BER)和BLER。图4中携带圆圈标记的线条表示的是没有掺杂的规则标准(3,6)SC-LDPC码的BER和BLER,携带星号标记的线条表示的是在规则(3,6)SC-LDPC码的中间掺杂以一个校验节点的BER和BLER。从图4中可以看出,与标准码相比,校验节点掺杂的码在误码率上提升了两个数量级,在误块率BLER上提升了一个数量级。所以,综合可知,本发明具有明显优势。
实施例七
请参见图5,图5为本发明实施例提供的一种使用滑动窗口译码空间耦合LDPC码的装置,包括:
获取模块51,用于获取SC-LDPC空间耦合低密度奇偶校验码的耦合链;
其中,耦合链包括:多个译码块,译码块由相互连接的一个校验节点和一个变量节点对构成,相邻的译码块之间耦合连接;
选择模块52,用于在耦合链中选择第一数量个变量节点对作为掺杂点;
获得模块53,用于在每个掺杂点对应的校验节点前插入第二数量个校验节点,以使插入的校验节点分别与第一变量节点、第二变量节点的连接方式与未插入校验节点前耦合链中其他校验节点与变量节点的连接方式相同,获得包含插入的校验节点的掺杂链;
其中,第二变量节点是与第一变量节点相邻且位于第一变量节点前的变量节点,第一变量节点是与掺杂点相邻且位于掺杂点前的变量节点,掺杂点是与校验节点相对应的变量节点;
确定模块54,用于当预设的滑动窗口在掺杂链中滑动时,确定当前时间落入滑动窗口的校验节点以及变量节点;
译码模块55,用于当落入滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前且相邻的第一译码块,基于前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块,进行译码。
实施例八
可选的,选择模块,具体用于:
在耦合链中随机选择第一数量个变量节点对作为掺杂点。
实施例九
可选的,选择模块,具体用于:
按照预设的数量间隔,在耦合链中选择第一数量个变量节点对作为掺杂点。
实施例十
在实施例七的基础上,本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的装置还包括:
滑动模块,用于:
在当前时间,将预设的滑动窗口按照预设滑动单位在掺杂链中滑动,以使落入滑动窗口的变量节点个数不变。
实施例十一
在实施例十的基础上,本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的装置还包括:设置模块,用于:
设置滑动窗口的变量宽度;
在当前时间,将预设的滑动窗口按照预设滑动单位在掺杂链中滑动;
当插入的校验节点落入滑动窗口时,增加变量宽度,以使落入滑动窗口的变量节点个数不变。
实施例十二
在实施例七的基础上,本发明实施例提供的使用滑动窗口译码空间耦合LDPC码的装置还包括:计算模块,用于:
针对每个译码块,基于该译码块的译码结果,计算该译码块的误码率;
基于每个译码块的译码结果,计算译码块的误块率。
实施例十三
本发明实施例还提供了一种电子设备,如图5所示,包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信,
存储器53,用于存放计算机程序;
处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:
获取SC-LDPC空间耦合低密度奇偶校验码的耦合链;
其中,耦合链包括:多个译码块,译码块由相互连接的一个校验节点和一个变量节点对构成,相邻的译码块之间耦合连接;
在耦合链中选择第一数量个变量节点对作为掺杂点;
在每个掺杂点对应的校验节点前插入第二数量个校验节点,以使插入的校验节点分别与第一变量节点、第二变量节点的连接方式与未插入校验节点前耦合链中其他校验节点与变量节点的连接方式相同,获得包含插入的校验节点的掺杂链;
其中,第二变量节点是与第一变量节点相邻且位于第一变量节点前的变量节点,第一变量节点是与掺杂点相邻且位于掺杂点前的变量节点,掺杂点是与校验节点相对应的变量节点;
当预设的滑动窗口在掺杂链中滑动时,确定当前时间落入滑动窗口的校验节点以及变量节点;
当落入滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前且相邻的第一译码块,基于前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块,进行译码。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array, FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供的方法可以应用于电子设备。具体的,该电子设备可以为:台式计算机、便携式计算机、智能移动终端、服务器等。在此不作限定,任何可以实现本发明的电子设备,均属于本发明的保护范围。
对于装置/电子设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,本发明实施例的装置、电子设备及存储介质分别是应用上述使用滑动窗口译码空间耦合LDPC码的方法的装置、电子设备及存储介质,则上述使用滑动窗口译码空间耦合LDPC码的方法的所有实施例均适用于该装置、电子设备及存储介质,且均能达到相同或相似的有益效果。
应用本发明实施例所提供的终端设备,可以展示专有名词和/或固定词组供用户选择,进而限制错误的传播,提高译码的准确性。
该终端设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC 设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)其他具有数据交互功能的电子装置。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (10)
1.一种使用滑动窗口译码空间耦合LDPC码的方法,其特征在于,所述方法包括:
获取SC-LDPC空间耦合低密度奇偶校验码的耦合链;
其中,所述耦合链包括:多个译码块,所述译码块由相互连接的一个校验节点和一个变量节点对构成,相邻的译码块之间耦合连接;
在所述耦合链中选择第一数量个变量节点对作为掺杂点;
在每个掺杂点对应的校验节点前插入第二数量个校验节点,以使插入的校验节点与第一变量节点、第二变量节点的连接方式与未插入校验节点前所述耦合链中其他校验节点与变量节点的连接方式相同,获得包含插入的校验节点的掺杂链;
其中,所述第二变量节点是与所述第一变量节点相邻且位于所述第一变量节点前的变量节点,所述第一变量节点是与所述掺杂点相邻且位于所述掺杂点前的变量节点,所述掺杂点是与所述校验节点相对应的变量节点;
当预设的滑动窗口在所述掺杂链中滑动时,确定当前时间落入所述滑动窗口的校验节点以及变量节点;
当落入所述滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前的第一译码块,基于该第一译码块的前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块进行译码。
2.根据权利要求1所述的方法,其特征在于,在所述耦合链中选择第一数量个变量节点对作为掺杂点包括:
在所述耦合链中随机选择第一数量个变量节点对作为掺杂点。
3.根据权利要求1所述的方法,其特征在于,在所述耦合链中选择第一数量个变量节点对作为掺杂点包括:
按照预设的数量间隔,在所述耦合链中选择第一数量个变量节点对作为掺杂点。
4.根据权利要求1所述的方法,其特征在于,在所述当预设的滑动窗口在所述掺杂链中滑动时,确定当前时间落入所述滑动窗口的校验节点以及变量节点之前,所述方法还包括:
在当前时间,将预设的滑动窗口按照预设滑动单位在所述掺杂链中滑动,以使落入所述滑动窗口的变量节点个数不变。
5.根据权利要求4所述的方法,其特征在于,在所述在当前时间,将预设的滑动窗口按照预设滑动单位在所述掺杂链中滑动,以使落入所述滑动窗口的变量节点个数不变之前,所述方法还包括:
设置滑动窗口的变量宽度;
在当前时间,将预设的滑动窗口按照预设滑动单位在所述掺杂链中滑动;
当插入的校验节点落入所述滑动窗口时,增加所述变量宽度,以使落入所述滑动窗口的变量节点个数不变。
6.根据权利要求1所述的方法,其特征在于,在所述当落入所述滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前的第一译码块,基于该第一译码块的前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块进行译码之后,所述方法还包括:
针对每个译码块,基于该译码块的译码结果,计算该译码块的误码率;
基于每个译码块的译码结果,计算译码块的误块率。
7.一种使用滑动窗口译码空间耦合LDPC码的装置,其特征在于,所述装置包括:
获取模块,用于获取SC-LDPC空间耦合低密度奇偶校验码的耦合链;
其中,所述耦合链包括:多个译码块,所述译码块由相互连接的一个校验节点和一个变量节点对构成,相邻的译码块之间耦合连接;
选择模块,用于在所述耦合链中选择第一数量个变量节点对作为掺杂点;
获得模块,用于在每个掺杂点对应的校验节点前插入第二数量个校验节点,以使插入的校验节点分别与第一变量节点、第二变量节点的连接方式与未插入校验节点前所述耦合链中其他校验节点与变量节点的连接方式相同,获得包含插入的校验节点的掺杂链;
其中,所述第二变量节点是与所述第一变量节点相邻且位于所述第一变量节点前的变量节点,所述第一变量节点是与所述掺杂点相邻且位于所述掺杂点前的变量节点,所述掺杂点是与所述校验节点相对应的变量节点;
确定模块,用于当预设的滑动窗口在所述掺杂链中滑动时,确定当前时间落入所述滑动窗口的校验节点以及变量节点;
译码模块,用于当落入所述滑动窗口内的校验节点包含插入的校验节点时,对在该校验节点前的第一译码块,基于该第一译码块的前一译码块的译码结果进行译码以及对在该校验节点后且相邻的第二译码块进行译码。
8.根据权利要求7所述的装置,其特征在于,所述选择模块,具体用于:
在所述耦合链中随机选择第一数量个变量节点对作为掺杂点。
9.根据权利要求7所述的装置,其特征在于,所述选择模块,具体用于:
按照预设的数量间隔,在所述耦合链中选择第一数量个变量节点对作为掺杂点。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:滑动模块,用于:
在当前时间,将预设的滑动窗口按照预设滑动单位在所述掺杂链中滑动,以使落入所述滑动窗口的变量节点个数不变。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010827233.4A CN112234998A (zh) | 2020-08-17 | 2020-08-17 | 一种使用滑动窗口译码空间耦合ldpc码的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010827233.4A CN112234998A (zh) | 2020-08-17 | 2020-08-17 | 一种使用滑动窗口译码空间耦合ldpc码的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112234998A true CN112234998A (zh) | 2021-01-15 |
Family
ID=74115547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010827233.4A Pending CN112234998A (zh) | 2020-08-17 | 2020-08-17 | 一种使用滑动窗口译码空间耦合ldpc码的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112234998A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090014251A (ko) * | 2007-08-04 | 2009-02-09 | 김정기 | 효율적 재사용 공통연산기 구조를 갖는 엘디피씨 복호기 |
CN104852747A (zh) * | 2015-05-28 | 2015-08-19 | 西安电子科技大学 | 一种可变速率sc-ldpc码的设计方法 |
CN105024705A (zh) * | 2015-08-19 | 2015-11-04 | 西安电子科技大学 | 一种低复杂度的多元ldpc码译码方法及译码器 |
CN105529049A (zh) * | 2014-10-21 | 2016-04-27 | 爱思开海力士有限公司 | 控制器、半导体存储系统、数据储存系统及其操作方法 |
US20160164538A1 (en) * | 2014-12-05 | 2016-06-09 | Samsung Electronics Co., Ltd. | Sc-ldpc codes for wireless communication systems: framework and zigzag-window decoder |
US20180041227A1 (en) * | 2016-08-02 | 2018-02-08 | Samsung Electronics Co., Ltd. | Apparatus and method for decoding ldpc code |
JP6296475B1 (ja) * | 2016-09-01 | 2018-03-20 | 三菱電機株式会社 | 誤り訂正復号装置及び光送受信装置 |
CN110784230A (zh) * | 2018-07-31 | 2020-02-11 | 西安电子科技大学 | 一种基于bp-led的多元sc-ldpc码滑窗译码方法 |
CN110784232A (zh) * | 2019-10-31 | 2020-02-11 | 华侨大学 | 一种空间耦合ldpc码滑窗译码方法 |
-
2020
- 2020-08-17 CN CN202010827233.4A patent/CN112234998A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090014251A (ko) * | 2007-08-04 | 2009-02-09 | 김정기 | 효율적 재사용 공통연산기 구조를 갖는 엘디피씨 복호기 |
CN105529049A (zh) * | 2014-10-21 | 2016-04-27 | 爱思开海力士有限公司 | 控制器、半导体存储系统、数据储存系统及其操作方法 |
US20160164538A1 (en) * | 2014-12-05 | 2016-06-09 | Samsung Electronics Co., Ltd. | Sc-ldpc codes for wireless communication systems: framework and zigzag-window decoder |
CN104852747A (zh) * | 2015-05-28 | 2015-08-19 | 西安电子科技大学 | 一种可变速率sc-ldpc码的设计方法 |
CN105024705A (zh) * | 2015-08-19 | 2015-11-04 | 西安电子科技大学 | 一种低复杂度的多元ldpc码译码方法及译码器 |
US20180041227A1 (en) * | 2016-08-02 | 2018-02-08 | Samsung Electronics Co., Ltd. | Apparatus and method for decoding ldpc code |
JP6296475B1 (ja) * | 2016-09-01 | 2018-03-20 | 三菱電機株式会社 | 誤り訂正復号装置及び光送受信装置 |
CN110784230A (zh) * | 2018-07-31 | 2020-02-11 | 西安电子科技大学 | 一种基于bp-led的多元sc-ldpc码滑窗译码方法 |
CN110784232A (zh) * | 2019-10-31 | 2020-02-11 | 华侨大学 | 一种空间耦合ldpc码滑窗译码方法 |
Non-Patent Citations (4)
Title |
---|
JI ZHANG: "Non-Uniform Spatially-Coupled LDPC Codes over GF(2m)", 《2018 IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY (ISIT)》 * |
SIRAWIT KHITTIWITCHAYAKUL: "EXIT Chart Analysis of Serial Window Decoding of SC-LDPC codes", 《2019 34TH INTERNATIONAL TECHNICAL CONFERENCE ON CIRCUITS/SYSTEMS, COMPUTERS AND COMMUNICATIONS (ITC-CSCC)》 * |
ZHU MIN: "Decoder Error Propagation Mitigation for Spatially Coupled LDPC Codes", 《ARXIV:2004.08530V1》 * |
高剑: "基于数字广播信令聚合的高可靠应急传输", 《计算机工程与科学》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110380819B (zh) | 一种基于llr的分段翻转极化码译码方法和智能终端 | |
CN108282264B (zh) | 基于比特翻转串行消除列表算法的极化码译码方法 | |
WO2015139160A1 (zh) | 一种动态阈值比特翻转的ldpc码硬判决译码方法 | |
US20150103947A1 (en) | Encoding method and device | |
US8271850B2 (en) | Fast low-density parity-check code encoder | |
CN101345601B (zh) | 一种译码方法和译码器 | |
US20180076831A1 (en) | Partial sum computation for polar code decoding | |
US20200044668A1 (en) | Method for ldpc decoding, ldpc decoder and storage device | |
US10848182B2 (en) | Iterative decoding with early termination criterion that permits errors in redundancy part | |
JP5723975B2 (ja) | Ldpcコードの復号のための方法、システム、およびプログラム | |
CN112953558A (zh) | 一种Polar码编码方法及装置 | |
KR20060032464A (ko) | 효율적인 저밀도 패리티 검사 코드 복호 방법 및 장치 | |
CN109495115A (zh) | 一种基于fpga的ldpc译码器及译码方法 | |
EP3364578A1 (en) | Decoding method and decoder for low-density parity check code | |
CN105812000B (zh) | 一种改进的bch软判决译码方法 | |
CN112134570A (zh) | 一种应用于深空通信的多模式ldpc译码器 | |
CN110661535B (zh) | 一种提高Turbo译码性能的方法、装置及计算机设备 | |
CN109995383B (zh) | 译码方法、装置、存储介质 | |
WO2014172874A1 (en) | Method and apparatus of ldpc encoder in 10gbase-t system | |
CN112234998A (zh) | 一种使用滑动窗口译码空间耦合ldpc码的方法及装置 | |
CN107615666A (zh) | Ldpc截短码的译码方法和译码设备 | |
US20230058149A1 (en) | Encoding method and apparatus, decoding method and apparatus, and device | |
JP5169771B2 (ja) | 復号器および復号方法 | |
Su et al. | Error rate analysis for random linear streaming codes in the finite memory length regime | |
CN105790774A (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 |