Encoding method, decoding method, communication device, and computer program

By employing basis matrices with all-zero square and cyclic shift elements, the method addresses the error floor and throughput limitations of LDPC codes, enhancing their performance in wireless communication systems for reliable data transmission.

JP2025501051APending Publication Date: 2025-01-17ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024526944
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2021-12-30
Filing Date
2022-12-29
Publication Date
2025-01-17

AI Technical Summary

Technical Problem

Current LDPC codes used in wireless communication systems suffer from error floors and limited decoding throughput, hindering their performance in ultra-reliable transmissions and limiting the maximum parallelism and decoding speed.

Method used

The proposed method involves determining a basis matrix for LDPC encoding and decoding using a set of matrices containing elements indicating all-zero square matrices and cyclic shifts of the identity matrix, with subsets having the same encoding code rate, to improve error floor performance and decoding speed.

Benefits of technology

This approach enhances the error floor performance and decoding speed of LDPC codes, optimizing their performance across various coding rates, thereby improving the reliability and efficiency of data transmission in wireless communication systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025501051000001_ABST
    Figure 2025501051000001_ABST
Patent Text Reader

Abstract

The present application relates to an encoding method, a decoding method, a communication device, and a storage medium. The encoding method applied to a first transmission node includes: determining a basis matrix for low density parity check (LDPC) coding from a preset basis matrix set; LDPC-coding raw data according to the basis matrix to obtain coded data; and transmitting the coded data to a second transmission node, where the basis matrix includes two elements, an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix, the basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices of each of the basis matrix subsets respectively have the same coding code rate.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to the field of communications, in particular to an encoding method, a decoding method, a communication device, and Computer Programs Regarding. [Background technology]

[0002] With the rapid development of technologies such as big data, cloud computing, and TSN (short for "Time-Sensitive Networking"), the user equipment in wireless communication networks Number of With the explosive growth of wireless communication networks, wireless communication networks carry a variety of applications and large amounts of data, which puts forward high requirements for data transmission speed, throughput, data error correction, etc. In wireless communication systems, the transmitting end channel-encodes the data to be transmitted to obtain a coded bit sequence, and then maps the coded bit sequence into a constellation modulation symbol and transmits it to the receiving end. In the data transmission channel, data transmission will be distorted due to the influence of factors such as multipath, movement, noise, and interference. The receiving end needs to channel-decode the received constellation modulation symbol to restore the transmitted data. In the process of channel coding, some redundant information is added to the transmitted data sequence, so that the receiving end can check and restore the original data accordingly.

[0003] Low Density Parity Check (LDPC) codes are linear block codes defined using a sparse parity check matrix or bipartite graph. The parity check matrix is ​​very sparse, which can reduce the decoding complexity and achieve high decoding parallelism and large decoding throughput, so parity check matrices are currently used in many communication standards. However, currently used LDPC codes have problems such as error floors, which limit their use in ultra-reliable transmission and limit the maximum parallelism and decoding throughput that can be adopted for hierarchical decoding. Summary of the Invention [Means for solving the problem]

[0004] In an embodiment of the present disclosure, a coding method applied to a first transmission node is provided, the coding method comprising: determining a basis matrix for low-density parity-check (LDPC) coding from a preset set of basis matrices; LDPC encoding raw data based on the basis matrix to obtain encoded data; transmitting the encoded data to a second transmission node; The basis matrix includes two types of elements, an element representing an all-zero square matrix and an element representing a circular shift of an identity matrix, and the basis matrix set includes at least two non-null basis matrix subsets; Each of the at least two non-null basis matrix subsets All the base matrices in the base matrix subset each have the same coding code rate.

[0005] In an embodiment of the present disclosure, a decoding method applied to a second transmission node is provided, the decoding method comprising: receiving encoded data transmitted by a first transmission node; determining a basis matrix for low density parity check (LDPC) decoding from a preset set of basis matrices; and performing LDPC decoding on the encoded data based on the basis matrix to obtain raw data; The basis matrix includes two types of elements, that is, elements representing all-zero square matrices and elements representing circular shifts of identity matrices, and the basis matrix set includes at least two non-null basis matrix subsets; Each of the at least two non-null basis matrix subsets All the base matrices in the base matrix subset each have the same coding code rate.

[0006] In an embodiment of the present disclosure, a communication device is provided, the communication device comprising a communication module, a memory, and one or more processors, The communication module is configured to perform communication interactions between each of the transmission nodes; the memory is configured to store one or more programs; The one or more programs, when executed by the one or more processors, cause the one or more processors to implement a method according to any of the above-mentioned embodiments.

[0007] In an embodiment of the present disclosure, a storage medium is provided, which stores a computer program, which, when executed by a processor, implements the method according to any of the above embodiments. [Brief description of the drawings]

[0008] [Figure 1] 4 is a flowchart of an encoding method according to an embodiment of the present invention. [Diagram 2] 4 is a flowchart of a decoding method according to an embodiment of the present invention. [Diagram 3] FIG. 2 is a schematic diagram of an encoding / decoding flow according to an embodiment of the present disclosure. [Figure 4] FIG. 2 is a schematic diagram showing a first type basis matrix according to an embodiment of the present disclosure. [Diagram 5] FIG. 13 is a schematic diagram showing a second type basis matrix according to an embodiment of the present disclosure. [Figure 6] FIG. 11 is a comparative analysis diagram of LDPC performance according to an embodiment of the present disclosure. [Figure 7] FIG. 11 is another LDPC performance comparison analysis diagram according to an embodiment of the present disclosure. [Figure 8] 1 is a configuration block diagram of an encoding / decoding system according to an embodiment of the present invention. [Figure 9] FIG. 2 is a block diagram illustrating a configuration of an encoding device according to an embodiment of the present disclosure. [Figure 10] FIG. 2 is a block diagram illustrating a configuration of a decoding device according to an embodiment of the present disclosure. [Figure 11] 1 is a schematic configuration diagram of a communication device according to an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] In a digital communication system, the transmitting end obtains a coded bit sequence after channel coding the original information sequence, and then maps the coded bit sequence to obtain a constellation modulation symbol, and finally transmits the obtained constellation modulation symbol. In the channel, data transmission is distorted due to factors such as multipath, movement, noise, and interference. The receiving end first receives the constellation modulation symbol data after passing through the channel, and the modulation symbol data has already been distorted at this time, and needs to perform channel decoding to restore the original information sequence. Here, channel coding means forward error correction (FEC) coding, where some redundant information is added to the information sequence by forward error correction coding, and the receiving end can reliably restore the original information sequence according to the corresponding forward error correction code principle.

[0010] LDPC codes are coding methods for forward error correction coding. LDPC codes are linear block codes defined using a very sparse parity check matrix or bipartite graph. The parity check matrix is ​​very sparse, so low-complexity decoding can be achieved. The parity check matrix H of LDPC coding is a matrix with mb×z rows and nb×z columns, and each sub-matrix is ​​either a different power of the standard permutation matrix of z×z (a cyclic shift matrix corresponding to the identity matrix) or a z×z all-zero square matrix. The parity check matrix H has the following Equation 1.

[0011]

number

[0012]

number

[0013]

number

[0014]

number

[0015] z is the dimension number of the standard permutation matrix (sub-matrix), and z may be called lifting size, or magnification factor, or sub-matrix size. Correspondingly, in the base matrix, if all non-'-1' elements are replaced with '1' and all -1 elements are replaced with '0', a base graph of LDPC coding can be obtained. The base graph matrix of LDPC coding includes two elements, '0' and '1', where '0' is used to indicate that the corresponding index position is an all-zero square matrix, and '1' is used to indicate that the corresponding index position is a cyclic shift of an identity matrix (the magnitude of the cyclic shift is not indicated). Here, the base graph matrix can determine the decoding performance of LDPC coding and further determine the optimization of the routing network in the LDPC decoder, so that the design of the base graph matrix can improve the decoding performance of LDPC coding and the realization of the decoding hardware.

[0016] For example, one LDPC code basis matrix (2 rows and 4 columns) is expressed as the following formula 3, and the lifting size is equal to 4.

[0017]

number

[0018] The parity check matrix H is given by the following equation 4.

[0019]

number

[0020] The corresponding base graph matrix is ​​given by Equation 5 below.

[0021]

number

[0022] An LDPC code is a system code, i.e., an information sequence C and a check sequence W constitute an LDPC codeword [C, W]. The LDPC code information sequence C is determined and known, and the process of LDPC coding is the process of finding the check sequence W.

[0023]

number

[0024] First, the position of the element in the basis matrix that corresponds to the all-zero square matrix is ​​replaced with the all-zero square, and the position of the element that corresponds to the cyclic shift of the identity matrix is ​​replaced with the cyclic shift matrix of the identity matrix, thereby obtaining the LDPC code parity check matrix H, where the number of dimensions of the all-zero square matrix or the identity matrix is ​​equal to the lifting size z.

[0025] Then, the LDPC code parity check matrix H may be divided into two parts, namely, a system block Hc and a check block Hw, where H=[Hc,Hw], i.e., Hc is the previous kb × z column (dimensions are mb × z line and kb × z columns), and Hw is the last mb × z rows (dimensions are mb × z column and mb × z columns), where kb = nb - mb. The LDPC codeword satisfies the following Equation 6.

[0026]

number

[0027] Moreover, the following equation 7 is obtained.

[0028]

number

[0029] Finally, the LDPC code check bit sequence W is calculated according to the following Equation 8 to complete the LDPC coding.

[0030]

number

[0031] After obtaining the LDPC codeword [C, W], bit selection (or rate matching) may be performed from the LDPC codeword [C, W] based on a desired encoding code rate, and a transmission bit sequence of a corresponding length may be output. Since the LDPC code itself has parallel properties, parallel encoding or decoding with higher encoding or decoding throughput may be used for LDPC encoding or LDPC decoding.

[0032] In view of this, an embodiment of the present disclosure provides an LDPC data processing method for LDPC encoding and LDPC decoding, which can not only improve the error floor performance of LDPC encoding, but also improve the decoding speed of LDPC code.

