[go: up one dir, main page]

WO2025148789A1 - Encoding method and apparatus, and decoding method and apparatus - Google Patents

Encoding method and apparatus, and decoding method and apparatus

Info

Publication number
WO2025148789A1
WO2025148789A1 PCT/CN2025/070360 CN2025070360W WO2025148789A1 WO 2025148789 A1 WO2025148789 A1 WO 2025148789A1 CN 2025070360 W CN2025070360 W CN 2025070360W WO 2025148789 A1 WO2025148789 A1 WO 2025148789A1
Authority
WO
WIPO (PCT)
Prior art keywords
bit sequence
value
bit
encoding
code
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
PCT/CN2025/070360
Other languages
French (fr)
Chinese (zh)
Inventor
秦康剑
张华滋
刘可
王献斌
童佳杰
王俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of WO2025148789A1 publication Critical patent/WO2025148789A1/en
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes

Definitions

  • the present application relates to the field of communication technology, and in particular to an encoding method, a decoding method and a device.
  • the present application provides an encoding method, a decoding method and a device, which can reduce the error floor and bit error rate of LDPC codes, thereby improving the error correction performance.
  • determining the second bit sequence and the third bit sequence based on the first bit sequence includes: determining a first numerical value based on the first column number in the base graph whose weight is higher than a first threshold; determining the third bit sequence from the first bit sequence based on the first numerical value and a lifting factor corresponding to the first bit sequence; and determining the second bit sequence based on the third bit sequence and the first bit sequence.
  • the method further includes: sending a symbol sequence based on a third bit sequence.
  • a computer-readable storage medium stores computer instructions, and when the computer instructions are executed, the computer executes any of the methods described in any of the first to second aspects.
  • FIG1 is a basic architecture of a communication system provided in an embodiment of the present application.
  • FIG2 is a schematic diagram of a communication process between communication devices
  • FIG4 is a schematic diagram of a check matrix
  • FIG5 is a schematic diagram of a flow chart of an encoding method provided in an embodiment of the present application.
  • FIG6 is a schematic diagram of a flow chart of a decoding method provided in an embodiment of the present application.
  • FIG8 is a schematic diagram of a flow chart of another decoding method provided in an embodiment of the present application.
  • FIG9 is an example of encoding and decoding provided in an embodiment of the present application.
  • FIG11 is another example of encoding and decoding provided in an embodiment of the present application.
  • FIG12 is a comparison diagram of another beneficial effect provided by an embodiment of the present application.
  • the technical solutions of the embodiments of the present application can be applied to the long term evolution (LTE) architecture, the fifth generation mobile communication technology (5G), wireless local area network (WLAN) system, vehicle to everything (V2X) communication system, LTE-vehicle (LTE-V), vehicle to vehicle (V2V), vehicle networking, machine type communications (MTC), etc.
  • LTE long term evolution
  • 5G fifth generation mobile communication technology
  • WLAN wireless local area network
  • V2X vehicle to everything
  • LTE-V LTE-vehicle
  • V2V vehicle to vehicle
  • vehicle networking machine type communications
  • MTC machine type communications
  • the communication system provided by the present application may include one or more network devices, and one or more terminal devices.
  • the following is an exemplary explanation of the system architecture shown in Figure 1.
  • the communication system includes a network device 10 and one or more terminal devices (such as the terminal device 20 in Figure 1) that communicate with the network device 10.
  • the terminal device can also be a terminal in 5G system or a terminal in next generation communication system, which is not limited in the embodiments of the present application.
  • a network device is an entity on the network side that is used to send signals, receive signals, or both send and receive signals.
  • a network device can be a device deployed in a radio access network (RAN) to provide wireless communication functions for terminal devices.
  • RAN radio access network
  • the names of devices with base station functions may be different.
  • it can be a gNB in 5G, or a network-side device in a network after 5G, or a network device in a future public land mobile network (PLMN) network, or a device that performs base station functions in device-to-device (D2D) communication, machine-to-machine (M2M) communication, or vehicle networking communication, etc.
  • PLMN public land mobile network
  • the network device can also be a baseband pool (BBU pool) and RRU under an open access network (open RAN, O-RAN or ORAN), a cloud radio access network (cloud radio access network, CRAN), etc.
  • Polar code is a known channel coding scheme that can be strictly proven to "reach" the channel capacity. It has the characteristics of high performance and low complexity. It has been identified by 3GPP as the control channel coding scheme for 5G control channel enhanced mobile broadband (eMBB) scenarios (uplink/downlink).
  • eMBB enhanced mobile broadband
  • u N In the encoding process of polar code, u N can be divided into two parts. One part of the bits carries information, which is called information bits. The index set of these bits can be recorded as A. The other part of the bits is a fixed value, called fixed bits, which are usually set to 0.
  • FIG3 shows a schematic diagram of polar code encoding.
  • u 8 ⁇ u 0 ,u 0 ,...,u 7 ⁇ is a binary row vector of length 8, which may include fixed bits and information bits.
  • the fixed bits and information bits may be adjacent or interlaced.
  • u 0 , u 1 , u 2 and u 4 are fixed bits and may all be 0.
  • u 3 , u 5 , u 6 and u 7 are information bits.
  • the circle plus symbol shown in FIG3 represents an exclusive-or operation.
  • u 0 , u 1 , u 2 and u 4 are four bits with the lowest reliability
  • u 3 , u 5 , u 6 and u 7 are four bits with the highest reliability.
  • the intermediate result in the encoding process shown in FIG3 is only an example, and the embodiment of the present application does not limit this.
  • polar code encoding and polar code outer code encoding can replace each other.
  • the polar code may include at least one of the following: Arikan Polar code, parity check polar code (PC-Polar) code, cyclic redundancy check polar code (CA-Polar) code, or parity check-cyclic redundancy check polar code-polar code (PC-CA-Polar) code.
  • Arikan Polar refers to the original polar code, which is not concatenated with other codes, including information bits and/or frozen bits.
  • PC-Polar is a polar code concatenated with a PC code.
  • CA-Polar is a polar code concatenated with a CRC code.
  • PC-CA-Polar code is a polar code concatenated with both a PC code and a CRC code.
  • CRC code as a commonly used error detection code, is the most common outer code cascaded with polar code.
  • the length of the CRC code can be R bits, and R can be a positive integer, such as 4, 6, 8, 11, 16 or 24, and the present application does not limit its length.
  • the CRC code can be obtained based on a generating polynomial, and the power of the generating polynomial of the R-bit CRC code can be R.
  • the polynomials used by CRC codes of different lengths are different. For example, taking the length of the CRC code as 24 bits, the polynomial used can be CRC24. The present application does not limit the specific polynomial used by the CRC code.
  • polar code decoding such as successive cancellation decoding (SC) decoding, successive cancellation list decoding (SCL), successive cancellation stack (SCS) decoding, CRC-aided successive cancellation list (CA-SCL) decoding, belief propagation (BP) decoding and soft cancellation (SCAN) decoding.
  • SC successive cancellation decoding
  • SCL successive cancellation list decoding
  • SCS successive cancellation stack
  • CA-SCL CRC-aided successive cancellation list
  • BP belief propagation
  • SCAN soft cancellation
  • the present application does not limit the decoding method of polar code.
  • the polar code is Arikan Polar code
  • SC decoding, SCL decoding, SCS decoding, BP decoding or SCAN decoding can be used.
  • the polar code is PC-Polar code, CA-Polar code or PC-CA-Polar code, and CA-SCL decoding can be used.
  • LDPC code is a type of linear block code with a sparse check matrix, that is, the density of non-zero elements in the check matrix (also called parity check matrix or LDPC matrix) is relatively low, that is, the number of zero elements in the check matrix is far greater than the number of non-zero elements.
  • LDPC code can be represented by a check matrix or a Tanner graph, and this application does not limit the specific form of expression of LDPC code.
  • the following is an introduction using the representation of LDPC code by a check matrix as an example, which should not be regarded as a limitation of this application.
  • the check matrix of the LDPC code can be seen in Figure 4.
  • the check matrix includes a high rate region, an incremental redundancy region, and an extended check region.
  • the area selected by the dotted line represents the code rate.
  • the main characteristic of the check matrix is nestedness, that is, the low code rate region can contain the high code rate region, and the high code rate region can be used as a submatrix of the low code rate region.
  • different matrix regions can be selected according to the code rate as the check matrix. For example, from the upper left area to the lower right area of the matrix, such as the 0th row to the M0th row and the 0th column to the N0th column. M0 and N0 can be integers greater than 0.
  • the check matrix of the LDPC code can be obtained by a basegraph (BG) and a shifting value.
  • the basegraph can be determined based on the length of the information bit and the code rate.
  • the code rate refers to the proportion of bits before encoding (i.e., information bits) in the bits after encoding.
  • the basegraph can be divided into BG1 and BG2.
  • the code length of the information bit applicable to BG1 is 308 bits to 8448 bits, and the code rate is 0.25 to 0.95.
  • the code length of the information bit applicable to BG2 is 40 bits to 3840 bits, and the code rate is 0.20 to 0.95.
  • the row and column numbers of the base graph can be numbered starting from 0, and the row and column numbers of the matrix can be numbered starting from 0. This application does not limit the specific value from which the row and column numbers start numbering.
  • the base graph may include m ⁇ n matrix elements (entries), which may be represented by a matrix with m rows and n columns.
  • the values of the matrix elements may be 0 or 1, where the elements with a value of 0 may be called zero elements, indicating that the elements may be replaced by a Z*Z all-zero matrix (zeromatrix).
  • the elements with a value of 1 may be called non-zero elements, indicating that the elements may be replaced by a Z*Z circulant permutation matrix (circulantpermutationmatrix).
  • each matrix element represents an all-zero matrix or a circulant permutation matrix.
  • Z is associated with the translation value.
  • a set of multiple Zs (which may be referred to as a lifting factor set (set of lifting sizes), which is described below using the lifting factor set as an example) may correspond to the translation value, such as the row number of the lifting factor set corresponding to the column number of the translation value.
  • the column number of the translation value may be described as a set index (set index).
  • the lifting factor set may correspond to a set index. For example, ⁇ 2, 4, 8, 16, 32, 64, 128, 256 ⁇ corresponds to 0, and the rest are similar and will not be described here.
  • the check matrix of the LDPC code can be obtained.
  • the base graph can be used to indicate the position of the offset value, and the non-zero elements in the base graph correspond to the offset value. It can be seen that the size of the parity check matrix H is (m*Z)*(n*Z).
  • LDPC codes such as minimum sum algorithm (Min-Sum, MS) decoding or BP decoding.
  • Min-Sum, MS minimum sum algorithm
  • BP decoding BP decoding
  • This application does not limit the decoding method of LDPC codes.
  • MS decoding can be divided into offset minimum sum algorithm (Offset-MS) decoding and normalized minimum sum algorithm (Normalized-MS) decoding.
  • Offset minimum sum algorithm decoding can be, for example, layered offset minimum sum algorithm (layered offset min-sum, LOMS) decoding.
  • the execution subject of the method provided in the present application may be the first device and the second device in Figure 2.
  • the following is an introduction taking the first device as a terminal device and the second device as a network device as an example, which should not be regarded as a limitation of the present application.
  • the processing performed by the single execution subject (terminal device or network device) shown in the embodiment of the present application can also be divided into execution by multiple execution subjects, and these execution subjects can be logically and/or physically separated.
  • the processing performed by the network device can be divided into execution by at least one of CU, DU and RU.
  • a terminal device performs polarization code encoding on a first bit sequence to obtain a second bit sequence.
  • the first bit sequence may include at least one of the following: an information bit sequence, a frozen bit sequence, or a check bit sequence.
  • the information bit sequence is a sequence composed of information bits
  • the frozen bit sequence is a sequence composed of frozen bits.
  • the check bit sequence may include a PC code and/or a CRC code.
  • the first bit sequence is divided into two cases for introduction below, which should not be regarded as a limitation of the present application. Specifically:
  • the first bit sequence includes an information bit sequence.
  • the first bit sequence includes an information bit sequence and a check bit sequence.
  • the second bit sequence may be a polar code.
  • the second bit sequence may be an Arikan Polar code.
  • the second bit sequence may be a PC-Polar code, a CA-Polar code, or a PC-CA-Polar code.
  • the length Npolar of the second bit sequence may be determined according to the length T of the first bit sequence and the code rate R corresponding to the second bit sequence. For example, the length of the second bit sequence satisfies the following conditions:
  • rounding up in the present application can be replaced by rounding down.
  • R may be a code rate corresponding to the second bit sequence.
  • R may be a predefined or preconfigured value greater than 0, or R may be indicated by a network device to a terminal device.
  • R may be 0.9517, or R may be (Nm ⁇ 0.9517)/Nm, such as 975/1024.
  • Nm is the maximum length supported by the polar code encoding.
  • Nm may be an integer greater than 0, such as Nm is 1024.
  • the information bit sequence in the first bit sequence may be a partial or complete bit sequence of the initial bit sequence.
  • the initial bit sequence in the present application may be referred to as a mother code.
  • the initial bit sequence may include an information bit sequence.
  • the initial bit sequence may also include a frozen bit sequence or may not include a frozen bit sequence. The following takes the initial bit sequence not including the frozen bit sequence as an example to introduce the relationship between the first bit sequence and the initial bit sequence, which should not be regarded as a limitation of the present application, specifically:
  • the terminal device may segment the initial bit sequence based on the first segment length to obtain L bit sequences, where L is an integer greater than 1. For example, when the length of the initial bit sequence is greater than Kcb, the terminal device may segment the initial bit sequence based on the first segment length to obtain L bit sequences. That is, the information bit sequence in the first bit sequence is a partial bit sequence of the initial bit sequence, that is, the first bit sequence of the unconcatenated check bit sequence is a partial bit sequence of the initial bit sequence.
  • the second segment length may be determined based on Nm and R, for example, by satisfying the following conditions: For example, assuming R is 0.9517 and Nm is 1024, K2 can be
  • the lengths of the P bit sequences may be partially the same, completely the same, or completely different.
  • the first bit sequence includes 2924 bits
  • the second segment length is 975
  • the terminal device may divide the first bit sequence into three bit sequences based on the second segment length, with lengths of 975, 975, and 974, respectively. That is, the lengths of two of the three bit sequences are the same.
  • the terminal device performs LDPC encoding on the second bit sequence to obtain a third bit sequence.
  • the terminal device sends a symbol sequence based on the third bit sequence.
  • step 503 may include: the terminal device modulates the third bit sequence based on the modulation mode to obtain a symbol sequence.
  • the modulation mode in the present application may be quadrature phase shift keying (QPSK), binary phase shift keying (BPSK), 16-quadrature amplitude modulation (QAM), 64-QAM, 256-QAM, 1024-QAM or 4096-QAM, etc. This application does not limit this.
  • the network device determines a third bit sequence based on the symbol sequence.
  • the network device performs LDPC decoding on the third bit sequence to obtain a second bit sequence.
  • the manner in which the network device performs LDPC decoding on the third bit sequence can refer to the above related description, which is not described in detail here.
  • the second bit sequence is similar to the second bit sequence in step 501 of FIG. 5, which is not described in detail here.
  • the network device performs polarization code decoding on the second bit sequence to obtain a first bit sequence.
  • the first bit sequence is similar to the first bit sequence in step 501 of FIG5 , and is not described in detail here.
  • the manner in which the network device performs polar code decoding on the second bit sequence can refer to the above related description, and is not described in detail here.
  • the network device can first determine the third bit sequence based on the symbol sequence, so that the third bit sequence can be LDPC decoded to obtain the second bit sequence, and then the second bit sequence can be polar code decoded to obtain the first bit sequence. This can be used to reduce the error floor of LDPC decoding, and then improve the error correction performance of LDPC code.
  • another encoding method provided by the present application includes but is not limited to the following steps:
  • a terminal device determines a second bit sequence and a third bit sequence based on a first bit sequence, where the third bit sequence includes a bit sequence in a base graph corresponding to the first bit sequence and having a weight higher than a first threshold.
  • the first bit sequence may include at least one of the following: an information bit sequence, a frozen bit sequence, or a check bit sequence.
  • the information bit sequence is a sequence composed of information bits
  • the frozen bit sequence is a sequence composed of frozen bits.
  • the check bit sequence may include a PC code and/or a CRC code.
  • the first bit sequence is divided into two cases for introduction below, which should not be regarded as a limitation of the present application. Specifically:
  • the second type is that the first bit sequence includes an information bit sequence and a check bit sequence.
  • the terminal device can perform check code encoding on the seventh bit sequence to obtain the first bit sequence.
  • the check code encoding can be PC encoding and/or CRC encoding.
  • the terminal device can cascade a 24-bit CRC code at the end of the seventh bit sequence to obtain the first bit sequence.
  • step 701 may include: the terminal device determines a first numerical value based on the first number of columns in the base graph whose weights are higher than a first threshold, thereby determining a third bit sequence from the first bit sequence based on the first numerical value and a lifting factor corresponding to the first bit sequence, and further determining a second bit sequence based on the third bit sequence and the first bit sequence.
  • the first value is the first column number.
  • the first column number is an integer greater than or equal to 1, such as 2 or 3.
  • T is the first column number.
  • the first column number is 2, that is, the weights of the 0th to 1st columns in the base graph are higher than the first threshold.
  • the first column number is 3, that is, the weights of the 0th to 2nd columns in the base graph are higher than the first threshold.
  • the first threshold may be a predefined or preconfigured value greater than 0.
  • the terminal device determines the second column number with the highest reliability (i.e., the lowest bit error) from the base graph except for the other columns whose weights are higher than the first threshold, and determines the first value based on the first column number and the second column number. For example, the terminal device sorts the reliabilities of the other columns in the order of reliability from high to low or from low to high, and counts the number of columns with the highest reliability to obtain the second column number. Among them, reliability from high to low can be understood as bit error rate from low to high. And vice versa.
  • the first value may be the sum of the first column number and the second column number.
  • the first column number is 2, that is, the weights of the 0th column to the 1st column in the base graph are higher than the first threshold.
  • the terminal device may sort the reliabilities of the 2nd column to the 9th column in order of reliability from high to low or from low to high, so as to count the number of columns with the highest reliability and obtain the second column number.
  • the second column number may be an integer greater than or equal to 1.
  • the weight in the base graph can be understood as: the weight of the column in the base graph.
  • the column weight is introduced as an example, which should not be regarded as a limitation of the present application.
  • the weight of the base graph is determined by the number of non-zero elements.
  • the weight of a row refers to the number of non-zero elements included in a row
  • the weight of a column refers to the number of non-zero elements included in a column.
  • the weight of a row and the weight of a column can be referred to as row weight and column weight, respectively.
  • the base graph may be determined based on the length and code rate of the information bits in the initial bit sequence.
  • the lifting factor corresponding to the first bit sequence may be determined based on the length of the information bits in the initial bit sequence.
  • the information bit sequence in the first bit sequence may be a partial or complete bit sequence of the initial bit sequence.
  • the initial bit sequence may include an information bit sequence.
  • the initial bit sequence may also include a frozen bit sequence or may not include a frozen bit sequence. The following takes the initial bit sequence not including a frozen bit sequence as an example to introduce the relationship between the first bit sequence and the initial bit sequence, which should not be regarded as a limitation of the present application, specifically:
  • the information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence.
  • the information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence.
  • the information bit sequence in the first bit sequence is the entire bit sequence of the initial bit sequence, that is, the first bit sequence of the unconcatenated check bit sequence is the same as the initial bit sequence.
  • Kcb can be determined based on a base graph. For example, if the base graph is BG1, Kcb is 8448. If the base graph is BG2, Kcb is 3840. The base graph is determined based on the length and code rate of the information bits in the initial bit sequence.
  • the terminal device may segment the initial bit sequence based on the first segment length to obtain X bit sequences, where X is an integer greater than 1.
  • the terminal device may segment the initial bit sequence based on the first segment length to obtain X bit sequences.
  • the X bit sequences may include the first bit sequence or the seventh bit sequence.
  • the X bit sequences include the first bit sequence. That is, the information bit sequence in the first bit sequence is a partial bit sequence of the initial bit sequence.
  • the X bit sequences include the seventh bit sequence. That is, the seventh bit sequence is a partial bit sequence of the initial bit sequence.
  • the first segment length may be determined based on the first value and the lifting factor.
  • the first segment length may be determined based on the first value, the lifting factor, and the second value.
  • the second value is determined based on the total number of columns of the base graph and the first value, such as the second value is the difference between the total number of columns of the base graph and the first value.
  • the first segment length can also be determined based on a third value.
  • the third value is the code rate corresponding to the second bit sequence.
  • the third value may be a predefined or preconfigured value greater than 0, or the third value may be indicated by the network device to the terminal device.
  • the third value may be 0.9517, or the third value may be (Nm ⁇ 0.9517)/Nm, such as 975/1024.
  • Nm is the maximum length supported by the polar code encoding.
  • Nm may be an integer greater than 0, such as Nm is 1024.
  • the terminal device segments the other bit sequences based on the second segment length to obtain Y bit sequences, where the Y bit sequences include the second bit sequence. For example, when the length of the other bit sequences is greater than Nm, the terminal device segments the other bit sequences based on the second segment length to obtain Y bit sequences. Where Y is an integer greater than 1.
  • the second segment length can be determined based on Nm and the third value. For example, the second segment length satisfies the following conditions:
  • the terminal device performs polarization code encoding on the second bit sequence to obtain a fourth bit sequence.
  • the terminal device performs LDPC encoding on the third bit sequence and the fourth bit sequence to obtain a fifth bit sequence.
  • step 704 may be further included.
  • the terminal device sends a symbol sequence based on the fifth bit sequence.
  • step 704 may include: the terminal device modulates the fifth bit sequence based on a modulation method to obtain a symbol sequence.
  • the Polar-LDPC encoding and decoding 1 process of Figure 11 is as follows: the terminal device performs CRC24 encoding and polarization code encoding on 792 bits in sequence. After CRC24 encoding of 792 bits, the length of the bit sequence K_S_CRC is 816 bits. After polarization code encoding of 816 bits, the length of the bit sequence N_polar is 858 bits. Furthermore, 208 bits and 858 bits are cascaded (their length K_ldpc is 1066 bits), LDPC encoding and QPSK modulation are performed in sequence, and the information is sent to the network device through the AWGN channel.
  • the Polar-LDPC encoding and decoding 2 process of Figure 11 is as follows: the terminal device performs CRC24 encoding on the information bits to obtain a bit length K_CRC of 1024 bits.
  • the length of the bit sequence K_polar that needs to be encoded with polarization code is 816 bits
  • the length of the bit sequence K_B that does not need to be encoded with polarization code is 208 bits.
  • the 816 bits are polarization-coded to obtain a bit sequence length N_polar of 858 bits.
  • 208 bits and 858 bits can be cascaded (whose length K_ldpc is 1066 bits), LDPC encoded and QPSK modulated in sequence, and the information is sent to the network device through the AWGN channel.
  • K_ldpc-K_B 858 bits.
  • a large column of bits with a length of 208 bits can also be obtained. In this way, we can get In FIG.
  • the number of iterations of LOMS decoding is 15, and the largest columns are the first 2 columns of BG2.
  • the curve of Polar-LDPC shown in Figure 9 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding process in Figure 9.
  • the curve of LDPC represents the BLER performance corresponding to the LDPC encoding and decoding process in Figure 11.
  • the curve of Polar-LDPC shown in Figure 11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in Figure 11.
  • the number of iterations of LOMS decoding is 25, and the largest columns are the first two columns of BG2.
  • the curve of Polar-LDPC shown in FIG9 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding process in FIG9.
  • the curve of LDPC represents the BLER performance corresponding to the LDPC encoding and decoding process in FIG11.
  • the curve of Polar-LDPC shown in FIG11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in FIG11.
  • the LDPC curve represents the BLER performance corresponding to the LDPC encoding and decoding process in FIG11.
  • the Polar-LDPC curve shown in FIG11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in FIG11. It can be seen that when the BLER is less than or equal to 10-5 , the Polar-LDPC encoding and decoding shown in FIG9, the Polar-LDPC encoding and decoding 1 in FIG11, and the corresponding error correction performance can still decrease exponentially with the increase of SNR, and there is no error flattening.
  • the LDPC curve represents the BLER performance corresponding to the LDPC encoding and decoding process in FIG. 11.
  • the Polar-LDPC curve shown in FIG. 11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in FIG. 11. It can be seen that when the BLER is less than or equal to 10-5 , the Polar-LDPC encoding and decoding shown in FIG. 9, the Polar-LDPC encoding and decoding 1 in FIG. 11, and the corresponding error correction performance can still decrease exponentially with the increase of SNR, and there is no error flattening.
  • the embodiment of the present application can divide the terminal device or network device into functional modules according to the above method example.
  • each functional module can be divided according to each function, or two or more functions can be integrated into one processing module.
  • the above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.
  • Figure 13 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application.
  • the communication device 1300 can be applied to the method shown in any of the embodiments shown in Figures 5 to 8 above.
  • the communication device 1300 includes: a processing module 1301 and a transceiver module 1302.
  • the processing module 1301 can be one or more processors
  • the transceiver module 1302 can be a transceiver or a communication interface.
  • the communication device can be used to implement the terminal device or network device involved in any of the above method embodiments, or to implement the functions of the network element involved in any of the above method embodiments.
  • the processing module 1301 when polarization code encoding is performed on the second bit sequence to obtain a fourth bit sequence, is configured to: perform check code encoding on the second bit sequence to obtain a sixth bit sequence; and perform polarization code encoding on the sixth bit sequence to obtain a fourth bit sequence.
  • the processing module 1301 is further configured to perform check code encoding on the sixth bit sequence to obtain the first bit sequence.
  • the transceiver module 1302 is further configured to send a symbol sequence based on a third bit sequence.
  • the communication device when used as a network device or a chip used in a network device, and performs the steps performed by the network device in the above method embodiment.
  • the transceiver module 1302 is used to specifically perform the sending and/or receiving actions performed by the network device in any embodiment of Figures 5 to 8, such as supporting the network device to perform other processes of the technology described herein.
  • the processing module 1301 can be used to support the communication device 1300 to perform the processing actions in the above method embodiment, for example, supporting the network device to perform other processes of the technology described herein.
  • the transceiver module 1302 may be a communication interface, a pin or a circuit, etc.
  • the communication interface may be used to input data to be processed to the processor, and may output the processing result of the processor to the outside.
  • the communication interface may be a general purpose input output (GPIO) interface, which may be connected to multiple peripheral devices (such as a display (LCD), a camera (camera), a radio frequency (RF) module, an antenna, etc.).
  • GPIO general purpose input output
  • peripheral devices such as a display (LCD), a camera (camera), a radio frequency (RF) module, an antenna, etc.
  • the communication interface is connected to the processor via a bus.
  • processors and the interface can be implemented through hardware design, software design, or a combination of hardware and software, and there is no limitation here.
  • FIG14 is a schematic diagram of the structure of another communication device provided in an embodiment of the present application. It is understandable that the communication device 1410 includes necessary means such as modules, units, elements, circuits, or interfaces, which are appropriately configured together to implement the present solution.
  • the communication device 1410 may be the above-mentioned terminal device or network device, or a component (such as a chip) in these devices, to implement the method described in the above-mentioned method embodiment.
  • the communication device 1410 includes one or more processors 1411.
  • the processor 1411 may be a general-purpose processor or a dedicated processor, etc. For example, it may be a baseband processor or a central processing unit.
  • the baseband processor may be used to process communication protocols and communication data
  • the central processing unit may be used to control the communication device (such as a terminal device, a network device, or a chip, etc.), execute software programs, and process data of software programs.
  • each network element unit in each embodiment of the present application may be integrated into a processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units may be implemented in the form of hardware or in the form of software network element units.

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Error Detection And Correction (AREA)

