WO2020135654A1 - 一种数据处理方法及装置 - Google Patents

一种数据处理方法及装置 Download PDF

Info

Publication number
WO2020135654A1
WO2020135654A1 PCT/CN2019/128957 CN2019128957W WO2020135654A1 WO 2020135654 A1 WO2020135654 A1 WO 2020135654A1 CN 2019128957 W CN2019128957 W CN 2019128957W WO 2020135654 A1 WO2020135654 A1 WO 2020135654A1
Authority
WO
WIPO (PCT)
Prior art keywords
column
candidate
bit
row
bit position
Prior art date
Application number
PCT/CN2019/128957
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 WO2020135654A1 publication Critical patent/WO2020135654A1/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/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • 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/27Coding, 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 using interleaving techniques

Definitions

  • Embodiments of the present disclosure relate to the technical field of optical communication.
  • the channels can be roughly divided into three categories according to the characteristics of the error distribution law: random channels, burst channels, and mixed channels.
  • random channels the transmission errors in the received sequence appear randomly, and the error distribution is statistically independent, that is, it does not have correlation or the correlation is very weak, so a reasonable error correction coding method can be used according to the distribution characteristics of error codes. Resist independent random errors.
  • a burst channel such as a channel of a passive optical network (Passive Optical Network, PON) system
  • the optical network unit Optical Network Unit, ONU
  • Error Correction codes such as Low Density Parity Check Code (LDPC) codes
  • LDPC Low Density Parity Check Code
  • FEC Forward Error Correction
  • the interleaving/deinterleaving techniques are usually combined when applying forward error correction techniques.
  • the interleaving/deinterleaving technology places the interleaver and deinterleaver at the sending end and the receiving end, respectively, so that continuous burst errors are dispersed into discrete random errors, thus ensuring correct decoding at the receiving end.
  • the interleaving technique in the related art randomly selects the positions of the interleaved bits. Therefore, the bits at the selected positions may be more difficult to recover reliable information.
  • the selection of such bits is interleaved with the expected continuous error bits. Although it can disperse consecutive erroneous bits, it makes the decoding process after deinterleaving very cumbersome.
  • An aspect of the present disclosure provides a data processing method, including: acquiring a bit position and length of a continuous error expected in a data block to be transmitted, and using the obtained length as a first interleaved bit length; acquiring the data block to be transmitted The bit position of the recoverable information; select the bit position with the same length as the first interleaved bit from the obtained bit position of the recoverable information as the target interleaved bit position; place the bit position where the continuous error is expected And the bit at the target interleaved bit position are interleaved with each other.
  • Another aspect of the present disclosure provides a data processing apparatus, including: an acquisition module for acquiring a bit position and length of a continuous error expected in a data block to be transmitted, and using the obtained length as a first interleaved bit length; The obtaining module is also used to obtain the bit position of the recoverable information in the to-be-transmitted data block; the processing module is used to select a bit of the same length as the first interleaved bit from the obtained bit position of the recoverable information The position is used as the target interleaved bit position; the processing module is also used to interleave the bit at the bit position where the continuous error is expected and the bit at the target interleaved bit position.
  • a data processing apparatus including: a processor and a memory, wherein the memory stores the following instructions that can be executed by the processor: acquiring the bit position and length of a continuous error expected in a data block to be transmitted , And use the obtained length as the first interleaved bit length; obtain the bit position of the recoverable information in the to-be-transmitted data block; select the same length as the first interleaved bit length in the obtained bit position of the recoverable information The bit position of is used as the target interleaved bit position; the bit at the bit position where the continuous error is expected and the bit at the target interleaved bit position are interleaved with each other.
  • Another aspect of the present disclosure provides a computer-readable storage medium having computer-executable instructions stored thereon, the computer-executable instructions being used to perform the following steps: acquiring a continuous error expected in a data block to be transmitted Bit position and length, and use the obtained length as the first interleaved bit length; obtain the bit position of the recoverable information in the data block to be transmitted; select the length and the first of the obtained bit positions of the recoverable information The bit positions with the same interleaved bit length are used as the target interleaved bit position; the bits at the bit position where the continuous error is expected and the bit at the target interleaved bit position are interleaved with each other.
  • Figure 1 is a schematic diagram of the process of interleaving technology
  • FIG. 2 is a flowchart of a data processing method according to an embodiment of the present disclosure
  • FIG. 3 is a schematic flowchart of a data processing method according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic diagram of an interleaving process according to an embodiment of the present disclosure.
  • FIG. 5 is a schematic diagram of an interleaving process according to another embodiment of the present disclosure.
  • FIG. 6 is a schematic diagram of an interleaving process according to another embodiment of the present disclosure.
  • FIG. 7 is a schematic diagram of an interleaving process according to another embodiment of the present disclosure.
  • FIG. 8 is a schematic diagram of a simulation experiment platform for intra-block interleaving under an upstream burst channel of a PON system according to an embodiment of the present disclosure
  • FIG. 9 is a schematic diagram of error code distribution according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic diagram of error code distribution according to another embodiment of the present disclosure.
  • FIG. 11 is a schematic diagram of a simulation experiment platform for inter-block interleaving under uplink burst signal transmission of a PON system according to an embodiment of the present disclosure
  • FIG. 12 is a schematic structural diagram of a data processing device according to an embodiment of the present disclosure.
  • Interleaving technology is a data processing technology used in communication systems to give full play to error correction coding.
  • Interleaving belongs to a special coding, which is essentially a method to maximize the change of the information structure without changing the information content
  • Interleaving technology maximizes the dispersion and randomization of burst errors generated during the transmission of information, controls the distribution of error codes within the range of the error correction capability of the pattern itself, and improves the performance of error detection and correction.
  • the interleaving technology only reorders the location of the transmitted data, and does not change the minimum code distance of the encoding method.
  • Figure 1 is a schematic diagram of the process of interleaving technology. As shown in Figure 1, the data block to be transmitted contains 16 bits.
  • the data block to be transmitted After the data block to be transmitted is encoded, it is reordered by an interleaver for the algorithm.
  • the content of the sorted information sequence is not Change, but the position has changed.
  • the data block to be transmitted is interfered by noise through the burst channel, resulting in continuous errors. That is, the oblique line fills the box e in Figure 1.
  • the data block to be transmitted passes the decoder.
  • FIG. 2 is a flowchart of a data processing method according to an embodiment of the present disclosure. As shown in FIG. 2, the method includes steps 101 to 104.
  • step 101 the bit positions and lengths of consecutive errors expected in the data block to be transmitted are obtained, and the obtained length is used as the first interleaved bit length.
  • bit positions where consecutive errors are expected may not always appear as erroneous bits, but only the bit positions where there is a greater probability of consecutive errors.
  • step 102 the bit position of the information to be recovered in the data block to be transmitted is obtained.
  • step 103 among the obtained bit positions capable of recovering information, a bit position having the same length as the first interleaved bit length is selected as the target interleaved bit position.
  • step 104 the bit at the bit position where the continuous error is expected and the bit at the target interleaved bit position are interleaved with each other.
  • interleaving the bits at the bit position where the continuous error is expected and the bit at the target interleaving bit position means: interleaving the bits at the bit position where the continuous error is expected to the target interleaving bit position , And interleave the bit at the target interleaved bit position to the bit position where a continuous error is expected.
  • step 104 is an interleaving process, and the deinterleaving process is completely opposite to the interleaving process.
  • FIG. 3 is a schematic flowchart of a data processing method according to an embodiment of the present disclosure.
  • the data block to be transmitted is modulated and enters the transmission channel, after which it is demodulated and deinterleaved completely opposite to step 104
  • the data block to be transmitted is decoded to obtain the final data block to be transmitted.
  • the bit position where consecutive errors are expected to be L 1 ⁇ l 1,1 ,l 1,2 ...l 1,16 ⁇
  • the bit positions where successive errors are expected L 1 ⁇ l 1,1 ,l 1,2 ...l 1, 16 ⁇
  • FIG. 4 is a schematic diagram of an interleaving process according to an embodiment of the present disclosure.
  • the bits at the bit positions where consecutive errors are expected to be interleaved to the target interleaved bit positions in a sequential manner that is, at 1, 1 .
  • Bits are mapped to l 2,1
  • bits on l 1,2 are mapped to l 2,2
  • bits on l 1,16 are mapped to l 2,16 .
  • FIG. 5 is a schematic diagram of an interleaving process according to another embodiment of the present disclosure.
  • the bits at the bit positions where consecutive errors are expected to be interleaved to the target interleaved bit positions by reverse order that is, l 1,1
  • the bit on is mapped to l 2,16
  • the bit on l 1,2 is mapped to l 2,15
  • the bit on l 1,16 is mapped to l 2,1 .
  • FIG. 6 is a schematic diagram of an interleaving process according to another embodiment of the present disclosure.
  • the bits at the bit positions where successive errors are expected to be interleaved to the target interleaved bit positions by the row-column conversion method assuming that the row-column conversion is performed
  • the matrix is 2 rows and 8 columns,
  • the bits on are written into the memory row by row, and the columns are read when reading, so the bits on l 1,1 are mapped to l 2,1 and the bits on l 1,2 are mapped to l 2,3 ,
  • the bits on l 1,3 map to l 2,5 , the bits on l 1,4 map to l 2,7 , the bits on l 1,5 map to the bits on l 2,9 , l 1,6
  • the bits mapped to l 2,11 , l 1,7 are mapped to l 2,13
  • the bits on l 1,8 are mapped to l 2,15
  • the bits on l 1,9 are mapped to l 2,2
  • the bit position capable of recovering the information in the data block to be transmitted is obtained, and the number of bits in the obtained bit position is selected from high to low according to the reliability of the information recovery, and the number of occurrences is continuous
  • the bit positions with the same number of erroneous bits are taken as the target interleaved bit positions, so the target interleaved bit positions are the positions with higher information recovery reliability.
  • the bits at these positions are interleaved with the bits at the bit positions where continuous errors are expected to ensure The bit positions where continuous errors are expected are easy to recover information and recover high reliability bits, thereby simplifying the subsequent decoding process and reducing decoding overhead.
  • the method further includes: interleaving the logarithm of the bit at the bit position where the continuous error is expected to occur
  • the Likelihood Ratio (Log-Likelihood Ratio, LLR) is set to 0.
  • obtaining the bit position of the information that can be recovered in the data block to be transmitted includes: when the encoding method of the channel for transmitting the data block to be transmitted is LDPC encoding, obtaining the information that can be recovered from the data block to be transmitted according to the H matrix Bit position.
  • the H matrix is a check matrix in LDPC coding.
  • acquiring the bit position of the information recoverable in the data block to be transmitted according to the H matrix includes: acquiring the column of the information recoverable in the H matrix. Obtain the bit position corresponding to the sequence number of the obtained column in the data block to be transmitted to obtain a bit position capable of recovering information.
  • the rows of the H matrix are check nodes, and the columns of the H matrix are variable nodes.
  • the bit position where consecutive errors are expected to be L 1 ⁇ l 11 ,l 12 ...l 1p ⁇ , and the number of bits (that is, the length of the first interleaved bit) at the bit position where consecutive errors are expected to be p.
  • the number of columns of the H matrix is the same as the number of elements in the data block to be transmitted, the first column of the H matrix corresponds to the first element in the data block to be transmitted, and the second column of the H matrix corresponds to the to be transmitted The second element in the data block, and so on, the last column of the H matrix corresponds to the last element in the data block to be transmitted, so the sequence number of the column in the data block to be transmitted can be obtained and obtained in the fast transmission The bit position corresponding to the serial number of the column, thereby obtaining the bit position capable of recovering information.
  • obtaining columns that can recover information in the H matrix includes: acquiring columns that can recover information through i iterations according to unallocated columns in the H matrix.
  • i 1, 2...N
  • N is the number of iterations so that there are no unallocated columns in the H matrix.
  • the value of i should increase, and then the unallocated columns need to be acquired and removed.
  • the column that can recover the information (that is, the column that can recover the information through one iteration), and use the obtained column as an unassigned column in the H matrix. Perform the acquisition of the pass 2 in the H matrix according to the unallocated column in the H matrix.
  • the steps of recovering information columns in the second iteration after acquiring the columns that can recover the information through 2 iterations according to the unallocated columns in the H matrix, the i value should increase, then the unallocated columns need to be obtained and removed to recover
  • the column after the information that is, the column that can recover the information through 2 iterations
  • the obtained column is regarded as an unallocated column in the H matrix.
  • obtaining columns that can recover information through i iterations from unallocated columns in the H matrix includes generating candidate row-column pairs according to unallocated rows and unallocated columns in the H matrix. Obtain the optimal row-column pair according to the obtained candidate row-column pair, and add the column in the acquired optimal row-column pair to the column capable of recovering information through i iterations. Update the unassigned rows and unassigned columns in the H matrix.
  • the loop executes the step of generating candidate row-column pairings based on the unallocated rows and unallocated columns in the H matrix until there are no unallocated rows in the H matrix after the unallocated rows and unallocated columns are updated.
  • the step of generating candidate row-column pairings from unallocated rows and unallocated columns in the H matrix is cyclically executed until there is no unallocated row in the H matrix after the unallocated rows and unallocated columns are updated After the row, it also includes: obtaining unallocated rows in the candidate row-column pair except the optimal row-column pair. When the value of i increases, the obtained row is regarded as an unallocated row in the H matrix, and a step of generating a candidate row-column pairing according to the unallocated row and the unallocated column in the H matrix is performed.
  • generating candidate row-column pairs based on unallocated rows and unallocated columns in the H matrix includes: acquiring an unallocated column connected to the unallocated rows in the H matrix as the first candidate column. According to the obtained first candidate column, the unallocated row with the smallest row weight is obtained as the first candidate row. Obtain the unallocated column connected to the first candidate row as the second candidate column. Obtain the unassigned row connected to the obtained second candidate column as the second candidate row. According to the obtained second candidate row, the second candidate column with the smallest column weight is obtained as the third candidate column. In the obtained third candidate column, a column in which the element contains the first candidate row is obtained as the optimal column. In the third candidate column, the row connected to the optimal column and having the smallest column weight is obtained, and paired with the optimal column to form the candidate row and column.
  • obtaining the unallocated row with the smallest row weight according to the obtained first candidate column as the first candidate row includes: acquiring the number of first candidate columns connected to each unallocated row number. Obtain the unallocated row with the smallest number of connected first candidate columns as the first candidate row.
  • obtaining the second candidate column with the smallest column weight as the third candidate column according to the obtained second candidate row includes: acquiring the second candidate row connected to each second candidate column Of the number. Obtain the second alternative column with the smallest number of connected second alternative rows as the third alternative column.
  • obtaining the optimal row-column pair according to the obtained candidate row-column pair includes: if the number of obtained candidate row-column pairs is one pair, determining that the obtained candidate row-column pair is the optimal row-column pair.
  • obtaining the optimal row-column pair according to the obtained candidate row-column pair includes: if the number of obtained candidate row-column pairs is greater than one pair, converting each obtained pair of candidate row-column pairs into an expanded tree.
  • the candidate row-column pair corresponding to the expanded tree containing the least uncut nodes is obtained as the target row-column pair. If the number of target row-column pairs is one pair, it is determined that the target row-column pair is the optimal row-column pair. If the number of target row-column pairs is greater than one pair, randomly select a pair in the target row-column pair as the optimal row-column pair.
  • selecting a bit position having the same length as the first interleaved bit among the obtained bit positions capable of recovering information as the target interleaved bit position includes: recovering the obtained bit position capable of recovering information according to the information The reliability is arranged from high to low to obtain the bit position to be selected.
  • bit positions with the same length as the first interleaved bit length are sequentially selected from the first bit position as the target interleaved bit position.
  • the bit position to be selected is obtained by arranging the bit positions of the data block to be transmitted that can be restored according to the information recovery reliability from high to low, assuming that the information can be restored in the data block to be transmitted
  • Selecting bit positions with the same length as the first interleave bit length from the bit positions to be selected refers to sequentially selecting p bit positions from L 3 , and the selected p bit positions are the target interleave bit positions. It should be noted that this embodiment is applicable to the case where the interleave bit length is large.
  • selecting a bit position having the same length as the first interleaved bit among the obtained bit positions capable of recovering information as the target interleaved bit position includes: recovering the obtained bit position capable of recovering information according to the information The reliability is arranged from high to low to obtain the bit position to be selected.
  • the bit positions to be selected are reordered to obtain candidate bit positions.
  • a bit position with the same length as the first interleaved bit length is sequentially selected from the first bit position as the target interleaved bit position.
  • arranging the obtained bit positions according to the information recovery reliability from high to low to obtain the bit position to be selected includes: performing the information recovery reliability of the obtained columns from high to low according to the information recovery reliability Arrange to get the target arrangement set. Arrange the obtained bit positions according to the same arrangement method as the target arrangement set to obtain the bit position to be selected.
  • arranging the columns of recoverable information according to information recovery reliability from high to low to obtain a target arrangement set includes: recovering reliable columns of information obtained through i iterations for recovering information columns The sex is arranged from high to low to get the i-th set. The elements in the obtained first permutation set, second permutation set...(N-1) permutation set are sequentially combined to obtain a target permutation set.
  • the obtained columns that can recover information through i iterations are arranged according to the reliability of information recovery from high to low to obtain the i-th array set, including: in the columns that can recover information through i iterations Get the unallocated column with the largest column weight as the fourth candidate column.
  • the optimal column is determined according to the obtained fourth candidate column. Add the optimal column to the ith adjustment set.
  • the loop execution obtains the unallocated column with the largest column weight among the columns that can recover information through i iterations, until there is no column among the columns that can recover information through i iterations.
  • the obtained i-th adjustment set is regarded as the i-th arrangement set.
  • determining the optimal column according to the obtained fourth candidate column includes: if the number of obtained fourth candidate columns is one, determining that the obtained fourth candidate column is the optimal column.
  • determining the optimal column according to the obtained fourth candidate column includes: if the number of obtained fourth candidate columns is more than one, acquiring the column with the smallest column weight among the fourth candidate columns as The fifth alternative column. If the number of the fifth candidate column is one, it is determined that the fifth candidate column is the optimal column. If there are more than one fifth candidate column, randomly select one column as the optimal column in the fifth candidate column.
  • reordering the bit positions to be obtained to obtain candidate bit positions includes: dividing the obtained bit positions capable of recovering information into T groups, and obtaining each bit position with a length k of T groups.
  • Obtain a proportional distribution corresponding to each second interleaved bit length ⁇ ⁇ j ⁇ to obtain the target proportional distribution According to the obtained bit position and target ratio distribution that can recover information Get alternative bit positions.
  • the T bit position groups obtained by splicing are sequentially obtained to obtain candidate bit positions.
  • Use the search algorithm in scheme one to determine the optimal proportional distribution when the length is t ⁇ s Among them, t 1, 2, ..., T.
  • the core of the present disclosure is to obtain the columns of the H matrix that can recover information, and arrange the information recovery reliability of the obtained columns from high to low. Therefore, the core of the present disclosure is expressed by an algorithm below The content, where the core content can be divided into two parts for presentation, namely grouping and sorting, before the algorithm description begins, the symbols involved in the algorithm are explained first.
  • G 0 a collection of variable nodes that are not zeroed.
  • G k a set of k-SR variable nodes.
  • G ⁇ A collection of variable nodes that have not yet been allocated.
  • R 0 There is at least one survival check node for a k-SR variable node. When one of them is selected as a certain survival check node, the remaining survival check nodes are defined as a subset of R 0 .
  • R k the set of certain survival check nodes corresponding to k-SR variable nodes.
  • R ⁇ the set of check nodes that have not yet been allocated.
  • ⁇ ⁇ indicates the position of the column where the element “1” is located at the ⁇ th row in the H matrix.
  • ⁇ ⁇ represents the position of the row where the element “1” is located in the ⁇ column of the H matrix.
  • S(j) The number of variable nodes that are not set to zero in the expansion tree of j-SR variable nodes.
  • M The maximum number of iterations of recoverable variable nodes.
  • P j a sorted set of recoverable variable nodes, the higher the variable node, the higher the reliability of recovery.
  • Step 2 [Group columns] For any row ⁇ R ⁇ , generate a set Represents the effective position of the column where the element "1" in row p of the H matrix is located.
  • Step 3 [Find alternative rows] Generate a subset ⁇ of R ⁇ , where the element ⁇ in ⁇ needs to satisfy Have That is, the candidate line has the smallest effective line weight (first candidate line).
  • Step 4 [Group Rows] For any column Where ⁇ , (second candidate column) generates a set (Second alternative row) represents the effective position of the row where the element "1" in the ⁇ column of the H matrix is located.
  • Step 5 [Find the optimal row] Generate a subset of ⁇ ⁇ * , which satisfies Yes (third alternative column) Where ⁇ is In any column of ⁇ , ⁇ is any row of ⁇ , that is, the optimal row among the candidate rows has the smallest effective column weight.
  • Step 6 [Pairing] assign a certain survival check node to each k-SR variable node: the optimal row ⁇ * is the set of survival check nodes obtained, and randomly select an unallocated and unassigned from the ⁇ * row Has the smallest effective column weight The variable node g * is paired with the check node ⁇ * to obtain ( ⁇ * , g * ). If there are more than one variable node g * in all rows in ⁇ * , the pairing is
  • Step 7 [Find the optimal pairing] Select a group ( ⁇ * , g * ) from ⁇ , which requires ⁇ * to be satisfied: For any 1 ⁇ j ⁇ l, there is among them If there is more than one matched pair, one is randomly selected.
  • Step 2 [Stop condition] If k>M, stop the sorting algorithm, and P j at this time is L 2 .
  • Step 4 [Find candidate columns] Generate a subset W of G k that satisfies any column ⁇ ′ ⁇ W Where ⁇ is any column in G k .
  • Step 5 [Find the optimal column] If
  • 1, the only column in W is the optimal column; if
  • FIG. 8 is a schematic diagram of a simulation experiment platform for intra-block interleaving under an upstream burst channel of a PON system according to an embodiment of the present disclosure. As shown in FIG.
  • the channel model in this simulation example is a Gilbert channel + Gaussian channel model based on the actual wavelength division multiplexing passive optical network (WDM-PON) upstream channel characteristics.
  • the Gilbert channel model is a two-state Markov chain Markov chain, respectively Good state and Bad state. In the Good state, there is no error in the bit; in the Bad state, the bit will flip. The transition probability Prob(Good ⁇ Bad) is smaller than Prob(Bad ⁇ Good), and eventually the Markov chain will converge to the Good state. Therefore, continuous burst errors are mainly distributed at the front of the data block to be transmitted, which is consistent with the actual situation. And the error position L 1 and the interleaved bit length p 0 are obtained according to the channel model.
  • FIG. 11 is a schematic diagram of a simulation experimental platform for inter-block interleaving under upstream burst signal transmission of a PON system according to an embodiment of the present disclosure.
  • each data block is first channel-coded.
  • N code blocks are treated as an interleaving and de-interleaving unit.
  • the bits at the front end of the time slot of the data block to be transmitted are scattered to the optimal interleaving scheme.
  • the initial LLR of this part of information can be set to zero; afterwards, the deinterleaver corresponding to the optimal interleaver is passed, and finally the LDPC decoding Get the data output.
  • the data processing device 2 includes an acquisition module 21 and a processing module 22.
  • the obtaining module 21 is configured to obtain the bit position and length of the continuous error expected in the data block to be transmitted, and use the obtained length as the first interleaved bit length.
  • the obtaining module 21 is also used to obtain the bit position of the information that can be recovered in the data block to be transmitted.
  • the processing module 22 is configured to select a bit position with the same length as the first interleaved bit from the obtained bit positions capable of recovering information as the target interleaved bit position.
  • the processing module 22 is also used to interleave the bit at the bit position where the continuous error is expected and the bit at the target interleaved bit position.
  • the processing module 22 is further configured to set the LLR of the bit at the bit position where the continuous error is expected to be interleaved to 0.
  • the obtaining module 21 is specifically used to obtain the bit position of the data block to be transmitted that can be restored according to the H matrix when the coding method of the channel transmitting the data block to be transmitted is LDPC coding; wherein, the H matrix It is the check matrix in LDPC coding.
  • the obtaining module 21 is specifically configured to obtain a column in the H matrix capable of recovering information. Obtain the bit position corresponding to the sequence number of the obtained column in the data block to be transmitted to obtain a bit position capable of recovering information.
  • the acquisition module 21 is specifically configured to acquire columns that can recover information through i iterations according to unallocated columns in the H matrix.
  • the value of i increases, obtain the column after removing the obtained column that can recover the information in the unassigned column, and take the obtained column as the unassigned column in the H matrix, and perform the acquisition of the H matrix according to the unassigned column in the H matrix
  • the acquisition module 21 is specifically configured to: generate candidate row-column pairs according to unallocated rows and unallocated columns in the H matrix.
  • the optimal row-column pair is obtained according to the obtained candidate row-column pair, and the column in the obtained optimal row-column pair is added to the column capable of recovering information through i iterations.
  • the loop executes the step of generating candidate row-column pairings based on the unallocated rows and unallocated columns in the H matrix until there are no unallocated rows in the H matrix after the unallocated rows and unallocated columns are updated.
  • the obtaining module 21 is also used to obtain the unassigned rows in the candidate row-column pair except the optimal pair.
  • the processing module 22 is further configured to use the obtained row as an unallocated row in the H matrix when the value of i increases, and perform generating a candidate from the unallocated row and the unallocated column in the H matrix Steps for pairing.
  • the obtaining module 21 is specifically configured to obtain the unassigned column connected to the unassigned row in the H matrix as the first candidate column. According to the obtained first candidate column, the unallocated row with the smallest row weight is obtained as the first candidate row. Obtain the unallocated column connected to the first candidate row as the second candidate column. Obtain the unassigned row connected to the obtained second candidate column as the second candidate row. According to the obtained second candidate row, the second candidate column with the smallest column weight is obtained as the third candidate column. In the obtained third candidate column, a column in which the element contains the first candidate row is obtained as the optimal column. In the third candidate column, the row connected to the optimal column and having the smallest column weight is obtained, and paired with the optimal column to form the candidate row and column.
  • the obtaining module 21 is specifically configured to obtain the number of first candidate columns connected to each unallocated row. Obtain the unallocated row with the smallest number of connected first candidate columns as the first candidate row.
  • the obtaining module 21 is specifically configured to obtain the number of second candidate rows connected to each second candidate column. Obtain the second alternative column with the smallest number of connected second alternative rows as the third alternative column.
  • the obtaining module 21 is specifically configured to determine that the obtained candidate row-column pair is the optimal row-column pair if the number of candidate row-column pairs obtained is one pair.
  • the obtaining module 21 is specifically configured to: if the number of obtained candidate row-column pairs is greater than one pair, convert each obtained pair of candidate row-column pairs into an expanded tree.
  • the candidate row-column pair corresponding to the expanded tree containing the least uncut nodes is obtained as the target row-column pair. If the number of target row-column pairs is a pair, the target row-column pair is determined to be the optimal pair. If the number of target row-column pairs is greater than one pair, randomly select one pair in the target row-column pair as the optimal row-column pair.
  • the processing module 22 is specifically configured to arrange the obtained bit positions capable of recovering information according to information recovery reliability from high to low to obtain the bit position to be selected.
  • bit positions to be selected bit positions with the same length as the first interleaved bit length are sequentially selected from the first bit position as the target interleaved bit position.
  • the processing module 22 is specifically configured to arrange the obtained bit positions capable of recovering information according to information recovery reliability from high to low to obtain the bit position to be selected.
  • the bit positions to be selected are reordered to obtain candidate bit positions.
  • a bit position with the same length as the first interleaved bit length is sequentially selected from the first bit position as the target interleaved bit position.
  • the processing module 22 is specifically configured to: arrange the obtained columns capable of recovering information according to information recovery reliability from high to low to obtain a target arrangement set. Arrange the obtained bit positions according to the same arrangement method as the target arrangement set to obtain the bit position to be selected.
  • the processing module 22 is specifically configured to: arrange the obtained columns that can recover information through i iterations according to the information recovery reliability from high to low to obtain the i-th array set.
  • the elements in the obtained first permutation set, second permutation set...(N-1) permutation set are sequentially combined to obtain a target permutation set.
  • the processing module is specifically used to obtain the unallocated column with the largest column weight among the columns capable of recovering information through i iterations as the fourth candidate column.
  • the optimal column is determined according to the obtained fourth candidate column. Add the optimal column to the ith adjustment set. Update unallocated columns among columns that can recover information through i iterations.
  • the loop execution obtains the unallocated column with the largest column weight among the columns that can recover information through i iterations, until there is no column among the columns that can recover information through i iterations.
  • the obtained i-th adjustment set is regarded as the i-th arrangement set.
  • the processing module 22 is specifically configured to determine that the obtained fourth candidate column is the optimal column if the number of obtained fourth candidate columns is one.
  • the processing module 22 is specifically configured to: if the number of obtained fourth candidate columns is more than one, obtain the column with the smallest column weight among the fourth candidate columns as the fifth candidate column. If the number of the fifth candidate column is one, it is determined that the fifth candidate column is the optimal column. If there are more than one fifth candidate column, randomly select one column as the optimal column in the fifth candidate column.
  • the processing module 22 is specifically configured to divide the obtained bit positions capable of recovering information into T groups, and obtain each bit position with a length k of T groups.
  • Obtain a proportional distribution corresponding to each second interleaved bit length ⁇ ⁇ j ⁇ to obtain the target proportional distribution According to the obtained bit position and target ratio distribution that can recover information Get alternative bit positions.
  • the T bit position groups obtained by splicing are sequentially obtained to obtain candidate bit positions.
  • the bit position capable of recovering information in the data block to be transmitted is acquired, and the number of bits in the obtained bit position is selected from high to low according to the reliability of information recovery, the number is continuous
  • the bit positions with the same number of erroneous bits are taken as the target interleaved bit positions, so the target interleaved bit positions are the positions with higher information recovery reliability.
  • the bits at these positions are interleaved with the bits at the bit positions where continuous errors are expected to ensure The bit positions where continuous errors are expected are easy to recover information and recover high reliability bits, thereby simplifying the subsequent decoding process and reducing decoding overhead.
  • the acquisition module 21 and the processing module 22 may be composed of a central processing unit (CPU), a microprocessor (Micro Processor Unit, MPU), and a digital signal processor (Digital Signal Processor) located in the data processing device.
  • CPU central processing unit
  • MPU Micro Processor Unit
  • DSP Digital Signal Processor
  • FPGA Field Programmable Gate Array
  • An embodiment of the present disclosure also provides a data processing apparatus, including a memory and a processor, wherein the memory stores instructions executable by the processor, and when the instructions are executed by the processor, the data processing apparatus is executed as described above.
  • Embodiments of the present disclosure also provide a computer-readable storage medium having computer-executable instructions stored thereon.
  • the computer-executable instructions are executed by a processor, the data processing according to the embodiments of the present disclosure is performed as described above method.