[0033] In one embodiment, Figure 1 is a flow chart of an encoding method according to an embodiment of the present disclosure, which is applied to a first transmission node or communication device, where the first transmission node or communication device includes at least one of a mobile device, an access terminal, a user terminal, a user station, a user unit, a mobile station, a remote station, a remote terminal, a user agent, a user device, a user equipment, or other terminology. In addition, the first transmission node or communication device may include at least one of a base station (BS), an access point (AP) which may also be referred to as a node B, or a gNode B (generalized Node B), a Radio Network Controller (RNC), an evolved Node B (eNB), a base station controller (BSC), a base transceiver station (BTS), a transceiver function (TF), a wireless router, a wireless transceiver, a basic service set (BSS), an extended service set (ESS), a radio base station (RBS), and other terms.

[0034] Here, the first transmitting node or communication device may be a coding terminal. As shown in FIG. 1, this embodiment includes S110-S130.

[0035] S110, determining a basis matrix for LDPC coding from a preset basis matrix set.

[0036] S120, LDPC-encode the raw data according to the basis matrix to obtain encoded data.

[0037] S130, sending the encoded data to a second transmission node.

[0038] wherein the basis matrix includes at least two types of elements, that is, elements representing all-zero square matrices and elements representing cyclic shifts of identity matrices, and the basis matrix set includes at least two non-null basis matrix subsets; Each of the at least two non-null basis matrix subsets All the basis matrices in the base matrix subset have the same coding code rate.

[0039] In one embodiment, the encoding terminal determines a basis matrix for LDPC encoding from a preset basis matrix set, LDPC-encodes the original data according to the basis matrix, obtains encoded data, and sends the encoded data to the second transmission node, and performs LDPC encoding using the same encoding code rate by including an element indicating a completely zero square matrix or an element indicating a cyclic shift of an identity matrix, thereby improving the error floor performance of LDPC encoding and increasing the LDPC encoding speed.

[0040] In one embodiment, Each group the base matrix subset includes at least one of a first type basis matrix and a second type basis matrix;

[0041] Wherein, a sub-matrix consisting of the last M columns in a base graph matrix of the basis matrix of the first type basis matrix has a bidiagonal structure, where M is the number of rows of the basis matrix of the first type basis matrix and is a positive integer;

[0042] A submatrix consisting of the last P columns in a base graph matrix of a basis matrix of the second type basis matrix has a monodiagonal structure, where P is an integer greater than two.

[0043] In one embodiment, the first type basis matrix is ​​characterized in that a sub-matrix consisting of the last M columns of the base graph matrix has a bidiagonal structure, and the sub-matrix having the bidiagonal structure is characterized in that a matrix obtained by cyclically shifting the first unit matrix is ​​added to another unit matrix, and the maximum column weight in the sub-matrix is ​​an odd number greater than 2. In one embodiment, the second type basis matrix is ​​characterized in that a sub-matrix consisting of the last P columns of the base graph matrix has a single diagonal structure, and the sub-matrix having the single diagonal structure is characterized in that a sub-matrix consisting of the first MP rows is an all-zero matrix, and a sub-matrix consisting of the last P rows is an unit matrix. Here, P and M are positive integers, P is greater than 2, M is the number of rows of the base graph matrix, and M is an integer greater than P+2. Exemplarily, M is equal to P+4, P+5, P+6, or P+7.

[0044] In one embodiment, only first type basis matrices exist in the basis matrix subset whose encoding code rate is equal to or greater than a first encoding code rate threshold, there is at least one basis matrix subset whose encoding code rate is less than the first encoding code rate threshold, and there is no first type basis matrix in the basis matrix subset whose encoding code rate is less than the first encoding code rate threshold, where the first encoding code rate threshold is a positive real number less than 1.

[0045] In one embodiment, only first type basis matrices are present in the basis matrix subset where the encoding code rate is greater than or equal to a first encoding code rate threshold, and only second type basis matrices are present in the basis matrix subset where the encoding code rate is less than the first encoding code rate threshold, where the first encoding code rate threshold is a positive real number less than 1.

[0046] In one embodiment, only second type basis matrices exist in the basis matrix subset whose encoding code rate is less than or equal to a second encoding code rate threshold, there is at least one basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, and there is no second type basis matrix in the basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, where the second encoding code rate threshold is a positive real number less than 1.

[0047] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in the basis matrix subset in which the encoding code rate is equal to or greater than a third encoding code rate threshold, where the third encoding code rate threshold is a positive real number less than 1.

[0048] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in the basis matrix subset in which the encoding code rate is less than or equal to a fourth encoding code rate threshold, where the fourth encoding code rate threshold is a positive real number less than 1.

[0049] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is less than a fifth encoding code rate threshold and greater than a sixth encoding code rate threshold, where the sixth encoding code rate threshold is less than the fifth encoding code rate threshold, the fifth encoding code rate threshold is a positive real number less than 8 / 9, and the sixth encoding code rate threshold is greater than 1 / 3.

[0050] In one embodiment, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, and a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, where the seventh encoding code rate threshold is a positive real number less than 1.

[0051] In one embodiment, in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, only the first type basis matrix exists, and in any basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, the first type basis matrix and the second type basis matrix exist. Column exist simultaneously.

[0052] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, and a second type basis matrix exists in a basis matrix subset in which the encoding code rate is less than an eighth encoding code rate threshold, where the eighth encoding code rate threshold is a positive real number less than 1.

[0053] In one embodiment, in any basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously, and in any basis matrix subset in which the encoding code rate is less than the eighth encoding code rate threshold, only a second type basis matrix exists.

[0054] In one embodiment, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, and a second type basis matrix exists in the basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, where the ninth encoding code rate threshold is greater than the tenth encoding code rate threshold, and the ninth encoding code rate threshold and the tenth encoding code rate threshold are each positive real numbers less than 1.

[0055] In one embodiment, in any basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously in any basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, and in any basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, only a second type basis matrix exists.

[0056] In one embodiment, only first-type basis matrices exist in the basis matrix subset where the encoding code rate is equal to or greater than an eleventh encoding code rate threshold, and only second-type basis matrices exist in the basis matrix subset where the encoding code rate is equal to or less than a twelfth encoding code rate threshold, where the eleventh encoding code rate threshold and the twelfth encoding code rate threshold are both positive real numbers less than 1. In one embodiment, the eleventh encoding code rate threshold is greater than the twelfth encoding code rate threshold.

[0057] In one embodiment, the basis matrix set includes at least one basis matrix subset that simultaneously includes a first type basis matrix and a second type basis matrix.

[0058] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a first encoding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and at least one basis matrix subset for a second encoding code rate that includes only a first type basis matrix, where the first encoding code rate is smaller than the second encoding code rate.

[0059] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a third encoding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and at least one basis matrix subset for a fourth encoding code rate that only includes a second type basis matrix, where the third encoding code rate is greater than the fourth encoding code rate.

[0060] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a fifth encoding code rate that includes only first-type basis matrices, and at least one basis matrix subset for a sixth encoding code rate that includes only second-type basis matrices, where the fifth encoding code rate is greater than the sixth encoding code rate.

[0061] In one embodiment, the basis matrix subsets include at least one basis matrix subset having a coding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and the coding code rate includes any of 3 / 4, 2 / 3, 5 / 8, 3 / 5, 1 / 2, and 2 / 5.

[0062] In one embodiment, all of the basis matrix subsets corresponding to encoding code rates among the basis matrix subsets include both the first type basis matrix and the second type basis matrix.

[0063] In one embodiment, all of the basis matrices in each of the basis matrix subsets correspond to the same encoding code rate.

[0064] In one embodiment, FIG. 2 is a flow chart of a decoding method according to an embodiment of the present disclosure, which may be performed by a second transmitting node or communication device, including at least one of a mobile device, an access terminal, a user terminal, a user station, a user unit, a mobile station, a remote station, a remote terminal, a user agent, a user device, a user equipment, or other terminology. In addition, the second transmission node or communication device may include at least one of a base station (BS), an access point (AP) which may also be referred to as a node B, or a gNode B (generalized Node B), a Radio Network Controller (RNC), an evolved Node B (eNB), a base station controller (BSC), a base transceiver station (BTS), a transceiver function (TF), a wireless router, a wireless transceiver, a basic service set (BSS), an extended service set (ESS), a radio base station (RBS), and other terms.

[0065] Here, the second transmitting node or communication device may be a decoding terminal. As shown in Fig. 2, this embodiment includes S210-S230.

[0066] S210, receiving the encoded data transmitted by the first transmission node.

[0067] S220, determining a basis matrix for LDPC decoding from a preset basis matrix set.

[0068] S230, LDPC-decode the encoded data based on the basis matrix to obtain raw data.

[0069] wherein the basis matrix includes at least two types of elements, that is, elements representing all-zero square matrices and elements representing cyclic shifts of identity matrices, and the basis matrix set includes at least two non-null basis matrix subsets; Each of the at least two non-null basis matrix subsets All the basis matrices in the base matrix subset have the same coding code rate.

[0070] In one embodiment, the decoding terminal receives the encoded data transmitted by the first transmission node, determines a basis matrix for LDPC decoding from a preset basis matrix set, and LDPC-decodes the encoded data based on the basis matrix to obtain raw data. By including an element indicating an all-zero square matrix and an element indicating a cyclic shift of an identity matrix, the same encoding code rate is used for LDPC decoding, improving the error floor performance of LDPC encoding and increasing the LDPC decoding speed. In one embodiment, Each of the above groups The base matrix subset includes at least one of a basis matrix of one type of first type basis matrices and a basis matrix of one type of second type basis matrices.

[0071] Wherein, a sub-matrix consisting of the last M columns in a base graph matrix of the basis matrix of the first type basis matrix has a bidiagonal structure, where M is the number of rows of the basis matrix of the first type basis matrix and is a positive integer;

[0072] A submatrix consisting of the last P columns in a base graph matrix of a basis matrix of the second type basis matrix has a monodiagonal structure, where P is an integer greater than two.

