Communication method and communication device based on LDPC (Low Density Parity Check) code

By dynamically selecting the base map and puncturing method for LDPC encoding, and based on the capabilities of the terminal device and application scenario information, the problem of suboptimal decoding performance caused by base map selection in existing technologies is solved, achieving more efficient decoding performance.

CN121603015APending Publication Date: 2026-03-03HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411164803.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-22
Publication Date
2026-03-03

AI Technical Summary

Technical Problem

In existing LDPC codes, the base map selection method results in suboptimal decoding performance, which cannot meet the requirements of terminal devices and application scenarios.

Method used

By acquiring information about the capabilities and application scenarios of the terminal device, the appropriate base map and punching method are dynamically selected for LDPC encoding or decoding, including selecting the NR base map, sub-map, and different punching methods, and adjusting them according to the capabilities and bit rate of the terminal device.

Benefits of technology

It improves decoding performance, adapts to the capabilities and application scenarios of different terminal devices, and enhances the efficiency and effectiveness of encoding or decoding.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121603015A_ABST
    Figure CN121603015A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a communication method and a communication device based on an LDPC (Low Density Parity Check) code, the capability and the application scene of terminal equipment are considered when a base graph and a punching mode used for coding or decoding are determined, so that different base graphs and / or punching modes can be selected according to whether the capability of the terminal equipment meets the requirements of the application scene or not, and the communication efficiency is improved. And the selection of a proper base graph and a punching mode is facilitated, so that the decoding performance is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

[0002] In the field of channel coding, low-density parity check (LDPC) codes are one of the most mature and widely used channel coding schemes. In current LDPC codes, the base map used for coding can be selected based on the payload size and code rate. However, in some scenarios, the decoding performance of the base map selected based on this method is not optimal. Summary of the Invention

[0003] The embodiments of this application provide a communication method and communication device based on LDPC codes, with the aim of improving decoding performance.

[0004] In a first aspect, a communication method based on LDPC codes is provided. The method can be executed by an encoding device. Unless otherwise specified, "encoding device" can refer to the encoding device itself, a component in the encoding device (e.g., a processor, chip, or chip system), or a logic module or software that can implement all or part of the functions of the encoding device.

[0005] The method includes: acquiring an information bit sequence; acquiring first information and second information, wherein the first information is used to indicate the capabilities of a terminal device and the second information is used to indicate an application scenario; determining a base map and / or a puncturing method based on the first information and the second information; performing LDPC encoding on the information bit sequence based on the base map to obtain an LDPC codeword sequence; and sending the LDPC codeword sequence according to the puncturing method.

[0006] In the above method, the capabilities of the terminal device and the application scenario are considered when determining the base map and puncturing method used for encoding. This allows for the selection of different base maps and / or puncturing methods based on whether the capabilities of the terminal device meet the requirements of the application scenario, which helps to select the appropriate base map and puncturing method and thus improve decoding performance.

[0007] Secondly, a communication method based on LDPC codes is provided. The method can be executed by a decoding device. Unless otherwise specified, "decoding device" can refer to the decoding device itself, a component in the decoding device (e.g., a processor, chip, or chip system), or a logic module or software that can implement all or part of the functions of the decoding device.

[0008] The method includes: receiving an LDPC codeword sequence; acquiring first information and second information, wherein the first information is used to indicate the capabilities of a terminal device and the second information is used to indicate an application scenario; determining a base map and / or a puncturing method based on the first information and the second information; and performing LDPC decoding on the LDPC codeword sequence based on the base map and the puncturing method to obtain an information bit sequence.

[0009] In the above method, the capabilities of the terminal device and the application scenario are considered when determining the base map and punching method used for decoding. This allows for the selection of different base maps and / or punching methods based on whether the capabilities of the terminal device meet the requirements of the application scenario, which helps to select the appropriate base map and punching method and thus improve decoding performance.

[0010] In combination with any of the above aspects, in some implementations, determining the base map and / or punching method based on the first information and the second information includes: determining the base map and / or punching method based on the first information, the second information, and the bitrate.

[0011] In conjunction with any of the above aspects or their implementations, in some other implementations, determining the base graph and / or puncturing method based on the first information, the second information, and the code rate includes: when the capabilities of the terminal device meet the application scenario and the code rate is less than or equal to a first threshold, determining the base graph as a new radio (NR) base graph (BG)1 and the puncturing method as no puncturing; or, when the capabilities of the terminal device meet the application scenario and the code rate is greater than the first threshold, determining the base graph as NR BG1 and the puncturing method as puncturing the first column of the base graph; or, when the capabilities of the terminal device do not meet the application scenario, determining the base graph and / or the puncturing method based on the code rate and the size of the information bit sequence.

[0012] Optionally, the first threshold value is a threshold value used to determine the drilling method, such as 3 / 4.

[0013] In the above implementation, a complete NR basemap is used for LDPC encoding or decoding, and the puncturing method is determined based on the code rate when the terminal device's capabilities meet the application scenario. Simulation results show that when the code rate is greater than or equal to 3 / 4, the performance of using NR BG1 with puncturing one column of high-weight code begins to outperform the performance of using NR BG1 without puncturing. Therefore, based on this implementation, a more suitable basemap and puncturing method can be selected to improve decoding performance.

[0014] In conjunction with any of the above aspects or their implementations, in some other implementations, determining the base map and / or puncturing method based on the first information, the second information, and the bit rate includes: when the capabilities of the terminal device meet the application scenario and the bit rate is less than or equal to a second threshold, determining the base map as NR BG1 and the puncturing method as no puncturing; or, when the capabilities of the terminal device meet the application scenario and the bit rate is greater than the second threshold, determining the base map as a sub-map of NR BG1 and the puncturing method as no puncturing; or, when the capabilities of the terminal device do not meet the application scenario, determining the base map and / or the puncturing method based on the bit rate and the size of the information bit sequence.

[0015] Optionally, the second threshold value is a threshold value used to determine whether to extract the subgraph of NR BG1, such as 1 / 3.

[0016] In the above implementation, provided the terminal device's capabilities meet the application scenario, the decision to extract a portion of the NR basemap for LDPC encoding or decoding is based on the currently scheduled code rate. Simulation results show that when the code rate is greater than 1 / 3, using a portion of NR BG1 (such as a subgraph obtained by deleting the 5th row of NR BG1) for LDPC encoding yields better performance. Therefore, based on this implementation, a more suitable basemap and puncturing method can be selected to improve decoding performance.

[0017] In conjunction with any of the above aspects or their implementations, in some other implementations, determining the base map and / or the puncturing method based on the first information and the second information includes: when the capabilities of the terminal device meet the application scenario, determining the base map as a sub-map of NR BG1 and the puncturing method as no puncturing; or, when the capabilities of the terminal device do not meet the application scenario, determining the base map and / or the puncturing method based on the code rate and the size of the information bit sequence.

[0018] In the above implementation, under the condition that the terminal device's capabilities meet the application scenario, incomplete NRBG1 is used for encoding or decoding, and large column weights are not punctured. Simulation results show that when using an incomplete NR basemap, regardless of the code rate, BG1 without puncturing achieves the best decoding performance. Therefore, based on this implementation, a more suitable basemap and puncturing method can be selected to improve decoding performance.

[0019] In conjunction with any of the above aspects or their implementations, in some other implementations, determining the base map and / or the puncturing method based on the first information and the second information includes: when the capabilities of the terminal device meet the application scenario, determining the base map as NR BG1 and the puncturing method as no puncturing; or, when the capabilities of the terminal device do not meet the application scenario, determining the base map and / or the puncturing method based on the code rate and the size of the information bit sequence.

[0020] In the above implementation, provided the terminal device's capabilities meet the application scenario, full NRBG1 is used for encoding or decoding, and large column weights are not punctured. Simulation results show that when using the full NR basemap, regardless of the code rate, BG1 without puncturing achieves the best decoding performance. Therefore, based on this implementation, a more suitable basemap and puncturing method can be selected to improve decoding performance.

[0021] In some other implementations, in conjunction with any of the above aspects or their implementations, determining the base map and / or the puncturing method based on the first information and the second information includes: determining the base map and / or the puncturing method based on the first information, the second information, the code rate, and the size of the information bit sequence.

[0022] In conjunction with any of the above aspects or their implementations, in some other implementations, determining the base map and / or puncturing method based on the first information, the second information, the code rate, and the size of the information bit sequence includes: when the code rate and the size of the information bit sequence satisfy a first condition, and the capabilities of the terminal device meet the application scenario, determining the base map as NR BG2 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence satisfy the first condition, and the capabilities of the terminal device do not meet the application scenario, determining the base map as NR BG2 and the puncturing method as puncturing the first two columns of the base map; or, when the code rate and the size of the information bit sequence do not satisfy the first condition, the capabilities of the terminal device meet the application scenario, and the code rate is less than or equal to a first threshold value, determining the base map as NR BG1 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence do not satisfy the first condition, the capabilities of the terminal device meet the application scenario, and the code rate is greater than the first threshold value, determining the base map as NR. BG1 and the puncturing method is to puncture the first column of the base map; or, when the code rate and the size of the information bit sequence do not meet the first condition, and the capability of the terminal device does not meet the application scenario, the base map is determined to be NR BG1 and the puncturing method is to puncture the first two columns of the base map; wherein, the first condition is: the size of the information bit sequence is less than or equal to 292, or, the size of the information bit sequence is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or, the code rate is less than or equal to 1 / 4.

