Decoding method and device

By estimating the channel quality on the control channel and adaptively selecting the decoding algorithm, the problem of difficulty in taking into account both decoding reliability and delay in the prior art is solved, and a more efficient communication decoding process is achieved.

CN119995774APending Publication Date: 2025-05-13HONOR DEVICE CO LTD

Patent Information

Application Number
CN202311453424.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-02
Publication Date
2025-05-13

AI Technical Summary

Technical Problem

It is difficult for the prior art to effectively select a decoding algorithm suitable for channel quality, which makes it difficult to take into account both the decoding reliability and the delay.

Method used

By estimating the channel quality on the control channel and adaptively selecting different decoding algorithms according to different channel quality conditions, for example, when the channel quality is good, an algorithm with poor decoding reliability but small delay is selected, and an algorithm with good decoding reliability but large delay is selected in the case of poor channel quality.

Benefits of technology

It improves the reliability of decoding, while reducing the delay of decoding, thereby improving the reliability of communication.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119995774A_ABST
    Figure CN119995774A_ABST
Patent Text Reader

Abstract

Provided are a decoding method and apparatus, applied to a receiving end device, a control channel being established between the receiving end device and a transmitting end device, the decoding method comprising: receiving a demodulation reference signal sent by the transmitting end device through the control channel; estimating the channel quality of a control channel according to the demodulation reference signal; under the condition that the channel quality of the control channel meets a first condition, selecting a first decoding algorithm; under the condition that the channel quality of the control channel meets a second condition, selecting a second decoding algorithm; wherein the channel quality when the first condition is satisfied is better than the channel quality when the second condition is satisfied, the decoding time delay of the first decoding algorithm is less than the decoding time delay of the second decoding algorithm, and the decoding reliability of the first decoding algorithm is less than the decoding reliability of the second decoding algorithm; the decoding algorithm is adaptively selected according to the channel quality of the control channel, so that the decoding reliability is improved, the decoding time delay is reduced, and the communication reliability is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

[0002] Channel coding algorithm is one of the core technologies in the field of communication. The transmitting device (referred to as the transmitting end) adds check bits to the transmitted information bits through the channel coding algorithm to obtain a bit sequence. After receiving the bit sequence, the receiving device (referred to as the receiving end) decodes the bit sequence through a decoding algorithm. After decoding, the receiving end verifies the decoding result. If the verification succeeds, it is determined that the bit sequence is decoded successfully; if the verification fails, it is determined that the bit sequence is decoded unsuccessfully. How to choose a decoding algorithm is a problem that needs to be solved urgently. Summary of the invention

[0003] The present application provides a decoding method and device, which can adaptively select a decoding algorithm according to the channel quality of a control channel to improve decoding reliability and reduce decoding delay, thereby improving communication reliability. In order to achieve the above purpose, the present application provides the following technical solutions:

[0004] In a first aspect, the present application provides a decoding method, which is applied to a receiving device, and a control channel is established between the receiving device and the transmitting device. The decoding method includes: receiving a demodulation reference signal sent by the transmitting device through the control channel; estimating the channel quality of the control channel based on the demodulation reference signal; selecting a first decoding algorithm when the channel quality of the control channel satisfies a first condition; selecting a second decoding algorithm when the channel quality of the control channel satisfies a second condition; wherein the channel quality when the first condition is met is better than the channel quality when the second condition is met, the decoding delay of the first decoding algorithm is less than the decoding delay of the second decoding algorithm, and the decoding reliability of the first decoding algorithm is less than the decoding reliability of the second decoding algorithm, thereby realizing adaptive selection of the decoding algorithm according to the channel quality of the control channel.

[0005] In this embodiment, the adaptive selection mode of the decoding algorithm is: when the channel quality of the control channel meets the first condition (i.e., the channel quality is relatively good / better), the first decoding algorithm with poor decoding reliability but short decoding delay is selected; when the channel quality of the control channel meets the second condition (i.e., the channel quality is relatively poor), the second decoding algorithm with good decoding reliability but long decoding delay is selected. Although the decoding reliability of the first decoding algorithm is poor, the error information in the bit sequence is less when the channel quality is relatively good, and the first decoding algorithm can correct the error information in time, so that the decoding reliability can be guaranteed and the decoding delay can be reduced when the channel quality is relatively good; although the decoding delay of the second decoding algorithm is large, the decoding reliability of the second decoding algorithm is good, so that the second decoding algorithm can correct the error information in the bit sequence in time and complete the decoding in a shorter time, so that the decoding reliability is improved and the decoding delay is reduced when the channel quality is relatively poor, so that the receiving end device can improve the decoding reliability and reduce the decoding delay by adaptively selecting the decoding algorithm, thereby improving the communication reliability.

[0006] In one possible implementation, the method also includes: when the channel quality of the control channel satisfies the first condition, selecting the maximum number of decoding iterations of the first decoding algorithm according to the channel quality of the control channel, so as to select the maximum number of decoding iterations that matches the channel quality of the control channel, and reasonably use the first decoding algorithm to improve the decoding success rate.

[0007] In a possible implementation, the relationship between the channel quality of the control channel and the maximum number of decoding iterations is negatively correlated. The negative correlation can be that the better the channel quality of the control channel, the smaller the maximum number of decoding iterations. When the channel quality is better, the less error information in the bit sequence, and when the error information in the bit sequence is less, the receiving end device can correct the error information by calling the first decoding algorithm with fewer times, so that when the channel quality of the control channel is better, the maximum number of decoding iterations selected by the receiving end device can be smaller, and when the channel quality of the control channel is worse, the maximum number of decoding iterations selected by the receiving end device can be larger. According to the relationship between the channel quality and the maximum number of decoding iterations, the receiving end device can select the maximum number of decoding iterations that matches the channel quality according to the channel quality, so that the receiving end device can reasonably call the first decoding algorithm to successfully decode as much as possible when calling the first decoding algorithm, and when the channel quality is better, the receiving end device can use fewer iterations to complete the decoding as much as possible, thereby improving the decoding reliability and reducing the decoding delay.

[0008] In a possible implementation, the method further includes: when the number of iterations of the first decoding algorithm called by the receiving end device is equal to the maximum number of decoding iterations and the decoding fails, selecting a second decoding algorithm. When the receiving end device calls the first decoding algorithm for decoding, the receiving end device may use the first processor for decoding. If the number of iterations reaches (equal to) the maximum number of decoding iterations and the decoding fails, the receiving end device may select a second decoding algorithm with better decoding reliability, and perform decoding through the second decoding algorithm, so as to successfully decode through the second decoding algorithm as much as possible.