[0073] In one embodiment, only first type basis matrices exist in the basis matrix subset whose encoding code rate is equal to or greater than a first encoding code rate threshold, there is at least one basis matrix subset whose encoding code rate is less than the first encoding code rate threshold, and there is no first type basis matrix in the basis matrix subset whose encoding code rate is less than the first encoding code rate threshold, where the first encoding code rate threshold is a positive real number less than 1.

[0074] In one embodiment, only first type basis matrices are present in the basis matrix subset where the encoding code rate is greater than or equal to a first encoding code rate threshold, and only second type basis matrices are present in the basis matrix subset where the encoding code rate is less than the first encoding code rate threshold, where the first encoding code rate threshold is a positive real number less than 1.

[0075] In one embodiment, only second type basis matrices exist in the basis matrix subset whose encoding code rate is less than or equal to a second encoding code rate threshold, there is at least one basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, and there is no second type basis matrix in the basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, where the second encoding code rate threshold is a positive real number less than 1.

[0076] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in the basis matrix subset in which the encoding code rate is equal to or greater than a third encoding code rate threshold, where the third encoding code rate threshold is a positive real number less than 1.

[0077] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in the basis matrix subset in which the encoding code rate is less than or equal to a fourth encoding code rate threshold, where the fourth encoding code rate threshold is a positive real number less than 1.

[0078] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is less than a fifth encoding code rate threshold and greater than a sixth encoding code rate threshold, where the sixth encoding code rate threshold is less than the fifth encoding code rate threshold, the fifth encoding code rate threshold is a positive real number less than 8 / 9, and the sixth encoding code rate threshold is greater than 1 / 3.

[0079] In one embodiment, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, and a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, where the seventh encoding code rate threshold is a positive real number less than 1.

[0080] In one embodiment, in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, only the first type basis matrix exists, and in any basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, the first type basis matrix and the second type basis matrix exist. Column exist simultaneously.

[0081] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, and a second type basis matrix exists in a basis matrix subset in which the encoding code rate is less than an eighth encoding code rate threshold, where the eighth encoding code rate threshold is a positive real number less than 1.

[0082] In one embodiment, in any basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously, and in any basis matrix subset in which the encoding code rate is less than the eighth encoding code rate threshold, only a second type basis matrix exists.

[0083] In one embodiment, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, and a second type basis matrix exists in the basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, where the ninth encoding code rate threshold is greater than the tenth encoding code rate threshold, and the ninth encoding code rate threshold and the tenth encoding code rate threshold are each positive real numbers less than 1.

[0084] In one embodiment, in any basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously in any basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, and in any basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, only a second type basis matrix exists.

[0085] In one embodiment, only first-type basis matrices exist in the basis matrix subset where the encoding code rate is equal to or greater than an eleventh encoding code rate threshold, and only second-type basis matrices exist in the basis matrix subset where the encoding code rate is equal to or less than a twelfth encoding code rate threshold, where the eleventh encoding code rate threshold and the twelfth encoding code rate threshold are both positive real numbers less than 1. In one embodiment, the eleventh encoding code rate threshold is greater than the twelfth encoding code rate threshold.

[0086] In an embodiment, the basis matrix set includes at least one basis matrix subset that simultaneously includes a first type basis matrix and a second type basis matrix.

[0087] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a first encoding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and at least one basis matrix subset for a second encoding code rate that includes only a first type basis matrix, where the first encoding code rate is smaller than the second encoding code rate.

[0088] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a third encoding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and at least one basis matrix subset for a fourth encoding code rate that only includes a second type basis matrix, where the third encoding code rate is greater than the fourth encoding code rate.

[0089] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a fifth encoding code rate that includes only first-type basis matrices, and at least one basis matrix subset for a sixth encoding code rate that includes only second-type basis matrices, where the fifth encoding code rate is greater than the sixth encoding code rate.

[0090] In one embodiment, the basis matrix subsets include at least one basis matrix subset having a coding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and the coding code rate includes any of 3 / 4, 2 / 3, 5 / 8, 3 / 5, 1 / 2, and 2 / 5.

[0091] In one embodiment, all of the basis matrix subsets corresponding to encoding code rates among the basis matrix subsets include both the first type basis matrix and the second type basis matrix.

[0092] In one embodiment, all of the basis matrices in each of the basis matrix subsets correspond to the same encoding code rate.

[0093] For an explanation of various parameters in the decoding method, please refer to the explanation in the encoding method in the above embodiment, and no further explanation will be given here.

[0094] In one embodiment, FIG. 3 is a flowchart of the encoding and decoding according to the embodiment of the present disclosure. As shown in FIG. 3, the process of the encoding terminal includes: determining a basis matrix for LDPC encoding from a basis matrix set, and LDPC-encoding original data based on the basis matrix; sending the encoded data to the decoding terminal; and the decoding terminal determining a basis matrix for LDPC decoding from a basis matrix set, and performing LDPC decoding based on the basis matrix. The encoding terminal and the decoding terminal may be simultaneously arranged in one transmission node or communication device to receive and decode encoded data from another transmission node or communication device. The transmission node or communication device may include only one of the encoding terminal and the decoding terminal.

[0095] In one embodiment, FIG. 4 is a schematic diagram of a sub-matrix having a bidiagonal structure according to an embodiment of the present disclosure. As shown in FIG. 4, a blank box indicates an element of an all-zero square matrix, i.e., corresponds to a "-1" element in a base matrix or corresponds to a "0" in a base graph matrix, and a filled box indicates an element of a cyclic shift of an identity matrix, i.e., corresponds to a non-"-1" element in a base matrix or corresponds to a "1" in a base graph matrix. In one embodiment, the sub-matrix having a bidiagonal structure is obtained by adding a matrix (404) in which one identity matrix is ​​right cyclically shifted by one bit to another identity matrix (402) to obtain a matrix (406), and changing the column weight of the first column (410) to 3, so that the final matrix (408) has a bidiagonal structure. Here, the dimension of the identity matrix is ​​equal to M, where M is an integer greater than 3. The dimension of the sub-matrix having a bidiagonal structure is M rows and M columns. Illustratively, the maximum column weight in the sub-matrix may be equal to 5, 7, 9, or 11.

[0096] As a specific example of a first type basis matrix, the basis matrix (4 rows and 11 columns) shown in the following formula 9 belongs to the first type basis matrix, and a submatrix consisting of the last 4 columns of a base graph matrix corresponding to the basis matrix (a base graph matrix obtained by arranging the “−1” elements in the basis matrix as “0” and the non-“−1” elements as “1”) has a bidiagonal structure, where 4 is the number of rows in the basis matrix.

[0097]

number

[0098] In one embodiment, FIG. 5 is a schematic diagram of a submatrix having a single diagonal structure according to an embodiment of the present disclosure. As shown in FIG. 5, a blank box corresponds to an element indicating an all-zero square matrix, i.e., a "-1" element in a base matrix or a "0" in a base graph matrix, and a black box corresponds to an element indicating a cyclic shift of an identity matrix, i.e., a non-"-1" element in a base matrix or a "1" in a base graph matrix. In one embodiment, the single diagonal structure submatrix has a submatrix consisting of the first MP rows of the single diagonal structure submatrix being a single zero matrix (502), and a submatrix consisting of the last P rows of the single diagonal structure submatrix being a unit matrix (504), where M is the number of rows of the single diagonal structure submatrix, and P is an integer greater than 2. The dimensions of the single diagonal structure submatrix are M rows and P columns.

[0099] As a specific example of the second type basis matrix, the basis matrix (14 rows and 21 columns) shown in the following formula 10 belongs to the second type basis matrix, and a submatrix (M=14 rows and P=9 columns) consisting of the last P=9 columns (the rightmost 9 columns) of a base graph matrix corresponding to the basis matrix (a base graph matrix obtained by arranging the "-1" elements in the base matrix as "0" and the non-"-1" elements as "1") has a single diagonal structure. Among the submatrix consisting of the last P=9 columns of the base graph matrix, the submatrix consisting of the first MP=5 rows is an all-zero matrix (an all-"-1" matrix when it corresponds to a basis matrix), and the submatrix consisting of the last P=9 rows is an identity matrix.

[0100]

number

[0101] In one embodiment, the encoding process in this embodiment includes the following steps.

[0102] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0103] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0104] Step 3: sending the encoded data to a second transmission node.

[0105] In one example, the basis matrix set includes seven non-null basis matrix subsets, and all basis matrices in each basis matrix subset have the same coding code rate. The coding code rates corresponding to the seven non-null subsets are 8 / 9, 5 / 6, 3 / 4, 2 / 3, 1 / 2, 2 / 5, and 1 / 3, respectively. The basis matrices corresponding to each non-null basis matrix subset are described as follows: A "0" in a basis matrix indicates that the corresponding index position is an all-zero square matrix, and a "1" indicates that the corresponding index position is a cyclic shift of an identity matrix.

[0106] Illustratively, the basis matrix subset corresponding to the coding code rate=8 / 9 includes only one base graph matrix (ie, base graph matrix 1) as follows:

[0107] The basic graph matrix 1 has a bidiagonal structure (the corresponding basis matrix is ​​a first type basis matrix) shown in the following formula 11.

[0108]

number

[0109] Illustratively, the basis matrix subset corresponding to the encoding code rate=5 / 6 includes one base graph matrix (ie, base graph matrix 2) as follows:

[0110] The basic graph matrix 2 has a bidiagonal structure (the corresponding basis matrix is ​​a first type basis matrix) shown in the following formula 12.

[0111]

number

[0112] Illustratively, the basis matrix subset corresponding to the coding code rate=3 / 4 includes one base graph matrix (base graph matrix 3) as follows:

[0113] The basic graph matrix 3 has a bidiagonal structure (the corresponding basis matrix is ​​a first type basis matrix) shown in the following equation 13.

[0114]

number

[0115] Illustratively, the basis matrix subset corresponding to the coding code rate=2 / 3 includes two base graph matrices (base graph matrix 4 and base graph matrix 5) as follows:

[0116] The basic graph matrix 4 has a bidiagonal structure (the corresponding basis matrix is ​​a first type basis matrix) shown in the following equation 14.

[0117]

number

