Communication method and apparatus, and readable storage medium

By designing an LDPC code parity check matrix H with a circumference greater than or equal to 6, the problem of low decoding success rate of existing LDPC codes is solved, and decoding performance and transmission reliability are improved. It is suitable for LDPC codes with medium to short code lengths, especially in low-power systems and various communication protocols.

WO2025241969A1PCT designated stage Publication Date: 2025-11-27HUAWEI TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/094987
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-20
Filing Date
2025-05-14
Publication Date
2025-11-27

AI Technical Summary

Technical Problem

The parity-check matrix H of existing LDPC codes suffers from short loops, which affects the decoding success rate and results in poor decoding performance.

Method used

Design the parity check matrix H of the LDPC code such that the girth of the corresponding coded bipartite graph is greater than or equal to 6, and apply it to LDPC codes with medium to short code lengths, such as code length less than or equal to 288, combined with a specific code rate, such as 0.75, 0.5, 2/3 or 5/6, to ensure that the parity check matrix of the LDPC code is full rank in the binary finite field GF(2).

Benefits of technology

It improves decoding success rate and transmission reliability, and is particularly suitable for low-power systems and various communication protocols, including 5G, WLAN, IoT, and vehicle networking.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025094987_27112025_PF_FP_ABST
    Figure CN2025094987_27112025_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to a communication method and apparatus, and a readable storage medium. The method comprises: a sending end acquiring an information bit sequence, and using a generator matrix corresponding to a parity-check matrix of an LDPC code to encode the information bit sequence to obtain a codeword sequence, wherein the code length of the LDPC code is less than or equal to 36, and the girth of a Tanner graph corresponding to the parity-check matrix of the LDPC code is greater than or equal to 6; and sending the codeword sequence. By using the present application, the decoding success rate of the system can be improved, and thus the decoding performance and the transmission reliability are improved. The present application supports IEEE series protocols, such as IEEE 802.11bn / UHR protocol, IEEE 802.15 / UWB protocol, IEEE 802.11bf / sensing protocol or integrated millimeter wave / IMMW protocol. The present application can also support a spark link / nearlink standard protocol.
Need to check novelty before this filing date? Find Prior Art

Description

Communication method, apparatus and readable storage medium

[0001] The present application claims priority to the Chinese patent application No. 202410627023.9, filed on May 20, 2024, with the State Intellectual Property Office of China, and entitled "Communication method, apparatus and readable storage medium", the whole content of which is incorporated herein by reference. TECHNICAL FIELD

[0002] The present application relates to the field of communication technology, in particular to a communication method, apparatus and readable storage medium. BACKGROUND

[0003] Low density parity check (LDPC) code is a kind of linear block code, which maps information sequence into transmission sequence (i.e. codeword sequence) through a generator matrix G. For the generator matrix G, there is an equivalent check matrix H, so that all codeword sequences C constitute the null space of the check matrix H, i.e. H*C T = 0. C T represents the transpose of the codeword sequence C. LDPC code has the advantage of flexible coding efficiency, and is a coding method that can approach the Shannon limit, and is one of the mainstream channel coding methods. LDCP code is adopted as a long code in the 5th generation mobile communication technology (5G) standard, and is widely used in various communication protocols, which can significantly improve the transmission reliability.

[0004] However, the check matrix H of the existing LDPC code is affected by the short ring, which affects the decoding success rate. Therefore, how to design the LDPC code to improve the decoding success rate of the system is a problem that the skilled in the art is studying. SUMMARY

[0005] The embodiments of the present application provide a communication method, apparatus and readable storage medium, which can improve the decoding success rate of the system, thereby improving the decoding performance and transmission reliability.

[0006] The present application will be described from different aspects below. It should be understood that the embodiments and advantages of the different aspects below can be referred to each other.

[0007] In a first aspect, the present application provides a communication method, which can be applied in a low-power system, and can also be applied in other systems, which is not limited in the present application. The method comprises: a first communication device (as a sending end or an encoding end) acquires an information bit sequence, and encodes the information bit sequence by using a generator matrix G corresponding to a check matrix H of an LDPC code provided by the present application, to obtain a codeword sequence (or a sending sequence); and the first communication device sends the codeword sequence. Wherein, the girth of the encoding bipartite graph (also referred to as a Tanner graph) corresponding to the check matrix of the LDPC code provided by the present application is greater than or equal to 6. For example, the check matrix of the LDPC code provided by the present application can be referred to as the description of the method embodiment below, which is not described in detail here. The code length of the LDPC code can be less than or equal to 288.

[0008] The information bit sequence in the present application can refer to the information bits before channel coding, or the information bits input at the input end of the channel coding module. For example, the information bit sequence can be payload bits, or the information bit sequence can include payload bits and cyclic redundancy check (CRC) bits, which is not limited in the present application.

[0009] It can be understood that, generally, the smaller the girth in the Tanner graph of the LDPC code, the higher the possibility of decoding failure when using an iterative decoding algorithm (such as a Belief Propagation algorithm) to decode, and the worse the decoding performance. The code length of the LDPC code in the present application is a medium-short code length (such as less than or equal to 288), and the girth (i.e. the minimum cycle length) of the Tanner graph corresponding to the check matrix of the LDPC code is greater than or equal to 6. In this way, the decoding success rate of the system can be improved, thereby improving the decoding performance and transmission reliability.

[0010] In a second aspect, the present application provides a communication method, which can be applied in a low-power system, and can also be applied in other systems, which is not limited in the present application. The method comprises: a second communication device (as a receiving end or a decoding end) receives a codeword sequence, and can decode the received codeword sequence by using a check matrix H of an LDPC code provided by the present application, to obtain an information bit sequence. Wherein, the girth of the encoding bipartite graph (also referred to as a Tanner graph) corresponding to the check matrix of the LDPC code provided by the present application is greater than or equal to 6. For example, the check matrix of the LDPC code provided by the present application can be referred to as the description of the method embodiment below, which is not described in detail here. The code length of the LDPC code can be less than or equal to 288.

[0011] For example, the decoding process at the receiving end can be understood as the reverse process of the encoding process at the sending end.

[0012] It is understandable that, in order for the decoding end to decode correctly, encoding and decoding can be based on the same LDPC code, or in other words, the parity check matrix H of the LDPC code involved in encoding and decoding is the same matrix.

[0013] In any possible implementation of any of the above aspects, the code length of the LDPC code is 12, 28, 30, 32, 34, 36, 120, 168, 216, or 288. It is understood that the LDPC code provided in this application has a relatively short code length, which is advantageous for use in low-power or ambient power (AMP) applications.

[0014] In any of the possible implementations of any of the above aspects, the code rate of the LDPC code can be any of the following values: 0.75 (i.e., three-quarters), 0.5 (i.e., one-half), 2 / 3 (two-thirds), or 5 / 6 (five-sixths).

[0015] In any possible implementation of the above aspects, when the code rate of the LDPC code is 0.75 and the code length is 12, each column of the LDPC code's parity-check matrix has 3 non-zero elements and each row has 4 non-zero elements. The parity-check matrix of this LDPC code has full row rank in the binary finite field GF(2) (indicating that the row vectors of the LDPC code's parity-check matrix are linearly independent in GF(2)). Here, non-zero elements may include element 1.

[0016] For example, the parity-check matrix H of this LDPC code 12 for:

[0017] It is understandable that, due to the parity-check matrix H of this LDPC code 12 The girth of the LDPC code is greater than or equal to 6, therefore the parity-check matrix H based on this LDPC code is... 12 Encoding or decoding can improve decoding performance and transmission reliability.

[0018] In any possible implementation of the above aspects, when the code rate of the LDPC code is 0.5 and the code length is 28, each column of the parity-check matrix of the LDPC code has 3 non-zero elements and each row has 6 non-zero elements. The parity-check matrix of this LDPC code has full row rank in the binary finite field GF(2) (indicating that the row vectors of the parity-check matrix of the LDPC code are linearly independent in GF(2)). Here, non-zero elements may include element 1.

[0019] For example, the parity-check matrix H of this LDPC code 28 for:

[0020] Since the girth of the check matrix H 28 of the LDPC code is greater than or equal to 6, encoding or decoding based on the check matrix H 28 of the LDPC code can improve decoding performance and transmission reliability.

[0021] In any possible implementation of any of the above aspects, when the code rate of the LDPC code is 0.5 and the code length is 30, each column of the check matrix of the LDPC code has 3 non-zero elements and each row has 6 non-zero elements. The check matrix of the LDPC code has full row rank in a binary finite field GF(2) (indicating that the row vectors of the check matrix of the LDPC code are linearly independent in GF(2)). Here, the non-zero elements can include element 1.

[0022] For example, the check matrix H 30 of the LDPC code is:

[0023] Since the girth of the check matrix H 30 of the LDPC code is greater than or equal to 6, encoding or decoding based on the check matrix H 30 of the LDPC code can improve decoding performance and transmission reliability.

[0024] In any possible implementation of any of the above aspects, when the code rate of the LDPC code is 0.5 and the code length is 32, each column of the check matrix of the LDPC code has 3 non-zero elements and each row has 6 non-zero elements. The check matrix of the LDPC code has full row rank in a binary finite field GF(2) (indicating that the row vectors of the check matrix of the LDPC code are linearly independent in GF(2)). Here, the non-zero elements can include element 1.

