advances in error control strategies for 5g

35
Jörg Kliewer Advances in Error Control Strategies for 5G The Elisha Yegal Bar-Ness Center For Wireless Communications And Signal Processing Research

Upload: phungphuc

Post on 14-Feb-2017

216 views

Category:

Documents


1 download

TRANSCRIPT

Jörg Kliewer

Advances in Error Control Strategies for 5G

The Elisha Yegal Bar-Ness Center For Wireless Communications And Signal Processing Research

5G Requirements

2

[Nokia Networks: Looking ahead to 5G. White paper, April 2014]

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

One Code Fits All?

6

Not Really…

7

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?

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