Landscapes

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

Abstract

本公开提供了一种数据处理方法及装置。所述数据处理方法包括:获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;获取待传输数据块中的能够恢复信息的比特位置;在获得的能够恢复信息的比特位置中选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置;将预期出现连续错误的比特位置上的比特和目标交织比特位置上的比特互相交织。

Description

一种数据处理方法及装置 技术领域
本公开实施例涉及光通信技术领域。
背景技术
在光通信***中,根据误码分布规律的特点可以将信道大致分为三类:随机信道、突发信道以及混合信道。在随机信道中,接收序列中的传输错误随机出现,且错误分布具有统计独立的特点,即不具有相关性或相关性很弱,因此根据误码的分布特性采用合理的纠错编码方法就可以抵抗独立的随机错误。但是在突发信道中,例如无源光网络(Passive Optical Network,PON)***的信道,由于上行信道工作于突发模式,并且由于光网络单元(Optical Network Unit,ONU)在突发模式下发射机开关效应的暂态瞬变、光放大器(如增益稳定的掺铒光纤光放大器)的瞬变效应、以及在突发模式下接收机的瞬变效应,在待传输数据块前端会引入一连串的具有记忆性且分布不均匀的连续错误,在纠连续错误方面大部分纠错编码(如低密度奇偶校验(Low Density Parity Check Code,LDPC)编码)表现得并不理想,而前向纠错(Forward Error Correction,FEC)技术却表现突出,不但可以显著改善光通信***的性能,提高光接收机灵敏度,还能降低光发射机发射功率,延长光信号传输距离。
在实际应用中,为了在保证编码增益时增强纠错编码对突发错误的鲁棒性,通常在应用前向纠错技术时会结合交织/解交织技术。交织/解交织技术通过将交织器和解交织器分别置于发送端和接收端,使连续的突发错误分散为离散的随机错误,从而保证了接收端的正确译码。
然而,相关技术中的交织技术是随机选择交织比特的位置的,因此,所选择的位置上的比特可能是较难恢复出可靠信息的比特,选择这样的比特与预期出现连续错误比特互相交织,虽然能够分散连续错误比特,但却让解交织后的译码过程十分繁琐。
发明内容
本公开的一方面提供一种数据处理方法,包括:获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;获取所述待传输数据块中的能够恢复信息的比特位置;在获得的能够恢复信息的比特位置中选择长度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
本公开的另一方面提供一种数据处理装置,包括:获取模块,用于获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;所述获取模块,还用于获取所述待传输数据块中的能够恢复信息的比特位置;处理模块,用于在获得的能够恢复信息的比特位置中选择长度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;所述处理模块,还用于将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
本公开的另一方面提供一种数据处理装置,包括:处理器和存储器,其中,存储器中存储有以下可被处理器执行的指令:获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;获取所述待传输数据块中的能够恢复信息的比特位置;在获得的能够恢复信息的比特位置中选择长度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
本公开的另一方面提供一种计算机可读存储介质,所述存储介质上存储有计算机可执行指令,所述计算机可执行指令用于执行以下步骤:获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;获取所述待传输数据块中的能够恢复信息的比特位置;在获得的能够恢复信息的比特位置中选择长 度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
附图说明
附图用来提供对本公开的技术方案的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开的技术方案,并不构成对本公开技术方案的限制。
图1为交织技术的流程示意图;
图2为根据本公开的实施例的数据处理方法的流程图;
图3为根据本公开的实施例的数据处理方法的流程示意图;
图4为根据本公开的实施例的交织流程示意图;
图5为根据本公开的另一实施例的交织流程示意图;
图6为根据本公开的另一实施例的交织流程示意图;
图7为根据本公开的另一实施例的交织流程示意图;
图8为根据本公开的实施例的PON***上行突发信道下块内交织的仿真实验平台示意图;
图9为根据本公开的实施例的误码分布示意图;
图10为根据本公开的另一实施例误码分布示意图;
图11为根据本公开的实施例的PON***上行突发信号传输下块间交织的仿真实验平台示意图;
图12为根据本公开的实施例的数据处理装置的结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,下文中将结合附图对本公开的实施例进行详细说明。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
交织技术是通信***中为了充分发挥纠错编码作用而采用的一种数据处理技术,交织属于一种特殊的编码,其本质上是一种实现最大限度地改变信息结构而不改变信息内容的方法,交织技术使信息在传输过程中所产生的突发错误最大限度地分散化、随机化,将误码分布控制在码型自身纠错能力范围内,提升编码检错和纠错的性能。交织技术只是对传输数据的所在位置进行了重新排序,并没有改变编码方式的最小码距。图1为交织技术的流程示意图,如图1所示,待传输数据块包含16个比特,待传输数据块经过编码后,通过算法为Π的交织器进行重新排序,排序后的信息序列内容不变,只是在位置上发生了变化,待传输数据块经过突发信道受到噪声干扰,产生连续错误,即图1中的斜线填充方块e,在接收端,待传输数据块在通过译码器前需要先通过一个算法为Π -1的解交织器再进行重新排序,其中,解交织器的算法Π -1为交织器的算法Π -1的逆,因此解交织器与交织器的作用相反,将待传输数据块中的当前比特所在位置恢复为之前比特所在位置,从而使得连续比特错误也随之变成了随机错误,这时,原本连续错误的4个斜线填充方块e,被按照随机的顺序,均匀地分散到了整个译码输入的信息序列中,解交织后,4个斜线填充方块e的位置发生了变化,但是数量不变,还是4个,然后,将包含随机错误的待传输数据块再送入译码器进行误码纠正。由此可见,交织技术充分发挥了FEC的作用。
图2为根据本公开的实施例的数据处理方法的流程图,如图2所示,该方法包括步骤101至104。
在步骤101,获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度。
需要说明的是,所预期出现连续错误的比特位置并不一定都会出现错误比特,只是有较大概率出现连续错误的比特位置。假设预期出现连续错误的比特位置为L 1={l 1,1,l 1,2...l 1,p},其中,l 1,i表示第i个错误比特在待传输数据块中的位置,i=1,2...p,l 1,1,l 1,2...l 1,p彼此之间并不一定是相邻的,但从整个待传输数据块看,l 1,1,l 1,2...l 1,p一定是较为连续的。L 1可以通过对实际信道进行测试或者理论建模得到,也可以简单地认 为每个时隙前一段时间为出现连续错误的时间,然后乘以比特速率以得到出现连续错误比特的长度,进而得到出现连续错误的比特位置。如果预期出现连续错误的比特位置为L 1={l 1,1,l 1,2...l 1,p},那么预期出现连续错误的个数为p。
在步骤102,获取待传输数据块中能够恢复信息的比特位置。
具体的,假设待传输数据块中能够恢复信息的比特位置为
Figure PCTCN2019128957-appb-000001
其中,l 2,j表示第j个错误比特在待传输数据块中的位置,j=1、2...q,p≤q。
在步骤103,在获得的能够恢复信息的比特位置中选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置。
在步骤104,将预期出现连续错误的比特位置上的比特和目标交织比特位置上的比特互相交织。
根据本公开的实施例,将预期出现连续错误的比特位置上的比特和目标交织比特位置上的比特互相交织指的是:将预期出现连续错误的比特位置上的比特交织到目标交织比特位置上,并将目标交织比特位置上的比特交织到预期出现连续错误的比特位置上。
根据本公开的实施例,步骤104是交织过程,解交织过程与交织过程完全相反。
图3为根据本公开的实施例的数据处理方法的流程示意图,如图3所示,在输入的带传输的数据块经过编码后,当预期出现连续错误的比特位置上的比特交织到目标交织比特位置上,且目标交织比特位置上的比特交织到预期出现连续错误的比特位置上后,待传输数据块经过调制,进入传输信道,之后再通过解调,通过与步骤104完全相反的解交织,最后对待传输数据块进行译码,得到最终待传输数据块。
根据本公开的实施例,假设预期出现连续错误的比特位置为L 1={l 1,1,l 1,2...l 1,16},为了方便说明交织过程,假设目标交织比特位置为L 3={l 2,1,l 2,2...l 2,16},那么将预期出现连续错误的比特位置L 1={l 1,1,l 1,2...l 1,16}上的比特交织到目标交织比特的位置L 3={l 2,1,l 2,2...l 2,16}上可以是通过顺序的方式、逆序的方式、行列变换的方式或其他方式进行的,本公 开对此不作限制。下面本公开对于将预期出现连续错误的比特位置上的比特交织到目标交织比特位置上所通过的方式进行详细描述,而由于将目标交织比特位置上的比特交织到预期出现连续错误的比特位置上所通过的方式与将预期出现连续错误的比特位置上的比特交织到目标交织比特位置上所通过的方式相同,因此,在本公开实施例中将不再对将目标交织比特位置上的比特交织到预期出现连续错误的比特位置上所通过的方式赘述。
图4为根据本公开的实施例的交织流程示意图,如图4所示,通过顺序方式将预期出现连续错误的比特位置上的比特交织到目标交织比特位置上,即,l 1,1上的比特映射到l 2,1,l 1,2上的比特映射到l 2,2,…,l 1,16上的比特映射到l 2,16
图5为根据本公开的另一实施例的交织流程示意图,如图5所示,通过逆序方式将预期出现连续错误的比特位置上的比特交织到目标交织比特位置上,即,l 1,1上的比特映射到l 2,16,l 1,2上的比特映射到l 2,15,…,l 1,16上的比特映射到l 2,1
图6为根据本公开的另一实施例的交织流程示意图,如图6所示,通过行列变换方式将预期出现连续错误的比特位置上的比特交织到目标交织比特位置上,假设进行行列变换的矩阵为2行8列,
Figure PCTCN2019128957-appb-000002
上的比特是按行写入存储器的,而读取时是按列读取的,因此l 1,1上的比特映射到l 2,1,l 1,2上的比特映射到l 2,3,l 1,3上的比特映射到l 2,5,l 1,4上的比特映射到l 2,7,l 1,5上的比特映射到l 2,9,l 1,6上的比特映射到l 2,11,l 1,7上的比特映射到l 2,13,l 1,8上的比特映射到l 2,15,l 1,9上的比特映射到l 2,2,l 1,10上的比特映射到l 2,4,l 1,11上的比特映射到l 2,6,l 1,12上的比特映射到l 2,8,l 1,13上的比特映射到l 2,10,l 1,14上的比特映射到l 2,12,l 1,15上的比特映射到l 2,14,l 1,16上的比特映射到l 2,16
图7为根据本公开的另一实施例的交织流程示意图,如图7所示,假设待传输数据块有26个比特,所确定的预期出现连续错误的比特位置为L 1={l 1,1,l 1,2,l 1,3,l 1,4,l 1,5,l 1,6,l 1,7,l 1,8,l 1,9}(在图7中以横线填充方块标识),所确定的目标交织比特的位置为L 2={l 2,3,l 2,7,l 2,10,l 2,12,l 2,16,l 2,19,l 2,21,l 2,22,l 2,25}(在图7中以竖线填充方块标识), 由于L 1和L 2中都有第3个位置和第7个位置,因此交织器Π将这两个位置上的比特不进行交织,将l 1,1上的比特交织到l 2,10上(即将第待传输数据块的第1个位置上的比特交织到第10个位置上),将l 1,2上的比特交织到l 2,12上(即将第待传输数据块的第2个位置上的比特交织到第12个位置上),将l 1,4上的比特交织到l 2,16上(即将第待传输数据块的第4个位置上的比特交织到第16个位置上),将l 1,5上的比特交织到l 2,19上(即将第待传输数据块的第5个位置上的比特交织到第19个位置上),将l 1,6上的比特交织到l 2,21上(即将第待传输数据块的第6个位置上的比特交织到第21个位置上),将l 1,8上的比特交织到l 2,22上(即将第待传输数据块的第8个位置上的比特交织到第22个位置上),将l 1,9上的比特交织到l 2,25上(即将第待传输数据块的第9个位置上的比特交织到第25个位置上),此时完成了将预期出现连续错误的比特位置上的比特交织到目标交织比特位置上的过程,然后再将l 2,10上的比特交织到l 1,1(即将第待传输数据块的第10个位置上的比特交织到第1个位置上),将l 2,12上的比特交织到l 1,2上(即将第待传输数据块的第12个位置上的比特交织到第2个位置上),将l 2,16上的比特交织到l 1,4上(即将第待传输数据块的第16个位置上的比特交织到第4个位置上),将l 2,19上的比特交织到l 1,5上(即将第待传输数据块的第19个位置上的比特交织到第5个位置上),将l 2,21上的比特交织到l 1,6上(即将第待传输数据块的第21个位置上的比特交织到第6个位置上),将l 2,22上的比特交织到l 1,8上(即将第待传输数据块的第22个位置上的比特交织到第8个位置上),将l 2,25上的比特交织到l 1,9上(即将第待传输数据块的第25个位置上的比特交织到第9个位置上),此时完成了将目标交织比特位置上的比特交织到预期出现连续错误的比特位置上的过程,接下来再经过信道受到噪声干扰,产生连续错误,即图7中的7个连续的斜线填充方块e,再然后通过解交织器Π -1再进行重新排序,其中,解交织器的算法Π -1为交织器的算法Π -1的逆,因此解交织器与交织器的作用相反,将待传输数据块中的当前比特所在位置恢复为之前比特所在位置,从而使得连续比特错误也随之变成了随机错误,这时,原本连续错误的7个斜线填充方块e,被按照随 机的顺序,均匀地分散到了待传输数据块中。
根据本公开的实施例的数据处理方法,由于获取了待传输数据块中能够恢复信息的比特位置,并在获得的比特位置中按照信息恢复可靠性由高到低选择了个数与预期出现连续错误比特的个数相同的比特位置作为目标交织比特位置,因此目标交织比特位置是信息恢复可靠性较高的位置,用这些位置上的比特与预期出现连续错误的比特位置上的比特交织,保证了预期出现连续错误的比特位置上都是容易恢复信息且恢复可靠性较高的比特,从而简化了后续的译码过程,减少了译码开销。
根据本公开的实施例,将预期出现连续错误的比特位置上的比特和目标交织比特位置上的比特互相交织之后,还包括:将经过交织的预期出现连续错误的比特位置上的比特的对数似然比(Log-Likelihood Ratio,LLR)置为0。
需要说明的是,将经过交织的预期出现连续错误的比特位置上的比特的LLR置为0能够减少这些比特对于整个待传输数据块的影响,从而使得后续译码过程更加准确。
根据本公开的实施例,获取待传输数据块中能够恢复信息的比特位置,包括:当传输待传输数据块的信道的编码方式为LDPC编码时,根据H矩阵获取待传输数据块中能够恢复信息的比特位置。
其中,H矩阵为LDPC编码中的校验矩阵。
根据本公开的实施例,根据H矩阵获取待传输数据块中能够恢复信息的比特位置,包括:获取H矩阵中能够恢复信息的列。在待传输数据块中获取与获得的列的序号对应的比特位置,得到能够恢复信息的比特位置。
根据本公开的实施例,在H矩阵对应的二分图中,H矩阵的行即是校验节点,H矩阵的列即是变量节点。假设预期出现连续错误的比特位置为L 1={l 11,l 12...l 1p},预期出现连续错误的比特位置上比特的个数(即第一交织比特长度)为p。
根据本公开的实施例,H矩阵的列数与待传输数据块中元素的个数相同,H矩阵的第一列对应待传输数据块中第一个元素,H矩阵 的第二列对应待传输数据块中第二个元素,以此类推,H矩阵的最后一列对应待传输数据块中最后一个元素,因此获得了待传输数据块中列的序号,就可以在待传输快中获取与获得的列的序号对应的比特位置,从而得到能够恢复信息的比特位置。
根据本公开的实施例,获取H矩阵中能够恢复信息的列,包括:根据H矩阵中未分配的列获取通过i次迭代能够恢复信息的列。当i值增加时,在未分配列中获取除去获得的能够恢复信息的列后的列,并将获得的列作为H矩阵中未分配的列,执行根据H矩阵中未分配的列获取H矩阵中通过i次迭代能够恢复信息的列的步骤,直到H矩阵中不存在未分配的列。其中,i=1、2…N,N为使H矩阵中不存在未分配的列的迭代次数。
根据本公开的实施例,假设i=1,根据H矩阵中未分配的列获取完通过1次迭代能够恢复信息的列后,i值应该增加,这时需要在未分配列中获取除去获得的能够恢复信息的列(即通过1次迭代能够恢复信息的列)后的列,并将获得的列作为H矩阵中未分配的列,执行根据H矩阵中未分配的列获取H矩阵中通过2次迭代能够恢复信息的列的步骤,根据H矩阵中未分配的列获取完通过2次迭代能够恢复信息的列后,i值应该增加,这时需要在未分配列中获取除去获得的能够恢复信息的列(即通过2次迭代能够恢复信息的列)后的列,并将获得的列作为H矩阵中未分配的列,执行根据H矩阵中未分配的列获取H矩阵中通过3次迭代能够恢复信息的列的步骤,以此类推,直到H矩阵中不存在未分配的列。
根据本公开的实施例,根据H矩阵中未分配的列获取通过i次迭代能够恢复信息的列,包括:根据H矩阵中未分配的行和未分配的列生成备选行列配对。根据获得的备选行列配对获取最优行列配对,并将获取的最优行列配对中的列加入至通过i次迭代能够恢复信息的列。更新H矩阵中未分配的行和未分配的列。循环执行根据H矩阵中未分配的行和未分配的列生成备选行列配对的步骤,直到更新未分配的行和未分配的列后H矩阵中不存在未分配的行。
根据本公开的实施例,循环执行根据H矩阵中未分配的行和未 分配的列生成备选行列配对的步骤,直到更新未分配的行和未分配的列后H矩阵中不存在未分配的行之后,还包括:获取除去最优行列配对的备选行列配对中未分配的行。当i值增加时,将获得的行作为H矩阵中未分配的行,执行根据H矩阵中未分配的行和未分配的列生成备选行列配对的步骤。
根据本公开的实施例,根据H矩阵中未分配的行和未分配的列生成备选行列配对,包括:获取H矩阵中与未分配的行相连且未分配的列作为第一备选列。根据获得的第一备选列获取行重最小的未分配的行作为第一备选行。获取与第一备选行相连且未分配的列作为第二备选列。获取与获得的第二备选列相连且未分配的行作为第二备选行。根据获得的第二备选行获取列重最小的第二备选列作为第三备选列。在获得的第三备选列中获取元素包含第一备选行的列,作为最优列。在第三备选列中获取与最优列相连且列重最小的行,与最优列组成备选行列配对。
根据本公开的实施例,根据获得的第一备选列获取行重最小的未分配的行作为第一备选行,包括:获取与每一个未分配的行相连的第一备选列的个数。获取相连第一备选列的个数最小的未分配的行作为第一备选行。
根据本公开的实施例,根据获得的第二备选行获取列重最小的第二备选列作为第三备选列,包括:获取与每一个第二备选列相连的第二备选行的个数。获取相连第二备选行的个数最小的第二别选列作为第三备选列。
根据本公开的实施例,根据获得的备选行列配对获取最优行列配对,包括:如果获得的备选行列配对的数量为一对,确定获得的备选行列配对为最优行列配对。
根据本公开的实施例,根据获得的备选行列配对获取最优行列配对,包括:如果获得的备选行列配对的数量大于一对,将获得的每一对备选行列配对转换成展开树。获取包含最少未凿空节点的展开树对应的备选行列配对作为目标行列配对。如果目标行列配对的数量为一对,确定目标行列配对对为最优行列配对。如果目标行列配对的数 量大于一对,在目标行列配对中随机选择一个配对作为最优行列配对。
根据本公开的实施例,在获得的能够恢复信息的比特位置中选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置,包括:对获得的能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置。在待选择比特位置中从第一个比特位置开始顺序选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置。
根据本公开的实施例,待选择比特位置是对得到的待传输数据块中能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列得到的,假设待传输数据块中能够恢复信息的比特位置为L 2={l 2,1,l 2,2...l 2,q},那么待选择比特位置是对L 2={l 2,1,l 2,2...l 2,q}中l 2,1,l 2,2...l 2,q按照信息恢复可靠性由高到低进行排列得到的,假设得到的待选择比特位置为L 3={l 2,5,l 2,q...l 2,8},即L 2和L 3中的元素都相同,只不过排列顺序可能不同。从待选择比特位置中顺序选择长度与第一交织比特长度相同的比特位置指的是从L 3顺序选择p个比特位置,所选择的p个比特位置即为目标交织比特位置。需要说明的是,该实施例适用于交织比特长度较大的情形。
根据本公开的实施例,在获得的能够恢复信息的比特位置中选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置,包括:对获得的能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置。对待选择比特位置进行重新排序,得到备选比特位置。在备选比特位置中从第一个比特位置开始顺序选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置。需要说明的是,相较于上述实施例,本实施例无论交织比特长度如何都适用。
根据本公开的实施例,对获得的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置,包括:对获得的能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到目标排列集合。对获得的比特位置按照与目标排列集合相同的排列方法进行排列,得到待选择比特位置。
根据本公开的实施例,对获得的能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到目标排列集合,包括:对获得的通过i次迭代能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到第i排列集合。将得到的第1排列集合、第2排列集合…第(N-1)排列集合中的元素顺序组合,得到目标排列集合。
根据本公开的实施例,对获得的通过i次迭代能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到第i排列集合,包括:在通过i次迭代能够恢复信息的列中获取未分配且列重最大的列,作为第四备选列。根据获得的第四备选列确定最优列。将最优列加入至第i调整集合。更新通过i次迭代能够恢复信息的列中未分配的列。循环执行在通过i次迭代能够恢复信息的列中获取未分配且列重最大的列,直到通过i次迭代能够恢复信息的列中不存在列。将得到的第i调整集合作为第i排列集合。
根据本公开的实施例,根据获得的第四备选列确定最优列,包括:如果获得的第四备选列的个数为一个,确定获得的第四备选列为最优列。
根据本公开的实施例,根据获得的第四备选列确定最优列,包括:如果获得的第四备选列的个数多于一个,获取第四备选列中列重最小的列作为第五备选列。如果第五备选列的个数为一个,确定第五备选列为最优列。如果第五备选列的个数多于一个,在第五备选列中随机选择一个列作为最优列。
根据本公开的实施例,对待进行比特位置进行重新排序,得到备选比特位置,包括:将获得的能够恢复信息的比特位置分为T组,得到T组每组长度为k的比特位置。将H矩阵的变量节点维度分布函数、校验节点维度分布函数和S个译码门限σ s作为最优搜索算法的输入,得到S个待选择比特长度以及对应的S种比例分布Μ={μ j};其中,s=1、2…S。在S个待选择比特长度中选择长度等于t*k的待选择比特长度,作为第二交织比特长度;t=1、2…T。获取与每一个第二交织比特长度对应的比例分布Μ={μ j},得到目标比例分布
Figure PCTCN2019128957-appb-000003
根据获得的能够恢复信息的比特位置和目标比例分布
Figure PCTCN2019128957-appb-000004
得到备选比特位置。
根据本公开的实施例,根据获得的能够恢复信息的比特位置和目标比例分布
Figure PCTCN2019128957-appb-000005
得到备选比特位置,包括:遍历t的取值并执行根据获得的能够恢复信息的比特位置和目标比例分布
Figure PCTCN2019128957-appb-000006
确定s个比特位置的操作,直到t=T,得到T个比特位置组。依次拼接获得的T个比特位置组,得到备选比特位置。
根据本公开的实施例,对获得的能够恢复信息的比特位置(L2)重新排序得到交织比特位置序列L3:确定L2后,将L2等分为T组,每组长度为s=q 0/T。利用方案一中的搜索算法分别确定长度为t·s时的最优比例分布
Figure PCTCN2019128957-appb-000007
其中,t=1,2,…,T。根据每段的比例分布从L2中选择相应比例的比特(优先选择恢复可靠性高的比特,即L2中靠前的比特),先根据比例分布
Figure PCTCN2019128957-appb-000008
确定前s个交织比特位置,再根据比例分布
Figure PCTCN2019128957-appb-000009
确定接下来的s个交织比特位置,以此类推,直到根据比例分布
Figure PCTCN2019128957-appb-000010
确定最后s个交织比特位置,最终确定交织比特位置序列L3。
从以上描述不难看出,本公开的核心是要获取H矩阵中能够恢复信息的列,并对所获取的列的信息恢复可靠性由高到低进行排列,因此下面用算法表述本公开的核心内容,其中,核心内容可以分为两个部分进行表示,分别是分组和排序,在算法描述开始前,先对算法中涉及的符号进行说明。
k:迭代次数序号。
G 0:不做置零处理的变量节点的集合。
G k:k-SR变量节点的集合。
G :还未做分配的变量节点的集合。
R 0:一个k-SR变量节点至少存在一个存活校验节点,当选择其中一个作为必定存活校验节点,其余的存活校验节点定义为R 0的一个子集。
R k:k-SR变量节点对应的必定存活校验节点的集合。
R :还未做分配的校验节点的集合。
Γ ρ:表示H矩阵中的第ρ行,元素“1”所在的列的位置。
Λ γ:表示H矩阵中的第γ列,元素“1”所在的行的位置。
rw eff(ρ,G):rw eff(ρ,G)=|Γ ρ∩G|,表示第ρ行的有效行重。
cw eff(γ,R):cw eff(γ,R)=|Λ γ∩R|,表示第γ列的有效列重。
Ψ:对应的展开数中未凿空节点的个数。
S(j):j-SR变量节点的展开树中未置零的变量节点数。
p 0:交织比特总长度。
M:可恢复变量节点的最大迭代恢复次数。
P j:做好排序的可恢复变量节点集合,越靠前的变量节点,恢复的可靠性越高。
下面对算法进行描述。
1.分组
步骤1:【初始化】对于一个给定的m×n的H矩阵,首先初始化相关系数:k=1;G 0=G k=R 0=R k=φ(空集);G ={1,2,…,n};R ={1,2,…,m};Γ ρ={γ:H ρ,γ=1且1≤γ≤n};Λ γ={ρ:H ρ,γ=1且1≤ρ≤m};对所有1≤j≤n,S(j)=0。
步骤2:【对列分组】对任意行ρ∈R ,生成一个集合
Figure PCTCN2019128957-appb-000011
表示H矩阵的第ρ行中元素“1”所在的列的有效位置。
步骤3:【寻找备选行】生成一个R 的子集Ω,其中Ω中的元素ω需满足
Figure PCTCN2019128957-appb-000012
Figure PCTCN2019128957-appb-000013
即备选行具有最小的有效行重(第一备选行)。
步骤4:【对行分组】对任意列
Figure PCTCN2019128957-appb-000014
其中ω∈Ω,(第二备选列)生成一个集合
Figure PCTCN2019128957-appb-000015
(第二备选行)表示H矩阵的第γ列中元素“1”所在的行的有效位置。
步骤5:【寻找最优行】生成一个Ω的子集Ω *,其满足
Figure PCTCN2019128957-appb-000016
Figure PCTCN2019128957-appb-000017
有(第三备选列)
Figure PCTCN2019128957-appb-000018
其中γ是
Figure PCTCN2019128957-appb-000019
中的任意一列,ω是Ω的任意一行,即备选行中的最优行具有最小的有效列重。
步骤6:【配对】为每个k-SR变量节点分配一个必定存活校验节点:最优行Ω *即得到的存活校验节点集合,从第ω *行中随机选择一个未分配的、且具有最小有效列重
Figure PCTCN2019128957-appb-000020
的变量节点g *,与校验节点ω *配 对得到(ω *,g *)。若Ω *中的所有行中,满足条件的变量节点g *不止一个,则配对为
Figure PCTCN2019128957-appb-000021
步骤7:【寻找最优配对】从Θ选取一组(ω *,g *),要求ω *需满足:对任意1≤j≤l,有
Figure PCTCN2019128957-appb-000022
其中
Figure PCTCN2019128957-appb-000023
若满足的配对不止一个,则随机选取一个。
步骤8:【更新】更新各个中间参数:G k=G k∪{g *};
Figure PCTCN2019128957-appb-000024
Figure PCTCN2019128957-appb-000025
R k=R k∪{ω *};
Figure PCTCN2019128957-appb-000026
Figure PCTCN2019128957-appb-000027
Figure PCTCN2019128957-appb-000028
则S(γ)=1,
Figure PCTCN2019128957-appb-000029
步骤9:【停止条件】若G =φ(空集),则停止该分组算法。
步骤10:【判断】若R ≠φ,则返回步骤2;若R =φ,则更新R ={ρ:ρ∈R 0且rw eff(ρ,G )>0},k=k+1,再返回步骤2。
2.排序
步骤1:【初始化】对于一个给定的m×n的H矩阵,首先初始化相关系数:k=1;P 0=φ;R={1,2,…,m};
步骤2:【停止条件】若k>M,则停止该排序算法,此时的P j即L 2
步骤3:【更新】Δp=p 0-|P|。
步骤4:【寻找备选列】生成一个G k的子集W,其满足对任意一列γ′∈W,有
Figure PCTCN2019128957-appb-000030
其中γ是G k中的任意一列。
步骤5:【寻找最优列】若|W|=1,则W中仅含的这列即最优列;若|W|>1,则选择W中列重最小的一列作为最优列g *,即
Figure PCTCN2019128957-appb-000031
有deg(g *)≤deg(γ′),若列重最小的列不止一个,则从中随机选择一个。
步骤6:【更新】更新中间参数:P=P∪{g *};G k=G k\{g *};
Figure PCTCN2019128957-appb-000032
Figure PCTCN2019128957-appb-000033
Δp=Δp j-1。
步骤7:【判断】若G k≠φ,则返回步骤4;若G k=φ,则更新k=k+1,R={1,2,…,m},再返回步骤4。
下面根据本公开的实施例提供一个具体的应用场景,图8为根据本公开的实施例的PON***上行突发信道下块内交织的仿真实验平台示意图,如图8所示,在发送端,先对数据进行信道编码,采用 的H矩阵为13x75x256准循环低密度奇偶校验(Quasi-CyclicLow Density Parity Check Code,QC-LDPC),码长为19200,码率为0.83;然后通过预设交织器(具体采用根据本公开的实施例的数据处理方法),将待传输数据块时隙前端的比特分散到通过最优交织方案搜索得到的交织比特位置处;经二进制相移键控(Binary Phase Shift Keying,BPSK)调制后进入光链路;在接收端,使用雪崩光电二极管(Avalanche Photo Diode,APD)做光电探测,信号经BPSK软解调后得到每个比特的初始LLR;由于上行信道工作于突发模式,待传输数据块时隙前端将会出现大片的连续突发错误,为了进一步提高译码性能,可以将这部分信息的初始LLR置为零;之后再通过与预设交织器对应的解交织器,最后通过LDPC译码得到数据输出。
该仿真实例中的信道模型是根据实际波分复用无源光网络(Wavelength Division Multiplexing Passive Optical Network,WDM-PON)上行信道特征建立的吉尔伯特Gilbert信道+高斯信道模型。其中,Gilbert信道模型是一个双状态马尔可夫链Markov链,分别为Good状态和Bad状态。在Good状态下,比特不出现错误;在Bad状态下,比特会出现翻转。转移概率Prob(Good→Bad)要小于Prob(Bad→Good),最终Markov链会收敛到Good状态。因此连续突发错误主要分布于待传输数据块前端,与实际情况相符合。并且根据该信道模型得到误码位置L 1以及交织比特长度p 0。当Prob(Good→Bad)=0.0032,Prob(Bad→Good)=0.037且高斯信道的信道比EbN0=3.0dB时的误码位置分布可以如图9和图10所示,可以看到在待传输数据块前端存在大量的连续误码,连续误码的长度就是|L 1|。
以上是块内交织的仿真实例,对于块间交织,其基本流程与之类似,图11为根据本公开的实施例的PON***上行突发信号传输下块间交织的仿真实验平台示意图,在发送端,先对每个数据块进行信道编码,N个码块作为一个交织解交织单元处理,通过设计的最优交织器,将待传输数据块时隙前端的比特分散到最优交织方案搜索得到的交织比特位置处,完成块间交织;经BPSK调制后进入光纤信道传 输;在接收端,做BPSK软解调后得到每个比特的初始LLR;因为经过突发信道后,待传输数据块时隙前端将会出现大片的连续突发错误,为了进一步提高译码性能,可以将这部分信息的初始LLR置为零;之后再通过与最优交织器对应的解交织器,最后通过LDPC译码得到数据输出。
图12为根据本公开的实施例的数据处理装置的结构示意图。如图12所示,该数据处理装置2包括获取模块21和处理模块22。
获取模块21,用于获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度。
获取模块21,还用于获取待传输数据块中能够恢复信息的比特位置。
处理模块22,用于在获得的能够恢复信息的比特位置中选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置。
处理模块22,还用于将预期出现连续错误的比特位置上的比特和目标交织比特位置上的比特互相交织。
根据本公开的实施例,处理模块22,还用于将经过交织的预期出现连续错误的比特位置上的比特的LLR置为0。
根据本公开的实施例,获取模块21,具体用于当传输待传输数据块的信道的编码方式为LDPC编码时,根据H矩阵获取待传输数据块中能够恢复信息的比特位置;其中,H矩阵为LDPC编码中的校验矩阵。
根据本公开的实施例,获取模块21具体用于:获取H矩阵中能够恢复信息的列。在待传输数据块中获取与获得的列的序号对应的比特位置,得到能够恢复信息的比特位置。
根据本公开的实施例,获取模块21具体用于:根据H矩阵中未分配的列获取通过i次迭代能够恢复信息的列。当i值增加时,在未分配列中获取除去获得的能够恢复信息的列后的列,并将获得的列作为H矩阵中未分配的列,执行根据H矩阵中未分配的列获取H矩阵中通过i次迭代能够恢复信息的列的步骤,直到H矩阵中不存在未分配的列;其中,i=1、2…N,N为使H矩阵中不存在未分配的列的迭 代次数。
根据本公开的实施例,获取模块21具体用于:根据H矩阵中未分配的行和未分配的列生成备选行列配对。根据获得的备选行列配对获取最优行列配对,并获取最优行列配对中的列加入至通过i次迭代能够恢复信息的列。更新H矩阵中未分配的行和未分配的列。循环执行根据H矩阵中未分配的行和未分配的列生成备选行列配对的步骤,直到更新未分配的行和未分配的列后H矩阵中不存在未分配的行。
根据本公开的实施例,获取模块21,还用于获取除去最优配对的备选行列配对中未分配的行。
根据本公开的实施例,处理模块22,还用于当i值增加时,将获得的行作为H矩阵中未分配的行,执行根据H矩阵中未分配的行和未分配的列生成备选行列配对的步骤。
根据本公开的实施例,获取模块21具体用于:获取H矩阵中与未分配的行相连且未分配的列作为第一备选列。根据获得的第一备选列获取行重最小的未分配的行作为第一备选行。获取与第一备选行相连且未分配的列作为第二备选列。获取与获得的第二备选列相连且未分配的行作为第二备选行。根据获得的第二备选行获取列重最小的第二备选列作为第三备选列。在获得的第三备选列中获取元素包含第一备选行的列,作为最优列。在第三备选列中获取与最优列相连且列重最小的行,与最优列组成备选行列配对。
根据本公开的实施例,获取模块21具体用于:获取与每一个未分配的行相连的第一备选列的个数。获取相连第一备选列的个数最小的未分配的行作为第一备选行。
根据本公开的实施例,获取模块21具体用于:获取与每一个第二备选列相连的第二备选行的个数。获取相连第二备选行的个数最小的第二别选列作为第三备选列。
根据本公开的实施例,获取模块21,具体用于如果获得的备选行列配对的数量为一对,确定获得的备选行列配对为最优行列配对。
根据本公开的实施例,获取模块21具体用于:如果获得的备选 行列配对的数量大于一对,将获得的每一对备选行列配对转换成展开树。获取包含最少未凿空节点的展开树对应的备选行列配对作为目标行列配对。如果目标行列配对的数量为一对,确定目标行列配对对为最优配对。如果目标行列配对的数量大于一对,在目标行列配对中随机选择一个配对作为最优行列配对。
根据本公开的实施例,处理模块22具体用于:对获得的能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置。在待选择比特位置中从第一个比特位置开始顺序选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置。
根据本公开的实施例,处理模块22具体用于:对获得的能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置。对待选择比特位置进行重新排序,得到备选比特位置。在备选比特位置中从第一个比特位置开始顺序选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置。
根据本公开的实施例,处理模块22具体用于:对获得的能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到目标排列集合。对获得的比特位置按照与目标排列集合相同的排列方法进行排列,得到待选择比特位置。
根据本公开的实施例,处理模块22具体用于:对获得的通过i次迭代能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到第i排列集合。将得到的第1排列集合、第2排列集合…第(N-1)排列集合中的元素顺序组合,得到目标排列集合。
根据本公开的实施例,处理模块具体用于:在通过i次迭代能够恢复信息的列中获取未分配且列重最大的列,作为第四备选列。根据获得的第四备选列确定最优列。将最优列加入至第i调整集合。更新通过i次迭代能够恢复信息的列中未分配的列。循环执行在通过i次迭代能够恢复信息的列中获取未分配且列重最大的列,直到通过i次迭代能够恢复信息的列中不存在列。将得到的第i调整集合作为第i排列集合。
根据本公开的实施例,处理模块22,具体用于如果获得的第四 备选列的个数为一个,确定获得的第四备选列为最优列。
根据本公开的实施例,处理模块22具体用于:如果获得的第四备选列的个数多于一个,获取第四备选列中列重最小的列作为第五备选列。如果第五备选列的个数为一个,确定第五备选列为最优列。如果第五备选列的个数多于一个,在第五备选列中随机选择一个列作为最优列。
根据本公开的实施例,处理模块22具体用于:将获得的能够恢复信息的比特位置分为T组,得到T组每组长度为k的比特位置。将H矩阵的变量节点维度分布函数、校验节点维度分布函数和S个译码门限σ s作为最优搜索算法的输入,得到S个待选择比特长度以及对应的S种比例分布Μ={μ j};其中,s=1、2…S。在S个待选择比特长度中选择长度等于t*k的待选择比特长度,作为第二交织比特长度;t=1、2…T。获取与每一个第二交织比特长度对应的比例分布Μ={μ j},得到目标比例分布
Figure PCTCN2019128957-appb-000034
根据获得的能够恢复信息的比特位置和目标比例分布
Figure PCTCN2019128957-appb-000035
得到备选比特位置。
根据本公开的实施例,处理模块22具体用于:遍历t的取值并执行根据获得的能够恢复信息的比特位置和目标比例分布
Figure PCTCN2019128957-appb-000036
确定s个比特位置的操作,直到t=T,得到T个比特位置组。依次拼接获得的T个比特位置组,得到备选比特位置。
根据本公开的实施例的数据处理装置,由于获取了待传输数据块中能够恢复信息的比特位置,并在获得的比特位置中按照信息恢复可靠性由高到低选择了个数与预期出现连续错误比特的个数相同的比特位置作为目标交织比特位置,因此目标交织比特位置是信息恢复可靠性较高的位置,用这些位置上的比特与预期出现连续错误的比特位置上的比特交织,保证了预期出现连续错误的比特位置上都是容易恢复信息且恢复可靠性较高的比特,从而简化了后续的译码过程,减少了译码开销。
在实际应用中,所述获取模块21和处理模块22均可由位于数据处理装置中的中央处理器(Central Processing Unit,CPU)、微处理器(Micro Processor Unit,MPU)、数字信号处理器(Digital Signal  Processor,DSP)或现场可编程门阵列(Field Programmable Gate Array,FPGA)等实现。
本公开的实施例还提供一种数据处理装置,包括存储器和处理器,其中,存储器中存储有可被处理器执行的指令,所述指令在被处理器执行时,使得数据处理装置执行如上所述的根据本公开的实施例的数据处理方法。
本公开的实施例还提供一种计算机可读存储介质,存储介质上存储有计算机可执行指令,计算机可执行指令在由处理器执行时,执行如上所述的根据本公开的实施例的数据处理方法。
虽然本公开所揭露的实施方式如上,但的内容仅为便于理解本公开而采用的实施方式,并非用以限定本公开。任何本公开所属领域内的技术人员,在不脱离本公开所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本公开的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (24)

  1. 一种数据处理方法,包括:
    获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;
    获取所述待传输数据块中的能够恢复信息的比特位置;
    在获得的能够恢复信息的比特位置中选择长度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;
    将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
  2. 根据权利要求1所述的数据处理方法,其中,所述将预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织之后,还包括:
    将经过交织的所述预期出现连续错误的比特位置上的比特的对数似然比(LLR)置为0。
  3. 根据权利要求1或2所述的数据处理方法,其中,所述获取所述待传输数据块中能够恢复信息的比特位置,包括:
    当传输所述待传输数据块的信道的编码方式为低密度奇偶校验(LDPC)编码时,根据H矩阵获取所述待传输数据块中的能够恢复信息的比特位置,其中,所述H矩阵为所述LDPC编码中的校验矩阵。
  4. 根据权利要求3所述的数据处理方法,其中,所述根据H矩阵获取所述待传输数据块中的能够恢复信息的比特位置,包括:
    获取所述H矩阵中能够恢复信息的列;
    在所述待传输数据块中获取与获得的列的序号对应的比特位置,得到所述能够恢复信息的比特位置。
  5. 根据权利要求4所述的数据处理方法,其中,所述获取所述H矩阵中能够恢复信息的列,包括:
    根据H矩阵中的未分配的列获取通过i次迭代能够恢复信息的列;
    当i值增加时,在所述未分配的列中获取除去获得的能够恢复信息的列后的列,并将获得的列作为所述H矩阵中未分配的列,执行所述根据所述H矩阵中的未分配的列获取所述H矩阵中通过i次迭代能够恢复信息的列的步骤,直到所述H矩阵中不存在未分配的列,其中,i=1、2…N,N为使所述H矩阵中不存在未分配的列的迭代次数。
  6. 根据权利要求5所述的数据处理方法,其中,所述根据所述H矩阵中的未分配的列获取通过i次迭代能够恢复信息的列,包括:
    根据所述H矩阵中的未分配的行和未分配的列生成备选行列配对;
    根据获得的备选行列配对获取最优行列配对,并将获取的所述最优行列配对中的列加入至所述通过i次迭代能够恢复信息的列;
    更新所述H矩阵中的未分配的行和未分配的列;
    循环执行所述根据所述H矩阵中的未分配的行和未分配的列生成备选行列配对的步骤,直到更新未分配的行和未分配的列后的所述H矩阵中不存在未分配的行。
  7. 根据权利要求6所述的数据处理方法,其中,所述循环执行根据所述H矩阵中的未分配的行和未分配的列生成备选行列配对的步骤,直到更新未分配的行和未分配的列后的所述H矩阵中不存在未分配的行之后,还包括:
    获取除去所述最优行列配对的所述备选行列配对中的未分配的行;
    当i值增加时,将获得的行作为所述H矩阵中的未分配的行,执行所述根据所述H矩阵中的未分配的行和未分配的列生成备选行 列配对的步骤。
  8. 根据权利要求6所述的数据处理方法,其中,所述根据所述H矩阵中的未分配的行和未分配的列生成备选行列配对,包括:
    获取所述H矩阵中与所述未分配的行相连且未分配的列作为第一备选列;
    根据获得的第一备选列获取行重最小的未分配的行作为第一备选行;
    获取与所述第一备选行相连且未分配的列作为第二备选列;
    获取与获得的第二备选列相连且未分配的行作为第二备选行;
    根据获得的第二备选行获取列重最小的第二备选列作为第三备选列;
    在获得的第三备选列中获取元素包含所述第一备选行的列,作为最优列;
    在所述第三备选列中获取与所述最优列相连且列重最小的行,与所述最优列组成所述备选行列配对。
  9. 根据权利要求8所述的数据处理方法,其中,所述根据获得的第一备选列获取行重最小的未分配的行作为第一备选行,包括:
    获取与每一个未分配的行相连的第一备选列的个数;
    获取相连第一备选列的个数最小的未分配的行作为所述第一备选行。
  10. 根据权利要求8所述的数据处理方法,其中,所述根据获得的第二备选行获取列重最小的第二备选列作为第三备选列,包括:
    获取与每一个第二备选列相连的第二备选行的个数;
    获取相连第二备选行的个数最小的第二别选列作为所述第三备选列。
  11. 根据权利要求6所述的数据处理方法,其中,所述根据获得 的备选行列配对获取最优行列配对,包括:
    如果获得的备选行列配对的数量为一对,确定获得的备选行列配对为所述最优行列配对。
  12. 根据权利要求6所述的数据处理方法,其中,所述根据获得的备选行列配对获取最优行列配对,包括:
    如果获得的备选行列配对的数量大于一对,将获得的每一对备选行列配对转换成展开树;
    获取与包含最少未凿空节点的展开树对应的备选行列配对作为目标行列配对;
    如果所述目标行列配对的数量为一对,确定所述目标行列配对对为所述最优行列配对;
    如果所述目标行列配对的数量大于一对,在所述目标行列配对中随机选择一个配对作为所述最优行列配对。
  13. 根据权利要求5所述的数据处理方法,其中,所述在获得的能够恢复信息的比特位置中选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置,包括:
    对获得的能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置;
    在所述待选择比特位置中从第一个比特位置开始顺序选择长度与所述第一交织比特长度相同的比特位置,作为所述目标交织比特位置。
  14. 根据权利要求5所述的数据处理方法,其中,所述在获得的能够恢复信息的比特位置中选择长度与第一交织比特长度相同的比特位置,作为目标交织比特位置,包括:
    对获得的能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置;
    对所述待选择比特位置进行重新排序,得到备选比特位置;
    在所述备选比特位置中从第一个比特位置开始顺序选择长度与所述第一交织比特长度相同的比特位置,作为所述目标交织比特位置。
  15. 根据权利要求13或14所述的数据处理方法,其中,所述对获得的能够恢复信息的比特位置按照信息恢复可靠性由高到低进行排列,得到待选择比特位置,包括:
    对获得的能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到目标排列集合;
    对获得的比特位置按照与所述目标排列集合相同的排列方法进行排列,得到所述待选择比特位置。
  16. 根据权利要求15所述的数据处理方法,其中,所述对获得的能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到目标排列集合,包括:
    对获得的通过i次迭代能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到第i排列集合;
    将得到的第1排列集合、第2排列集合…第(N-1)排列集合中的元素顺序组合,得到所述目标排列集合。
  17. 根据权利要求16所述的数据处理方法,其中,所述对获得的通过i次迭代能够恢复信息的列按照信息恢复可靠性由高到低进行排列,得到第i排列集合,包括:
    在所述通过i次迭代能够恢复信息的列中获取未分配且列重最大的列,作为第四备选列;
    根据获得的第四备选列确定最优列;
    将所述最优列加入至第i调整集合;
    更新所述通过i次迭代能够恢复信息的列中未分配的列;
    循环执行所述在通过i次迭代能够恢复信息的列中获取未分配且列重最大的列,直到所述通过i次迭代能够恢复信息的列中不存在列;
    将得到的所述第i调整集合作为所述第i排列集合。
  18. 根据权利要求17所述的数据处理方法,其中,所述根据获得的第四备选列确定最优列,包括:
    如果获得的第四备选列的个数为一个,确定获得的第四备选列为所述最优列。
  19. 根据权利要求17所述的数据处理方法,其中,所述根据获得的第四备选列确定最优列,包括:
    如果获得的第四备选列的个数多于一个,获取所述第四备选列中列重最小的列作为第五备选列;
    如果所述第五备选列的个数为一个,确定所述第五备选列为所述最优列;
    如果所述第五备选列的个数多于一个,在所述第五备选列中随机选择一个列作为所述最优列。
  20. 根据权利要求14所述的数据处理方法,其中,所述对所述待选择比特位置进行重新排序,得到备选比特位置,包括:
    将获得的能够恢复信息的比特位置分为T组,得到T组每组长度为k的比特位置;
    将所述H矩阵的变量节点维度分布函数、校验节点维度分布函数和S个译码门限σ s作为最优搜索算法的输入,得到S个待选择比特长度以及对应的S种比例分布Μ={μ j},其中,s=1、2…S;
    在所述S个待选择比特长度中选择长度等于t*k的待选择比特长度,作为第二交织比特长度,其中,t=1、2…T;
    获取与每一个第二交织比特长度对应的比例分布Μ={μ j},得到目标比例分布
    Figure PCTCN2019128957-appb-100001
    根据获得的能够恢复信息的比特位置和所述目标比例分布
    Figure PCTCN2019128957-appb-100002
    得到所述备选比特位置。
  21. 根据权利要求20所述的数据处理方法,其中,所述根据获得的能够恢复信息的比特位置和目标比例分布
    Figure PCTCN2019128957-appb-100003
    得到备选比特位置,包括:
    遍历t的取值并执行根据获得的能够恢复信息的比特位置和所述目标比例分布
    Figure PCTCN2019128957-appb-100004
    确定s个比特位置的操作,直到t=T,得到T个比特位置组;
    依次拼接获得的T个比特位置组,得到所述备选比特位置。
  22. 一种数据处理装置,包括:
    获取模块,用于获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;
    所述获取模块,还用于获取所述待传输数据块中的能够恢复信息的比特位置;
    处理模块,用于在获得的能够恢复信息的比特位置中选择长度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;
    所述处理模块,还用于将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
  23. 一种数据处理装置,包括:处理器和存储器,其中,存储器中存储有以下可被处理器执行的指令:
    获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;
    获取所述待传输数据块中的能够恢复信息的比特位置;
    在获得的能够恢复信息的比特位置中选择长度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;
    将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
  24. 一种计算机可读存储介质,所述存储介质上存储有计算机可执行指令,所述计算机可执行指令用于执行以下步骤:
    获取待传输数据块中预期出现连续错误的比特位置和长度,并将获得的长度作为第一交织比特长度;
    获取所述待传输数据块中的能够恢复信息的比特位置;
    在获得的能够恢复信息的比特位置中选择长度与所述第一交织比特长度相同的比特位置,作为目标交织比特位置;
    将所述预期出现连续错误的比特位置上的比特和所述目标交织比特位置上的比特互相交织。