[0025] For example, the check matrix H 32 of the LDPC code is:

[0026] Since the girth of the check matrix H 32 of the LDPC code is greater than or equal to 6, encoding or decoding based on the check matrix H 32 of the LDPC code can improve decoding performance and transmission reliability.

[0027] In any possible implementation of the above aspects, when the code rate of the LDPC code is 0.5 and the code length is 34, each column of the parity-check matrix of the LDPC code has 3 non-zero elements and each row has 6 non-zero elements. The parity-check matrix of this LDPC code has full row rank in the binary finite field GF(2) (indicating that the row vectors of the parity-check matrix of the LDPC code are linearly independent in GF(2)). Here, non-zero elements may include element 1.

[0028] For example, the parity-check matrix H of this LDPC code 34 for:

[0029] Because the parity-check matrix H of this LDPC code 34 The girth of the LDPC code is greater than or equal to 6, therefore the parity-check matrix H based on this LDPC code is... 34 Encoding or decoding can improve decoding performance and transmission reliability.

[0030] In any possible implementation of the above aspects, when the code rate of the LDPC code is 0.5 and the code length is 36, each column of the parity-check matrix of the LDPC code has 3 non-zero elements and each row has 6 non-zero elements. The parity-check matrix of this LDPC code has full row rank in the binary finite field GF(2) (indicating that the row vectors of the parity-check matrix of the LDPC code are linearly independent in GF(2)). Here, non-zero elements may include element 1.

[0031] For example, the parity-check matrix H of this LDPC code 36 for:

[0032] Because the parity-check matrix H of this LDPC code 36 The girth of the LDPC code is greater than or equal to 6, therefore the parity-check matrix H based on this LDPC code is... 36 Encoding or decoding can improve decoding performance and transmission reliability.

[0033] It is understood that for the parity check matrix of LDPC codes with other code lengths (such as code lengths of 120, 168, 216 and 288), please refer to the description of the method embodiments below. Due to space limitations, they will not be described in detail here.

[0034] Thirdly, this application provides a communication device for performing the method in the first aspect or any possible implementation thereof. The communication device includes units for performing the method in the first aspect or any possible implementation thereof.

[0035] In a fourth aspect, the present application provides a communication apparatus, which is configured to execute the method in the second aspect or any possible implementation of the second aspect. The communication apparatus comprises units configured to execute the method in the second aspect or any possible implementation of the second aspect.

[0036] In the third aspect or the fourth aspect, the communication apparatus can comprise a transceiver module and a processing module. The specific description of the transceiver module and the processing module can also be referred to the apparatus embodiment shown below. The beneficial effects of the third aspect to the fourth aspect can be referred to the foregoing description of the first aspect and the second aspect, and will not be described here.

[0037] In a fifth aspect, the present application provides a communication apparatus, which comprises a processor configured to execute the method in the first aspect, the second aspect, or any possible implementation of any of the aspects. Alternatively, the processor is configured to execute a program stored in a memory, and the program is configured to execute the method in the first aspect, the second aspect, or any possible implementation of any of the aspects.

[0038] In combination with the fifth aspect, in a possible implementation, the memory is located outside the communication apparatus.

[0039] In combination with the fifth aspect, in a possible implementation, the memory is located inside the communication apparatus.

[0040] In the present application, the processor and the memory can also be integrated into one device, i.e., the processor and the memory can also be integrated together.

[0041] In combination with the fifth aspect, in a possible implementation, the communication apparatus further comprises a transceiver, which is configured to send or receive a sensing packet.

[0042] In a sixth aspect, the present application provides a communication apparatus, which can comprise a logic circuit and an interface coupled with each other. The interface is configured to interact (or transceive or input and output) information or data, and the logic circuit is configured to run program instructions, so that the communication apparatus executes the method described in the first aspect, or the second aspect, or any possible implementation of any of the aspects. The interface can be a communication interface or a transceiver. The transceiver can be a radio frequency module in the communication apparatus, or a combination of a radio frequency module and an antenna, or an input and output interface of a chip or a circuit.

[0043] In a seventh aspect, the present application provides a readable storage medium, which stores program instructions, and when the program instructions are run on a computer, the computer executes the method described in the first aspect, or the second aspect, or any possible implementation of any of the aspects.

[0044] In an eighth aspect, the present application provides a computer program product containing program instructions which, when executed, cause the method described in the first aspect, or the second aspect, or any possible implementation of any of the aspects to be performed.

[0045] In a ninth aspect, the present application provides a communication system, comprising a first communication device and a second communication device; the first communication device is configured to perform the method described in the first aspect, or any possible implementation of the first aspect; the second communication device is configured to perform the method described in the second aspect, or any possible implementation of the second aspect.

[0046] The technical effects achieved by the above aspects can be mutually referred to or referred to the beneficial effects shown in the method embodiments below, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0047] FIG. 1 is a simplified schematic diagram of a communication system according to an embodiment of the present application;

[0048] FIG. 2 is a simplified schematic diagram of a wireless local area network system according to an embodiment of the present application;

[0049] FIG. 3a is a schematic diagram of a check matrix of an LDPC code according to an embodiment of the present application;

[0050] FIG. 3b is a Tanner graph of an LDPC code according to an embodiment of the present application;

[0051] FIG. 4 is a schematic diagram of an encoding process of an LDPC code in a WLAN according to an embodiment of the present application;

[0052] FIG. 5 is a schematic diagram of a communication method according to an embodiment of the present application;

[0053] FIG. 6 is a schematic diagram of several possible chains according to an embodiment of the present application;

[0054] FIG. 7 is a schematic diagram of a structure of a communication device according to an embodiment of the present application;

[0055] FIG. 8 is another schematic diagram of a structure of a communication device according to an embodiment of the present application;

[0056] FIG. 9 is yet another schematic diagram of a structure of a communication device according to an embodiment of the present application. DETAILED DESCRIPTION

[0057] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present application.

[0058] In the description of the application, "first", "second", and the like are used only to distinguish different objects, and do not limit the quantity and execution order, and "first", "second", and the like do not necessarily mean different. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device, etc. including a series of steps or units, is not limited to the listed steps or units, but can optionally include steps or units not listed, or can optionally include other steps or units inherent to the process, method, product, or device, etc.

[0059] In the description of the application, unless otherwise specified, " / " means "or", for example, A / B can mean A or B. "And / or" in this paper only describes the relationship between the associated objects, which means that there can be three relationships, for example, A and / or B, which can mean: A alone, A and B exist at the same time, and B alone. In addition, "at least one item", "one or more items" or similar expressions mean any combination of these items, including any combination of single or multiple items. For example, at least one of a, b, or c, can mean: a, b, c; a and b; a and c; b and c; or a and b and c. Where a, b, and c can be single or multiple.

[0060] In the description of the application, "exemplary" or "for example" and the like are used to mean by way of example, illustration or description. Any embodiment or design scheme described in this application as "exemplary", "for example" or "for example" should not be interpreted as more preferred or more advantageous than other embodiments or design schemes. Rather, the use of "exemplary", "for example" or "for example" and the like is intended to present the relevant concept in a specific manner.

[0061] It can be understood that in the description of the application, "when", "if" and "if" all refer to the device making corresponding processing under certain objective conditions, not limited by time, and also does not require the device to have a judgment action when implemented, nor does it mean that there are other limitations.

[0062] In this application, the element expressed by the singular is intended to represent "one or more", not "one and only one", unless otherwise specified.

[0063] It can be understood that in each embodiment of the application, "A corresponds to B", "A and B correspond" or the like, means that B is associated with A, or B can be determined according to A. However, it should also be understood that determining B according to (or based on) A does not mean that B is determined only according to (or based on) A, but B can also be determined according to (or based on) A and / or other information.

[0064] The technical solutions of the embodiments of the present application can be applied in various communication systems, for example: a wireless local area network (WLAN) system using an 802.11 series protocol, a long term evolution (LTE) system, a 5th Generation (5G) system such as a new radio access technology (NR), a network integrating multiple systems, an Internet of Things system, a vehicle-to-vehicle system, an open-radio access network (O-RAN) system, and a future communication system such as a 6th Generation (6G) system. The 802.11 series protocol includes but is not limited to: 802.11a / b / g, 802.11n, 802.11ac, 802.11ax, 802.11be, Wi-Fi 7 or a next-generation protocol such as Wi-Fi 8 / ultra high reliability (UHR) / 802.11bn, or Wi-Fi AI, or millimeter wave, and the like, which are not listed one by one.

[0065] The technical solutions provided by the embodiments of the present application can also be applied to wireless personal area networks (WPANs) based on millimeter wave (MMW) and ultra wideband (UWB) technologies. For example, the technical solutions provided by the embodiments of the present application can be applied to IEEE 802.15 series protocols, such as 802.15.4a, 802.15.4z or 802.15.4ab, or a future generation UWB WPAN protocol, and the like, which are not listed one by one. The technical solutions provided by the embodiments of the present application can also be applied to sensing systems, such as 802.11bf series standards. The technical solutions provided by the embodiments of the present application can also be applied to communication systems using starlink / spark link / nearlink standard protocols. The technical solutions provided by the embodiments of the present application can also be applied to the field of ambient power (AMP) or other low-power systems.