[0009] In a possible implementation, the receiving end device includes a first processor and a second processor, the computing power of the first processor is less than the computing power of the second processor, and the method further includes: when the number of iterations of the first decoding algorithm called by the receiving end device is equal to the maximum number of decoding iterations and the decoding fails, the first processor calls the second decoding algorithm for decoding, and the maximum search width of the second decoding algorithm is a default search width. The default maximum search width is used when calling the second decoding algorithm, that is, if the second decoding algorithm is called after the first decoding algorithm fails, the maximum search width of the second decoding algorithm can be fixed and does not change with the change of channel quality. Because the scenario in which the second decoding algorithm is called after the first decoding algorithm fails is: in a scenario with good channel quality, there is less error information in the bit sequence in this scenario, so the receiving end device does not need to use a more complex second decoding algorithm, then the default maximum search width of the second decoding algorithm can use a smaller value, such as the default maximum search width can be 1. And the receiving end device can use the first processor to complete the decoding, and the first processor calls the second decoding algorithm for decoding, reducing the occupation of the second processor.

[0010] In a possible implementation, the method further includes: when the channel quality of the control channel satisfies the second condition, selecting a maximum search width of the second decoding algorithm according to the channel quality of the control channel, so as to reasonably use the second decoding algorithm to improve the decoding success rate.

[0011] In a possible implementation, the relationship between the channel quality of the control channel and the maximum search width is negatively correlated. The negative correlation can be that the better the channel quality of the control channel, the smaller the maximum search width. That is, when the channel quality is worse, the more error information there is in the bit sequence, and the larger the maximum search width of the second decoding algorithm needs to be, so that the possibility of successful decoding by the second decoding algorithm is greater. Therefore, when the channel quality is better, the maximum search width selected by the receiving end device is smaller, and when the channel quality is worse, the maximum search width selected by the receiving end device is larger. According to the relationship between the channel quality and the maximum search width, the receiving end device can select the maximum search width that matches the channel quality, so that the receiving end device can reasonably call the second decoding algorithm to successfully decode as much as possible when calling the second decoding algorithm.

[0012] In a possible implementation, the receiving end device includes a first processor and a second processor, the computing power of the first processor is smaller than the computing power of the second processor, and the method further includes: determining the processor that calls the second decoding algorithm from the first processor and the second processor according to the maximum search width of the second decoding algorithm. The maximum search width can be the number of candidate paths retained when the receiving end device calls the second decoding algorithm for decoding. The receiving end device can select the path with the smallest path metric value from the number of candidate paths as the only path, and the labels of the edges passed from the root node to the last leaf node in the only path constitute the decoding result of the second decoding algorithm. Therefore, the larger the maximum search width, the greater the computing power required for the second decoding algorithm, and the smaller the maximum search width, the smaller the computing power required for the second decoding algorithm. Based on this rule, the receiving end device can determine the processor that calls the second decoding algorithm from the first processor and the second processor according to the maximum search width.

[0013] In one possible implementation, determining the processor that calls the second decoding algorithm from the first processor and the second processor according to the maximum search width of the second decoding algorithm includes: when the maximum search width of the second decoding algorithm is greater than a preset value, determining that the second decoding algorithm is called by the second processor; when the maximum search width of the second decoding algorithm is less than or equal to a preset value, determining that the second decoding algorithm is called by the first processor, so that when the maximum search width is large, the receiving device calls the second decoding algorithm through the second processor to accelerate the decoding process by using the second processor with larger computing power, thereby completing the decoding as soon as possible.

[0014] In a possible implementation, the method also includes at least one of the following: the receiving device is a terminal, and the control channel is a physical downlink control channel; or, the receiving device is a network side device, and the control channel is a physical uplink control channel; or, the channel quality of the control channel is represented by the signal-to-interference-noise ratio of the control channel; or, the first decoding algorithm is a belief propagation decoding algorithm; or, the second decoding algorithm is a serial cancellation list decoding algorithm.

[0015] In a possible implementation, when the channel quality of the control channel satisfies the first condition, the first decoding algorithm is selected, and when the channel quality of the control channel satisfies the second condition, the second decoding algorithm is selected, including: when the signal to interference noise ratio of the control channel is greater than or equal to a preset threshold, the belief propagation decoding algorithm is selected; when the signal to interference noise ratio of the control channel is less than the preset threshold, the serial cancellation list decoding algorithm is selected. In this embodiment, the larger the signal to interference noise ratio of the control channel, the better the channel quality of the control channel, and the smaller the signal to interference noise ratio of the control channel, the worse the channel quality of the control channel. According to the relationship between the signal to interference noise ratio and the channel quality, the receiving end device can set a preset threshold, and set the first condition and the second condition by the preset threshold. For example, the first condition can be that the signal to interference noise ratio of the control channel is greater than or equal to the preset threshold, and the second condition can be that the signal to interference noise ratio of the control channel is less than the preset threshold. Thus, the receiving end device can adaptively select the decoding algorithm according to the relationship between the signal to interference noise ratio of the control channel and the preset threshold.

[0016] In a possible implementation, the method further includes: when the signal to interference plus noise ratio of the control channel is greater than or equal to a preset threshold, determining a maximum number of decoding iterations of the belief propagation decoding algorithm according to the signal to interference plus noise ratio of the control channel, whereby the receiving end device can select the maximum number of decoding iterations of the belief propagation decoding algorithm by table lookup, thereby simplifying the decoding algorithm selection process and reducing complexity; and / or, when the signal to interference plus noise ratio of the control channel is less than a preset threshold, determining a maximum search width of the serial cancellation list decoding algorithm according to the signal to interference plus noise ratio of the control channel.

[0017] In a possible implementation, the maximum number of decoding iterations can be searched from a preset corresponding relationship table according to the signal to interference plus noise ratio of the control channel; and / or the maximum search width can be searched from a preset corresponding relationship table according to the signal to interference plus noise ratio of the control channel, thereby the receiving end device can select the maximum search width of the serial cancellation list decoding algorithm by looking up the table, thereby simplifying the decoding algorithm selection process and reducing the complexity.

[0018] In a possible implementation, the receiving end device includes a first processor and a second processor, the computing power of the first processor is less than the computing power of the second processor, and the method further includes: when the maximum search width of the serial offset list decoding algorithm is greater than a preset value, determining that the serial offset list decoding algorithm is called by the second processor; when the maximum search width of the serial offset list decoding algorithm is less than or equal to the preset value, determining that the serial offset list decoding algorithm is called by the first processor. The preset value may be the maximum search width used when the receiving end device does not accelerate the decoding process, so that when the maximum search width is greater than the preset value, the receiving end device may call the serial offset list decoding algorithm by the second processor to accelerate the decoding process, and when the maximum search width is less than or equal to the preset value, the receiving end device may call the serial offset list decoding algorithm by the first processor without accelerating the decoding process.

