CN110431751B - 用于针对低密度奇偶校验(ldpc)码进行快速分层解码的系统和方法 - Google Patents
用于针对低密度奇偶校验(ldpc)码进行快速分层解码的系统和方法 Download PDFInfo
- Publication number
- CN110431751B CN110431751B CN201880017296.4A CN201880017296A CN110431751B CN 110431751 B CN110431751 B CN 110431751B CN 201880017296 A CN201880017296 A CN 201880017296A CN 110431751 B CN110431751 B CN 110431751B
- Authority
- CN
- China
- Prior art keywords
- layer
- soft information
- message
- new
- memory
- 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
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000003111 delayed effect Effects 0.000 claims abstract description 16
- 239000011159 matrix material Substances 0.000 claims abstract description 16
- 238000012545 processing Methods 0.000 claims description 58
- 230000006870 function Effects 0.000 claims description 16
- 238000004422 calculation algorithm Methods 0.000 description 28
- 238000004891 communication Methods 0.000 description 14
- 230000008901 benefit Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000010287 polarization Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000005388 cross polarization Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000007430 reference method Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000005308 sum rule Methods 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/1131—Scheduling of bit node or check node processing
- H03M13/1137—Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
-
- 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/1131—Scheduling of bit node or check node processing
- H03M13/114—Shuffled, staggered, layered or turbo decoding schedules
-
- 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/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
-
- 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/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/615—Use of computational or mathematical techniques
- H03M13/616—Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- General Physics & Mathematics (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Error Detection And Correction (AREA)
Abstract
根据某些实施例,提供一种用于针对具有至少包括第一层和第二层的奇偶校验矩阵(PCM)的低密度奇偶校验(LDPC)码进行快速分层解码的方法。该方法包括从存储器读取变量节点(VN)软信息,其中VN软信息与从VN到PCM的第二层的校验节点(CN)的消息相关联。根据PCM的第二层的CN演算新的CN到VN消息。针对VN演算新的VN软信息。基于VN软信息以及从第一层的CN到VN的新的CN到VN消息和从第一层的CN到VN的旧的CN到VN消息来演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层。
Description
技术领域
一般来说,本公开涉及通信并且,更特定地,涉及用于针对低密度奇偶校验(LDPC)码进行快速分层解码的系统和方法。
背景技术
低密度奇偶校验(LDPC)码通过奇偶校验矩阵(PCM)来容易地描述,其中行和列分别对应于校验节点(CN)和变量节点(VN)。图1示出PCM和对应的二部图。如所描绘,PCM中的每个边(edge)对应于CN和VN之间的边。
PCM可映射到由CN和VN组成的二部图,其中PCM的行和列分别对应于校验节点和变量节点。PCM中的每个非零条目对应于校验节点和变量节点之间的边。每个VN对应于LDPC码的码字中的编码位。下文中的描述集中在二进制LDPC码上,其中PCM的条目为1或0,但是也可容易地改变成考虑非二进制LDPC码。
LDPC码的重要类别是准循环(QC)LDPC码。QC-LDPC码的PCM H的大小为M×N,并且可由大小为mb=M/Z和nb=N/Z的基础矩阵H_base和提升因子Z来表示。H_base的每个条目包含数字-1或介于0和Z-1之间的一个或多个数字。例如,分别令i和j为介于0和(m/Z-1)之间以及0和(n/Z-1)之间的整数,然后通过H_base的行i和列j中的条目以如下方式来确定由行Z*i至Z*(i+1)-1和列Z*j至Z*(j+1)-1中的条目形成的子矩阵:
·如果H_base(i,j)=-1,那么扩充的二进制矩阵H中的子矩阵等于Z×Z零矩阵。
·如果H_base(i,j)包含一个或多个介于0和Z-1之间的整数k1,k2,…,kd,那么扩充的二进制矩阵H中的子矩阵等于移位的单位矩阵之和P_k1+P_k2+…+P_kd,其中通过将这些列向右循环移位k次来从Z×Z单位矩阵获得每个Z×Z子矩阵P_k。
以上结构通过将PCM划分成不同区块(block)而使得LDPC编码和解码实现更简单,因为可并行处理Z个行,这也减少编码/解码等待时间。我们注意到,由Z个行组成的层的处理没有那么复杂,因为它可通过移位寄存器来实现。
图2示出IEEE 802.16e中的准循环LDPC码的基础矩阵H_base之一的实践示例。该示例针对R=1/2、Z=96以及信息块长度k=1152。注意,PCM中的每个区块的尺寸为96×96,并且每个层的尺寸为96×2304。
通常,对于LDPC码的解码,置信度传播(belief propagation)(BP)被认为是成功的解码算法。它是迭代消息传递算法,使得在每次迭代时,变量和校验节点交换消息。在每次迭代结束时,计算每个VN的估值。交换的消息以及VN的估值通常指代为软信息,并且表示VN的值的置信度以及该置信度有多强。软信息可以例如是对数似然比(LLR)、似然比(LR)或这些的缩放或量化版本。在一些情况下,软信息饱和至最大值。消息传递解码器通过在相邻VN和CN之间交换消息进行操作。通过解码器的调度来描述演算和交换这些消息所用的顺序。两个重要的调度是扩散(flooding)调度和行分层调度。首先,简短地描述扩散调度。该算法的输入是VN的软信息的集合。这些可例如通过从传送器接收传输并解调该传输而获得。在第一次迭代中,解码器演算从每个VN到它的相邻CN的消息。根据VN的信道观察演算该消息。接着,每个CN使用来自它的邻居的传入消息来演算到它的相邻VN中的每个相邻VN的消息。在第二次迭代中,每个VN基于信道观察以及来自它的邻居的传入消息来演算到它的相邻CN的消息。然后,每个CN使用来自它的邻居的传入消息来演算到它的相邻VN中的每个相邻VN的消息。重复这个过程直到迭代的最大次数。在每次迭代之后,解码器可演算每个变量节点的软估值。可使用这些软估值来生成硬估值,并且如果这些硬估值对应于有效码字(如可通过奇偶校验等式进行校验),那么解码可提早停止。
用于演算节点之间的消息的规则称为消息更新规则。不同版本的消息传递解码器使用不同的消息更新规则。一些重要的示例包括和-积规则、最小-和规则、归一化最小-和、偏置最小-和。还注意,消息更新规则可在不同迭代之间以及在不同VN和CN之间不同。实际上,每个变量节点的软消息以及在节点之间交换的消息在解码器中量化为可能不同的有限数量的位。这导致略微不同的消息更新规则,以便考虑消息或软变量节点估值的量化和/或饱和。
一般来说,顺序的调度可独立于消息更新规则。
在行分层调度中,演算和交换消息所用的顺序不同于扩散调度。利用每个列在每个区块中最多包含一个非零条目的特性,将PCM的行划分成多个区块。为简单起见,我们描述如应用于QC LDPC码的调度的版本,其中基础矩阵H_base中的每个条目是-1或是介于0和Z-1之间的单个整数。在这种情况下,可将PCM划分成Z个行的区块,每个区块满足每个列在每个区块中最多包含一个非零条目的特性。注意,PCM的行的划分对应于二部图中的CN的划分。在每次迭代中,解码器针对第一区块中的所有CN演算VN到CN消息。接着,演算CN到VN消息(从这些CN中),并基于早期的估值以及来自第一区块的新的CN到VN消息来更新每个VN的软估值。然后,针对PCM/二部图的每个区块重复这个过程。以与用于扩散调度的方式相同的方式,如果硬变量节点估值对应于有效码字,那么解码可提早停止。这些区块在本文中可称为层。一般来说,分层调度提供与扩散调度的性能相同的性能但是迭代次数在一半之内。因此,分层解码更快速地收敛,并且它的等待时间和解码复杂度变得更低。
分层解码过程可使用如下定义的符号:
m:校验节点(CN)索引(1≤m≤M)
j:变量节点(VN)索引(1≤j≤N)
N(m):连接到CN m的VN的集合
b:M×NPCM内的层的索引,以使得子矩阵中的每个列最多具有权重1(1≤b≤M/Z)
L(qmj):从VN j到CN m的消息
L(qj):VNj的LLR值
Rmj:从CN m到VN j的消息
Max_iter:解码迭代的最大次数
如本文中所使用,术语“连接到”是指数学关联。因此,在以上分层解码过程中,NB的集合在数学上连接到CN m,并且因此,可以说NB的集合与CN m相关联。来自(Hocevar,2004)的分层解码算法可概括如下:
(1):for iteration i=1 to Max_iter
(2):for layer b=1 to M/Z
(3):for row r=1 to Z
(4)m=(b-1)*Z+r
(5):L(qmj)=L(qj)-Rmj,j∈N(m)
(6):Rmj=f(L(qmn)),n∈N(m),n≠j
(7):L(qj)=L(qmj)+Rmj
(8):end for row
(9):end for layer
(10):end for iteration
根据用于实现分层解码的这种先前技术,可考虑以下因素:
1.对于所有VN,可通过信道LLR来初始化L(qj),即,L(qj)=2rj/σ2,其中rj是从信道接收的码字,并且σ2是信道噪声方差。
2.可将Rmj初始化为零。
3.在上文概括的算法的步骤(6)中,函数f(·)是校验节点消息更新规则,并且可例如选自和-积、归一化最小-和、平均最小-和算法或这些算法的任何变体中的任何算法。注意,如本文中所描述,提供f(L(q_mn))作为多变量函数的简写,所述多变量函数把属于N(m)的针对n的所有消息{L(q_mn)}当作输入。例如,如果使用和-积算法,那么步骤(6)中的更新等式可如下:
在一些情况下,函数f(·)在每次迭代之间不同,或者对于不同CN不同。
4.在Z个行的层是正交的情况下,处理步骤(3)-(8)可并行化。此外,如果LDPC码具有准循环结构,那么这些步骤的实现可利用移位寄存器来实现非常高效的解码。
图3示出用于使用如上文所描述的分层解码的技术的分层解码的处理单元和存储器存取单元之间的交互工作。如在图3中可见并且可从上文所描述的步骤的概述确定,存储器存取(在步骤5中)和处理(在步骤6中)以相继方式进行,以使得当处理/计算单元是活动时,存储器存取变得空闲,并且反之亦然。这增加了解码等待时间,因为由于存储器存取(读取和写入)引起的等待时间与处理延迟具有相同量级。如果行层(raw layer)相互正交,那么一个层的存储器存取可与另一个正交层的处理并行进行。但是,在行层上强加(enforce)结构通常导致在误块率方面具有更差性能的PCM。
发明内容
为了解决关于现有解决方案的上述问题,公开的是用于针对低密度奇偶校验(LDPC)码进行快速分层解码的系统和方法。
根据某些实施例,提供一种在接收器中用于针对具有至少包括第一层和第二层的奇偶校验矩阵(PCM)的LDPC码进行快速分层解码的方法。该方法包括从存储器读取变量节点(VN)软信息,其中VN软信息与从VN到PCM的第二层的校验节点(CN)的消息相关联。根据PCM的第二层的CN演算新的CN到VN消息。针对VN演算新的VN软信息。基于VN软信息以及从第一层的CN到VN的新的CN到VN消息和从第一层的CN到VN的旧的CN到VN消息来演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层。
根据某些实施例,提供了一种用于针对具有包括第一层和第二层的PCM的LDPC码进行快速分层解码的系统。该系统可包括存储指令的存储器以及处理电路,所述处理电路可进行操作以便执行使得处理电路从存储器读取变量节点(VN)软信息的指令,其中VN软信息与从VN到PCM的第二层的校验节点(CN)的消息相关联。根据PCM的第二层的CN演算新的CN到VN消息。针对VN演算新的VN软信息。基于VN软信息以及从第一层的CN到VN的新的CN到VN消息和从第一层的CN到VN的旧的CN到VN消息来演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层。
本公开的某些实施例可提供一个或多个技术优点。例如,某些实施例可提供称为快速分层解码的次优解码方法,其与之前的分层解码技术相比具有更低的解码等待时间,并且更高效地利用解码硬件。这可通过使存储器存取和处理硬件单元同时保持活动以便避免过多的解码等待时间来实现。更具体来说,某些实施例可同时实行存储器存取和计算过程,而无需任何努力来使行层彼此相互正交。另一个技术优点可以是,提出的解码算法调整LLR以便部分地解决由于非正交行引起的从分层解码的偏离。由于快速分层解码算法对在分层解码中演算的LLR的估值起作用,所以在实现的误块率方面的性能可能略微差一点。
又一个技术优点可以是,通过运用快速分层解码,更快速地实行解码,因此解码等待时间将减少几乎一半。在某些实施例中,还可更高效地利用解码硬件,这可使解码器的区域效率增加到多达2倍。
其它优点对本领域技术人员可以是容易明显的。某些实施例可不具有记载的优点中的任何一个优点,或者可具有记载的优点中的一些或所有优点。
附图说明
为了更全面地了解公开的实施例及其特征和优点,现在结合附图对以下描述进行参考,附图中:
图1示出PCM和对应的二部图;
图2示出IEEE 802.16e中的准循环低密度奇偶校验(LDPC)码的基础矩阵H_base的实践示例;
图3示出用于使用分层解码的技术的分层解码的处理单元和存储器存取单元之间的交互工作;
图4示出根据某些实施例的使用快速分层解码算法的用于快速分层解码的处理单元和存储器存取使用之间的交互工作;
图5示出根据某些实施例的用于针对LDPC码进行快速分层解码的示例方法;
图6示出根据某些实施例的包括快速分层解码算法的不同解码算法的比较;
图7示出根据某些实施例的用于针对LDPC码进行快速分层解码的示例网络;
图8示出根据某些实施例的用于针对LDPC码进行快速分层解码的示例网络节点;
图9示出根据某些实施例的用于针对LDPC码进行快速分层解码的示例无线装置;
图10示出根据某些实施例的用于针对LDPC码进行快速分层解码的示例性计算机联网虚拟设备;以及
图11示出根据某些实施例的示例性无线电网络控制器或核心网络节点。
具体实施方式
本公开的特定实施例可提供使得能够针对低密度奇偶校验(LDPC)码进行快速分层解码的解决方案。在附图的图4-11中描述了特定实施例,类似数字用于各个图的类似和对应部分。
根据某些实施例,提供一种快速分层解码方法,所述方法同时实行存储器存取和计算过程,而不要求行层要彼此相互正交。根据某些实施例,提供如下新符号:
从层b中的校验节点(CN)m连接到变量节点(VN)j的新(new)消息
从层b中的CN m连接到VNj的旧(old)消息
根据某些实施例,可如下执行提出的快速分层解码方法:
1:for iteration i=1:Max_iter
2:for layer b=1:M/Z
3:for rowr=1:Z
4:m=(b-1)×Z+r
5:
6:
7:end for row
8:for row r’=1:Z
9:if b is equal to 1
10:m′=M-Z+r’
11:else
12:m′=(b-2)×Z+r′
13:end if
14:
15:
16:end for row
17:end for layer
18:end for iteration
在某些实施例中,以下考虑可适用:
1.可通过信道对数似然比(LLR)来初始化L(q_j),例如在二进制相移键控(BPSK)调制的情况下的L(qj)=2rj/σ2,并且可将初始化为零。
2.在步骤(14)中,所有LLR更新与属于层b-1、或者在b等于1的情况下属于层M/Z的m’有关。
3.在该算法的步骤(6)中,就像分层解码一样,可从和-积、最小-和或者任何它们的变体中选择函数f(·)。
4.必须考虑步骤(14)中的补偿项因为我们延迟了LLR消息L(qj)的更新。补偿项使得能够快速分层解码,因为去除了两个行之间的数据相依性。
5.应注意,快速分层算法仅演算标准分层算法的LLR的估值。因此,预期误块率(BLER)性能要略微降低。
图4示出根据某些实施例的存储器存取单元50和处理单元60之间的交互工作。根据之前的分层解码的技术,存储器存取和处理硬件单元是相继活动的,以使得当处理单元变成活动时,存储器存取变成空闲,并且反之亦然。但是,如图4中和上文所描述的对应步骤(5)和(14)中所描绘那样,快速分层解码方法允许存储器存取单元50和处理硬件单元60两者同时活动。换句话说,为了指出快速分层解码方法和之前的解码方法之间的主要差别,注意的是,在步骤(5)和(6)中,存储器存取单元50和处理硬件单元60均同时活动。此外,当我们研究步骤(14)时,从存储器读取之前层的CN消息和LLR值,同时在步骤(6)中处理当前层。基于这些新特征,并且通过使存储器存取和计算过程两者同时保持活动,该算法减少了解码等待时间,如下文所论述:
·对于分层解码,演算解码等待时间如下:
(针对一个行CN和VN值两者读取活动节点的等待时间+针对每个活动位置演算VN值的等待时间+CN演算时间+针对CN和VN值两者写入活动节点的等待时间)*层数*迭代次数
·对于快速分层解码,演算解码等待时间如下:
(Max(读取的等待时间+写入CN和VN值的等待时间,针对每个活动位置演算VN值的等待时间+CN演算时间))*层数*迭代次数
因此,对于快速分层解码的等待时间几乎是之前的分层解码的方法的等待时间的一半。
图5示出根据某些实施例的通过接收器用于针对具有至少包括第一层和第二层的奇偶码矩阵(PCM)的LDPC码进行快速分层解码的示例方法100。该方法在处理电路从存储器读取VN软信息时的步骤102开始。根据某些实施例,VN软信息与从VN到PCM的第二层的CN的消息相关联。在各种实施例中,VN软信息可包括例如LLR值、似然比(LR)或这些的缩放或量化版本。在特定实施例中,软信息可饱和至最大值。在特定实施例中,消息可以是VN软信息以及从第二层的CN到第二层的VN的旧的CN到VN消息的函数。在另一个实施例中,消息可以是VN软信息和从第二层的CN到第二层的VN的旧的CN到VN消息之间的差。
在步骤104,根据PCM的第二层演算CN的新的CN到VN消息。根据某些实施例,基于来自所有VN的VN到CN消息来演算新的CN到VN消息,所述所有VN被连接到该特定的CN。
在步骤106,针对VN演算新的VN软信息。根据某些实施例,基于VN软信息以及从第一层的CN到VN的新的CN到VN消息和从第一层的CN到VN的旧的CN到VN消息来演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层。
在各种特定实施例中,在演算针对第二层的VN的新的软信息的同时,可同步对存储器进行存取,并且可从存储器读取信息或将信息写入到存储器。例如,在特定实施例中,可从存储器读取连接到CN或与CN相关联的VN的软信息和/或LLR值。作为另一个示例,可从存储器读取来自第一层中的CN的消息。作为又一个示例,可将第一层中的VN的软信息和/或LLR值写入到存储器。备选地或另外地,可将来自连接到第一层中的VN的CN的软信息和/或LLR值写入到存储器。
根据某些实施例,可使能层置换。更具体来说,为了提高快速分层解码的性能,可减少连续层的相关性(通过以优化方式置换它们)。这将在步骤(8)-(16)中具有效果,因为以延迟的方式更新LLR L(qj)。在特定实施例中,以下两步法可被用于层置换:
1.给定LDPC码的基本图,首先演算所有对(pair)的层之间的相关性。
将相关性定义为层中的区块的内积,其中如果它的值为-1,那么每个区块将映射到0(记住,符号-1对应于大小为Z×Z的零子区块),否则映射到1。将相关性存储在由C表示的矩阵中。作为示例,考虑上文描述的图2的基本图。层1和2之间的相关性为C(1,2)=2,而层1和3之间的相关性为C(1,3)=0。
2.给定层1≤i≤M/Z,如果那么我们将层i+1与层j重新排序。例如,返回到图2,我们可置换层2和3,因为经证实,层1和新层2(之前的层3)之间的相关性变成0。
图6示出根据某些实施例的显示包括快速分层解码的不同解码算法的比较的图表200。更具体来说,在误帧率vs.每符号的能量(E_s/N_0)方面比较包括扩散、分层和快速分层的不同算法。使用信息块长度k=2048,对于速率R=1/2和R=1/3,具有15次迭代的和-积算法与QPSK调制。仿真结果论证了对于在R1-1611321“Design of LDPC Codes for NR”(Ericsson,2016年11月)中概括的针对NR提出的针对LDPC码进行快速分层解码的效率。
可观察到,在0.1的FER处,分层(基准方法)和快速分层(没有层置换)之间的间隙只有0.05dB,而在最佳情况下,快速分层只需分层解码等待时间的一半。应注意,分层和快速分层之间的性能差异取决于PCM的结构。如果PCM非常密集,那么对利用快速分层的非正交行所造成的近似的影响可能较高。另一方面,如果PCM非常稀疏,影响可能较低。
图7是示出根据某些实施例的用于针对PCM的LDPC码进行快速分层解码的网络300的实施例的框图。网络300包括一个或多个无线装置310A-C(所述一个或多个无线装置310A-C可互换地称为无线装置310或UE 310)和网络节点315A-C(所述网络节点315A-C可互换地称为网络节点315或eNodeB 315)、无线电网络控制器320和核心网络节点330。无线装置310可通过无线接口与网络节点315通信。例如,无线装置310A可将无线信号传送给网络节点315中的一个或多个,和/或从网络节点315中的一个或多个接收无线信号。无线信号可包含语音业务、数据业务、控制信号和/或任何其它合适的信息。在一些实施例中,与网络节点315相关联的无线信号覆盖的区域可称为小区。在一些实施例中,无线装置310可具有D2D能力。因此,无线装置310可以能够从另一个无线装置310接收信号和/或将信号直接传送给另一个无线装置310。例如,无线装置310A可以能够从无线装置310B接收信号和/或将信号传送给无线装置310B。
在某些实施例中,网络节点315可与无线电网络控制器320通过接口连接。无线电网络控制器320可控制网络节点315,并且可提供某些无线电资源管理功能、移动性管理功能和/或其它合适的功能。在某些实施例中,无线电网络控制器320可经由互连网络325与核心网络节点330通过接口连接。互连网络325可以指能够传送音频、视频、信号、数据、消息或前述的任意组合的任何互连系统。互连网络可包括以下中的全部或一部分:公共交换电话网络(PSTN),公共或私有数据网络,局域网(LAN),城域网(MAN),广域网(WAN),诸如互联网、有线或无线网络、企业内联网的局部、区域或全球通信或计算机网络,或包括其组合的任何其它合适的通信链路。
核心网络节点330可管理通信会话的建立并为无线通信装置310提供各种其它功能性。无线通信装置310使用非接入层级层与核心网络节点330交换某些信号。在非接入层级(NAS)信令中,通过网络节点320来透明地传递无线通信装置310和核心网络节点330之间的信号。
如上文所描述的,网络300的示例实施例可包括一个或多个无线装置310以及能够与无线装置310(直接或间接)通信的一种或多种不同类型的网络节点。无线装置310可以指与蜂窝或移动通信系统中的另一个无线装置和/或节点通信的任何类型的无线装置。无线装置310的示例包括移动电话、智能电话、PDA(个人数字助理)、便携式计算机(例如,膝上型电脑、平板电脑)、传感器、调制解调器、机器型通信(MTC)装置/机器到机器(M2M)装置、膝上型嵌入式设备(LEE)、膝上型安装式设备(LME)、USB软件狗、具有D2D能力的装置或可提供无线通信的另外装置。在一些实施例中,无线装置110又可称为UE、站点(STA)、装置或终端。此外,在一些实施例中,使用通用术语“无线电网络节点”(或简称为“网络节点”)。它可以是任何种类的网络节点,所述网络节点可包括节点B、基站(BS)、多标准无线电(MSR)无线电节点(诸如MSR BS)、eNodeB、网络控制器、无线电网络控制器(RNC)、基站控制器(BSC)、控制中继站的中继施主节点、基站收发信台(BTS)、接入点(AP)、传输点、传输节点、RRU、RRH、分布式天线系统(DAS)中的节点、核心网络节点(例如,MSC、MME等)、O&M、OSS、SON、定位节点(例如,E-SMLC)、MDT或任何合适的网络节点。无线通信装置310、网络节点315、无线电网络控制器320和核心网络节点330中的每个都包括硬件和/或软件的任何合适的组合。分别关于图8、9和11更详细地描述了网络节点315、无线装置310和其它网络节点(诸如无线电网络控制器或核心网络节点)的示例实施例。
尽管图7示出网络300的特定布置,但是本公开设想,本文中描述的各种实施例可适用于具有任何合适配置的各种网络。例如,网络300可包括任何合适数量的无线装置310和网络节点315以及适于支持无线装置之间或无线装置与另一个通信装置(诸如固定电话)之间的通信的任何附加元件。在某些实施例中,无线通信装置310、网络节点320和核心网络节点330使用任何合适的无线电接入技术,诸如长期演进(LTE)、高级LTE、UMTS、HSPA、GSM、cdma2000、WiMax、WiFi、另一个合适的无线电接入技术或一种或多种无线电接入技术的任何合适的组合。出于示例的目的,可在某些无线电接入技术的上下文内描述各种实施例。但是,本公开的范围不限于这些示例,并且其它实施例可使用不同的无线电接入技术。
图8示出根据某些实施例的用于针对LDPC码进行快速分层解码的示例网络节点315。如上文所描述的,网络节点315可以是与无线装置和/或与另一个网络节点通信的任何类型的无线电网络节点或任何网络节点。上文提供了网络节点315的示例。
网络节点315可作为同构部署(homogenous deployment)、异构部署(heterogeneous deployment)或混合部署而贯穿网络300被部署。同构部署一般可描述由相同(或类似)类型网络节点315和/或类似覆盖和小区大小以及站点间距离组成的部署。异构部署一般可描述使用具有不同小区大小、传送功率、容量和站点间距离的各种类型的网络节点315的部署。例如,异构部署可包括贯穿宏小区布局设置的多个低功率节点。混合部署可包括同构部分和异构部分的混合。
网络节点315可包括收发器410、处理电路420、存储器430和网络接口440中的一个或多个。在一些实施例中,收发器410促进将无线信号传送给无线装置410以及从无线装置410接收无线信号(例如,经由天线450),处理电路420执行指令以便提供如由网络节点315提供的上文所描述功能性中的一些或所有,存储器430存储由处理电路420执行的指令,并且网络接口440将信号传递给后端网络组件,诸如网关、交换机、路由器、互联网、公共交换电话网络(PSTN)、核心网络节点或无线电网络控制器等。
在某些实施例中,网络节点315可以能够使用多天线技术,并且可配备有多个天线,且能够支持MIMO技术。所述一个或多个天线可具有可控极化。换句话说,每个元件可具有带有不同极化(例如,如在交叉极化中90度分离)的两个共置子元件,以使得波束成形权重的不同集合将给予发射波不同极化。
处理电路420可包括在一个或多个模块中实现的硬件和软件的任何合适的组合,以便执行指令并操纵数据,从而执行网络节点315的所描述的功能中的一些或所有。根据某些实施例,其中网络节点315包括用于针对具有至少包括第一层和第二层的PCM的LDPC码进行快速分层解码的接收器,处理电路420可进行操作以便执行指令以使得网络节点:从存储器430读取与从VN到PCM的第二层的CN的消息相关联的VN软信息;根据PCM的第二层的CN演算新的CN到VN消息;以及针对与第二层的CN相关联的VN演算新的VN软信息,其中基于VN软信息以及来自第一层的CN的新的CN到VN消息和来自第一层的CN的旧的CN到VN消息演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层。在一些实施例中,处理电路420可包括例如一个或多个计算机、一个或多个处理器、一个或多个中央处理单元(CPU)、一个或多个微处理器、一个或多个应用和/或其它逻辑。
存储器430一般可进行操作以便存储指令,诸如计算机程序、软件、包括逻辑、规则、算法、代码、表等中的一个或多个的应用和/或能够由处理器执行的其它指令。存储器430的示例包括计算机存储器(例如,随机存取存储器(RAM)或只读存储器(ROM))、大容量存储介质(例如,硬盘)、可移除存储介质(例如,紧致盘(CD)或数字视频盘(DVD))和/或存储信息的任何其它易失性或非易失性、非暂时性计算机可读和/或计算机可执行存储器装置。
在一些实施例中,网络接口440通信地耦合到处理电路420,并且可以指可进行操作以便进行以下操作的任何合适的装置:接收对于网络节点315的输入、发送来自网络节点315的输出、执行输入或输出或两者的合适处理、与其它装置通信或前述的任意组合。网络接口440可包括适当的硬件(例如,端口、调制解调器、网络接口卡等)和软件(包括协议转换和数据处理能力)以通过网络通信。
网络节点315的其它实施例可包括除了图8中示出的那些组件以外的附加组件,所述附加组件可负责提供无线电网络节点的功能性的某些方面,所述无线电网络节点的功能性包括上文描述的功能性中的任何功能性和/或任何附加功能性(包括对支持上文描述的解决方案所必需的任何功能性)。各种不同类型的网络节点可包括具有相同物理硬件但是被配置(例如,经由编程)成支持不同无线电接入技术的组件,或者可表示部分或完全不同的物理组件。另外,仅出于示例目的提供术语“第一”和“第二”并且它们可互换。
图9示出根据某些实施例的用于针对LDPC码进行快速分层解码的示例无线装置310。如所描绘的,无线装置310包括收发器510、处理电路520和存储器530。在一些实施例中,收发器510促进将无线信号传送给网络节点315以及从网络节点315接收无线信号(例如,经由天线540),处理电路520执行指令以便提供如由无线装置310提供的上文描述的功能性中的一些或所有,并且存储器530存储由处理电路520执行的指令。上文提供了无线装置310的示例。
处理电路520可包括在一个或多个模块中实现的硬件和软件的任何合适的组合,以便执行指令并操纵数据,从而执行无线装置310的所描述的功能中的一些或所有。根据某些实施例,其中无线装置310包括用于针对具有至少包括第一层和第二层的PCM的LDPC码进行快速分层解码的接收器,处理电路420可进行操作以便执行指令以使得无线装置310:从存储器430读取与从VN到PCM的第二层的CN的消息相关联的VN软信息;根据PCM的第二层的CN演算新的CN到VN消息;以及针对与第二层的CN相关联的VN演算新的VN软信息,其中基于VN软信息以及来自第一层的CN的新的CN到VN消息和来自第一层的CN的旧的CN到VN消息来演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层。在一些实施例中,处理电路520可包括例如一个或多个计算机、一个或多个处理器、一个或多个中央处理单元(CPU)、一个或多个微处理器、一个或多个应用和/或其它逻辑。
存储器530一般可进行操作以便存储指令,诸如计算机程序、软件、包括逻辑、规则、算法、代码、表等中的一个或多个的应用和/或能够由处理器执行的其它指令。存储器530的示例包括计算机存储器(例如,随机存取存储器(RAM)或只读存储器(ROM))、大容量存储介质(例如,硬盘)、可移除存储介质(例如,紧致盘(CD)或数字视频盘(DVD))和/或存储信息的任何其它易失性或非易失性、非暂时性计算机可读和/或计算机可执行存储器装置。
无线装置310的其它实施例可包括除了图9中示出的组件以外的附加组件,所述附加组件可负责提供无线装置的功能性的某些方面,所述无线装置的功能性包括上文描述的功能性中的任何功能性和/或任何附加功能性(包括对支持上文描述的解决方案所必需的任何功能性)。
在某些实施例中,如上文所描述的用于针对LDPC码进行快速分层解码的方法可由虚拟计算装置执行。图10示出根据某些实施例的作为用于针对LDPC码进行快速分层解码的接收器操作的示例虚拟计算装置600。在某些实施例中,虚拟计算装置600可包括用于执行与上文关于图5中示出和描述的方法所描述的那些步骤类似的步骤的模块。例如,虚拟计算装置600可包括至少一个读取模块610、第一演算模块620、第二演算模块630和用于针对LDPC码进行快速分层解码的任何其它合适的模块。在一些实施例中,可分别使用上文关于图8和图9描述的处理电路420或处理电路520中的任何处理电路来实现模块中的一个或多个。在某些实施例中,可将各个模块中的两个或更多个模块的功能组合到单个模块中。
读取模块610可执行虚拟计算装置600的读取功能。例如,在特定实施例中,读取模块610可从存储器读取102变量节点(VN)软信息。根据某些实施例,VN软信息可与从变量节点(VN)到PCM的第二层的校验节点(CN)的消息相关联。在各种实施例中,VN软信息可包括例如对数似然比(LLR)值、似然比(LR)或这些的缩放或量化版本。在特定实施例中,软信息可饱和至最大值。
第一演算模块620可执行虚拟计算装置600的某些演算功能。例如,在特定实施例中,第一演算模块620可根据PCM的第二层的CN演算新的CN到VN消息。根据某些实施例,可基于来自所有VN的VN到CN消息来演算新CN,所述所有VN被连接到该特定CN。
第二演算模块620可执行虚拟计算装置的某些其它演算功能。例如,在特定实施例中,第二演算模块630可针对与第二层的CN相关联的VN演算新的VN软信息。根据某些实施例,可基于VN软信息以及来自第一层的CN的新的CN到VN消息和来自第一层的CN的旧的CN到VN消息来演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层。
虚拟计算装置600的其它实施例可包括除了图10中示出的那些组件以外的附加组件,所述附加组件可负责提供上文描述的功能性和/或任何附加功能性(包括对支持上文描述的解决方案所必需的任何功能性)的某些方面。
图11示出根据某些实施例的示例性无线电网络控制器或核心网络节点。网络节点的示例可包括移动交换中心(MSC)、服务GPRS支持节点(SGSN)、移动性管理实体(MME)、无线电网络控制器(RNC)、基站控制器(BSC)等。无线电网络控制器或核心网络节点700包括处理电路720、存储器730和网络接口740。在一些实施例中,处理电路720执行指令以便提供如由网络节点提供的上文描述的功能性中的一些或所有,存储器730存储由处理电路720执行的指令,并且网络接口740将信号传递给任何合适的节点,诸如网关、交换机、路由器、互联网、公共交换电话网络(PSTN)、网络节点315、无线电网络控制器或核心网络节点700等。
处理电路720可包括在一个或多个模块中实现的硬件和软件的任何合适的组合,以便执行指令并操纵数据,从而执行无线电网络控制器或核心网络节点700的所描述的功能中的一些或所有。在一些实施例中,处理电路720可包括例如一个或多个计算机、一个或多个处理器、一个或多个中央处理单元(CPU)、一个或多个微处理器、一个或多个应用和/或其它逻辑。
存储器730一般可进行操作以便存储指令,诸如计算机程序、软件、包括逻辑、规则、算法、代码、表等中的一个或多个的应用和/或能够由处理器执行的其它指令。存储器730的示例包括计算机存储器(例如,随机存取存储器(RAM)或只读存储器(ROM))、大容量存储介质(例如,硬盘)、可移除存储介质(例如,紧致盘(CD)或数字视频盘(DVD))和/或存储信息的任何其它易失性或非易失性、非暂时性计算机可读和/或计算机可执行存储器装置。
在一些实施例中,网络接口740被通信地耦合到处理电路720,并且可以指可进行操作以便进行以下操作的任何合适的装置:接收对于网络节点的输入、发送来自网络节点的输出、执行输入或输出或两者的合适处理、与其它装置通信或前述的任意组合。网络接口740可包括适当的硬件(例如,端口、调制解调器、网络接口卡等)和软件(包括协议转换和数据处理能力)以通过网络通信。
网络节点的其它实施例可包括除了图11中示出的那些组件以外的附加组件,所述附加组件可负责提供网络节点的功能性的某些方面,所述网络节点的功能性包括任何上文描述的功能性和/或任何附加功能性(包括对支持上文描述的解决方案所必需的任何功能性)。
根据某些实施例,一种用于针对至少包括第一层和第二层的奇偶校验矩阵(PCM)的LDPC码进行快速分层解码的方法,该方法可包括:
·从存储器读取变量节点(VN)软信息,其中VN软信息与从变量节点(VN)到PCM的第二层的校验节点(CN)的消息相关联;
·根据PCM的第二层的CN演算新的CN到VN消息;
·针对与第二层的CN相关联的VN演算新的VN软信息,其中基于VN软信息以及来自第一层的CN的新的CN到VN消息和来自第一层的CN的旧的CN到VN消息演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层;
·可选地,该方法还包括从VN软信息的延迟的更新切换到实时的更新;
·可选地,该方法还包括:
·可选地,VN软信息包括对数似然比(LLR)值;
·可选地,当处理电路正在针对与第二层的CN相关联的VN演算软信息和/或LLR值时,该方法还包括同时对存储器进行存取并执行以下操作中的至少一个操作:
·从存储器读取连接到CN的VN的软信息和/或LLR值;
·从存储器读取来自第一层中的CN的消息;
·将第一层中的VN的软信息和/或LLR值写入到存储器;
·写入来自连接到第一层中的VN的CN的软信息和/或LLR值;
·可选地,对于与第一层中的CN相关联的VN的软信息和/或LLR值可基于来自与VN相关联的CN的旧消息和来自与VN相关联的CN的新消息;
·可选地,根据(as a function of)与从多个VN到PCM的第二层的CN的多个消息相关联的值的集合来演算新的CN到VN消息;
·可选地,确定所有对的层之间的相关性;
·可选地,可将相关性定义为层中的区块的内积,其中如果它的值为-1,那么每个区块将映射到0,否则映射到1;
·可选地,确定估计的软信息和/或LLR值包括调整软信息和/或LLR值以便部分地解决由于非正交行引起的从分层解码的偏离。
根据某些实施例,一种用于针对奇偶校验矩阵(PCM)中的LDPC码进行快速分层解码的系统可包括:
·存储指令的存储器;以及
·处理电路,所述处理电路可进行操作以便执行使得处理电路进行以下操作的指令:
·从存储器读取变量节点(VN)软信息,其中VN软信息与从变量节点(VN)到PCM的第二层的校验节点(CN)的消息相关联;
·根据PCM的第二层的CN演算新的CN到VN消息;
·针对与第二层的CN相关联的VN演算新的VN软信息,其中基于VN软信息以及来自第一层的CN的新的CN到VN消息和来自第一层的CN的旧的CN到VN消息来演算新的VN软信息,使得新的VN软信息的更新被延迟至少一个层;
·可选地,处理电路还可进行操作以便执行使得处理电路从VN软信息的延迟的更新切换到实时的更新的指令;
·可选地,VN软信息包括对数似然比(LLR)值;
·可选地,当处理电路正在针对与第二层的CN相关联的VN演算软信息和/或LLR值时,同时对存储器进行存取并执行以下操作中的至少一个操作:
·从存储器读取连接到CN的VN的软信息和/或LLR值;
·从存储器读取来自第一层中的CN的消息;
·将第一层中的VN的软信息和/或LLR值写入到存储器;
·写入来自连接到第一层中的VN的CN的软信息和/或LLR值;
·可选地,对于与第一层中的CN相关联的VN的软信息和/或LLR值可基于来自与VN相关联的CN的旧消息和来自与VN相关联的CN的新消息;
·可选地,根据与从多个VN到PCM的第二层的CN的多个消息相关联的值的集合来演算新的CN到VN消息;
·可选地,确定所有对的层之间的相关性;
·可选地,可将相关性定义为层中的区块的内积,其中如果它的值为-1,那么每个区块将映射到0,否则映射到1;
·可选地,确定估计的软信息和/或LLR值包括调整软信息和/或LLR值以便部分地解决由于非正交行引起的从分层解码的偏离。
本公开的某些实施例可提供一个或多个技术优点。例如,某些实施例可提供称为快速分层解码的次优解码方法,其与之前的分层解码技术相比具有更低的解码等待时间,并且更高效地利用解码硬件。这可通过使存储器存取和处理硬件单元同时保持活动以便避免过多的解码等待时间来实现。更具体来说,某些实施例可同时实行存储器存取和计算过程,而无需任何努力来使行层彼此相互正交。另一个技术优点可以是,提出的解码算法调整LLR以便部分地解决由于非正交行引起的从分层解码的偏离。由于快速分层解码算法对在分层解码中演算的LLR的估值起作用,所以在实现的误块率方面的性能可能略微差一点。
又一个技术优点可以是,通过运用快速分层解码,更快速地实行解码,因此解码等待时间将减少几乎一半。在某些实施例中,还可更高效地利用解码硬件,这可使解码器的区域效率增加到多达2倍。
在不脱离本公开的范围的情况下,可对本文中描述的系统和设备进行修改、添加或省略。所述系统和设备的组件可被集成或被分离。此外,可通过更多、更少或其它组件来执行系统和设备的操作。另外,可使用包括软件、硬件和/或其它逻辑的任何合适的逻辑来执行系统和设备的操作。如在本文档中所使用那样,“每个”指集合的每个成员或集合的子集的每个成员。
在不脱离本公开的范围的情况下,可对本文中描述的方法进行修改、添加或省略。这些方法可包括更多、更少或其它步骤。另外,可以按任何合适的顺序执行步骤。
尽管已经在某些实施例的方面描述了本公开,但是实施例的变更和置换将对于本领域技术人员而言是明显的。因此,实施例的上文描述不约束本公开。在不脱离如由以下权利要求定义的本公开的精神和范围的情况下,其它改变、替换和变更都是可能的。
前述描述中使用的缩写包括:
缩写解释
LDPC 低密度奇偶校验
LLR 对数似然比
LR 似然比
VN 变量节点
CN 校验节点
PCM 奇偶校验矩阵
Claims (24)
1.一种用于针对具有至少包括第一层和第二层的奇偶校验矩阵PCM的低密度奇偶校验LDPC码进行快速分层解码的方法,所述方法包括:
从存储器读取变量节点VN软信息,其中所述VN软信息与从VN到所述PCM的所述第二层的校验节点CN的消息相关联;
根据所述PCM的所述第二层的所述CN演算新的CN到VN消息;以及
针对所述VN演算新的VN软信息,其中基于所述VN软信息以及从所述第一层的CN到所述VN的新的CN到VN消息和从所述第一层的所述CN到所述VN的旧的CN到VN消息来演算所述新的VN软信息,使得新的VN软信息的更新被延迟至少一个层,
确定所有对的层之间的相关性;以及
基于所述相关性来重新排序所述层中的至少两个层。
2.如权利要求1所述的方法,还包括从VN软信息的延迟的更新切换到实时的更新。
3.如权利要求1至2中任一权利要求所述的方法,其中,所述VN软信息包括对数似然比LLR值。
4.如权利要求1至3中任一权利要求所述的方法,其中,当处理电路正在针对所述VN演算软信息和/或LLR值时,所述方法还包括同时对存储器进行存取并执行以下操作中的至少一个操作:
从所述存储器读取与CN相关联的VN的软信息和/或LLR值;
从所述存储器读取来自所述第一层中的所述CN的消息;
将所述第一层中的所述VN的软信息和/或LLR值写入到所述存储器;以及
写入与从所述第一层中的所述CN到所述VN的消息相关联的软信息和/或LLR值。
5.如权利要求4所述的方法,其中,对于与所述第一层中的所述CN相关联的所述VN的所述软信息和所述LLR值中的至少一个可基于来自与所述VN相关联的所述CN的旧消息和来自与所述VN相关联的所述CN的新消息。
6.如权利要求1至5中任一权利要求所述的方法,其中,根据与从多个VN到所述PCM的所述第二层的所述CN的多个消息相关联的值的集合来演算所述新的CN到VN消息。
7.如权利要求1所述的方法,其中,将所述相关性定义为层中的区块的内积,其中如果它的值为-1,那么每个区块将映射到0,否则映射到1。
8.如权利要求1至7中任一权利要求所述的方法,其中,确定所述VN软信息包括调整所述软信息以便部分地解决由于非正交行引起的从所述分层解码的偏离。
9.如权利要求1至8中任一权利要求所述的方法,其中,从所述VN到所述第二层的所述CN的所述消息是所述VN软信息以及从所述第二层的所述CN到所述VN的旧的CN到VN消息的函数。
10.如权利要求3至8中任一权利要求所述的方法,其中,从所述VN到所述第二层的所述CN的所述消息是所述VN软信息和从所述第二层的所述CN到所述VN的旧的CN到VN消息之间的差。
11.如权利要求1至10中任一权利要求所述的方法,其中,所述方法由无线装置执行。
12.如权利要求1至10中任一权利要求所述的方法,其中,所述方法由网络节点执行。
13.一种用于针对定义有包括第一层和第二层的奇偶校验矩阵PCM的低密度奇偶校验LDPC码进行快速分层解码的系统,所述系统包括:
存储指令的存储器;以及
处理电路,所述处理电路可进行操作以便执行使得所述处理电路进行以下操作的所述指令:
从所述存储器读取变量节点VN软信息,其中所述VN软信息与从VN到所述PCM的所述第二层的校验节点CN的消息相关联;
根据所述PCM的所述第二层的所述CN演算新的CN到VN消息;以及
针对所述VN演算新的VN软信息,其中基于所述VN软信息以及从所述第一层的CN到所述VN的新的CN到VN消息和从所述第一层的所述CN到所述VN的旧的CN到VN消息来演算所述新的VN软信息,使得新的VN软信息的更新被延迟至少一个层,
确定所有对的层之间的相关性;以及
基于所述相关性来重新排序所述层中的至少两个层。
14.如权利要求13所述的系统,其中,所述处理电路还可进行操作以便执行使得所述处理电路从VN软信息的延迟的更新切换到实时的更新的所述指令。
15.如权利要求13至14中任一权利要求所述的系统,其中,所述VN软信息包括对数似然比LLR值。
16.如权利要求13至15中任一权利要求所述的系统,其中,当所述处理电路正在针对所述VN演算软信息和/或LLR值时,同时对所述存储器进行存取并执行以下操作中的至少一个操作:
从所述存储器读取与CN相关联的VN的软信息和/或LLR值;
从所述存储器读取来自所述第一层中的所述CN的消息;
将所述VN的软信息和/或LLR值写入到所述存储器;以及
写入与从所述第一层中的所述CN到所述VN的消息相关联的软信息和/或LLR值。
17.如权利要求13至16中任一权利要求所述的系统,其中,对于与所述第一层中的所述CN相关联的所述VN的所述VN软信息可基于来自与所述VN相关联的所述CN的旧消息和来自与所述VN相关联的所述CN的新消息。
18.如权利要求13至17中任一权利要求所述的系统,其中,根据与从多个VN到所述PCM的所述第二层的所述CN的多个消息相关联的值的集合来演算所述新的CN到VN消息。
19.如权利要求13所述的系统,其中,可将所述相关性定义为层中的区块的内积,其中如果它的值为-1,那么每个区块将映射到0,否则映射到1。
20.如权利要求13至19中任一权利要求所述的系统,其中,确定估计的软信息包括调整所述软信息以便部分地解决由于非正交行引起的从所述分层解码的偏离。
21.如权利要求13至20中任一权利要求所述的系统,其中,从所述VN r到所述第二层的所述CN的所述消息是所述VN软信息和从所述第二层的所述CN到所述VN的旧的CN到VN消息的函数。
22.如权利要求15至20中任一权利要求所述的系统,其中,从所述VN到所述第二层的所述CN的所述消息是所述VN软信息和从所述第二层的所述CN到所述VN的旧的CN到VN消息之间的差。
23.如权利要求13至22中任一权利要求所述的系统,其中,所述系统包括无线装置。
24.如权利要求13至22中任一权利要求所述的系统,其中,所述系统包括网络节点。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762444137P | 2017-01-09 | 2017-01-09 | |
US62/444137 | 2017-01-09 | ||
PCT/EP2018/050476 WO2018127607A1 (en) | 2017-01-09 | 2018-01-09 | Systems and methods for fast layered decoding for low-density parity-check (ldpc) codes |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110431751A CN110431751A (zh) | 2019-11-08 |
CN110431751B true CN110431751B (zh) | 2024-02-27 |
Family
ID=60937786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880017296.4A Active CN110431751B (zh) | 2017-01-09 | 2018-01-09 | 用于针对低密度奇偶校验(ldpc)码进行快速分层解码的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11664824B2 (zh) |
EP (1) | EP3566317A1 (zh) |
CN (1) | CN110431751B (zh) |
WO (1) | WO2018127607A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111416626B (zh) * | 2020-02-21 | 2023-05-09 | 中国科学院微电子研究所 | 一种ldpc码的译码方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009053940A2 (en) * | 2007-10-24 | 2009-04-30 | Nokia Corporation | Method, computer program product, apparatus and device providing scalable structured high throughput ldpc decoding |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7174495B2 (en) | 2003-12-19 | 2007-02-06 | Emmanuel Boutillon | LDPC decoder, corresponding method, system and computer program |
US8464120B2 (en) * | 2006-10-18 | 2013-06-11 | Panasonic Corporation | Method and system for data transmission in a multiple input multiple output (MIMO) system including unbalanced lifting of a parity check matrix prior to encoding input data streams |
KR101405962B1 (ko) * | 2008-02-28 | 2014-06-12 | 엘지전자 주식회사 | Ldpc 코드를 이용한 복호화 방법 |
US8464121B2 (en) * | 2009-01-07 | 2013-06-11 | Intel Corporation | LDPC codes with small amount of wiring |
FR2944660B1 (fr) * | 2009-04-16 | 2011-09-09 | St Microelectronics Sa | Decodeur ldpc |
US8990661B1 (en) * | 2013-03-05 | 2015-03-24 | Pmc-Sierra Us, Inc. | Layer specific attenuation factor LDPC decoder |
US9667274B2 (en) * | 2015-03-19 | 2017-05-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Method of constructing a parity-check matrix for using message-passing algorithm to decode the repeat-accumulate type of modulation and coding schemes |
-
2018
- 2018-01-09 WO PCT/EP2018/050476 patent/WO2018127607A1/en active Application Filing
- 2018-01-09 CN CN201880017296.4A patent/CN110431751B/zh active Active
- 2018-01-09 US US16/476,599 patent/US11664824B2/en active Active
- 2018-01-09 EP EP18700130.0A patent/EP3566317A1/en not_active Ceased
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009053940A2 (en) * | 2007-10-24 | 2009-04-30 | Nokia Corporation | Method, computer program product, apparatus and device providing scalable structured high throughput ldpc decoding |
Also Published As
Publication number | Publication date |
---|---|
CN110431751A (zh) | 2019-11-08 |
US20190372593A1 (en) | 2019-12-05 |
WO2018127607A1 (en) | 2018-07-12 |
EP3566317A1 (en) | 2019-11-13 |
US11664824B2 (en) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2730434C1 (ru) | Способы согласования скорости для ldpc-кодов | |
US10879927B2 (en) | Compact low density parity check (LDPC) base graph | |
WO2019158031A1 (zh) | 编码的方法、译码的方法、编码设备和译码设备 | |
US20180278267A1 (en) | Method and apparatus for error correction coding in communication | |
US20180323802A1 (en) | Multi-Label Offset Lifting Method | |
CN111247743B (zh) | 在crc制码之前对包括已知位的nr pbch有效载荷进行交织以增强极化码性能 | |
US9667274B2 (en) | Method of constructing a parity-check matrix for using message-passing algorithm to decode the repeat-accumulate type of modulation and coding schemes | |
CN110431751B (zh) | 用于针对低密度奇偶校验(ldpc)码进行快速分层解码的系统和方法 | |
US11018696B2 (en) | Soft output decoding of polar codes | |
US20190181882A1 (en) | Determining elements of base matrices for quasi-cyclic ldpc codes having variable code lengths | |
CN112737600B (zh) | 译码方法和译码器 | |
US20230353169A1 (en) | Network node and method performed therein for handling received signal | |
WO2021225483A1 (en) | Network node and method performed therein for handling communication | |
KR20220122559A (ko) | 통신 시스템에서 LDPC(low-density parity-check) 부호에 기초한 복호 방법 및 장치 |
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 |