Decoding method in non-finite field and communication device

CN119895818APending Publication Date: 2025-04-25HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202280100304.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-09-26
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

In existing wireless communication technology, the successive cancellation decoding method in non-finite fields is prone to error propagation during the decoding process, resulting in low decoding efficiency.

Method used

By obtaining the signal probability distribution and the first set in the receiving device, multiple candidate paths are determined to improve the possibility of retaining the correct decoding path and reduce the probability of error propagation. Matrix operations are also used to avoid recursive calculations and improve decoding. efficiency.

Benefits of technology

It effectively reduces error propagation, improves decoding efficiency and accuracy, and reduces decoding delay.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119895818A_ABST
    Figure CN119895818A_ABST
Patent Text Reader

Abstract

The invention provides a decoding method in a non-finite field and a communication device, which can solve the problem of error propagation in a decoding process so as to improve the decoding efficiency and can be applied to a communication system. The method comprises the following steps that: receiving end equipment acquires signal probability distribution and a first set; wherein the first set is used for determining the position of each to-be-recovered bit in the coded sequence, the coded sequence is a sequence obtained by coding a to-be-coded sequence, the length of the to-be-coded sequence is N, N is equal to 2n, and n is a positive integer. Then, the receiving end equipment determines X Nth candidate paths according to the signal probability distribution and the first set; the values corresponding to one or more to-be-recovered bits of different candidate paths in the X Nth candidate paths are different, X is a positive integer greater than 1 and less than or equal to M, each to-be-recovered bit in the coded sequence corresponds to M candidate values at most, and M is a positive integer greater than 1. And then, the receiving end equipment determines a decoding result according to the X Nth candidate paths.
Need to check novelty before this filing date? Find Prior Art

Description

Decoding method and communication device under non-finite field Technical Field

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

[0002] Currently, a transmitting device can use the Hadamard transform to encode a sequence to be encoded to obtain a coded sequence, and then send the coded sequence to a receiving device. The length of the sequence to be encoded is N. Accordingly, the receiving device can use a successive cancellation (SC) decoding algorithm under a non-finite field to decode the coded sequence. Specifically, when decoding the i-th position in the coded sequence, the receiving device needs to know the values ​​of the first i-1 positions in the coded sequence. Here, i is a positive integer less than or equal to N. If the i-1-th position is decoded incorrectly, the i-th position will also be decoded incorrectly, i.e., error propagation occurs. How to reduce the error propagation phenomenon in the decoding process is an urgent problem to be solved.

[0003] Summary of the Invention

[0004] This application provides a decoding method and communication device under a non-finite field, which can solve the problem of error propagation during the decoding process, thereby improving decoding efficiency. To achieve the above purpose, this application adopts the following technical solutions:

[0005] In a first aspect, a decoding method under a non-finite field is provided. The execution subject of the method can be a receiving device or a chip applied to the receiving device. The following description is based on the example of the execution subject being the receiving device. The method includes: the receiving device obtains a signal probability distribution and a first set. The first set is used to determine the position of each bit to be recovered in the encoded sequence, the encoded sequence is the sequence after the encoded sequence, and the length of the encoded sequence is N, N=2 n , n is a positive integer. The receiving device then determines X Nth candidate paths based on the signal probability distribution and the first set. Each of the X Nth candidate paths indicates the value of each position in the encoded sequence. One or more to-be-recovered bits in different candidate paths in the X Nth candidate paths correspond to different values. X is a positive integer greater than 1 and less than or equal to M. Each to-be-recovered bit in the encoded sequence corresponds to at most M candidate values. These M candidate values ​​are determined by the receiving device, and M is a positive integer greater than 1. The receiving device then determines a decoding result based on the X Nth candidate paths.

[0006] That is to say, the receiving device determines multiple Nth candidate paths. In this way, the possibility of retaining the correct decoding path increases. Correspondingly, for a certain bit to be restored, the possibility of retaining the candidate value corresponding to this position also increases, and the probability of decoding errors at this position is reduced. This also reduces the problem of error propagation caused by decoding errors at a certain position(s), thereby improving decoding efficiency.

[0007] In one possible design, the receiving device determines X N-th candidate paths according to the signal probability distribution and the first set, including: when the i-th position is the bit to be restored, the receiving device determines X N-th candidate paths according to the signal probability distribution, the first set and Y i- The kth i-1th candidate path among the i-1th candidate paths, determine Y i,k The i-th candidate path. Among them, Y i-1 Each i-1 candidate path in the i-1 candidate paths indicates the value of the first i-1 positions in the encoded sequence, Y i-1 Different i-1 candidate paths in the i-1 candidate paths have different values ​​in one or more bits to be restored. i,k Each i-th candidate path in the i-th candidate path indicates the value of the first i positions in the encoded sequence, Y i,k The value of the first i-1 position indicated by each i-th candidate path in the i-th candidate path is the same as the value of the first i-1 position indicated by the k-th i-1th candidate path, Y i,k The values ​​corresponding to the i-th position of different candidate paths in the i-th candidate path are different, i is a positive integer greater than 1 and less than or equal to N, and k is less than or equal to Y i-1 positive integer, Y i-1 is a positive integer less than or equal to M.

[0008] When i is equal to N, the receiving device will i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k Alternatively, when i is less than N, the receiving device determines X number of Nth candidate paths based on the signal probability distribution, the first set, and Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths are used to determine X N-th candidate paths.

[0009] In this way, in Y i,k When the values ​​corresponding to the i-th position of different candidate paths in the i-th candidate path are different, the receiving device retains multiple candidate values ​​of the i-th position, thereby increasing the possibility of the position being correctly decoded.

[0010] In one possible design, the receiving device is configured according to Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate path determines X N-th candidate paths, including: when the first condition is met, determining Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths all belong to X N-th candidate paths. The first condition includes: the total number of the i-th candidate paths is less than or equal to M.

[0011] That is, when the total number of the i-th candidate paths is less than or equal to M, the receiving device does not need to perform a pruning operation so that each transmission bit retains more candidate values.

[0012] In one possible design, the receiving device is configured according to Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The method comprises: determining X N-th candidate paths from the i-th candidate paths according to the path metric PM value of each i-th candidate path when the second condition is met, i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k Among the i-th candidate paths, X N-th candidate paths are determined. The second condition includes: the total number of the i-th candidate paths is greater than M.

[0013] That is, when the total number of the i-th candidate paths is greater than M, the receiving device performs a pruning operation so that the transmission bits retain values ​​with greater probability, thereby improving the accuracy of decoding.

[0014] In one possible design, the PM value of the mth i-th candidate path determined based on the kth i-1th candidate path satisfies:

[0015] PM(k+m,i)=PM(k,i-1)+lnP(y i,m |y i-1,k ,…,y 1,k )

[0016] Where PM(k+m,i) represents the PM value of the mth i-th candidate path determined based on the kth i-1th candidate path, PM(k,i-1) represents the PM value of the kth i-1th candidate path, and the value of the first i-1 positions in the encoded sequence indicated by the kth i-1th candidate path is y i-1,k ,…,y 1,k , lnP(y i,m |y i-1,k ,…,y 1,k ) represents P(yi,m |y i-1,k ,…,y 1,k ) takes the natural logarithm, P(y i,m |y i-1,k ,…,y 1,k ) indicates that the value of the first i-1 positions in the encoded sequence of the m-th candidate path is y i-1,k ,…,y 1,k When , the value of the i-th position is y i,m The probability of the i-th position in the encoded sequence is y i,m The probability of is one of the conditional probability distributions of the i-th position, and is the m-th probability in the conditional probability distribution of the i-th position arranged in descending order, where m is a positive integer less than or equal to M.

[0017] In one possible design, the PM value of the first candidate path is determined according to the conditional probability distribution of the first position in the encoded sequence.

[0018] In one possible design, the conditional probability distribution of the sth position in the encoded sequence is discrete, and the discrete conditional probability distribution includes K1 values ​​of the sth position and the probability of each of the K1 values ​​occurring, where K1 is a positive integer. Here, s is a positive integer less than or equal to N.

[0019] In one possible design, the conditional probability distribution at the s-th position in the encoded sequence is continuous. The continuous conditional probability distribution includes K2 peak points, each of which indicates a value at the s-th position and the probability of the value occurring, where K2 is a positive integer. Here, s is a positive integer less than or equal to N.

[0020] In one possible design, the conditional probability distribution of the s-th position in the encoded sequence is continuous, and the continuous conditional probability distribution includes K3 reference points in the first confidence interval, each of the K3 reference points indicates a value at the s-th position and the probability of the value occurring, where K3 is a positive integer. Here, s is a positive integer less than or equal to N.

[0021] In one possible design, the receiving device determines X N-th candidate paths according to the signal probability distribution and the first set, including: when the j-th position is a transmission bit, the receiving device determines X N-th candidate paths according to the signal probability distribution, the first set and Y j-1 The pth i-1th candidate path among the j-1th candidate paths determines the pth jth candidate path. j-1 Each j-1 candidate path in the j-1 candidate paths indicates the value of the first j-1 positions in the encoded sequence, Y j-1The values ​​of one or more to-be-restored bits are different for different j-1 candidate paths in the j-1 candidate paths. The p-th j-th candidate path indicates the values ​​of the first j positions in the encoded sequence, the values ​​of the first j-1 positions indicated by the p-th j-th candidate path are the same as the values ​​of the first j-1 positions indicated by the p-th j-1 candidate path, and are the same as the values ​​corresponding to the j-th position of the j-th candidate paths corresponding to different p, where j is a positive integer greater than 1 and less than or equal to N, and p is less than or equal to Y j-1 positive integer, Y j-1 is a positive integer less than or equal to M.

[0022] When j is equal to N, the receiving device will j-1 The j-th candidate path corresponding to each j-1-th candidate path in the j-1-th candidate path determines X N-th candidate paths. Alternatively, when j is less than N, the receiving device determines the N-th candidate path based on the signal probability distribution, the first set and Y j-1 The j-th candidate path corresponding to each j-1-th candidate path in the j-1-th candidate paths is used to determine X N-th candidate paths.

[0023] In the present application, the j-th position and the i-th position are different positions in the encoded sequence, in other words, j≠i.

[0024] That is, when the j-th position is a transmission bit, the value of the j-th position indicated by different j-th candidate paths is the same, and there is no path extension phenomenon.

[0025] In one possible design, the PM value of the p-th j-th candidate path satisfies:

[0026] PM(p,j)=PM(p,j-1)+lnP(y j |y j-1,p ,…,y 1,p )

[0027] Among them, PM(p,j) represents the PM value of the p-th j-th candidate path, PM(p,j-1) represents Y j-1 PM value of the pth j-1th candidate path among the j-1th candidate paths, Y j-1 The value of the first i-1 positions in the encoded sequence indicated by the pth j-1th candidate path in the j-1th candidate path is y j-1,p ,…,y 1,p , lnP(y j |y j-1,p ,…,y 1,p ) means (y j |y j-1,p ,…,y 1,p ) takes the natural logarithm, P(y j |y j-1,p,…,y 1,p ) indicates that the value of the first j-1 positions in the encoded sequence of the p-th candidate path is y j-1,p ,…,y 1,p When the value of the jth position is y j probability.

[0028] In one possible design, when the encoded sequence includes at least one transmission bit, the method further includes: obtaining, by the receiving device, a first sequence. The first sequence includes a value of each transmission bit in the at least one transmission bit, such that the receiving device determines a value of the transmission bit in the decoding path based on the first sequence.

[0029] In one possible design, the decoding result is a real number sequence.

[0030] In a second aspect, a decoding method under a non-finite field is provided. The execution subject of the method can be a receiving device or a chip applied to the receiving device. The following description is based on the example of the execution subject being the receiving device. The method includes: the receiving device determines the L sub-blocks corresponding to the encoded sequence based on the distribution of the transmission bits and / or the bits to be recovered in the encoded sequence. The encoded sequence is the sequence after the encoded sequence, and the length of the encoded sequence is N, where N=2 n , n and L are positive integers. Then, the receiving device uses the Lth i The Lth sub-block i Matrix, for L i Sub-blocks perform matrix operations to obtain the Lth i The decoding sequence of the sub-block. Where i is a positive integer less than or equal to L, the Lth i The number of rows and columns of the matrix is ​​based on the L i The number of positions in the sequence after encoding corresponding to the sub-block is determined, the Lth i The elements of the matrix are based on the L i The butterfly operation corresponding to the sub-block is determined. Afterwards, the receiving device determines the decoding result based on the decoding sequence of each sub-block in the L sub-blocks.

[0031] That is to say, the receiving device uses matrix operations to obtain the values ​​at different positions in the encoded sequence, without the need to sequentially calculate the probability distribution at different positions in the encoded sequence through recursive operations, avoiding the problem of large decoding delay caused by serial decoding, thereby improving decoding efficiency.

[0032] In one possible design, the L i The matrix is ​​an M×M matrix, where M is the Lth i The number of positions in the sequence after encoding corresponding to the sub-block. That is, the receiving device iThe number of sub-block positions determines the number of rows and columns of the matrix corresponding to the sub-block.

[0033] In one possible design, the L subblocks include subblocks of a first type, each of which includes one or more consecutive transmission bits in the coded sequence. And / or, the L subblocks include subblocks of a second type, each of which includes one or more consecutive bits to be recovered in the coded sequence.

