Turbo Codes at WVU

Download Report

Transcript Turbo Codes at WVU

Bridging the Gap
Between
Parallel and Serial Concatenated Codes
Naveen Chandran
CMG plc
Richmond, VA
Matthew C. Valenti (presenter)
Lane Dept. of Comp. Sci. & Elect. Eng.
West Virginia University
This work was supported by the Office of Naval Research
under grant N00014-00-0655
Overview

Review of Concatenated Convolutional Codes


PCCC’s are a special case of SCCC’s





Parallel (PCCC) vs. serial (SCCC) concatenation
In other words, SCCC’s are a generalization of
PCCC’s.
It is possible to modify a SCCC encoder to make it
produce a PCCC.
Illustrative proof
Implications
A new class of hybrid concatenated codes

Simulation results
Turbo Codes

Key features:

Concatenated Convolutional Codes.




Nonuniform interleaving.
Recursive encoding.




PCCC: Parallel Concatenated Convolutional Codes.
SCCC: Serial Concatenated Convolutional Codes.
RSC: Recursive Systematic Convolutional Codes.
For PCCC both encoders are RSC.
For SCCC at least the inner encoder is recursive.
Iterative decoding algorithm.

MAP/APP based.


“SISO” Soft-Input, Soft-Output
Log-MAP: In logarithmic domain.
PCCC’s

Features of parallel concatenated
convolutional codes (PCCC’s):



Both encoders are RSC.
Performance close to capacity limit for BER down
to about 10-5 or 10-6.
BER flooring effect at high SNR.
Systematic Output
Input
RSC
Encoder #1
Nonuniform
Interleaver
RSC
Encoder #2
xi
Parity
Output
SCCC’s

Features of serially concatenated convolutional
codes (SCCC’s):

Inner encoder must be recursive.




Input
Could even be just a differential encoder.
Outer encoder can be recursive or nonrecursive.
Performance not as good as PCCC’s at low SNR.
However, performance is better than PCCC’s at high
SNR because the BER floor is much lower.
Outer
Encoder
Nonuniform
Interleaver
Inner
Encoder
Optional
Puncturing
Output
Performance Comparison
10
0

SCCC
10

AWGN channel
Parameters:
-2


BER

10
-4


10
Rate = ⅓
Frame size = 512 bits
K=5 RSC encoders
Spread interleaver
Log-MAP decoder
PCCC
-6
0
0.5
1
1.5
2
2.5
Eb / No in dB
3
3.5
Key Observation

PCCC’s are actually a subclass of SCCC’s

PCCC’s are, in fact, a particular type of SCCC.



Equivalently, SCCC’s are a generalization of PCCC’s.
Thus, a PCCC can be encoded by a SCCC encoder.
However, this requires a restriction to be placed on
the SCCC.
PCCC Encoding
Using a SCCC Encoder

Requirements for the SCCC encoder:

Encoder restriction


Interleaver restriction


Interleaver must output all of the outer encoder’s
systematic bits before it outputs any of its parity bits.
Puncturing restriction

Input
Both inner and outer encoder are RSC.
Outer
Encoder
The “double parity” bits must be punctured.
Nonuniform
Interleaver
Inner
Encoder
Optional
Puncturing
Output
An Alternative Representation
Because of the interleaver restriction and the
fact that both encoders are systematic:
~ ~
u
p1
~
u  u
~ ~
s
u
p1
RSC
RSC
u Encoder
s
p
Encoder
~
p
p
p1
p1
#1
#2
2
2
p

equivalent
interleavers

~ ~
Outputs u
p1 p2s p2p constitute a rate ¼ SCCC.
alternately puncture for rate ⅓ SCCC

~ ~
Outputs u
p1 p2s
constitute a rate ⅓ PCCC.
Equivalent PCCC Encoder

p
p
If 2 is not transmitted, then the encoder can
be expressed as a PCCC encoder
u
RSC
Encoder
#1
s
u~
RSC
Encoder
#2
u  u~
s
~
p1
p1
p
p2s
u~ ~
p1 p2s
Only difference
with standard PCCC
is that this
part is interleaved
Is It Really a PCCC?

Parameters:

10
-2



-4
10
PCCC from
SCCC
codec
-6
0

Conventional
PCCC
BER
10
0.5
1
1.5
2
2.5
Es / No in dB
Rate = ⅓
Frame size = 512 bits
K=5 RSC encoders
Log-MAP decoder
No apparent performance
loss due to using the
interleaver restriction.
3
3.5
SCCC Performance Loss Due
to Interleaver Restriction?
10
0

Parameters:

10
-2
Conventional SCCC

BER

10

-4

10
-6
SCCC with
interleaver structuring
10
Rate = ⅓
Frame size = 512 bits
K=5 RSC encoders
Log-MAP decoder
-8
0
0.5
1
1.5
2
2.5
Eb / No in dB
3
No apparent performance
loss due to using the
interleaver restriction.
Implications

Because a PCCC code may be encoded (decoded) by
a SCCC encoder (decoder), IC designers should focus
on SCCC codecs.


Note however that the SCCC decoder is 1.5 times more
complex than the equivalent PCCC decoder.
An incremental redundancy approach can be taken in
ARQ data transmissions.



First send the rate ⅓ PCCC.
If necessary, send the extra parity to create a rate ¼ SCCC.
Y. Wu and M.C. Valenti, “An ARQ technique using related
parallel and serial concatenated convolutional codes,” in
Proc. IEEE Int. Conf. on Commun. (ICC), (New Orleans, LA),
June 2000.
Hybrid Turbo Codes

If we delete all the double parity, we get a
rate ⅓ PCCC code.



The rate ⅓ SCCC code is created by
puncturing alternate parity bits at inner
encoder’s output



i.e. maintain field p2s but drop field p2p
p2p is 100% punctured (p2s is 0% punctured)
i.e. maintain exactly half of both fields p2s and p2p
p2p is 50% punctured (p2s is 50% punctured)
What if instead we puncture p2p by some ratio
between 50% and 100% ?
Performance of Hybrid Codes

10

Hybrid Code A
(75% puncturing)
-2


-4
BER
10
10
Rate = ⅓
Frame size = 512 bits
K=5 RSC encoders
Log-MAP decoder
Conventional SCCC and
SCCC with Interleaver
Structuring
Conventional PCCC and
PCCC from SCCC codec
-6
Hybrid Code B
(87.5% puncturing)
10
-8
0
0.5
1
1.5
2
2.5
Eb / No in dB
3
3.5
Observations


Results for larger frame sizes (1K, 2K, 4K,
and 8K) are given in the paper.
In general,



A double parity puncturing ratio close to 100%
gives performance close to PCCC.
A double parity puncturing ratio close to 50%
gives performance close to SCCC.
A double parity puncturing ratio of about 80%
gives performance halfway between PCCC & SCCC
Relationship to Divsalar and
Pollara’s Hybrid Codes

Hybrid codes have been previously proposed
by D. Divsalar and F. Pollara,


“Hybrid concatenated codes and iterative
decoding,” JPL TDA Progress Report, April 1997.
Our hybrid codes are different


Only 1 interleaver and 2 encoders.
Similar performance, but at less complexity.
Conclusion




An SCCC encoder can be used to encode a PCCC.
This result was used to develop a new class of hybrid
concatenated codes with performance between that
of SCCC and PCCC codes.
The decision to use PCCC or SCCC codes no longer
needs to be “black and white”; rather a middle
ground (shades of “gray”) exists that can give the
system designer more flexibility.
Formal guidelines for designing hybrid codes are
needed

Gaussian density evolution may be helpful.