Abstract

The present application relates to an encoding method and apparatus, and a decoding method and apparatus. In the encoding method, a first device may determine a second bit sequence and a third bit sequence on the basis of a first bit sequence, wherein the third bit sequence comprises a bit sequence, which is in a base graph corresponding to the first bit sequence and has a weight higher than a first threshold, that is, a weight corresponding to the second bit sequence is lower than a weight corresponding to the third bit sequence; further, the first device can perform polar code encoding on the second bit sequence, which is equivalent to providing additional protection for the second bit sequence having a lower weight by means of polar code encoding, so as to improve error correction performance; and the third bit sequence having a higher weight can be subjected to LDPC encoding together with the result (i.e., a fourth bit sequence obtained by performing polar code encoding on the second bit sequence) of polar code encoding. The error floor of LDPC decoding is reduced and the error correction performance of an LDPC code is improved.

Description

一种编码方法、解码方法及装置A coding method, a decoding method and a device

本申请要求在2024年1月9日提交中国国家知识产权局、申请号为202410035730.9的中国专利申请的优先权,发明名称为“一种编码方法、解码方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application with application number 202410035730.9 filed with the State Intellectual Property Office of China on January 9, 2024, and the priority of the Chinese patent application with the invention name "A coding method, a decoding method and a device", all of which are incorporated by reference into this application.

技术领域Technical Field

本申请涉及通信技术领域,尤其涉及一种编码方法、解码方法及装置。The present application relates to the field of communication technology, and in particular to an encoding method, a decoding method and a device.

背景技术Background Art

低密度奇偶校验(low density parity check,LDPC)码是一种非常接近香农线的信道编码方案,具有性能好,复杂度低等特点,目前已经被第三代合作伙伴计划(3rd generation partnership project,3GPP)确定成为第五代(the fifthgeneration,5G)通信技术数据信道编码方案。Low density parity check (LDPC) code is a channel coding scheme very close to the Shannon line, with the characteristics of good performance and low complexity. It has been identified by the 3rd generation partnership project (3GPP) as the data channel coding scheme for the fifth generation (5G) communication technology.

但,在信噪比(signal-to-noise ratio,SNR)相对较高的情况下,LDPC码可能由于陷阱集的影响出现错误平层(error floor),且随着信噪比的升高其误码率(block error rate,BLER)不再降低。其中,陷阱集是经过较大固定迭代次数仍不能正确译码输出的比特序号集,错误平层主要由陷阱集的大小和分布决定。因此,如何降低LDPC码的错误平层成为当前阶段亟待解决的问题。However, when the signal-to-noise ratio (SNR) is relatively high, LDPC codes may have an error floor due to the influence of trap sets, and their bit error rate (BLER) will no longer decrease as the signal-to-noise ratio increases. A trap set is a set of bit numbers that cannot be correctly decoded and output after a large fixed number of iterations. The error floor is mainly determined by the size and distribution of the trap set. Therefore, how to reduce the error floor of LDPC codes has become an urgent problem to be solved at the current stage.

发明内容Summary of the invention

本申请提供了一种编码方法、解码方法及装置,可以降低LDPC码的错误平层和误码率,从而可以提高纠错性能。The present application provides an encoding method, a decoding method and a device, which can reduce the error floor and bit error rate of LDPC codes, thereby improving the error correction performance.

第一方面,提供一种编码方法,该方法可以由第一设备执行,也可以由应用于第一设备的模块(例如处理器、芯片、或芯片系统等)执行,还可以由能实现全部或部分第一设备功能的逻辑节点、逻辑模块或软件实现。在该编码方法中,可以基于第一比特序列确定第二比特序列和第三比特序列,第三比特序列包括第一比特序列对应的基图中权重高于第一阈值的比特序列。还可以对第二比特序列进行极化码编码,得到第四比特序列。从而可以对第三比特序列和第四比特序列进行低密度奇偶校验LDPC编码,得到第五比特序列。In a first aspect, a coding method is provided, which can be executed by a first device, or by a module (such as a processor, a chip, or a chip system, etc.) applied to the first device, or by a logical node, a logical module, or software that can implement all or part of the functions of the first device. In the coding method, a second bit sequence and a third bit sequence can be determined based on a first bit sequence, and the third bit sequence includes a bit sequence whose weight in a base graph corresponding to the first bit sequence is higher than a first threshold. The second bit sequence can also be polarization coded to obtain a fourth bit sequence. Thus, the third bit sequence and the fourth bit sequence can be low-density parity check LDPC coded to obtain a fifth bit sequence.

可以看出,上述实施例中,第一设备可以基于第一比特序列确定第二比特序列和第三比特序列,第三比特序列包括第一比特序列对应的基图中权重高于第一阈值的比特序列。也就是说,第二比特序列对应的权重低于第三比特序列对应的权重。进一步的,第一设备可以对第二比特序列进行极化码编码,相当于极化码编码的方式为权重较低的第二比特序列提供额外保护,以提高纠错性能。而对于权重较高的第三比特序列,可以与极化码编码的结果(即对第二比特序列进行极化码编码得到的第四比特序列)一起进行LDPC编码。这样,可以降低LDPC译码的错误平层,从而可以提高LDPC码的纠错性能。同时,还可以降低Polar外码编码带来的LDPC编码载荷,从而减少LDPC码的码率,提升瀑布区性能。It can be seen that in the above embodiment, the first device can determine the second bit sequence and the third bit sequence based on the first bit sequence, and the third bit sequence includes a bit sequence in the base map corresponding to the first bit sequence whose weight is higher than the first threshold. That is to say, the weight corresponding to the second bit sequence is lower than the weight corresponding to the third bit sequence. Furthermore, the first device can perform polarization code encoding on the second bit sequence, which is equivalent to providing additional protection for the second bit sequence with a lower weight by using polarization code encoding to improve the error correction performance. For the third bit sequence with a higher weight, LDPC encoding can be performed together with the result of polarization code encoding (i.e., the fourth bit sequence obtained by performing polarization code encoding on the second bit sequence). In this way, the error floor of LDPC decoding can be reduced, thereby improving the error correction performance of LDPC code. At the same time, the LDPC coding load caused by Polar outer code encoding can also be reduced, thereby reducing the code rate of LDPC code and improving waterfall performance.

在一种可能的实施方式中,基于第一比特序列确定第二比特序列和第三比特序列,包括:基于基图中权重高于第一阈值的第一列数确定第一数值;基于第一数值和第一比特序列对应的提升因子,从第一比特序列中确定第三比特序列;基于第三比特序列和第一比特序列确定第二比特序列。In a possible implementation, determining the second bit sequence and the third bit sequence based on the first bit sequence includes: determining a first numerical value based on the first column number in the base graph whose weight is higher than a first threshold; determining the third bit sequence from the first bit sequence based on the first numerical value and a lifting factor corresponding to the first bit sequence; and determining the second bit sequence based on the third bit sequence and the first bit sequence.

可以看出,上述实施例中,第一设备可以基于基图中权重高于第一阈值的第一列数确定第一数值,从而可以基于第一数值和第一比特序列对应的提升因子,从第一比特序列中确定第三比特序列。这样可以更加精准地确定出第一比特序列中列重较大的比特序列,进而可以更加精准地确定出非大列重的比特序列,即第二比特序列。It can be seen that in the above embodiment, the first device can determine the first value based on the first number of columns in the base graph whose weight is higher than the first threshold, and thus can determine the third bit sequence from the first bit sequence based on the first value and the lifting factor corresponding to the first bit sequence. In this way, the bit sequence with a larger column weight in the first bit sequence can be determined more accurately, and then the bit sequence with a smaller column weight, that is, the second bit sequence, can be determined more accurately.

在一种可能的实施方式中,第一列数为大于或等于1的整数。如第一列数可以为2或3。In a possible implementation manner, the first column number is an integer greater than or equal to 1. For example, the first column number may be 2 or 3.

在一种可能的实施方式中,基于基图中权重高于第一阈值的第一列数确定第一数值,包括:从基图中除权重高于第一阈值的其它列确定可靠度最高的第二列数;基于第一列数和第二列数确定第一数值。In a possible implementation, determining a first numerical value based on a first column number in a base graph with a weight higher than a first threshold includes: determining a second column number with the highest reliability from other columns in the base graph except for columns with a weight higher than the first threshold; and determining the first numerical value based on the first column number and the second column number.

可以看出,上述实施例中,第一设备还可以基于第一列数和第二列数确定第一数值,第一数值可以用于从第一比特序列中确定第三比特序列,相当于增加了不进行极化码编码的比特个数。因此,这可以降低Polar外码编码带来的LDPC编码载荷,从而减少LDPC码的码率,提升瀑布区性能。It can be seen that in the above embodiment, the first device can also determine the first value based on the first column number and the second column number, and the first value can be used to determine the third bit sequence from the first bit sequence, which is equivalent to increasing the number of bits that are not polar code encoded. Therefore, this can reduce the LDPC coding load caused by Polar outer code encoding, thereby reducing the code rate of the LDPC code and improving the waterfall area performance.

在一种可能的实施方式中,对第二比特序列进行极化码编码,得到第四比特序列,包括:对第二比特序列进行校验码编码,得到第六比特序列;对第六比特序列进行极化码编码,得到第四比特序列。其中,该校验码编码可以是奇偶校验(parity check,PC)编码和/或循环冗余校验(cyclic redundancy check,CRC)编码。In a possible implementation, performing polarization code encoding on the second bit sequence to obtain a fourth bit sequence includes: performing check code encoding on the second bit sequence to obtain a sixth bit sequence; and performing polarization code encoding on the sixth bit sequence to obtain the fourth bit sequence. The check code encoding may be parity check (PC) encoding and/or cyclic redundancy check (CRC) encoding.

可以看出,上述实施例中,第一设备可以先对第二比特序列进行校验码编码,再进行极化码编码。相当于校验码仅校验非大列重部分的比特,这是因为大列重的比特几乎不会出错,如果发生了错误,那么非大列重的比特也极有可能出错,通过校验码可以对非大列重的比特进行纠错。另外,校验码可以用于纠错,使得在采用SCL译码时可以提升极化码码在SCL译码下的性能。It can be seen that in the above embodiment, the first device can first perform check code encoding on the second bit sequence, and then perform polar code encoding. This is equivalent to the check code only checking the bits of the non-large column heavy part, because the large column heavy bits are almost never wrong. If an error occurs, then the non-large column heavy bits are also very likely to be wrong. The check code can be used to correct the non-large column heavy bits. In addition, the check code can be used for error correction, so that when SCL decoding is used, the performance of the polar code under SCL decoding can be improved.

在一种可能的实施方式中,该方法还包括:对第七比特序列进行校验码编码,得到第一比特序列。In a possible implementation, the method further includes: performing check code encoding on the seventh bit sequence to obtain the first bit sequence.

可以看出,上述实施例中,第一设备可以对第七比特序列进行校验码编码,得到第一比特序列。第七比特序列包含了大列重的比特。也就是说,大列重的比特也可以被校验码校验,这样可以获得更低的虚警概率(false alarm rate,FAR)。It can be seen that in the above embodiment, the first device can perform check code encoding on the seventh bit sequence to obtain the first bit sequence. The seventh bit sequence contains bits with large column weights. In other words, bits with large column weights can also be checked by the check code, so that a lower false alarm rate (FAR) can be obtained.

在一种可能的实施方式中,该方法还包括:基于第一分段长度对初始比特序列进行分段,得到X个比特序列,X个比特序列包括第一比特序列或第七比特序列,X为大于1的整数;其中,第一分段长度基于第一数值和提升因子确定。In a possible implementation, the method further includes: segmenting the initial bit sequence based on a first segment length to obtain X bit sequences, where the X bit sequences include the first bit sequence or the seventh bit sequence, and X is an integer greater than 1; wherein the first segment length is determined based on the first numerical value and the lifting factor.

可以看出,上述实施例中,第一设备可以基于第一分段长度对初始比特序列进行分段,而第一分段长度基于第一数值和提升因子确定。也就是说,这提供了一种适配本方案的分段方式,减少了分段失误导致的编码出错问题。It can be seen that in the above embodiment, the first device can segment the initial bit sequence based on the first segment length, and the first segment length is determined based on the first value and the lifting factor. In other words, this provides a segmentation method adapted to the present solution, reducing the coding error problem caused by segmentation errors.

在一种可能的实施方式中,第一分段长度基于第一数值和提升因子确定,包括:第一分段长度基于第一数值、提升因子和第二数值确定;其中,第二数值基于基图的总列数和第一数值确定。In a possible implementation, the first segment length is determined based on the first value and the lifting factor, including: the first segment length is determined based on the first value, the lifting factor and the second value; wherein the second value is determined based on the total number of columns of the base graph and the first value.

在一种可能的实施方式中,第一分段长度满足以下条件:其中,a为第一数值,b为第二数值,R为第三数值,Z为提升因子。In a possible implementation manner, the first segment length satisfies the following conditions: Among them, a is the first value, b is the second value, R is the third value, and Z is the boost factor.

在一种可能的实施方式中,基于第三比特序列和第一比特序列确定第二比特序列,包括:基于第二分段长度对第一比特序列中除第三比特序列的其它比特序列进行分段,得到Y个比特序列,Y个比特序列包括第二比特序列,Y为大于1的整数;其中,第二分段长度基于极化码编码支持的最大长度和第三数值确定。In a possible implementation, determining the second bit sequence based on the third bit sequence and the first bit sequence includes: segmenting other bit sequences in the first bit sequence except the third bit sequence based on a second segment length to obtain Y bit sequences, where the Y bit sequences include the second bit sequence, and Y is an integer greater than 1; wherein the second segment length is determined based on a maximum length supported by polar code encoding and a third value.

可以看出,上述实施例中,第一设备可以基于第二分段长度(基于极化码编码支持的最大长度和第三数值确定)对第一比特序列中除第三比特序列的其它比特序列进行分段,得到Y个比特序列,Y个比特序列可以包括第二比特序列。这可以使得在对第二比特序列进行极化码编码时不出错,更好地兼容当前的极化码方式。It can be seen that in the above embodiment, the first device may segment the other bit sequences in the first bit sequence except the third bit sequence based on the second segment length (determined based on the maximum length supported by polar code encoding and the third value) to obtain Y bit sequences, and the Y bit sequences may include the second bit sequence. This can prevent errors when polar code encoding is performed on the second bit sequence, and better compatibility with the current polar code mode.

在一种可能的实施方式中,第二分段长度满足以下条件:其中,Nm为极化码编码支持的最大长度,R为第三数值。In a possible implementation manner, the second segment length satisfies the following conditions: Wherein, Nm is the maximum length supported by the polar code encoding, and R is the third value.

在一种可能的实施方式中,该方法还包括:基于第三比特序列发送符号序列。In a possible implementation, the method further includes: sending a symbol sequence based on a third bit sequence.