[0034] In one possible design, the decoding result is a real number sequence.

[0035] In a third aspect, a communication device is provided. The communication device may be a receiving device in the first aspect or any possible design of the first aspect, or a receiving device in the second aspect or any possible design of the second aspect, or a chip that implements the functions of the receiving device. The communication device includes modules, units, or means corresponding to the above-mentioned method. The modules, units, or means may be implemented in hardware, software, or hardware executing corresponding software implementations. The hardware or software includes one or more modules or units corresponding to the above-mentioned functions.

[0036] In a fourth aspect, a communication device is provided, comprising: a processor; the processor being coupled to a memory and configured to read instructions from the memory and then execute the method described in any of the above aspects in accordance with the instructions. The communication device may be a receiving device in the first aspect or any possible design of the first aspect, or a receiving device in the second aspect or any possible design of the second aspect, or a chip that implements the functions of any of the above receiving devices.

[0037] In one possible design, the communication device described in the fourth aspect may further include a transceiver. The transceiver may be a transceiver circuit or an interface circuit. The transceiver may be used for the communication device described in the fourth aspect to communicate with other communication devices.

[0038] In a fifth aspect, a chip is provided. The chip includes processing circuitry and input / output interfaces. The input / output interfaces are used to communicate with modules outside the chip. For example, the chip may be a chip that implements the functions of a receiving device in the first aspect or any possible design of the first aspect. The processing circuit is used to execute a computer program or instructions to implement the method in the first aspect or any possible design of the first aspect. For another example, the chip may be a chip that implements the functions of a receiving device in the second aspect or any possible design of the second aspect. The processing circuit is used to execute a computer program or instructions to implement the method in the second aspect or any possible design of the second aspect.

[0039] In a sixth aspect, a computer-readable storage medium is provided, comprising: a computer program or instructions; when the computer program or instructions are run on a computer, the computer is caused to execute any one of the methods in any one of the above aspects.

[0040] In a seventh aspect, a computer program product is provided, comprising a computer program or instructions, which, when executed on a computer, causes the computer to execute any one of the methods in any one of the above aspects.

[0041] In an eighth aspect, a circuit system is provided, wherein the circuit system includes a processing circuit configured to execute any of the methods in any of the above aspects.

[0042] Among them, the technical effects brought about by any design in the third to eighth aspects can refer to the beneficial effects of the corresponding methods provided above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] FIG1 is a schematic diagram of the architecture of a communication system provided in an embodiment of the present application;

[0044] FIG2 is a schematic diagram of a basic flow of wireless communication provided by an embodiment of the present application;

[0045] FIG3 is a schematic diagram of a decoding process provided by an embodiment of the present application;

[0046] FIG4 is a schematic diagram of another decoding process provided in an embodiment of the present application;

[0047] FIG5 is a flowchart of a decoding method under a non-finite field provided by an embodiment of the present application;

[0048] FIG6 is a schematic diagram of another decoding process provided in an embodiment of the present application;

[0049] FIG7 is a schematic diagram of another decoding process provided in an embodiment of the present application;

[0050] FIG8 is a flowchart of another decoding method under a non-finite field provided by an embodiment of the present application;

[0051] FIG9 is a flowchart of another decoding method under a non-finite field provided by an embodiment of the present application;

[0052] FIG10 is a simulation result provided by an embodiment of the present application;

[0053] FIG11 is another simulation result provided by an embodiment of the present application;

[0054] FIG12 is another simulation result provided by an embodiment of the present application;

[0055] FIG13 is another simulation result provided by an embodiment of the present application;

[0056] FIG14 is a flowchart of another decoding method under a non-finite field provided in an embodiment of the present application;

[0057] FIG15 is a schematic diagram of another decoding process provided in an embodiment of the present application;

[0058] FIG16 is another simulation result provided by an embodiment of the present application;

[0059] FIG17 is a schematic structural diagram of a communication device provided in an embodiment of the present application;

[0060] FIG18 is a schematic structural diagram of another communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0061] FIG1 is a schematic diagram of the architecture of a communication system 1000 used in an embodiment of the present application. As shown in FIG1 , the communication system 1000 includes at least one network device (such as 110a and 110b in FIG1 ) and at least one terminal device (such as 120a-120j in FIG1 ). The terminal device is connected to the network device wirelessly. FIG1 is only a schematic diagram, and the communication system may also include other network devices, such as wireless relay devices and wireless backhaul devices, which are not shown in FIG1 .

[0062] A network device may be a base station, an evolved NodeB (eNodeB), a transmission reception point (TRP), a next-generation NodeB (gNB) in a fifth-generation (5G) mobile communication system, a next-generation base station in a sixth-generation (6G) mobile communication system, a base station in a future mobile communication system, or an access node in a wireless fidelity (WiFi) system. It may also be a module or unit that performs some of the functions of a base station, for example, a centralized unit (CU) or a distributed unit (DU). The CU here completes the functions of the radio resource control (RRC) protocol and the packet data convergence protocol (PDCP) of the base station, and can also complete the function of the service data adaptation protocol (SDAP); the DU completes the functions of the radio link control (RLC) layer and the medium access control (MAC) layer of the base station, and can also complete the functions of part of the physical layer or all of the physical layer. For the specific description of the above-mentioned various protocol layers, please refer to the relevant technical specifications of the 3rd Generation Partnership Project (3GPP). The network device can be a macro base station (such as 110a in Figure 1), a micro base station or an indoor station (such as 110b in Figure 1), or a relay node or a donor node, etc. The embodiments of the present application do not limit the specific technology and specific device form adopted by the network device. For the convenience of description, the following description is taken as an example.

[0063] Terminal devices may also be referred to as terminals, user equipment (UE), mobile stations, mobile terminals, etc. Terminal devices can be widely used in various scenarios, for example, device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), Internet of Things (IOT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grid, smart furniture, smart office, smart wearable, smart transportation, smart city, etc. Terminal devices may be mobile phones, tablet computers, computers with wireless transceiver functions, wearable devices, vehicles, drones, helicopters, airplanes, ships, robots, robotic arms, smart home devices, etc. The embodiments of the present application do not limit the specific technology and specific device form adopted by the terminal devices.

[0064] Network devices and terminal devices can be fixed or mobile. They can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; on water; and in the air on aircraft, balloons, and satellites. The embodiments of this application do not limit the application scenarios of network devices and terminal devices.

[0065] The roles of network devices and terminal devices can be relative. For example, the helicopter or drone 120i in Figure 1 can be configured as a mobile base station. To terminal devices 120j accessing the wireless access network via 120i, terminal device 120i is a network device. However, to network device 110a, 120i is a terminal device, meaning that communication between 110a and 120i occurs via a wireless air interface protocol. Of course, communication between 110a and 120i can also occur via a base station-to-base station interface protocol. In this case, 120i is also a network device relative to 110a. Therefore, both network devices and terminal devices can be collectively referred to as communication devices. 110a and 110b in Figure 1 can be referred to as communication devices with network device functionality, while 120a-120j in Figure 1 can be referred to as communication devices with terminal device functionality.

[0066] Network devices and terminal devices, network devices and network devices, and terminal devices and terminal devices can communicate through authorized spectrum, unauthorized spectrum, or both; can communicate through spectrum below 6 gigahertz (GHz), spectrum above 6 GHz, or spectrum below 6 GHz and spectrum above 6 GHz simultaneously. The embodiments of the present application do not limit the spectrum resources used for wireless communications.

[0067] In the embodiments of the present application, the functions of the network device may also be performed by a module (such as a chip) in the network device, or by a control subsystem that includes the network device functions. The control subsystem that includes the network device functions here may be a control center in the above-mentioned application scenarios such as smart grid, industrial control, smart transportation, and smart city. The functions of the terminal device may also be performed by a module (such as a chip or a modem) in the terminal device, or by a device that includes the terminal device functions.

[0068] Next, the basic process of wireless communication is introduced.

[0069] Figure 2 illustrates a basic wireless communication process. At the transmitting device, a signal undergoes source coding, channel coding, and modulation before being transmitted over a channel to the receiving device. At the receiving device, the signal is then demodulated, channel decoded, and finally decoded. In uplink transmission, the transmitting device is the terminal device in Figure 1, and the receiving device is the network device in Figure 1. In downlink transmission, the transmitting device is the network device in Figure 1, and the receiving device is the terminal device in Figure 1.

[0070] It should be understood that the basic process of wireless communication also includes additional processes, such as precoding and interleaving. Since these additional processes are common knowledge to those skilled in the art, they are not listed one by one.

[0071] It should be understood that the decoding method under a non-finite field in the embodiment of the present application can be applied to source decoding or channel decoding. When the decoding method under a non-finite field in the embodiment of the present application performs source decoding, the source coding can be encoded using a Hadamard transform. When the decoding method under a non-finite field in the embodiment of the present application performs channel decoding, the channel coding can be encoded using a Hadamard transform, and in addition to the Hadamard transform, other technologies still need to be used for processing to complete the channel coding.

[0072] It should be understood that the message names between the devices or the names of the parameters in the messages in the embodiment of the present application are only examples, and other names may be used in specific implementations. The embodiment of the present application does not specifically limit this.

[0073] To facilitate understanding of the embodiments of the present application, the following briefly describes the technologies involved in the embodiments of the present application. It should be understood that these descriptions are only for facilitating understanding of the embodiments of the present application and should not constitute any limitation on the present application.

[0074] 1. Non-finite domain polarization

[0075] Non-finite field polarization is a technique that generalizes polarization phenomena from the binary field to non-finite fields (such as the real or complex fields) to achieve better encoding and decoding. Furthermore, the use of successive cancellation (SC) decoding can achieve excellent decoding performance.

[0076] 2. Successive cancellation decoding (SC) decoding under non-finite fields

[0077] SC decoding in a non-finite field can be applied to SC decoding in a real field or in a complex field. In the embodiment of the present application, SC decoding in a real field is taken as an example for introduction.

[0078] Figure 3 shows an SC decoding process under a non-finite field. In Figure 3, the code length before compression is 8, and the code length after compression is 2. The 8 boxes on the far left represent the signal probability distribution corresponding to the data to be compressed, and the 8 boxes on the far right represent the output probability distribution of the data after real-domain encoding. Real-domain polarization is to use Hadamard transform to obtain the 8 real numbers on the right side of the data that obeys a certain signal probability distribution (for example, a probability distribution such as {-1, +1}). Among them, the output probability distribution of the 8 real numbers on the right is different from the signal probability distribution of the 8 real numbers on the left. In Figure 3, the output probability distributions of the 8 real numbers on the right are different from each other, and the 8 real numbers on the right have different entropies. Generally speaking, the higher the position, the higher the conditional entropy and the greater the uncertainty; the lower the position, the lower the conditional entropy and the smaller the uncertainty.

[0079] The core idea of ​​using real-domain polarization for compressed sensing is to set the data on the high-entropy bits as the transmission bits and place the received (or observed) data; set the data on the low-entropy bits as the bits to be recovered, and obtain the data on the low-entropy bits through SC decoding under a non-finite field.

[0080] Specifically, in the SC decoding process under a non-finite field, the input of the SC decoding under a non-finite field includes: the signal probability distribution of N positions (such as N=8 in Figure 3) on the left (such as the probability distribution of {+1, -1} in Figure 3), and the data at the (NK) known high-entropy positions on the right (such as the value of 0 at the first position and the value of 0 at the second position in Figure 3). The output of the SC decoding under a non-finite field includes: data at K low-entropy positions. Wherein, N is the encoding code length, K is the number of low-entropy bits, and 1≤K≤N.

[0081] In order to obtain the real number data on the low-entropy bits (such as positions 3 to 8 in Figure 3), it is necessary to recursively calculate the data on the i-th (i = 1, 2, ..., N) position. Specifically, when decoding the i-th position, it is necessary to know the value of the previous (i-1) positions. If the i-th position is a transmission bit, the value of this position is directly set to the observed value; if the i-th position is a bit to be recovered, the output probability distribution of this position is calculated according to the recursive operation rule, and then the value with the highest output probability at this position is taken as the decoding result for this position. The decoding starts from i = 1 and ends at i = N. After obtaining the data on all low-entropy bits, combined with the known data on the (NK) high-entropy bits, the data on the rightmost position can be obtained. After the inverse Hadamard transform, the leftmost real number can be obtained, thus completing the decoding.

[0082] For example, in Figure 3, taking the third position of the encoded sequence as an example, the conditional probability distribution of the third position includes: P(-2) = 0.06, P(-1) = 0.25, P(0) = 0.37, P(+1) = 0.25, P(+2) = 0.06. In this case, the maximum probability is 0.37, and the value of the third position in the encoded sequence is 0.

[0083] The following describes the decoding process using discrete values ​​as an example:

[0084] Figure 4 illustrates a decoding process for a non-finite field. In Figure 4, the code length of the sequence to be encoded is N = 4. x0, x1, x2, and x3 are the sequence to be encoded and are also the values ​​at positions 1, 2, 3, and 4 in the first layer of the encoding network. y0, y1, y2, and y3 are the values ​​at positions 1, 2, 3, and 4 in the second layer of the encoding network. z0 and z2 are the values ​​of the transmitted bits, and z1 and z3 are the values ​​of the bits to be recovered. z0, z1, z2, and z3 are also the values ​​at positions 1, 2, 3, and 4 in the third layer of the encoding network.

[0085] The input of the receiving device includes the following three items:

[0086] The first item is the first sequence [z0, z2]. In Figure 4, z0=0, z2=2.

[0087] The second item is the signal probability distribution. In Figure 4, the signal probability distribution of x0, x1, x2, and x3 is P(-1) = 1 / 4, P(1) = 3 / 4).

