Coding method and device, decoding method and device and storage medium

By using spatially coupled low-density parity check code (SC-LDPC) to encode and decode data in wireless communication networks, the problem of insufficient data transmission efficiency in the prior art is solved, and a higher data transmission rate is achieved. Lower bit error rate, suitable for future mobile communication networks.

CN119154890APending Publication Date: 2024-12-17ZTE CORP
View PDF 0 Cites 4 Cited by

Patent Information

Application Number
CN202310709637.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-14
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

When existing wireless communication networks face the needs of high data rates, low latency and high reliability, it is difficult to effectively improve data transmission efficiency, especially in the future, the data transmission rate is insufficient to improve in the future mobile communication network.

Method used

Using the encoding method based on spatially coupled low-density parity check code (SC-LDPC), the data is encoded and decoded, and the sub-basic matrix group and the lift value are used to achieve higher data transmission rates and corrections. Wrong performance.

Benefits of technology

Through the "threshold saturation" phenomenon of spatially coupled LDPC codes, it approaches Shannon's capacity limit performance, supports higher data transmission rates and lower bit error rates, and meets the efficient data transmission needs of future mobile communication networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119154890A_ABST
    Figure CN119154890A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a coding method and device, a decoding method and device and a storage medium, relates to the technical field of communication, and can support a relatively high data transmission rate. The method comprises the following steps: acquiring a first bit sequence to be coded; encoding the first bit sequence based on a basic matrix and a lifting value of a spatially coupled low density parity check code LDPC to obtain a second bit sequence; wherein the basic matrix comprises L same sub basic matrix groups which are arranged diagonally, each sub basic matrix group comprises M first sub basic matrixes, and both L and M are positive integers; and sending all or part of bits of the second bit sequence. The method and the device can be used in a wireless communication process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to an encoding method, a decoding method, a device and a storage medium. Background Art

[0002] With the rapid development of technologies such as big data, cloud computing, and delay-sensitive networks, user devices in wireless communication networks have exploded. Wireless communication networks will carry a variety of applications and massive amounts of data, which puts high demands on data transmission rate, throughput, reliability, latency, etc. In addition, with the development of virtual reality / augmented reality, intelligent transportation, intelligent industrial control, and intelligent logistics, the requirements for communications with ultra-high data rates, ultra-low latency, and ultra-high reliability are getting higher and higher. Compared with the existing 5G mobile communications, the demand for data transmission rate in the air interface standard protocol of future mobile communications will increase by one or two orders of magnitude. Therefore, there is an urgent need for a coding method that can effectively improve data transmission efficiency. Summary of the invention

[0003] The embodiments of the present application provide an encoding method, a decoding method, an apparatus, and a storage medium, which can support a higher data transmission rate.

[0004] On the one hand, there is provided a coding method, comprising:

[0005] Obtaining a first bit sequence to be encoded;

[0006] Based on a basic matrix and a lifting value of a spatially coupled low-density parity check code LDPC, a first bit sequence is encoded to obtain a second bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers;

[0007] All or part of the bits of the second bit sequence are sent.

[0008] On the other hand, a decoding method is provided, comprising:

[0009] receiving all or part of the bits of a second bit sequence;

[0010] Based on the basic matrix and lifting value of the spatially coupled low-density parity-check code LDPC, all or part of the bits of the second bit sequence are decoded to obtain a first bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers.

[0011] On the other hand, a coding device is provided, including: an acquisition module, a coding module and a sending module.

[0012] The acquisition module is used to acquire a first bit sequence to be encoded;

[0013] The encoding module is used to encode the first bit sequence based on the basic matrix and the lifting value of the spatially coupled low-density parity check code LDPC to obtain a second bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers;

[0014] The sending module is used to send all or part of the bits of the second bit sequence.

[0015] On the other hand, a decoding device is provided, including: a receiving module and a decoding module.

[0016] The receiving module is used to receive all or part of the bits of the second bit sequence;

[0017] The decoding module is used to decode all or part of the bits of the second bit sequence based on the basic matrix and the lifting value of the spatially coupled low-density parity-check code LDPC to obtain a first bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers.

[0018] On the other hand, a communication device is provided, comprising: a memory and a processor; the memory and the processor are coupled; the memory is used to store a computer program; and the processor implements the encoding method or decoding method of any of the above embodiments when executing the computer program.

[0019] On the other hand, a computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the encoding method or decoding method of any of the above embodiments is implemented.

[0020] On the other hand, a computer program product is provided, which includes computer program instructions, and when the computer program instructions are executed by a processor, the encoding method or decoding method of any of the above embodiments is implemented.

[0021] The encoding method provided in the embodiment of the present application can encode the first bit sequence (data to be sent) based on the basic matrix and the lifting value of the spatially coupled LCPC. Due to the characteristics of spatial coupling, the SC-LDPC code will have a "threshold saturation" phenomenon, which makes the spatially coupled LDPC code theoretically closer to the Shannon capacity limit performance. Therefore, the use of spatially coupled LCPC for encoding and decoding can support the demand for higher data transmission rates. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] In order to more clearly illustrate the technical solution in the present application, the drawings required for use in some embodiments of the present application will be briefly introduced below. Obviously, the drawings described below are only drawings of some embodiments of the present application. For ordinary technicians in this field, other drawings can also be obtained based on these drawings.

[0023] Figure 1 A schematic diagram of the architecture of a communication system provided in an embodiment of the present application;

[0024] Figure 2 A data processing flow chart of a transmitting end and a receiving end provided in an embodiment of the present application;

[0025] Figure 3 An original film diagram of a spatially coupled LDPC provided in an embodiment of the present application;

[0026] Figure 4 A flowchart of an encoding method provided in an embodiment of the present application;

[0027] Figure 5 A flowchart of another encoding method provided in an embodiment of the present application;

[0028] Figure 6 A flowchart of another encoding method provided in an embodiment of the present application;

[0029] Figure 7 A schematic diagram of a Raptor-like structure provided in an embodiment of the present application;

[0030] Figure 8 A schematic diagram of a double-angle result provided in an embodiment of the present application;

[0031] Fig. 9 A schematic diagram of a unit array structure provided in an embodiment of the present application;

[0032] Fig.10 A schematic diagram of a lower triangle structure provided in an embodiment of the present application;

[0033] Fig.11 A schematic diagram of a quasi-lower triangle structure provided in an embodiment of the present application;

[0034] Fig.12 A schematic diagram of the structure of a check column matrix provided in an embodiment of the present application;

[0035] Fig.13 A schematic diagram of the structure of a first sub-basic matrix provided in an embodiment of the present application;

[0036] Fig.14 A schematic diagram of the structure of a second sub-basic matrix provided in an embodiment of the present application;

[0037] Fig.15 A schematic diagram of the structure of another first sub-basic matrix provided in an embodiment of the present application;

[0038] Fig.16 A schematic diagram of the structure of another first sub-basic matrix provided in an embodiment of the present application;

[0039] Fig.17 A schematic diagram of the structure of another first sub-basic matrix provided in an embodiment of the present application;

[0040] Fig.18 A schematic diagram of the structure of another first sub-basic matrix provided in an embodiment of the present application;

[0041] Fig.19 A schematic diagram of the structure of another first sub-basic matrix provided in an embodiment of the present application;

[0042] Fig. 20 A schematic diagram of the structure of a check column matrix provided in an embodiment of the present application;

[0043] Fig.21 A flowchart of a decoding method provided in an embodiment of the present application;

[0044] Fig. 22 A schematic diagram of the structure of an encoding device provided in an embodiment of the present application;

[0045] Fig.23 A schematic diagram of the structure of a decoding device provided in an embodiment of the present application;

[0046] Fig.24 A schematic diagram of the structure of a communication device provided in an embodiment of the present application;

[0047] Fig.25 A schematic diagram of data simulation performance comparison provided in an embodiment of the present application. DETAILED DESCRIPTION

[0048] The following will be combined with the drawings in this application to clearly and completely describe the technical solutions in this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0049] It should be noted that, in this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in this application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.

[0050] In the following, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features.

[0051] In the description of this application, unless otherwise specified, " / " means "or", for example, A / B can mean A or B. "And / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, "at least one" means one or more, and "multiple" means two or more.

[0052] The technical solution provided in the embodiments of the present application can be applied to various mobile communication networks, for example, new radio (NR) mobile communication networks using fifth generation mobile communication technology (5th generation mobile networks, 5G), future mobile communication networks or multiple communication convergence systems, etc., and the embodiments of the present application are not limited to this.

[0053] Figure 1 FIG. 1 is a schematic diagram showing an architecture of a communication system provided by an embodiment of the present application. Figure 1 As shown, the communication system includes a base station 10 and a terminal 20.

[0054] In some embodiments, the base station 10 is used to provide wireless access services for multiple terminals. Specifically, a base station provides a service coverage area (also called a cell). Terminals entering the area can communicate with the base station through wireless signals to receive the wireless access services provided by the base station.

[0055] In some embodiments, the base station 10 can be a base station or an evolved base station (eNB or eNodeB) in long term evolution (LTE), long term evolution advanced (LTEA), a base station device in a 5G network, or a base station in a future communication system, etc. The base station may include various macro base stations, micro base stations, home base stations, wireless remote stations, reconfigurable intelligent surfaces (RIS), routers, wireless fidelity (WIFI) devices, and other network side devices.

[0056] In some embodiments, the terminal 20 may be a device with wireless transceiver function, which may be deployed on land, including indoors or outdoors, handheld, wearable or vehicle-mounted; it may also be deployed on the water surface (such as ships, etc.); it may also be deployed in the air (such as airplanes, balloons and satellites, etc.). The terminal may be a mobile phone, a tablet computer (Pad), a computer with wireless transceiver function, a virtual reality (VR) terminal, an augmented reality (AR) terminal, a wireless terminal in industrial control, a wireless terminal in self-driving, a wireless terminal in remote medical, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in smart city, a wireless terminal in smart home, etc. The embodiments of the present application do not limit the application scenarios. A terminal may sometimes also be referred to as a user, user equipment (UE), access terminal, UE unit, UE station, mobile station, mobile station, remote station, remote terminal, mobile device, UE terminal, wireless communication equipment, UE agent or UE device, etc., but the embodiments of the present application are not limited to this.