[0019] In a possible implementation, the first processor is a central processing unit, and the second processor is a coprocessor.

[0020] In a possible implementation, the coprocessor is any one of a graphics processor, a field programmable logic gate array circuit, a digital signal processor, and an application specific integrated circuit.

[0021] In a second aspect, the present application provides a receiving device, the receiving device comprising: one or more processors and a memory; the memory is used to store computer program codes, the computer program codes include computer instructions, and when the one or more processors execute the computer instructions, the receiving device executes the above-mentioned decoding method. The receiving device may be a terminal or a network side device.

[0022] In a third aspect, the present application provides a computer-readable storage medium, which is used to store a computer program, and the computer program implements the above-mentioned decoding method when executed.

[0023] In a fourth aspect, the present application provides a chip system, which is applied to a receiving device. The chip system includes at least one processor and an interface, and the interface is used to receive instructions and transmit them to at least one processor; at least one processor runs the instructions so that the receiving device executes the above-mentioned decoding method. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] Figure 1 A schematic diagram of a decoding method provided in an embodiment of the present application;

[0025] Figure 2 A schematic diagram of another decoding method provided in an embodiment of the present application;

[0026] Figure 3A schematic diagram of the structure of a communication device provided in an embodiment of the present application;

[0027] Figure 4 A hardware structure diagram of a terminal provided in an embodiment of the present application;

[0028] Figure 5 A flowchart of a decoding method provided in an embodiment of the present application;

[0029] Figure 6 A flowchart of another decoding method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0030] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. The terms used in the following embodiments are only for the purpose of describing specific embodiments and are not intended to be used as limitations on the present application. As used in the specification and the appended claims of the present application, the singular expressions "one", "a kind", "said", "above", "the" and "this" are intended to also include expressions such as "one or more", unless there is a clear contrary indication in the context. It should also be understood that in the embodiments of the present application, "one or more" refers to one, two or more; "and / or" describes the association relationship of associated objects, indicating that three relationships may exist; for example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the objects associated before and after are in an "or" relationship.

[0031] References to "one embodiment" or "some embodiments" etc. described in this specification mean that a particular feature, structure or characteristic described in conjunction with the embodiment is included in one or more embodiments of the present application. Thus, the phrases "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear at different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0032] The multiple involved in the embodiments of the present application means greater than or equal to two. It should be noted that in the description of the embodiments of the present application, the words "first", "second", etc. are only used for the purpose of distinguishing the description, and cannot be understood as indicating or implying relative importance, nor can they be understood as indicating or implying an order.

[0033] The bit sequence sent by the transmitter includes the information bits and the check bits. The receiver decodes the bit sequence through the decoding algorithm. After the decoding is completed, the receiver verifies the decoding result. If the verification is successful, it is determined that the bit sequence is decoded successfully; if the verification fails, it is determined that the bit sequence is decoded unsuccessfully, so that the decoding algorithm can be used to correct the error information generated during the transmission of the bit sequence. For example, the control command such as signaling transmitted between the transmitter and the receiver through the control channel can be encapsulated in the bit sequence. After receiving the bit sequence, the receiver decodes the bit sequence through the polar code decoding algorithm.

[0034] Among them, the Polar code decoding algorithm includes the Successive Cancellation List (SCL) decoding algorithm and the Belief Propagation (BP) decoding algorithm. The SCL decoding algorithm is a serial algorithm, which decodes bit by bit according to the search width L of the SCL decoding algorithm. Under the condition of limited code length, the SCL decoding algorithm can obtain better decoding reliability but the decoding delay is higher, which reduces the throughput; the BP decoding algorithm belongs to parallel decoding, with lower decoding delay, but the decoding reliability is worse than (less than) the decoding reliability of the SCL decoding algorithm, and the decoding reliability can be expressed by the block error rate.

[0035] In some examples, the receiving end first calls the BP decoding algorithm to decode the bit sequence and obtains the decoding result. The receiving end then verifies the decoding result. If the verification passes, it is determined that the decoding is successful; if the verification fails, it is determined that the decoding fails, and the receiving end continues to call the BP decoding algorithm to decode the bit sequence until the maximum number of decoding iterations of the BP decoding algorithm is reached; if the decoding still fails after reaching the maximum number of decoding iterations, the receiving end calls the SCL decoding algorithm to decode the bit sequence. Figure 1 As shown in the figure, the receiving end first calls the BP decoding algorithm for decoding. When the decoding times of the BP decoding algorithm reach the maximum decoding iteration times and the decoding fails, the SCL decoding algorithm is called for decoding. That is, the calling order of the BP decoding algorithm and the SCL decoding algorithm is fixed, and the decoding algorithm cannot be adaptively selected according to the channel quality. In addition, when the channel quality is poor, the BP decoding algorithm is very likely to fail in decoding. However, the receiving end still calls the BP decoding algorithm first, and calls the SCL decoding algorithm after decoding the maximum decoding iteration times, which increases the decoding delay and reduces the communication reliability.

[0036] Some embodiments of the present application provide a decoding method and device, which can estimate the channel quality of a control channel, select a first decoding algorithm when the channel quality meets a first condition, and select a second decoding algorithm when the channel quality meets a second condition, wherein the channel quality when the first condition is met is better than the channel quality when the second condition is met, the decoding delay of the first decoding algorithm is less than the decoding delay of the second decoding algorithm, and the decoding reliability of the first decoding algorithm is less than the decoding reliability of the second decoding algorithm, thereby adaptively selecting a decoding algorithm according to the channel quality of the control channel.

[0037] like Figure 2 As shown, when the channel quality is better (better), the first decoding algorithm with poor decoding reliability but short decoding delay is selected, and when the channel quality is poor, the second decoding algorithm with good decoding reliability but long decoding delay is selected. Although the decoding reliability of the first decoding algorithm is poor, the error information in the bit sequence is less when the channel quality is good, and the first decoding algorithm can correct the error information in time and complete the decoding with as few iterations as possible, so that the decoding reliability can be guaranteed and the decoding delay can be reduced when the channel quality is good; although the decoding delay of the second decoding algorithm is large, the decoding reliability of the second decoding algorithm is good, so that the second decoding algorithm can correct the error information in the bit sequence in time and complete the decoding in a shorter time, so that the decoding reliability is improved and the decoding delay is reduced when the channel quality is poor. Therefore, the receiving end can improve the decoding reliability and reduce the decoding delay by adaptively selecting the decoding algorithm, thereby improving the communication reliability.