[0088] The third item is the position number of the transmission bit {0,2}.

[0089] The output of the receiving device includes:

[0090] First, we introduce the f operation and g operation applicable to discrete values. Among them, the f operation is used to perform convolution operations, and the g operation is used to perform conditional probability operations. The introduction of the f operation and g operation is as follows:

[0091] 1. f operation

[0092] The inputs to the f operation include the following two items:

[0093] The first item, A~P,P(a i )=p i ,i=1,...,I; A represents the set of the first variable, P represents the probability distribution of the first variable, a i represents the first variable i in A, p i Indicates that the first variable of the i-th is a i The probability of , I represents the number of the first variable.

[0094] The second item, B~Q,P(b j )=q j ,j=1,...,J; B represents the set of the second variable, Q represents the probability distribution of the second variable, b j represents the j-th second variable in B, q j Indicates that the jth second variable is b j The probability of , J represents the number of second variables.

[0095] The outputs of the f operation include:

[0096] C~F,F(c k )=f k ,k=1,...,K; C represents the set of the third variable, F represents the probability distribution of the third variable, c k represents the kth third variable in C, f k Indicates that the kth third variable is c k , K represents the number of third variables, and the values ​​of K third variables are different from each other.

[0097] Among them, c k is one of the IxJ values, where IxJ values ​​are obtained when i=1,...,I ​​and j=1,...,J are traversed. i,j The value of f i,j =p i q j , f i,j Indicates c i,j The probability of occurrence. k When L values ​​are the same as L values ​​in IxJ values, f k It is equal to the sum of the occurrence probabilities of L values, where L is a positive integer less than or equal to IxJ.

[0098] In other words, the operation f includes steps a1 and b1:

[0099] Step a1: traverse i=1,...,I,j=1,...,J and calculate the following two items: f i,j =p i q j .

[0100] Step a2, for different i,j, calculate c i,j May be the same, will take the same value c i,j Merge. Merge can be understood as combining c with the same value i,j The corresponding f i,j Add up.

[0101] 2. g operation

[0102] The input to the g operation includes the following four items:

[0103] The first item, A~P,P(a i )=p i ,i=1,...,I; A represents the set of the first variable, P represents the probability distribution of the first variable, a i represents the first variable i in A, p i Indicates that the first variable of the i-th is a i The probability of , I represents the number of the first variable.

[0104] The second item, B~Q,P(b j )=q j ,j=1,...,J; B represents the set of the second variable, Q represents the probability distribution of the second variable, b j represents the j-th second variable in B, q j Indicates that the jth second variable is b j The probability of , J represents the number of second variables.

[0105] The third item, C represents a set of third variables, and μ represents a first value of the third variable.

[0106] The fourth term, P(μ)=f; P(μ) represents the value of the probability distribution of the third variable at μ.

[0107] The outputs of the g operation include:

[0108] exist The conditional probability distribution G,G(d m )=g m ,g m =p i q j / f,m=1,...,M, D represents the set of the fourth variable, G represents the probability distribution of the fourth variable, d m represents the mth fourth variable in D, g m Indicates that the mth fourth variable is d m The probability of , M represents the number of the fourth variable.

[0109] In other words, the operation g includes: in the process of traversing i=1,...,I,j=1,...,J, if Then calculate the following two items: g m =p i q j / f.

[0110] Among them, the introduction of the above-mentioned first to fourth variables can be found in the following descriptions of S11 to S18, which will not be repeated here.

[0111] Next, the steps in the decoding process shown in FIG. 4 (hereinafter referred to as S11 to S18) are introduced:

[0112] S11, the receiving device performs f operation.

[0113] Exemplarily, the receiving device performs an f operation, where the input of the f operation includes the probability distribution of a first variable (the value x0 at the first position in the first layer of the encoding network) and the probability distribution of a second variable (the value x2 at the third position in the first layer). The output of the f operation includes the probability distribution of a third variable (the value y0 at the first position in the second layer).

[0114] In S11, the inputs to the f operation include the following two items:

[0115] The first term, x0~P,P(a i )=p i ,i=1...I.

[0116] Specifically, the probability that x0 is -1 is 1 / 4, and the probability that x0 is 1 is 3 / 4.

[0117] For example, it can be expressed as: a1 = -1, a2 = 1.

[0118] p1=1 / 4,p2=3 / 4.

[0119] The second term, x2~Q,P(b j )=q j ,j=1...J.

[0120] Specifically, the probability that x2 is -1 is 1 / 4, and the probability that x2 is 1 is 3 / 4.

[0121] For example, it can be written as: b1 = -1, b2 = 1.

[0122] q1=1 / 4,q2=3 / 4.

[0123] In S11, the output of the f operation includes: The conditional probability distribution F.

[0124] Specifically, in the process of traversing i=1...I=2, j=1...J=2, the following two items are calculated: f ij =p i q j .

[0125] For example, it can be written as: c 12 =0,c 21 =0,

[0126]

[0127] After merging, it can be recorded as: c2=0,

[0128]

[0129] In S11, the output of the f operation can be recorded as: y0~F,P(c k )=f k ,k=1,...,K,K=3.

[0130] S12, the receiving device performs f operation.

[0131] Exemplarily, the receiving device performs an f operation, where the input of the f operation includes the probability distribution of a first variable (the value x1 at the second position in the first layer of the encoding network) and the probability distribution of a second variable (the value x3 at the fourth position in the first layer). The output of the f operation includes the probability distribution of a third variable (the value y1 at the second position in the second layer).

[0132] In S12, the inputs to the f operation include the following two items:

[0133] The first term, x1~P,P(a i )=p i ,i=1...I.

[0134] Specifically, the probability that x1 is -1 is 1 / 4, and the probability that x1 is 1 is 3 / 4.

[0135] For example, it can be expressed as: a1 = -1, a2 = 1.

[0136] p1=1 / 4,p2=3 / 4.

[0137] The second term, x3~Q,P(b j )=q j ,j=1...J.

[0138] Specifically, the probability that x3 is -1 is 1 / 4, and the probability that x3 is 1 is 3 / 4.

[0139] For example, it can be written as: b1 = -1, b2 = 1.

[0140] q1=1 / 4,q2=3 / 4.

[0141] In S12, the output of the f operation includes: The conditional probability distribution F.

[0142] Specifically, in the process of traversing i=1...I=2, j=1...J=2, the following two items are calculated: f ij =p i q j .

[0143] For example, it can be written as: c 12 =0,c 21 =0,

[0144]

[0145] After merging, it can be recorded as: c2=0,

[0146]

[0147] In S12, the output of the f operation can be recorded as: y1~F,P(c k )=f k ,k=1,...,K,K=3.

[0148] S13, the receiving device performs f operation.

[0149] Exemplarily, the receiving device performs an f operation, where the input of the f operation includes the probability distribution of a first variable (the value y0 at the first position in the second layer of the encoding network) and the probability distribution of a second variable (the value y1 at the second position in the second layer). The output of the f operation includes the probability distribution of a third variable (the value z0 at the first position in the third layer).

[0150] In S13, the inputs to the operation f include the following two items:

[0151] The first term, y0~P,P(a i )=p i ,i=1...I.

[0152] Specifically, y0 is The probability of y0 being 0 is 1 / 16, the probability of y0 being 0 is 6 / 16, and y0 is The probability is 9 / 16.

[0153] For example, it can be written as: a2=0,

[0154]

[0155] The second term, y1~Q,P(b j )=q j ,j=1...J.

[0156] Specifically, y1 is The probability of y1 being 0 is 1 / 16, the probability of y1 being 0 is 6 / 16, and y1 is The probability is 9 / 16.

[0157] For example, it can be written as: b2=0,

[0158]

[0159] In S13, the output of the f operation includes: The conditional probability distribution F.

[0160] Specifically, in the process of traversing i=1...I=3, j=1...J=3, the following two items are calculated: f ij =p i q j .

[0161] For example, it can be written as:

[0162] c 11 =-2,c 12 =-1,c 13 =0,c 21 =-1,c 22 =0,c 23 =1,c 31 =0,c 32 =1,c 33 =2.

[0163]

[0164] After merging, it can be recorded as: c1 = -2, c2 = -1, c3 = 0, c4 = 1, c5 = 2.

[0165]

[0166] In S13, the output of the f operation can be recorded as: z0~F,P(c k )=f k ,k=1,...,K,K=5.

[0167] Since z0=0 is known,

[0168] S14: The receiving device performs g operation.

[0169] Exemplarily, the receiving device performs a g operation, the input of which includes the probability distribution of the first variable (the value y0 of the first position in the second layer of the coding network), the probability distribution of the second variable (the value y1 of the second position in the second layer), the probability distribution of the third variable (the value z0 of the first position in the third layer), and the decoded value of z0. The output of the g operation includes the fourth variable (the value z1 at the second position in the third layer) in The conditional probability distribution at .

[0170] In S14, the input of the g operation includes the following four items:

[0171] The first term, y0~P,P(a i )=p i ,i=1...I.

[0172] Specifically, y0 is The probability of y0 being 0 is 1 / 16, the probability of y0 being 0 is 6 / 16, and y0 is The probability is 9 / 16.

[0173] For example, it can be written as: a2=0,

[0174]

[0175] The second term, y1~Q,P(b j )=q j ,j=1...J.

[0176] Specifically, y1 is The probability of y2 being 0 is 6 / 16, and the probability of y1 being The probability is 9 / 16.

[0177] For example, it can be written as: b2=0,

[0178]

[0179] The third and fourth items,

[0180] In S14, the output of the g operation includes: Given the conditional probability distribution G where z0=0.

[0181] Specifically, in the process of traversing i=1...I=3,j=1...J=3, if Then calculate the following two items: g m =p i q j / f.

[0182] For example, it can be recorded as: d1 = -2, d2 = 0, d3 = 2.

[0183]

[0184] In S14, the output of the g operation can be recorded as: z1~G,P(d m )=g m ,m=1,...,M,M=3.

[0185] Since z1 is to be restored, That is to say, is the maximum g m The corresponding value d m .

[0186] because so,

[0187] S15, the receiving device performs g calculation.

[0188] Exemplarily, the receiving device performs a g operation, the input of which includes the probability distribution of the first variable (the value x0 of the first position in the first layer of the coding network), the probability distribution of the second variable (the value x2 of the third position in the first layer), the probability distribution of the third variable (the value y0 of the first position in the second layer), and the decoded value of y0. The output of the g operation includes the fourth variable (the value y2 at the third position in the second layer) in The conditional probability distribution at .

[0189] In S15, the input of the g operation includes the following four items:

[0190] The first term, x0~P,P(a i )=p i ,i=1...I.

[0191] Specifically, the probability that x0 is -1 is 1 / 4, and the probability that x0 is 1 is 3 / 4.

[0192] For example, it can be expressed as: a1 = -1, a2 = 1.

[0193] p1=1 / 4,p2=3 / 4.

[0194] The second term, x2~Q,P(b j )=q j ,j=1...J.

[0195] Specifically, the probability that x2 is -1 is 1 / 4, and the probability that x2 is 1 is 3 / 4.

[0196] For example, it can be written as: b1 = -1, b2 = 1.

[0197] q1=1 / 4,q2=3 / 4.

[0198] The third and fourth items,

[0199] In S15, the output of the g operation includes: In the known The conditional probability distribution G.

[0200] Specifically, in the process of traversing i=1...I=2,j=1...J=2, if Then calculate the following two items: g m =p i q j / f.

[0201] For example, it can be written as:

[0202]

[0203] In S15, the output of the g operation can be recorded as: y2~G,P(d m )=g m ,m=1,...,M,M=2.

[0204] S16: The receiving device performs g operation.

[0205] Exemplarily, the receiving device performs a g operation, the input of which includes the probability distribution of the first variable (the value x1 at the second position in the first layer of the coding network), the probability distribution of the second variable (the value x3 at the fourth position in the first layer), the probability distribution of the third variable (the value y1 at the second position in the second layer), and the decoded value of y1. The output of the g operation includes the fourth variable (the value y3 at the fourth position in the second layer) in The conditional probability distribution at .

[0206] In S16, the inputs to the g operation include the following four items:

[0207] The first term, x1~P,P(a i )=p i ,i=1...I.

[0208] Specifically, the probability that x1 is -1 is 1 / 4, and the probability that x1 is 1 is 3 / 4.

[0209] For example, it can be expressed as: a1 = -1, a2 = 1.

[0210] p1=1 / 4,p2=3 / 4.

[0211] The second term, x3~Q,P(b j )=q j ,j=1...J.

[0212] Specifically, the probability that x3 is -1 is 1 / 4, and the probability that x3 is 1 is 3 / 4.

[0213] For example, it can be written as: b1 = -1, b2 = 1.