第二方面,提供一种译码方法,该方法可以由第二设备执行,也可以由应用于第二设备的模块(例如处理器、芯片、或芯片系统等)执行,还可以由能实现全部或部分第二设备功能的逻辑节点、逻辑模块或软件实现。在该译码方法中,可以获取符号序列,从而可以基于符号序列确定第五比特序列,进而对第五比特序列进行LDPC译码,得到第三比特序列和第四比特序列。这样,可以对第四比特序列进行极化码译码,得到第二比特序列,并基于第三比特序列和第二比特序列确定第一比特序列。In a second aspect, a decoding method is provided, which can be executed by a second device, or by a module (such as a processor, a chip, or a chip system, etc.) applied to the second device, or by a logical node, a logical module, or software that can implement all or part of the functions of the second device. In the decoding method, a symbol sequence can be obtained, so that a fifth bit sequence can be determined based on the symbol sequence, and then the fifth bit sequence is LDPC decoded to obtain a third bit sequence and a fourth bit sequence. In this way, the fourth bit sequence can be polarized and decoded to obtain a second bit sequence, and the first bit sequence can be determined based on the third bit sequence and the second bit sequence.

可以看出,上述实施例中,第二设备可以先基于符号序列确定第五比特序列,再对第五比特序列进行LDPC译码,得到第三比特序列和第四比特序列,从而可以对第四比特序列进行极化码译码,得到第二比特序列。这样,可以基于第三比特序列和第二比特序列确定第一比特序列。这可以用于降低LDPC译码的错误平层,进而可以提高LDPC码的纠错性能。同时,还可以降低Polar外码编码带来的LDPC编码载荷,从而减少LDPC码的码率,提升瀑布区性能。另外,第二设备是对LDPC译码结果中的部分比特序列(如第四比特序列)进行极化码译码,减少了译码的时延,提高了译码效率。It can be seen that in the above embodiment, the second device can first determine the fifth bit sequence based on the symbol sequence, and then perform LDPC decoding on the fifth bit sequence to obtain the third bit sequence and the fourth bit sequence, so that the fourth bit sequence can be polarization code decoded to obtain the second bit sequence. In this way, the first bit sequence can be determined based on the third bit sequence and the second bit sequence. This can be used to reduce the error floor of LDPC decoding, thereby improving the error correction performance of LDPC code. At the same time, the LDPC coding load caused by Polar outer code encoding can also be reduced, thereby reducing the code rate of LDPC code and improving waterfall area performance. In addition, the second device performs polarization code decoding on some bit sequences (such as the fourth bit sequence) in the LDPC decoding result, which reduces the decoding delay and improves the decoding efficiency.

第三方面,提供一种通信装置,包括用于实现如第一方面至第二方面中任一方面的任一项所述方法的单元或模块。该通信装置可以是第一设备或第二设备,也可以是第一设备或第二设备的模块(例如处理器、芯片、或芯片系统等),还可以是能实现全部或部分第一设备或第二设备功能的逻辑节点、逻辑模块或软件。In a third aspect, a communication device is provided, comprising a unit or module for implementing any of the methods described in any of the first to second aspects. The communication device may be a first device or a second device, or a module of the first device or the second device (e.g., a processor, a chip, or a chip system), or a logical node, a logical module, or software that can implement all or part of the functions of the first device or the second device.

第四方面,提供一种通信装置,通信装置包括至少一个处理器;其中,至少一个处理器用于执行第一方面至第二方面中任一方面的任一项所述的方法。该通信装置可以是第一设备或第二设备,也可以是第一设备或第二设备的模块(例如处理器、芯片、或芯片系统等),还可以是能实现全部或部分第一设备或第二设备功能的逻辑节点、逻辑模块或软件。至少一个处理器可以执行存储器中的计算机程序或指令,以使得上述方法被执行。存储器可以包括在通信装置中,也可以位于通信装置外部。此外,通信装置还可以包括接口。In a fourth aspect, a communication device is provided, the communication device comprising at least one processor; wherein the at least one processor is used to execute any of the methods described in any of the first aspect to the second aspect. The communication device may be a first device or a second device, or a module of the first device or the second device (such as a processor, a chip, or a chip system, etc.), or a logical node, a logical module, or software that can implement all or part of the functions of the first device or the second device. At least one processor may execute a computer program or instruction in a memory so that the above method is executed. The memory may be included in the communication device or may be located outside the communication device. In addition, the communication device may further include an interface.

第五方面,提供一种通信系统,通信系统包括第一设备和第二设备;第一设备用于执行如第一方面中任一项所述的方法;第二设备用于执行如第二方面中任一项所述的方法。In a fifth aspect, a communication system is provided, the communication system comprising a first device and a second device; the first device is used to execute the method as described in any one of the first aspects; the second device is used to execute the method as described in any one of the second aspects.

第六方面,提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,当计算机指令被执行时,使计算机执行如第一方面至第二方面中任一方面的任一项所述的方法。In a sixth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and when the computer instructions are executed, the computer executes any of the methods described in any of the first to second aspects.

第七方面,提供一种计算机程序产品,计算机程序产品包括:计算机程序代码,计算机程序代码被计算机运行时,使得计算机执行如第一方面至第二方面中任一方面的任一项所述的方法。In a seventh aspect, a computer program product is provided, the computer program product comprising: a computer program code, and when the computer program code is executed by a computer, the computer executes any one of the methods described in any one of the first aspect to the second aspect.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

图1为本申请实施例提供的一种通信系统的基础架构;FIG1 is a basic architecture of a communication system provided in an embodiment of the present application;

图2为一种通信设备间的通信过程的示意图;FIG2 is a schematic diagram of a communication process between communication devices;

图3为一种极化码编码的示意图;FIG3 is a schematic diagram of polar code encoding;

图4为一种校验矩阵的示意图;FIG4 is a schematic diagram of a check matrix;

图5为本申请实施例提供的一种编码方法的流程示意图;FIG5 is a schematic diagram of a flow chart of an encoding method provided in an embodiment of the present application;

图6为本申请实施例提供的一种译码方法的流程示意图;FIG6 is a schematic diagram of a flow chart of a decoding method provided in an embodiment of the present application;

图7为本申请实施例提供的又一种编码方法的流程示意图;FIG7 is a schematic diagram of a flow chart of another encoding method provided in an embodiment of the present application;

图8为本申请实施例提供的又一种译码方法的流程示意图;FIG8 is a schematic diagram of a flow chart of another decoding method provided in an embodiment of the present application;

图9为本申请实施例提供的一种编码和译码的例子;FIG9 is an example of encoding and decoding provided in an embodiment of the present application;

图10为本申请实施例提供的一种有益效果对比图;FIG10 is a comparison diagram of beneficial effects provided by an embodiment of the present application;

图11为本申请实施例提供的又一种编码和译码的例子;FIG11 is another example of encoding and decoding provided in an embodiment of the present application;

图12为本申请实施例提供的又一种有益效果对比图;FIG12 is a comparison diagram of another beneficial effect provided by an embodiment of the present application;

图13为本申请实施例提供的一种通信装置的结构示意图;FIG13 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application;

图14为本申请实施例提供的又一种通信装置的结构示意图。FIG14 is a schematic diagram of the structure of another communication device provided in an embodiment of the present application.

具体实施方式DETAILED DESCRIPTION

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,本申请实施例中的术语“系统”和“网络”可被互换使用。除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,A/B可以表示A或B;本申请中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。并且,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是一个,也可以是多个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对网元和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application. Among them, the terms "system" and "network" in the embodiments of the present application can be used interchangeably. Unless otherwise specified, "/" indicates that the objects associated before and after are in an "or" relationship. For example, A/B can represent A or B; "and/or" in this application is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and/or B can represent: A exists alone, A and B exist at the same time, and B exists alone. These three situations, where A and B can be singular or plural. And, in the description of the present application, unless otherwise specified, "multiple" refers to two or more than two. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c can represent: a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, c can be one or more. In addition, in order to clearly describe the technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish between network elements and identical or similar items with substantially the same functions. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit the difference.

在本申请实施例中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。References to "one embodiment" or "some embodiments" etc. described in the embodiments of the present application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

以下的具体实施方式,对本申请的目标、技术方案和有益效果进行了进一步详细说明,所应理解的是,以下仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。The following specific implementation methods further describe in detail the objectives, technical solutions and beneficial effects of the present application. It should be understood that the following are only specific implementation methods of the present application and are not intended to limit the scope of protection of the present application. Any modifications, equivalent substitutions, improvements, etc. made on the basis of the technical solutions of the present application should be included in the scope of protection of the present application.

在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。In the various embodiments of the present application, unless otherwise specified or provided for in any logical conflict, the terms and/or descriptions between the different embodiments are consistent and may be referenced to each other, and the technical features in the different embodiments may be combined to form new embodiments according to their inherent logical relationships.

应理解,本申请实施例的技术方案可以应用于长期演进(long term evolution,LTE)架构、第五代移动通信技术(5th generation mobile networks,5G)、无线局域网(wireless local area networks,WLAN)系统、车到万物(vehicle to everything,V2X)通信系统、LTE-车联网(LTE-vehicle,LTE-V)、车到车(vehicle to vehicle,V2V)、车联网、机器类通信(machine type communications,MTC)等等。本申请实施例的技术方案还可以应用于未来其它的通信系统,例如6G通信系统等,在未来通信系统中,可能保持功能相同,但名称可能会改变。It should be understood that the technical solutions of the embodiments of the present application can be applied to the long term evolution (LTE) architecture, the fifth generation mobile communication technology (5G), wireless local area network (WLAN) system, vehicle to everything (V2X) communication system, LTE-vehicle (LTE-V), vehicle to vehicle (V2V), vehicle networking, machine type communications (MTC), etc. The technical solutions of the embodiments of the present application can also be applied to other future communication systems, such as 6G communication systems, etc. In future communication systems, the functions may remain the same, but the names may change.

下面介绍本申请实施例提供的通信系统的基础架构。本申请提供的通信系统中可以包括一个或多个网络设备,以及一个或多个终端设备。下面以图1所示的系统架构进行示例性讲解。如图1所示,该通信系统包括网络设备10以及与网络设备10通信的一个或多个终端设备(如图1中的终端设备20)。The following describes the infrastructure of the communication system provided by the embodiment of the present application. The communication system provided by the present application may include one or more network devices, and one or more terminal devices. The following is an exemplary explanation of the system architecture shown in Figure 1. As shown in Figure 1, the communication system includes a network device 10 and one or more terminal devices (such as the terminal device 20 in Figure 1) that communicate with the network device 10.

需要指出的是,图1中网络设备和终端设备的数量仅为示意性的,不应视为对本申请的具体限定。下面再对系统架构所涉及的各个设备进行详细说明。It should be noted that the number of network devices and terminal devices in Figure 1 is only for illustration and should not be regarded as a specific limitation of the present application. The following is a detailed description of each device involved in the system architecture.

一、终端设备1. Terminal equipment

终端设备是用户侧的一种用于接收信号,或者,发送信号,或者,接收信号和发送信号的实体。终端设备用于向用户提供语音服务和数据连通性服务中的一种或多种。终端设备可以为包含无线收发功能、且可以与网络设备配合为用户提供通讯服务的设备。具体地,终端设备可以指用户设备(user equipment,UE)、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、终端、无线通信设备、用户代理、用户装置或路边单元(road side unit,RSU)。终端设备也可以是无人机、物联网(internet of things,IoT)设备、无线局域网(wireless local area networks,WLAN)中的站点(station,ST)、蜂窝电话(cellular phone)、智能电话(smart phone)、无绳电话、无线数据卡、平板型电脑、会话启动协议(session initiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字处理(personal digital assistant,PDA)设备、膝上型电脑(laptop computer)、机器类型通信(machine type communication,MTC)终端、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备(也可以称为穿戴式智能设备)、虚拟现实(virtual reality,VR)终端、增强现实(augmented reality,AR)终端、远程医疗(remote medical)中的无线终端、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。终端设备还可以为5G系统中的终端,也可以为下一代通信系统中的终端,本申请实施例对此不作限定。Terminal equipment is an entity on the user side that is used to receive signals, or send signals, or both receive and send signals. Terminal equipment is used to provide one or more of voice services and data connectivity services to users. Terminal equipment can be a device that includes wireless transceiver functions and can cooperate with network equipment to provide communication services to users. Specifically, terminal equipment can refer to user equipment (UE), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, terminal, wireless communication equipment, user agent, user device or road side unit (RSU). The terminal device can also be a drone, an Internet of Things (IoT) device, a station (ST) in a wireless local area network (WLAN), a cellular phone, a smart phone, a cordless phone, a wireless data card, a tablet computer, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA) device, a laptop computer, a machine type communication (MTC) device, or a wireless communication device. ication, MTC) terminal, handheld device with wireless communication function, computing device or other processing device connected to wireless modem, vehicle-mounted device, wearable device (also called wearable smart device), virtual reality (VR) terminal, augmented reality (AR) terminal, wireless terminal in remote medical, wireless terminal in industrial control, wireless terminal in self-driving, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, etc. The terminal device can also be a terminal in 5G system or a terminal in next generation communication system, which is not limited in the embodiments of the present application.

本申请的实施例对终端设备的设备形态不做限定,用于实现终端设备的功能的装置可以是终端设备;也可以是能够支持终端设备实现该功能的装置,例如芯片系统。该装置可以被安装在终端设备中或者和终端设备匹配使用。本申请实施例中,芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。The embodiments of the present application do not limit the device form of the terminal device. The device for realizing the function of the terminal device can be the terminal device; it can also be a device that can support the terminal device to realize the function, such as a chip system. The device can be installed in the terminal device or used in combination with the terminal device. In the embodiments of the present application, the chip system can be composed of chips, or it can include chips and other discrete devices.

二、网络设备2. Network equipment

网络设备为网络侧的一种用于发送信号,或者,接收信号,或者,发送信号和接收信号的实体。网络设备可以为部署在无线接入网(radio access network,RAN)中为终端设备提供无线通信功能的装置。A network device is an entity on the network side that is used to send signals, receive signals, or both send and receive signals. A network device can be a device deployed in a radio access network (RAN) to provide wireless communication functions for terminal devices.

在一种可能的场景中,网络设备可以是具有基站功能的设备,例如演进型基站(evolved NodeB,eNodeB)、传输接收点(transmitting and receiving point,TRP)、发射点(transmitting point,TP)、下一代基站(next generation NodeB,gNB)、6G移动通信系统中的下一代基站、接入回传一体化(integrated access and backhaul,IAB)节点、NTN中的非地面网络设备即可以部署于高空平台的设备或者卫星等。网络设备可以是传输接收点(transmission reception point,TRP)、基站、各种形式的控制节点。例如,网络控制器、无线控制器等。具体的,网络设备可以为各种形式的宏基站、异构网络(heterogeneous network,HetNet)场景下的微基站(也称为小站)、中继站、接入点(access point,AP)、无线网络控制器(radio network controller,RNC)、节点B(node B,NB)、基站控制器(base station controller,BSC)、基站收发台(base transceiver station,BTS)、家庭基站(例如,home evolved nodeB,或home node B,HNB)、分布式基站场景下的基带单元(baseband unit,BBU)和射频单元(remote radio unit,RRU)、传输点(transmitting and receiving point,TRP)、发射点(transmitting point,TP)、移动交换中心等,也可以为基站的天线面板。控制节点可以连接多个基站,并为多个基站覆盖下的多个终端配置资源。在采用不同的无线接入技术的系统中,具备基站功能的设备的名称可能会有所不同。例如,可以是5G中的gNB,或者5G之后的网络中的网络侧设备或未来演进的公共陆地移动(通信)网络(public land mobile network,PLMN)网络中的网络设备,或者设备对设备(device-to-device,D2D)通信、机器对机器(machine-to-machine,M2M)通信、车联网通信中承担基站功能的设备等,本申请对网络设备的具体名称不作限定。网络设备还可以是开放式接入网(open RAN,O-RAN或ORAN)、云无线接入网络(cloud radio access network,CRAN)下的基带池(BBU pool)和RRU等。In a possible scenario, the network equipment may be equipment with base station functions, such as evolved NodeB (eNodeB), transmission and receiving point (TRP), transmission point (TP), next generation NodeB (gNB), next generation base station in 6G mobile communication system, integrated access and backhaul (IAB) node, non-ground network equipment in NTN, i.e. equipment that can be deployed on high altitude platforms or satellites, etc. The network equipment may be a transmission reception point (TRP), a base station, or various forms of control nodes. For example, a network controller, a wireless controller, etc. Specifically, the network equipment may be various forms of macro base stations, micro base stations (also called small stations) in heterogeneous network (HetNet) scenarios, relay stations, access points (AP), radio network controllers (RNC), node B (NB), base station controllers (BSC), base transceiver stations (BTS), home base stations (e.g., home evolved node B, or home node B, HNB), baseband units (BBU) and remote radio units (RRU) in distributed base station scenarios, transmission points (TRP), transmitting points (TP), mobile switching centers, etc., and may also be antenna panels of base stations. The control node may connect to multiple base stations and configure resources for multiple terminals covered by multiple base stations. In systems using different wireless access technologies, the names of devices with base station functions may be different. For example, it can be a gNB in 5G, or a network-side device in a network after 5G, or a network device in a future public land mobile network (PLMN) network, or a device that performs base station functions in device-to-device (D2D) communication, machine-to-machine (M2M) communication, or vehicle networking communication, etc. This application does not limit the specific name of the network device. The network device can also be a baseband pool (BBU pool) and RRU under an open access network (open RAN, O-RAN or ORAN), a cloud radio access network (cloud radio access network, CRAN), etc.

本申请中的网络设备的全部或部分功能也可以通过在硬件上运行的软件功能来实现,或者通过平台(例如云平台)上实例化的虚拟化功能来实现。本申请中的网络设备还可以是能实现全部或部分网络设备功能的逻辑节点、逻辑模块或软件。All or part of the functions of the network device in this application can also be implemented by software functions running on hardware, or by virtualization functions instantiated on a platform (such as a cloud platform). The network device in this application can also be a logical node, logical module or software that can implement all or part of the network device functions.

在另一种可能的场景中,由多个网络设备协作协助终端设备实现无线接入,不同网络设备分别实现基站的部分功能。例如,网络设备可以包括集中式单元(central unit,CU),分布式单元(distributed unit,DU),CU-控制面(control plane,CP),CU-用户面(user plane,UP),或者无线单元(radio unit,RU)等。CU和DU可以是单独设置,或者也可以包括在同一个网元中,例如基带单元(baseband unit,BBU)中。RU可以包括在射频设备或者射频单元中,例如包括在射频拉远单元(remote radio unit,RRU)、有源天线处理单元(active antenna unit,AAU)或远程射频头(remote radio head,RRH)中。可以理解的是,网络设备可以为CU节点、或DU节点、或包括CU节点和DU节点的设备。此外,CU可以划分为接入网RAN中的网络设备,也可以将CU划分为核心网CN中的网络设备,在此不做限制。In another possible scenario, multiple network devices collaborate to assist the terminal device in achieving wireless access, and different network devices respectively implement part of the functions of the base station. For example, the network device may include a centralized unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU). The CU and DU may be set separately, or may be included in the same network element, such as a baseband unit (BBU). The RU may be included in a radio frequency device or a radio frequency unit, such as a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH). It is understood that the network device may be a CU node, a DU node, or a device including a CU node and a DU node. In addition, the CU may be divided into a network device in the access network RAN, or the CU may be divided into a network device in the core network CN, without limitation here.

在不同系统中,CU(或CU-CP和CU-UP)、DU或RU也可以有不同的名称,但是本领域的技术人员可以理解其含义。例如,在ORAN系统中,CU也可以称为O-CU(开放式CU),DU也可以称为O-DU,CU-CP也可以称为O-CU-CP,CU-UP也可以称为O-CU-UP,RU也可以称为O-RU。为描述方便,本申请中以CU,CU-CP,CU-UP、DU和RU为例进行描述。本申请中的CU(或CU-CP、CU-UP)、DU和RU中的任一单元,可以是通过软件模块、硬件模块、或者软件模块与硬件模块结合来实现。In different systems, CU (or CU-CP and CU-UP), DU or RU may also have different names, but those skilled in the art can understand their meanings. For example, in the ORAN system, CU may also be called O-CU (open CU), DU may also be called O-DU, CU-CP may also be called O-CU-CP, CU-UP may also be called O-CU-UP, and RU may also be called O-RU. For the convenience of description, CU, CU-CP, CU-UP, DU and RU are described as examples in this application. Any unit of CU (or CU-CP, CU-UP), DU and RU in this application may be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.

本申请实施例中,对网络设备的形态不作限定,用于实现网络设备的功能的装置可以是网络设备;也可以是能够支持网络设备实现该功能的装置,例如芯片系统。该装置可以被安装在网络设备中或者和网络设备匹配使用。In the embodiments of the present application, the form of the network device is not limited. The device for realizing the function of the network device can be the network device; or it can be a device that can support the network device to realize the function, such as a chip system. The device can be installed in the network device or used in combination with the network device.