[0066] In a possible implementation, a communication system includes communication devices, and the communication devices can communicate with each other by using air interface resources. The communication devices can include network devices and terminal devices. The network devices can also be referred to as base station devices, access network devices, or access point (AP) devices. The air interface resources can include at least one of time domain resources, frequency domain resources, code resources, and space resources. In this application, at least one can also be described as one or more, and the number of more can be two, three, four, or more, which is not limited in this application.

[0067] It should be understood that the system architecture described in the embodiments of the present application is for more clearly illustrating the technical solutions of the embodiments of the present application, and does not constitute a limitation on the technical solutions provided by the embodiments of the present application. It can be known by those skilled in the art that, with the evolution of the system architecture, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems.

[0068] Referring to FIG. 1, FIG. 1 is a simplified schematic diagram of a communication system provided by an embodiment of the present application. As shown in FIG. 1, the communication system includes a wireless access network 100. The wireless access network 100 can be a next-generation (for example, 6G or higher version) wireless access network, or a traditional (for example, 5G, 4G, 3G, or 2G) wireless access network. One or more terminal devices (120a-120j, collectively referred to as 120) can be connected to each other or connected to one or more network devices (110a, 110b, collectively referred to as 110) in the wireless access network 100. It can be understood that FIG. 1 is only a schematic diagram, and the communication system can also include other devices, such as core network devices, wireless relay devices, and / or wireless backhaul devices, etc., which are not shown in FIG. 1.

[0069] In actual applications, the communication system can include multiple network devices (also referred to as access network devices, or AP devices) at the same time, and can also include multiple terminal devices at the same time. One network device can serve one or more terminal devices at the same time. One terminal device can also access one or more network devices at the same time. The number of terminal devices and network devices included in the communication system is not limited in the embodiments of the present application.

[0070] The network device can be an entity for transmitting or receiving signals on the network side, such as a base station (BS). The BS can be a device deployed in a wireless access network and capable of wireless communication with a terminal. The base station can have various forms, such as a macro base station, a micro base station, a relay station, and an access point (AP). Exemplarily, the base station involved in the embodiments of the present application can be a base station in 5G, a base station in the 6th generation (6G) mobile communication system, an access network device or a module of an access network device in an open radio access network (O-RAN) system, a base station in a future mobile communication system, an access node in a Wi-Fi system, or an evolved node B (eNB) in LTE, and the like. Among them, the base station in 5G can also be referred to as a transmission reception point (TRP) or a 5G base station (gNB). The base station can also be replaced by the following names, such as: a wireless access point, a node B, a transmitting point (TP), a master station MeNB, a secondary station SeNB, a multi-standard radio (MSR) node, a home base station, a network controller, an access node, a wireless node, an access point (AP), a transmission node, a transceiver node, a baseband unit (BBU), a remote radio unit (RRU), an active antenna unit (AAU), a remote radio head (RRH), a centralized unit (CU), a distributed unit (DU), a positioning node, an IAB donor, and the like.

[0071] The network device in the embodiments of the present application can be an integrated base station, or can be a base station including a centralized unit (CU) and / or a distributed unit (DU). The base station including the CU and the DU can also be referred to as a base station separated into a CU and a DU, such as the base station including a gNB-CU and a gNB-DU. Among them, the CU can also be separated into a CU control plane (CU-CP) and a CU user plane (CU-UP), such as the base station including a gNB-CU-CP, a gNB-CU-UP and a gNB-DU. Alternatively, the network device in the embodiments of the present application can also be a radio unit (RU). Alternatively, the network device in the embodiments of the present application can also be an open radio access network (O-RAN) architecture, and the like, and the specific deployment mode of the network device is not limited in the embodiments of the present application. For example, when the network device is an O-RAN architecture, the network device shown in the embodiments of the present application can be an access network device in the O-RAN, such as one or more of a CU, a DU, or an RU, or a combination of one or more of the access network devices, or a module in the access network device, and the like. In the ORAN system, the CU can also be referred to as an open (O)-CU, the CU-CP can also be referred to as an O-CU-CP, the CU-UP can also be referred to as an O-CU-UP, the DU can also be referred to as an O-DU, and the RU can also be referred to as an O-RU.

[0072] In the embodiments of the present application, the apparatus for implementing the function of the network device can be the network device; or can be an apparatus capable of supporting the network device to implement the function, such as a chip system, or a communication module, or a modem, and the like, which can be installed in the network device. The network device can support networks of the same or different access technologies. The embodiments of the present application do not limit the specific technologies and specific device forms adopted by the network device.

[0073] The terminal device can be referred to as a terminal, a user equipment (UE), a mobile station (MS), a mobile terminal (MT), a non-access point station (non-AP STA), etc., which can be a device with wireless transceiver function; it can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; it can also be deployed on water (such as ships, etc.); it can also be deployed in the air (such as airplanes, balloons, and satellites, etc.). The terminal device can be used to connect people, things, and machines. The terminal device 120 can be widely used in various scenarios, such as cellular communication, WLAN communication, device-to-device (D2D), vehicle-to-everything (V2X), peer to peer (P2P), machine to machine (M2M), machine type communication (MTC), Internet of Things (IoT), virtual reality (VR), augmented reality (AR), industrial control, autonomous driving, remote medical treatment, smart power grid, smart furniture, smart office, smart wear, smart transportation, smart city, smart home, unmanned aerial vehicle, robot, remote sensing, passive sensing, positioning, navigation and tracking, autonomous delivery and mobile, etc.

[0074] In the embodiments of the present application, the device for implementing the function of the terminal can be a terminal; it can also be a device capable of supporting the terminal to implement the function, such as a chip system, or a communication module, or a modem, etc., which can be installed in the terminal. In the embodiments of the present application, the chip system can be composed of a chip, or can include a chip and other discrete devices. The embodiments of the present application do not limit the specific technology and specific device form adopted by the terminal device.

[0075] It can be understood that when the network device is an access point (such as 110b in FIG. 1) and the terminal device is a non-access point station (such as 120f or 120g in FIG. 1), the network composed of the network device and the terminal device can be a wireless local area network (WLAN). In other words, the communication system shown in FIG. 1 can include but is not limited to a WLAN.

[0076] For example, referring to FIG. 2, FIG. 2 is a simplified schematic diagram of a WLAN system according to an embodiment of the present application. As shown in FIG. 2, the WLAN system includes one or more APs and one or more non-AP STAs (e.g., non-AP STA1 and non-AP STA2 in FIG. 2). The APs can communicate with one or more non-AP STAs, and the non-AP STAs can also communicate with each other.

[0077] It can be understood that the non-AP STA is a mobile phone and the AP is a router in FIG. 2 as an example, which does not limit the types of APs and non-AP STAs in the embodiments of the present application. Meanwhile, FIG. 2 only exemplarily shows one AP and two non-AP STAs, but the number of APs or non-AP STAs in the WLAN system can be more or less, which is not limited in the embodiments of the present application.

[0078] In a possible implementation, the non-AP STA and the AP can support a WLAN communication protocol. The WLAN communication protocol includes but is not limited to 802.11a / b / g protocol, 802.11n protocol, 802.11ac protocol, 802.11ax protocol, 802.11be protocol, Wi-Fi 7 or next-generation protocol, such as Wi-Fi 8 / ultra high reliability (UHR) / 802.11bn protocol, and the like.

[0079] The WLAN system can provide high-rate and low-latency transmission. As the WLAN application scenarios continue to evolve, the WLAN system will be applied to more scenarios or industries, such as the Internet of Things industry, the Internet of Vehicles industry, or the banking industry, enterprise offices, stadiums, exhibition halls, concert halls, hotel rooms, dormitories, wards, classrooms, supermarkets, squares, streets, production workshops, and warehouses, etc. Of course, the device (such as an access point or a station) supporting WLAN communication can be a sensor node in a smart city (such as a smart water meter, a smart electricity meter, a smart air detection node), a smart device in a smart home (such as a smart camera, a projector, a display screen, a television, a sound, a refrigerator, a washing machine, etc.), a node in the Internet of Things, an entertainment terminal (such as an augmented reality (AR) wearable device, a virtual reality (VR) wearable device, etc.), a smart device in a smart office (such as a printer, a projector, a loudspeaker, a sound, etc.), a vehicle-to-vehicle device in the Internet of Vehicles, infrastructure in daily life scenarios (such as a vending machine, a self-service navigation station in a supermarket, a self-service checkout device, a self-service ordering machine, etc.), and a device in a large sports and music venue, etc. The specific form of the station and the access point in the embodiments of the present application is not limited, and is only exemplarily described herein.

