Communication method and communication apparatus based on LDPC codes

By optimizing the LDPC matrix through region partitioning and translation value rules, the performance of LDPC codes in high-throughput scenarios is solved, and performance improvement is achieved with low iteration count, making it suitable for various communication systems.

WO2026098707A1PCT designated stage Publication Date: 2026-05-15HUAWEI TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2025-11-11
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Existing LDPC codes have slow convergence speed in high-throughput scenarios and poor performance with low iteration counts, making it difficult to meet the high efficiency and reliability requirements of modern communication systems.

Method used

The performance of LDPC codes can be improved by dividing the translation value matrix of the LDPC matrix into different regions and applying different translation value rules to different regions. Specifically, the method involves replacing the 1 elements in some or all regions of the LDPC base matrix with translation values ​​to satisfy specific rules to increase the number of columns in the translation value matrix, thereby ensuring the performance improvement of LDPC codes at low iteration counts.

Benefits of technology

It improves the performance of LDPC codes in high-throughput scenarios, enhances the efficiency and reliability of communication systems, and is suitable for various communication systems such as 5G, LTE, D2D, V2X, M2M, IoT, and NB-IoT.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025134103_15052026_PF_FP_ABST
    Figure CN2025134103_15052026_PF_FP_ABST
Patent Text Reader

Abstract

A communication method and communication apparatus based on LDPC codes. In the method, a device may perform encoding or decoding on the basis of an LDPC matrix, wherein the LDPC matrix is determined on the basis of an LDPC code shift value matrix, which comprises some or all of the regions of a first shift value matrix. The first shift value matrix comprises a first region and a second region, wherein the first region is a matrix obtained by means of replacing 1-elements in some or all of the regions of an LDPC base matrix with corresponding shift values, and the shift values corresponding to the 1-elements in the base matrix are determined on the basis of a lifting value Zc; and the first region comprises k1 X regions, and the second region comprises k2 Y regions, the shift value of each region among the k2 Y regions and the shift value of one region among the k1 X regions satisfying a rule, and the k2 Y regions corresponding to different rules. The method can improve the performance of LDPC codes in high-throughput scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Communication methods and devices based on LDPC codes

[0001] This application claims priority to Chinese Patent Application No. 202411606407.9, filed on November 11, 2024, entitled "Communication Method and Communication Device Based on LDPC Code", the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application relates to the field of coding, and more specifically, to a communication method and communication device based on LDPC codes. Background Technology

[0003] In the field of channel coding, low-density parity check (LDPC) codes are one of the most mature and widely used channel coding schemes. Quasi-cyclic low-density parity check (QC-LDPC) codes are a type of structured LDPC codes. Due to the unique structure of their parity check matrix, they can be encoded using simple feedback shift registers, reducing the coding complexity of LDPC codes.

[0004] In modern communications, efficient and reliable channel coding schemes are crucial for ensuring the performance and efficiency of information transmission. Existing LDPC codes exhibit slow convergence speeds in high-throughput scenarios and poor performance with low iteration counts. Therefore, improving the performance of LDPC codes with low iteration counts has become an urgent problem to be solved. Summary of the Invention

[0005] The embodiments of this application provide a communication method and communication device based on LDPC codes, which can improve the performance of LDPC codes in high-throughput scenarios.

[0006] In the first aspect, a communication method based on LDPC code is provided. This method can be executed by a transmitting device. Unless otherwise specified, the term "transmitting device" in this application can refer to the transmitting device itself (e.g., a network device, a terminal device), a component in the transmitting device (e.g., a processor, a chip, or a chip system), or a logic module or software that can implement all or part of the functions of the transmitting device.

[0007] The method includes: acquiring an information bit sequence; encoding the information bit sequence according to an LDPC matrix to obtain a codeword sequence, wherein the LDPC matrix is ​​determined based on an LDPC code shift matrix and a boost value Zc, the LDPC code shift matrix includes part or all of a first shift matrix, the first shift matrix includes a first region and a second region, wherein the first region is a matrix obtained by replacing 1 elements in part or all regions of the LDPC base matrix with the shift value corresponding to the 1 element, the shift value corresponding to the 1 element in the LDPC base matrix is ​​determined based on Zc, the first region includes k1 X regions, the second region includes k2 Y regions, k1 is less than or equal to k2, and any region Y in the k2 Y regions... q The translation value of the i-th row and any region X in the k1 X regions p The translation value of the i′th row satisfies the first rule, and region X p To be with region Y q The corresponding region, the i-th row is region Y q For any row in the array, the i′th row is the row corresponding to the i-th row.

[0008] Among them, any region Y in the k2 Y regions q The translation value of the i-th row and any region X in the k1 X regions p The translation value of the i′th row satisfies the first rule, which can be understood as: the translation value of each region in the k2 Y regions and the translation value of one region in the k1 X regions satisfy a rule.

[0009] Optionally, the rules corresponding to different regions in the k2 Y regions can be the same or different.

[0010] Optionally, each of the k2 Y regions has a different rule.

[0011] For example, k1 = k2, k2 regions of Y t The translation value and the region X in the k1 X regions t The translation value satisfies the rule t, 1≤t≤k1.

[0012] For example, k1 < k2, and at least two of the k2 Y regions correspond to one of the k1 X regions. For instance, the k2 Y regions are regions Y1, Y2, Y3, Y4, and Y5, and the k1 X regions are regions X1, X2, and X3, where the translation values ​​of region Y1 and region X1 satisfy rule #1, the translation values ​​of region Y2 and region X1 satisfy rule #2, the translation values ​​of region Y3 and region X2 satisfy rule #3, the translation values ​​of region Y4 and region X2 satisfy rule #4, and the translation values ​​of region Y5 and region X3 satisfy rule #5.

[0013] In the above technical solution, the first region can be regarded as a translation value matrix obtained based on the basis matrix, and the second region can be regarded as a translation value matrix obtained based on the first region. To improve the performance of LDPC codes at low iteration counts, it is necessary to increase the number of columns in the translation value matrix. Therefore, the second region in this application can achieve the effect of increasing the number of columns in the translation value matrix. Furthermore, since obtaining the translation values ​​of the second region using the same method leads to a deterioration in LDPC code performance, this application divides the first region into different regions. This allows for the use of appropriate methods to obtain the corresponding translation values ​​of the second region in different regions, thereby ensuring the performance of the LDPC code.

[0014] Secondly, a communication method is provided, which can be executed by a receiving device. Unless otherwise specified, the term "receiving device" in this application can refer to the receiving device itself (e.g., a network device, a terminal device), a component in the receiving device (e.g., a processor, a chip, or a chip system), or a logic module or software that can implement all or part of the functions of the receiving device.

[0015] The method includes: acquiring a symbol sequence; decoding the symbol sequence according to an LDPC matrix to obtain an information bit sequence, wherein the LDPC matrix is ​​determined based on an LDPC code shift matrix and a boost value Zc. The LDPC code shift matrix includes part or all of a first shift matrix, which includes a first region and a second region. The first region is a matrix obtained by replacing 1 elements in part or all regions of the LDPC base matrix with the corresponding shift values. The shift values ​​corresponding to 1 elements in the LDPC base matrix are determined based on Zc. The first region includes k1 X regions, and the second region includes k2 Y regions, where k1 is less than or equal to k2. The Y regions in the k2 Y regions are... q The translation value of the i-th row and the region X in the k1 X regions p The translation value of the i′th row satisfies the first rule, and region X p To be with region Y q The corresponding region, the i-th row is region Y q For any row in the array, the i′th row is the row corresponding to the i-th row.

[0016] For the beneficial effects of the second aspect, please refer to the description of the first aspect, which will not be repeated here.

[0017] In some implementations of the first or second aspect, region Y q The translation value q in the i′ row and j′ column t,i,j and region X p The translation value p in the i-th row and j-th column t,i,jIt satisfies the first rule, where the j-th column and the j′-th column are the corresponding columns in the i-th row and the i′-th row.

[0018] For example, the first rule and region X p The value corresponding to the i-th row is related.

[0019] In some implementations of the first or second aspect, the first rule satisfies the following formula: q t,i,j =p t,i,j +β t,i , or q t,i,j =p t,i,j +β t,i *h(Zc), h(Zc) is a function related to Zc, or q t,i,j =β t,i *p t,i,j , where β t,i This is the value corresponding to the i-th row.

[0020] For example, β t,i For region X p The row number corresponding to the i′th row in the first region.

[0021] In some implementations of the first or second aspect, the first rule satisfies the following formula: q t,i,j =α t,i *p t,i,j +β t,i , where α t,i and β t,i This is the value corresponding to the i-th row.

[0022] In some implementations of the first or second aspect, the first rule satisfies the following formula: q t,i,j =f t,i (p t,i,j ), f t,i Let be a nonlinear function, and the nonlinear function corresponds to at least one constant used for the nonlinear transformation. The at least one constant used for the nonlinear transformation is the value corresponding to the i-th row.

[0023] In some implementations of the first or second aspect, region X p If the i-th row is located in the k-th row of the first region, then region X p The value corresponding to the i-th row is the value in the sequence corresponding to the k-th row among a predefined set of sequences, including the sequence corresponding to each row in the first region.

[0024] For example, multiple sequences are predefined sequences in the protocol.