[0214] q1=1 / 4,q2=3 / 4.

[0215] The third and fourth items,

[0216] In S16, the output of the g operation includes: In the known The conditional probability distribution G.

[0217] Specifically, in the process of traversing i=1...I=2,j=1...J=2, if Then calculate the following two items: g m =p i q j / f.

[0218] For example, it can be written as:

[0219]

[0220] In S16, the output of the g operation can be recorded as: y3~G,P(d m )=g m ,m=1,...,M,M=2.

[0221] S17, the receiving device performs f operation.

[0222] Exemplarily, the receiving device performs the f operation, the input of the f operation includes the probability distribution of the first variable (the value y2 of the third position in the second layer of the coding network), the probability distribution of the second variable (the value y3 of the fourth position in the second layer), and the output of the f operation includes the probability distribution of the third variable (the value z2 of the third position in the third layer).

[0223] In S17, the inputs to the f operation include the following two items:

[0224] The first term, y2~P,P(a i )=p i ,i=1...I.

[0225] Specifically, y2 is The probability of y2 is 1 / 2, The probability is 1 / 2.

[0226] For example, it can be written as:

[0227] p1=1 / 2,p2=1 / 2.

[0228] The second term, y3~Q,P(b j )=q j ,j=1...J.

[0229] Specifically, y3 is The probability of y1 is 1 / 2, The probability is 1 / 2.

[0230] For example, it can be written as:

[0231] q1=1 / 2,q2=1 / 2.

[0232] In S17, the output of the f operation includes: The conditional probability distribution F.

[0233] Specifically, in the process of traversing i=1...I=2, j=1...J=2, the following two items are calculated: f ij =p i q j .

[0234] For example, it can be written as: c 12 =0,c 21 =0,

[0235]

[0236] After merging, it can be recorded as: c2=0,

[0237]

[0238] In S17, the output of the f operation can be recorded as: z2~F,P(c k )=f k ,k=1,...,K,K=3.

[0239] Since z2=2,

[0240] S18, the receiving device performs g operation.

[0241] Exemplarily, the receiving device performs a g operation, the input of which includes the probability distribution of the first variable (the value y2 of the third position in the second layer of the coding network), the probability distribution of the second variable (the value y3 of the fourth position in the second layer), the probability distribution of the third variable (the value z2 of the third position in the third layer), and the decoded value of z2. The output of the g operation includes the fourth variable (the value z3 at the fourth position in the third layer) in The conditional probability distribution at .

[0242] In S18, the input of the g operation includes the following four items:

[0243] The first term, y2~P,P(a i )=p i ,i=1...I.

[0244] Specifically, y2 is The probability of y2 is 1 / 2, The probability is 1 / 2.

[0245] For example, it can be written as:

[0246] p1=1 / 2,p2=1 / 2.

[0247] The second term, y3~Q,P(b j )=q j ,j=1...J.

[0248] Specifically, y3 is The probability of y2 is 1 / 2, The probability is 1 / 2.

[0249] The third and fourth items,

[0250] In S18, the output of the g operation includes: In the known The conditional probability distribution G.

[0251] Specifically, in the process of traversing i=1...I=2,j=1...J=2, if Then calculate the following two items: g m =p i q j / f.

[0252] For example, it can be recorded as: d1 = 0.

[0253] g1=1.

[0254] In S18, the output of the g operation can be recorded as: z3~G,P(d m )=g m ,m=1,...,M,M=1.

[0255] Since z3 is to be restored, That is to say, is the maximum g m The corresponding value d m .

[0256] After the above S11 to S18, Calculate:

[0257] Depend on Calculate:

[0258] Depend on Calculate:

[0259] In this way, the receiving device obtains the decoding result

[0260] From the above process, it can be seen that if the decoding error occurs at the i-th position, the decoding error will also occur at the i+1-th position, causing error propagation.

[0261] In view of this, the embodiment of the present application provides a decoding method under a non-finite field, which can be applied to the communication system of Figure 1. In the embodiment of the present application, the receiving device obtains the signal probability distribution and the first set. The first set is used to determine the position of each bit to be recovered in the coded sequence. The coded sequence is the sequence after the coded sequence is coded. The length of the coded sequence is N, N = 2 n , n is a positive integer. Then, the receiving device determines X N-th candidate paths based on the signal probability distribution and the first set. Each candidate path in the X N-th candidate paths indicates the value of each position in the encoded sequence. The values ​​corresponding to one or more to-be-recovered bits of different candidate paths in the X N-th candidate paths are different. X is a positive integer greater than 1 and less than or equal to M. M indicates the maximum number of values ​​corresponding to each to-be-recovered bit in the encoded sequence. M is a positive integer greater than 1. Afterwards, the receiving device determines the decoding result based on the X N-th candidate paths. In other words, the receiving device determines multiple N-th candidate paths. In this way, the possibility of retaining the correct path is increased, which effectively reduces the problem of error propagation caused by decoding errors at certain positions (some positions).

[0262] In the embodiment of the present application, the sequence to be encoded refers to the sequence before the transmitting device performs encoding. The length of the sequence to be encoded is N, where N=2 n , n is a positive integer. The encoded sequence refers to the sequence obtained after the transmitting device encodes the sequence to be encoded. The values ​​of the transmission bits in the encoded sequence constitute the first sequence. In some embodiments, the transmitting device transmits the encoded sequence to the receiving device, so that the receiving device determines the first sequence based on the encoded sequence, then determines a decoding path based on the first sequence, and then determines a decoding result based on the decoding path.

[0263] 5 to 13 , a decoding method 500 under a non-finite field according to an embodiment of the present application is described in detail. The decoding method 500 under a non-finite field according to an embodiment of the present application includes the following steps:

[0264] S501: A receiving device obtains a signal probability distribution and a first set.

[0265] In the uplink transmission, the receiving device is the network device in Figure 1. In the downlink transmission, the receiving device is the terminal device in Figure 1.

[0266] The signal probability distribution can be understood as the signal probability distribution of each position in the N positions of the sequence to be encoded. n , n is a positive integer. For example, N = 2, 4, 8, or 16.

[0267] Exemplarily, taking FIG6 as an example, the signal probability distribution includes: X~[-1 +1; 0.5 0.5], that is, the probability that the value of each position shown by the solid line box on the left side of FIG6 is -1 is 0.5, and the probability that the value of each position is +1 is 0.5.

[0268] The first set is used to determine the position of each bit to be restored in the encoded sequence. The number of bits to be restored in the encoded sequence is one or more. The first set is introduced below through three examples (Examples 1 to 3 below):

[0269] Example 1: The first set indicates the position of each to-be-recovered bit in the encoded sequence.

[0270] Specifically, when the coded sequence includes one or more bits to be restored, or when the coded sequence includes one or more bits to be restored and one or more transmission bits, the first set indicates the position of each bit to be restored in the coded sequence.

[0271] Exemplarily, taking FIG. 6 as an example, the first set indicates that the 3rd to 8th positions in the encoded sequence are bits to be restored, as shown by the dotted box on the right side of FIG. 6 .

[0272] Example 2: The first set indicates the position of each transmitted bit in the encoded sequence. Accordingly, the receiving device can also determine the position of each to-be-recovered bit in the encoded sequence.

[0273] Specifically, when the encoded sequence includes one or more bits to be recovered and one or more transmission bits, the first set indicates the position of each transmission bit in the encoded sequence, so that the receiving device determines the position of each bit to be recovered in the encoded sequence.

[0274] For example, using FIG6 as an example, the first set indicates that the first and second positions in the encoded sequence are transmission bits, as shown in the solid-line box on the right side of FIG6 . Accordingly, the receiving device can also determine that the remaining positions in the encoded sequence (such as the third to eighth positions on the right side of FIG6 ) are bits to be recovered.

[0275] Optionally, in S501, the signal probability distribution and the first set may be preconfigured.

[0276] It should be understood that, when the encoded sequence includes one or more transmission bits, the decoding method 500 under a non-finite field in the embodiment of the present application includes S502a, S502b, and S502c:

[0277] S502a: The transmitting device encodes the sequence to be encoded to obtain an encoded sequence.

[0278] In the uplink transmission, the originating device is the terminal device in Figure 1. In the downlink transmission, the originating device is the network device in Figure 1.

[0279] Among them, the length of the sequence to be encoded is N, N=2 n , n is a positive integer. For example, N = 2, 4, 8, or 16. Taking Figure 4 as an example, the sequence to be encoded includes

[0280] Exemplarily, the transmitting device performs a Hadamard transform on the sequence to be encoded to obtain a coded sequence, wherein the coded sequence includes N1 transmission bits and N2 bits to be restored, where N=N1+N2, where N1 and N2 are integers.

[0281] It is easy to understand that in the embodiment of the present application, in the encoded sequence, the reliability of the transmission bit is lower than the reliability of the bit to be restored, and the position before the first bit to be restored in the encoded sequence is the transmission bit.

[0282] Taking Figure 4 as an example, the encoded sequence includes That is, the encoded sequence in Figure 4 has four positions, numbered 0 through 3. The value at position 0 is z0, the value at position 1 is z1, and the values ​​for the other positions can be deduced similarly and are not further described. In the encoded sequence in Figure 4, the number of transmitted bits is two, namely positions 0 and 2. In the encoded sequence in Figure 4, the number of bits to be recovered is two, namely positions 1 and 3.

[0283] S502b: The transmitting device sends the coded sequence to the receiving device. Correspondingly, the receiving device receives the coded sequence from the transmitting device.

[0284] For example, the coded sequence is sent by the transmitting device after coding and modulation, and is transmitted to the receiving device through a channel. Correspondingly, the receiving device obtains the coded sequence through demodulation.

[0285] It is easy to understand that the processing that the coded sequence undergoes before transmission over the channel, such as rate matching, precoding, interleaving, modulation, etc., is common knowledge to those skilled in the art and will not be listed one by one. In the embodiments of this application, the transmission of the coded sequence is used as an example for description, which should not be construed as limiting the embodiments of this application.

[0286] Illustratively, in uplink transmission, the transmitting device is the terminal device in Figure 1 and the receiving device is the network device in Figure 1. In downlink transmission, the transmitting device is the network device in Figure 1 and the receiving device is the terminal device in Figure 1.

[0287] S502c: The receiving device determines a first sequence according to the received encoded sequence.

[0288] The first sequence includes the value of each transmission bit in the coded sequence. The coded sequence includes N1 transmission bits, and accordingly, the length of the first sequence is N1.

[0289] Taking FIG4 as an example, the first sequence includes [z0, z2]. In other words, the first sequence includes the values ​​of the two transmission bits in the encoded sequence.

[0290] For example, taking FIG6 as an example, the originating device treats the coding sequence (such as ) is encoded, such as by performing a Hadamard transform, to obtain an encoded sequence. In the encoded sequence, the box containing the letter F represents the transmitted bit, and the box containing the letter I represents the bit to be recovered. Accordingly, the first sequence includes u1u2. When the values ​​of the first and second positions in the encoded sequence are 0, the first sequence is 00.

[0291] For the receiving device, the receiving device executes S503 after executing S502c, or, in a case where the encoded sequence does not include a transmission bit, after the receiving device obtains the signal probability distribution and the first set, the receiving device executes S503:

[0292] S503: The receiving device determines X Nth candidate paths according to the signal probability distribution and the first set.

[0293] Each candidate path in the X N-th candidate paths indicates the value of each position in the encoded sequence.

[0294] In the case where the encoded sequence includes at least one to-be-restored bit, the values ​​corresponding to the one or more to-be-restored bits of different candidate paths among the X N-th candidate paths are different.

[0295] Optionally, when the encoded sequence further includes one or more transmission bits, the values ​​corresponding to the same transmission bits of different candidate paths among the X N-th candidate paths are the same.

[0296] For example, taking Figure 6 as an example, the first and second positions in the encoded sequence are transmission bits, and the third to eighth positions in the encoded sequence are bits to be restored. In the case of X=2, the value indicated by one of the X(X=2) N-th candidate paths is as follows: 00110011, which can be understood as the values ​​of the first, second, fifth, and sixth positions in the encoded sequence are 0, and the values ​​of the third, fourth, seventh, and eighth positions in the encoded sequence are 1. The value indicated by another of the X(X=2) N-th candidate paths is as follows: 00111111, which can be understood as the values ​​of the first and second positions in the encoded sequence are 0, and the values ​​of the third, fourth, fifth, sixth, seventh, and eighth positions in the encoded sequence are 1.

[0297] As can be seen from the above example, the 5th and 6th positions in the coded sequence are bits to be recovered. The values ​​corresponding to the 5th position of the two candidate path indications are different, and the values ​​corresponding to the 6th position of the two candidate path indications are also different. The 1st and 2nd positions in the coded sequence are bits to be transmitted. The values ​​corresponding to the 1st position of the two candidate path indications are the same, and the values ​​corresponding to the 2nd position of the two candidate path indications are also the same.

[0298] Where X is a positive integer greater than 1 and less than or equal to M. Each bit to be recovered in the encoded sequence corresponds to at most M candidate values. The M candidate values ​​are determined by the receiving device, and M is a positive integer greater than 1. M can be a preconfigured value, such as 3.

[0299] In some embodiments, the implementation process of S503 is introduced as follows:

