WO2023005480A1 - 数据传输的方法及相关装置 - Google Patents

数据传输的方法及相关装置 Download PDF

Info

Publication number
WO2023005480A1
WO2023005480A1 PCT/CN2022/099014 CN2022099014W WO2023005480A1 WO 2023005480 A1 WO2023005480 A1 WO 2023005480A1 CN 2022099014 W CN2022099014 W CN 2022099014W WO 2023005480 A1 WO2023005480 A1 WO 2023005480A1
Authority
WO
WIPO (PCT)
Prior art keywords
matrix
sequence
row
sub
zero elements
Prior art date
Application number
PCT/CN2022/099014
Other languages
English (en)
French (fr)
Inventor
于晓璞
王彪
李雪
黄勤
吴艺群
庞继勇
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP22848087.7A priority Critical patent/EP4369639A1/en
Publication of WO2023005480A1 publication Critical patent/WO2023005480A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received

Definitions

  • the present application relates to the technical field of communications, and in particular to a data transmission method and a related device.
  • channel coding plays a very important role in data transmission.
  • Channel coding and modulation are usually designed independently, and there is a certain gap between the existing uniform quadrature amplitude modulation (QAM) method and the capacity bound, this gap is especially obvious in high-order modulation, theoretically in additive There is a gap of 1.53dB under Gaussian white noise (additive white Gaussian noise, AWGN) channel.
  • Coding and modulation is a joint optimization design of coding and modulation, which can narrow this gap to a certain extent.
  • the joint optimization design of coding and modulation can usually use analog fountain code (analog fountain code, AFC) or similar algorithms to construct the generator matrix. Its corresponding encoder and decoder have linear complexity, and information bits are directly mapped to modulation symbols in a rateless manner, so that the sending device can send an infinite number of modulation symbols to the destination, making rate matching more flexible.
  • analog fountain code analog fountain code, AFC
  • variable nodes are randomly selected under the premise of maximizing their minimum degree, which cannot avoid or reduce the generation of short loops.
  • SAFC short analog fountain codes
  • the weight coefficient-progressive edge-growth (weight coefficient-progressive edge-growth, WC-PEG) matrix determines the distribution of connection edges based on the PEG algorithm.
  • the WC-PEG matrix requires the same number of occurrences of different weights in each column, and its weight distribution The uniformity is poor.
  • the embodiment of the present application discloses a data transmission method and a related device, which can realize coded modulation transmission and improve the performance of coded modulation.
  • the embodiment of the present application discloses a data transmission method, including: performing binary phase shift keying (binary phase shift keying, BPSK) mapping on the bit sequence to be transmitted to obtain the first sequence;
  • the first sub-matrix composed of some rows in the generator matrix encodes and modulates the first sequence to obtain a symbol sequence c i ; and sends the symbol sequence c i to the receiving device through a channel.
  • BPSK binary phase shift keying
  • each element in the first sequence is 1 or -1, the lengths of the bit sequence and the first sequence are both N; the length m i of the symbol sequence c i is less than or equal to the maximum transmission symbol A positive integer of number M; the i is the number of transmissions of the symbol sequence, and the i is a positive integer less than or equal to the M; the number of columns of the generating matrix is the N, and the number of rows of the generating matrix is Said M, said M and said N are all positive integers.
  • the position of the non-zero element in each row in the generator matrix is obtained based on the progressive edge growth algorithm; the value of the non-zero element in each row in the generator matrix is different, and it is one of the weight sets Weight value; the value of the non-zero element in the first row in the generation matrix is a weight value randomly assigned in the weight set; the row in the generation matrix other than the first row of the generation matrix
  • the values of the non-zero elements are related to the reference information of the non-zero elements, and there is a negative correlation between the evaluation values corresponding to the reference information.
  • the position of the non-zero elements in each row in the generator matrix is obtained based on the progressive edge-growth (PEG) algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the short loops generated should be as long as possible , to improve the decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the method further includes: determining the generator matrix according to the size of N and/or a transmission rate requirement. In this way, the accuracy rate of determining the generator matrix is improved, thereby improving the performance of encoding and decoding.
  • performing BPSK mapping on the bit sequence to be transmitted to obtain the first sequence includes: performing concatenated outer code encoding on the bit sequence to be transmitted to obtain a second sequence, wherein the second sequence The length is the N; performing BPSK mapping on the second sequence to obtain the first sequence. In this way, performing concatenated outer code coding on the bit sequence can improve the coding performance.
  • the number of rows of the first sub-matrix G i is equal to the mi; if the i is 1, then the first sub-matrix G i is A sub-matrix formed by m i rows, the m i is a positive integer less than the M; if the i is greater than 1, the first sub-matrix G i is the (m i-1 +th in the generator matrix 1) a sub-matrix formed from row to row (m i-1 +m i ), said m i is a positive integer less than or equal to the difference between said M and M' i-1 ; said M' i-1 is equal to the sum of the lengths of the symbol sequences of the previous (i-1) transmissions
  • the m i-1 is the number of rows of the first sub-matrix G i- 1 that encodes and modulates the transmitted symbol sequence c i- 1 for the (i-1)th time, and is equal to the number of rows of the symbol sequence c i-1 length
  • the method further includes: determining the size of mi and/or the size of M according to channel parameters of the channel. In this way, the success rate of information transmission and the efficiency of encoding or decoding can be improved.
  • the method further includes: sending configuration information to the receiving device; where the configuration information is used to determine the generation matrix or the second sub-matrix formed by some rows in the generation matrix Parameter information, the second sub-matrix is used for demodulation and decoding based on the symbol sequence received i times before, the parameter information of the generation matrix includes the size of N and the size of M, the The parameter information of the second sub-matrix includes the size of N and the number of rows of the second sub-matrix. In this way, the accuracy rate of obtaining the matrix used for demodulation and decoding can be improved, so as to improve the success rate of demodulation and decoding.
  • the embodiment of the present application discloses another data transmission method, including: receiving the symbol sequence y i from the sending device through the channel; the second sub-matrix formed by the generator matrix or part of the rows in the generator matrix is based on the previous The symbol sequence received i times is demodulated and decoded to obtain a bit sequence estimate. In this way, the demodulation and decoding transmission is realized, and the performance of demodulation and decoding is improved.
  • the length m i of the symbol sequence y i is a positive integer less than or equal to the maximum number of transmission symbols M, the i is the number of reception times of the received symbol sequence, and the i is a positive integer less than or equal to the M An integer;
  • the estimated length of the bit sequence is the number of columns N of the generator matrix; the number of rows of the generator matrix is the M, and both the M and the N are positive integers.
  • the position of the non-zero element in each row in the generator matrix is obtained based on the progressive edge growth algorithm; the value of the non-zero element in each row in the generator matrix is different, and it is one of the weight sets Weight value; the value of the non-zero element in the first row in the generation matrix is a weight value randomly assigned in the weight set; the row in the generation matrix other than the first row of the generation matrix
  • the values of the non-zero elements are related to the reference information of the non-zero elements, and there is a negative correlation between the evaluation values corresponding to the reference information.
  • the position of the non-zero elements in each row in the generator matrix is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the generated short loops can be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the demodulation and decoding of the second sub-matrix formed by the generator matrix or some rows in the generator matrix is performed based on the symbol sequence received i times before, and obtaining the bit sequence estimation includes: The generator matrix or the second sub-matrix composed of some rows in the generator matrix is demodulated and decoded based on the symbol sequence received i times before to obtain the first soft information, wherein the length of the first soft information is Said N; performing outer code decoding on the first soft information to obtain bit sequence estimation.
  • the decoding accuracy can be improved by performing outer code decoding on the soft information obtained through demodulation and decoding.
  • performing outer code decoding on the first soft information to obtain bit sequence estimation includes: performing outer code decoding on the first soft information to obtain second soft information; based on the The second soft information is iteratively decoded to obtain a bit sequence estimate. In this way, through at least one iterative decoding, the accuracy of decoding can be further improved.
  • the second sub-matrix G' i is a sub-matrix formed by the first m' i rows in the generator matrix; if the i is 1, then the m' i is equal to the m i , and both are positive integers smaller than the M; if the i is greater than 1, the m' i is equal to the sum between the m' i-1 and the m i , and the m i is A positive integer less than or equal to the difference between the M and M' i-1 ; the M' i-1 is equal to the sum of the lengths of the previous (i-1) received symbol sequences
  • the m' i-1 is the number of rows of the second sub-matrix G' i-1 that is demodulated and decoded for the (i-1)th time based on the symbol sequence received the previous (i-1) time. In this way, the efficiency of demodulation and decoding can be improved by performing demodulation and decoding based on all received symbol sequences through
  • the method before performing demodulation and decoding on the second sub-matrix formed by the generator matrix or some rows in the generator matrix based on the symbol sequence received i times before, the method further includes : receiving configuration information from the sending device; wherein, the configuration information is used to determine parameter information of the generation matrix or the second sub-matrix, and the parameter information of the generation matrix includes the size of the N and the The size of M, the parameter information of the second sub-matrix includes the size of N and the number of rows of the second sub-matrix; the parameter information is determined based on the configuration information. In this way, the success rate of decoding can be improved.
  • the embodiment of the present application discloses a communication device, including: a processing unit, configured to perform BPSK mapping on the bit sequence to be transmitted to obtain the first sequence; according to the first sequence formed by the generator matrix or some rows in the generator matrix The sub-matrix encodes and modulates the first sequence to obtain a symbol sequence c i ; the transceiver unit is configured to send the symbol sequence c i to a receiving device through a channel. In this way, coded modulation transmission is realized, and the performance of coded modulation is improved.
  • each element in the first sequence is 1 or -1, the lengths of the bit sequence and the first sequence are both N; the length m i of the symbol sequence c i is less than or equal to the maximum transmission symbol A positive integer of number M; the i is the number of transmissions of the symbol sequence, and the i is a positive integer less than or equal to the M; the number of columns of the generating matrix is the N, and the number of rows of the generating matrix is Said M, said M and said N are all positive integers.
  • the position of the non-zero elements in each row in the generating matrix is obtained based on the progressive edge growth algorithm; the values of the non-zero elements in each row in the generating matrix are different, and are in the weight set a weight value of a weight value; the value of the non-zero element in the first row in the generation matrix is a weight value randomly assigned in the weight set; in the generation matrix except the first row of the generation matrix
  • the values of the non-zero elements of the row are related to the reference information of the non-zero elements, and there is a negative correlation between the evaluation values corresponding to the reference information.
  • the position of the non-zero elements in each row in the generator matrix is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the generated short loops can be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the processing unit is further configured to determine the generator matrix according to the size of N and/or a transmission rate requirement. In this way, the accuracy rate of determining the generator matrix is improved, thereby improving the performance of encoding and decoding.
  • the processing unit is specifically configured to perform concatenated outer code coding on the bit sequence to be transmitted to obtain a second sequence, where the length of the second sequence is the N;
  • the second sequence is BPSK mapped to obtain the first sequence.
  • the number of rows of the first sub-matrix G i is equal to the mi; if the i is 1, then the first sub-matrix G i is A sub-matrix formed by m i rows, the m i is a positive integer less than the M; if the i is greater than 1, the first sub-matrix G i is the (m i-1 +th in the generator matrix 1) a sub-matrix formed from row to row (m i-1 +m i ), said m i is a positive integer less than or equal to the difference between said M and M' i-1 ; said M' i-1 is equal to the sum of the lengths of the symbol sequences of the previous (i-1) transmissions
  • the m i-1 is the number of rows of the first sub-matrix G i- 1 that encodes and modulates the transmitted symbol sequence c i- 1 for the (i-1)th time, and is equal to the number of rows of the symbol sequence c i-1 length
  • the processing unit is further configured to determine the size of mi and/or the size of M according to channel parameters of the channel. In this way, the success rate of information transmission and the efficiency of encoding or decoding can be improved.
  • the transceiving unit is further configured to send configuration information to the receiving device; wherein the configuration information is used to determine the generation matrix or a second sub-matrix composed of some rows in the generation matrix
  • the parameter information of the second sub-matrix is used for demodulation and decoding based on the symbol sequence received i times before, the parameter information of the generator matrix includes the size of the N and the size of the M, the The parameter information of the second sub-matrix includes the size of N and the number of rows of the second sub-matrix.
  • the embodiment of the present application discloses another communication device, including: a transceiver unit, configured to receive a symbol sequence from a sending device through a channel; The second sub-matrix is demodulated and decoded based on the symbol sequence received i times to obtain a bit sequence estimate. In this way, the demodulation and decoding transmission is realized, and the performance of demodulation and decoding is improved.
  • the length m i of the symbol sequence y i is a positive integer less than or equal to the maximum number of transmission symbols M, the i is the number of reception times of the received symbol sequence, and the i is a positive integer less than or equal to the M An integer;
  • the estimated length of the bit sequence is the number of columns N of the generator matrix; the number of rows of the generator matrix is the M, and both the M and the N are positive integers.
  • the position of the non-zero elements in each row in the generating matrix is obtained based on the progressive edge growth algorithm; the values of the non-zero elements in each row in the generating matrix are different, and are in the weight set a weight value of a weight value; the value of the non-zero element in the first row in the generation matrix is a weight value randomly assigned in the weight set; in the generation matrix except the first row of the generation matrix
  • the values of the non-zero elements of the row are related to the reference information of the non-zero elements, and there is a negative correlation between the evaluation values corresponding to the reference information.
  • the position of the non-zero elements in each row in the generator matrix is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the generated short loops can be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the processing unit is specifically configured to perform demodulation and decoding based on the symbol sequence received i times by using the generator matrix or the second sub-matrix formed by some rows in the generator matrix to obtain the first A soft message, wherein the length of the first soft message is the N; performing outer code decoding on the first soft message to obtain a bit sequence estimate.
  • the decoding accuracy can be improved by performing outer code decoding on the soft information obtained through demodulation and decoding.
  • the processing unit is specifically configured to perform outer code decoding on the first soft information to obtain second soft information; perform iterative decoding based on the second soft information to obtain bit sequence estimation. In this way, through at least one iterative decoding, the accuracy of decoding can be further improved.
  • the second sub-matrix G' i is a sub-matrix formed by the first m' i rows in the generator matrix; if the i is 1, then the m' i is equal to the m i , and both are positive integers smaller than the M; if the i is greater than 1, the m' i is equal to the sum between the m' i-1 and the m i , and the m i is A positive integer less than or equal to the difference between the M and M' i-1 ; the M' i-1 is equal to the sum of the lengths of the previous (i-1) received symbol sequences
  • the m' i-1 is the number of rows of the second sub-matrix G' i-1 that is demodulated and decoded for the (i-1)th time based on the symbol sequence received the previous (i-1) time. In this way, the efficiency of demodulation and decoding can be improved by performing demodulation and decoding based on all received symbol sequences through
  • the transceiving unit is further configured to receive configuration information from the sending device; wherein the configuration information is used to determine parameter information of the generation matrix or the second sub-matrix, the The parameter information of the generation matrix includes the size of the N and the size of the M, and the parameter information of the second sub-matrix includes the size of the N and the number of rows of the second sub-matrix; the processing unit also uses The parameter information is determined based on the configuration information. In this way, the success rate of decoding can be improved.
  • the reference information of the non-zero elements includes the number of other non-zero elements, and/or the number of other non-zero elements
  • the value of , and/or the determined sequence number of the position of the non-zero element, the column sequence of the other non-zero element is the same as the column sequence of the non-zero element, and the row sequence of the other non-zero element is smaller than the The row order of the nonzero elements.
  • the evaluation value is equal to the number of the other non-zero elements, or the value of the other non-zero elements The sum of squares of the value, or the determined ordinal number.
  • variable node can be further improved according to the number of other non-zero elements, and/or the value of the other non-zero elements, and/or the evaluation value determined by reference information such as the determined sequence number of the position of the non-zero element.
  • the uniform distribution of the middle weight value and the distribution optimization of the weight value on the short ring are convenient to further improve the coding performance.
  • the number of non-zero elements in each row in the generator matrix is the number d of weight values in the weight set. In this way, the transmission rate and efficiency of coded modulation can be improved.
  • the generator matrix includes P cyclic permutation matrix groups, and the cyclic permutation matrix groups include d sub-circular permutation matrices , wherein, the number of rows of the sub-circulation permutation matrix is equal to the number of columns of the sub-circulation permutation matrix, and is equal to the first ratio between the N and the d, and the P is equal to the M and the The second ratio between the first ratios, there is a non-zero element in each row in the sub-circular permutation matrix, and the position of the non-zero element in the first row in the cyclic permutation matrix group is obtained based on the progressive edge growth algorithm, Positions of non-zero elements in rows other than the first row of the sub-circular permutation matrix in the sub-circular permutation matrix are obtained by cyclic shifting based on a previous row of the row.
  • each row in the generator matrix selects an element from the sub-circulation permutation matrix as a non-zero element, so that the non-zero elements
  • the positions of zero elements are evenly distributed, which can improve the transmission rate and efficiency of coded modulation.
  • the position of the non-zero element in the first row of the cyclic permutation matrix group is obtained based on the PEG algorithm, and the position of the non-zero element in the row other than the first row of the sub-circular permutation matrix in the sub-circular permutation matrix is based on the previous row of the row Obtained by cyclic shift.
  • the positions of the non-zero elements in the rows other than the first row in the cyclic permutation matrix group can be determined.
  • the cyclic shift can make the non-zero elements in the same sub-circular permutation matrix be in different columns, so as to evenly distribute the positions of the non-zero elements, which is convenient for the distribution of the degree distribution of the balanced variable node and the distribution optimization of the weight value on the short ring.
  • the reference information of the non-zero element includes values of other non-zero elements, and/or the The determined sequence number of the position of the non-zero element, the column sequence of the other non-zero element is the same as the column sequence of the non-zero element, and the row sequence of the other non-zero element is smaller than the row sequence of the non-zero element.
  • the evaluation value is equal to the sum of the squares of the values of the other non-zero elements, or the determined sequence number .
  • the uniform distribution of the weight values in the variable nodes and the The distribution optimization of weight values facilitates further improvement of encoding performance.
  • values of the non-zero elements in the sub-loop permutation matrix are equal.
  • the values of the non-zero elements in the matrix, or the values of the non-zero elements in the sub-cycle permutation matrices below the row can be determined in units of the sub-loop permutation matrix, so as to further improve the coding performance.
  • the embodiment of the present application discloses a communication device, including a processor, a memory connected to the processor, and a communication interface, the memory is used to store one or more programs, and is configured to perform any of the above-mentioned tasks by the processor. Steps on the one hand.
  • the embodiment of the present application discloses a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the computer-readable storage medium is run on a computer, the computer is made to execute the method of any aspect above.
  • the embodiment of the present application discloses a computer program product, the computer program product is used to store a computer program, and when the computer program is run on a computer, the computer is made to execute the method of any one of the above aspects.
  • the embodiment of the present application discloses a first chip, including a processor and a memory.
  • the processor is used to call from the memory and execute instructions stored in the memory, so that the device equipped with the chip executes the method of any one of the above aspects.
  • the embodiment of the present application discloses a second chip, including: an input interface, an output interface, and a processing circuit.
  • the input interface, the output interface, and the processing circuit are connected through an internal connection path, and the processing circuit is used to perform any of the above. aspects of the method.
  • the embodiment of the present application discloses a third chip, including: an input interface, an output interface, a processor, and optionally a memory, and the input interface, the output interface, the processor, and the memory are connected through an internal connection path
  • the processor is used to execute the code in the memory, and when the code is executed, the processor is used to perform the method in any one of the above aspects.
  • the embodiment of the present application discloses a chip system, including at least one processor, a memory and an interface circuit, the memory, the transceiver and the at least one processor are interconnected through lines, and at least one memory stores a computer program; the computer The program is executed by the processor to execute the method in any one of the above aspects.
  • FIG. 1 is a structural diagram of a communication system provided by an embodiment of the present application.
  • FIG. 2 is a structural diagram of a terminal device provided in an embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of a network device provided in an embodiment of the present application.
  • FIG. 4 is a bipartite graph of a generator matrix provided by an embodiment of the present application.
  • FIG. 5A is a relationship diagram between the achievable rate and the signal-to-noise ratio of different generation matrices provided by the embodiment of the present application;
  • FIG. 5B is a diagram of the relationship between the attainable rate and the signal-to-noise ratio of another generation matrix provided by the embodiment of the present application;
  • FIG. 6 is an implementation block diagram of a data transmission method provided by an embodiment of the present application.
  • FIG. 7 is an implementation block diagram of another data transmission method provided by an embodiment of the present application.
  • FIG. 8 is a schematic flowchart of a data transmission method provided by an embodiment of the present application.
  • FIG. 9 is a schematic flowchart of another data transmission method provided by an embodiment of the present application.
  • FIG. 10 is a schematic structural diagram of a communication device provided by an embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of another communication device provided by an embodiment of the present application.
  • FIG. 1 is a schematic structural diagram of a communication system provided by an embodiment of the present application.
  • the communication system 100 may include at least one network device 101 (only one is shown in FIG. 1 ) and at least one terminal device 102 connected to the network device 101 .
  • the network device 101 may perform wireless communication with the terminal device 102 through one or more antennas.
  • Each network device 101 can provide communication coverage for its corresponding coverage area 103 .
  • the coverage area 103 corresponding to the network device 101 may be divided into multiple sectors (sectors), and each sector corresponds to a part of the coverage area (not shown in FIG. 1 ).
  • the network equipment 101 may also be connected to the core network equipment.
  • the terminal device is a device with a wireless transceiver function.
  • the terminal device can be deployed on land, including indoor or outdoor, handheld, wearable or vehicle-mounted.
  • the terminal device can also be deployed on water (such as a ship, etc.) or in the air (such as an airplane, a balloon, and a satellite, etc.).
  • the terminal device can be a mobile phone, a tablet computer (Pad), a computer with a wireless transceiver function, a virtual reality (virtual reality, VR) terminal device, an augmented reality (augmented reality, AR) terminal device, an industrial control (industrial control), wireless terminals in self-driving, wireless terminals in remote medical, wireless terminals in smart grid, and transportation safety Wireless terminals, wireless terminals in smart cities, wireless terminals in smart homes, etc.
  • a virtual reality (virtual reality, VR) terminal device an augmented reality (augmented reality, AR) terminal device
  • industrial control industrial control
  • wireless terminals in self-driving wireless terminals in remote medical
  • wireless terminals in smart grid wireless terminals in smart grid
  • transportation safety Wireless terminals wireless terminals in smart cities, wireless terminals in smart homes, etc.
  • a terminal device may also sometimes be called a user equipment (user equipment, UE), a terminal (terminal), an access terminal, a UE unit, a UE station, a mobile device, a mobile station, a mobile station (mobile station), a mobile terminal, a mobile client , mobile unit, remote station, remote terminal equipment, remote unit, wireless unit, wireless communication device, user agent or user device, etc.
  • UE user equipment
  • terminal terminal
  • an access terminal a UE unit, a UE station
  • mobile device a mobile station, a mobile station (mobile station)
  • mobile terminal a mobile client , mobile unit, remote station, remote terminal equipment, remote unit, wireless unit, wireless communication device, user agent or user device, etc.
  • FIG. 2 is a schematic structural diagram of a terminal device provided in an embodiment of the present application.
  • the terminal device 200 in FIG. 2 may be the terminal device 102 in the communication system 100 shown in FIG. 1 .
  • the terminal device 200 may include an input and output module (including an audio input and output module 218, a key input module 216, and a display 220, etc.), a user interface 202, one or more processors 204, a transmitter (transmit, TX ) 206, a receiver (receive, RX) 208, a coupler 210, an antenna 214, and a memory 212.
  • TX transmit, TX
  • RX receiver
  • FIG. 2 uses a connection through a bus 205 as an example. in:
  • Antenna 214 may be used to convert electromagnetic energy into electromagnetic waves in free space, or convert electromagnetic waves in free space into electromagnetic energy in a transmission line.
  • the coupler 210 is used to divide the mobile communication signal received by the antenna 214 into multiple paths and distribute them to multiple receivers 208 .
  • the transmitter 206 can be used for transmitting the signal output by the processor 204 .
  • the receiver 208 can be used for receiving and processing the mobile communication signal received by the antenna 214 .
  • the transmitter 206 and the receiver 208 can be regarded as a wireless modem.
  • the number of transmitters 206 and receivers 208 can be one or more.
  • the terminal device 200 may also include other communication components, such as a GPS module, a Bluetooth (Bluetooth) module, a wireless high-fidelity (wireless fidelity, Wi-Fi) module, and the like. Not limited to the wireless communication signals described above, the terminal device 200 may also support other wireless communication signals, such as satellite signals, short-wave signals, and the like. Not limited to wireless communication, the terminal device 200 may also be configured with a wired network interface (such as a local area network (local area network, LAN) interface) 201 to support wired communication.
  • a wired network interface such as a local area network (local area network, LAN) interface
  • the input and output module can be used to realize the interaction between the terminal device 200 and the user/external environment, and can mainly include an audio input and output module 218, a key input module 216, a display 220, and the like.
  • the input-output module may also include a camera, a touch screen, a sensor, and the like.
  • the input-output module can communicate with the processor 204 through the user interface 202 .
  • the memory 212 may be coupled with the processor 204 through a bus or an input/output port, and the memory 212 may also be integrated with the processor 204 .
  • the memory 212 is used to store various software programs and/or sets of instructions.
  • the memory 212 may include high-speed random access memory, or may include non-volatile memory. For example, one or more disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
  • the memory 212 may store an operating system (hereinafter referred to as the system), for example, an embedded operating system such as ANDROID, IOS, WINDOWS, or LINUX.
  • the memory 212 can also store a network communication program, which can be used to communicate with one or more additional devices, one or more terminal devices, and one or more network devices.
  • the memory 212 can also store a user interface program, which can vividly display the content of the application program through a graphical operation interface, or can receive user control of the application program through input controls such as menus, dialog boxes, and buttons. operate.
  • the memory 212 may be used to store an implementation program on the side of the terminal device 200 of the data transmission method provided by one or more embodiments of the present application.
  • Processor 204 is operable to read and execute computer readable instructions. Specifically, the processor 204 can be used to call the program stored in the memory 212, for example, the implementation program of the data transmission method provided by one or more embodiments of the present application on the side of the terminal device 200, and execute the instructions contained in the program In order to realize the methods involved in the subsequent embodiments.
  • the processor 204 can support global system for mobile communication (global system for mobile communication, GSM) communication (or called 2G communication), wideband code division multiple access (wideband code division multiple access, WCDMA) communication (or called 3G communication), And one or more communication technologies in long term evolution (long term evolution, LTE) communication (or called 4G communication), and new radio (new radio, NR) communication (or called 5G communication).
  • GSM global system for mobile communication
  • 2G communication wideband code division multiple access
  • WCDMA wideband code division multiple access
  • 3G communication Wideband code division multiple access
  • LTE long term evolution
  • 4G communication new radio
  • new radio new radio
  • the processor 204 when the processor 204 sends any message or data, it specifically drives or controls the transmitter 206 to do the sending.
  • the processor 204 when the processor 204 receives any message or data, it specifically drives or controls the receiver 208 to do the receiving. Therefore, the processor 204 can be regarded as a control center for performing sending or receiving, and the transmitter 206 and the receiver 208 are specific performers of the sending and receiving operations.
  • terminal device 200 shown in FIG. 2 is only an implementation manner of the embodiment of the present application. In practical applications, the terminal device 200 may include more or fewer components, which is not limited here.
  • the network device is a device that supports a terminal device to access a communication system, or may be configured in a chip of the device.
  • the network device can be an evolved node (evolved Node B, eNB), a base transceiver station (base transceiver station, BTS), a home base station (for example, home evolved Node B, or home Node B, HNB), a baseband unit (baseband unit , BBU), wireless fidelity (wireless fidelity, WIFI) system in the access point (access point, AP), wireless relay node, wireless backhaul node, transmission point (transmission and reception point, TRP or transmission point, TP )wait.
  • gNB or a transmission point (TRP or TP) in a 5G system
  • TRP or TP transmission point
  • one or a group (including multiple antenna panels) antenna panels in a base station in a 5G system or a network node that constitutes a gNB or a transmission point
  • BBU or distributed unit (distributed unit, DU), etc., are not limited here.
  • FIG. 3 is a schematic structural diagram of a network device provided in an embodiment of the present application. It can be understood that the network device 300 in FIG. 3 may be the network device 101 in the communication system 100 shown in FIG. 1 . As shown in FIG. 3 , the network device 300 may include: one or more processors 301 , memory 302 , network interface 303 , transmitter 305 , receiver 306 , coupler 307 and antenna 308 . These components may be connected through the bus 304 or in other ways, and FIG. 3 takes the connection through the bus as an example. in:
  • the network interface 303 can be used for the network device 300 to communicate with other communication devices (eg, other network devices).
  • the network interface 303 may be a wired interface.
  • the transmitter 305 may be used to perform transmission processing on the signal output by the processor 301, for example, signal modulation.
  • the receiver 306 can be used for receiving and processing the mobile communication signal received by the antenna 308 .
  • signal demodulation In some embodiments of the present application, the transmitter 305 and the receiver 306 can be regarded as a wireless modem.
  • Antenna 308 may be used to convert electromagnetic energy in a transmission line to electromagnetic waves in free space, or to convert electromagnetic waves in free space to electromagnetic energy in a transmission line.
  • the coupler 307 can be used to split the mobile communication signal into multiple paths and distribute to multiple receivers 306 .
  • the memory 302 may be coupled with the processor 301 through the bus 304 or an input and output port, and the memory 302 may also be integrated with the processor 301 .
  • the memory 302 is used to store various software programs and/or sets of instructions.
  • the memory 302 may include a high-speed random access memory, or may include a non-volatile memory.
  • the memory 302 can store an operating system (hereinafter referred to as system).
  • system for example, uCOS, VxWorks, RTLinux and other embedded operating systems.
  • the memory 302 can also store a network communication program, which can be used to communicate with one or more additional devices, one or more terminal devices, and one or more network devices.
  • the processor 301 can be used to manage wireless channels, implement call and communication link establishment and teardown, and provide cell switching control for users in the control area.
  • the processor 301 may include: a central management/communication module (administration module/communication module, AM/CM) for channel switching and information switching, for completing call processing, signaling processing, radio resource management,
  • the basic module (basic module, BM) of wireless link management and circuit maintenance functions, the transcoder and sub multiplexer (TCSM) used to complete the functions of multiplexing, demultiplexing and transcoding, etc.
  • the processor 301 may be used to read and execute computer-readable instructions. Specifically, the processor 301 can be used to call programs stored in the memory 302 .
  • the data transmission method provided by one or more embodiments of the present application implements a program on the network device 300 side, and executes instructions included in the program.
  • the network device 300 shown in FIG. 3 is only an implementation manner of the embodiment of the present application. In practical applications, the network device 300 may include more or fewer components, which is not limited here.
  • system and “network” in the embodiments of the present application may be used interchangeably.
  • Multiple means two or more, and in view of this, “multiple” can also be understood as “at least two” in the embodiments of the present application.
  • And/or describes the association relationship of associated objects, indicating that there may be three types of relationships, for example, A and/or B may indicate: A exists alone, A and B exist simultaneously, and B exists independently.
  • the character “/" unless otherwise specified, generally indicates that the associated objects before and after are in an "or” relationship.
  • the receiving device described in the following embodiments may be the above-mentioned terminal device, and the sending device may be the above-mentioned network device.
  • the receiving device described in the following embodiments may be the above-mentioned network device, and the sending device may be the above-mentioned terminal device.
  • the data transmission method described in the embodiment of this application can be used.
  • the data transmission method provided by one or more embodiments of the present application please refer to the following embodiments.
  • the generator matrix is a representation of linear codes and can be used for encoding and decoding.
  • Each row in the generator matrix corresponds to a check node (CN), and each column in the generator matrix corresponds to a variable node (VN).
  • a non-zero element refers to an element whose value is not 0 in the matrix. It can be understood that the value of the non-zero element and the position of the non-zero element in the generator matrix will affect the effect of encoding and decoding. If there is a non-zero element, it means that there is an edge connection between the variable node and the check node corresponding to the position of the non-zero element.
  • the degree of a check node can be defined as the number (or number) of non-zero elements in its corresponding row, and the degree of a variable node can be defined as the number of non-zero elements in its corresponding column.
  • the matrix A is a 4*12 matrix, and there are 12 variable nodes and 6 check nodes.
  • the value of the element at the position corresponding to the fourth row and the third column is 1, which is a non-zero element, and indicates that there is an edge connection between the check node corresponding to the fourth row and the variable node corresponding to the third column.
  • the value of the element at the position corresponding to row 2 and column 5 is 0, which means that there is no edge connection between the check node corresponding to row 2 and the variable node corresponding to column 5.
  • the degree of the element corresponding to the i-th row and the j-th column may be defined as the number of non-zero elements before the i-th row in the j-th column.
  • the reliability of the element corresponding to row i and column j can be defined as the sum of the squares of the values of the non-zero elements before row i in column j. Take the non-zero elements at the corresponding positions of the fourth row and the third column in the matrix A shown above as an example for illustration.
  • the element corresponding to row 1 and column 3 can be recorded as A 1,3
  • the element corresponding to row 2 and column 3 can be recorded as A 2,3
  • the element corresponding to row 3 and column 3 can be recorded as A 3,3
  • the degree of A 4,3 is 1, and the reliability of A 4,3 is 1.
  • the check nodes and variable nodes in the generator matrix can be drawn into a bipartite graph according to their connection relationship.
  • the edges between check nodes and variable nodes correspond to the positions of non-zero elements in the generator matrix
  • the degrees of check nodes and variable nodes correspond to the number of edges connected to the nodes, respectively.
  • the value on the edge between the check node and the variable node indicates the value of the non-zero element corresponding to the check node and the variable node.
  • FIG. 4 provides a bipartite graph of a generator matrix according to an embodiment of the present application.
  • the generation matrix in Figure 4 is a matrix of m*N, where the circles represent variable nodes, b 1 , b 2 , b 3 , ..., b N respectively represent the variable nodes corresponding to the first column in the generation matrix, the second The variable node corresponding to the column, the variable node corresponding to the third column, ..., the variable node corresponding to the Nth column.
  • Squares represent check nodes, which are encoded symbols.
  • c 1 , c 2 , c 3 , ..., cm represent the check node corresponding to the first row, the check node corresponding to the second row, the check node corresponding to the third row, ..., the mth row in the generator matrix, respectively
  • the check node corresponding to the row The edge between the check node and the variable node corresponds to the position of the non-zero element in the generator matrix, and the degrees of the check node and the variable node correspond to the number of edges connected to the node respectively.
  • the values of the non-zero elements in the generator matrix are selected from the weight values in the preset weight set, and the non-zero elements in each row are not equal to the other non-zero elements in the row .
  • the present application does not limit the weight set, and the weight set adopts the existing W set in the prior art, for example,
  • the weight values are all real numbers, which are data obtained through some optimization designs.
  • the weight values in the weight set may make the output symbols satisfy a Gaussian distribution and the like.
  • the number of elements in the weight set can be understood as the number of weight values, and the number of weight values can be recorded as d.
  • a short cycle means that the length of the connection edge that the variable node passes through to return to the variable node is relatively short.
  • the present application does not limit the length of the short loop (or referred to as loop length).
  • the connecting lines between b 1 , c 1 , and b 3 form a loop with a length of 4, which can be called loop 4 .
  • Ring 4 is a short ring with the shortest ring length. From the perspective of the decoding algorithm, the assumed precondition is that the messages transmitted in the iterative process are independent. If there are short loops, the independence will be destroyed, thus affecting the decoding performance.
  • the progressive edge-growth (PEG) algorithm can be used to add connection edges between check nodes and variable nodes. That is, the PEG algorithm is used to determine the position of the non-zero elements in the generator matrix. Based on the PEG algorithm, no rings are formed between the newly added edges and the added edges, or there are as few rings as possible, so that the ring length of the smallest ring between the newly added edges and the added edges is as large as possible (or long).
  • the first selected edge in the check node may be referred to as the first edge in the check node, and may be understood as the position of the first determined non-zero element in the row corresponding to the check node.
  • first selected edge in the check node it can be called other edges in the check node, which can be understood as the determined non-zero element after the position of the first non-zero element is determined in the row corresponding to the check node.
  • the position of the zero element Specifically, the first edge in each check node is randomly (or arbitrarily) selected based on the variable node with the smallest current degree. For other edges in the check node, if one or more variable nodes in the currently added edges cannot be connected to the check node, the newly added edges should be connected to these variable nodes, thereby avoiding the generation of loops.
  • variable nodes in the currently added edges can be connected to the check node through some edges, then the newly added edge should be connected to the variable node with the smallest degree, and ensure the minimum cycle between the variable node and the check node longest. In this way, the generation of short loops can be reduced as much as possible, and the minimum loop length of the generated short loops can be as large as possible, thereby facilitating the improvement of decoding performance.
  • the generator matrix is a 4*12 matrix
  • the degree of each element in row 1 is 0, then the first edge in row 1 is randomly selected from the variable node with the smallest degree.
  • the first edge in row 1 can select the edge corresponding to row 1 and column 1.
  • the other edges in row 1 can be selected arbitrarily.
  • the other edges in row 1 can choose the edges corresponding to row 1 and columns 5, 7, and 12.
  • the degree of the columns in the second row except the first column, the fifth column, the seventh column and the 12th column are all 0, then the first edge in the second row starts from the current minimum degree (degree is 0) Randomly select from the variable node, that is, randomly select from the 2nd column, 3rd column, 4th column, 6th column, 8th column, 9th column, 10th column and 11th column.
  • the first edge in row 2 can select the edge corresponding to row 2 and column 4.
  • the currently added edges are the 4 edges in the first row and the first edge in the second row.
  • variable nodes corresponding to the currently added edges In order to prevent the variable nodes corresponding to the currently added edges from being connected to the check nodes corresponding to the second row, in the second row
  • the other edges of can be arbitrarily selected from the variable nodes except the variable nodes corresponding to the currently added edges (that is, the column sequences other than 1, 5, 7, 12, and 4).
  • other edges in row 2 can select the edges corresponding to column 3, column 8, and column 11 of row 2.
  • the third row except for the first column, the fifth column, the seventh column, the 12th column, the third column, the fourth column, the eighth column and the 11th column, the degrees are all 0, then the third row
  • the first edge in is randomly selected from the variable node with the current minimum degree (degree 0), that is, randomly selected from the 2nd column, 6th column, 9th column and 10th column.
  • the first edge in row 3 can select the edge corresponding to row 3 and column 9.
  • edges that have been added so far are the 4 edges in row 1, the 4 edges in row 2, and the first edge in row 3, so that the variable nodes corresponding to the edges that have been added so far cannot be connected to the corresponding check node, other edges in row 3 can be obtained from other than the variable nodes corresponding to the currently added edges (that is, except for the column sequence of 1, 5, 7, 12, 4, 3, 8, 11, 9 Arbitrary selection in the variable node of the column order outside). As shown in matrix A, other edges in row 3 can select the variable nodes of the remaining unassigned edges, that is, the edges corresponding to columns 2, 6, and 10 in row 3.
  • the degree of each element in row 4 is 1, then the first edge in row 4 is randomly selected from the variable node with the smallest degree (degree 1). As shown in matrix A, the first edge in row 4 can select the edge corresponding to row 4 and column 3. The edges that have been added so far are the 4 edges added in row 1, row 2 and row 3 respectively and the first edge added in row 4.
  • variable node in column 3 is also connected to row 2, row 2
  • row 2 The row is also connected to the 4th column, the 8th column and the 11th column, so that the variable node corresponding to the added edge cannot be connected to the check node corresponding to the 4th row
  • the second edge in the 4th row can be Randomly select an edge from the variable nodes except for the variable nodes that may be connected to the edge corresponding to the 4th row and the 3rd column (ie, column sequences other than 3, 4, 8, and 11).
  • the second edge in the fourth row can select the edge corresponding to the first column in the fourth row.
  • the edge corresponding to the 4th row and the 1st column has been added to the edges that have been added so far.
  • the 1st column is also connected to the 1st row
  • the 1st row is also connected to the 5th column, the 7th column and the 12th column.
  • the variable node corresponding to the added edge cannot be connected to the check node corresponding to the 4th row
  • the third edge in the 4th row can be from except possibly the edge corresponding to the 4th row and the 3rd column and the 4th row and the 1st column
  • An edge is randomly selected from variable nodes other than the variable nodes whose corresponding edges are connected to form a ring (that is, column sequences other than 3, 4, 8, 11, 1, 5, 7, and 12).
  • the third side in row 4 can select the side corresponding to row 4 and column 10.
  • the edge corresponding to the 4th row and the 10th column has been added to the edges that have been added so far.
  • the 10th column is also connected to the 3rd row, and the 3rd row is also connected to the 2nd column, the 6th column and the 9th column.
  • the currently added The variable nodes corresponding to the edges can go back to the corresponding Check the node, and the minimum ring length is 4, and the degree is 1, then randomly select one of the edges not added in the fourth row as the fourth edge in the fourth row. As shown in matrix A, the fourth side in row 4 can be selected as the side corresponding to row 4 and column 5.
  • the position of the non-zero element in each row in the generator matrix G is obtained by the PEG algorithm. In this way, the generation of short loops is reduced as much as possible, which facilitates the improvement of decoding performance.
  • the values of the non-zero elements in each row of the generator matrix G are different, and are a weight value in the weight set. That is to say, the non-zero element in each row of the generator matrix G is a weight value in the weight set, which is different from the values of other non-zero elements in the row. In this way, the complexity of decoding can be reduced.
  • the value of the non-zero element in the first row of the generator matrix G is a weight value randomly assigned in the weight value set W.
  • the weight set W ⁇ 1,2,4,8 ⁇
  • the first row in the matrix A shown above can be assigned as ⁇ 2,0,0,0,1,0,4,0,0,0, 0,8 ⁇ , or could be ⁇ 4,0,0,0,2,0,1,0,0,0,0,8 ⁇ , or could be ⁇ 1,0,0,0,4,0, 18 arrangements such as 8,0,0,0,0,2 ⁇ .
  • the rows in the generator matrix G other than the first row of the generator matrix G may be referred to as other rows.
  • the values of the non-zero elements in other rows are related to the reference information of the non-zero elements, and there is a negative correlation between the evaluation values corresponding to the reference information. That is to say, the greater the evaluation value corresponding to the reference information of the non-zero element, the smaller the value of the non-zero element.
  • the reference information of non-zero elements may include the number of other non-zero elements, the value of other non-zero elements, and the determined sequence number of the position of non-zero elements one or more of these.
  • the evaluation value may be the number of other non-zero elements, the values of other non-zero elements, the determined sequence number of the position of the non-zero elements, or the sum of the squares of the values of other non-zero elements.
  • the column sequence of the other non-zero elements is the same as that of the non-zero elements, and the row sequence of the other non-zero elements is smaller than the row sequence of the non-zero elements. That is to say, when the non-zero element is the i-th row and the j-th column, other non-zero elements may be the non-zero elements in the elements of the first (i-1) row in the j-th column. As in the matrix A shown above, if the non-zero element is A 4,3 , the other non-zero elements are the non-zero elements in A 1,3 , A 2,3 and A 3,3 , namely A 2,3 .
  • the positions of the non-zero elements are obtained by the PEG algorithm. That is to say, when the non-zero element is the i-th row, the degree of the non-zero element corresponding to the first edge in the i-th row is the smallest. Since there is a negative correlation between the value of the non-zero element and the evaluation value corresponding to the reference information, if the evaluation value is a certain serial number, the value of the non-zero element corresponding to the first edge is the maximum value in the weight set.
  • the ring length of the smallest ring formed by the nodes is longer. Assuming that the variable node selected for the nth time forms a ring 4 with the previous nodes, all nodes after the nth time will form a ring 4.
  • the large weight is assigned to the non-zero element with a smaller serial number, and the edge connected to the check node will be assigned to one large and one small Two weights, instead of having all the small weights on a short ring, improves encoding performance.
  • the evaluation value of the reference information is the sum of squares of values of other non-zero elements for illustration.
  • the position of the non-zero element in the first row of the generator matrix is randomly selected, for example, the column sequence corresponding to the position of the non-zero element in the first row is ⁇ 1,5,7,12 ⁇ .
  • the value of the non-zero element in the first row is a randomly assigned weight value
  • the matrix B in the first row can be ⁇ 1,0,0,0,4,0,8,0,0,0, 0,2 ⁇ .
  • the degree of each element in the second row is 0 except for the column ⁇ 1,5,7,12 ⁇ , then randomly select 4 positions as non-zero elements from the elements with degree 0.
  • the column sequence corresponding to the position of the non-zero element in the second row is ⁇ 3,4,8,11 ⁇
  • the weight value of the second row is randomly assigned, and the second row can be ⁇ 0,0 in matrix B as shown below ,2,1,0,0,0,4,0,0,8,0 ⁇ .
  • the degrees of the columns in the third row except ⁇ 1,5,7,12 ⁇ and ⁇ 3,4,8,11 ⁇ are all 0, that is, the column sequence corresponding to the position of the non-zero element in the third row is ⁇ 2,6,9,10 ⁇ .
  • the third row can be matrix B as shown below as ⁇ 0,8,0,0,0,2,0,0,1,4,0,0 ⁇ .
  • the degree of each element in the fourth row is 1, and based on the longest ring length of the smallest ring between the newly added edge and the added edge in the PEG algorithm, determine the column corresponding to the position of the non-zero element in the fourth row
  • the order is ⁇ 1,3,5,10 ⁇ , and the sum of the squares of the values of other elements is ⁇ 1,4,16,16 ⁇ .
  • the weights are assigned in order from large to small, and the generation matrix is shown in the following matrix B.
  • the elements in the fourth row ⁇ 8,0,4,0 ,2,0,0,0,0,1,0,0 ⁇ .
  • the determination sequence number of the element whose evaluation value of the reference information is non-zero is used as an example for illustration.
  • the first 3 rows of the matrix C are the same as the above matrix B, if the column sequence corresponding to the position of the non-zero element in the 4th row is ⁇ 1,3,5,10 ⁇ , the determined sequence numbers are ⁇ 2,1,4,3 ⁇ respectively , then according to the negative correlation between the value of the non-zero element and the evaluation value corresponding to the reference information, the weights are assigned in order from large to small, and the generation matrix is shown in the following matrix C.
  • the elements of the fourth row ⁇ 4,0,8 ,0,1,0,0,0,0,2,0,0 ⁇ .
  • the number of non-zero elements in each row in the generator matrix G is the number d of weight values in the weight set W.
  • the weight set W and the quantity d can refer to the above, and will not be repeated here. It can be understood that if the number of non-zero elements in each row in the generator matrix G is the number d of weight values in the weight set W, then it can be determined that the degree of the check node in the generator matrix G is d. If each encoded symbol can be uniquely decoded into d variable nodes, the maximum achievable rate is 2d. In this way, the transmission rate and efficiency of coded modulation can be improved.
  • the generator matrix G includes P cyclic permutation matrix groups, and the cyclic permutation matrix groups include d sub-circular permutation matrices.
  • the sub-circular permutation matrix is a kind of circulant permutation matrix (circulant permutation matrix, CPM).
  • the number of rows and columns of each sub-circular permutation matrix in the matrix D 0 is N/d.
  • the number of cyclic permutation matrix groups in the matrix D 0 may be the ratio between the number of rows of the matrix D 0 and the number of rows of the sub-circular permutation matrix, ie M/(N/d).
  • the number of sub-circular permutation matrices in each cyclic permutation matrix group can be the ratio between the number of columns of matrix D0 and the number of columns of sub-circular permutation matrices, that is, N/(N/d) (that is, d).
  • each row of the sub-circular permutation matrix there is one non-zero element in each row of the sub-circular permutation matrix, and the value of the non-zero element is a weight value in the weight set.
  • the number of non-zero elements in each row in the generator matrix G is equal to the number d of weight values in the weight set, then each row in the generator matrix G selects an element from the sub-circulation permutation matrix as a non-zero element, so that the non-zero The positions of elements are evenly distributed, which facilitates improved coding performance.
  • the position of the non-zero elements in the first row in the cyclic permutation matrix group is obtained based on the PEG algorithm, and the positions of the non-zero elements in the rows other than the first row of the sub-circular permutation matrix in the sub-circular permutation matrix The position is obtained by cyclic shifting based on the row above the row. In this way, after the positions of the non-zero elements in the first row are determined, the positions of the non-zero elements in the rows other than the first row in the cyclic permutation matrix group can be determined.
  • the cyclic shift can make the non-zero elements in the same sub-circular permutation matrix be in different columns, so that the positions of the non-zero elements can be evenly distributed, and it is convenient to balance the degree distribution of the variable nodes. It should be noted that the present application does not limit the direction of the cyclic shift, and the cyclic shift may be one bit to the left or one bit to the right.
  • the reference information of the non-zero elements in the generator matrix G includes the values of other non-zero elements, and/or the determined sequence numbers of the positions of the non-zero elements.
  • the evaluation value of the reference information of the non-zero elements in the generator matrix G is equal to the sum of the squares of the values of other non-zero elements, or a sequence number is determined.
  • the reference information and the evaluation value of the reference information can refer to the foregoing, and will not be repeated here. It can be understood that assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short loop, and can improve the coding performance. And based on the value of other non-zero elements and/or the evaluation value determined by the determined serial number of the position of the non-zero element, the weight value of the variable node corresponding to the non-zero element can be reduced to balance the distribution of the weight value of the variable node, which is convenient Improve decoding performance.
  • the values of the non-zero elements in the sub-loop permutation matrix are equal.
  • the non-zero elements in the same sub-circular permutation matrix are equal, and each sub-circular permutation matrix in the same group of cyclic permutation matrices is a weight value.
  • the value of the non-zero element in the matrix whose value of the non-zero element is equal may be called the weight of the matrix.
  • the values of the non-zero elements in the matrix, or the values of the non-zero elements in the sub-cycle permutation matrices below the row can be determined in units of the sub-loop permutation matrix, so as to further improve the coding performance.
  • the evaluation value of the reference information is the sum of the squares of the values of other non-zero elements, and the values of the non-zero elements in the sub-loop permutation matrix are equal for illustration.
  • the 1st, 2nd, and 3rd rows can be called the first cyclic permutation matrix group in the generator matrix, and the 4th, 5th, and 6th rows can be called the second cyclic permutation matrix group in the generator matrix, and each cyclic permutation matrix Group includes 3 sub-circular permutation matrices.
  • the weight distribution of the first cyclic permutation matrix group in the generator matrix can be shown as the following matrix D, which is ⁇ 1, 2, 4, 8 ⁇ .
  • the position of the non-zero elements in the first 4 rows of the matrix D can be the same as the positions of the non-zero elements in the above matrix B and matrix C, and calculate the square of the value of the other non-zero elements corresponding to the connecting edge in the fourth row of the matrix in turn And, get ⁇ 1,4,16,64 ⁇ .
  • the weights are assigned in order from large to small.
  • the weight of the second group of cyclic permutation matrices in the generation matrix can be shown in the following matrix D, which is ⁇ 8,4,2,1 ⁇ .
  • the sending device determines the generator matrix G according to the size of N and/or the transmission rate requirement.
  • the size of N is equal to the length of the bit sequence. That is to say, the size of N is the length of the symbol sequence to be transmitted. Since the column length of the generator matrix G is equal to N, the success rate of information encoding or decoding can be improved by determining the generator matrix G according to the size of N. Similarly, the generator matrix G can also be determined according to the size of M.
  • the transmission rate requirement may be the minimum value of the transmission rate.
  • the transmission rate is the ratio between the length of the bit sequence and the length of the symbol sequence, eg N/m' i .
  • the transmission rate requirement can be determined by the base station or the sending device according to channel parameters, etc.
  • different generator matrices encode or decode information with different bit lengths at different rates. Therefore, determining the generator matrix G according to the size of N and/or the transmission rate requirement can improve the efficiency of information encoding or decoding.
  • FIG. 5A and FIG. 5B are diagrams showing the relationship between achievable rate and signal-to-noise ratio (SNB) of different generation matrices provided by the present application.
  • the generation matrix among Fig. 5 A and Fig. 5 B can comprise quasi-cyclic-asymptotic edge growth (quasi-cyclic-PEG, QC-PEG) matrix, asymptotic edge growth-short analog fountain codes (PEG-short analog fountain codes, PEG-SAFC) matrix, progressive edge growth enhancement (PEG-enhancement, PEG-E) matrix, SAFC matrix, max-min matrix and weight coefficient-gradual edge growth (weight coefficient-PEG, WC-PEG) matrix.
  • the degree d of the check node is 8, and the rate performance of the PEG-E matrix and the QC-PEG matrix is optimal.
  • PEG-E has the best performance at high speed.
  • the rate performance of the PEG-SAFC matrix is optimal.
  • the PEG-SAFC matrix is much better than the max-min matrix and WC-PEG matrix at low rates, and it is similar to the max-min matrix in high rate scenarios, and is better than the WC-PEG matrix.
  • a generator matrix obtained based on the QC-PEG algorithm may be used as the generator matrix G.
  • the generator matrix obtained by the PEG-SAFC algorithm may be used as the generator matrix G.
  • the generator matrix obtained based on the PEG-E algorithm may be used as the generator matrix G.
  • first threshold is greater than the second threshold
  • first threshold may be 1024
  • second threshold may be 64.
  • the information length greater than or equal to the first threshold can be called medium length information
  • the information length less than the first threshold and greater than or equal to the second threshold can be called medium information
  • the information length less than or equal to the second threshold can be called medium length information. called short messages.
  • the algorithm for constructing the generator matrix G is determined based on the length of the bit sequence, so as to improve the decoding performance of the generator matrix G.
  • the symbol sequence transmitted by the sending device to the channel can be a symbol sequence obtained by encoding and modulating according to the generator matrix or a partial serial number sequence in the symbol sequence, or a symbol sequence obtained by encoding and modulating the first sub-matrix composed of some rows in the generator matrix .
  • the symbol sequence can be transmitted once or multiple times.
  • the receiving device may perform demodulation and decoding based on all received symbol sequences by using the generator matrix or the second sub-matrix formed by some rows in the generator matrix.
  • the symbol sequence transmitted by the sending device for the i-th time may be denoted as c i .
  • the last transmitted symbol sequence refers to the (i-1)th transmitted symbol sequence.
  • the symbol sequence for the next transmission refers to the symbol sequence for the (i+1)th transmission.
  • the symbol sequence c i-1 represents the symbol sequence transmitted last time
  • the symbol sequence c i+1 represents the symbol sequence transmitted next time.
  • the first sub-matrix G i-1 represents the first sub-matrix for encoding and modulating the symbol sequence c i-1 transmitted last time.
  • the symbol sequence received by the receiving device for the ith time can be recorded as y i .
  • the last received symbol sequence refers to the (i-1)th received symbol sequence.
  • the next received symbol sequence refers to the (i+1)th received symbol sequence.
  • the symbol sequence y i-1 represents the symbol sequence received last time
  • the symbol sequence y i+1 represents the symbol sequence received next time.
  • the symbol sequence y 1 , ..., and the symbol sequence y i represent the symbol sequences received from the 1st to the ith times, that is, the symbol sequences received from the previous i times.
  • the second sub-matrix G' i-1 represents the second sub-matrix for demodulation and decoding based on the previous (i-1) received symbol sequences (ie symbol sequences y 1 ,..., symbol sequences y i-1 ) .
  • M is the number of rows of the generator matrix, that is, M is the maximum number of transmission sequence numbers, and i is a positive integer less than or equal to M. That is to say, the maximum length of the symbol sequence is M, and the maximum number of transmission times of the symbol sequence is M.
  • the total number of transmissions of the symbol sequence can be understood as the maximum value of i.
  • the sending device transmits the symbol sequence corresponding to the bit sequence in one transmission, and the receiving device performs demodulation and decoding based on the symbol sequence received for the first time, and the demodulation and decoding are successful, so as to recover
  • the length of the bit sequence s sent by the sending device may be a positive integer less than or equal to M. If the total number of transmissions is M, it may mean that the sending device transmits the symbol sequence corresponding to the bit sequence in M transmissions, and the length of the symbol sequence for each transmission is 1.
  • the symbol sequence for each transmission can be a symbol sequence obtained by the sending device using the first sub-matrix composed of one row in the generator matrix for encoding and modulation, or a symbol sequence selected in sequence from the symbol sequence obtained by using the generator matrix for encoding and modulation, and the obtained symbol sequence.
  • the receiving device performs demodulation and decoding based on the previous (M-1) received symbol sequences, and all demodulation and decoding fails.
  • the success or failure of demodulation and decoding may be determined based on whether the receiving device sends indication information for indicating success or failure of demodulation and decoding within a preset time period. This application does not limit the preset duration and types of instruction information.
  • the indication information may be an acknowledgment message (acknowledgment, ACK), and after receiving the ACK, it may be determined that the demodulation and decoding are successful. Otherwise, it is determined that demodulation and decoding fail.
  • the total length of the symbol sequence transmitted by the sending device to the receiving device should be less than or equal to M.
  • the length of the symbol sequence c i transmitted this time can be recorded as m i
  • the total length of the symbol sequence received by the receiving device (i-1) times can be recorded as M′ i-1 , then M′ i-1 Equal to the sum of the lengths of the previous (i-1) received symbol sequences.
  • the length of the symbol sequence y i received by the receiving device is equal to the length of the symbol sequence ci transmitted by the sending device, that is, the length of the symbol sequence y i is m i .
  • the sending device transmits the next symbol sequence, ie, c i , to the receiving device.
  • the length of the symbol sequence c i should be less than or equal to the difference between M and M' i-1 .
  • the sending device can also determine whether to transmit the next symbol sequence based on the aforementioned indication information used to indicate the success or failure of the demodulation and decoding, that is, stop transmitting the next symbol sequence after the indication information indicates that the demodulation and decoding are successful . Otherwise, proceed to transmit the next sequence of symbols.
  • FIG. 6 is an implementation block diagram of a data transmission method provided by an embodiment of the present application.
  • Figure 6 illustrates the i-th transmission of the symbol sequence by the sending device to the receiving device.
  • the symbol sequence can be a partial symbol selected for the i-th time in the symbol sequence C obtained by encoding and modulating the first sequence b based on the generator matrix G by the sending device A sequence c i , or a symbol sequence c i obtained by encoding and modulating the first sequence b based on the first sub-matrix G i .
  • the step of selecting the partial symbol sequence c i may be determined before the first transmission, or may be based on feedback information (for example, channel parameters, etc.) received from the receiving device after each transmission of the symbol sequence.
  • feedback information for example, channel parameters, etc.
  • Part of the symbol sequence c i selected from the symbol sequence C is the same as the method of selecting the first sub-matrix G i from the generator matrix G, that is, when i is 1, the first m i (namely m 1 ) is selected from the symbol sequence C symbols to obtain the symbol sequence c i (namely c 1 ), so that the length of c 1 is m 1 . And select the sub-matrix formed by the first mi (ie m 1 ) rows from the generator matrix G as the first sub-matrix G i (ie G 1 ), the number of rows of the first sub-matrix G 1 is m 1 .
  • the sending device uses a binary phase shift keying (binary phase shift keying, BPSK) mapping module to perform BPSK mapping on the bit sequence s to be transmitted to obtain a first sequence b. Then, code and modulate the first sequence b through the code modulation module to obtain the symbol sequence c i .
  • the sending device sends the symbol sequence ci to the receiving device through the channel. Since there may be noise in the channel, the receiving device can demodulate and decode the currently received noise-containing symbol sequence y 1 ,..., symbol sequence y i through the demodulation and decoding module, and obtain the bit sequence estimate s ′ , to recover the bit sequence s sent by the sending device.
  • BPSK binary phase shift keying
  • a bit sequence refers to a sequence formed by arranging 0 and 1, that is, each element in the bit sequence s is 0 or 1.
  • Each element in the bit sequence estimate s ' may be a sequence of 0 and 1, or may be a probability value used to indicate the possibility of the element being 0 or 1.
  • the bit sequence estimate s ' may alternatively be a logarithmic probability ratio, which is used to represent the logarithmic ratio of the probability of the element being 0 or 1, etc.
  • BPSK is one of the conversion methods for converting an analog signal into a digital signal, and can transmit and receive binary value (1 bit) information at the same time.
  • Each element in the first sequence b is 1 or -1.
  • the first sub-matrix G i is a sub-matrix composed of some rows in the generator matrix G, and is used for encoding and modulating the first sequence.
  • the present application does not limit the structure of the first sub-matrix G i .
  • the number of rows of the first sub-matrix G i is equal to the length m i of the symbol sequence ci . If i is 1, the first sub-matrix G i is a sub-matrix composed of the first m i rows in the generator matrix G. If i is greater than 1, the first sub-matrix G i is a sub-matrix formed from the (m i-1 +1)th row to the (m i-1 +m i )th row in the generator matrix.
  • the generator matrix G is an M*N generator matrix, that is, the number of rows of the generator matrix G is M, and the number of columns is N.
  • mi-1 is equal to the number of rows of the first sub-matrix G i- 1 that encodes and modulates the symbol sequence ci-1 transmitted last time, and is equal to the length m i-1 of the symbol sequence ci-1 . Based on the fact that the maximum number of transmission symbols is M, then when i is 1, mi (ie m 1 ) is a positive integer smaller than M.
  • the generator matrix G is a 12*12 matrix
  • the length of the symbol sequence for the first transmission is 5
  • the length of the symbol sequence for the second transmission is 4, and the length of the symbol sequence for the third transmission is 3.
  • m 1 is equal to 5
  • m 2 is equal to 4
  • m 3 is equal to 3.
  • the number of rows of the first sub-matrix G 1 used in the first encoding and modulation is 5, that is, the first sub-matrix G 1 is a sub-matrix composed of the first 5 rows in the generator matrix G.
  • the number of rows of the first sub-matrix G 2 used in the second encoding and modulation is 4, that is, the first sub-matrix G 2 is a sub-matrix composed of rows 6 to 9 in the generator matrix G.
  • the number of rows of the first sub-matrix G 3 used in the third encoding and modulation is 3, that is, the first sub-matrix G 3 is a sub-matrix composed of rows 10 to 12 in the generator matrix G.
  • the receiving device can Demodulate and decode the second received symbol sequence, so that the bit sequence estimate s ' obtained by demodulation and decoding is the bit sequence s.
  • This application does not limit the length m i of the symbol sequence sent by the sending device each time and the maximum number M of transmission symbols. Since the sending device is generally an access network device, the size of mi and the size of M can be determined by the sending device. The size of m i and the size of M may be notified by the sending device to the receiving device. Alternatively, a pre-agreed calculation method or table may be used, and the receiving device may determine based on relevant configuration information.
  • the sending device determines the length mi and/or the size of M of the symbol sequence c i according to channel parameters of the channel.
  • the channel parameters may be channel state, channel capacity, etc., which are not limited here.
  • m i is a positive integer less than or equal to the difference between M and M' i-1 . It can be understood that the maximum transmission symbol M can be determined according to the channel parameters of the channel, and the size of the length m i of the symbol sequence c i in the remaining untransmitted symbol sequences can be determined according to the length of the symbol sequence transmitted in the previous (i-1) times, It can improve the success rate of information transmission and the efficiency of encoding or decoding.
  • the sending device sends configuration information to the receiving device.
  • the configuration information is used to determine the parameter information of the generator matrix or the second sub-matrix G' i composed of some rows in the generator matrix, and the second sub-matrix G' i is used to The received symbol sequence is demodulated and decoded.
  • the receiving device may determine parameter information of the generator matrix G or the second sub-matrix G′ i required for demodulation and decoding based on the configuration information. In this way, the receiving device can determine the matrix used for demodulation and decoding, which improves the success rate of demodulation and decoding.
  • the second sub-matrix G' i is a sub-matrix formed by the first m' i in the generator matrix G, that is, the number of rows of the second sub-matrix G' i is m' i .
  • the length of the symbol sequence ci is m i
  • the length of the symbol sequence y i is also m i .
  • the second sub-matrix G' 1 is the first sub-matrix G 1 . If i is greater than 1, then m' i is equal to the sum between m' i-1 and m i , and m' i-1 is the first (i-1) received symbol sequence based on the demodulation and decoding The number of rows of the second sub-matrix G′ i-1 .
  • the generator matrix G is a 12*12 matrix
  • the length m 1 of the symbol sequence transmitted in the first transmission is 5, the length m 2 of the symbol sequence transmitted in the second transmission is 4, and the length m 3 of the symbol sequence transmitted in the third transmission is 3.
  • the number of rows m'1 of the second sub-matrix G'1 used in the first demodulation and decoding is equal to 5, that is, the second sub-matrix G'1 is a sub-matrix composed of the first 5 rows in the generator matrix G.
  • the row number m'2 of the second sub-matrix G'2 used in the second demodulation and decoding is equal to 5+4, that is, the second sub-matrix G'2 is a sub-matrix composed of the first 9 rows in the generator matrix G.
  • the row number m'3 of the second sub-matrix G'3 used in the third demodulation and decoding is equal to 9+ 3 and equal to M, that is, the second sub-matrix G'3 is the generator matrix G.
  • the parameter information of the generator matrix G may include the size of M and the size of the length N of the bit sequence s. In this way, the number of rows and columns of the generator matrix G can be determined.
  • the parameter information of the second sub-matrix G' i may include the size of N and the number of rows of the second sub-matrix. As mentioned above, when i is 1, the row number m' i of the second sub-matrix G' i is equal to m i . When i is greater than 1, m' i is equal to the sum between m' i-1 and m i .
  • the size of the row number m' i of the second sub-matrix G' i can be obtained based on the size of m i .
  • the size of N is also the number of columns of the generator matrix G, that is, the size of N is the number of columns of the second sub-matrix G′ i . In this way, the number of rows and columns of the second sub-matrix G' i can be determined based on the size of N and the size of m' i .
  • the parameter information of the second sub-matrix G′ i may also include the size of the number i of transmission times of the symbol sequence y i and the size of the maximum number of symbols M to be transmitted, etc., which are not limited here. It can be understood that, after the receiving device obtains the size of i and/or M, the size of m' i may be obtained based on a rule or table preset by the sending device and the receiving device.
  • the receiving device when the receiving device counts by itself, the size of i can be obtained by itself. And the receiving device can obtain the length m i of the symbol sequence y i and the second sub-matrix G' i-1 for demodulation and decoding of the symbol sequence received in the previous (i-1) times based on the received symbol sequence y i The number of rows m' i-1 calculates the size of m' i . The receiving device may also acquire the size of mi and/or the size of M, etc. according to channel parameters.
  • FIG. 7 is an implementation block diagram of another data transmission method provided by an embodiment of the present application. This method is consistent with FIG. 6 , and is illustrated by taking the i-th transmission of the symbol sequence by the sending device to the receiving device.
  • the sending device performs concatenated outer code encoding on the bit sequence s to be transmitted to obtain a second sequence a. Then the sending device performs BPSK mapping on the second sequence a to obtain the first sequence b. Then code and modulate the first sequence b to obtain a symbol sequence c i , and send the symbol sequence c i to the receiving device on the channel.
  • the receiving device can demodulate and decode the currently received symbol sequence y 1 , ..., symbol sequence y i containing noise, to obtain the first soft information P 1 .
  • the receiving device performs outer code decoding according to the first soft information P 1 to obtain a bit sequence estimate s', so as to recover the bit sequence s sent by the sending device.
  • the soft information may include the probability value of whether each bit in the bit sequence s corresponding to the inner code is 0 or 1, or may include a logarithmic probability ratio (ratio of the probability of being 0 or 1) corresponding to the bit sequence s.
  • the lengths of the bit sequence s, the first sequence b, the second sequence a, the first soft information P1 and the bit sequence estimate s' are all N.
  • the bit sequence s, the first sequence b, the second sequence a, and the symbol sequence c i can refer to the description in Figure 6, and the first soft information P 1 and the bit sequence estimation s' can refer to the description of the bit sequence estimation s' in Figure 6, I won't repeat them here.
  • performing concatenated outer code coding on the bit sequence s can improve coding performance. If the sending device performs the operation of concatenated outer code encoding, after the receiving device performs demodulation and decoding on the symbol sequence y i , it can obtain the first soft key used to describe the probability that the element in the bit sequence is 0 or 1 Information P 1 . The outer code decoding of the first soft information P1 by the outer code decoding module can improve the decoding accuracy.
  • the step of performing outer code decoding on the first soft information P1 may be an iterative decoding process.
  • the soft information obtained by demodulation and decoding by the demodulation and decoding module (or called the inner code decoding module) can be called the first soft information P 1
  • the outer code decoding module can be The soft information obtained by decoding is called second soft information P 2 .
  • the second soft information P2 is input to the decoding and decoding module, so that the soft information is iteratively decoded between the outer code decoding module and the decoding and decoding module, until the demodulation and decoding is successful or the iterative decoding is completed, and the bit sequence is obtained Estimate s'.
  • the present application does not limit the number of iterative decoding, which may be 5-10 times. It can be understood that performing at least one iterative decoding on the soft information can further improve the accuracy of demodulation and decoding.
  • FIG. 8 is a schematic flowchart of a data transmission method provided by an embodiment of the present application.
  • the method can be applied to the system shown in FIG. 1 , and the execution subject of the method is the sending device for description.
  • the method shown in FIG. 8 may include steps S801-S803, wherein:
  • S801 The sending device performs BPSK mapping on a bit sequence to be transmitted to obtain a first sequence.
  • each element in the bit sequence is 0 or 1
  • each element in the first sequence is 1 or -1
  • the lengths of the bit sequence and the first sequence are both N.
  • step S801 includes: the sending device performs concatenated outer code encoding on the bit sequence to be transmitted to obtain a second sequence, where the length of the second sequence is the N; BPSK mapping is performed on the second sequence to obtain the first sequence. In this way, performing concatenated outer code coding on the bit sequence can improve the coding performance.
  • the sending device encodes and modulates the first sequence according to the generator matrix or the first sub-matrix formed by some rows in the generator matrix to obtain a symbol sequence.
  • the length mi of the symbol sequence c i is a positive integer less than or equal to the maximum number of transmission symbols M; the i is the number of transmissions of the symbol sequence, and the i is a positive integer less than or equal to the M;
  • the number of columns of the generating matrix is said N, the number of rows of said generating matrix is said M, and said M and said N are both positive integers.
  • the position of the non-zero elements in each row in the generating matrix is obtained based on the progressive edge growth algorithm; the values of the non-zero elements in each row in the generating matrix are different, and are in the weight set a weight value of a weight value; the value of the non-zero element in the first row in the generation matrix is a weight value randomly assigned in the weight set; in the generation matrix except the first row of the generation matrix
  • the values of the non-zero elements of the row are related to the reference information of the non-zero elements, and there is a negative correlation between the evaluation values corresponding to the reference information.
  • the position of the non-zero elements in each row in the generator matrix is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the generated short loops can be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the reference information of the non-zero element includes the number of other non-zero elements, and/or the value of the other non-zero element, and/or the determined sequence number of the position of the non-zero element
  • the column sequence of the other non-zero elements is the same as the column sequence of the non-zero elements
  • the row sequence of the other non-zero elements is smaller than the row sequence of the non-zero elements.
  • the evaluation value is equal to the quantity of the other non-zero elements, or the sum of squares of values of the other non-zero elements, or the determined sequence number.
  • variable node can be further improved according to the number of other non-zero elements, and/or the value of the other non-zero elements, and/or the evaluation value determined by reference information such as the determined sequence number of the position of the non-zero element.
  • the uniform distribution of the middle weight value and the distribution optimization of the weight value on the short ring are convenient to further improve the coding performance.
  • the number of non-zero elements in each row in the generator matrix is the number d of weight values in the weight set. In this way, the transmission rate and efficiency of coded modulation can be improved.
  • the generator matrix includes P cyclic permutation matrix groups, and the cyclic permutation matrix groups include the d sub-circular permutation matrices, wherein the number of rows of the sub-circular permutation matrix and the number of columns of the sub-circular permutation matrix is equal to the first ratio between the N and the d, the P is equal to the second ratio between the M and the first ratio, and the There is a non-zero element in each row in the sub-circulation permutation matrix, and the position of the non-zero element in the first row in the cyclic permutation matrix group is obtained based on the progressive edge growth algorithm, and the sub-circulation permutation matrix is divided by the sub-circulation The positions of the non-zero elements in the rows other than the first row of the permutation matrix are obtained by cyclic shifting based on the previous row of the row.
  • each row in the generator matrix selects an element from the sub-circulation permutation matrix as a non-zero element, so that the non-zero elements
  • the positions of zero elements are evenly distributed, which can improve the transmission rate and efficiency of coded modulation.
  • the position of the non-zero element in the first row of the cyclic permutation matrix group is obtained based on the PEG algorithm, and the position of the non-zero element in the row other than the first row of the sub-circular permutation matrix in the sub-circular permutation matrix is based on the previous row of the row Obtained by cyclic shift.
  • the positions of the non-zero elements in the rows other than the first row in the cyclic permutation matrix group can be determined.
  • the cyclic shift can make the non-zero elements in the same sub-circular permutation matrix be in different columns, so as to evenly distribute the positions of the non-zero elements, which is convenient for the distribution of the degree distribution of the balanced variable nodes and the distribution optimization of the weight value on the short ring.
  • the reference information of the non-zero element includes the values of other non-zero elements, and/or the determined sequence number of the position of the non-zero element, and the column of the other non-zero element
  • the column order of the non-zero elements is the same as the column order of the non-zero elements, and the row order of the other non-zero elements is smaller than the row order of the non-zero elements.
  • the evaluation value is equal to a sum of squares of values of the other non-zero elements, or the determined sequence number.
  • the uniform distribution of the weight values in the variable nodes and the The distribution optimization of weight values facilitates further improvement of encoding performance.
  • values of the non-zero elements in the sub-loop permutation matrix are equal. In this way, the values of the non-zero elements in the matrix, or the values of the non-zero elements in the sub-cycle permutation matrices below the row, can be determined in units of the sub-loop permutation matrix, so as to further improve the coding performance.
  • the sending device determines the generation matrix according to the size of N and/or a transmission rate requirement. In this way, the accuracy rate of selecting the generator matrix can be improved, thereby improving the performance of encoding and decoding.
  • the number of rows of the first sub-matrix G i is equal to the mi; if the i is 1, then the first sub-matrix G i is A sub-matrix formed by m i rows, the m i is a positive integer less than the M; if the i is greater than 1, the first sub-matrix G i is the (m i-1 +th in the generator matrix 1) a sub-matrix formed from row to row (m i-1 +m i ), said m i is a positive integer less than or equal to the difference between said M and M' i-1 ; said M' i-1 is equal to the sum of the lengths of the symbol sequences of the previous (i-1) transmissions
  • the m i-1 is the number of rows of the first sub-matrix G i- 1 that encodes and modulates the transmitted symbol sequence c i- 1 for the (i-1)th time, and is equal to the number of rows of the symbol sequence c i-1 length
  • the sending device determines the size of mi and/or the size of M according to channel parameters of the channel. In this way, the success rate of information transmission and the efficiency of encoding or decoding can be improved.
  • the method further includes: the sending device sending configuration information to the receiving device; wherein the configuration information is used to determine the generation matrix or a second sub-matrix formed by some rows in the generation matrix
  • the parameter information of the second sub-matrix is used for demodulation and decoding based on the symbol sequence received i times before, the parameter information of the generator matrix includes the size of the N and the size of the M, the The parameter information of the second sub-matrix includes the size of N and the number of rows of the second sub-matrix. In this way, the success rate of decoding can be improved.
  • S803 The sending device sends the symbol sequence to the receiving device through the channel.
  • the sending device first performs BPSK mapping on the bit sequence to be transmitted to obtain the first sequence. Then encode and modulate the first sequence according to the generator matrix or the first sub-matrix formed by some rows in the generator matrix to obtain a symbol sequence. The sequence of symbols is then sent over the channel to the receiving device. In this way, coded modulation transmission is realized, and the performance of coded modulation is improved.
  • the decoding process of the receiving device is the reverse process of the encoding process.
  • FIG. 9 is a schematic flowchart of another data transmission method provided by an embodiment of the present application. The method can be applied to the system shown in FIG. 1 , and the method is described as the receiver device. The method shown in FIG. 9 may include the following steps S901 and S902, wherein:
  • the receiving device receives a symbol sequence from the sending device through a channel.
  • the length m i of the symbol sequence y i is a positive integer less than or equal to the maximum number of transmission symbols M, the i is the number of reception times of the received symbol sequence, and the i is less than or equal to A positive integer of said M.
  • the symbol sequence y i can be a symbol sequence obtained by channel transmission of the symbol sequence c i obtained by encoding and modulating based on the first sub-matrix G i , and can also be a partial symbol sequence c selected from the symbol sequence obtained by encoding and modulating based on the generator matrix G i is the symbol sequence obtained through channel transmission.
  • the length of the symbol sequence ci transmitted by the sending device is m i
  • the length of the symbol sequence y i received by the receiving device is also m i .
  • the receiving device uses the generator matrix or a second sub-matrix composed of some rows in the generator matrix to perform demodulation and decoding based on the symbol sequences received i times before, to obtain a bit sequence estimate.
  • the position of the non-zero element in each row in the generator matrix is obtained based on the progressive edge growth algorithm; the value of the non-zero element in each row in the generator matrix is different, and it is one of the weight sets Weight value; the value of the non-zero element in the first row in the generation matrix is a weight value randomly assigned in the weight set; the row in the generation matrix other than the first row of the generation matrix
  • the values of the non-zero elements are related to the reference information of the non-zero elements, and there is a negative correlation between the evaluation values corresponding to the reference information.
  • the position of the non-zero elements in each row in the generator matrix G is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the short loops generated should be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the reference information of the non-zero element includes the number of other non-zero elements, and/or the value of the other non-zero element, and/or the determined sequence number of the position of the non-zero element
  • the column sequence of the other non-zero elements is the same as the column sequence of the non-zero elements
  • the row sequence of the other non-zero elements is smaller than the row sequence of the non-zero elements.
  • the evaluation value is equal to the quantity of the other non-zero elements, or the sum of squares of values of the other non-zero elements, or the determined sequence number.
  • variable node can be further improved according to the number of other non-zero elements, and/or the value of the other non-zero elements, and/or the evaluation value determined by reference information such as the determined sequence number of the position of the non-zero element.
  • the uniform distribution of the middle weight value and the distribution optimization of the weight value on the short ring are convenient to further improve the coding performance.
  • the number of non-zero elements in each row in the generator matrix is the number d of weight values in the weight set. In this way, the transmission rate and efficiency of coded modulation can be improved.
  • the generator matrix includes P cyclic permutation matrix groups, and the cyclic permutation matrix group includes d sub-circular permutation matrices, where the number of rows of the sub-circular permutation matrix and the The number of columns of the sub-circulation permutation matrix is equal and equal to the first ratio between the N and the d, the P is equal to the second ratio between the M and the first ratio, and the sub-circulation There is a non-zero element in each row in the permutation matrix, and the position of the non-zero element in the first row in the cyclic permutation matrix group is obtained based on the progressive edge growth algorithm, and the sub-circular permutation matrix is divided by the sub-circular permutation matrix The positions of the non-zero elements of the rows other than the first row are obtained by circular shifting based on the previous row of the row.
  • each row in the generator matrix selects an element from the sub-circulation permutation matrix as a non-zero element, so that the non-zero elements
  • the positions of zero elements are evenly distributed, which can improve the transmission rate and efficiency of coded modulation.
  • the position of the non-zero elements in the first row in the cyclic permutation matrix group is obtained based on the PEG algorithm, and the positions of the non-zero elements in the rows other than the first row of the sub-circular permutation matrix in the sub-circular permutation matrix are based on the It is obtained by performing a circular shift on the previous line of the line.
  • the positions of the non-zero elements in the first row are determined, the positions of the non-zero elements in the rows other than the first row in the cyclic permutation matrix group can be determined.
  • the cyclic shift can make the non-zero elements in the same sub-circular permutation matrix be in different columns, so that the positions of the non-zero elements can be evenly distributed, and it is convenient to balance the degree distribution of the variable nodes.
  • the reference information of the non-zero element includes the values of other non-zero elements, and/or the determined sequence number of the position of the non-zero element, and the column of the other non-zero element
  • the column order of the non-zero elements is the same as the column order of the non-zero elements, and the row order of the other non-zero elements is smaller than the row order of the non-zero elements.
  • the evaluation value is equal to a sum of squares of values of the other non-zero elements, or the determined sequence number.
  • the uniform distribution of the weight values in the variable nodes and the The distribution optimization of weight values facilitates further improvement of encoding performance.
  • values of the non-zero elements in the sub-loop permutation matrix are equal. In this way, the values of the non-zero elements in the matrix, or the values of the non-zero elements in the sub-cycle permutation matrices below the row, can be determined in units of the sub-loop permutation matrix, so as to further improve the coding performance.
  • step S902 includes: the receiving device demodulates and decodes the symbol sequence received i times based on the generator matrix or the second sub-matrix formed by some rows in the generator matrix, to obtain First soft information, wherein the length of the first soft information is the N; the receiving device performs outer code decoding on the first soft information to obtain a bit sequence estimate.
  • the decoding accuracy can be improved by performing outer code decoding on the soft information obtained through demodulation and decoding.
  • the receiving device performs outer code decoding on the first soft information to obtain bit sequence estimation, including: the receiving device performs outer code decoding on the first soft information to obtain second soft information; the receiving device performs iterative decoding based on the second soft information to obtain bit sequence estimation. In this way, through at least one iterative decoding, the accuracy of decoding can be further improved.
  • the second sub-matrix G' i is a sub-matrix formed by the first m' i rows in the generator matrix; if the i is 1, then the m' i is equal to m i , and are all positive integers less than the M; the m i is the length of the symbol sequence y i ; if the i is greater than 1, the m' i is equal to the m' i-1 and the m The sum value between i , the m i is a positive integer less than or equal to the difference between the M and M' i-1 ; the M' i-1 is equal to the previous (i-1) received The sum value between the lengths of the signed sequences The m' i-1 is the number of rows of the second sub-matrix G' i-1 that is demodulated and decoded for the (i-1)th time based on the symbol sequence received the previous (i-1) time. In this way, the efficiency of demodulation and decoding
  • the receiving device further includes: the receiving device receives configuration information from the sending device, and the configuration information is used to determine parameter information of the generation matrix or the second sub-matrix , the parameter information of the generator matrix includes the size of the N and the size of the M, the parameter information of the second sub-matrix includes the size of the N and the number of rows of the second sub-matrix; the receiving The device determines the parameter information based on the configuration information. In this way, the accuracy rate of obtaining the matrix used for demodulation and decoding can be improved, so as to improve the success rate of decoding.
  • the second sub-matrix composed of the generator matrix or some rows in the generator matrix is used for decoding based on all the symbol sequences that have been received, to obtain bit sequence estimation. In this way, the demodulation and decoding transmission is realized, and the performance of demodulation and decoding is improved.
  • FIG. 10 is a schematic structural diagram of a communication device provided by an embodiment of the present application.
  • the communications device may include a processing unit 1001 and a transceiver unit 1002 .
  • the processing unit 1001 is configured to perform BPSK mapping on the bit sequence to be transmitted to obtain a first sequence; wherein, each element in the first sequence is 1 or -1, and the bit sequence and the The length of the first sequence is N;
  • the processing unit 1001 is further configured to encode and modulate the first sequence according to the generator matrix or a first sub-matrix composed of some rows in the generator matrix to obtain a symbol sequence c i ; wherein, the length m i of the symbol sequence c i is a positive integer less than or equal to the maximum number of transmission symbols M; the i is the number of transmissions of the symbol sequence, and the i is a positive integer less than or equal to the M; the number of columns of the generating matrix is the N, so The number of rows of the generation matrix is the M, and the M and the N are positive integers; the position of the non-zero elements in each row in the generation matrix is obtained based on the progressive edge growth algorithm; each row in the generation matrix The values of the non-zero elements are different and are a weight value in the weight set; the value of the non-zero element in the first row in the generating matrix is a weight value randomly assigned in the weight set; the generating The values of the non-zero elements in the rows other
  • the transceiver unit 1002 is configured to send the symbol sequence c i to a receiving device through a channel.
  • the position of the non-zero elements in each row in the generator matrix is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the generated short loops can be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the reference information of the non-zero element includes the number of other non-zero elements, and/or the value of the other non-zero element, and/or the determined sequence number of the position of the non-zero element
  • the column sequence of the other non-zero elements is the same as the column sequence of the non-zero elements
  • the row sequence of the other non-zero elements is smaller than the row sequence of the non-zero elements.
  • the evaluation value is equal to the quantity of the other non-zero elements, or the sum of squares of values of the other non-zero elements, or the determined sequence number.
  • variable node can be further improved according to the number of other non-zero elements, and/or the value of the other non-zero elements, and/or the evaluation value determined by reference information such as the determined sequence number of the position of the non-zero element.
  • the uniform distribution of the middle weight value and the distribution optimization of the weight value on the short ring are convenient to further improve the coding performance.
  • the number of non-zero elements in each row in the generator matrix is the number d of weight values in the weight set. In this way, the transmission rate and efficiency of coded modulation can be improved.
  • the generator matrix includes P cyclic permutation matrix groups, and the cyclic permutation matrix group includes d sub-circular permutation matrices, where the number of rows of the sub-circular permutation matrix and the number of sub-circular permutation matrices The number of columns of the permutation matrix is equal and equal to the first ratio between the N and the d, the P is equal to the second ratio between the M and the first ratio, and in the sub-circulation permutation matrix There is one non-zero element in each row, and the position of the non-zero element in the first row in the cyclic permutation matrix group is obtained based on the progressive edge growth algorithm, and the sub-circular permutation matrix except the first The positions of the non-zero elements of the rows other than the row are obtained by cyclic shifting based on the previous row of the row.
  • each row in the generator matrix selects an element from the sub-circulation permutation matrix as a non-zero element, so that the non-zero elements
  • the positions of zero elements are evenly distributed, which can improve the transmission rate and efficiency of coded modulation.
  • the position of the non-zero element in the first row of the cyclic permutation matrix group is obtained based on the PEG algorithm, and the position of the non-zero element in the row other than the first row of the sub-circular permutation matrix in the sub-circular permutation matrix is based on the previous row of the row Obtained by cyclic shift.
  • the positions of the non-zero elements in the rows other than the first row in the cyclic permutation matrix group can be determined.
  • the cyclic shift can make the non-zero elements in the same sub-circular permutation matrix be in different columns, so as to evenly distribute the positions of the non-zero elements, which is convenient for the distribution of the degree distribution of the balanced variable nodes and the distribution optimization of the weight value on the short ring.
  • the reference information of the non-zero element includes the values of other non-zero elements, and/or the determined sequence number of the position of the non-zero element, and the column of the other non-zero element
  • the column order of the non-zero elements is the same as the column order of the non-zero elements, and the row order of the other non-zero elements is smaller than the row order of the non-zero elements.
  • the evaluation value is equal to a sum of squares of values of the other non-zero elements, or the determined sequence number.
  • the uniform distribution of the weight values in the variable nodes and the The distribution optimization of weight values facilitates further improvement of encoding performance.
  • values of the non-zero elements in the sub-loop permutation matrix are equal. In this way, the values of the non-zero elements in the matrix, or the values of the non-zero elements in the sub-cycle permutation matrices below the row, can be determined in units of the sub-loop permutation matrix, so as to further improve the coding performance.
  • the processing unit 1001 is further configured to determine the generator matrix according to the size of N and/or a transmission rate requirement. In this way, the accuracy rate of selecting the generator matrix can be improved, thereby improving the performance of encoding and decoding.
  • the processing unit 1001 is specifically configured to perform concatenated outer code coding on the bit sequence to be transmitted to obtain a second sequence, where the length of the second sequence is the N; BPSK mapping is performed on the second sequence to obtain the first sequence. In this way, performing concatenated outer code coding on the bit sequence can improve the coding performance.
  • the number of rows of the first sub-matrix G i is equal to the mi; if the i is 1, then the first sub-matrix G i is A sub-matrix formed by m i rows, the m i is a positive integer less than the M; if the i is greater than 1, the first sub-matrix G i is the (m i-1 +th in the generator matrix 1) a sub-matrix formed from row to row (m i-1 +m i ), said m i is a positive integer less than or equal to the difference between said M and M' i-1 ; said M' i-1 is equal to the sum of the lengths of the symbol sequences of the previous (i-1) transmissions
  • the m i-1 is the number of rows of the first sub-matrix G i- 1 that encodes and modulates the transmitted symbol sequence c i- 1 for the (i-1)th time, and is equal to the number of rows of the symbol sequence c i-1 length
  • the processing unit 1001 is further configured to determine the size of mi and/or the size of M according to channel parameters of the channel. In this way, the success rate of information transmission and the efficiency of encoding or decoding can be improved.
  • the transceiving unit 1002 is further configured to send configuration information to the receiving device; wherein the configuration information is used to determine the generation matrix or the second subgroup formed by some rows in the generation matrix.
  • the parameter information of the matrix, the second sub-matrix is used to perform demodulation and decoding based on the symbol sequence received i times before, the parameter information of the generation matrix includes the size of the N and the size of the M,
  • the parameter information of the second sub-matrix includes the size of N and the number of rows of the second sub-matrix.
  • the transceiver unit 1002 is configured to receive a symbol sequence y i from the sending device through a channel; wherein, the length m i of the symbol sequence y i is a positive integer less than or equal to the maximum number of transmission symbols M, so Said i is the reception times of the received symbol sequence, and said i is a positive integer less than or equal to said M;
  • the processing unit 1001 is configured to perform demodulation and decoding based on the previous i received symbol sequences through the generator matrix or a second sub-matrix composed of some rows in the generator matrix to obtain a bit sequence estimate; wherein, the bit sequence estimate
  • the length is the number of columns N of the generator matrix; the number of rows of the generator matrix is the M, and the M and the N are both positive integers; the position of the non-zero element in each row in the generator matrix is based on The progressive edge growth algorithm is obtained; the value of the non-zero element in each row in the generator matrix is different, and is a weight value in the weight set; the value of the non-zero element in the first row in the generator matrix is the A weight value randomly assigned in the weight set; the values of the non-zero elements in the rows other than the first row of the generator matrix in the generator matrix are related to the reference information of the non-zero elements, and are related to the There is a negative correlation between the evaluation values corresponding to the reference information.
  • the position of the non-zero elements in each row in the generator matrix G is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the short loops generated should be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element facilitates the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and can improve the coding performance.
  • the reference information of the non-zero element includes the number of other non-zero elements, and/or the value of the other non-zero element, and/or the determined sequence number of the position of the non-zero element
  • the column sequence of the other non-zero elements is the same as the column sequence of the non-zero elements
  • the row sequence of the other non-zero elements is smaller than the row sequence of the non-zero elements.
  • the evaluation value is equal to the quantity of the other non-zero elements, or the sum of squares of values of the other non-zero elements, or the determined sequence number.
  • variable node can be further improved according to the number of other non-zero elements, and/or the value of the other non-zero elements, and/or the evaluation value determined by reference information such as the determined sequence number of the position of the non-zero element.
  • the uniform distribution of the middle weight value and the distribution optimization of the weight value on the short ring are convenient to further improve the coding performance.
  • the number of non-zero elements in each row in the generator matrix is the number d of weight values in the weight set. In this way, the transmission rate and efficiency of coded modulation can be improved.
  • the generator matrix includes P cyclic permutation matrix groups, and the cyclic permutation matrix group includes d sub-circular permutation matrices, where the number of rows of the sub-circular permutation matrix and the number of sub-circular permutation matrices The number of columns of the permutation matrix is equal and equal to the first ratio between the N and the d, the P is equal to the second ratio between the M and the first ratio, and in the sub-circulation permutation matrix There is one non-zero element in each row, and the position of the non-zero element in the first row in the cyclic permutation matrix group is obtained based on the progressive edge growth algorithm, and the sub-circular permutation matrix except the first The positions of the non-zero elements of the rows other than the row are obtained by cyclic shifting based on the previous row of the row.
  • each row in the generator matrix selects an element from the sub-circulation permutation matrix as a non-zero element, so that the non-zero elements
  • the positions of zero elements are evenly distributed, which can improve the transmission rate and efficiency of coded modulation.
  • the position of the non-zero element in the first row of the cyclic permutation matrix group is obtained based on the PEG algorithm, and the position of the non-zero element in the row other than the first row of the sub-circular permutation matrix in the sub-circular permutation matrix is based on the previous row of the row Obtained by cyclic shift.
  • the positions of the non-zero elements in the first row are determined, the positions of the non-zero elements in the rows other than the first row in the cyclic permutation matrix group can be determined.
  • the cyclic shift can make the non-zero elements in the same sub-circular permutation matrix be in different columns, so that the positions of the non-zero elements can be evenly distributed, and it is convenient to balance the degree distribution of the variable nodes.
  • the reference information of the non-zero element includes the values of other non-zero elements, and/or the determined sequence number of the position of the non-zero element, and the column of the other non-zero element
  • the column order of the non-zero elements is the same as the column order of the non-zero elements, and the row order of the other non-zero elements is smaller than the row order of the non-zero elements.
  • the evaluation value is equal to a sum of squares of values of the other non-zero elements, or the determined sequence number.
  • the uniform distribution of the weight values in the variable nodes and the The distribution optimization of weight values facilitates further improvement of encoding performance.
  • values of the non-zero elements in the sub-loop permutation matrix are equal. In this way, the values of the non-zero elements in the matrix, or the values of the non-zero elements in the sub-cycle permutation matrices below the row, can be determined in units of the sub-loop permutation matrix, so as to further improve the coding performance.
  • the processing unit 1001 is specifically configured to perform demodulation and decoding based on the symbol sequence received i times before by using the generator matrix or the second sub-matrix formed by some rows in the generator matrix to obtain the first Soft information, wherein the length of the first soft information is the N; outer code decoding is performed on the first soft information to obtain a bit sequence estimate.
  • the decoding accuracy can be improved by performing outer code decoding on the soft information obtained through demodulation and decoding.
  • the processing unit 1001 is specifically configured to perform outer code decoding on the first soft information to obtain second soft information; perform iterative decoding based on the second soft information to obtain a bit sequence estimate. In this way, through at least one iterative decoding, the accuracy of decoding can be further improved.
  • the second sub-matrix G' i is a sub-matrix formed by the first m' i rows in the generator matrix; if the i is 1, then the m' i is equal to m i , and are all positive integers less than the M; if the i is greater than 1, the m' i is equal to the sum between the m' i-1 and the m i , and the m i is less than or A positive integer equal to the difference between the M and M' i-1 ; the M' i-1 is equal to the sum of the lengths of the previous (i-1) received symbol sequences
  • the m' i-1 is the number of rows of the second sub-matrix G' i-1 that is demodulated and decoded for the (i-1)th time based on the symbol sequence received the previous (i-1) time. In this way, the efficiency of demodulation and decoding can be improved by performing demodulation and decoding based on all received symbol sequences through the
  • the transceiving unit 1002 is further configured to receive configuration information from the sending device, where the configuration information is used to determine parameter information of the generation matrix or the second sub-matrix, and the generation
  • the parameter information of the matrix includes the size of the N and the size of the M
  • the parameter information of the second sub-matrix includes the size of the N and the number of rows of the second sub-matrix
  • the processing unit 1001 also uses The parameter information is determined based on the configuration information. In this way, the accuracy rate of obtaining the matrix used for demodulation and decoding can be improved, so as to improve the success rate of decoding.
  • each unit may also refer to the corresponding description of the method embodiment shown in FIG. 8 or FIG. 9 .
  • FIG. 11 is another communication device provided by an embodiment of the present application.
  • the communication device includes a processor 1101 , a memory 1102 and a communication interface 1103 . interconnected.
  • Memory 1102 includes, but is not limited to, random access memory (random access memory, RAM), read-only memory (read-only memory, ROM), erasable programmable read-only memory (erasable programmable read only memory, EPROM), or Portable read-only memory (compact disc read-only memory, CD-ROM), the memory 1102 is used for relevant instructions and data.
  • the communication interface 1103 is used to receive and send data.
  • the processor 1101 may be one or more central processing units (central processing unit, CPU). In the case where the processor 1101 is a CPU, the CPU may be a single-core CPU or a multi-core CPU.
  • the processor 1101 is configured to read the program code stored in the memory 1102, and perform the following operations:
  • BPSK mapping is performed on the bit sequence to be transmitted to obtain a first sequence; wherein each element in the first sequence is 1 or -1, and the bit sequence and the length of the first sequence are both N;
  • the first sequence is coded and modulated to obtain a symbol sequence c i ; wherein, the length m i of the symbol sequence c i is less than or equal to the maximum transmission A positive integer of the number of symbols M; the i is the number of transmissions of the symbol sequence, and the i is a positive integer less than or equal to the M; the number of columns of the generating matrix is the N, and the number of rows of the generating matrix
  • the M and the N are positive integers; the position of the non-zero elements of each row in the generator matrix is obtained based on the progressive edge growth algorithm; the non-zero elements of each row in the generator matrix are taken
  • the value is different, and it is a weight value in the weight set; the value of the non-zero element in the first row in the generation matrix is a weight value randomly assigned in the weight set;
  • the symbol sequence c i is sent to the receiving device through a channel.
  • the reference information of the non-zero element includes the number of other non-zero elements, and/or the value of the other non-zero element, and/or the determined sequence number of the position of the non-zero element
  • the column sequence of the other non-zero elements is the same as the column sequence of the non-zero elements
  • the row sequence of the other non-zero elements is smaller than the row sequence of the non-zero elements.
  • the evaluation value is equal to the quantity of the other non-zero elements, or the sum of squares of values of the other non-zero elements, or the determined sequence number.
  • the number of non-zero elements in each row in the generator matrix is the number d of weight values in the weight set.
  • the generator matrix includes P cyclic permutation matrix groups, and the cyclic permutation matrix group includes d sub-circular permutation matrices, where the number of rows of the sub-circular permutation matrix and the number of sub-circular permutation matrices The number of columns of the permutation matrix is equal and equal to the first ratio between the N and the d, the P is equal to the second ratio between the M and the first ratio, and in the sub-circulation permutation matrix There is one non-zero element in each row, and the position of the non-zero element in the first row in the cyclic permutation matrix group is obtained based on the progressive edge growth algorithm, and the sub-circular permutation matrix except the first The positions of the non-zero elements of the rows other than the row are obtained by cyclic shifting based on the previous row of the row.
  • the reference information of the non-zero element includes the values of other non-zero elements, and/or the determined sequence number of the position of the non-zero element, and the column of the other non-zero element
  • the column order of the non-zero elements is the same as the column order of the non-zero elements, and the row order of the other non-zero elements is smaller than the row order of the non-zero elements.
  • the evaluation value is equal to a sum of squares of values of the other non-zero elements, or the determined sequence number.
  • values of the non-zero elements in the sub-loop permutation matrix are equal.
  • the processor 1101 is further configured to perform the following operations:
  • the generation matrix is determined according to the size of N and/or the transmission rate requirement.
  • the processor 1101 is specifically configured to perform the following operations:
  • BPSK mapping is performed on the second sequence to obtain the first sequence.
  • the number of rows of the first sub-matrix G i is equal to the mi; if the i is 1, then the first sub-matrix G i is A sub-matrix formed by m i rows, the m i is a positive integer less than the M; if the i is greater than 1, the first sub-matrix G i is the (m i-1 +th in the generator matrix 1) a sub-matrix formed from row to row (m i-1 +m i ), said m i is a positive integer less than or equal to the difference between said M and M' i-1 ; said M' i-1 is equal to the sum of the lengths of the symbol sequences of the previous (i-1) transmissions
  • the m i-1 is the number of rows of the first sub-matrix G i- 1 that encodes and modulates the transmitted symbol sequence c i- 1 for the (i-1)th time, and is equal to the number of rows of the symbol sequence c i-1 length
  • the processor 1101 is further configured to perform the following operations:
  • the processor 1101 is further configured to perform the following operations:
  • the configuration information is used to determine parameter information of the generation matrix or a second sub-matrix formed by some rows in the generation matrix, and the second sub-matrix is used to The symbol sequence received i times is demodulated and decoded, the parameter information of the generation matrix includes the size of the N and the size of the M, and the parameter information of the second sub-matrix includes the size of the N and the size of the M. the number of rows of the second sub-matrix.
  • the processor 1101 is configured to read the program code stored in the memory 1102, and perform the following operations:
  • the length m i of the symbol sequence y i is a positive integer less than or equal to the maximum number of transmission symbols M, and the i is the number of receptions of the received symbol sequence, so Said i is a positive integer less than or equal to said M;
  • the second sub-matrix formed by the generator matrix or part of the rows in the generator matrix is demodulated and decoded based on the symbol sequence received i times to obtain a bit sequence estimate; wherein, the length of the bit sequence estimate is the The number of columns of the generating matrix N; the number of rows of the generating matrix is the M, the M and the N are positive integers; the position of the non-zero elements of each row in the generating matrix is obtained based on the progressive edge growth algorithm ;
  • the value of the non-zero element in each row in the generation matrix is different, and is a weight value in the weight set; the value of the non-zero element in the first row in the generation matrix is randomly assigned in the weight set
  • a weight value of a weight value; the value of the non-zero element in the row other than the first row of the generator matrix in the generator matrix is related to the reference information of the non-zero element, and the evaluation corresponding to the reference information
  • the values are negatively correlated.
  • the reference information of the non-zero element includes the number of other non-zero elements, and/or the value of the other non-zero element, and/or the determined sequence number of the position of the non-zero element
  • the column sequence of the other non-zero elements is the same as the column sequence of the non-zero elements
  • the row sequence of the other non-zero elements is smaller than the row sequence of the non-zero elements.
  • the evaluation value is equal to the quantity of the other non-zero elements, or the sum of squares of values of the other non-zero elements, or the determined sequence number.
  • the number of non-zero elements in each row in the generator matrix is the number d of weight values in the weight set.
  • the generator matrix includes P cyclic permutation matrix groups, and the cyclic permutation matrix group includes d sub-circular permutation matrices, where the number of rows of the sub-circular permutation matrix and the The number of columns of the sub-circulation permutation matrix is equal and equal to the first ratio between the N and the d, the P is equal to the second ratio between the M and the first ratio, and the sub-circulation There is a non-zero element in each row in the permutation matrix, and the position of the non-zero element in the first row in the cyclic permutation matrix group is obtained based on the progressive edge growth algorithm, and the sub-circular permutation matrix is divided by the sub-circular permutation matrix The positions of the non-zero elements of the rows other than the first row are obtained by circular shifting based on the previous row of the row.
  • the reference information of the non-zero element includes the values of other non-zero elements, and/or the determined sequence number of the position of the non-zero element, and the column of the other non-zero element
  • the column order of the non-zero elements is the same as the column order of the non-zero elements, and the row order of the other non-zero elements is smaller than the row order of the non-zero elements.
  • the evaluation value is equal to a sum of squares of values of the other non-zero elements, or the determined sequence number.
  • values of the non-zero elements in the sub-loop permutation matrix are equal.
  • the processor 1101 is specifically configured to perform the following operations:
  • the generator matrix or the second sub-matrix composed of some rows in the generator matrix is demodulated and decoded based on the symbol sequence received i times before to obtain the first soft information, wherein the length of the first soft information is said N;
  • the processor 1101 is specifically configured to perform the following operations:
  • Iterative decoding is performed based on the second soft information to obtain bit sequence estimation.
  • the second sub-matrix G' i is a sub-matrix formed by the first m' i rows in the generator matrix; if the i is 1, then the m' i is equal to the m i , and both are positive integers smaller than the M; if the i is greater than 1, the m' i is equal to the sum between the m' i-1 and the m i , and the m i is A positive integer less than or equal to the difference between the M and M' i-1 ; the M' i-1 is equal to the sum of the lengths of the previous (i-1) received symbol sequences
  • the m' i-1 is the number of rows of the second sub-matrix G' i-1 that is demodulated and decoded for the (i-1)th time based on the symbol sequence received the previous (i-1) time.
  • the processor 1101 before the receiving device performs demodulation and decoding based on the previous i received symbol sequences through the generator matrix or the second sub-matrix formed by some rows in the generator matrix, the processor 1101 Also used to do the following:
  • Receive configuration information from the sending device where the configuration information is used to determine parameter information of the generation matrix or the second sub-matrix, and the parameter information of the generation matrix includes the size of the N and the M
  • the size of the parameter information of the second sub-matrix includes the size of the N and the number of rows of the second sub-matrix
  • the parameter information is determined based on the configuration information.
  • each operation may also refer to the corresponding description of the method embodiment shown in FIG. 8 or FIG. 9 .
  • the embodiment of the present application also provides a first chip, including a processor and a memory, and the processor is used to call and execute instructions stored in the memory from the memory, so that the device installed with the chip executes the instructions shown in Figure 8 or The method shown in Figure 9.
  • the embodiment of the present application also provides a second chip, including: an input interface, an output interface, and a processing circuit, wherein the input interface, the output interface, and the processing circuit are connected through an internal connection path, and the processing circuit It is used to execute the method shown in FIG. 8 or FIG. 9 .
  • the embodiment of the present application also provides a third chip, including: an input interface, an output interface, a processor, and optionally a memory, wherein the input interface, the output interface, the processor, and the memory They are connected by an internal connection path, the processor is configured to execute the code in the memory, and when the code is executed, the processor is configured to execute the method shown in FIG. 8 or FIG. 9 .
  • the embodiment of the present application also provides a chip system, the chip system includes at least one processor, memory and interface circuit, the memory, the transceiver and the at least one processor are interconnected by wires, the at least one memory Instructions are stored in; when the instructions are executed by the processor, the method flow shown in FIG. 8 or FIG. 9 is realized.
  • An embodiment of the present application further provides a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the computer-readable storage medium is run on a computer, the method flow shown in FIG. 8 or FIG. 9 is implemented.
  • An embodiment of the present application also provides a computer program product, the computer program product is used to store a computer program, and when the computer program is run on a computer, the method flow shown in FIG. 8 or FIG. 9 is implemented.
  • the sending device performs encoding and modulation according to the generator matrix or the first sub-matrix formed by some rows in the generator matrix. Then, the coded and modulated symbol sequence is sent to the receiving device, realizing coded and modulated transmission.
  • the position of the non-zero elements in each row of the generator matrix is obtained based on the PEG algorithm, so that the generation of short loops can be minimized, and the minimum loop length of the short loops generated can be as long as possible, which is convenient for improving decoding performance.
  • assigning a value to the non-zero element based on the evaluation value of the non-zero element can facilitate the distribution of the weight value in the balance variable node and the optimization of the distribution of the weight value on the short ring, and improve the performance of the coding modulation.
  • all or part of them may be implemented by software, hardware, firmware or any combination thereof.
  • software When implemented in software, it may be implemented in whole or in part in the form of a product of computer instructions.
  • the computer instructions When the computer instructions are loaded and executed on the computer, the processes or functions described in the embodiments of the present application may be realized 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 may be stored in or transmitted via a computer-readable storage medium.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or a data center integrated with one or more available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, or a magnetic tape), an optical medium (for example, DVD), or a semiconductor medium (for example, a solid state disk (solid state disk, SSD)), etc.
  • a magnetic medium for example, a floppy disk, a hard disk, or a magnetic tape
  • an optical medium for example, DVD
  • a semiconductor medium for example, a solid state disk (solid state disk, SSD)
  • the modules in the device embodiment of the present application can be combined, divided and deleted according to actual needs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请实施例提供一种数据传输的方法及相关装置,其中方法包括:发送设备对待传输的比特序列进行二进制相移键控BPSK映射,得到第一序列;所述发送设备根据生成矩阵或所述生成矩阵中部分行构成的第一子矩阵对所述第一序列进行编码调制,得到符号序列;所述发送设备通过信道将所述符号序列发送给接收设备。采用本申请实施例,实现了编码调制传输,提高了编码调制的性能。