[0118] The basic graph matrix 5 has a bidiagonal structure (the corresponding basis matrix is ​​a first type basis matrix) shown in the following formula 15.

[0119]

number

[0120] Illustratively, the base matrix subset corresponding to the coding rate=1 / 2 includes two base graph matrices (ie, base graph matrix 6 and base graph matrix 7) as follows:

[0121] The basic graph matrix 6 has a bidiagonal structure (the corresponding basis matrix is ​​a first type basis matrix) shown in the following formula 16.

[0122]

number

[0123] The basic graph matrix 7 has a monodiagonal structure (the corresponding basis matrix is ​​a second type basis matrix) shown in the following formula 17.

[0124]

number

[0125] Illustratively, the basis matrix subset corresponding to the encoding code rate=2 / 5 includes one base graph matrix (base graph matrix 8) as follows:

[0126] The basic graph matrix 8 has a monodiagonal structure (the corresponding basis matrix is ​​a second type basis matrix) shown in the following formula 18.

[0127]

number

[0128] Illustratively, the basis matrix subset corresponding to the coding code rate=1 / 3 includes one base graph matrix (ie, base graph matrix 9) as follows:

[0129] The basic graph matrix 9 has a monodiagonal structure (the corresponding basis matrix is ​​a second type basis matrix) shown in the following formula 19.

[0130]

number

[0131] That is, in this example, the fifth encoding code rate threshold is 2 / 3, and the sixth encoding code rate threshold is 2 / 5, and the basis matrix subset whose encoding code rate is smaller than the fifth encoding code rate threshold and larger than the sixth encoding code rate threshold simultaneously includes the first type basis matrix and the second type basis matrix.

[0132] FIG. 6 is a comparative analysis diagram of LDPC performance according to an embodiment of the present disclosure. FIG. 7 is a comparative analysis diagram of another LDPC performance according to an embodiment of the present disclosure. As shown in FIG. 6, the performance of LDPC coding using basic graph matrices with coding code rates of 2 / 3, 3 / 4, 5 / 6, and 8 / 9 is described. As shown in FIG. 7, the performance of LDPC coding using basic graph matrices with coding code rates of 1 / 3, 2 / 5, and 1 / 2 is described. Here, the solid line represents the performance of the LDPC code realized by using this scheme, and the dashed line represents the performance of the LDPC code of the 5G standard. As can be seen from FIG. 6 and FIG. 7, the performance of the LDPC code of this scheme is superior to the LDPC code of the 5G standard, and the performance of the newly designed LDPC code shows a very excellent block error rate (BLER) performance in terms of error floor performance and waterfall region performance.

[0133] In one embodiment, the basis matrices included in the basis matrix subset for different comparison relationships between the encoding code rate and the first encoding code rate threshold and different comparison relationships between the encoding code rate and the second encoding code rate threshold are described. The encoding process in this embodiment includes the following steps.

[0134] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0135] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0136] Step 3: sending the encoded data to a second transmission node.

[0137] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each basis matrix subset have the same coding code rate.

[0138] In one example, only first type basis matrices exist in the basis matrix subset in which the encoding code rate is equal to or greater than a first encoding code rate threshold, there is at least one basis matrix subset in which the encoding code rate is less than the first encoding code rate threshold, and there is no first type basis matrix in the basis matrix subset in which the encoding code rate is less than the first encoding code rate threshold, where the first encoding code rate threshold is a positive real number less than 1.

[0139] In one example, the first encoding code rate threshold is less than 5 / 6 and greater than 1 / 3.

[0140] In one example, the first encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0141] In one example, the first encoding code rate threshold is equal to 2 / 3. Here, the basis matrix set includes two non-null basis matrix subsets, and the corresponding encoding code rates are 2 / 3 and 1 / 3, respectively. Here, the base graph matrix with an encoding code rate of 2 / 3 is the base graph matrix 4 and the base graph matrix 5 with an encoding code rate of 2 / 3 in the above embodiment, and the base graph matrix with an encoding code rate of 1 / 3 is the base graph matrix 9 with an encoding code rate of 2 / 3 in the above embodiment. The first encoding code rate threshold may be equal to other values, and examples will not be repeated here.

[0142] In one example, only second type basis matrices exist in the basis matrix subset whose encoding code rate is less than or equal to a second encoding code rate threshold, there is at least one basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, and there is no second type basis matrix in the basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, where the second encoding code rate threshold is a positive real number less than 1.

[0143] In one example, the second encoding code rate threshold is less than 5 / 6 and greater than 1 / 3.

[0144] In one example, the second encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0145] In one example, the second encoding code rate threshold is equal to 2 / 5, and in this example, the basis matrix set includes three non-null basis matrix subsets, whose corresponding encoding code rates are 5 / 6, 2 / 5, and 1 / 3, respectively. Here, the base graph matrix with an encoding code rate of 5 / 6 is the base graph matrix 2 with an encoding code rate of 5 / 6 in the above embodiment, the base graph matrix with an encoding code rate of 2 / 5 is the base graph matrix 8 with an encoding code rate of 2 / 5 in the above embodiment, and the base graph matrix with an encoding code rate of 1 / 3 is the base graph matrix 9 with an encoding code rate of 1 / 3 in the above embodiment. The second encoding code rate threshold may be equal to other values, and examples will not be repeated here.

[0146] In one example, the first encoding code rate threshold is greater than the second encoding code rate threshold.

[0147] In one embodiment, the basis matrices included in the basis matrix subset for different comparison relationships between the encoding code rate and the third encoding code rate threshold and different contrast relationships between the encoding code rate and the fourth encoding code rate threshold are described. The encoding process in this embodiment includes the following steps.

[0148] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0149] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0150] Step 3: sending the encoded data to a second transmission node.

[0151] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each basis matrix subset have the same coding code rate.

[0152] In one example, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is equal to or greater than a third encoding code rate threshold, where the third encoding code rate threshold is a positive real number less than 1.

[0153] In one example, the third encoding code rate threshold is less than or equal to 5 / 6 and greater than or equal to 1 / 3.

[0154] In one example, the third encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0155] In one example, the third encoding code rate threshold is equal to 1 / 2. Here, the basis matrix set includes two non-null basis matrix subsets, and the corresponding encoding code rates are 1 / 2 and 1 / 3, respectively. Here, the base graph matrix with an encoding code rate of 1 / 2 is the base graph matrix 6 and the base graph matrix 7 with an encoding code rate of 1 / 2 in the above embodiment, and the base graph matrix with an encoding code rate of 1 / 3 is the base graph matrix 9 with an encoding code rate of 2 / 3 in the above embodiment. The third encoding code rate threshold may be equal to other values, and examples will not be repeated here.

[0156] In one example, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is less than or equal to a fourth encoding code rate threshold, where the fourth encoding code rate threshold is a positive real number less than 1.

[0157] In one example, the fourth coding code rate threshold is less than or equal to 5 / 6 and greater than or equal to 1 / 3.

[0158] In one example, the fourth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0159] In one example, the fourth encoding code rate threshold is equal to 1 / 2. Here, the basis matrix set includes two non-null basis matrix subsets, and the corresponding encoding code rates are 1 / 2 and 3 / 4, respectively. Here, the base graph matrix with an encoding code rate of 1 / 2 is the base graph matrix 6 and the base graph matrix 7 with an encoding code rate of 1 / 2 in the above embodiment, and the base graph matrix with an encoding code rate of 3 / 4 is the base graph matrix 3 with an encoding code rate of 3 / 4 in the above embodiment. The fourth encoding code rate threshold may be equal to other values, and examples will not be repeated here.

[0160] In one embodiment, the basis matrices included in the basis matrix subset for the different comparison relationship between the encoding code rate and the fifth encoding code rate threshold and the different comparison relationship between the encoding code rate and the sixth encoding code rate threshold are described. The encoding process in this embodiment includes the following steps:

[0161] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0162] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0163] In step 3, the encoded data is transmitted to a second transmission node.

[0164] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each basis matrix subset have the same coding code rate.

[0165] In one example, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is less than a fifth encoding code rate threshold and greater than a sixth encoding code rate threshold, where the sixth encoding code rate threshold is less than the fifth encoding code rate threshold, the fifth encoding code rate threshold is a positive real number less than 8 / 9, and the sixth encoding code rate threshold is greater than 1 / 3.

[0166] In one example, the fifth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5. In one example, the sixth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5.

[0167] In one example, the fifth encoding code rate threshold is equal to 1 / 2 and the sixth encoding code rate threshold is equal to 2 / 5, where the basis matrix set includes four non-null basis matrix subsets with corresponding encoding code rates of 5 / 6, 2 / 3, 1 / 2, and 2 / 5, respectively, where the base graph matrix with an encoding code rate of 5 / 6 is the base graph matrix 2 with an encoding code rate of 5 / 6 in the above embodiment, the base graph matrix with an encoding code rate of 2 / 3 is the base graph matrix 4 and the base graph matrix 5 with an encoding code rate of 2 / 3 in the above embodiment, the base graph matrix with an encoding code rate of 1 / 2 is the base graph matrix 6 and the base graph matrix 7 with an encoding code rate of 1 / 2 in the above embodiment, and the base graph matrix with an encoding code rate of 2 / 5 is the encoding code rate of 2 / 5 in the above embodiment.

[0168] In other examples, the fifth encoding code rate threshold is 3 / 4 and the sixth encoding code rate threshold is 3 / 5; alternatively, the fifth encoding code rate threshold is 3 / 4 and the sixth encoding code rate threshold is 1 / 2; alternatively, the fifth encoding code rate threshold is 2 / 3 and the sixth encoding code rate threshold is 2 / 5; alternatively, the fifth encoding code rate threshold is 5 / 6 and the sixth encoding code rate threshold is 1 / 2; alternatively, the fifth encoding code rate threshold is 3 / 5 and the sixth encoding code rate threshold is 2 / 5.

[0169] The fifth and sixth encoding code rate thresholds may be equal to other values, and examples will not be repeated here.

[0170] In one embodiment, the basis matrices included in the basis matrix subset for different comparison relationships between the encoding code rate and the seventh encoding code rate threshold are described. The encoding process in this embodiment includes the following steps:

[0171] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0172] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0173] Step 3: sending the encoded data to a second transmission node.

[0174] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each basis matrix subset have the same coding code rate.

[0175] In one example, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, and a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, where the seventh encoding code rate threshold is a positive real number less than 1.

[0176] In one example, the seventh encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5.

[0177] In one example, the seventh encoding code rate threshold is equal to 3 / 4. Here, the basis matrix set includes three non-null basis matrix subsets, and the corresponding encoding code rates are 5 / 6, 3 / 4, and 1 / 2, respectively. Here, the base graph matrix with an encoding code rate of 5 / 6 is the base graph matrix 2 with an encoding code rate of 5 / 6 in the above embodiment, and the base graph matrix with an encoding code rate of 3 / 4 is the base graph matrix 3 with an encoding code rate of 3 / 4 in the above embodiment. The seventh encoding code rate threshold may be equal to other values, and examples will not be repeated here.

[0178] In one embodiment, the basis matrices included in the basis matrix subset for different comparison relationships between the encoding code rate and the eighth encoding code rate threshold are described. The encoding process in this embodiment includes the following steps:

[0179] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0180] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0181] Step 3: sending the encoded data to a second transmission node.

[0182] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each basis matrix subset have the same coding code rate.

[0183] In one example, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, and a second type basis matrix exists in a basis matrix subset in which the encoding code rate is less than an eighth encoding code rate threshold, where the eighth encoding code rate threshold is a positive real number less than 1.

[0184] In one example, the eighth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5.

[0185] In one example, the eighth code rate threshold is equal to 1 / 2. Here, the basis matrix set includes three non-null basis matrix subsets, and the corresponding encoding code rates are 1 / 2, 2 / 5, and 1 / 3, respectively. Here, the base graph matrix with an encoding code rate of 1 / 2 is the base graph matrix 6 and the base graph matrix 7 with an encoding code rate of 1 / 2 in the above embodiment, the base graph matrix with an encoding code rate of 2 / 5 is the base graph matrix 7 with an encoding code rate of 2 / 5 in the above embodiment, and the base graph matrix with an encoding code rate of 1 / 3 is the base graph matrix 8 with an encoding code rate of 1 / 3 in the above embodiment. The eighth encoding code rate threshold may be equal to other values, and examples will not be repeated here.

[0186] In one embodiment, the basis matrices included in the basis matrix subset for different comparison relationships between the encoding code rate and the ninth encoding code rate threshold and different comparison relationships between the encoding code rate and the tenth encoding code rate threshold are described. The encoding process in this embodiment includes the following steps:

[0187] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0188] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0189] Step 3: sending the encoded data to a second transmission node.

[0190] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each of the basis matrix subsets have the same encoding code rate.

[0191] In one example, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, and a second type basis matrix exists in the basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, where the ninth encoding code rate threshold is greater than the tenth encoding code rate threshold, and the ninth encoding code rate threshold and the tenth encoding code rate threshold are both positive real numbers less than 1.

[0192] In one example, the ninth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5. The tenth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5.

[0193] In one example, the ninth encoding code rate threshold is equal to 2 / 3 and the tenth encoding code rate threshold is equal to 1 / 2, where the basis matrix set includes seven non-null basis matrix subsets with corresponding encoding code rates of 8 / 9, 5 / 6, 3 / 4, 2 / 3, 1 / 2, 2 / 5, and 1 / 3, respectively, where the base graph matrix of each encoding code rate is the base graph matrix of each encoding code rate in the above embodiment.

[0194] The ninth encoding code rate threshold may be equal to other values, examples of which will not be repeated here.

[0195] In one example, the ninth encoding code rate threshold is greater than the tenth encoding code rate threshold.

[0196] In one embodiment, the basis matrices included in the basis matrix subset for different comparison relationships between the encoding code rate and the eleventh encoding code rate threshold and different comparison relationships between the encoding code rate and the twelfth encoding code rate threshold are described. The encoding method of this example includes the following steps:

[0197] Step 1: Decide the coding rate R to be used.

[0198] Step 2: determining a basis matrix for LDPC coding from a preset basis matrix set according to the coding code rate R;

[0199] Here, the basis matrix includes at least two types of elements: elements representing an all-zero square matrix and elements representing a cyclic shift of a unit matrix.

[0200] Step 3, perform LDPC encoding based on the basis matrix to obtain encoded data.

[0201] Step 4: Send the encoded data to a second transmission node.

[0202] In one example, only first type basis matrices are present in the basis matrix subset in which the encoding code rate is equal to or greater than an 11th encoding code rate threshold, and only second type basis matrices are present in the basis matrix subset in which the encoding code rate is equal to or less than a 12th encoding code rate threshold, where the 11th encoding code rate threshold and the 12th encoding code rate threshold are both positive real numbers less than 1.

[0203] In one example, the eleventh encoding code rate threshold is equal to any one of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5. The twelfth encoding code rate threshold is equal to any one of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5.

[0204] In one example, the eleventh encoding code rate threshold is greater than the twelfth encoding code rate threshold.

[0205] In one example, the 11th coding code rate threshold is equal to 2 / 3, 12 The encoding code rate threshold is equal to 2 / 5, where the basis matrix set includes 6 non-null basis matrix subsets, whose corresponding encoding code rates are 8 / 9, 5 / 6, 3 / 4, 2 / 3, 2 / 5, and 1 / 3, respectively.

[0206] The basic graph matrix having an encoding code rate of 8 / 9 is the basic graph matrix 1 having an encoding code rate of 8 / 9 in the above embodiment,

[0207] The basic graph matrix having an encoding code rate of 5 / 6 is the basic graph matrix 2 having an encoding code rate of 5 / 6 in the above embodiment,

[0208] The basic graph matrix having an encoding code rate of 3 / 4 is the basic graph matrix 3 having an encoding code rate of 3 / 4 in the above embodiment,

[0209] The basic graph matrix having an encoding code rate of 2 / 3 is the basic graph matrix 5 having an encoding code rate of 2 / 3 in the above embodiment,

[0210] The basic graph matrix having an encoding code rate of 2 / 5 is the basic graph matrix 8 having an encoding code rate of 2 / 5 in the above embodiment,

[0211] The basic graph matrix with the encoding code rate of 1 / 3 is the basic graph matrix 9 with the encoding code rate of 1 / 3 in the above embodiment.

[0212] That is, in any basis matrix subset whose coding code rate is equal to or greater than the 11th coding code rate threshold (e.g., 2 / 3), only the first type basis matrix exists, and in basis matrix subset whose coding code rates are equal to or less than the 12th coding code rate threshold (e.g., 2 / 5), only the second type basis matrix exists. The beneficial effect of the LDPC coding designed in this way is that the performance of the first basis matrix at high code rates and the performance of the second basis matrix at low code rates can be fully utilized, thereby optimizing the performance of the entire LDPC code.

[0213] In one embodiment, the encoding method of this example includes the following steps.

[0214] Step 1: The coding rate R and transmission block size to be used are determined.

[0215] Step 2: Determine a basis matrix for LDPC coding from a preset basis matrix set according to the coding code rate R and the transmission block size.

[0216] Here, the basis matrix includes at least two types of elements: elements representing an all-zero square matrix and elements representing a cyclic shift of a unit matrix.

[0217] Step 3, perform LDPC encoding based on the basis matrix to obtain encoded data.

[0218] Step 4: Send the encoded data to a second transmission node.

[0219] Here, the basis matrix set includes three non-null basis matrix subsets, whose corresponding coding code rates are 8 / 9, 3 / 4, and 1 / 2, respectively.

[0220] Here, the basic graph matrix having an encoding code rate of 8 / 9 is the basic graph matrix 1 having an encoding code rate of 8 / 9 in the above embodiment,

[0221] The basic graph matrix having an encoding code rate of 3 / 4 is the basic graph matrix 3 having an encoding code rate of 3 / 4 in the above embodiment,

[0222] The base graph matrices with the encoding code rate of 1 / 2 are the base graph matrix 6 and the base graph matrix 7 with the encoding code rate of 1 / 2 in the above embodiment.

[0223] That is, there exists the coding code rate threshold R0=3 / 4, and in any basis matrix subset with coding code rate R>=R0, only the first type basis matrix exists. There exists a coding rate threshold R1=1 / 2, and in all basis matrix subsets with coding code rate R<=R1, the first type basis matrix and the second type basis matrix are included at the same time, where R0 is equal to or greater than R1. The beneficial effect of the LDPC code designed in this way is that it can fully utilize the performance of the first type basis matrix at high code rate, and can adopt the basic graph matrix with bidiagonal structure and the basic graph matrix with single diagonal structure under partial code rate, thereby optimizing the performance of the entire LDPC code.

[0224] The encoding code rate R0 may also be equal to another value, for example 2 / 3, and the encoding code rate R1 may also be equal to another value, for example 2 / 5.

[0225] In one embodiment, the encoding method of this example includes the following steps.

[0226] Step 1: The coding rate R and transmission block size to be used are determined.

[0227] Step 2: Determine a basis matrix for LDPC coding from a preset basis matrix set according to the coding code rate R and the transmission block size.

[0228] Here, the basis matrix includes at least two types of elements: elements representing an all-zero square matrix and elements representing a cyclic shift of a unit matrix.

[0229] Step 3, perform LDPC encoding based on the basis matrix to obtain encoded data.

[0230] Step 4: Send the encoded data to a second transmission node.

[0231] Here, the basis matrix set includes one non-null basis matrix subset, and the corresponding encoding code rate is 1 / 2. The base graph matrix with the encoding code rate of 1 / 2 is the base graph matrix 6 and the base graph matrix 7 with the encoding code rate of 1 / 2 in the above embodiment. That is, in this case, the basis matrix of the basis matrix with the encoding code rate of 1 / 2 simultaneously includes a first type basis matrix and a second type basis matrix.

[0232] All basis matrix subsets for which the coding code rate R satisfies R3>R≧R4 simultaneously include the first type basis matrix and the second type basis matrix, where R3=2 / 3 and R4=1 / 2.