[0300] To more clearly describe the implementation process of S503, the conditional probability distribution of each position in the encoded sequence is first described, as illustrated in the following three examples (Examples 1 to 3):

[0301] In Example 1, the conditional probability distribution at the s-th position in the encoded sequence is discrete. The discrete conditional probability distribution includes K1 values ​​at the s-th position and the probability of each of the K1 values ​​occurring, where K1 is a positive integer and s is a positive integer less than or equal to N. For example, the process of determining the conditional probability distribution at each position in the encoded sequence can be found in the introduction to Figure 3 and is not further described here.

[0302] In Example 2, the conditional probability distribution of the s-th position in the encoded sequence is continuous. The continuous conditional probability distribution includes K2 peak points, each of which indicates a value at the s-th position and the probability of the value occurring. K2 is a positive integer, and s is a positive integer less than or equal to N. The value indicated by each peak point can be understood as the value with the highest probability at the s-th position in the local range.

[0303] Example 3: The conditional probability distribution of the s-th position in the encoded sequence is continuous, and the continuous conditional probability distribution includes K3 reference points in a first confidence interval, each of the K3 reference points indicates a value at the s-th position and a probability of the value occurring, K3 is a positive integer, and s is a positive integer less than or equal to N. The first confidence interval can be determined according to the 3σ criterion (Laida criterion).

[0304] It is easy to understand that in Examples 1 to 3 above, s is a positive integer ranging from 1 to N. That is, the conditional probability distribution of each position in the encoded sequence is discrete, satisfying Example 1. The conditional probability distribution of each position in the encoded sequence is continuous, satisfying Example 2. Alternatively, the conditional probability distribution of each position in the encoded sequence is continuous, satisfying Example 3.

[0305] It should be understood that the conditional probability distribution for each position in the encoded sequence is determined by the receiving device based on the signal probability distribution and the first set. When the signal takes discrete values, the process of determining the conditional probability distribution for each position can be found in the description of FIG3 and will not be repeated here.

[0306] Next, let’s introduce the implementation process of S503:

[0307] For the first position in the encoded sequence, the value of this position is described as follows:

[0308] If the position is a transmission bit, the value of the position is the same as the value of the first transmission bit in the first sequence. For example, in Figure 6, the value of the first transmission bit in the first sequence is 0, and accordingly, the value of the first position in the encoded sequence is 0.

[0309] Accordingly, the first candidate path indicates the value of the first position in the encoded sequence. The PM value of the first candidate path is determined according to the conditional probability distribution of the first position in the encoded sequence.

[0310] Exemplarily, referring to FIG6 , the first position is the transmission position, and the PM value of the first candidate path is {ln 0.195}.

[0311] When the position is a bit to be restored, the value of the position is determined based on the conditional probability distribution of the first position in the encoded sequence. For example, the conditional probability distribution of the first position in the encoded sequence includes: P(-2) = 1 / 8, P(-1) = 1 / 8, P(0) = 1 / 4, P(+1) = 1 / 2. When M is 3, that is, each bit to be restored in the encoded sequence retains a maximum of 3 values, the values ​​of the first position in the encoded sequence include: {-1, 0, +1}.

[0312] Correspondingly, the first candidate path indicates the value of the first position in the encoded sequence. The PM value of the first candidate path is as follows:

[0313] The PM value of the first candidate path is determined based on the conditional probability distribution of the first position in the encoded sequence. For example, let Y1 be the total number of first candidate paths. The PM value of each of the Y1 first candidate paths is equal to a probability, and this probability is one of the first M values ​​in the conditional probability distribution of the first position in the encoded sequence, arranged from largest to smallest. In other words, the PM value of each of the Y1 first candidate paths is equal to a probability, and this probability is one of the last M values ​​in the conditional probability distribution of the first position in the encoded sequence, arranged from smallest to largest.

[0314] For example, still taking the case where the value of the first position in the encoded sequence includes {-1, 0, +1}, when the value of the first position in the encoded sequence is -1, the PM value of the first candidate path is 1 / 8. When the value of the first position in the encoded sequence is 0, the PM value of the first candidate path is 1 / 4. When the value of the first position in the encoded sequence is +1, the PM value of the first candidate path is 1 / 2.

[0315] For the position after the first position in the encoded sequence, such as the i-th position, as shown in Figure 7, the receiving device executes S5031 and S5032a, or the receiving device executes S5031 and S5032b. Where i is a positive integer greater than 1 and less than or equal to N. In the process of determining the value of the i-th position in the encoded sequence, the candidate path determined by the receiving device is described as the i-th candidate path. And the number of i-th candidate paths retained is recorded as Y i The descriptions of S5031, S5032a and S5032b are as follows:

[0316] S5031, the receiving device calculates the signal probability distribution, the first set and Y i-1 The kth i-1th candidate path among the i-1th candidate paths, determine Y i,k The i-th candidate path.

[0317] Among them, the signal probability distribution and the first set in S5031 can be found in the introduction of S501, and will not be repeated here.

[0318] The introduction of the i-1 candidate path is as follows: The number of i-1 candidate paths is Y i-1 Y i-1 is a positive integer less than or equal to M.

[0319] In the embodiment of the present application, Y i-1 Each i-1 candidate path in the i-1 candidate paths indicates the value of the first i-1 positions in the coded sequence. In the case where the first i-1 positions in the coded sequence include one or more bits to be restored, Y i-1 Different i-1 candidate paths in the i-1 candidate paths have different values ​​of one or more bits to be restored. And / or, in the case where the first i-1 positions in the encoded sequence include one or more transmission bits, Y i-1 Different (i-1)-th candidate paths in the (i-1)-th candidate paths have the same value at the same transmission bit.

[0320] For example, still taking FIG6 as an example, the first and second positions in the encoded sequence are transmission bits, and the third to eighth positions in the encoded sequence are bits to be restored. i-1 = 2, taking the fifth candidate path as an example, the value indicated by one fifth candidate path is as follows: 00110, which can be understood as: the values ​​at the first, second, and fifth positions in the encoded sequence are 0, and the values ​​at the third and fourth positions in the encoded sequence are 1. The value indicated by another fifth candidate path is as follows: 00111, which can be understood as: the values ​​at the first and second positions in the encoded sequence are 0, and the values ​​at the third, fourth, and fifth positions in the encoded sequence are 1.

[0321] It can be seen from the above example that the fifth position in the encoded sequence is a bit to be restored, and the values ​​corresponding to the fifth positions indicated by the two candidate paths are different.

[0322] The first and second positions in the encoded sequence are transmission bits. The values ​​corresponding to the first positions indicated by the two candidate paths are the same, and the values ​​corresponding to the second positions indicated by the two candidate paths are also the same.

[0323] The following describes S5031 in two scenarios (Case 1 and Case 2):

[0324] Case 1: When the i-th position in the encoded sequence is a transmission bit, Y i,k is equal to 1. It can be understood that the i-th candidate path determined in S5031 is the k-th i-th candidate path.

[0325] In case 1, the introduction of the k-th i-th candidate path is as follows:

[0326] The kth i-th candidate path indicates the value of the first i positions in the encoded sequence, and the value of the first i-1 positions indicated by the kth i-th candidate path is the same as the value of the first i-1 positions indicated by the kth i-1th candidate path. In the case of different k, the value corresponding to the i-th position of the i-th candidate path corresponding to different k is the same, and k is less than or equal to Y i-1 A positive integer.

[0327] It's easy to understand that in Case 1, the i-th position in the encoded sequence is a transmitted bit, and its value is determined by the value received by the receiving device. That is, each i-th candidate path has a value in the i-th position that is the same as the value in the i-th position in the first sequence. Accordingly, the number of i-1 candidate paths is the same as the number of i-th candidate paths, and there is no path expansion.

[0328] For example, using FIG8 as an example, the first and second positions in the encoded sequence are transmission bits. Taking the first and second candidate paths as examples, the number of first candidate paths (used to indicate the value of the first position in the encoded sequence) is 1. The number of second candidate paths (used to indicate the value of the first and second positions in the encoded sequence) is also 1.

[0329] Case 2: When the i-th position in the encoded sequence is the bit to be restored, Y i,k is a positive integer greater than 1.

[0330] In case 2, Y i,k The introduction of the i-th candidate path is as follows:

[0331] Y i,k Each i-th candidate path in the i-th candidate path indicates the value of the first i positions in the encoded sequence, Y i,k The value of the first i-1 position indicated by each i-th candidate path in the i-th candidate path is the same as the value of the first i-1 position indicated by the k-th i-1th candidate path, Y i,k The values ​​corresponding to the i-th position of different candidate paths in the i-th candidate path are different. k is less than or equal to Y i-1 A positive integer. For Y i,k For each i-th candidate path, the probability of occurrence of the value at the i-th position of each candidate path is one of the top M values ​​with the largest probability in the conditional probability distribution of the i-th position. For example, the conditional probability distribution of the i-th position includes: P(-2) = 1 / 8, P(-1) = 1 / 4, P(0) = 1 / 4, P(+1) = 1 / 4, P(+2) = 1 / 8. When M is equal to 3, Y i,kEqual to 3. Among the three i-th candidate paths, the value of the i-th position of the first candidate path is -1, the value of the i-th position of the second candidate path is 0, and the value of the i-th position of the third candidate path is +1.

[0332] It is easy to understand that in case 2, the i-th position in the encoded sequence is a bit to be restored, and there is a phenomenon of path extension.

[0333] For example, using Figure 8 as an example, the second position in the encoded sequence is the transmission bit, and the third position is the bit to be recovered. Taking the second and third candidate paths as examples, there is one second candidate path (used to indicate the value of the first and second positions in the encoded sequence), and three third candidate paths (used to indicate the values ​​of the first three positions in the encoded sequence).

[0334] For the receiving device, when k traverses 1, 2, 3, ..., Y i-1 In the case of i,k After the i-th candidate path is found, if i=N, the receiving device executes S5032a, and if i<N, the receiving device executes S5032b. S5032a and S5032b are described as follows:

[0335] S5032a, the receiving device according to Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths are used to determine X N-th candidate paths.

[0336] Among them, Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The total number of candidate paths i is recorded as in, satisfy:

[0337]

[0338] in, Indicates that the receiving device traverses 1, 2, 3, ..., Y in k i-1 The total number of candidate paths determined by Y. i,k Indicates that the receiving device is based on the signal probability distribution, the first set and Y i-1 The number of i-th candidate paths determined by the k-th i-1-th candidate path among the i-1-th candidate paths, k = 1, 2, ..., M i-1 .

[0339] Optionally, when the first condition is met, S5032a includes: the receiving device determines The i-th candidate path is Y i The i-th candidate path. That is, the receiving device determines Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths all belong to X N-th candidate paths.

[0340] The first condition includes: Less than or equal to M. That is, the number of candidate paths does not exceed M, and there is no need to perform sorting and pruning operations, and as many candidate paths as possible can be retained to increase the possibility of retaining the correct candidate path.

[0341] It is easy to understand that when the first condition is met, X is less than or equal to M.

[0342] Optionally, when the second condition is met, S5032a includes: the receiving device The path-metric (PM) value of each i-th candidate path in the i-th candidate path is obtained from Select X N-th candidate paths from the i-th candidate paths.

[0343] The second condition includes: Greater than M.

[0344] For example, the receiving device performs sorting and pruning operations to obtain Select X N-th candidate paths from the i-th candidate paths.

[0345] Specifically, the receiving device follows The PM value of each candidate path in the i-th candidate path is Then, the receiving device deletes the i-th candidate path through pruning operation. The i-th candidate path The i-th candidate paths are used to obtain X N-th candidate paths. Among them, the absolute value of the PM value of each candidate path in the X N-th candidate paths is greater than The absolute value of the PM value of each candidate path in the i-th candidate path, Is a positive integer.

[0346] It is easy to understand that in the present application, the sorting operation may include sorting from small to large or from large to small, and the present embodiment does not limit this. When the second condition is met, X is equal to M.

[0347] That is, the receiving device can retain as many candidate paths as possible, and the absolute values ​​of the PM values ​​of the retained candidate paths are larger, so as to improve decoding accuracy.

[0348] S5032b, the receiving device calculates the signal probability distribution, the first set and Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths are used to determine X N-th candidate paths.

[0349] Among them, Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The total number of candidate paths i is recorded as Please refer to the introduction of formula (1) for details.

[0350] Optionally, if the first condition is met, the receiving device replaces i in S5031, S5032a, and S5032b with i+1. That is, the above steps are repeated for the i+1th position in the encoded sequence until the Nth candidate path is determined. For the first condition, see the description of S5032a.

[0351] Optionally, when the second condition is met, S5032b includes: the receiving device The PM value of each i-th candidate path in the i-th candidate path is obtained through sorting and pruning operations. Select Y from the i-th candidate path i Nth candidate path. In this case, Y i =M. The second condition can be found in the description of S5032a. The receiving device then replaces i in S5031, S5032a, and S5032b with i+1. That is, the above steps are repeated for the i+1th position in the encoded sequence until the Nth candidate path is determined.

[0352] Next, let’s introduce the PM value of the candidate path:

[0353] When the i-th position in the coded sequence is a transmission bit, the PM value of the k-th i-th candidate path determined based on the k-th i-1-th candidate path satisfies:

[0354] PM(k,i)=PM(k,i-1)+lnP(y i |y i-1,k ,…,y 1,k ) Formula (2)

[0355] Among them, PM(k,i) represents the PM value of the k-th i-th candidate path, PM(k,i-1) represents Y i-1 The PM value of the kth i-1th candidate path among the i-1th candidate paths, Y i-1The value of the first i-1 position in the encoded sequence of the kth i-1th candidate path is y i-1,k ,…,y 1,k , lnP(y i |y i-1,k ,…,y 1,k ) means (y j |y j-1,p ,…,y 1,p ) takes the natural logarithm, P(y i |y i-1,k ,…,y 1,k ) indicates that the value of the first i-1 positions in the encoded sequence of the k-th candidate path is y i-1,k ,…,y 1,k When , the value of the i-th position is y i probability.

[0356] When the i-th position in the encoded sequence is the bit to be restored, Among the i-th candidate paths, the PM value of the m-th i-th candidate path determined based on the k-th i-1-th candidate path satisfies:

[0357] PM(k+m,i)=PM(k,i-1)+lnP(y i,m |y i-1,k ,…,y 1,k ) Formula (3)

[0358] Where PM(k+m,i) represents the PM value of the mth i-th candidate path determined based on the kth i-1th candidate path, PM(k,i-1) represents the PM value of the kth i-1th candidate path, and the value of the first i-1 positions in the encoded sequence indicated by the kth i-1th candidate path is y i-1,k ,…,y 1,k , lnP(y i,m |y i-1,k ,…,y 1,k ) represents P(y i,m |y i-1,k ,…,y 1,k ) takes the natural logarithm, P(y i,m |y i-1,k ,…,y 1,k ) indicates that the value of the first i-1 positions in the encoded sequence of the m-th candidate path is y i-1,k ,…,y 1,k When , the value of the i-th position is y i,m The probability that the value of the i-th position in the encoded sequence is y i,mThe probability of is one of the conditional probability distributions of the i-th position, and is the m-th probability in the conditional probability distribution of the i-th position after the probabilities are arranged in descending order.

[0359] For example, referring to Figure 6, where M is equal to 3, the PM value of the first candidate path is {ln0.195}. Based on the first candidate path and formula (2), the PM value of the second candidate path is {ln0.195 + ln0.275}. Based on the second candidate path and formula (3), there are three third candidate paths, and the PM value of the first third candidate path is {ln0.195 + ln0.275 + ln0.37, ln0.195 + ln0.275 + ln0.25, ln0.195 + ln0.275 + ln0.25}.

[0360] For the receiving device, after determining X N-th candidate paths, the receiving device executes S504:

[0361] S504: The receiving device determines a decoding result based on the X Nth candidate paths.

[0362] Exemplarily, when X=2, the receiving device selects an Nth candidate path from two Nth candidate paths through verification, and then determines the value of each position in the encoded sequence based on the selected Nth candidate path. After the receiving device performs an inverse Hadamard transform on the value of each position in the encoded sequence, it obtains the decoding result, thereby completing the decoding.

[0363] Next, in conjunction with FIG6 to FIG9 , the decoding method 500 under a non-finite field according to an embodiment of the present application is introduced:

[0364] S901. The receiving device controls the decoder to input the following information: a first sequence, a signal probability distribution, and a first set.

[0365] Exemplarily, the first sequence includes two values. The signal probability distribution includes probability distributions for four positions in FIG8 (e.g., the first position, the second position, the third position, and the fourth position in FIG8 ). The first set indicates that the first value in the first sequence is the value of the first position in FIG8 , and the second set indicates that the second value in the first sequence is the value of the second position in FIG8 .

[0366] S902: The decoder of the receiving device determines the conditional probability distribution of the i-th position of the encoded sequence according to the first sequence, the signal probability distribution and the first set.

[0367] Where i is a positive integer ranging from 1 to 4.

[0368] The implementation process of S902 can be found in the introduction of FIG3 , and will not be described again here.

[0369] For the decoder of the receiving device, if the i-th position is not a transmission bit (i.e., the i-th position is a bit to be restored), the decoder of the receiving device executes S903. If the i-th position is a transmission bit, the decoder of the receiving device executes S908. S903 is described as follows:

[0370] S903: The decoder of the receiving device performs path extension.

[0371] For example, taking i equal to 3, the conditional probability distribution of the third position includes: P(-2) = 0.06, P(-1) = 0.25, P(0) = 0.37, P(+1) = 0.25, P(+2) = 0.06. When M equals 3, the decoder of the receiving device performs path extension according to {x3 = -1, x3 = 0, x3 = +1}. Among them, x3 = -1 can be understood as the value of the third position is -1. X3 = 0 and x3 = +1 can be deduced from this and will not be repeated here.

[0372] S904: The decoder of the receiving device updates the PM value.

[0373] Exemplarily, the decoder of the receiving device uses formula (3) to update the PM value of each candidate path in S903.

[0374] Taking Figure 8 as an example, in the dashed box with i = 3, the PM value of the first third candidate path is denoted as PM(1), where PM(1) = a + ln0.25. The PM value of the second third candidate path is denoted as PM(2), where PM(2) = a + ln0.37. The PM value of the third third candidate path is denoted as PM(3), where PM(3) = a + ln0.25. Here, a represents the PM value of the second candidate path: a = ln0.195 + ln0.275.

[0375] S905: The decoder of the receiving device performs a sorting operation.

[0376] When the number of candidate paths determined in S903 is greater than M, the decoder of the receiving device sorts the candidate paths determined in S903 according to the PM values ​​determined in S904.

[0377] Taking Figure 8 as an example, when i=4, the PM value of the first third candidate path is recorded as PM(1), the PM value of the second third candidate path is recorded as PM(2), and the PM value of the third third candidate path is recorded as PM(3).

[0378] In S905 , the decoder of the receiving device determines five candidate paths, whose PM values ​​are PM(1,1), PM(1,2), PM(2,2), PM(1,3), and PM(2,3). The decoder of the receiving device sorts the five candidate paths based on their PM values.

[0379] S906: The decoder of the receiving device performs a pruning operation.

[0380] Exemplarily, the decoder of the receiving device deletes some candidate paths from the candidate paths determined in S903.

[0381] Taking Figure 8 as an example, the decoder of the receiving device deletes some candidate paths from the candidate paths sorted in S905 and retains candidate paths with larger PM values. For example, in the dotted box where i=4, there are 3 candidate paths for the 4th position.

[0382] When i is equal to N, the decoder of the receiving device executes S907. When i is less than N, the decoder of the receiving device replaces i with i+1 and re-executes S902. S907 is described as follows:

[0383] S907: The decoder of the receiving device determines the decoding result.

[0384] Exemplarily, the decoder of the receiving device determines a decoding result according to the candidate path determined in S906.

[0385] In addition, when the i-th position is a transmission bit, the decoder of the receiving device executes S908 and S909:

[0386] S908. The decoder of the receiving device determines the value of the i-th position according to the first sequence.

[0387] Exemplarily, the decoder of the receiving device uses the value of the i-th position in the first sequence as the value of the i-th transmission bit in the encoded sequence.

[0388] S909: The decoder of the receiving device updates the PM value.

[0389] Exemplarily, the decoder of the receiving device uses formula (2) to update the PM value of each candidate path in S908.

[0390] Taking Figure 6 as an example, when i = 1, the conditional probability distribution of the first position is shown as P(u1) in Figure 6. The PM value of the first candidate path is ln0.195. When i = 1, the conditional probability distribution of the second position is shown as P(u2) in Figure 6. The PM value of the second candidate path is ln0.195 + ln0.275.

[0391] When i is equal to N, the decoder of the receiving device executes S907. When i is less than N, the decoder of the receiving device replaces i with i+1 and re-executes S902.

[0392] In conjunction with Figures 10 to 13, the performance effect of the decoding method 500 under the non-finite field of the embodiment of the present application is introduced. After adopting the decoding method 500 under the non-finite field of the embodiment of the present application, a lower mean square error (MSE) can be obtained under the same compression rate; under the same MSE, a higher compression rate can be obtained. Figures 10 to 13 correspond to the compression effect when the code length N = {16, 32, 64, 128}, respectively. The horizontal axis is the number of bits after compression (i.e., the data of the transmission bits), and the vertical axis is the compression performance MSE. The smaller the MSE, the better the performance. In Figures 10 to 13, the letter A indicates the performance effect of the decoding method shown in Figure 3, and the letter B indicates the performance effect of the decoding method 500 under the non-finite field of the embodiment of the present application.

[0393] In addition, the decoding process shown in FIG3 can be understood as serial decoding, that is, when decoding the i-th position, it is necessary to wait for the decoding result of the previous (i-1) positions, resulting in a large decoding delay and high complexity.

[0394] In view of this, the embodiment of the present application provides another decoding method under a non-finite field, which can be applied to the communication system of Figure 1. In the embodiment of the present application, the receiving device determines L sub-blocks based on the distribution of the transmission bits and / or the bits to be recovered in the coded sequence. The coded sequence is the sequence after the sequence to be coded is coded, and the length of the sequence to be coded is N, where N=2 n , n and L are positive integers. Then, the receiving device uses the Lth i The Lth sub-block i Matrix, for L i Sub-blocks perform matrix operations to obtain the Lth i The decoding sequence of the sub-block. Where i is a positive integer less than or equal to L, the Lth i The number of rows and columns of the matrix is ​​based on the L i The number of positions in the sequence after encoding corresponding to the sub-block is determined, the Lth i The elements of the matrix are based on the L i The butterfly operation corresponding to each sub-block is used to determine the decoding result. The receiving device then determines the decoding result based on the decoding sequence of each sub-block in the L sub-blocks. In other words, the receiving device uses matrix operations to obtain the values ​​at different positions in the encoded sequence, eliminating the need to sequentially calculate the probability distribution of different positions in the encoded sequence through recursive operations. This avoids the long decoding delay caused by serial decoding, reduces decoding complexity, and improves decoding efficiency.

[0395] 14 to 16 , a decoding method 1400 under a non-finite field according to an embodiment of the present application is described in detail. The decoding method 1400 under a non-finite field according to an embodiment of the present application includes the following steps:

[0396] S1401. A receiving device determines the position distribution of N1 transmission bits and / or N2 to-be-recovered bits in an encoded sequence.

[0397] In the uplink transmission, the receiving device is the network device in Figure 1. In the downlink transmission, the receiving device is the terminal device in Figure 1.

[0398] Exemplarily, S1401 includes: the receiving device obtains a first set, and determines the position distribution of N1 transmission bits and / or N2 to-be-recovered bits in the encoded sequence according to the first set.

[0399] The first set is used to determine the position of each bit to be restored in the coded sequence. The first set and the coded sequence can be referred to the introduction of S501 and will not be repeated here.

[0400] S1402: The receiving device determines L sub-blocks corresponding to the coded sequence according to the position distribution of the N1 transmission bits and / or the N2 to-be-recovered bits in the coded sequence.

[0401] The L sub-blocks include sub-blocks of a first type, each sub-block of the first type includes the value of each of the at least one transmitted bit. The transmitted bits corresponding to each sub-block of the first type are continuous. And / or the L sub-blocks include sub-blocks of a second type, each sub-block of the second type includes the value of each of the at least one to-be-recovered bit. The to-be-recovered bits corresponding to each sub-block of the second type are continuous.

[0402] For example, if the i-th bit (i=2 n ,0≤n≤log2N) starts with M (M=2 q ,0≤q≤log2N) positions are all transmission bits, then record x i ,x i+1 ,x i+2 ,…,x i+M The bit sequence composed of is a first type of sub-block. Similarly, if the i-th bit (i=2 n ,0≤n≤log2N) starts with M (M=2 q ,0≤q≤log2N) positions are all to be restored, then record x i ,x i+1 ,x i+2 ,…,x i+MThe composed bit sequence is a sub-block of the second type.

[0403] Taking Figure 15 as an example, the encoded sequence is the sequence on the right, i.e. u1, u2, u3, u4, u5, u6, u7, u8, recorded as The box containing the letter F indicates that the position is a transmission bit, and the box containing the letter I indicates that the position is a bit to be recovered. The values ​​of the first four positions in the encoded sequence constitute the first type of sub-block, and the values ​​of the last four positions in the encoded sequence constitute the second type of sub-block.

[0404] It should be understood that in the embodiments of the present application, sub-blocks can be replaced with other names, such as nodes. In the embodiments of the present application, sub-blocks are used as an example and should not be construed as limiting the embodiments of the present application. Specifically, in the encoded sequence, one or more consecutive bits to be recovered can be referred to as rate-0 nodes. One or more consecutive frozen bits can be referred to as rate-1 nodes.

[0405] S1403, the receiving device uses the Lth of the L sub-blocks i The Lth sub-block i Matrix, for L i Sub-blocks perform matrix operations to obtain the Lth i The decoding sequence of the sub-block.

[0406] Here, i is a positive integer less than or equal to L. For example, i=1, 2, 3, ···, L-1, L.

[0407] Among them, the L i The number of rows and columns of the matrix is ​​based on the L i The number of positions in the N positions corresponding to the sub-block is determined. For example, the L i The matrix is ​​an M×M matrix, where M is the Lth i The number of positions in the N positions corresponding to the sub-block. i The elements of the matrix are based on the L i The butterfly operation corresponding to the sub-block is determined.