Description

数据传输的方法及相关装置
本申请要求于2021年07月29日提交中国专利局、申请号为202110862580.5、申请名称为“数据传输的方法及相关装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及一种数据传输的方法及相关装置。
背景技术
随着通信领域的发展,对于各种通信场景中的数据传输的时延、可靠性等要求也越来越高。信道编码作为数据传输中最基本的无线接入处理,在数据传输中起着非常重要的作用。信道编码与调制通常是独立分开设计的,而现有均匀正交振幅调制(quadrature amplitude modulation,QAM)方法与容量界存在一定的差距,这个差距在高阶调制时尤其明显,理论上在加性高斯白噪声(additive white Gaussian noise,AWGN)信道下存在1.53dB的差距。而编码调制是将编码与调制联合优化设计,能够在一定程度上缩小这个差距。
将编码与调制联合优化设计通常可以采用模拟喷泉码(analog fountain code,AFC)或类似的算法构造生成矩阵。其对应的编码器和解码器具有线性复杂度,信息比特以无速率的方式直接映射到调制符号,以使发送设备可以向目的地发送无限多个调制符号,使得速率匹配更为灵活。
然而,现有构造该类编码调制生成矩阵的方案中,存在未对短环进行优化以及权重分配不均匀等的问题。例如,最大最小变量节点度分布(maximum minimum variable node degree,max-min)矩阵的方案中,变量节点是在保证其最小度最大化的前提下随机选取的,无法避免或减少短环的产生。又例如,短模拟喷泉码(short analog fountain codes,SAFC)矩阵的方案中,变量节点是从当前可靠度最小的变量节点中随机选择的,连接权重较小的变量节点会被反复选择,容易形成短环。又例如,权重系数-渐进边增长(weight coefficient-progressive edge-growth,WC-PEG)矩阵基于PEG算法决定连接边的分布,WC-PEG矩阵要求每一列中不同权重出现的次数相同,其权重分布均匀性较差。
发明内容
本申请实施例公开了一种数据传输的方法及相关装置,能够实现编码调制传输,提高了编码调制的性能。
第一方面,本申请实施例公开了一种数据传输的方法,包括:对待传输的比特序列进行二进制相移键控(binary phase shift keying,BPSK)映射,得到第一序列;根据生成矩阵或所述生成矩阵中部分行构成的第一子矩阵对所述第一序列进行编码调制,得到符号序列c i;通过信道将所述符号序列c i发送给接收设备。如此,实现了编码调制传输,提高了编码调制的性能。
其中,所述第一序列中每个元素为1或-1,所述比特序列和所述第一序列的长度均为N;所述符号序列c i的长度m i为小于或等于最大传输符号数M的正整数;所述i为符号序列的传输次数,所述i为小于或等于所述M的正整数;所述生成矩阵的列数为所述N,所述生成矩阵的 行数为所述M,所述M和所述N均为正整数。
在本申请实施例中,所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
可以理解,生成矩阵中每一行的非零元素的位置基于渐进边增长(progressive edge-growth,PEG)算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
在一种可能的示例中,所述方法还包括:根据所述N的大小和/或传输的速率要求确定所述生成矩阵。如此,提高了确定生成矩阵的准确率,从而可提高编码和译码性能。
在一种可能的示例中,所述对待传输的比特序列进行BPSK映射,得到第一序列包括:对待传输的比特序列进行级联外码编码,得到第二序列,其中,所述第二序列的长度为所述N;对所述第二序列进行BPSK映射,得到第一序列。如此,对比特序列进行级联外码编码,可提升编码性能。
在一种可能的示例中,所述第一子矩阵G i的行数等于所述m i;若所述i为1,则所述第一子矩阵G i为所述生成矩阵中前所述m i行构成的子矩阵,所述m i为小于所述M的正整数;若所述i大于1,则所述第一子矩阵G i为所述生成矩阵中第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次传输的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000001
所述m i-1为第(i-1)次对传输的符号序列c i-1进行编码调制的第一子矩阵G i-1的行数,且等于所述符号序列c i-1的长度。如此,基于第一子矩阵传输符号序列,可实现符号序列的增量传输,可提高编码调制的效率。
在一种可能的示例中,所述方法还包括:根据所述信道的信道参数确定所述m i的大小和/或所述M的大小。如此,可提高信息传输的成功率以及编码或解码的效率。
在一种可能的示例中,所述方法还包括:向所述接收设备发送配置信息;其中,所述配置信息用于确定所述生成矩阵或所述生成矩阵中部分行构成的第二子矩阵的参数信息,所述第二子矩阵用于基于前所述i次接收到的符号序列进行解调译码,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数。如此,可提高获取用于解调译码的矩阵的准确率,便于提高解调译码的成功率。
第二方面,本申请实施例公开了另一种数据传输的方法,包括:通过信道从发送设备接收符号序列y i;通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计。如此,实现了解调译码传输,提高了解调译码的性能。
其中,所述符号序列y i的长度m i为小于或等于最大传输符号数M的正整数,所述i为已接收的符号序列的接收次数,所述i为小于或等于所述M的正整数;所述比特序列估计的长度为所述生成矩阵的列数N;所述生成矩阵的行数为所述M,所述M和所述N均为正整数。
在本申请实施例中,所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所 述参考信息对应的评价值之间为负相关关系。
可以理解,生成矩阵中每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
在一种可能的示例中,所述通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计包括:通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到第一软信息,其中,所述第一软信息的长度为所述N;对所述第一软信息进行外码译码,得到比特序列估计。如此,通过解调译码得到的软信息进行外码译码,可提高译码的准确率。
在一种可能的示例中,对所述第一软信息进行外码译码,得到比特序列估计,包括:对所述第一软信息进行外码译码,得到第二软信息;基于所述第二软信息进行迭代译码,得到比特序列估计。如此,通过至少一次迭代译码,可进一步提高译码的准确率。
在一种可能的示例中,所述第二子矩阵G′ i为所述生成矩阵中前m′ i行构成的子矩阵;若所述i为1,则所述m′ i等于所述m i,且均为小于所述M的正整数;若所述i大于1,则所述m′ i等于所述m′ i-1和所述m i之间的和值,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次接收到的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000002
所述m′ i-1为第(i-1)次基于前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数。如此,通过第二子矩阵基于接收到的所有符号序列进行解调译码,可提高解调译码的效率。
在一种可能的示例中,在所述通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码之前,所述方法还包括:从所述发送设备接收配置信息;其中,所述配置信息用于确定所述生成矩阵或所述第二子矩阵的参数信息,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数;基于所述配置信息确定所述参数信息。如此,可提高译码的成功率。
第三方面,本申请实施例公开了一种通信装置,包括:处理单元,用于对待传输的比特序列进行BPSK映射,得到第一序列;根据生成矩阵或所述生成矩阵中部分行构成的第一子矩阵对所述第一序列进行编码调制,得到符号序列c i;收发单元,用于通过信道将所述符号序列c i发送给接收设备。如此,实现了编码调制传输,提高了编码调制的性能。
其中,所述第一序列中每个元素为1或-1,所述比特序列和所述第一序列的长度均为N;所述符号序列c i的长度m i为小于或等于最大传输符号数M的正整数;所述i为符号序列的传输次数,所述i为小于或等于所述M的正整数;所述生成矩阵的列数为所述N,所述生成矩阵的行数为所述M,所述M和所述N均为正整数。
在本申请实施例中,所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为所述权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
可以理解,生成矩阵中每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化, 可提高编码性能。
在一种可能的示例中,所述处理单元还用于根据所述N的大小和/或传输的速率要求确定所述生成矩阵。如此,提高了确定生成矩阵的准确率,从而可提高编码和译码性能。
在一种可能的示例中,所述处理单元具体用于对待传输的比特序列进行级联外码编码,得到第二序列,其中,所述第二序列的长度为所述N;对所述第二序列进行BPSK映射,得到第一序列。如此,对比特序列进行级联外码编码,可提升编码性能。
在一种可能的示例中,所述第一子矩阵G i的行数等于所述m i;若所述i为1,则所述第一子矩阵G i为所述生成矩阵中前所述m i行构成的子矩阵,所述m i为小于所述M的正整数;若所述i大于1,则所述第一子矩阵G i为所述生成矩阵中第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次传输的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000003
所述m i-1为第(i-1)次对传输的符号序列c i-1进行编码调制的第一子矩阵G i-1的行数,且等于所述符号序列c i-1的长度。如此,基于第一子矩阵传输符号序列,可实现符号序列的增量传输,可提高编码调制的效率。
在一种可能的示例中,所述处理单元还用于根据所述信道的信道参数确定所述m i的大小和/或所述M的大小。如此,可提高信息传输的成功率以及编码或解码的效率。
在一种可能的示例中,所述收发单元还用于向所述接收设备发送配置信息;其中,所述配置信息用于确定所述生成矩阵或所述生成矩阵中部分行构成的第二子矩阵的参数信息,所述第二子矩阵用于基于前所述i次接收到的符号序列进行解调译码,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数。如此,可提高获取用于解调译码的矩阵的准确率,便于提高解调译码的成功率。
第四方面,本申请实施例公开了另一种通信装置,包括:收发单元,用于通过信道从发送设备接收符号序列;处理单元,用于通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计。如此,实现了解调译码传输,提高了解调译码的性能。
其中,所述符号序列y i的长度m i为小于或等于最大传输符号数M的正整数,所述i为已接收的符号序列的接收次数,所述i为小于或等于所述M的正整数;所述比特序列估计的长度为所述生成矩阵的列数N;所述生成矩阵的行数为所述M,所述M和所述N均为正整数。
在本申请实施例中,所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为所述权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
可以理解,生成矩阵中每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
在一种可能的示例中,所述处理单元具体用于通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到第一软信息,其中,所述第一软信息的长度为所述N;对所述第一软信息进行外码译码,得到比特序列估计。如此,通过解调译码得到的软信息进行外码译码,可提高译码的准确率。
在上述示例的一种可能的示例中,所述处理单元具体用于对所述第一软信息进行外码译码,得到第二软信息;基于所述第二软信息进行迭代译码,得到比特序列估计。如此,通过至少一次迭代译码,可进一步提高译码的准确率。
在一种可能的示例中,所述第二子矩阵G′ i为所述生成矩阵中前m′ i行构成的子矩阵;若所述i为1,则所述m′ i等于所述m i,且均为小于所述M的正整数;若所述i大于1,则所述m′ i等于所述m′ i-1和所述m i之间的和值,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次接收到的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000004
所述m′ i-1为第(i-1)次基于前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数。如此,通过第二子矩阵基于接收到的所有符号序列进行解调译码,可提高解调译码的效率。
在一种可能的示例中,所述收发单元还用于从所述发送设备接收配置信息;其中,所述配置信息用于确定所述生成矩阵或所述第二子矩阵的参数信息,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数;所述处理单元还用于基于所述配置信息确定所述参数信息。如此,可提高译码的成功率。
结合第一方面、第二方面、第三方面和第四方面,在一种可能的示例中,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
结合第一方面、第二方面、第三方面和第四方面,在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
结合第一方面、第二方面、第三方面和第四方面,在一种可能的示例中,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。如此,可提高编码调制的传输速率和效率。
结合第一方面、第二方面、第三方面和第四方面,在一种可能的示例中,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
可以理解,在生成矩阵中每一行的非零元素的数量等于权重集合中权重值的数量d的情况下,生成矩阵中每一行从子循环置换矩阵中选取一个元素作为非零元素,以使非零元素的位置均匀分配,可提高编码调制的传输速率和效率。循环置换矩阵组中第一行的非零元素的位置基于PEG算法得到,子循环置换矩阵中除该子循环置换矩阵的第一行之外的行的非零元素的位置基于该行的上一行进行循环移位得到。如此,在确定第一行的非零元素的位置之后,即可确定循环置换矩阵组中除第一行之外的行中非零元素的位置。且循环移位可使同一个子循环置换矩阵中非零元素处于不同的列,从而均匀分配非零元素的位置,便于均衡变量节点 的度的分布以及短环上权重值的分布优化。
结合第一方面、第二方面、第三方面和第四方面,在上述示例的一种可能的示例中,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
结合第一方面、第二方面、第三方面和第四方面,在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
结合第一方面、第二方面、第三方面和第四方面,在上述示例的另一种可能的示例中,所述子循环置换矩阵中的非零元素的取值相等。如此,可以以子循环置换矩阵为单位,确定该矩阵中非零元素的取值,或该行以下的子循环置换矩阵中非零元素的取值,便于进一步提高编码性能。
第五方面,本申请实施例公开了通信装置,包括处理器和与处理器连接的存储器和通信接口,所述存储器用于存储一个或多个程序,并且被配置由所述处理器执行上述任一方面的步骤。
第六方面,本申请实施例公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得所述计算机执行上述任一方面的方法。
第七方面,本申请实施例公开了一种计算机程序产品,所述计算机程序产品用于存储计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行上述任一方面的方法。
第八方面,本申请实施例公开了第一种芯片,包括处理器和存储器,处理器用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的设备执行上述任一方面的方法。
第九方面,本申请实施例公开了第二种芯片,包括:输入接口、输出接口和处理电路,输入接口、输出接口与处理电路之间通过内部连接通路相连,处理电路用于执行上述任一方面的方法。
第十方面,本申请实施例公开了第三种芯片,包括:输入接口、输出接口、处理器,可选的,还包括存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行上述任一方面中的方法。
第十一方面,本申请实施例公开了一种芯片***,包括至少一个处理器,存储器和接口电路,存储器、收发器和至少一个处理器通过线路互联,至少一个存储器中存储有计算机程序;计算机程序被处理器执行上述任一方面中的方法。
附图说明
以下对本申请实施例用到的附图进行介绍。
图1是本申请实施例提供的一种通信***的结构构架图;
图2是本申请实施例提供的一种终端设备的结构构架图;
图3是本申请实施例提供的一种网络设备的结构示意图;
图4是本申请实施例提供的一种生成矩阵的二分图;
图5A是本申请实施例提供的一种不同生成矩阵的可达速率和信噪比之间的关系图;
图5B是本申请实施例提供的另一种不同生成矩阵的可达速率和信噪比之间的关系图;
图6是本申请实施例提供的一种数据传输的方法的实现框图;
图7是本申请实施例提供的另一种数据传输的方法的实现框图;
图8是本申请实施例提供的一种数据传输的方法的流程示意图;
图9是本申请实施例提供的另一种数据传输的方法的流程示意图;
图10是本申请实施例提供的一种通信装置的结构示意图;
图11是本申请实施例提供的另一种通信装置的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。
请参照图1,图1为本申请实施例提供的一种通信***的结构示意图。该通信***100可以包括至少一个网络设备101(图1中仅示出1个)以及与网络设备101连接的至少一个终端设备102。其中,网络设备101可以通过一个或多个天线来和终端设备102进行无线通信。各个网络设备101均可以为各自对应的覆盖范围103提供通信覆盖。网络设备101对应的覆盖范围103可以被划分为多个扇区(sector),每个扇区对应一部分覆盖范围(图1未示出)。当通信***100包括核心网设备时,该网络设备101还可以与核心网设备相连。
在本申请实施例中,终端设备是一种具有无线收发功能的设备。该终端设备可以部署在陆地上,包括室内或室外、手持、穿戴或车载。该终端设备还可以部署在水面上(如轮船等)或空中(例如飞机、气球和卫星上等)。该终端设备可以是手机(mobile phone)、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。
本申请的实施例对应用场景不做限定。终端设备有时也可以称为用户设备(user equipment,UE)、终端(terminal)、接入终端、UE单元、UE站、移动设备、移动站、移动台(mobile station)、移动终端、移动客户端、移动单元(mobile unit)、远方站、远程终端设备、远程单元、无线单元、无线通信设备、用户代理或用户装置等。
请参照图2,图2为本申请实施例提供的一种终端设备的结构示意图。可以理解的是,图2中的终端设备200可以是图1示出的通信***100中的终端设备102。如图2所示,终端设备200可包括输入输出模块(包括音频输入输出模块218、按键输入模块216以及显示器220等)、用户接口202、一个或多个处理器204、发射器(transmit,TX)206、接收器(receive,RX)208、耦合器210、天线214以及存储器212。这些部件可通过总线或者其它方式连接,图2以通过总线205连接为例。其中:
天线214可用于将电磁能转换成自由空间中的电磁波,或者将自由空间中的电磁波转换成传输线中的电磁能。耦合器210用于将天线214接收到的移动通信信号分成多路,分配给多个的接收器208。
发射器206可用于对处理器204输出的信号进行发射处理。
接收器208可用于对天线214接收的移动通信信号进行接收处理。
在本申请实施例中,发射器206和接收器208可看作一个无线调制解调器。在终端设备 200中,发射器206和接收器208的数量均可以是一个或者多个。
除了图2所示的发射器206和接收器208,终端设备200还可包括其他通信部件,例如GPS模块、蓝牙(Bluetooth)模块、无线高保真(wireless fidelity,Wi-Fi)模块等。不限于上述表述的无线通信信号,终端设备200还可以支持其他无线通信信号,例如卫星信号、短波信号等等。不限于无线通信,终端设备200还可以配置有有线网络接口(如局域网(local area network,LAN)接口)201来支持有线通信。
输入输出模块可用于实现终端设备200和用户/外部环境之间的交互,可主要包括音频输入输出模块218、按键输入模块216以及显示器220等。输入输出模块还可包括摄像头、触摸屏以及传感器等等。输入输出模块可通过用户接口202与处理器204进行通信。
存储器212可以和处理器204通过总线或者输入输出端口耦合,存储器212也可以与处理器204集成在一起。存储器212用于存储各种软件程序和/或多组指令。存储器212可包括高速随机存取的存储器,或者可包括非易失性存储器。例如,一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器212可以存储操作***(下述简称***),例如,ANDROID,IOS,WINDOWS,或者LINUX等嵌入式操作***。存储器212还可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个终端设备,一个或多个网络设备进行通信。存储器212还可以存储用户接口程序,该用户接口程序可以通过图形化的操作界面将应用程序的内容形象逼真的显示出来,或者可以通过菜单、对话框以及按键等输入控件接收用户对应用程序的控制操作。在本申请实施例中,存储器212可用于存储本申请的一个或多个实施例提供的数据传输的方法在终端设备200侧的实现程序。
处理器204可用于读取和执行计算机可读指令。具体的,处理器204可用于调用存储于存储器212中的程序,例如,本申请的一个或多个实施例提供的数据传输的方法在终端设备200侧的实现程序,并执行该程序包含的指令以实现后续实施例涉及的方法。处理器204可支持全球移动通信***(global system for mobile communication,GSM)通信(或称为2G通信)、宽带码分多址(wideband code division multiple access,WCDMA)通信(或称为3G通信),以及长期演进(long term evolution,LTE)通信(或称为4G通信)、以及新无线(new radio,NR)通信(或称为5G通信)等中的一个或多个通信技术。可选的,当处理器204发送任何消息或数据时,其具体通过驱动或控制发射器206做所述发送。可选的,当处理器204接收任何消息或数据时,其具体通过驱动或控制接收器208做所述接收。因此,处理器204可以被视为是执行发送或接收的控制中心,发射器206和接收器208是发送和接收操作的具体执行者。
需要说明的,图2所示的终端设备200仅仅是本申请实施例的一种实现方式,实际应用中,终端设备200还可以包括更多或更少的部件,这里不作限制。
在本申请实施例中,网络设备用于支持终端设备接入通信***的设备,或者可以设置于该设备的芯片。该网络设备可以为演进型节点(evolved Node B,eNB)、基站收发台(base transceiver station,BTS)、家庭基站(例如,home evolved Node B,或home Node B,HNB)、基带单元(baseband unit,BBU),无线保真(wireless fidelity,WIFI)***中的接入点(access point,AP)、无线中继节点、无线回传节点、传输点(transmission and reception point,TRP或者transmission point,TP)等。或者可以为5G***中的gNB或传输点(TRP或TP)等,或5G***中的基站中的一个或一组(包括多个天线面板)天线面板,或构成gNB或传输点的网络节点,例如,BBU,或分布式单元(distributed unit,DU)等,在此不做限定。
请参照图3,图3为本申请实施例提供的一种网络设备的结构示意图。可以理解的是,图3中的网络设备300可以是图1示出的通信***100中的网络设备101。如图3所示,网 络设备300可包括:一个或多个处理器301、存储器302、网络接口303、发射器305、接收器306、耦合器307和天线308。这些部件可通过总线304或者其他方式连接,图3以通过总线连接为例。其中:
网络接口303可用于网络设备300与其他通信设备(例如,其他网络设备)进行通信。具体的,网络接口303可以是有线接口。
发射器305可用于对处理器301输出的信号进行发射处理,例如,信号调制。接收器306可用于对天线308接收的移动通信信号进行接收处理。例如,信号解调。在本申请的一些实施例中,发射器305和接收器306可看作一个无线调制解调器。在网络设备300中,发射器305和接收器306的数量均可以是一个或者多个。天线308可用于将传输线中的电磁能转换成自由空间中的电磁波,或者将自由空间中的电磁波转换成传输线中的电磁能。耦合器307可用于将移动通信信号分成多路,分配给多个的接收器306。
存储器302可以和处理器301通过总线304或者输入输出端口耦合,存储器302也可以与处理器301集成在一起。存储器302用于存储各种软件程序和/或多组指令。具体的,存储器302可包括高速随机存取的存储器,或者可包括非易失性存储器。例如,一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器302可以存储操作***(下述简称***)。例如,uCOS、VxWorks、RTLinux等嵌入式操作***。存储器302还可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个终端设备,一个或多个网络设备进行通信。
处理器301可用于进行无线信道管理、实施呼叫和通信链路的建立和拆除,并为本控制区内的用户提供小区切换控制等。具体的,处理器301可包括:用于话路交换和信息交换的中心的管理/通信模块(administration module/communication module,AM/CM)、用于完成呼叫处理、信令处理、无线资源管理、无线链路的管理和电路维护功能的基本模块(basic module,BM)、用于完成复用解复用和码变换功能的码变换及子复用单元(transcoder and sub multiplexer,TCSM)等等。
在本申请实施例中,处理器301可用于读取和执行计算机可读指令。具体的,处理器301可用于调用存储于存储器302中的程序。例如,本申请的一个或多个实施例提供的数据传输的方法在网络设备300侧的实现程序,并执行该程序包含的指令。
需要说明的是,图3所示的网络设备300仅仅是本申请实施例的一种实现方式,实际应用中,网络设备300还可以包括更多或更少的部件,这里不作限制。
本申请实施例中的术语“***”和“网络”可被互换使用。“多个”是指两个或两个以上,鉴于此,本申请实施例中也可以将“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
下述各实施例中所描述的接收设备可以为上述终端设备,发送设备可以为上述网络设备。或者,下述各实施例中所描述的接收设备可以为上述网络设备,发送设备可以为上述终端设备。网络设备或终端设备发送数据时均可以使本申请实施例中描述的数据传输的方法。关于本申请的一个或多个实施例提供的数据传输的方法的实现,请参考后续实施例。
以下对本申请实施例使用到的部分用语进行解释说明,以便于本领域技术人员理解。
生成矩阵,是一种线性码的表示方式,可用于编码译码。在生成矩阵中每一行对应一个校验节点(check node,CN),在生成矩阵中每一列对应一个变量节点(variable node,VN)。 非零元素是指矩阵中元素的取值不为0的元素,可以理解,生成矩阵中非零元素的取值和非零元素的位置会影响编码译码的效果。若存在非零元素,则表示该非零元素的位置对应的变量节点和校验节点之间存在边的连接。校验节点的度可以定义为其对应行中非零元素的数量(或称为个数),变量节点的度可以定义为其对应的列中非零元素的数量。
举例说明,请参照下面所示的矩阵A。如矩阵A所示,该矩阵A为4*12的矩阵,则变量节点有12个,校验节点有6个。其中,第4行,第3列对应的位置的元素取值为1,即为非零元素,且表示第4行对应的校验节点和第3列对应的变量节点之间有边的连接。第2行,第5列对应的位置的元素取值为0,则表示第2行对应的校验节点和第5列对应的变量节点之间没有边的连接。
Figure PCTCN2022099014-appb-000005
在本申请实施例中,第i行、第j列对应的元素的度可以定义为第j列中第i行之前的非零元素的数量。第i行、第j列对应的元素的可靠度可以定义为第j列中i行之前的非零元素的取值的平方和。以上面所示的矩阵A中第4行,第3列对应位置的非零元素进行举例说明。可以将第1行,第3列对应的元素记为A 1,3,将第2行,第3列对应的元素记为A 2,3,将第3行,第3列对应的元素记为A 3,3,将第4行,第3列对应的元素记为A 4,3。由于A 1,3和A 3,3的取值均为0,A 2,3的取值为1,则第3列,第4行之前的非零元素的数量为1,即A 4,3的度为1,A 4,3的可靠度为1。
生成矩阵中的校验节点和变量节点可以按照其连接关系绘制成二分图。在二分图中,校验节点和变量节点之间的边对应生成矩阵中非零元素的位置,校验节点和变量节点的度分别对应于该节点所连接的边的数量。校验节点和变量节点之间的边上的数值,表示该校验节点和该变量节点对应的非零元素的取值。
举例来说,请参照图4,图4为本申请实施例提供一种生成矩阵的二分图。图4中的生成矩阵为m*N的矩阵,其中,圆形代表变量节点,b 1、b 2、b 3、……、b N分别表示生成矩阵中第1列对应的变量节点、第2列对应的变量节点、第3列对应的变量节点、……、第N列对应的变量节点。方形代表校验节点,即编码后的符号。c 1、c 2、c 3、……、c m分别表示生成矩阵中第1行对应的检验节点、第2行对应的校验节点、第3行对应的校验节点、……、第m行对应的校验节点。校验节点和变量节点之间的边对应生成矩阵中非零元素的位置,校验节点和变量节点的度分别对应于该节点所连接的边的数量。可以看出,图4所示的生成矩阵中b 1和c 1之间有连接线,则表示第1行,第1列的元素为非零元素,且其取值为b 1和c 1之间的边上的数值,即g 1,1。b 1和c 3之间没有连接线,则表示第1行,第3列的元素的取值为0。
在本申请实施例中,生成矩阵中非零元素的取值是从预设的权重集合中权重值中选取的,且每一行中的非零元素和该行中的其他的非零元素不等。本申请对于权重集合不做限定,权重集合采用的是现有技术中已有的W集合,例如,
Figure PCTCN2022099014-appb-000006
权重值均为实数,是通过一些优化设计获得的数据。例如,权重集合中的权重值可以使得输出符号满足高斯分布等。权重集合中的元素的个数可以理解为权重值的数量,可以将权重值的数量记为d。d的取值可以根据实际需求进行选择,一般取8。d=8时,可满足较大信噪比(signal noise ratio,SNR)范围内的速率需求。
短环是指变量节点通过与之连接的连接边出发,到回到该变量节点所经过的连接边的长度较短。本申请对于短环的长度(或称为环长)不做限定。如图4所示,b 1、c 1、b 3之间的 连接线构成了长度为4的环,该环可以称为环4。环4为最短环长的一个短环。从译码算法的角度上来讲,假设的前提条件是迭代过程传递的消息是独立的,若存在短环,独立性会受到破坏,从而影响译码性能。因此,为了提高生成矩阵的译码性能,需尽量减少生成矩阵中的短环的数量,即构造生成矩阵时尽量避免短环的产生,或使得短环的最小环长尽量大。
渐进边增长(progressive edge-growth,PEG)算法,可用于添加校验节点和变量节点之间的连接边。也就是说,PEG算法用于确定生成矩阵中非零元素的位置。基于PEG算法可使新添加的边与已添加的边之间不构成环,或尽量少的环4,以使新添加的边与已添加的边之间的最小环的环长尽量大(或长)。校验节点中第一个选择的边,可称为该校验节点中的第一条边,可以理解为该校验节点对应的行中第一个确定的非零元素的位置。校验节点中除了第一个选择的边,可称为该校验节点中的其他边,可以理解为该校验节点对应的行中在确定第一个非零元素的位置之后,确定的非零元素的位置。具体的,每个校验节点中的第一条边是基于当前度最小的变量节点中随机(或任意)选择的。该校验节点中的其他边,若目前已添加的边中有一个或多个变量节点不能连接到该校验节点,则新添加的边应连接到这些变量节点,从而可避免环的产生。若目前已添加的边中所有的变量节点都可通过一些边连接到该校验节点,则新添加的边应该连接到度最小的变量节点,且确保变量节点和校验节点之间的最小环长最大。如此,可尽量减少短环的产生,且产生的短环的最小环长尽量大,从而便于提高译码性能。
举例说明,假设生成矩阵为4*12的矩阵,校验节点的度d=4,则每一行中存在4条边,其他边包括第二条边、第三条边和第四条边,分别为第2次、第3次、第4次添加的边。首先构造初始化为全0的矩阵。第1行中每一元素的度均为0,则第1行中的第一条边从当前度最小的变量节点中随机选择。如矩阵A所示,第1行中的第一条边可以选择第1行和第1列对应的边。目前除了第1行中的第一条边,没有其他的已添加的边,则第1行中的其他边可以任意选择。如矩阵A所示,第1行中的其他边可以选择第1行与第5列、第7列和第12列对应的边。
第2行中除了第1列、第5列、第7列和第12列之外的列,度均为0,则第2行中的第一条边从当前度最小(度为0)的变量节点中随机选择,即从第2列、第3列、第4列、第6列、第8列、第9列、第10列和第11列中随机选择。如矩阵A所示,第2行中的第一条边可以选择第2行和第4列对应的边。目前已添加的边为第1行中的4条边和第2行第一条边,为了使目前已添加的边对应的变量节点不能连接到第2行对应的校验节点,第2行中的其他边可以从除了目前已添加的边对应的变量节点之外(即除了列序为1、5、7、12、4之外的列序)的变量节点中任意选择。如矩阵A所示,第2行中的其他边可以选择第2行的第3列、第8列和第11列对应的边。
第3行中除了第1列、第5列、第7列、第12列、第3列、第4列、第8列和第11列之外的列,度均为0,则第3行中的第一条边从当前度最小(度为0)的变量节点中随机选择,即从第2列、第6列、第9列和第10列中随机选择。如矩阵A所示,第3行中的第一条边可以选择第3行和第9列对应的边。目前已添加的边为第1行中的4条边和第2行中的4条边和第3行第一条边,为了使目前已添加的边对应的变量节点不能连接到第3行对应的校验节点,第3行中的其他边可以从除了目前已添加的边对应的变量节点之外(即除了列序为1、5、7、12、4、3、8、11、9之外的列序)的变量节点中任意选择。如矩阵A所示,第3行中的其他边可以选择余下未分配边的变量节点,即第3行与第2列、第6列和第10列对应的边。
第4行中每一元素的度均为1,则第4行中的第一条边从当前度最小(度为1)的变量节 点中随机选择。如矩阵A所示,第4行中的第一条边可以选择第4行和第3列对应的边。目前已添加的边为第1行、第2行和第3行中分别添加的4条边和第4行添加的第一条边,由于第3列的变量节点还连接第2行,第2行还与第4列、第8列和第11列连接,则为了使目前已添加的边对应的变量节点不能连接到第4行对应的校验节点,第4行中的第二条边可以从除了可能与第4行和第3列对应的边连成环的变量节点之外(即除了列序为3、4、8和11之外的列序)的变量节点中随机选择一条边。如矩阵A所示,第4行的第二条边可以选取第4行第1列对应的边。
目前已添加的边中新增了第4行第1列对应的边,第1列还连接第1行,第1行还连接第5列、第7列和第12列,则为了使目前已添加的边对应的变量节点不能连接到第4行对应的校验节点,第4行中的第三条边可以从除了可能与第4行和第3列对应的边和第4行第1列对应的边连成环的变量节点之外(即除了列序为3、4、8、11、1、5、7和12之外的列序)的变量节点中随机选择一条边。如矩阵A所示,第4行的第三条边可以选取第4行第10列对应的边。
目前已添加的边中新增了第4行第10列对应的边,第10列还连接第3行,第3行还连接第2列、第6列和第9列,而目前已添加的边对应的变量节点都可通过任一待添加的边(第4行和列序为2、4、5、6、7、8、9、11、12对应的边)回到第4行对应的校验节点,且最小环长均为4,度均为1,则从第4行中未添加的边中任意选取一条作为第4行的第四条边。如矩阵A所示,第4行中的第四条边可以选择为第4行与第5列对应的边。
在本申请实施例中,生成矩阵G中每一行的非零元素的位置由PEG算法得到。如此,尽量减少短环的产生,便于提高译码性能。
在本申请实施例中,生成矩阵G中每一行的非零元素的取值不同,且为权重集合中的一个权重值。也就是说,生成矩阵G中每一行的非零元素为权重集合中的一个权重值,且与该行中的其他的非零元素的值不同。如此,可减少译码的复杂度。
在本申请实施例中,生成矩阵G中第一行的非零元素的取值为权值集合W中随机分配的一个权重值。例如,权重集合W={1,2,4,8},上面所示的矩阵A中第一行可以赋值为{2,0,0,0,1,0,4,0,0,0,0,8},或者可以为{4,0,0,0,2,0,1,0,0,0,0,8},或者可以为{1,0,0,0,4,0,8,0,0,0,0,2}等18种排列形式。
在本申请实施例中,可将生成矩阵G中除生成矩阵G的第一行之外的行称为其他行。其他行的非零元素的取值与该非零元素的参考信息相关,且与参考信息对应的评价值之间为负相关关系。也就是说,非零元素的参考信息对应的评价值越大,该非零元素的取值越小。例如,权重集合W={1,2,4,8},若上面所示的矩阵A中第4行中的非零元素的参考信息对应的评价值,按照从小到大的列序进行排列为{2,5,6,1},则矩阵A中第4行可以为{4,0,2,0,1,0,0,0,0,8,0,0}。可以理解,基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
本申请对于非零元素的参考信息和计算评价值的方法不做限定,非零元素的参考信息可以包括其他非零元素的数量、其他非零元素的取值、非零元素的位置的确定序号等中的一项或多项。评价值可以为其他非零元素的数量、其他非零元素的取值、非零元素的位置的确定序号,或者其他非零元素的取值的平方和等。
在本申请实施例中,其他非零元素的列序与非零元素的列序相同,其他非零元素的行序小于非零元素的行序。也就是说,当非零元素为第i行,第j列时,其他非零元素可以为第j列中前(i-1)行的元素中的非零元素。如上面所示的矩阵A中,若非零元素为A 4,3,则其他非零 元素为A 1,3、A 2,3和A 3,3中的非零元素,即A 2,3
可以理解,其他非零元素的数量越大,则其他非零元素对应的变量节点的度较大,表示该变量节点被分配的非零元素的数量较大。因此,可以选取较小的权重值作为非零元素的取值,以减少该非零元素对应的变量节点的权重值。
其他非零元素的取值越大,则其他非零元素对应的变量节点的可靠度较大,表示该变量节点被分配的权重值较大。因此,可以选取较小的权重值作为非零元素的取值,以减少该非零元素对应的变量节点的权重值。
在本申请实施例中,非零元素的位置是由PEG算法得到的。也就是说,当非零元素为第i行时,该i行中的第一条边对应的非零元素的度最小。由于非零元素的取值与参考信息对应的评价值之间为负相关关系,若评价值为确定序号,则第一条边对应的非零元素的取值为权重集合中的最大值。第i行中的其他的边对应的非零元素的位置的确定序号越小,表示该非零元素对应的变量节点越不容易与其他的校验节点形成短环,或表示和其他的校验节点形成的最小环的环长越长。假设第n次选中的变量节点与前面的节点形成了环4,则第n次以后的节点都会形成环4。由于非零元素的取值与参考信息对应的评价值之间为负相关关系,则大权重分配给确定序号较小的非零元素,与该校验节点相连的边会分配到一大一小两个权重,而不会出现所有的小权重都在一个短环上的情况,可提升编码性能。
以参考信息的评价值为其他非零元素的取值的平方和进行举例说明。假设权重集合W={1,2,4,8},M=4,N=12。生成矩阵中第一行的非零元素的位置随机选择,例如,第一行中非零元素的位置对应的列序为{1,5,7,12}。且第一行中非零元素的取值为随机分配的权重值,第一行可以如下所示的矩阵B为{1,0,0,0,4,0,8,0,0,0,0,2}。第二行中各个元素的度除了列为{1,5,7,12}之外的列均为0,则从度为0的元素中随机选取4个作为非零元素的位置。例如,第二行中非零元素的位置对应的列序为{3,4,8,11},随机分配第二行的权重值,第二行可以如下所示的矩阵B为{0,0,2,1,0,0,0,4,0,0,8,0}。第三行中除了{1,5,7,12}和{3,4,8,11}之外的列的度均为0,即第三行中非零元素的位置对应的列序为{2,6,9,10}。随机分配第三行的权重值,第三行可以如下所示的矩阵B为{0,8,0,0,0,2,0,0,1,4,0,0}。第四行中各个元素的度均为1,基于PEG算法中新添加的边和已添加的边之间的最小环的环长最长,则确定第四行中非零元素的位置对应的列序为{1,3,5,10},而其他元素的取值的平方和为{1,4,16,16}。按照非零元素的取值与参考信息对应的评价值之间为负相关关系,从大到小依次分配权重,生成矩阵如下矩阵B所示,第四行的元素{8,0,4,0,2,0,0,0,0,1,0,0}。
Figure PCTCN2022099014-appb-000007
以参考信息的评价值为非零元素的确定序号进行举例说明。其矩阵C前3行与上面的矩阵B相同,若第4行非零元素的位置对应的列序为{1,3,5,10}的确定序号分别为{2,1,4,3},则按照非零元素的取值与参考信息对应的评价值之间为负相关关系,从大到小依次分配权重,生成矩阵如下矩阵C所示,第四行的元素{4,0,8,0,1,0,0,0,0,2,0,0}。
Figure PCTCN2022099014-appb-000008
在一种可能的示例中,生成矩阵G中每一行的非零元素的数量为权重集合W中权重值的数量d。其中,权重集合W和数量d可参照前述,在此不再赘述。可以理解,若生成矩阵G中每 一行的非零元素的数量为权重集合W中权重值的数量d,则可以确定生成矩阵G中的校验节点的度为d。如果每个编码符号可以唯一的译码为d个变量节点,其最大可达速率就为2d。如此,可提高编码调制的传输速率和效率。
在一种可能的示例中,生成矩阵G包括P个循环置换矩阵组,所述循环置换矩阵组中包括d个子循环置换矩阵。
其中,子循环置换矩阵为一种循环置换矩阵(circulant permutation matrix,CPM)。子循环置换矩阵的行数和该子循环置换矩阵的列数相等,且等于N和d之间的第一比值(即N/d),P等于M和第一比值之间的第二比值(即P=M/(N/d))。以未赋值的矩阵D 0进行举例说明,
Figure PCTCN2022099014-appb-000009
如上所示的矩阵D 0,矩阵D 0中每一子循环置换矩阵的行数和列数均为N/d。矩阵D 0中循环置换矩阵组的数量可以为矩阵D 0的行数与子循环置换矩阵的行数之间的比值,即M/(N/d)。每一循环置换矩阵组中子循环置换矩阵的数量可以为矩阵D 0的列数与子循环置换矩阵的列数之间的比值,即N/(N/d)(即为d)。
在本申请实施例中,子循环置换矩阵中每一行存在一个非零元素,且该非零元素的取值为权重集合中的一个权重值。可以理解,生成矩阵G中每一行的非零元素的数量等于权重集合中权重值的数量d,则生成矩阵G中每一行从子循环置换矩阵中选取一个元素作为非零元素,以使非零元素的位置均匀分配,便于提高编码性能。
在本申请实施例中,循环置换矩阵组中第一行的非零元素的位置基于PEG算法得到,子循环置换矩阵中除该子循环置换矩阵的第一行之外的行的非零元素的位置基于该行的上一行进行循环移位得到。如此,在确定第一行的非零元素的位置之后,即可确定循环置换矩阵组中除第一行之外的行中非零元素的位置。且循环移位可使同一个子循环置换矩阵中非零元素处于不同的列,从而均匀分配非零元素的位置,便于均衡变量节点的度的分布。需要说明的是,本申请对于循环移位的方向不作限定,可以向左循环移位一位,或者向右循环移位一位。
在一种可能的示例中,该生成矩阵G中非零元素的参考信息包括其他非零元素的取值,和/或非零元素的位置的确定序号。
在一种可能的示例中,该生成矩阵G中非零元素的参考信息的评价值等于其他非零元素的取值的平方和,或确定序号。
其中,参考信息和参考信息的评价值可参照前述,在此不再赘述。可以理解,基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。且基于其他非零元素的取值和/或非零元素的位置的确定序号确定的评价值,可减少该非零元素对应的变量节点的权重值,以均衡变量节点的权重值的分布,便于提高译码性能。
在一种可能的示例中,子循环置换矩阵中的非零元素的取值相等。
也就是说,同一个子循环置换矩阵中的非零元素是相等的,同一组循环置换矩阵中每一子循环置换矩阵为一个权重值。在本申请实施例中,可以将非零元素的取值相等的矩阵中非 零元素的取值,称为该矩阵的权重。如此,可以以子循环置换矩阵为单位,确定该矩阵中非零元素的取值,或该行以下的子循环置换矩阵中非零元素的取值,便于进一步提高编码性能。
以参考信息的评价值为其他非零元素的取值的平方和,子循环置换矩阵中的非零元素的取值相等进行举例说明。假设权重集合W={1,2,4,8},M=6,N=12,则d=4,子循环置换矩阵的大小为3*3,子循环置换矩阵的数量为8。可将第1、2、3行称为该生成矩阵中的第一循环置换矩阵组,将第4、5、6行称为该生成矩阵中的第二循环置换矩阵组,每一循环置换矩阵组包括3个子循环置换矩阵。该生成矩阵中第一循环置换矩阵组的权重分布可以如下矩阵D所示,为{1,2,4,8}。该矩阵D前4行中非零元素的位置可以与上面的矩阵B和矩阵C中非零元素的位置相同,依次计算矩阵中第四行中连接边对应的其他非零元素的取值的平方和,得到{1,4,16,64}。按照非零元素的取值与参考信息对应的评价值之间为负相关关系,从大到小依次分配权重,该生成矩阵中第二组循环置换矩阵的权重可以如下矩阵D所示,为{8,4,2,1}。
Figure PCTCN2022099014-appb-000010
本申请对于生成矩阵的类型不作限定,可以为满足以上示例中参考信息或评价值对应的矩阵。在一种可能的示例中,发送设备根据N的大小和/或传输的速率要求确定生成矩阵G。
其中,N的大小等于比特序列的长度。也就是说,N的大小为待传输的符号序列的长度。由于生成矩阵G的列长等于N,根据N的大小确定生成矩阵G,可提高信息编码或解码的成功率。同理,还可以根据M的大小确定生成矩阵G。
在本申请实施例中,传输的速率要求可以为传输速率的最小值。传输速率为比特序列的长度和符号序列的长度之间的比值,例如,N/m′ i。传输的速率要求可以由基站或发送设备根据信道参数确定等。此外,不同的生成矩阵对应不同比特长度的信息进行编码或解码的速率不同。因此,根据N的大小和/或传输的速率要求确定生成矩阵G,可提高信息编码或解码的效率。
请参照图5A和图5B,图5A和图5B分别为本申请提供的一种不同生成矩阵的可达速率(achievable rate)和信噪比(SNB)之间的关系图。图5A和图5B中的生成矩阵可包括准循环-渐进边增长(quasi-cyclic-PEG,QC-PEG)矩阵、渐进边增长-短模拟喷泉码(PEG-short analog fountain codes,PEG-SAFC)矩阵、渐进边增长增强(PEG-enhancement,PEG-E)矩阵、SAFC矩阵、max-min矩阵和权重系数-渐进边增长(weight coefficient-PEG,WC-PEG)矩阵。
如图5A所示,在信息的比特长度N=256时,校验节点的度d=8,PEG-E矩阵和QC-PEG矩阵的速率性能最优。且PEG-E在高速率性能表现最优。如图5B所示,在信息的比特长度N=1024时,校验节点的度d=8时,PEG-SAFC矩阵的速率性能最优。PEG-SAFC矩阵在较低速率时远优于max-min矩阵和WC-PEG矩阵的,且高速率场景下与max-min矩阵表现相近,且优于WC-PEG矩阵。
可选的,当待传输的比特序列的长度(N的大小)大于或等于第一阈值时,可采用基于QC-PEG算法得到的生成矩阵作为生成矩阵G。当待传输的比特序列的长度小于第一阈值,且大于或等于第二阈值时,可采用PEG-SAFC算法得到的生成矩阵作为生成矩阵G。当待传输的比特序列的长度小于或等于第二阈值时,可采用基于PEG-E算法得到的生成矩阵作为生成矩阵G。
本申请对于第一阈值和第二阈值不作限定,第一阈值大于第二阈值,第一阈值可以为1024,第二阈值可以为64。可以将大于或等于第一阈值的信息长度称为中长信息,可以将小于第一阈值,且大于或等于第二阈值的信息长度称为中等信息,可以将小于或等于第二阈值的信息长度称为中短信息。如此,分别基于比特序列的长度来确定构造生成矩阵G的算法,便于提高生成矩阵G进行解码译码的性能。
发送设备向信道传输的符号序列可以为根据生成矩阵进行编码调制得到的符号序列或符号序列中的部分序号序列,还可以为根据生成矩阵中部分行构成的第一子矩阵进行编码调制得到的符号序列。该符号序列可以采用一次或多次传输的方式。接收设备可以通过生成矩阵或生成矩阵中部分行构成的第二子矩阵基于接收到的所有符号序列进行解调译码。
在本申请实施例中,可将发送设备第i次传输的符号序列记为c i。在i大于或等于2时,上一次传输的符号序列是指第(i-1)次传输的符号序列。在i小于i的最大值时,下一次传输的符号序列是指第(i+1)次传输的符号序列。例如,符号序列c i-1表示上一次传输的符号序列,符号序列c i+1表示下一次传输的符号序列。第一子矩阵G i-1表示对上一次传输的符号序列c i-1进行编码调制的第一子矩阵。
由于信道中可能存在噪声,可以将接收设备第i次接收到的符号序列记为y i。在i大于或等于2时,上一次接收到的符号序列是指第(i-1)次接收到的符号序列。在i小于i的最大值时,下一次接收到的符号序列是指第(i+1)次接收到的符号序列。例如,符号序列y i-1表示上一次接收到的符号序列,符号序列y i+1表示下一次接收到的符号序列。符号序列y 1、……、符号序列y i表示第1次到第i次接收到的符号序列,即前i次接收到的符号序列。第二子矩阵G′ i-1表示基于前(i-1)次接收到的符号序列(即符号序列y 1、……、符号序列y i-1)进行解调译码的第二子矩阵。
在本申请实施例中,M为生成矩阵的行数,即M为最大传输序号数,i为小于或等于M的正整数。也就是说,符号序列的长度的最大值为M,符号序列的传输次数的最大值为M。符号序列的传输总次数可以理解为i的最大值。若传输总次数为1,可以表示发送设备采用一次传输的方式传输比特序列对应的符号序列,接收设备基于第1次接收到的符号序列进行解调译码,且解调译码成功,以恢复发送设备发送的比特序列s,该符号序列的长度可以为小于或等于M的正整数。若传输总次数为M,可以表示发送设备采用M次传输的方式传输比特序列对应的符号序列,每一次传输的符号序列的长度为1。每一次传输的符号序列可以为发送设备采用生成矩阵中的一行构成的第一子矩阵进行编码调制得到的符号序列或采用生成矩阵进行编码调制得到的符号序列中依次选取的一个符号,得到的符号序列。且接收设备基于前(M-1)次接收到的符号序列进行解调译码,均解调译码失败。解调译码成功或失败可基于接收设备是否在预设时长内发送用于指示解调译码成功或失败的指示信息进行确定。本申请对于预设时长和指示信息的类型不做限定。该指示信息可以为肯定消息(acknowledgement,ACK),则在接收到ACK之后,可确定解调译码成功。否则,确定解调译码失败。
需要说明的是,发送设备向接收设备传输的符号序列的总长度应小于或等于M。可以将本次传输的符号序列c i的长度记为m i,可以将接收设备前(i-1)次接收到的符号序列的总长度记为M′ i-1,则M′ i-1等于前(i-1)次接收到的符号序列的长度之间的和值。接收设备接收到的符号序列y i和发送设备传输的符号序列c i的长度相等,即符号序列y i的长度为m i。接收设备前(i-1)次接收到的符号序列的总长度M′ i-1的计算公式为
Figure PCTCN2022099014-appb-000011
例如,i为3时,M′ 2=m 1+m 2
当M′ i-1小于M时,发送设备向接收设备传输下一个符号序列,即c i。且符号序列c i的长度 应小于或等于M和M′ i-1之间的差值。当总长度M′ i-1大于或等于M时,停止传输下一个符号序列。此外,发送设备还可基于前述的用于指示解调译码成功或失败的指示信息确定是否传输下一个符号序列,即在该指示信息指示已解调译码成功之后,停止传输下一个符号序列。否则,继续传输下一个符号序列。
请参照图6,图6为本申请实施例提供的一种数据传输的方法的实现框图。图6以发送设备第i次向接收设备传输符号序列进行举例说明,该符号序列可以为发送设备基于生成矩阵G对第一序列b进行编码调制得到的符号序列C中第i次选取的部分符号序列c i,或基于第一子矩阵G i对第一序列b进行编码调制得到的符号序列c i
需要说明的是,选取的部分符号序列c i的步骤可以在第1次传输之前进行确定,或者可以基于每次传输符号序列之后,从接收设备接收到的反馈信息(例如,信道参数等)进行确定,在此不做限定。
从符号序列C中选取的部分符号序列c i和从生成矩阵G中选取第一子矩阵G i的方法一致,即在i为1时,从符号序列C中选取前m i(即m 1)个符号,得到符号序列c i(即c 1),以使c 1的长度为m 1。且从生成矩阵G中选取前m i(即m 1)行构成的子矩阵,作为第一子矩阵G i(即G 1),该第一子矩阵G 1的行数为m 1。在i大于1时,从符号序列C中选取第(m i-1+1)个到第(m i-1+m i)个符号,得到符号序列c i,以使c i的长度为m i。且从生成矩阵G中选取第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵,作为第一子矩阵G i,该第一子矩阵G i的行数为m i
如图6所示,发送设备通过二进制相移键控(binary phase shift keying,BPSK)映射模块,对待传输的比特序列s进行BPSK映射得到第一序列b。再通过编码调制模块对第一序列b进行编码调制,得到符号序列c i。发送设备通过信道将符号序列c i发送给接收设备。由于信道中可能存在噪声,则接收设备可以通过解调译码模块,对目前接收到的含有噪声的符号序列y 1、……、符号序列y i进行解调译码,得到比特序列估计s ,以恢复出发送设备发送的比特序列s。
在本申请实施例中,比特序列是指0和1排列而成的序列,即比特序列s中每个元素为0或1。比特序列估计s 中的每一元素可以为0和1排列而成的序列,或者可以为一个概率值,用于表示该元素为0或1的可能性。比特序列估计s 或者可以为一个对数概率比值,用于表示该元素为0或1的概率的对数比等。
BPSK是把模拟信号转换成数字信号的转换方式之一,可以同时传送接受2值(1比特)的信息。第一序列b中每个元素为1或-1。第一序列b和比特序列s之间的关系满足b=1-2s或b=2s-1。
在本申请实施例中,第一子矩阵G i为生成矩阵G中部分行构成的子矩阵,用于对第一序列进行编码调制。第一序列b、第一子矩阵G i和符号序列c i之间的关系满足c i=G ib。本申请对于第一子矩阵G i的结构不做限定,在一种可能的示例中,第一子矩阵G i的行数等于符号序列c i的长度m i。若i为1,则第一子矩阵G i为生成矩阵G中前m i行构成的子矩阵。若i大于1,则第一子矩阵G i为生成矩阵中第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵。
如前所述生成矩阵G为M*N的生成矩阵,即生成矩阵G的行数为M,列数为N。m i-1等于对上一次传输的符号序列c i-1进行编码调制的第一子矩阵G i-1的行数,且等于符号序列c i-1的长度m i-1。基于最大传输符号数为M,则在i为1时,m i(即m 1)为小于M的正整数。在i大于1时,再基于前(i-1)次传输的符号序列的长度之间的和值为M′ i-1,则m i为小于或等于M和M′ i-1之间的差值的正整数。
举例来说,生成矩阵G为12*12的矩阵,则M=12,N=12。若第1次传输的符号序列的 长度为5,第2次传输的符号序列的长度为4,第3次传输的符号序列的长度为3。如此,m 1等于5,m 2等于4,m 3等于3。第1次编码调制采用的第一子矩阵G 1的行数为5,即第一子矩阵G 1为生成矩阵G中前5行构成的子矩阵。第2次编码调制采用的第一子矩阵G 2的行数为4,即第一子矩阵G 2为生成矩阵G中第6行到第9行构成的子矩阵。第3次编码调制采用的第一子矩阵G 3的行数为3,即第一子矩阵G 3为生成矩阵G中第10行到第12行构成的子矩阵。
若比特序列s和第一序列b的长度为N,第一子矩阵G i对第一序列b进行编码调制得到的符号序列c i,或生成矩阵G对第一序列b进行编码调制得到的符号序列中第i次选取的部分符号序列c i的长度均为m′ i,则在传输速率(N/m′ i)小于信道容量(capacity)的情况下,接收设备能够基于从发送设备前i次接收到的符号序列进行解调译码,以使解调译码得到的比特序列估计s 为比特序列s。
本申请对于发送设备每一次发送的符号序列的长度m i和最大传输符号数M不做限定。由于发送设备一般为接入网设备,m i的大小和M的大小可以由发送设备确定。m i的大小和M的大小可以由发送设备通知给接收设备。或者可以采用事先约定的计算方法或表格,由接收设备基于相关的配置信息进行确定。
在一种可能的示例中,发送设备根据信道的信道参数确定符号序列c i的长度m i和/或M的大小。
在本申请实施例中,信道参数可以为信道状态、信道容量等,在此不做限定。m i为小于或等于M和M′ i-1之间的差值的正整数。可以理解,根据信道的信道参数可确定最大传输符号M,以及根据前(i-1)次传输的符号序列的长度确定剩下未传输的符号序列中符号序列c i的长度m i的大小,可提高信息传输的成功率以及编码或解码的效率。
需要说明的是,在译码成功后,或前i次传输的所有符号序列的总长度M′ i大于或等于M时,不需要传输下一个符号序列c i+1,同时也无需确定符号序列c i+1的长度m i+1
在一种可能的示例中,发送设备向接收设备发送配置信息。
在本申请实施例中,配置信息用于确定生成矩阵或所述生成矩阵中部分行构成的第二子矩阵G′ i的参数信息,所述第二子矩阵G′ i用于基于前i次接收到的符号序列进行解调译码。可以理解,接收设备可基于该配置信息确定解调译码所需要的生成矩阵G或第二子矩阵G′ i的参数信息。如此,接收设备可确定用于解调译码的矩阵,提高了解调译码的成功率。
在一种可能的示例中,第二子矩阵G′ i为生成矩阵G中前m′ i构成的子矩阵,即第二子矩阵G′ i的行数为m′ i。如前所述,符号序列c i的长度为m i,则符号序列y i的长度也为m i。符号序列y i、第二子矩阵G′ i和比特序列估计s′之间的关系满足c i=G′ is′。若i为1,则m′ i等于所述m i。基于符号序列的长度的最大值为M,则在i为1时,m′ i(即m′ 1)为小于M的正整数。也就是说,第二子矩阵G′ 1为第一子矩阵G 1。若i大于1,则m′ i等于m′ i-1和m i之间的和值,m′ i-1为基于前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数。基于最大传输符号数为M,以及前(i-1)次传输的符号序列的长度之间的和值为M′ i-1,则在i大于1时,m i为小于或等于M和M′ i-1之间的差值的正整数。需要说明的是,若m′ i=M,则可以采用生成矩阵G中所有的行构成的子矩阵进行解调译码。否则,可以采用第二子矩阵G′ i进行解调译码。
举例来说,生成矩阵G为12*12的矩阵,则M=12,N=12。若第1次传输的符号序列的长度m 1为5,第2次传输的符号序列的长度m 2为4,第3次传输的符号序列的长度m 3为3。如此,第1次解调译码采用的第二子矩阵G′ 1的行数m′ 1等于5,即第二子矩阵G′ 1为生成矩阵G中前5行构成的子矩阵。第2次解调译码采用的第二子矩阵G′ 2的行数m′ 2等于5+4,即第二子矩阵G′ 2为生成矩阵G中前9行构成的子矩阵。第3次解调译码采用的第二子矩阵G′ 3的行数m′ 3等 于9+3,且等于M,即第二子矩阵G′ 3为生成矩阵G。
在本申请实施例中,生成矩阵G的参数信息可以包括M的大小和比特序列s的长度N的大小。如此,可确定生成矩阵G的行数和列数。第二子矩阵G′ i的参数信息可以包括N的大小和第二子矩阵的行数。如前所述,在i为1时,第二子矩阵G′ i的行数m′ i等于m i。在i大于1时,m′ i等于m′ i-1和m i之间的和值。可以理解,基于m i的大小可以获取第二子矩阵G′ i的行数m′ i的大小。N的大小还是生成矩阵G的列数,即N的大小为第二子矩阵G′ i的列数。如此,可基于N的大小和m′ i的大小确定第二子矩阵G′ i的行数和列数。
第二子矩阵G′ i的参数信息还可包括符号序列y i的传输次数i的大小和最大传输符号数M的大小等,在此不做限定。可以理解,在接收设备获取i和/或M的大小之后,可基于发送设备和接收设备预先设置的规则或表格,可获取m′ i的大小。
需要说明的是,在接收设备自行计数时,可自行获取i的大小。且接收设备可基于接收到符号序列y i获取该符号序列y i的长度m i和前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数m′ i-1计算m′ i的大小。接收设备还可根据信道参数获取m i的大小和/或M的大小等。
请参照图7,图7为本申请实施例提供的另一种数据传输的方法的实现框图。该方法与图6一致,以发送设备第i次向接收设备传输符号序列进行举例说明。如图6所示,发送设备对待传输的比特序列s进行级联外码编码,得到第二序列a。然后发送设备对第二序列a进行BPSK映射得到第一序列b。再对第一序列b进行编码调制,得到符号序列c i,在信道上将该符号序列c i发送给接收设备。由于信道中可能存在噪声,则接收设备可以对目前接收到的含有噪声的符号序列y 1、……、符号序列y i进行解调译码,得到第一软信息P 1。接收设备根据第一软信息P 1进行外码译码,得到比特序列估计s′,以恢复出发送设备发送的比特序列s。
其中,软信息可以包括内码对应的比特序列s中每一个比特为0还是1的概率值,或者可以包括该比特序列s对应的对数概率比值(是0还是1的概率的比值)。比特序列s、第一序列b、第二序列a、第一软信息P 1和比特序列估计s′的长度均为N。比特序列s、第一序列b、第二序列a、符号序列c i可参照图6的描述,第一软信息P 1和比特序列估计s′可参照图6中比特序列估计s′的描述,在此不再赘述。
可以理解,对比特序列s进行级联外码编码,可提升编码性能。如果发送设备进行级联外码编码的操作,则将接收设备在对符号序列y i进行解调译码的操作之后,可得到用于描述比特序列中元素为0还是1的概率的第一软信息P 1。通过外码译码模块对该第一软信息P 1进行外码译码,可提高译码的准确率。
如图7所示,对第一软信息P 1进行外码译码的步骤可以为迭代译码的过程。在本申请实施例中,可以将解调译码模块(或称为内码译码模块)进行解调译码得到的软信息称为第一软信息P 1,可以将外码译码模块进行译码得到的软信息称为第二软信息P 2。将第二软信息P 2输入至解码译码模块,以使软信息在外码译码模块和解码译码模块之间进行迭代译码,直至解调译码成功或迭代译码结束,得到比特序列估计s′。本申请对于迭代译码的次数不作限定,可以为5-10次。可以理解,对软信息进行至少一次迭代译码,从而可进一步提高解调译码的准确率。
请参照图8,图8为本申请实施例提供的一种数据传输的方法的流程示意图。该方法可应用于如图1所示的***中,以该方法的执行主体为发送设备进行描述。图8所示的方法可包括步骤S801~S803,其中:
S801:发送设备对待传输的比特序列进行BPSK映射,得到第一序列。
在本申请实施例中,比特序列中每个元素为0或1,第一序列中每个元素为1或-1,所述比特序列和所述第一序列的长度均为N。
在一种可能的示例中,步骤S801包括:发送设备对待传输的比特序列进行级联外码编码,得到第二序列,其中,所述第二序列的长度为所述N;所述发送设备对所述第二序列进行BPSK映射,得到第一序列。如此,对比特序列进行级联外码编码,可提升编码性能。
S802:发送设备根据生成矩阵或生成矩阵中部分行构成的第一子矩阵对第一序列进行编码调制,得到符号序列。
其中,所述符号序列c i的长度m i为小于或等于最大传输符号数M的正整数;所述i为符号序列的传输次数,所述i为小于或等于所述M的正整数;所述生成矩阵的列数为所述N,所述生成矩阵的行数为所述M,所述M和所述N均为正整数。
在本申请实施例中,所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为所述权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
可以理解,生成矩阵中每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
在一种可能的示例中,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在一种可能的示例中,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。如此,可提高编码调制的传输速率和效率。
在上述示例的一种可能的示例中,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括所述d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
可以理解,在生成矩阵中每一行的非零元素的数量等于权重集合中权重值的数量d的情况下,生成矩阵中每一行从子循环置换矩阵中选取一个元素作为非零元素,以使非零元素的位置均匀分配,可提高编码调制的传输速率和效率。循环置换矩阵组中第一行的非零元素的位置基于PEG算法得到,子循环置换矩阵中除该子循环置换矩阵的第一行之外的行的非零元素的位置基于该行的上一行进行循环移位得到。如此,在确定第一行的非零元素的位置之后,即可确定循环置换矩阵组中除第一行之外的行中非零元素的位置。且循环移位可使同一个子 循环置换矩阵中非零元素处于不同的列,从而均匀分配非零元素的位置,便于均衡变量节点的度的分布以及短环上权重值的分布优化。
在上述示例的一种可能的示例中,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在上述示例的另一种可能的示例中,所述子循环置换矩阵中的非零元素的取值相等。如此,可以以子循环置换矩阵为单位,确定该矩阵中非零元素的取值,或该行以下的子循环置换矩阵中非零元素的取值,便于进一步提高编码性能。
在一种可能的示例中,所述发送设备根据所述N的大小和/或传输的速率要求确定所述生成矩阵。如此,可提高了选取生成矩阵的准确率,从而可提高编码和译码性能。
在一种可能的示例中,所述第一子矩阵G i的行数等于所述m i;若所述i为1,则所述第一子矩阵G i为所述生成矩阵中前所述m i行构成的子矩阵,所述m i为小于所述M的正整数;若所述i大于1,则所述第一子矩阵G i为所述生成矩阵中第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次传输的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000012
所述m i-1为第(i-1)次对传输的符号序列c i-1进行编码调制的第一子矩阵G i-1的行数,且等于所述符号序列c i-1的长度。如此,基于第一子矩阵传输符号序列,可实现符号序列的增量传输,可提高编码调制的效率。
在一种可能的示例中,所述发送设备根据所述信道的信道参数确定所述m i的大小和/或所述M的大小。如此,可提高信息传输的成功率以及编码或解码的效率。
在一种可能的示例中,还包括:所述发送设备向所述接收设备发送配置信息;其中,所述配置信息用于确定所述生成矩阵或所述生成矩阵中部分行构成的第二子矩阵的参数信息,所述第二子矩阵用于基于前所述i次接收到的符号序列进行解调译码,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数。如此,可提高译码的成功率。
S803:发送设备通过信道将符号序列发送给接收设备。
如图8所示的方法中,发送设备先对待传输的比特序列进行BPSK映射,得到第一序列。再根据生成矩阵或生成矩阵中部分行构成的第一子矩阵对第一序列进行编码调制,得到符号序列。然后通过信道将符号序列发送给接收设备。如此,实现了编码调制传输,提高了编码调制的性能。
接收设备的解码过程为编码过程的逆过程。请参照图9,图9为本申请实施例提供的另一种数据传输的方法的流程示意图。该方法可应用于如图1所示的***中,以该方法的执行主体为接收设备进行描述。图9所示的方法可包括以下步骤S901和S902,其中:
S901:接收设备通过信道从发送设备接收符号序列。
在本申请实施例中,所述符号序列y i的长度m i为小于或等于最大传输符号数M的正整数,所述i为已接收的符号序列的接收次数,所述i为小于或等于所述M的正整数。符号序列y i可以为基于第一子矩阵G i进行编码调制得到的符号序列c i经过信道传输得到的符号序列,还可以 基于生成矩阵G进行编码调制得到的符号序列中选取的部分符号序列c i经过信道传输得到的符号序列。发送设备传输的符号序列c i的长度为m i,则接收设备接收到的符号序列y i的长度也为m i
S902:接收设备通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计。
在本申请实施例中,所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
可以理解,生成矩阵G中每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
在一种可能的示例中,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在一种可能的示例中,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。如此,可提高编码调制的传输速率和效率。
在上述示例的一种可能的示例中,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
可以理解,在生成矩阵中每一行的非零元素的数量等于权重集合中权重值的数量d的情况下,生成矩阵中每一行从子循环置换矩阵中选取一个元素作为非零元素,以使非零元素的位置均匀分配,可提高编码调制的传输速率和效率。且循环置换矩阵组中第一行的非零元素的位置是基于PEG算法得到的,子循环置换矩阵中除该子循环置换矩阵的第一行之外的行的非零元素的位置是基于该行的上一行进行循环移位得到的。如此,在确定第一行的非零元素的位置之后,即可确定循环置换矩阵组中除第一行之外的行中非零元素的位置。且循环移位可使同一个子循环置换矩阵中非零元素处于不同的列,从而均匀分配非零元素的位置,便于均衡变量节点的度的分布。
在上述示例的一种可能的示例中,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在上述示例的另一种可能的示例中,所述子循环置换矩阵中的非零元素的取值相等。如此,可以以子循环置换矩阵为单位,确定该矩阵中非零元素的取值,或该行以下的子循环置换矩阵中非零元素的取值,便于进一步提高编码性能。
在一种可能的示例中,步骤S902包括:所述接收设备通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到第一软信息,其中,所述第一软信息的长度为所述N;所述接收设备对所述第一软信息进行外码译码,得到比特序列估计。如此,通过解调译码得到的软信息进行外码译码,可提高译码的准确率。
在一种可能的示例中,所述接收设备对所述第一软信息进行外码译码,得到比特序列估计,包括:所述接收设备对所述第一软信息进行外码译码,得到第二软信息;所述接收设备基于所述第二软信息进行迭代译码,得到比特序列估计。如此,通过至少一次迭代译码,可进一步提高译码的准确率。
在一种可能的示例中,所述第二子矩阵G′ i为所述生成矩阵中前m′ i行构成的子矩阵;若所述i为1,则所述m′ i等于m i,且均为小于所述M的正整数;所述m i为所述符号序列y i的长度;若所述i大于1,则所述m′ i等于所述m′ i-1和所述m i之间的和值,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次接收到的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000013
所述m′ i-1为第(i-1)次基于前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数。如此,通过第二子矩阵基于接收到的所有符号序列进行解调译码,可提高解调译码的效率。
在一种可能的示例中,在步骤S902之前,还包括:所述接收设备从所述发送设备接收配置信息,所述配置信息用于确定所述生成矩阵或所述第二子矩阵的参数信息,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数;所述接收设备基于所述配置信息确定所述参数信息。如此,可提高获取用于解调译码的矩阵的准确率,便于提高译码的成功率。
在如图9所示的方法中,在接收设备通过信道从发送设备接收符号序列之后,通过生成矩阵或生成矩阵中部分行构成的第二子矩阵基于已接收到的所有符号序列进行译码,得到比特序列估计。如此,实现了解调译码传输,提高了解调译码的性能。
上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。
请参见图10,图10是本申请实施例提供的一种通信装置的结构示意图。如图10所示,该通信装置可以包括处理单元1001和收发单元1002。
当通信装置为发送设备时,处理单元1001用于对待传输的比特序列进行BPSK映射,得到第一序列;其中,所述第一序列中每个元素为1或-1,所述比特序列和所述第一序列的长度均为N;
处理单元1001还用于根据生成矩阵或所述生成矩阵中部分行构成的第一子矩阵对所述第一序列进行编码调制,得到符号序列c i;其中,所述符号序列c i的长度m i为小于或等于最大传输符号数M的正整数;所述i为符号序列的传输次数,所述i为小于或等于所述M的正整数; 所述生成矩阵的列数为所述N,所述生成矩阵的行数为所述M,所述M和所述N均为正整数;所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系;
收发单元1002用于通过信道将所述符号序列c i发送给接收设备。
可以理解,生成矩阵中每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
在一种可能的示例中,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在一种可能的示例中,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。如此,可提高编码调制的传输速率和效率。
在一种可能的示例中,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
可以理解,在生成矩阵中每一行的非零元素的数量等于权重集合中权重值的数量d的情况下,生成矩阵中每一行从子循环置换矩阵中选取一个元素作为非零元素,以使非零元素的位置均匀分配,可提高编码调制的传输速率和效率。循环置换矩阵组中第一行的非零元素的位置基于PEG算法得到,子循环置换矩阵中除该子循环置换矩阵的第一行之外的行的非零元素的位置基于该行的上一行进行循环移位得到。如此,在确定第一行的非零元素的位置之后,即可确定循环置换矩阵组中除第一行之外的行中非零元素的位置。且循环移位可使同一个子循环置换矩阵中非零元素处于不同的列,从而均匀分配非零元素的位置,便于均衡变量节点的度的分布以及短环上权重值的分布优化。
在上述示例的一种可能的示例中,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考 信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在上述示例的另一种可能的示例中,所述子循环置换矩阵中的非零元素的取值相等。如此,可以以子循环置换矩阵为单位,确定该矩阵中非零元素的取值,或该行以下的子循环置换矩阵中非零元素的取值,便于进一步提高编码性能。
在一种可能的示例中,所述处理单元1001还用于根据所述N的大小和/或传输的速率要求确定所述生成矩阵。如此,可提高了选取生成矩阵的准确率,从而可提高编码和译码性能。
在一种可能的示例中,所述处理单元1001具体用于对待传输的比特序列进行级联外码编码,得到第二序列,其中,所述第二序列的长度为所述N;对所述第二序列进行BPSK映射,得到第一序列。如此,对比特序列进行级联外码编码,可提升编码性能。
在一种可能的示例中,所述第一子矩阵G i的行数等于所述m i;若所述i为1,则所述第一子矩阵G i为所述生成矩阵中前所述m i行构成的子矩阵,所述m i为小于所述M的正整数;若所述i大于1,则所述第一子矩阵G i为所述生成矩阵中第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次传输的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000014
所述m i-1为第(i-1)次对传输的符号序列c i-1进行编码调制的第一子矩阵G i-1的行数,且等于所述符号序列c i-1的长度。
在一种可能的示例中,所述处理单元1001还用于根据所述信道的信道参数确定所述m i的大小和/或所述M的大小。如此,可提高信息传输的成功率以及编码或解码的效率。
在一种可能的示例中,所述收发单元1002还用于向所述接收设备发送配置信息;其中,所述配置信息用于确定所述生成矩阵或所述生成矩阵中部分行构成的第二子矩阵的参数信息,所述第二子矩阵用于基于前所述i次接收到的符号序列进行解调译码,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数。如此,可提高获取用于解调译码的矩阵的准确率,便于提高解调译码的成功率。
当通信装置为接收设备时,收发单元1002用于通过信道从发送设备接收符号序列y i;其中,所述符号序列y i的长度m i为小于或等于最大传输符号数M的正整数,所述i为已接收的符号序列的接收次数,所述i为小于或等于所述M的正整数;
处理单元1001用于通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计;其中,所述比特序列估计的长度为所述生成矩阵的列数N;所述生成矩阵的行数为所述M,所述M和所述N均为正整数;所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
可以理解,生成矩阵G中每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,可提高编码性能。
在一种可能的示例中,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述 非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在一种可能的示例中,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。如此,可提高编码调制的传输速率和效率。
在一种可能的示例中,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
可以理解,在生成矩阵中每一行的非零元素的数量等于权重集合中权重值的数量d的情况下,生成矩阵中每一行从子循环置换矩阵中选取一个元素作为非零元素,以使非零元素的位置均匀分配,可提高编码调制的传输速率和效率。循环置换矩阵组中第一行的非零元素的位置基于PEG算法得到,子循环置换矩阵中除该子循环置换矩阵的第一行之外的行的非零元素的位置基于该行的上一行进行循环移位得到。如此,在确定第一行的非零元素的位置之后,即可确定循环置换矩阵组中除第一行之外的行中非零元素的位置。且循环移位可使同一个子循环置换矩阵中非零元素处于不同的列,从而均匀分配非零元素的位置,便于均衡变量节点的度的分布。
在上述示例的一种可能的示例中,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
可以理解,根据所述其他非零元素的取值,和/或所述非零元素的位置的确定序号等参考信息确定的评价值,可进一步提高变量节点中权重值的均匀分布以及短环上权重值的分布优化,便于进一步提高编码性能。
在上述示例的另一种可能的示例中,所述子循环置换矩阵中的非零元素的取值相等。如此,可以以子循环置换矩阵为单位,确定该矩阵中非零元素的取值,或该行以下的子循环置换矩阵中非零元素的取值,便于进一步提高编码性能。
在一种可能的示例中,所述处理单元1001具体用于通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前i次接收到的符号序列进行解调译码,得到第一软信息,其中,所述第一软信息的长度为所述N;对所述第一软信息进行外码译码,得到比特序列估计。如此,通过解调译码得到的软信息进行外码译码,可提高译码的准确率。
在一种可能的示例中,所述处理单元1001具体用于对所述第一软信息进行外码译码,得到第二软信息;基于所述第二软信息进行迭代译码,得到比特序列估计。如此,通过至少一次迭代译码,可进一步提高译码的准确率。
在一种可能的示例中,所述第二子矩阵G′ i为所述生成矩阵中前m′ i行构成的子矩阵;若所 述i为1,则所述m′ i等于m i,且均为小于所述M的正整数;若所述i大于1,则所述m′ i等于所述m′ i-1和所述m i之间的和值,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次接收到的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000015
所述m′ i-1为第(i-1)次基于前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数。如此,通过第二子矩阵基于接收到的所有符号序列进行解调译码,可提高解调译码的效率。
在一种可能的示例中,所述收发单元1002还用于从所述发送设备接收配置信息,所述配置信息用于确定所述生成矩阵或所述第二子矩阵的参数信息,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数;所述处理单元1001还用于基于所述配置信息确定所述参数信息。如此,可提高获取用于解调译码的矩阵的准确率,便于提高译码的成功率。
需要说明的是,各个单元的实现还可以对应参照图8或图9所示的方法实施例的相应描述。
请参见图11,图11是本申请实施例提供的另一种通信装置,该通信装置包括处理器1101、存储器1102和通信接口1103,所述处理器1101、存储器1102和通信接口1103通过总线1104相互连接。存储器1102包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM),该存储器1102用于相关指令及数据。通信接口1103用于接收和发送数据。处理器1101可以是一个或多个中央处理器(central processing unit,CPU),在处理器1101是一个CPU的情况下,该CPU可以是单核CPU或者多核CPU。
当通信装置为发送设备时,处理器1101用于读取所述存储器1102中存储的程序代码,执行以下操作:
对待传输的比特序列进行BPSK映射,得到第一序列;其中,所述第一序列中每个元素为1或-1,所述比特序列和所述第一序列的长度均为N;
根据生成矩阵或所述生成矩阵中部分行构成的第一子矩阵对所述第一序列进行编码调制,得到符号序列c i;其中,所述符号序列c i的长度m i为小于或等于最大传输符号数M的正整数;所述i为符号序列的传输次数,所述i为小于或等于所述M的正整数;所述生成矩阵的列数为所述N,所述生成矩阵的行数为所述M,所述M和所述N均为正整数;所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系;
通过信道将所述符号序列c i发送给接收设备。
在一种可能的示例中,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
在一种可能的示例中,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。
在一种可能的示例中,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
在上述示例的一种可能的示例中,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
在上述示例的另一种可能的示例中,所述子循环置换矩阵中的非零元素的取值相等。
在一种可能的示例中,所述处理器1101还用于执行以下操作:
根据所述N的大小和/或传输的速率要求确定所述生成矩阵。
在一种可能的示例中,在所述对待传输的比特序列进行BPSK映射,得到第一序列方面,处理器1101具体用于执行以下操作:
对待传输的比特序列进行级联外码编码,得到第二序列,其中,所述第二序列的长度为所述N;
对所述第二序列进行BPSK映射,得到第一序列。
在一种可能的示例中,所述第一子矩阵G i的行数等于所述m i;若所述i为1,则所述第一子矩阵G i为所述生成矩阵中前所述m i行构成的子矩阵,所述m i为小于所述M的正整数;若所述i大于1,则所述第一子矩阵G i为所述生成矩阵中第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次传输的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000016
所述m i-1为第(i-1)次对传输的符号序列c i-1进行编码调制的第一子矩阵G i-1的行数,且等于所述符号序列c i-1的长度。
在一种可能的示例中,所述处理器1101还用于执行以下操作:
根据所述信道的信道参数确定所述m i的大小和/或所述M的大小。
在一种可能的示例中,所述处理器1101还用于执行以下操作:
向所述接收设备发送配置信息;其中,所述配置信息用于确定所述生成矩阵或所述生成矩阵中部分行构成的第二子矩阵的参数信息,所述第二子矩阵用于基于前所述i次接收到的符号序列进行解调译码,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数。
当通信装置为接收设备时,处理器1101用于读取所述存储器1102中存储的程序代码,执行以下操作:
通过信道从发送设备接收符号序列y i;其中,所述符号序列y i的长度m i为小于或等于最大传输符号数M的正整数,所述i为已接收的符号序列的接收次数,所述i为小于或等于所述M的正整数;
通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计;其中,所述比特序列估计的长度为所述生成矩阵的列数N;所述生成矩阵的行数为所述M,所述M和所述N均为正整数;所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同, 且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
在一种可能的示例中,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
在一种可能的示例中,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。
在上述示例的一种可能的示例中,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
在上述示例的一种可能的示例中,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
在上述示例的一种可能的示例中,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
在上述示例的另一种可能的示例中,所述子循环置换矩阵中的非零元素的取值相等。
在一种可能的示例中,在所述通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计方面,处理器1101具体用于执行以下操作:
通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到第一软信息,其中,所述第一软信息的长度为所述N;
对所述第一软信息进行外码译码,得到比特序列估计。
在一种可能的示例中,在所述对所述第一软信息进行外码译码,得到比特序列估计方面,处理器1101具体用于执行以下操作:
对所述第一软信息进行外码译码,得到第二软信息;
基于所述第二软信息进行迭代译码,得到比特序列估计。
在一种可能的示例中,所述第二子矩阵G′ i为所述生成矩阵中前m′ i行构成的子矩阵;若所述i为1,则所述m′ i等于所述m i,且均为小于所述M的正整数;若所述i大于1,则所述m′ i等于所述m′ i-1和所述m i之间的和值,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次接收到的符号序列的长度之间的和值
Figure PCTCN2022099014-appb-000017
所述m′ i-1为第(i-1)次基于前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数。
在一种可能的示例中,在所述接收设备通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码之前,处理器1101还用于执行以下操作:
从所述发送设备接收配置信息,其中,所述配置信息用于确定所述生成矩阵或所述第二 子矩阵的参数信息,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数;
基于所述配置信息确定所述参数信息。
需要说明的是,各个操作的实现还可以对应参照图8或图9所示的方法实施例的相应描述。
本申请实施例还提供第一种芯片,包括处理器和存储器,所述处理器用于从所述存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的设备执行图8或图9所示的方法。
本申请实施例还提供第二种芯片,包括:输入接口、输出接口和处理电路,其中,所述输入接口、所述输出接口与所述处理电路之间通过内部连接通路相连,所述处理电路用于执行图8或图9所示的方法。
本申请实施例还提供第三种芯片,包括:输入接口、输出接口、处理器,可选的,还包括存储器,其中,所述输入接口、所述输出接口、所述处理器以及所述存储器之间通过内部连接通路相连,所述处理器用于执行所述存储器中的代码,当所述代码被执行时,所述处理器用于执行图8或图9所示的方法。
本申请实施例还提供一种芯片***,所述芯片***包括至少一个处理器,存储器和接口电路,所述存储器、所述收发器和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,图8或图9所示的方法流程得以实现。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,图8或图9所示的方法流程得以实现。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品用于存储计算机程序,当所述计算机程序在计算机上运行时,图8或图9所示的方法流程得以实现。
综上所述,通过实施本申请实施例,发送设备根据生成矩阵或生成矩阵中部分行构成的第一子矩阵进行编码调制。然后将经过编码调制得到的符号序列发送给接收设备,实现了编码调制传输。其中,生成矩阵每一行的非零元素的位置基于PEG算法得到,从而可尽量减少短环的产生,且产生的短环的最小环长尽可能长,便于提高译码性能。且基于非零元素的评价值对该非零元素进行赋值,可便于均衡变量节点中权重值的分布以及短环上权重值的分布优化,提高了编码调制的性能。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机指令产品的形式实现。在计算机上加载和执行该计算机指令时,可以全部或部分地实现本申请实施例所描述的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其它可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者通过计算机可读存储介质进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本申请方法实施例中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请装置实施例中的模块可以根据实际需要进行合并、划分和删减。