[0057] The embodiments of the present application can be applied to downlink data transmission, uplink data transmission, and device-to-device data transmission. For downlink data transmission, the transmitting end is a base station, and the corresponding receiving end is a terminal. For uplink data transmission, the transmitting end is a terminal, and the corresponding receiving end is a base station. For device-to-device data transmission, the transmitting end is a terminal, and the corresponding receiving end is also a terminal. The transmitting end and the receiving end in the present application can both include encoding devices and / or decoding devices, so that the information to be sent can be modulated and encoded, and the received encoded information can also be demodulated and decoded, so as to realize information transmission between the transmitting end device and the receiving end device. The embodiments of the present application are not limited to this.

[0058] It should be noted that Figure 1 This is just an exemplary framework diagram. Figure 1 The number of devices included in the Figure 1 In addition to the devices shown, the communication system may also include other devices, such as core network devices.

[0059] The application scenarios of the embodiments of the present application are not limited. The system architecture and business scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application. It is known to those skilled in the art that with the evolution of the network architecture and the emergence of new business scenarios, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems.

[0060] Figure 2 It is a data processing flow chart of the sending end and the receiving end. Figure 2 As shown, the transmitting end performs source coding, channel coding, constellation modulation, and resource mapping on the information source (that is, the data to be transmitted) to obtain a signal and sends it to the receiving end. After receiving the signal, the receiving end performs resource demapping, constellation demodulation, channel decoding, and source decoding on the signal to obtain the information destination (that is, the restored information source).

[0061] During the data transmission process, due to the influence of multipath, noise, interference and other factors, data transmission may be erroneous. Therefore, the sender adds some redundant information to the data to be transmitted through channel coding, and the receiver can restore the original data to be transmitted based on this redundant information, that is, eliminate the distortion caused by the data during the transmission process. Currently, the more commonly used channel coding methods include LDPC, polarization coding, turbo coding and convolution coding.

[0062] LDPC is defined by a sparse (or low-density) parity basis matrix, and decoding performance can be improved through iterative decoding, such as using belief transfer decoding.

[0063] The check matrix H of the LDPC code is m b ×Z rows and n b ×z columns, which is composed of m b ×n b The check matrix H is composed of sub-matrices, each of which is a different power of the Z×z standard permutation matrix (corresponding to the cyclic shift matrix of the unit matrix) or a Z×z all-zero square matrix. The check matrix H has the following form:

[0064]

[0065] if have That is, a Z×Z square matrix of all zeros; if is an integer greater than or equal to 0, and the corresponding submatrix is ​​the standard permutation matrix P The standard permutation matrix P of Z×Z is as follows (the standard permutation matrix can be formed by cyclically shifting the unit matrix to the right by 1 bit):

[0066]

[0067] so, Each submatrix can be uniquely identified. If a submatrix is ​​a square matrix of all zeros, the corresponding It is represented by -1 (it can also be represented by a null value or other description methods); if a submatrix is ​​obtained by cyclic shift s of the unit matrix, then Equal to s. All Therefore, the basic matrix includes two elements: elements indicating all-zero square matrices and elements indicating cyclic shifts of unit matrices.

[0068] Z is the dimension of the standard permutation matrix (submatrix), and Z can be called the lifting size. The base matrix of the LDPC code can be obtained by replacing the elements indicating the cyclic shift of the unit matrix in the basic matrix with "1" and replacing all the elements indicating the all-zero square matrix with "0". Therefore, the base matrix of the LDPC code only includes two elements: "0" and "1", where "0" is used to indicate that the index position is an element of the all-zero square matrix, and "1" is used to indicate that the index position is an element of the unit matrix cyclic shift. For the convenience of description, only the elements of the basic matrix indicating the cyclic shift of the unit matrix and the row and column index positions of these element positions can be described, and the remaining row and column index positions are defaulted to the elements indicating the all-zero square matrix. In addition, the elements indicating the cyclic shift of the unit matrix can also be represented by their cyclic shift values, while the elements indicating the all-zero square matrix can be described by -1 or null values.

[0069] For example, the basic matrix (2 rows and 4 columns) of an LDPC code is as follows:

[0070]

[0071] When the lifting value is equal to 4, the corresponding check matrix H is as follows.

[0072]

[0073] The corresponding basis matrix is ​​as follows:

[0074]

[0075] Spatially coupled LDPC is a channel coding derived from LDPC convolutional codes. Spatially coupled LDPC combines the advantages of both LDPC codes and convolutional codes. It not only has excellent decoding and error correction performance, but also can meet the requirements of high-speed coding and decoding of block LDPC codes. The characteristics of spatial coupling will cause a "threshold saturation" phenomenon in spatially coupled LDPC codes, which makes SC-LDPC codes theoretically closer to the Shannon capacity limit performance.

[0076] Next, we use the original model coupling to describe the coupling principle of spatially coupled LDPC codes. Figure 3 It is a schematic diagram of a process of obtaining a spatially coupled LDPC original model from an original model provided by an embodiment of the present application. In which, black dots represent variable nodes, plus squares are check nodes, and the solid lines connecting variable nodes and check nodes are called edges. Figure 3 (a) in the figure is the original model diagram of LDPC code; Figure 3 In (b), the LDPC code original image is copied multiple times to wait for coupling, and the serial numbers such as t, t+1, and t+2 represent the index of the original image after copying. The number of copies can be called the coupling chain length; Figure 3 In (c), some edges in each original model graph are decoupled and reconnected to the subsequent LDPC original model graph, and the maximum distance of the connection is limited by the constraint length, which can be called the coupling width; Figure 3 (d) in the figure is the original pattern diagram of the spatially coupled LDPC after coupling through the original pattern diagram.

[0077] like Figure 4 As shown, an embodiment of the present application provides a coding method, which is applied to a coding device, and the method includes the following steps:

[0078] S401: Obtain a first bit sequence to be encoded.

[0079] S402: Encode the first bit sequence based on the basic matrix and lifting value of the spatially coupled LDPC to obtain a second bit sequence.

[0080] S403: Send all or part of the bits of the second bit sequence.

[0081] The basic matrix of the spatially coupled LDPC includes L identical sub-basic matrix groups that are arranged diagonally, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers.

[0082] Exemplarily, the basic matrix of spatially coupled LDPC can be expressed as follows:

[0083]

[0084] Wherein, L is the coupling chain length, and M is the coupling width (or coupling depth).

[0085] It should be understood that the above Construct the first sub-basic matrix group; Constitute the second sub-basic matrix group; and so on, The Lth sub-basic matrix group is formed. The elements in the basic matrix of the spatially coupled LDPC can be the first element or the second element, the first element is used to indicate an all-zero square matrix, the second element is used to indicate a cyclic shift of a unit matrix, and the second element can be represented by a cyclic shift value of the unit matrix.

[0086] In some embodiments, the first sub-basic matrix group, the second sub-basic matrix group, ..., and the Lth sub-basic matrix group are all composed of M first sub-basic matrices, that is, the i-th sub-basic matrix group includes the same M first sub-basic matrices, where i is any positive integer less than or equal to L. That is, the first sub-basic matrix group, the second sub-basic matrix group, ..., and the Lth sub-basic matrix group are all composed of M first sub-basic matrices Hb0, Hb1, ..., Hb M-1 In which Hb0 is called the first first sub-basic matrix, Hb1 is called the second first sub-basic matrix, ..., Hb M-1 It is called the Mth first sub-basic matrix.

[0087] In some embodiments, the number of rows of the M first sub-basic matrices is m b , the number of columns of the M first sub-basic matrices is n b , n b Greater than m b , m b and n b All are positive integers.

[0088] The basic matrix of the spatially coupled LDPC includes L identical and diagonally arranged sub-basic matrix groups, and the sub-basic matrix group includes M first sub-basic matrices, which should be understood as: the (i-1)*nth sub-basic matrix in the basic matrix of the spatially coupled LDPC b+1 column to i*nth b Column and (j-1)*m b +(i-1)*m b +1 row to (j-1)*m b +i*m b The submatrix formed by the rows is the jth first sub-basic matrix, where i is any positive integer less than or equal to L, and i is any positive integer less than or equal to M.

[0089] In some embodiments, the coupling width M of the spatially coupled LDPC may be equal to at least one of the following: 2, 3, 4, 5, 6, or 7.

[0090] In some embodiments, the elements in the first sub-basic matrix may be first elements or second elements. The first element is used to indicate an all-zero square matrix, and the first element may be represented by -1 or a null value. The second element is used to indicate a cyclic shift of a unit matrix, and the second element may be represented by a cyclic shift value of the unit matrix.

[0091] In some embodiments, the first sub-basic matrix includes a systematic column matrix and a check column matrix, wherein the systematic column matrix is ​​composed of the first k sub-basic matrix b The check column matrix is ​​composed of the last m elements of the first sub-basic matrix. b The elements of the column, k b With m b The sum is equal to the number of columns n of the first sub-basic matrix b , k b With m b are all positive integers. Exemplarily, the first sub-basic matrix may have the following structure: [Hb s , Hb p ]. Among them, Hb s is the column matrix of the above system, Hb p is the above check column matrix. System column matrix Hb s and check column matrix Hb p The number of rows is the same, both are m b .

[0092] In some embodiments, the check column matrix of at least one of the M first sub-basic matrices adopts any one of the following structures:

[0093] 1. Raptor-like structure;

[0094] 2. Unit array structure;

[0095] 3. Lower triangle structure;

[0096] 4. Quasi-lower triangular structure: The quasi-lower triangular structure indicates that the lower right corner of the matrix is ​​a lower triangular structure.

[0097] 5. A first preset structure, wherein the column weights of the first a columns of the check column matrix of the first preset structure are greater than 0, and the column weights of the other columns except the first a columns are equal to 0, a is a positive integer, the column weight is the number of the second elements in a column, and the second element is used to indicate the cyclic shift of the unit matrix;

[0098] 6. A second preset structure, in which all elements of the check column matrix using the second preset structure are first elements, and the first element is used to indicate an all-zero square matrix.

[0099] In some embodiments, among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure or a unit matrix structure. In this way, during the encoding process, the matrix inversion operation of the first first sub-basic matrix can be simplified, thereby reducing the encoding complexity.

[0100] In some embodiments, the structure of the check column matrix of the first first sub-basic matrix among the M first sub-basic matrices can be determined by at least one of the following parameters: the length of the first bit sequence, the number of first bit subsequences included in the first bit sequence, and the length of the first bit subsequence.