[0408] Taking Figure 15 as an example, in L i = 1, the first matrix corresponding to the first sub-block is a 4x4 matrix. The value of each element in this matrix is ​​determined by the butterfly operation shown in the first dotted box. After obtaining {V1V2V3V4}, the receiving device performs a matrix operation on {V1V2V3V4} and the first matrix to obtain {u1u2u3u4} for the first sub-block. {V1V2V3V4} represents the value during decoding, and {u1u2u3u4} represents the value of the first four positions in the encoded sequence.

[0409] In L i= 2, the second matrix corresponding to the second sub-block is also a 4x4 matrix. The value of each element in this matrix is ​​determined by the butterfly operation shown in the second dashed box. After obtaining {g1g2g3g4}, the receiving device performs a matrix operation on {g1g2g3g4} and the second matrix to obtain {u5u6u7u8} for the second sub-block. {g1g2g3g4} represents the value during decoding, and {u5u6u7u8} represents the value of the last four positions in the encoded sequence.

[0410] It should be understood that in the embodiment of the present application, in the encoded sequence, one or more consecutive transmission bits can be referred to as rate-0 nodes (i.e., the first sub-block mentioned above), and one or more consecutive frozen bits can be referred to as rate-1 nodes (i.e., the second sub-block mentioned above).

[0411] That is to say, the receiving device aggregates the bits to be recovered and the transmission bits in the coded sequence into different sub-blocks according to the code rate.

[0412] The decoding sequences at the N positions include the decoding sequence of each sub-block in the L sub-blocks.

[0413] S1404. The receiving device determines a decoding result according to the decoding sequence of each sub-block in the L sub-blocks.

[0414] Exemplarily, when L=2, the decoder of the receiving device determines the encoded sequence based on the decoding sequences of the two sub-blocks (i.e., {u1u2u3u4} and {u5u6u7u8} mentioned above), and then performs an inverse Hadamard transform on the encoded sequence to obtain the decoding result, thereby completing the decoding.

[0415] In this way, the receiving device uses matrix operations to obtain the values ​​at different positions in the encoded sequence, without having to sequentially calculate the probability distribution of different positions in the encoded sequence through recursive operations, thus avoiding the problem of large decoding delay caused by serial decoding.

[0416] For example, taking FIG16 as an example, the length of the encoded sequence N=1024, and comparing the decoding method 1400 under a non-finite field according to an embodiment of the present application with the decoding method shown in FIG3 , when the number of transmitted bits is the same, the decoding method 1400 under a non-finite field according to an embodiment of the present application has a lower decoding delay than the decoding method shown in FIG3 . The letter A in FIG16 indicates the performance effect of the decoding method shown in FIG3 , and the letter B in FIG16 indicates the performance effect of the decoding method 1400 under a non-finite field according to an embodiment of the present application.

[0417] It should be understood that in the embodiments of the present application, the decoding method 500 under a non-finite field and the decoding method 1400 under a non-finite field may be executed by a receiving device, such as a decoder in the receiving device, or other modules capable of performing decoding functions. In the embodiments of the present application, the receiving device is used as an example for description.

[0418] The method provided by the embodiment of the present application is described in detail above in conjunction with Figures 5 to 16. The communication device for executing the method provided by the embodiment of the present application is described in detail below in conjunction with Figures 17 and 18.

[0419] For example, Figure 17 is a structural diagram of a communication device according to an embodiment of the present application. As shown in Figure 17, the communication device 1700 includes a processing module 1701 and a transceiver module 1702. For ease of illustration, Figure 17 only shows the main components of the communication device 1700.

[0420] In some embodiments, the communication device 1700 may be applicable to the communication system shown in FIG. 1 , and perform the functions of the receiving device in the method shown in FIG. 5 (or FIG. 7 , or FIG. 9 ).

[0421] Processing module 1701 is used to obtain the signal probability distribution and the first set. The first set is used to determine the position of each bit to be recovered in the coded sequence. The coded sequence is the sequence after the coded sequence is coded. The length of the coded sequence is N, N = 2 n , n is a positive integer.

[0422] Processing module 1701 is further configured to determine X N-th candidate paths based on the signal probability distribution and the first set. Each of the X N-th candidate paths indicates a value for each position in the coded sequence. One or more to-be-recovered bits corresponding to different candidate paths in the X N-th candidate paths have different values. X is a positive integer greater than 1 and less than or equal to M. Each to-be-recovered bit in the coded sequence corresponds to at most M candidate values. The M candidate values ​​are determined by the receiving device. M is a positive integer greater than 1.

[0423] The processing module 1701 is further configured to determine a decoding result according to the X N-th candidate paths.

[0424] In one possible design, processing module 1701 is configured to determine X Nth candidate paths based on the signal probability distribution and the first set, including:

[0425] Processing module 1701 is used for, when the i-th position is the bit to be restored, to calculate the bit according to the signal probability distribution, the first set and Y i-1 The kth i-1th candidate path among the i-1th candidate paths, determine Y i,k The i-th candidate path; Y i-1Each i-1 candidate path in the i-1 candidate paths indicates the value of the first i-1 positions in the encoded sequence, Y i-1 Different i-1 candidate paths in the i-1 candidate paths have different values ​​in one or more bits to be restored; Y i,k Each i-th candidate path in the i-th candidate path indicates the value of the first i positions in the encoded sequence, Y i,k The value of the first i-1 position indicated by each i-th candidate path in the i-th candidate path is the same as the value of the first i-1 position indicated by the k-th i-1th candidate path, Y i,k The values ​​corresponding to the i-th position of different candidate paths in the i-th candidate path are different, i is a positive integer greater than 1 and less than or equal to N, and k is less than or equal to Y i-1 positive integer, Y i-1 is a positive integer less than or equal to M.

[0426] Processing module 1701 is used for, when i is equal to N, to calculate the value of Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The first set of candidate paths is used to determine X N-th candidate paths; or, when i is less than N, the first set of candidate paths is used to determine X N-th candidate paths according to the signal probability distribution, the first set and Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths are used to determine X N-th candidate paths.

[0427] In one possible design, the processing module 1701 is configured to: i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate path determines X N-th candidate paths, including: when the first condition is met, determining Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths all belong to X N-th candidate paths. The first condition includes: the total number of the i-th candidate paths is less than or equal to M.

[0428] In one possible design, the processing module 1701 is configured to: i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The method comprises: determining X N-th candidate paths from the i-th candidate paths according to the path metric PM value of each i-th candidate path when the second condition is met, i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,kAmong the i-th candidate paths, X N-th candidate paths are determined. The second condition includes: the total number of the i-th candidate paths is greater than M.

[0429] In one possible design, the PM value of the mth i-th candidate path determined based on the kth i-1th candidate path satisfies:

[0430] PM(k+m,i)=PM(k,i-1)+lnP(y i,m |y i-1,k ,…,y 1,k )

[0431] Where PM(k+m,i) represents the PM value of the mth i-th candidate path determined based on the kth i-1th candidate path, PM(k,i-1) represents the PM value of the kth i-1th candidate path, and the value of the first i-1 positions in the encoded sequence indicated by the kth i-1th candidate path is y i-1,k ,…,y 1,k , lnP(y i,m |y i-1,k ,…,y 1,k ) represents P(y i,m |y i-1,k ,…,y 1,k ) takes the natural logarithm, P(y i,m |y i-1,k ,…,y 1,k ) indicates that the value of the first i-1 positions in the encoded sequence of the m-th candidate path is y i-1,k ,…,y 1,k When , the value of the i-th position is y i,m The probability that the value of the i-th position in the encoded sequence is y i,m The probability of is one of the conditional probability distributions of the i-th position, and is the m-th probability in the conditional probability distribution of the i-th position after the probabilities are arranged in descending order.

[0432] In one possible design, the PM value of the first candidate path is determined according to the conditional probability distribution of the first position in the encoded sequence.

[0433] In one possible design, the conditional probability distribution of the sth position in the encoded sequence is discrete, and the discrete conditional probability distribution includes K1 values ​​of the sth position and the probability of each of the K1 values ​​occurring, where K1 is a positive integer. Here, s is a positive integer less than or equal to N.

[0434] In one possible design, the conditional probability distribution at the s-th position in the encoded sequence is continuous. The continuous conditional probability distribution includes K2 peak points, each of which indicates a value at the s-th position and the probability of the value occurring, where K2 is a positive integer. Here, s is a positive integer less than or equal to N.

[0435] In one possible design, the conditional probability distribution of the s-th position in the encoded sequence is continuous, and the continuous conditional probability distribution includes K3 reference points in the first confidence interval, each of the K3 reference points indicates a value at the s-th position and the probability of the value occurring, where K3 is a positive integer. Here, s is a positive integer less than or equal to N.

[0436] In one possible design, processing module 1701 is configured to determine X Nth candidate paths based on the signal probability distribution and the first set, including:

[0437] Processing module 1701 is used for, when the jth position is a transmission bit, to calculate the value of the signal probability distribution, the first set and Y j-1 The pth i-1th candidate path among the j-1th candidate paths, determine the pth jth candidate path; Y j-1 Each j-1 candidate path in the j-1 candidate paths indicates the value of the first j-1 positions in the encoded sequence, Y j-1 The values ​​of one or more to-be-recovered bits are different in different j-1 candidate paths among the j-1 candidate paths; the values ​​of the first j positions in the encoded sequence are indicated by the p-th j-1 candidate path, the values ​​of the first j-1 positions indicated by the p-th j-1 candidate path are the same as the values ​​of the first j-1 positions indicated by the p-th j-1 candidate path, and are the same as the values ​​corresponding to the j-th position of the j-1 candidate paths corresponding to different p, where j is a positive integer greater than 1 and less than or equal to N, and p is less than or equal to Y j-1 positive integer, Y j-1 is a positive integer less than or equal to M.

[0438] Processing module 1701 is used for, when j is equal to N, to calculate the value of Y j-1 The j-th candidate path corresponding to each j-1-th candidate path in the j-1-th candidate paths is used to determine X N-th candidate paths; or, when j is less than N, the signal probability distribution, the first set and Y j-1 The j-th candidate path corresponding to each j-1-th candidate path in the j-1-th candidate paths is used to determine X N-th candidate paths.

[0439] In one possible design, the PM value of the p-th j-th candidate path satisfies:

[0440] PM(p,j)=PM(p,j-1)+lnP(yj |y j-1,p ,…,y 1,p )

[0441] Among them, PM(p,j) represents the PM value of the p-th j-th candidate path, PM(p,j-1) represents Y j-1 PM value of the pth j-1th candidate path among the j-1th candidate paths, Y j-1 The value of the first i-1 positions in the encoded sequence indicated by the pth j-1th candidate path in the j-1th candidate path is y j-1,p ,…,y 1,p , lnP(y j |y j-1,p ,…,y 1,p ) means (y j |y j-1,p ,…,y 1,p ) takes the natural logarithm, P(y j |y j-1,p ,…,y 1,p ) indicates that the value of the first j-1 positions in the encoded sequence of the p-th candidate path is y j-1,p ,…,y 1,p When the value of the jth position is y j probability.

[0442] In one possible design, when the encoded sequence includes at least one transmission bit, processing module 1701 is further configured to obtain a first sequence. The first sequence includes the value of each transmission bit in the at least one transmission bit. For example, processing module 1701 obtains the first sequence from transceiver module 1702.

[0443] In one possible design, the decoding result is a real number sequence.

[0444] Optionally, the communication device 1700 may further include a storage module (not shown in FIG. 17 ) storing a program or instruction. When the processing module 1701 executes the program or instruction, the communication device 1700 may perform the functions of the receiving device in the method shown in any one of FIG. 5 (or FIG. 7 , or FIG. 9 ).

[0445] In some other embodiments, the communication device 1700 may be applicable to the communication system shown in FIG. 1 to perform the functions of the receiving device in the method shown in FIG. 14 .

[0446] The processing module 1701 is used to determine the L sub-blocks corresponding to the coded sequence according to the distribution of the transmission bits and / or the bits to be restored in the coded sequence. The coded sequence is the sequence after the coded sequence is coded, and the length of the coded sequence is N, where N=2 n , n and L are positive integers.

[0447] The processing module 1701 is further configured to use the Lth of the L sub-blocks i The Lth sub-block i Matrix, for L i Sub-blocks perform matrix operations to obtain the Lth i The decoding sequence of the sub-block. Where i is a positive integer less than or equal to L, the Lth i The number of rows and columns of the matrix is ​​based on the L i The number of positions in the sequence after encoding corresponding to the sub-block is determined, the Lth i The elements of the matrix are based on the L i The butterfly operation corresponding to the sub-block is determined.

[0448] The processing module 1701 is further configured to determine a decoding result according to a decoding sequence of each sub-block in the L sub-blocks.

[0449] In one possible design, the L i The matrix is ​​an M×M matrix, where M is the Lth i The number of positions in the encoded sequence corresponding to the sub-block.

[0450] In one possible design, the L subblocks include subblocks of a first type, each of which includes one or more consecutive transmission bits in the coded sequence. And / or, the L subblocks include subblocks of a second type, each of which includes one or more consecutive bits to be recovered in the coded sequence.

