You are on page 1of 53

Permutation Polynomial Interleavers for

Turbo Codes Lucian Trifina


Visit to download the full and correct content document:
https://textbookfull.com/product/permutation-polynomial-interleavers-for-turbo-codes-l
ucian-trifina/
More products digital (pdf, epub, mobi) instant
download maybe you interests ...

A Primer of Permutation Statistical Methods Kenneth J.


Berry

https://textbookfull.com/product/a-primer-of-permutation-
statistical-methods-kenneth-j-berry/

Codes for homeowners electrical plumbing construction


mechanical current with 2018 2021 codes 4th Edition
Bruce A. Barker

https://textbookfull.com/product/codes-for-homeowners-electrical-
plumbing-construction-mechanical-current-
with-2018-2021-codes-4th-edition-bruce-a-barker/

The Lives of Lucian Freud First American Edition Feaver

https://textbookfull.com/product/the-lives-of-lucian-freud-first-
american-edition-feaver/

The Handbook of Banking Technology 1st Edition Lucian


Morris

https://textbookfull.com/product/the-handbook-of-banking-
technology-1st-edition-lucian-morris/
Black and Decker Codes for Homeowners 4th edition
Electrical Plumbing Construction Mechanical current
with 2018 2021 codes Bruce A. Barker

https://textbookfull.com/product/black-and-decker-codes-for-
homeowners-4th-edition-electrical-plumbing-construction-
mechanical-current-with-2018-2021-codes-bruce-a-barker/

Black Decker Codes for Homeowners Updated 3rd Edition


Black & Decker

https://textbookfull.com/product/black-decker-codes-for-
homeowners-updated-3rd-edition-black-decker/

The Handbook of Banking Technology 1st Edition Tim


Walker Lucian Morris

https://textbookfull.com/product/the-handbook-of-banking-
technology-1st-edition-tim-walker-lucian-morris/

Water R718 Turbo Compressor and Ejector Refrigeration


Heat Pump Technology 1st Edition Sarevski

https://textbookfull.com/product/water-r718-turbo-compressor-and-
ejector-refrigeration-heat-pump-technology-1st-edition-sarevski/

Computational aspects of polynomial identities Volume l


Kemer s Theorems Kanel-Belov

https://textbookfull.com/product/computational-aspects-of-
polynomial-identities-volume-l-kemer-s-theorems-kanel-belov/
Signals and Communication Technology

Lucian Trifina
Daniela Tarniceriu

Permutation
Polynomial
Interleavers for
Turbo Codes
Signals and Communication Technology
The series “Signals and Communications Technology” is devoted to fundamentals
and applications of modern methods of signal processing and cutting-edge
communication technologies. The main topics are information and signal theory,
acoustical signal processing, image processing and multimedia systems, mobile and
wireless communications, and computer and communication networks. Volumes in
the series address researchers in academia and industrial R&D departments. The
series is application-oriented. The level of presentation of each individual volume,
however, depends on the subject and can range from practical to scientific.

More information about this series at http://www.springer.com/series/4748


Lucian Trifina Daniela Tarniceriu

Permutation Polynomial
Interleavers for Turbo Codes

123
Lucian Trifina Daniela Tarniceriu
Faculty of Electronics,Telecommunications Faculty of Electronics, Telecommunications
and Information Technology and Information Technology
Gheorghe Asachi Technical University Gheorghe Asachi Technical University
Iaşi, Romania Iaşi, Romania

ISSN 1860-4862 ISSN 1860-4870 (electronic)


Signals and Communication Technology
ISBN 978-981-13-2624-0 ISBN 978-981-13-2625-7 (eBook)
https://doi.org/10.1007/978-981-13-2625-7

Library of Congress Control Number: 2018955452

© Springer Nature Singapore Pte Ltd. 2019


This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part
of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations,
recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission
or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar
methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this
publication does not imply, even in the absence of a specific statement, that such names are exempt from
the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors, and the editors are safe to assume that the advice and information in this
book are believed to be true and accurate at the date of publication. Neither the publisher nor the
authors or the editors give a warranty, express or implied, with respect to the material contained herein or
for any errors or omissions that may have been made. The publisher remains neutral with regard to
jurisdictional claims in published maps and institutional affiliations.

This Springer imprint is published by the registered company Springer Nature Singapore Pte Ltd.
The registered company address is: 152 Beach Road, #21-01/04 Gateway East, Singapore 189721,
Singapore
Contents

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Fundamentals of Turbo Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1 Convolutional Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Systematic Recursive Convolutional Encoders . . . . . . . . 9
2.2 Turbo Code Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Trellis Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4 Calculation of Turbo Code Distance Spectrum . . . . . . . . . . . . . . 14
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Permutation Polynomial Based Interleavers. Conditions
on Coefficients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... 19
3.1 Definition of a Permutation Polynomial Interleaver . . . . . . . .... 19
3.2 Necessary and Sufficient Conditions on the Coefficients
of a Polynomial of Any Degree so that It Is PP Modulo
a Number Equal to a Power of 2 . . . . . . . . . . . . . . . . . . . . .... 19
3.3 Necessary and Sufficient Conditions on the Coefficients
of a Polynomial so that It Is PP Modulo a Number Equal
to a Power of a Prime Number . . . . . . . . . . . . . . . . . . . . . .... 24
3.4 Simplified Necessary and Sufficient Conditions on the
Coefficients of a Polynomial so that It Is PP Modulo
Any Positive Integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... 25
3.5 Necessary and Sufficient Conditions on the Coefficients
of a Polynomial of First Degree so that It Is PP Modulo
Any Positive Integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... 27
3.6 Necessary and Sufficient Conditions on the Coefficients
of a Polynomial of Second Degree so that It Is PP Modulo
Any Positive Integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... 28

v
vi Contents

3.6.1 Case p ¼ 2 and nL;2 ¼ 1 . . . . . . . . . . . . . . . . . . . . . ... 28