Claims (29)

  1. 一种数据传输的方法,其特征在于,包括:
    发送设备对待传输的比特序列进行BPSK映射,得到第一序列;其中,所述第一序列中每个元素为1或-1,所述比特序列和所述第一序列的长度均为N;
    所述发送设备根据生成矩阵或所述生成矩阵中部分行构成的第一子矩阵对所述第一序列进行编码调制,得到符号序列c i;其中,所述符号序列c i的长度m i为小于或等于最大传输符号数M的正整数;所述i为符号序列的传输次数,所述i为小于或等于所述M的正整数;所述生成矩阵的列数为所述N,所述生成矩阵的行数为所述M,所述M和所述N均为正整数;所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系;
    所述发送设备通过信道将所述符号序列c i发送给接收设备。
  2. 根据权利要求1所述的方法,其特征在于,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号;其中,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
  3. 根据权利要求2所述的方法,其特征在于,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
  4. 根据权利要求1所述的方法,其特征在于,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。
  5. 根据权利要求4所述的方法,其特征在于,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括所述d个子循环置换矩阵;其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值;所述P等于所述M和所述第一比值之间的第二比值;所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到;所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
  6. 根据权利要求5所述的方法,其特征在于,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号;其中,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
  7. 根据权利要求6所述的方法,其特征在于,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
  8. 根据权利要求6所述的方法,其特征在于,所述子循环置换矩阵中的非零元素的取值相等。
  9. 根据权利要求1-8中任一项所述的方法,其特征在于,所述方法还包括:
    所述发送设备根据所述N的大小和/或传输的速率要求确定所述生成矩阵。
  10. 根据权利要求1-9中任一项所述的方法,其特征在于,所述发送设备对待传输的比特序列进行BPSK映射,得到第一序列,包括:
    发送设备对待传输的比特序列进行级联外码编码,得到第二序列;其中,所述第二序列的长度为所述N;
    所述发送设备对所述第二序列进行BPSK映射,得到第一序列。
  11. 根据权利要求1-10中任一项所述的方法,其特征在于,所述第一子矩阵G i的行数等于所述m i;若所述i为1,则所述第一子矩阵G i为所述生成矩阵中前所述m i行构成的子矩阵,所述m i为小于所述M的正整数;若所述i大于1,则所述第一子矩阵G i为所述生成矩阵中第(m i-1+1)行到第(m i-1+m i)行构成的子矩阵,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次传输的符号序列的长度之间的和值
    Figure PCTCN2022099014-appb-100001
    所述m i-1为第(i-1)次对传输的符号序列c i-1进行编码调制的第一子矩阵G i-1的行数,且等于所述符号序列c i-1的长度。
  12. 根据权利要求1-11中任一项所述的方法,其特征在于,所述方法还包括:
    所述发送设备根据所述信道的信道参数确定所述m i的大小和/或所述M的大小。
  13. 根据权利要求1-12中任一项所述的方法,其特征在于,所述方法还包括:
    所述发送设备向所述接收设备发送配置信息;其中,所述配置信息用于确定所述生成矩阵或所述生成矩阵中部分行构成的第二子矩阵的参数信息,所述第二子矩阵用于基于前所述i次接收到的符号序列进行解调译码,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数。
  14. 一种数据传输的方法,其特征在于,包括:
    接收设备通过信道从发送设备接收符号序列y i;其中,所述符号序列y i的长度m i为小于或等于最大传输符号数M的正整数,所述i为已接收的符号序列的接收次数,所述i为小于或等于所述M的正整数;
    所述接收设备通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计;其中,所述比特序列估计的长度为所述生成矩阵的列数N;所述生成矩阵的行数为所述M,所述M和所述N均为正整数;所述生成矩阵中每一行的非零元素的位置基于渐进边增长算法得到;所述生成矩阵中每一行的非零元素的取值不同,且为权重集合中的一个权重值;所述生成矩阵中第一行的非零元素的取值为所述权重集合中随机分配的一个权重值;所述生成矩阵中除所述生成矩阵的第一行之外的行的非零元素的取值和所述非零元素的参考信息相关,且与所述参考信息对应的评价值之间为负相关关系。
  15. 根据权利要求14所述的方法,其特征在于,所述非零元素的参考信息包括其他非零元素的数量,和/或所述其他非零元素的取值,和/或所述非零元素的位置的确定序号,其中,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
  16. 根据权利要求15所述的方法,其特征在于,所述评价值等于所述其他非零元素的数量,或所述其他非零元素的取值的平方和,或所述确定序号。
  17. 根据权利要求14所述的方法,其特征在于,所述生成矩阵中每一行的非零元素的数量为所述权重集合中权重值的数量d。
  18. 根据权利要求17所述的方法,其特征在于,所述生成矩阵包括P个循环置换矩阵组,所述循环置换矩阵组中包括所述d个子循环置换矩阵,其中,所述子循环置换矩阵的行数和所述子循环置换矩阵的列数相等,且等于所述N和所述d之间的第一比值,所述P等于所述M和 所述第一比值之间的第二比值,所述子循环置换矩阵中每一行存在一个非零元素,所述循环置换矩阵组中第一行的非零元素的位置基于所述渐进边增长算法得到,所述子循环置换矩阵中除所述子循环置换矩阵的第一行之外的行的非零元素的位置基于所述行的上一行进行循环移位得到。
  19. 根据权利要求18所述的方法,其特征在于,所述非零元素的参考信息包括其他非零元素的取值,和/或所述非零元素的位置的确定序号,其中,所述其他非零元素的列序与所述非零元素的列序相同,所述其他非零元素的行序小于所述非零元素的行序。
  20. 根据权利要求19所述的方法,其特征在于,所述评价值等于所述其他非零元素的取值的平方和,或所述确定序号。
  21. 根据权利要求19所述的方法,其特征在于,所述子循环置换矩阵中的非零元素的取值相等。
  22. 根据权利要求14-21中任一项所述的方法,其特征在于,所述接收设备通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到比特序列估计,包括:
    所述接收设备通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码,得到第一软信息,其中,所述第一软信息的长度为所述N;
    所述接收设备对所述第一软信息进行外码译码,得到比特序列估计。
  23. 根据权利要求22所述的方法,其特征在于,所述接收设备对所述第一软信息进行外码译码,得到比特序列估计,包括:
    所述接收设备对所述第一软信息进行外码译码,得到第二软信息;
    所述接收设备基于所述第二软信息进行迭代译码,得到比特序列估计。
  24. 根据权利要求14-23中任一项所述的方法,其特征在于,所述第二子矩阵G′ i为所述生成矩阵中前m′ i行构成的子矩阵;若所述i为1,则所述m′ i等于所述m i,且均为小于所述M的正整数;若所述i大于1,则所述m′ i等于所述m′ i-1和所述m i之间的和值,所述m i为小于或等于所述M和M′ i-1之间的差值的正整数;所述M′ i-1等于前(i-1)次接收到的符号序列的长度之间的和值
    Figure PCTCN2022099014-appb-100002
    所述m′ i-1为第(i-1)次基于前(i-1)次接收到的符号序列进行解调译码的第二子矩阵G′ i-1的行数。
  25. 根据权利要求14-24中任一项所述的方法,其特征在于,在所述接收设备通过生成矩阵或所述生成矩阵中部分行构成的第二子矩阵基于前所述i次接收到的符号序列进行解调译码之前,所述方法还包括:
    所述接收设备从所述发送设备接收配置信息;其中,所述配置信息用于确定所述生成矩阵或所述第二子矩阵的参数信息,所述生成矩阵的参数信息包括所述N的大小和所述M的大小,所述第二子矩阵的参数信息包括所述N的大小和所述第二子矩阵的行数;
    所述接收设备基于所述配置信息确定所述参数信息。
  26. 一种通信装置,其特征在于,包括用于执行如权利要求1-25中任一项所述的方法的单元。
  27. 一种通信装置,其特征在于,包括至少一个处理器和通信接口,所述至少一个处理器用于调用至少一个存储器中存储的计算机程序,以使得所述通信装置实现如权利要求1-25中任一项所述的方法。
  28. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,实现如权利要求1-25中任一项所述的方法。
  29. 一种计算机程序产品,其特征在于,所述计算机程序产品在一个或多个处理器上运行时,实现如权利要求1-25中任一项所述的方法。