[0233] In one embodiment, the encoding process in this embodiment includes the following steps.

[0234] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0235] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0236] Step 3: sending the encoded data to a second transmission node.

[0237] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each of the basis matrix subsets have the same encoding code rate.

[0238] In one example, the basis matrix subset having an encoding code rate equal to or greater than a first encoding code rate threshold contains only first type basis matrices, there is at least one basis matrix subset having an encoding code rate less than the first encoding code rate threshold, and the basis matrix subset having an encoding code rate less than the first encoding code rate threshold contains at least one basis matrix that does not belong to the first type basis matrix, where the first encoding code rate threshold is a positive real number less than 1.

[0239] In one example, the first encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0240] In one example, the first encoding code rate threshold is equal to 2 / 3, where the basis matrix set includes three non-null basis matrix subsets, whose corresponding encoding code rates are 5 / 6, 3 / 4, and 1 / 2, respectively, where the base graph matrix with an encoding code rate of 5 / 6 is the base graph matrix 2 with an encoding code rate of 5 / 6 in the above embodiment, the base graph matrix with an encoding code rate of 2 / 3 is the base graph matrix 4 and the base graph matrix 5 with an encoding code rate of 2 / 3 in the above embodiment, and the base graph matrix with an encoding code rate of 1 / 2 is the base graph matrix 6 and the base graph matrix 7 with an encoding code rate of 1 / 2 in each of the above embodiments.

[0241] In one example, the basis matrix subset having an encoding code rate equal to or less than a second encoding code rate threshold contains only second type basis matrices, there is at least one basis matrix subset having an encoding code rate greater than the second encoding code rate threshold, and there is at least one basis matrix that does not belong to the second type basis matrix in the basis matrix subset having an encoding code rate greater than the second encoding code rate threshold, where the second encoding code rate threshold is a positive real number less than 1.

[0242] In one example, the second encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0243] In one example, the second encoding code rate threshold is equal to 2 / 5. In this example, the basis matrix set includes three non-null basis matrix subsets, whose corresponding encoding code rates are 5 / 6, 2 / 5, and 1 / 3, respectively. Here, the base graph matrix with an encoding code rate of 5 / 6 is the base graph matrix 2 with an encoding code rate of 5 / 6 in the above embodiment, the base graph matrix with an encoding code rate of 2 / 5 is the base graph matrix 8 with an encoding code rate of 2 / 5 in the above embodiment, and the base graph matrix with an encoding code rate of 1 / 3 is the base graph matrix 9 with an encoding code rate of 1 / 3 in the above embodiment.

[0244] In one example, the first encoding code rate threshold is greater than the second encoding code rate threshold.

[0245] In one embodiment, the encoding method of this example includes the following steps.

[0246] Step 1: The coding rate R and transmission block size to be used are determined.

[0247] Step 2: Determine a basis matrix for LDPC coding from a preset basis matrix set according to the coding code rate R and the transmission block size.

[0248] Here, the basis matrix includes at least two types of elements: elements representing an all-zero square matrix and elements representing a cyclic shift of a unit matrix.

[0249] Step 3, perform LDPC encoding based on the basis matrix to obtain encoded data.

[0250] Step 4: Send the encoded data to a second transmission node.

[0251] The basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each of the basis matrix subsets have the same encoding code rate.

[0252] In one example, in the basis matrix set, the basis matrix subsets corresponding to all encoding code rates all include a first type basis matrix and a second type basis matrix.

[0253] In one example, the basis matrix set includes three non-null basis matrix subsets, whose corresponding encoding code rates are 2 / 3, 1 / 2, and 2 / 5, respectively. The base graph matrices whose encoding code rate is 1 / 2 are base graph matrix 6 and base graph matrix 7 whose encoding code rate is 1 / 2 in the above embodiment.

[0254] The basis matrix subset with the coding rate of 2 / 3 includes two basis matrices as follows:

[0255] The first basic graph matrix (double diagonal structure) is the basic graph matrix 4 with the coding rate of 2 / 3 described in the above embodiment,

[0256] The basic graph matrix 10 (bidiagonal structure) is shown in the following formula 20.

[0257]

number

[0258] The basis matrix subset with the coding rate of 1 / 2 includes two basis matrices as follows.

[0259] The first basic graph matrix (double diagonal structure) is the basic graph matrix 6 with the coding rate of 1 / 2 described in the above embodiment,

[0260] The second basic graph matrix (single diagonal structure) is the basic graph matrix 7 with the coding rate of 1 / 2, which is explained in the above embodiment.

[0261] The basis matrix subset with a coding rate of 2 / 5 includes two basis matrices as shown in the following Equations 21 and 22.

[0262] The first basic graph matrix 11 (bidiagonal structure) is shown in the following formula 21.

[0263]

number

[0264] The second basic graph matrix (single diagonal structure) is the basic graph matrix 8 having the encoding code rate of 2 / 5 described in the first embodiment.

[0265] That is, in one example, the base graph matrix of the basis matrix corresponding to all coding code rates (including 2 / 3, 1 / 2, and 2 / 5) simultaneously includes the first type basis matrix and the second type basis matrix. 2 The performance of the type basis matrix can be fully utilized, and not only can the waterfall domain performance of the LDPC code be improved, but also the error floor performance can be improved, and the overall error rate performance of the LDPC code can be optimized.

[0266] In one embodiment, the encoding process in this embodiment includes the following steps.

[0267] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0268] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0269] Step 3: sending the encoded data to a second transmission node.

[0270] In one example, the basis matrix set includes at least one basis matrix in a second-type basis matrix. A base graph matrix belonging to the second-type basis matrix of the basis matrix set includes a maximum row weight difference of a sub-matrix consisting of row a to the last row and column b to c of the base graph matrix is ​​equal to 0, 1, or 2, where the maximum row weight difference refers to a difference between a maximum row weight of the sub-matrix formed and a minimum row weight of the sub-matrix formed. a is an integer greater than 1, b is an integer greater than 0, and c is an integer greater than b. In this example, counting starts from 0.

[0271] In one example, a is equal to MP and c is equal to NP-1, where M is the number of rows of the basis matrix, N is the number of columns of the basis matrix, N is an integer greater than P, M is an integer greater than P+2, and P is an integer greater than 2. In one example, b is equal to 1 or 2. In one example, b is equal to the number of system columns not transmitted in the LDPC coding, i.e., the number of columns of the basis matrix corresponding to the system bits not included in the coded data obtained from the LDPC coding. The base graph matrix designed in this way achieves better error floor performance. In one example, a is equal to 3, 4, 5, or 6.

[0272] In one embodiment, the encoding method of this example includes the following steps.

[0273] Step 1, determine the basis matrix for LDPC coding.

[0274] Here, the basis matrix includes at least two types of elements: elements representing an all-zero square matrix and elements representing a cyclic shift of a unit matrix.

[0275] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0276] Step 3: sending the encoded data to a second transmission node.

[0277] In one example, in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, only a first type basis matrix exists, and in the basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously, where the seventh encoding code rate threshold is a positive real number less than 1.

[0278] In one example, the seventh encoding code rate threshold is equal to any of the following: 7 / 8, 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5.

[0279] In one example, a first type basis matrix and a second type basis matrix exist simultaneously in a basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, and only a second type basis matrix exists in a basis matrix subset in which the encoding code rate is less than an eighth encoding code rate threshold, where the eighth encoding code rate threshold is a positive real number less than 1.

[0280] In one example, the eighth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0281] In one example, in the basis matrix subset where the encoding code rate is equal to or greater than a ninth encoding code rate threshold, only first type basis matrices exist, in the basis matrix subset where the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, first type basis matrices and second type basis matrices exist simultaneously, and in the basis matrix subset where the encoding code rate is less than the tenth encoding code rate threshold, only second type basis matrices exist, where the ninth encoding code rate threshold is greater than the tenth encoding code rate threshold, and the ninth encoding code rate threshold and the tenth encoding code rate threshold are each positive real numbers less than 1.

[0282] In one example, the ninth encoding code rate threshold is equal to any of 7 / 8, 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, and 2 / 5. In one example, the tenth encoding code rate threshold is equal to any of 5 / 6, 3 / 4, 2 / 3, 3 / 5, 1 / 2, 2 / 5, and 1 / 3.

[0283] In one embodiment, the encoding method of this example includes the following steps.

[0284] Step 1, determine the basis matrix for LDPC coding.

[0285] Here, the basis matrix includes at least two types of elements: elements representing an all-zero square matrix and elements representing a cyclic shift of a unit matrix.

[0286] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0287] Step 3: sending the encoded data to a second transmission node.

[0288] Here, in the above embodiment, the base graph matrix of the base matrix includes at least one of the base graph matrices in the above embodiment.

[0289] In one embodiment, the encoding method of this example includes the following steps.

[0290] Step 1: determining a basis matrix for LDPC coding from a preset basis matrix set, the basis matrix including at least two kinds of elements, namely an element representing an all-zero square matrix and an element representing a cyclic shift of an identity matrix.

[0291] Step 2: Perform LDPC encoding based on the basis matrix to obtain encoded data.

[0292] Step 3: sending the encoded data to a second transmission node.

[0293] In one example, the base graph matrix of the base matrix includes at least one of the base graph matrices in the above embodiments.

[0294] Here, all the base graph matrices in the above embodiments may be described in the form of sparse matrices, for example, only the indexes (row index and column index) of elements indicating the cyclic shift of the identity matrix in the base graph matrix are defined and described, that is, only the "1" elements of the base graph matrix defined by the row index and column index are defined and described, but the "0" elements in the base graph matrix are not defined. In one example, the sparse matrix format of the base graph matrix with an encoding code rate of 8 / 9 in the first embodiment is described as follows in Table 1.

[0295] [Table 1]

[0296] In the base graph matrix, the position corresponding to the row index i and column index j defined above is "1", and the remaining positions are "0".

[0297] In one embodiment, Fig. 8 is a block diagram of an encoding / decoding system according to an embodiment of the present disclosure. As shown in Fig. 8, the encoding system of this embodiment includes an encoding terminal 810, a transceiver 820, and a decoding terminal 830, where the encoding terminal 810 includes a memory 8101 and an LDPC encoder 8102, and the decoding terminal 830 includes a memory 8301 and an LDPC decoder 8302.