为了方便理解本方案的内容,下面再对本申请实施例中涉及的部分用语进行解释说明,以便于本领域技术人员理解,此部分仅是为了便于理解,并不能视为对本申请的具体限定。In order to facilitate the understanding of the content of this solution, some of the terms involved in the embodiments of the present application are explained below to facilitate understanding by those skilled in the art. This part is only for ease of understanding and cannot be regarded as a specific limitation of the present application.

一、通信设备间的通信过程1. Communication process between communication devices

例如,在图2中,第一设备可以对信源产生的比特流依次经过信源编码、信道编码、速率匹配以及调制后,通过信道向第二设备传输信息。对应地,第二设备接收到信息后,依次对该信息进行解调、解速率匹配、信道解码以及信源解码得到信宿,即恢复信源产生的比特流。信道可以是加性高斯白噪声(additive whitegaussian nois,AWGN)信道。其中,第一设备和第二设备中的至少一项可以是图1中的终端设备或网络设备。For example, in FIG2 , the first device may perform source coding, channel coding, rate matching, and modulation on the bit stream generated by the source, and then transmit the information to the second device through the channel. Correspondingly, after receiving the information, the second device sequentially performs demodulation, rate matching, channel decoding, and source decoding on the information to obtain the destination, that is, restore the bit stream generated by the source. The channel may be an additive white Gaussian noise (AWGN) channel. Among them, at least one of the first device and the second device may be a terminal device or a network device in FIG1 .

二、极化(Polar)码2. Polar Code

极化码是现有已知的一种能够被严格证明“达到”信道容量的信道编码方案,具有高性能,较低复杂度等特点,目前已经被3GPP确定成为5G控制信道增强移动宽带(enhanced mobile broadband,eMBB)场景(上行/下行)控制信道编码方案。Polar code is a known channel coding scheme that can be strictly proven to "reach" the channel capacity. It has the characteristics of high performance and low complexity. It has been identified by 3GPP as the control channel coding scheme for 5G control channel enhanced mobile broadband (eMBB) scenarios (uplink/downlink).

极化码是一种线性分组码,其编码过程可以为xN=uNGN,其中,uN={u0,u1,...,uN-1}是一个长度为N的二进制行向量,是编码矩阵, 代表的克罗内克幂(kronecker power),可以定义为例如,n=2,可得到码长为N=4的极化码编码矩阵 Polar code is a linear block code, and its encoding process can be x N = u N G N , where u N = {u 0 , u 1 , ..., u N-1 } is a binary row vector of length N, is the encoding matrix, The Kronecker power represented by For example, n = 2, and the polar code encoding matrix with a code length of N = 4 can be obtained.

在极化码的编码过程中,uN可以被分成两个部分,一部分比特携带信息,被称作信息比特,这些比特的索引集合可以记作A。另外一部分比特是固定值,被称作固定比特,通常设置为0。当固定比特设置为0时,极化码的编码过程可以简化为xA=uAGN(A),其中uA是uN中的信息比特集合,其长度可以记作K;GN(A)是GN中由集合A中的索引对应的行组成的子矩阵,GN(A)是一个K×N的矩阵。其中,集合A的选取会影响极化码的性能。In the encoding process of polar code, u N can be divided into two parts. One part of the bits carries information, which is called information bits. The index set of these bits can be recorded as A. The other part of the bits is a fixed value, called fixed bits, which are usually set to 0. When the fixed bits are set to 0, the encoding process of polar code can be simplified to x A = u A GN(A), where u A is the information bit set in u N , and its length can be recorded as K; GN(A) is a submatrix in GN composed of rows corresponding to the indices in set A, and GN(A) is a K×N matrix. Among them, the selection of set A will affect the performance of polar code.

图3示出了一种极化码编码的示意图,如图3所为示,u8={u0,u0,...,u7}是一个长度为8的二进制行向量,该二进制行向量可以包括固定比特和信息比特,固定比特和信息比特之间可以是相邻或者交错的,例如:u0、u1、u2以及u4为固定比特,可以均为0。u3、u5、u6以及u7为信息比特。图3中所示的圆加符号表示异或运算。u0、u1、u2以及u4为可靠度靠后的四个比特,u3、u5、u6以及u7为可靠度靠前的四个比特。其中,图3所示编码过程中的中间结果仅仅为一个示例,本申请实施例对此不作限定。在本申请中,极化码编码与极化码外码编码可以互相替换。FIG3 shows a schematic diagram of polar code encoding. As shown in FIG3 , u 8 ={u 0 ,u 0 ,...,u 7 } is a binary row vector of length 8, which may include fixed bits and information bits. The fixed bits and information bits may be adjacent or interlaced. For example, u 0 , u 1 , u 2 and u 4 are fixed bits and may all be 0. u 3 , u 5 , u 6 and u 7 are information bits. The circle plus symbol shown in FIG3 represents an exclusive-or operation. u 0 , u 1 , u 2 and u 4 are four bits with the lowest reliability, and u 3 , u 5 , u 6 and u 7 are four bits with the highest reliability. Among them, the intermediate result in the encoding process shown in FIG3 is only an example, and the embodiment of the present application does not limit this. In the present application, polar code encoding and polar code outer code encoding can replace each other.

在本申请中,极化码可以包括以下至少一项:阿里坎极化(Arikan Polar)码、奇偶校验极化(PC-Polar)码、循环冗余校验极化(CA-Polar)码或奇偶校验-循环冗余校验极化-极化(PC-CA-Polar)码等。Arikan Polar是指原始的极化码,没有与其它码级联,包括信息比特和/或冻结比特。PC-Polar是级联了PC码的极化码。CA-Polar是级联了CRC码的极化码。PC-CA-Polar码是同时级联了PC码和CRC码的极化码。In the present application, the polar code may include at least one of the following: Arikan Polar code, parity check polar code (PC-Polar) code, cyclic redundancy check polar code (CA-Polar) code, or parity check-cyclic redundancy check polar code-polar code (PC-CA-Polar) code. Arikan Polar refers to the original polar code, which is not concatenated with other codes, including information bits and/or frozen bits. PC-Polar is a polar code concatenated with a PC code. CA-Polar is a polar code concatenated with a CRC code. PC-CA-Polar code is a polar code concatenated with both a PC code and a CRC code.

其中,CRC码作为一种常用的检错码,是一种最为常见的与极化码级联的外码。在本申请中,CRC码的长度可以是R位,R可以为正整数,如,4、6、8、11、16或24,本申请对其长度不做限定。应理解的,CRC码可以基于生成多项式得到,R位的CRC码其生成多项式的次幂可以为R。不同长度的CRC码所采用的多项式不同。例如,以CRC码的长度是24位为例,其采用的多项式可以为CRC24。本申请对CRC码具体采用的多项式不做限定。Among them, CRC code, as a commonly used error detection code, is the most common outer code cascaded with polar code. In the present application, the length of the CRC code can be R bits, and R can be a positive integer, such as 4, 6, 8, 11, 16 or 24, and the present application does not limit its length. It should be understood that the CRC code can be obtained based on a generating polynomial, and the power of the generating polynomial of the R-bit CRC code can be R. The polynomials used by CRC codes of different lengths are different. For example, taking the length of the CRC code as 24 bits, the polynomial used can be CRC24. The present application does not limit the specific polynomial used by the CRC code.

极化码译码存在多种可能的实现方式,例如,逐次抵消译码(successive cancellation decoding,SC)译码、逐次抵消列表译码(successive cancellation list decoding,SCL)、逐次抵消堆栈(successive cancellation stack,SCS)译码、带循环奇偶校验的列表式连续消除(CRC-aided successive cancellation list,CA-SCL)译码、置信度传播(belief propagation,BP)译码和软比特消除(soft cancellation,SCAN)译码等。本申请对极化码的译码方式不做限定。示例性地,极化码为Arikan Polar码,可以采用SC译码、SCL译码、SCS译码、BP译码或SCAN译码等。极化码为PC-Polar码、CA-Polar码或PC-CA-Polar码,可以采用CA-SCL译码等。There are many possible implementations of polar code decoding, such as successive cancellation decoding (SC) decoding, successive cancellation list decoding (SCL), successive cancellation stack (SCS) decoding, CRC-aided successive cancellation list (CA-SCL) decoding, belief propagation (BP) decoding and soft cancellation (SCAN) decoding. The present application does not limit the decoding method of polar code. For example, the polar code is Arikan Polar code, and SC decoding, SCL decoding, SCS decoding, BP decoding or SCAN decoding can be used. The polar code is PC-Polar code, CA-Polar code or PC-CA-Polar code, and CA-SCL decoding can be used.

三、LDPC码3. LDPC Code

LDPC码是一类具有稀疏校验矩阵的线性分组码,即校验矩阵(也可以称为奇偶校验矩阵或LDPC矩阵)中非零元素的密度比较低,也就是要求校验矩阵中零元素远远多于非零元素。LDPC码可以由校验矩阵或Tanner图表示,本申请对LDPC码具体的表现形式不做限定。为便于理解,下面以LDPC码由校验矩阵表示为例进行介绍,不应视为对本申请的限定。LDPC code is a type of linear block code with a sparse check matrix, that is, the density of non-zero elements in the check matrix (also called parity check matrix or LDPC matrix) is relatively low, that is, the number of zero elements in the check matrix is far greater than the number of non-zero elements. LDPC code can be represented by a check matrix or a Tanner graph, and this application does not limit the specific form of expression of LDPC code. For ease of understanding, the following is an introduction using the representation of LDPC code by a check matrix as an example, which should not be regarded as a limitation of this application.

LDPC码的校验矩阵可以参见图4。在图4中,该校验矩阵包括高码率区域(highrateregion)、增量冗余区域(incrementalredundancyregion)和拓展校验区域(raptor-likeregion)。点线框选的区域表示码率。校验矩阵的主要特性是嵌套性,即低码率区域可以包含高码率区域,高码率区域可以作为低码率区域的一个子矩阵。在一种可能的实施方式中,可以根据码率选取不同的矩阵区域,作为校验矩阵。例如,从矩阵的左上区域到右下区域,如第0行至第M0行以及第0列至第N0列等。M0和N0可以为大于0的整数。The check matrix of the LDPC code can be seen in Figure 4. In Figure 4, the check matrix includes a high rate region, an incremental redundancy region, and an extended check region. The area selected by the dotted line represents the code rate. The main characteristic of the check matrix is nestedness, that is, the low code rate region can contain the high code rate region, and the high code rate region can be used as a submatrix of the low code rate region. In one possible implementation, different matrix regions can be selected according to the code rate as the check matrix. For example, from the upper left area to the lower right area of the matrix, such as the 0th row to the M0th row and the 0th column to the N0th column. M0 and N0 can be integers greater than 0.

可选地,LDPC码的校验矩阵可以通过基图(basegraph,BG)和平移值(shiftingvalue)得到。基图可以基于信息比特的长度和码率确定。码率是指编码之前的比特(即信息比特)在编码之后的比特中的占比。其中,基图可以分为BG1和BG2。示例性地,BG1适用的信息比特的码长为308比特至8448比特,码率为0.25至0.95。BG2适用的信息比特的码长为40比特至3840比特,码率0.20至0.95。Optionally, the check matrix of the LDPC code can be obtained by a basegraph (BG) and a shifting value. The basegraph can be determined based on the length of the information bit and the code rate. The code rate refers to the proportion of bits before encoding (i.e., information bits) in the bits after encoding. Among them, the basegraph can be divided into BG1 and BG2. Exemplarily, the code length of the information bit applicable to BG1 is 308 bits to 8448 bits, and the code rate is 0.25 to 0.95. The code length of the information bit applicable to BG2 is 40 bits to 3840 bits, and the code rate is 0.20 to 0.95.

需要说明的是,在本申请中,基图的行号和列号可以从0开始编号,矩阵的行号和列号可以从0开始编号。行号和列号具体从哪一数值开始编号,本申请不做限定。It should be noted that in this application, the row and column numbers of the base graph can be numbered starting from 0, and the row and column numbers of the matrix can be numbered starting from 0. This application does not limit the specific value from which the row and column numbers start numbering.

一般地,基图可以包括m×n个矩阵元素(entry),可以用m行n列的矩阵表示。矩阵元素的值可以为0或1,其中值为0的元素,可以称之为零元素,表示该元素可以被Z*Z的全零矩阵(zeromatrix)替换。值为1的元素,可以称之为非零元素,表示该元素可以被Z*Z的循环置换矩阵(circulantpermutationmatrix)替换。也就是说,每个矩阵元素代表的是一个全零矩阵或一个循环置换矩阵。Generally, the base graph may include m×n matrix elements (entries), which may be represented by a matrix with m rows and n columns. The values of the matrix elements may be 0 or 1, where the elements with a value of 0 may be called zero elements, indicating that the elements may be replaced by a Z*Z all-zero matrix (zeromatrix). The elements with a value of 1 may be called non-zero elements, indicating that the elements may be replaced by a Z*Z circulant permutation matrix (circulantpermutationmatrix). In other words, each matrix element represents an all-zero matrix or a circulant permutation matrix.

其中,Z可以为正整数,可以称之为提升(lifting)因子,也可以称之为liftingsize或liftingfactor等,例如可以根据信息比特的长度确定。示例性地,Z可以为aj∈{2,3,5,7,9,11,13,15},max(kj)∈{7,7,6,5,5,5,4,4}。j为大于或等于0的整数。例如,Z可以为kj∈{0,1,2,3,4,5,6,7}。例如,Z可以为kj∈{0,1,2,3,4,5,6,7}。例如,Z可以为kj∈{0,1,2,3,4,5,6}。例如,Z可以为kj∈{0,1,2,3,4,5}。例如,Z可以为kj∈{0,1,2,3,4,5}。其余类似,在此不一一列举。Wherein, Z can be a positive integer, which can be called a lifting factor, a lifting size, or a lifting factor, etc., and can be determined, for example, according to the length of the information bit. For example, Z can be a j ∈ {2, 3, 5, 7, 9, 11, 13, 15}, max(k j ) ∈ {7, 7, 6, 5, 5, 5, 4, 4}. j is an integer greater than or equal to 0. For example, Z can be k j ∈{0,1,2,3,4,5,6,7}. For example, Z can be k j ∈{0,1,2,3,4,5,6,7}. For example, Z can be k j ∈{0,1,2,3,4,5,6}. For example, Z can be k j ∈{0,1,2,3,4,5}. For example, Z can be k j ∈{0,1,2,3,4,5}. The rest are similar and are not listed here one by one.

可选地,Z与平移值之间具有关联关系。例如,多个Z构成的集合(可以称为提升因子集合(setofliftingsizes),下面以提升因子集合为例进行介绍)可以与平移值对应,如提升因子集合的行号与平移值的列号对应。可选地,平移值的列号可以描述为集合索引(setindex)。具体地,在表1中,提升因子集合可以与set index对应。如,{2,4,8,16,32,64,128,256}与0对应等,其余类似,在此不加赘述。Optionally, Z is associated with the translation value. For example, a set of multiple Zs (which may be referred to as a lifting factor set (set of lifting sizes), which is described below using the lifting factor set as an example) may correspond to the translation value, such as the row number of the lifting factor set corresponding to the column number of the translation value. Optionally, the column number of the translation value may be described as a set index (set index). Specifically, in Table 1, the lifting factor set may correspond to a set index. For example, {2, 4, 8, 16, 32, 64, 128, 256} corresponds to 0, and the rest are similar and will not be described here.

表1LDPC中提升因子集合(setofLDPCliftingsizeZ)
Table 1 LDPC lifting factor set (setofLDPCliftingsizeZ)

下面结合具体的示例,描述基图中的元素被Z*Z矩阵替换的过程。具体地:假设基图中第i行第j列的元素值为1,其平移值为Pi,j,Pi,j为大于或等于0的整数。基图中第i行第j列的值为1的元素可以被Pi,j对应的Z*Z的循环置换矩阵替换,该循环置换矩阵可通过将Z*Z的单位矩阵进行Pi,j次向右循环移位得到。可见,将基图中每个值为0的元素用Z*Z的全零矩阵替换,每个值为1的元素采用其平移值对应的Z*Z的循环置换矩阵进行替换,则可以得到LDPC码的校验矩阵。基图可用于指示偏移值的位置,基图中的非零元素与偏移值对应。可见奇偶校验矩阵H的大小为(m*Z)*(n*Z)。例如,假设Z=4,每个零元素被一个4*4大小的全0矩阵替换,假设P2,3=2,则第2行第3列的非0元素被4*4的循环置换矩阵替换,该矩阵是由4*4的单位矩阵经过2次向右循环移位得到的。需要说明的是,此处仅只是举例说明,并不以此为限制。The following describes the process of replacing the elements in the base graph with the Z*Z matrix in conjunction with specific examples. Specifically: Assume that the value of the element in the i-th row and j-th column of the base graph is 1, and its translation value is Pi ,j , where Pi ,j is an integer greater than or equal to 0. The element in the i-th row and j-th column of the base graph with a value of 1 can be replaced by the Z*Z circulant permutation matrix corresponding to Pi ,j, which can be obtained by cyclically shifting the Z*Z unit matrix to the right Pi ,j times. It can be seen that by replacing each element with a value of 0 in the base graph with a Z*Z all-zero matrix, and replacing each element with a value of 1 with a Z*Z circulant permutation matrix corresponding to its translation value, the check matrix of the LDPC code can be obtained. The base graph can be used to indicate the position of the offset value, and the non-zero elements in the base graph correspond to the offset value. It can be seen that the size of the parity check matrix H is (m*Z)*(n*Z). For example, assuming Z = 4, each zero element is replaced by a 4*4 matrix of all zeros, assuming P 2,3 = 2, then the non-zero element in the 2nd row and 3rd column is replaced by a 4*4 circulant permutation matrix, which is obtained by 2 right circulant shifts of the 4*4 identity matrix. It should be noted that this is only an example and is not intended to be limiting.

其中,LDPC码存在多种可能的实现方式,例如,最小和算法(Min-Sum,MS)译码或BP译码等。本申请对LDPC码的译码方式不做限定。可选地,MS译码又可以分为偏移最小和算法(Offset-MS)译码和标准最小和算法(Normalized-MS)译码。偏移最小和算法译码例如可以为分层偏移最小和算法(layered offset min-sum,LOMS)译码。Among them, there are many possible implementation methods of LDPC codes, such as minimum sum algorithm (Min-Sum, MS) decoding or BP decoding. This application does not limit the decoding method of LDPC codes. Optionally, MS decoding can be divided into offset minimum sum algorithm (Offset-MS) decoding and normalized minimum sum algorithm (Normalized-MS) decoding. Offset minimum sum algorithm decoding can be, for example, layered offset minimum sum algorithm (layered offset min-sum, LOMS) decoding.

下面结合图5对本申请实施例进行详细介绍。需要说明的是,本申请提供的方法的执行主体可以是图2中的第一设备和第二设备,下面以第一设备为终端设备、第二设备为网络设备为例进行介绍,不应视为对本申请的限定。其中,本申请实施例中示出的单个执行主体(终端设备或网络设备)所执行的处理也可以被划分为由多个执行主体执行,这些执行主体可以在逻辑上和/或在物理上分离。例如,网络设备所执行的处理可以被划分为由CU、DU和RU中的至少一个执行。另外,本申请各个实施例仅是以其包括的步骤全部执行为例进行说明的,不应视为对本申请的具体限定。也就是说,本申请实施例(如图5至图8中任意一个实施例)中所包括的步骤,在无逻辑冲突的情况下可以部分执行或全部执行。The following is a detailed description of the embodiment of the present application in conjunction with Figure 5. It should be noted that the execution subject of the method provided in the present application may be the first device and the second device in Figure 2. The following is an introduction taking the first device as a terminal device and the second device as a network device as an example, which should not be regarded as a limitation of the present application. Among them, the processing performed by the single execution subject (terminal device or network device) shown in the embodiment of the present application can also be divided into execution by multiple execution subjects, and these execution subjects can be logically and/or physically separated. For example, the processing performed by the network device can be divided into execution by at least one of CU, DU and RU. In addition, the various embodiments of the present application are only illustrated by taking the execution of all the steps included therein as an example, and should not be regarded as a specific limitation of the present application. That is to say, the steps included in the embodiments of the present application (such as any one of the embodiments in Figures 5 to 8) can be partially or fully executed in the absence of logical conflicts.

如图5所示,为本申请实施例提供的一种编码方法,该方法包括但不限于如下步骤:As shown in FIG5 , an encoding method is provided in an embodiment of the present application, and the method includes but is not limited to the following steps:

501、终端设备对第一比特序列进行极化码编码,得到第二比特序列。501. A terminal device performs polarization code encoding on a first bit sequence to obtain a second bit sequence.

其中,第一比特序列可以包括以下至少一项:信息比特序列、冻结比特序列或校验比特序列。信息比特序列为信息比特构成的序列,冻结比特序列为冻结比特构成的序列。校验比特序列可以包括PC码和/或CRC码。下面将第一比特序列分为两种情况进行介绍,不应视为对本申请的限定。具体地:The first bit sequence may include at least one of the following: an information bit sequence, a frozen bit sequence, or a check bit sequence. The information bit sequence is a sequence composed of information bits, and the frozen bit sequence is a sequence composed of frozen bits. The check bit sequence may include a PC code and/or a CRC code. The first bit sequence is divided into two cases for introduction below, which should not be regarded as a limitation of the present application. Specifically:

第一种情况、第一比特序列包括信息比特序列。In the first case, the first bit sequence includes an information bit sequence.