PCT/CN2019/128957 2018-12-29 2019-12-27 一种数据处理方法及装置 WO2020135654A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811637108.6 2018-12-29
CN201811637108.6A CN111384979A (zh) 2018-12-29 2018-12-29 一种数据处理方法及装置

Publications (1)

Publication Number Publication Date
WO2020135654A1 true WO2020135654A1 (zh) 2020-07-02

Family

ID=71127704

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/128957 WO2020135654A1 (zh) 2018-12-29 2019-12-27 一种数据处理方法及装置

Country Status (2)

Country Link
CN (1) CN111384979A (zh)
WO (1) WO2020135654A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07202716A (ja) * 1994-01-05 1995-08-04 Fujitsu Ltd 誤り訂正復号方法及び誤り訂正復号回路
CN101488819A (zh) * 2008-01-15 2009-07-22 华为技术有限公司 一种低密度奇偶校验码编码调制方法及装置
TW201201517A (en) * 2010-06-30 2012-01-01 Ibm Method and system for detecting the frame boundary of a data stream received in forward error correction layer in the Ethernet
CN108631913A (zh) * 2017-03-23 2018-10-09 华为技术有限公司 一种基于准循环低密度校验码的交织方法及相关设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100493276B1 (ko) * 1998-10-28 2005-08-04 엘지전자 주식회사 터보코드에적용되는오류성향비트교환을이용한인터리빙방법
US7386766B2 (en) * 2004-03-05 2008-06-10 Thomson Licensing Address generation apparatus for turbo interleaver and deinterleaver in W-CDMA systems
US8621289B2 (en) * 2010-07-14 2013-12-31 Lsi Corporation Local and global interleaving/de-interleaving on values in an information word
EP2728756B1 (en) * 2011-06-29 2017-08-23 Nec Corporation Radio transmitting device and method with improved distribution of code blocks on modulation symbols
WO2012083714A1 (zh) * 2011-08-23 2012-06-28 华为技术有限公司 Turbo码数据交织处理方法和用于交织turbo码数据的交织器
JP6363882B2 (ja) * 2013-06-19 2018-07-25 日本放送協会 送信装置、受信装置及び伝送システム
CN105490684B (zh) * 2015-11-30 2019-06-04 华侨大学 一种有限长ldpc码的打孔算法
CN107863970A (zh) * 2016-09-22 2018-03-30 华为技术有限公司 交织方法与解交织方法及设备
WO2018094658A1 (zh) * 2016-11-24 2018-05-31 华为技术有限公司 一种数据传输的方法、发送设备及接收设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07202716A (ja) * 1994-01-05 1995-08-04 Fujitsu Ltd 誤り訂正復号方法及び誤り訂正復号回路
CN101488819A (zh) * 2008-01-15 2009-07-22 华为技术有限公司 一种低密度奇偶校验码编码调制方法及装置
TW201201517A (en) * 2010-06-30 2012-01-01 Ibm Method and system for detecting the frame boundary of a data stream received in forward error correction layer in the Ethernet
CN108631913A (zh) * 2017-03-23 2018-10-09 华为技术有限公司 一种基于准循环低密度校验码的交织方法及相关设备