[0101] Exemplarily, the following three implementations may be used to determine whether the check column matrix adopts a Raptor-like structure or a unit matrix structure:

[0102] Implementation method 1: When the length of the first bit sequence (also referred to as the transmission block size) is greater than the first threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, the first threshold is a positive integer, and when the length of the first bit sequence is less than or equal to the first threshold, the check column matrix of the first first sub-basic matrix does not adopt a Raptor-like structure; or, when the length of the first bit sequence is less than or equal to the second threshold, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, the second threshold is a positive integer, and when the length of the first bit sequence is greater than the second threshold, the check column matrix of the first first sub-basic matrix does not adopt a unit matrix structure. In one example, the first threshold is greater than or equal to the second threshold. As an example, the first threshold is an integer greater than 512. In another example, the second threshold is an integer greater than 256. In another specific example, the first threshold is equal to the second threshold, the first threshold is equal to an integer less than 4096 and less than 40960, or the first threshold is an integer greater than or equal to 4096 and less than or equal to 16384. For example, the first threshold may be equal to 4096, 6144, 8192, 8448, 16384, 20000, or 40960. In one example, the first threshold is equal to the second threshold, and when the length of the first bit sequence is greater than the first threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, otherwise, a unit matrix structure is adopted.

[0103] Implementation method 2: The first bit sequence may include L first bit subsequences (or information bit subsequences). When the length of the first bit subsequence is greater than the third threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, the third threshold is a positive integer, and when the length of the first bit subsequence is less than or equal to the third threshold, the check column matrix of the first first sub-basic matrix does not adopt a Raptor-like structure; or, when the length of the first bit subsequence is less than or equal to the fourth threshold, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, the fourth threshold is a positive integer, and when the length of the first bit subsequence is greater than the fourth threshold, the check column matrix of the first first sub-basic matrix does not adopt a unit matrix structure. In an example, the third threshold is greater than or equal to the fourth threshold, and L is a positive integer. As an example, the third threshold is an integer greater than or equal to 256 and less than 4096, or the third threshold is an integer greater than or equal to 256 and less than or equal to 1024. As an example, the fourth threshold is an integer greater than or equal to 256 and less than 4096, or the fourth threshold is an integer greater than or equal to 512 and less than or equal to 2048. For example, the third threshold or the fourth threshold is equal to 256, 512, 768, 1024, 1536, or 2048. In one example, the third threshold may be equal to the fourth threshold, and when the length of the first bit sequence is greater than the third threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, otherwise, a unit matrix structure is adopted.

[0104] Implementation method three, the first bit sequence may include L first bit subsequences (or called information bit subsequences), when the number of first bit subsequences L is greater than the fifth threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, the fifth threshold is a positive integer, and when the number of first bit subsequences L is less than or equal to the fifth threshold, the check column matrix of the first first sub-basic matrix does not adopt a Raptor-like structure; or, when the number of first bit subsequences L is less than or equal to the sixth threshold, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, the sixth threshold is a positive integer, L is a positive integer, and when the number of first bit subsequences L is greater than the sixth threshold, the check column matrix of the first first sub-basic matrix does not adopt a unit matrix structure. In an example, the fifth threshold is greater than or equal to the sixth threshold. As an example, the fifth threshold is an integer greater than or equal to 8 and less than 64, or the fifth threshold is an integer greater than or equal to 16 and less than or equal to 48. As an example, the sixth threshold is an integer greater than or equal to 8 and less than 64, or the sixth threshold is an integer greater than or equal to 16 and less than or equal to 48. For example, the fifth threshold or the sixth threshold is equal to 8, 12, 16, 20, 24, 32, 36, 48, 56, or 64. In one example, the fifth threshold may be equal to the sixth threshold, and when the length of the first bit sequence is greater than the fifth threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, otherwise, a unit matrix structure is adopted.

[0105] It should be understood that, through experimental simulation, when the length of the first bit sequence or the length of the first bit subsequence is long, the check column matrix of the first first sub-basic matrix has better coding performance when the Raptor-like structure is used than when the unit matrix structure is used. When the length of the first bit sequence or the length of the first bit subsequence is short, the check column matrix of the first first sub-basic matrix has better coding performance when the unit matrix structure is used than when the Raptor-like structure is used. Fig.25 As shown, the horizontal axis represents the ratio of signal power to noise power under Gaussian channel (generally called signal-to-noise ratio), in decibels; the vertical axis represents the packet error rate, whose value is less than or equal to 1 and greater than or equal to 0; under the same signal-to-noise ratio, if the packet error rate is lower, the performance is better, or the closer the curve is to the left, the better the performance. Fig.25In the figure, the check column matrix marked as "Str1" corresponds to the first sub-basic matrix, which adopts the Raptor-like structure (corresponding to the dotted curve), and the check column matrix marked as "Str2" corresponds to the first sub-basic matrix, which adopts the unit matrix structure (corresponding to the solid curve), and the corresponding coupling chain length L is equal to 80, and the coupling width M is equal to 2. The performance comparisons when the length of the first bit subsequence is 512, 1024, and 2048 are given respectively. It can be seen that when the length of the first bit subsequence is 512, the performance marked as "Str2" is slightly better than the performance marked as "Str1", and when the length of the first bit subsequence is 1024 and 2048, the performance marked as "Str1" is better than the performance marked as "Str2".

[0106] In some embodiments, the structures of the check column matrices of any two of the M first sub-basic matrices are different. The check column matrix of the first first sub-basic matrix and the check column matrix of the second first sub-basic matrix are exemplarily introduced below.

[0107] Example 1: Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, and the check column matrix of the second first sub-basic matrix adopts a unit matrix structure.

[0108] Example 2: Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, and the check column matrix of the second first sub-basic matrix adopts a Raptor-like structure.

[0109] Example 3: The check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, and the check column matrix of the second first sub-basic matrix adopts a first preset structure. As an example, the value of a is less than or equal to the number of rows of the core matrix of the first first sub-basic matrix. As an example, the number of rows of the core matrix of the first first sub-basic matrix is ​​equal to 3, 4, 5, 6, or 8. The core matrix of the first sub-basic matrix is ​​the upper left m of the first sub-basic matrix. b0 Line kb+m b0 The matrix composed of columns, m b0 It can be equal to 3, 4, 5, 6, or 8.

[0110] Example 4: Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts the unit matrix structure, and the check column matrix of the second first sub-basic matrix adopts the first preset structure. As an example, a is equal to 2, 3, 4, 5, 6, or 8.

[0111] In some embodiments, in the system column matrix of at least one of the M first sub-basic matrices, there are b columns with a column weight equal to 0, and the column weights of the other columns except the b columns are greater than 0, the column weight is the number of second elements in a column of elements, and b is a positive integer. As an example, the b columns with a column weight equal to 0 are the first b columns of the system column matrix. As an example, the value of b is equal to the number of punctures of the system column. In a specific example, the b can be equal to 1 or 2.

[0112] In some embodiments, the boost value is equal to a positive integer power of 2. For example, the boost value can be equal to 8, 16, 32, 64, 128, 256, or 512.

[0113] In some embodiments, the basic matrix of the spatially coupled LDPC may include N second sub-basic matrices in addition to the L sub-basic matrix groups, where N is a positive integer. It should be understood that the N second sub-basic matrices may enhance the error correction performance of the spatially coupled LDPC.

[0114] In some embodiments, the number of columns of the N second basic sub-matrices is m. b , and the number of rows of the N second sub-basic matrices is m b , m b is a positive integer. That is, the second sub-basic matrix is ​​a square matrix.

[0115] In some embodiments, the N second sub-basic matrices are arranged on the diagonal of the lower right corner sub-matrix of the basic matrix of the spatially coupled LDPC. As an example, the lower right corner sub-matrix is ​​composed of the N*m lower right corner sub-matrix of the basic matrix of the spatially coupled LDPC. b Column and N*m b Row composition.

[0116] The N second sub-basic matrices are arranged on the diagonal of the lower right corner sub-matrix of the basic matrix of the spatial coupling LDPC, which should be understood as: the L*nth sub-matrix in the basic matrix of the spatial coupling LDPC b +(s-1)*m b +1 column to L*n b +s*m b Column and L*m b +(s-1)*m b +1 row to L*m b +s*m b The submatrix formed by the rows is the s-th second sub-basic matrix, where s is any positive integer less than or equal to N.

[0117] In some embodiments, the second sub-basic matrix adopts any one of the following structures:

[0118] 1. Raptor-like structure;

[0119] 2. Unit array structure;

[0120] 3. Lower triangle structure;

[0121] 4. Quasi-lower triangle structure.

[0122] It should be understood that the second sub-basic matrix adopts the above structure, which can simplify the inverse operation of the second sub-basic matrix during the encoding process, which is beneficial to reducing the encoding complexity.

[0123] In some embodiments, the number N of the second sub-basic matrices is less than the number M of the first sub-basic matrices. For example, the number of the second sub-basic matrices is equal to M-1, where M is an integer greater than 1 and M is the coupling width of the spatially coupled LDPC.

[0124] Exemplarily, taking N=M-1 as an example, the basic matrix of spatially coupled LDPC can be expressed as:

[0125]

[0126] Where Hb represents the first sub-basic matrix, Tb represents the second sub-basic matrix. L is the length of the coupling chain in the spatial coupling process, M is the coupling width (or coupling depth), and the specific spatial coupling process can be found in the relevant technical documents of the original model coupling, which will not be described in detail here. It can be seen that the basic matrix Hb SC There are multiple sub-matrices that are not all equal to 0 (such as and Tb j ), in addition to these and Tb j Except for , the remaining elements are all equal to 0, that is, they are all elements indicating an all-zero square matrix, where i = 0, 1, ..., M-1, t = 0, 1, ..., L-1, j = 0, 1, ..., M-2. The elements in the basic matrix of spatially coupled LDPC can be the first element or the second element, the first element is used to indicate an all-zero square matrix, the second element is used to indicate the cyclic shift of the unit matrix, and the second element can be represented by the cyclic shift value of the unit matrix.

[0127] In some embodiments, based on the basic matrix and lifting value of the spatially coupled LDPC, the first element in the basic matrix is ​​replaced by a square matrix of all zeros with a size of Z rows and Z columns, and the second element is replaced by a unit matrix with a size of Z rows and Z columns, and the matrix is ​​cyclically shifted, and the cyclic shift size is the value of the second element, and the coupling check matrix of the spatially coupled LDPC can be obtained. Exemplarily, a coupling check matrix of a spatially coupled LDPC can be represented by the following formula:

[0128]

[0129] Among them, the coupling check matrix H SCThe elements in at least include 0 and 1, and the coupling check matrix H SC The matrix includes multiple sub-matrices that are not all equal to 0 (such as the first sub-parity check matrix and the second sub-parity check matrix T j ), in addition to these and T j Except for , the other elements are all equal to 0, where i = 0, 1, ..., M-1, t = 0, 1, ..., L-1, j = 0, 1, ..., M-2. The size of T is m rows and n columns. j The size of is m rows and m columns, where m and n are both positive integers. Among them, n is equal to n b The product of Z, m is equal to m b The product of L and Z, where Z is the boost value. The number of rows of the coupling check matrix of the spatial coupling LDPC code is (L+M-1)*m, and the number of columns is L*n+(M-1)*m.

[0130] For the coupled check matrix H SC , the first sub-parity check matrix of sequence number i The first sub-basic matrix of index i And the lifting value is determined. That is, the first sub-basic matrix of sequence number i is The first submatrix of sequence number i can be obtained by replacing the elements indicating the all-zero square matrix with an all-zero square matrix of size Z rows and columns, and replacing the elements indicating the cyclic shift of the unit matrix with the unit matrix of size Z rows and columns. Among them, i=0, 1,…, M-1, t=0, 1,…, L-1.

[0131] For the coupled check matrix H SC , the second sub-parity check matrix of sequence number j is T j , is the second sub-basic matrix Tb j And the lifting value Z is determined. That is, the second sub-basic matrix Tb j The elements indicating the all-zero square matrix in are replaced with the all-zero square matrix of size Z rows and Z columns, and the elements indicating the cyclic shift of the unit matrix are replaced with the unit matrix of size Z rows and Z columns. The matrix obtained by cyclic shift can obtain T j , where j = 0, 1,…, M-1.

[0132] The encoding process of the spatially coupled LDPC code is as follows: the input information is spatially coupled LDPC encoded to obtain a coding sequence C, which satisfies the following equation: SC ×C=0, where C is the coding sequence, 0 is the all-zero vector, and H SC is the coupling check matrix.

[0133] The coding sequence may include L+M code blocks, that is, L first code blocks (that is, the second bit subsequence hereinafter) and M second code blocks (that is, the third bit subsequence hereinafter), wherein the length of each first code block in the L first code blocks is equal to n, and the length of each second code block in the M second code blocks is equal to m. The tth code block in the spatially coupled LDPC coding sequence corresponds to the coupled check matrix H SC The submatrix group that is not all equal to 0 is in The first element in the upper left corner is located at H SC The row index in is t*m and the column index is t*n, where t is a non-negative integer less than L; the j-th second code block in the spatially coupled LDPC coded sequence corresponds to the coupled check matrix H SC The submatrix that is not all equal to 0 is T j , where T j The first element in the upper left corner is located at H SC The row index in is t*m and the column index is t*n, where t is a non-negative integer less than L. In the embodiments of the present application, variables are numbered starting from 0 unless otherwise specified.

[0134] The following specifically introduces step S402 with respect to different structures of spatially coupled LDPC.

[0135] 1. When the basic matrix of spatially coupled LDPC only includes L sub-basic matrix groups, such as Figure 5 As shown, S402 can be specifically implemented as the following steps S4021a-S4022a:

[0136] S4021a. Based on the M first sub-basic matrices and the lifting values, encode the L first bit subsequences to obtain L second bit subsequences.

[0137] The first bit sequence includes L first bit subsequences. The second bit subsequence may have other names, such as a coded bit subsequence, which is not limited.

[0138] Exemplarily, the L first bit subsequences can be described as {a0, a1, ..., a L-1}, the length of each first bit subsequence a is k bits, k is a positive integer, and a is a column vector. The second bit subsequence obtained by encoding L first bit subsequences can be described as {b0, b1, ..., b L-1}, the length of each second bit subsequence b is n bits, n is a positive integer greater than or equal to k, and b is a column vector. The M first sub-basic matrices can be represented as Hb0, Hb1, ..., Hb M-1

[0139] For the first bit subsequence of sequence number t, for example, described as at , based on the M first sub-basic matrices and the lifting value, the first bit subsequence a t By encoding, we can obtain the second bit subsequence b of sequence number t t .

[0140] First, according to the M first sub-basic matrices (Hb0, Hb1, ..., Hb M-1 ) and the lifting value, determine that the M sub-parity check matrices are H0, H1, ..., H M-1 , that is, replace the first element in the first sub-basic matrix with a Z×Z square matrix of all zeros, and replace the second element in the first sub-basic matrix with a cyclic shift matrix of the Z×Z identity matrix. It should be understood that each sub-parity check matrix includes the replaced system column matrix H S And the replaced check column matrix H P Then, based on H in the M sub-parity check matrices S and H P , encode the first bit subsequence. The specific encoding process is as follows:

[0141] (1) When t is equal to 0, the first bit subsequence of sequence number 0 is encoded based on the first sub-basic matrix Hb0 of sequence number 0 and the lifting value to obtain the second bit subsequence of sequence number 0. Specifically, the sub-parity check matrix H0 determined by the first sub-basic matrix Hb0 of sequence number 0 and the lifting value is calculated as follows:

[0142]

[0143] Thus, the second sub-bit sequence of sequence number 0 can be expressed as in, and They are respectively the replaced systematic column matrix and the check column matrix in the first sub-parity check matrix H0 of sequence number 0.

[0144] (2) When t is equal to 1, based on the first sub-basic matrix Hb0 of sequence number 0, the first sub-basic matrix Hb1 of sequence number 1, and the lifting value, the first bit sub-sequence a1 of sequence number 1 is encoded to obtain the second bit sub-sequence b1 of sequence number 1. Specifically, the first sub-basic matrix Hb0 of sequence number 0, the first sub-basic matrix Hb1 of sequence number 1, and the lifting value are used to determine the first sub-parity check matrices H0 and H1, and the following calculation is performed:

[0145]

[0146] Thus, the second sub-bit sequence of sequence number 1 can be expressed as

[0147] (3) When t is less than M, based on t first sub-basic matrices Hb0, ..., Hb t , and the first bit subsequence a of the boost value pair number t t Encode to obtain the second bit subsequence b of sequence number t t The specific calculation is as follows:

[0148]

[0149] Thus, the second bit subsequence b t It can be expressed as

[0150] (4) When t is greater than or equal to M, based on the M first sub-basic matrices Hb0, ..., Hb M-1 , and the first bit subsequence a of the boost value pair number t t Encode to obtain the second bit subsequence b of sequence number t t The specific calculation is as follows:

[0151]

[0152] Thus, the second bit subsequence b t It can be expressed as

[0153] S4022a. Obtain a second bit sequence based on L second bit subsequences.

[0154] As a possible implementation manner, the second bit sequence is obtained by concatenating L second bit subsequences.

[0155] 2. When the basic matrix of the spatially coupled LDPC includes L sub-basic matrix groups and N second sub-basic matrices, such as Figure 6 As shown, S402 can be specifically implemented as the following steps S4021b-S4023b:

[0156] S4021b. Based on the M first sub-basic matrices and the lifting values, encode the L first bit subsequences to obtain L second bit subsequences.

[0157] The specific implementation of step S4021b may refer to the description in step S4021a, which will not be repeated here.

[0158] S4022b: Based on the N second sub-basic matrices, the lifting values, and the last N first sub-basic matrices among the M first sub-basic matrices, encode the last N second bit subsequences among the L second bit subsequences to obtain N third bit subsequences.

[0159] The N third bit subsequences can be described as {c0, c1, ..., c N-1}, the length of each third bit subsequence is nk, n is the length of the first bit subsequence, and k is the length of the second bit subsequence. The N second sub-basic matrices can be described as (Tb0, Tb1, ..., Tb N-1 ).

[0160] It should be understood that according to the N second sub-basic matrices (Tb0, Tb1, ..., Tb N-1 ) and the lifting value, determine that the N second sub-parity check matrices are T0, T1, ..., T N-1 , that is, replace the first element in the second sub-basic matrix with a Z×Z all-zero square matrix, and replace the second element in the second sub-basic matrix with a cyclic shift matrix of the Z×Z identity matrix.

[0161] The third bit subsequence c of sequence number s s The encoding process is as follows:

[0162] c s =(T s ) -1 ×v

[0163] Among them, H i represents the i-th sub-parity check matrix among the last N first sub-parity check matrices, b L-i represents the Li-th second bit subsequence in the last N second bit subsequences.

[0164] In some embodiments, if the N second sub-parity check matrices are T0, T1, ..., T N-1 If they are all unit matrices, there is no need to invert them (the inverse matrix of the unit matrix is ​​itself), that is, c s =v.

[0165] S4023b. Obtain a second bit sequence based on the L second bit subsequences and the N third bit subsequences.

[0166] As a possible implementation manner, L second bit subsequences and N third bit subsequences are sequentially concatenated to obtain a second bit sequence.

[0167] It can be seen that when the basic matrix of the spatially coupled LDPC also includes N second sub-basic matrices, the second bit sequence also includes N third bit subsequences, which can provide more prior information to the receiving end and help the receiving end to correct errors in the received bit sequence.

[0168] The structure of the matrix is ​​described below with reference to specific examples and accompanying drawings.

[0169] 1. Raptor-like structure

[0170] Figure 7 A schematic diagram of a Raptor-like structure provided in an embodiment of the present application. Figure 7 In the figure, the dots represent the second element, and the remaining blank areas represent the first element. It should be understood that the dots in the figure are only schematic examples, where a dot corresponds to a certain area, which only indicates that the area has the second element, and does not mean that all elements in the area are the second element. The examples in the following figures also have this feature, and will not be repeated one by one below.

[0171] like Figure 7 As shown, the check column matrix with a Raptor-like structure has the following characteristics:

[0172] 1. Upper left corner m b0 Line m b0 The row weight of the submatrix 701 formed by the columns is greater than 1 and the column weight is greater than 1;

[0173] 2. Lower left corner m b -m b0 Line m b0 There are columns with column magnitude greater than 0 in the submatrix 702 formed by the columns;

[0174] 3. Upper right corner m b0 Line m b -m b0 All elements in the submatrix 703 formed by the columns are first elements;