[0038] In some embodiments, the above-mentioned receiving end may be a terminal or a network-side device. The network-side device may be a device deployed in the network to provide wireless communication functions for the terminal, such as a base station. The base station may include various forms, such as a macro base station, a micro base station (also known as a small station), a relay station, an access point, etc. In systems using different wireless access technologies, the names of network-side devices may be different, such as a base transceiver station (BTS) in a global system for mobile communications (GSM) or code division multiple access (CDMA) network, a NB (NodeB) in a wideband code division multiple access (WCDMA), an eNB or eNodeB (evolutional NodeB) in a long-term evolution (LTE), a base station in a 5G network or a future public land mobile network (PLMN). The network-side device may also be a broadband network service gateway (BNG), a converged switch or a non-3GPP network device. In addition, the network side device may also be a wireless controller in a cloud radio access network (CRAN), or a transmission and reception point (TRP), or a device including a TRP, etc., and the embodiments of the present application do not specifically limit this.

[0039] The terminal involved in the embodiments of the present application may be a device with wireless transceiver functions, which may be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; may also be deployed on the water (such as ships, etc.); may also be deployed in the air (such as airplanes, balloons, and satellites, etc.). The terminal may be a user equipment (UE), access terminal, terminal unit, subscriber unit, terminal station, mobile station (MS), mobile station, remote station, remote terminal, mobile device, wireless communication device, terminal agent or terminal device in a 5G network or a future evolved PLMN. The access terminal may be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device or a wearable device, a virtual reality (VR) terminal, an augmented reality (AR) terminal, a wireless terminal in industrial control, a wireless terminal in self-driving, a wireless terminal in remote medical, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in smart city, a wireless terminal in smart home, etc. The terminal may be mobile or fixed. The embodiments of the present application do not limit the specific type and structure of the terminal.

[0040] Optionally, the terminal and the network side device in the embodiment of the present application may adopt Figure 3 The structure shown or includes Figure 3 Parts shown. Figure 3 A schematic diagram of the structure of a communication device provided in an embodiment of the present application, the communication device includes one or more processors 101, a communication line 102, and at least one communication interface ( Figure 3 The description is merely illustrative, taking a communication interface 103 and a processor 101 as an example), and optionally may also include a memory 104.

[0041] The processor 101 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program of the present application.

[0042] The communication link 102 may include a pathway for communication between different components.

[0043] The communication interface 103 may be a transceiver module for communicating with other devices or communication networks, such as Ethernet, a radio access network (RAN), a wireless local area network (WLAN), etc. For example, the transceiver module may be a device such as a transceiver or a transceiver. Optionally, the communication interface 103 may also be a transceiver circuit located in the processor 101, for realizing signal input and signal output of the processor.

[0044] The memory 104 may be a device with a storage function. For example, it may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory may be independent and connected to the processor via a communication line 102. The memory may also be integrated with the processor. Among them, the memory 104 is used to store computer execution instructions for executing the scheme of the present application, and the execution is controlled by the processor 101. The processor 101 is used to execute the computer-executable instructions stored in the memory 104, so as to implement the decoding method provided in the embodiment of the present application. Optionally, the computer-executable instructions in the embodiment of the present application can also be referred to as program codes, which is not specifically limited in the embodiment of the present application.

[0045] In some examples, the communication device may also include an output device 105 and an input device 106. The output device 105 communicates with the processor 101 and can display information in a variety of ways. For example, the output device 105 can be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector. The input device 106 communicates with the processor 101 and can receive user input in a variety of ways. For example, the input device 106 can be a mouse, a keyboard, a touch screen device, or a sensor device.

[0046] The communication device may be a general purpose device or a dedicated device. For example, the communication device may be a desktop computer, a portable computer, a network server, a personal digital assistant (PDA), a mobile phone, a tablet computer, a wireless terminal, an embedded device, the above terminal, the above network device, or a Figure 3 The embodiments of the present application do not limit the type of communication device.

[0047] Optional, Figure 4 An optional hardware structure of a terminal is shown, and the terminal may include a processor, an external memory interface, an internal memory, a universal serial bus (USB) interface, a charging management module, a power management module, a battery, an antenna 1, an antenna 2, a mobile communication module, a wireless communication module, an audio module, a speaker, a receiver, a microphone, an earphone interface, a sensor module, a button, a motor, an indicator, a camera, a display screen, and a subscriber identity module (SIM) card interface, etc. The sensor module may include a pressure sensor, a gyroscope sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, etc.