PCT/CN2022/099014 2021-07-29 2022-06-15 数据传输的方法及相关装置 WO2023005480A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP22848087.7A EP4369639A1 (en) 2021-07-29 2022-06-15 Data transmission method and related apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110862580.5 2021-07-29
CN202110862580.5A CN115694720A (zh) 2021-07-29 2021-07-29 数据传输的方法及相关装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/424,051 Continuation US20240243955A1 (en) 2021-07-29 2024-01-26 Data transmission method and related apparatus

Publications (1)

Publication Number Publication Date
WO2023005480A1 true WO2023005480A1 (zh) 2023-02-02

Family

ID=85057760

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/099014 WO2023005480A1 (zh) 2021-07-29 2022-06-15 数据传输的方法及相关装置

Country Status (3)

Country Link
EP (1) EP4369639A1 (zh)
CN (1) CN115694720A (zh)
WO (1) WO2023005480A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104393959A (zh) * 2014-11-28 2015-03-04 电子科技大学 一种编码调制方法
CN108134610A (zh) * 2017-12-12 2018-06-08 重庆邮电大学 基于杨辉三角的特殊结构原模图qc-ldpc码的构造方法
CN109544643A (zh) * 2018-11-21 2019-03-29 北京佳讯飞鸿电气股份有限公司 一种摄像机图像校正方法及装置
US20200099398A1 (en) * 2017-06-09 2020-03-26 Lg Electronics Inc. Sc-ldpc code encoding method and device therefor
CN111325824A (zh) * 2019-07-03 2020-06-23 杭州海康威视***技术有限公司 图像数据展示方法、装置、电子设备及存储介质
CN112866627A (zh) * 2019-11-28 2021-05-28 上海华为技术有限公司 一种三维视频监控方法及相关设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104393959A (zh) * 2014-11-28 2015-03-04 电子科技大学 一种编码调制方法
US20200099398A1 (en) * 2017-06-09 2020-03-26 Lg Electronics Inc. Sc-ldpc code encoding method and device therefor
CN108134610A (zh) * 2017-12-12 2018-06-08 重庆邮电大学 基于杨辉三角的特殊结构原模图qc-ldpc码的构造方法
CN109544643A (zh) * 2018-11-21 2019-03-29 北京佳讯飞鸿电气股份有限公司 一种摄像机图像校正方法及装置
CN111325824A (zh) * 2019-07-03 2020-06-23 杭州海康威视***技术有限公司 图像数据展示方法、装置、电子设备及存储介质
CN112866627A (zh) * 2019-11-28 2021-05-28 上海华为技术有限公司 一种三维视频监控方法及相关设备