[0023] In the above implementation, BG1 or BG2 can be selected first based on the base map selection method of NR. Based on the selected BG, the punching method and / or whether to extract sub-graphs can be further determined according to whether the terminal device's capabilities meet the application scenario.

[0024] In conjunction with any of the above aspects or their implementations, in some other implementations, determining the base map and / or puncturing method based on the first information, the second information, the code rate, and the size of the information bit sequence includes: when the code rate and the size of the information bit sequence satisfy a first condition, and the capabilities of the terminal device meet the application scenario, determining the base map as NR BG2 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence satisfy the first condition, and the capabilities of the terminal device do not meet the application scenario, determining the base map as NR BG2 and the puncturing method as puncturing the first two columns of the base map; or, when the code rate and the size of the information bit sequence do not satisfy the first condition, and the capabilities of the terminal device meet the application scenario, determining the base map as NR BG1 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence do not satisfy the first condition, and the capabilities of the terminal device do not meet the application scenario, determining the base map as NR BG1 and the punching method is to punch the first two columns of the base map; wherein, the first condition is: the size of the information bit sequence is less than or equal to 292, or the size of the information bit sequence is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or the code rate is less than or equal to 1 / 4.

[0025] In the above implementation, BG1 or BG2 can be selected first based on the base map selection method of NR. Based on the selected BG, the punching method and / or whether to extract sub-graphs can be further determined according to the capabilities of the terminal device and the bit rate.

[0026] In some implementations, in conjunction with any of the above aspects or their implementations, the method further includes: sending third information, the third information being used to indicate the base map and the punching method. Based on this implementation, the judgment process of the peer device can be reduced, thereby improving encoding or decoding speed.

[0027] Thirdly, a communication apparatus is provided for performing the method provided in any of the above aspects or their implementations. Specifically, the apparatus may include units and / or modules for performing the method provided in any of the above aspects or their implementations, such as a processing unit and / or a transceiver unit. The processing unit is used to perform the processing steps in the method provided in any of the above aspects or their implementations. The transceiver unit is used to perform the transceiver steps in the method provided in any of the above aspects or their implementations.

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

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

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

[0031] In one implementation, the device is an encoding device or a decoding device.

[0032] In another implementation, the device is a chip, chip system, or circuit used in an encoding or decoding device.

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

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

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

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

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

[0038] Eighthly, a computer program product including instructions is provided, comprising a computer program or instructions that, when executed on a computer, implement the steps of the method provided in any of the foregoing aspects or their implementations.

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

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

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

[0042] In a tenth aspect, a communication system is provided, comprising at least one of the encoding or decoding devices described above.

[0043] In an eleventh aspect, a computer program is provided that, when run on a computer, causes the methods provided by any of the foregoing aspects or their implementations to be executed. Attached Figure Description

[0044] Figure 1 This is a schematic diagram of a network architecture applicable to embodiments of this application.

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

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

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

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

[0049] Figure 6 This is a schematic flowchart of the LDPC code-based communication method 600 provided in this application.

[0050] Figure 7 It is a schematic flowchart of a scheme for selecting a base map and determining the drilling method.

[0051] Figure 8 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0052] Figure 9 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0053] Figure 10 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0054] Figure 11 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0055] Figure 12 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0056] Figure 13 This is a schematic diagram of the structure of the device provided in the embodiments of this application.

[0057] Figure 14 This is another schematic diagram of the device provided in the embodiments of this application.

[0058] Figure 15 This is a schematic diagram of a chip system provided in an embodiment of this application. Detailed Implementation

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

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

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

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

[0063] The embodiments of this application can be applied to various communication systems, including but not limited to: 5th generation (5G) systems or NR systems, LTE systems, long term evolution-advanced (LTE-A) systems, LTE frequency division duplex (FDD) systems, LTE time division duplex (TDD) systems, etc. They can also be applied to future communication systems. Furthermore, they can be applied to device-to-device (D2D) communication, vehicle-to-everything (V2X) communication, machine-to-machine (M2M) communication, machine-type communication (MTC), Internet of Things (IoT) communication systems, narrowband Internet of Things (NB-IoT) systems, or other communication systems. Furthermore, it can be extended to similar wireless communication systems, such as Wireless-Fidelity (WiFi), Worldwide Interoperability for Microwave Access (WIMAX), and communication systems related to the 3rd Generation Partnership Project (3GPP), without limitation.

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

[0065] The transmitting device can be understood as a data transmitting device, also called an encoding device. The receiving device can be understood as a data receiving device, also called a decoding device. The following description uses the terms encoding device and decoding device to describe the scheme of this application.

[0066] For example, Figure 1 A schematic diagram of a network architecture applicable to embodiments of this application is shown.

[0067] like Figure 1 As shown, the embodiments of this application can be applied to both uplink and downlink data transmission. Figure 1 This document uses only uplink or downlink data transmission between one network device and two terminal devices (such as terminal device 1 and terminal device 2) as examples. In uplink data transmission, the encoding device is the terminal device and the decoding device is the network device; conversely, in downlink data transmission, the encoding device is the network device and the decoding device is the terminal device. Furthermore, the applicability of the embodiments of this application to other communication scenarios is not limited; for example, they can also be applied to sidelink communication.

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

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

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

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

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

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

[0074] 1. LDPC code

[0075] LDPC codes are linear block codes, and their parity-check matrix (PCM) is a sparse matrix. The number of zero elements in an LDPC PC ...

[0076] In 1981, Tanner represented the LDPC codewords graphically, and this type of graph is now called a Tanner graph. There is a one-to-one correspondence between the Tanner graph and the parity-check matrix. A Tanner graph consists of two types of vertices: one type represents codeword bits and is called variable nodes; the other type consists of parity nodes, representing parity constraints. Each parity node represents a parity constraint. The following section will discuss this in conjunction with... Figure 2 and Figure 3 Please provide an explanation.

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

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

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

[0080] like Figure 3 As shown, the Tanner graph represents the parity-check matrix of the LDPC. For example, for a parity-check matrix H of size m rows and n columns, the Tanner graph contains two types of nodes: n variable nodes and m parity nodes. The n variable nodes correspond to the n columns of the parity-check matrix H, and the m parity nodes correspond to the m rows of the parity-check matrix H. A cycle in the Tanner graph consists of interconnected vertices. The cycle uses one vertex from this group of vertices as both the start and end point, and traverses each node only once. The length of the cycle is defined as the number of connections it contains, while the circumference of the graph, also known as the size of the graph, is defined as the minimum cycle length in the graph, such as... Figure 3 In the middle, the circumference is 4, such as Figure 3The diagram shows the black lines connecting the variable nodes in the Tanner graph. Variable nodes in the Tanner graph correspond to each column of the parity-check matrix H, which is equivalent to each codeword bit in the LDPC. Parity nodes in the Tanner graph correspond to each row of the parity-check matrix H, which is equivalent to the parity bits in the LDPC. The connection between two types of nodes corresponds to the value of an element in the H matrix. If there is a connection between the i-th parity node and the j-th variable node, the element (i, j) in the H matrix has a value of 1; otherwise, the corresponding element is 0. The connection between a variable node and a parity node can also be called an edge. A connection between a parity node and a variable node can also be described as: there is a connection or an edge between the parity node and the variable node. The edge relationship between a parity node and a variable node can include either the presence of an edge or the absence of an edge.

[0081] Furthermore, in a Tanner graph, a cycle is a closed loop consisting of variable nodes, check nodes, and connecting edges that are connected end to end.

[0082] As mentioned above, LDPC is a linear block code. A linear block code divides the information sequence to be encoded into groups of k bits each. The encoder then performs linear operations on these k information bits to obtain m parity bits. These k information bits are then combined with the m parity bits to obtain a codeword of length n = k + m. The mapping from k information bits to an n-bit codeword is typically represented by a corresponding parity check matrix H. Based on the parity check matrix H, a codeword sequence can be generated to complete the encoding process. After the codeword sequence is transmitted through the channel, a decoding device decodes the received signal to determine the original information bits.

[0083] 2. QC-LDPC code

[0084] Quasi-cyclic low-density parity check (QC-LDPC) codes are a type of structured LDPC codes. Due to the unique structure of their parity-check matrix, encoding can be achieved using a simple feedback shift register, reducing the encoding complexity of LDPC codes. When the code length is long, the parity-check matrix H of an LDPC code can become very large; therefore, H is usually represented in blocks: the complete parity-check matrix H is considered as consisting of multiple Z... c ×Z c The submatrix is ​​generated. Specifically, the complete parity check matrix H can be generated from a basis matrix H. b H indicates b Each element in the array corresponds to a Z. c ×Z c The base matrix H is a submatrix, and each submatrix can be represented by a number of cyclically shifted bits. Therefore, the storage space required for the complete parity check matrix H is greatly reduced.b The elements in it can also be called quasi-cyclic (QC) blocks.

[0085] Based on the basis matrix H b And the boost value Z c (lifting size) can be used to transform the basis matrix H b Expanded into a complete parity-check matrix for encoding or decoding. Z c It can also be called expansion factor, boosting factor, expansion value, expansion coefficient, or boosting size, etc.

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

[0087]

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

[0089] For example, As shown below:

[0090]

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