[0080] It can be understood that, although the present application mainly takes the deployment of the Institute of Electrical and Electronics Engineers (IEEE) 802.11 network as an example for description, those skilled in the art can easily understand that various aspects involved in the present application can be extended to other networks using various standards or protocols, for example, BLUETOOTH, high performance radio LAN (HIPERLAN) (a wireless standard similar to the IEEE 802.11 standard, mainly used in Europe), and wide area network (WAN), wireless local area network (WLAN), personal area network (PAN), or other now known or later developed networks, etc. Therefore, regardless of the coverage range and wireless access protocol used, various aspects provided by the present application can be applied to any suitable wireless network.

[0081] In some embodiments, the AP in the WLAN system shown in FIG. 2 can be replaced by an access point multi-link device (AP MLD), and the non-AP STA can be replaced by a non-access point multi-link device (non-AP MLD), that is, the technical solutions provided in the embodiments of the present application can also be applied to the scenario of multi-link device (MLD) communication. The multi-link device is a wireless communication device that supports multiple links for parallel transmission. Compared with a device that only supports single-link transmission, the multi-link device has higher transmission efficiency and higher throughput. The multi-link device includes one or more affiliated stations (STAs), and the affiliated STA is a logical station that can work on one link. The affiliated station can be an access point (AP) or a non-access point station (non-AP STA). The multi-link device with affiliated stations as APs can be referred to as an AP MLD, and the multi-link device with affiliated stations as non-AP STAs can be referred to as a non-AP MLD.

[0082] In a possible implementation, the multi-link device (which can be a non-AP MLD or an AP MLD) related to the embodiments of the present application is a device with wireless communication function. The device can be a whole machine, or a chip or a processing system installed in a whole machine. The device can realize the methods and functions of the embodiments of the present application under the control of the chip or the processing system.

[0083] Some terms or names related to the present application are briefly introduced below.

[0084] I. LDPC code

[0085] The LDPC code is a linear block code, which maps an information sequence into a transmission sequence (i.e., a codeword sequence) through a generator matrix G. For the generator matrix G, there is an equivalent check matrix H. All codeword sequences C form the null space of the check matrix H, that is, H*C T = 0 (i.e., a full 0 matrix). C Tdenotes the transpose of the generator matrix G. Due to the sparsity of the parity check matrix H and the different rules used in the construction, the encoding bipartite graph (also called Tanner graph) of different LDPC codes has different closed loop distributions. The closed loops in the encoding bipartite graph (i.e. the Tanner graph) are important factors affecting the performance of the LDPC codes, which make the LDPC codes exhibit different decoding performances under the iterative decoding algorithm.

[0086] The parity check matrix H of the LDPC code is a sparse matrix, i.e. the number of non-zero elements in the matrix is much smaller than the number of zero elements, or the ratio of the row weight to the code length and the ratio of the column weight to the code length are both very small values. The Tanner graph of the LDPC code and the parity check matrix H are one-to-one corresponding, which can be composed of two types of nodes: the first type of node represents the code symbol, called variable node; the second type of node represents the check constraint relationship, called check node, each check node represents a check constraint relationship.

[0087] For example, referring to FIG. 3a and FIG. 3b, FIG. 3a is a schematic diagram of a parity check matrix of an LDPC code provided by an embodiment of the present application; and FIG. 3b is a Tanner graph of the LDPC code provided by an embodiment of the present application. In FIG. 3a and FIG. 3b, {V i} denotes a set of variable nodes, {C i} denotes a set of check nodes, and i is a positive integer. As shown in FIG. 3a, each row of the parity check matrix H of the LDPC code represents a check equation, which corresponds to a check node C i ; and each column represents a variable node V i If a variable node is contained in the corresponding check equation, a line is used to connect the variable node and the check node involved, so the number of lines in the Tanner graph of the LDPC code is the same as the number of "1"s in the parity check matrix H. As shown in FIG. 3b, the variable nodes in the Tanner graph are represented by circular nodes, and the check nodes are represented by square nodes.

[0088] In the Tanner graph of the LDPC code, a loop formed by some edges connecting different nodes and returning to the same node from which the loop starts is called a "cycle". The number of edges in the cycle is called the length of the cycle, and the cycle with the smallest length among all cycles is called the girth of the LDPC code. The cycle in the Tanner graph will cause great interference to the decoding result. Since the iterative probability decoding will cause the information to be transmitted between the nodes, if there is a cycle, the information from a node in the cycle will be continuously transmitted along the nodes in the cycle and eventually return to the node itself, so that the information of the node itself is continuously accumulated, and thus the probability of failure of the final decoding result becomes larger. Obviously, the smaller the length of the cycle (which can be simply referred to as the cycle length), the shorter the path the information needs to take to return to itself, and the higher the probability of decoding failure. In the Tanner graph of the LDPC code, at least four nodes are needed to form a "cycle" to form four connected edges, that is, the length of the cycle is at least four, and such a short cycle will cause the greatest interference to the decoding result of the code word. The row column (RC) constraint of the LDPC code is defined as follows: there is more than one same case of the position of element 1 in two rows or two columns. Obviously, the LDPC code satisfying the row column (RC) constraint has at least six cycles, and the interference of the four cycles is removed. Since the detection of the four cycles and the avoidance are the simplest and necessary, most of the construction methods of the LPDC code will satisfy the row column (RC) constraint. The construction of a code word with a longer cycle length needs accurate design.

[0089] II. Encoding process of the LDPC code in the WLAN

[0090] The encoding process of the LDPC code can be realized by matrix multiplication. Assuming that an LDPC code is to be encoded for a data block, the data block can be first multiplied by the generation matrix G of the LDPC code to obtain the encoded data block. The generation matrix G is a special matrix of the LDPC code, through which the information bits can be converted into code words. The decoding process of the LDPC code can be realized by the check matrix H, and the decoding algorithm usually adopts an iterative decoding algorithm, such as the Belief Propagation algorithm. Among them, the check matrix H and the generation matrix G of the LDPC code satisfy GH T = 0 (i.e., a matrix with all elements being 0).

[0091] The following takes the encoding process of LDPC code in a wireless local area network (WLAN) as an example. The existing WLAN standards (such as 802.11n / ac, etc.) adopt orthogonal frequency division multiplexing (OFDM) technology, and the LDPC encoding module needs to put the data bits (which can also be understood as payload bits) after encoding into an integer number of OFDM symbols, and these encoded bits must be exactly put into an integer number of LDPC codewords. Therefore, before transmission, the minimum number of OFDM symbols N SYM required for this transmission needs to be calculated SYM , and the total number of code bits that can be stored in all OFDM symbols N TCB is calculated according to N CBPS × N SYM , where N CBPS represents the number of code bits that can be stored in each OFDM symbol. Then, according to the total number of code bits N TCB , the LDPC code length L LDPC and the number of codewords N CW used in the current transmission are determined. For most data bit lengths to be encoded and encoding modulation schemes, there are not enough data bits to fill the information bit positions in the LDPC codeword, so a shortening operation is needed before generating parity bits. The shortening operation refers to filling a certain number of "0"s in the information bit positions of the LDPC codeword before generating the parity bits, and then deleting these "0"s after generating the parity bits.

[0092] Referring to FIG. 4, FIG. 4 is a schematic diagram of the encoding process of LDPC code in a WLAN according to an embodiment of the present application. As shown in FIG. 4, the encoding process of LDPC code in a WLAN includes at least steps 1 to 6. Specifically, step 1 is the data bits to be encoded, such as payload bits. Step 2 determines the length L LDPC of the LDPC codeword and the number of codewords N CWThe specific determination method is described in the prior art and is not described here. Step 3 performs a shortening operation on the to-be-encoded data bits, that is, shortening zero bits are filled after the to-be-encoded data bits. Step 4 encodes the to-be-encoded data bits and the shortening zero bits in each LDPC code word using the check matrix H of the LDPC code to generate check bits, and then deletes the shortening zero bits. Step 5 repeats part of the to-be-encoded data bits in the LDPC code word or punctures the check bits in the LDPC code word, so that the processed (punctured or repeated) code word bits exactly fill the to-be-transmitted OFDM symbol, that is, the number of processed (punctured or repeated) code word bits is equal to the number of bits that can be carried by the OFDM symbol. Step 6 concatenates multiple code words and performs stream parsing.

[0093] In this application, the "LDPC code length" refers to the length of the LDPC code word (LDPC code word length), and the "LDPC code length", "code length of the LDPC code", and "LDPC code word length" can be used interchangeably.

[0094] It can be understood that the above-mentioned FIG. 4 is only an example, and the LDPC code can be applied not only to the WLAN system but also to other communication systems, such as 5G or 6G communication systems. When the LDPC code is applied to different communication systems, the encoding process and / or the decoding process can be different, and the embodiments of the present application do not limit the specific encoding process and decoding process of the LDPC code in each communication system.

[0095] Generally, the smaller the minimum cycle length (i.e., girth) of the LDPC code, the higher the possibility of decoding failure and the worse the decoding performance. Therefore, how to design the LDPC code to improve the decoding success rate of the system is a problem that technicians in the field are studying.

[0096] The present application provides a communication method, device and readable storage medium, by designing an LDPC code with a medium-short code length, the minimum cycle length (i.e., girth) of the Tanner graph of the LDPC code is as large as possible, such as the minimum cycle length (i.e., girth) of the LDPC code is greater than or equal to 6, which can improve the decoding success rate of the system, thereby improving the decoding performance and transmission reliability.