Also Published As

Publication number Publication date
CN115694720A (zh) 2023-02-03
EP4369639A1 (en) 2024-05-15

Similar Documents

Publication Publication Date Title
CN111954982B (zh) 无线通信***和广播***中使用极性码进行编码和解码的装置和方法
RU2663708C1 (ru) Способ и устройство для передачи данных
CN109863705B (zh) 用于递增冗余混合自动重传请求重传的方法和设备
US20190132087A1 (en) Method and apparatus for data transmission
KR102541319B1 (ko) 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법
WO2022161201A1 (zh) 编码调制与解调解码方法及装置
JP7252344B2 (ja) データ伝送方式及び通信デバイス
WO2019170161A1 (zh) 通知信道质量的方法和装置
WO2019141195A1 (zh) 发送或接收数据的方法和通信设备
WO2021104480A1 (zh) 编译码方法及装置
US10560175B2 (en) Data transmission method and apparatus
WO2021254422A1 (zh) Polar码编码方法、Polar码译码方法及其装置
CN110830162A (zh) 有部分信息下进行极性码传输的方法和使用其的装置
WO2022095729A1 (zh) 一种无线信道数据处理方法、通信装置及通信设备
CN110890938B (zh) 使用Polar码的信道编码方案的数据传输方法及相关设备
WO2023005480A1 (zh) 数据传输的方法及相关装置
WO2021004239A1 (zh) 数据处理方法及装置
CN113055022A (zh) 并行软消除译码方法及相关装置
KR20170081921A (ko) 무선 통신 시스템에서 신호를 디코딩하기 위한 방법 및 장치
US20240243955A1 (en) Data transmission method and related apparatus
WO2018121248A1 (zh) 一种数据传输方法、数据发送设备和数据接收设备
WO2021017977A1 (zh) 编码方法、装置、设备及计算机可读存储介质
WO2018137544A1 (zh) 数据的传输方法和装置
CN105027450A (zh) 支持连续干扰消除(sic)的前向纠错(fec)
CN110034851A (zh) 编码方法、编码设备以及***

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22848087

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022848087

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022848087

Country of ref document: EP

Effective date: 20240207

NENP Non-entry into the national phase

Ref country code: DE