[0092] The aforementioned basis matrix can also be called a base graph (BG).

[0093] The BG graph model of the QC-LDPC code is BG = (X, Y, F), where X corresponds to the variables, Y corresponds to the check equation, and F represents the edge relationships. After boosting, the value is Z. c After QC expansion, we obtain the Tanner graph, which is a bipartite graph G = (V, C, E), where V is the variable node, C is the check node, and E is the edge relationship between the variable node and the check node, corresponding to the number of columns in the check matrix N = |V| = Z. c |X|, the number of rows in the parity check matrix M = |C| = Z c The number of non-zero elements in the parity check matrix is ​​|E| = Z. c |F|.

[0094] The current data channel supports an information bit range of 1-8448, and the standard describes two parity check matrices: BG1 and BG2. For a given BG, different Z values ​​are required. c To adapt to rate matching for different code lengths. This requires Z-axis... c The storage of lists and offset lists can then be based on Z. c Rate matching is performed between the list and the offset value list.

[0095] 3. Column weight

[0096] For a column of a matrix, column weight refers to the number of non-zero elements in that column. In a parity check matrix, a zero element indicates that there is no connection or edge between the variable node and the parity check node, while a non-zero element indicates that there is a connection or edge between the variable node and the parity check node. In an LDPC basis matrix, a zero element represents Z. c A square matrix of order Z consisting entirely of zeros, where non-zero elements represent Z. c An identity matrix of order Z or based on Z c A cyclic permutation matrix of order identity matrix, where the values ​​of non-zero elements represent cyclic shift values ​​(SV) relative to the identity matrix.

[0097] For example, such as Figure 2 As shown, the first column of the parity check matrix H has a column weight of 2. For example, as mentioned above, the basis matrix H... b The column weight of the first column is 4.

[0098] Column weight, also known as column degree or column degree.

[0099] 4. Structure of the parity check matrix

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

[0101] like Figure 4 As shown, the parity check matrix can include a high-rate region, an all-zero region, an incremental redundancy region, and a diagonal region (such as a raptor-like region). The high-rate region can correspond to information bits (or information digits, system bits, etc.) and core parity bits (or core parity bits). The all-zero region is an all-zero matrix. The diagonal region corresponds to the parity bits in the low-rate extension.

[0102] Figure 4The parity-check matrix of the LDPC code shown adopts a "raptor-like" structure, which can be gradually extended from a high-rate core matrix to a low-rate matrix. In practical use, the first X rows and first Y columns of the parity-check matrix can be extracted. As the code rate decreases, X and Y gradually increase, and the area of ​​the matrix used also gradually expands. For example... Figure 4 The dashed boxes containing high bitrate regions correspond to different bitrates.

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

[0104] 5. Bitrate

[0105] Code rate is the proportion of useful data in an encoded data stream; it is sometimes also called coding efficiency or coding speed.

[0106] 6. Drilling holes

[0107] Punching is a mode in embossing. In LDPC codes, punching a column of the parity check matrix means that the information bits corresponding to that column are not transmitted.

[0108] 7. Information Transmission Process

[0109] Figure 5 This is a diagram illustrating the information transmission process. For example... Figure 5 As shown, information is sent from the source, undergoes source coding, channel coding, modulation, air interface transmission, demodulation, channel decoding, and source recovery before reaching the destination, completing the transmission of information from the source to the destination. Among these processes, Figure 5 The upper-layer processing (including source coding, channel coding, and modulation) is performed at the coding device, while the lower-layer processing (including demodulation, channel decoding, and source recovery) is performed at the decoding device. The embodiments of this application mainly relate to... Figure 5 The diagram shows source coding, channel coding, channel decoding, and source recovery.

[0110] In current LDPC codes, the base map for encoding can be selected based on the payload size A (excluding cyclic redundancy check (CRC) bits) and the code rate R. Specifically, if A ≤ 2^92, or A ≤ 3824 and R ≤ 2 / 3, or R ≤ 1 / 4, then BG2 is selected as the base map for LDPC encoding; otherwise, BG1 is selected. However, in some scenarios, the decoding performance produced by the base map selected based on this method is not optimal. For example, high-throughput scenarios limit the number of decoding iterations. At low iteration counts, such as 5 rounds of min-sum (MS) decoding iterations, the decoding performance produced by this base map selection method is not optimal.

[0111] To address the aforementioned issues, this application provides a communication method and device based on LDPC codes, aiming to improve decoding performance.

[0112] The method embodiments of this application are described below with reference to the accompanying drawings.

[0113] Figure 6 This is a schematic flowchart of the LDPC code-based communication method 600 provided in this application.

[0114] Method 600 can be executed by an encoding device and a decoding device. Unless otherwise specified, "encoding device" or "decoding device" can refer to the encoding device or decoding device itself, or it can refer to a device that enables the encoding device or decoding device to perform its functions. For ease of description, the terms "encoding device" and "decoding device" will be used consistently below. The encoding device can be a terminal device or a network device, and the decoding device can be a terminal device or a network device.

[0115] Method 600 may include at least a portion of the following.

[0116] Step 601: The encoding device acquires the information bit sequence.

[0117] In other words, if the encoding device needs to communicate with the decoding device, that is, if the encoding device needs to send a signal to the decoding device, the encoding device needs to first obtain the information bit sequence corresponding to the signal to be sent to the decoding device.

[0118] The phrase "the encoding device acquires the information bit sequence" can refer to: the encoding device performing source encoding on source symbols to generate the information bit sequence. Alternatively, it can refer to: the encoding device receiving the information bit sequence from other communication devices.

[0119] Step 602: The encoding device acquires the first information and the second information.

[0120] The first piece of information indicates the capabilities of the terminal device. The second piece of information indicates the application scenario, which can be a high-throughput scenario, a high-reliability scenario, a low-latency scenario, a high-reliability low-latency scenario, or a low-power scenario, etc. The capabilities of the terminal device can also be replaced with UE capabilities or device capabilities. The capabilities of the terminal device may include decoding capabilities.

[0121] The embodiments of this application do not limit the implementation of the first information. Exemplarily, the capabilities of a terminal device can be determined by at least one of the following information supported by the terminal device: the number of decoding iterations, the maximum number of information columns, the supported basemap index set, the maximum clock frequency, the maximum number of antennas, receiver complexity, peak data rate, the maximum modulation and coding scheme (MCS) index, the maximum number of iterations, the maximum level indicator, the minimum processing timeline, the maximum number of blind detections, the maximum code length, the minimum code rate, the maximum number of code blocks, the maximum boost value, the maximum transport block size, or the maximum set of precoding matrix indicators (PMIs). Accordingly, the first information may include at least one of these indicator values. The number of decoding iterations of the terminal device can be the number of decoding iterations adopted, supported, or desired by the terminal device, such as the maximum number of decoding iterations adopted, supported, or desired by the terminal device.

[0122] The embodiments of this application do not limit the method by which the encoding device obtains the first information. As an example, when the encoding device is a base station, the terminal device can report the first information to the base station, or in other words, the base station can receive the first information from the terminal device. As another example, when the encoding device is a terminal device, the terminal device reads the first information from its local storage or content.

[0123] The embodiments of this application do not limit the implementation of the second information. As an example, the application scenario can be distinguished based on at least one of the following indicators: maximum code length, highest code rate, lowest code rate, highest throughput, or highest frequency band. In this case, the second information may include the values ​​of these indicators. As another example, the application scenario may be a corresponding scenario type directly specified in a standard protocol. In this case, the second information may be the identification information of the application scenario, such as the application scenario number, name, or index.

[0124] The embodiments of this application do not limit the method by which the encoding device obtains the second information. As an example, the encoding device can determine the application scenario based on the control signaling between the encoding device and the decoding device. As another example, the encoding device can determine the application scenario based on the MCS table.

[0125] Step 603: The encoding device determines the base map and / or the punching method based on the first information and the second information.

[0126] In some implementations, when the capabilities of the terminal device meet the application scenario, the encoding device determines the base map as NRBG1 and the punching method as no punching; or, when the capabilities of the terminal device do not meet the application scenario, the encoding device determines the base map as NRBG2 and the punching method as the first two columns of the punched base map.

[0127] In other implementations, when the capabilities of the terminal device meet the application scenario, the encoding device determines the base map as NR BG1 and the punching method as the first column of the punched base map; or, when the capabilities of the terminal device do not meet the application scenario, the encoding device determines the base map as NR BG2 and the punching method as the first two columns of the punched base map.

[0128] In other implementations, when the capabilities of the terminal device meet the application scenario, the encoding device determines the base map as a subgraph of NR BG1 and the puncturing method as no puncturing; or, when the capabilities of the terminal device do not meet the application scenario, the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence. Here, the NR BG1 subgraph is the base map obtained after row and / or column deletion of NR BG1, such as the base map obtained after deleting the 5th row of NR BG1. The method by which the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence can refer to existing LDPC codes. In this implementation, when the capabilities of the terminal device meet the application scenario, an incomplete NR BG1 is used for encoding, and large column weights are not punctured. For example, the following will... Figure 8 This implementation method is described in detail.

[0129] In other implementations, when the capabilities of the terminal device meet the application scenario, the encoding device determines the base map as NR BG1 and the puncturing method as no puncturing; or, when the capabilities of the terminal device do not meet the application scenario, the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence. The method by which the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence can refer to existing LDPC codes. In this implementation, when the capabilities of the terminal device meet the application scenario, full NR BG1 is used for encoding, and large column weights are not punctured. For example, the following will... Figure 9 This implementation method is described in detail.