第二种情况、第一比特序列包括信息比特序列和校验比特序列。In the second case, the first bit sequence includes an information bit sequence and a check bit sequence.

其中,第二比特序列可以是极化码。例如,针对上述第一种情况,第二比特序列可以是Arikan Polar码。针对上述第二种情况,第二比特序列可以是PC-Polar码、CA-Polar码或PC-CA-Polar码。The second bit sequence may be a polar code. For example, for the first case, the second bit sequence may be an Arikan Polar code. For the second case, the second bit sequence may be a PC-Polar code, a CA-Polar code, or a PC-CA-Polar code.

在一种可能的实施方式中,第二比特序列的长度Npolar可以根据第一比特序列的长度T和第二比特序列对应的码率R确定。例如,第二比特序列的长度满足以下条件: In a possible implementation, the length Npolar of the second bit sequence may be determined according to the length T of the first bit sequence and the code rate R corresponding to the second bit sequence. For example, the length of the second bit sequence satisfies the following conditions:

其中,本申请的为向上取整。这里仅是以向上取整为例,不应视为对本申请的限定。例如,本申请中的向上取整可以替换为向下取整。Among them, the application This is just an example of rounding up, which should not be considered as a limitation of the present application. For example, rounding up in the present application can be replaced by rounding down.

R可以是第二比特序列对应的码率。R可以为预定义或预配置的大于0的数值,或,R可以由网络设备指示给终端设备。例如,R可以为0.9517,或,R可以为(Nm×0.9517)/Nm,如975/1024。Nm为极化码编码支持的最大长度。可选地,Nm可以为大于0的整数,如Nm为1024。R may be a code rate corresponding to the second bit sequence. R may be a predefined or preconfigured value greater than 0, or R may be indicated by a network device to a terminal device. For example, R may be 0.9517, or R may be (Nm×0.9517)/Nm, such as 975/1024. Nm is the maximum length supported by the polar code encoding. Optionally, Nm may be an integer greater than 0, such as Nm is 1024.

在一种可能的实施方式中,第一比特序列中的信息比特序列可以是初始比特序列的部分或全部比特序列。其中,本申请中的初始比特序列可以称为母码。初始比特序列可以包括信息比特序列。可选地,初始比特序列还可以包括冻结比特序列或不包括冻结比特序列。下面以初始比特序列不包括冻结比特序列为例,介绍第一比特序列与初始比特序列之间的关系,不应视为对本申请的限定,具体地:In a possible implementation, the information bit sequence in the first bit sequence may be a partial or complete bit sequence of the initial bit sequence. The initial bit sequence in the present application may be referred to as a mother code. The initial bit sequence may include an information bit sequence. Optionally, the initial bit sequence may also include a frozen bit sequence or may not include a frozen bit sequence. The following takes the initial bit sequence not including the frozen bit sequence as an example to introduce the relationship between the first bit sequence and the initial bit sequence, which should not be regarded as a limitation of the present application, specifically:

1、第一比特序列中的信息比特序列为初始比特序列中的信息比特序列。例如,初始比特序列的长度小于LDPC编码支持的最大长度Kcb的情况下,第一比特序列中的信息比特序列为初始比特序列中的信息比特序列。也就是说,第一比特序列中的信息比特序列是初始比特序列的全部比特序列,即未级联校验比特序列的第一比特序列与初始比特序列相同。1. The information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence. For example, when the length of the initial bit sequence is less than the maximum length Kcb supported by LDPC coding, the information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence. In other words, the information bit sequence in the first bit sequence is the entire bit sequence of the initial bit sequence, that is, the first bit sequence of the unconcatenated check bit sequence is the same as the initial bit sequence.

Kcb可以基于基图确定。例如,该基图为BG1,Kcb为8448。该基图为BG2,Kcb为3840。其中,该基图基于初始比特序列中信息比特的长度和码率确定。Kcb can be determined based on a base graph. For example, if the base graph is BG1, Kcb is 8448. If the base graph is BG2, Kcb is 3840. The base graph is determined based on the length and code rate of the information bits in the initial bit sequence.

2、终端设备可以基于第一分段长度对初始比特序列进行分段,得到L个比特序列,L为大于1的整数。例如,在初始比特序列的长度大于Kcb的情况下,终端设备可以基于第一分段长度对初始比特序列进行分段,得到L个比特序列。也就是说,第一比特序列中的信息比特序列是初始比特序列的部分比特序列,即未级联校验比特序列的第一比特序列为初始比特序列的部分比特序列。2. The terminal device may segment the initial bit sequence based on the first segment length to obtain L bit sequences, where L is an integer greater than 1. For example, when the length of the initial bit sequence is greater than Kcb, the terminal device may segment the initial bit sequence based on the first segment length to obtain L bit sequences. That is, the information bit sequence in the first bit sequence is a partial bit sequence of the initial bit sequence, that is, the first bit sequence of the unconcatenated check bit sequence is a partial bit sequence of the initial bit sequence.

其中,L个比特序列可以包括第四比特序列。例如,针对上述第一种情况,可以将第四比特序列作为第一比特序列。针对上述第二种情况,终端设备可以对第四比特序列进行校验码编码,得到第一比特序列。该校验码编码可以是PC编码和/或CRC编码。例如,以对第四比特序列进行CRC编码为例,终端设备可以在第四比特序列末尾级联24比特的CRC码得到第一比特序列。Among them, the L bit sequences may include a fourth bit sequence. For example, for the first case above, the fourth bit sequence may be used as the first bit sequence. For the second case above, the terminal device may perform check code encoding on the fourth bit sequence to obtain a first bit sequence. The check code encoding may be PC encoding and/or CRC encoding. For example, taking CRC encoding on the fourth bit sequence as an example, the terminal device may cascade a 24-bit CRC code at the end of the fourth bit sequence to obtain the first bit sequence.

需要指出的是,初始比特序列的长度等于Kcb可以作为“第一比特序列中的信息比特序列为初始比特序列中的信息比特序列”的一种条件,或,作为“终端设备基于第一分段长度对初始比特序列进行分段,得到L个比特序列”的一种条件,在此不做限定。It should be pointed out that the length of the initial bit sequence equal to Kcb can be used as a condition for "the information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence", or as a condition for "the terminal device segments the initial bit sequence based on the first segment length to obtain L bit sequences", which is not limited here.

在一种可能的实施方式中,第一分段长度可以基于第一数值R和Kcb确定。如,第一分段长度满足以下条件:示例性地,假设R为0.9517,Kcb为3840,K1可以为 In a possible implementation, the first segment length may be determined based on the first value R and Kcb. For example, the first segment length satisfies the following conditions: For example, assuming R is 0.9517, Kcb is 3840, K1 can be

在一种可能的实施方式中,L个比特序列的长度可以部分相同、完全相同或完全不同。应理解的,对L个比特序列中各个比特序列进行编码的过程类似,例如可以参考图5,在此不加赘述。In a possible implementation, the lengths of the L bit sequences may be partially the same, completely the same, or completely different. It should be understood that the process of encoding each bit sequence in the L bit sequences is similar, for example, refer to FIG. 5 , which is not described in detail here.

在一种可能的实施方式中,第一比特序列中信息比特序列的长度可以大于、等于或小于Nm。例如,在第一比特序列中信息比特序列的长度大于或等于Nm的情况下,终端设备还可以基于第二分段长度对第一比特序列进行分段,得到P个比特序列,P为大于1的整数。在这种情况下,步骤501可以包括:终端设备对P个比特序列分别进行极化码编码,以级联成第二比特序列。本申请对极化编码的比特序列进行级联的过程不做限定。In a possible implementation, the length of the information bit sequence in the first bit sequence may be greater than, equal to, or less than Nm. For example, when the length of the information bit sequence in the first bit sequence is greater than or equal to Nm, the terminal device may further segment the first bit sequence based on the second segment length to obtain P bit sequences, where P is an integer greater than 1. In this case, step 501 may include: the terminal device performs polarization code encoding on the P bit sequences respectively to cascade into a second bit sequence. The present application does not limit the process of cascading polarization coded bit sequences.

可选地,第二分段长度可以基于Nm和R确定,例如满足以下条件:示例性地,假设R为0.9517,Nm为1024,K2可以为 Optionally, the second segment length may be determined based on Nm and R, for example, by satisfying the following conditions: For example, assuming R is 0.9517 and Nm is 1024, K2 can be

在一种可能的实施方式中,P个比特序列的长度可以部分相同、完全相同或完全不同。例如,第一比特序列包括2924个比特,第二分段长度为975,终端设备可以基于第二分段长度将第一比特序列分成3个比特序列,长度分别为975、975和974。即,3个比特序列中2个比特序列的长度相同。In a possible implementation, the lengths of the P bit sequences may be partially the same, completely the same, or completely different. For example, the first bit sequence includes 2924 bits, the second segment length is 975, and the terminal device may divide the first bit sequence into three bit sequences based on the second segment length, with lengths of 975, 975, and 974, respectively. That is, the lengths of two of the three bit sequences are the same.

502、终端设备对第二比特序列进行LDPC编码,得到第三比特序列。502. The terminal device performs LDPC encoding on the second bit sequence to obtain a third bit sequence.

其中,第三比特序列是LDPC码。也可以称为LDPC码字序列。The third bit sequence is an LDPC code, which can also be called an LDPC codeword sequence.

可选地,在步骤502之后,还可以包括步骤503。Optionally, after step 502, step 503 may be further included.

503、终端设备基于第三比特序列发送符号序列。503. The terminal device sends a symbol sequence based on the third bit sequence.

相应的,网络设备接收符号序列。例如,网络设备从终端设备接收符号序列。对应的,终端设备基于第三比特序列向网络设备发送符号序列。Correspondingly, the network device receives the symbol sequence. For example, the network device receives the symbol sequence from the terminal device. Correspondingly, the terminal device sends the symbol sequence to the network device based on the third bit sequence.

可选地,步骤503可以包括:终端设备基于调制方式对第三比特序列进行调制,得到符号序列。本申请中的调制方式可以是正交相移键控(quadrature phase shift keying,QPSK)、二进制相移键控(binary phase shift keying,BPSK)、16-正交振幅调制(quadrature amplitude modulation,QAM)、64-QAM、256-QAM、1024-QAM或4096-QAM等。本申请对此不做限定。Optionally, step 503 may include: the terminal device modulates the third bit sequence based on the modulation mode to obtain a symbol sequence. The modulation mode in the present application may be quadrature phase shift keying (QPSK), binary phase shift keying (BPSK), 16-quadrature amplitude modulation (QAM), 64-QAM, 256-QAM, 1024-QAM or 4096-QAM, etc. This application does not limit this.

可以看出,上述实施例中,终端设备可以先对第一比特序列进行极化码编码得到第二比特序列,再对第二比特序列进行LDPC编码得到第三比特序列,即LDPC码。这样可以在不损失LDPC码的码率的情况下,降低LDPC译码的错误平层,进而可以提高LDPC码的纠错性能。It can be seen that in the above embodiment, the terminal device can first perform polar code encoding on the first bit sequence to obtain a second bit sequence, and then perform LDPC encoding on the second bit sequence to obtain a third bit sequence, that is, an LDPC code. In this way, the error floor of LDPC decoding can be reduced without losing the code rate of the LDPC code, thereby improving the error correction performance of the LDPC code.

如图6所示,为本申请实施例提供的一种译码方法。需要指出的是,图5所示实施例或图6所示实施例可以单独执行,或,图5所示实施例和图6所示实施例可以结合,例如,图5所示实施例在图6步骤601之前执行。下面对图6所示实施例进行详细说明,具体地,该方法包括但不限于如下步骤:As shown in FIG6 , a decoding method is provided in an embodiment of the present application. It should be noted that the embodiment shown in FIG5 or the embodiment shown in FIG6 can be performed separately, or the embodiment shown in FIG5 and the embodiment shown in FIG6 can be combined, for example, the embodiment shown in FIG5 is performed before step 601 of FIG6 . The embodiment shown in FIG6 is described in detail below. Specifically, the method includes but is not limited to the following steps:

601、网络设备获取符号序列。601. A network device obtains a symbol sequence.

例如,网络设备从终端设备接收符号序列。For example, a network device receives a sequence of symbols from a terminal device.

602、网络设备基于符号序列确定第三比特序列。602. The network device determines a third bit sequence based on the symbol sequence.

可选地,网络设备可以基于调制方式对符号序列进行解调得到第三比特序列。其中,第三比特序列是LDPC码。也可以称为LDPC码字序列。Optionally, the network device may demodulate the symbol sequence based on the modulation mode to obtain a third bit sequence, wherein the third bit sequence is an LDPC code, which may also be referred to as an LDPC codeword sequence.

603、网络设备对第三比特序列进行LDPC译码,得到第二比特序列。603. The network device performs LDPC decoding on the third bit sequence to obtain a second bit sequence.

其中,网络设备对第三比特序列进行LDPC译码的方式可以参考上述相关描述,在此不加赘述。第二比特序列与图5步骤501中的第二比特序列类似,在此不加赘述。The manner in which the network device performs LDPC decoding on the third bit sequence can refer to the above related description, which is not described in detail here. The second bit sequence is similar to the second bit sequence in step 501 of FIG. 5, which is not described in detail here.

604、网络设备对第二比特序列进行极化码译码,得到第一比特序列。604. The network device performs polarization code decoding on the second bit sequence to obtain a first bit sequence.

其中,第一比特序列与图5步骤501中的第一比特序列类似,在此不加赘述。网络设备对第二比特序列进行极化码译码的方式可以参考上述相关描述,在此不加赘述。The first bit sequence is similar to the first bit sequence in step 501 of FIG5 , and is not described in detail here. The manner in which the network device performs polar code decoding on the second bit sequence can refer to the above related description, and is not described in detail here.

可以看出,上述实施例中,网络设备可以先基于符号序列确定第三比特序列,从而可以对第三比特序列进行LDPC译码,得到第二比特序列,再对第二比特序列进行极化码译码,得到第一比特序列。这可以用于降低LDPC译码的错误平层,进而可以提高LDPC码的纠错性能。It can be seen that in the above embodiment, the network device can first determine the third bit sequence based on the symbol sequence, so that the third bit sequence can be LDPC decoded to obtain the second bit sequence, and then the second bit sequence can be polar code decoded to obtain the first bit sequence. This can be used to reduce the error floor of LDPC decoding, and then improve the error correction performance of LDPC code.

如图7所示,为本申请提供的又一种编码方法,该方法包括但不限于如下步骤:As shown in FIG. 7 , another encoding method provided by the present application includes but is not limited to the following steps:

701、终端设备基于第一比特序列确定第二比特序列和第三比特序列,第三比特序列包括第一比特序列对应的基图中权重高于第一阈值的比特序列。701. A terminal device determines a second bit sequence and a third bit sequence based on a first bit sequence, where the third bit sequence includes a bit sequence in a base graph corresponding to the first bit sequence and having a weight higher than a first threshold.

其中,第一比特序列可以包括以下至少一项:信息比特序列、冻结比特序列或校验比特序列。信息比特序列为信息比特构成的序列,冻结比特序列为冻结比特构成的序列。校验比特序列可以包括PC码和/或CRC码。下面将第一比特序列分为两种情况进行介绍,不应视为对本申请的限定。具体地:The first bit sequence may include at least one of the following: an information bit sequence, a frozen bit sequence, or a check bit sequence. The information bit sequence is a sequence composed of information bits, and the frozen bit sequence is a sequence composed of frozen bits. The check bit sequence may include a PC code and/or a CRC code. The first bit sequence is divided into two cases for introduction below, which should not be regarded as a limitation of the present application. Specifically:

第一种、第一比特序列包括信息比特序列。The first type, the first bit sequence includes an information bit sequence.

第二种、第一比特序列包括信息比特序列和校验比特序列。在这种情况下,终端设备可以对第七比特序列进行校验码编码,得到第一比特序列。该校验码编码可以是PC编码和/或CRC编码。例如,以对第七比特序列进行CRC编码为例,终端设备可以在第七比特序列的末尾级联24比特的CRC码得到第一比特序列。The second type is that the first bit sequence includes an information bit sequence and a check bit sequence. In this case, the terminal device can perform check code encoding on the seventh bit sequence to obtain the first bit sequence. The check code encoding can be PC encoding and/or CRC encoding. For example, taking CRC encoding on the seventh bit sequence as an example, the terminal device can cascade a 24-bit CRC code at the end of the seventh bit sequence to obtain the first bit sequence.

可选地,步骤701可以包括:终端设备基于基图中权重高于第一阈值的第一列数确定第一数值,从而可以基于第一数值和第一比特序列对应的提升因子,从第一比特序列中确定第三比特序列,进而可以基于第三比特序列和第一比特序列确定第二比特序列。Optionally, step 701 may include: the terminal device determines a first numerical value based on the first number of columns in the base graph whose weights are higher than a first threshold, thereby determining a third bit sequence from the first bit sequence based on the first numerical value and a lifting factor corresponding to the first bit sequence, and further determining a second bit sequence based on the third bit sequence and the first bit sequence.

其中,终端设备基于基图中权重高于第一阈值的第一列数确定第一数值,可以有以下几种实现方式,具体地:The terminal device determines the first value based on the number of first columns in the base graph whose weights are higher than the first threshold value. There are several implementation methods, specifically:

1、第一数值为第一列数。其中,第一列数为大于或等于1的整数,如第一列数可以为2或3等。一般地,基图中前T列的权重高于第一阈值,T为第一列数。示例性地,假设第一列数为2,即基图中第0列至第1列的权重高于第一阈值。或,假设第一列数为3,即基图中第0列至第2列的权重高于第一阈值。其中,第一阈值可以为预定义或预配置的大于0的数值。1. The first value is the first column number. The first column number is an integer greater than or equal to 1, such as 2 or 3. Generally, the weights of the first T columns in the base graph are higher than the first threshold, and T is the first column number. Exemplarily, assuming that the first column number is 2, that is, the weights of the 0th to 1st columns in the base graph are higher than the first threshold. Or, assuming that the first column number is 3, that is, the weights of the 0th to 2nd columns in the base graph are higher than the first threshold. The first threshold may be a predefined or preconfigured value greater than 0.

2、终端设备从基图中除权重高于第一阈值的其它列确定可靠度最高(即误比特最低)的第二列数,并基于第一列数和第二列数确定第一数值。例如,终端设备按照可靠度从高到低或从低到高的顺序对其它列的可靠度进行排序,以统计可靠度最高的列数,得到第二列数。其中,可靠度从高到低可以理解为误比特率从低到高。反之亦然。2. The terminal device determines the second column number with the highest reliability (i.e., the lowest bit error) from the base graph except for the other columns whose weights are higher than the first threshold, and determines the first value based on the first column number and the second column number. For example, the terminal device sorts the reliabilities of the other columns in the order of reliability from high to low or from low to high, and counts the number of columns with the highest reliability to obtain the second column number. Among them, reliability from high to low can be understood as bit error rate from low to high. And vice versa.

在一种可能的实施方式中,第一数值可以为第一列数和第二列数的和。示例性地,假设基图包括10列,第一列数为2,即基图中第0列至第1列的权重高于第一阈值。终端设备可以按照可靠度从高到低或从低到高的顺序对第2列至第9列的可靠度进行排序,以统计可靠度最高的列数,得到第二列数。例如,第二列数可以为大于或等于1的整数。In a possible implementation, the first value may be the sum of the first column number and the second column number. Exemplarily, assuming that the base graph includes 10 columns, the first column number is 2, that is, the weights of the 0th column to the 1st column in the base graph are higher than the first threshold. The terminal device may sort the reliabilities of the 2nd column to the 9th column in order of reliability from high to low or from low to high, so as to count the number of columns with the highest reliability and obtain the second column number. For example, the second column number may be an integer greater than or equal to 1.

3、终端设备从基图中除权重高于第一阈值的其它列确定可靠度高于第二阈值的第三列数,并基于第一列数和第三列数确定第一数值。例如,第一数值为第一列数和第三列数的和。其中,第三阈值可以为预定义或预配置的大于0的数值。3. The terminal device determines the third number of columns whose reliability is higher than the second threshold from the base graph except for the other columns whose weight is higher than the first threshold, and determines the first value based on the first number of columns and the third number of columns. For example, the first value is the sum of the first number of columns and the third number of columns. The third threshold may be a predefined or preconfigured value greater than 0.

其中,基图中权重可以理解为:该基图中列的权重。这里仅是以列重为例进行介绍,不应视为对本申请的限定。需要指出的是,在本申请中,基图的权重是由非零元素的个数决定的。如,行的权重是指一行中包括的非零元素的个数,列的权重是指一列中包括的非零元素的个数。行的权重和列的权重可以分别简称为行重和列重。Among them, the weight in the base graph can be understood as: the weight of the column in the base graph. Here, only the column weight is introduced as an example, which should not be regarded as a limitation of the present application. It should be pointed out that in the present application, the weight of the base graph is determined by the number of non-zero elements. For example, the weight of a row refers to the number of non-zero elements included in a row, and the weight of a column refers to the number of non-zero elements included in a column. The weight of a row and the weight of a column can be referred to as row weight and column weight, respectively.

