CN107370554A - Decoding method and decoder for low density parity check code - Google Patents
Decoding method and decoder for low density parity check code Download PDFInfo
- Publication number
- CN107370554A CN107370554A CN201610313421.9A CN201610313421A CN107370554A CN 107370554 A CN107370554 A CN 107370554A CN 201610313421 A CN201610313421 A CN 201610313421A CN 107370554 A CN107370554 A CN 107370554A
- Authority
- CN
- China
- Prior art keywords
- decoding
- scheduling
- code
- density parity
- parity check
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 239000011159 matrix material Substances 0.000 claims abstract description 63
- 238000010586 diagram Methods 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000012827 research and development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
- H04L1/0063—Single parity check
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
Description
技术领域technical field
本发明涉及低密度奇偶校验码的解码方法与解码器,且特别涉及解码调度可变化(variable decoding schedule)的低密度奇偶校验码的解码方法与解码器。The present invention relates to a decoding method and decoder for low density parity check codes, and in particular to a decoding method and decoder for low density parity check codes with variable decoding schedule.
背景技术Background technique
在1962年,低密度奇偶校验码(LDPC code)即被Gallager提出,并被证明其错误校正能力非常接近理论最大值,香农极限(Shannon Limit),但是没有具体实施的方式。In 1962, the low-density parity-check code (LDPC code) was proposed by Gallager, and it was proved that its error correction capability was very close to the theoretical maximum, the Shannon Limit, but there was no specific implementation method.
最近几年,无线通信的研发中,因应近代技术的需求,再度考虑低密度奇偶校验码的解码方式。近代技术的需求例如是视频的需求,其需要传输大量数据。基于传输数据大增而采用数据信号并行传送,以利于无线通信装置较快速地正确接收数据。又对于移动无线通信装置,更有利于在快速移动中(例如列车时)的通信时,锁定移动无线通信装置。另外,数据信号并行传送也可以适用于光学传输(optical transport),例如在超高速串行光学传输网络(ultra-high-speed serial optical transport network)的应用。低密度奇偶校验码的具体实施方式,随着集成电路的技术演进,已逐渐可行,而成为各种先进通信系统的频道编码标准。In recent years, in the research and development of wireless communication, in response to the needs of modern technology, the decoding method of the low density parity check code has been considered again. The demands of modern technology are, for example, those of video, which require the transmission of large amounts of data. Based on the large increase of transmission data, data signals are transmitted in parallel to facilitate the wireless communication device to receive data quickly and correctly. As for the mobile wireless communication device, it is more beneficial to lock the mobile wireless communication device when communicating in fast movement (for example, in a train). In addition, the parallel transmission of data signals can also be applied to optical transport, such as the application in ultra-high-speed serial optical transport network (ultra-high-speed serial optical transport network). With the technical evolution of integrated circuits, the specific implementation of low-density parity-check codes has gradually become feasible, and has become the channel coding standard of various advanced communication systems.
然而,低密度奇偶校验码在解码时,依照低密度奇偶校验矩阵的编码方式,主要基于有迭代性(iterative)的可靠度传播(belief propagation,BP),也有提出多种解码方式。然而传统方式在多次迭代的解码尝试中,其解码调度一般是采用低密度奇偶校验矩阵的阵元顺序,当作解码调度(decodingschedule)。However, when decoding the LDPC code, it is mainly based on iterative belief propagation (BP) according to the encoding method of the LDPC matrix, and various decoding methods have also been proposed. However, in the traditional way, in multiple iterations of decoding attempts, the decoding schedule generally adopts the element order of the low-density parity check matrix, which is regarded as a decoding schedule.
这种固定解码调度的解码方式,虽然其实施方式可以简易直接进行,但是在解码效率考虑上,解码效率的提升是技术研发所需要考虑的因素。Although the decoding method of this fixed decoding schedule can be implemented simply and directly, in terms of decoding efficiency, the improvement of decoding efficiency is a factor that needs to be considered in technology research and development.
发明内容Contents of the invention
本发明提供一种低密度奇偶校验码的解码方法与解码器,用以有效将输入信号依据预定的低密度奇偶校验矩阵解出正确的码字(codeword),加快迭代运算的收敛速度。The present invention provides a decoding method and a decoder for low-density parity-check codes, which are used to effectively decode an input signal to a correct codeword (codeword) according to a predetermined low-density parity-check matrix, and accelerate the convergence speed of iterative operations.
本发明的一种低密度奇偶校验码的解码方法,用以将输入信号依据预定的低密度奇偶校验矩阵解出正确的码字。本方法包括依据该低密度奇偶校验矩阵,在预定的解码尝试次数内进行多次解码尝试,该多次解码尝试中至少包含使用第一解码调度的第一解码尝试,以及使用第二解码调度的第二解码尝试。该第二解码尝试相邻接续于该第一解码尝试。该第一解码调度为一组,不包含在该第二解码调度中。A decoding method of a low-density parity-check code of the present invention is used for decoding an input signal to a correct codeword according to a predetermined low-density parity-check matrix. The method includes performing multiple decoding attempts within a predetermined number of decoding attempts according to the low-density parity-check matrix, the multiple decoding attempts at least including the first decoding attempt using the first decoding schedule, and using the second decoding schedule the second decoding attempt. The second decoding attempt is adjacent to the first decoding attempt. The first decoding schedule is a group, which is not included in the second decoding schedule.
本发明的一种低密度奇偶校验码的解码器,用以将输入信号依据预定的低密度奇偶校验矩阵解出正确的码字,包括:一解码单元,被配置以将输入信号依据预定的低密度奇偶校验矩阵解出正确的码字,其中依据该低密度奇偶校验矩阵,在预定的解码尝试次数内进行多次解码尝试,该多次解码尝试中至少包含使用第一解码调度的第一解码尝试,以及使用第二解码调度的第二解码尝试,其中该第二解码尝试相邻接续于该第一解码尝试,该第一解码调度不包含在该第二解码调度中;以及一解码调度估计单元,被配置以根据该低密度奇偶校验矩阵产生及存储多种不同的解码调度,以供该解码单元取得该第一解码调度与该第二解码顺。A low-density parity-check code decoder of the present invention is used to decode an input signal into a correct code word according to a predetermined low-density parity-check matrix, comprising: a decoding unit configured to convert the input signal according to a predetermined The low-density parity-check matrix solves the correct codeword, wherein according to the low-density parity-check matrix, multiple decoding attempts are performed within a predetermined number of decoding attempts, and the multiple decoding attempts include at least using the first decoding schedule and a second decoding attempt using a second decoding schedule, wherein the second decoding attempt is adjacent to the first decoding attempt, the first decoding schedule not included in the second decoding schedule; and A decoding schedule estimation unit is configured to generate and store a plurality of different decoding schedules according to the LDPC matrix, so that the decoding unit can obtain the first decoding schedule and the second decoding sequence.
在本发明的一实施例中,在上述低密度奇偶校验码的解码方法与解码器中,该第一解码调度是层式可靠度传播顺序与垂直式可靠度传播顺序的其中一个,该第二解码调度是该层式可靠度传播顺序与垂直式可靠度传播顺序的其中另一个。In an embodiment of the present invention, in the above-mentioned decoding method and decoder for LDPC codes, the first decoding schedule is one of a layered reliability propagation order and a vertical reliability propagation order, and the first decoding schedule is Two-decoding scheduling is the other of the layered reliability propagation order and the vertical reliability propagation order.
在本发明的一实施例中,在上述低密度奇偶校验码的解码方法与解码器中,该第一解码调度与该第二解码调度都是层式可靠度传播顺序,但是该第二解码调度的码率低于该第一解码调度的码率。In an embodiment of the present invention, in the decoding method and decoder of the above-mentioned low-density parity-check code, the first decoding schedule and the second decoding schedule are layered reliability propagation order, but the second decoding The scheduled code rate is lower than the code rate of the first decoding schedule.
在本发明的一实施例中,在上述低密度奇偶校验码的解码方法与解码器中,该第一解码调度与该第二解码调度都是垂直式可靠度传播顺序,但是该第二解码调度的码率低于该第一解码调度的码率。In an embodiment of the present invention, in the decoding method and decoder of the above-mentioned low-density parity-check code, the first decoding schedule and the second decoding schedule are vertical reliability propagation order, but the second decoding The scheduled code rate is lower than the code rate of the first decoding schedule.
在本发明的一实施例中,在上述低密度奇偶校验码的解码方法与解码器中,该第一解码调度与该第二解码调度是根据最大互信息增加(maximummutual information increase,M2I2)算法,依照不同参数条件所决定的不同顺序。In an embodiment of the present invention, in the decoding method and decoder of the above-mentioned low-density parity-check code, the first decoding schedule and the second decoding schedule are based on maximum mutual information increase (maximum mutual information increase, M 2 I 2 ) Algorithms, according to different sequences determined by different parameter conditions.
在本发明的一实施例中,在上述低密度奇偶校验码的解码方法与解码器中,该第一解码尝试与该第二解码尝试都会重置该码字的初始值,或是后续的该第二解码尝试会使用该第一解码尝试的结果为初始值。In an embodiment of the present invention, in the decoding method and decoder of the above-mentioned low-density parity-check code, both the first decoding attempt and the second decoding attempt will reset the initial value of the codeword, or the subsequent The second decoding attempt uses the result of the first decoding attempt as an initial value.
在本发明的一实施例中,在上述低密度奇偶校验码的解码方法与解码器中,该第二解码尝试的码率比该第一解码尝试码率低。In an embodiment of the present invention, in the decoding method and decoder for the LDPC code, the code rate of the second decoding attempt is lower than the code rate of the first decoding attempt.
在本发明的一实施例中,在上述低密度奇偶校验码的解码方法与解码器中,该第一解码调度与该第二解码调度是随机安排。In an embodiment of the present invention, in the above-mentioned decoding method and decoder for low density parity check codes, the first decoding schedule and the second decoding schedule are randomly arranged.
基于上述,一个码率相容(rate-compatible)低密度奇偶校验码的解码过程可以包含多次的解码尝试,包含相邻二次的解码尝试使用不同的解码调度,以获得更快的收敛速度,或是在相同的迭代次数限制内,得到更高的吞吐率。Based on the above, the decoding process of a rate-compatible LDPC code can include multiple decoding attempts, including two adjacent decoding attempts using different decoding schedules to obtain faster convergence speed, or higher throughput within the same iteration limit.
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。In order to make the above-mentioned features and advantages of the present invention more comprehensible, the following specific embodiments are described in detail with reference to the accompanying drawings.
附图说明Description of drawings
图1是依照本发明一实施例,绘示一种低密度奇偶校验矩阵示意图。FIG. 1 is a schematic diagram illustrating a low density parity check matrix according to an embodiment of the present invention.
图2是依照图1的低密度奇偶校验矩阵,绘示校验节点与变量节点的连接示意图。FIG. 2 is a schematic diagram showing connections between check nodes and variable nodes according to the low density parity check matrix in FIG. 1 .
图3是依照本发明一实施例,低密度奇偶校验矩阵的一般性规划示意图。FIG. 3 is a schematic diagram of a general planning of an LDPC matrix according to an embodiment of the present invention.
图4是依照本发明一实施例,低密度奇偶校验解码所采M2I2的解码调度,每次重置的机制示意图。FIG. 4 is a schematic diagram of the decoding schedule of M 2 I 2 adopted in LDPC decoding and the mechanism of each reset according to an embodiment of the present invention.
图5是依照本发明一实施例,低密度奇偶校验解码所采M2I2的解码调度,采用渐增解码调度机制示意图。FIG. 5 is a schematic diagram of an incremental decoding scheduling mechanism for M 2 I 2 decoding scheduling adopted in LDPC decoding according to an embodiment of the present invention.
图6是依照本发明一实施例,低密度奇偶校验码的解码方法的流程示意图。FIG. 6 is a schematic flow chart of a decoding method for an LDPC code according to an embodiment of the present invention.
图7是依照本发明一实施例,低密度奇偶校验码的解码器的架构示意图。FIG. 7 is a schematic diagram of an architecture of a decoder of an LDPC code according to an embodiment of the present invention.
【符号说明】【Symbol Description】
100:解码器100: decoder
102:解码单元102: decoding unit
104:解码调度估计单元104: decoding scheduling estimation unit
106:存储单元106: storage unit
H:低密度奇偶校验矩阵H: Low Density Parity Check Matrix
S100、S102:步骤S100, S102: steps
具体实施方式detailed description
本发明是针对低密度奇偶校验码的解码方法与解码器,提出对码字(codeword)解码时,至少包括在前后两次迭代的解码运算,使用不同的解码调度,以能更有效在后续的迭代的解码运算中,能更有效使用在先前的解码运算中已解出所累积的部分信息,加快迭代码运算的收敛速度,又或是在相同的迭代次数限制内,得到更高的吞吐率(throughput)。The present invention is aimed at the decoding method and decoder of the low-density parity-check code, and proposes that when decoding the codeword (codeword), it includes at least two decoding operations before and after two iterations, and uses different decoding schedules, so as to be more effective in the follow-up In the iterative decoding operation, it can more effectively use part of the information that has been solved and accumulated in the previous decoding operation, speed up the convergence speed of the iterative code operation, or obtain a higher throughput within the same iteration limit (throughput).
本发明提出解码调度的规划,提升解码效率,但是对于所决定出的解码调度下,不限定于在后端运作的特定解码方式。也就是说,例如在一个给予的解码调度的前提下,可以采用任何可适用的已知解码机制进行解码,其可以包括硬件和/或软件的运作。也就是LDPC的解码方式本身,可以采用传统现有技术,或甚至是未来研发的技术。然而,本发明提供决定其在解码时所需要的解码调度的规划。The present invention proposes a decoding scheduling plan to improve decoding efficiency, but the determined decoding scheduling is not limited to a specific decoding method operated at the backend. That is, for example, under the premise of a given decoding schedule, any applicable known decoding mechanism may be used for decoding, which may include hardware and/or software operations. That is, the decoding method of LDPC itself can adopt traditional existing technologies, or even technologies developed in the future. However, the present invention provides a plan for determining the decoding schedule it needs when decoding.
以下提出多个实施例来说明本发明,但是本发明不局限于所举的实施例。A number of examples are presented below to illustrate the present invention, but the present invention is not limited to the examples given.
图1是依照本发明一实施例,绘示一种低密度奇偶校验矩阵示意图。参阅图1,低密度奇偶校验码是基于具有稀疏矩阵性质的奇偶校验矩阵建构而成。对(n,k)的低密度奇偶校验码而言,每k位数据会使用n位的码字进行编码。以下是一个被(9,6)的低密度奇偶校验码使用的奇偶校验矩阵H的一个例,如图1所示。在此H矩阵内的元素中,阵元为“1”的数量远少于阵元为“0”的数量。这就是稀疏矩阵性质,也就是低密度的由来。FIG. 1 is a schematic diagram illustrating a low density parity check matrix according to an embodiment of the present invention. Referring to FIG. 1 , the low density parity check code is constructed based on a parity check matrix with sparse matrix properties. For (n, k) LDPC codes, every k bits of data are coded using n bits of codewords. The following is an example of a parity check matrix H used by a (9,6) LDPC code, as shown in FIG. 1 . Among the elements in this H matrix, the number of array elements with "1" is far less than the number of array elements with "0". This is the nature of the sparse matrix, which is the origin of the low density.
图2是依照图1的低密度奇偶校验矩阵,绘示校验节点与变量节点的连接示意图。参阅图2,低密度奇偶校验码的解码,可对应成二分图(bipartitegraph)来表示。二分图是依照上述奇偶校验矩阵H建置,其中H的列(column)对应到校验节点(check node,C),而H的行(row)对应至位节点(bit node)位节点也称为变量节点(variable node)。校验节点与变量节点之间有由矩阵H所决定的连接关系,又称为连线(edge),其由矩阵H内的阵元1决定。FIG. 2 is a schematic diagram showing connections between check nodes and variable nodes according to the low density parity check matrix in FIG. 1 . Referring to FIG. 2 , the decoding of the LDPC code can be represented as a bipartite graph. The bipartite graph is constructed according to the above-mentioned parity check matrix H, where the columns of H correspond to check nodes (check nodes, C), and the rows of H correspond to bit nodes (bit nodes). Called variable node (variable node). There is a connection relationship determined by the matrix H between the check node and the variable node, which is also called an edge, which is determined by the element 1 in the matrix H.
也就是,在矩阵H中的一列(column)的数值中,具有“1”的阵元代表在与n个变量节点中所对应的变量节点有连线,另外具有“0”的阵元代表没有连线。以图1、2为例,第一行(row)的数值是[100100100]描述第一个校验节点与变量节点之间的连接关系,因此第0个校验节点与第0、3、6个变量节点有连线。矩阵H代表所采用的编码方式。That is, among the numerical values of a column (column) in the matrix H, the array element with "1" represents that there is a connection with the variable node corresponding to the n variable nodes, and the array element with "0" represents that there is no connection. Taking Figures 1 and 2 as examples, the value of the first row (row) is [100100100] describing the connection relationship between the first check node and the variable node, so the 0th check node is connected to the 0th, 3rd, and 6th variable nodes are connected. Matrix H represents the encoding method adopted.
在无线传输中,多个位的码字编码后是以模拟的信号传送,因此接收到的信号是有噪声,也因此需要正确将码字解码,得到正确的码字数据。解出来的码字,依照矩阵的乘法规则,当矩阵H乘上码字的转置矩阵后,能得到kx1的“0”矩阵时,此码字的内容就被认为是正确数据。In wireless transmission, codewords of multiple bits are encoded and transmitted as analog signals, so the received signal is noisy, and therefore it is necessary to correctly decode the codewords to obtain correct codeword data. According to the multiplication rules of the matrix, when the matrix H is multiplied by the transposed matrix of the code word, the "0" matrix of kx1 can be obtained, and the content of the code word is considered to be correct data.
在LDPC解码过程,其依照连线关系以及所接收相对变量节点的信号,依照解码调度作多次的迭代运算。连线关系基本上会包含校验节点传播到变量节点的信息(check to variable(C2V)message),变量节点传播到校验节点的信息(variable to check(V2C)message),例如在多次的迭代运算后达到收敛的状态,以得到码字。关于如何依照解码调度,依照矩阵H的编码关系来解出码字是已知的技术,不予详述,而本发明也不局限于在特定的解码机制的应用。In the LDPC decoding process, according to the connection relationship and the received signal of the relative variable node, multiple iterations are performed according to the decoding schedule. The connection relationship basically includes the information (check to variable (C2V) message) transmitted from the check node to the variable node, and the information (variable to check (V2C) message) transmitted from the variable node to the check node. For example, in multiple A state of convergence is reached after the iterative operation to obtain the codeword. How to decode the codewords according to the decoding schedule and the encoding relationship of the matrix H is a known technology, and will not be described in detail, and the present invention is not limited to the application of a specific decoding mechanism.
本发明包括提出在LDPC解码时,所需要的解码调度的规划,其中就本发明所提出的特征,以较广泛的角度来看,在低密度奇偶校验码的解码过程可以包含多次的解码尝试,包含相邻二次的解码尝试使用不同的解码调度,以获得更快的收敛速度,或是在相同的迭代次数限制内,得到更高的吞吐率。The present invention includes proposing the planning of the decoding schedule required for LDPC decoding. Regarding the features proposed by the present invention, from a broader perspective, the decoding process of the low-density parity-check code can include multiple decodings. Attempts, including adjacent two decoding attempts, use different decoding schedules to obtain faster convergence speed, or within the same iteration limit, to obtain higher throughput.
本发明所采用的解码方式,例如包含传统的层式可靠度传播(layeredbelief propagation,LBP)运算或是垂直式可靠度传播(shuffled beliefpropagation,SBP)运算。图3是依照本发明一实施例,低密度奇偶校验矩阵的一般性规划示意图。矩阵H例如以r1至r6代表一列的顺序,以c1至c8代表一行的顺序。可靠度传播方式是,是将奇偶校验矩阵H分为多个层。依照层的顺序传递解码讯息。每一个层可以包含一至多个行。也就是LBP是依照奇偶校验矩阵中的行的顺序传递解码讯息。而垂直式可靠度传播(SBP)是依照奇偶校验矩阵中列的顺序传递解码讯息。The decoding methods adopted in the present invention include, for example, traditional layered belief propagation (LBP) operations or vertical shuffled belief propagation (SBP) operations. FIG. 3 is a schematic diagram of a general planning of an LDPC matrix according to an embodiment of the present invention. In the matrix H, for example, r1 to r6 represent the sequence of a column, and c1 to c8 represent the sequence of a row. The reliability propagation method is to divide the parity check matrix H into multiple layers. Decoded messages are delivered in layer order. Each layer can contain one or more rows. That is, the LBP transmits the decoded information according to the order of the rows in the parity check matrix. The Vertical Reliability Propagation (SBP) transmits the decoded information in the order of the columns in the parity check matrix.
对于一矩阵H,依照码率(code rate)R的大小,会将矩阵H分为多个对应不同码率的次矩阵,例如对应码率R1、R2、R3分为三个次矩阵H1、H2、H3。关于码率的定义,对于以n位来编码k位的矩阵H(n,k),此矩阵的码率值就是k/n。For a matrix H, according to the size of the code rate (code rate) R, the matrix H will be divided into multiple sub-matrices corresponding to different code rates, for example, the corresponding code rates R1, R2, and R3 are divided into three sub-matrices H1, H2 , H3. Regarding the definition of the code rate, for a matrix H(n, k) that encodes k bits with n bits, the code rate value of this matrix is k/n.
如图3所示的一个码率相容LDPC码的LDPC矩阵H的范例。H1,H2,H3的码率分别为R1,R2,R3,且R1>R2>R3。H3包含8个列和6个行,H1包含4个列和2个行。若采用LBP的调度,则在解H1时的解码调度可以是{r1,r2,r1,r2…},解H3时的解码调度可以是{r1,r2,r3,r4,r5,r6,r1,r2…},重复多次迭代。若采用SBP的调度,则在解H1时的解码调度可以是{c1,c2,c3,c4,c1,c2…},解H3时的解码调度可以是{c1,c2,c3,c4,c5,c6,c7,c8,c1,c2…},一样重复多次迭代。An example of an LDPC matrix H of a rate-compatible LDPC code is shown in FIG. 3 . The code rates of H1, H2, and H3 are R1, R2, and R3 respectively, and R1>R2>R3. H3 contains 8 columns and 6 rows, H1 contains 4 columns and 2 rows. If LBP scheduling is used, the decoding schedule when solving H1 can be {r1, r2, r1, r2...}, and the decoding schedule when solving H3 can be {r1, r2, r3, r4, r5, r6, r1, r2...}, repeated for multiple iterations. If the SBP scheduling is used, the decoding schedule when solving H1 can be {c1, c2, c3, c4, c1, c2...}, and the decoding schedule when solving H3 can be {c1, c2, c3, c4, c5, c6, c7, c8, c1, c2...}, repeat the same for multiple iterations.
在解码时,一般会先采用较高码率的次矩阵,例如矩阵H1。如果此矩阵H1的数据无法解出,则会再采用较低码率的矩阵。一般而言,如果信号的噪声较低,其表示可以容易辨识其所携带的数据,因此采用高码率的此矩阵H1就足以解出码字,但是多次的迭代运算仍是必要。如果是依照传统方式,每次解码尝试(decoding attempt)都会采用相同的调度。例如第一次解码尝试以解码采用LBP的调度,则其后的每次解码尝试也都将采用LBP。During decoding, generally, a sub-matrix with a higher code rate, such as matrix H1, is used first. If the data of the matrix H1 cannot be solved, a matrix with a lower code rate will be used. Generally speaking, if the noise of the signal is low, it means that the data it carries can be easily identified, so using the matrix H1 with a high code rate is enough to decode the codeword, but multiple iterative operations are still necessary. According to the traditional method, each decoding attempt (decoding attempt) will use the same schedule. For example, the first decoding attempt to decode a schedule using LBP, each subsequent decoding attempt will also use LBP.
然而本发明提出,在不同的解码尝试中,可以采用不同的解码调度。例如在解H1时解码的顺序是采用LBP的{r1,r2,r1,r2…},而解H3时则切换采用SBP的顺序可以是{c1,c2,c3,c4,c5,c6,c7,c8,c1,c2…}。换句话说,依据低密度奇偶校验矩阵,在预定的解码尝试次数内进行多次解码尝试。在这多次解码尝试中至少包含使用第一解码调度的第一解码尝试,以及使用第二解码调度的第二解码尝试,其中第二解码尝试相邻接续于第一解码尝试,且第一解码调度不包含在第二解码调度中。However, the present invention proposes that in different decoding attempts, different decoding schedules may be employed. For example, when solving H1, the decoding order is {r1, r2, r1, r2...} of LBP, while when solving H3, the order of switching and using SBP can be {c1, c2, c3, c4, c5, c6, c7, c8, c1, c2...}. In other words, multiple decoding attempts are performed within a predetermined number of decoding attempts according to the LDPC matrix. The multiple decoding attempts include at least a first decoding attempt using a first decoding schedule, and a second decoding attempt using a second decoding schedule, wherein the second decoding attempt is adjacent to the first decoding attempt, and the first decoding The schedule is not included in the second decoding schedule.
然而,本发明的解码尝试不限于降低码率。例如也可以在相同码率相邻的迭代运算改变解码调度。进一步以另一实施例来说明,解码顺序的改变并不限定在LBP与SBP的切换。若LBP中解层的顺序改变,如原本因为解H2时采用{r1,r2,r3,r4,r1,r2…},则解H3时传统方式预期是{r1,r2,r3,r4,r5,r6,r1,r2…}。然而,依照本发明的方式,例如是改变为{r3,r2,r1,r4,r6,r5,r3,r2…}的调度,这也是符合本发明解码顺序改变的方式。However, the decoding attempts of the present invention are not limited to reducing code rates. For example, it is also possible to change the decoding schedule between adjacent iterative operations at the same code rate. To further illustrate with another embodiment, the change of the decoding order is not limited to the switching between LBP and SBP. If the order of solving layers in LBP is changed, for example, because {r1, r2, r3, r4, r1, r2...} is used to solve H2, then the traditional way to solve H3 is expected to be {r1, r2, r3, r4, r5, r6, r1, r2...}. However, according to the method of the present invention, for example, the scheduling is changed to {r3, r2, r1, r4, r6, r5, r3, r2...}, which is also the method of changing the decoding order in accordance with the present invention.
再从较广义的实施例来描述,一个码率相容低密度校验码的解码过程中,可能包含多次的解码尝试。每次解码尝试可以使用特定的解码调度。例如S1,S2,…Sk可以分别表示第一次,第二次…第k次解码尝试所使用的解码调度。例如使用LBP时,Sk中包含的就是校验矩阵中行的顺序。例如图3的例子中,S1={r1,r2},S2={r1,r2,r3,r4}。而若采用SBP,则S1={c1,c2,c3,c4}。传统的解码过程中,通常被前次的解码调度顺序会包含在下次的解码顺序中,像以LBP解图3的实施例时,S2={S1,r3,r4},其中S1代表{r1,r2}。较通用的表示方式,传统的解码调度可写为S(k-1)∈Sk。但是,本发明提出的方法,在下次的解码调度中不包含前次的解码调度顺序,也就是 Described from a broader embodiment, the decoding process of a rate-compatible LDPC may include multiple decoding attempts. Each decoding attempt may use a specific decoding schedule. For example, S1, S2,...Sk may respectively represent the decoding schedule used for the first, second...kth decoding attempt. For example, when using LBP, what is included in Sk is the sequence of rows in the parity check matrix. For example, in the example of FIG. 3 , S1={r1, r2}, S2={r1, r2, r3, r4}. And if SBP is adopted, then S1={c1, c2, c3, c4}. In the traditional decoding process, usually the previous decoding scheduling sequence will be included in the next decoding sequence, such as when using LBP to solve the embodiment of Figure 3, S2={S1, r3, r4}, where S1 represents {r1, r2}. In a more general representation, the traditional decoding schedule can be written as S(k-1)∈Sk. However, the method proposed by the present invention does not include the previous decoding scheduling order in the next decoding scheduling, that is,
本发明的解码调度的一实施例,在相同的概念下,是可以随机变化。然而,解码调度的决定也可以利用其他的估计机制来寻找较佳的解码调度。例如由发明人发表的可变解码调度方法“H.-C.Lee and Y.-L.Ueng,“IncrementalDecoding Schedules for Puncture-based Rate-compatible LDPC codes,”acceptedby IEEE VTC2016-Spring”,其中每次解码尝试所使用的顺序都是由文献“H.-C.Lee and Y.-L.Ueng,“LDPC decoding scheduling for faster convergenceand lower error floor,”IEEE Trans.on Commun.,vol.62,no.9,pp.3104-3113,Sept.2014”所提出的使用最大互信息增加(maximum mutualinformation increase,M2I2)算法所设计。这种方式也是符合前述的原则。关于最大互信息增加(M2I2)算法的详细内容,可以参考文献的描述,不在此详述。An embodiment of the decoding schedule of the present invention can be changed randomly under the same concept. However, the decision on the decoding schedule can also use other estimation mechanisms to find a better decoding schedule. For example, the variable decoding scheduling method published by the inventors "H.-C.Lee and Y.-L.Ueng, "IncrementalDecoding Schedules for Puncture-based Rate-compatible LDPC codes," accepted by IEEE VTC2016-Spring", where each The order used for the decoding attempts is given by the literature "H.-C.Lee and Y.-L.Ueng, "LDPC decoding scheduling for faster convergence and lower error floor," IEEE Trans. on Commun., vol.62, no. 9, pp.3104-3113, Sept.2014" proposed using the maximum mutual information increase (maximum mutual information increase, M 2 I 2 ) algorithm design. This method is also consistent with the aforementioned the rules. For the details of the maximum mutual information increase (M 2 I 2 ) algorithm, reference may be made to the description in the literature, which will not be detailed here.
然而在此要说明的是,在M2I2算法中,信噪比(S/N ratio,SNR)是一个控制参数,可以改变所估计的不同解码调度。此信噪比例如是通道环境所提供的信噪比,以S1解码尝试而言,就是Es1/N0,Es1为能量,N0为噪声。However, it should be noted here that in the M 2 I 2 algorithm, the signal-to-noise ratio (S/N ratio, SNR) is a control parameter, which can change the estimated different decoding schedules. The signal-to-noise ratio is, for example, the signal-to-noise ratio provided by the channel environment. For the S1 decoding attempt, it is E s1 /N 0 , where E s1 is energy and N 0 is noise.
另外在不同解码尝试中,如果采用不同码率,由于其信噪比(SNR)的条件自然会改变,在M2I2的运算下,自然会产生不同的解码调度,不会包含在前估计的解码调度,符合本发明的技术特征。In addition, in different decoding attempts, if different code rates are used, the condition of the signal-to-noise ratio (SNR) will naturally change. Under the operation of M 2 I 2 , different decoding schedules will naturally be generated, which will not be included in the previous estimation The decoding schedule, consistent with the present invention technical characteristics.
进一步过模拟结果可知,使用的方式进行码率相容低密度校验码的解码,可以在有限的迭代次数内,明显增加吞吐率。每次解码尝试中,解码调度顺序的设计可以使用M2I2算法,但也能使用其他设计方法,甚至可随机安排。只要都是在本发明要保护的广义范围内。Further simulation results show that the method used to decode the rate-compatible LDPC can significantly increase the throughput within a limited number of iterations. In each decoding attempt, the M 2 I 2 algorithm can be used to design the decoding scheduling order, but other design methods can also be used, and even random arrangements can be used. if only All are within the broad scope to be protected by the present invention.
因此,本发明包相连续的前后二个解码,会尝试使用不同的解码顺序。这个特征可以多种方式来达成,例如若第k次解码顺序以Sk表示,则 又例如,使用LBP时,Sk中包含的就是第k次解码尝试所使用的校验矩阵中行的顺序。又例如使用SBP的方式时,Sk中包含的就是第k次解码尝试所使用的校验矩阵中列的顺序。又例如解码的顺序的设计方法不受限制,也可以随机挑选。更例如以M2I2算法设计的结果,其只要就包含在本提案的保护范围。又例如更可以配合采用渐增解码调度(IncrementalDecoding Schedules),得到更有效率的解码调度。Therefore, the present invention tries to use different decoding sequences for the two consecutive decodings. This feature can be achieved in many ways, for example, if the k-th decoding sequence is denoted by Sk, then For another example, when using LBP, what Sk contains is the sequence of rows in the parity check matrix used for the kth decoding attempt. For another example, when using the SBP method, what Sk contains is the sequence of columns in the parity check matrix used for the kth decoding attempt. For another example, the design method of the order of decoding is not limited, and can also be selected randomly. For example, the result of M 2 I 2 algorithm design, as long as It is included in the scope of protection of this proposal. For another example, it can be combined with incremental decoding schedules (Incremental Decoding Schedules) to obtain more efficient decoding schedules.
图4是依照本发明一实施例,低密度奇偶校验解码所采M2I2的解码调度,每次重置的机制示意图。参阅图4,依照码率R1、R2、R3,以M2I2算法所建构的三个解码尝试S1、S2、S3。对于每一次的码率R1、R2、R3,都会先重置初始数据。因此,针对每一次码率都是重新开始,因此对于三个解码尝试S1、S2、S3的估计都是独立进行,其间没有关联。也就是,每次的运算都是以重置归零的初始状态开始运算。本实施例会较为耗时。FIG. 4 is a schematic diagram of the decoding schedule of M 2 I 2 adopted in LDPC decoding and the mechanism of each reset according to an embodiment of the present invention. Referring to FIG. 4 , three decoding attempts S1 , S2 , S3 constructed by the M 2 I 2 algorithm according to the code rates R1 , R2 , R3 . For each code rate R1, R2, R3, the initial data will be reset first. Therefore, each code rate is restarted, so the estimation of the three decoding attempts S1 , S2 , S3 is performed independently without correlation. That is, each operation starts with the initial state reset to zero. This embodiment will be more time-consuming.
图5是依照本发明一实施例,低密度奇偶校验解码所采M2I2的解码调度,采用渐增解码调度机制示意图。参阅图5,依照码率R1、R2、R3,以M2I2算法所建构的三个解码尝试S1、S2、S3。本实施例中,例如对于码率R2、R3的运算,对于当前的一个码率,虽然其结果可能无法得到有效的解码调度,但是都会保留本次码率的运算所得到的数据,以供在下一个码率的估算时当作初始使数据。以中间的情形为例,以码率R1估算解码尝试S1,由于其收敛值小于1,无法达到可以成功解码,而改以码率R2进行估算。此时,虽然解码尝试S1的结果是无法得到有效解码,但是运算的结果,会被解码尝试S2当作初始条件,因此会加快收敛速率。关于图4与图5的效果差异,在前述的文献也较详细描述,在此不予详述。FIG. 5 is a schematic diagram of an incremental decoding scheduling mechanism for M 2 I 2 decoding scheduling adopted in LDPC decoding according to an embodiment of the present invention. Referring to FIG. 5 , three decoding attempts S1 , S2 , S3 constructed by the M 2 I 2 algorithm according to the code rates R1 , R2 , R3 . In this embodiment, for example, for the operation of the code rate R2 and R3, although the result may not be able to obtain an effective decoding schedule for the current code rate, the data obtained by the operation of this code rate will be retained for the following A code rate estimate is used as initial data. Taking the intermediate situation as an example, the decoding attempt S1 is estimated with the code rate R1. Since its convergence value is less than 1, successful decoding cannot be achieved, and the code rate R2 is used for estimation. At this time, although the result of the decoding attempt S1 cannot be effectively decoded, the result of the operation will be used as the initial condition by the decoding attempt S2, so the convergence rate will be accelerated. The differences in effects between FIG. 4 and FIG. 5 are also described in detail in the aforementioned documents, and will not be described in detail here.
图6是依照本发明一实施例,低密度奇偶校验码的解码方法的流程示意图。参阅图6,依据前面本发明的描述,一低密度奇偶校验码的解码方法包括步骤S100,会接接收依照低密度奇偶校验矩阵编码的码字的输入信号。步骤S102依照所规划的解码调度,进行码字的解码。依据低密度奇偶校验矩阵,在预定的解码尝试次数内进行多次解码尝试,该多次解码尝试中至少包含使用第一解码调度的第一解码尝试,以及使用第二解码调度的第二解码尝试,其中该第二解码尝试相邻接续于该第一解码尝试,该第一解码调度不包含在该第二解码调度中。FIG. 6 is a schematic flow chart of a decoding method for an LDPC code according to an embodiment of the present invention. Referring to FIG. 6 , according to the above description of the present invention, a decoding method of an LDPC code includes step S100 of receiving an input signal of a code word encoded according to an LDPC matrix. Step S102 decodes the codeword according to the planned decoding schedule. According to the low-density parity check matrix, multiple decoding attempts are performed within a predetermined number of decoding attempts, and the multiple decoding attempts include at least the first decoding attempt using the first decoding schedule, and the second decoding attempt using the second decoding schedule In an attempt, wherein the second decoding attempt is adjacent to the first decoding attempt, the first decoding schedule is not included in the second decoding schedule.
图7是依照本发明一实施例,低密度奇偶校验码的解码器的架构示意图。参阅图7,依据前面本发明的描述,一低密度奇偶校验码的解码器100,用以将输入码字信号依据预定的低密度奇偶校验矩阵解出正确的码字后输出码字。解码器100包括:一解码单元102,被配置以将输入信号依据预定的低密度奇偶校验矩阵H解出正确的码字,其中依据该低密度奇偶校验矩阵,在预定的解码尝试次数内进行多次解码尝试,该多次解码尝试中至少包含使用第一解码调度的第一解码尝试,以及使用第二解码调度的第二解码尝试,其中该第二解码尝试相邻接续于该第一解码尝试,该第一解码调度不包含在该第二解码调度中。一解码调度估计单元104,被配置以根据该低密度奇偶校验矩阵产生及存储多种不同的解码调度,以供该解码单元取得该第一解码调度与该第二解码顺。一存储单元106,用以存储由解码调度估计单元104所规划得到的解码调度,以供解码单元102使用于解码。FIG. 7 is a schematic diagram of an architecture of a decoder of an LDPC code according to an embodiment of the present invention. Referring to FIG. 7 , according to the above description of the present invention, a LDPC decoder 100 is used to decode the input codeword signal according to a predetermined LDPC matrix to obtain a correct codeword and then output the codeword. The decoder 100 includes: a decoding unit 102 configured to decode the input signal into a correct code word according to a predetermined low density parity check matrix H, wherein according to the low density parity check matrix, within a predetermined number of decoding attempts performing a plurality of decoding attempts, the plurality of decoding attempts including at least a first decoding attempt using a first decoding schedule and a second decoding attempt using a second decoding schedule, wherein the second decoding attempt is adjacent to the first decoding attempt For a decoding attempt, the first decoding schedule is not included in the second decoding schedule. A decoding schedule estimation unit 104 is configured to generate and store a plurality of different decoding schedules according to the LDPC matrix, so that the decoding unit can obtain the first decoding schedule and the second decoding sequence. A storage unit 106 is configured to store the decoding schedule planned by the decoding schedule estimation unit 104 for use by the decoding unit 102 in decoding.
本发明提出低密度奇偶校验码的解码方法与解码器,奇包含相连续的前后二个解码中,会尝试使用不同的解码调度进行解码,以达到更有效率的解码运算。至于解码调度的规划,更可以例如利用M2I2当方式进行较有效率的规划,但是本发明不限于利用M2I2运算来寻找不同的解码调度。本发明的解码调度的规划只要有的关系即可,本发明不限制采用何种机制来寻找解码调度。The present invention proposes a decoding method and a decoder for low-density parity-check codes. During two consecutive decodings with odd inclusions, different decoding schedules will be tried for decoding to achieve more efficient decoding operations. As for the planning of the decoding schedule, for example, the M 2 I 2 method can be used for more efficient planning, but the present invention is not limited to using the M 2 I 2 operation to find different decoding schedules. As long as the decoding scheduling plan of the present invention has The relationship between , and the present invention does not limit which mechanism is used to find the decoding schedule.
虽然本发明已以实施例公开如上,然其并非用以限定本发明,本领域技术人员在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视所附权利要求书界定范围为准。Although the present invention has been disclosed as above with the embodiments, it is not intended to limit the present invention. Those skilled in the art can make some changes and modifications without departing from the spirit and scope of the present invention, so the protection scope of the present invention The scope defined by the appended claims shall prevail.
Claims (16)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610313421.9A CN107370554A (en) | 2016-05-12 | 2016-05-12 | Decoding method and decoder for low density parity check code |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610313421.9A CN107370554A (en) | 2016-05-12 | 2016-05-12 | Decoding method and decoder for low density parity check code |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN107370554A true CN107370554A (en) | 2017-11-21 |
Family
ID=60304042
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201610313421.9A Pending CN107370554A (en) | 2016-05-12 | 2016-05-12 | Decoding method and decoder for low density parity check code |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN107370554A (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1197558A (en) * | 1995-09-22 | 1998-10-28 | 太平洋通讯科学有限公司 | Cellular communication system with multiple code rates |
| US20090080557A1 (en) * | 2007-09-20 | 2009-03-26 | Leif Wilhelmsson | Quality of Service Based Antenna Mapping for Multiple-Input Multiple-Output Communication Systems |
| CN101627595A (en) * | 2006-10-02 | 2010-01-13 | Lg电子株式会社 | Method for transmitting downlink control signal |
| CN101640584A (en) * | 2009-06-23 | 2010-02-03 | 北京交通大学 | Down-link MIMO-LDPC modulating and demodulating system |
| CN104170301A (en) * | 2012-03-20 | 2014-11-26 | 苹果公司 | Adaptive partial packet decoding |
-
2016
- 2016-05-12 CN CN201610313421.9A patent/CN107370554A/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1197558A (en) * | 1995-09-22 | 1998-10-28 | 太平洋通讯科学有限公司 | Cellular communication system with multiple code rates |
| CN101627595A (en) * | 2006-10-02 | 2010-01-13 | Lg电子株式会社 | Method for transmitting downlink control signal |
| US20090080557A1 (en) * | 2007-09-20 | 2009-03-26 | Leif Wilhelmsson | Quality of Service Based Antenna Mapping for Multiple-Input Multiple-Output Communication Systems |
| CN101640584A (en) * | 2009-06-23 | 2010-02-03 | 北京交通大学 | Down-link MIMO-LDPC modulating and demodulating system |
| CN104170301A (en) * | 2012-03-20 | 2014-11-26 | 苹果公司 | Adaptive partial packet decoding |
Non-Patent Citations (1)
| Title |
|---|
| HUANG-CHANG LEE AND YEONG-LUH UENG: "LDPC Decoding Scheduling for Faster Convergence and Lower Error Floor", 《IEEE TRANSACTIONS ON COMMUNICATIONS》 * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Bae et al. | An overview of channel coding for 5G NR cellular communications | |
| JP4602418B2 (en) | Parity check matrix generation method, encoding method, decoding method, communication apparatus, encoder, and decoder | |
| US8601352B1 (en) | Efficient LDPC codes | |
| CN110572163B (en) | Method and apparatus for encoding and decoding LDPC codes | |
| JP5506879B2 (en) | Channel decoding apparatus and method for communication system using low density parity check code | |
| US8869003B2 (en) | Method, apparatus, computer program product and device providing semi-parallel low density parity check decoding using a block structured parity check matrix | |
| US8392787B2 (en) | Selective merge and partial reuse LDPC (Low Density Parity Check) code construction for limited number of layers Belief Propagation (BP) decoding | |
| CN112005499B (en) | LDPC code decoding method and device | |
| WO2018128560A1 (en) | Efficiently decodable qc-ldpc code | |
| JP2008035524A (en) | Apparatus and method for decoding block of symbols using iterative belief propagation | |
| US8145986B2 (en) | Multi-CSI (Cyclic Shifted Identity) sub-matrix based LDPC (Low Density Parity Check) codes | |
| KR20200127783A (en) | Appartus and method for decoding of low-density parity check codes in wireles communication system | |
| KR101481431B1 (en) | A method for rearranging a low-density parity check matrix and a device using the same | |
| KR20090093778A (en) | Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes | |
| KR101503653B1 (en) | Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes | |
| TWI583141B (en) | Decoding method and decoder for low density parity check code | |
| CN102811064B (en) | Method for constructing multi-rate low density parity check (LDPC) code | |
| CN107370554A (en) | Decoding method and decoder for low density parity check code | |
| KR101192920B1 (en) | Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes | |
| EP3526899A1 (en) | Decoding of low-density parity-check convolutional turbo codes | |
| TW201713048A (en) | Decoding algorithm with enhanced parity check matrix and re-encoding scheme for LDPC code | |
| CN116318181A (en) | Polarization code decoding method and device | |
| KR100999272B1 (en) | Low Density Parity Check Code Encoding Device and Its Method |
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 | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20171121 |
|
| WD01 | Invention patent application deemed withdrawn after publication |