[0048] It is to be understood that the structure illustrated in this embodiment does not constitute a specific limitation on the terminal. In other embodiments, the terminal may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0049] The processor may include one or more processing units, for example: the processor may include an application processor (AP), a modem processor, a graphics processor (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent devices or integrated into one or more processors. For example, in an embodiment of the present application, the processor may adaptively select a decoding algorithm according to the channel quality of the control channel, such as selecting a first decoding algorithm when the channel quality meets a first condition, and selecting a second decoding algorithm when the channel quality meets a second condition, wherein the channel quality when the first condition is met is better than the channel quality when the second condition is met, the decoding delay of the first decoding algorithm is less than the decoding delay of the second decoding algorithm, and the decoding reliability of the first decoding algorithm is less than the decoding reliability of the second decoding algorithm. For example, in some examples, the first decoding algorithm may be a BP decoding algorithm, and the second decoding algorithm may be an SCL decoding algorithm. Among them, the controller may be a nerve center and a command center of the terminal. The controller can generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions. A memory can also be set in the processor for storing instructions and data. In some embodiments, the memory in the processor is a cache memory. The memory can save instructions or data that the processor has just used or circulated. If the processor needs to use the instruction or data again, it can be directly called from the memory, avoiding repeated access, reducing the waiting time of the processor, and thus improving the efficiency of the system.

[0050] The wireless communication function of the terminal can be implemented through antenna 1, antenna 2, mobile communication module, wireless communication module, modem processor and baseband processor, etc. In some embodiments, antenna 1 of the terminal is coupled with the mobile communication module, and antenna 2 is coupled with the wireless communication module, so that the terminal can communicate with the network and other devices through wireless communication technology.

[0051] The terminal implements the display function through GPU, display screen, and application processor. GPU is a microprocessor for image processing, connecting the display screen and application processor. GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor may include one or more GPUs, which execute program instructions to generate or change display information. The terminal can implement the shooting function through ISP, camera, video codec, GPU, display screen, and application processor.

[0052] The external memory interface can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the terminal. The external memory card communicates with the processor through the external memory interface to implement data storage functions. For example, music, video and other files can be saved in the external memory card.

[0053] The internal memory can be used to store computer executable program codes, which include instructions. The processor executes various functional applications and data processing of the terminal by running the instructions stored in the internal memory. For example, in this embodiment, the processor can select a decoding algorithm by executing the instructions stored in the internal memory. The internal memory may include a program storage area and a data storage area. Among them, the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area may store data created during the use of the terminal (such as audio data, a phone book, etc.), etc. In addition, the internal memory may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc. The processor executes various functional applications and data processing of the terminal by running instructions stored in the internal memory, and / or instructions stored in a memory provided in the processor.

[0054] The decoding method provided in the embodiment of the present application is described below by taking the example that the receiving end may be a terminal, the first decoding algorithm may be a BP decoding algorithm, and the second decoding algorithm may be an SCL decoding algorithm. Figure 5 , which shows an optional process of the decoding method provided in an embodiment of the present application, which may include the following steps:

[0055] S101. The terminal receives a demodulation reference signal (DMRS) carried by a physical downlink control channel (PDCCH), and estimates a signal to interference plus noise ratio (SINR) of the physical downlink control channel according to the DMRS.

[0056] In this embodiment, the terminal characterizes the channel quality of the physical downlink control channel by the SINR of the physical downlink control channel. The larger the SINR of the physical downlink control channel, the better the channel quality of the physical downlink control channel, and the smaller the SINR of the physical downlink control channel, the worse the channel quality of the physical downlink control channel.

[0057] The better the channel quality, the less error information in the bit sequence received by the terminal. In this case, the terminal can call a decoding algorithm with poor decoding reliability but short decoding delay for decoding. Although the decoding reliability of the decoding algorithm called by the terminal is poor, there is less error information in the bit sequence, and the decoding algorithm is more likely to correct the error information and takes a shorter time to correct the error information. Therefore, when the channel quality is good, the terminal can call a decoding algorithm with poor decoding reliability; and the worse the channel quality, the more error information in the bit sequence received by the terminal. In this case, the terminal can call a decoding algorithm with good decoding reliability but long decoding delay to correct the error information in the bit sequence in time.

[0058] For example, the decoding reliability of the BP decoding algorithm is lower than that of the SCL decoding algorithm, but the decoding delay of the BP decoding algorithm is lower than that of the SCL decoding algorithm. Therefore, when the channel quality is good, the terminal can call the BP decoding algorithm; when the channel quality is poor, the terminal can call the SCL decoding algorithm. The BP decoding algorithm and the SCL decoding algorithm are only examples, and this embodiment does not limit the decoding algorithm called by the terminal.

[0059] S102, determine whether the SINR is greater than or equal to a preset threshold value X. If the SINR is greater than or equal to the preset threshold value X, execute step S103; if the SINR is less than the preset threshold value X, execute step S105.

[0060] When SINR is used to characterize the channel quality, the terminal may set a preset threshold value X to divide the SINRs for calling different decoding algorithms by the preset threshold value X, that is, multiple SINRs are divided by the preset threshold value X to obtain the corresponding relationship between SINR and the decoding algorithm, and the decoding algorithm matching the SINR is selected according to the corresponding relationship between SINR and the decoding algorithm.

[0061] For example, following the rule that the larger the SINR, the better the channel quality, and the smaller the SINR, the worse the channel quality, if the SINR is greater than or equal to the preset threshold value X, it means that the channel quality is good, and the terminal can execute step S103 to select the BP decoding algorithm. If the SINR is less than the preset threshold value X, it means that the channel quality is poor, and the terminal can execute step S105 to select the SCL decoding algorithm.

[0062] S103, select BP decoding algorithm. After selecting the BP decoding algorithm, the terminal calls the BP decoding algorithm for decoding.

[0063] S104. According to the SINR, select the maximum number of decoding iterations N_max that matches the SINR. The maximum number of decoding iterations N_max may be the maximum number of times the terminal calls the BP decoding algorithm for decoding. Each time the terminal calls the BP decoding algorithm for decoding, the terminal may verify the decoding result. If the decoding result passes the verification, the decoding ends, even if the number of decoding times of the terminal is less than the maximum number of decoding iterations N_max. If the decoding result does not pass the verification, the terminal may continue to call the BP decoding algorithm for decoding until the number of decoding times reaches (equal to) the maximum number of decoding iterations N_max. In some examples, the terminal may call a cyclic redundancy check (CRC) algorithm to verify the decoding result.

[0064] When the channel quality is better, there is less error information in the bit sequence, and when there is less error information in the bit sequence, the terminal can correct the error information by calling the BP decoding algorithm fewer times. Therefore, when the SINR is larger, the maximum number of decoding iterations N_max selected by the terminal is smaller, and when the SINR is smaller, the maximum number of decoding iterations N_max selected by the terminal is larger. According to this rule, the terminal can select the maximum number of decoding iterations N_max that matches the SINR, so that the terminal can reasonably call the BP decoding algorithm to successfully decode as much as possible when calling the BP decoding algorithm.

[0065] S105, select SCL decoding algorithm. After selecting the SCL decoding algorithm, the terminal calls the SCL decoding algorithm for decoding.

[0066] S106. According to the SINR, select a maximum search width L_max that matches the SINR.

[0067] The maximum search width L_max may be the number of candidate paths retained when the terminal calls the SCL decoding algorithm for decoding. The terminal may select the path with the smallest path metric (PM) from the number of candidate paths as the only path, and the labels of the edges passed from the root node to the last leaf node in the only path constitute the decoding result of the SCL decoding algorithm.

[0068] The worse the channel quality is, the more error information there is in the bit sequence, and the larger the maximum search width L_max of the SCL decoding algorithm needs to be, so that the possibility of successful decoding by the SCL decoding algorithm is greater. Therefore, when the SINR is larger, the smaller the maximum search width L_max selected by the terminal is, and when the SINR is smaller, the larger the maximum search width L_max selected by the terminal is. According to this rule, the terminal can select the maximum search width L_max that matches the SINR, so that the terminal can reasonably call the SCL decoding algorithm to successfully decode as much as possible when calling the SCL decoding algorithm.

[0069] In some examples, the terminal may pre-set the correspondence between SINR, preset threshold X, decoding algorithm, maximum search width L_max and maximum number of decoding iterations N_max. After estimating the SINR of the physical downlink control channel, the terminal may use the correspondence to determine the decoding algorithm, and the maximum search width L_max or maximum number of decoding iterations N_max that matches the SINR.

[0070] As shown in Table 1, it shows a correspondence between the preset SINR, the preset threshold X, the decoding algorithm, the maximum search width L_max and the maximum number of decoding iterations N_max. Among them, the preset threshold X can be 16, when the SINR is greater than or equal to 16, the terminal selects the BP decoding algorithm, and when the SINR is [16, 18], the maximum number of decoding iterations N_max is 5, and when the SINR is [19, 21], the maximum number of decoding iterations N_max is 4. When the SINR is [22, 25], the maximum number of decoding iterations N_max is 3, and when the SINR is greater than 25, the maximum number of decoding iterations N_max is 2.

[0071] When SINR is less than 16, the terminal selects the SCL decoding algorithm, and when SINR is [12, 15], the maximum search width L_max is 1, and when SINR is [9, 11], the maximum search width L_max is 2. When SINR is [4, 8], the maximum search width L_max is 4, and when SINR is less than 4, the maximum search width L_max is 8.

[0072] After the terminal estimates the SINR of the physical downlink control channel according to the DMRS, the terminal can refer to Table 1 to select a decoding algorithm, and after determining that the decoding algorithm is the BP decoding algorithm, refer to Table 1 to select the maximum number of decoding iterations N_max according to the range of the SINR; after determining that the decoding algorithm is the SCL decoding algorithm, refer to Table 1 to select the maximum search width L_max according to the range of the SINR.

[0073] Table 1 A correspondence between SINR, preset threshold X, decoding algorithm, maximum search width L_max and maximum number of decoding iterations N_max

[0074]

[0075] Table 1 is only an example. This embodiment does not limit the corresponding relationship among SINR, preset threshold X, decoding algorithm, maximum search width L_max and maximum number of decoding iterations N_max, which can be adjusted according to actual engineering values.

[0076] from Figure 5It can be seen from the decoding method shown that the terminal can select the BP decoding algorithm when the channel quality is good, and the terminal can select the SCL decoding algorithm when the channel quality is poor. Although the decoding reliability of the BP decoding algorithm is poor, there is less error information in the bit sequence when the channel quality is good, and the BP decoding algorithm can correct the error information in time, and the better the channel quality, the smaller the maximum number of decoding iterations N_max of the BP decoding algorithm, so that the terminal can use as few iterations as possible to complete the decoding, so that the decoding reliability can be guaranteed and the decoding delay can be reduced when the channel quality is good; although the decoding delay of the SCL decoding algorithm is large, the decoding reliability of the SCL decoding algorithm is good, so that the SCL decoding algorithm can correct the error information in the bit sequence in time and complete the decoding in a shorter time, so that the decoding reliability is improved and the decoding delay is reduced when the channel quality is poor, so that the terminal can improve the decoding reliability and reduce the decoding delay by adaptively selecting the decoding algorithm, thereby improving the communication reliability.

[0077] See also Figure 6 , which shows an optional process of another decoding method provided in an embodiment of the present application, which may include the following steps:

[0078] S201. The terminal receives a DMRS carried by a PDCCH, and estimates an SINR of a physical downlink control channel according to the DMRS.

[0079] S202, determine whether the SINR is greater than or equal to a preset threshold value X. If the SINR is greater than or equal to the preset threshold value X, execute step S203; if the SINR is less than the preset threshold value X, execute step S209.

[0080] S203: Select BP decoding algorithm.

[0081] S204. According to the SINR, select a maximum number of decoding iterations N_max that matches the SINR.

[0082] S205: Call the BP decoding algorithm to perform decoding and obtain a decoding result.

[0083] S206, determine whether the decoding result passes the verification, if the decoding result passes the verification, end; if the decoding result does not pass the verification, execute step S207.

[0084] S207, determine whether the number of iterations reaches the maximum number of decoding iterations. If so, execute step S208; if not, return to step S205.

[0085] S208 , selecting an SCL decoding algorithm, using a default maximum search width L_max, and selecting a CPU to call the SCL decoding algorithm.

[0086] S209, select SCL decoding algorithm.

[0087] S210: According to the SINR, select a maximum search width L_max that matches the SINR.

[0088] S211. Determine whether the maximum search width L_max is greater than a preset value. If the maximum search width L_max is greater than the preset value Y, execute step S212; if the maximum search width L_max is less than or equal to the preset value Y, execute step S213.

[0089] S212. The coprocessor calls the SCL decoding algorithm.

[0090] S213. The CPU calls the SCL decoding algorithm.

[0091] Compared with the above Figure 5 For the decoding method shown, Figure 6 The decoding method shown is similar to Figure 5 The difference between the decoding methods shown is that: when the terminal calls the BP decoding algorithm for decoding, the terminal can use the CPU for decoding. If the number of iterations reaches (equal to) the maximum number of decoding iterations N_max and the decoding result does not pass the verification, the terminal can select the SCL decoding algorithm. When calling the SCL decoding algorithm, the default maximum search width L_max is used, that is, if the SCL decoding algorithm is called after the BP decoding algorithm fails, the maximum search width L_max of the SCL decoding algorithm can be fixed and does not change with the change of SINR.

[0092] Because the scenario in which the SCL decoding algorithm is called after the BP decoding algorithm fails is: in a scenario with good channel quality, there is less error information in the bit sequence in this scenario, so the terminal does not need to use a more complex SCL decoding algorithm, then the default maximum search width L_max of the SCL decoding algorithm can use a smaller value, such as the default maximum search width L_max can be 1. And the terminal can use the CPU to complete the decoding, and the CPU calls the SCL decoding algorithm for decoding.

[0093] In the scenario where the terminal selects the SCL decoding algorithm according to SINR, in addition to selecting the matching maximum search width L_max according to SINR, it is also determined whether to accelerate the decoding process according to the relationship between the maximum search width L_max and the preset value Y, so that the terminal can complete the decoding as soon as possible.

[0094] Among them, the preset value Y can be the maximum search width L_max used when the terminal does not accelerate the decoding process. Therefore, when the maximum search width L_max is greater than the preset value Y, the terminal accelerates the decoding process. When the maximum search width L_max is less than or equal to the preset value Y, the terminal does not accelerate the decoding process.

[0095] In some examples, the terminal may accelerate the decoding process by using a coprocessor for decoding, and the coprocessor may call the SCL decoding algorithm for decoding. The coprocessor may be, but is not limited to, a GPU, a field programmable gate array (FPGA) circuit, a DSP, an ASIC, or other hardware accelerator. The terminal may not accelerate the decoding process by using a CPU for decoding, and the CPU may call the SCL decoding algorithm for decoding. Because the larger the maximum search width L_max of the SCL decoding algorithm, the greater the complexity of the SCL decoding algorithm, and the more computing resources the SCL decoding algorithm requires, when the maximum search width L_max is greater than a preset value Y, a coprocessor with better computing power is used for decoding to accelerate the decoding so that the terminal can complete the decoding as soon as possible.

[0096] Table 2 shows an example of the preset value Y, which may be 4. When the maximum search width L_max is 8, the maximum search width L_max is greater than the preset value Y, and the processor is a coprocessor to accelerate decoding. When the maximum search width L_max is 4, the maximum search width L_max is equal to the preset value Y, and the processor is a CPU, and decoding is not accelerated; when the maximum search width L_max is 2 or 1, the maximum search width L_max is equal to the preset value Y, and the processor is a CPU, and decoding is not accelerated.

[0097] Table 2 A correspondence between SINR, preset threshold X, decoding algorithm, maximum search width L_max, maximum number of decoding iterations N_max and processor

[0098]

[0099] Table 2 is only an example, and this embodiment does not limit the preset value Y, which can be adjusted according to the actual engineering value.

[0100] from Figure 6It can be seen from the decoding method shown that, when the channel quality is poor, the terminal can decide whether to accelerate the decoding based on the relationship between the maximum search width L_max and the preset value Y. For example, when the maximum search width L_max is large, the terminal can use a coprocessor for decoding to accelerate the decoding, so that the terminal can complete the decoding as quickly as possible when using the SCL decoding algorithm with a higher complexity.

[0101] One thing that needs to be explained here is that Figure 5 and Figure 6 The decoding method shown is to select a decoding algorithm based on the relationship between SINR and a preset threshold value X. Figure 6 The decoding method shown can also select a processor according to the relationship between the maximum search width L_max and the preset value Y, which are only examples. The decoding method provided by some embodiments of the present application can select a decoding algorithm according to the relationship between SINR and the decoding algorithm, and select a processor according to the relationship between the maximum search width L_max and the processor. For example, the terminal can try to call the BP decoding algorithm and the SCL decoding algorithm for decoding under the same SINR to test the effect of decoding using different decoding algorithms under the same SINR, and configure the decoding algorithm for the SINR according to the test effect (such as the effect of multiple tests). When trying to call the SCL decoding algorithm, the terminal can try to use the coprocessor and the CPU for decoding respectively to test the effect of decoding using different processors under the same SINR, and configure the processor for the SCL decoding algorithm under the SINR according to the test effect (such as the effect of multiple tests). After completing the configuration, the terminal obtains the relationship between the SINR and the decoding algorithm, and the relationship between the maximum search width L_max and the processor. Of course, the terminal can also obtain the relationship between the BP decoding algorithm and the maximum number of decoding iterations N_max, and the relationship between the SCL decoding algorithm and the maximum search width L_max through multiple tests, which will not be described in detail here.

[0102] The decoding method provided in the embodiment of the present application is described below with reference to Table 2 in combination with specific examples.

[0103] Example 1: In a scenario with good channel quality, the preset threshold X=15, the decoding process is as follows:

[0104] 1. The terminal estimates the DMRS carried by the PDCCH and obtains an SINR of 22;

[0105] 2. According to the SINR lookup table 2, select the BP decoding algorithm and determine the maximum number of decoding iterations N_max to be 3;

[0106] 3. Each time the BP decoding algorithm is called to complete decoding, the decoding result is verified. If the decoding result passes the verification and the decoding is confirmed to be successful, the system exits early and the decoding ends. Otherwise, the BP decoding algorithm is continued to be called for decoding;

[0107] 4. Determine whether the number of decoding times reaches the maximum number of decoding iterations N_max. If it reaches the maximum number of decoding iterations N_max and the decoding is not successful, select the SCL decoding algorithm. The maximum search width L_max of the SCL decoding algorithm is the default value, and the CPU performs decoding.

[0108] Example 2: In a scenario with poor channel quality, the preset threshold X=12, the preset value Y=4, and the decoding process is as follows:

[0109] 11. The terminal estimates the DMRS carried by the PDCCH and obtains an SINR of 8;

[0110] 12. According to SINR lookup table 2, select the SCL decoding algorithm and determine the maximum search width L_max to be 4;

[0111] 13. Because L_max=Y, select CPU for decoding and do not accelerate the decoding process.

[0112] Example 3: In a scenario where the channel quality is very poor, the preset threshold X=12, the preset value Y=4, and the decoding process are as follows

[0113] 21. The terminal estimates the DMRS carried by the PDCCH and obtains an SINR of 3;

[0114] 22. According to SINR lookup table 2, select the SCL decoding algorithm and determine the maximum search width L_max to be 8;

[0115] 23. Because L_max>Y, select the coprocessor for decoding to accelerate the decoding process.

[0116] As can be seen from the above examples, the decoding method provided in the embodiment of the present application can adaptively select the BP decoding algorithm or the SCL decoding algorithm for decoding based on the SINR that characterizes the channel quality. If the BP decoding algorithm is selected and the number of decoding reaches the maximum number of decoding iterations and the decoding fails, the SCL decoding algorithm is selected for decoding. Further, after the SCL decoding algorithm is selected based on the SINR, it can also be selected whether to accelerate the decoding according to the maximum search width L_max of the SCL decoding algorithm.

[0117] The above embodiment is described by taking the receiving end as an example, and the decoding method provided in the embodiment of the present application can also be applied to the network side device. The difference from the decoding method applied to the terminal is that the network side device can receive the DMRS carried by the physical uplink control channel (Physical Uplink Control Channel, PUCCH), and estimate the SINR of the physical uplink control channel according to the DMRS. The process of the decoding method implemented by the network side device is as follows:

[0118] 1) The network side device receives the DMRS carried by the PUCCH and estimates the SINR of the PUCCH based on the DMRS.