[0130] In some other implementations, step 603 includes: the encoding device determining the base map and / or puncturing method based on the first information, the second information, and the bit rate.

[0131] As an example, when the terminal device's capabilities meet the application scenario and the code rate is less than or equal to the first threshold, the encoding device determines the base map as NR BG1 and the puncturing method as no puncturing; or, when the terminal device's capabilities meet the application scenario and the code rate is greater than the first threshold, the encoding device determines the base map as NR BG1 and the puncturing method as the first column of the base map with puncturing; or, when the terminal device's capabilities do not meet the application scenario, the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence. The first threshold is a threshold value used to determine the puncturing method, such as 3 / 4. The method by which the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence can refer to existing LDPC codes.

[0132] The embodiments of this application do not limit the order in which the comparison of the bit rate and the first threshold value are performed, and the determination of whether the terminal device's capability is applicable to the scenario. These two actions can be performed sequentially or simultaneously. For example, the following will... Figure 7 The method of first determining whether the encoding device's capabilities meet the application scenario and then comparing the bit rate with the first threshold value is described in detail.

[0133] As another example, when the terminal device's capabilities meet the application scenario and the code rate is less than or equal to the second threshold, the encoding device determines the base map as NR BG1 and the puncturing method as no puncturing; or, when the terminal device's capabilities meet the application scenario and the code rate is greater than the second threshold, the encoding device determines the base map as a sub-map of NR BG1 and the puncturing method as no puncturing; or, when the terminal device's capabilities do not meet the application scenario, the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence. The second threshold is a threshold value used to determine whether to extract a sub-map of NR BG, such as 1 / 3. The method by which the encoding device determines the base map and / or puncturing method based on the code rate and the size of the information bit sequence can refer to existing LDPC codes.

[0134] The embodiments of this application do not limit the order in which the comparison of the bit rate and the second threshold value are performed, and the determination of whether the terminal device's capabilities are applicable to the scenario; the two can be performed sequentially or simultaneously. For example, the following will... Figure 10 The method of first determining whether the encoding device's capabilities meet the application scenario and then comparing the bit rate with the first threshold value is described in detail.

[0135] In some other implementations, step 603 includes: the encoding device determining the base map and / or puncturing method based on the first information, the second information, the code rate, and the size of the information bits.

[0136] As an example, when the code rate and the size of the information bit sequence meet the first condition, and the terminal device's capabilities meet the application scenario, the base map is determined to be NR BG2 and the puncturing method is no puncturing; or, when the code rate and the size of the information bit sequence meet the first condition, but the terminal device's capabilities do not meet the application scenario, the base map is determined to be NR BG2 and the puncturing method is the first two columns of the punctured base map; or, when the code rate and the size of the information bit sequence do not meet the first condition, but the terminal device's capabilities meet the application scenario, the base map is determined to be NR BG1 and the puncturing method is no puncturing; or, when the code rate and the size of the information bit sequence do not meet the first condition, and the terminal device's capabilities do not meet the application scenario, the base map is determined to be NRBG1 and the puncturing method is the first two columns of the punctured base map; wherein, the first condition is: the size of the information bit sequence is less than or equal to 292, or, the size of the information bit sequence is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or, the code rate is less than or equal to 1 / 4.

[0137] The embodiments of this application do not limit the order in which the above conditions are judged; the judgments of the conditions can be performed sequentially or simultaneously. For example, the following will... Figure 12 The scheme of first judging the encoding device based on the first condition, and then judging whether the terminal device's capabilities meet the application scenario is described in detail.

[0138] As another example, when the code rate and the size of the information bit sequence meet the first condition, and the terminal device's capabilities meet the application scenario, the encoding device determines the base map as NR BG2 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence meet the first condition, but the terminal device's capabilities do not meet the application scenario, the encoding device determines the base map as NR BG2 and the puncturing method as the first two columns of the punctured base map; or, when the code rate and the size of the information bit sequence do not meet the first condition, but the terminal device's capabilities meet the application scenario, and the code rate is less than or equal to the first threshold, the encoding device determines the base map as NR BG1 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence do not meet the first condition, but the terminal device's capabilities meet the application scenario, and the code rate is greater than the first threshold, the encoding device determines the base map as NRBG1 and the puncturing method as the first column of the punctured base map; or, when the code rate and the size of the information bit sequence do not meet the first condition, and the terminal device's capabilities do not meet the application scenario, the encoding device determines the base map as NR... BG1 and the first two columns of the puncturing base map; wherein, the first condition is: the size of the information bit sequence is less than or equal to 292, or, the size of the information bit sequence is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or, the code rate is less than or equal to 1 / 4. The first threshold value is used to determine the puncturing method, such as 3 / 4.

[0139] The embodiments of this application do not limit the order in which the above conditions are judged; the judgments of the conditions can be performed sequentially or simultaneously. For example, the following will... Figure 11 The encoding device is first judged according to the first condition, then the terminal device's capabilities are judged to meet the application scenario, and then the scheme of bit rate and the size of the first threshold value is described in detail.

[0140] As another example, when the code rate and the size of the information bit sequence meet the first condition, and the terminal device's capabilities meet the application scenario, the encoding device determines the base map as NR BG2 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence meet the first condition, but the terminal device's capabilities do not meet the application scenario, the encoding device determines the base map as NR BG2 and the puncturing method as the first two columns of the punctured base map; or, when the code rate and the size of the information bit sequence do not meet the first condition, the terminal device's capabilities meet the application scenario, and the code rate is less than or equal to the second threshold, the encoding device determines the base map as NR BG1 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence do not meet the first condition, the terminal device's capabilities meet the application scenario, and the code rate is greater than the second threshold, the encoding device determines the base map as a sub-map of NRBG1 and the puncturing method as no puncturing; or, when the code rate and the size of the information bit sequence do not meet the first condition, and the terminal device's capabilities do not meet the application scenario, the encoding device determines the base map as NR... BG1 and the first two columns of the punctured base map; wherein, the first condition is: the size of the information bit sequence is less than or equal to 292, or, the size of the information bit sequence is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or, the code rate is less than or equal to 1 / 4. The second threshold value is used to determine whether to perform the sub-graph extraction operation of NR BG, such as 1 / 3.

[0141] The embodiments of this application do not limit the order in which the above conditions are judged; the judgments of the conditions can be performed sequentially or simultaneously.

[0142] The statement that the terminal device's capabilities meet the application scenario can be understood as follows: the terminal device's capabilities meet the communication requirements of the application scenario, or the terminal device belongs to the terminal device category of that application scenario. Conversely, the statement that the terminal device's capabilities do not meet the application scenario can be understood as follows: the terminal device's capabilities do not meet the communication requirements of the application scenario, or the terminal device does not belong to the terminal device category of that application scenario. For example, if the maximum number of decoding iterations supported by the terminal device meets the application scenario's limitation on the number of decoding iterations, such as a high-throughput scenario limiting the number of decoding iterations to less than or equal to 5, then if the maximum number of decoding iterations supported by the terminal device is less than or equal to 4, then the maximum number of decoding iterations supported by the terminal device meets the high-throughput scenario requirement. If the maximum number of decoding iterations supported by the terminal device is greater than 4, then the maximum number of decoding iterations supported by the terminal device does not meet the high-throughput scenario requirement.

[0143] Step 604: The encoding device performs LDPC encoding on the information bit sequence according to the base map to obtain the LDPC codeword sequence.

[0144] In step 605, the encoding device sends an LDPC codeword sequence to the decoding device according to the puncturing method. Correspondingly, the decoding device receives the LDPC codeword sequence from the encoding device.

[0145] It should be noted that, since channel noise may be introduced during the transmission of air interface signals, the air interface signal output or transmitted by the encoding device may be different from the air interface signal received by the decoding device. Consequently, the LDPC codeword sequence obtained may also be different from the LDPC codeword sequence output by the encoding device.

[0146] Step 606: The decoding device acquires the first information and the second information.

[0147] The first piece of information indicates the capabilities of the terminal device. The second piece of information indicates the application scenario. A description of the first and second pieces of information can be found in step 602.

[0148] The embodiments of this application do not limit the method by which the decoding device obtains the first information. As an example, when the decoding device is a base station, the terminal device can report the first information to the base station, or in other words, the base station can receive the first information from the terminal device. As another example, when the decoding device is a terminal device, the terminal device reads the first information from its local storage or content.

[0149] The embodiments of this application do not limit the method by which the encoding device obtains the second information. As an example, the decoding device can determine the application scenario based on the control signaling between the decoding device and the encoding device. As another example, the decoding device can determine the application scenario based on the MCS table.

[0150] Step 607: The decoding device determines the base map and / or puncturing method based on the first information and the second information. The implementation method of the decoding device determining the base map and / or puncturing method based on the first information and the second information can refer to the implementation method on the encoding device side, specifically the description in step 603, and will not be elaborated further.

[0151] Step 608: The decoding device performs LDPC decoding on the LDPC codeword sequence according to the base map and the puncturing method to obtain the information bit sequence.