[0025] In some implementations of the first or second aspect, the first region corresponds to the first matrix, which is a matrix obtained by replacing the values ​​at positions in the first region with 1 elements and replacing the values ​​at the remaining positions with 0 elements. The first region includes X′ rows and Y′ columns. The matrix formed by the x1′+1 to X′ rows and the y2′+1 to Y′ columns of the first matrix is ​​an identity matrix. The matrix formed by the 1 to x1′ rows and the y2′+1 to Y′ columns of the first matrix is ​​an all-zero matrix. The matrix formed by the 1 to x1′ rows and the y1′+1 to y2′ columns of the first matrix is ​​a square matrix. In this matrix, 1 < x1′ < X′, 1 < y1′ < y2′ < Y′, and x1, X′, y1′, y2′, and Y′ are all integers.

[0026] It is understandable that the first matrix can be obtained by truncating the base matrix. For example, the first matrix can be obtained by truncating the first 22 rows and the first 44 columns of the base matrix.

[0027] It can also be understood that rows 1 to x1′ of the first matrix are the core rows of the base matrix, columns 1 to y1′ are the core columns of the base matrix, columns y1′+1 to y2′ are the core check columns of the base matrix, and columns y2′+1 to Y′ are all or some of the extended check columns of the base matrix.

[0028] In some implementations of the first or second aspect, the first region is composed of a third region and a fourth region, the fourth region being a region composed of at least one column of the first region, and each of the k1 X regions being a region composed of at least one row of the third region.

[0029] In some implementations of the first or second aspect, the rows containing the k1 X regions are all consecutive rows.

[0030] In some implementations of the first or second aspect, the fourth region is the region formed by columns y2′+1 to Y′ in the first region, or the fourth region is the region formed by columns y1′+1 to Y′ in the first region.

[0031] In some implementations of the first or second aspect, the LDPC base matrix is ​​BG1, the first matrix is ​​BG1, one region in the k1 X regions is the region consisting of the first 4 rows of the third region, another region in the k1 X regions is the region consisting of the 5th to the 22nd rows of the third region, or, another region in the k1 X regions is the region consisting of the 5th to the 24th rows of the third region, and yet another region in the k1 X regions is the region consisting of the 25th to the 46th rows of the third region.

[0032] In some implementations of the first or second aspect, the first translation value matrix consists of a third region, a second region, and a fourth region, wherein the second region has the same number of rows as the third region, the last column of the third region is adjacent to the first column of the second region, and the last column of the second region is adjacent to the first column of the fourth region.

[0033] In some implementations of the first or second aspect, the second and third regions have the same number of columns.

[0034] In some implementations of the first or second aspect, region Y q With region X p They are the same size.

[0035] In some implementations of the first or second aspect, region Y q Location of the second region and region X p They are in the same position in the third region.

[0036] In some implementations of the first or second aspect, region Y q With region X p The positions of the translation values ​​are the same as those in region X. p The translation values ​​at the same position satisfy the first rule.

[0037] In some implementations of the first or second aspect, Zc is greater than or equal to 64.

[0038] The proposed scheme can improve LDPC code performance when the boost value Zc is greater than or equal to 64 using the shift value determination method proposed in this application. For example, when Zc is greater than or equal to 64, there are no short cycles in the first region, and correspondingly, there may also be no short cycles in the second region.

[0039] Thirdly, a communication apparatus is provided for performing the method provided by any of the above aspects or their implementations. Specifically, the apparatus may include units and / or modules for performing the method provided by any of the above aspects or their implementations, such as processing units and / or transceiver units.

[0040] In one implementation, the device is either a transmitting device or a receiving device. When the device is a transmitting device or a receiving device, the transceiver unit can be a transceiver, an input / output interface, or a communication interface; the processing unit can be at least one processor. Optionally, the transceiver is a transceiver circuit. Optionally, the input / output interface is an input / output circuit.

[0041] In another implementation, the device is a chip, chip system, or circuit used in a transmitting or receiving device. When the device is a chip, chip system, or circuit used in a transmitting or receiving device, the transceiver unit can be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip, chip system, or circuit; the processing unit can be at least one processor, processing circuit, or logic circuit.

[0042] Fourthly, a communication device is provided, comprising: a memory for storing a program; and at least one processor for executing the computer program or instructions stored in the memory to perform the method provided in any of the foregoing aspects or their implementations.

[0043] In one implementation, the device is either a transmitting device or a receiving device.

[0044] In another implementation, the device is a chip, chip system, or circuit used in a transmitting or receiving device.

[0045] Fifthly, a communication device is provided, comprising: at least one processor and a communication interface, wherein the at least one processor is configured to obtain a computer program or instructions stored in a memory via the communication interface to execute the method provided in any of the foregoing aspects or their implementations. The communication interface may be implemented in hardware or software.

[0046] In one implementation, the device further includes the memory.

[0047] Sixthly, a processor is provided for executing the methods provided in the above aspects.

[0048] Unless otherwise specified, or if it does not contradict its actual function or internal logic in the relevant description, the transmission and acquisition / reception operations involved in the processor can be understood as processor output and reception, input and other operations, or as transmission and reception operations performed by radio frequency circuits and antennas. This application does not limit them in this regard.

[0049] In a seventh aspect, a computer-readable storage medium is provided that stores program code for execution by a device, the program code including methods for performing any of the foregoing aspects or their implementations.

[0050] Eighthly, a computer program product containing instructions is provided, which, when run on a computer, causes the computer to perform the method provided in any of the foregoing aspects or their implementations.

[0051] Ninthly, a chip is provided, comprising a processor and a communication interface. The processor reads instructions stored in a memory through the communication interface and executes the methods provided in any of the above aspects or their implementations. The communication interface can be implemented in hardware or software.

[0052] Optionally, as one implementation, the chip also includes a memory that stores computer programs or instructions. The processor is used to execute the computer programs or instructions stored in the memory. When the computer programs or instructions are executed, the processor is used to perform the methods provided by any of the above aspects or their implementations.

[0053] When the method provided in this application is executed by a chip, this application does not limit the specific number of chips implementing the method. For example, it can be executed by one chip, or by two or more chips. Furthermore, when the number of chips implementing the method is two or more, the chip manufacturers are not limited; they can be from the same manufacturer or different manufacturers.

[0054] In a tenth aspect, a computer program is provided that, when run on a computer, causes the methods provided by any of the foregoing aspects or their implementations to be executed.

[0055] Eleventhly, a communication system is provided, including at least one of the transmitting end device or receiving end device described above. Attached Figure Description

[0056] Figure 1 is a schematic diagram of a network architecture to which embodiments of this application can be applied.

[0057] Figure 2 is a schematic diagram of the parity check matrix H of an LDPC.

[0058] Figure 3 shows the Tanner plot of the parity-check matrix H of an LDPC.

[0059] Figure 4 is a schematic diagram of the structure of the parity check matrix.

[0060] Figure 5 is a schematic diagram of the information transmission process.

[0061] Figure 6 is a schematic flowchart of a communication method 600 based on LDPC code provided in this application.

[0062] Figure 7 is a schematic diagram of the region contained in the first translation value matrix.

[0063] Figure 8 is a schematic diagram of the five regions A to E in the first translation value matrix proposed in this application.

[0064] Figure 9 is a comparison diagram of the five parts A to E of the first translation value matrix and the division diagram of each region contained in the first translation value matrix.

[0065] Figure 10 is a schematic diagram of the translation values ​​in the second and third regions.

[0066] Figure 11 is a schematic diagram of the simulation performance of the LDPC matrix proposed in this application and the LDPC matrix used in 5G.

[0067] Figure 12 is a schematic block diagram of a communication device 1000 provided in an embodiment of this application.

[0068] Figure 13 is a schematic block diagram of the communication device 1100 provided in an embodiment of this application. Detailed Implementation

[0069] To facilitate understanding of the embodiments of this application, the following points will be explained before introducing the embodiments of this application.

[0070] The terms "for indicating" or "instruction" can include both direct and indirect indication, or they can be explicit and / or implicit. The various numerical designations such as "first," "second," etc., are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application, such as distinguishing different messages or different information. "Predefined" can be implemented by pre-storing corresponding codes, tables, or other methods that can be used to indicate relevant information in the device; this application does not limit the specific implementation method. The "protocol" involved can refer to standard protocols in the field of communication, such as the Long Term Evolution (LTE) protocol, the New Radio (NR) protocol, and related protocols applied to future communication systems; this application does not limit this. The words "exemplary," "for example," "exemplary," "as another example," etc., are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as an "example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. The terms "comprising," "including," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized. "At least one" means one or more, while "more" means two or more. "At most one" means one or zero. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, and c can mean: a, or, b, or, c, or, a and b, or, a and c, or, b and c, or, a, b, and c. Here, a, b, and c can be single or multiple. Descriptions relating to network element A sending messages, information, or data to network element B, and network element B receiving messages, information, or data from network element A, aim to specify which network element the message, information, or data is intended for, without specifying whether the transmission is direct or indirect via other network elements. Descriptions such as "when…", "in the case of…", "if", and "if" indicate that the device will take corresponding action under certain objective circumstances, not a time limit, nor requiring the device to perform a judgment action during implementation, nor implying any other limitations. Phrases such as "corresponding to…", "correspondingly", and equivalent expressions indicate a correspondence between the preceding and following elements, which may include indirect correspondence. For example, corresponding to a certain objective situation, the device will directly or indirectly take corresponding action, without requiring the corresponding action to immediately follow that objective situation.