在一种可能的实施方式中,该基图可以基于初始比特序列中信息比特的长度和码率确定。第一比特序列对应的提升因子可以基于初始比特序列中信息比特的长度确定。其中,第一比特序列中的信息比特序列可以是初始比特序列的部分或全部比特序列。初始比特序列可以包括信息比特序列。可选地,初始比特序列还可以包括冻结比特序列或不包括冻结比特序列。下面以初始比特序列不包括冻结比特序列为例,介绍第一比特序列与初始比特序列之间的关系,不应视为对本申请的限定,具体地:In a possible implementation, the base graph may be determined based on the length and code rate of the information bits in the initial bit sequence. The lifting factor corresponding to the first bit sequence may be determined based on the length of the information bits in the initial bit sequence. Among them, the information bit sequence in the first bit sequence may be a partial or complete bit sequence of the initial bit sequence. The initial bit sequence may include an information bit sequence. Optionally, the initial bit sequence may also include a frozen bit sequence or may not include a frozen bit sequence. The following takes the initial bit sequence not including a frozen bit sequence as an example to introduce the relationship between the first bit sequence and the initial bit sequence, which should not be regarded as a limitation of the present application, specifically:

1、第一比特序列中的信息比特序列为初始比特序列中的信息比特序列。例如,初始比特序列的长度小于LDPC编码支持的最大长度Kcb的情况下,第一比特序列中的信息比特序列为初始比特序列中的信息比特序列。也就是说,第一比特序列中的信息比特序列是初始比特序列的全部比特序列,即未级联校验比特序列的第一比特序列与初始比特序列相同。1. The information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence. For example, when the length of the initial bit sequence is less than the maximum length Kcb supported by LDPC coding, the information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence. In other words, the information bit sequence in the first bit sequence is the entire bit sequence of the initial bit sequence, that is, the first bit sequence of the unconcatenated check bit sequence is the same as the initial bit sequence.

Kcb可以基于基图确定。例如,该基图为BG1,Kcb为8448。该基图为BG2,Kcb为3840。其中,该基图基于初始比特序列中信息比特的长度和码率确定。Kcb can be determined based on a base graph. For example, if the base graph is BG1, Kcb is 8448. If the base graph is BG2, Kcb is 3840. The base graph is determined based on the length and code rate of the information bits in the initial bit sequence.

2、终端设备可以基于第一分段长度对初始比特序列进行分段,得到X个比特序列,X为大于1的整数。例如,在初始比特序列的长度大于Kcb的情况下,终端设备可以基于第一分段长度对初始比特序列进行分段,得到X个比特序列。其中,X个比特序列可以包括第一比特序列或第七比特序列。例如,针对上述第一种情况,X个比特序列包括第一比特序列。也就是说,第一比特序列中的信息比特序列是初始比特序列的部分比特序列。针对上述第二种情况,X个比特序列包括第七比特序列。也就是说,第七比特序列为初始比特序列的部分比特序列。2. The terminal device may segment the initial bit sequence based on the first segment length to obtain X bit sequences, where X is an integer greater than 1. For example, when the length of the initial bit sequence is greater than Kcb, the terminal device may segment the initial bit sequence based on the first segment length to obtain X bit sequences. Among them, the X bit sequences may include the first bit sequence or the seventh bit sequence. For example, for the first case above, the X bit sequences include the first bit sequence. That is, the information bit sequence in the first bit sequence is a partial bit sequence of the initial bit sequence. For the second case above, the X bit sequences include the seventh bit sequence. That is, the seventh bit sequence is a partial bit sequence of the initial bit sequence.

需要指出的是,初始比特序列的长度等于Kcb可以作为“第一比特序列中的信息比特序列为初始比特序列中的信息比特序列”的一种条件,或,作为“终端设备基于第一分段长度对初始比特序列进行分段,得到X个比特序列”的一种条件,在此不做限定。It should be pointed out that the length of the initial bit sequence being equal to Kcb can be used as a condition for "the information bit sequence in the first bit sequence is the information bit sequence in the initial bit sequence", or as a condition for "the terminal device segments the initial bit sequence based on the first segment length to obtain X bit sequences", which is not limited here.

可选地,第一分段长度可以基于第一数值和提升因子确定。例如,第一分段长度可以基于第一数值、提升因子和第二数值确定。第二数值基于基图的总列数和第一数值确定,如,第二数值为基图的总列数与第一数值的差值。Optionally, the first segment length may be determined based on the first value and the lifting factor. For example, the first segment length may be determined based on the first value, the lifting factor, and the second value. The second value is determined based on the total number of columns of the base graph and the first value, such as the second value is the difference between the total number of columns of the base graph and the first value.

可选地,第一分段长度还可以基于第三数值确定。第三数值为第二比特序列对应的码率。第三数值可以为预定义或预配置的大于0的数值,或,第三数值可以由网络设备指示给终端设备。例如,第三数值可以为0.9517,或,第三数值可以为(Nm×0.9517)/Nm,如975/1024。Nm为极化码编码支持的最大长度。Nm可以为大于0的整数,如Nm为1024。Optionally, the first segment length can also be determined based on a third value. The third value is the code rate corresponding to the second bit sequence. The third value may be a predefined or preconfigured value greater than 0, or the third value may be indicated by the network device to the terminal device. For example, the third value may be 0.9517, or the third value may be (Nm×0.9517)/Nm, such as 975/1024. Nm is the maximum length supported by the polar code encoding. Nm may be an integer greater than 0, such as Nm is 1024.

在一种可能的实施方式中,第一分段长度可以满足以下条件:其中,a为第一数值,b为第二数值,R为第三数值,Z为提升因子。示例性地,假设Z为384,a为2,b为8,R为0.9517,其中,a×Z=M1,因此,K1=M1+M2。In a possible implementation, the first segment length may satisfy the following conditions: Wherein, a is the first value, b is the second value, R is the third value, and Z is the boost factor. For example, assuming that Z is 384, a is 2, b is 8, and R is 0.9517, Among them, a×Z=M1, Therefore, K1=M1+M2.

其中,终端设备基于第一数值和第一比特序列对应的提升因子,从第一比特序列中确定第三比特序列,例如可以包括:终端设备基于第一数值和该提升因子的乘积Q,从第一比特序列中选取前Q个比特作为第三比特序列。例如,第一数值为2,提升因子为104,Q可以为208。The terminal device determines the third bit sequence from the first bit sequence based on the first value and the lifting factor corresponding to the first bit sequence, for example, may include: the terminal device selects the first Q bits from the first bit sequence as the third bit sequence based on the product Q of the first value and the lifting factor. For example, if the first value is 2 and the lifting factor is 104, Q may be 208.

其中,终端设备基于第三比特序列和第一比特序列确定第二比特序列,可以有以下几种实现方式,具体地:The terminal device determines the second bit sequence based on the third bit sequence and the first bit sequence, which can be implemented in the following ways, specifically:

1、第二比特序列为第一比特序列中除第三比特序列的其它比特序列。例如,在其它比特序列的长度小于Nm的情况下,第二比特序列为其它比特序列。1. The second bit sequence is other bit sequences in the first bit sequence except the third bit sequence. For example, when the length of the other bit sequence is less than Nm, the second bit sequence is the other bit sequence.

2、终端设备基于第二分段长度对其它比特序列进行分段,得到Y个比特序列,Y个比特序列包括第二比特序列。例如,在其它比特序列的长度大于Nm的情况下,终端设备基于第二分段长度对其它比特序列进行分段,得到Y个比特序列。其中,Y为大于1的整数。第二分段长度可以基于Nm和第三数值确定。如,第二分段长度满足以下条件: 2. The terminal device segments the other bit sequences based on the second segment length to obtain Y bit sequences, where the Y bit sequences include the second bit sequence. For example, when the length of the other bit sequences is greater than Nm, the terminal device segments the other bit sequences based on the second segment length to obtain Y bit sequences. Where Y is an integer greater than 1. The second segment length can be determined based on Nm and the third value. For example, the second segment length satisfies the following conditions:

需要指出的是,其它比特序列的长度等于Nm可以作为“第二比特序列为其它比特序列”的一种条件,或,作为“终端设备基于第二分段长度对其它比特序列进行分段,得到Y个比特序列”的一种条件,在此不做限定。It should be pointed out that the length of other bit sequences equal to Nm can be used as a condition for "the second bit sequence is other bit sequences", or as a condition for "the terminal device segments other bit sequences based on the second segment length to obtain Y bit sequences", which is not limited here.

702、终端设备对第二比特序列进行极化码编码,得到第四比特序列。702. The terminal device performs polarization code encoding on the second bit sequence to obtain a fourth bit sequence.

例如,针对上述第一种情况,步骤702可以理解为:终端设备对第二比特序列进行校验码编码,得到第六比特序列,从而对第六比特序列进行极化码编码,得到第四比特序列。其中,第四比特序列可以是极化码,如PC-Polar码、CA-Polar码或PC-CA-Polar码等。For example, for the first case above, step 702 can be understood as: the terminal device performs check code encoding on the second bit sequence to obtain a sixth bit sequence, and then performs polar code encoding on the sixth bit sequence to obtain a fourth bit sequence. The fourth bit sequence can be a polar code, such as a PC-Polar code, a CA-Polar code, or a PC-CA-Polar code.

在一种可能的实施方式中,第四比特序列的长度Npolar可以根据第二比特序列的长度T和R确定。In a possible implementation manner, the length Npolar of the fourth bit sequence may be determined according to the lengths T and R of the second bit sequence.

例如,第四比特序列的长度满足以下条件: For example, the length of the fourth bit sequence satisfies the following conditions:

703、终端设备对第三比特序列和第四比特序列进行LDPC编码,得到第五比特序列。703. The terminal device performs LDPC encoding on the third bit sequence and the fourth bit sequence to obtain a fifth bit sequence.

其中,第五比特序列是LDPC码。也可以称为LDPC码字序列。在一种可能的实施方式中,步骤703可以包括:终端设备将第三比特序列与第四比特序列级联后的比特序列进行LDPC编码,得到第五比特序列。例如,第三比特序列的末尾级联第四比特序列。The fifth bit sequence is an LDPC code. It can also be called an LDPC codeword sequence. In a possible implementation, step 703 may include: the terminal device performs LDPC encoding on a bit sequence obtained by concatenating the third bit sequence with the fourth bit sequence to obtain a fifth bit sequence. For example, the fourth bit sequence is concatenated at the end of the third bit sequence.

可选地,在步骤703之后,还可以包括步骤704。Optionally, after step 703 , step 704 may be further included.

704、终端设备基于第五比特序列发送符号序列。704. The terminal device sends a symbol sequence based on the fifth bit sequence.

相应的,网络设备接收符号序列。例如,网络设备从终端设备接收符号序列。对应的,终端设备基于第五比特序列向网络设备发送符号序列。Correspondingly, the network device receives the symbol sequence. For example, the network device receives the symbol sequence from the terminal device. Correspondingly, the terminal device sends the symbol sequence to the network device based on the fifth bit sequence.

可选地,步骤704可以包括:终端设备基于调制方式对第五比特序列进行调制,得到符号序列。Optionally, step 704 may include: the terminal device modulates the fifth bit sequence based on a modulation method to obtain a symbol sequence.

可以看出,上述实施例中,终端设备可以基于第一比特序列确定第二比特序列和第三比特序列,第三比特序列包括第一比特序列对应的基图中权重高于第一阈值的比特序列。也就是说,第二比特序列对应的权重低于第三比特序列对应的权重。进一步的,终端设备可以对第二比特序列进行极化码编码,相当于极化码编码的方式为权重较低的第二比特序列提供额外保护,以提高纠错性能。而对于权重较高的第三比特序列,可以与极化码编码的结果(即对第二比特序列进行极化码编码得到的第四比特序列)一起进行LDPC编码。这样,可以降低LDPC译码的错误平层,从而可以提高LDPC码的纠错性能。同时,还可以降低Polar外码编码带来的LDPC编码载荷,从而减少LDPC码的码率,提升瀑布区性能。It can be seen that in the above embodiment, the terminal device can determine the second bit sequence and the third bit sequence based on the first bit sequence, and the third bit sequence includes a bit sequence in the base map corresponding to the first bit sequence whose weight is higher than the first threshold. That is to say, the weight corresponding to the second bit sequence is lower than the weight corresponding to the third bit sequence. Furthermore, the terminal device can perform polarization code encoding on the second bit sequence, which is equivalent to providing additional protection for the second bit sequence with a lower weight by using polarization code encoding to improve the error correction performance. For the third bit sequence with a higher weight, LDPC encoding can be performed together with the result of polarization code encoding (that is, the fourth bit sequence obtained by performing polarization code encoding on the second bit sequence). In this way, the error floor of LDPC decoding can be reduced, thereby improving the error correction performance of LDPC code. At the same time, the LDPC coding load caused by Polar outer code encoding can also be reduced, thereby reducing the code rate of LDPC code and improving waterfall performance.

如图8所示,为本申请实施例提供的又一种译码方法。需要指出的是,图7所示实施例或图8所示实施例可以单独执行,或,图7所示实施例和图8所示实施例可以结合,例如,图7所示实施例在图8步骤801之前执行。下面对图8所示实施例进行详细说明,具体地,该方法包括但不限于如下步骤:As shown in FIG8, another decoding method is provided in an embodiment of the present application. It should be noted that the embodiment shown in FIG7 or the embodiment shown in FIG8 can be performed separately, or the embodiment shown in FIG7 and the embodiment shown in FIG8 can be combined, for example, the embodiment shown in FIG7 is performed before step 801 of FIG8. The embodiment shown in FIG8 is described in detail below. Specifically, the method includes but is not limited to the following steps:

801、网络设备获取符号序列。801. A network device obtains a symbol sequence.

例如,网络设备从终端设备接收符号序列。For example, a network device receives a sequence of symbols from a terminal device.

802、网络设备基于符号序列确定第五比特序列。802. The network device determines a fifth bit sequence based on the symbol sequence.

可选地,网络设备可以基于调制方式对符号序列进行解调得到第五比特序列。其中,第五比特序列是LDPC码。也可以称为LDPC码字序列。Optionally, the network device may demodulate the symbol sequence based on the modulation mode to obtain a fifth bit sequence, wherein the fifth bit sequence is an LDPC code, which may also be referred to as an LDPC codeword sequence.

803、网络设备对第五比特序列进行LDPC译码,得到第三比特序列和第四比特序列。803. The network device performs LDPC decoding on the fifth bit sequence to obtain a third bit sequence and a fourth bit sequence.

例如,网络设备对第五比特序列进行LDPC译码,得到第三比特序列与第四比特序列级联后的比特序列。其中,网络设备对第五比特序列进行LDPC译码的方式可以参考上述相关描述,在此不加赘述。第三比特序列和第四比特序列分别与图7步骤701中的第三比特序列和第四比特序列类似,在此不加赘述。其中,第四比特序列的长度满足以下条件:例如,可以将“第三比特序列与第四比特序列级联后的比特序列”中的后Npolar个比特作为第四比特序列,剩余的比特作为第三比特序列。即,第三比特序列与第四比特序列级联后的比特序列的长度与Npolar的差值为第三比特序列的长度。For example, the network device performs LDPC decoding on the fifth bit sequence to obtain a bit sequence that is a concatenation of the third bit sequence and the fourth bit sequence. The manner in which the network device performs LDPC decoding on the fifth bit sequence can refer to the above-mentioned related description, which is not described in detail here. The third bit sequence and the fourth bit sequence are similar to the third bit sequence and the fourth bit sequence in step 701 of FIG. 7, respectively, and are not described in detail here. The length of the fourth bit sequence satisfies the following conditions: For example, the last Npolar bits in the "bit sequence after the third bit sequence and the fourth bit sequence are cascaded" can be used as the fourth bit sequence, and the remaining bits can be used as the third bit sequence. That is, the difference between the length of the bit sequence after the third bit sequence and the fourth bit sequence are cascaded and Npolar is the length of the third bit sequence.

804、网络设备对第四比特序列进行极化码译码,得到第二比特序列。804. The network device performs polarization code decoding on the fourth bit sequence to obtain a second bit sequence.

其中,第二比特序列与图7步骤701中的第二比特序列类似,在此不加赘述。网络设备对第四比特序列进行极化码译码的方式可以参考上述相关描述,在此不加赘述。The second bit sequence is similar to the second bit sequence in step 701 of FIG7 , and is not described in detail here. The manner in which the network device performs polar code decoding on the fourth bit sequence can refer to the above related description, and is not described in detail here.

805、网络设备基于第三比特序列和第二比特序列确定第一比特序列。805. The network device determines a first bit sequence based on the third bit sequence and the second bit sequence.

例如,第一比特序列包括第三比特序列和第二比特序列。如,在第三比特序列的末尾级联了第二比特序列的比特序列为第一比特序列。其中,第一比特序列与图7步骤701中的第一比特序列类似,在此不加赘述。可选地,在第一比特序列包含了校验比特序列的情况下,网络设备还可以对第一比特序列进行校验。例如,PC校验和/或CRC校验等。For example, the first bit sequence includes a third bit sequence and a second bit sequence. For example, a bit sequence in which the second bit sequence is cascaded at the end of the third bit sequence is the first bit sequence. The first bit sequence is similar to the first bit sequence in step 701 of FIG. 7 and is not described in detail here. Optionally, in the case where the first bit sequence includes a check bit sequence, the network device may further check the first bit sequence. For example, PC check and/or CRC check, etc.

可以看出,上述实施例中,网络设备可以先基于符号序列确定第五比特序列,再对第五比特序列进行LDPC译码,得到第三比特序列和第四比特序列,从而可以对第四比特序列进行极化码译码,得到第二比特序列。这样,可以基于第三比特序列和第二比特序列确定第一比特序列。因为网络设备是对LDPC译码结果中的部分比特序列(如第四比特序列)进行极化码译码,减少了译码的时延,提高了译码效率。同时,还可以用于降低LDPC译码的错误平层,进而可以提高LDPC码的纠错性能。It can be seen that in the above embodiment, the network device can first determine the fifth bit sequence based on the symbol sequence, and then perform LDPC decoding on the fifth bit sequence to obtain the third bit sequence and the fourth bit sequence, so that the fourth bit sequence can be polarized and decoded to obtain the second bit sequence. In this way, the first bit sequence can be determined based on the third bit sequence and the second bit sequence. Because the network device performs polarization code decoding on part of the bit sequence (such as the fourth bit sequence) in the LDPC decoding result, the decoding delay is reduced and the decoding efficiency is improved. At the same time, it can also be used to reduce the error floor of LDPC decoding, thereby improving the error correction performance of the LDPC code.

下面结合具体的例子对图5至图8所述实施例的有益效果进行详细说明,具体地:The beneficial effects of the embodiments described in FIGS. 5 to 8 are described in detail below with reference to specific examples, specifically:

一、针对图5所示编码方法和图6所示译码方法的举例1. Examples of the encoding method shown in FIG. 5 and the decoding method shown in FIG. 6

假设信息比特U的长度为1000比特(bits),结合图5所示编码方法和图6所示译码方法其流程可以参见图9的Polar-LDPC编码及译码过程。例如,终端设备对信息比特依次经过CRC24编码、极化码编码、LDPC编码以及QPSK调制后,通过AWGN信道向网络设备发送信息。对应地,网络设备接收到信息后,依次对该信息进行解调、LOMS译码以及极化码译码得到其中,对信息比特U依次经过CRC24编码和极化码编码,相当于为CRC码字添加了Polar冗余校验比特。信息比特经过CRC24编码后比特序列长度为1024bits,即图9中K_Ca-polar=1024bits。将1024bits经过极化码编码后比特序列长度N_polar为N_polar=K_ldpc。进一步地,将1076bits经过LDPC编码后比特序列长度为N_ldpc,如3000bits。Assuming that the length of the information bit U is 1000 bits, the process of combining the encoding method shown in FIG5 and the decoding method shown in FIG6 can refer to the Polar-LDPC encoding and decoding process of FIG9. For example, the terminal device sequentially performs CRC24 encoding, polar code encoding, LDPC encoding, and QPSK modulation on the information bit, and then sends the information to the network device through the AWGN channel. Correspondingly, after receiving the information, the network device sequentially demodulates, LOMS decodes, and polar code decodes the information to obtain The information bit U is encoded by CRC24 and polar code in turn, which is equivalent to adding polar redundancy check bits to the CRC codeword. The length of the bit sequence after the information bit is encoded by CRC24 is 1024 bits, that is, K_Ca-polar = 1024 bits in Figure 9. The length of the bit sequence after the 1024 bits are encoded by polar code is N_polar N_polar=K_ldpc. Further, after 1076 bits are LDPC-coded, the length of the bit sequence is N_ldpc, such as 3000 bits.

其中,图9的LDPC编码及译码过程为:终端设备对信息比特依次经过CRC24编码、LDPC编码以及QPSK调制后,通过AWGN信道向网络设备发送信息。对应地,网络设备接收到信息后,依次对该信息进行解调、LOMS译码得到另外,图9中LOMS译码的迭代次数可以为15或25,极化码译码可以为SC译码或SCL译码,路径宽度L可以为8。的长度为1000bits。The LDPC encoding and decoding process of Figure 9 is as follows: the terminal device sequentially performs CRC24 encoding, LDPC encoding, and QPSK modulation on the information bits, and then sends the information to the network device through the AWGN channel. Correspondingly, after receiving the information, the network device sequentially demodulates and LOMS decodes the information to obtain In addition, in FIG9 , the number of iterations of the LOMS decoding may be 15 or 25, the polar code decoding may be SC decoding or SCL decoding, and the path width L may be 8. The length is 1000 bits.