[0152] In method 600, when determining the base map and puncturing method used for encoding and decoding, the capabilities of the terminal device are taken into consideration. Depending on whether the capabilities of the terminal device meet the requirements of the application scenario, different base maps and / or puncturing methods can be selected, which helps to select appropriate base maps and puncturing methods, thereby improving decoding performance.

[0153] In other implementations, after determining the base map and puncturing method, the encoding device can send third information to the decoding device to indicate the base map and puncturing method. In this way, the decoding device can skip steps 606 and 607 and perform decoding based on the base map and puncturing method indicated by the encoding device. This reduces the decision-making process of the decoding device, thereby improving decoding speed.

[0154] The following detailed description of the scheme for selecting the base map and determining the drilling method implemented in this application, with specific examples, is provided. The same steps or terms may be referenced or cited between the following examples.

[0155] Example 1

[0156] In Example 1, LDPC encoding or decoding is performed using the complete NR base map, and the punching method is determined based on the code rate when the UE's capabilities meet the application scenario.

[0157] Figure 7 It is a schematic flowchart of a scheme for selecting a base map and determining the drilling method.

[0158] Figure 7 The scheme shown may include at least some of the following:

[0159] Step 701: The base station determines the BG set as the complete NR LDPC BG1 and the complete NR LDPC BG2.

[0160] In this context, a complete base graph can be understood as one that does not involve the extraction of BG subgraphs such as row deletion. For example, a complete NRLDPC BG1 or a complete NR LDPC BG2 can be understood as one that does not involve the extraction of BG subgraphs such as row deletion when using NR LDPC BG1 or a complete NR LDPC BG2.

[0161] The embodiments of this application do not limit the specific implementation of step 701. One possible implementation is that the base station determines the BG set as a complete NR LDPC BG1 and a complete NR LDPC BG2 based on the currently scheduled code rate R. For example, when the currently scheduled code rate R is less than or equal to 1 / 3, the base station determines the BG set as a complete NR LDPC BG1 and a complete NR LDPC BG2; when the currently scheduled code rate R is greater than 1 / 3, the base station determines the BG set as a subgraph of NR LDPC BG1 and a complete NR LDPC BG2. Again, for example, when the currently scheduled code rate R is less than or equal to 1 / 3, the base station determines the BG set as a complete NR LDPC BG1 and a complete NR LDPC BG2; when the currently scheduled code rate R is greater than 1 / 3, the base station determines the BG set as a subgraph of NR LDPC BG1 and a subgraph of the complete NR LDPC BG2.

[0162] Step 701 is an optional step.

[0163] Step 702: Obtain UE capability information and application scenario information.

[0164] In one possible implementation, the base station receives capability information reported by the UE, such as the number of decoding iterations LDPC_ite, where the number of decoding iterations can be the maximum or minimum number of decoding iterations supported by the UE, or the number of decoding iterations expected by the UE.

[0165] Step 703: The base station determines whether the UE's capabilities meet the application scenario.

[0166] For example, the base station compares the number of decoding iterations reported by the UE with a decoding iteration threshold corresponding to the application scenario. If the number of decoding iterations reported by the UE is less than or equal to the decoding iteration threshold, step 704 can be executed; if the number of decoding iterations reported by the UE is greater than the decoding iteration threshold, step 707 can be executed. The decoding iteration threshold, such as Iter... Threshold This can be preset, such as determined based on information pre-configured from higher-layer signaling and / or radio resource control (RRC) signaling. For example, the decoding iteration threshold can be the maximum number of decoding iterations determined based on information pre-configured from higher-layer signaling and / or RRC signaling, such as a decoding iteration threshold of 5.

[0167] Step 704: When the UE's capabilities meet the application scenario, the base station further compares the currently scheduled code rate R with the code rate threshold #1.

[0168] Among them, the bit rate threshold #1, such as R thr#1 can be preset, such as determined by information pre-configured based on higher-level signaling and / or RRC signaling. Figure 7 Taking a bitrate threshold of 3 / 4 as an example.

[0169] Step 705: When the current scheduled code rate R is less than or equal to the code rate threshold #1, the base station selects NR BG1 for LDPC encoding or decoding, and determines the punching method to be no punching.

[0170] In this context, "no punching" means that the data encoding device needs to send the information bits corresponding to the first two columns of NR BG1.

[0171] For example, if the code rate threshold #1 is 0.75, and the code rate R currently scheduled by the base station is 0.5, which is lower than the code rate threshold #1, the base station will select NR BG1 for LDPC encoding or decoding and determine that no puncturing will be performed.

[0172] Step 706: When the current scheduled code rate R is greater than the code rate threshold #1, the base station selects NR BG1 for LDPC encoding or decoding, and determines the first large column of BG1 as the punched column.

[0173] In this context, the first column of BG1, which is a punched column, can be understood as meaning that the information bits corresponding to the first column of BG1 are not transmitted.

[0174] For example, if the code rate threshold #1 is 0.75 and the current code rate R scheduled by the base station is 0.8, which is higher than the code rate threshold #1, the base station selects NR BG1 for LDPC encoding or decoding and determines that the first large column of BG1 is a punched column.

[0175] Step 707: When the UE's capabilities do not meet the application scenario, the base station can select a base map for encoding or decoding based on the payload size A and the currently scheduled code rate R.

[0176] Specifically, if A≤292, or A≤3824 and R≤2 / 3, or R≤1 / 4, then the base station executes step 708; otherwise, the base station executes step 709.

[0177] For example, if the UE reports 15 decoding iterations and the decoding iteration threshold (i.e., the application scenario limits the number of decoding iterations) is 5, and the decoding iteration count is greater than the decoding iteration threshold, the base station can jointly determine whether to use BG1 or BG2 as the base map for LDPC encoding or decoding based on the payload size A and the currently scheduled code rate R. The specific selection method can be the same as the NR's selection of BG.

[0178] For example, if the UE reports 20 decoding iterations, the threshold for the number of decoding iterations in the application scenario is 5, and the current scheduled code rate is 0.2, then the number of decoding iterations is greater than the threshold. The base station can jointly determine the NR BG2 for LDPC encoding or decoding based on the payload size A and the current scheduled code rate R, and determine that the first two large columns of BG2 are punched columns.

[0179] For example, if the UE reports 20 decoding iterations, the threshold for the number of decoding iterations in the application scenario is 5, and the current scheduled payload size is 3500, then the number of decoding iterations is greater than the threshold. The base station can jointly determine the target based on the payload size A and the current scheduled code rate R, and select NR BG1 for LDPC encoding or decoding, and determine that the first two large columns of BG1 are punched columns.

[0180] Step 708: The base station selects NR BG2 for LDPC encoding or decoding, and determines that the first two large columns of BG2 are punched columns.

[0181] In BG2, the first two large columns of the stacked column are punched columns, which can be understood as the information bits corresponding to the first two large columns of the stacked column being not sent.

[0182] Step 709: The base station selects NR BG1 for LDPC encoding or decoding, and determines that the first two large columns of BG1 are punched columns.

[0183] In BG1, the first two large columns of the stacked columns are punched columns, which can be understood as the information bits corresponding to the first two large columns of the stacked columns of BG1 not being sent.

[0184] Example 2

[0185] Unlike Example 1, in Example 2, if the UE's capabilities meet the application scenario, incomplete NR LDPC BG1 is used for encoding, and large columns are not punched.

[0186] Figure 8 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0187] Figure 8 The scheme shown may include at least some of the following:

[0188] Step 801: The base station obtains the UE's capability information and application scenario information.

[0189] Step 802: The base station determines whether the UE's capabilities meet the application scenario.

[0190] Step 803: When the UE's capabilities meet the application scenario, the base station determines the BG1 sub-graph, performs encoding or decoding based on the determined BG1 sub-graph, and determines the punching method to be no punching.

[0191] The embodiments of this application do not limit the specific implementation method of the base station determining the BG1 subgraph. One implementation method is to obtain the BG1 subgraph by deleting some rows or columns of BG1. For example, the base station deletes the 5th row of BG1 and performs LDPC encoding or decoding based on the BG1 with the 5th row deleted. Another implementation method is to extract the required rows or columns from BG1 to obtain the BG1 subgraph. For example, the base station extracts all the contents of BG1 except for the 5th row. Figure 8 The example shown is BG1 subgraph after deleting row 5.

[0192] Step 804: When the UE's capabilities do not meet the application scenario, the base station can select a base map for encoding or decoding based on the payload size A and the currently scheduled code rate R.

[0193] Step 805: The base station selects NR BG2 for LDPC encoding or decoding, and determines that the first two large columns of BG2 are punched columns.

[0194] In BG2, the first two large columns of the stacked column are punched columns, which can be understood as the information bits corresponding to the first two large columns of the stacked column being not sent.

[0195] Step 806: The base station selects NR BG1 for LDPC encoding or decoding, and determines that the first two large columns of BG1 are punched columns.

[0196] Steps 801, 802, and 804-806 can be referred to. Figure 7 Steps 702, 703, and 707-709 will not be detailed here.

[0197] Example 3

[0198] Example 3 is a simplification of Examples 1 and 2. Unlike Example 1, in Example 3, if the UE's capabilities meet the application scenario requirements, whether or not punching is performed is irrelevant to the currently scheduled code rate; the complete BG1 is used directly for encoding or decoding. Unlike Example 2, in Example 3, if the UE's capabilities meet the application scenario requirements, no BG1 subgraph extraction is performed; the complete BG1 is used directly for encoding or decoding.