[0097] In the present application, the same or similar parts among various embodiments or implementation manners can be mutually referred to, unless otherwise specified. In the present application, the terms and / or descriptions among different embodiments, and among various implementation manners / implementation methods / realization methods in each embodiment are consistent and can be mutually referred to, unless otherwise specified and in conflict with logic. The technical features in different embodiments, and in various implementation manners / implementation methods / realization methods in each embodiment can be combined to form new embodiments, implementation manners, implementation methods, or realization methods according to their inherent logical relationship. The implementation manners of the present application described below do not constitute a limitation on the protection scope of the present application.

[0098] In a possible implementation manner, the first communication apparatus in the present application can be an AP or a base station, and the second communication apparatus can be a non-AP STA or a UE; or the first communication apparatus is a non-AP STA or a UE, and the second communication apparatus is an AP or a base station. Of course, the first communication apparatus and the second communication apparatus in the present application can both be non-AP STAs or UEs, or the first communication apparatus and the second communication apparatus are both APs or base stations. The present application does not limit the specific forms of the first communication apparatus and the second communication apparatus.

[0099] Referring to FIG. 5, FIG. 5 is a flow diagram of a communication method according to an embodiment of the present application. The first communication apparatus in the method can be understood as a sending end or an encoding end, and the second communication apparatus can be understood as a receiving end or a decoding end. As shown in FIG. 5, the communication method includes but is not limited to the following steps:

[0100] S101, the first communication apparatus acquires an information bit sequence.

[0101] S102, the first communication apparatus encodes the information bit sequence by using a generator matrix corresponding to a parity check matrix of an LDPC code, to obtain a codeword sequence.

[0102] S103, the first communication apparatus transmits the codeword sequence.

[0103] Correspondingly, the second communication apparatus receives the codeword sequence.

[0104] In a possible implementation manner, the information bit sequence in the embodiment of the present application can refer to information bits before channel coding, or information bits input at the input end of a channel coding module. For example, the information bit sequence can be payload bits, or the information bit sequence can include payload bits and cyclic redundancy check (CRC) bits, which is not limited in the embodiment of the present application.

[0105] It can be understood that the parity check matrix H and the generator matrix G of the LDPC code correspond to each other, and satisfy GH T = 0 (i.e., a matrix with all elements being 0), where H T represents the transpose of the parity check matrix H. Therefore, the generator matrix G of the LDPC code can be determined by the parity check matrix H of the LDPC code.

[0106] In a possible implementation, the first communication apparatus (as a sending end or an encoding end) can obtain an information bit sequence, and can encode the information bit sequence by using the generator matrix G corresponding to the parity check matrix H of the LDPC code provided in the embodiments of the present application, to obtain a codeword sequence (or a sending sequence). In the embodiments of the present application, the process in which the first communication apparatus encodes the information bit sequence by using the generator matrix G of the LDPC code can refer to the prior art, and will not be described herein. The embodiments of the present application do not limit the specific encoding process. For example, the first communication apparatus can perform matrix multiplication on the information bit sequence and the generator matrix G of the LDPC code, to obtain an encoded information bit sequence, and then can perform various processing (for example, generating check bits, repeating, or puncturing) on the encoded information bit sequence to obtain the codeword sequence. The first communication apparatus can send the codeword sequence. For example, the first communication apparatus can output the codeword sequence to a radio frequency module for sending, or can perform other processing (for example, modulation, or stream parsing) on the codeword sequence and then output the codeword sequence to the radio frequency module for sending, and the embodiments of the present application do not limit this.

[0107] In S104, the second communication apparatus decodes the received codeword sequence by using the parity check matrix of the LDPC code, to obtain an information bit sequence.

[0108] In a possible implementation, after receiving the codeword sequence, the second communication apparatus (as a receiving end or a decoding end) can decode the codeword sequence by using the parity check matrix H of the LDPC code provided in the embodiments of the present application, to obtain an information bit sequence. The decoding process of the receiving end can be understood as the inverse process of the encoding process of the sending end. The embodiments of the present application do not limit the specific decoding process. For example, the second communication apparatus can decode the received codeword sequence by using an iterative decoding algorithm (for example, a Belief Propagation algorithm) based on the parity check matrix H of the LDPC code, to obtain an information bit sequence. It can be understood that, in order to enable the decoding end to correctly decode, the encoding and the decoding can be based on the same LDPC code, or in other words, the parity check matrix H used for decoding and the generator matrix G used for encoding satisfy GH T = 0 (i.e., a matrix with all elements being 0), or in other words, the parity check matrix H of the LDPC code involved in the encoding and the decoding is the same matrix.

[0109] The LDPC code provided by the embodiments of the present application is described below. The LDPC code in the embodiments of the present application can be represented by a check matrix H of the LDPC code.

[0110] In a possible implementation, the code length of the LDPC code provided by the embodiments of the present application is less than or equal to 288. For example, the code length of the LDPC code of the embodiments of the present application is 12, or 28, or 30, or 32, or 34, or 36, or 120, or 168, or 216, or 288. The code rate of the LDPC code can be any of the following values: 0.75 (i.e., three quarters), 0.5 (i.e., one half), 2 / 3 (i.e., three thirds), or 5 / 6 (i.e., six sixths). It can be understood that the code rate can refer to the ratio of the number of valid information bits to the total number of bits transmitted, or in other words, the code rate can be equal to the ratio of the length of the information bit sequence to the length of the code word sequence.

[0111] In a possible implementation, the girth (i.e., the minimum cycle length) of the Tanner graph (or encoding bipartite graph) corresponding to the check matrix H of the LDPC code provided by the embodiments of the present application is greater than or equal to 6.

[0112] In a possible implementation, when the code rate of the LDPC code is 0.75 and the code length is 12, each column of the check matrix of the LDPC code has 3 non-zero elements and each row has 4 non-zero elements, and the check matrix of the LDPC code is full rank in the binary finite field GF(2) (i.e., the check matrix of the LDPC code is linearly independent in the row vector in GF(2)). When the code rate of the LDPC code is 0.5 and the code length is 28, or 30, or 32, or 34, or 36, each column of the check matrix of the LDPC code has 3 non-zero elements and each row has 6 non-zero elements, and the check matrix of the LDPC code is full rank in the binary finite field GF(2). Here, the non-zero elements can include element 1. When the code rate of the LDPC code is 2 / 3 (i.e., three thirds) and the code length is 216 (=9×24), the size of the check matrix of the LDPC code is 72×216, and the check matrix of the LDPC code is full rank in the binary finite field GF(2). When the code rate of the LDPC code is 0.75 and the code length is 168 (=7×24), the size of the check matrix of the LDPC code is 42×168, and the check matrix of the LDPC code is full rank in the binary finite field GF(2). When the code rate of the LDPC code is 0.75 and the code length is 120 (=5×24), the size of the check matrix of the LDPC code is 30×120, and the check matrix of the LDPC code is full rank in the binary finite field GF(2). When the code rate of the LDPC code is 5 / 6 (i.e., six sixths) and the code length is 288 (=12×24), the size of the check matrix of the LDPC code is 48×288, and the check matrix of the LDPC code is full rank in the binary finite field GF(2).

[0113] For example, the following Table 1 shows the parity check matrix H of the LDPC code with code length of 12, 28, 30, 32, 34, 36, 120, 168, 216 and 288 respectively, and code rate of 0.75, 0.5, 0.5, 0.5, 0.5, 0.5, 0.75, 0.75, 2 / 3 and 5 / 6 respectively.

[0114] Table 1

[0115] It can be understood that the parity check matrix shown in the above Table 1 is only an example, and another parity check matrix can be obtained by performing row permutation and / or column permutation on any parity check matrix in the above Table 1, which is within the protection scope of the present application.

[0116] It can also be understood that the parity check matrix in the above Table 1 can be used directly, such as using the generator matrix corresponding to any parity check matrix in the above Table 1 to encode the information bit sequence, and / or using any parity check matrix in the above Table 1 to decode the received codeword sequence. Alternatively, the parity check matrix in the above Table 1 can be used as a base matrix (or mother matrix) to generate another parity check matrix, for example, using the generator matrix corresponding to the another parity check matrix to encode the information bit sequence, and / or using the another parity check matrix to decode the received codeword sequence. In other words, the element 1 and the element 0 in any parity check matrix in the above Table 1 can represent a value respectively (at this time, it corresponds to the case of direct use). Alternatively, the element 1 in any parity check matrix in the above Table 1 can represent a Z×Z unit matrix or a cyclic shift matrix obtained by cyclically shifting the Z×Z unit matrix, and the element 0 can represent a Z×Z zero matrix, at this time, it corresponds to the case of using the parity check matrix in the above Table 1 as a base matrix to generate another parity check matrix. Z is a positive integer, for example, Z is equal to (N / 24), and N represents the code length of the LDPC code.

[0117] In a possible implementation, the LDPC code provided by the embodiments of the present application can be applied in a low-power system, such as the AMP field; can be applied in a Wi-Fi system; can be applied in a mobile communication system; and the present application is not limited.

