advances in error control strategies for 5g
TRANSCRIPT
Jörg Kliewer
Advances in Error Control Strategies for 5G
The Elisha Yegal Bar-Ness Center For Wireless Communications And Signal Processing Research
Energy Bottleneck
3
Current computational cost of transmission: approx. 6 nJ/bit [Andrews et al. 2014]
Current battery capacity 6.9 Wh (iPhone 6)
Target 10 Gbit/s
Energy Bottleneck
3
Current computational cost of transmission: approx. 6 nJ/bit [Andrews et al. 2014]
Current battery capacity 6.9 Wh (iPhone 6)
Target 10 Gbit/s
Resulting battery life: 5 minutes and 27 seconds!
Coding for *G
4
Quantum leap from 2G to 3G with the adoption of modern iteratively decodable codes (turbo codes, LDPC codes)
3G to 4G basically the same techniques, new: adoption of hybrid ARQ
Coding for *G
4
Quantum leap from 2G to 3G with the adoption of modern iteratively decodable codes (turbo codes, LDPC codes)
3G to 4G basically the same techniques, new: adoption of hybrid ARQ
In order to satisfy the 5G requirements, we need a paradigm change in coding.
Coding Wish List for 5G
5
3G/4G coding is essentially capacity-approaching for point-to-point BI-AWGN
Coding Wish List for 5G
5
3G/4G coding is essentially capacity-approaching for point-to-point BI-AWGN
Gains in transmission power efficiency to be expected from
‣ Coding for spectrally efficiency communication
‣ Multi-terminal coding and decoding (i.e., for relaying, cooperation, MIMO)
Coding Wish List for 5G
5
3G/4G coding is essentially capacity-approaching for point-to-point BI-AWGN
Gains in transmission power efficiency to be expected from
‣ Coding for spectrally efficiency communication
‣ Multi-terminal coding and decoding (i.e., for relaying, cooperation, MIMO)
Gains in computational power efficiency equally important
Not Really…
7
No single scheme which fixes all these issues, but few promising candidates:
Spatially coupled (convolutional) LDPC codes
Non-binary LDPC codes
Polar codes
LDPC Block Codes
8
Uncoded BPSK
Bit
erro
r pro
babi
lity
Shan
non
limit
(dB)
Irregular LDPC-BC
Regular LDPC-BC
Error floor
Waterfall
LDPC Block Codes
8
Uncoded BPSK
Bit
erro
r pro
babi
lity
Shan
non
limit
(dB)
Irregular LDPC-BC
Regular LDPC-BC
Error floor
Waterfall
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
(a) (b)
H =
Tanner graph (3,6) regular LDPC code:
Graph sparsely connected
Spatially Coupled LDPC Codes
9
Invented as convolutional LDPC codes [Jiménez-Feltström & Zigangirov 1999], theory [Kudekar, Richardson, Urbanke 2010]
Asymptotically universally capacity achieving for a wide range of channels and code rates
Spatially Coupled LDPC Codes
9
Invented as convolutional LDPC codes [Jiménez-Feltström & Zigangirov 1999], theory [Kudekar, Richardson, Urbanke 2010]
Asymptotically universally capacity achieving for a wide range of channels and code rates
Same performance under belief propagation decoding as for the corresponding block LDPC ensembles under maximum likelihood decoding (threshold saturation)
Spatially Coupled LDPC Codes
9
Invented as convolutional LDPC codes [Jiménez-Feltström & Zigangirov 1999], theory [Kudekar, Richardson, Urbanke 2010]
Asymptotically universally capacity achieving for a wide range of channels and code rates
Same performance under belief propagation decoding as for the corresponding block LDPC ensembles under maximum likelihood decoding (threshold saturation)
Decoding complexity and latency reduction by windowed decoding
Spatially Coupled LDPC Codes
10
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
H =
H =cc
(cut-and-paste)
(diagonal matrix extension)
(a)
(b)
(c)0 1 L−1L−2
Coupling construction via unwrapping:
Convolutional code structure
Spatially Coupled LDPC Codes
10
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
H =
H =cc
(cut-and-paste)
(diagonal matrix extension)
(a)
(b)
(c)0 1 L−1L−2
Coupling construction via unwrapping:
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
H =
H =cc
(cut-and-paste)
(diagonal matrix extension)
(a)
(b)
(c)0 1 L−1L−2
Resulting Tanner graph:
Convolutional code structure
Spatially Coupled LDPC Codes
10
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
H =
H =cc
(cut-and-paste)
(diagonal matrix extension)
(a)
(b)
(c)0 1 L−1L−2
Coupling construction via unwrapping:
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
H =
H =cc
(cut-and-paste)
(diagonal matrix extension)
(a)
(b)
(c)0 1 L−1L−2
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
H =
H =cc
(cut-and-paste)
(diagonal matrix extension)
(a)
(b)
(c)0 1 L−1L−2
Resulting Tanner graph:
Terminated Tanner graph:
Convolutional code structure
Spatially Coupled LDPC Codes: Performance
11
1 1.2 1.4 1.6 1.810
−5
10−4
10−3
10−2
10−1
Eb/N0 (dB)
Bit
errorrate
convolutional gain
(3,6)-regular LDPC-BCn = 4098
(3,6)-regular LDPC-CCνs = 4098
Spatially Coupled LDPC Codes: Performance
12
−1 0 1 2 3 4 50.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
0.55
Eb/N0 (dB)
Rate
0 0.05 0.1 0.15 0.2 0.25 0.30.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
0.55
dmin/n
Term. (3,6)-reg.
Term. (4,8)-reg.
Term. (5,10)-reg.Term. ARJABlock (J, K )-reg.Block ARJA
L=3
L=3
L=3
L=2 L=2
L=4 L=4
L=5
L=5
L=6 L=6
L=7
(3,6)
(4,8)
(5,10) (5,10)(3,6)
(4,8)
Increasingterminationlength L
Increasingterminationlength L
L=4
L=5
L=5
L=5
L=8 L=8
L=7
Shannonlimit
Gilbert-Varshamovbound
[Costello, Dolecek, Fuja, Kliewer, Mitchell, Smarandache, 2014]
Spatially Coupled LDPC Codes: Efficient Decoding
13
. . .
. . .
. . .
. . .
Decodedsymbols
Receivedsymbols. . . . . .
s
Proc. 1Proc. 2Proc. I Proc. I
I(m )Mcs
r
rt0
v
v
− 1
+ 1
Mc
WMc
Mc
WMc
Decodedsymbols
. . .
. . .
. . .
. . .
. . .
. . .
t = 0 t = 1
(a)
(b)
t1
t0
t1
Pipeline decoding:
Spatially Coupled LDPC Codes: Efficient Decoding
13
. . .
. . .
. . .
. . .
Decodedsymbols
Receivedsymbols. . . . . .
s
Proc. 1Proc. 2Proc. I Proc. I
I(m )Mcs
r
rt0
v
v
− 1
+ 1
Mc
WMc
Mc
WMc
Decodedsymbols
. . .
. . .
. . .
. . .
. . .
. . .
t = 0 t = 1
(a)
(b)
t1
t0
t1
. . .
. . .
. . .
. . .
Decodedsymbols
Receivedsymbols. . . . . .
s
Proc. 1Proc. 2Proc. I Proc. I
I(m )Mcs
r
rt0
v
v
− 1
+ 1
Mc
WMc
Mc
WMc
Decodedsymbols
. . .
. . .
. . .
. . .
. . .
. . .
t = 0 t = 1
(a)
(b)
t1
t0
t1
Pipeline decoding:
Low-latency low-complexity windowed decoding:
Non-Binary LDPC Codes
14
Code alphabet in
Code alphabet can be equivalent to modulation alphabet
GF(q), q > 2
Better performance at low block lengths than binary codes
Decoding complexity for belief propagation decoding, but with FFT-based decoding [Declercq & Fossorier 2007]
Non-Binary LDPC Codes
14
Code alphabet in
Code alphabet can be equivalent to modulation alphabet
GF(q), q > 2
O(q2)O(q logq)
Better performance at low block lengths than binary codes
Decoding complexity for belief propagation decoding, but with FFT-based decoding [Declercq & Fossorier 2007]
Non-Binary LDPC Codes
14
Code alphabet in
Code alphabet can be equivalent to modulation alphabet
GF(q), q > 2
1 00 1 1 0 1 1 0 1 1 10 1 1 0 1 0 1 01 0 0 1 0 1 0 1 1 1
1 1 1 0 1 1 0 00 1 1 0 1 1
0 1 0 01 1
(a) (b)
H =
O(q2)O(q logq)
Non-Binary LDPC Codes: Performance
15
Random codes, N � 2350, R � 0.83
3 3.5 4 4.5 5
10−4
10−5
10−6
10−7
10−8
10−9
10−10
10−11
SNR(dB)
FER
OriginalA−method
GF(4)
GF(8)
GF(16)
4.2 4.4 4.6 4.8 5 5.2
10−3
10−4
10−5
10−6
10−7
10−8
10−9
10−10
10−11
SNR(dB)
FER
OriginalA−method
Binary
GF(4)
GF(16)
GF(8)
QC codes, N � 1200, R � 0.8
[Amiri, Kliewer, Dolecek 2014]
Polar Codes
16
First constructive technique to provably achieve channel capacity with bounded complexity O(n log n) [Arikan 2009]
Polar Codes
16
First constructive technique to provably achieve channel capacity with bounded complexity O(n log n) [Arikan 2009]
Closely related to Reed-Muller codes, constructed recursively via Kronecker products
Polar Codes
16
First constructive technique to provably achieve channel capacity with bounded complexity O(n log n) [Arikan 2009]
Closely related to Reed-Muller codes, constructed recursively via Kronecker products
Advantages for multi-terminal setups (e.g., broadcast channel [Mondelli et al. 2014])
Take Aways
17
5G requirements: One code fits all?
Low complexity en-/decod.
Finite block-length perf.
Spectrally efficient
Suitable for multi-
terminalBinary SC-
LDPC codes
Non-binary LDPC codes
Polar codes
Take Aways
17
5G requirements: One code fits all?
Improving finite block length performance of polar codesNon-binary SC-LDPC codes
Open:
Low complexity en-/decod.
Finite block-length perf.
Spectrally efficient
Suitable for multi-
terminalBinary SC-
LDPC codes
Non-binary LDPC codes
Polar codes
Follow Up...
B. Amiri, A. Reisizadeh, J. Kliewer, L. Dolecek: Optimized array-based spatially-coupled LDPC codes: An absorbing set approach, Submitted to ISIT 2015. D. J. Costello, L. Dolecek, T. E. Fuja, J. Kliewer, D. G. M. Mitchell, R. Smarandache: Spatially coupled codes on graphs: Theory and practice, IEEE Communications Magazine, July 2014. E. En Gad, Y. Li, J. Kliewer, M. Langberg, A. Jiang, J. Bruck, Asymmetric error correction and flash-memory rewriting using polar codes, arXiv:1410.3542, Oct. 2014.B. Amiri, J. Kliewer, L. Dolecek: Analysis and enumeration of absorbing sets for non-binary graph-based codes. IEEE Trans. Comm., February 2014. J. Kliewer, D. J. Costello, Jr.: On achieving an asymptotically error-free fixed-point of iterative decoding for perfect a priori information. IEEE Trans. Comm., June 2013. V. Rahti, M. Andersson, R. Thobaben, J. Kliewer, M. Skoglund: Performance analysis and design of two edge type LDPC codes for the BEC wiretap channel, IEEE Trans. Inf. Theory, February 2013.
C. Koller, A. Graell i Amat, J. Kliewer, F. Vatta, K. S. Zigangirov, D. J. Costello, Jr.: Analysis and design of tuned turbo codes. IEEE Trans. Inf. Theory, July 2012.
18