[0119] 2) Determine whether the SINR is greater than or equal to a preset threshold value X. If the SINR is greater than or equal to the preset threshold value X, execute 3); if the SINR is less than the preset threshold value X, execute 9).

[0120] 3) Select BP decoding algorithm.

[0121] 4) According to the SINR, select the maximum number of decoding iterations N_max that matches the SINR.

[0122] 5) Call the BP decoding algorithm to decode and obtain the decoding result.

[0123] 6) Determine whether the decoding result passes the verification. If the decoding result passes the verification, end; if the decoding result does not pass the verification, execute 7).

[0124] 7) Determine whether the number of iterations has reached the maximum number of decoding iterations. If so, execute 8); if not, return to 5).

[0125] 8) Select the SCL decoding algorithm, use the default maximum search width L_max, and select the CPU to call the SCL decoding algorithm.

[0126] 9) Select the SCL decoding algorithm.

[0127] 10) According to the SINR, select a maximum search width L_max that matches the SINR.

[0128] 11) Determine whether the maximum search width L_max is greater than a preset value. If the maximum search width L_max is greater than the preset value Y, execute 12); if the maximum search width L_max is less than or equal to the preset value Y, execute 13).

[0129] 12) The coprocessor calls the SCL decoding algorithm.

[0130] 13)CPU calls the SCL decoding algorithm.