[0071] Furthermore, the network architecture and business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0072] The following describes a communication system to which embodiments of this application can be applied.

[0073] The embodiments of this application can be applied to various communication systems, including but not limited to: 5th generation (5G) systems, LTE systems, Long Term Evolution-Advanced (LTE-A) systems, LTE Frequency Division Duplex (FDD) systems, LTE Time Division Duplex (TDD) systems, etc. They can also be applied to future communication systems, such as 6th generation mobile communication systems. Furthermore, they can be applied to device-to-device (D2D) communication, vehicle-to-everything (V2X) communication, machine-to-machine (M2M) communication, machine-type communication (MTC), Internet of Things (IoT) communication systems, narrowband Internet of Things (NB-IoT) systems, or other communication systems. Furthermore, it can be extended to similar wireless communication systems, such as Wireless-Fidelity (WiFi), Worldwide Interoperability for Microwave Access (WIMAX), and communication systems related to the 3rd Generation Partnership Project (3GPP), without limitation.

[0074] The communication system applicable to embodiments of this application may include one or more transmitting devices and one or more receiving devices. Optionally, one of the transmitting device and the receiving device may be a terminal device, and the other may be a network device. Optionally, both the transmitting device and the receiving device may be terminal devices. Optionally, both the transmitting device and the receiving device may be network devices.

[0075] Figure 1 is a schematic diagram of a network architecture applicable to an embodiment of this application. As shown in Figure 1, the embodiments of this application can be applied to both uplink and downlink data transmission. Figure 1 only uses uplink or downlink data transmission between one network device and two terminal devices (such as terminal device 1 and terminal device 2) as an example. In uplink data transmission, the sending device is the terminal device and the receiving device is the network device; conversely, in downlink data transmission, the sending device is the network device and the receiving device is the terminal device. Furthermore, the applicability of the embodiments of this application in other communication scenarios is not limited; for example, they can also be applied to sidelink communication.

[0076] The terminal equipment in this application can also be referred to as user equipment (UE), access terminal, user unit, user station, mobile station, mobile station, mobile terminal (MT), remote station, remote terminal, mobile device, user terminal, terminal, drone, wireless communication equipment, user agent, or user device, etc. The terminal equipment in the embodiments of this application can be a device that provides voice and / or data connectivity to a user, and can be used to connect people, objects, and machines, such as handheld devices with wireless connectivity, vehicle-mounted devices, etc. The terminal devices in the embodiments of this application may be mobile phones, tablets, laptops, handheld computers, mobile internet devices (MIDs), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, etc.

[0077] The network equipment in this application can be a device with wireless transceiver capabilities, which can be a device that provides wireless communication services. It is usually located on the network side, including but not limited to next-generation base stations (gNodeB, gNB) in 5G systems, base stations in sixth-generation mobile communication systems, base stations in future mobile communication systems, or access nodes in wireless fidelity (WiFi) systems, evolved node B (eNB), radio network controller (RNC), node B (NB), base station controller (BSC), home base station (e.g., home evolved NodeB or home Node B, HNB), base band unit (BBU), transmission reception point (TRP), transmitting point (TP), base transceiver station (BTS), satellites, drones, etc. in long term evolution (LTE) systems. In a network architecture, network equipment may include centralized unit (CU) nodes, distributed unit (DU) nodes, RAN equipment including CU and DU nodes, RAN equipment including control plane CU nodes, user plane CU nodes, and DU nodes, or, in a cloud radio access network (CRAN) scenario, radio controllers, relay stations, vehicle-mounted equipment, and wearable devices. Furthermore, a base station may be a macro base station, micro base station, relay node, donor node, or a combination thereof. A base station may also refer to a communication module, modem, or chip installed within the aforementioned equipment or apparatus. A base station may also be a mobile switching center and equipment performing base station functions in D2D, V2X, and M2M communications, network-side equipment in 6G networks, and equipment performing base station functions in future communication systems. A base station can support networks with the same or different access technologies, without limitation.

[0078] Unless otherwise specified, the means for implementing the functions of a terminal device or network device in this application can refer to the terminal device or network device itself, or it can refer to a means that enables the terminal device or network device to implement the functions, such as a chip system or chip, specifically a system-on-a-chip (SoC) or a modem. This means can be installed in the terminal device or network device. In the embodiments of this application, the chip system can be composed of chips, or it can include chips and other discrete devices.

[0079] It should also be noted that some embodiments in this article use a 5G system as an example to introduce specific solution details. It is understood that when this solution is used in other communication systems, such as LTE systems, or future communication systems, the messages, channels, or information in the solution can be replaced with messages, channels, or information in other communication systems that can achieve the corresponding functions, and this application does not limit this.

[0080] Furthermore, the embodiments of this application can be applied to various application scenarios, such as high-throughput scenarios, high-reliability scenarios, low-latency scenarios, high-reliability low-latency scenarios, or low-power scenarios. Among them, high-throughput scenarios can be, for example, enhanced mobile broadband (eMBB) scenarios, high-reliability low-latency scenarios can be, for example, URLLC (ultra-reliable low-latency communication) scenarios, and low-power scenarios can be, for example, M2M scenarios, MTC scenarios, or IoT scenarios.

[0081] To facilitate understanding of the embodiments of this application, several concepts or terms involved in the embodiments of this application are briefly described. The concepts or terms described below are based on the concepts or terms specified in the agreement, but do not mean that the embodiments of this application can only be applied to existing systems. The concepts or terms involved in the embodiments of this application can be applied to future systems. Furthermore, the specific names of the concepts or terms (e.g., concepts or terms involving functional descriptions) can be adjusted as the system develops in the future.

[0082] 1. LDPC code.

[0083] LDPC codes are a type of linear block code. Linear block codes divide the information sequence to be encoded into groups of q bits each. The encoder then performs linear operations on these q information bits to obtain m parity bits. These q information bits are then combined with the m parity bits to obtain a codeword of length n = q + m. The mapping from q information bits to an n-bit codeword is typically represented by a parity check matrix H. Based on the parity check matrix H, a codeword sequence can be generated to complete the encoding process. After the codeword sequence is transmitted through the channel, the receiving equipment decodes the received signal to determine the original information bits.

[0084] The parity-check matrix H of an LDPC is a sparse matrix. The number of zero elements in the parity-check matrix H is far greater than the number of non-zero elements; in other words, the row weight (or column weight) of the parity-check matrix is ​​far less than the number of elements in each row (or column) of the LDPC matrix. Specifically, an LDPC code with an information bit sequence length of q and a code length of n can be uniquely determined by its parity-check matrix H.

[0085] In 1981, Tanner represented the parity-check matrix H graphically, and this type of graph is now called a Tanner graph. There is a one-to-one correspondence between the Tanner graph and the parity-check matrix. A Tanner graph consists of two types of vertices: one type represents codeword bits and is called variable nodes, and the other type consists of parity nodes, representing parity constraints. Each parity node represents a parity constraint, which will be explained below with reference to Figures 2 and 3.

[0086] Figure 2 is a schematic diagram of the parity check matrix H of an LDPC.

[0087] In Figure 2, {V i} represents the set of variable nodes (VN), {C i} represents the set of check nodes (CNs). Each row of the check matrix H represents a check equation, and each check equation corresponds to a check node. Each column represents a codeword bit, and each codeword bit corresponds to a variable node. In Figure 2, there are 8 variable nodes and 4 check nodes. If a codeword bit is included in the corresponding check equation, a line is used to connect the involved variable nodes and check nodes to obtain the Tanner graph.

[0088] Figure 3 is a Tanner plot of the parity-check matrix H of an LDPC.

[0089] As shown in Figure 3, the Tanner graph represents the parity-check matrix of the LDPC. For example, for a parity-check matrix H of size m rows and n columns, the Tanner graph contains two types of nodes: n variable nodes and m parity nodes. The n variable nodes correspond to the n columns of the parity-check matrix H, and the m parity nodes correspond to the m rows of the parity-check matrix H. A cycle in the Tanner graph is composed of interconnected vertices, with one vertex serving as both the start and end point, and passing through each node only once. More specifically, a cycle is a closed loop formed by connecting variable nodes, parity nodes, and edges. The length of a cycle is defined as the number of edges it contains, while the perimeter of the graph, also known as the circumference, is defined as the length of the smallest cycle in the graph. In Figure 3, the perimeter is 4, as shown by the bolded lines. The variable nodes in the Tanner graph correspond to each column of the parity-check matrix H, which is equivalent to each codeword bit in the LDPC. The parity nodes in the Tanner graph correspond to each row of the parity-check matrix H, which is equivalent to each parity bit in the LDPC. The connection between the two types of nodes corresponds to the value of an element in the H matrix. If there is a connection between the i-th check node and the j-th variable node, the element (i, j) in the H matrix has a value of 1; otherwise, the corresponding element is 0. The connection between a variable node and a check node can also be called an edge. A connection between a check node and a variable node can also be described as: the check node and the variable node have a connection or an edge. The edge relationship between a check node and a variable node can include either the presence of an edge or the absence of an edge.

[0090] 2. QC-LDPC code.