[0199] Figure 9 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0200] Figure 9 The scheme shown may include at least some of the following:

[0201] Step 901: The base station obtains the UE's capability information and application scenario information.

[0202] Step 902: The base station determines whether the UE's capabilities meet the application scenario.

[0203] Step 903: When the UE's capabilities meet the application scenario, the base station selects NR BG1 for LDPC encoding or decoding and determines the punching method to be no punching.

[0204] Step 904: When the UE's capabilities do not meet the application scenario, the base station can select a base map for encoding or decoding based on the payload size A and the currently scheduled code rate R.

[0205] Step 905: The base station selects NR BG2 for LDPC encoding or decoding, and determines that the first two large columns of BG2 are punched columns.

[0206] In BG2, the first two large columns of the stacked column are punched columns, which can be understood as the information bits corresponding to the first two large columns of the stacked column being not sent.

[0207] Step 906: The base station selects NR BG1 for LDPC encoding or decoding, and determines that the first two large columns of BG1 are punched columns.

[0208] Steps 901, 902, and 904-906 can be referred to. Figure 7 Steps 702, 703, and 707-709 will not be detailed here.

[0209] Example 4

[0210] In Example 4, if the UE's capabilities meet the application scenario, it is determined whether to extract a portion of the NR basemap for LDPC encoding or decoding based on the currently scheduled code rate.

[0211] Figure 10 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0212] Figure 10 The scheme shown may include at least some of the following:

[0213] Step 1001: The base station obtains the UE's capabilities and application scenario information.

[0214] Step 1002: The base station determines whether the UE's capabilities meet the application scenario.

[0215] Step 1003: When the UE's capabilities meet the application scenario, the base station selects BG1 for LDPC encoding or decoding and determines the punching method to be no punching.

[0216] Step 1004: The base station further compares the currently scheduled code rate R with the code rate threshold #2 to determine whether to extract a portion of BG1 for LDPC encoding or decoding.

[0217] Among them, the bit rate threshold #2, such as R thr #2 can be preset, such as determined by information pre-configured based on higher-level signaling and / or RRC signaling. Figure 10 Taking a bit rate threshold of 1 / 3 as an example.

[0218] Step 1005: When the currently scheduled code rate R is less than or equal to the code rate threshold #2, the base station uses the complete BG1 for LDPC encoding or decoding.

[0219] Step 1006: When the current scheduled code rate R is greater than the code rate threshold #2, the base station determines the BG1 subgraph and performs encoding or decoding based on the determined BG1 subgraph. Figure 10 The example shown is BG1 subgraph after deleting row 5.

[0220] Step 1007: When the UE's capabilities do not meet the application scenario, the base station can select a base map for encoding or decoding based on the payload size A and the currently scheduled code rate R.

[0221] Step 1008: The base station selects NR BG2 for LDPC encoding or decoding, and determines that the first two large columns of BG2 are punched columns.

[0222] In BG2, the first two large columns of the stacked column are punched columns, which can be understood as the information bits corresponding to the first two large columns of the stacked column being not sent.

[0223] Step 1009: The base station selects NR BG1 for LDPC encoding or decoding, and determines that the first two large columns of BG1 are punched columns.

[0224] In BG1, the first two large columns of the stacked columns are punched columns, which can be understood as the information bits corresponding to the first two large columns of the stacked columns of BG1 not being sent.

[0225] Steps 1001, 1002, and 1007-1009 can be referenced. Figure 7 Steps 702, 703, and 707-709 will not be detailed here.

[0226] The solutions in Examples 1 to 4 first determine whether to select BG1 or BG2 according to the NR basemap selection method based on whether the UE's capabilities meet the application scenario. Based on this solution, the NR basemap selection method is executed when the UE's capabilities do not meet the application scenario. In other embodiments of this application, the selection of BG1 or BG2 can be determined first based on the NR basemap selection method. Based on the selected BG, the punching method and / or whether to extract a sub-image are further determined according to whether the UE's capabilities meet the application scenario. This solution is described below with reference to Examples 5 and 6.

[0227] Example 5

[0228] Figure 11 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0229] Figure 11 The scheme shown may include at least some of the following:

[0230] Step 1101: The base station selects a base map for encoding or decoding based on the payload size A and the currently scheduled code rate R.

[0231] Specifically, if A≤292, or A≤3824 and R≤2 / 3, or R≤1 / 4, then the base station executes step 1102; otherwise, the base station executes step 1106.

[0232] Step 1102: The base station selects NR BG2 for LDPC encoding or decoding.

[0233] Step 1103: The base station further determines whether the UE's capabilities meet the application scenario.

[0234] Step 1104: When the UE's capabilities meet the application scenario, the base station determines the punching method to be no punching.

[0235] For example, given a current payload size A = 2000, a scheduling code rate R = 0.5, and a decoding iteration count of 5, the corresponding decoding iteration count threshold for the application scenario is 5. Figure 11 As shown in the process, the base station selects NR BG2 for encoding or decoding, and determines the punching method to be no punching.

[0236] Step 1105: When the UE's capabilities do not meet the application scenario, the base station determines that the first two large columns of BG2 are punched columns.

[0237] For example, given a current payload size A = 2000, a scheduling code rate R = 0.5, a decoding iteration count of 20, and a decoding iteration count threshold of 5 for the application scenario, based on... Figure 11As shown in the process, the base station selects NR BG2 for encoding or decoding, and determines that the first two large columns of BG2 are punched columns.

[0238] Step 1106: The base station selects NR BG1 for LDPC encoding or decoding.

[0239] Step 1107: The base station further determines whether the UE's capabilities meet the application scenario.

[0240] Step 1108: When the UE's capabilities meet the application scenario, the base station further compares the currently scheduled code rate R with the code rate threshold #1. Figure 11 Taking a bitrate threshold of 3 / 4 as an example.

[0241] Step 1109: When the current scheduled code rate R is less than or equal to the code rate threshold #1, the base station determines the punching method to be no punching.

[0242] For example, given a current payload size A = 7000, a scheduling code rate R = 0.7, and a decoding iteration count of 5, the corresponding decoding iteration count threshold for the application scenario is 5. Figure 11 The process shown involves the base station selecting NR BG1 for encoding or decoding, and determining the punching method to be no punching.

[0243] Step 1110: When the current scheduled code rate R is less than or equal to the code rate threshold #1, the base station determines that the first large column of BG1 is a punched column.

[0244] For example, given a current payload size A = 7000, a scheduling code rate R = 0.8, and a decoding iteration count of 5, the corresponding decoding iteration count threshold for the application scenario is 5. Figure 11 As shown in the process, the base station selects NR BG1 for encoding or decoding, and determines that the first large column of BG1 is a punched column.

[0245] Step 1111: When the UE's capabilities do not meet the application scenario, the base station determines that the first two large columns of BG1 are punched columns.

[0246] For example, given a current payload size A = 7000, a scheduling code rate R = 0.8, a decoding iteration count of 15, and a decoding iteration count threshold of 5 for the application scenario, based on... Figure 11 The process shown involves the base station selecting NR BG1 for encoding or decoding, and determining that the first two large columns of BG1 are punched columns.

[0247] Example 6

[0248] Figure 12 This is another schematic flowchart illustrating the process of selecting the base map and determining the drilling method.

[0249] Figure 12 The scheme shown may include at least some of the following:

[0250] Step 1201: The base station selects a base map for encoding or decoding based on the payload size A and the currently scheduled code rate R.

[0251] Specifically, if A≤292, or A≤3824 and R≤2 / 3, or R≤1 / 4, then the base station executes step 1202; otherwise, the base station executes step 1206.

[0252] Step 1202: The base station selects NR BG2 for LDPC encoding or decoding.

[0253] Step 1203: The base station further determines whether the UE's capabilities meet the application scenario.

[0254] Step 1204: When the UE's capabilities meet the application scenario, the base station determines the punching method to be no punching.

[0255] For example, given a current payload size A = 2000, a scheduling code rate R = 0.5, and a decoding iteration count of 5, the corresponding decoding iteration count threshold for the application scenario is 5. Figure 12 As shown in the process, the base station selects NR BG2 for encoding or decoding, and determines the punching method to be no punching.

[0256] Step 1205: When the UE's capabilities do not meet the application scenario, the base station determines that the first two large columns of BG2 are punched columns.

[0257] For example, given a current payload size A = 2000, a scheduling code rate R = 0.5, a decoding iteration count of 20, and a decoding iteration count threshold of 5 for the application scenario, based on... Figure 12 As shown in the process, the base station selects NR BG2 for encoding or decoding, and determines that the first two large columns of BG2 are punched columns.

[0258] Step 1206: The base station selects NR BG1 for LDPC encoding or decoding.

[0259] Step 1207: The base station further determines whether the UE's capabilities meet the application scenario.

[0260] Step 1208: When the UE's capabilities meet the application scenario, the base station determines the punching method to be no punching.

[0261] For example, given a current payload size A = 7000, a scheduling code rate R = 0.8, and a decoding iteration count of 5, the corresponding decoding iteration count threshold for the application scenario is 5. Figure 12 The process shown involves the base station selecting NR BG1 for encoding or decoding, and determining the punching method to be no punching.

[0262] Step 1209: When the UE's capabilities do not meet the application scenario, the base station determines that the first two large columns of BG1 are punched columns.

