March 2004 doc.: IEEE 802.11-04/xxxxr0
LDPC vs. Convolutional Codes:
Performance and Complexity Comparison
March 2004
Aleksandar Purkovic, Sergey Sukobok, Nina Burns
Nortel Networks
(contact: apurkovi@nortelnetworks.com)
Submission Slide 1 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Outline
• Background
• Codes used for comparison
• Candidate LDPC code details
• Methodology
• Performance/Complexity comparison
• Summary and Conclusions
• References
Submission Slide 2 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Background
• Several advanced coding candidates so far at the 802.11n:
– Turbo codes, [1], [2], [3], [4]
– LDPC codes, [5], [6], [4]
– Convolutional codes, [4]
– Trellis Coded Modulation, [7]
– Concatenated Reed-Solomon/convolutional codes, [8]
– MAC level FEC (Reed-Solomon), [9], [10]
• This submission compares in terms of performance/complexity existing
64-state convolutional codes (from 802.11a/g) with two other codes:
– Candidate LDPC codes
– More complex (256-state) convolutional code
Submission Slide 3 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Codes used for comparison
• Following codes were compared in terms of performance and complexity:
– 64-state (6 delay elements) convolutional codes (IEEE 802.11a/g) – CC6
– 256-state (8 delay elements) convolutional codes (ETSI EN 301 958 ) – CC8
– LDPC codes (based on algebraic construction)
• Figure below outlines performance of the considered codes for a medium packet
size of 200 bytes (floating-point simulation results)
Submission Slide 4 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Candidate LDPC codes details
• Algebraic construction of the parity check matrix:
– Based on the p-rotation approach first described in [11]
– Extended for code rates up to 7/8; other code rates (<7/8) achieved by shortening
– Longer blocks encoded by concatenating
• Parity check matrix
pA,1 pB,1 pC,1 pD,1 pA,2 pB,2 pC,2 pD,2 pA,3 pB,3 pC,3 pD,3 pA,4 pB,4 pC,4 pD,4 pA,5 pB,5 pC,5 pD,5 pA,6 pB,6 pC,6 pD,6 pA,7 pB,7 pC,7 pD,7
pB,1pC,1 pD,1 pA,1 pB,2 pC,2 pD,2 pA,2 pB,3 pC,3 pD,3 pA,3 pB,4 pC,4 pD,4 pA,4 pB,5 pC,5 pD,5 pA,5 pB,6 pC,6 pD,6 pA,6 pB,7 pC,7 pD,7 pA,7
pC,1 pD,1 pA,1 pB,1 pC,2 pD,2 pA,2 pB,2 pC,3 pD,3 pA,3 pB,3 pC,4 pD,4 pA,4 pB,4 pC,5 pD,5 pA,5 pB,5 pC,6 pD,6 pA,6 pB,6 pC,7 pD,7 pA,7 pB,7
pD,1 pA,1 pB,1 pC,1 pD,2 pA,2 pB,2 pC,2 pD,3 pA,3 pB,3 pC,3 pD,4 pA,4 pB,4 pC,4 pD,5 pA,5 pB,5 pC,5 pD,6 pA,6 pB,6 pC,6 pD,7 pA,7 pB,7 pC,7
Hp Hd,1 Hd,2 Hd,3 Hd,4 Hd,5 Hd,6 Hd,7
• Building blocks (examples): 1 1 0 0 0 0
0 0 0 0 1 0
0 1 1 0 0 0
0 0 0 0 0 1
0 0 1 1 0 0
1 0 0 0 0 0
HP pA
0 0 0 1 1 0 0
0 1 0 0 0
0 0 0 0 1 1
0 1 0 0 0 0
0 0 0 0 0 1
0
0 0 1 0 0
• Parity check matrix is expandable by replacing each non-zero element by a small
permutation matrix
Submission Slide 5 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Methodology
• Performance evaluation
– PHY model based on the 802.11a spec, [12]:
• QPSK, rate 1/2, packet length 40 bytes
• QPSK, rate 3/4, packet length 1000 bytes
– Channels simulated:
• AWGN channel
• Fading Channel Model D with power delay profile as defined in [13], NLOS, without simulation
of Doppler spectrum. This implementation utilized the reference Matlab code [14].
– Simulation scenario assumed:
• Ideal channel estimation
• All packets detected, ideal synchronization, no frequency offset
• Ideal front end, Nyquist sampling frequency
• Complexity estimation
– Number of elementary operations (add’s, xor’s, etc.), RAM, ROM
– Soft information represented with 8 bits
– Convolutional codes: Viterbi decoding algorithm
– LDPC codes:
• Iterative Min-Sum decoding algorithm with maximum of 20 iterations
• Concatenated codewords for longer packets
Submission Slide 6 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Performance/Complexity Comparison: 40-byte packets
Legend: - Unityof processing (correspondsto the number of elementaryoperations ofCC6 decoder)
RAM
ROM - Unityof memory(corresponds to the memoryused bythe CC6 decoder)
AWGN Channel D
Encoder Encoder
Decoder Decoder
SNR (dB) SNR (dB)
0 1 2 3 4 9 10 11 12 13
CC6 CC6
(3.3dB) (11.2dB)
CC8 SNR SNR
LDPC
(2.7dB) at at
(10.65dB)
LDPC PER=10 -2 CC8 PER=10-2
(2.25dB) (10.35dB)
QPSK, R=1/2, K = 40 bytes, AWGN QPSK, R=1/2, K = 40 bytes, Channel D
Submission Slide 7 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Performance/Complexity Comparison: 1000-byte packets
Legend: - Unityof processing (correspondsto the number of elementaryoperations ofCC6 decoder)
RAM
ROM - Unityof memory(corresponds to the memoryused bythe CC6 decoder)
AWGN Channel D
Encoder Encoder
Decoder Decoder
SNR (dB) SNR (dB)
4 5 6 7 8 15 16 17 18 19
CC6 CC6
(7.0dB) (18.65dB)
CC8 SNR SNR
CC8
(6.3dB) at at
(17.4dB)
PER=10 -2 PER=10 -2
LDPC LDPC
(4.65dB) (16.7dB)
QPSK, R=3/4, K = 1000 bytes, AWGN QPSK, R=3/4, K = 1000 bytes, Channel D
Submission Slide 8 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
Summary and Conclusions
• Comparison in terms of performance and complexity of LDPC and two
convolutional codes was presented in this contribution.
• More advanced codes (LDPC and CC8) do perform better at the cost of
reasonable increase in complexity.
• LDPC codes have an inherent feature which eliminates need for the
channel interleaver ([5],[6]); this offsets somewhat increased complexity.
• Decoder of LDPC codes has embedded feature of exiting from the
iteration loop once a codeword has been found, which means that the
average number of iterations is less than the maximum. This in turns
has positive effect on the power consumption.
Submission Slide 9 Aleksandar Purkovic et al, Nortel Networks
March 2004 doc.: IEEE 802.11-04/xxxxr0
References
[1] IEEE 802.11-04-0003-00-000n, “Turbo Codes for IEEE 802.11n,” Brian Edmonston et al, .January 2004
[2] IEEE 802.11-02/312r0, “Towards IEEE802.11 HDR in the Enterprise,” Sebastien Simoens et al, Motorola, May 2002
[3] IEEE 802.11-02/708r0,”MIMO-OFDM for High Throughput WLAN: Experimental Results,” Alexei Gorokhov et al,
Philips, November 2002
[4] IEEE 802.11-04/0014r1,”Different Channel Coding Options for MIMO-OFDM 802.11n,” Ravi Mahadevappa et al,
Realtek, January 2004
[5] IEEE 802.11-03/865r1, “LDPC FEC for IEEE 802.11n Applications”, Eric Jacobson, Intel, November 2003.
[6] IEEE 802.11-04/0071r1, “LDPC vs. Convolutional Codes for 802.11n Applications: Performance Comparison,”
Aleksandar Purkovic et al, Nortel, January 2004
[7] IEEE 802.11-01/232r0, “Extended Data Rate 802.11a, Marcos Tzannes et al,” March 2002
[8] IEEE 802.11-04/96r0 , “On The Use Of Reed Solomon Codes For 802.11n,” Xuemei Ouyang, Philips, January 2004,
[9] IEEE 802.11-02/0207r0, “Simplifying MAC FEC Implementation and Related Issues,” Jie Liang et al, TI, March 2002
[10] IEEE 802.11-02/239r0, “MAC FEC Performance,” Sean Coffey et al, TI, March 2002
[11] R. Echard et al, “The p-rotation low-density parity check codes,” In Proc. GLOBECOM 2001, pp. 980-984, Nov. 2001
[12] IEEE Std 802.11a-1999, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY)
Specifications, High-speed Physical Layer in the 5 GHz Band
[13] IEEE 802.11-03/940r1, “TGn Channel Models”, TGn Channel Models Special Committee, November 2003.
[14] Laurent Schumacher, “WLAN MIMO Channel Matlab program,” January 2004, version 3.3.
Submission Slide 10 Aleksandar Purkovic et al, Nortel Networks