[0091] QC-LDPC codes are a type of structured LDPC codes. Due to the unique structure of their parity-check matrix, encoding can be implemented using a simple feedback shift register, reducing the encoding complexity of LDPC codes. In practice, QC-LDPC codes are represented using a base graph (BG), where elements are either 0 or 1. Expanding the 1s and 0s in the BG yields a parity-check matrix H, which can be used for encoding or decoding. In the embodiments of this application, the BG can be written in matrix form, which can be referred to as the base matrix H in this application. BG Basis matrix H BG An element of 0 indicates that there are no edges in the base graph, while a value of 1 indicates that there are edges in the base graph (or that the corresponding check is associated with the corresponding variable). NR LDPC codes involve multiple base graph selection; currently, the standard stores two base graphs, BG1 and BG2. BG2 is used when the information length is less than or equal to 292, or when the information length is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or when the code rate is less than or equal to 0.25; otherwise, BG1 is used. The expansion process of the base matrix is ​​described below.

[0092] Based on the base matrix and the lifting size Zc, the base matrix can be expanded into a complete parity-check matrix for encoding or decoding. In this application, Zc... c It can also be called the expansion factor, lifting factor, expansion value, expansion coefficient, lifting size, etc. The expansion process involves lifting all elements of the base matrix into a Zc*Zc square matrix, where 0 is lifted into a Zc*Zc 0 matrix, 1 is lifted into an identity matrix, and the identity matrix is ​​cyclically shifted based on the shifting value (SV) corresponding to 1. This cyclic shift can be left or right, which is not limited in this application. It can be understood that each 1 in the base matrix corresponds to a shifting value. Taking a 4*4 identity matrix as an example, if the shifting values ​​are 0, 1, and 3, the cyclically shifted matrix after cyclically shifting to the right is as follows:

[0093] (1) When the translation value is 0 (i.e., remains unchanged), the corresponding cyclically shifted matrix is:

[0094] (2) When the translation value is 1, the corresponding cyclically shifted matrix is:

[0095] (3) When the translation value is 3, the corresponding cyclically shifted matrix is:

[0096] Alternatively, it can be understood that the complete parity check matrix H can be derived from an exponential matrix H. b H indicates b Each element in the matrix corresponds to a Zc*Zc submatrix. Each element indicates the number of times the corresponding submatrix is ​​cyclically shifted from the Zc*Zc identity matrix. Therefore, the storage space required for the complete parity check matrix H is greatly reduced. (Exponential matrix H) b The elements in it can also be called QC blocks.

[0097] For example, the exponent matrix H of the QC-LDPC code b As shown below:

[0098] It can be seen that the exponent matrix H b The size is 4 rows and 24 columns, and the exponent matrix H b Each element i in the matrix represents a square matrix of order Zc. Let represent a cyclic shift matrix, where i represents the cyclic shift value of the cyclic shift matrix, and i is an integer. Additionally, the exponent matrix H... b In this context, "-1" represents a zero matrix and "0" represents the identity matrix.

[0099] For example, As shown below:

[0100] Optional, exponent matrix H b In addition to "-1", zero elements in the matrix can also be represented in other ways, such as using "-" or null values ​​to represent a matrix of all zeros.

[0101] It is understandable that the above exponent matrix H b The matrix corresponding to the positions greater than or equal to 0 that are changed to 1 and the positions of -1 that are changed to 0 is the basis matrix. The 1s in the basis matrix are expanded into a Zc-order cyclic shift matrix based on the corresponding elements of the exponent matrix, and the 0s are expanded into a Zc-order all-zero matrix. After the expansion, the parity check matrix H is obtained.

[0102] Next, the information bit sequence c can be encoded based on the parity-check matrix H to obtain a codeword sequence. The codeword sequence includes (N+2*Zc-K) parity bits w, where N is the length of the codeword sequence, K = Kb*Zc, Kb is the number of columns corresponding to the information column in the base map, and Zc is the boost value. For details on Zc, please refer to the explanation in Terminology 3. Specifically, the parity bits w are determined based on the information bit sequence c and the parity-check matrix H, where the parity bits are w = [w0, w1, w2, ..., wN+2*Zc-K-1]. T c = [c0, c1, c2, ..., c K-1 ] T The encoding process is solving equations The process of obtaining w.

[0103] 3. Lifting Size (Zc) and Shifting Value.

[0104] The storage content of the 5G LDPC code regarding the translation values ​​includes: (1) a list of lifting values; and (2) a list of translation values ​​that corresponds one-to-one with the rows of the Lifting Size list.

[0105] For example, the list of promotion values ​​is shown in Table 1.

[0106] Table 1

[0107] The j-th row of the boost list includes Where a j ∈{2,3,5,7,9,11,13,15}, max(k j )∈{7,7,6,5,5,5,4,4}; the index of the lifted value corresponds one-to-one with the column index of the shift value, that is, the index of the lifted value in each row of the lifted value list corresponds to a set of shift values.

[0108] For example, the list of translation values ​​is shown in Table 2.

[0109] Table 2

[0110] For a fixed lift index, a non-zero position in the base matrix corresponds to one translation value. For example, H... BG The shift value corresponding to row 0, column 0 when the promotion index is 0 is 211, H BG The shift value corresponding to the 6th column of the 1st row in the middle when the lifting index = 3 is 66, H BG The shift value corresponding to the second row and ninth column of the middle column when the promotion index is 7 is 206.

[0111] It's understandable that LDPC encoding requires first determining the lift value, and then constructing a parity check matrix based on the corresponding shift value. For example, if the determined lift value is 40, and the lift value index corresponding to 40 in Table 1 is 2, then the parity check matrix can be constructed based on the shift value in the column corresponding to lift value index = 2 in Table 2.

[0112] 4. The structure of the parity check matrix and the basis matrix.

[0113] Figure 4 is a schematic diagram of the structure of the parity check matrix.

[0114] As shown in Figure 4(a), the parity check matrix can include a high-rate region, an all-zero region, an incremental redundancy region, and a raptor-like region. The high-rate region can include parts A and B as shown in Figure 4(b). Part A corresponds to information bits (or information digits, system bits, etc.), and part B is a square matrix corresponding to the core parity bits (or core parity digits). The core parity can be the parity corresponding to the highest bit rate, or it can be a parity with a degree greater than or equal to 2, or it can be the parity node corresponding to the row set with the largest row weight (row weight significantly higher than other rows). The all-zero region can correspond to part C in Figure 4(b) and is an all-zero matrix. The incremental redundancy region can correspond to part D in Figure 4(b). The raptor-like region can correspond to part E in Figure 4(b) and can be an identity matrix corresponding to the parity bits of the low-rate extension. Part B and Part E are both verification parts. Part B is defined as the core verification region, and its features can be non-lower triangular coding parts (i.e., values ​​above the diagonal are not all 0) or coding parts with column weight greater than 1. Part E is defined as the extended verification region, and its features can be lower triangular coding parts (i.e., values ​​above the diagonal are all 0) or diagonal matrices.

[0115] The parity-check matrix of the LDPC code shown in Figure 4 adopts a "raptor-like" structure, which can be gradually expanded to low bitrates by adding a row and a column at a time through a high bitrate core matrix. In actual use, as shown in Figure 4(a), the first X rows and the first Y columns of the parity-check matrix can be extracted. As the bitrate decreases, X and Y gradually increase, and the area of ​​the matrix used also gradually expands.

[0116] It should be noted that the parity check matrix can be represented by the LDPC basis matrix. Therefore, the structure of the LDPC basis matrix is ​​similar to that of the parity check matrix, and will not be described in detail here.

[0117] 5. Message length, code length, and code rate.

[0118] The information length is the length of the bit sequence of information to be sent (i.e., the number of bits contained therein). This length can be the length of the payload information bits, or the length of the payload information bits after adding cyclic redundancy check (CRC) bits. This application does not impose any specific restrictions.

[0119] Code length refers to the length of the bit sequence to be transmitted, which can be the transmitted bit sequence corresponding to the modulated symbol.

[0120] Code rate refers to the ratio of the length of the bit sequence of information to be transmitted to the code length.

[0121] Optionally, the above three values ​​can be pre-configured by higher-layer signaling, medium access control (MAC) layer, or downlink physical layer signals, or they can be directly obtained and calculated by the transceiver. For example, the code length can be determined by the frame structure, number of layers, and modulation scheme of the encoded and transmitted information bit sequence; the code rate can be indicated in the above manner or given in the modulation and coding scheme (MCS).

[0122] 6. Information transmission process.

[0123] Figure 5 is a schematic diagram of the information transmission process applicable to this application. As shown in Figure 5, information is sent from the source, undergoes source coding, channel coding, modulation, air interface transmission, demodulation, channel decoding, and source recovery, and finally reaches the destination, completing the transmission of information from the source to the destination. The processing shown in the upper layer of Figure 5 (including source coding, channel coding, and modulation) is performed at the transmitting end device, while the processing shown in the lower layer (including demodulation, channel decoding, and source recovery) is performed at the receiving end device. The embodiments of this application mainly involve the source coding, channel coding, channel decoding, and source recovery shown in Figure 5.

[0124] Based on the description in the background section, this application proposes a communication method based on LDPC codes, which can effectively solve the aforementioned technical problems. The method proposed in this application is described in detail below.

[0125] Figure 6 is a schematic flowchart of a communication method 600 based on LDPC codes provided in this application. The method includes the following steps.

[0126] It is understood that method 600 can be executed by both the sending device and the receiving device. Unless otherwise specified, "sending device" or "receiving device" can refer to the sending device or receiving device itself, or it can refer to a device that enables the sending device or receiving device to implement this function. For ease of description, the following text will use "sending device" and "receiving device" to describe it. Among them, the sending device can be a terminal device or a network device, and the receiving device can be a terminal device or a network device.