3.6.2 Case p ¼ 2 and nL;2 [ 1, and p [ 2 and nL;p  1 . . ... 28
3.7 Necessary and Sufficient Conditions on the Coefficients
of a Polynomial of Third Degree so that It Is PP Modulo
Any Positive Integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.7.1 Case p ¼ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.7.2 Case p ¼ 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.7.3 Case 3 j (p − 1), with p > 3 . . . . . . . . . . . . . . . . . . . . . 32
3.7.4 Case 3 (p − 1) with p > 3 . . . . . . . . . . . . . . . . . . . . . 33
3.8 Necessary and Sufficient Conditions on the Coefficients
of a Polynomial of Fourth Degree so that It Is PP Modulo
Any Positive Integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.8.1 Case p ¼ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.8.2 Case p ¼ 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.8.3 Case p ¼ 7 and nL;7 ¼ 1 . . . . . . . . . . . . . . . . . . . . . . . . 39
3.8.4 Cases p ¼ 7 and nL,7 > 1, 3 j (p − 1) with p > 7
and nL,p  1, 3 (p − 1) with p ¼ 5, or p > 7
and nL,p > 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... 41
3.8.5 Cases 3 (p − 1) with p ¼ 5 or p > 7 and nL;p ¼ 1 . ... 41
3.9 Necessary and Sufficient Conditions on the Coefficients
of a Polynomial of Fifth Degree so that It Is PP Modulo
Any Positive Integer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.9.1 Case p ¼ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.9.2 Case p ¼ 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.9.3 Case p ¼ 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.9.4 Case p ¼ 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.9.5 Case p ¼ 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.9.6 Case p ¼ 1 (mod 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.9.7 Case p ¼ 2, 3 (mod 5) with p > 13 . . . . . . . . . . . . . . . . 57
3.9.8 Case p ¼ 4 (mod 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.10 Sufficient Conditions on the Coefficients of a Polynomial
of Any Degree so that It Is PP Modulo Any Positive Integer ... 59
3.10.1 Case p ¼ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... 60
3.10.2 Case p [ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... 60
3.11 Getting all Permutation Polynomials of Degrees up to Five
by Weng and Dong Algorithm . . . . . . . . . . . . . . . . . . . . . . ... 61
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... 64
4 Determining the Number of Permutation Polynomial-Based
Interleavers in Terms of Their Length . . . . . . . . . . . . . . . . . . . . . . . 65
4.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.2 The Equivalence Conditions Between Permutation
Polynomials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Contents vii

4.3 The Method Used for Determining the Number of True


Different Permutation Polynomial-Based Interleavers Using
the Chinese Remainder Theorem . . . . . . . . . . . . . . . . . . . . . . .. 75
4.4 Determining the Number of All True Different Quadratic
Permutation Polynomial-Based Interleavers . . . . . . . . . . . . . . .. 76
4.5 Determining the Number of All True Different Cubic
Permutation Polynomial-Based Interleavers . . . . . . . . . . . . . . .. 80
4.6 Determining the Number of True Different Permutation
Polynomial-Based Interleavers Under Zhao and Fan Sufficient
Conditions for Degrees 3, 4 and 5 . . . . . . . . . . . . . . . . . . . . . . . 130
4.6.1 Determining the Number of True Different Cubic
Permutation Polynomial-Based Interleavers Under
Zhao and Fan Sufficient Conditions . . . . . . . . . . . . . . . . 136
4.6.2 Determining the Number of True Different Fourth
Degree Permutation Polynomial-Based Interleavers
Under Zhao and Fan Sufficient Conditions . . . . . . . . . . . 143
4.6.3 Determining the Number of True Different Fifth
Degree Permutation Polynomial-Based Interleavers
Under Zhao and Fan Sufficient Conditions . . . . . . . . . . . 156
4.7 Determining the Number of True Different Permutation
Polynomials of Degrees up to Five by Weng and Dong
Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
4.8 Determining the Lengths for Which the Number of True
Different PPs of Degree up to Five is Equal to 0 . . . . . . . . . . . . 188
4.8.1 Determining the Lengths for Which the Number
of True Different QPPs is Equal to 0 . . . . . . . . . . . . . . . 190
4.8.2 Determining the Lengths for Which the Number
of True Different CPPs is Equal to 0 . . . . . . . . . . . . . . . 191
4.8.3 Determining the Lengths for Which the Number
of True Different 4-PPs is Equal to 0 . . . . . . . . . . . . . . 193
4.8.4 Determining the Lengths for Which the Number
of True Different 5-PPs is Equal to 0 . . . . . . . . . . . . . . 193
4.9 Determining the Lengths for Which the Number of True
Different d-PPs Under Zhao and Fan Sufficient Conditions
is Equal to 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
5 Minimum Distance of Turbo Codes with Permutation
Polynomial-Based Interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
5.1 Inverse Permutation Polynomials of a QPP . . . . . . . . . . . . . . . . 203
5.2 Upper Bounds on Minimum Distance of Turbo Codes
with QPP-Based Interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
viii Contents

5.3 Upper Bound on Minimum Distance of Turbo Codes


with Interleavers Based on PPs of Any Degree . . . . . . . . . . . . . . 249
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
6 Parallel Turbo Decoding for Permutation Polynomial
Interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
6.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
6.2 Maximum Contention-Free Property of Any Degree PP
Interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
6.3 Parallel Access by Butterfly Networks for Any Degree
Permutation Polynomials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
7 Methods to Search Permutation Polynomial Interleavers
for Turbo Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
7.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
7.2 The Spread Factor of a QPP Interleaver . . . . . . . . . . . . . . . . . . . 279
7.3 X0 Metric for Searching QPP Inter-leavers . . . . . . . . . . . . . . . . . 287
7.4 A Method for Searching QPP Interleavers That Improve
the Distance Spectrum of Turbo Codes Using the Spread
Factor and Garrelo’s Method . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
7.5 Improved Method for Searching Interleavers in a Certain
Class Using a Modified Version of Garrelo’s Method . . . . . . . . . 293
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Abbreviations

4-PP Permutation polynomial of fourth degree


5-PP Permutation polynomial of fifth degree
ARP Almost regular permutation
AWGN Additive white Gaussian noise
BCJR Bahl–Cocke–Jelinek–Raviv
BER Bit error rate
CF Contention-free
CNP Cubic null polynomial
CPP Cubic permutation polynomial
DRP Dithered relative prime
DVB Digital Video Broadcasting
FER Frame error rate
IWR Interwindow randomization
LNP Linear null polynomial
LPP Linear permutation polynomial
LSB Least significant bit
LTE Long-Term Evolution
MCF Maximum contention-free
NP Null polynomial
NRNS Non-recursive non-systematic
PLPP Parallel linear permutation polynomial
PP Permutation polynomial
QNP Quadratic null polynomial
QPP Quadratic permutation polynomial
RS Recursive systematic
RSC Recursive systematic convolutional
SISO Soft-input soft-output
SNR Signal-to-noise ratio
TUB Truncated upper bound
UB Upper bound

ix
Symbols

N set of natural numbers


N set of natural numbers greater than zero
P set of prime numbers
R set of real numbers
Z set of integer numbers
Z set of integer numbers different by zero
ZL set of integers modulo L, i.e. the set f0; 1; . . .; L  1g
ZL set of integers modulo L greater than zero, i.e. the set
f1; 2; . . .; L  1g
; the empty set
C corner merit of an interleaver
f nonlinearity degree of a PP interleaver
f0 refined nonlinearity degree of a PP interleaver
 degree of shift invariance of a PP interleaver
ln(x) natural logarithm (i.e. logarithm to base e) of x (x 2 R, x [ 0)
UðÞ Euler function
wH ðvÞ Hamming weight of the bit sequence v
gcdða; bÞ greatest common divisor of numbers a and b (a; b 2 N)
maxða; bÞ maximum of numbers a and b (a; b 2 R)
minða; bÞ minimum of numbers a and b (a; b 2 R)
jxj absolute value of x (x 2 R)
½x integer part of x (x 2 R)
d xe ceiling function of x (x 2 R), i.e. smallest integer x1 so that x1  x
b xc floor function of x (x 2 R), i.e. the greatest integer x1 so that
x1  x
(mod L) modulo L operation (L 2 N )
 modulo 2 sum
ð f gÞðÞ composing operation of functions f ðÞ and gðÞ, i.e. the function
f ðgðÞÞ
m; n the set fm; m þ 1; m þ 2; . . .; ng (m; n 2 N; m \ n)

xi
xii Symbols

Cnk n choose k (binomial coefficient)


k! factorial of k (k 2 N )
ajb a divides b
a-b a does not divide b
. a is divisible by b
a..b
a b (mod L) a is equivalent to b modulo L, i.e. a (mod L) = b (mod L)
(a; b 2 N; L 2 N )
½a; bÞ the interval of real numbers x, so that a  x \ b (a; b 2 R,
a \ b)
List of Figures

Fig. 2.1 The structure of a convolutional encoder . . . . . . . . . . . . . . . . . . . 6


Fig. 2.2 Equivalent representations of the encoder in Example 2.1 . . . . . . 7
Fig. 2.3 State diagram of the encoder in Example 2.1 . . . . . . . . . . . . . . . . 8
Fig. 2.4 Trellis diagram of the encoder in Example 2.1 . . . . . . . . . . . . . . . 9
Fig. 2.5 Convolutional encoder: a non-recursive non-systematic;
b recursive systematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 9
Fig. 2.6 Structure of a turbo encoder of coding rate 1/3 . . . . . . . . . . . . .. 11
Fig. 2.7 Scheme for generating “flush” bits by a recursive
convolutional encoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 13
Fig. 4.1 The ratio (in percentage) between the number of true
different ZF CPPs and the number of all true different CPPs,
for all lengths of LTE standard . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Fig. 4.2 The ratio (in percentage) between the number of true
different ZF 4-PPs and the number of all true different 4-PPs,
for all lengths used in LTE standard . . . . . . . . . . . . . . . . . . . . . . 155
Fig. 4.3 The ratio (in percentage) between the number of true
different ZF 5-PPs and the number of all true different 5-PPs,
for all lengths used in LTE standard . . . . . . . . . . . . . . . . . . . . . . . 178
Fig. 5.1 Critical interleaver pattern of size six for QPP-based
interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Fig. 5.2 Critical interleaver pattern of size nine for QPP-based
interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Fig. 5.3 Critical interleaver pattern of size four for QPP-based
interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Fig. 5.4 Critical interleaver pattern of size six for QPP-based
interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Fig. 5.5 Critical interleaver pattern of size six for QPP-based
interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Fig. 5.6 Critical interleaver pattern of size 4 . . . . . . . . . . . . . . . . . . . . . . . 251
Fig. 6.1 a Avoiding collisions; b A collision . . . . . . . . . . . . . . . . . . . . . . . 258

xiii
xiv List of Figures

Fig. 6.2 The upper bound of the number of collision-free interleavers


from (6.3) (UBðAðW; MÞÞ) divided by to the total number of
interleavers of length L ¼ MW, for the first 17 lengths of LTE
standard, when the number of processors is M ¼ 2, M ¼ 4
or M ¼ 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Fig. 6.3 8 8-butterfly network with eight memories . . . . . . . . . . . . . . . . 264
Fig. 6.4 Routing the 8-dyadic vector A ¼ ð7; 4; 1; 6; 0; 3; 5; 2Þ
by an 8 8-butterfly network with eight memories . . . . . . . . . . . 268
Fig. 7.1 The difference ubD ðLÞ  ubDE ðLÞ . . . . . . . . . . . . . . . . . . . . . . . . . 281
Fig. 7.2 Design approach of a DRP interleaver . . . . . . . . . . . . . . . . . . . . . 283
Fig. 7.3 Maximum achievable spreads Dmax ðLÞ with true QPP
interleavers for lengths in the range 2  L  4096 . . . . . . . . . . . . . 285
Fig. 7.4 The interleaver …ðxÞ ¼ 29x þ 168x2 ðmod 448Þ and its four
orbits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
List of Tables

Table 2.1 Table describing the state diagram of the encoder


in Example 2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 8
Table 3.1 Conditions for coefficients q1 ; q2 so that …ðxÞ in (3.37)
is a QPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 28
Table 3.2 Conditions for coefficients q1 ; q2 ; q3 so that …ðxÞ in (3.42)
is a CPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 30
Table 3.3 Conditions for coefficients q1 ; q2 ; q3 ; q4 so that …ðxÞ in (3.62)
is a 4-PP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 37
Table 3.4 Conditions for coefficients q1 ; q2 ; q3 ; q4 ; q5 so that …ðxÞ
in (3.80) is a 5-PP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 43
Table 3.5 Quintic Normalized PPs modulo p for p [ 5 . . . . . . . . . . . . .. 50
Table 3.6 Sufficient conditions for coefficients q1 ; q2 ; . . .; qd
so that …ðxÞ in (3.1) is a PP . . . . . . . . . . . . . . . . . . . . . . . . . .. 60
Table 3.7 Normalized PPs modulo p of degree up to five, for p [ 5 . . .. 61
Table 3.8 Normalized PPs modulo p of degree up to five, for p [ 5,
that permute ZpnN;p , with nN;p [ 1 . . . . . . . . . . . . . . . . . . . . .. 61
Table 4.1 Number of all true different QPP-based interleavers . . . . . . . .. 77
Table 4.2 Number of all true different CPP-based interleavers . . . . . . . .. 86
Table 4.3 Number of true different CPP-based interleavers under
Zhao and Fan sufficient conditions . . . . . . . . . . . . . . . . . . . . . . 144
Table 4.4 Number of true different 4-PP-based interleavers under
Zhao and Fan sufficient conditions . . . . . . . . . . . . . . . . . . . . . . 145
Table 4.5 Number of true different 5-PP-based interleavers under
Zhao and Fan sufficient conditions . . . . . . . . . . . . . . . . . . . . . . 181
Table 4.6 The number of all LPPs and QPPs over Zp that permute
ZpnL;p , with nL;p  1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Table 4.7 The number of all CPPs and 4-PPs over Zp that permute
ZpnL;p , with nL;p  1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

xv
xvi List of Tables

Table 4.8 The number of all 5-PPs over Zp that permute ZpnL;p ,
with nL;p  1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Table 4.9 The number of d-PPs (d  3) under Zhao and Fan sufficient
conditions over Zp that permute ZpnL;p , with nL;p  1 . . . . . . . . 187
Cp;dPPs
Table 4.10 The valuesCp;ðd1ÞPPs for d ¼ 2; 3 . . . . . . . . . . . . . . . . . . . . . . . . 190
Cp;4PPs
Table 4.11 The values Cp;CPPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Cp;5PPs
Table 4.12 The values Cp;4PPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Cp;dPPs
Table 4.13 The values Cp;ðd1ÞPPs for d-PPs (d  3) under Zhao and Fan
sufficient conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Table 5.1 Determining the parity weight for an input-weight 2
sequence with the two bits 1 separated by a ¼ 2l  7
positions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Table 5.2 Determining the parity weight for an input-weight 3
sequence with the first and the second bits 1 separated by
b ¼ 8 positions, and the first and the third bits 1 separated
by c ¼ 12 positions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Table 5.3 Summary of conditions that make the interleaver pattern
in Fig. 5.3 to be critical and the upper bounds on the weight
of the corresponding codewords generated by this interleaver
pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Table 5.4 Summary of conditions on L for various upper bounds
on the minimum distance when ” ¼ 3 (derived from the
congruence (5.92) for different values of pair ðja0 j; jb0 jÞ) . . . . . 228
Table 5.5 Summary of conditions on L for various upper bounds
on the minimum distance when ” ¼ 3 and when the QPP
has an inverse QPP (derived from the inequalities (5.99),
(5.103), (5.107), and (5.111), for different values of the pair
ðja0 j; jb0 jÞÞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Table 5.6 Some dmin -optimal LTE QPPs that reach the upper bound
of dmin equal to 36 (from the third row in Table 5.5) . . . . . . . . 246
Table 5.7 Some dmin -optimal LTE QPPs that reach the upper bound
of dmin equal to 38 from Theorem 5.8, for l ¼ 0 . . . . . . . . . . . 246
Table 5.8 Some dmin -optimal LTE QPPs that reach the upper bound
of dmin equal to 50 from Theorem 5.8, for l ¼ 1 . . . . . . . . . . . 246
Table 5.9 Some dmin -optimal LTE QPPs that reach the upper bound
of dmin equal to 51 from Theorem 5.9 . . . . . . . . . . . . . . . . . . . 246
Table 5.10 Some dmin -optimal LTE QPPs that reach the upper bound
of dmin equal to 50, in the class of QPPs with inverse QPPs,
from Theorem 5.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Table 5.11 dmin - optimal QPPs with improved error performance
for two particular interleaver lengths . . . . . . . . . . . . . . . . . . . . 247
List of Tables xvii

Table 5.12 Some dmin -optimal QPPs with improved error rate
performance which do not have an inverse QPP . . . . . . . . . . . 248
Table 5.13 Upper Bounds (UBs) for the minimum distance of turbo
codes using PP based interleavers. Generator matrix of
recursive systematic convolutional codes is as in the LTE
turbo code (3GPP 2008) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Table 5.14 Four dmin - optimal CPPs and two dmin - optimal 4-PPs
for some short LTE lengths, which reach the upper bound
of minimum distance equal to 36 for R ¼ 2
(from Table 5.13) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Table 6.1 The two least significant bits for the components a0l
and a1l , for an arbitrary sequence of four successive
components al . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Table 6.2 The components aql for q ¼ 1; 2; 3, for an arbitrary 8-dyadic
vector of eight components al , l ¼ 0; 1; . . .; 7, at the input
of an 8 8 butterfly network and the corresponding control
bits at each of the three columns of switches. Binary
representations are shown in parenthesis . . . . . . . . . . . . . . . . . 268
Table 6.3 The interleaved addresses for 5-PP interleaver
…ðxÞ ¼ 65x þ 38x2 þ 16x3 þ 10x4 þ 12x5 ðmod 112Þ . . . . . . . . 275
Table 6.4 The physical interleaved addresses for 5-PP interleaver
…ðxÞ ¼ 65x þ 38x2 þ 16x3 þ 10x4 þ 12x5 ðmod 112Þ . . . . . . . . 276
Table 7.1 The three stages for generating DRP interleavers . . . . . . . . . . . 283
Table 7.2 QPP interleavers with the largest spread (LS-QPP)
(Takeshita 2007) and the first term in the distance spectra
of turbo codes of 1/3 nominal coding rate using these
interleavers, generator matrix G ¼ ½1; 15=13 and
post-interleaver trellis termination. . . . . . . . . . . . . . . . . . . . . . . 285
Table 7.3 QPP interleavers with maximum spread (MS-QPP)
(Takeshita 2007). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Table 7.4 QPP interleavers with the best X0 metric and D  0:45 
ubD ðLÞ (X0 -QPP) (Takeshita 2007) and the first term
in the distance spectra of turbo codes of 1/3 nominal coding
rate using these interleavers, generator matrix G ¼ ½1; 15=13
and post-interleaver trellis termination . . . . . . . . . . . . . . . . . . . 292
Table 7.5 QPP interleavers with the largest spread and minimum
TUB(FER) (LS-QPP-TUB(FER)min) (Trifina and Tarniceriu
2014) and the first term in the distance spectra of turbo codes
with these interleavers, 1/3 nominal coding rate, the
generator matrix G ¼ ½1; 15=13 and post-interleaver
trellis termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
xviii List of Tables

Table 7.6 QPP interleavers with D ¼ DLTE and minimum TUB(FER)


(DLTE -QPP-TUB(FER)min) (Trifina and Tarniceriu 2014)
and the first term in the distance spectra of turbo codes
with these interleavers, 1/3 nominal coding rate,
the generator matrix G ¼ ½1; 15=13 and post-interleaver
trellis termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Table 7.7 LTE-QPP and LS-QPP with minimum TUB(FER)
interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Table 7.8 LTE-QPP and DLTE -QPP with minimum TUB(FER)
interleavers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Table 7.9 Some CPPs better than QPPs or LPPs . . . . . . . . . . . . . . . . . . . 300
Chapter 1
Introduction

Current communications systems cannot be conceived without error-correcting codes


in their composition due to different propagation environments affected by distur-
bances (noise, fading, interference, etc.).
The bit error probability (or bit error rate (BER)) is a widely used measure which
assesses the performance of error-correcting codes. It is the ratio between the number
of erroneous bits remaining after decoding and the total number of information bits
transmitted.
Another measure used in assessing the performance of error correcting codes is
the frame error probability (or frame error rate (FER)) representing the ratio between
the number of erroneous frames remaining after decoding and the total number of
frames transmitted. BER and FER values are expressed by curves depending on the
signal to noise ratio (SNR), usually expressed in deciBells (dB).
In Shannon (1948a, b), Claude E. Shannon demonstrated that for a certain channel
there is a minimum value for SNR required to achieve a given BER. This value of
SNR is called Shannon limit.
The coding gain of a coded system is the difference between the SNR required
to achieve a given BER or FER for a non-coded system and the SNR for the coded
system.
Error-correcting codes fall into two categories: block codes and convolutional
codes.
Block codes carry out a bijective correspondence between the set of messages to
be encoded or information words and the so-called code words. Each information
word and code word has a fixed length. The symbols from a code word depend only
on the symbols from the information word, i.e. the encoding is done on blocks of
symbols, hence the name of these codes. The most popular error correcting block
codes are Hamming codes (Hamming 1950), BCH codes (the name comes from the
three researchers who discovered them, Bose, Chauduri and Hocquenghem) Bose
and Ray-Chaudhuri (1960a, b), Hocquenghem (1959), and Reed–Solomon codes
(Reed and Solomon 1960).

© Springer Nature Singapore Pte Ltd. 2019 1


L. Trifina and D. Tarniceriu, Permutation Polynomial Interleavers
for Turbo Codes, Signals and Communication Technology,
https://doi.org/10.1007/978-981-13-2625-7_1
2 1 Introduction

In the case of convolutional codes (Elias 1955), the coding is no longer performed
on symbol blocks. The symbols at the encoder output at a given time does not depend
only on the input symbols from that time instant, but also on a number of previous
input symbols. Therefore, convolutional codes have memory.
Shannon limit may be reached by increasing the length of information sequence
to be coded, in the case of block codes, or by increasing the memory of the con-
volutional encoder, in the case of convolutional codes. However, in both cases, the
decoding complexity becomes too large to be implemented, so that for a long time
the performance of error correcting codes was quite far from the theoretical Shannon
limit. Approaching this limit was made once the “turbo revolution” came into being,
through the discovery of turbo codes in 1993 by three French researchers (Berrou
et al. 1993).
The core concept of turbo codes is based on two main elements: parallel con-
catenated encoding of two or more recursive convolutional codes with one or more
interleavers and the iterative decoding at reception. Iterative decoding is suboptimal,
but it has a reasonable complexity for practical implementation and leads to very
good performance. In (Berrou et al. 1993), the performance achieved by a turbo code
with the information block length of 65536 bits and 18 iterations of turbo decoding
was 0.5 dB far from the Shannon limit, which was an outstanding result.
The crucial component of turbo codes is the interleaver, a device that interlaces
a block of symbols. The interleaver role in decoding is to decorrelate the inputs in
the component decoders of the turbo decoder, which proves essential for turbo code
suboptimal decoding. During encoding, the interleaver combines the low weight code
words provided by a component encoder with those of high weight provided by the
other component encoder, so that the codeword from the turbo encoder output has
an overall large weight.
Since 1993 when turbo codes were discovered, many efforts have been made in
finding performative interleavers. Research has been conducted in two main direc-
tions: generic interleavers, which do not take into account the component codes
and are especially focused on its random behaviour and code matched interleavers,
which consider the component codes and improve significantly the performance of
turbo codes.
The search in a class of interleavers aims at reducing the number of interleavers.
This is made using some metrics, out of which the best known are those that measure
the spread and the randomization.
The main direction in code-matched interleaver design consists in considering the
distance spectrum.
The interleavers can also be classified as: deterministic interleavers, which are
described by mathematical laws, random interleavers and combined interleavers
(described both by mathematical laws and random permutations). Deterministic
interleavers are of particular interest, as they can be mathematically analyzed and
designed. Out of the deterministic interleavers, the PP ones are among the best known
and the most used, due to their outstanding performance and simple, practical imple-
mentation with high-speed, low-power consumption and little memory requirements
(Takeshita 2007).
1 Introduction 3

In addition to some general aspects regarding turbo codes, described in Chap. 2,


this book attempts to present PP interleavers, focusing on the following issues:
• conditions on the coefficients of a polynomial so that it is PP (in Chap. 3),
• determining the number of true different PP interleavers of a certain degree for a
certain length (in Chap. 4),
• results regarding the minimum distance of turbo codes with PP interleavers (in
Chap. 5),
• the contention–free property of PP interleavers (in Chap. 6),
• reduced complexity methods to search PP interleavers (in Chap. 7) and
• presenting PP interleaver performances on channels with additive white Gaussian
noise (AWGN) (in Chap. 7).

References

C. Berrou, A. Glavieux, P. Thitimajshima, Near Shannon limit error-correcting coding and decoding:
turbo-codes, in IEEE International Conference Communication (ICC), vol. 2 (Geneva, Switzer-
land, 1993), pp. 1064–1070
R.C. Bose, D.K. Ray-Chaudhuri, Further results on error correcting binary group codes. Inf. Control
3(3), 279–290 (1960a)
R.C. Bose, D.K. Ray-Chaudhuri, On a class of error correcting binary group codes. Inf. Control
3(1), 68–79 (1960b)
P. Elias, Coding for noisy channels. IRE Int. Conv. Rec. 3, 37–46 (1955)
R.W. Hamming, Error detecting and correcting codes. Bell Syst. Tech. J. 29(2), 147–160 (1950)
A. Hocquenghem, Codes correcteurs d’Erreurs. Chiffres 2, 147–160 (1959)
I.S. Reed, G. Solomon, Polynomial codes over certain finite fields. SIAM J. Appl. Math. 8, 300–304
(1960)
C.E. Shannon, A mathematical theory of communications. Bell Syst. Tech. J. 27(3), 379–423
(1948a)
C.E. Shannon, A mathematical theory of communications. Bell Syst. Tech. J. 27(4), 623–656
(1948b)
O.Y. Takeshita, Permutation polynomial interleavers: an algebraic-geometric perspective. IEEE
Trans. Inf. Theory 53(6), 2116–2132 (2007)
Chapter 2
Fundamentals of Turbo Codes

2.1 Convolutional Codes

As mentioned in the Introduction section, for block codes the bits from a code word
depend only on the bits from the information word. If k is the number of information
bits and n is the number of bits from the corresponding code word, then we have a
(n, k) block code. The ratio Rc = k/n is named the coding rate of the block code
and it is a measure of the redundancy introduced by the code.
Unlike block codes, where the output bits depend only on the input bits at the
current time, convolutional codes are non-block codes, where the output bits depend
both on the input bits at the current time, and on a number of bits from earlier
times. Non-recursive convolutional codes are structures without feedback, while the
recursive ones are structures with feedback. Turbo codes use recursive convolutional
codes, because of the interleaver gain. It means that the coding gain increases along
with interleaver length (Benedetto and Montorsi 1996).
A binary convolutional encoder is a finite memory system, which provides n 0
output bits for k0 input bits. It is composed of a shift register with N · k0 delay
elements, n 0 modulo 2 adders and another shift register of n 0 elements for the output
bits, as shown in Fig. 2.1.
The coding rate of a convolutional code, denoted by Rc , is the ratio between the
number of information bits k0 and the number of output bits n 0 :

k0
Rc = (2.1)
n0

The current n 0 output bits are linear combinations of the present k0 input bits and
the previous (N − 1) · k0 input bits. Beside the coding rate, the convolutional codes
are characterized by the memory order of the encoder,

m = (N − 1) · k0 (2.2)

© Springer Nature Singapore Pte Ltd. 2019 5


L. Trifina and D. Tarniceriu, Permutation Polynomial Interleavers
for Turbo Codes, Signals and Communication Technology,
https://doi.org/10.1007/978-981-13-2625-7_2
6 2 Fundamentals of Turbo Codes

Fig. 2.1 The structure of a convolutional encoder

and the constraint length N . A convolutional code (n 0 , k0 , N ) provides n 0 output


bits for k0 information (input) bits and its constraint length is N .
The generator matrix of a convolutional code can be composed of N submatrices
G 1 , G 2 , . . . , G N , each of them with k0 rows and n 0 columns. Submatrix G i , of size
k0 × n 0 , describes the connections of the “ith” structure of k0 elements to the n 0
modulo 2 adders. The semi-infinite generator matrix of the convolutional code is of
the form:
⎡ ⎤
G1 G2 . . . G N
⎢ G1 G2 . . . G N ⎥
⎢ ⎥
G∞ = ⎢ ⎢ G 1 G 2 . . . G N
⎥.
⎥ (2.3)
⎣ G1 G2 . . . G N ⎦
... ... ... ...

The coded output sequence is given by:

c = u · G∞, (2.4)

where u is the input (information) sequence and the sums in the matrix multiplication
are modulo 2.
Alternatively, the structure of the encoder can be given by n 0 generator vectors
gi , i = 1, n 0 , of size N · k0 , describing the connections between the delay elements
of the shift register from the input to each of the n 0 modulo 2 adders (they are usually
given as polynomials or in octal form).

Example 2.1 For the convolutional code (3, 1, 3) (i.e. n 0 = 3, k0 = 1, N = 3),


equivalent representations of the encoder are given in Fig. 2.2.
In this case, the generator submatrices are of the form:

G 1 = [1 0 1]
G 2 = [1 1 1] (2.5)
G 3 = [0 1 1]
2.1 Convolutional Codes 7

Fig. 2.2 Equivalent


representations of the
encoder in Example 2.1

For this particular case, the semi-infinite generator matrix becomes:


⎡ ⎤
101 111 011 000 ... ... ...
⎢000 101 111 011 000 . . .⎥
G∞ ⎢
=⎣ ⎥. (2.6)
000 000 101 111 011 000 . . .⎦
... ... ... ... ... ... ...

For the input sequence u = (1011), the output sequence c = (101 111 110 010)
results.
The generator vectors for the encoder in this example are:

g1 = [1 1 0]
g2 = [0 1 1] (2.7)
g3 = [1 1 1]

In polynomial form, we can write:

g1 (D) = 1 ⊕ D

g2 (D) = D ⊕ D 2 (2.8)

g3 (D) = 1 ⊕ D ⊕ D 2 ,

where D is the delay operator.


In octal representation, with the least significant bit (LSB) in the right side, we
have:

g1 = 6
g2 = 3 (2.9)
g3 = 7

A convolutional code can be equivalently described by:


• generator submatrices G i , or generator vectors gi ;
• state diagram;
• trellis diagram.
8 2 Fundamentals of Turbo Codes

Fig. 2.3 State diagram of


the encoder in Example 2.1

Table 2.1 Table describing ul σl σl+1 cl


the state diagram of the
encoder in Example 2.1 0 00 (S0 ) 00 (S0 ) 000
1 00 (S0 ) 10 (S2 ) 101
0 10 (S2 ) 01 (S1 ) 111
1 10 (S2 ) 11 (S3 ) 010
0 01 (S1 ) 00 (S0 ) 011
1 01 (S1 ) 10 (S2 ) 110
0 11 (S3 ) 01 (S1 ) 100
1 11 (S3 ) 11 (S3 ) 001

The description by generator submatrices G i or generator vectors gi was given


above.
A convolutional encoder is a finite memory system, whose output depends on the
input sequence and its state. The state of the encoder is defined as the content of
its shift register at a certain time. The operations of a convolutional encoder can be
described by a state diagram. The number of the encoder states is N S = 2m , where m
is the encoder memory order. There are 2k0 branches leaving any state, corresponding
to all entries at a time. 2k0 branches enter the encoder states. The transition from one
state to the other is through a branch that is labelled with the output sequence and
the input bits at that time.
For the encoder in Example 2.1, we denote by σl = (u l−1 , u l−2 ) the state at time
l. There are N S = 22 = 4 states, denoted by S0 = (00), S1 = (01), S2 = (10), S3 =
(11). The corresponding state diagram is given in Fig. 2.3, as well as in Table 2.1.
The branches with solid line indicate transitions due to input bit “0” and those with
dashed line indicate transitions corresponding to “1”. The size of diagram grows
exponentially with memory order m.
The trellis diagram describes the time evolution of the state diagram. For the
code presented in Example 2.1, the trellis is given in Fig. 2.4. The four nodes on each
2.1 Convolutional Codes 9

Fig. 2.4 Trellis diagram of


the encoder in Example 2.1

vertical direction represent the four states at the discrete time l, which is called the
depth of the trellis. The representations with solid and dashed lines have the same
meaning as for the state diagram. The path with bold line corresponds to the input
sequence u = (1011).

2.1.1 Systematic Recursive Convolutional Encoders

These types of encoders present feedback branches and were introduced by Costello
(1969) and Forney Jr. (1970).
For example, two encoders with memory of order 2 (two delay elements required
for implementation) are given in Fig. 2.5, both in non-recursive and recursive ver-
sions. The coding rate of the two encoders is 1/2. The second encoder is systematic
because the input sequence appears in the codeword, whereas the first encoder is
non-systematic.
Let g1,1 (D) and g1,2 (D) be the generator polynomials of a convolutional encoder
of rate 1/2. These polynomials describe the connections of delay elements of the
encoder at each of modulo 2 adders (this information can also be given as generator
vectors or in octal form), as shown in Example 2.1.
When the entry in polynomial form is u(D), the output sequences are:

c1 (D) = u(D) · g1,1 (D)


(2.10)
c2 (D) = u(D) · g1,2 (D)

Fig. 2.5 Convolutional encoder: a non-recursive non-systematic; b recursive systematic


10 2 Fundamentals of Turbo Codes

To get a systematic code with c1 (D) = u(D), we divide (2.10) by g1,1 (D), obtain-
ing:
c1 (D)
c̃1 (D) = = u(D)
g1,1 (D)
(2.11)
c2 (D) u(D)
c̃2 (D) = = · g1,2 (D)
g1,1 (D) g1,1 (D)

Considering the new input sequence

u(D)
ũ(D) = (2.12)
g1,1 (D)

relations (2.11) become:


c̃1 (D) = ũ(D) · g1,1 (D)
(2.13)
c̃2 (D) = ũ(D) · g1,2 (D)

As ũ(D) is the reordered sequence u(D) (according to a recursive digital filter),


from (2.10) and (2.13) it results that the set of code sequences c̃(D) is the same as the
set c(D) and thus the two codes have the same weight enumeration function (Proakis
1995).
For the non-recursive non-systematic (NRNS) encoder in Fig. 2.5, the generators
can be written in polynomial form as:

g1N R N S (D) = 1 ⊕ D 2
(2.14)
g2N R N S (D) = 1 ⊕ D ⊕ D 2

and for the recursive systematic (RS) encoder, equivalent to the former, the generators
are:

g1R S (D) = 1
1 ⊕ D ⊕ D2 (2.15)
g2R S (D) =
1 ⊕ D2

The generator vectors are:

g1N R N S = [1 0 1]
(2.16)
g2N R N S = [1 1 1]

and the octal representation for the non-recursive non-systematic encoder is:

g1N R N S = 5
(2.17)
g2N R N S = 7
2.1 Convolutional Codes 11

and for the recursive systematic encoder:

g1R S = 1
7 (2.18)
g2R S = .
5

2.2 Turbo Code Structure

Turbo codes are composed by the parallel concatenation of two or more convolutional
codes, where the encoder input sequences are interleaved versions of the information
sequence. They are obtained with the so-called interleaver devices. The structure of
a turbo encoder of coding rate 1/3 is given in Fig. 2.6.
To increase the coding rate, some output bits can be removed (usually from the
p p
parity check bits c1k and c2k ). This operation is known as puncturing.
In general, the number of component codes can be greater than two, with an
appropriate number of interleavers, resulting the so-called multiple turbo codes.
The interleavers and their complementary devices, de-interleavers, were previ-
ously used to correct error bursts by concatenating with an independent error correc-
tion code. The role of these devices in the turbo code structure is to obtain statistically
independent encoded sequences at the output of the component encoders, which is
essential for the iterative decoding. The interleavers take symbol blocks of size L
from the input and provide at output the same block, but in a different order, perform-
ing the so-called entry permutation. De-interleavers perform the inverse operation,
restoring the original order of symbols.
A block interleaver is described by an invertible function:

π : ZL → ZL (2.19)

Fig. 2.6 Structure of a turbo encoder of coding rate 1/3


12 2 Fundamentals of Turbo Codes

which is a permutation of the integers from the set Z L = {0, 1, 2, . . . , L − 1}, so that
the symbol on position i, with i ∈ Z L , at the output is the symbol on position π(i)
from the input.
The inverse device, the de-interleaver, acts on the output interleaver symbols and
places them back in the original order. The permutation describing the de-interleaver
is μ = π −1 .
Thus, the turbo code becomes a block code (3L , L) (for the case shown in Fig. 2.6),
where L is the length of the information bit block, and 3L is the length of the
codeword. Convolutional encoders are systematic and their coding rate is 1/2; the
input sequence is transmitted once. Besides block interleavers, there is another class
called convolutional interleavers, working with continuous data flow, as code name.

2.3 Trellis Termination

The interleaver size and type influence the turbo code performance and for a good
decoding it is required that the trellises of the two codes start from the same state
(usually the null state) for every block of information bits. This imposes the operation
named trellis termination.
If the trellis is truncated in an unknown state, the decoding performance is weak
towards its end.
Assume the convolutional encoders have the memory of order m. If only the
first trellis is terminated with m bits included in the interleaver, the equivalent block
code corresponding to the turbo-code in Fig. 2.6 is (3L , L − m). If both trellises are
terminated with m bits after the interleaver, the equivalent block code corresponding
to the turbo-code in Fig. 2.6 is (3(L + m), L).
There are five main classes of trellis termination. Assuming that the two encoders
have m 1 and m 2 memory elements, respectively, the trellis termination methods can
be briefly described as follows (Hokfelt et al. 2001):
I. Without trellis termination
In this case, none of the trellises is finished and the decoding performance is the
1
weakest. The coding rate is Rc = .
3
II. Termination of the first encoder
The first encoder closes the trellis while the second does not. The termination is
carried out by adding m 1 tail bits to the input sequence, so that the first encoder
reaches state 0. These bits are included in the sequence entering the interleaver and
therefore after permutation they no longer correspond to the termination bits of the
L −m
second encoder. For m 1 = m 2 = m the coding rate is Rc = .
3L
Another random document with
no related content on Scribd:
Milk, cocoa-nut flavoured, for sweet dishes, 456
lemonade, delicious, 583
remarks on, 450
Mild eschalot sauce, 127
mustard, 130
ragout of garlic, or l’ail à la Bordelaise, 126
Minced collops, 201
fowl, 276
veal, 230
veal, with oysters, 231
Mincemeat (author’s receipt), 368
superlative, 369
fritters, 383
Mince pies (entremets), 369
royal, 370
Miniature round of beef, 199
Mint julep, 582
sauce, 132
Mock, brawn, 260
turtle soup, 23
turtle soup, good old-fashioned, 26
Modern blanc-mange-mould, 476
cake-mould, 540
chicken pie, 353
jelly-mould, 470
potato pasty, 350
varieties of calf’s feet jelly, 463
Monitor’s tart, or tourte à la Judd, 370
Moor game, to roast and hash, 291, 292
Mould for French pies, or casseroles of rice, 344
Mull, to, wine, an excellent receipt (French), 581
Mullagatawny soup, 35
vegetable, 37
Mullet, grey, to boil, 76
red, to bake, broil, or roast, 76
Mushroom catsup, 146
catsup, another receipt for, 148
catsup, double, 148
forcemeat, 159
powder, 154
sauce, brown, 123
sauce, another, 123
sauce, white, 122
Mushrooms, au beurre, 329
dried, 153
partridges with, 289
in pigeon pie, 354
pickled, in brine for winter use, 536
to pickle, 535
potted (delicious), 330
toast, or croûte aux champignons, 330
Mussel-plums, preserves of, 516
Mustard, to make, 130
mild, 130
Tartar, 155
another Tartar, 155
horseradish vinegar for ditto, 153
Mutton, broth, 44
to choose, 233
cutlets broiled, and Soubise sauce, 243
cutlets, to broil, 241
cutlets of, cold, 243
cutlets, stewed in their own gravy, 240
fillet of, roast or stewed, 238
haunch of, to roast, 234
kidneys à la Française (entrée), 243
kidneys, broiled, 244
kidneys, Oxford receipt for, 244
leg of, to boil (an excellent receipt), 237
leg of, boned and forced, 236
leg of, braised, 236
leg of, roast, 235
loin of, roast, 238
loin of, stewed like venison, 239
neck of, roast, 239
pie, common, 355
pie, good, 355
pudding, 401
saddle of, to roast, 235
shoulder of, broiled, 240
shoulder of, to roast, 239
shoulder of, forced, 240
a good family stew of, 242
stock for soup, 16
Nasturtiums, to pickle, 539
Nesselrôde cream, 471
pudding, 491
Norfolk biffins, dried, 572
sauce, 99
Norman harricot, 224
Normandy pippins, 572
Nougat, 564
Nouilles, to make, 5
Œufs au plat, 450
pochés au jus, 449
Old-fashioned boiled custard, 481
Oil, to fry salmon and other fish in (Jewish), 607
Olive sauce, 128
Omlette aux fines herbes, 380
soufflée, 381
Omlets, observations on, 380
Omlet, common, 380
King of Oude’s, 612
Onion sauce, brown, 125
sauce, brown, another receipt for, 125
sauce, white, 125
Onion and sage stuffing for ducks and geese, No. 9, 160
rich white sauce of, or Soubise, 126
Onions, to pickle, 537
stewed, 342
Orange, baskets for jelly, 466
calf’s feet jelly, 464
conserve for cheese-cakes, or pudding, 501
fritters, 384
gravy, 102
isinglass jelly, 465
marmalade, 527, 529
plums, preserve of, 514
salad, 571
snow-balls, 420
wine, 585
Orange-flower, candy, 565, 566
Seville, paste, 568
filled with jelly in stripes, 466
Tangerine, 571
Oven, American, 178
management of, 595
objection to iron ones, 595
Oxford receipt for Bishop, 580
for mutton kidneys, 244
punch, 580
Ox-cheek, stuffed and baked, 208
Ox-tail, broiled (entrée), 195
stewed, 195
soup, 42
Ox tongue, to pickle, 202
potted, 305
Oyster forcemeat, No. 5, 159;
No. 6, 159
patties, 359
sauce, common, 114
sauce, good, 114
sausages, 87
soup, white, or à la Reine, 30
Oysters, curried, 302
to feed, 85
to fry, 80
scalloped, à la Reine, 86
to scallop, 86
to stew, 86
to stew, another receipt, 87
Pain de pore frais, or sausage-meat cake, 261
Pain de veau, or veal cake, 222
Pain de veau (Bordyke receipt), 222
Palace-bonbons, 567
Palates, beef, to dress, 194, 195
Panada, 165
Pancakes, 382
to crisp, 130
fried, 130
Parsley green for colouring sauces, 129
Parsneps, to boil, 337
fried, 337
Partridge, broiled (breakfast dish), 290
broiled (French receipt), 290
French, or red-legged, to dress, 290
potted, 305
pudding, 401
soup, 35
Partridges, boiled, 289
with mushrooms, 289
to roast, 288
salmi, or rich hash of, 292
salmi of (French), 292
Paste, almond, 367
brioche, 349
cherry (French), 504
currant, 510
gooseberry, 501
very good light, 346
English puff, 316
fine puff, or feuilletage, 345
quince, 525
Pastry, to colour almonds or sugar-grains for, 542
to glaize or ice, 345
icing for, 345
sugar-icing for, 543
her Majesty’s, 366
general remarks on, 344
sandwiches, 374
Pasty, potato, 350
varieties of, 351
mould for, 351
Pâte Brisée, or French crust for hot or cold pies, 347
Patties à la Pontife (entrées), 360
good chicken, 359
common lobster, 559
superlative lobster, author’s receipt, 359
oyster (entrée), 359
sweet boiled, 422
tartlets, or small vols-au-vents, to make, 361
Peach, fritters, 384
jam, or marmalade, 518
mangoes, 534
Peaches, compote of, 459
to dry, an easy and excellent receipt, 518
to pickle, 534
preserved in brandy (Rotterdam receipt), 571
stewed, 459
Suédoise of, 488
vol-au-vent of, 358
Pears, baked, 573
stewed, 573
meringue of, 486
Pearled fruit, 570
Peas, green, to boil, 320
green, with cream, 321
green, soup of, 39, 40
green, stewed, à la Française, 320
pudding, 401
soup, common, 41
soup without meat, 42
soup, rich, 41
Perch, to boil, 82
to fry, 83
Pheasant, boudin of, 288
cutlets, 275
to roast, 287
salmi of, 292
soup, 33, 34
Pickle, for beef, tongue, and hams, 197
Hamburgh, for pork, &c., 197
to, beet-root, 537
cherries, 532
eschalots, 532
gherkins, 537
gherkins (French receipt), 533
limes, 538
lemons, 538
lemon mangoes, 538
melon, sweet (foreign receipt), 534
mushrooms in brine, 536
mushrooms (an excellent receipt), 535
nasturtiums, 539
onions, 537
peaches, and peach mangoes, 534
red cabbage, 539
walnuts, 536
Pickles, where to be procured good, 532
general remarks on, 531
Pie, beef-steak, 354
a common chicken, 353
a modern chicken, 353
a good common English game, 352
mutton, common, 355
a good mutton, 355
pigeon, 354
Pies, excellent, cream crust for, 347
French crust for, 347
suet-crust for, 348
meat jelly for, 92
mince, 369
mince royal, 370
pudding (entremets), 371
raised, 356
Pigeons, to boil, 280
to roast, 280
served with cresses, for second course, 280
Pig, divisions of, 247
Kentish mode of cutting up and curing, 254
to bake a sucking, 250
sucking, en blanquette (entrée), 250
to roast a sucking, 249
à la Tartare (entrée), 250
Pig’s cheeks, to pickle, 254
feet and ears, in brawn, 260
Pike to bake, 81
to bake (superior receipt), 81
to boil, 80
Pilaw, a simple Syrian, 613
Pine-apple marmalade, superior, 513
pudding-sauce, 405
pudding-sauce, very fine, 405
Pintail, or Sea Pheasant, to roast, 294
Pippins, Normandy, to stew, 572
Piquante sauce, 118
Plaice, to boil, 75
to fry, 75
Plate, hot, for cooking, 174
Plum-puddings, 416, 417, 441, &c.
Plums, compote of, 458
Imperatrice, to dry, 521
Imperatrice, marmalade of, 521
Poêlée, 169
Poet’s, the, receipt for salad, 135
Polenta à l’Italienne, 393
Pontac catsup, 150
Poor author’s pudding, 442
Pork, to choose, 247
cutlets of, to boil or fry, 251
Italian cheese of, 260
different joints of, 247
observations on, 247
to pickle, 254
to roast, 251
to roast a saddle of, 251
sausages of, 261, 263
Portable lemonade, 583
Potage à la Reine, 29
Pot-au-Feu, or stock pot, 8
fowls, &c., boiled in, 9
Potato-balls (English), or croquettes, 314
boulettes (good), 314
bread, 600
fritters, 384
flour, or fecule de pommes de terre, 154
pasty (modern), 350
puddings, 436
ribbons, to serve with cheese, 313
rissoles, French, 315
soup, 21
Potatoes, à la crême, 315
à la Maître d’Hôtel, 315
to boil, as in Ireland, 310
to boil (Lancashire receipt), 311
boulettes (entremets), 314
to boil (Captain Kater’s receipt), 312
crisped, or potato-ribbons (entremets), 313
fried (entremets), 313
mashed and moulded in various ways 313
new, in butter, 312
new, to boil, 311
remarks on their properties and importance, 309
to roast or bake, 312
scooped (entremets), 312
Potted anchovies, 306
chicken, partridge, or pheasant, 305
ham, 304
hare, 307
meats (various), 303
meat for the second course, moulded, 306
mushrooms, 330
ox-tongue, 305
shrimps, or prawns, 306
Poultry, to bone, 265
to bone, another mode, 265
to bone, for fricassees, &c., 266
to choose, 264
to lard, 181
Powder, mushroom, 154
of savoury herbs, 155
Prawns, to boil, 93
to dish cold, 93
to pot (see shrimps:306)
to shell easily, 93
Prepared apple or quince juice, 456
calf’s head (the cook’s receipt), 211
Preserved fruit, general remarks on the use and value of, 493
Preserve, a fine, of red currants, 509
delicious, of white currants, 510
good common, 512
an excellent, of the green orange, or Stonewood plum, 514
groseillée, a mixed, 513
another good mélange, or mixed, 513
nursery, 512
Preserve, to, the colour and flavour of fruit-jams and jellies, 497
Preserving-pan, 495
Preserves, French furnace and stewpan convenient for making, 494,
495
general rules and directions for, 496
Pruneaux de Tours, or compote of dried plums, 573
Prince Albert’s pudding, 411
Pudding (baked), à la Paysanne (cheap and good), 442
almond, 425
almond, Jewish, 608
apple or custard, 437
apple (the lady’s or invalid’s new), 608
Bakewell, 427
barberry and rice, 406
light batter, 443
good bread, 429, 430
common bread and butter, 429
rich bread and butter, 428
cake and custard, and various inexpensive, 437
curate’s, 442
the good daughter’s mincemeat, 426
Dutch custard, or raspberry, 438
the elegant economist’s, 428
Gabrielle’s, or sweet casserole of rice, 438
green gooseberry, 435
good ground rice, 437
a common ground rice, 435
Mrs. Howitt’s (author’s receipt), 426
an excellent lemon, 426
lemon-suet, 427
Normandy, 441
plum, en moule, or moulded, 424
poor author’s, 442
(baked) potato, 436
a richer potato, 436
the printers’, 424
the publishers’, 410
Queen Mab’s, 470
a common raisin, 441
a richer raisin, 442
raspberry, or Dutch custard, 438
ratafia, 427
cheap rice, 434
a common rice, 433
a French rice, or Gâteaux de riz, 433
rice, meringué, 434
richer rice, 434
rice, à la Vathek, 440
Saxe-Gotha, or tourte, 431
a good semoulina, or soujee, 430
a French semoulina (or Gâteau de semoule), 430
soujee and semola, 439
sponge cake, 436
vermicelli, 439
welcome guest’s own, 412
common Yorkshire, 440
good Yorkshire, 440
young wife’s (author’s receipt), 425
Pudding (boiled) à la Scoones, 416
apple, cherry, currant, or any other fresh fruit, 408
a common apple, 409
the author’s Christmas, 417
common batter, 406
another batter, 406
batter and fruit, 407
beef-steak, or John Bull’s, 399
beef-steak, epicurean receipt for, 400
small beef-steak, 400
a black-cap, 407
Ruth Pinch’s, or beef-steak à la Dickens, 401
bread, 418
brown bread, 419
cabinet, 413
a very fine cabinet, 414
common custard, 411
the elegant economist’s, 415
German pudding and sauce, 412
Herodotus’ (a genuine classical receipt), 409
Ingoldsby Christmas, 416
Her Majesty’s, 410
mutton, 401
partridge, 401
peas, 401
small light plum, 416
Prince Albert’s, 411
the publishers’, 410
vegetable plum, 417
a very good raisin, 415
a superior raisin 415
a cheap rice, 420
a good rice, 419
rice and gooseberry, 420
rolled, 418
savoury, 399
Snowdon, 414
Kentish suet, 407
another suet, 408
the welcome guest’s own (author’s receipt), 412
a Kentish well, 417
Baden-Baden, 431
Puddings, general directions for baked, 423
to mix batter for, 397
general directions for boiled, 395
butter crust for, 398
cloths for, to wash, 366
suet-crust for, 398
to clean currants for, 397
Madeleine, to serve cold, 432
sauces for sweet, 402, 406
to steam in common stewpan, 397
Sutherland, or castle, 432
Pudding-pies, 371
a common receipt for, 371
Pudding sauces, sweet, 402-406
Puff-paste, canellons of, 417
English, 346
finest, or feuilletage, 345
very good light, 346
Puffs, German, 484
raspberry, or other fruit, 375
Punch, Cambridge milk, 581
Oxford, 580
Punch, Regent’s, or George IV.’s (a genuine receipt), 582
sauce for sweet puddings, 402
Purée, fine, of onions, or Soubise sauce, 126
of tomatas, 328
of turnips, 127
of vegetable marrow, 127
Quenelles, or French forcemeat, 163
Queen cakes, 556
Queen’s custard, 481
Queen Mab’s pudding, 470
Quince blamange, 478
blamange, with almond cream, 478
custards, 482
jelly, 524
juice, prepared, 456
marmalade, 524
and apple marmalade, 525
paste, 525
Rabbits, to boil, 286
Rabbit, to fry, 287
to roast, 286
soup, à la Reine, 31
soup, brown, 31
Radishes, turnip, to boil, 318
Ragout, mild, of garlic, 126
Raisin puddings, 441, 442
wine, which resembles foreign, 583
Ramakins à l’Ude, 375
Raspberries, to preserve for creams or ices, without boiling, 506
Raspberry jam, 506
jam, red or white, 506
jelly, for flavouring creams, 507
jelly, another good, 508
vinegar, very fine, 578
Red cabbage, to stew, 340
Regent’s, or George IV.’s punch (genuine), 582
Remoulade, 137
Rhubarb, or spring fruit, compote of, 457
Rice, to boil for curries, or mullagatawny soup, 36
boiled, to serve with stewed fruit, &c., 422
cake, 546
casserole of, savoury, 351
casserole of, sweet, 438
croquettes of, 385, 386
savoury croquettes of, 386
puddings, 419, 420, 433-435
soup, 14
soup, white, 15
sweet, à la Portugaise, or arocē docē, 489
Rice flour, to make, 154
soup, 15
to thicken soups with, 4
Risotto à la Milanaise, 615
Rissoles, 387
very savoury, English (entrée), 387
Roasting, general directions for, 169
slow method of, 171
Roast beef (see Chapter X.)
chestnuts, 574
game (see Chapter XV.)
lamb (see Chapter XII.)
mutton (see Chapter XII.)
potatoes, 312
pork (see Chapter XIII.)
poultry (see Chapter XIV.)
veal (see Chapter XI.)
Rolled shoulder of mutton, 240
ribs of beef, 198
sirloin of beef, 198
Roll, beef, or canellon de bœuf, 201
Rolls, breakfast or dinner, 600
Geneva, 601
excellent meat, 360
Roux, or French thickening brown (for sauces), 106
white, 106
Rusks, sweet, 554
Rusks, 602
Sago soup, 14
Salad, to dress (English), 140
forced eggs for garnishing, 137
French, 140
of mixed summer fruits, 570
excellent herring (Swedish receipt), 143
lobster, 142
very elegant lobster, 584
orange, 571
peach, 570
the Poet’s receipt for, 135
Suffolk, 141
walnut, or des cerneaux, 141
Yorkshire ploughman’s, 141
dressings and sauces, 140
sorrel, 142
of young vegetables, 141
Salamander to brown with, 183
Salmi of moor fowl, pheasants or partridges, 292
French, or hash of game, 292
of wild fowl, 294
Salmon à la Genevese, 59
à la St. Marcel, 60
baked over mashed potatoes, 60
to boil, 59
crimped, 60
to fry in oil, 607
pudding (Scotch receipt), 60
Salsify, to boil, 341
to fry in batter, 341
Salt fish, to boil, 62
à la Maître d’Hôtel, 63
Salt, to, beef, in various ways, 196
Sandwiches, lemon, 374
pastry, 374
Sand-launce, or Sand-eel, mode of dressing, 77
Salzburger Nockerl, 620
Sauce (American), cold, for salads, salt fish, &c., 133
anchovy, 115
baked apple, 124
boiled apple, 124
brown apple, 125
arrow-root, clear, 403
asparagus, for lamb cutlets, 120
béchamel, 107
béchamel maigre, 108
another common béchamel, 108
bread, 112
bread, with onion, 113
caper, 121
brown caper, 121
caper for fish, 121
celery, 128
brown chestnut, 129
white chestnut, 129
Chatney, capsicum, 144
Chatney, sausage, 609
Chatney, shrimp (Mauritian receipt), 144
Chatney, tomato, 609
Chatney (Bengal receipt), 146
Christopher North’s own (for many meats), 119
crab, 114
cream, for fish, 115
common cucumber, 121
another common cucumber, 122
white cucumber, 122
currants, 404
Dutch, 111
cold, Dutch, 133
common egg, 110
egg, for calf’s head, 111
very good egg, 110
English, for salad, cold meat, &c., 134
epicurean, 151
mild eschalot, 127
Espagnole, 100
Espagnole, with wine, 100
fricassee, 112
fruit, superior, 404
mild garlic, 126
Genevese, or sauce Genevoise, 117
German, for fricassees, 107
German cherry, 406
German custard pudding, 403
gooseberry, for mackerel, 120
horseradish, excellent, to serve hot or cold, with roast beef, 118-
133
hot horseradish, 119
the lady’s, for fish, 117
common lobster, 113
Maître d’Hôtel, or steward’s sauce, 116
cold Maître d’Hôtel, 133
Maître d’Hôtel sauce maigre, 117
sharp Maître d’Hôtel, 116
Imperial mayonnaise, 136
mayonnaise, red or green, 136
mayonnaise (very fine), to serve with cold meat, fish, or
vegetables, 135
mint, common, 132
mint (superior), for roast lamb, 133
strained, 132
brown mushroom, 123
another mushroom, 123
white mushroom, 122
Norfolk, 109
olive, 128
brown onion, 125
another brown onion, 125

You might also like