[0131] An embodiment of the present application also provides a receiving device, which includes: one or more processors and a memory; the memory is used to store computer program code, the computer program code includes computer instructions, and when one or more processors execute the computer instructions, the receiving device executes the decoding method as described above.

[0132] An embodiment of the present application also provides a computer-readable storage medium, which is used to store a computer program. When the computer program is executed, the above-mentioned decoding method is implemented.

[0133] An embodiment of the present application also provides a chip system, which is applied to a receiving device. The chip system includes at least one processor and an interface, and the interface is used to receive instructions and transmit them to at least one processor; at least one processor executes the instructions so that the receiving device executes the above-mentioned decoding method.

[0134] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A decoding method, characterized in that: Applied to a receiving device, a control channel is established between the receiving device and the transmitting device, and the decoding method includes: receiving a demodulation reference signal sent by the transmitting end device through the control channel; estimating a channel quality of the control channel according to the demodulation reference signal; When the channel quality of the control channel satisfies a first condition, selecting a first decoding algorithm; When the channel quality of the control channel satisfies a second condition, selecting a second decoding algorithm; Among them, the channel quality when the first condition is met is better than the channel quality when the second condition is met, the decoding delay of the first decoding algorithm is smaller than the decoding delay of the second decoding algorithm, and the decoding reliability of the first decoding algorithm is smaller than the decoding reliability of the second decoding algorithm.