下面以图9所示例子基础,结合图10说明图5所示编码方法和图6所示译码方法的有益效果。具体地,在图10中,横坐标表示SNR,即Es/N0,纵坐标表示BLER。The following is based on the example shown in Figure 9 and combined with Figure 10 to illustrate the beneficial effects of the encoding method shown in Figure 5 and the decoding method shown in Figure 6. Specifically, in Figure 10, the abscissa represents SNR, that is, Es/N0, and the ordinate represents BLER.

其中,在图10的10-1中,LOMS译码的迭代次数为15。Polar-LDPC的曲线表示图9中的Polar-LDPC编码及译码过程对应的BLER性能。LDPC的曲线表示图9中的LDPC编码及译码过程对应的BLER性能。可以看出,在BLER小于或等于6×10-6的情况下,Polar-LDPC编码及译码所对应的纠错性能依然可以随着SNR的增加而指数下降,没有错误平层。Among them, in 10-1 of Figure 10, the number of iterations of LOMS decoding is 15. The curve of Polar-LDPC represents the BLER performance corresponding to the Polar-LDPC encoding and decoding process in Figure 9. The curve of LDPC represents the BLER performance corresponding to the LDPC encoding and decoding process in Figure 9. It can be seen that when the BLER is less than or equal to 6× 10-6 , the error correction performance corresponding to the Polar-LDPC encoding and decoding can still decrease exponentially with the increase of SNR, and there is no error flattening.

在图10的10-2中,LOMS译码的迭代次数为25。Polar-LDPC的曲线表示图9中的Polar-LDPC编码及译码过程对应的BLER性能。LDPC的曲线表示图9中的LDPC编码及译码过程对应的BLER性能。可以看出,在BLER小于或等于6×10-6的情况下,Polar-LDPC编码及译码所对应的纠错性能依然可以随着SNR的增加而指数下降,没有错误平层。In 10-2 of FIG10, the number of iterations of LOMS decoding is 25. The curve of Polar-LDPC represents the BLER performance corresponding to the Polar-LDPC encoding and decoding process in FIG9. The curve of LDPC represents the BLER performance corresponding to the LDPC encoding and decoding process in FIG9. It can be seen that when the BLER is less than or equal to 6× 10-6 , the error correction performance corresponding to the Polar-LDPC encoding and decoding can still decrease exponentially with the increase of SNR, and there is no error flattening.

二、针对图7所示编码方法和图8所示译码方法的举例2. Examples of the encoding method shown in FIG. 7 and the decoding method shown in FIG. 8

假设信息比特U的长度为1000比特(bits),结合图7所示编码方法和图8所示译码方法其流程可以参见图11的Polar-LDPC编码及译码1或Polar-LDPC编码及译码2过程。例如,终端设备基于信息比特U的长度确定提升因子Z。如,信息比特的长度为1000bits,LDPC编码后的长度N_ldpc为3000bits,可以选择BG2,总列数为10,Z=104。因为BG2的前T列的列重很大,对应的信息比特比较可靠,不容易出错,因此无需通过极化码编码进行额外的保护。即导致LDPC产生错误平层的比特主要分布在非大列重对应的位置上。例如,T为2,BG2的第0列至第1列的列重很大,第2列至第9列(非大列重)对应的比特容易出错。大列重的比特个数(K_B)为Z×2=208。Assuming that the length of the information bit U is 1000 bits (bits), the process of combining the encoding method shown in FIG. 7 and the decoding method shown in FIG. 8 can refer to the Polar-LDPC encoding and decoding 1 or Polar-LDPC encoding and decoding 2 process of FIG. 11. For example, the terminal device determines the lifting factor Z based on the length of the information bit U. For example, if the length of the information bit is 1000 bits, and the length N_ldpc after LDPC encoding is 3000 bits, BG2 can be selected, the total number of columns is 10, and Z=104. Because the column weight of the first T columns of BG2 is large, the corresponding information bits are relatively reliable and not prone to errors, so there is no need for additional protection through polar code encoding. That is, the bits that cause LDPC to generate error flattening are mainly distributed in the positions corresponding to non-large column weights. For example, T is 2, the column weights of columns 0 to 1 of BG2 are large, and the bits corresponding to columns 2 to 9 (non-large column weights) are prone to errors. The number of bits with large column weights (K_B) is Z×2=208.

图11的Polar-LDPC编码及译码1过程为:终端设备将792个比特依次进行CRC24编码和极化码编码。792个比特经过CRC24编码后比特序列长度K_S_CRC为816bits。816个比特经过极化码编码后比特序列长度为N_polar为858bits。进一步地,将208bits和858bits级联后(其长度K_ldpc为1066bits)依次进行LDPC编码以及QPSK调制后,通过AWGN信道向网络设备发送信息。对应地,网络设备接收到信息后,依次对该信息进行解调以及LOMS译码,得到需要进行极化码译码的比特,其长度为K_ldpc-K_B=858bits。还可以得到长度为208bits的大列重的比特。这样可以得到 The Polar-LDPC encoding and decoding 1 process of Figure 11 is as follows: the terminal device performs CRC24 encoding and polarization code encoding on 792 bits in sequence. After CRC24 encoding of 792 bits, the length of the bit sequence K_S_CRC is 816 bits. After polarization code encoding of 816 bits, the length of the bit sequence N_polar is 858 bits. Furthermore, 208 bits and 858 bits are cascaded (their length K_ldpc is 1066 bits), LDPC encoding and QPSK modulation are performed in sequence, and the information is sent to the network device through the AWGN channel. Correspondingly, after receiving the information, the network device demodulates and LOMS decodes the information in sequence to obtain the bits that need to be polarization code decoded, whose length is K_ldpc-K_B=858 bits. A large column of heavy bits with a length of 208 bits can also be obtained. In this way, we can get

图11的Polar-LDPC编码及译码2过程为:终端设备将信息比特进行CRC24编码,得到比特长度K_CRC为1024bits。其中需要进行极化码编码的比特序列长度K_polar为816bits,无需进行极化码编码的比特序列长度K_B为208bits。进一步地,将816个比特进行极化码编码,得到比特序列长度N_polar为858bits。这样可以将208bits和858bits级联后(其长度K_ldpc为1066bits)依次进行LDPC编码以及QPSK调制后,通过AWGN信道向网络设备发送信息。对应地,网络设备接收到信息后,依次对该信息进行解调以及LOMS译码,得到需要进行极化码译码的比特,其长度为K_ldpc-K_B=858bits。还可以得到长度为208bits的大列重的比特。这样可以得到其中,图11中LOMS译码的迭代次数可以为15或25,极化码译码可以为SC译码或SCL译码,路径宽度L可以为8。的长度为1000bits。另外,图11的LDPC编码及译码过程与图9的LDPC编码及译码过程类似,在此不加赘述。The Polar-LDPC encoding and decoding 2 process of Figure 11 is as follows: the terminal device performs CRC24 encoding on the information bits to obtain a bit length K_CRC of 1024 bits. Among them, the length of the bit sequence K_polar that needs to be encoded with polarization code is 816 bits, and the length of the bit sequence K_B that does not need to be encoded with polarization code is 208 bits. Further, the 816 bits are polarization-coded to obtain a bit sequence length N_polar of 858 bits. In this way, 208 bits and 858 bits can be cascaded (whose length K_ldpc is 1066 bits), LDPC encoded and QPSK modulated in sequence, and the information is sent to the network device through the AWGN channel. Correspondingly, after receiving the information, the network device demodulates and LOMS decodes the information in sequence to obtain bits that need to be decoded with polarization code, whose length is K_ldpc-K_B=858 bits. A large column of bits with a length of 208 bits can also be obtained. In this way, we can get In FIG. 11 , the number of iterations of the LOMS decoding may be 15 or 25, the polar code decoding may be SC decoding or SCL decoding, and the path width L may be 8. The length of is 1000 bits. In addition, the LDPC encoding and decoding process of FIG11 is similar to the LDPC encoding and decoding process of FIG9 , and will not be described in detail here.

下面以图11所示例子基础,结合图12说明图7所示编码方法和图8所示译码方法的有益效果。具体地,在图12中,横坐标表示SNR,即Es/N0,纵坐标表示BLER。The following is based on the example shown in Figure 11 and combined with Figure 12 to illustrate the beneficial effects of the encoding method shown in Figure 7 and the decoding method shown in Figure 8. Specifically, in Figure 12, the abscissa represents SNR, that is, Es/N0, and the ordinate represents BLER.

在图12的12-1中,LOMS译码的迭代次数为15,大列重的为BG2的前2列。图9所示Polar-LDPC的曲线表示图9中的Polar-LDPC编码及译码过程对应的BLER性能。LDPC的曲线表示图11中的LDPC编码及译码过程对应的BLER性能。图11所示Polar-LDPC的曲线表示图11中的Polar-LDPC编码及译码1过程对应的BLER性能。可以看出,在BLER小于或等于8×10-6的情况下,图9所示的Polar-LDPC编码及译码,图11中的Polar-LDPC编码及译码1以及所对应的纠错性能依然可以随着SNR的增加而指数下降,没有错误平层。In 12-1 of Figure 12, the number of iterations of LOMS decoding is 15, and the largest columns are the first 2 columns of BG2. The curve of Polar-LDPC shown in Figure 9 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding process in Figure 9. The curve of LDPC represents the BLER performance corresponding to the LDPC encoding and decoding process in Figure 11. The curve of Polar-LDPC shown in Figure 11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in Figure 11. It can be seen that when the BLER is less than or equal to 8× 10-6 , the Polar-LDPC encoding and decoding shown in Figure 9, the Polar-LDPC encoding and decoding 1 in Figure 11 and the corresponding error correction performance can still decrease exponentially with the increase of SNR, and there is no error flattening.

在图12的12-2中,LOMS译码的迭代次数为25,大列重的为BG2的前2列。图9所示Polar-LDPC的曲线表示图9中的Polar-LDPC编码及译码过程对应的BLER性能。LDPC的曲线表示图11中的LDPC编码及译码过程对应的BLER性能。图11所示Polar-LDPC的曲线表示图11中的Polar-LDPC编码及译码1过程对应的BLER性能。可以看出,在BLER小于或等于10-5的情况下,图9所示的Polar-LDPC编码及译码,图11中的Polar-LDPC编码及译码1以及所对应的纠错性能依然可以随着SNR的增加而指数下降,没有错误平层。In 12-2 of FIG12, the number of iterations of LOMS decoding is 25, and the largest columns are the first two columns of BG2. The curve of Polar-LDPC shown in FIG9 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding process in FIG9. The curve of LDPC represents the BLER performance corresponding to the LDPC encoding and decoding process in FIG11. The curve of Polar-LDPC shown in FIG11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in FIG11. It can be seen that when the BLER is less than or equal to 10-5 , the Polar-LDPC encoding and decoding shown in FIG9, the Polar-LDPC encoding and decoding 1 in FIG11 and the corresponding error correction performance can still decrease exponentially with the increase of SNR, and there is no error flattening.

在图12的12-3中,LOMS译码的迭代次数为15,大列重的为BG2的前3列。LDPC的曲线表示图11中的LDPC编码及译码过程对应的BLER性能。图11所示Polar-LDPC的曲线表示图11中的Polar-LDPC编码及译码1过程对应的BLER性能。可以看出,在BLER小于或等于10-5的情况下,图9所示的Polar-LDPC编码及译码,图11中的Polar-LDPC编码及译码1以及所对应的纠错性能依然可以随着SNR的增加而指数下降,没有错误平层。In 12-3 of FIG12, the number of iterations of LOMS decoding is 15, and the largest columns are the first 3 columns of BG2. The LDPC curve represents the BLER performance corresponding to the LDPC encoding and decoding process in FIG11. The Polar-LDPC curve shown in FIG11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in FIG11. It can be seen that when the BLER is less than or equal to 10-5 , the Polar-LDPC encoding and decoding shown in FIG9, the Polar-LDPC encoding and decoding 1 in FIG11, and the corresponding error correction performance can still decrease exponentially with the increase of SNR, and there is no error flattening.

在图12的12-4中,LOMS译码的迭代次数为25,大列重的为BG2的前3列。LDPC的曲线表示图11中的LDPC编码及译码过程对应的BLER性能。图11所示Polar-LDPC的曲线表示图11中的Polar-LDPC编码及译码1过程对应的BLER性能。可以看出,在BLER小于或等于10-5的情况下,图9所示的Polar-LDPC编码及译码,图11中的Polar-LDPC编码及译码1以及所对应的纠错性能依然可以随着SNR的增加而指数下降,没有错误平层。In 12-4 of FIG. 12, the number of iterations of LOMS decoding is 25, and the largest columns are the first 3 columns of BG2. The LDPC curve represents the BLER performance corresponding to the LDPC encoding and decoding process in FIG. 11. The Polar-LDPC curve shown in FIG. 11 represents the BLER performance corresponding to the Polar-LDPC encoding and decoding 1 process in FIG. 11. It can be seen that when the BLER is less than or equal to 10-5 , the Polar-LDPC encoding and decoding shown in FIG. 9, the Polar-LDPC encoding and decoding 1 in FIG. 11, and the corresponding error correction performance can still decrease exponentially with the increase of SNR, and there is no error flattening.

另外,将图12的12-1与图12的12-3对比,或将图12的12-2与图12的12-4对比,图12的12-3和图12的12-4中,对前3列的大列重对应的信息比特不进行极化码编码,进一步减少了极化码外码所增加的冗余比特,瀑布区性能损失由0.2dB降至0.1xdB左右,提升了瀑布区性能。In addition, comparing 12-1 of FIG. 12 with 12-3 of FIG. 12, or comparing 12-2 of FIG. 12 with 12-4 of FIG. 12, in 12-3 of FIG. 12 and 12-4 of FIG. 12, polar code encoding is not performed on the information bits corresponding to the large column weights of the first three columns, which further reduces the redundant bits added by the polar code outer code, and the performance loss in the waterfall area is reduced from 0.2 dB to about 0.1xdB, thereby improving the performance in the waterfall area.

可以理解的是,上述设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。It is understandable that, in order to realize the above functions, the above-mentioned device includes hardware structures and/or software modules corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

本申请实施例可以根据上述方法示例对终端设备或网络设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中,上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。The embodiment of the present application can divide the terminal device or network device into functional modules according to the above method example. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.

参见图13,图13为本申请实施例提供的一种通信装置的结构示意图。该通信装置1300可应用于上述图5至图8中任一实施例所示的方法中,如图13所示,该通信装置1300包括:处理模块1301和收发模块1302。处理模块1301可以是一个或多个处理器,收发模块1302可以是收发器或者通信接口。该通信装置可用于实现上述任一方法实施例中涉及终端设备或网络设备,或用于实现上述任一方法实施例中涉及网元的功能。该网元或者网络功能既可以是硬件设备中的网络元件,也可以是在专用硬件上运行的软件功能,或者是平台(例如,云平台)上实例化的虚拟化功能。可选的,该通信装置1300还可以包括存储模块1303,用于存储通信装置1300的程序代码和数据。Referring to Figure 13, Figure 13 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application. The communication device 1300 can be applied to the method shown in any of the embodiments shown in Figures 5 to 8 above. As shown in Figure 13, the communication device 1300 includes: a processing module 1301 and a transceiver module 1302. The processing module 1301 can be one or more processors, and the transceiver module 1302 can be a transceiver or a communication interface. The communication device can be used to implement the terminal device or network device involved in any of the above method embodiments, or to implement the functions of the network element involved in any of the above method embodiments. The network element or network function can be a network element in a hardware device, a software function running on dedicated hardware, or a virtualization function instantiated on a platform (e.g., a cloud platform). Optionally, the communication device 1300 can also include a storage module 1303 for storing program code and data of the communication device 1300.

一种实例,当该通信装置作为终端设备或为应用于终端设备中的芯片,并执行上述方法实施例中由终端设备执行的步骤。收发模块1302用于具体执行图5至图8中任一实施例由终端设备执行的发送和/或接收的动作,例如支持终端设备执行本文中所描述的技术的其他过程。处理模块1301可用于支持通信装置1300执行上述方法实施例中的处理动作,例如,支持终端设备执行本文中所描述的技术的其他过程。In one example, when the communication device is used as a terminal device or a chip used in a terminal device, and performs the steps performed by the terminal device in the above method embodiment. The transceiver module 1302 is used to specifically perform the sending and/or receiving actions performed by the terminal device in any embodiment of Figures 5 to 8, such as supporting the terminal device to perform other processes of the technology described herein. The processing module 1301 can be used to support the communication device 1300 to perform the processing actions in the above method embodiment, for example, supporting the terminal device to perform other processes of the technology described herein.

示例性的,处理模块1301,用于:基于第一比特序列确定第二比特序列和第三比特序列,第三比特序列包括第一比特序列对应的基图中权重高于第一阈值的比特序列;对第二比特序列进行极化码编码,得到第四比特序列;对第三比特序列和第四比特序列进行低密度奇偶校验LDPC编码,得到第五比特序列。Exemplarily, the processing module 1301 is used to: determine a second bit sequence and a third bit sequence based on the first bit sequence, where the third bit sequence includes a bit sequence whose weight is higher than a first threshold in a base graph corresponding to the first bit sequence; perform polar code encoding on the second bit sequence to obtain a fourth bit sequence; and perform low-density parity check LDPC encoding on the third bit sequence and the fourth bit sequence to obtain a fifth bit sequence.

在一种可能的实施方式中,在基于第一比特序列确定第二比特序列和第三比特序列时,处理模块1301,用于:基于基图中权重高于第一阈值的第一列数确定第一数值;基于第一数值和第一比特序列对应的提升因子,从第一比特序列中确定第三比特序列;基于第三比特序列和第一比特序列确定第二比特序列。In a possible implementation, when determining the second bit sequence and the third bit sequence based on the first bit sequence, the processing module 1301 is used to: determine a first numerical value based on the first number of columns in the base graph whose weights are higher than a first threshold; determine the third bit sequence from the first bit sequence based on the first numerical value and the lifting factor corresponding to the first bit sequence; and determine the second bit sequence based on the third bit sequence and the first bit sequence.

在一种可能的实施方式中,在基于基图中权重高于第一阈值的第一列数确定第一数值时,处理模块1301,用于:从基图中除权重高于第一阈值的其它列确定可靠度最高的第二列数;基于第一列数和第二列数确定第一数值。In a possible implementation, when determining a first numerical value based on the first number of columns in the base graph whose weights are higher than a first threshold, the processing module 1301 is used to: determine a second number of columns with the highest reliability from other columns in the base graph except for columns whose weights are higher than the first threshold; and determine the first numerical value based on the first number of columns and the second number of columns.

在一种可能的实施方式中,在对第二比特序列进行极化码编码,得到第四比特序列时,处理模块1301,用于:对第二比特序列进行校验码编码,得到第六比特序列;对第六比特序列进行极化码编码,得到第四比特序列。In a possible implementation, when polarization code encoding is performed on the second bit sequence to obtain a fourth bit sequence, the processing module 1301 is configured to: perform check code encoding on the second bit sequence to obtain a sixth bit sequence; and perform polarization code encoding on the sixth bit sequence to obtain a fourth bit sequence.

在一种可能的实施方式中,处理模块1301,还用于对第六比特序列进行校验码编码,得到第一比特序列。In a possible implementation, the processing module 1301 is further configured to perform check code encoding on the sixth bit sequence to obtain the first bit sequence.

在一种可能的实施方式中,处理模块1301,还用于基于第一分段长度对初始比特序列进行分段,得到X个比特序列,X个比特序列包括第一比特序列或第七比特序列,X为大于1的整数;其中,第一分段长度基于第一数值和提升因子确定。In a possible implementation, the processing module 1301 is further used to segment the initial bit sequence based on the first segment length to obtain X bit sequences, where the X bit sequences include the first bit sequence or the seventh bit sequence, and X is an integer greater than 1; wherein the first segment length is determined based on the first value and the lifting factor.

在一种可能的实施方式中,在基于第三比特序列和第一比特序列确定第二比特序列时,处理模块1301,用于基于第二分段长度对第一比特序列中除第三比特序列的其它比特序列进行分段,得到Y个比特序列,Y个比特序列包括第二比特序列,Y为大于1的整数;其中,第二分段长度基于极化码编码支持的最大长度和第三数值确定。In a possible implementation, when the second bit sequence is determined based on the third bit sequence and the first bit sequence, the processing module 1301 is configured to segment other bit sequences in the first bit sequence except the third bit sequence based on a second segment length to obtain Y bit sequences, where the Y bit sequences include the second bit sequence, and Y is an integer greater than 1; wherein the second segment length is determined based on a maximum length supported by polar code encoding and a third value.

在一种可能的实施方式中,收发模块1302,还用于基于第三比特序列发送符号序列。In a possible implementation manner, the transceiver module 1302 is further configured to send a symbol sequence based on a third bit sequence.