[0118] In a possible implementation, the LDPC code with the code length of 36 and the code rate of 0.5 in Table 1 above can be adapted to the Wi-Fi system after being repeated once (the code length is changed to 72 = 3 x 24). In addition, considering that the code length of the LDPC code adopted in the existing 802.11ac / ax standard is an integer multiple of 24, the LDPC code with the code length of 120 (= 5 x 24) and the code rate of 0.75, the LDPC code with the code length of 168 (= 7 x 24) and the code rate of 0.75, the LDPC code with the code length of 216 (= 9 x 24) and the code rate of 2 / 3 (two-thirds), and the LDPC code with the code length of 288 (= 12 x 24) and the code rate of 5 / 6 (five-sixths) in Table 1 above can all be adapted to the Wi-Fi system. Of course, these LDPC codes can also be applied to other communication systems, and the present application is not limited thereto.

[0119] It can be understood that, generally, the smaller the girth in the Tanner graph of the LDPC code, the higher the possibility of decoding failure and the worse the decoding performance when using an iterative decoding algorithm (such as the Belief Propagation algorithm) for decoding. The LDPC code designed in the embodiments of the present application has a medium or short code length (such as less than or equal to 288), and the girth (that is, the minimum cycle length) of the Tanner graph corresponding to the check matrix of the LDPC code is greater than or equal to 6. In this way, the decoding success rate of the system can be improved, thereby improving the decoding performance and the transmission reliability.

[0120] The above describes the check matrix of the LDPC code in various code lengths and various code rates provided by the embodiments of the present application, and the construction method of the check matrix of the LDPC code is briefly described below.

[0121] It can be understood that the minimum cycle length (that is, the girth) of the Tanner graph (that is, the encoding bipartite graph) corresponding to the check matrix H can approximately depict the decoding performance of the LDPC code determined by the check matrix H under various decoding algorithms. Generally, the smaller the minimum cycle length (that is, the girth) of the Tanner graph corresponding to the check matrix H, the worse the decoding performance of the LDPC code determined by the check matrix H. Therefore, the embodiments of the present application consider that the minimum cycle length (that is, the girth) of the Tanner graph corresponding to the check matrix H of the LPDC code in the medium or short code length is not less than (that is, greater than or equal to) a specified value (for example, 6), so as to improve the decoding success rate of the LDPC code in the medium or short code length, and further improve the decoding performance and the transmission reliability.

[0122] The embodiments of the present application convert the construction method of the check matrix of the LDPC code into a feasible solution of a special integer linear programming (ILP).

[0123] Let G is a simple undirected graph with vertex set V and edge set E. Define G = (g... ij ) n×n For the image The connection matrix, i.e., when (i,j)∈E, has g ij =1; when There is g ij =0. Where g ii =0. A graph The edge set E and its connection matrix G are in one-to-one correspondence.

[0124] Define the chain. (Graph) Chain definition: Consider a triple (x, a, b) ∈ E and s ≥ 3. If,

[0125] 1) There exists an edge between x and a, i.e. (x, a) ∈ E;

[0126] 2) In the figure There is a path {a = x2, x3, ..., x} with length (s-2). s =b};

[0127] 3) Edge (x, a) is not on any of the (s-2) edges (x2, x3), (x4, x5), ..., (x s-1 ,x s It appears in ) that is

[0128] Then x, x2, x3, ..., x s For the image A chain passing through the triple (x, a, b) with characteristic s. Here, the characteristic s of the chain is the number of vertices (which may be repeated) used to describe the chain.

[0129] Since the minimum characteristic number s of a chain is 3, for a chain x1,x2,...,x s It is possible that vertex x1 = x s The other vertices are different. Generally speaking, a chain may have one of the forms shown in Figure 6, which shows chains with no intersections, one intersection, and multiple intersections. A chain passing through the triple (x, a, b) is a cycle if and only if x = b.