2. The method according to claim 1, characterized in that: The method further includes: when the channel quality of the control channel satisfies the first condition, selecting a maximum number of decoding iterations of the first decoding algorithm according to the channel quality of the control channel.

3. The method according to claim 2, characterized in that The relationship between the channel quality of the control channel and the maximum number of decoding iterations is negatively correlated.

4. The method according to claim 2 or 3, characterized in that: The method further includes: selecting the second decoding algorithm when the number of iterations of the first decoding algorithm called by the receiving end device is equal to the maximum number of decoding iterations and decoding fails.

5. The method according to claim 4, characterized in that The receiving end device includes a first processor and a second processor, the computing capability of the first processor is smaller than the computing capability of the second processor, and the method further includes: When the number of iterations of the first decoding algorithm called by the receiving end device is equal to the maximum number of decoding iterations and decoding fails, the first processor calls the second decoding algorithm for decoding, and the maximum search width of the second decoding algorithm is a default search width.

6. The method according to any one of claims 1 to 5, characterized in that The method further includes: selecting a maximum search width of the second decoding algorithm according to the channel quality of the control channel when the channel quality of the control channel satisfies a second condition.

7. The method according to claim 6, characterized in that The relationship between the channel quality of the control channel and the maximum search width is a negative correlation.

8. The method according to claim 6 or 7, characterized in that: The receiving device includes a first processor and a second processor, the computing power of the first processor is smaller than the computing power of the second processor, and the method further includes: determining a processor that calls the second decoding algorithm from the first processor and the second processor according to the maximum search width of the second decoding algorithm.

9. The method according to claim 8, characterized in that The determining, according to the maximum search width of the second decoding algorithm, a processor from the first processor and the second processor to call the second decoding algorithm comprises: determining that the second processor calls the second decoding algorithm when the maximum search width of the second decoding algorithm is greater than a preset value; When the maximum search width of the second decoding algorithm is less than or equal to a preset value, it is determined that the second decoding algorithm is called by the first processor.

10. The method according to any one of claims 1 to 9, characterized in that The method further includes at least one of the following: the receiving device is a terminal, and the control channel is a physical downlink control channel; or, The receiving end device is a network side device, and the control channel is a physical uplink control channel; or, The channel quality of the control channel is represented by a signal to interference and noise ratio of the control channel; or, The first decoding algorithm is a belief propagation decoding algorithm; or, The second decoding algorithm is a serial cancellation list decoding algorithm.

11. The method according to claim 10, characterized in that The selecting the first decoding algorithm when the channel quality of the control channel satisfies the first condition, and the selecting the second decoding algorithm when the channel quality of the control channel satisfies the second condition, comprises: selecting the belief propagation decoding algorithm when the signal to interference plus noise ratio of the control channel is greater than or equal to a preset threshold; When the signal to interference plus noise ratio of the control channel is less than the preset threshold, the serial cancellation list decoding algorithm is selected.

12. The method according to claim 11, characterized in that The method further includes: determining a maximum number of decoding iterations of the belief propagation decoding algorithm according to the signal to interference plus noise ratio of the control channel when the signal to interference plus noise ratio of the control channel is greater than or equal to the preset threshold; and / or, When the signal to interference plus noise ratio of the control channel is less than the preset threshold, the maximum search width of the serial cancellation list decoding algorithm is determined according to the signal to interference plus noise ratio of the control channel.

13. The method according to claim 12, characterized in that The maximum number of decoding iterations may be searched from a preset corresponding relationship table according to the signal to interference noise ratio of the control channel; and / or, The maximum search width may be searched from the preset corresponding relationship table according to the signal to interference plus noise ratio of the control channel.

14. The method according to any one of claims 11 to 13, characterized in that The receiving end device includes a first processor and a second processor, the computing capability of the first processor is smaller than the computing capability of the second processor, and the method further includes: if the maximum search width of the serial cancellation list decoding algorithm is greater than a preset value, determining that the serial cancellation list decoding algorithm is called by the second processor; In a case where the maximum search width of the serial cancellation list decoding algorithm is less than or equal to a preset value, it is determined that the serial cancellation list decoding algorithm is called by the first processor.

15. The method according to any one of claims 5, 8, 9 and 14, characterized in that: The first processor is a central processing unit, and the second processor is a coprocessor.

16. The method according to claim 15, characterized in that The coprocessor is any one of a graphics processor, a field programmable logic gate array circuit, a digital signal processor and a specific application integrated circuit.

17. A receiving device, characterized in that: The receiving end device comprises: one or more processors and memory; The memory is used to store computer program code, which includes computer instructions. When the one or more processors execute the computer instructions, the receiving device executes the decoding method as described in any one of claims 1 to 16.

18. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a computer program, and when the computer program is executed, it implements the decoding method according to any one of claims 1 to 16.

Citation Information

Patent Citations

  • Self-adaptive continuous erasure decoding method and architecture based on polarization code

    CN106656212A

  • Adaptive polar code decoding method

    CN107659318A

  • Polar code decoding method and system of self-adaptive orderly moving pruning list

    CN112332864A

  • Decoding method and device, coding method and device, equipment and storage medium

    CN114915376A

Cited By

  • Decoding method and apparatus

    EP4787747A1

  • Decoding method and apparatus

    WO2025092076A1