Also Published As

Publication number Publication date
CN111384979A (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
CN110235374B (zh) 用于发送经编码的码字的发送器、方法以及非暂时计算机可读存储介质
US20180357530A1 (en) Deep learning decoding of error correcting codes
RU2450442C2 (ru) Способ и устройство для кодирования и декодирования канала в системе связи с использованием кодов с низкой плотностью проверок на четность
TWI401892B (zh) 在使用低密度同位檢查碼的通訊系統中的通道編碼與解碼的方法及其裝置
CN105991227B (zh) 数据编码方法及装置
CN1983861A (zh) 通信***中发送/接收数据的装置和方法
KR20090003164A (ko) 검사 행렬 생성 방법
US9722634B2 (en) Multiple component codes based generalized low-density parity-check codes for high-speed optical transport
KR100975695B1 (ko) 통신 시스템에서 신호 수신 장치 및 방법
CN103731160A (zh) 分组空间耦合低密度奇偶校验编码方法
CN107404321A (zh) 用于纠错码解码的方法和设备
CN106254030B (zh) 无速率Spinal码的双向编译码方法
CN100508442C (zh) 一种编译码方法及编译码装置
CN110999092B (zh) 非二进制ldpc码的简化的预排序的基于校正子的扩展最小和(ems)解码
CN107733557A (zh) 一种数据发送的方法及装置、通信设备
CN101488760A (zh) 一种低码率ldpc码的编码方法
KR100943602B1 (ko) 통신 시스템에서 신호 수신 장치 및 방법
CN108777605A (zh) 适用于块衰落信道的多链sc-ldpc编码方法
CN103444113A (zh) 发射分开的信令数据的信令数据发射
CN108206722B (zh) 高码率数据发送方法和装置
WO2020135654A1 (zh) 一种数据处理方法及装置
WO2019161777A1 (zh) 数据处理方法及装置
CN116707707A (zh) 联合极化检测译码方法及相关设备
KR102203029B1 (ko) OvXDM시스템에 적용되는 일종의 쾌속적 디코딩 방법, 장치 및 OvXDM 시스템
CN103095310B (zh) 一种适用于无线信道的lt码的译码电路

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

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 09.11.2021)

122 Ep: pct application non-entry in european phase

Ref document number: 19905186

Country of ref document: EP

Kind code of ref document: A1