[0127] S610, the transmitting device obtains the information bit sequence.

[0128] It is understandable that if the sending device needs to communicate with the receiving device, that is, if the sending device needs to send a signal to the receiving device, then the sending device needs to first obtain the information bit sequence corresponding to the signal to be sent to the receiving device.

[0129] The process of the transmitting device acquiring the information bit sequence can refer to: the transmitting device performing source encoding on the source symbols to generate the information bit sequence; or, the transmitting device acquiring the information bit sequence can also refer to: the transmitting device receiving the information bit sequence from other communication devices. This application does not limit the method of acquiring the information bit sequence.

[0130] S620, the transmitting device determines the LDPC matrix.

[0131] The LDPC matrix is ​​determined based on the LDPC shift value matrix and the lifting value Zc. The LDPC code shift value matrix includes part or all of the region of the first shift value matrix, which includes a first region and a second region.

[0132] The first translation value matrix includes a first region and a second region, or it can be described as follows: the first translation value matrix is ​​composed of a first region and a second region. The first region and the second region are described below.

[0133] (1) The first region is a matrix obtained by replacing the 1 element in some or all regions of the LDPC basis matrix (hereinafter referred to as the basis matrix) with the translation value of the 1 element. The translation value corresponding to the 1 element in the LDPC basis matrix is ​​determined based on Zc.

[0134] For example, the basis matrix is ​​NR, either BG1 or BG2.

[0135] For example, the boost value Zc is greater than or equal to 64.

[0136] For example, a portion of the base matrix can be determined based on the actual code rate. That is, as shown in Figure 4(a), a portion of the base matrix can be obtained by truncating the base matrix based on the actual code rate required in the current communication scenario.

[0137] For example, a portion of the base matrix can also correspond to a relatively low bitrate region within the base matrix. As shown above, the lower the bitrate, the larger the corresponding region. For instance, in high-throughput scenarios, the first region can be obtained by extracting the first 22 rows and the first 44 columns of the base matrix.

[0138] It is understandable that if the first region is obtained based on the actual bit rate, then the LDPC matrix is ​​the first shift value matrix; if the first region is obtained based on a relatively low bit rate, then the LDPC matrix includes part or all of the region of the first shift value matrix, that is, it can be obtained by truncating the first shift value matrix based on the actual bit rate.

[0139] It can also be understood that if a 0 element in the base matrix has no corresponding translation value, then the position in the first region corresponding to the 0 element in the base matrix will not have a translation value. For example, the first region is a matrix obtained by replacing some or all 1 elements in the base matrix with their translation values ​​and replacing 0 elements with -1, where -1 indicates that no translation value exists. Alternatively, -1 can be replaced with other non-negative integer characters (e.g., null), which is not limited in this application.

[0140] For example, the translation value corresponding to the element 1 in the basis matrix can be obtained by looking up Zc, Table 1 and Table 2. The specific lookup method will not be described here.

[0141] (2) The first region includes k1 X regions, and the second region includes k2 Y regions. Among the k2 Y regions, there are Y regions. q The translation value and the region X in k1 X regions p The translation value satisfies the first rule; specifically, for region Y... q The translation value of the i-th row and the region X p The translation value of the i′th row satisfies the first rule, and region X p To be with region Y q In the corresponding region, the i′th row is the row corresponding to the i-th row, and k1≤k2.

[0142] Example, region Y q and region X p They are the same size.

[0143] It is understood that in this application, the fact that two matrices or two regions are the same size means that they have the same dimensions, that is, the number of rows and columns of the two matrices or two regions.

[0144] Example, region Y q and region X p If each contains n rows, then region Y q n rows and region X p The n rows correspond one-to-one, and the translation values ​​in the corresponding two rows satisfy the first rule.

[0145] For example, n1 < n2, region Y q Includes n1 rows, region X p Includes n2 rows, region Y q At least two rows in the middle are related to region X p The corresponding line in the text.

[0146] Example, region Y q The translation value q in the i′ row and j′ column t,i,j and region X p The translation value p in the i-th row and j-th column t,i,j The first rule is satisfied, where column j and column j′ are any corresponding columns in row i and row i′.

[0147] Example, region Y q and region X p The same size, region Y q and region X p The positions of the translation values ​​are the same, and the region Y... q and region X p Translation value at the same position in region Y (i.e., region Y) q The translation value of the i-th row and j-th column and the region X p The translation value of the i-th row and j-th column satisfies the first rule.

[0148] It is understandable that region Y q Let be one of the k2 Y regions. Furthermore, it can be understood that the translation value of each of the k2 Y regions and the translation value of one of the k1 X regions satisfy a rule. Similarly, two corresponding regions satisfy a rule, that is, the translation values ​​of corresponding rows in the two regions satisfy this rule. For example, if the two corresponding regions are region #1 and region #2, and the two regions satisfy rule #1, then the translation value of the i-th row of region #1 and the translation value of the i′-th row of region #2 satisfy rule #1.

[0149] Optionally, the rules corresponding to different regions in the k2 Y regions can be the same or different.

[0150] Optionally, each of the k2 Y regions may have a different rule. An example is provided below.

[0151] For example, k1 = k2, k2 regions of Y t The translation value and the region X in the k1 X regions t The translation values ​​satisfy rule t, 1≤t≤k1. For example, k2 (k2=3) Y regions are regions Y1, Y2 and Y3, and k1 (k1=3) X regions are regions X1, X2 and X3. Among them, the translation values ​​of region Y1 and region X1 satisfy rule #1, the translation values ​​of region Y2 and region X2 satisfy rule #2, and the translation values ​​of region Y3 and region X3 satisfy rule #3.

[0152] For example, k1 < k2, and at least two of the k2 Y regions correspond to one of the k1 X regions. For instance, the k2 (k2 = 5) Y regions are regions Y1, Y2, Y3, Y4, and Y5, and the k1 (k1 = 3) X regions are regions X1, X2, and X3. Among them, the translation values ​​of region Y1 and region X1 satisfy rule #1, the translation values ​​of region Y2 and region X1 satisfy rule #2, the translation values ​​of region Y3 and region X2 satisfy rule #3, the translation values ​​of region Y4 and region X2 satisfy rule #4, and the translation values ​​of region Y5 and region X3 satisfy rule #5.

[0153] For example, in the k2 Y regions, each region's corresponding rule is related to the value in the i-th row of each region. For ease of description, the following description uses the first rule as an example, i.e., the first rule and region X... p The value corresponding to the i-th row is related, where region X p The values ​​corresponding to the i-th row include at least one constant. The first rule is illustrated below with an example.

[0154] In one possible implementation, the first rule is q. t,i,j =p t,i,j +β t,i , where β t,i For region X p The value corresponding to the i-th row.

[0155] In one possible implementation, the first rule is q. t,i,j =p t,i,j +β t,i *h(Zc), h(Zc) is a function related to Zc. Where β t,i For region X p The value corresponding to the i-th row. For example, h(Zc) = Zc.

[0156] For example, β t,i =γ i / c, γi It is a non-negative integer less than c.

[0157] In one possible implementation, the first rule is q. t,i,j =β t,i *p t,i,j , where β t,i For region X p The value corresponding to the i-th row.

[0158] In one possible implementation, the value corresponding to the i-th row is a constant α. t,i and β t,i The first rule satisfies the following formula: q t,i,j =α t,i *p t,i,j +β t,i , where α t,i and β t,i For region X p The value corresponding to the i-th row.

[0159] In one possible implementation, the first rule is q. t,i,j =f t,i (p t,i,j ), f t,i Let be a nonlinear function, and the nonlinear function corresponds to at least one constant used for the nonlinear transformation. The at least one constant used for the nonlinear transformation is the value corresponding to the i-th row.

[0160] Example, region X p If the i-th row is located in the k-th row of the first region, then region X p The value corresponding to the i-th row is the value in the sequence corresponding to the k-th row in the first region from among multiple predefined sequences. The multiple sequences include the sequences corresponding to all rows in the first region.

[0161] For example, the protocol can store multiple sequences.

[0162] For example, all rows in the same region of k1 X regions have the same sequence length (i.e., the number of elements contained in the sequence).

[0163] For example, the sequence length corresponding to all rows of region #1 in k1 X regions is A, and the sequence length corresponding to all rows of region #2 is B. A and B can be the same or different. For instance, the length of the sequence corresponding to all rows of any region does not exceed 4.

[0164] The following describes the possible specific matrix forms for the first region.

[0165] The first region corresponds to the first matrix, which is obtained by replacing the values ​​at positions with translation values ​​in the first region with 1 and the values ​​at the remaining positions with 0 (i.e., the first matrix can be regarded as a matrix obtained by truncating the base matrix based on the code rate). The first region (or the first matrix) includes X′ rows and Y′ columns. The matrix formed by the x1′+1 to X′ rows and the y2′+1 to Y′ columns of the first matrix is ​​the identity matrix. The matrix formed by the 1 to x1′ rows and the y2′+1 to Y columns of the first matrix is ​​an all-zero matrix. The matrix formed by the 1 to x1′ rows and the y1′+1 to y2′ columns of the first matrix is ​​a square matrix. In this matrix, 1 < x1′ < X′, 1 < y1′ < y2′ < Y′, and x1′, X′, y1′, y2′, and Y′ are all integers.