[0175] 4. m in the lower right corner b -m b0 Line m b -m b0 The elements on the diagonal of the submatrix 704 formed by the columns are all second elements, and the elements at the remaining positions are all first elements.

[0176] Among them, m b0 is less than or equal to n b A positive integer.

[0177] In one example, the second feature can be changed to: lower left corner m b -m b0 Line m b0 There may not be any column with a column weight greater than 0 in the submatrix 702 composed of columns.

[0178] It can be understood that the advantage of the check column matrix with a Raptor-like structure in the first sub-basic matrix is ​​that b0 When the check bit of the column isb -m b0 When the check bits of the columns are calculated, there is no need to perform a matrix inversion operation, so the dimension of the matrix that needs to be inverted is reduced, which can simplify the encoding operation, reduce the encoding complexity, and achieve fast encoding.

[0179] In some embodiments, for a first sub-basic matrix of a check column matrix having a Raptor-like structure, the upper left m b0 Line kb+m b0 The matrix composed of columns can be called the core matrix (kb is the number of columns in the system column matrix). The weight of any row of the core matrix is ​​greater than 1, and the weight of any column is greater than 1. In addition, the upper right corner m of the first sub-basic matrix b0 Line m b -m b0 All elements in the matrix composed of columns are the first elements.

[0180] In some embodiments, the upper left corner m of the check column matrix having a Raptor-like structure b0 Line m b0 The submatrix 701 formed by the columns is a matrix with a dual diagonal structure.

[0181] 1. The i-th element in the i-th row and the mod(i+1, m b0 ) elements are all second elements and equal to 0, i = 0, 1, 2, ..., m b0 -1;

[0182] 2. The second element in the first column to the mth element b0 There is a second element in the elements that is not equal to 0. For example, the column weight of column 1 is equal to 3.

[0183] It can be understood that if the upper left corner m in the check column matrix b0 Line m b0 The submatrix 701 composed of the columns is a matrix of a dual diagonal structure. b0 When the check bits of the columns are calculated, it is not necessary to perform an inversion operation on the sub-matrix 701, which can reduce the coding complexity.

[0184] As an example, Figure 8 A schematic diagram of a dual diagonal structure provided by an embodiment of the present application is shown. Figure 8 As shown, where m b0 is equal to 6, where the dot represents the second element and the remaining blank space represents the first element. The numbers at the top of the figure (0 to 5) are the column indices, and the numbers on the far left (0 to 5) are the row indices.

[0185] In some examples, m b0It can be 3, 4, 5, 6, 7 or 8.

[0186] In some examples, m b0 Can be equal to m b At this time, the check column matrices with Raptor-like structure are all core matrices, or matrices with dual diagonal structure.

[0187] 2. Unit Array Structure

[0188] Fig. 9 This is a schematic diagram of a unit matrix structure provided in an embodiment of the present application, that is, all diagonal elements in a check column matrix having a unit matrix structure are second elements. Fig. 9 As shown, the dots represent the second element, and the remaining blank space represents the first element. If the first sub-basic matrix has a check column matrix with a unit matrix structure, the encoding process is very simple, and the calculation of all check bits does not require an inversion operation, the complexity is very low, and parallel calculations can be performed to further improve the speed of the encoding operation.

[0189] In one example, the values ​​of all elements on the diagonal of the check column matrix having the identity matrix structure are equal to 0 (ie, all elements on the diagonal indicate the identity matrix).

[0190] 3. Lower triangle structure

[0191] Fig.10 This is a schematic diagram of a lower triangle structure provided in an embodiment of the present application. Fig.10 As shown, the dots represent the second element, and the remaining blank space represents the first element. The check column matrix with a lower triangular structure has the following characteristics:

[0192] 1. All elements on the diagonal are second elements;

[0193] 2. There is at least one second element among all elements below the diagonal.

[0194] It can be understood that the advantage of the check column matrix with a lower triangular structure in the first sub-basic matrix is ​​that all the check bits do not need to be calculated by inversion operations, which can simplify the encoding operation, reduce the encoding complexity, and achieve fast encoding.

[0195] In one example, the values ​​of all elements on the diagonal of the check column matrix having a lower triangular structure are equal to zero.

[0196] In one example, the values ​​of all elements indicating cyclic shifts of the unit matrix in the check column matrix having the lower triangular structure are equal to 0.

[0197] In one example, all elements on the diagonal of the check column matrix having a lower triangular structure are elements indicating a cyclic shift of the unit matrix, and the elements indicated by the row and column indexes {i+1, i} corresponding to any integer i in the check column matrix are elements indicating a cyclic shift of the unit matrix, where i is less than m. b1 Any non-negative integer, m b1 Less than or equal to m b , m b is the number of rows of the check column matrix, and the other elements are all elements indicating an all-zero square matrix. b1 Equal to 2, 3, 4, 5, 6, 7, or 8.

[0198] 4. Quasi-lower triangle structure

[0199] Fig.11 This is a schematic diagram of a quasi-lower triangle structure provided in an embodiment of the present application. Fig.11 As shown, the dots represent the second element, and the remaining blank space represents the first element. The check column matrix with a quasi-lower triangular structure has the following characteristics:

[0200] 1. Upper left corner m b0 Line m b0 The row weight of the submatrix 1101 formed by the columns is greater than 1 and the column weight is greater than 1;

[0201] 2. Lower left corner m b -m b0 Line m b0 The column weight of the submatrix 1102 formed by the columns is also greater than 0;

[0202] 3. Upper right corner m b0 Line m b -m b0 All elements of the submatrix 1103 formed by the columns are elements indicating an all-zero square matrix;

[0203] 4. m in the lower right corner b -m b0 Line m b -m b0 The submatrix 1104 formed by the columns has a lower triangular structure.

[0204] It can be understood that the advantage of the check column matrix with a quasi-lower triangular structure in the first sub-basic matrix is ​​that when calculating the corresponding first m b0 When the check bit of the column is b -m b0 When the check bits of the columns are calculated, there is no need to perform a matrix inversion operation. It can be seen that the dimension of the matrix that needs to be inverted becomes smaller, which can simplify the encoding operation, reduce the encoding complexity, and achieve fast encoding.

[0205] In addition, the upper left corner m b0 Line m b0 The submatrix 1101 formed by the columns may be a matrix of the dual diagonal structure mentioned in the aforementioned Raptor-like structure.

[0206] Among them, m b0 is less than n b In one example, m bo Equal to 3, 4, 5, 6, 8 or 10. m b is greater than m bo An integer of +4.

[0207] 5. The first preset structure

[0208] In the check column matrix of the first preset structure, the column weights of the first a columns are greater than 0, the column weights of the other columns except the first a columns are equal to 0, and a is a positive integer. Fig.12 A schematic diagram of a check column matrix using a first preset structure is provided in an embodiment of the present application. Fig.12 As shown, the dots represent the second element, and the remaining blank spaces represent the first element. The first a columns form a submatrix 1201, each column has a column weight greater than 0, and the last m b The column weight of each column of the submatrix 1202 composed of -a columns is equal to 0.

[0209] 6. Second preset structure

[0210] In the check column matrix of the second preset structure, all elements are first elements, and the first element is used to indicate an all-zero square matrix.

[0211] The structure of the first sub-basic matrix is ​​described in detail below with reference to specific examples and the accompanying drawings.

[0212] Example 1

[0213] In this example, M is taken as 2, that is, the first bit subsequence is encoded based on two first sub-basic matrices and the lifting value to obtain the second bit subsequence, and the two first sub-basic matrices are Hb0 and Hb1 respectively.

[0214] Among the two first sub-basic matrices, one first sub-basic matrix has a check column matrix having a unit matrix structure, and the other first sub-basic matrix has a check column matrix having a lower triangular structure. For example, the check column matrix of the first first sub-basic matrix Hb0 has a unit matrix structure, and the check column matrix of the second first sub-basic matrix Hb1 has a lower triangular structure.

[0215] Fig.13 A schematic diagram of the structure of a first sub-basic matrix provided in an embodiment of the present application is shown in FIG. Fig.13As shown, Fig.13 (a) corresponds to the first sub-basic matrix Hb0, Fig.13 (b) corresponds to the second first sub-basic matrix Hb1. The numbers in the first row represent the column index (0 to 39). The dimensions of the two first sub-basic matrices are both 8 rows and 40 columns. Sub-matrix 1301 and sub-matrix 1303 are the system column matrices of Hb0 and Hb1, respectively, and sub-matrix 1302 and sub-matrix 1304 are the check column matrices of Hb0 and Hb1, respectively. The first sub-basic matrix includes two kinds of elements: the "-1" element indicates an element indicating an all-zero square matrix (the first element); the non-"-1" element indicates an element indicating a cyclic shift of the unit matrix (the second element), wherein the non-"-1" elements are all non-negative integers, which describe the number of bits of the cyclic shift of the unit matrix. It can be seen that the check column matrix 1302 of the first sub-basic matrix Hb0 is a matrix of 8 rows and 8 columns, which has a unit matrix structure, and only the elements on the diagonal are equal to 0, and the rest are equal to -1. The check column matrix 1304 of the first sub-basic matrix Hb1 is a matrix of 8 rows and 8 columns, having a lower triangular structure, with every diagonal element being a second element and at least one second element being present below the diagonal.

[0216] In addition, in this example, there is a second sub-basic matrix, such as Fig.14 As shown, the second sub-basic matrix adopts a unit matrix structure, and only the elements on the diagonal are second elements, and the values ​​of the second elements are equal to 0.

[0217] Example 2

[0218] The difference between this example and Example 1 is that the M first sub-basic matrices used are different. In this example, taking M equal to 2 as an example, among the M first sub-basic matrices used, there is a first sub-basic matrix whose check column matrix has a Raptor-like structure, and another first sub-basic matrix whose check column matrix has the following characteristics: the column weights of the first a columns are greater than 0, the column weights of the remaining columns are equal to 0, and a is an integer greater than 0. Among them, the upper left corner m of the check column matrix with a Raptor-like structure b0 Line m b0 The submatrix formed by the columns is a matrix with a double diagonal structure, and a is equal to m b0 , m b0 is an integer greater than 1.

[0219] For example, m b0Equal to 4, a equal to 4, M equal to 2, and two first sub-basic matrices are taken as examples, Hb0 and Hb1. Among them, the check column matrix of the first first sub-basic matrix Hb0 has a Raptor-like structure, and the check column matrix of the second first sub-basic matrix Hb1 has the characteristics that the column weights of the first a columns are greater than 0, the column weights of the remaining columns are equal to 0, and a is an integer greater than 0.