[0263] For example, given a current payload size A = 7000, a scheduling code rate R = 0.8, a decoding iteration count of 15, and a decoding iteration count threshold of 5 for the application scenario, based on... Figure 12 The process shown involves the base station selecting NR BG1 for encoding or decoding, and determining that the first two large columns of BG1 are punched columns.

[0264] Based on whether or not the BG subgraph is extracted, an alternative operation for steps 1208 to 1209 is:

[0265] Step 1208a: When the number of decoding iterations reported by the UE is less than or equal to the decoding iteration threshold, and LDPC encoding or decoding is performed using the complete NR BG, the base station determines that the first large column of BG1 is a punched column.

[0266] For example, if the current payload size A = 7000, the scheduling code rate R = 0.8, the number of decoding iterations is 5, the threshold for the number of decoding iterations corresponding to the application scenario is 5, and a complete BG is used for LDPC encoding or decoding, in this case, the base station selects NR BG1 as the base map for LDPC encoding or decoding, and determines that the first large column of BG1 is a punched column.

[0267] Step 1208b: When the number of decoding iterations reported by the UE is less than or equal to the decoding iterations threshold, and a portion of the NRBG is used for LDPC encoding or decoding, the base station determines the punching method to be no punching.

[0268] For example, if the current payload size A = 7000, the scheduling code rate R = 0.8, the number of decoding iterations is 5, the threshold for the number of decoding iterations corresponding to the application scenario is 5, and a portion of the NR BG is used for LDPC encoding or decoding, then the base station selects NR BG1 as the base map for LDPC encoding or decoding and determines that the punching method is no punching.

[0269] Step 1209a: When the number of decoding iterations reported by the UE is greater than the decoding iteration number threshold, and LDPC encoding or decoding is performed using the complete NR BG, the base station determines that the first two large columns of BG1 are punched columns.

[0270] For example, if the current payload size A = 7000, the scheduling code rate R = 0.8, the number of decoding iterations is 15, the threshold for the number of decoding iterations corresponding to the application scenario is 5, and the complete BG is used for LDPC encoding or decoding, in this case, the base station selects NR BG1 as the base map for LDPC encoding or decoding, and determines that the first two large columns of BG1 are punched columns.

[0271] The embodiments of this application do not limit the implementation method of the base station determining whether to perform the BG subgraph extraction operation. For details, please refer to step 701, which will not be described in detail here.

[0272] also, Figures 7 to 12 The scheme for selecting the base map and determining the punching method can also be implemented by the UE. For the UE, it needs to obtain the decoding iteration number threshold, the currently scheduled code rate R, and various code rate thresholds, such as code rate threshold #1, code rate threshold #2, etc. In one possible implementation, the UE can obtain this information based on downlink control information (DCI) sent by the base station. For example, the base station can obtain this information through the iteration threshold Iter in the DCI. Threshold The field informs the UE of the decoding iteration threshold, the modulation and coding scheme (MCS) field in the DCI informs the UE of the currently scheduled code rate R, and the code rate threshold field R in the DCI informs the UE of the current scheduled code rate R. thr The UE is informed of each code rate threshold. In another possible implementation, the decoding iteration number threshold and each code rate threshold can be predefined information in the UE, and the UE can obtain the currently scheduled code rate R based on the DCI sent by the base station. After obtaining this information, the UE can refer to... Figures 7 to 12 The process shown involves selecting the base map and determining the drilling method.

[0273] exist Figures 7 to 12 In the scheme shown, the UE reports the number of decoding iterations to the base station, so that the base station can determine the decoding iteration count based on the received number of iterations. Figures 7 to 12 The process described in any one of the embodiments involves selecting the base map and determining the puncturing method. In other embodiments of this application, the UE may not report the number of decoding iterations, but instead directly report the encoding method used for the current encoding, such as the base map and puncturing method. The base station can then perform LDPC encoding or decoding based on the encoding method reported by the UE. The implementation method for the UE to determine the encoding method can be found in [reference needed]. Figures 7 to 12 Any of the implementation methods shown.

[0274] For example, the UE uses 5 rounds of iterative decoding with a coding rate of 0.5, according to Figure 1As shown in the process, the UE determines the encoding method as: based on BG1 encoding with no punching on large columns; the UE will report the encoding method to the base station, and the base station will perform LDPC decoding according to the encoding method reported by the UE.

[0275] The embodiments of this application do not limit the implementation method of the UE reporting the encoding method. For example, the UE can carry the encoding method information through uplink control information (UCI), that is, the encoding method information carried by the UE can be carried in a certain field of the UCI. As another example, the UE can carry the encoding method information through the L2 layer Media Access Control (MAC) control element (CE), that is, the encoding method information carried by the UE can be carried in the L2 layer MAC CE signaling. As yet another example, the UE can carry the encoding method information through L3 layer RRC control signaling, that is, the encoding method information carried by the UE can be carried in a certain field of the L3 layer RRC control signaling.

[0276] The above text combined Figures 1 to 12 The present application provides a detailed description of the method embodiments, which will be discussed below in conjunction with... Figures 13 to 15 This describes an embodiment of the apparatus described in this application.

[0277] It is understandable that, in order to achieve the functions described in the above embodiments, Figures 13 to 15 The apparatus includes hardware structures and / or software modules that perform various functions. Those skilled in the art will readily recognize that, based on the units and method steps described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software.

[0278] Figure 13 and Figure 14 The diagram illustrates the possible structures of apparatuses provided for embodiments of this application. These apparatuses can be used to implement the functions of the encoding or decoding devices in the above method embodiments, and thus also achieve the beneficial effects of the above method embodiments.

[0279] like Figure 13 As shown, the device 10 includes a transceiver unit 11 and a processing unit 12.

[0280] When device 10 is used to implement the function of the encoding device in the above method embodiments, transceiver unit 11 is used to execute the transceiver steps of the encoding device, such as steps 605, 702, 801, 901, and 1001, and processing unit 12 is used to execute the processing steps of the encoding device 601-604, 701, 703-709, 802-806, 902-906, 1002-1009, 1101-1111, and 1201-1209. When device 10 is used to implement the function of the decoding device in the above method embodiments, transceiver unit 11 is used to execute the transceiver steps of the decoding device, such as steps 605, 702, 801, 901, and 1001, and processing unit 12 is used to execute the processing steps of the decoding device, such as steps 606-608, 701, 703-709, 802-806, 902-906, 1002-1009, 1101-1111, and 1201-1209.

[0281] For a more detailed description of the transceiver unit 11 and the processing unit 12, please refer to the relevant descriptions in the above method embodiments, which will not be repeated here.

[0282] like Figure 14 As shown, the device 20 includes a processing circuit 21. The processing circuit 21 is coupled to a memory 23, which stores instructions. When the device 20 is used to implement the method described above, the processing circuit 21 executes the instructions in the memory 23 to implement the function of the processing unit 12 described above.

[0283] Optionally, device 20 also includes memory 23.

[0284] Optionally, the device 20 further includes a transceiver circuit 22. The transceiver circuit can be referred to as a communication interface. The processing circuit 21 and the transceiver circuit 22 are coupled to each other. It is understood that the transceiver circuit 22 can be a transceiver or an input / output interface. When the device 20 is used to implement the method described above, the processing circuit 21 executes instructions to implement the function of the processing unit 12, and the transceiver circuit 22 implements the function of the transceiver unit 11.

[0285] Optionally, device 20 can be an encoding device or a decoding device, and correspondingly, the transceiver circuit can be a transceiver.

[0286] Optionally, the device 20 can be a chip used in encoding or decoding equipment, and correspondingly, the transceiver circuit can be an input / output interface.

[0287] For example, when device 20 is a chip applied to an encoding or decoding device, the chip implements the functions of the encoding or decoding device in the above method embodiments. The chip receives information from other modules (such as radio frequency modules or antennas) in the encoding or decoding device, which is sent to the encoding or decoding device by other devices; or, the chip sends information to other modules (such as radio frequency modules or antennas) in the encoding or decoding device, which is sent to other devices by the encoding or decoding device.

[0288] Figure 15 This is a schematic diagram of a chip system provided in an embodiment of this application. The chip system 30 (or may also be called a processing system) includes logic circuitry 31 and an input / output interface 32.

[0289] The logic circuit 31 can be a processing circuit in the chip system 30. The logic circuit 31 can be coupled to a memory unit, calling instructions from the memory unit, enabling the chip system 30 to implement the methods and functions of the embodiments of this application. The input / output interface 32 can be an input / output circuit in the chip system 30, outputting processed information from the chip system 30, or inputting data or signaling information to be processed into the chip system 30 for processing.

[0290] As one approach, the chip system 30 is used to implement the operations performed by the encoding or decoding device in the various method embodiments described above.

[0291] For example, logic circuit 31 is used to implement processing-related operations performed by the encoding or decoding device in the above method embodiments; input / output interface 32 is used to implement sending and / or receiving-related operations performed by the encoding or decoding device in the above method embodiments.

[0292] This application also provides a communication device including a processing circuit coupled to a memory for storing computer programs or instructions and / or data. The processing circuit is used to execute the computer programs or instructions stored in the memory, or to read the data stored in the memory, to perform the methods in the above-described method embodiments. Optionally, the processing circuit may be one or more. Optionally, the communication device includes a memory. Optionally, the memory may be one or more. Optionally, the memory may be integrated with the processing circuit, or may be separately disposed.

