IEEE C802.16m-09/0510 Project IEEE 802.16 Broadband Wireless Access Working Group <http://ieee802.org/16> Title Proposed Text of Channel Coding and HARQ for the IEEE 802.16m Amendment Date Submitted 2009-03-02 Source(s) Jerry Pi Samsung Electronics Co., Ltd. +1-972-761-7944 zpi@sta.samsung.com The Channel Coding and HARQ Drafting Group Editor Re: 802.16m AWD Abstract The contribution proposes the text of channel coding and HARQ section to be included in the 802.16m amendment. Purpose To be discussed and adopted by TGm for the 802.16m amendment. 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>. 1 IEEE C802.16m-09/0510 Proposed Text of Channel Coding and HARQ for the IEEE 802.16m Amendment Jerry Pi Samsung Electronics Co., Ltd. The Channel Coding and HARQ Drafting Group Editor 1. Introduction The contribution proposes the text of channel coding and HARQ section to be included in the 802.16m amendment ([1]). The proposed text is developed so that it can be readily combined with IEEE P802.16 Rev2/D8 ([2]), it is compliant to the 802.16m SRD ([3]) and the 802.16m SDD ([4]), and it follows the style and format guidelines in ([5]). 2. References [1] IEEE 802.16m-09/0010, “802.16m Amendment Working Document (AWD)” [2] IEEE P802.16 Rev2/D8, “Draft IEEE Standard for Local and Metropolitan Area Networks: Air Interface for Broadband Wireless Access,” Dec. 2008. [3] IEEE 802.16m-07/002r7, “IEEE 802.16m System Requirements Document” [4] IEEE 802.16m-08/003r6, “IEEE 802.16m System Description Document” [5] IEEE 802.16m-08/043, “Style guide for writing the IEEE 802.16m amendment” 2 IEEE C802.16m-09/0510 3. Text proposal for inclusion in the 802.16m amendment ------------------------------- Text Start --------------------------------------------------- 4. Abbreviations and acronyms Insert the following at section 4 in alphabetic order: CoRe HARQ IR MCS SPID constellation re-arrangement hybrid-ARQ incremental redundancy Modulation and Coding Scheme subpacket ID Insert the following subsection at a new section 15: 15.x. Channel coding and HARQ 15.x.1. Channel coding Channel coding procedures for downlink and uplink data channel are shown in Figure 15.x.1-1. Burst CRC encoder Data Randomizer Burst partition FEC block CRC encoder FEC encoder Bit selection & Repetition Collection Modulation Figure 15.x.1-1. Channel coding procedure 15.x.1.1. Burst CRC encoding Cyclic Redundancy Code (CRC) bits are used to detect errors in the received packets. A 16-bit burst CRC is appended to the data burst with the following cyclic generator polynomial: g DB-CRC ( D) D16 D12 D 5 1 Denote the bits of the input data burst by d1 , d 2 , d 3 , , d N PL with d1 being the MSB and NPL being the size of the input data burst. Denote the parity bits produced by the burst CRC generator by p1, p2 , p3 , , p16 . The burst CRC encoding is performed in a systematic form, which means that in GF(2), the polynomial: d1 D N PL 15 d 2 D N PL 14 d n D16 p1 D15 p2 D14 p15 D1 p16 yields a remainder equal to 0 when divided by g DB-CRC ( D) . The data burst, including the CRC, is further processed by the data randomizer as described in section 15.x.1.2. 3 IEEE C802.16m-09/0510 15.x.1.2. Randomization Data randomization shall be performed on the downlink and uplink data channel. The randomization bits are generated using a PRBS generator as shown in Figure 15.x.1.1-1. The generator polynomial of the PRBS generator is 1 X 14 X 15 . For each data burst, the beginning state of the PRBS is initialized to [s1 s2 … s15] = [0 1 1 0 1 1 1 0 0 0 1 0 1 0 1] with s1 being the LSB and s15 being the MSB. The data burst to be transmitted shall enter sequentially into the randomizer, MSB first. The data bits are XOR-ed with the output of the PRBS generator, with the MSB of the data burst XOR-ed with the first bit of the PRBS generator output. LSB MSB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 data out data in Figure 15.x.1.1-1.The data randomizer with a PRBS generator The output of the data randomizer is further processed by burst partition as described in 15.x.1.3. 15.x.1.3. Burst partition When the burst size including 16 burst CRC bits exceeds maximum FEC block size, NFB_MAX, the burst is partitioned into KFB FEC blocks. The value of KFB is calculated by following equation. K FB N mod RFEC N RE N SM / N FB_MAX where Nmod RFEC NRE NSM NFB_MAX is the modulation order of the burst transmission, which is specified by MCS index is the nominal code rate of the burst transmission, which is specified by MCS index is the number of resource elements allocated for burst transmission. The calculation of NRE shall exclude the resource elements used by pilot channels is the spatial multiplexing order of the resource elements allocated for burst transmission. The value of NSM depends on the MIMO transmission mode and is defined in section x.x.x.x. is the maximum FEC block size, which equals to 4800 bits. The nominal MCS used in a data transmission shall be selected from Table 15.x.1-1. Table 15.x.1-1. MCS table for downlink and uplink data channel MCS index Modulation Code rate ‘0000’ QPSK 31/256 ‘0001’ QPSK 48/256 4 IEEE C802.16m-09/0510 ‘0010’ QPSK 71/256 ‘0011’ QPSK 101/256 ‘0100’ QPSK 135/256 ‘0101’ QPSK 171/256 ‘0110’ 16QAM 102/256 ‘0111’ 16QAM 128/256 ‘1000’ 16QAM 155/256 ‘1001’ 16QAM 184/256 ‘1010’ 64QAM 135/256 ‘1011’ 64QAM 157/256 ‘1100’ 64QAM 181/256 ‘1101’ 64QAM 205/256 ‘1110’ 64QAM 225/256 ‘1111’ 64QAM 237/256 The size of each FEC block is NFB, which is calculated by the following equation. N FB arg max X ( N mod RFEC N RE NSM / K FB ) X { N FB } where {NFB} is a set of NFB shown in Table 15.x.1-2. Table 15.x.1-2. FEC block size table for downlink and uplink data channels Index 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 NFB 48 64 72 80 88 96 104 120 128 136 144 152 160 176 184 192 200 208 216 232 240 Index 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 NFB 328 344 352 360 368 376 384 400 416 432 440 456 472 480 496 512 528 544 552 568 584 Index NFB 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 720 736 752 768 776 800 824 848 872 888 912 936 960 984 1000 1024 1048 1072 1096 1112 1136 5 Index 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 NFB 1424 1448 1480 1504 1536 1560 1600 1640 1672 1712 1752 1784 1824 1864 1896 1920 1952 2000 2048 2096 2144 Index 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 NFB 2752 2816 2880 2944 3008 3072 3200 3264 3328 3392 3456 3520 3648 3712 3776 3840 3904 3968 4096 4160 4224 IEEE C802.16m-09/0510 21 22 23 24 25 26 27 28 29 248 256 264 272 288 296 304 312 320 51 52 53 54 55 56 57 58 59 600 608 624 640 656 664 680 696 712 81 82 83 84 85 86 87 88 89 1160 1184 1216 1248 1280 1312 1336 1368 1392 111 112 113 114 115 116 117 118 119 2192 2232 2280 2328 2368 2432 2496 2560 2624 141 142 143 144 145 146 147 148 4288 4352 4416 4544 4608 4672 4736 4800 The burst size NDB including burst CRC and FEC block CRC is defined by the following equation: NDB = KFB × NFB The payload size excluding burst CRC and FEC block CRC is defined by the following equation: NPL = KFB × (NFB – IMFB×NFB-CRC) – NDB-CRC where, IMFB NFB-CRC NDB-CRC equals 0 when KFB =1, 1 when KFB >1, equals 16, which is the size of FEC block CRC, equals 16, which is the size of burst CRC. The burst partition block generates KFB FEC blocks, with each FEC block processed by the FEC block CRC encoding block as described in 15.x.1.4. 15.x.1.4. FEC block CRC encoding The burst partition procedure generates KFB FEC blocks for each burst. If KFB > 1, the FEC block CRC generator appends a 16-bit FEC block CRC for each FEC block. The cyclic generator for FEC block CRC encoding is shown as follows: g FBCRC ( D) D16 D15 D 2 1. Denote the bits of the input FEC block by d1 , d 2 , d 3 , , d N FB 16 with d1 being the MSB and NFB being the size of the input FEC block, including the 16-bit FEC block CRC. Denote the parity bits produced by the burst CRC generator by p1, p2 , p3 , , p16 . The burst CRC encoding is performed in a systematic form, which means that in GF(2), the polynomial: d1D NFB 1 d 2 D NFB 2 d NFB 16 D16 p1D15 p2 D14 p15 D1 p16 yields a remainder equal to 0 when divided by 15.x.1.5. g DB-CRC ( D) . FEC encoding Each FEC block shall be encoded using the convolutional turbo codes specified in section 15.x.1.5.1. 6 IEEE C802.16m-09/0510 15.x.1.5.1. Convolutional turbo codes (CTCs) 15.x.1.5.1.1. CTC encoder The CTC encoder, including its constituent encoder, is depicted in Figure c. It uses a double binary CRSC (Circular Recursive Systematic Convolutional) code. The bits of the data to be encoded are alternatively fed to A and B, starting with the MSB of the first byte being fed to A, followed by the next bit being fed to B. The encoder is fed by blocks of NEP bits ( N EP 2 N bits). The polynomials defining the connections are described in octal and symbol notations as follows: - For the feedback branch: 15, equivalently 1 D D3 (in symbolic notation) - For the Y parity bit: 13, equivalently 1 D2 D3 - For the W parity bit: 11, equivalently 1 D3 output A A B B 1 CTC Interleaver Constituent Encoder 2 C1 Y1W1 C2 Y2W2 switch Systematic part A S1 S2 S3 B Parity part Y W Figure ccc ― CTC encoder First, the encoder (after initialization by the circulation state S C2 , see 15.13.1.6.1.3Error! Reference source not found.) is fed the sequence in the natural order (switch 1 in Figure ) with incremental address i 1,2,, N . This first encoding is called C1 encoding. Then the encoder (after initialization by the circulation state S C2 , see 15.13.1.6.1.3) is fed by the interleaved sequence (switch 2 in Figure ) with incremental address i 1,2,, N . This second encoding is called C2 encoding. The order in which the encoded bits shall be fed into the bit separation block (15.x.1.6.1.4) is: 7 IEEE C802.16m-09/0510 A, B, Y1 , Y2 , W1 ,W2 A0 , A1 ,, AN 1 , B0 , B1 , , BN 1 , Y1,0 , Y1,1 ,, Y1, N 1 , Y2,0 , Y2,1 ,, Y2, N 1 ,W1,0 ,W1,1 ,,W1, N 1 ,W2,0 ,W2,1 ,,W2, N 1 15.x.1.5.1.2. CTC interleaver The CTC interleaver requires the parameters P0, P1, P2, and P3 shown in Table ddd of which NEP set corresponds to that in Table ccc. The detailed interleaver structures except table for interleaver parameters correspond to 8.4.9.2.3.2. Index NEP P0 P1 P2 P3 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 48 64 72 80 88 96 104 120 128 136 144 152 160 176 184 192 200 208 216 232 240 248 256 264 272 288 296 304 312 320 328 344 352 360 368 376 5 11 11 7 13 13 7 11 13 13 11 11 13 17 13 7 11 11 11 11 13 13 11 13 13 17 13 13 11 17 17 17 17 17 19 13 0 12 18 4 36 24 4 30 46 58 6 38 68 52 2 58 76 10 54 70 60 6 64 72 82 74 0 130 32 84 148 160 106 40 88 110 0 0 0 32 36 0 8 0 44 4 0 12 76 68 0 48 0 32 56 60 0 84 8 68 44 72 84 112 124 108 160 116 56 132 0 92 0 12 18 36 32 24 48 34 30 58 6 74 64 32 2 10 24 42 2 58 60 46 8 8 38 2 64 46 108 132 76 52 50 128 172 14 Index NEP P0 P1 P2 P3 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 584 600 608 624 640 656 664 680 696 712 720 736 752 768 776 800 824 848 872 888 912 936 960 984 1000 1024 1048 1072 1096 1112 1136 1160 1184 1216 1248 1280 21 31 74 12 20 214 272 28 23 23 23 23 288 286 84 24 244 220 296 300 140 70 236 52 23 272 220 60 19 48 240 144 31 252 216 48 25 214 180 286 23 29 23 29 130 126 26 252 156 208 24 0 238 270 230 88 29 100 196 140 216 150 29 130 332 23 42 29 150 234 388 82 29 408 300 316 25 414 84 414 29 14 264 94 25 272 168 400 53 62 12 2 31 142 40 342 29 290 148 446 29 320 236 324 27 424 212 416 35 290 228 390 23 178 392 430 33 38 244 550 37 170 276 134 31 314 348 222 31 31 31 29 2 368 88 152 8 568 584 404 8 94 524 608 24 Index NEP P0 P1 P2 P3 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 1752 1784 1824 1864 1896 1920 1952 2000 2048 2096 2144 2192 2232 2280 2328 2368 2432 2496 2560 2624 2752 2816 2880 2944 3008 3072 3200 3264 3328 3392 3456 3520 3648 3712 3776 3840 31 33 314 886 656 888 666 518 41 774 548 898 33 35 504 936 444 940 664 832 43 35 318 94 556 144 778 686 37 290 692 638 31 2 332 622 39 400 29 298 39 1074 29 240 41 474 41 254 688 252 148 496 376 884 68 610 710 1100 814 1054 47 43 43 53 47 37 31 43 228 452 0 264 378 430 624 720 440 888 208 488 1092 880 704 360 724 96 528 824 1250 970 400 540 41 338 660 646 43 53 43 49 37 51 43 57 49 41 53 53 916 184 1382 142 258 460 170 776 132 1328 772 92 1136 824 632 828 28 56 920 1232 720 772 256 1124 912 1368 1086 1354 1522 1608 1518 1012 276 1036 408 476 IEEE C802.16m-09/0510 36 37 38 39 40 41 42 43 44 45 46 47 48 384 400 416 432 440 456 472 480 496 512 528 544 552 11 19 17 17 19 17 19 13 17 19 17 19 13 96 142 102 126 48 184 40 120 194 64 36 222 198 48 0 132 92 20 0 104 60 0 52 196 248 180 144 142 178 74 144 48 28 180 58 124 100 134 190 49 568 19 102 140 226 86 87 88 89 90 91 92 93 94 95 96 97 98 1312 1336 1368 1392 1424 1448 1480 1504 1536 1560 1600 1640 1672 31 214 160 506 136 137 138 139 140 141 142 143 144 145 146 147 148 39 2 168 646 29 570 348 574 31 218 484 446 31 676 124 184 33 254 372 158 31 32 716 736 31 31 254 34 416 564 474 710 29 300 248 568 31 454 216 234 33 164 432 748 35 164 368 700 4 848 332 99 1712 41 3904 3968 4096 4160 4224 4288 4352 4416 4544 4608 4672 4736 4800 51 57 55 79 59 57 59 59 65 67 67 59 53 664 1296 148 214 14 662 2052 1342 1380 954 410 2 66 200 760 808 308 668 1516 712 1968 1068 1140 1020 956 24 64 1360 308 262 1474 42 1804 1562 1036 1566 114 458 2 Table ddd ― CTC Interleaver parameters 15.x.1.5.1.3. Determination of CTC circulation states Correspond to 8.4.9.2.3.3. 15.x.1.5.1.4. Bit separation Correspond to 8.4.9.2.3.4.1. 15.x.1.5.1.5. Subblock interleaving The subblock interleaver requires the parameters m and J shown in Table eee of which NEP set corresponds to that in Table ccc. The detailed subblock interleaver structures except table for subblock interleaver parameters correspond to 8.4.9.2.3.4.2. Index NEP m 0 1 2 3 4 5 6 7 8 9 10 11 48 64 72 80 88 96 104 120 128 136 144 152 3 4 4 4 4 4 4 5 5 5 5 5 J 3 2 3 3 3 3 4 2 2 3 3 3 Index NEP m 30 31 32 33 34 35 36 37 38 39 40 41 328 344 352 360 368 376 384 400 416 432 440 456 6 6 6 6 6 6 6 6 6 6 6 7 J Index 3 3 3 3 3 3 3 4 4 4 4 2 60 61 62 63 64 65 66 67 68 69 70 71 NEP m 720 736 752 768 776 800 824 848 872 888 912 936 7 7 7 7 7 7 7 7 7 7 8 8 9 J Index 3 3 3 3 4 4 4 4 4 4 2 2 90 91 92 93 94 95 96 97 98 99 100 101 NEP m 1424 1448 1480 1504 1536 1560 1600 1640 1672 1712 1752 1784 8 8 8 8 8 8 8 8 8 8 8 8 J Index 3 3 3 3 3 4 4 4 4 4 4 4 120 121 122 123 124 125 126 127 128 129 130 131 NEP m 2752 2816 2880 2944 3008 3072 3200 3264 3328 3392 3456 3520 9 9 9 9 9 9 9 9 9 9 9 9 J 3 3 3 3 3 3 4 4 4 4 4 4 IEEE C802.16m-09/0510 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 160 176 184 192 200 208 216 232 240 248 256 264 272 288 296 304 312 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 3 3 3 3 4 4 4 2 2 2 2 3 3 3 3 3 3 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 472 480 496 512 528 544 552 568 584 600 608 624 640 656 664 680 696 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 960 984 1000 1024 1048 1072 1096 1112 1136 1160 1184 1216 1248 1280 1312 1336 1368 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 1824 1864 1896 1920 1952 2000 2048 2096 2144 2192 2232 2280 2328 2368 2432 2496 2560 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 29 320 6 3 59 712 7 3 89 1392 8 3 119 2624 9 3 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 3648 3712 3776 3840 3904 3968 4096 4160 4224 4288 4352 4416 4544 4608 4672 4736 4800 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 Table eee ― The parameters for the subblock interleavers 15.x.1.5.1.6. Bit grouping Corresponding to section 8.4.9.2.3.4.3. 15.x.1.5.1.7. Resource segmentation If KFB > 1, the NRE data resource elements allocated for the subpacket are segmented into KFB blocks, one for each FEC block. The number of data resource elements for the k-th FEC block is defined by following equation. N RE, k N RE 2 ( K FB k 1) 2 , K FB 0 k K FB 15.x.1.5.1.8. Bit selection and repetition Bit selection and repetition are performed to generate the subpacket. Let NCTC, k be the number of coded bits that shall be transmitted for the k-th FEC block. The value of NCTC, k is calculated by the following equation N CTC, k N RE, k N SM N mod . 10 IEEE C802.16m-09/0510 The index in the HARQ buffer for the j-th bit transmitted for the k-th FEC block shall be: u k, j ( Pi,k j ) mod (3 N FB ) , for k = 0, …, KFB – 1, and j 0 ,...,N CTC, k 1 , where i is the subpacket ID of the subpacket (SPID = i), and Pi,k is the starting position for subpacket i of the k-th FEC block as specified in 15.x.2.1. 15.x.1.5.1.9. Bit collection The selected bits from each FEC block are collected in the order of FEC block for the HARQ transmission. 15.x.1.5.1.10. Modulation Correspond to 8.4.9.4.2. 15.x.2. HARQ 15.x.2.1. IR HARQ HARQ IR is used in 802.16m, by changing the starting position, Pi,k, of the bit selection for HARQ retransmissions. For downlink, it is determined as a function of SPID for the following equation. SPIDi 3N FB Pi , k 24 4 24 For uplink, it is determined as a function of SPID for the following equation. Pi , k SPIDi N CTC, k mod 3N FB ------------------------------- Text End --------------------------------------------------- 11