[0298] In one embodiment, the encoding terminal 810 includes a memory 8101 for storing a basis matrix set, and an LDPC encoder 8102 for determining a basis matrix for LDPC encoding from the basis matrix set and performing LDPC encoding based on the basis matrix.

[0299] The decoding terminal 830 includes a memory 8301 for storing a basis matrix set, and an LDPC decoder 8302 for determining a basis matrix for LDPC decoding from the basis matrix set and performing LDPC decoding based on the basis matrix. The basis matrix includes at least two types of elements: an element indicating an all-zero square matrix and an element indicating a cyclic shift of a unit matrix.

[0300] In one embodiment, the basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices in each of the basis matrix subsets have the same coding code rate.

[0301] In one embodiment, the set of arbitrary basis matrices includes at least one of a first type basis matrix and a second type basis matrix, a sub-matrix consisting of the last M columns of a base graph matrix of the first type basis matrix has a bidiagonal structure, M is the number of rows of the base graph matrix, M is a positive integer, and a sub-matrix consisting of the last P columns of a base graph matrix of the second type basis matrix has a monodiagonal structure, P is a positive integer, and P>2.

[0302] Here, the basis matrix set in the memory has all the technical features in the above embodiment, and the corresponding examples are also similar to those in the above embodiment, so they will not be described here.

[0303] In an embodiment, FIG. 9 is a configuration block diagram of an encoding device according to an embodiment of the present disclosure. This embodiment is applied to a communication device. Here, the communication device may be an encoding terminal. As shown in FIG. 9, this embodiment includes a first determination module 910, an encoder 920, and a transceiver 930.

[0304] Here, the first determining module 910 is configured to determine a basis matrix for LDPC encoding from a preset basis matrix set.

[0305] The encoder 920 is configured to LDPC encode raw data based on the basis matrix to obtain encoded data.

[0306] The transmitter 930 is configured to transmit the encoded data to a second transmission node.

[0307] Here, the basis matrix includes at least two types of elements, that is, an element representing an all-zero square matrix and an element representing a circular shift of an identity matrix. The basis matrix set includes at least two non-null basis matrix subsets, Each of the at least two non-null basis matrix subsets All the basis matrices in the base matrix subset have the same coding code rate.

[0308] In one embodiment, Each of the above groups the base matrix subset includes at least one of a first type basis matrix and a second type basis matrix;

[0309] Wherein, a sub-matrix consisting of the last M columns in a base graph matrix of the basis matrix of the first type basis matrix has a bidiagonal structure, where M is the number of rows of the basis matrix of the first type basis matrix and is a positive integer;

[0310] A submatrix consisting of the last P columns in a base graph matrix of a basis matrix of the second type basis matrix has a monodiagonal structure, where P is an integer greater than two.

[0311] In one embodiment, only first type basis matrices exist in the basis matrix subset whose encoding code rate is equal to or greater than a first encoding code rate threshold, there is at least one basis matrix subset whose encoding code rate is less than the first encoding code rate threshold, and there is no first type basis matrix in the basis matrix subset whose encoding code rate is less than the first encoding code rate threshold, where the first encoding code rate threshold is a positive real number less than 1.

[0312] In one embodiment, only first type basis matrices are present in the basis matrix subset where the encoding code rate is greater than or equal to a first encoding code rate threshold, and only second type basis matrices are present in the basis matrix subset where the encoding code rate is less than the first encoding code rate threshold, where the first encoding code rate threshold is a positive real number less than 1.

[0313] In one embodiment, only second type basis matrices exist in the basis matrix subset whose encoding code rate is less than or equal to a second encoding code rate threshold, there is at least one basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, and there is no second type basis matrix in the basis matrix subset whose encoding code rate is greater than the second encoding code rate threshold, where the second encoding code rate threshold is a positive real number less than 1.

[0314] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in the basis matrix subset in which the encoding code rate is equal to or greater than a third encoding code rate threshold, where the third encoding code rate threshold is a positive real number less than 1.

[0315] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in the basis matrix subset in which the encoding code rate is less than or equal to a fourth encoding code rate threshold, where the fourth encoding code rate threshold is a positive real number less than 1.

[0316] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is less than a fifth encoding code rate threshold and greater than a sixth encoding code rate threshold, where the sixth encoding code rate threshold is less than the fifth encoding code rate threshold, the fifth encoding code rate threshold is a positive real number less than 8 / 9, and the sixth encoding code rate threshold is greater than 1 / 3.

[0317] In one embodiment, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, and a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, where the seventh encoding code rate threshold is a positive real number less than 1.

[0318] In one embodiment, in the basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, only the first type basis matrix exists, and in any basis matrix subset in which the encoding code rate is less than the seventh encoding code rate threshold, the first type basis matrix and the second type basis matrix exist. Column exist simultaneously.

[0319] In one embodiment, a first type basis matrix and a second type basis matrix simultaneously exist in a basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, and a second type basis matrix exists in a basis matrix subset in which the encoding code rate is less than an eighth encoding code rate threshold, where the eighth encoding code rate threshold is a positive real number less than 1.

[0320] In one embodiment, in any basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously, and in any basis matrix subset in which the encoding code rate is less than the eighth encoding code rate threshold, only a second type basis matrix exists.

[0321] In one embodiment, a first type basis matrix exists in the basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously in the basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, and a second type basis matrix exists in the basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, where the ninth encoding code rate threshold is greater than the tenth encoding code rate threshold, and the ninth encoding code rate threshold and the tenth encoding code rate threshold are each positive real numbers less than 1.

[0322] In one embodiment, in any basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, a first type basis matrix and a second type basis matrix exist simultaneously in any basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, and in any basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, only a second type basis matrix exists.

[0323] In one embodiment, only first-type basis matrices exist in the basis matrix subset where the encoding code rate is equal to or greater than an eleventh encoding code rate threshold, and only second-type basis matrices exist in the basis matrix subset where the encoding code rate is equal to or less than a twelfth encoding code rate threshold, where the eleventh encoding code rate threshold and the twelfth encoding code rate threshold are both positive real numbers less than 1. In one embodiment, the eleventh encoding code rate threshold is greater than the twelfth encoding code rate threshold.

[0324] In one embodiment, the basis matrix set includes at least one basis matrix subset that simultaneously includes a first type basis matrix and a second type basis matrix.

[0325] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a first encoding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and at least one basis matrix subset for a second encoding code rate that includes only a first type basis matrix, where the first encoding code rate is smaller than the second encoding code rate.

[0326] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a third encoding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and at least one basis matrix subset for a fourth encoding code rate that only includes a second type basis matrix, where the third encoding code rate is greater than the fourth encoding code rate.

[0327] In one embodiment, the basis matrix subsets include at least one basis matrix subset for a fifth encoding code rate that includes only first-type basis matrices, and at least one basis matrix subset for a sixth encoding code rate that includes only second-type basis matrices, where the fifth encoding code rate is greater than the sixth encoding code rate.

[0328] In one embodiment, the basis matrix subsets include at least one basis matrix subset having a coding code rate that simultaneously includes a first type basis matrix and a second type basis matrix, and the coding code rate includes any of 3 / 4, 2 / 3, 5 / 8, 3 / 5, 1 / 2, and 2 / 5.

[0329] In one embodiment, all of the basis matrix subsets corresponding to encoding code rates among the basis matrix subsets include both the first type basis matrix and the second type basis matrix.

[0330] In one embodiment, all of the basis matrices in each of the basis matrix subsets correspond to the same encoding code rate.

[0331] The encoding device provided by this embodiment is for realizing the encoding method of the embodiment shown in FIG. 1, and the realization principle and technical effect of the encoding device provided by this embodiment are similar, so they will not be described further here.

[0332] In one embodiment, FIG. 10 is a block diagram of a decoding device according to an embodiment of the present disclosure. This embodiment is applied to a communication device. Here, the communication device may be a decoding terminal. As shown in FIG. 10, the decoding device in this embodiment includes a receiver 1010, a second determination module 1020, and a decoder 1030.

[0333] The receiver 1010 is configured to receive the encoded data transmitted by the first transmitting node.

[0334] The second determining module 1020 is configured to determine a basis matrix for LDPC decoding from a preset basis matrix set.

[0335] The decoder 1030 is configured to LDPC decode the encoded data based on the basis matrix to obtain raw data.

[0336] wherein the basis matrix includes at least two types of elements, that is, elements representing all-zero square matrices and elements representing cyclic shifts of identity matrices, and the basis matrix set includes at least two non-null basis matrix subsets; Each of the at least two non-null basis matrix subsets All the basis matrices in the base matrix subset have the same coding code rate.

[0337] The decoding device provided by this embodiment is for realizing the decoding method of the embodiment shown in FIG. 2, and the realization principle and technical effect of the decoding device provided by this embodiment are similar, so they will not be described further here.

[0338] FIG. 11 is a schematic diagram of a communication device according to an embodiment of the present disclosure. As shown in FIG. 11, the device provided by the present disclosure includes a processor 1110, a memory 1120, and a communication module 1130. The number of processors 1110 in the device may be one or more, and FIG. 11 takes one processor 1110 as an example. The number of memories 1120 in the device may be one or more, and FIG. 11 takes one memory 1120 as an example. The processor 1110, the memory 1120, and the communication module 1130 of the device may be connected via a bus or other method, and FIG. 11 takes the connection via a bus as an example. In this embodiment, the device may be a coding terminal (for example, the coding terminal may be a terminal device such as a user device).

[0339] The memory 1120 as a computer-readable storage medium may be configured to store modules such as software programs, computer-executable programs, and program instructions / modules corresponding to the device of any embodiment of the present disclosure (e.g., the first determination module 910 in the encoding device, the encoder 920, and the transmitter 930). The memory 1120 includes a storage program area and a storage data area, where the storage program area stores an operating system and applications required for at least one function, and the storage data area may store data created according to the use of the device, etc. Furthermore, the memory 1120 may include a high-speed random access memory, and may further include a non-volatile memory, such as at least one disk storage device, a flash memory device, or another non-volatile solid-state storage device. In some examples, the memory 1120 may further include a memory located remotely to the processor 1110, and these remote memories may be connected to the device via a network. Examples of the above network include, but are not limited to, the Internet, an enterprise network, a local area network, a mobile communication network, and combinations thereof.

