WO2021000373A1 - Ldpc编码及译码方法、装置和编译码系统 - Google Patents

Ldpc编码及译码方法、装置和编译码系统 Download PDF

Info

Publication number
WO2021000373A1
WO2021000373A1 PCT/CN2019/098935 CN2019098935W WO2021000373A1 WO 2021000373 A1 WO2021000373 A1 WO 2021000373A1 CN 2019098935 W CN2019098935 W CN 2019098935W WO 2021000373 A1 WO2021000373 A1 WO 2021000373A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
length
encoding
decoding
intercepted
Prior art date
Application number
PCT/CN2019/098935
Other languages
English (en)
French (fr)
Inventor
翟雄飞
黄锦华
李俊
汪富
严仲佳
杨波
Original Assignee
京信通信系统(中国)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 京信通信系统(中国)有限公司 filed Critical 京信通信系统(中国)有限公司
Publication of WO2021000373A1 publication Critical patent/WO2021000373A1/zh

Links

Images

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
    • 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/1105Decoding
    • 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
    • H03M13/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure

Definitions

  • This application relates to the field of wireless communication technology, and in particular to an LDPC encoding and decoding method, device, and encoding and decoding system.
  • 3GPP 3rd Generation Partnership Project
  • 5G 5th-Generation
  • 3GPP 3rd Generation Partnership Project
  • 3GPP has basically determined the formulation of 5G standards, and one of the most important standards is the encoding of long codes. Due to the good performance of Low Density Parity Check Code (LDPC), 3GPP has decided to select it as the standard coding method for 5G long codes, and has formulated a detailed coding process.
  • LDPC Low Density Parity Check Code
  • the low-density parity-check code in the 5G standard mainly includes three key technical points: 1. Determination of coding and decoding parameters; 2. Rate matching and inverse rate matching; 3. Interleaving and de-interleaving.
  • the inventor found that there are at least the following problems in the traditional technology: the process of the above-mentioned technology recorded in the 5G standard is too complicated in practical applications and is not suitable for microwave frequency bands, which easily increases the burden on the digital communication system .
  • an embodiment of the present invention provides an LDPC encoding method, which includes the steps:
  • the length of the data that can be sent after encoding is the length of the encoded data obtained by intercepting the encoded data according to the code rate. The data length that can be retained after encoding;
  • the intercepted data is transmitted to the receiving end; the intercepted data is used to instruct the receiving end to use the LDPC decoding matrix determined by the encoding and decoding parameters to decode the filled data; the filled data is the intercepted data used by the receiving end
  • the filling quantity determined by the Zc value is obtained by filling the blank bits.
  • the intercepting position is the 2*Zc+1 bit of the encoded data
  • the step of obtaining the intercepted data whose length is the length of the data that can be sent after encoding it also includes the following steps:
  • the encoded data is intercepted according to the code rate, and the data length that can be sent after encoding is obtained.
  • the step of intercepting the encoded data according to the code rate to obtain the length of the encoded data that can be sent includes:
  • the method before the step of intercepting the encoded data starting from the intercepting position determined by the Zc value, and obtaining the intercepted data whose length is the length of the encoded data can be sent, the method further includes the following steps:
  • coding and decoding parameters include the basic picture number, the maximum code block length, the number of code blocks, the code block length after division, the Kb value, the code block length after filling, the Zc value and Data length can be sent after encoding;
  • the LDPC encoding matrix determined by the encoding and decoding parameters is used to encode the original data to obtain the encoded data.
  • an embodiment of the present invention also provides an LDPC decoding method, including the steps:
  • the intercepted data is the encoded data.
  • the intercepted data starts from the intercepting position determined by the Zc value at the sending end, and the intercepted length is the data length that can be sent after encoding; the length of the encoded data can be sent The data length obtained by intercepting the encoded data according to the code rate, and the data length that the encoded data can retain;
  • the LDPC decoding matrix determined by the coding and decoding parameters is used to complete the decoding processing of the filled data.
  • the padding quantity determined by the Zc value is 2*Zc blank bits
  • the steps to obtain the padding data include:
  • An LDPC encoding device including:
  • the rate matching module is used to intercept the encoded data from the intercept position determined by the Zc value, and obtain the intercepted data whose length is the length of the data that can be sent after encoding; the length of the data that can be sent after encoding is the length of the encoded data according to the code rate The data length obtained by intercepting the data and the data can be retained after encoding;
  • the sending module is used to transmit the intercepted data to the receiving end; the intercepted data is used to instruct the receiving end to use the LDPC decoding matrix determined by the encoding and decoding parameters to decode the filled data; the filled data is the intercepted data
  • the receiving end uses the filling quantity determined by the Zc value to fill in the blank bits.
  • An LDPC decoding device including:
  • the receiving module is used to receive the intercepted data transmitted by the sending end;
  • the intercepted data is the encoded data from the intercepting position determined by the Zc value by the sending end, and the intercepted length is the data length that can be sent after encoding; after encoding
  • the data length that can be sent is the data length obtained by intercepting the encoded data according to the code rate, and the data length that can be retained after the encoded data;
  • the inverse rate matching module is used to use the padding quantity determined by the Zc value to fill the intercepted data with blank bits to obtain the padding data;
  • the decoding module is used to use the LDPC decoding matrix determined by the coding and decoding parameters to complete the decoding processing of the filled data.
  • a sender the sender is used to perform any of the steps of the LDPC encoding method implemented from the perspective of the sender.
  • the transmitting end is an encoder
  • a receiving end the receiving end is used to perform any of the steps of the LDPC decoding method implemented from the perspective of the receiving end.
  • the receiving end is a decoder.
  • An LDPC encoding and decoding system including a transmitter and a receiver;
  • the sending end is used to execute any of the steps of the LDPC encoding method implemented from the perspective of the sending end;
  • the receiving end is used to perform any of the steps of the LDPC decoding method implemented from the receiving end.
  • the transmitting end includes a macro base station, a micro base station, a pico base station, and a pico base station.
  • the transmitting end uses a simplified rate matching method to intercept the encoded data according to the code rate (simplified puncturing method) and sends it to the receiving end, which removes the original interleaving and retransmission functions and simplifies the encoding process.
  • the decoding process is performed according to the encoding and decoding parameters.
  • This application simplifies the process of low-density parity-check codes in the 5G standard according to the requirements of the digital communication system and the characteristics of the microwave channel. While ensuring system performance, the implementation complexity is reduced, and the resource occupancy rate of the chip is significantly reduced.
  • Figure 1 is a first schematic flowchart of an LDPC encoding method in an embodiment
  • Figure 2 is a second schematic flowchart of an LDPC encoding method in an embodiment
  • Figure 3 is a third schematic flowchart of an LDPC encoding method in an embodiment
  • Figure 4 is a first schematic flowchart of an LDPC decoding method in an embodiment
  • Figure 5 is a second schematic flowchart of an LDPC decoding method in an embodiment
  • Figure 6 is a structural block diagram of an LDPC encoding device in an embodiment
  • Figure 7 is a structural block diagram of an LDPC decoding device in an embodiment
  • Figure 8 is a schematic diagram of a specific process of an LDPC encoding and decoding system in an embodiment.
  • the LDPC encoding and decoding methods provided in this application are suitable for wireless communication systems, especially for the encoding and decoding parts of microwave communication systems; specifically, they can be applied to digital communication systems and microwave systems.
  • an LDPC encoding method is provided.
  • the method is applied to the transmitting end as an example for description, including the following steps:
  • Step 102 starting from the intercepting position determined by the Zc value, intercept the encoded data, and obtain the intercepted data whose length is the length of the data that can be sent after encoding;
  • the data length that can be sent after encoding is the data length obtained by intercepting the encoded data according to the code rate and can be retained by the encoded data.
  • the Zc value in this application is a parameter representing the encoding and decoding matrix, and the Kb value needs to be determined before the Zc value can be selected.
  • the sending end can use the coding and decoding parameter determination process in the 5G standard according to the data length (that is, the data length of the original data) and the bit rate to be sent, and then determine the coding and decoding parameters at this time.
  • the encoding and decoding parameters can include Kb and Zc values.
  • the sending end may perform rate matching on the encoded data according to the code rate and send the data.
  • this application proposes to intercept the encoded data according to the Zc value and the length of the encoded data.
  • the interception position is the 2*Zc+1 bit of the encoded data; that is, this application proposes to intercept a piece of data from the 2*Zc+1 bit of the encoded data to make the length equal to the encoded data Then the data length can be sent to complete the rate matching.
  • the process of the sender performing rate matching according to the Zc value and the encoded data length may include:
  • the sending end can send data length after determining the Zc value and encoding
  • the Zc value is 240, and the length of the data that can be sent after encoding is 4800 bits. Therefore, starting from the 481th bit of the encoded data, 4800 bits are intercepted as the data to be sent.
  • the length of the data that can be sent after encoding means the data length that can be retained by intercepting the encoded data according to the code rate.
  • the quotient of the data length of the original data and the code rate can be obtained, and the quotient can be rounded up to obtain the data length that can be sent after encoding.
  • This process can be implemented by the sending end in the process of determining the encoding and decoding parameters. Specifically, the parameter (that is, the length of the data that can be sent after encoding) is equal to the required sending data length divided by the code rate, and rounded up.
  • the rate matching process of the low-density parity-check code in the traditional 5G standard is to puncture the encoded data according to the code rate and retransmission version. And in order to combat fast fading channels, the coded data must be interleaved. Among them, after the original data is encoded with a low-density parity check code, the generated redundant check data is far more than the data that needs to be sent. In order to match the code rate, some redundant check data needs to be discarded, that is, puncturing. . However, the above process is too complicated and burdens a digital communication system with relatively simple functions. At the same time, interleaving is to scramble the encoded data regularly, but in the microwave frequency band (microwave channels are different from mobile channels), interleaving and de-interleaving are not very useful, but increase the burden on the digital communication system.
  • LDPC encoding and decoding includes filling blank bits, encoding, puncturing, interleaving, retransmission and other processes, which are too complicated and not suitable for simple communication systems; for this reason, this application proposes a simplified process.
  • the encoder that is, the sending end
  • it can only include the three steps of filling blank bits, encoding and puncturing, and the puncturing method is simplified, starting from the 2*Zc+1 bit of the encoded data The number of bits that need to be sent is sufficient.
  • the above simplified procedure can be adapted to the characteristics that the microwave channel is a static channel and does not appear fast fading. Accordingly, the interleaving part of the low-density parity check code in the 5G standard is eliminated, which simplifies the coding procedure and reduces the implementation complexity.
  • Step 104 Transmit the intercepted data to the receiving end; the intercepted data is used to instruct the receiving end to use the LDPC decoding matrix determined by the encoding and decoding parameters to decode the filled data; the filled data is the intercepted data received
  • the end adopts the filling quantity determined by the Zc value and performs blank bit filling.
  • the sending end of this application transmits the intercepted data to the receiving end, and the receiving end performs corresponding decoding processing.
  • the transmitting end uses a simplified rate matching method to intercept the encoded data according to the code rate (simplified puncturing method) and sends it to the receiving end, removing the original interleaving and retransmission functions, simplifying the encoding This process reduces the complexity of the system while ensuring high decoding performance.
  • an LDPC encoding method is provided, and the method is applied to the transmitting end as an example for description, including the following steps:
  • Step S202 Determine coding and decoding parameters according to the data length and code rate of the original data;
  • the coding and decoding parameters include the basic picture number, the maximum code block length, the number of code blocks, the code block length after division, the Kb value, the code block length after filling, Zc value and length of data that can be sent after encoding;
  • Step S204 using the LDPC encoding matrix determined by the encoding and decoding parameters to encode the original data to obtain encoded data;
  • Step S206 starting from the intercepting position determined by the Zc value, intercept the encoded data to obtain the intercepted data whose length is the length of the data that can be sent after encoding; the length of the data that can be sent after encoding is to intercept the encoded data according to the code rate The obtained data length that can be retained after encoding;
  • Step S208 Transmit the intercepted data to the receiving end; the intercepted data is used to instruct the receiving end to use the LDPC decoding matrix determined by the coding and decoding parameters to decode the filled data; the filled data is the intercepted data received
  • the end adopts the filling quantity determined by the Zc value and performs blank bit filling.
  • the encoding and decoding parameters in this application can be determined according to the data size and code rate to be sent.
  • this application may adopt the detailed parameter determination process in the 5G standard, so that the determined parameters can ensure the performance of the low-density parity-check code.
  • the main idea of the low-density parity-check code in the traditional 5G standard is to determine the basic picture number, code block size, and code block size of the low-density parity-check code according to the data size and code rate to be sent. Zc and other parameters, divide the data into corresponding code block sizes, use the coding matrix determined by the above parameters to encode, and then puncture the encoded data according to the code rate and retransmission version, that is, rate matching. In order to combat fast fading channels, the coded data must be interleaved. For the decoding of low-density parity-check codes, inverse interleaving, inverse rate matching and decoding according to the decoding matrix are required.
  • the above-mentioned traditional 5G standards also have a set of detailed procedures for rate matching and inverse rate matching (after the original data is encoded with a low-density parity check code, the generated redundant check data is far more than the data that needs to be sent. To match the code rate, you need to discard some redundant check data, that is, puncturing. When decoding, you need to use fixed data to make up the discarded redundant check data, which is inverse rate matching), but It is too complicated and burdens a relatively simple digital communication system.
  • the interleaving and de-interleaving in the traditional technology interleaving is to process the coded data regularly, and de-interleaving is to restore the scrambled data), mainly to combat fast fading channels.
  • the channels are mostly static channels, and the interleaving and de-interleaving are not very useful, but increase the burden of the digital communication system.
  • this application provides an LDPC encoding and decoding method.
  • the sending end According to the data size and code rate to be sent, various coding and decoding parameters are determined, and the data is coded.
  • a simplified rate matching method is used to intercept and send the encoded data.
  • the receiving end performs inverse rate matching on the received data according to the simplified inverse rate matching method, and performs decoding processing according to the encoding and decoding parameters.
  • this application simplifies the low-density parity-check code process of the 5G standard, which reduces the complexity of implementation while ensuring system performance. Specifically, this application simplifies the process of rate matching in the 5G standard, reduces the complexity of implementation, reduces the burden of system calculations, and improves system performance; because the microwave channel is different from the mobile channel, it is a static channel. There is a fast decline. In this application, based on the characteristics of the microwave channel, the interleaving part of the low-density parity-check code in the 5G standard is deleted, which simplifies the process of encoding and decoding, and reduces the complexity of implementation.
  • the sender can use the compilation in the 5G standard according to the data length (that is, the data length of the original data) and the code rate to be sent.
  • Code parameter determination process determine the encoding and decoding parameters at this time.
  • the coding and decoding parameters that need to be determined may include: basic picture number, maximum code block length, number of code blocks, code block length after segmentation, Kb value, Zc value, code block length after padding, and data length that can be sent after encoding;
  • the basic drawing number indicates which major category of encoding and decoding matrix is selected. There are two major categories, the basic drawing 1 and the basic drawing 2.
  • the code cutting rate is lower than 0.67, or the code rate is lower than 0.67, use basic diagram 2; otherwise, use basic diagram 1;
  • the maximum code block length represents the maximum length of each code block under the current basic picture number.
  • the maximum code block length of basic picture 1 is 8448 bits, and the maximum code block length of basic picture 2 is 3840 bits;
  • the number of code blocks indicates how many code blocks the original data needs to be divided into for encoding, which is obtained by dividing the data length to be sent by the maximum code block length, and rounding up the result;
  • the length of the code block after division indicates the length of the original data contained in each code block after the original data is divided by the code block
  • the Kb value represents a parameter of the encoding and decoding matrix. If the basic image 1 is selected, the Kb value is 22. If the basic image 2 is selected, then the code block length after segmentation needs to be judged. If the length of the code block after division is greater than 640 bits, the value of Kb is 10, otherwise, if the length of the code block after division is greater than 560 bits, the value of Kb is 9, otherwise if the length of the code block after division is greater than 192 bits, the value of Kb is 8. Otherwise, the Kb value is 6;
  • the Zc value is also a parameter that represents the encoding and decoding matrix, and the Kb value needs to be determined before the Zc value can be selected.
  • the selection method is to find a Zc value from Table 1 below, so that the product of Kb and Zc is greater than or equal to the code block length after division;
  • the length of the filler code block indicates that in order to meet the requirement of the dimension of the coding matrix, a certain blank bit filling (ie, blank bit filling) is required for the divided code block. If the basic image 1 is selected, the length of the filler code block is 22 times Zc. If you choose the basic figure 2, the length of the padding code block is 10 times Zc;
  • the length of the data that can be sent after encoding indicates the length of the data that can be retained by intercepting the encoded data according to the code rate. This parameter is equal to the required transmission data length divided by the code rate, and rounded up.
  • the base station (that is, the transmitting end) has 2400 bits to be sent, the code rate is 1/2, and the parameter calculation results are as follows:
  • the maximum code block length is 3840 bits
  • the number of code blocks is 1 code block
  • the length of the code block after division is 2400 bits
  • Kb value is 10
  • the Zc value is 240;
  • the length of the padding code block is 2400, that is, no padding is required
  • the data length that can be sent after encoding is 4800 bits.
  • the sender can determine which low-density parity-check code matrix (ie LDPC encoding matrix) in the 5G standard to use for encoding, and complete the first step of the encoding work (that is, get the encoded data).
  • low-density parity-check code matrix ie LDPC encoding matrix
  • the sender can rate-match the encoded data according to the code rate and send the data;
  • this application proposes to intercept the encoded data according to the Zc value in the above steps and the length of the data that can be sent after encoding (ie, a simplified puncturing method).
  • a piece of data is intercepted so that its length is equal to the length of the encoded data to complete the rate matching.
  • send the intercepted data that is, the intercepted data.
  • the receiving end performs inverse rate matching and decoding on the received data (that is, the intercepted data) according to the code rate and encoding and decoding parameters.
  • This application provides a simplified LDPC encoding method, which is based on the low-density parity check code in the 5G standard, removes the original interleaving and retransmission functions, simplifies the encoding process, and reduces the system complexity.
  • This application significantly reduces the difficulty of system implementation and significantly reduces the resource occupancy rate of the chip.
  • an LDPC decoding method is provided.
  • the method is applied to the receiving end as an example for description, including the following steps:
  • Step S402 receiving the intercepted data transmitted by the sending end
  • the intercepted data is the encoded data starting from the intercepting position determined by the Zc value at the transmitting end, and the intercepted length is the data length that can be sent after encoding; the encoded data length is based on the code rate. The length of the data that can be retained after the code is intercepted;
  • Step S404 using the padding quantity determined by the Zc value to fill the intercepted data with blank bits to obtain the padding data
  • the receiving end can perform inverse rate matching on the received data according to the code rate and encoding and decoding parameters; wherein, the filling number determined by the Zc value proposed in this application is 2*Zc blank bits;
  • the step of using the padding quantity determined by the Zc value to fill blank bits on the intercepted data to obtain the padding data includes:
  • step S406 the LDPC decoding matrix determined by the coding and decoding parameters is used to complete the decoding processing of the filled data.
  • this application proposes to include only two steps of filling blank bits and decoding. First, remove the previous steps. Fill in the 2*Zc blank bits of the 2*Zc, and then fill in several blank bits after the original data according to the requirements of the decoding core, and then directly decode.
  • the method for the receiving end to perform inverse rate matching and decoding on the received data according to the code rate and encoding and decoding parameters may include:
  • the receiving rate is complemented according to the encoding and decoding parameters, that is, inverse rate matching.
  • the Zc value is 240
  • a number of blank bits need to be added after the received data (the number is variable and determined by the decoding core).
  • this application provides a simplified LDPC decoding method, which is based on the low-density parity check code in the 5G standard, removes the original interleaving and retransmission functions, simplifies the encoding process, and reduces the system complexity. At the same time, higher decoding performance can be guaranteed.
  • This application can significantly reduce the difficulty of system implementation and significantly reduce the resource occupancy rate of the chip.
  • steps in the flowcharts of FIGS. 1-5 are displayed in sequence as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless specifically stated in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least some of the steps in Figures 1-5 may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. These sub-steps or stages The execution order of is not necessarily performed sequentially, but may be performed alternately or alternately with at least a part of other steps or sub-steps or stages of other steps.
  • an LDPC encoding device is provided, and the device is applied to the transmitting end as an example for description, including:
  • the rate matching module 610 is used to intercept the encoded data from the intercept position determined by the Zc value, and obtain the intercepted data whose length is the length of the data that can be sent after encoding; the length of the data that can be sent after encoding is the encoding according to the code rate The length of the data that can be retained by the encoded data after intercepting the data;
  • the sending module 620 is used to transmit the intercepted data to the receiving end; the intercepted data is used to instruct the receiving end to use the LDPC decoding matrix determined by the encoding and decoding parameters to decode the filled data; the filled data is the intercepted data
  • the data is obtained by filling the blank bits with the filling quantity determined by the Zc value at the receiving end.
  • it further includes:
  • the encoding and decoding parameter determination module is used to determine the encoding and decoding parameters according to the data length and code rate of the original data; the encoding and decoding parameters include the basic picture number, the maximum code block length, the number of code blocks, the code block length after division, the Kb value, and the padding After the code block length, Zc value and the length of the data that can be sent after encoding;
  • the encoding module is used to encode the original data by using the LDPC encoding matrix determined by the encoding and decoding parameters to obtain the encoded data.
  • the intercepting position is the 2*Zc+1 bit of the encoded data
  • the encoding and decoding parameter determination module is also used to intercept the encoded data according to the code rate to obtain the length of the encoded data.
  • the encoding and decoding parameter determination module is used to obtain the quotient of the data length of the original data and the code rate, and round up the quotient to obtain the data length that can be sent after encoding.
  • Each module in the above-mentioned LDPC encoding device can be implemented in whole or in part by software, hardware and a combination thereof.
  • the above-mentioned modules can be embedded in the form of hardware or independent of the processor in the computer equipment (for example, the sending end), or can be stored in the memory of the computer equipment in the form of software, so that the processor can call and execute the corresponding corresponding modules. Operation.
  • an LDPC decoding device is provided, and the device is applied to the receiving end as an example for description, including:
  • the receiving module 710 is used to receive the intercepted data transmitted by the sending end;
  • the intercepted data is the encoded data starting from the intercepting position determined by the Zc value by the sending end, and the intercepted length is the data length that can be sent after encoding;
  • the data length that can be sent later is the data length obtained by intercepting the encoded data according to the code rate, and the data length that the encoded data can retain;
  • the inverse rate matching module 720 is configured to use the padding quantity determined by the Zc value to fill the intercepted data with blank bits to obtain the padding data;
  • the decoding module 730 is configured to use the LDPC decoding matrix determined by the encoding and decoding parameters to complete the decoding processing of the filled data.
  • Each module in the above-mentioned LDPC decoding device can be implemented in whole or in part by software, hardware and a combination thereof.
  • the above modules can be embedded in the form of hardware or independent of the processor in the computer equipment (for example, the receiving end), or can be stored in the memory of the computer equipment in the form of software, so that the processor can call and execute the corresponding modules of the above. Operation.
  • this application provides a sending end, which is used to execute any of the steps of the LDPC encoding method implemented from the perspective of the sending end.
  • the transmitting end is an encoder.
  • this application provides a receiving end, which is used to execute any of the steps of the LDPC decoding method implemented from the perspective of the receiving end.
  • the receiving end is a decoder.
  • the present application provides an LDPC encoding and decoding system, including a sending end and a receiving end;
  • the sending end is used to execute any of the steps of the LDPC encoding method implemented from the perspective of the sending end;
  • the receiving end is used to perform any of the steps of the LDPC decoding method implemented from the receiving end.
  • the sending end includes a macro base station, a micro base station, a pico base station, and a pico base station.
  • the specific flow diagram of the transmitting end and the receiving end in the above-mentioned LDPC encoding and decoding system wherein the encoding process of the transmitting end can be used in all transmitting devices such as macro base stations, micro base stations, pico base stations, pico base stations, etc. .
  • the transmitting end can be an encoder
  • the receiving end can be a decoder
  • LDPC encoding and decoding includes filling of empty bits, encoding, puncturing, interleaving, retransmission, etc. , Is too complicated and not suitable for simple communication systems
  • this application proposes a simple LDPC encoding and decoding method based on the 5G standard.
  • On the encoder it only includes the three steps of filling empty bits, encoding and puncturing.
  • the puncturing method is also simplified, starting from the 2*Zc+1 bit of the encoded data, take the number of bits that need to be sent. .
  • the decoder it only includes two steps: filling empty bits and decoding. First, add the 2*Zc bits that were removed before, and then add several empty bits after the original data according to the requirements of the decoding kernel. , And send it directly to the decoder.
  • the structure shown in the LDPC encoding and decoding system is only a description of part of the structure related to the solution of this application, and does not constitute a limitation on the computer equipment to which the solution of this application is applied.
  • the specific computer The device may include more or fewer parts than shown in the figures, or combine certain parts, or have a different arrangement of parts.
  • the present application provides a computer-readable storage medium on which a computer program is stored, and the computer program is executed by a processor to implement the steps of any one of the above methods.
  • Non-volatile memory may include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
  • Volatile memory may include random access memory (RAM) or external cache memory.
  • RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain Channel (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请涉及一种LDPC编码及译码方法、装置和编译码系统;其中,LDPC编码方法,包括步骤:从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;将截取后数据传输给接收端;截取后数据用于指示接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;填充后数据为截取后数据经接收端采用由Zc值确定的填充数量、进行空白比特填充得到。本申请根据数字通信系统需求和微波信道特性,对5G标准中低密度奇偶校验码流程进行简化处理,在保证系统性能的同时,降低了实施的复杂度,显著降低芯片的资源占用率。

Description

LDPC编码及译码方法、装置和编译码系统 技术领域
本申请涉及无线通信技术领域,特别是涉及一种LDPC编码及译码方法、装置和编译码系统。
背景技术
为了进一步提高现代数字通信系统的传输速率,早在十几年前,各国研究人员就开始了5G(5th-Generation)通信技术的研究。而在近几年内,研究人员加快了研究5G的步伐。3GPP(3rd Generation Partnership Project)对5G标准的制定也基本确定下来,其中最重要的一个标准就是关于长码的编码方式。由于低密度奇偶校验码(LDPC,Low Density Parity Check Code)良好的性能,3GPP确定选用其作为5G长码的标准编码方式,并对编码流程进行了详细的制定。
5G标准中的低密度奇偶校验码,主要包含三个关键技术点:1、编译码参数确定;2、速率匹配和反速率匹配;3、交织和反交织。在实现过程中,发明人发现传统技术中至少存在如下问题:5G标准中记录的有关上述技术的流程,在实际应用中出现过于复杂、不适用于微波频段的问题,易增加数字通信系统的负担。
发明内容
基于此,有必要针对上述技术问题,提供一种LDPC编码及译码方法、装置和编译码系统。
为了实现上述目的,一方面,本发明实施例提供了一种LDPC编码方法,包括步骤:
从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
将截取后数据传输给接收端;截取后数据用于指示接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;填充后数据为截取后数据经接收端采用由Zc值确定的填充数量、进行空白比特填充得到。
在其中一个实施例中,截取位置为编码后数据的第2*Zc+1位;
获取长度为编码后能发送数据长度的截取后数据的步骤之前,还包括步骤:
根据码率对编码后数据进行截取,得到编码后能发送数据长度。
在其中一个实施例中,根据码率对编码后数据进行截取,得到编码后能发送数据长度的步骤包括:
获取原始数据的数据长度与码率的商,并对商进行向上取整,得到编码后能发送数据长度。
在其中一个实施例中,在从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据的步骤之前,还包括步骤:
根据原始数据的数据长度和码率,确定编译码参数;编译码参数包括基础图号、最大码块长度、码块数目、分割后码块长度、Kb值、填充后码块长度、Zc值和编码后能发送数据长度;
采用由编译码参数确定的LDPC编码矩阵,对原始数据进行编码,得到编码后数据。
另一方面,本发明实施例还提供了一种LDPC译码方法,包括步骤:
接收发送端传输的截取后数据;截取后数据为编码后数据经发送端从由Zc值确定的截取位置开始、截取得到的长度为编码后能发送数据长度的数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
采用由Zc值确定的填充数量、对截取后数据进行空白比特填充,得到填充后数据;
采用由编译码参数确定的LDPC译码矩阵,完成对填充后数据的译码处理。
在其中一个实施例中,由Zc值确定的填充数量为2*Zc个空白比特;
采用由Zc值确定的填充数量、对截取后数据进行空白比特填充,得到填充后数据的步骤包括:
在截取后数据的前面补上2*Zc个空白比特,并在截取后数据的后面补上预设数量的空白比特,得到填充后数据;预设数量为根据译码内核的要求确定。
一种LDPC编码装置,包括:
速率匹配模块,用于从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
发送模块,用于将截取后数据传输给接收端;截取后数据用于指示接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;填充后数据为截取后数据经接收端采用由Zc值确定的填充数量、进行空白比特填充得到。
一种LDPC译码装置,包括:
接收模块,用于接收发送端传输的截取后数据;截取后数据为编码后数据经发送端从由Zc值确定的截取位置开始、截取得到的长度为编码后能发送数据长度的数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
反速率匹配模块,用于采用由Zc值确定的填充数量、对截取后数据进行空白比特填充,得到填充后数据;
译码模块,用于采用由编译码参数确定的LDPC译码矩阵,完成对填充后数据的译码处理。
一种发送端,发送端用于执行上述任一项从发送端角度实施的LDPC编码方法的步骤。
在其中一个实施例中,发送端为编码器。
一种接收端,接收端用于执行上述任一项从接收端角度实施的LDPC译码方法的步骤。
在其中一个实施例中,接收端为译码器。
一种LDPC编译码系统,包括发送端和接收端;
发送端用于执行上述任一项从发送端角度实施的LDPC编码方法的步骤;
接收端用于执行上述任一项从接收端角度实施的LDPC译码方法的步骤。
在其中一个实施例中,发送端包括宏基站,微基站,微微基站和皮基站。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一项的方法的步骤。
上述技术方案中的一个技术方案具有如下优点和有益效果:
本申请中发送端根据码率,采用简化的速率匹配方法对编码后数据进行截取(简化的打孔方式)并发送给接收端,去除了原本的交织和重传功能,简化了编码的流程,进而降低系统复杂度,同时还能保证较高的译码性能;而接收端可根据本申请提出的简化反速率匹配方法(仅需填充空白比特),对接收到的数据进行反速率匹配,并根据编译码参数进行译码处理。本申请根据数字通信系统需求和微波信道特性,对5G标准中低密度奇偶校验码流程进行简化处理,在保证系统性能的同时,降低了实施的复杂度,显著降低芯片的资源占用率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为一个实施例中LDPC编码方法的第一示意性流程图;
图2为一个实施例中LDPC编码方法的第二示意性流程图;
图3为一个实施例中LDPC编码方法的第三示意性流程图;
图4为一个实施例中LDPC译码方法的第一示意性流程图;
图5为一个实施例中LDPC译码方法的第二示意性流程图;
图6为一个实施例中LDPC编码装置的结构框图;
图7为一个实施例中LDPC译码装置的结构框图;
图8为一个实施例中LDPC编译码系统的具体流程示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的LDPC编码及译码方法,适用于无线通信系统中,尤其适用于微波通信系统的编译码部分;具体地,可以应用于数字通信系统及微波系统。
在一个实施例中,如图1所示,提供了一种LDPC编码方法,以该方法应用于发送端为例进行说明,包括以下步骤:
步骤102,从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;
其中,编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度。本申请中的Zc值是表示编译码矩阵的参数,需要先确定Kb值后才能对Zc值进行选取。
具体地,发送端可根据所需要发送的数据长度(即原始数据的数据长度)和码率,利用5G标准中的编译码参数确定流程,进而确定此时的编译码参数。而该编译码参数可以包含Kb值及Zc值。
进一步的,发送端可根据码率对编码后数据进行速率匹配(Rate matching)并发送数据。
具体而言,针对上述速率匹配的过程,本申请提出根据Zc值和编码后能发送数据长度,对编码后的数据进行截取。在一个具体的示例中,截取位置为编码后数据的第2*Zc+1位;即本申请提出从编码后的数据的第2*Zc+1位开始,截取一段数据,使其长度等于编码后能发送数据长度,完成速率匹配。
在一个具体的实施例中,发送端根据Zc值和编码后能发送数据长度进行速率匹配的过程可以包括:
1)发送端确定Zc值和编码后能发送数据长度;
2)从编码后数据的第2*Zc+1个比特开始,截取长度为编码后能发送数据长度的数据进行发送。
例如:
Zc值为240,编码后能发送数据长度为4800个比特,因此从编码后数据的第481个比特开始,截取4800个比特作为需要发送的数据。
需要说明的是,编码后能发送数据长度表示根据码率、对编码后数据进行截取,所能保留下来的数据长度。在一个具体的示例中,可获取原始数据的数据长度与码率的商,并对商进行向上取整,进而得到编码后能发送数据长度。此过程可以由发送端在编译码参数的确定过程中实现,具体的,该参数(即编码后能发送数据长度)等于所需发送数据长度除以码率,并向上取整。
传统5G标准中的低密度奇偶校验码,其速率匹配过程为根据码率和重传版本对编码后的数据进行打孔。且为了对抗快衰落信道,还要对编码后的数据进行交织处理。其中,原始数据在经过低密度奇偶校验码编码后,产生的冗余校验数据远多于所需要发送的数据,为了匹配上码率,需要舍弃一些冗余校验数据,也就是打孔。然而上述流程,过于复杂,对于功能相对简单的数字通信系统来说负担较大。同时,交织就是将编码后的数据进行有规律的打乱处理,但在微波频段中(微波信道不同于移动信道),交织和反交织用处不大,反而增加了数字通信系统的负担。
即在传统5G标准中,LDPC编译码包括了填充空白比特、编码、打孔、交织、重传等等流程,过于复杂,对于简单的通信系统并不适用;为此,本申请提出简化流程,在编码器(即发送端)上,可仅包括填充空白比特,编码和打孔三个步骤,且具体对打孔方式进行了简化,从编码后数据的第2*Zc+1个比特开始取所需要发送的比特数即可。
上述简化流程能够适应于微波信道属于静态信道、不会出现快衰落的特点,相应剔除了5G标准中低密度奇偶校验码的交织部分,简化了编码的流程,进而降低了实施的复杂度。
步骤104,将截取后数据传输给接收端;截取后数据用于指示接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;填充后数据为截取后数据经接收端采用由Zc值确定的填充数量、进行空白比特填充得到。
具体地,本申请发送端将截取后的数据传输给接收端,由接收端进行相应的译码处理即可。
上述LDPC编码方法中,发送端根据码率,采用简化的速率匹配方法对编码后数据进行 截取(简化的打孔方式)并发送给接收端,去除了原本的交织和重传功能,简化了编码的流程,进而降低系统复杂度,同时还能保证较高的译码性能。
在一个实施例中,如图2所示,提供了一种LDPC编码方法,以该方法应用于发送端为例进行说明,包括以下步骤:
步骤S202,根据原始数据的数据长度和码率,确定编译码参数;编译码参数包括基础图号、最大码块长度、码块数目、分割后码块长度、Kb值、填充后码块长度、Zc值和编码后能发送数据长度;
步骤S204,采用由编译码参数确定的LDPC编码矩阵,对原始数据进行编码,得到编码后数据;
步骤S206,从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
步骤S208,将截取后数据传输给接收端;截取后数据用于指示接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;填充后数据为截取后数据经接收端采用由Zc值确定的填充数量、进行空白比特填充得到。
具体而言,本申请中编译码参数确定,可根据所需要发送的数据大小和码率来确定的。在一个具体的示例中,本申请可采用5G标准中的详细参数确定流程,进而使得所确定的参数能够保证低密度奇偶校验码的性能。
需要说明的是,传统5G标准中的低密度奇偶校验码,其主要思想是根据所需要发送的数据大小和码率,确定低密度奇偶校验码所选用的基础图号、码块大小和Zc等等参数,将数据切分为相应的码块大小,使用由以上参数确定的编码矩阵进行编码,然后根据码率和重传版本对编码后的数据进行打孔,也就是速率匹配。为了对抗快衰落信道,还要对编码后的数据进行交织处理。而对于低密度奇偶校验码的译码,则需要进行反交织、反速率匹配和根据译码矩阵进行译码。
然而上述传统5G标准中关于速率匹配和反速率匹配也有一套详细的流程(原始数据在经过低密度奇偶校验码编码后,产生的冗余校验数据远多于所需要发送的数据,为了匹配上码率,需要舍弃一些冗余校验数据,也就是打孔。而在译码的时候,需要使用固定的数据将舍弃的冗余校验数据补回来,这就是反速率匹配),但是过于复杂,对于功能相对简单的数字通信系统来说负担较大。此外,传统技术中的交织与反交织(交织就是将编码后的数据进 行有规律的打乱处理,而反交织就是将打乱后的数据恢复),主要是为了对抗快衰落信道。但在微波频段中,信道多为静态信道,交织和反交织用处不大,反而增加了数字通信系统的负担。
鉴于上述5G标准中低密度奇偶校验码在编译码参数确定、速率匹配和反速率匹配以及交织和反交织上存在的问题,本申请提供了一种LDPC编码及译码方法,首先,发送端根据所需发送的数据大小和码率,确定各项编译码参数,对数据进行编码。接着,根据传输速率,利用简化速率匹配方法,对编码后的数据进行截取并发送。最后由接收端根据简化反速率匹配方法,对接收到的数据进行反速率匹配,并根据编译码参数进行译码处理。
本申请根据数字通信系统需求和微波信道特性,对5G标准中低密度奇偶校验码流程进行简化处理,在保证了系统性能的同时,降低了实施的复杂度。具体的,本申请简化了5G标准中关于速率匹配的流程,降低了实施的复杂度,从而减轻了系统运算的负担,提高了系统性能;由于微波信道不同于移动信道,属于静态信道,不会出现快衰落。本申请根据微波信道的特性,删除了5G标准中低密度奇偶校验码的交织部分,简化了编译码的流程,降低了实施的复杂度。
下面结合一个具体的实例说明本申请中发送端的LDPC编码过程,如图3所示,发送端可根据所需要发送的数据长度(即原始数据的数据长度)和码率,利用5G标准中的编译码参数确定流程,确定此时的编译码参数。
其中,所需确定的编译码参数可以包括:基础图号、最大码块长度、码块数目,分割后码块长度、Kb值、Zc值、填充后码块长度、编码后能发送数据长度;
具体地,基础图号表示选用哪一个大类的编译码矩阵,共有两大类,基础图1和基础图2。当所需发送数据长度小于等于292个比特,或者所需发送数据长度小于等于3824个比特切码率低于0.67,或者码率低于0.67,选用基础图2,否则选用基础图1;
最大码块长度表示在当前基础图号下,每个码块的最大长度,基础图1的最大码块长度为8448个比特,基础图2的最大码块长度为3840个比特;
码块数目表示原始数据需要分割为多少个码块进行编码,由需要发送的数据长度除以最大码块长度,并对结果向上取整得到;
分割后码块长度表示原始数据经过码块分割后,每个码块所包含的原始数据的长度;
Kb值为表示编译码矩阵的一个参数,如果选择基础图1,那么Kb值为22,如果选择基础图2,那么需要对分割后码块长度进行判断。如果分割后码块长度大于640个比特,Kb值为10,否则如果分割后码块长度大于560个比特,Kb值为9,否则如果分割后码块长度 大于192个比特,Kb值为8,否则Kb值为6;
Zc值也是一个表示编译码矩阵的参数,需要先确定Kb值后才能对Zc值进行选取。选取方法是从下表表1中找到一个Zc值,使其刚好满足Kb与Zc的乘积大于等于分割后码块长度;
表1
   