[0220] Fig.15 A schematic diagram of the structure of another first sub-basic matrix provided in an embodiment of the present application is shown in FIG. Fig.15 As shown, Fig.15 (a) corresponds to the first sub-basic matrix Hb0, Fig.15 (b) corresponds to the second first sub-basic matrix Hb1. The numbers in the first row of the figure represent column indices (0 to 39). The dimensions of the two first sub-basic matrices are both 8 rows and 40 columns, where sub-matrix 1501 and sub-matrix 1503 are the system column matrices of Hb0 and Hb1, respectively, and sub-matrix 1502 and sub-matrix 1504 are the check column matrices of Hb0 and Hb1, respectively.

[0221] It can be seen that the check column matrix 1502 of the first sub-basic matrix Hb0 is a matrix of 8 rows and 8 columns, which has a Raptor-like structure, that is, m b0 =4, the row weight of the submatrix composed of the upper left 4 rows and 4 columns is greater than 1 and the column weight is greater than 1, the row weight is 2 and 3 respectively, and the column weight is 2 and 3 respectively; there is a column with a column weight greater than 0 in the submatrix composed of the lower left 4 rows and 4 columns; all elements in the submatrix composed of the upper right 4 rows and 4 columns are first elements; the elements on the diagonal of the submatrix composed of the lower right 4 rows and 4 columns are all second elements, and the rest of the elements are all first elements, that is, it has a unit matrix structure. The submatrix composed of the upper left 4 rows and 4 columns in the check column matrix with a Raptor-like structure is a matrix with a dual diagonal structure.

[0222] The check column matrix 1504 of the second first sub-basic matrix Hb1 is a matrix of 8 rows and 8 columns, which has the following characteristics: the column weights of the first a columns are greater than 0, the column weights of the remaining columns are equal to 0, and a is equal to 4. In this example, the lifting value is equal to 16.

[0223] Example 3

[0224] In this example, taking M equal to 2 as an example, the check column matrices of the two first sub-basic matrices used both have a Raptor-like structure. The check column matrix has the following characteristics: b0 Line m b0 The submatrix composed of columns is a matrix with a double diagonal structure, m b0 Equals 4.

[0225] Exemplarily, taking two first sub-basic matrices Hb0 and Hb1 as an example, the first first sub-basic matrix Hb0 and the second first sub-basic matrix Hb1 both have a Raptor-like structure.

[0226] Fig.16 A structural diagram of another first sub-basic matrix provided in an embodiment of the present application is shown in FIG. Fig.16 As shown, Fig.16 (a) corresponds to the first sub-basic matrix Hb0, Fig.16 (b) corresponds to the second first sub-basic matrix Hb1. The numbers in the first row of the figure represent column indices (0 to 39). The dimensions of the two first sub-basic matrices are both 8 rows and 40 columns, where sub-matrix 1601 and sub-matrix 1603 are the system column matrices of Hb0 and Hb1, respectively, and sub-matrix 1602 and sub-matrix 1604 are the check column matrices of Hb0 and Hb0, respectively. Fig.16 It can be seen that the check column matrices of the two first sub-basic matrices both have a Raptor-like structure. In this example, the lift value is equal to 16.

[0227] Example 4

[0228] In this example, taking M equal to 2 as an example, of the two first sub-basic matrices used, the check column matrix of one first sub-basic matrix has a Raptor-like structure, and the check column matrix of the other first sub-basic matrix has the following characteristics: all elements are first elements. The check column matrix with a Raptor-like structure has the following characteristics: the upper left corner m b0 Line m b0 The submatrix composed of columns is a matrix with a double diagonal structure, m b0 Equals 4.

[0229] Exemplarily, taking two first sub-basic matrices Hb0 and Hb1 as an example, the first sub-basic matrix Hb0 has a Raptor-like structure, and all elements in the first sub-basic matrix Hb1 are first elements.

[0230] Fig.17 A structural diagram of another first sub-basic matrix provided in an embodiment of the present application is shown in FIG. Fig.17 As shown, Fig.17 (a) corresponds to the first sub-basic matrix Hb0, Fig.17 (b) corresponds to the first sub-basic matrix Hb1. The numbers in the first row of the figure represent column indices (0 to 39). The dimensions of the two first sub-basic matrices are both 8 rows and 40 columns, where sub-matrix 1701 and sub-matrix 1703 are the system column matrices of Hb0 and Hb1, respectively, and sub-matrix 1702 and sub-matrix 1704 are the check column matrices of Hb0 and Hb0, respectively. Fig.17 It can be seen that the first sub-basic matrix Hb o The check column matrix of has a Raptor-like structure, and all elements in the check column matrix of the first sub-basic matrix Hb1 are first elements. In this example, the lifting value is equal to 16.

[0231] Example 5

[0232] In this example, taking M equal to 2 as an example, among the two first sub-basic matrices used, the check column matrix of one of the first sub-basic matrices has a unit matrix structure.

[0233] Exemplarily, taking two first sub-basic matrices Hb0 and Hb1 as an example, the two first sub-basic matrices both have a unit matrix structure.

[0234] Fig.18 A structural diagram of another first sub-basic matrix provided in an embodiment of the present application is shown in FIG. Fig.18 As shown, Fig.18 (a) corresponds to the first sub-basic matrix Hb0, Fig.18 (b) corresponds to the first sub-basic matrix Hb1. The numbers in the first row of the figure represent column indices (0 to 39). The dimensions of the two first sub-basic matrices are both 8 rows and 40 columns, where sub-matrix 1801 and sub-matrix 1803 are the system column matrices of Hb0 and Hb1, respectively, and sub-matrix 1802 and sub-matrix 1804 are the check column matrices of Hb0 and Hb0, respectively. Fig.18 It can be seen that the first sub-basic matrix Hb o The check column matrix of has a unit matrix structure, and the check column matrix of the first sub-basic matrix Hb1 has a unit matrix structure. In this example, the lifting value is equal to 16.

[0235] Example 6

[0236] In this example, taking M equal to 2 as an example, among the two first sub-basic matrices used, the check column matrix of one first sub-basic matrix has a unit matrix structure, and the check column matrix of the other first sub-basic matrix has the following characteristics: all elements are first elements.

[0237] Exemplarily, taking two first sub-basic matrices Hb0 and Hb1 as an example, the first sub-basic matrix Hb0 has a unit matrix structure, and all elements in the first sub-basic matrix Hb1 are first elements.

[0238] Fig.19 A structural diagram of another first sub-basic matrix provided in an embodiment of the present application is shown in FIG. Fig.19 As shown, Fig.19 (a) corresponds to the first sub-basic matrix Hb0, Fig.19(b) corresponds to the first sub-basic matrix Hb1. The numbers in the first row of the figure represent column indices (0 to 39). The dimensions of the two first sub-basic matrices are both 8 rows and 40 columns, where sub-matrix 1901 and sub-matrix 1903 are the system column matrices of Hb0 and Hb1, respectively, and sub-matrix 1902 and sub-matrix 1904 are the check column matrices of Hb0 and Hb0, respectively. Fig.19 It can be seen that the check column matrix of the first sub-basic matrix Hb0 has a unit matrix structure, and all elements in the check column matrix of the first sub-basic matrix Hb1 are first elements. In this example, the lifting value is equal to 16.

[0239] Example 7

[0240] Fig. 20 A schematic diagram of the structure of a check column matrix provided in an embodiment of the present application.

[0241] like Fig. 20 In this example, the number of rows and columns of the check column matrix is ​​10. Fig. 20 The following table shows six structures of check column matrices, which correspond to: (a) a check column matrix with a raptor-like structure; (b) a check column matrix with a unit matrix structure; (c) a check column matrix with a lower triangular structure; (d) a check column matrix with a quasi-lower triangular structure; (e) the first a columns of the check column matrix have a column weight greater than 0, and the remaining columns have a column weight equal to 0, where a is equal to 4; (f) the first element of all elements in the check column matrix. The lifting value can be equal to 16.

[0242] In an example, the two first sub-basic matrices are Hb0 and Hb1, respectively. The check column matrix of the first sub-basic matrix Hb0 has a Raptor-like structure, and the check column matrix of the first sub-basic matrix Hb1 has a unit matrix structure.

[0243] In another example, the two first sub-basic matrices are Hb0 and Hb1, respectively, the check column matrix of the first sub-basic matrix Hb0 has a Raptor-like structure, and the check column matrix of the first sub-basic matrix Hb1 has a lower triangular structure.

[0244] In yet another example, the two first sub-basic matrices are Hb0 and Hb1, respectively, the check column matrix of the first sub-basic matrix Hb0 has a Raptor-like structure, and the check column matrix of the first sub-basic matrix Hb1 has a quasi-lower triangular structure.

[0245] In another example, the two first sub-basic matrices are Hb0 and Hb1, the check column matrix of the first sub-basic matrix Hb0 has a quasi-lower triangular structure, and the check column matrix of the first sub-basic matrix Hb1 has Ra pTor-like structure.

[0246] In yet another example, the two first sub-basic matrices are Hb0 and Hb1, respectively, the check column matrix of the first sub-basic matrix Hb0 has a quasi-lower triangular structure, and the check column matrix of the first sub-basic matrix Hb1 has a unit matrix structure.

[0247] In yet another example, the two first sub-basic matrices are Hb0 and Hb1, respectively, the check column matrix of the first sub-basic matrix Hb0 has a quasi-lower triangular structure, and the check column matrix of the first sub-basic matrix Hb1 has a quasi-lower triangular structure.

[0248] In another example, the two first sub-basic matrices are Hb0 and Hb1, the check column matrix of the first sub-basic matrix Hb0 has a quasi-lower triangular structure, and the column weights of the first a columns in the check column matrix of the first sub-basic matrix Hb1 are greater than 0, and the column weights of the remaining columns are equal to 0.

[0249] In addition, illustratively, when the third bit subsequence is generated according to the second sub-basic matrix, the second sub-basic matrix may have the following Fig. 20 The Raptor-like structure shown, or the unit matrix structure, or the lower triangular structure, or the quasi-lower triangular structure.

[0250] Example 8