一种实例,当该通信装置作为网络设备或为应用于网络设备中的芯片,并执行上述方法实施例中由网络设备执行的步骤。收发模块1302用于具体执行图5至图8中任一实施例由网络设备执行的发送和/或接收的动作,例如支持网络设备执行本文中所描述的技术的其他过程。处理模块1301可用于支持通信装置1300执行上述方法实施例中的处理动作,例如,支持网络设备执行本文中所描述的技术的其他过程。In one example, when the communication device is used as a network device or a chip used in a network device, and performs the steps performed by the network device in the above method embodiment. The transceiver module 1302 is used to specifically perform the sending and/or receiving actions performed by the network device in any embodiment of Figures 5 to 8, such as supporting the network device to perform other processes of the technology described herein. The processing module 1301 can be used to support the communication device 1300 to perform the processing actions in the above method embodiment, for example, supporting the network device to perform other processes of the technology described herein.

示例性地,处理模块1301,用于:获取符号序列;基于符号序列确定第五比特序列;对第五比特序列进行LDPC译码,得到第三比特序列和第四比特序列;对第四比特序列进行极化码译码,得到第二比特序列;基于第三比特序列和第二比特序列确定第一比特序列。Exemplarily, the processing module 1301 is used to: obtain a symbol sequence; determine a fifth bit sequence based on the symbol sequence; perform LDPC decoding on the fifth bit sequence to obtain a third bit sequence and a fourth bit sequence; perform polar code decoding on the fourth bit sequence to obtain a second bit sequence; and determine a first bit sequence based on the third bit sequence and the second bit sequence.

在一种可能的实施方式中,当终端设备或网络设备为芯片时,收发模块1302可以是通信接口、管脚或电路等。通信接口可用于输入待处理的数据至处理器,并可以向外输出处理器的处理结果。具体实现中,通信接口可以是通用输入输出(general purpose input output,GPIO)接口,可以和多个外围设备(如显示器(LCD)、摄像头(camera)、射频(radio frequency,RF)模块、天线等等)连接。通信接口通过总线与处理器相连。In a possible implementation, when the terminal device or network device is a chip, the transceiver module 1302 may be a communication interface, a pin or a circuit, etc. The communication interface may be used to input data to be processed to the processor, and may output the processing result of the processor to the outside. In a specific implementation, the communication interface may be a general purpose input output (GPIO) interface, which may be connected to multiple peripheral devices (such as a display (LCD), a camera (camera), a radio frequency (RF) module, an antenna, etc.). The communication interface is connected to the processor via a bus.

处理模块1301可以是处理器,该处理器可以执行存储模块存储的计算机执行指令,以使该芯片执行图5至图8中任一所示实施例涉及的方法。进一步的,处理器可以包括控制器、运算器和寄存器。示例性的,控制器主要负责指令译码,并为指令对应的操作发出控制信号。运算器主要负责执行定点或浮点算数运算操作、移位操作以及逻辑操作等,也可以执行地址运算和转换。寄存器主要负责保存指令执行过程中临时存放的寄存器操作数和中间操作结果等。具体实现中,处理器的硬件架构可以是ASIC架构、无互锁管道阶段架构的微处理器(microprocessor without interlocked piped stages architecture,MIPS)架构、进阶精简指令集机器(advanced RISC machines,ARM)架构或者第二处理器(network processor,NP)架构等等。处理器可以是单核的,也可以是多核的。该存储模块可以为该芯片内的存储模块,如寄存器、缓存等。存储模块也可以是位于芯片外部的存储模块,如ROM或可存储静态信息和指令的其他类型的静态存储设备、RAM等。The processing module 1301 may be a processor, which may execute the computer execution instructions stored in the storage module so that the chip executes the method involved in any of the embodiments shown in FIG. 5 to FIG. 8. Further, the processor may include a controller, an operator and a register. Exemplarily, the controller is mainly responsible for instruction decoding and sends a control signal for the operation corresponding to the instruction. The operator is mainly responsible for performing fixed-point or floating-point arithmetic operations, shift operations, and logical operations, etc., and may also perform address operations and conversions. The register is mainly responsible for saving register operands and intermediate operation results temporarily stored during the execution of instructions. In a specific implementation, the hardware architecture of the processor may be an ASIC architecture, a microprocessor without interlocked piped stages architecture (microprocessor without interlocked piped stages architecture, MIPS) architecture, an advanced reduced instruction set machine (advanced RISC machines, ARM) architecture, or a second processor (network processor, NP) architecture, etc. The processor may be single-core or multi-core. The storage module may be a storage module in the chip, such as a register, a cache, etc. The storage module may also be a storage module located outside the chip, such as a ROM or other types of static storage devices that can store static information and instructions, RAM, etc.

需要说明的,处理器、接口各自对应的功能既可以通过硬件设计实现,也可以通过软件设计来实现,还可以通过软硬件结合的方式来实现,这里不作限制。It should be noted that the functions corresponding to the processor and the interface can be implemented through hardware design, software design, or a combination of hardware and software, and there is no limitation here.

图14为本申请实施例提供的又一种通信装置的结构示意图。可以理解的是,通信装置1410包括例如模块、单元、元件、电路、或接口等必要形式的手段,以适当地配置在一起以执行本解决方案。通信装置1410可以是上述终端设备或网络设备,也可以是这些设备中的部件(例如芯片),用以实现上述方法实施例中描述的方法。通信装置1410包括一个或多个处理器1411。处理器1411可以是通用处理器或者专用处理器等。例如可以是基带处理器、或中央处理器。基带处理器可以用于对通信协议以及通信数据进行处理,中央处理器可以用于对通信装置(如,终端设备、网络设备、或芯片等)进行控制,执行软件程序,处理软件程序的数据。FIG14 is a schematic diagram of the structure of another communication device provided in an embodiment of the present application. It is understandable that the communication device 1410 includes necessary means such as modules, units, elements, circuits, or interfaces, which are appropriately configured together to implement the present solution. The communication device 1410 may be the above-mentioned terminal device or network device, or a component (such as a chip) in these devices, to implement the method described in the above-mentioned method embodiment. The communication device 1410 includes one or more processors 1411. The processor 1411 may be a general-purpose processor or a dedicated processor, etc. For example, it may be a baseband processor or a central processing unit. The baseband processor may be used to process communication protocols and communication data, and the central processing unit may be used to control the communication device (such as a terminal device, a network device, or a chip, etc.), execute software programs, and process data of software programs.

可选的,在一种设计中,处理器1411可以包括程序1413(有时也可以称为代码或指令),程序1413可以在处理器1411上被运行,使得通信装置1410执行上述实施例中描述的方法。在又一种可能的设计中,通信装置1410包括电路(图14未示出),电路用于实现上述实施例中的终端设备、网络设备等功能。可选的,通信装置1410中可以包括一个或多个存储器1412,其上存有程序1414(有时也可以称为代码或指令),程序1414可在处理器1411上被运行,使得通信装置1410执行上述方法实施例中描述的方法。可选的,处理器1411和/或存储器1412中还可以存储有数据。处理器和存储器可以单独设置,也可以集成在一起。Optionally, in one design, the processor 1411 may include a program 1413 (sometimes also referred to as code or instruction), and the program 1413 may be run on the processor 1411, so that the communication device 1410 performs the method described in the above embodiment. In another possible design, the communication device 1410 includes a circuit (not shown in FIG. 14), and the circuit is used to implement the functions of the terminal device, network device, etc. in the above embodiment. Optionally, the communication device 1410 may include one or more memories 1412, on which a program 1414 (sometimes also referred to as code or instruction) is stored, and the program 1414 may be run on the processor 1411, so that the communication device 1410 performs the method described in the above method embodiment. Optionally, data may also be stored in the processor 1411 and/or the memory 1412. The processor and the memory may be provided separately or integrated together.

可选的,通信装置1410还可以包括收发器1415和/或天线1416。处理器1411有时也可以称为处理单元,对通信装置(例如终端设备或网络设备)进行控制。收发器1415有时也可以称为收发单元、收发机、收发电路、或者收发器等,用于通过天线1416实现通信装置的收发功能。Optionally, the communication device 1410 may further include a transceiver 1415 and/or an antenna 1416. The processor 1411 may also be sometimes referred to as a processing unit, which controls the communication device (e.g., a terminal device or a network device). The transceiver 1415 may also be sometimes referred to as a transceiver unit, a transceiver, a transceiver circuit, or a transceiver, etc., which is used to implement the transceiver function of the communication device through the antenna 1416.

本申请实施例还提供一种通信装置,通信装置包括至少一个处理器;其中,至少一个处理器被配置为执行图5至图8中任一实施例的任一项所述的方法。An embodiment of the present application further provides a communication device, which includes at least one processor; wherein the at least one processor is configured to execute any method described in any one of the embodiments in Figures 5 to 8.

本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,当计算机指令被执行时,使计算机执行如图5至图8中任一实施例的任一项所述的方法。An embodiment of the present application further provides a computer-readable storage medium, which stores computer instructions. When the computer instructions are executed, the computer executes any method as described in any one of the embodiments in Figures 5 to 8.

本申请实施例还提供一种计算机程序产品,计算机程序产品包括:计算机程序代码,计算机程序代码被计算机运行时,使得计算机执行如图5至图8中任一实施例的任一项所述的方法。An embodiment of the present application further provides a computer program product, which includes: a computer program code, and when the computer program code is executed by a computer, the computer executes any of the methods described in any of the embodiments shown in Figures 5 to 8.

本申请实施例还提供一种芯片,芯片包括至少一个处理器和接口,处理器用于读取并执行存储器中存储的指令,当指令被运行时,使得芯片执行如图5至图8中任一实施例的任一项所述的方法。An embodiment of the present application also provides a chip, which includes at least one processor and an interface, wherein the processor is used to read and execute instructions stored in a memory, and when the instructions are executed, the chip executes any method as described in any of the embodiments in Figures 5 to 8.

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目标。另外,在本申请各个实施例中的各网元单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件网元单元的形式实现。The units described above as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the embodiments of the present application. In addition, each network element unit in each embodiment of the present application may be integrated into a processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated units may be implemented in the form of hardware or in the form of software network element units.

上述集成的单元如果以软件网元单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端设备,云服务器,或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。If the above-mentioned integrated unit is implemented in the form of a software network element unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the part that essentially contributes to the technical solution of the present application, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a terminal device, a cloud server, or a network device, etc.) to perform all or part of the steps of the above-mentioned methods in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes. The above is only a specific implementation method of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in the present application, and these modifications or replacements should be covered within the protection scope of the present application. Therefore, the protection scope of the present application shall be based on the protection scope of the claims.

Claims (16)

一种编码方法,其特征在于,包括:A coding method, characterized by comprising: 基于第一比特序列确定第二比特序列和第三比特序列,所述第三比特序列包括所述第一比特序列对应的基图中权重高于第一阈值的比特序列;Determine a second bit sequence and a third bit sequence based on the first bit sequence, wherein the third bit sequence includes a bit sequence in a base graph corresponding to the first bit sequence and having a weight higher than a first threshold; 对所述第二比特序列进行极化码编码,得到第四比特序列;Performing polar code encoding on the second bit sequence to obtain a fourth bit sequence; 对所述第三比特序列和所述第四比特序列进行低密度奇偶校验LDPC编码,得到第五比特序列。Low-density parity check (LDPC) encoding is performed on the third bit sequence and the fourth bit sequence to obtain a fifth bit sequence. 根据权利要求1所述的方法,其特征在于,所述基于第一比特序列确定第二比特序列和第三比特序列,包括:The method according to claim 1, characterized in that the determining the second bit sequence and the third bit sequence based on the first bit sequence comprises: 基于所述基图中权重高于所述第一阈值的第一列数确定第一数值;determining a first value based on a first number of columns in the base graph whose weights are higher than the first threshold; 基于所述第一数值和所述第一比特序列对应的提升因子,从所述第一比特序列中确定所述第三比特序列;determining the third bit sequence from the first bit sequence based on the first value and a lifting factor corresponding to the first bit sequence; 基于所述第三比特序列和所述第一比特序列确定所述第二比特序列。The second bit sequence is determined based on the third bit sequence and the first bit sequence. 根据权利要求1或2所述的方法,其特征在于,所述第一列数为大于或等于1的整数。The method according to claim 1 or 2, characterized in that the first column number is an integer greater than or equal to 1. 根据权利要求1-3中任意一项所述的方法,其特征在于,所述基于所述基图中权重高于所述第一阈值的第一列数确定第一数值,包括:The method according to any one of claims 1 to 3, characterized in that determining the first value based on the first number of columns in the base graph whose weights are higher than the first threshold value comprises: 从所述基图中除权重高于所述第一阈值的其它列确定可靠度最高的第二列数;Determine a second column number with the highest reliability from the base graph except for other columns whose weights are higher than the first threshold; 基于所述第一列数和所述第二列数确定所述第一数值。The first value is determined based on the first column number and the second column number. 根据权利要求1-4中任意一项所述的方法,其特征在于,所述对所述第二比特序列进行极化码编码,得到第四比特序列,包括:The method according to any one of claims 1 to 4, characterized in that the step of performing polar code encoding on the second bit sequence to obtain a fourth bit sequence comprises: 对所述第二比特序列进行校验码编码,得到第六比特序列;Performing check code encoding on the second bit sequence to obtain a sixth bit sequence; 对所述第六比特序列进行极化码编码,得到所述第四比特序列。Polar code encoding is performed on the sixth bit sequence to obtain the fourth bit sequence. 根据权利要求1-4中任意一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1 to 4, characterized in that the method further comprises: 对第七比特序列进行校验码编码,得到所述第一比特序列。Perform check code encoding on the seventh bit sequence to obtain the first bit sequence. 根据权利要求1-6中任意一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1 to 6, characterized in that the method further comprises: 基于第一分段长度对初始比特序列进行分段,得到X个比特序列,所述X个比特序列包括所述第一比特序列或所述第七比特序列,所述X为大于1的整数;Segmenting the initial bit sequence based on a first segment length to obtain X bit sequences, where the X bit sequences include the first bit sequence or the seventh bit sequence, and X is an integer greater than 1; 其中,所述第一分段长度基于所述第一数值和所述提升因子确定。The first segment length is determined based on the first value and the boost factor. 根据权利要求7所述的方法,其特征在于,所述第一分段长度基于所述第一数值和所述提升因子确定,包括:The method according to claim 7, characterized in that the first segment length is determined based on the first value and the boost factor, comprising: 所述第一分段长度基于所述第一数值、所述提升因子和第二数值确定;其中,所述第二数值基于所述基图的总列数和所述第一数值确定。The first segment length is determined based on the first value, the lifting factor and a second value; wherein the second value is determined based on the total number of columns of the base graph and the first value. 根据权利要求7或8所述的方法,其特征在于,The method according to claim 7 or 8, characterized in that 所述第一分段长度满足以下条件: The first segment length meets the following conditions: 其中,所述a为所述第一数值,所述b为所述第二数值,所述R为第三数值,所述Z为所述提升因子。Wherein, a is the first value, b is the second value, R is the third value, and Z is the boost factor. 根据权利要求1-9中任意一项所述的方法,其特征在于,所述基于所述第三比特序列和所述第一比特序列确定所述第二比特序列,包括:The method according to any one of claims 1 to 9, characterized in that determining the second bit sequence based on the third bit sequence and the first bit sequence comprises: 基于第二分段长度对所述第一比特序列中除所述第三比特序列的其它比特序列进行分段,得到Y个比特序列,所述Y个比特序列包括所述第二比特序列,所述Y为大于1的整数;Segmenting the other bit sequences in the first bit sequence except the third bit sequence based on the second segment length to obtain Y bit sequences, where the Y bit sequences include the second bit sequence, and Y is an integer greater than 1; 其中,所述第二分段长度基于极化码编码支持的最大长度和第三数值确定。The second segment length is determined based on a maximum length supported by polar code encoding and a third value. 根据权利要求10所述的方法,其特征在于,The method according to claim 10, characterized in that 所述第二分段长度满足以下条件: The second segment length meets the following conditions: 其中,所述Nm为极化码编码支持的最大长度,所述R为所述第三数值。The Nm is a maximum length supported by polar code encoding, and the R is the third value. 一种通信装置,其特征在于,包括用于实现如权利要求1至11中任一项所述方法的单元或模块。A communication device, characterized by comprising a unit or module for implementing the method as claimed in any one of claims 1 to 11. 一种通信装置,其特征在于,所述通信装置包括至少一个处理器;其中,所述至少一个处理器被配置为执行权利要求1至11中任一项所述的方法。A communication device, characterized in that the communication device comprises at least one processor; wherein the at least one processor is configured to execute the method according to any one of claims 1 to 11. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令被执行时,使所述计算机执行如权利要求1至11中任一项所述的方法。A computer-readable storage medium, characterized in that the computer-readable storage medium stores computer instructions, and when the computer instructions are executed, the computer is caused to execute the method as described in any one of claims 1 to 11. 一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序代码,所述计算机程序代码被计算机运行时,使得所述计算机执行如权利要求1至11中任一项所述的方法。A computer program product, characterized in that the computer program product comprises: a computer program code, and when the computer program code is executed by a computer, the computer executes the method as claimed in any one of claims 1 to 11. 一种芯片,其特征在于,所述芯片包括至少一个处理器和接口,所述处理器用于读取并执行存储器中存储的指令,当所述指令被运行时,使得所述芯片执行如权利要求1至11任一项所述的方法。A chip, characterized in that the chip includes at least one processor and an interface, the processor is used to read and execute instructions stored in a memory, and when the instructions are executed, the chip executes the method according to any one of claims 1 to 11.
PCT/CN2025/070360 2024-01-09 2025-01-03 Encoding method and apparatus, and decoding method and apparatus Pending WO2025148789A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202410035730.9 2024-01-09
CN202410035730.9A CN120301437A (en) 2024-01-09 2024-01-09 A coding method, a decoding method and a device

Publications (1)

Publication Number Publication Date
WO2025148789A1 true WO2025148789A1 (en) 2025-07-17

Family

ID=96282636

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2025/070360 Pending WO2025148789A1 (en) 2024-01-09 2025-01-03 Encoding method and apparatus, and decoding method and apparatus

Country Status (2)

Country Link
CN (1) CN120301437A (en)
WO (1) WO2025148789A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150244496A1 (en) * 2012-08-14 2015-08-27 Osaka University Bit coding device, bit decoding device, transmission device, reception device, bit coding method, bit decoding method, transmission method, reception method, and program
CN107370488A (en) * 2016-05-13 2017-11-21 中兴通讯股份有限公司 Error correction/encoding method and device
CN110166167A (en) * 2018-02-14 2019-08-23 华为技术有限公司 Method, the method for decoding, encoding device and the decoding equipment of coding
US20230198664A1 (en) * 2020-05-27 2023-06-22 Sony Group Corporation Information processing device, communication system, and information processing method
CN117240307A (en) * 2023-09-11 2023-12-15 中国联合网络通信集团有限公司 Polarization code encoding method and device, electronic equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150244496A1 (en) * 2012-08-14 2015-08-27 Osaka University Bit coding device, bit decoding device, transmission device, reception device, bit coding method, bit decoding method, transmission method, reception method, and program
CN107370488A (en) * 2016-05-13 2017-11-21 中兴通讯股份有限公司 Error correction/encoding method and device
CN110166167A (en) * 2018-02-14 2019-08-23 华为技术有限公司 Method, the method for decoding, encoding device and the decoding equipment of coding
US20230198664A1 (en) * 2020-05-27 2023-06-22 Sony Group Corporation Information processing device, communication system, and information processing method
CN117240307A (en) * 2023-09-11 2023-12-15 中国联合网络通信集团有限公司 Polarization code encoding method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN120301437A (en) 2025-07-11

Similar Documents

Publication Publication Date Title
US10966118B2 (en) Channel encoding method and communication device
EP4311141A1 (en) Modulation method, demodulation method, and communication device
US11671115B2 (en) High-rate long LDPC codes
WO2018059588A1 (en) Quasi-cyclic ldpc coding and decoding method and apparatus, and ldpc coder and decoder
US20250070800A1 (en) Ldpc encoding and decoding method and related apparatus
US20250088311A1 (en) Encoding method, decoding method, and apparatus
US11115052B2 (en) Information processing method and communications apparatus
CN109314524A (en) System and method for rate matching through heterogeneous cores when using universal polar codes
KR20200031694A (en) Method and device
WO2024055934A1 (en) Encoding method, decoding method, communication device, and computer-readable storage medium
CN108809500A (en) Coding method, device and equipment
US20250350403A1 (en) Ldpc code-based communication method and communication apparatus
US20250070801A1 (en) Encoding method, decoding method, and apparatus
WO2025148789A1 (en) Encoding method and apparatus, and decoding method and apparatus
US12107604B2 (en) Network node and method performed therein for handling received signal
KR102897501B1 (en) Method and apparatus for decoding low-density parity-check code
US20240007222A1 (en) Coding method and apparatus
EP4208947B1 (en) Method and apparatus for improved belief propagation based decoding
CN108574555A (en) Interference randomization method and apparatus
WO2025124037A1 (en) Communication method and communication apparatus based on low-density parity check code
WO2025024981A1 (en) Rate matching method and communication apparatus
CN121077479A (en) Encoding and decoding methods and communication devices
CN120454940A (en) Feedback method and communication device
WO2024221133A1 (en) Decoding method and apparatus
KR20220122559A (en) Method and apparatus for decoding based on low-density parity-check code in communication system

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: 25738320

Country of ref document: EP

Kind code of ref document: A1