[0340] The communication module 1130 is configured to communicate with other transmission nodes.

[0341] When the communication device is a first transmission node, the provided device may be configured to execute the encoding method applied to the first transmission node provided by any of the above embodiments, and to have corresponding functions and effects.

[0342] When the communication device is a second transmission node, the provided device may be configured to execute the decoding method applied to the second transmission node provided by any of the above embodiments, and have corresponding functions and effects.

[0343] In an embodiment of the present disclosure, a storage medium including computer-executable instructions is further provided, which, when executed by a computer processor, is used to perform an encoding method applied to a first transmission node, the method including: determining a basis matrix for LDPC encoding from a preset basis matrix set; performing LDPC encoding based on the basis matrix to obtain encoded data; and transmitting the encoded data to a second transmission node, where the basis matrix includes at least two types of elements, an element indicating an all-zero square matrix and an element indicating a cyclic shift of an identity matrix, and the basis matrix set includes at least two non-null basis matrix subsets; Each of the at least two non-null basis matrix subsets All the basis matrices in the base matrix subset have the same coding code rate.

[0344] In an embodiment of the present disclosure, a storage medium including computer-executable instructions is further provided, which, when executed by a computer processor, is used to perform a decoding method applied to a second transmitting node, the method including: receiving encoded data transmitted by a first transmitting node; determining a basis matrix for LDPC decoding from a preset basis matrix set; and LDPC-decoding the encoded data based on the basis matrix to obtain raw data, where the basis matrix includes at least two types of elements, namely, an element indicating an all-zero square matrix and an element indicating a cyclic shift of an identity matrix, and the basis matrix set includes at least two non-null basis matrix subsets; Each of the at least two non-null basis matrix subsets All the basis matrices in the base matrix subset have the same coding code rate.

[0345] Those skilled in the art will appreciate that the term "user equipment" encompasses any suitable type of wireless user equipment, such as a mobile phone, a portable data processing device, a portable web browser, or a mobile station mounted on a vehicle.

[0346] In general, embodiments of the present disclosure may be implemented in hardware or special purpose circuits, software, logic, or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software that may be executed by a controller, microprocessor, or other computing device, although the present disclosure is not limited in this respect.

[0347] Embodiments of the present disclosure may be implemented by a data processor of a mobile device executing computer program instructions in a processor entity, or by hardware, or by a combination of software and hardware. The computer program instructions may be assembly instructions, Instruction Set Architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or target code written in any combination of one or more programming languages.

[0348] Any logic flow block diagrams in the drawings of this disclosure may represent program steps, or may represent interconnected logic circuits, modules, and functions, or may represent a combination of program steps and logic circuits, modules, and functions. The computer program may be stored in a memory. The memory may have any type suitable for the local technology environment and may be realized by using any suitable data storage technology, such as, but not limited to, a read-only memory (ROM), a random access memory (RAM), an optical storage device, and a system (Digital Video Disc (DVD) or a Compact Disk (CD). The computer readable medium may include a non-transitory storage medium. The data processor may be a general purpose computer, a special purpose computer, a microprocessor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a programmable logic device (Field-Programmable Gate Array, FPGA ), and processors based on multi-core processor architectures, may be of any type suitable for the local technical environment.

Claims

1. A coding method applied to a first transmission node, comprising: determining a basis matrix for low density parity check (LDPC) coding from a preset set of basis matrices; LDPC encoding raw data based on the basis matrix to obtain encoded data; transmitting the encoded data to a second transmission node; The basis matrix includes two elements, an element indicating an all-zero square matrix and an element indicating a circular shift of an identity matrix, and the basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices of each of the basis matrix subsets have the same encoding code rate. Encoding method.

2. Each of the basis matrix subsets includes at least one of a first type basis matrix and a second type basis matrix; A sub-matrix consisting of the last M columns in a base graph matrix of the first type basis matrix has a bidiagonal structure, where M is the number of rows of the first type basis matrix and is a positive integer; A submatrix consisting of the last P columns in a basic graph matrix of the second type basis matrix has a monodiagonal structure, where P is an integer greater than 2. The encoding method according to claim 1 .

3. only the first type basis matrix is ​​present in a basis matrix subset in which the encoding code rate is equal to or greater than a first encoding code rate threshold, there is at least one basis matrix subset in which the encoding code rate is less than the first encoding code rate threshold, and the first type basis matrix is ​​not present in the basis matrix subset in which the encoding code rate is less than the first encoding code rate threshold, and the first encoding code rate threshold is a positive real number less than 1. The encoding method according to claim 2.

4. Only the second type basis matrix is ​​present in the basis matrix subset having the encoding code rate equal to or less than a second encoding code rate threshold, at least one basis matrix subset having the encoding code rate greater than the second encoding code rate threshold is present, and the second type basis matrix is ​​not present in the basis matrix subset having the encoding code rate greater than the second encoding code rate threshold, and the second encoding code rate threshold is a positive real number less than 1. The encoding method according to claim 2.

5. In the basis matrix subset in which the encoding code rate is equal to or greater than a third encoding code rate threshold, the first type basis matrix and the second type basis matrix are simultaneously present, and the third encoding code rate threshold is a positive real number less than 1. The encoding method according to claim 2.

6. In the basis matrix subset in which the encoding code rate is equal to or less than a fourth encoding code rate threshold, the first type basis matrix and the second type basis matrix are simultaneously present, and the fourth encoding code rate threshold is a positive real number less than 1. The encoding method according to claim 2.

7. In a basis matrix subset in which the encoding code rate is equal to or less than a fifth encoding code rate threshold and greater than a sixth encoding code rate threshold, the first type basis matrix and the second type basis matrix are simultaneously present, the sixth encoding code rate threshold is smaller than the fifth encoding code rate threshold, the fifth encoding code rate threshold is a positive real number less than 8 / 9, and the sixth encoding code rate threshold is greater than 1 / 3. The encoding method according to claim 2.

8. The first type basis matrix exists in a basis matrix subset in which the encoding code rate is equal to or greater than a seventh encoding code rate threshold, and the first type basis matrix and the second type basis matrix exist simultaneously in a basis matrix subset in which the encoding code rate is less than a seventh encoding code rate threshold, and the seventh encoding code rate threshold is a positive real number less than 1. The encoding method according to claim 2.

9. The first type basis matrix and the second type basis matrix are simultaneously present in a basis matrix subset in which the encoding code rate is equal to or greater than an eighth encoding code rate threshold, and the second type basis matrix is ​​present in a basis matrix subset in which the encoding code rate is less than the eighth encoding code rate threshold, and the eighth encoding code rate threshold is a positive real number less than 1. The encoding method according to claim 2.

10. the first type basis matrix exists in a basis matrix subset in which the encoding code rate is equal to or greater than a ninth encoding code rate threshold, the first type basis matrix and the second type basis matrix exist simultaneously in a basis matrix subset in which the encoding code rate is less than the ninth encoding code rate threshold and equal to or greater than a tenth encoding code rate threshold, the second type basis matrix exists in a basis matrix subset in which the encoding code rate is less than the tenth encoding code rate threshold, the ninth encoding code rate threshold is greater than the tenth encoding code rate threshold, and the ninth encoding code rate threshold and the tenth encoding code rate threshold are each a positive real number less than 1. The encoding method according to claim 2.

11. The basis matrix set includes at least one basis matrix subset that simultaneously includes the first type basis matrix and the second type basis matrix. The encoding method according to claim 2.

12. The basis matrix subsets include at least one basis matrix subset including both the first type basis matrix and the second type basis matrix at a first encoding code rate, and at least one basis matrix subset including only the first type basis matrix at a second encoding code rate, the first encoding code rate being smaller than the second encoding code rate. The encoding method according to claim 2.

13. The basis matrix subsets include at least one basis matrix subset including both the first type basis matrix and the second type basis matrix at a coding code rate of a third coding code rate, and at least one basis matrix subset including only the second type basis matrix at a coding code rate of a fourth coding code rate, and the third coding code rate is greater than the fourth coding code rate. The encoding method according to claim 2.

14. The basis matrix subsets include at least one basis matrix subset including only the first type basis matrices and having a coding code rate of a fifth coding code rate, and at least one basis matrix subset including only the second type basis matrices and having a coding code rate of a sixth coding code rate, the fifth coding code rate being greater than the sixth coding code rate. The encoding method according to claim 2.

15. The basis matrix subsets include at least one basis matrix subset having a coding code rate including the first type basis matrix and the second type basis matrix simultaneously, and the coding code rate includes any one of 3 / 4, 2 / 3, 5 / 8, 3 / 5, 1 / 2, and 2 / 5; The encoding method according to claim 2.

16. Among the basis matrix subsets, all basis matrix subsets corresponding to encoding code rates simultaneously include the first type basis matrix and the second type basis matrix. The encoding method according to claim 2.

17. A decoding method applied to a second transmission node, comprising: receiving encoded data transmitted by a first transmitting node; determining a basis matrix for low density parity check (LDPC) decoding from a preset set of basis matrices; LDPC decoding the encoded data based on the basis matrix to obtain raw data; The basis matrix includes at least two types of elements, that is, an element indicating an all-zero square matrix and an element indicating a circular shift of an identity matrix, and the basis matrix set includes at least two non-null basis matrix subsets, and all basis matrices of each of the basis matrix subsets have the same coding code rate. Decryption method.

18. a communication module, a memory, and one or more processors; The communication module is configured to perform communication interactions between each of the transmission nodes; the memory is configured to store one or more programs; The one or more programs, when executed by the one or more processors, cause the one or more processors to implement a method according to any one of claims 1 to 16 and claim 17. Communication equipment.

19. storing a computer program, which, when executed by a processor, realizes the method according to any one of claims 1 to 16 and claim 17; storage medium.