[0166] It can be understood that rows 1 to x1′ of the first matrix are the core rows of the base matrix, columns 1 to y1′ are the core columns of the base matrix, columns y1′+1 to y2′ are the core check columns of the base matrix, and columns y2′+1 to Y′ are all or some of the extended check columns of the base matrix.

[0167] The first region consists of the third region and the fourth region. The fourth region is a region consisting of at least one column of the first region. Each of the k1 X regions is a region consisting of at least one row of the third region.

[0168] For example, the third region is the region consisting of columns 1 to y2′ in the first region, and the fourth region is the region consisting of columns y2′+1 to Y′ in the first region.

[0169] For example, the third region is the region consisting of columns 1 to y1′ in the first region. The fourth region is the region consisting of columns y1′+1 to Y′ in the first region.

[0170] For example, the rows where k1 X regions are located in the third region are all consecutive rows.

[0171] Let's illustrate with an example of k1 X regions. For instance, the base matrix is ​​BG1, the first matrix is ​​base graph 1, k1 = 3, one of the k1 X regions is the region consisting of the first 4 rows of the third region; another of the k1 X regions is the region consisting of rows 5 to 22 of the third region, or, another of the k1 X regions is the region consisting of rows 5 to 24 of the third region; and yet another of the k1 X regions is the region consisting of rows 25 to 46 of the third region.

[0172] For example, the rule corresponding to the area formed by the first 4 rows is: It's understandable that when the third region contains more than 4 rows, the performance deteriorates with increasing row count. Generally, to ensure LDPC code performance, the third region contains n rows, where c can be any value of n. The rows 1 through n in the third region correspond to {γ1}, {γ2}, {γ3}, {γ4}, {γ5}, {γ6}, {γ7}, {γ8}, {γ9}, {γ1 ...1}, {γ2}, {γ1}, {γ2}, {γ3}, {γ4}, {γ5}, {γ6}, {γ7}, {γ8}, {γ1}, {γ1}, {γ2}, {γ1 , γ2,…,γ n}={0,1,…,n-1}. That is, when c=4, if n=4, the LDPC code has good performance when the first to fourth rows of the third region correspond to {γ1,γ2,γ3,γ4}={0,1,2,3} respectively. However, when the number of rows in the first region increases, the value of c needs to be increased to ensure performance. For example, when Zc / c=4, the second region can inherit the performance of the first region with a boost value of 4. When Zc / c=8, the second region can inherit the performance of the first region with a boost value of 8. Since the larger the boost value, the fewer short loops the first region has and the better the performance, the larger n is, the larger the value of c is to ensure performance, which will lead to a smaller Zc / c, and the performance inherited by the second region will deteriorate, thus causing the LDPC code performance to deteriorate.

[0173] The following example illustrates the first translation value matrix and the division method of the X and Y regions in the first translation value matrix, based on the above description.

[0174] Figure 7 shows a schematic diagram of the regions contained in the first translation value matrix. The first translation value matrix consists of a third region, a second region, and a fourth region. The second region and the third region have the same number of rows. The last column of the third region is adjacent to the first column of the second region, and the last column of the second region is adjacent to the first column of the fourth region. Specifically, k1 X regions are located in the third region, and k2 Y regions are located in the second region.

[0175] For example, the number of columns corresponding to the second and third regions can be the same or different, and this application does not impose any restrictions on this. It can be understood that when the number of columns corresponding to the second and third regions is the same, the size of the second and third regions is the same.

[0176] For example, k1 = k2, k1 regions X in the X region t The size of the third region and the region Y in k2 Y regions t The sizes in the second region may be the same or different.

[0177] For example, the second and third regions have the same number of columns, and there are k1 regions X in the X region. t The location in the third region and the region Y in the k2 Y regions t The location is the same in the second area.

[0178] For example, if the third region is the region formed by columns 1 to y1' of the first region, then the first translation value matrix corresponds to the second matrix. The second matrix is ​​obtained by replacing the values ​​at the positions containing translation values ​​in the first translation value matrix with 1, and replacing the values ​​at the remaining positions with 0. The first translation value matrix (or the second matrix) includes X″ rows and Y″ columns. The matrix formed by rows x1″+1 to X″ and columns y2″+1 to Y″ of the second matrix is ​​the identity matrix. The matrix formed by the first row and columns y2″+1 to y2″ is a matrix of all zeros. The matrix formed by the first to x1″ rows and columns y1″+1 to y2′ of the second matrix is ​​a square matrix, where 1 < x1″ < X″, 1 < y1″ < y2″ < Y″, and x1″, X″, y1″, y2″, and Y″ are all integers. X″ = X′, x1″ = x1′, y1″ = y1′+s, y2″ = y2′+s, Y″ = Y′+s, where s is the column number corresponding to the second region.

[0179] For ease of description, this application refers to the region formed by rows x1″+1 to X″ and columns y2″+1 to Y″ of the first translation value matrix as region E, the region formed by rows 1 to x1″ and columns y2″+1 to Y″ of the second matrix as region C, the region formed by rows 1 to x1″ and columns y1″+1 to y2″ of the second matrix as region B, the region formed by rows 1 to x1″ and columns 1 to y1″ of the first translation value matrix as region A, and the region formed by rows x1″+1 to X″ and columns 1 to y2″ of the first translation value matrix as region D. Figure 8 is a schematic diagram of the five regions A to E in the first translation value matrix.

[0180] Figure 9 is a comparison diagram of the five parts A to E of the first translation value matrix and the third, fourth, and second regions of the first translation value matrix. Specifically, the regions containing rows 1 to X″ and columns 1 to y1″ of the first translation value matrix are the second and third regions, and the remaining regions in the first translation value matrix are the fourth region.

[0181] For example, the first matrix corresponding to the first region is the matrix obtained by cutting off the first 22 rows and the first 44 columns of the base matrix, then X′=22, Y′=44, x1′=4, y1′=22, y2′=26. For example, the second region includes 22 columns, then X″=22, Y″=66, x1″=4, y1″=44, y2″=48.

[0182] A specific example of the first translation value matrix is ​​given. The base matrix is ​​BG1. The first region is the matrix obtained by replacing the 1 elements in the first 22 rows and first 44 columns of the base matrix with their corresponding translation values, and replacing the 0 elements with -1. Then X″ = 22, Y″ = 66, x1″ = 4, y1″ = 44, y2″ = 48. The first region is composed of the third region and the fourth region. The third region is the region consisting of the first 22 columns of the first region (i.e., the information columns corresponding to the base matrix), and the fourth region is the remaining region of the first region excluding the third region. Figure 10 is a schematic diagram of the third region and the second region. As shown in Figure 10, the third region is composed of k1 (k1 = 2) X regions. Region X1 in the k1 X regions is composed of the first 4 rows of the third region, and region X2 is composed of the 5th to 22nd rows of the third region. The second region is the same size as the third region (i.e., the size of the second region and the third region is 22 rows and 2 columns). The second region consists of k2 (k2=2) Y regions. Region Y1 in the k2 Y regions is composed of the first 4 rows of the second region, and region Y2 is composed of the 5th to 22nd rows of the second region. The translation values ​​at the same position in region Y1 and region X1 satisfy one rule, and the translation values ​​at the same position in region Y2 and region X2 satisfy another rule. Figure 10 shows a possible schematic diagram of the translation values ​​in the fifth and second regions. Zc=384. The first row of the third region is the same as the first row of the second region. The translation value corresponding to the i-th element in the second row of the third region is determined based on the translation value corresponding to the i-th element in the second row of the second region. For example, if the translation value of the i-th element in the second row of the second region is a, the translation value of the i-th element in the second row of the third region is b = (a + 384 * 1 / 4) mod 0. 384; The translation value of the i-th element in the third row of the second region is a, and the translation value of the i-th element in the third row of the third region is b = (a + 384 * 1 / 2) mod 384; The translation value of the i-th element in the fourth row of the second region is a, and the translation value of the i-th element in the fourth row of the third region is b = (a + 384 * 3 / 4) mod 384; The translation value of the i-th element in the k-th row of the second region is a, and the translation value of the i-th element in the k-th row of the third region is b = (a + k) mod 384, where k is an integer greater than 4.

[0183] In this application, the LDPC translation value matrix includes part or all of the region of the first translation value matrix. That is, in this implementation, the LDPC translation value matrix is ​​obtained by truncating the first translation value matrix.

[0184] Optionally, a new LDPC translation value matrix can be obtained by adding or subtracting the third value modulo Zc from the translation values ​​in at least one row of the LDPC translation value matrix, and / or by adding or subtracting the fourth value modulo Zc from the translation values ​​in at least one column of the LDPC translation value matrix, and / or by performing row permutations on the LDPC translation value matrix, and / or by performing column permutations on the LDPC translation value matrix, where the third and fourth values ​​are non-negative integers. Then, this new LDPC matrix is ​​lifted and shifted to obtain the corresponding LDPC matrix.

[0185] Optionally, the LDPC translation value matrix includes part or all of the region of the second translation value matrix, wherein the second translation value matrix is ​​obtained by adding or subtracting a third value modulo Zc from the translation values ​​in at least one row of the first translation value matrix, and / or adding or subtracting a fourth value modulo Zc from the translation values ​​in at least one column of the first translation value matrix, and / or performing row permutations on the first translation value matrix, and / or performing column permutations on the first translation value matrix, wherein the third and fourth values ​​are non-negative integers. That is, in this implementation, the LDPC translation value matrix is ​​obtained by truncating the second translation value matrix.

