Code Imperfectness

We define the imperfectness of a given code as the difference between the code's required Eb/No to attain a given word error probability (Pw), and the minimum possible Eb/No required to attain the same Pw, as implied by the sphere-packing bound for codes with the same block size k and code rate r.

The performance limit corresponding to the sphere-packing bound would be reached with equality only if the code were a perfect code for the AWGN channel, i.e., if equal-size cones could be drawn around every codeword so as to completely fill n-dimensional space without intersecting. Note that perfectness for the unconstrained-input AWGN problem requires that the entire continuum of n-dimensional Euclidean space be filled by these non-intersecting cones, not just the discrete points that might be occupied by binary codewords. Thus, under this definition, even the (7,4) Hamming code and the (23,12) Golay code, which are rare examples of perfect binary codes, do not qualify as perfect codes for the unconstrained-input AWGN channel. Indeed, Shannon mentions in his 1959 paper that such codes only exist if k=1or n=1 or 2.

Even though perfectness is an unattainable goal, it can serve as an approachable benchmark for turbo codes and other codes.

Researchers are invited to submit new entries for the figure below by specifying the required Eb/No to obtain Pw=10-4. Performance results must be obtained by actual decoder simulation. We will compute the imperfectness of each new code and display it in the figure below.


New submissions:
A = (128,64) Extended BCH, 3.03 dB, M. Fossorier, 9/1/98

B1 = (306,136) terminated convolutional code, 3.13 dB, L. Wei, 9/10/98
B2= (384,170) terminated convolutional code, 2.73 dB, L. Wei, 9/10/98
D= (96,48) self-dual, 3.36dB, M. Fossorier, 9/21/98
E= (49152,16243) asym. turbo code, 0.23 dB, O. Takeshita et al., 10/29/98
 
F2= (60,16) terminated (2,1,14) convol. code, 4.31 dB, L. Wei, 12/10 /98
F3= (120,46) terminated (2,1,14) convol. code, 3.32 dB, L. Wei, 12/10 /98
F4= (180,76) terminated (2,1,14) convol. code, 3.08 dB, L. Wei, 12/10/98
F5= (240,106) terminated (2,1,14) convol. code, 3.01 dB, L. Wei, 12/10/98
F6= (300,136) terminated (2,1,14) convol. code, 3.00 dB, L. Wei, 12/10/98
 
F7= (200,70) terminated (2,1,30) convol. code, 2.83 dB, L. Wei, 12/10/98
F8= (300,120) terminated (2,1,30) convol. code, 2.53 dB, L. Wei, 12/10/98
F9= (400,170) terminated (2,1,30) convol. code, 2.38 dB, L. Wei, 12/10/98
F10= (500,220) terminated (2,1,30) convol. code, 2.34 dB, L. Wei, 12/10/98
F11= (600,270) terminated (2,1,30) convol. code, 2.31 dB, L. Wei, 12/10/98
 
G1=(1024,676) Turbo product code, 3.14 dB, Eric Hewit, AHA, 1/14/99
G2=(4096,3249) Turbo product code, 3.21 dB, Eric Hewit, AHA, 1/14/99
G3=(16384,14400) Turbo product code, 3.72 dB, Eric Hewit, AHA, 1/14/99
G4=(4096,2028) Turbo product code, 1.94 dB, Eric Hewit, AHA, 2/3/99
G5=(4096,1331) Turbo product code, 1.39 dB, Eric Hewit, AHA, 2/3/99
 
H1=(24000,6000)  Low density parity check code , 0.05 dB,  Matthew Davey, U.Cambridge, 4/7/99
H2=(1920,640)  Low density parity check code , 1.5 dB,  Matthew Davey, U.Cambridge, 8/1/99
M0=(140,56)  Forney concatenated code, 3.48 dB, L Wei, 7/28/99
M1=(160,64)  Forney concatenated code, 3.32 dB, L Wei, 7/28/99
M2=(240,96)  Forney concatenated code, 2.92 dB, L Wei, 7/28/99
M3=(288,120) Forney concatenated code, 2.86 dB, L Wei, 7/28/99
M4=(336,144) Forney concatenated code, 2.70 dB, L Wei, 7/28/99
M5=(432,192) Forney concatenated code, 2.65 dB, L Wei, 7/28/99
M6=(2688,1008) Forney concatenated code, 1.56 dB, L Wei, 7/28/99
M7=(4800,1844) Forney concatenated code, 1.37 dB, L Wei, 7/28/99
M8=(12544,5408) Forney concatenated code, 1.21 dB, L Wei, 7/28/99
M9=(26600,11970) Forney concatenated code, 1.15 dB, L Wei, 7/28/99
Required Eb/No vs block size for Pw = 10-4

Code imperfectness vs block sizefor Pw = 10-4


This page has been accessed times since September 15, 1998.