[0251] In this example, taking M equal to 3 as an example, the three first sub-basic matrices are Hb0, Hb1 and Hb2. Among the three first sub-basic matrices used, the check column matrix of at least one first sub-basic matrix has a Raptor-like structure, and / or the check column matrix of at least one first sub-basic matrix has a unit matrix structure, and / or the check column matrix of at least one first sub-basic matrix has a lower triangular structure.

[0252] In one example, the check column matrix of the first sub-basic matrix Hb0 has a Raptor-like structure (eg Fig. 20 In (a), the check column matrix of the second first sub-basic matrix Hb1 has a unit matrix structure (such as Fig. 20 In (b), the check column matrix of the third first sub-basic matrix Hb2 also has a unit matrix structure (such as Fig. 20 (b)).

[0253] In another example, the check column matrix of the first sub-basic matrix Hb0 has a Raptor-like structure (eg Fig. 20 In (a), the check column matrix of the second first sub-basic matrix Hb1 has: the column weights of the first a columns are greater than 0, and the column weights of the remaining columns are equal to 0 (such as Fig. 20In (e), the check column matrix of the third first sub-basic matrix Hb2 also has the column weights of the first a columns greater than 0, and the column weights of the remaining columns are equal to 0 (such as Fig. 20 (e)). Wherein, a can be equal to 3, 4, 5, 6 or 8, for example, a is equal to 4, which is equal to the number of rows of the core matrix of the first sub-basic matrix Hb0.

[0254] In yet another example, the check column matrix of the first sub-basic matrix Hb0 has a unit matrix structure (eg Fig. 20 In (b), the check column matrix of the second first sub-basic matrix Hb1 has: the column weights of the first a columns are greater than 0, and the column weights of the remaining columns are equal to 0 (such as Fig. 20 In (e), the check column matrix of the third first sub-basic matrix Hb2 also has the column weights of the first a columns greater than 0, and the column weights of the remaining columns are equal to 0 (such as Fig. 20 (e)). Where a can be 3, 4, 5, 6 or 8.

[0255] In addition, exemplarily, two second sub-basic matrices are also included, and the two second sub-basic matrices may have two of the following structures: a Raptor-like structure, a unit matrix structure, a lower triangular structure, and a quasi-lower triangular structure.

[0256] In one example, the check column matrix of the first second sub-basic matrix Tb0 has a Raptor-like structure (eg Fig. 20 In (a), the check column matrix of the second sub-basic matrix Tb1 has a unit matrix structure (such as Fig. 20 (b)).

[0257] In another example, the check column matrix of the first second sub-basic matrix Tb0 has a Raptor-like structure (eg Fig. 20 In (a), the check column matrix of the second sub-basic matrix Tb1 has a quasi-lower triangular structure (such as Fig. 20 (d)).

[0258] In yet another example, the check column matrix of the first second sub-basic matrix Tb0 has a unit matrix structure (eg Fig. 20 In (b), the check column matrix of the second sub-basic matrix Tb1 has a lower triangular structure (such as Fig. 20 middle( c )).

[0259] In another exemplary embodiment, the two second sub-basic matrices have the same structure. For example, the second sub-basic matrices Tb0 and Tb1 both have a Raptor-like structure (e.g. Fig. 20 (a)), or unit matrix structure (such as Fig. 20 (b)).

[0260] Example 9

[0261] In this example, taking M equal to 4 as an example, the four first sub-basic matrices are Hb0, Hb1, Hb2 and Hb3. Among the four first sub-basic matrices used, the check column matrix of the first sub-basic matrix Hb0 has the following structure: 1. Raptor-like structure; 2. Unit matrix structure; 3. Lower triangular structure; 4. Quasi-lower triangular structure. The other three have one of the following structures: 1. Raptor-like structure; 2. Unit matrix structure; 3. Lower triangular structure; 4. Quasi-lower triangular structure; 5. The column weight of the first a columns is greater than 0 and the column weight of the remaining columns is equal to 0, a is an integer greater than 0; 6. All elements are first elements.

[0262] In one example, the parity matrix of the first sub-basic matrix Hb0 has a Raptor-like e Structure (such as Fig. 20 In (a), the check column matrices of the 2nd to 4th first sub-basic matrices all have: the column weight of the first a columns is greater than 0 and the column weight of the remaining columns is equal to 0, a is equal to 4, or a lower triangular structure, or all elements are first elements, or a quasi-lower triangular structure.

[0263] In another example, the check column matrix of the first sub-basic matrix Hb0 has a unit matrix structure (eg Fig. 20 In (a), the check column matrices of the 2nd to 4th first sub-basic matrices all have: the column weight of the first a columns is greater than 0 and the column weight of the remaining columns is equal to 0, a is equal to 4, or a lower triangular structure, or all elements are first elements, or a quasi-lower triangular structure.

[0264] In addition, illustratively, three second sub-basic matrices are also included, namely Tb0, Tb1 and Tb2. The three second sub-basic matrices may have at least one of the following structures: Raptor-like structure, unit matrix structure, lower triangular structure, quasi-lower triangular structure.

[0265] In one example, the check column matrices of the three second sub-basic matrices all have Raptor-like e Structure, either the unit matrix structure, or the lower triangular structure.

[0266] In another example, among the three second sub-basic matrices, the check column matrix of the first second sub-basic matrix Tb0 has a Raptor-like structure, the check column matrix of the second second sub-basic matrix Tb1 has a unit matrix structure, and the check column matrix of the third second sub-basic matrix Tb2 has a lower triangular structure.

[0267] In another example, among the three second sub-basic matrices, the check column matrix of the first second sub-basic matrix Tb0 has a Raptor-like structure, the check column matrix of the second second sub-basic matrix Tb1 has a unit matrix structure, and the check column matrix of the third second sub-basic matrix Tb2 has a unit matrix structure.

[0268] It should be understood that any transformation made on the basis of the above-described examples (such as the value of M, any transformation combination of the first sub-basic matrix and the second sub-basic matrix structure, etc.) should be included in the protection scope of this application.

[0269] like Fig.21 As shown, the embodiment of the present application provides a decoding method, which is applied to a decoding device, and the method includes the following steps:

[0270] S2101. Receive all or part of the bits of a second bit sequence.

[0271] S2102: Based on the basic matrix and lifting value of the spatially coupled LDPC, decode all or part of the bits of the second bit sequence to obtain a first bit sequence.

[0272] Among them, the relevant introduction of the basic matrix of spatial coupling LDPC can be found in the previous article and will not be repeated here.

[0273] In some embodiments, the decoding device may use pipeline decoding, sliding window decoding and other methods to decode all or part of the bits of the received second bit sequence.

[0274] In the embodiment of the present application, the second bit sequence is generated based on the coding method of spatial coupling LDCP, so all or part of the bits of the received second bit sequence are decoded, and the decoding complexity is low.

[0275] It should be understood that the above-mentioned related naming of matrices and bit sequences is only exemplary, and different naming may be used in different scenarios. For example, the second sub-basic matrix may also be named as the tail sub-basic matrix, the first bit subsequence may also be named as the information bit subsequence, the second bit subsequence may also be named as the coding bit subsequence, and the third bit subsequence may also be named as the tail bit subsequence.

[0276] It is understandable that, in order to realize the above functions, the encoding device and the decoding device include hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should easily realize that, in conjunction with the algorithm steps of each example described in the embodiments of the present application, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present application.

[0277] The embodiment of the present application can divide the functional modules of the encoding device or the decoding device according to the above method embodiment. For example, each functional module can be divided corresponding to each function, or two or more functions can be integrated into one functional module. The above integrated module can be implemented in the form of hardware or software. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation. The following is an example of dividing each functional module corresponding to each function.

[0278] Fig. 22 is a schematic diagram of the structure of a coding device provided in an embodiment of the present application, and the coding device can execute the coding method provided in the above method embodiment. Fig. 22 As shown, the encoding device includes: an acquisition module 2201, an encoding module 2202 and a sending module 2203.

[0279] The acquisition module 2201 is used to acquire a first bit sequence to be encoded.

[0280] The encoding module 2202 is used to encode the first bit sequence based on the basic matrix and lifting value of the spatially coupled LDPC to obtain a second bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers.

[0281] The sending module 2203 is used to send all or part of the bits of the second bit sequence.

[0282] Among them, the relevant introduction of the basic matrix of spatial coupling LDPC can be found in the previous article and will not be repeated here.

[0283] In some embodiments, the first bit sequence includes L first bit subsequences; the encoding module 2202 is specifically used to encode the L first bit subsequences based on M first sub-basic matrices and lifting values ​​to obtain L second bit subsequences; and obtain a second bit sequence based on the L second bit subsequences.

[0284] In some embodiments, the first bit sequence includes L first bit subsequences; the encoding module 2202 is specifically used to encode the L first bit subsequences based on M first sub-basic matrices and lifting values ​​to obtain L second bit subsequences; based on N second sub-basic matrices, lifting values ​​and the last N first sub-basic matrices in the M first sub-basic matrices, encode the last N second bit subsequences in the L second bit subsequences to obtain N third bit subsequences; based on the L second bit subsequences and the N third bit subsequences, obtain a second bit sequence.

[0285] Fig.23 is a schematic diagram of the structure of a decoding device provided in an embodiment of the present application, and the decoding device can execute the decoding method provided in the above method embodiment. Fig.23 As shown, the decoding device includes: a receiving module 2301 and a decoding module 2302.

[0286] The receiving module 2301 is used to receive all or part of the bits of the second bit sequence.

[0287] The decoding module 2302 is used to decode all or part of the bits of the second bit sequence based on the basic matrix and lifting value of the spatially coupled low-density parity-check code LDPC to obtain a first bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers.

[0288] Among them, the relevant introduction of the basic matrix of spatial coupling LDPC can be found in the previous article and will not be repeated here.

[0289] In the case of implementing the functions of the above-mentioned integrated modules in the form of hardware, the embodiments of the present application provide another possible structure of the communication device (which may be the above-mentioned encoding device or decoding device) involved in the above-mentioned embodiments. Fig.24 As shown, the communication device 240 includes: a processor 2402 and a bus 2404. Optionally, the communication device may further include a memory 2401; optionally, the communication device may further include a communication interface 2403.

[0290] Processor 2402 may be a processor that implements or executes various exemplary logic blocks, modules, and circuits described in conjunction with the embodiments of the present application. The processor 2402 may be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array, or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It may implement or execute various exemplary logic blocks, modules, and circuits described in conjunction with the embodiments of the present application. The processor 2402 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.

[0291] The communication interface 2403 (also called a transmitter) is used to connect with other devices via a communication network, which may be Ethernet, wireless access network, wireless local area network (WLAN), etc.

[0292] The memory 2401 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.

[0293] As a possible implementation, the memory 2401 may exist independently of the processor 2402, and the memory 2401 may be connected to the processor 2402 via a bus 2404 for storing instructions or program codes. When the processor 2402 calls and executes the instructions or program codes stored in the memory 2401, the encoding method and decoding method provided in the embodiment of the present application can be implemented.

[0294] In another possible implementation, the memory 2401 may also be integrated with the processor 2402 .

[0295] The bus 2404 may be an extended industry standard architecture (EISA) bus, etc. The bus 2404 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.24Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0296] In some embodiments, the memory 2401 may store the local caches of the first bit sequence, the second bit sequence, the first sub-basic matrix, the second sub-basic matrix, and the lifting value. In addition, the memory 2401 also stores program instructions, and the processor 2402 executes the program instructions to encode the first bit sequence to obtain the second bit sequence, and then send part or all of the second bit sequence to the second bit sequence through the communication interface 2403.

[0297] In some embodiments, the processor 2402 may execute the method described in S401 - S403 above, and may also execute the method described in S2101 - S2102 above.

[0298] Some embodiments of the present application provide a computer-readable storage medium (e.g., a non-transitory computer-readable storage medium), which stores computer program instructions. When the computer program instructions are executed on a computer, the computer executes the encoding and decoding method described in any of the above embodiments.

[0299] Exemplarily, the above-mentioned computer-readable storage media may include, but are not limited to: magnetic storage devices (e.g., hard disks, floppy disks or magnetic tapes, etc.), optical disks (e.g., compact disks (CD), digital versatile disks (DVD), etc.), smart cards and flash memory devices (e.g., erasable programmable read-only memory (EPROM), cards, sticks or key drives, etc.). The various computer-readable storage media described in this application may represent one or more devices and / or other machine-readable storage media for storing information. The term "machine-readable storage medium" may include, but is not limited to, wireless channels and various other media capable of storing, containing and / or carrying instructions and / or data.

[0300] An embodiment of the present application provides a computer program product comprising instructions. When the computer program product is run on a computer, the computer is enabled to execute the beam switching method described in any of the above embodiments.

[0301] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A coding method, characterized in that: The method comprises: Obtaining a first bit sequence to be encoded; Based on a basic matrix and a lifting value of a spatially coupled low-density parity-check code LDPC, the first bit sequence is encoded to obtain a second bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers; Send all or part of the bits of the second bit sequence.

2. The method according to claim 1, characterized in that The first sub-basic matrix includes a systematic column matrix and a check column matrix. The systematic column matrix is ​​composed of the first k sub-basic matrix. b The check column matrix is ​​composed of the last m elements of the first sub-basic matrix. b The elements of the column, k b With m b The sum is equal to the number of columns of the first sub-basic matrix, k b With m b All are positive integers.

3. The method according to claim 2, characterized in that The check column matrix of at least one of the M first sub-basic matrices adopts any one of the following structures: Raptor-like structure; Unit array structure; Lower triangle structure; Quasi-lower triangular structure; A first preset structure, wherein the column weights of the first a columns of the check column matrix using the first preset structure are greater than 0, the column weights of the other columns except the first a columns are equal to 0, a is a positive integer, the column weight is the number of second elements in a column of elements, and the second element is used to indicate a cyclic shift of a unit matrix; or, A second preset structure, in which all elements of the check column matrix using the second preset structure are first elements, and the first elements are used to indicate an all-zero square matrix.

4. The method according to claim 3, characterized in that: Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure or a unit matrix structure.

5. The method according to claim 4, characterized in that When the length of the first bit sequence is greater than a first threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, and the first threshold is a positive integer; or, when the length of the first bit sequence is less than or equal to a second threshold, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, the second threshold is a positive integer, and the first threshold is greater than or equal to the second threshold.

6. The method according to claim 4, characterized in that The first bit sequence includes L first bit subsequences. When the length of the first bit subsequence is greater than a third threshold, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, and the third threshold is a positive integer; or, when the length of the first bit subsequence is less than or equal to a fourth threshold, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, the fourth threshold is a positive integer, the third threshold is greater than or equal to the fourth threshold, and L is a positive integer.

7. The method according to claim 3, characterized in that Among the M first sub-basic matrices, the structure of the check column matrix of the first first sub-basic matrix can be determined by at least one of the following parameters: the length of the first bit sequence, the number of first bit subsequences included in the first bit sequence, and the length of the first bit subsequence.

8. The method according to claim 3, characterized in that Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, and the check column matrix of the second first sub-basic matrix adopts a unit matrix structure; or, Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, and the check column matrix of the second first sub-basic matrix adopts a Raptor-like structure.

9. The method according to claim 3, characterized in that: Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure, and the check column matrix of the second first sub-basic matrix adopts a first preset structure.

10. The method according to claim 9, characterized in that The value of a is less than or equal to the number of rows of the core matrix of the first sub-basic matrix.

11. The method according to claim 10, characterized in that The number of rows of the core matrix of the first first sub-basic matrix is ​​equal to 3, 4, 5, 6, or 8.

12. The method according to claim 3, characterized in that Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a unit matrix structure, and the check column matrix of the second first sub-basic matrix adopts a first preset structure.

13. The method according to claim 12, characterized in that The a is equal to 2, 3, 4, 5, 6, or 8.

14. The method according to claim 2, characterized in that A system column matrix of at least one first sub-basic matrix among the M first sub-basic matrices has b columns with a column weight equal to 0, and the column weights of other columns except the b columns are greater than 0, the column weight is the number of second elements in a column, and b is a positive integer.

15. The method according to claim 14, characterized in that The b columns with column weight equal to 0 are the first b columns of the system column matrix.

16. The method according to claim 1, characterized in that The number of rows of the M first sub-basic matrices is m b , the number of columns of the M first sub-basic matrices is n b , n b Greater than m b , m b and n b All are positive integers.

17. The method according to claim 1, characterized in that The first bit sequence includes L first bit subsequences; The encoding of the first bit sequence based on the basic matrix and the lifting value of the spatially coupled LDPC to obtain the second bit sequence includes: Based on the M first sub-basic matrices and the lifting value, the L first bit subsequences are encoded to obtain L second bit subsequences; Based on the L second bit subsequences, the second bit sequence is obtained.

18. The method according to claim 1, characterized in that The basic matrix also includes N second sub-basic matrices, where N is a positive integer.

19. The method according to claim 18, characterized in that The N second sub-basic matrices are arranged on the diagonal of the lower right sub-matrix of the basic matrix.

20. The method according to claim 18, characterized in that The number N of the second sub-basic matrices is smaller than the number M of the first sub-basic matrices.

21. The method according to claim 18, characterized in that The second sub-basic matrix adopts any one of the following structures: Raptor-like structure; Unit array structure; Lower triangle structure; Quasi-lower triangle structure.

22. The method according to claim 18, characterized in that The number of columns of the N second sub-basic matrices is m b , and the number of rows of the N second sub-basic matrices is m b , m b Is a positive integer.

23. The method according to claim 18, characterized in that The first bit sequence includes L first bit subsequences; The step of encoding the first bit sequence based on a basic matrix and a lifting value of a spatially coupled low-density parity check code LDPC to obtain a second bit sequence includes: Based on the M first sub-basic matrices and the lifting value, the L first bit subsequences are encoded to obtain L second bit subsequences; Based on the N second sub-basic matrices, the lifting value, and the last N first sub-basic matrices among the M first sub-basic matrices, encoding the last N second bit subsequences among the L second bit subsequences to obtain N third bit subsequences; The second bit sequence is obtained based on the L second bit subsequences and the N third bit subsequences.

24. The method according to claim 1, characterized in that The boost value is equal to 2 raised to a positive integer power.

25. A decoding method, characterized in that: The method comprises: receiving all or part of the bits of a second bit sequence; Based on the basic matrix and lifting value of the spatially coupled low-density parity-check code LDPC, all or part of the bits of the second bit sequence are decoded to obtain a first bit sequence; wherein the basic matrix includes L identical and diagonally arranged sub-basic matrix groups, the sub-basic matrix groups include M first sub-basic matrices, and L and M are both positive integers.

26. The method according to claim 25, characterized in that The first sub-basic matrix includes a systematic column matrix and a check column matrix. The systematic column matrix is ​​composed of the first k sub-basic matrix. b The check column matrix is ​​composed of the last m elements of the first sub-basic matrix. b The elements of the column, k b With m b The sum is equal to the number of columns of the first sub-basic matrix, k b With m b are all positive integers; The check column matrix of at least one of the M first sub-basic matrices adopts any one of the following structures: Raptor-like structure; Unit array structure; Lower triangle structure; Quasi-lower triangular structure; A first preset structure, wherein the column weights of the first a columns of the check column matrix using the first preset structure are greater than 0, the column weights of the other columns except the first a columns are equal to 0, a is a positive integer, the column weight is the number of second elements in a column of elements, and the second element is used to indicate a cyclic shift of a unit matrix; or, A second preset structure, in which all elements of the check column matrix using the second preset structure are first elements, and the first elements are used to indicate an all-zero square matrix.

27. The method according to claim 25, characterized in that Among the M first sub-basic matrices, the check column matrix of the first first sub-basic matrix adopts a Raptor-like structure or a unit matrix structure.

28. The method according to claim 25, characterized in that The basic matrix also includes N second sub-basic matrices, and the N second sub-basic matrices are arranged on the diagonal of the lower right sub-matrix of the basic matrix, where N is a positive integer.

29. A communication device, characterized in that: The method comprises a memory, a processor, and computer program instructions stored in the memory and executable on the processor, wherein the processor implements the method according to any one of claims 1 to 28 when executing the computer program instructions.

30. A computer-readable storage medium, characterized in that: The computer-readable storage medium comprises computer program instructions; wherein, when the computer program instructions are executed on a computer, the computer is caused to perform the method according to any one of claims 1 to 28.

Citation Information

Cited By

  • Encoding method and apparatus, decoding method and apparatus, and storage medium

    EP4723487A1

  • Encoding method and apparatus, decoding method and apparatus, and storage medium

    WO2024255404A1

  • Data processing method and apparatus, storage medium, and program product

    WO2026158454A1

  • Encoding method, decoding method, communication apparatus, and communication system

    WO2026189191A1