[0293] This application also provides a chip including a processing circuit coupled to a memory. The memory is used to store computer programs or instructions, and the processing circuit is used to execute the computer programs or instructions stored in the memory to implement the methods executed by the encoding or decoding device in the above-described method embodiments. The memory may be located within the chip or independently of the chip, located outside the chip; this is not limited thereto.

[0294] This application also provides a computer-readable storage medium having stored thereon computer instructions for implementing the methods executed by an encoding device or a decoding device in the above-described method embodiments.

[0295] This application also provides a computer program product comprising instructions which, when executed by a computer, implement the methods performed by an encoding or decoding device in the above-described method embodiments.

[0296] This application also provides a computer program that, when executed by a computer, implements the methods performed by the encoding or decoding device in the above-described method embodiments.

[0297] This application also provides a communication system that includes at least one of the encoding or decoding devices described in the above embodiments.

[0298] The explanations and beneficial effects of the relevant contents in any of the devices provided above can be found in the corresponding method embodiments provided above, and will not be repeated here.

[0299] It is understood that the processing circuit in the embodiments of this application may be a processor or a circuit within a processor for performing processing operations. The processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor may be a microprocessor or any conventional processor.

[0300] The method steps in the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory, flash memory, read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, hard disks, portable hard disks, compact disc read-only memory (CD-ROM), or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Additionally, the ASIC can reside in an encoding or decoding device. Alternatively, the processor and storage medium can exist as discrete components in the encoding or decoding device.

[0301] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video optical disc; or it can be a semiconductor medium, such as a solid-state drive.

[0302] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.

[0303] Unless otherwise stated, all technical and scientific terms used in the embodiments of this application have the same meaning as commonly understood by one of ordinary skill in the art. The terminology used in this application is for the purpose of describing specific embodiments only and is not intended to limit the scope of this application. It should be understood that the above are illustrative examples, and the examples above are merely to help those skilled in the art understand the embodiments of this application, and are not intended to limit the embodiments of the application to the specific numerical values ​​or specific scenarios exemplified. Those skilled in the art can obviously make various equivalent modifications or variations based on the examples given above, and such modifications and variations also fall within the scope of the embodiments of this application.

Claims

1. A communication method based on low-density parity-check (LDPC) codes, characterized in that, The method includes: Obtain the information bit sequence; Acquire first information and second information, wherein the first information is used to indicate the capabilities of the terminal device and the second information is used to indicate the application scenario; Based on the first information and the second information, determine the base map and / or the drilling method; The information bit sequence is LDPC encoded according to the base map to obtain an LDPC codeword sequence. According to the punching method, the LDPC codeword sequence is sent.

2. A communication method based on low-density parity-check (LDPC) codes, characterized in that, The method includes: Receive LDPC codeword sequence; Acquire first information and second information, wherein the first information is used to indicate the capabilities of the terminal device and the second information is used to indicate the application scenario; Based on the first information and the second information, determine the base map and / or the drilling method; The LDPC codeword sequence is LDPC decoded according to the base map and the puncturing method to obtain the information bit sequence.

3. The method according to claim 1 or 2, characterized in that, The step of determining the base map and / or drilling method based on the first information and the second information includes: The base map and / or punching method are determined based on the first information, the second information, and the bit rate.

4. The method according to claim 3, characterized in that, The step of determining the base map and / or punching method based on the first information, the second information, and the bit rate includes: When the capabilities of the terminal device meet the application scenario, and the bit rate is less than or equal to the first threshold, the base map is determined to be the New Radio (NR) base map BG1, and the puncturing method is determined to be no puncturing; or, When the capabilities of the terminal device meet the application scenario, and the bit rate is greater than the first threshold, the base map is determined to be NR BG1 and the punching method is to punch the first column of the base map; or, When the capabilities of the terminal device do not meet the application scenario, the base map and / or the punching method are determined based on the bit rate and the size of the information bit sequence.

5. The method according to claim 3, characterized in that, The step of determining the base map and / or punching method based on the first information, the second information, and the bit rate includes: When the capabilities of the terminal device meet the application scenario, and the bit rate is less than or equal to the second threshold value, the base map is determined to be the New Radio (NR) base map BG1, and the puncturing method is determined to be no puncturing; or, When the capabilities of the terminal device meet the application scenario, and the bit rate is greater than the second threshold, the base map is determined to be a sub-map of NR BG1, and the punching method is determined to be no punching; or, When the capabilities of the terminal device do not meet the application scenario, the base map and / or the punching method are determined based on the bit rate and the size of the information bit sequence.

6. The method according to claim 1 or 2, characterized in that, The step of determining the base map and / or drilling method based on the first information and the second information includes: When the capabilities of the terminal device meet the application scenario, the base map is determined to be a sub-map of the New Radio (NR) base map BG1, and the punching method is determined to be no punching; or... When the capabilities of the terminal device do not meet the application scenario, the base map and / or the punching method are determined based on the code rate and the size of the information bit sequence.

7. The method according to claim 1 or 2, characterized in that, The step of determining the base map and / or drilling method based on the first information and the second information includes: When the capabilities of the terminal device meet the application scenario, the base map is determined to be the New Radio (NR) base map BG1 and the punching method is determined to be no punching; or... When the capabilities of the terminal device do not meet the application scenario, the base map and / or the punching method are determined based on the code rate and the size of the information bit sequence.

8. The method according to claim 1 or 2, characterized in that, The step of determining the base map and / or drilling method based on the first information and the second information includes: Way.

9. The method according to claim 8, characterized in that, The step of determining the base map and / or puncturing method based on the first information, the second information, the code rate, and the size of the information bit sequence includes: When the code rate and the size of the information bit sequence satisfy the first condition, and the capabilities of the terminal device meet the application scenario, the base map is determined to be the New Radio (NR) base map BG2, and the puncturing method is determined to be no puncturing; or, When the code rate and the size of the information bit sequence satisfy the first condition, and the capabilities of the terminal device do not meet the application scenario, the base map is determined to be NR BG2 and the puncturing method is to puncture the first two columns of the base map; or, When the bit rate and the size of the information bit sequence do not meet the first condition, the terminal device's capabilities meet the application scenario, and the bit rate is less than or equal to the first threshold, the base map is determined to be NR BG1 and the puncturing method is no puncturing; or... When the code rate and the size of the information bit sequence do not meet the first condition, the terminal device's capabilities meet the application scenario, and the code rate is greater than the first threshold, the base map is determined to be NR BG1 and the puncturing method is to puncture the first column of the base map; or... When the bit rate and the size of the information bit sequence do not meet the first condition, and the capabilities of the terminal device do not meet the application scenario, the base map is determined to be NR BG1 and the punching method is to punch the first two columns of the base map. The first condition is: the size of the information bit sequence is less than or equal to 292, or the size of the information bit sequence is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or the code rate is less than or equal to 1 / 4.

10. The method according to claim 8, characterized in that, The step of determining the base map and / or puncturing method based on the first information, the second information, the code rate, and the size of the information bit sequence includes: When the code rate and the size of the information bit sequence satisfy the first condition, and the capabilities of the terminal device meet the application scenario, the base map is determined to be the New Radio (NR) base map BG2, and the puncturing method is determined to be no puncturing; or, When the code rate and the size of the information bit sequence satisfy the first condition, and the capabilities of the terminal device do not meet the application scenario, the base map is determined to be NR BG2 and the puncturing method is to puncture the first two columns of the base map; or, When the bit rate and the size of the information bit sequence do not meet the first condition, and the capabilities of the terminal device meet the application scenario, the base map is determined to be NR BG1 and the puncturing method is determined to be no puncturing; or, When the bit rate and the size of the information bit sequence do not meet the first condition, and the capabilities of the terminal device do not meet the application scenario, the base map is determined to be NR BG1 and the punching method is to punch the first two columns of the base map. The first condition is: the size of the information bit sequence is less than or equal to 292, or the size of the information bit sequence is less than or equal to 3824 and the code rate is less than or equal to 2 / 3, or the code rate is less than or equal to 1 / 4.

11. The method according to any one of claims 1, 3 to 10, characterized in that, The method further includes: Send a third message, which is used to indicate the base map and the drilling method.

12. A communication method based on low-density parity-check (LDPC) codes, characterized in that, The method includes: Receive LDPC codeword sequence; Receive third information, which indicates the base map and the drilling method; Based on the third information, the LDPC codeword sequence is LDPC decoded to obtain the information bit sequence.

13. A communication device, characterized in that, Includes modules or units for performing the method as described in any one of claims 1 to 12.

14. A communication device, characterized in that, The device includes a processor and an interface circuit, wherein the interface circuit is used to receive signals from other communication devices besides the communication device and transmit them to the processor, or to send signals from the processor to other communication devices besides the communication device, and the processor is used to implement the method as described in any one of claims 1 to 12 through logic circuits or execution code instructions.

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

16. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions, which, when executed by a communication device, implement the method as described in any one of claims 1 to 12.

17. A computer program product, characterized in that, Includes a computer program that, when run, implements the method as described in any one of claims 1 to 12.

18. A communication system, characterized in that, include: An encoding device for performing the method as described in any one of claims 1, 3 to 10, and a decoding device for performing the method as described in any one of claims 2 to 10; or, An encoding device for performing the method as claimed in claim 11, and a decoding device for performing the method as claimed in claim 12.