[0451] In one possible design, the decoding result is a real number sequence.

[0452] Optionally, the communication device 1700 may further include a storage module (not shown in FIG17 ) that stores a program or instruction. When the processing module 1701 executes the program or instruction, the communication device 1700 may perform the functions of the receiving device in the method shown in FIG14 .

[0453] Optionally, the transceiver module 1702 may include a receiving module and a sending module (not shown in FIG17 ). The transceiver module 1702 is used to implement the sending function and the receiving function of the communication device 1700 .

[0454] It should be understood that the processing module 1701 involved in the communication device 1700 can be implemented by a processor or a processor-related circuit component, which can be a processor or a processing unit; the transceiver module 1702 can be implemented by a transceiver or a transceiver-related circuit component, which can be a transceiver or a transceiver unit.

[0455] It is easy to understand that the communication device 1700 can be a receiving device, or a chip (system) or other parts or components that can be set in the receiving device, or a device that includes a receiving device. This application does not limit this.

[0456] In addition, the technical effects of the communication device 1700 can refer to the technical effects of the method shown in any one of Figures 5, 7, 9, or 14, and will not be repeated here.

[0457] For example, Figure 18 is a second structural diagram of a communication device provided in an embodiment of the present application. The communication device can be a receiving device, or a chip (system) or other component or assembly that can be provided in the receiving device. As shown in Figure 18, the communication device 1800 may include a processor 1801. Optionally, the communication device 1800 may also include a memory 1802 and / or a transceiver 1803. The processor 1801 is coupled to the memory 1802 and the transceiver 1803, for example, via a communication bus.

[0458] Below, the components of the communication device 1800 are described in detail with reference to FIG18 :

[0459] The processor 1801 is the control center of the communication device 1800 and can be a single processor or a collective term for multiple processing elements. For example, the processor 1801 can be one or more central processing units (CPUs), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application, such as one or more digital signal processors (DSPs) or one or more field programmable gate arrays (FPGAs).

[0460] Optionally, the processor 1801 may execute various functions of the communication device 1800 by running or executing a software program stored in the memory 1802 and calling data stored in the memory 1802 .

[0461] In a specific implementation, as an embodiment, the processor 1801 may include one or more CPUs, such as CPU0 and CPU1 shown in FIG. 18 .

[0462] In a specific implementation, as an embodiment, the communication device 1800 may also include multiple processors, such as the processor 1801 and the processor 1804 shown in FIG18 . Each of these processors may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). The processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).

[0463] Among them, the memory 1802 is used to store the software program for executing the solution of this application, and the execution is controlled by the processor 1801. The specific implementation method can refer to the above method embodiment and will not be repeated here.

[0464] Alternatively, the memory 1802 may be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM) or other type of dynamic storage device 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, an optical disc storage (including a compact 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 desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 1802 may be integrated with the processor 1801 or exist independently and be coupled to the processor 1801 via an interface circuit (not shown in FIG. 18 ) of the communication device 1800, which is not specifically limited in this embodiment of the present application.

[0465] Transceiver 1803 is used for communication with other communication devices. For example, if communication device 1800 is a receiving device, transceiver 1803 can be used to communicate with a transmitting device. For another example, if communication device 1800 is a transmitting device, transceiver 1803 can be used to communicate with a receiving device.

[0466] Optionally, the transceiver 1803 may include a receiver and a transmitter (not shown separately in FIG18 ), wherein the receiver is used to implement a receiving function, and the transmitter is used to implement a transmitting function.

[0467] Optionally, the transceiver 1803 can be integrated with the processor 1801, or can exist independently and be coupled to the processor 1801 through the interface circuit of the communication device 1800 (not shown in Figure 18). This embodiment of the present application does not specifically limit this.

[0468] It is easy to understand that the structure of the communication device 1800 shown in Figure 18 does not constitute a limitation on the communication device. The actual communication device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0469] In addition, the technical effects of the communication device 1800 can refer to the technical effects of the method described in the above method embodiment, and will not be repeated here.

[0470] It should be understood that the processor in the embodiments of the present application may be a central processing unit (CPU), and the processor may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc.

[0471] It should also be understood that the memory in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct rambus RAM (DR RAM).

[0472] The above embodiments can be implemented in whole or in part by software, hardware (such as circuits), firmware or any other combination. When implemented using software, the above embodiments can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer program are loaded or executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (such as infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that contains one or more available media sets. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a tape), an optical medium (for example, a DVD), or a semiconductor medium. The semiconductor medium can be a solid-state drive.

[0473] It should be understood that the term "and / or" as used herein simply describes a relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A alone, A and B together, or B alone. A and B can be singular or plural. Furthermore, the character " / " as used herein generally indicates an "or" relationship between the associated objects, but it may also indicate an "and / or" relationship. For specific understanding, please refer to the context.

[0474] In this application, "at least one" means one or more, and "plurality" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or plural.

[0475] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0476] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0477] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0478] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0479] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0480] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0481] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or communication device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0482] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A decoding method under a non-finite field, characterized in that: Applied to a receiving device, the method includes: Obtain a signal probability distribution and a first set; the first set is used to determine the position of each bit to be restored in the coded sequence, the coded sequence is a sequence after the coded sequence is coded, and the length of the coded sequence is N, N=2 n , n is a positive integer; Determining X Nth candidate paths based on the signal probability distribution and the first set; each candidate path in the X Nth candidate paths indicates a value for each position in the encoded sequence; one or more to-be-recovered bits corresponding to different candidate paths in the X Nth candidate paths have different values; X is a positive integer greater than 1 and less than or equal to M; each to-be-recovered bit in the encoded sequence corresponds to at most M candidate values; the M candidate values ​​are values ​​determined by the receiving device; and M is a positive integer greater than 1; Determine a decoding result based on the X N-th candidate paths.

2. The method according to claim 1, characterized in that The determining, according to the signal probability distribution and the first set, X Nth candidate paths includes: In the case where the i-th position is a bit to be restored, according to the signal probability distribution, the first set and Y i-1 The kth i-1th candidate path among the i-1th candidate paths, determine Y i,k The i-th candidate path; the Y i-1 Each i-1 candidate path in the i-1 candidate paths indicates the value of the first i-1 positions in the encoded sequence, and the Y i-1 Different i-1 candidate paths in the i-1 candidate paths have different values ​​in one or more bits to be restored; the Y i,k Each i-th candidate path in the i-th candidate path indicates the value of the first i positions in the encoded sequence, and the Y i,k The value of the first i-1 position indicated by each i-th candidate path in the i-th candidate path is the same as the value of the first i-1 position indicated by the k-th i-1-th candidate path, and the Y i,k The values ​​corresponding to the i-th position of different candidate paths in the i-th candidate path are different, i is a positive integer greater than 1 and less than or equal to N, and k is less than or equal to Y i-1 positive integer, Y i-1 is a positive integer less than or equal to M; In the case where i is equal to N, according to the Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate path is used to determine the X N-th candidate paths; or, when i is less than N, the signal probability distribution, the first set and the Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths are used to determine the X N-th candidate paths.

3. The method according to claim 2, characterized in that According to the Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate path is determined to determine the X N-th candidate paths, including: When the first condition is met, determine the Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate paths all belong to the X N-th candidate paths; The first condition includes: the total number of the i-th candidate paths is less than or equal to M.

4. The method according to claim 2, characterized in that According to the Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The i-th candidate path is determined to determine the X N-th candidate paths, including: In the case of satisfying the second condition, according to the path metric PM value of each i-th candidate path, from the Y i-1 Y corresponding to each i-1 candidate path in the i-1 candidate paths i,k The X N-th candidate paths are determined from the i-th candidate paths; wherein the second condition includes: the total number of the i-th candidate paths is greater than M.

5. The method according to any one of claims 2 to 4, characterized in that The PM value of the mth i-th candidate path determined based on the kth i-1th candidate path satisfies: PM(k+m,i)=PM(k,i-1)+lnP(y i,m |and i-1,k ,…,and 1,k ) Wherein, PM(k+m,i) represents the PM value of the mth i-th candidate path determined based on the kth i-1th candidate path, PM(k,i-1) represents the PM value of the kth i-1th candidate path, and the kth i-1th candidate path indicates that the value of the first i-1 positions in the encoded sequence is y i-1,k ,…,y 1,k , lnP(y i,m |y i-1,k ,…,y 1,k ) represents the P(y i,m |y i-1,k ,…,y 1,k ) takes the natural logarithm, P(y i,m |y i-1,k ,…,y 1,k ) indicates that the value of the first i-1 positions in the encoded sequence indicated by the Mth i-th candidate path is y i-1,k ,…,y 1,k When , the value of the i-th position is y i,m The probability that the value of the i-th position in the encoded sequence is y i,m The probability of is one of the conditional probability distributions of the i-th position, and is the m-th probability in the conditional probability distribution of the i-th position arranged in descending order.

6. The method according to any one of claims 2 to 5, characterized in that The PM value of the first candidate path is determined according to the conditional probability distribution of the first position in the encoded sequence.

7. The method according to any one of claims 1 to 6, characterized in that The conditional probability distribution of the s-th position in the encoded sequence is discrete, and the discrete conditional probability distribution includes K1 values ​​of the s-th position and the probability of occurrence of each of the K1 values, where K1 is a positive integer; or The conditional probability distribution of the s-th position in the encoded sequence is continuous, and the continuous conditional probability distribution includes K2 peak points, each of the K2 peak points indicates a value of the s-th position and a probability of occurrence of the value, and K2 is a positive integer; or The conditional probability distribution of the s-th position in the encoded sequence is continuous, and the continuous conditional probability distribution includes K3 reference points in a first confidence interval, each of the K3 reference points indicates a value of the s-th position and a probability of occurrence of the value, and K3 is a positive integer; Wherein, s is a positive integer less than or equal to N.

8. The method according to any one of claims 1 to 7, characterized in that The determining, according to the signal probability distribution and the first set, X Nth candidate paths includes: In the case where the jth position is a transmission bit, according to the signal probability distribution, the first set and Y j-1 The pth i-1th candidate path among the j-1th candidate paths determines the pth jth candidate path; the Y j-1 Each j-1 candidate path in the j-1 candidate paths indicates the value of the first j-1 positions in the encoded sequence, and the Y j-1 The values ​​of one or more to-be-restored bits of different j-1 candidate paths in the p-th j-1 candidate paths are different; the p-th j-th candidate path indicates the values ​​of the first j positions in the encoded sequence, the values ​​of the first j-1 positions indicated by the p-th j-1 candidate path are the same as the values ​​of the first j-1 positions indicated by the p-th j-1 candidate path, and are the same as the values ​​corresponding to the j-th position of the j-th candidate paths corresponding to different p, j is a positive integer greater than 1 and less than or equal to N, and p is less than or equal to Y j-1 positive integer, Y j-1 is a positive integer less than or equal to M; In the case where j is equal to N, according to the Y j-1 The j-th candidate path corresponding to each j-1-th candidate path in the j-1-th candidate paths is used to determine the X N-th candidate paths; or, when j is less than N, the signal probability distribution, the first set and the Y j-1 The j-th candidate path corresponding to each j-1-th candidate path in the j-1-th candidate paths is used to determine the X N-th candidate paths.

9. The method according to claim 8, characterized in that The PM value of the p-th j-th candidate path satisfies: PM(p,j)=PM(p,j-1)+lnP(y j |and j-1,p ,…,and 1,p ) Among them, PM(p,j) represents the PM value of the p-th j-th candidate path, PM(p,j-1) represents the Y j-1 The PM value of the pth j-1th candidate path in the j-1th candidate path, the Y j-1 The pth j-1th candidate path in the j-1th candidate path indicates that the value of the first i-1 positions in the encoded sequence is y j-1,p ,…,y 1,p , lnP(y j |y j-1,p ,…,y 1,p ) represents the (y j |y j-1,p ,…,y 1,p ) takes the natural logarithm, P(y j |y j-1,p ,…,y 1,p ) indicates that the value of the first j-1 positions in the encoded sequence indicated by the p-th j-th candidate path is y j-1,p ,…,y 1,p When the value of the jth position is y j probability.

10. The method according to any one of claims 1 to 9, characterized in that In the case where the coded sequence includes at least one transmission bit, the method further includes: A first sequence is obtained; the first sequence includes a value of each transmission bit in the at least one transmission bit.

11. The method according to any one of claims 1 to 10, characterized in that The decoding result is a real number sequence.

12. A communication device, characterized in that: include: A processor is coupled to a memory; the memory stores program instructions, and when the program instructions stored in the memory are executed by the processor, the communication device executes the method according to any one of claims 1 to 11.

13. A communication device, characterized in that: The communication device includes a processor and a transceiver, the transceiver is used to exchange information between the communication device and other communication devices, and the processor executes program instructions to perform the method according to any one of claims 1 to 11.

14. A chip, characterized in that: It includes a processor and an input / output interface, wherein the input / output interface is used to receive signals from other devices outside the chip and transmit them to the processor or send signals from the processor to other devices outside the chip, and the processor is used to implement the method according to any one of claims 1 to 11 through logic circuits or execution code instructions.

15. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed on a communication device, the communication device is caused to perform the method according to any one of claims 1 to 11.