1. Introduction
2. System model: non-binary wireless transmission
q
| GF order (default value q = 64) |
---|---|
Ω | Alphabet of q GF symbols |
M
| QAM constellation order (e.g., QPSK → M = 4; 16QAM → M = 16) |
A
| Alphabet of M QAM constellation symbols |
q
m
| Number of APP values per GF symbol fed to the decoder (< <q) |
n
t
| Number of transmitter antennas |
n
r
| Number of receiver antennas |
Q
| Number of QAM symbols mapped onto one STBC codeword |
T
| STBC block length (as expressed in MIMO channel uses) |
m
1
| Minimum integer number of GF(q) symbols which map onto m2 M-QAM symbols and m3 STBC codewords |
n
1
| Number of GF(q) symbols multiplexing within n2 (≤m2) M-QAM symbols and n3 (≤m3) STBC codewords, (n1 ≤ m1) |
m
2
| Minimum integer number of M-QAM symbols which map to m1 GF(q) symbols and m3 STBC codewords |
n
2
| Number of M-QAM symbols carrying one GF(q) symbol, (n2 ≤ m2) |
m
3
| Minimum integer number of STBC codewords which map to m1 GF(q) symbols and m2 M-QAM symbols |
n
3
| Number of STBC codewords carrying one GF(q) symbol, (n3 ≤ m3) |
2.1 Non-binary LDPC codes
2.2 Non-binary wireless transmission chain
2.2.1 Transmitter operations
2.2.2 Receiver operations
3. Problem statement: mapping and Soft ML demapping
3.1 Mapping of GF(q) symbols onto M-QAM symbols
Constellation | QPSK | 16QAM | 64QAM |
---|---|---|---|
(
m
1
,
m
2
)
| (1, 3) | (2, 3) | (1, 1) |
3.2 Mapping of GF(q) symbols onto STBC codewords
Constellation | QPSK | 16QAM | 64QAM |
---|---|---|---|
(
m
1
,
m
2
,
m
3
)
| (2, 6, 3) | (4, 6, 3) | (2, 2, 1) |
4. Novel mapping strategy and low complexity soft demapping
4.1 Mapping strategy at the transmitter
First rule: The I or Q component of an M-QAM symbol should carry (in part or in full) the binary image of only one GF(q) symbol
Number | Mapping pattern (m1 = 2, m2 = 3) | |||||
---|---|---|---|---|---|---|
I0
|
Q0
|
I1
|
Q1
|
I2
|
Q2
| |
P1 |
a
0
a
1
|
a
2
a
3
|
a
4
a
5
|
b
0
b
1
|
b
2
b
3
|
b
4
b
5
|
P2 |
a
0
b
0
|
a
1
b
1
|
a
2
b
2
|
a
3
b
3
|
a
4
b
4
|
a
5
b
5
|
P3 |
a
0
a
1
|
b
0
b
1
|
a
2
a
3
|
b
2
b
3
|
a
4
a
5
|
b
4
b
5
|
P4 |
a
0
b
0
|
b
1
a
1
|
a
2
b
2
|
b
3
a
3
|
a
4
b
4
|
b
5
a
5
|
Second rule: Map as many I/Q components as possible issued from the same GF(q) symbol onto the same STBC codeword
Third rule: Under the constraint of the second rule, map the I/Q components issued from one GF(q) symbol onto the transmission units ideally of independent channel fading within the STBC codeword carrying this GF(q) symbol
Number | Antenna number | Mapping pattern (m1 = 4, m2 = 6, m3 = 3) | |||||
---|---|---|---|---|---|---|---|
I0
|
Q0
|
I1
|
Q1
|
I2
|
Q2
| ||
P1
| A#1 |
a
0
a
1
|
a
2
a
3
|
b
2
b
3
|
b
4
b
5
|
c
4
c
5
|
d
0
d
1
|
A#2 |
a
4
a
5
|
b
0
b
1
|
c
0
c
1
|
c
2
c
3
|
d
2
d
3
|
d
4
d
5
| |
P2
| A#1 |
a
0
a
1
|
b
0
b
1
|
a
2
a
3
|
b
2
b
3
|
a
4
a
5
|
b
4
b
5
|
A#2 |
c
0
c
1
|
d
0
d
1
|
c
2
c
3
|
d
2
d
3
|
c
4
c
5
|
d
4
d
5
| |
P3
| A#1 |
a
0
a
1
|
a
2
a
3
|
b
2
b
3
|
c
0
c
1
|
c
4
c
5
|
d
0
d
1
|
A#2 |
a
4
a
5
|
b
0
b
1
|
b
4
b
5
|
c
2
c
3
|
d
2
d
3
|
d
4
d
5
|
4.2 Low complexity soft demapping at the receiver
First step: Computation of the Euclidean distances
Second step: Marginalization across all possible combinations
Number of combinations | P2 | P3 |
---|---|---|
GF(64) symbol a | qm 1-1= 262144 | 22 = 4 |
GF(64) symbol b | 26 × 24 = 1024 | |
GF(64) symbol c | 24 × 26 = 1024 | |
GF(64) symbol d | 22 = 4 |
-
Step 1: Set the value of N m . For example, N m is set to the value 8.
-
Step 2: For any GF(q) symbol entailing a number N e of combinations required for marginalization lower than the threshold N m , obtain the corresponding APP values using an exhaustive search over all N e required combinations.
-
Step 3: For GF(q) symbols that multiplex only with symbols falling under step 2, compute the APPs by limiting the combinations associated with the GF(q) symbol from step 2 only to the ones yielding the N m largest APPs for this symbol.
-
Step 4: For each remaining GF(q) symbol, not falling under steps 2 and 3, proceed with the following sub-steps:
Number of combinations | Without the algorithm | Prop. Algorithm with r= 0, N
m
= 8 | Prop. algorithm with r= 3, N
m
= 8, N
q
= 8 |
---|---|---|---|
GF(64) symbol a | 64 × 22 = 256 | 64 × 22 = 256 | 64 × 22 = 256 |
GF(64) symbol b | 64 × 26 × 24 = 65536 | 64 × 6 + 64 × N
m
× 24 = 8576 | 64 × 3 × N
m
× N
q
+ 2 × 64 × 6 = 13056 |
GF(64) symbol c | 64 × 26 × 24 = 65536 | 64 × 6 + 64 × N
m
× 24 = 8576 | |
GF(64) symbol d | 64 × 22 = 256 | 64 × 22 = 256 | 64 × 22 = 256 |
Block of m1 GF symbols | 64 × 2 × (210 + 22) = 131584 | 2 × 64 × (22 + 6 + N
m
× 24) = 17664 | 2 × 64 × (22 + 6) + 64 × 3 × N
m
× N
q
= 13568 |
5. Numerical results
Modules | Set up |
---|---|
FEC encoder | DAVINCI NB-LDPC codes |
GF order = 64 | |
Codeword length = 96 symbols = 576 bits | |
FEC decoder | Extended Min-Sum algorithm |
Number of soft values per symbol fed to the decoder = q
m
= 16 (highest values) | |
Maximum number of decoding iterations = 30 | |
Constellation | QPSK, 16QAM, 64QAM |
MIMO encoder | 2 × 2 antennas configuration |
Uncoded Spatial multiplexing | |
STBC codeword length Q = 2 | |
Channel model | AWGN and Rayleigh channels |
Soft demapper | Soft ML demapping |
Proposed low complexity algorithm with N
m
= 8, N
q
= 4 to 16, number of demapping iterations r = 0 to 3 |
-
The first curve in black circular marker gives the number of operations when an exhaustive search with pattern P2 is performed.
-
The second curve in red circular marker gives the number of operations when an exhaustive search with pattern P1 or P3 is performed.
-
The third curve in blue downwards triangular marker shows the number of operations using the proposed algorithm without the iterative step 4 (i.e., simply replace sub-step 4.2 by an exhaustive search).
-
The fourth curve in green with diamond markers considers the iterative step 4 of the proposed algorithm with r = 3 iterations and N q = 10.
Number | Antenna number | Mapping pattern (m1 = 2, m2 = 2, m3 = 1) | |
---|---|---|---|
I0
|
Q0
| ||
P1 | A#1 |
a
0
a
1
a
2
|
a
3
a
4
a
5
|
A#2 |
b
0
b
1
b
2
|
b
3
b
4
b
5
| |
P2 | A#1 |
a
0
a
1
a
2
|
b
0
b
1
b
2
|
A#2 |
a
3
a
4
a
5
|
b
3
b
4
b
5
|
Number of combinations | Without the algorithm | Prop. algorithm with r= 3, N
q
= 20 | Prop. algorithm with r= 3, N
q
= 24 |
---|---|---|---|
GF(64) symbol a | 64 × 26 = 4096 | 64 × 3 × N
q
+ 2 × 64 × 6 = 4608 | 64 × 3 × N
q
+ 2 × 64 × 6 = 5376 |
GF(64) symbol b | 64 × 26 = 4096 | ||
Block of m1 GF symbols | 2 × 64 × (26) = 8192 | 64 × 3 × N
q
+ 2 × 64 × 6 = 4608 | 64 × 3 × N
q
+ 2 × 64 × 6 = 5376 |