4.2.2. 5G LDPC Encoder Data Formats
Encoder Input Data Format
The 5G LDPC Encoder IP incoming data on a 384-bit bus (msg). The IP clocks in data with K b clocks, where K b = 22 for BG1 and K b = 6, 8, 9, or 10 for BG2. The IP accepts mode information on the clock with msg_sop and msg_vld both asserted.
The width of the input message bus, msg[383:0], is 384 bits. In each clock cycle, only Z LSBs. are valid, you must set the rest of the MSBs to zeros.
msg[383:0] | clock cycle | ||||
---|---|---|---|---|---|
0 | 1 | ... | 20 | 21 | |
msg[0] | M0 | M64 | ... | M1280 | M1344 |
msg[1] | M1 | M65 | ... | M1281 | M1345 |
... | ... | ... | ... | ... | ... |
msg[63] | M63 | M127 | ... | M1343 | M1407 |
msg[64] | 0 | 0 | ... | 0 | 0 |
... | ... | ... | ... | ... | ... |
msg[383] | 0 | 0 | 0 | 0 | 0 |
Encoder Input Control Formats (msg_mode[11:0])
msg_mode[5:0] | Z | msg_mode[5:0] | Z |
---|---|---|---|
0 | 2 | 26 | 48 |
1 | 3 | 27 | 52 |
2 | 4 | 28 | 56 |
3 | 5 | 29 | 60 |
4 | 6 | 30 | 64 |
5 | 7 | 31 | 72 |
6 | 8 | 32 | 80 |
7 | 9 | 33 | 88 |
8 | 10 | 34 | 96 |
9 | 11 | 35 | 104 |
10 | 12 | 36 | 112 |
11 | 13 | 37 | 120 |
12 | 14 | 38 | 128 |
13 | 15 | 39 | 144 |
14 | 16 | 40 | 160 |
15 | 18 | 41 | 176 |
16 | 20 | 42 | 192 |
17 | 22 | 43 | 208 |
18 | 24 | 44 | 224 |
19 | 26 | 45 | 240 |
20 | 28 | 46 | 256 |
21 | 30 | 47 | 288 |
22 | 32 | 48 | 320 |
23 | 36 | 49 | 352 |
24 | 40 | 50 | 384 |
25 | 44 | X | X |
Code Rate | Base Graph 1 Kb = 22 msg_mode [11:9]=000 |
Base Graph 2 Kb = 6 msg_mode [11:9]=001 |
Base Graph 2 Kb = 8 msg_mode [11:9]=011 |
Base Graph 2 Kb = 9 msg_mode [11:9]=101 |
Base Graph 2 Kb = 10 msg_mode [11:9]=111 |
---|---|---|---|---|---|
1/5 msg_mode[8:6]=000 |
X | 001000 | 011000 | 101000 | 111000 |
1/3 msg_mode[8:6]=001 |
000001 | 001001 | 011001 | 101001 | 111001 |
2/5 msg_mode[8:6]=010 |
000010 | 001010 | 011010 | 101010 | 111010 |
1/2 msg_mode[8:6]=011 |
000011 | 001011 | 011011 | 101011 | 111011 |
2/3 msg_mode[8:6]=100 |
000100 | 001100 | 011100 | 101100 | 111100 |
22/30 (~3/4) msg_mode[8:6]=101 |
000101 | X | X | X | X |
22/27 (~5/6) msg_mode[8:6]=110 |
000110 | X | X | X | X |
22/25 (~8/9) msg_mode[8:6]=111 |
000111 | X | X | X | X |
Encoder Output Data Format
The width of the output codeword bus, cw[383:0], is 384 bits. It takes (nb - 2) clock cycles to output the codeword. Each clock cycle, only Z LSBs are valid, the rest of the MSBs are 0s.
cw[383:0] | clock cycle | ||||
---|---|---|---|---|---|
0 | 1 | ... | 64 | 65 | |
cw[0] | CW0 | CW64 | ... | CW4096 | CW4160 |
cw[1] | CW1 | CW65 | ... | CW4097 | CW4161 |
... | ... | ... | ... | ... | ... |
cw[63] | CW63 | CW127 | ... | CW4159 | CW4223 |
cw[64] | 0 | 0 | ... | 0 | 0 |
... | ... | ... | ... | ... | ... |
cw[383] | 0 | 0 | 0 | 0 | 0 |