190 likes | 237 Views
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. Bridging the Gap Between Parallel and Serial Concatenated Codes.
E N D
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 Bridging the Gap BetweenParallel and Serial Concatenated Codes
Overview • Review of Concatenated Convolutional Codes • Parallel (PCCC) vs. serial (SCCC) concatenation • PCCC’s are a special case of SCCC’s • 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. • PCCC: Parallel Concatenated Convolutional Codes. • SCCC: Serial Concatenated Convolutional Codes. • Nonuniform interleaving. • Recursive encoding. • 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 Parity Output RSC Encoder #2 Nonuniform Interleaver
SCCC’s • Features of serially concatenated convolutional codes (SCCC’s): • Inner encoder must be recursive. • 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. Input Output Outer Encoder Nonuniform Interleaver Inner Encoder Optional Puncturing
Performance Comparison 0 • AWGN channel • Parameters: • Rate = ⅓ • Frame size = 512 bits • K=5 RSC encoders • Spread interleaver • Log-MAP decoder 10 SCCC -2 10 -4 10 BER PCCC -6 10 0 0.5 1 1.5 2 2.5 3 3.5 Eb / No in dB
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 • Both inner and outer encoder are RSC. • Interleaver restriction • Interleaver must output all of the outer encoder’s systematic bits before it outputs any of its parity bits. • Puncturing restriction • The “double parity” bits must be punctured. Input Output Outer Encoder Nonuniform Interleaver Inner Encoder Optional Puncturing
An Alternative Representation • Because of the interleaver restriction and the fact that both encoders are systematic: • Outputs constitute a rate ¼ SCCC. • Outputs constitute a rate ⅓ PCCC. RSC Encoder #1 RSC Encoder #2 equivalent interleavers alternately puncture for rate ⅓ SCCC
Equivalent PCCC Encoder • If is not transmitted, then the encoder can be expressed as a PCCC encoder RSC Encoder #1 Only difference with standard PCCC is that this part is interleaved RSC Encoder #2
Is It Really a PCCC? • Parameters: • Rate = ⅓ • Frame size = 512 bits • K=5 RSC encoders • Log-MAP decoder • No apparent performance loss due to using the interleaver restriction. -2 10 -4 10 Conventional PCCC PCCC from SCCC codec BER -6 10 0 0.5 1 1.5 2 2.5 3 3.5 Es / No in dB
SCCC Performance Loss Due to Interleaver Restriction? • Parameters: • Rate = ⅓ • Frame size = 512 bits • K=5 RSC encoders • Log-MAP decoder • No apparent performance loss due to using the interleaver restriction. 0 10 -2 10 Conventional SCCC BER -4 10 -6 10 SCCC with interleaver structuring -8 10 0 0.5 1 1.5 2 2.5 3 Eb / No in dB
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. • i.e. maintain field p2s but drop field p2p • p2p is 100% punctured (p2s is 0% punctured) • The rate ⅓ SCCC code is created by puncturing alternate parity bits at inner encoder’s output • 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 • Rate = ⅓ • Frame size = 512 bits • K=5 RSC encoders • Log-MAP decoder Hybrid Code A (75% puncturing) -2 10 -4 10 Conventional SCCC and SCCC with Interleaver Structuring BER Conventional PCCC and PCCC from SCCC codec -6 10 Hybrid Code B (87.5% puncturing) -8 10 0 0.5 1 1.5 2 2.5 3 3.5 Eb / No in dB
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.