0 2,4,8,16,32,64,128,256
1 3,6,12,24,48,96,192,384
2 5,10,20,40,80,160,320
3 7,14,28,56,112,224
4 9,18,36,72,144,288
5 11,22,44,88,176,352
6 13,26,52,104,208
7 15,30,60,120,240
填充码块长度表示为了满足编码矩阵维度的要求,需要对分割后的码块进行一定的空白比特填充(即填充空白比特)。如果选择了基础图1,填充码块长度为22乘以Zc。如果选择了基础图2,填充码块长度为10乘以Zc;
编码后能发送数据长度表示:根据码率,对编码后数据进行截取,所能保留下来的数据长度。该参数等于所需发送数据长度除以码率,并向上取整。
例如:基站(即发送端)有2400个比特需要发送,码率为1/2,参数计算结果如下:
基础图号选择2;
最大码块长度为3840个比特;
码块数目为1个码块;
分割后码块长度为2400个比特;
Kb值为10;
Zc值为240;
填充码块长度为2400,即不需要填充;
编码后能发送的数据长度为4800个比特。
进一步的,发送端在确定上述参数后,就可以确定使用哪一个5G标准中的低密度奇偶校验码矩阵(即LDPC编码矩阵)进行编码,完成第一步的编码工作(即得到编码后的数据)。
此后,发送端可根据码率对编码后数据进行速率匹配并发送数据;
具体地,本申请提出根据上述步骤中的Zc值和编码后能发送数据长度,对编码后的数据进行截取(即简化的打孔方式)。从编码后的数据的第2*Zc+1位开始,截取一段数据,使其长度等于编码后能发送数据长度,完成速率匹配。然后发送截取的数据(即截取后数据)。由接收端根据码率和编译码参数对接收数据(即截取后数据)进行反速率匹配以及译码。
本申请提供了一种简化LDPC编码方法,以5G标准中的低密度奇偶校验码为基础,去除了原本的交织和重传功能,简化了编码的流程,降低了系统复杂度。本申请明显降低系统实施时候的困难程度,显著降低了芯片的资源占用率。
在一个实施例中,如图4所示,提供了一种LDPC译码方法,以该方法应用于接收端为例进行说明,包括以下步骤:
步骤S402,接收发送端传输的截取后数据;
其中,截取后数据为编码后数据经发送端从由Zc值确定的截取位置开始、截取得到的长度为编码后能发送数据长度的数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
具体而言,关于发送端执行的步骤,可以参阅前述从发送端角度执行的LDPC编码方法,此处不再赘述。
步骤S404,采用由Zc值确定的填充数量、对截取后数据进行空白比特填充,得到填充后数据;
具体而言,接收端在接收到数据后,可根据码率和编译码参数对接收数据进行反速率匹配;其中,本申请提出由Zc值确定的填充数量为2*Zc个空白比特;
在一个具体的实施例中,采用由Zc值确定的填充数量、对截取后数据进行空白比特填充,得到填充后数据的步骤包括:
在截取后数据的前面补上2*Zc个空白比特,并在截取后数据的后面补上预设数量的空白比特,得到填充后数据;预设数量为根据译码内核的要求确定。
步骤S406,采用由编译码参数确定的LDPC译码矩阵,完成对填充后数据的译码处理。
下面结合一个具体实例进行说明,以接收端为译码器为例,如图5所示,在译码器上,本申请提出可仅包括填充空白比特和译码两个步骤,首先将之前去掉的2*Zc个空白比特补上,然后根据译码内核的要求,在原始数据后面补上若干个空白比特,直接进行译码即可。
其中,接收端根据码率和编译码参数对接收数据进行反速率匹配以及译码的方法可以包括:
1)根据编译码参数对接收速率进行补全,也就是反速率匹配。
例如:Zc值为240,则需要在接收数据的前面补上480个0,再对补全后的数据进行译码。其中,需接收数据的后面补上若干个空白比特(该个数不定,由译码内核决定)。
2)根据编译码参数选用合适的译码矩阵,完成译码。
以上,本申请提供了一种简化LDPC译码方法,以5G标准中的低密度奇偶校验码为基础,去除了原本的交织和重传功能,简化了编码的流程,降低了系统复杂度,同时还能保证较高的译码性能。本申请能够明显降低系统实施时候的困难程度,显著降低芯片的资源占用率。
应该理解的是,虽然图1-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种LDPC编码装置,以该装置应用于发送端为例进行说明,包括:
速率匹配模块610,用于从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
发送模块620,用于将截取后数据传输给接收端;截取后数据用于指示接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;填充后数据为截取后数据经接收端采用由Zc值确定的填充数量、进行空白比特填充得到。
在一个具体的实施例中,还包括:
编译码参数确定模块,用于根据原始数据的数据长度和码率,确定编译码参数;编译码参数包括基础图号、最大码块长度、码块数目、分割后码块长度、Kb值、填充后码块长度、Zc值和编码后能发送数据长度;
编码模块,用于采用由编译码参数确定的LDPC编码矩阵,对原始数据进行编码,得到编码后数据。
在一个具体的实施例中,截取位置为编码后数据的第2*Zc+1位;
所述编译码参数确定模块,还用于根据码率对编码后数据进行截取,得到编码后能发送数据长度。
在一个具体的实施例中,所述编译码参数确定模块,用于获取原始数据的数据长度与码率的商,并对商进行向上取整,得到编码后能发送数据长度。
关于LDPC编码装置的具体限定可以参见上文中对于LDPC编码方法的限定,在此不再赘述。上述LDPC编码装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备(例如,发送端)中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图7所示,提供了一种LDPC译码装置,以该装置应用于接收端为例进行说明,包括:
接收模块710,用于接收发送端传输的截取后数据;截取后数据为编码后数据经发送端从由Zc值确定的截取位置开始、截取得到的长度为编码后能发送数据长度的数据;编码后能发送数据长度为根据码率对编码后数据进行截取得到的、编码后数据所能保留下来的数据长度;
反速率匹配模块720,用于采用由Zc值确定的填充数量、对截取后数据进行空白比特填充,得到填充后数据;
译码模块730,用于采用由编译码参数确定的LDPC译码矩阵,完成对填充后数据的译码处理。
关于LDPC译码装置的具体限定可以参见上文中对于LDPC译码方法的限定,在此不再赘述。上述LDPC译码装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备(例如,接收端)中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,本申请提供了一种发送端,发送端用于执行上述任一项从发送端角度实施的LDPC编码方法的步骤。
在一个具体的实施例中,发送端为编码器。
在一个实施例中,本申请提供了一种接收端,接收端用于执行上述任一项从接收端角度 实施的LDPC译码方法的步骤。
在一个具体的实施例中,接收端为译码器。
在一个实施例中,本申请提供了一种LDPC编译码系统,包括发送端和接收端;
发送端用于执行上述任一项从发送端角度实施的LDPC编码方法的步骤;
接收端用于执行上述任一项从接收端角度实施的LDPC译码方法的步骤。
在一个具体的实施例中,发送端包括宏基站,微基站,微微基站和皮基站。
具体而言,如图8所示,上述LDPC编译码系统中发送端和接收端的具体流程示意,其中,上述发送端的编码流程可用于所有宏基站,微基站,微微基站,皮基站等发送装置中。
在一个具体的示例中,发送端可以为编码器,而接收端可以为译码器;在传统5G标准中,LDPC编译码包括了填充空比特、编码、打孔、交织、重传等等流程,过于复杂,对于简单的通信系统并不适用;而本申请提出一种基于5G标准的简单LDPC编译码方法。在编码器上,仅包括填充空比特,编码和打孔三个步骤,打孔方式也做了简化,从编码后数据的第2*Zc+1个比特开始取所需要发送的比特数即可。而在译码器上,仅包括填充空比特和译码两个步骤,首先将之前去掉的2*Zc个比特补上,然后根据译码内核的要求,在原始数据后面补上若干个空比特,直接送往译码器即可。
本领域技术人员可以理解,LDPC编译码系统中示出的结构,仅仅是与本申请方案相关的部分结构的描述,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一项的方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM (SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (15)

  1. 一种LDPC编码方法,其特征在于,包括步骤:
    从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;所述编码后能发送数据长度为根据码率对所述编码后数据进行截取得到的、所述编码后数据所能保留下来的数据长度;
    将所述截取后数据传输给接收端;所述截取后数据用于指示所述接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;所述填充后数据为所述截取后数据经所述接收端采用由所述Zc值确定的填充数量、进行空白比特填充得到。
  2. 根据权利要求1所述的LDPC编码方法,其特征在于,所述截取位置为所述编码后数据的第2*Zc+1位;
    获取长度为编码后能发送数据长度的截取后数据的步骤之前,还包括步骤:
    根据所述码率对所述编码后数据进行截取,得到所述编码后能发送数据长度。
  3. 根据权利要求2所述的LDPC编码方法,其特征在于,根据所述码率对所述编码后数据进行截取,得到所述编码后能发送数据长度的步骤包括:
    获取原始数据的数据长度与所述码率的商,并对所述商进行向上取整,得到所述编码后能发送数据长度。
  4. 根据权利要求1所述的LDPC编码方法,其特征在于,在从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据的步骤之前,还包括步骤:
    根据原始数据的数据长度和所述码率,确定所述编译码参数;所述编译码参数包括基础图号、最大码块长度、码块数目、分割后码块长度、Kb值、填充后码块长度、所述Zc值和所述编码后能发送数据长度;
    采用由所述编译码参数确定的LDPC编码矩阵,对所述原始数据进行编码,得到所述编码后数据。
  5. 一种LDPC译码方法,其特征在于,包括步骤:
    接收发送端传输的截取后数据;所述截取后数据为编码后数据经所述发送端从由Zc值确定的截取位置开始、截取得到的长度为编码后能发送数据长度的数据;所述编码后能发送数据长度为根据码率对所述编码后数据进行截取得到的、所述编码后数据所能保留下来的数据长度;
    采用由所述Zc值确定的填充数量、对所述截取后数据进行空白比特填充,得到填充后 数据;
    采用由编译码参数确定的LDPC译码矩阵,完成对所述填充后数据的译码处理。
  6. 根据权利要求5所述的LDPC译码方法,其特征在于,所述由Zc值确定的填充数量为2*Zc个空白比特;
    采用由所述Zc值确定的填充数量、对所述截取后数据进行空白比特填充,得到填充后数据的步骤包括:
    在所述截取后数据的前面补上所述2*Zc个空白比特,并在所述截取后数据的后面补上预设数量的空白比特,得到所述填充后数据;所述预设数量为根据译码内核的要求确定。
  7. 一种LDPC编码装置,其特征在于,包括:
    速率匹配模块,用于从由Zc值确定的截取位置开始、对编码后数据进行截取,获取长度为编码后能发送数据长度的截取后数据;所述编码后能发送数据长度为根据码率对所述编码后数据进行截取得到的、所述编码后数据所能保留下来的数据长度;
    发送模块,用于将所述截取后数据传输给接收端;所述截取后数据用于指示所述接收端采用由编译码参数确定的LDPC译码矩阵、对填充后数据进行译码处理;所述填充后数据为所述截取后数据经所述接收端采用由所述Zc值确定的填充数量、进行空白比特填充得到。
  8. 一种LDPC译码装置,其特征在于,包括:
    接收模块,用于接收发送端传输的截取后数据;所述截取后数据为编码后数据经所述发送端从由Zc值确定的截取位置开始、截取得到的长度为编码后能发送数据长度的数据;所述编码后能发送数据长度为根据码率对所述编码后数据进行截取得到的、所述编码后数据所能保留下来的数据长度;
    反速率匹配模块,用于采用由所述Zc值确定的填充数量、对所述截取后数据进行空白比特填充,得到填充后数据;
    译码模块,用于采用由编译码参数确定的LDPC译码矩阵,完成对所述填充后数据的译码处理。
  9. 一种发送端,其特征在于,所述发送端用于执行权利要求1至4中任一项所述LDPC编码方法的步骤。
  10. 根据权利要求9所述的发送端,其特征在于,所述发送端为编码器。
  11. 一种接收端,其特征在于,所述接收端用于执行权利要求5或6所述LDPC译码方法的步骤。
  12. 根据权利要求9所述的接收端,其特征在于,所述接收端为译码器。
  13. 一种LDPC编译码系统,其特征在于,包括发送端和接收端;
    所述发送端用于执行权利要求1至4任一项所述方法的步骤;
    所述接收端用于执行权利要求5或6所述方法的步骤。
  14. 根据权利要求13所述的LDPC编译码系统,其特征在于,所述发送端包括宏基站,微基站,微微基站和皮基站。
  15. 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
PCT/CN2019/098935 2019-07-01 2019-08-01 Ldpc编码及译码方法、装置和编译码系统 WO2021000373A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910584620.7 2019-07-01
CN201910584620.7A CN110266320B (zh) 2019-07-01 2019-07-01 Ldpc编码及译码方法、装置和编译码系统

Publications (1)

Publication Number Publication Date
WO2021000373A1 true WO2021000373A1 (zh) 2021-01-07

Family

ID=67923486

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/098935 WO2021000373A1 (zh) 2019-07-01 2019-08-01 Ldpc编码及译码方法、装置和编译码系统

Country Status (2)

Country Link
CN (1) CN110266320B (zh)
WO (1) WO2021000373A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108631789B (zh) * 2016-10-25 2019-07-09 华为技术有限公司 编码、译码方法及设备
CN114499758B (zh) * 2022-01-10 2023-10-13 哲库科技(北京)有限公司 信道编码方法、装置、设备和计算机可读存储介质
CN115276910B (zh) * 2022-07-29 2023-03-10 深圳鹏龙通科技有限公司 Ldpc速率匹配和解速率匹配方法、信号发送和接收装置
CN117081607B (zh) * 2023-08-30 2024-03-19 白盒子(上海)微电子科技有限公司 一种nr ldpc部分校验矩阵编译码指示信息获取方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209315A (zh) * 2016-07-07 2016-12-07 西安电子科技大学 一种ldpc长码的编码参数盲识别方法
US20170288697A1 (en) * 2016-03-31 2017-10-05 Silicon Motion Inc. Ldpc shuffle decoder with initialization circuit comprising ordered set memory
CN107786306A (zh) * 2016-08-30 2018-03-09 上海交通大学 用于多点协同通信系统的低码率ldpc码字结构和编码方法
CN107786210A (zh) * 2016-08-30 2018-03-09 上海交通大学 用于多点协同通信系统的中高码率ldpc码字结构和编码方法
CN108111251A (zh) * 2016-11-24 2018-06-01 上海交通大学 应用于广播通信系统的信令码编码方法及对应的译码方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006075382A1 (ja) * 2005-01-14 2006-07-20 Fujitsu Limited 符号化方法、復号方法及びそれらの装置
US7873893B2 (en) * 2007-02-28 2011-01-18 Motorola Mobility, Inc. Method and apparatus for encoding and decoding data
US8171383B2 (en) * 2007-04-13 2012-05-01 Broadcom Corporation Method and system for data-rate control by randomized bit-puncturing in communication systems
CN101188428B (zh) * 2007-12-10 2012-09-05 中兴通讯股份有限公司 一种ldpc码的有限长度循环缓存的速率匹配方法
CN102315911B (zh) * 2011-09-29 2017-10-27 中兴通讯股份有限公司 一种低密度奇偶校验码编码方法及装置
US9214963B1 (en) * 2012-12-21 2015-12-15 Western Digital Technologies, Inc. Method and system for monitoring data channel to enable use of dynamically adjustable LDPC coding parameters in a data storage system
CN104065457B (zh) * 2014-06-27 2017-12-19 京信通信系统(中国)有限公司 一种合并译码的方法及装置
CN108173621B (zh) * 2016-12-07 2022-06-14 华为技术有限公司 数据传输的方法、发送设备、接收设备和通信系统
US10432227B2 (en) * 2017-01-24 2019-10-01 Mediatek Inc. Location of interleaver with LDPC code

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170288697A1 (en) * 2016-03-31 2017-10-05 Silicon Motion Inc. Ldpc shuffle decoder with initialization circuit comprising ordered set memory
CN106209315A (zh) * 2016-07-07 2016-12-07 西安电子科技大学 一种ldpc长码的编码参数盲识别方法
CN107786306A (zh) * 2016-08-30 2018-03-09 上海交通大学 用于多点协同通信系统的低码率ldpc码字结构和编码方法
CN107786210A (zh) * 2016-08-30 2018-03-09 上海交通大学 用于多点协同通信系统的中高码率ldpc码字结构和编码方法
CN108111251A (zh) * 2016-11-24 2018-06-01 上海交通大学 应用于广播通信系统的信令码编码方法及对应的译码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HUAWEI: "Summary of Monday offline discussion on PDCCH enhancements", 3GPP DRAFT; R1-190776, vol. RAN WG1, 17 May 2019 (2019-05-17), Reno, USA, pages 1 - 60, XP051740036 *

Also Published As

Publication number Publication date
CN110266320B (zh) 2021-03-12
CN110266320A (zh) 2019-09-20

Similar Documents

Publication Publication Date Title
WO2021000373A1 (zh) Ldpc编码及译码方法、装置和编译码系统
CN109586843B (zh) 通信系统中冗余版本的设计方案
TWI652909B (zh) 極化碼交錯和位元選擇
KR101701083B1 (ko) 순환 버퍼를 포함하는 장치 및 순환 버퍼에 리던던시 버전들을 할당하는 방법
KR101853752B1 (ko) 폴라 코드 처리 방법 및 장치
CN106464446B (zh) 一种极化码的重传方法及装置
CN108400838B (zh) 数据处理方法及设备
EP3910830B1 (en) Decoding method and apparatus
EP3567766B1 (en) Data transmission method and apparatus
CN108347295B (zh) 一种数据传输方法及装置
CN115173991A (zh) 一种速率匹配的方法和装置
JP2019533394A (ja) データ処理方法、基地局および端末
US20230171033A1 (en) Retransmission method and apparatus
CN114598424A (zh) 一种数据处理方法及装置
WO2018161965A1 (zh) 无线通信方法和设备
US20210314087A1 (en) Channel encoding method and apparatus in wireless communications
EP3683990A1 (en) Data retransmission method and apparatus
EP3893417B1 (en) Data segmentation method, and terminal device and network device
US20230224082A1 (en) Retransmission method and apparatus
CN114070461A (zh) 一种重传方法及装置
CN114079530A (zh) 编码方法及装置
EP4351028A1 (en) Data processing method and apparatus
CN108400832B (zh) 数据处理方法和通信设备
CN110034845B (zh) 信息处理方法和无线传输设备
US10972220B2 (en) Interleaving method and apparatus

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19935977

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 25.07.2022)

122 Ep: pct application non-entry in european phase

Ref document number: 19935977

Country of ref document: EP

Kind code of ref document: A1