[0186] It can be understood that after obtaining the LDPC shift value matrix, the corresponding LDPC matrix can be obtained by lifting and shifting the LDPC shift value matrix. In this application, the LDPC matrix can also be called the LDPC encoding matrix. For example, the LDPC matrix can be an LDPC parity check matrix or an LDPC generator matrix. The LDPC parity check matrix or the LDPC generator matrix is ​​the matrix obtained by lifting and shifting the elements in all regions of the base matrix, and there is a one-to-one correspondence between the LDPC generator matrix and the LDPC parity check matrix.

[0187] S630: The transmitting device encodes the information bit sequence according to the LDPC matrix and outputs the codeword sequence.

[0188] For ease of description, this step is briefly explained using the LDPC parity check matrix H as an example. The information bit sequence c is encoded based on the LDPC parity check matrix H to obtain a codeword sequence. This codeword sequence includes (N+2*Zc-K) parity bits w, where N is the length of the codeword sequence, and K = Kb*Zc, where Kb is the number of columns corresponding to the information column in the base map. Specifically, the parity bits w are determined based on the information bit sequence c and the parity check matrix H, where the parity bits are w = [w0, w1, w2, ..., wN+2*Zc-K-1]. T c = [c0, c1, c2, ..., c K-1 ] T The encoding process is solving equations The process of obtaining w.

[0189] S640, the transmitting device determines the symbol sequence based on the codeword sequence.

[0190] It is understandable that a symbol sequence can be a rate-matched sequence or a modulated sequence. For example, the transmitting device performs rate matching on the codeword sequence, then modulates the rate-matched sequence to obtain a symbol sequence, and then maps the modulated symbol sequence onto physical resources for transmission.

[0191] S650, the transmitting device sends a symbol sequence to the receiving device. Correspondingly, the receiving device receives the symbol sequence from the transmitting device.

[0192] It is understandable that the symbol sequence #1 sent by the transmitting device and the symbol sequence #2 received by the receiving device may be different because channel noise signals may be introduced during the transmission of the symbol sequence.

[0193] In S660, the receiving device decodes the symbol sequence according to the LDPC matrix to obtain the information bit sequence.

[0194] The LDCP matrix used for decoding by the receiving device is the same as the LDPC matrix used for encoding by the transmitting device. The specific method by which the receiving device determines the LDPC matrix can be found in the description on the transmitting device side, and will not be detailed here.

[0195] Figure 11 is a schematic diagram of the simulation performance of the LDPC matrix proposed in this application and the LDPC matrix used in 5G. The horizontal axis represents the information length, and the vertical axis represents the signal-to-noise ratio (SNR) corresponding to a block error ratio (BLER) of 1e-2. The simulation results use a Min-sum decoding algorithm with 5 iterations to compare the performance of the LDPC codes.

[0196] In this diagram, line 1 represents the simulated performance of the LDPC matrix used in 5G at a code rate of 11 / 12; line 2 represents the simulated performance of the LDPC matrix proposed in this application at a code rate of 11 / 12; line 3 represents the simulated performance of the LDPC matrix used in 5G at a code rate of 11 / 14; line 4 represents the simulated performance of the LDPC matrix proposed in this application at a code rate of 11 / 14; line 5 represents the simulated performance of the LDPC matrix used in 5G at a code rate of 11 / 12; and line 6 represents the simulated performance of the LDPC matrix proposed in this application at a code rate of 11 / 12. It can be understood that, with the same value on the horizontal axis, a lower value on the vertical axis indicates better performance. Therefore, the LDPC matrix proposed in this application has performance gains at various code rates and code lengths.

[0197] It is understood that the steps in the above figures are merely illustrative and are not intended to be strictly limited. Furthermore, the sequence numbers of the processes described above do not imply a specific order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0198] It is also understood that some optional features in the various embodiments of this application may not depend on other features in some scenarios, or may be combined with other features in some scenarios, without limitation.

[0199] It is also understood that, in the above-described method embodiments, the methods and operations implemented by the device (transmitting device or receiving device) can also be implemented by components of the device (such as chips or circuits), without limitation.

[0200] The method embodiments provided in this application have been described in detail above with reference to Figures 1 to 11. The apparatus embodiments of this application will be described below with reference to Figures 12 and 13. It is understood that, in order to implement the functions in the above embodiments, the apparatuses in Figures 12 and 13 include hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, based on the units and method steps of the various examples described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. It is understood that the technical features described in the above method embodiments are also applicable to the following apparatus embodiments.

[0201] Figures 12 and 13 are schematic diagrams of possible apparatus structures provided in embodiments of this application. These apparatuses can be used to implement the functions of the transmitting or receiving devices in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments.

[0202] Figure 12 is a schematic block diagram of a communication device 1000 provided in an embodiment of this application. As shown in Figure 12, the device 1000 may include a communication unit 1010 and a processing unit 1020. The communication unit 1010 can communicate with the outside world, and the processing unit 1020 is used for data processing. The communication unit 1010 may also be referred to as a communication interface or a transceiver unit.

[0203] In one possible design, the device 1000 can implement the steps or processes corresponding to those performed by the transmitting device in the above method embodiments, wherein the processing unit 1020 is used to perform processing-related operations of the transmitting device in the above method embodiments, and the communication unit 1010 is used to perform transmission-related operations of the transmitting device in the above method embodiments.

[0204] In another possible design, the device 1000 can implement the steps or processes corresponding to those performed by the receiving device in the above method embodiments, wherein the communication unit 1010 is used to perform the receiving-related operations of the receiving device in the above method embodiments, and the processing unit 1020 is used to perform the processing-related operations of the receiving device in the above method embodiments.

[0205] It is understood that the device 1000 here is embodied in the form of a functional unit. The term "unit" here can refer to an application-specific integrated circuit (ASIC), electronic circuitry, a processor (e.g., a shared processor, a proprietary processor, or a group processor, etc.) and memory for executing one or more software or firmware programs, integrated logic circuitry, and / or other suitable components supporting the described functions. In an alternative example, those skilled in the art will understand that the device 1000 may specifically be the transmitting end device in the above embodiments, used to execute the various processes and / or steps corresponding to the transmitting end device in the above method embodiments; or, the device 1000 may specifically be the receiving end device in the above embodiments, used to execute the various processes and / or steps corresponding to the receiving end device in the above method embodiments. To avoid repetition, further details are omitted here.

[0206] The apparatus 1000 of each of the above-described schemes has the function of implementing the corresponding steps performed by the transmitting device in the above-described method, or the apparatus 1000 of each of the above-described schemes has the function of implementing the corresponding steps performed by the receiving device in the above-described method. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions; for example, the communication unit can be replaced by a transceiver (e.g., the transmitting unit in the communication unit can be replaced by a transmitter, and the receiving unit in the communication unit can be replaced by a receiver), and other units, such as processing units, can be replaced by a processor, respectively executing the transmission and reception operations and related processing operations in each method embodiment.

[0207] Furthermore, the aforementioned communication unit can also be a transceiver circuit (e.g., it may include a receiving circuit and a transmitting circuit), and the processing unit can be a processing circuit. In the embodiments of this application, the device in FIG12 can be the receiving end device or transmitting end device in the foregoing embodiments, or it can be a chip or a chip system, such as a system on chip (SoC). The communication unit can be an input / output circuit or a communication interface; the processing unit is a processor, microprocessor, or integrated circuit integrated on the chip. No limitation is made here.

[0208] Figure 13 is a schematic block diagram of a communication device 1100 provided in an embodiment of this application. The device 1100 includes a processor 1110 and a transceiver 1120. The processor 1110 and the transceiver 1120 communicate with each other through an internal connection path. The processor 1110 is used to execute instructions to control the transceiver 1120 to send and / or receive signals.

[0209] Optionally, the device 1100 may further include a memory 1130, which communicates with the processor 1110 and the transceiver 1120 via an internal connection path. The memory 1130 stores instructions, and the processor 1110 can execute the instructions stored in the memory 1130. In one possible implementation, the device 1100 is used to implement the various processes and steps corresponding to the transmitting device in the above method embodiments. In another possible implementation, the device 1100 is used to implement the various processes and steps corresponding to the receiving device in the above method embodiments.

[0210] Optionally, the memory 1130 may be integrated into the processor 1110.

[0211] In one possible scenario, device 1100 includes at least one processor with integrated memory, and other memory besides the memory integrated on the processor.

[0212] It is understood that the device 1100 can specifically be the transmitting or receiving device in the above embodiments, or it can be a chip or a chip system. Correspondingly, the transceiver 1120 can be the transceiver circuit of the chip, which is not limited here. Specifically, the device 1100 can be used to execute the various steps and / or processes corresponding to the transmitting or receiving device in the above method embodiments.

[0213] Optionally, the memory 1130 may include read-only memory and random access memory, and provide instructions and data to the processor. The memory may include non-volatile random access memory. For example, the memory may also store device type information. The processor 1110 may be used to execute instructions stored in the memory, and when the processor 1110 executes instructions stored in the memory, the processor 1110 is used to perform the various steps and / or processes of the method embodiments corresponding to the transmitting or receiving devices described above.

[0214] In implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software. The steps of the method disclosed in the embodiments of this application can be directly implemented by a hardware processor, or by a combination of hardware and software modules in the processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method. To avoid repetition, detailed descriptions are omitted here.

