IEEE C802.16m-09/0204r1 Project IEEE 802.16 Broadband Wireless Access Working Group <http://ieee802.org/16> Title Structured LDPC coding for IEEE 802.16m Date Submitted 2009-01-07 Source(s) Jin Xu, Bo Sun E-mail: ZTE Corporation [email protected], [email protected], *<http://standards.ieee.org/faqs/affiliationFAQ.html> Re: IEEE 802.16m-08/053r1 –Call for Comments and Contributions on Project 802.16m Amendment Working Document; Channel Coding and HARQ Abstract This proposal gives a description about structured LDPC coding. Purpose To be discussed and adopted by TGm for use in the IEEE 802.16m Amendment Working Document Notice Release Patent Policy This document does not represent the agreed views of the IEEE 802.16 Working Group or any of its subgroups. It represents only the views of the participants listed in the “Source(s)” field above. It is offered as a basis for discussion. It is not binding on the contributor(s), who reserve(s) the right to add, amend or withdraw material contained herein. The contributor grants a free, irrevocable license to the IEEE to incorporate material contained in this contribution, and any modifications thereof, in the creation of an IEEE Standards publication; to copyright in the IEEE’s name any IEEE Standards publication even though it may include portions of this contribution; and at the IEEE’s sole discretion to permit others to reproduce in whole or in part the resulting IEEE Standards publication. The contributor also acknowledges and accepts that this contribution may be made public by IEEE 802.16. The contributor is familiar with the IEEE-SA Patent Policy and Procedures: <http://standards.ieee.org/guides/bylaws/sect6-7.html#6> and <http://standards.ieee.org/guides/opman/sect6.html#6.3>. Further information is located at <http://standards.ieee.org/board/pat/pat-material.html> and <http://standards.ieee.org/board/pat>. Structured LDPC coding for IEEE 802.16m Jin Xu, Bo Sun ZTE Corporation 1 Introduction As defined in IEEE 802.16m SDD_r6 [1], LDPC is FFS. This proposal is to suggest structured LDPC codes, which can not only provide flexible code rate and code size, but also support IR-HARQ. Our scheme includes matrix generation and encoding and rate matching (RM). 2 Discussion on LDPC Coding 2.1 Matrix definition and description of structured LDPC codes 1 IEEE C802.16m-09/0204r1 The Parity check matrix of structured LDPC Codes is defined by a matrix H of size (mb z ) (nb z ) , which consists of blocks of circularly shifted identity matrices or zero matrices of size z z , of the form as following: P h00b hb P 10 H hb P mb 0 b P h02 b P h12 hmb b 1 P P h0bnb h1bnb b P h11 P P P Hb hmb b nb P b P h01 hmb b 2 hb If integer hijb 1 , define P ij 0 . hb hb If integer hijb 1 , define P ij ( P) ij and P is a z z standard permutation matrix of the form: 0 1 0 0 0 0 1 0 P 0 0 0 1 1 0 0 0 The size of H is M N , here N nb z, M mb z . And H b of size mb nb has the form: h00b b h10 Hb hmb 0 b h01b h02b h11b h12b hmb b 1 hmb b 2 h0bnb h1bnb hmb b nb For example, a matrix H is shown as following: 1 0 0 H 0 1 0 0 0 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 1 0 Actually a base matrix Hb and an expand factor z together can be used to represent H. z= 3 and 0 1 0 1 Hb = 2 1 2 1 Due to the structured characteristic of parity check matrix, the parity check matrix of LDPC codes can be fully described by small set parameters, which results in very low complexity implementations. Actually we only need base matrix H b , instead of parity check matrix H, to perform encoding and decoding. The encoding and decoding algorithms become the matrix calculation of size mb nb , the basic structure of encoder and decoder only depends on the positions of the non-negative-one elements in base matrix. 2 IEEE C802.16m-09/0204r1 2.2 Mother Code Set of structured LDPC codes to support single code rate and different code sizes To generate a LDPC code set of a certain code rate and various code sizes, a uniform base matrix H uniform is b defined. In order to obtain the base matrix of certain code size, the uniform base matrix has to be modified to generate a modified base matrix H bmodified , which will really be used in the encoder/decoder of the LDPC code of certain code size. That is to say, for the LDPC codes of different code sizes and the same code rate, the positions of non-negative-one elements of their base matrices is the same, and the values of non-negative-one elements of their base matrices need to be changed. Here is an example of rate 1/2 LDPC codes with different code sizes. A uniform base matrix constructed by us is used to describe the LDPC code set. The code rate of the designed LDPC codes is always 1/2, and the designed information block sizes increase from 192 to 10240, and the increasing step is 16, That is to say, K=192,192+16,192+2*16,192+3*16,…, 10240. The size of base matrix is 16×32,namely, of rate 1/2 LDPC code mb 16 and nb 32 . So expand factors z =12:1:640. One uniform base matrix H uniform b set is defined as following: H uniform H bsystem | H bparity b H bsystem H bparity 3 IEEE C802.16m-09/0204r1 To obtain the LDPC code of certain code size, the uniform base matrix above has to be modified and then can be regarded as the base matrix H bmodified , which together with expand factor z can be used to define the parity check matrix H of the LDPC code. Base Matrix Modification Rule is defined as following: hb For each non-negative-one elements of the uniform base matrix above, the value ij should be modified. Let (hijb)mod ified represents the i-th row, j-th column element of modified base matrix H bmodified , (hijb ) uniform represents the i-th row, j-th column element of the uniform base matrix H uniform given by us. Then b z (hij b )mod ified (hij b )uniform zmax zmax is the largest expand factor, here equals to 640, and z is the currently used expand factor uniquely corresponding to the currently used code size. denotes the operation that rounds the elements in it to the nearest integers towards minus infinity. The characteristic of our matrix design includes: 1 For all code sizes, the best degree distribution has been selected. 2 For all code sizes, suitable for shortening and puncturing. 3 For all rows of parity check matrix, row weight is always 8, which decides the complexity of decoder. Here are two examples of modified base matrix created by single uniform base matrix . Information block size K= 288 H bmod ified 4 IEEE C802.16m-09/0204r1 Information block size K=5120 (N , K) FIR 2.3 Basematrix Generation for LDPC Encode Process The maximum number of soft channel bits available in the virtual buffer is N BUF , which is signaled by higher layers of each HARQ transmission. N FIR is the maximum possible codeword size for the encode of K information bits in the scenario of full Incremental Redundancy. N N FIR BUF Nmax N max N BUF Nmax N BUF Here, N max 3 K and let r K / N FIR . Let r K / N FIR . There are three steps to generate the needed base matrix. If r 1/ 2 ,Step 1 is needed; _ extension (m) H buniform and m 0 . Otherwise, Step 1 is neglect, and H uniform b - Step 1: Compute m kb r nb , and then m rows and m columns shall be added to the last row and the last column of H uniform b to generate an extended base matrix 5 _ extension H uniform (m) of b IEEE C802.16m-09/0204r1 _ extension (m) is depicted by Figure 1 and is defined as size (mb m) (nb m) , here 1 m 16 . H uniform b follows: nb kb mb m 16 mb -1 Rate ½ Mother LDPC Base Matrix the matrix part of the added m rows 0 m 16 -1 Systematic bits 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Rate 1/3 Extended LDPC Base Matrix 0 0 0 0 0 0 0 Puncturing parity bits 0 0 Extending parity bits uniform _ extension Figure 1 Extended LDPC base matrix H b (m) for k = 1 to k = m , bk , 2 ak , ,4 bk ,3 ak ,2 , bk ,4 ak ,3 , bk ,5 ak ,6 , bk ,6 ak ,7 bk , kb ( k mb / 21) mod mb 1 0 , bk ,k nb 0 , others in the k-th row are -1. end for Here, k indicates the row index for the added m rows, bi , j and ai , j denotes the i-th row and the j-th column H uniform element of the matrix part of the added m rows defined by Figure 1 and b respectively. Where, the row and column index begins from 1. - Step 2: Compute the expand factor z K kb . _ extension (m) can be modified into H bmod ified _ extension (m) by Scale-Floor rule in Section II.B. - Step 3: H uniform b H bmod ified _ extension (m) is the base matrix of ((nb m) z, kb z ) LDPC code. 2.4 LDPC HARQ subpacket generation Each HARQ transmission transmits a HARQ subpacket, and then the generation of HARQ subpacket needs to be defined. Proposed scheme selects some specific bits from the codeword produced by encoder to generate a HARQ subpacket. Figure 2 shows a block diagram of subpacket generation. For the first transmission, the subpacket is generated to select the consecutive interleaved bit sequence that starts from the first bit of the systematic part of the codeword from LDPC encoder. The length of the subpacket is chosen according to the needed coding rate reflecting the channel condition. The first subpacket can also be used as a codeword with the needed coding rate for a packet where HARQ is not applied. 6 IEEE C802.16m-09/0204r1 Choose values of kB and l Pad known bits LDPC encode Delete padded bits Puncturing parity bits permutation Codeword bits selection Figure 2 Block diagram of LDPC HARQ subpacket generation Let the input information block (packet) size is K. Based on rate compatible codes, the generation procedure has been described as following: Step 1: for any desired packet size K, choose values of kB and l such that kB*2l is greater than k by the smallest possible amount. Step 2: pad d= kB*2l -K known bits into K bits information block, the position for padded bits are chosen from the second information column of the base parity check matrix. Step 3: encode kB*2l bits information block with padded zero, and N bits codeword is generated, update HARQ buffer to orderly store the generated codeword except d padded known bits. When Ltotal HB Base matrix When kBl Rm , and expand factor l can be applied for encoding. Ltotal N FIR Base matrix Others, kBl N= Rm , N= N FIR H extension (mB max ) B N= and expand factor l can be applied for encoding. Ltotal 7 IEEE C802.16m-09/0204r1 Base matrix H extension (mB max ) B and expand factor l can be applied for encoding. nB is chosen to be the smallest H extension (nB k B ) integer such that nB*2l>= Ltotal + d, Base matrix B and expand factor l can be applied for encoding, the codeword of size n *2l can be generated, the last n *2l - Ltotal of the codeword will be punctured. B B k Here, let Ltotal L j , j 0 Rm is the mother code rate, puncturing mother codeword can attain the LDPC codes of any rate larger than Rm , extending mother codeword can attain the LDPC codes of any rate less than Rm . N FIR be the lowest code rate in the scenario of full Incremental Redundancy; for MS, N FIR can be defined by the capability of MS. Lk be the length of the k-th subpacket Permute puncturing parity bits of LDPC HARQ mother codeword and keep the order of systematic bits A , A , , AN FIR 1 and extending parity. Let the coded bits before the permutation be 0 1 , let the coded bits after the B , B , , BN FIR 1 permutation be 0 1 . The permutation is defined by Ak k K and k nb z x Bk A ot her wi se k x mod z PV k x / z kb z x Here, PV (i ) indicates the i-th element of the puncturing pattern vector PV , k 0,1, PV=[16,26,20,30,28,22,24,18,31,29,27,25,23,21,19,17]; , N FIR 1 . Step 5: Select Lk bits from said HARQ buffer to form the k-th subpacket. The selection rule has been defined by the following formula, the right side of the formula denotes some position in N bits codeword, the codeword bit in this position is selected and then located in the i-th positon of the k-th HARQ subpacket. Then, the index of the i-th symbol for the k-th subpacket shall be: k 1 Sk ,i L j i mod N FIR j 0 Let 1 L j 0 j be zero. k be the subpacket index when HARQ is enabled k=0 for the first transmission and increases by one for the next subpacket. k=0 when HARQ is not used Lk be the length of the k-th subpacket N FIR be the lowest code rate in the scenario of full Incremental Redundancy; for MS, N FIR can be defined by the capability of MS 8 IEEE C802.16m-09/0204r1 S k ,i be the i-th index of the k-th subpacket, here the position index i starts from zero Downlink/Uplink HARQ buffering capability indicates the maximal number of data bits the BS/MS can store for downlink/uplink HARQ. It needs to be defined by system. 2.5 Vector Encoding of Structured LDPC codes One encoding method has been shown; the encoding structure is very simple. For certain code rate, LDPC codes of different code sizes will use a uniform hardware structure. Here we have suggested another more effective encode method. Encoding is the process of determining the parity sequence p { pi }M 1 , given an information sequence s {si }K 1 . To encode, the information block s is divided into k b nb mb groups of z bits. Let this grouped s be denoted u, u [u(0), u(1), u(2), , u(k b 1)], Where each element of u is a column vector as follows u(i) [siz, siz1, siz2, , s(i 1) z 1 ]T Using the modified base matrix H b {hi , j }mbnb , the parity sequence p is determined in groups of z. Let the b grouped parity sequence p be denoted v, v [v(0), v(1), v(2), , v(mb 1)] Where each element of v is a column vector as follows v(i) [ piz, piz1, piz2, , p(i 1) z 1 ]T Define the temporary block λ is divided into mb groups of z bits. Let this grouped λ be denoted λ [ ( 0 ) , (1) , ,mb ( T 1) ] where each element of λ is a column vector whose size equals to z. Encoding proceeds in four steps: (1) Compute temporary block λ . (2) Determines v(0) . (3) Determines v(i+1) from v(i) ,here i 0,1, , x 2 , and x indicates the row number of the second element of three non-negative-one elements in the k b -th column of base matrix H b . (4) Determines v(mb-1) from v(0), and determines v(i) from v(i-1) , here i mb 1, mb 2, , x 1 . First step, compute λ , each element of λ can be calculated by the following formula, kb 1 λ (i) P ( i , j ) u( j ) i 0,1, j 0 hb , mb 1 λ needs to be saved in the LDPC encoder, and the needed memory for saving λ is only the maximum 9 IEEE C802.16m-09/0204r1 code size. Second step, compute v(0) , P h(bx ,kb ) mb 1 v(0) λ (i) . i 0 So v(0) P ( z h(bx ,kb ) ) mod z Third step, compute v(i+1), here i 0,1, mb 1 λ(i) i 0 , x 1. v(i 1) v(i ) λ (i) Four step, compute v(i), here i mb 1, mb 2, v(mb 1) v ( 0) λ m(b , x 2. 1) v(i 1) v(i ) λ (i 1) hb P ( i , j ) u( j ) means the operation that circularly shifts the values in the vector u( j ) by h(bi , j ) elements. Thus only the operations of add and shift are needed to perform the encode process of structured LDPC codes. In the second step, parallel processing can be adopted. The third step and the fourth step can be performed at the same time to improve the throughput of the encoder. 3 Feature Flexible enough to support any code rate from 1/3 to 5/6 and any code size from 192 to 10240. Support Full IR -HARQ with the lowest rate 1/3. Support Bit Re-arrangement for high order modulation. 4 Simulation This part evaluates the error rate performance for proposed structured LDPC coding. Simulation conditions: Gaussian Channel QPSK modulation code rates: 1/3, 1/2, 2/3, 3/4 , 5/6 information block lengths: k=384 bits Simulation is stopped when 100 information blocks are wrong. BP decoding, 50 iterations for structured LDPC Max-Log-MAP algorithm with maximum 8 iterations with early stopping for CTC. Figure 3 gives the error rate performance for proposed LDPC comparing with 16e’s CTC coding. The performance of these two coding scheme is very close. 1 0 IEEE C802.16m-09/0204r1 LDPC and CTC-1/3,1/2,2/3,3/4-QPSK 0 10 -1 BLER 10 -2 10 -3 10 CTC-1/3-QPSK CTC-1/2-QPSK CTC-2/3-QPSK CTC-3/4-QPSK LDPC-1/3-QPSK LDPC-1/2-QPSK LDPC-2/3-QPSK LDPC-3/4-QPSK -4 10 -3 -2 -1 0 1 2 3 4 5 6 SNR Figure 3 the error rate performance for proposed LDPC comparing with 16e’s CTC coding 5 Conclusion From the analysis and simulation above, we find that the proposed structured LDPC has a closed performance comparing to 16e’s CTC [2]. However, considering of the feature for LDPC, such as more adequate for longer codeword, easy to processes parallel decoding, and achieve high throughput, and unequal protection for encoding bits, we suggest this proposed structured LDPC be considered by 16m FEC. 6 Reference [1] IEEE 802.16-08/003r6, “The Draft IEEE 802.16m System Description Document,” December 12, 2008. [2] P80216Rev2_D7, "Part 16: Air interface for fixed broadband wireless access systems," October, 2008. Text Proposal for IEEE 802.16m Amendment Working Document ============================== Start of Proposed Text ================================ 15.3.x Channel Encoding and HARQ 15.3.x.x Channel coding 15.3.x.x.x LDPC coding 15.3.x.x.x.1 Code description of Structured LDPC coding The Parity check matrix of structured LDPC Codes is defined by a matrix H of size (mb z ) (nb z ) consists of blocks of circularly shifted identity matrices or zero matrices of size z z , of the form: 1 1 , which IEEE C802.16m-09/0204r1 If integer hijb 1 P h00b hb P 10 H hb mb 0 P , define P hijb b b P h01 P h02 b h11 b h12 P P hmb b 1 P P hmb b 2 P P Hb hb P mb nb P h0bnb h1bnb 0 ; otherwise, define P hijb (15.3.x. x .x .1-1) hb (P) ij . P of size z z and base matrix H b of size mb nb has the form: 0 1 0 0 0 0 1 0 P 0 0 0 1 1 0 0 0 Hb h00b b h10 Hb hmb 0 b h01b h02b h11b h12b hmb b 1 hmb b 2 h0bnb h1bnb hmb b nb (15.3.x.x.x.1-2) consists of two sections, where H b1 corresponds to the systematic bits and H b2 corresponds to the parity- check bits, such that 15.3.x.x.x.2 H b (H b1 ) mb kb | (H b2 ) mb mb Mother Code Set of Structured LDPC codes N (N , K ) information bits are encoded into m bits by using the m m LDPC code. A Mother Code Set shall be defined to consist of ( N m z nb , K m z mb ) LDPC codes of the same code rate R0 1/ 2 and different The Km code sizes. Here z is the expand factor of structured LDPC code, nb 32 , mb 16 , and kb nb mb 16 . A uniform base matrix -1 605 173 110 -1 274 -1 H uniform H bsystem | H bparity b is defined as the following: 8 -1 -1 -1 -1 -1 108 -1 -1 0 -1 194 77 265 571 -1 -1 -1 242 -1 -1 -1 246 -1 -1 -1 -1 -1 63 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0 538 -1 -1 194 -1 -1 358 -1 -1 -1 411 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 348 23 271 260 166 -1 -1 -1 -1 -1 -1 566 -1 -1 -1 -1 -1 -1 -1 0 -1 238 241 574 -1 466 -1 -1 -1 -1 111 -1 -1 -1 -1 575 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 601 442 474 218 -1 -1 321 -1 -1 -1 446 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 56 148 618 -1 -1 363 -1 485 -1 454 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 495 178 459 270 -1 -1 -1 -1 112 -1 -1 -1 -1 193 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 0 346 611 380 170 -1 -1 -1 -1 241 -1 -1 -1 -1 -1 -1 -1 135 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 0 -1 343 255 353 405 317 -1 -1 -1 436 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 0 552 630 42 282 -1 -1 -1 436 -1 -1 -1 -1 96 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 0 -1 194 479 621 170 -1 567 -1 -1 -1 -1 -1 -1 12 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 0 -1 352 158 73 -1 -1 -1 471 187 -1 -1 -1 -1 -1 218 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 0 -1 524 595 329 185 -1 532 -1 -1 -1 -1 -1 -1 -1 -1 501 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 0 -1 573 48 108 -1 452 -1 -1 -1 -1 -1 195 -1 -1 536 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 293 5 409 9 -1 -1 -1 -1 -1 285 -1 552 -1 -1 -1 0 -1 0 0 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 1 2 IEEE C802.16m-09/0204r1 Here z is the expand factor of structured LDPC code, z 4,5, , 640 , zmax 640 of ( z nb , z mb ) LDPC codes .Let modified (hijb) (hb) mod ified denotes the i-th row, j-th column element of H b , ij uniform denotes the i-th row, j-th column (hijb) H uniform mod ified b element of . is given by Scale-Floor rule: H uniform b modified shall be modified to generate the base matrix H b b (hij )mod ified Here, 1 b (hij )uniform z zmax (hij b )uniform 1 (hij b )uniform 1 (15.3.x.x.x.2-1) rounds the elements in it to the nearest integers towards negative infinity. 15.3.x.x.x.3 Base Matrix Generation for ( N FIR , K ) LDPC encode process The maximum number of soft channel bits available in the virtual buffer is N BUF which is signaled from higher layers from each HARQ transmission. N FIR is the maximum possible codeword size for the encode of k information bits in the scenario of full Incremental Redundancy. N N FIR BUF Nmax N max N BUF Nmax N BUF r K / N FIR Here, N max 3 K and let . r K / N FIR . There are three steps to generate the needed base matrix. If r 1/ 2 ,Step 1 is needed; H uniform _ extension (m) H buniform Otherwise, Step 1 is neglect, and b and m 0 . Let Step 1: Compute m kb r nb , and then m rows and m columns shall be added to the last row _ extension H uniform (m) b and the last column of H uniform to generate an extended base matrix of b uniform _ extension H (m) size (mb m) (nb m) , here 1 m 16 . b is depicted by Figure 15.3.x.x.x.3-1 and is - defined as follows: for k = 1 to k = m , bk , 2 ak , ,4 bk ,3 ak ,2 , bk ,4 ak ,3 , bk ,5 ak ,6 , bk ,6 ak ,7 bk , kb ( k mb / 21) mod mb 1 0 , bk ,k nb 0 , others in the k-th row are -1. end for Here, k indicates the row index for the added m rows, bi , j and ai , j denotes the i-th row and the j-th column 1 3 IEEE C802.16m-09/0204r1 H uniform element of the matrix part of the added m rows defined by Figure 15.3.x.x.x.3-1 and b respectively. Where, the row and column index begins from 1. - Step 2: Compute the expand factor z K kb . _ extension H uniform (m) H bmod ified _ extension (m) b Step 3: can be modified into by Scale-Floor rule in Section mod ified _ extension H (m) 15.3.x.x.2 b is the base matrix of ((nb m) z, kb z ) LDPC code. - nb kb mb m 16 mb -1 Rate ½ Mother LDPC Base Matrix the matrix part of the added m rows 0 m 16 -1 Systematic bits 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Rate 1/3 Extended LDPC Base Matrix 0 0 0 0 0 0 Puncturing parity bits 0 0 0 Extending parity bits _ extension (m) Figure 15.3.x.x.3-1. Extended LDPC base matrix H uniform b 15.3.x.x.x.4 ( N FIR , K ) LDPC encode process The LDPC HARQ mother codeword shall be generated and then sent to HARQ buffer. There are two steps for encode process: Step 1 Pad x kb z K zero bits before K bits information block and perform the encode process of ((nb m) z, kb z ) LDPC code. (nb m) zk parity bits shall be generated. Step 2 Delete the padded zero bits in Step 1. If the number of codeword bits after the deletion doesn’t equal y (mb m) z N FIR K N to FIR , parity bits in the tail shall be deleted. 15.3.x.x.x.5 HARQ mother codeword permutations Permute puncturing parity bits of LDPC HARQ mother codeword and keep the order of systematic bits and A , A , , AN FIR 1 extending parity. Let the coded bits before the permutation be 0 1 , let the coded bits after the B0 , B1 , , BN FIR 1 permutation be . The permutation is defined by 1 4 IEEE C802.16m-09/0204r1 Ak k K and k nb z x Bk A ot her wi se k x mod z PV k x / z kb z x (15.3.x.x.x.5-1) Here, PV (i ) indicates the i-th element of the puncturing pattern vector PV , k 0,1, PV=[16,26,20,30,28,22,24,18,31,29,27,25,23,21,19,17]; 15.3.x.x.x.6 , N FIR 1 . HARQ codeword bits selection Select Lk bits from said HARQ buffer to generate the k-th subpacket, which is defined by: Ck ,i B Ltotal ( k 1)i mod NFIR (15.3.x.x.x.6-1) Let k be the subpacket index when HARQ is enabled k=0 for the first transmission and increases by one for the next subpacket. k=0 when HARQ is not used. Let Lk be the length of the k-th subpacket, Ltotal (k ) be k 1 L and Ltotal (1) be 0. Let the coded bits of the k-th subpacket be B , B , , BN FIR 1 HARQ mother codeword be 0 1 . j 0 j Ck ,0 , Ck ,1 , , Ck , Lk 1 . Let the coded bits of ============================== end of Proposed Text ================================ 1 5
© Copyright 2026 Paperzz