[0130] Then, integer linear programming (ILP) is used to characterize the triples. Let the parity-check matrix of the LDPC code be H = (h ij The set of vertices V is equal to the union of the set of variable nodes VN and the set of check nodes CN, i.e., V = VN∪CN; the intersection of the set of variable nodes VN and the set of check nodes CN is an empty set. In other words, for i,j∈VN or i,j∈CN, the connection matrix G=(g ij ) n×n element g ij = 0. For i∈CN, j∈VN, we have g ij =h ij For i∈VN, j∈CN, we have g ij =h ji .

[0131] For a given parity matrix H = (h ij Given a Tanner graph with a given vertex set V = VN∪CN, define the variables of the minimization problem P2(R) as: w ijk,m ∈{0,1},i,k∈CN,j∈VN,m=1,2,...,R.

[0132] The optimization objective of P2(R) is:

[0133] The constraints of P2(R) are as follows:

[0134] 1. For all i belonging to CN and all j belonging to Constraints apply:

[0135] w iji,1 =0; in other words, for When k equals i and m equals 1, w iji,1 The value is 0.

[0136] 2. For all i and k, CN belongs to CN, and for all j, CN belongs to CN. If i is not equal to k (i≠k), then the following constraint applies: h ij +h kj ≤1+w ijk,1 .

[0137] 3. For all i, r, and k, belong to CN, and for all j and s, belong to CN. If 2 ≤ m ≤ R, and r ≠ i (r ≠ i) and s ≠ j (s ≠ j), then the following constraint applies: h ij +h rj +w rsk,m-1 ≤2+w ijk,m .

[0138] The optimal solution w of P2(R) ijk,m Composition of W m The elements. Embodiments of this application can utilize the obtained W. m To describe the girth.

[0139] Finally, for a given girth parameter s, check node set CN, variable node set VN, and check node degree distribution c1, c2, …, c u ; cn1, cn2, …, cn u , and variable node degree distribution v1, v2, …, v t ; cv1, cv2, …, cv t , an embodiment of the present application provides an algorithm which outputs a check matrix H ∈ {0, 1} CN×VN , and the girth of the Tanner graph corresponding to the check matrix H is not less than the parameter s. It can be understood that the code length is equal to the number of variable nodes in the variable node set VN, and the code rate is equal to the quotient value of the difference between the number of variable nodes in the variable node set VN and the number of check nodes in the check node set CN divided by the number of variable nodes (i.e., code rate = (number of variable nodes-number of check nodes) / number of variable nodes). Therefore, in the case of a given code length and code rate, the check node set CN and the variable node set VN can be determined.

[0140] For example, for a vertex set V = VN ∪ CN, given the degree distribution of CN as c1, c2, …, c u ; cn1, cn2, …, cn u , and the degree distribution of VN as v1, v2, …, v t ; cv1, cv2, …, cv t . Among them, the degree distribution of the check node c1, c2, …, c u ; cn1, cn2, …, cn u means that there are cn i check nodes with degree c i (or elements c i ); similarly, the degree distribution of the variable node v1, v2, …, v t ; cv1, cv2, …, cv t means that there are cv i variable nodes with degree v i (or elements v i ). The sum of cn1, cn2, …, cn u is the number of check nodes, and the sum of cv1, cv2, …, cv t is the number of variable nodes.

[0141] In the case of a given girth parameter, check node set, variable node set, and degree distribution of check nodes and variable nodes, the variables of the minimization problem P4(R) are defined as:

[0142] The optimization goal of P4(R) is:

[0143] where the constraints of P4(R) include other constraints besides the 3 constraints of P2(R) as follows:

[0144] 4. For all i in the check node set there is a constraint:

[0145] and

[0146] 5. For 1≤l≤u, there is a constraint:

[0147] 6. For all j in the variable node set there is a constraint:

[0148] and

[0149] 7. For 1≤l≤t, there is a constraint:

[0150] 8. There is a constraint:

[0151] h ij represents an element of the check matrix H. cind il = 1 if and only if the degree of check node i is c l . vind jl = 1 if and only if the degree of variable node j is v l .

[0152] It means that only one of cind i1 ,…,cind iu can be 1, and the others are 0. The sum data corresponds to the degree of check node i, so the constraint means that cind l = 1 when the degree of check node i is c il , and cind ik = 0 for other k≠l.

[0153] represents the total number of check nodes with degree c l , so constraint 5 indicates that the total number of check nodes with degree c l is cn i .

[0154] It means that only one of vind j1 ,…,vind jtThere is only one 1 in the middle, and all others are 0. Sum the data denotes the degree of variable node j, so constraint denotes that vind l = 1 when the degree of variable node j is v jl , and vind jk = 0 for other k ≠ l.

[0155] denotes the total number of variable nodes with degree v l , so constraint 7 indicates that the total number of variable nodes with degree v l is vn j .

[0156] Constraint 8 indicates that the element of the low-order pseudo connection matrix is 0.

[0157] It can be understood that the check matrix H is an optimal solution of P4(R).

[0158] It can also be understood that various check matrices of the LDPC code in Table 1 can be obtained by the above construction method, but are not limited to the above.

[0159] The above describes the method provided by the present application in detail. In order to facilitate the implementation of the above scheme of the embodiments of the present application, the embodiments of the present application further provide corresponding devices or equipment.

[0160] The present application divides the functional modules of the communication device according to the above method embodiments. For example, each functional module can be divided according to each function, or two or more functions can be integrated in one processing module. The above integrated module can be realized in the form of hardware or in the form of a software functional module. It should be noted that the division of the modules in the present application is illustrative, and is only a logical functional division. In actual implementation, there can be another division method. The communication device of the embodiments of the present application will be described in detail below with reference to FIGS. 7 to 9.

[0161] Referring to FIG. 7, FIG. 7 is a structure schematic diagram of a communication device provided by an embodiment of the present application. As shown in FIG. 7, the communication device includes a transceiver module 10 and a processing module 20. The transceiver module 10 can realize corresponding communication functions, and the processing module 20 is used for data processing. The transceiver module 10 can also be referred to as a communication interface or a communication module, etc.

[0162] In some embodiments of the present application, the communication apparatus can be the first communication apparatus shown above. That is, the communication apparatus shown in FIG. 7 can be configured to perform the steps or functions performed by the first communication apparatus in the above method embodiments. For example, the communication apparatus can be the first communication apparatus or a chip or functional module configured in the first communication apparatus, and the embodiments of the present application are not limited in this regard. The transceiver module 10 is configured to perform the transceiving related operations of the first communication apparatus in the above method embodiments, and the processing module 20 is configured to perform the processing related operations of the first communication apparatus in the above method embodiments.

[0163] The processing module 20 is configured to obtain an information bit sequence, and the processing module 20 is further configured to encode the information bit sequence by using a generator matrix corresponding to a check matrix of an LDPC code to obtain a codeword sequence. The transceiver module 10 is configured to transmit the codeword sequence. In this embodiment of the present application, the code length of the LDPC code is less than or equal to 36, and the girth of the encoding bipartite graph corresponding to the check matrix of the LDPC code is greater than or equal to 6.

[0164] It can be understood that the transceiver module 10 can transmit the codeword sequence to another communication apparatus, or the transceiver module 10 can output the codeword sequence from the processing module 20 to other components or other functional modules in the communication apparatus. The description of the transceiver module outputting other information is similar, and will not be described in detail hereinafter.

[0165] In the embodiments of the present application, the description of the first communication apparatus, the LDPC code, the check matrix and the generator matrix of the LDPC code, and the like can refer to the description in the above method embodiments (such as FIG. 5), and will not be described one by one here.

[0166] It can be understood that the specific description of the transceiver module and the processing module shown in the embodiments of the present application is only an example, and the specific functions or steps performed by the transceiver module and the processing module can refer to the above method embodiments (such as FIG. 5), and will not be described hereinafter. In addition, the technical effects of the embodiments of the present application can refer to the technical effects of the above method embodiments, and will not be described hereinafter for the sake of brevity.

[0167] Referring to FIG. 7, in some other embodiments of the present application, the communication apparatus can be the second communication apparatus shown above. That is, the communication apparatus shown in FIG. 7 can be configured to perform the steps or functions performed by the second communication apparatus in the above method embodiments. For example, the communication apparatus can be the second communication apparatus or a chip or functional module configured in the second communication apparatus, and the embodiments of the present application are not limited in this regard. The transceiver module 10 is configured to perform the transceiving related operations of the second communication apparatus in the above method embodiments, and the processing module 20 is configured to perform the processing related operations of the second communication apparatus in the above method embodiments.

[0168] The transceiver module 10 receives the codeword sequence; the processing module 20 decodes the codeword sequence using the check matrix of the LDPC code to obtain the information bit sequence. The code length of the LDPC code is less than or equal to 36, and the girth of the encoding bipartite graph corresponding to the check matrix of the LDPC code is greater than or equal to 6.

[0169] It can be understood that the transceiver module 10 can receive the codeword sequence from other communication devices, or the transceiver module 10 inputs the codeword sequence from other components or other functional modules in the communication device, etc. The related description of the transceiver module inputting other information is similar, and will not be described in detail hereinafter.

[0170] In the embodiments of the present application, the description of the second communication device, the LDPC code, the check matrix and the generator matrix of the LDPC code, etc. can refer to the description in the method embodiments (such as Fig. 5) above, which will not be described one by one here.

[0171] It can be understood that the specific description of the transceiver module and the processing module shown in the embodiments of the present application is only an example. For the specific functions or steps of the transceiver module and the processing module, etc., it can be referred to the above method embodiments (such as Fig. 5), which will not be described here. In addition, the technical effects of the embodiments of the present application are described above, and for the sake of brevity, will not be described here.

[0172] The communication device of the embodiments of the present application is introduced above, and the possible product form of the communication device is introduced below. It should be understood that any form of product with the function of the communication device described in Fig. 7 above falls within the protection scope of the embodiments of the present application. It should also be understood that the following introduction is only an example, and the product form of the communication device of the embodiments of the present application is not limited to this.

[0173] In a possible implementation, in the communication apparatus shown in FIG. 7, the processing module 20 can be one or more processors, and the transceiver module 10 can be a transceiver, or the transceiver module 10 can also be a sending module and a receiving module, the sending module can be a transmitter, and the receiving module can be a receiver, and the sending module and the receiving module are integrated in one device, for example, a transceiver. In the embodiment of the application, the processor and the transceiver can be coupled, and the connection manner of the processor and the transceiver is not limited in the embodiment of the application. In the process of executing the above method, the process of transmitting information (for example, transmitting a codeword sequence) in the above method can be understood as the process of outputting the above information by the processor. When the above information is output, the processor outputs the above information to the transceiver, so that the transceiver transmits. After the above information is output by the processor, the above information can also need to be processed further, and then reaches the transceiver. Similarly, the process of receiving information (for example, receiving a codeword sequence) in the above method can be understood as the process of receiving input of the above information by the processor. When the processor receives the input information, the transceiver receives the above information and inputs the processor. Further, after the transceiver receives the above information, the above information can need to be processed further, and then inputs the processor.

[0174] Referring to FIG. 8, FIG. 8 is another structural schematic diagram of the communication apparatus provided in the embodiment of the application. The communication apparatus can be the first communication apparatus or the second communication apparatus, or a chip therein. FIG. 8 only shows the main components of the communication apparatus. In addition to the processor 1001, the communication apparatus can further include a transceiver 1002 and a memory 1003, and an input and output apparatus (not shown in the figure).

[0175] The processor 1001 is mainly used for processing a communication protocol and communication data, and controlling the whole communication apparatus, executing a software program, and processing data of the software program. The memory 1003 is mainly used for storing the software program and the data. The transceiver 1002 can include a control circuit and an antenna, and the control circuit is mainly used for converting a baseband signal and a radio frequency signal, and processing the radio frequency signal. The antenna is mainly used for transceiving a radio frequency signal in the form of an electromagnetic wave. The input and output apparatus, for example, a touch screen, a display screen, a keyboard and the like, is mainly used for receiving data input by a user and outputting data to the user.

[0176] When the communication apparatus is powered on, the processor 1001 can read a software program in the memory 1003, interpret and execute instructions of the software program, and process data of the software program. When data needs to be transmitted wirelessly, the processor 1001 performs baseband processing on the data to be transmitted, and outputs a baseband signal to the radio frequency circuit. The radio frequency circuit performs radio frequency processing on the baseband signal, and transmits a radio frequency signal in the form of an electromagnetic wave through an antenna. When data is transmitted to the communication apparatus, the radio frequency circuit receives a radio frequency signal through the antenna, converts the radio frequency signal into a baseband signal, and outputs the baseband signal to the processor 1001. The processor 1001 converts the baseband signal into data and processes the data.

[0177] In another implementation, the radio frequency circuit and the antenna can be arranged independently of the processor that performs baseband processing, for example, in a distributed scenario, the radio frequency circuit and the antenna can be arranged remotely from the communication apparatus.

[0178] The processor 1001, the transceiver 1002, and the memory 1003 can be connected through a communication bus.

[0179] For example, when the communication apparatus is configured to perform the steps or methods or functions performed by the first communication apparatus in the method embodiments shown in FIG. 5, the processor 1001 can be configured to perform steps S101 and S102 in FIG. 5, and / or other processes described herein for implementing the techniques described herein; and the transceiver 1002 can be configured to perform step S103 in FIG. 5, and / or other processes described herein for implementing the techniques described herein.

[0180] For example, when the communication apparatus is configured to perform the steps or methods or functions performed by the second communication apparatus in the method embodiments shown in FIG. 5, the processor 1001 can be configured to perform step S104 in FIG. 5, and / or other processes described herein for implementing the techniques described herein; and the transceiver 1002 can be configured to receive the sequence of code words, and / or other processes described herein for implementing the techniques described herein.

[0181] In any of the above designs, the processor 1001 can include a transceiver for implementing receiving and transmitting functions. For example, the transceiver can be a transceiver circuit, or an interface, or an interface circuit. The transceiver circuit, the interface, or the interface circuit for implementing receiving and transmitting functions can be separate or integrated together. The above transceiver circuit, interface, or interface circuit can be used for reading and writing of code / data, or the above transceiver circuit, interface, or interface circuit can be used for transmission or transfer of signals.

[0182] In any of the above designs, the processor 1001 can store instructions, which can be a computer program, running on the processor 1001, to cause the communication device to perform the methods described in the above method embodiments. The computer program can be fixed in the processor 1001, in which case the processor 1001 can be implemented by hardware.

[0183] In an implementation, the communication device can include circuitry that can implement the functions of sending or receiving or communicating in the above method embodiments. The processor and transceiver described in the present application can be implemented on an integrated circuit (IC), an analog IC, a radio frequency integrated circuit (RFIC), a mixed-signal IC, an application specific integrated circuit (ASIC), a printed circuit board (PCB), an electronic device, etc. The processor and transceiver can also be manufactured using various IC process technologies, such as complementary metal oxide semiconductor (CMOS), N-type metal oxide semiconductor (NMOS), positive channel metal oxide semiconductor (PMOS), bipolar junction transistor (BJT), bipolar CMOS (BiCMOS), silicon germanium (SiGe), gallium arsenide (GaAs), etc.

[0184] It can be understood that the communication device shown in the embodiments of the present application can also have more components than those shown in FIG. 8, and the embodiments of the present application do not limit this. The methods performed by the processor and transceiver shown above are only examples, and the specific steps performed by the processor and transceiver can refer to the description of the above method embodiments.

[0185] In another possible implementation, in the communication apparatus shown in FIG. 7, the processing module 20 can be one or more logic circuits, and the transceiver module 10 can be an input / output interface, also referred to as a communication interface, or an interface circuit, or an interface, etc. Alternatively, the transceiver module 10 can also be a sending module and a receiving module, the sending module can be an output interface, and the receiving module can be an input interface, and the sending module and the receiving module are integrated in one module, for example, an input / output interface. Referring to FIG. 9, FIG. 9 is another structural schematic diagram of a communication apparatus according to an embodiment of the present application. As shown in FIG. 9, the communication apparatus shown in FIG. 9 includes a logic circuit 901 and an interface 902. That is, the processing module 20 can be implemented by the logic circuit 901, and the transceiver module 10 can be implemented by the interface 902. The logic circuit 901 can be a chip, a processing circuit, an integrated circuit, or a system on chip (SoC) chip, etc., and the interface 902 can be a communication interface, an input / output interface, a pin, etc. For example, FIG. 9 is a chip with the above communication apparatus as an example, and the chip includes the logic circuit 901 and the interface 902.

[0186] In the embodiments of the present application, the logic circuit and the interface can also be coupled to each other. The specific connection manner of the logic circuit and the interface is not limited in the embodiments of the present application.

[0187] For example, when the communication apparatus is used to execute the method or the function or the step executed by the first communication apparatus in the foregoing method embodiment, the logic circuit 901 is configured to generate an information bit sequence; the logic circuit 901 is further configured to encode the information bit sequence by using a generator matrix corresponding to a check matrix of an LDPC code to obtain a codeword sequence; and the interface 902 is configured to output the codeword sequence.

[0188] For example, when the communication apparatus is used to execute the method or the function or the step executed by the second communication apparatus in the foregoing method embodiment, the interface 902 is configured to input a codeword sequence; and the logic circuit 901 is configured to decode the codeword sequence by using a check matrix of an LDPC code to obtain an information bit sequence.

[0189] In the embodiments of the present application, the specific description of the LDPC code and the check matrix and the generator matrix thereof can refer to the method embodiment shown in FIG. 5, which will not be repeated here.

[0190] It can be understood that the communication apparatus shown in the embodiments of the present application can implement the method provided by the embodiments of the present application in the form of hardware, or implement the method provided by the embodiments of the present application in the form of software, etc., and the embodiments of the present application do not limit this.

[0191] For the specific implementation of the embodiment shown in FIG. 9, the foregoing various embodiments can also be referred to, which will not be repeated here.

[0192] The embodiments of the present application further provide a communication system, comprising a first communication device and a second communication device, which can be used to perform the method in the foregoing method embodiments.

[0193] In addition, the present application further provides a computer program for implementing the operations and / or processes performed by the first communication device in the method provided by the present application.

[0194] The present application further provides a computer program for implementing the operations and / or processes performed by the second communication device in the method provided by the present application.

[0195] The present application further provides a computer readable storage medium, which stores computer codes, when the computer codes are run on a computer, the computer is caused to perform the operations and / or processes performed by the first communication device in the method provided by the present application.

[0196] The present application further provides a computer readable storage medium, which stores computer codes, when the computer codes are run on a computer, the computer is caused to perform the operations and / or processes performed by the second communication device in the method provided by the present application.

[0197] The present application further provides a computer program product, which comprises computer codes or computer programs, when the computer codes or computer programs are run on a computer, the operations and / or processes performed by the first communication device in the method provided by the present application are performed.

[0198] The present application further provides a computer program product, which comprises computer codes or computer programs, when the computer codes or computer programs are run on a computer, the operations and / or processes performed by the second communication device in the method provided by the present application are performed.

[0199] In several embodiments provided by the present application, it should be understood that the disclosed system, device and method can be implemented by other ways. For example, the device embodiments described above are only schematic, for example, the division of the units is only a logical function division, and there can be another division way in actual implementation, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interfaces, devices or units, and can also be electrical, mechanical or other forms of connection.

[0200] The units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the technical effects of the scheme provided by the embodiments of the present application.

[0201] In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or each unit can be physically present alone, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.

[0202] The integrated unit, if realized in the form of a software functional unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application essentially or the part of the prior art that contributes to the technical solutions, or all or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a readable storage medium, including a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned readable storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various program code storage media.

[0203] The above is only a specific embodiment of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art can easily think of changes or replacements within the technical scope disclosed in the present application, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A communication method characterized by comprising: The method comprises: obtaining an information bit sequence; encoding the information bit sequence using a generator matrix corresponding to a parity check matrix of a low-density parity-check (LDPC) code to obtain a codeword sequence; wherein a code length of the LDPC code is less than or equal to 36 and a girth of an encoding bipartite graph corresponding to the parity check matrix of the LDPC code is greater than or equal to 6; transmitting the codeword sequence.

2. A communication method characterized by comprising: The method comprises: receiving a codeword sequence; decoding the codeword sequence using a parity check matrix of a low-density parity-check (LDPC) code to obtain an information bit sequence; wherein a code length of the LDPC code is less than or equal to 36 and a girth of an encoding bipartite graph corresponding to the parity check matrix of the LDPC code is greater than or equal to 6.

3. The method according to claim 1 or 2, characterized in that, The code length of the LDPC code is 12, or 28, or 30, or 32, or 34, or 36.

4. The method according to any one of claims 1 to 3, characterized in that, The code rate of the LDPC code is 0.75 or 0.

5.

5. The method according to any one of claims 1 to 4, characterized in that, The code length of the LDPC code is 12, the code rate of the LDPC code is 0.75, each column in the parity check matrix of the LDPC code has 3 non-zero elements and each row has 4 non-zero elements.

6. The method of claim 5, wherein, The parity check matrix H of the LDPC code 12 is:

7. The method according to any one of claims 1 to 4, characterized in that, The code length of the LDPC code is 28, or 30, or 32, or 34, or 36, the code rate of the LDPC code is 0.5, each column in the parity check matrix of the LDPC code has 3 non-zero elements and each row has 6 non-zero elements.

8. The method of claim 7, wherein, When the code length of the LDPC code is 28, the check matrix H of the LDPC code is 28 :

9. The method of claim 7, wherein, When the code length of the LDPC code is 30, the check matrix H of the LDPC code is 30 :

10. The method of claim 7, wherein, When the code length of the LDPC code is 32, the check matrix H of the LDPC code is 32 :

11. The method of claim 7, wherein, When the code length of the LDPC code is 34, the check matrix H of the LDPC code is 34 :

12. The method of claim 7, wherein, When the code length of the LDPC code is 36, the check matrix H of the LDPC code is 36 :

13. A communications device, characterized by A module for performing the method of any one of claims 1 to 12.

14. A communications device, characterized by The method comprises: one or more processors coupled with one or more memories; wherein the one or more memories are configured to store a computer program, and the one or more processors are configured to execute the computer program stored in the one or more memories to cause the communication device to perform the method of any one of claims 1 to 12.

15. A communications device, characterized by A logic circuit and an interface are coupled; the interface is configured to input and / or output information, and the logic circuit is configured to perform the method of any one of claims 1 to 12.

16. A readable storage medium, characterized by, A program is stored, and the program is executed by one or more processors to cause a device comprising the one or more processors to perform the method of any one of claims 1 to 12.

17. A computer program product, characterised in that, The computer program product is executed, and the method of any one of claims 1 to 12 is performed.

18. A communication system, characterized by The communication system comprises a communication device configured to perform the method of any one of claims 1, 3 to 12, and a communication device configured to perform the method of any one of claims 2 to 12.

Citation Information

Patent Citations

  • Quasi-cyclic LDPC (Low Density Parity Check) coding and decoding method and device and

    CN116683917A

  • Coding method, decoding method, communication device and computer readable storage medium

    CN117749315A

  • Transmitting apparatus and transmission method, receiving apparatus and reception method, and program

    US20190393898A1