[0215] It should be noted that the processor in the embodiments of this application can be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method embodiments can be completed by the integrated logic circuitry in the processor's hardware or by instructions in software form. The processor can be a general-purpose processor, digital signal processing (DSP), ASIC, field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The processor in the embodiments of this application can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied as being executed by a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory, and the processor reads the information in the memory and, in conjunction with its hardware, completes the steps of the above methods.

[0216] It is understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory used in the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0217] Optionally, the memory (e.g., 1130) in the embodiments of this application may be integrated into the processor (e.g., 1110).

[0218] In addition, this application also provides a computer-readable storage medium storing computer instructions, which, when executed on a computer, cause the operations and / or processes performed by the sending or receiving device in the various method embodiments of this application to be executed.

[0219] This application also provides a computer program product, which includes computer program code or instructions. When the computer program code or instructions are run on a computer, the operations and / or processes performed by the sending end device or the receiving end device in the various method embodiments of this application are executed.

[0220] Furthermore, this application also provides a chip including a processor. A memory for storing a computer program is provided independently of the chip, and the processor is used to execute the computer program stored in the memory, such that operations and / or processes performed by a transmitting or receiving device in any method embodiment are performed.

[0221] Furthermore, the chip may also include a communication interface. The communication interface may be an input / output interface or an interface circuit, etc. Furthermore, the chip may also include a memory.

[0222] In addition, this application also provides a communication system, including the transmitting end device and the receiving end device in the embodiments of this application.

[0223] It should also be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0224] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. In the several embodiments provided in this application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative; for example, the division of units is merely a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling or direct coupling or communication connection may be through some interfaces; the indirect coupling or communication connection of devices or units may be electrical, mechanical, or other forms. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs. Furthermore, the functional units in the various embodiments of this application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0225] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.

[0226] It is understood that the term "embodiment" used throughout the specification means that a specific feature, structure, or characteristic related to an embodiment is included in at least one embodiment of this application. Therefore, various embodiments throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments.

[0227] It can also be understood that in this application, "when," "if," and "if" all refer to the network element making corresponding processing under certain objective circumstances, and are not time-limited, nor do they require the network element to make a judgment when it is implemented, nor do they mean that there are other limitations.

[0228] It can also be understood that in the various embodiments of this application, "B corresponding to A" means that B is associated with A, and B can be determined based on A. However, it can also be understood that determining B based on A does not mean that B is determined solely based on A; B can also be determined based on A and / or other information.

Claims

1. A communication method based on low-density parity-check (LDPC) codes, characterized in that, The method includes: Obtain the information bit sequence; The information bit sequence is encoded according to the LDPC matrix to obtain a codeword sequence. The LDPC matrix is ​​determined based on the LDPC code shift matrix and the boost value Zc. The LDPC code shift matrix includes part or all of a region of a first shift matrix, which includes a first region and a second region. The first region is a matrix obtained by replacing some or all of the 1 elements in the LDPC basis matrix with the corresponding translation values ​​of those 1 elements. The translation values ​​corresponding to the 1 elements in the LDPC basis matrix are determined based on Zc. The first region includes k1 X regions, and the second region includes k2 Y regions, where k1 is less than or equal to k2. Any region Y in the k2 Y regions q The translation value of the i-th row and any region X in the k1 X regions p The translation value of the i′th row satisfies the first rule, and the region X p To the region Y q The corresponding region, the i-th row is the region Y q In any row of the array, the i′th row is the row corresponding to the i-th row.

2. A communication method based on low-density parity-check (LDPC) codes, characterized in that, Obtain the symbol sequence; The symbol sequence is decoded using the LDPC matrix to obtain the information bit sequence. The LDPC matrix is ​​determined based on the LDPC code shift matrix and the boost value Zc. The LDPC code shift matrix includes part or all of a region of a first shift matrix, which includes a first region and a second region. The first region is a matrix obtained by replacing some or all of the 1 elements in the LDPC basis matrix with the corresponding translation values ​​of those 1 elements. The translation values ​​corresponding to the 1 elements in the LDPC basis matrix are determined based on Zc. The first region includes k1 X regions, and the second region includes k2 Y regions, where k1 is less than or equal to k2. Any region Y in the k2 Y regions q The translation value of the i-th row and any region X in the k1 X regions p The translation value of the i′th row satisfies the first rule, and the region X p To the region Y q The corresponding region, the i-th row is the region Y q In any row of the array, the i′th row is the row corresponding to the i-th row.

3. The method according to claim 1 or 2, characterized in that, Area Y q The translation value q in the i′ row and j′ column t,i,j and region X p The translation value p in the i-th row and j-th column t,i,j The first rule is satisfied, wherein the j-th column and the j′-th column are the corresponding columns in the i-th row and the i′-th row.

4. The method according to claim 3, characterized in that, The first rule and the region X p The value corresponding to the i-th row is related.

5. The method according to claim 4, characterized in that, The first rule satisfies the following formula: q t,i,j =p t,i,j +β t,i , or, q t,i,j =p t,i,j +β t,i *h(Zc), where h(Zc) is a function related to Zc. or, what t,i,j =β t,i *p t,i,j , Wherein, the β t,i This is the value corresponding to the i-th row.

6. The method according to claim 4, characterized in that, The first rule satisfies the following formula: q t,i,j =α t,i *p t,i,j +β t,i , wherein, the α t,i and β t,i This is the value corresponding to the i-th row.

7. The method according to claim 4, characterized in that, The first rule satisfies the following formula: q t,i,j =f t,i (p t,i,j ), the f t,i Let be a nonlinear function, the nonlinear function corresponding to at least one constant used for nonlinear transformation, the at least one constant used for nonlinear transformation being the value corresponding to the i-th row.

8. The method according to any one of claims 4 to 7, characterized in that, The region X p If the i-th row is located in the k-th row of the first region, then the region X p The value corresponding to the i-th row is the value in the sequence corresponding to the k-th row among a predefined plurality of sequences, the plurality of sequences including the sequence corresponding to each row in the first region.

9. The method according to any one of claims 1 to 8, characterized in that, The k1 is equal to the k2, and the k2 regions are regions Y. t The translation value and the region X in the k1 X regions t The translation value satisfies the rule t, 1≤t≤k1.

10. The method according to any one of claims 1 to 9, characterized in that, The first region corresponds to a first matrix, which is obtained by replacing the values ​​at positions with translation values ​​in the first region with 1 elements and replacing the values ​​at the remaining positions with 0 elements. The first region includes X′ rows and Y′ columns, where... The matrix formed by the x1′+1 to X′ rows and the y2′+1 to Y′ columns of the first matrix is ​​the identity matrix. The matrix formed by the first matrix from rows 1 to x1′ and columns y2′+1 to Y′ is a matrix of all zeros. The matrix formed by the first matrix from rows 1 to x1′ and columns y1′+1 to y2′ is a square matrix. Where 1 < x1′ < X′, 1 < y1′ < y2′ < Y′, and x1, X′, y1′, y2′, and Y′ are all integers.

11. The method according to claim 10, characterized in that, The first region is composed of a third region and a fourth region, wherein the fourth region is a region composed of at least one column of the first region, and each of the k1 X regions is a region composed of at least one row of the third region.

12. The method according to claim 11, characterized in that, The rows containing the k1 X regions are all consecutive rows.

13. The method according to claim 11 or 12, characterized in that, The fourth region is the region formed by columns y2′+1 to Y′ in the first region. or, The fourth region is the region formed by columns y1′+1 to Y′ in the first region.

14. The method according to claim 13, characterized in that, The LDPC basis matrix is ​​basis graph 1, and the first matrix is ​​basis graph 1. One of the k1 X regions is the region consisting of the first four rows of the third region. The other region among the k1 X regions is the region consisting of rows 5 to 22 of the third region, or the other region among the k1 X regions is the region consisting of rows 5 to 24 of the third region. One of the k1 X regions is the region formed by rows 25 to 46 of the third region.

15. The method according to any one of claims 11 to 14, characterized in that, The first translation value matrix is ​​composed of the third region, the second region, and the fourth region, wherein the second region has the same number of rows as the third region, the last column of the third region is adjacent to the first column of the second region, and the last column of the second region is adjacent to the first column of the fourth region.

16. The method according to claim 15, characterized in that, The second region and the third region have the same number of columns.

17. The method according to claim 16, characterized in that, The region Y q With the region X p They are the same size.

18. The method according to claim 17, characterized in that, The region Y q The location in the second region and the region X p The location is the same in the third region.

19. The method according to claim 18, characterized in that, The region Y q With the region X p The positions of the translation values ​​are the same as those in the region X. p The translation values ​​at the same position satisfy the first rule.

20. The method according to any one of claims 1 to 19, characterized in that, The Zc is greater than or equal to 64.

21. A communication device, characterized in that, The device includes at least one processor and an interface circuit, the interface circuit being configured to receive signals from other communication devices besides the communication device and transmit them to the processor, or to send signals from the processor to other communication devices besides the communication device, the processor causing the method as described in any one of claims 1 to 20 to be implemented via logic circuits or executing code instructions.

22. The communication device according to claim 21, characterized in that, The communication device is a chip or chip system.

23. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions that, when executed, cause the method as described in any one of claims 1 to 20 to be implemented.

24. A computer program product, characterized in that, Includes a computer program that, when run, causes the method as described in any one of claims 1 to 20 to be implemented.