design and simulation of coded-modulation using turbo

86
Design and Simulation of Coded-Modulation Using Turbo Trellis Coding and Multi- Layer Modulations A dissertation presented to the faculty of the Russ College of Engineering and Technology of Ohio University In partial fulfillment of the requirements for the degree Doctor of Philosophy Fatemeh Khalili December 2017 © 2017 Fatemeh Khalili. All Rights Reserved.

Upload: khangminh22

Post on 16-Jan-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

Design and Simulation of Coded-Modulation Using Turbo Trellis Coding and Multi-

Layer Modulations

A dissertation presented to

the faculty of

the Russ College of Engineering and Technology of Ohio University

In partial fulfillment

of the requirements for the degree

Doctor of Philosophy

Fatemeh Khalili

December 2017

© 2017 Fatemeh Khalili. All Rights Reserved.

2

This dissertation titled

Design and Simulation of Coded-Modulation Using Turbo Tellis Coding and Multi-Layer

Modulations

by

FATEMEH KHALILI

has been approved for

the School of Electrical Engineering and Computer Science

and the Russ College of Engineering and Technology by

Jeffrey C. Dill

Professor of Electrical Engineering and Computer Science

Dennis Irwin

Dean, Russ College of Engineering and Technology

3

ABSTRACT

KHALILI, FATEMEH, Ph.D., December 2017, Electrical Engineering

Design and Simulation of Coded-Modulation Using Turbo Trellis Coding and Multi-Layer

Modulations

Director of Dissertation: Jeffrey C. Dill

For modern wireless communication systems bandwidth efficiency and energy

efficiency are the vital requirements for reasonable performance. Bandwidth determined

by the rate at which information can be sent via the channel and the maximum rate at which

error free information can be communicated is introduced as channel capacity by Shannon.

Bandwidth efficiency or spectral efficiency is often satisfied by exploiting appropriate

modulation scheme. Energy efficiency or power efficiency depends on the amount of

power that a system uses which is a critical issue for wireless and cellular communications.

It also shows the system tolerance against the environment noise. Energy efficiency can be

improved by applying error correcting codes that produces lower error probability at the

receiver for a fixed signal to noise ratio. In order to achieve both requirements, the idea of

coded modulation technique which combines QPSK and OFDM modulation with a low

rate, short block systematic turbo code, is proposed. We aim to achieve exceptional energy

efficiency in extremely noisy environments, where moderate data rates and short messages

are required. For this proposed model, the performance improvement is produced by a

unique mapping of trellis structure error correcting code and spectral efficiency is achieved

by exploiting OFDM modulation. The designed OFDM distributes systematic and parity

symbols along all sub-channels symmetrically and adjusts their power distinctively to

4

achieve superior bit error performance. Further, we utilize four-dimensional M-ary

Quadrature Amplitude Modulation (4D-MQAM) for parity symbols which effectively

increases the overall rate of the system while maintaining the same level of energy

efficiency. Moreover, we apply puncturing for parity symbols to increase overall rate of

the system and improve bandwidth efficiency. Also, we applied non-systematic coding

structure to increase coding rate with less puncturing rate while maintaining the error rate

as low as possible. The resulting performance of our designed system compared with the

theoretical sphere packing lower bound indicates a very small gap (less than 0.5 dB) which

means a substantially close approach to the Shannon limit.

5

DEDICATION

Dedicated to my Parents,

For their endless Love and Support

6

ACKNOWLEDGMENTS

The completion of this dissertation would not be possible without all the help and

support that I received during my PhD career at Ohio University. Foremost, I thank

almighty God for all the help and support throughout my life.

I would like to express my sincere gratitude to my adviser, Professor Jeffrey C.

Dill, for his enthusiasm, motivation and guidance during the planning and development of

this research. He has patiently supported and encouraged me during my program. His

intellectual directions, valuable suggestions, knowledge, and most of all, his patience,

made this work possible.

I would also like to thank Professor Gurgen Hayrapetyan for helping us to verify

the mathematical theory of our work.

I would also like to appreciate my committee members, Professor Chris Bartone,

Professor Maarten Uijt de Haag, Professor Douglas Lawrence, Professor Savas Kaya,

Professor Sergio Lopez-Permouth, and Professor Gurgen Hayrapetyan for being a part of

my dissertation committee, and dedicating their valuable time on reviewing the dissertation

and providing constructive feedback and comments.

I would also like to extend my gratitude to Engineering and Math departments

community for their kindness and support during my program and providing me with

invaluable opportunity to grow and succeed.

Finally, I would like to give my special thanks to my family who have been always

supporting and encouraging me to achieve my goals.

7

TABLE OF CONTENTS

Page

Abstract ............................................................................................................................... 3

Dedication ........................................................................................................................... 5

Acknowledgments............................................................................................................... 6

List of Tables ...................................................................................................................... 9

List of Figures ................................................................................................................... 10

Chapter 1: Introduction ..................................................................................................... 12

1.1 The Scope of Channel Coding .............................................................. 12

1.2 Coded Modulation ................................................................................ 14

1.3 Dissertation Objectives ......................................................................... 15

Chapter 2: Background ..................................................................................................... 19

2.1 Modulation ............................................................................................ 19

2.1.1 PSK and QPSK Modulation.............................................................. 20

2.1.2 QAM and 4D-QAM Modulation ...................................................... 23

2.1.3 OFDM Modulation ........................................................................... 26

2.2 Channel Coding .................................................................................... 28

2.2.1 Turbo Coding .................................................................................... 30

2.2.2 Turbo Encoding ................................................................................ 31

2.2.3 Turbo Decoding ................................................................................ 33

2.3 Coded Modulation ................................................................................ 36

2.3.1 Trellis Coded Modulation ................................................................. 37

8

2.3.2 Turbo Trellis Coded Modulation ...................................................... 37

2.3.3 Interleaver ......................................................................................... 40

Chapter 3: Methodology and System Model .................................................................... 43

3.1 Introduction ........................................................................................... 43

3.2 System Model ....................................................................................... 45

3.2.1 Channel Coding ................................................................................ 45

3.2.2 Modulation ........................................................................................ 49

3.2.3 Four-Dimensional M-Ary QAM ....................................................... 52

3.2.4 Vector Selection ................................................................................ 53

3.2.5 Modem Scheme ................................................................................ 56

3.3 System Enhancement and Performance Improvement ......................... 56

3.3.1 Puncturing ......................................................................................... 56

3.3.2 Modulation Alternative ..................................................................... 60

3.3.3 Coding Consideration ....................................................................... 61

Chapter 4: Simulation Results .......................................................................................... 62

4.1 Test Set.................................................................................................. 62

4.2 Results of Different Structures.............................................................. 64

Chapter 5: Conclusion and Future Work .......................................................................... 77

5.1 Future Directions .................................................................................. 78

References ......................................................................................................................... 80

9

LIST OF TABLES

Page

Table 1 Summary of Coding Theory Landmarks ............................................................. 14

Table 2 State Table for 16 State Trellis ............................................................................ 46

10

LIST OF FIGURES

Page

Figure 1 QPSK Modulator ................................................................................................ 22

Figure 2 QPSK Demodulator ............................................................................................ 22

Figure 3 Simple Structure of QAM Modulator [43] ......................................................... 24

Figure 4 Simple Structure of QAM Demodulator [43] ..................................................... 24

Figure 5 General Structure of OFDM [56] ....................................................................... 27

Figure 6 Turbo Code Encoder ........................................................................................... 32

Figure 7 Turbo Code Decoder [70] ................................................................................... 34

Figure 8 TTCM Encoder [20] (Reprint by permission) .................................................... 38

Figure 9 TTCM Decoder [20] (Reprint by permission) .................................................... 40

Figure 10 Encoder Block Diagram ................................................................................... 47

Figure 11 Decoder Block Diagram ................................................................................... 49

Figure 12 Constellation Representation ............................................................................ 54

Figure 13 Puncturing Pattern ............................................................................................ 59

Figure 14 Block Diagram of the Designed System .......................................................... 63

Figure 15 Word Error Rate for Rate 1/10 Short Codewords ............................................ 65

Figure 16 Comparison of 16-State Duobinary Code Rate 1/10 and Existing DVBRCS with

Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed

Word Error Probability Pw=10-4 ........................................................................................ 66

Figure 17 Word Error Rate for Rate 1/5 Short Codewords .............................................. 67

11

Figure 18 Comparison of 16-State Duobinary Code Rate 1/5 and Existing DVBRCS with

Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed

Word Error Probability Pw=10-4 ........................................................................................ 68

Figure 19 Word Error Rate for Rate 1/4 Short Codewords .............................................. 69

Figure 20 Comparison of 16-State Duobinary Code Rate 1/4 and Existing DVBRCS with

Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed

Word Error Probability Pw=10-4 ........................................................................................ 70

Figure 21 Word Error Rate for Rate 3/11 Short Codewords ............................................ 71

Figure 22 Comparison of 16-State Duobinary Code Rate 3/11 and Existing DVBRCS with

Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed

Word Error Probability Pw=10-4 ........................................................................................ 72

Figure 23 Word Error Rate for Rate 1/3 Short Codewords Using QAM for Systematic Bits

........................................................................................................................................... 73

Figure 24 Comparison of 16-State Duobinary Code Rate 1/3 Using QAM for Systematic

Bits and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of

Information Block Size and a Fixed Word Error Probability Pw=10-4 ............................. 74

Figure 25 Word Error Rate for Rate 1/3 Short Codewords for Non-Systematic .............. 75

Figure 26 Comparison of 16-State Duobinary Code Rate 1/3 with Non-Systematic Coding

and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of

Information Block Size and a Fixed Word Error Probability Pw=10-4 ............................. 76

12

CHAPTER 1: INTRODUCTION

1.1 The Scope of Channel Coding

Information theory is the science of reliable storing, compressing, and

communicating information and has been developed to find limits on these operations. In

his essential publication [1], Claude E. Shannon, known as the father of information theory,

showed that bandwidth and noise are the two factors that can characterize any

communications channel. Knowing the bandwidth and noise characteristic of a channel,

we can calculate the maximum rate at which error free information can be communicated.

This rate is called channel capacity or Shannon limit. The capacity C of the Additive White

Gaussian Noise (AWGN) channel with bandwidth W, average received signal power S, and

average noise power N is calculated as:

)1(log 2 NSWC (1)

Approaching the capacity of AWGN channel has been one of the most discussed

topics in information theory and coding theory ever since. Based on coding theory, as long

as the coding rate is less than or equal to the channel capacity, there exists at least one

sufficiently long code with infinitely small error probability [2]. Coding theory is a

fundamental application of information theory that can be categorized into source coding

and channel coding. Source coding deals mainly with data compression, while channel

coding or error correction coding is used to correct the transmission errors at the receiver.

Historically, one of the first practical forward error correction code (FEC) was a

block code proposed in 1950 by Hamming [3] which was a single error-correcting code. In

1955 the idea of convolutional codes was introduced by Elias [4] and its early mathematical

13

theory is developed by Forney [5], [6] and continued with different decoding algorithms in

[7], [8]. Viterbi’s landmark 1967 paper [9], applying maximum likelihood sequence

estimation algorithm for decoding, known as Viterbi algorithm, has been a major discovery

in the history of convolutional codes and one of its first practical application was during

the seventies [10].

As mentioned Hamming is a single error correcting block code which is too weak

for practical application. Discovery of BCH code [11], as a multiple error correcting binary

block code was a major improvement in block coding. Soon after, non-binary subset of

BCH code was introduced by Reed and Solomon [12] known as RS code which presents

certain optimality properties, as there exist highest possible minimum distance between the

codewords.

In 1965 the idea of concatenated codes is presented by Forney [13]. He showed that

by combining an inner convolutional code and outer block code, error probability decreases

exponentially while the block length and decoding complexity increases algebraically. A

further evolution to concatenated codes led to the invention of Turbo codes [14], [15] in

1993 which obtains near Shannon limit error correction performance by utilizing relatively

simple component codes.

Another approach in using channel coding is combing modulation and coding for

digital communication over band-limited channel. Trellis Coded Modulation (TCM) first

introduced by Ungerboek [16] and showed that this combination can produce significant

coding gain compare to conventional methods. Later, different combinations of channel

coding and modulation led to better performance.

14

Table 1 Summary of Coding Theory Landmarks Coding Developer Year

Shannon limit C. Shannon 1948

Hamming Code R. Hamming 1950

Convolutional Code P. Elias 1955

BCH Code R. Bose, D. Chaudhuri, A. Hocquenghem 1960

Reed Solomon Code I. Reed and G. Solomon 1960

Concatenated Code G. D. Forney 1966

Viterbi Algorithm A. Viterbi 1967

BCJR Algorithm L. Bahl, J. Cocke, F. Jelinek, J. Raviv 1974

TCM G. Ungerboeck 1982

Turbo Code C. Berrou and A. Glavieux 1996

1.2 Coded Modulation

Achieving a performance close to Shannon limit by applying coding and

modulation separately needs a low coding rate that leads to a bandwidth expansion. Hence,

the idea of Multilevel Coding (MLC) was proposed in 1977 by Imai et al [17]. This scheme

was one of the pioneers in designing coding and modulation jointly which employed

relatively simple encoding and multistage soft-decision decoding as well as applying

multiphase modulation to improve system performance.

The concept of Trellis Coded Modulation (TCM) was introduced by Ungerboeak

independently in 1982 [16] that applied Ungerboeak’s constellation partitioning and

considered coding and modulation as a single unit. Later on, various forms and

combinations of both structures (MLC and TCM) by employing different modulation

15

schemes and coding methods were investigated that led to several articles during 80s and

90s regarding coded modulation with different structures with improvement in power

efficiency, bandwidth efficiency, or coding gain.

For instance, Bit-Interleaved Coded Modulation (BICM) scheme developed by

Zehavi [18] in 1992 by adopting TCM concept, improved coded modulation performance

over Rayleigh fading channel. BICM was analyzed extensively regarding its capacity and

error bound. Bit-Interleaved Coded Modulation with Iterative Decoding algorithm (BICM-

ID) introduced by Li et al [19] provided performance improvement in AWGN channel.

Other structures including multidimensional TCM, Iterative decoding parallel

TCM which was later called Turbo TCM, Multilevel BICM combined with automatic

repeat request (ARQ) and adaptive coding, and more different structures that can be

advantageous for particular applications. The challenge is designing a scheme that can

perform near channel capacity with reasonable complexity and delay [20].

1.3 Dissertation Objectives

The sphere packing bound, which is a classic lower bound on the error probability

of block codes with particular block length, developed by Shannon [21] is defined in the

following form:

),( AQP snw (2)

Where Pw is the codeword error probability, 00 22 NrENEA bs is an

amplitude corresponding to the symbol signal to noise ratio, θs is the angle if 1/M (M

number of codewords) fraction of the whole n-dimensional Euclidean space solid angle is

surrounded by the n-dimensional cone of half-angle θ, and ),( AQ sn is the probability of

16

falling outside an n-dimensional circular cone of half-angle θ for an n-dimensional

spherical Gaussian random vector with mean (A, 0, . . ., 0) and unit variance in all

dimensions.

Shannon assumed a spherical block code with M=2k=2rn codewords, each having

n code symbols and r information bits per code symbol (rate r) with equal energy nEs per

codeword and an AWGN channel adds noise with variance N0/2 to channel symbols. He

generated an exact expression as well as the asymptotic approximation (for large block

size) for Qn as the following:

dsdesn

nAQ AnsnAsn

n

n

n

0

2/)cos2(1

0 2/

222

212

))(sin1(),( (3)

]cossin),([sin),(1]sin),([~),(

22

2/)cos),(( 2

AAGAGneAGAQ

nAAGA

n (4)

in which

]4coscos)[2/1(),( 22 AAAG (5)

Equation (3) is the exact expression and (4) is the approximation for large n. As n

gets larger the numerator of (4) dominates exponentially which facilitates estimation [22]

[23].

In this formulation, Shannon did not consider any particular modulation block size,

so the code symbols and channel symbols are left to be specified for particular

implementations. In modern communication systems both error correcting codes and

modulation are the main elements of the system. Moreover, based on Shannon’s

assumption in order to get close to the lower bound, which means low error probability,

17

block codes can be arbitrarily large and the computed bound can be approximated relatively

simply, while the code complexity and system delay for the large block sizes, which are

challenging issues for practical cases, were not taken into account.

Study and investigation of the tradeoff between rate, block-length, and error

probability of the best coding structure have been one of the central problems of

information theory and there have been numerous works since early days [24], [25], [26],

[27], [28], [29] and it is still active research topic [30], [31], [32], [33], [34].

In this work, we design a communication system which works for a short

information block sizes and low to mid data rates. We compare the results of this designed

system with the theoretical sphere packing bound. The goal of this design is to approach

the sphere packing lower bound even for codes with a very short block length, and to reduce

the lower bound gap between theory and practical low complexity, short-block codes. In

order to achieve this goal, we utilize coded modulation which combines systematic turbo

trellis channel coding with two layers of modulation including QPSK and OFDM

modulation. Further we improve the performance of the designed system by taking

advantage of higher order modulations as well as modulations with higher dimensionality

including 64QAM and 4D-64QAM. Moreover, we apply puncturing and non-systematic

channel coding to achieve higher rates while keeping the performance curve close to the

theoretical bound.

The structure of this dissertation is as follows: in chapter 2 some background

information regarding channel coding, modulation schemes and coded modulation is

presented. Chapter 3 explains the methodology of the designed system and provides some

18

approaches in improving the performance of the system. In chapter 4 the comprehensive

results of the simulated system are presented and finally we conclude the work and provide

some suggestion for future work in chapter 5.

19

CHAPTER 2: BACKGROUND

As mentioned, coded modulation consists of channel coding and modulation. This

chapter provides the background materials on modulation in general and different types of

used modulation in specific as well as different channel coding structures and general

description of coded modulation.

2.1 Modulation

In communication systems, modulation is a process of transferring message

information into another signal that is physically transmittable. Amplitude, frequency, or

phase of the physical signal may contain the message information [35]. Based on the

message type (continuous or discrete) two categories of modulations are possible; analog

modulation and digital modulation. Digital modulation techniques become increasingly

attractive due to the improvement of digital signal processing devices that makes digital

modulation cost more reasonable. Additionally, digital modulation has some inherent

characteristics, such as its robustness to channel impairments and ease in regenerating the

digital signal, which make it superior for data communication [35], [36].

Choosing a digital modulation scheme depends on several factors such as resulting

bit error rate, bandwidth occupancy, performance in multipath and fading, facility and cost

efficiency in implementation [37]. All of these requirements cannot be satisfied in one

scheme at the same time and depending upon the application and demands, some tradeoffs

need to be considered in choosing one or the other scheme.

The selected modulation performance is generally measured based on its power

efficiency and bandwidth efficiency. Power or energy efficiency indicates the modulation

20

ability in producing reliable message at low power level which is in fact the output bit error

probability regarding the ratio of the signal energy per bit to power spectral density of the

noise (Eb/N0) [38]. Bandwidth efficiency or spectral efficiency describes the modulation

capability in occupying less bandwidth for fixed chunk of data. There is a relationship

between allocated bandwidth and data rate, the higher the data rate, the wider the required

bandwidth. This relationship is described by bandwidth efficiency 𝜂𝐵 as

HzbpsBR

B / (6)

In which R is the data rate in bits per second and B is the occupied bandwidth in Hz.

Modulation schemes with larger bandwidth efficiency provide a greater system capacity

for digital communication [35].

There exists a tradeoff between energy efficiency and bandwidth efficiency in

designing digital communication systems. In some cases, adding error correcting codes to

the message increases bandwidth and causes poor bandwidth efficiency while reducing the

required energy to achieve desired bit error rate. In some other cases applying multi-level

modulation makes the bandwidth efficient in the cost of increasing required energy. There

are some other factors that should be considered in selecting and designing modulation

schemes. The cost and complexity of the receiver should be kept as low as possible. The

modulation needs to provide a reasonable performance in the existence of channel

impairments such as Rayleigh and Rician fading, time jitter, multipath and interference.

2.1.1 PSK and QPSK Modulation

Recently, digital modulation increasingly replaces analog modulation in wireless

communication because of the improvement in communication quality and reduction in

21

manufacturing cost. For example, frequency modulation (FM) that used to be a form of

analog modulation for wireless communication is replaced with Frequency Shift Keying

(FSK) modulation which is a digital scheme of frequency modulation. By taking advantage

of some essential components of analog modulation, FSK is extensively used in radio

transceiver systems [39]. FSK is a nonlinear, constant envelope modulation. Nonlinearity

causes larger bandwidth occupancy while having constant amplitude provides some

advantages, for instance ordinary power amplifier and limiter-discriminator can be used in

receivers, which simplify receiver design [40].

Another form of digital modulation is Phase Shift Keying (PSK) in which the

information is carried by the phase of the signal. The basic structure of PSK is Binary PSK

(BPSK) which uses two opposite phases (0 and π) as a representative of bit 0 and 1. These

opposite phases can have an offset phase which rotates constellation and creates different

decision margin. Phase change of the signal indicates bit transition from 0 to 1 or 1 to 0.

More sophisticated form of BPSK is M-ary PSK or multiple phase shift keying,

among them Quadrature PSK (QPSK) is widely used in different applications. QPSK has

four different phases or four complex points in constellation, in that each phase shift

represents two signal elements or bits of information and data can be transmitted faster

compared to BPSK. Phase offset can be considered for QPSK as well which is π/4 for most

applications. Since the difference between any constellation points is π/2, QPSK has a

robust structure compared to other modulation schemes and is used in various cellular

wireless standards such as GSM, CDMA, and LTE, it is also used in satellite

communication and cable TV applications. Furthermore, it creates same error probability

22

as BPSK while using half a bandwidth which makes it even more appealing for different

applications. Figure 1 and 2 illustrate one structure of QPSK modulator and demodulator.

Figure 1 QPSK Modulator

Figure 2 QPSK Demodulator

The error probability of BPSK and QPSK is

23

0

2NEQP b

B (7)

in which Q(x) is the Q-function defined as [41]:

duuxQx

2exp

21)(

2

(8)

2.1.2 QAM and 4D-QAM Modulation

Quadrature Amplitude Modulation (QAM) is the combination of amplitude

modulation and phase shift keying. QAM consists of two independent amplitude

modulated carriers in quadrature, hence it can be considered as a logical extension of QPSK

which has constant amplitude of the modulated signal and only the phase is changing. Since

the two carriers have the same frequency but different phase by π/2 they can be called as

an In-phase and Quadrature (I & Q) components and the best way for representing them is

in constellation diagram. Constellation points mostly arranged in square grid (other

configurations are possible) with the same space vertically and horizontally. The squared

constellation structure, which is easier to modulate and demodulate, makes some powers

of 2 impractical or atypical for QAM, thus the most common ones are 16-QAM, 64-QAM,

128-QAM, and 256-QAM. Higher order constellations are possible in theory but it may

create some inherent technical problems as for maintaining mean energy at the same level,

constellation points should stay close to each other. QAM structure with higher order

delivers more data but this data is less reliable than lower orders as it creates higher bit

error rate [42]. Simple structures of QAM modulator and demodulator are illustrated in

Figure 3 and 4.

24 The bit error probability for a squared constellation M-QAM where M=2k and even

k over Gaussian Channel with matched filter receiver is

02

2

2

1 21

log3log

)1(2NE

LLQ

LLP b

B (9)

in which Q(x) is a Q-function and 𝐿 = √𝑀 showing the number of amplitude levels in one

dimension [36].

Figure 3 Simple Structure of QAM Modulator [43]

Figure 4 Simple Structure of QAM Demodulator [43]

QAM provides great amount of spectrum efficiency, but as it carries information in

both magnitude and phase it is sensitive to noise. Additive white Gaussian noise is mostly

25

random in amplitude that causes QAM signal more difficult to demodulate. Since QAM

provides maximum data rate in limited bandwidth it is widely used in cable TV, Wi-Fi

wireless LANs, satellite, and cellular telephone system.

One major approach in improving the performance of the systems is increasing the

spectral efficiency. In QAM modulation, this is done by increasing the number of signaling

level especially in rectangular structure such as 64-QAM and 512-QAM. However, this

approach requires more signal power which is not desirable in most designs. Another way

of increasing spectral efficiency while maintaining signal power to a reasonable level is

increasing constellation dimensionality. Four-Dimensional Quadrature Amplitude

Modulation (4D-QAM), is one of the widely used method that takes advantage of two

separate QAM constellations and considers them as a single space in which each point

representing a vector with 4 elements (2 complex values) and assign bits to each point of

the 4-D space. Bit assignment is generally done considering maximum distance and there

exist several criteria in mapping bits to the constellation points. Higher order dimensions

are also used in different applications.

The basic idea of a multi-dimensional constellation combined with trellis coding is

first presented in [44], [45] and showed that using higher dimension constellations creates

potential advantage compared to 2D scheme, such as more tolerance regarding phase

ambiguity and better tradeoff between coding gain and complexity. Furthermore, four-

dimensional constellations are widely used in optical communication systems where two

orthogonal polarizations are used for each 2D constellation over its in-phase and quadrature

(IQ) component [46], [47], [48], [49]. This approach creates significant improvement in

26

optical communication in providing both spectral and energy efficiency [50], [51], [52],

[53].

2.1.3 OFDM Modulation

Frequency Division Multiplexing (FDM) uses multiple subcarriers over a single

channel and divides the whole data among various subcarriers. Data can be from different

information sources and it can be distributed unevenly on each sub-channel. So, various

modulation/demodulation schemes can be used based on the particular data type, leading

to pertinent structure with improved performance. Moreover, using multiple carriers

provides better protection regarding narrowband frequency interference as this interference

just affect one of the sub-channels and the others will not be affected. One drawback of

FDM is the required guard band between subcarriers in order to avoid interfering spectrums

which decreases the system effective rate compared to single carrier systems. If the FDM

system uses orthogonal subcarriers, higher spectral efficiency will be achieved since the

guard bands are no longer necessary. This structure called Orthogonal Frequency Division

Multiplexing (OFDM) which is widely used in many modern communication systems to

provide higher data rates [54].

OFDM is a special case of FDM in which subcarriers are orthogonal. Two

deterministic signals are called orthogonal if their dot product is zero. From the stochastic

processes viewpoint, two random processes are orthogonal when they are uncorrelated.

This orthogonality allows the subcarriers’ spectra to overlap, which increases the spectral

efficiency, while recovering individual subcarriers is still possible due to the nature of

orthogonality. In OFDM modulation, the data of a high rate stream is split into a several

27

parallel lower rate streams that are transmitted simultaneously over a number of orthogonal

sub-channels. Mapping input streams into an orthogonal subcarrier is done by taking

advantage of Fourier Transform which provides both orthogonal and uncorrelated nature

which makes OFDM a robust structure so that even overlapping spectrum cannot cause

interference. The parallel streams with lower rates have increased symbol duration which

leads to a decrease in the amount of time dispersion. Furthermore, the structure of OFDM

causes less intersymbol interference specially for the cases with guard intervals, so the

system needs a less complicated equalizer [55]. Figure 5 illustrated a basic structure of

OFDM.

Figure 5 General Structure of OFDM [56]

28 OFDM is one of the major choices in wireless communication systems with higher

data rates which is employed in 3GPP Long Term Evolution Advanced (LTE-A) and

Wireless Fidelity (Wi-Fi) standards [57], [58], [59].

2.2 Channel Coding

In order to improve the quality of communications and reduce error probability, a

number of error reduction techniques are being used. One of the most effective ways of

decreasing error in the receiver is by utilizing channel coding. Channel coding is a method

used in digital communication systems to guarantee transmitted data is received with

negligible or no errors. This is done by incorporating additional binary digits into the

transmitted data such that in the receiver end occurred errors are corrected by taking

advantage of extra inserted digits in transmitter. Otherwise, the recipient will be required

to ask for retransmission [39].

There are two methods of error correction. The simple and easy to implement

method known as Backward Error Correction (BEC) which only needs to detect errors and

requests retransmission; hence it requires duplex communications and causes unwanted

delay [60]. The more complicated method is Forward Error Correction (FEC) which not

only detects errors but also corrects certain number of errors in the receiver and does not

require two-way communications. FEC is used in almost every wireless communications

system and improves performance and energy efficiency of the system. In the rest of this

work we just deal with FEC and channel coding refers to FEC [61].

There exist numerous channel coding techniques but all can be categorized into 3

major groups; Block Codes, Convolutional Codes and Concatenated Codes.

29 Block Codes are codes with finite length code words and consist of k data bits

following by (n-k) parity bits (where n>k), so the code generates n bits long output code.

The encoder multiplies the message vector with length k by generator matrix which is a k

by n matrix having k linearly independent rows of n bits code words. Implementation of

block codes is easy regarding to its algebraic structure but they provide limited error

correction capabilities [62]. Some examples of block codes are Reed-Solomon codes [12],

Hamming codes [3], Golay codes [63], and Reed-Muller Codes [64].

Convolutional Codes [4] unlike block codes do not break data sequence into fixed-

size blocks, instead the data bits are spread along the sequence. In fact, the data bits

convolve with the code bits that are generated based on the shift register structure. This

makes the convolutional codes to have memory which allow them to operate well for small

code length. Convolutional codes are more complicated to implement and more powerful

in error correcting than block codes. Hence, the decoding algorithm is more complex

especially for long codes. There are different decoding algorithms, and the most famous

and successful is the Viterbi Algorithm (VA). VA first presented by Andrew J. Viterbi in

1967 [9] as a method in decoding convolutional codes and then improved by him couple

of years later [65]. VA in a maximum likelihood decoder performs dynamically to

minimize the error probability. It compares the likelihood of a set of possible cases that can

happen to decide which has the highest probability of occurrence [66].

VA has three major parts:

1- Branch metric calculation which calculates distance between the input

symbol and possible symbols.

30 2- Path metric calculation which calculates a metric to a path with the

minimum metric (known as survivor path) ending in every encoder state.

3- Traceback which is required for hardware implementation as the full

information of survivor path is not kept and just one bit for every choice of

path is stored [67].

Applying these three steps leads to choosing the best path among all the paths in

trellis that has the minimum error probability.

Concatenated Code is the idea of combining different simple coding structure in

order to achieve higher error correction capability while avoiding complexity in decoding

algorithm. The idea of concatenated codes was first presented by Forney [13] who showed

applying concatenated codes can decrease error probability exponentially while the

decoding complexity increases polynomially with the code block length. Different

combination of different coding structures is presented over the years but the most famous

and successful structure is Turbo Code that produces near Shannon limit error correction

performance and will be discussed the following subsection.

2.2.1 Turbo Coding

Turbo code is a family of concatenated codes and introduced by Berrou et al. [14]

which obtain near Shannon limit error correction performance by utilizing relatively simple

component codes [68]. The data stream passes through two encoders with an interleaver

prior to the second encoder that results the two output sequences to be roughly statistically

independent. Encoders are usually half-rate Recursive Systematic Convolutional (RSC)

encoders which produce systematic output stream consists of original information stream

31

followed by parity bits. In order to produce a wide range of coding rates different

puncturing structure on parity bits are applied. The RSC decoders should be able to process

soft input and generate soft output for the purpose of applying likelihood ratio and iterative

algorithm in the decoding process. In other word, the decoding process for turbo codes is

soft input/soft output iterative algorithm which feeds soft output from one decoder to the

soft input of the other decoder along with the actual channel input and iterates so as to

decode more bits correctly and produce lower Bit Error Rate (BER) [36], [20].

In fact, turbo code is an improved version of concatenated encoding structure

following by an appropriate iterative decoding algorithm that makes it to be considered as

a separate category of channel coding schemes [36]. This new category of channel coding

can apply either convolutional codes or block codes in the component codes and various

methods of decoding that are described briefly in the following sections.

2.2.2 Turbo Encoding

The general structure of turbo encoder consists of two or more parallel component

codes, which are not necessarily identical, with large interleavers in between that produce

different versions of the same information sequence [68], [69] as shown in Figure 6. The

conventional structure of turbo code employs convolutional code as the component

encoder, but it is possible to apply other structures such as block code and achieve desirable

performance. However, we concentrate mainly on turbo encoder using two convolutional

encoders. The outputs from the component codes are often punctured and multiplexed to

be sent via the channel.

32

Figure 6 Turbo Code Encoder

The essential component that caused the dramatic improvement in turbo codes

performance is the exploitation of interleaver. The interleaver simply scrambles the input

sequence in a pseudo-random manner and its choice is a critical point in designing Turbo

codes. Interleaving the information sequence at the input of encoder leads to a quite

different output even if the encoders are identical, that provides more effective decoding

procedure. There are various interleaving methods, such as row-column, helical, odd-even,

and pseudo-random, each of which can produce desired performance based on the code

design [13].

33

2.2.3 Turbo Decoding

The common structure of turbo decoding is iterative based structure, however some

non-iterative decoders have been developed that produce acceptable result. In this

dissertation, the concept of iterative decoding structure and some widely used algorithm

are described.

Figure 7 illustrates the general structure of iterative based turbo decoder. The main

parts are component decoders with interleavers and deinterleavers in between

corresponding to the encoder structure. There are two types of inputs to each decoder:

channel output bits that are encoded in the transmitter side and the decoded bits of the other

component decoders which are called a-priori information, moreover for systematic coding

structure, systematic data is also used in the decoding part. The component decoders have

to employ these inputs and generate soft output. This means that the decoder not only needs

to produce the bit stream of the decoded sequence but also the probability of each decoded

bit in the stream which is mostly represented by Log Likelihood Ratio (LLR) whose

polarity determines the bit sign and amplitude expresses the probability. LLR will be

discussed in later chapters.

34

Figure 7 Turbo Code Decoder [70]

There are two different algorithms used as component code for turbo decoder: Soft-

Output Viterbi Algorithm (SOVA) and Maximum A-Posteriori (MAP) algorithm. SOVA

is the modified version of classical Viterbi algorithm that makes it appropriate for turbo

decoding. These modifications include considering a-priori information in choosing the

maximum likelihood path through the trellis and producing soft output based on LLR for

decoded bits. MAP algorithm was proposed by Bahl et al. [71] in 1974 as an estimate for

the a-posteriori probabilities of states as well as transitions in a Markov source. This

algorithm, which also known as BCJR algorithm, is exploited for both convolutional and

block codes decoding. The performance of MAP and Viterbi algorithm is almost the same

in most convolutional decoders. However, MAP algorithm was not widely used before

turbo codes discovery based on its complexity in examining all the possible paths through

the trellis. After discovery of turbo code and its demand for soft output, MAP algorithm

attracted more attention based on its capability in producing estimated bit stream as well

35

as the probability of each decoded bit. Since then there has been numerous works on

decreasing MAP complexity to make it more feasible for turbo decoding.

As mentioned, turbo decoder has an iterative mechanism which is explained for

two concatenated code as follow, although this mechanism can be generalized to the turbo

code with more component codes. For the first iteration, the first component decoder

employs only channel output as its input and produce soft output. The second component

decoder use the soft output of the first decoder as well as the channel output and produce

the second soft output which leads the algorithm to get ready for the second iteration. In

the second iteration, the first decoder applies both channel output and soft output of the

second decoder as additional information to generate more accurate soft output that is used

by the second decoder. This cycle is repeated, until the achievement of improved

performance. However, for complexity reason limited numbers of iteration are legitimate.

It is worth to mention that the proper deployment of interleavers and deinterleavers

before and after component decoders is essential to provide desired output. Also, due to

the iterative nature of the decoder, at each decoding step the same information should not

be applied more than once. Hence, the concept of extrinsic and intrinsic information is

applied by Berrou et al. in their original paper. The intrinsic information is the a-priori

information resulting from decoding operation just on the channel sequence. It is in contrast

with extrinsic information which is the output information of the decoder operating on both

channel sequence and a-priori information excluding the channel systematic bit and a-priori

information. A-posteriori information is the information provided by the decoder

employing all available sources of information [20].

36 The advent of turbo codes sparked a considerable amount of research which leads

to enhanced versions of the original scheme. There have been modifications and

refinements to each component of the turbo structure that provides significant improvement

[72]. The interleaver design investigation in different works shows that applying an

appropriate permutation pattern can provide substantial improvement in the turbo

performance. Turbo codes with 16-state, 8-state, and event 4-state have been examined and

good performance has been achieved. The original turbo code applies single bit per time

step while in some other studies multi-binary convolutional codes are observed that process

multiple bits at the same time. Among these structures those that process two bits

simultaneously, called duo-binary or double-binary turbo codes, provide a desirable

performance in some applications and have been employed in several standards. Moreover,

turbo codes that are punctured to higher rates yield more robust characteristic, leading to

more experiment on puncturing structures [73].

These improvements on turbo structure along with the advancements in electronic

devices make turbo codes the great choice for FEC. Turbo codes have been incorporated

into different standards in wireless communications, satellite communications, and

wireless networking as well as other applications such as digital video broadcasting,

telemetry and deep space communications.

2.3 Coded Modulation

In communications systems, channel impairment and bandwidth restrictions highly

deteriorate system performance so that conventional demodulators cannot recover the

transmitted signal. Hence, in order to achieve reliable system performance

37

modulation/coding schemes are recommended that can provide enhancement in system

power as well as bandwidth efficiency [74]. The idea of concatenating modulation and

coding and considering them as a single entity has been presented in different papers such

as [75], which is one of the pioneers in this field. Since then, variety of joint

implementations of coding and modulation has been proposed that are discussed in the

following subsections.

2.3.1 Trellis Coded Modulation

Trellis-Coded Modulation (TCM) was presented for the first time by Ungerboeck

[16] in 1982. The main idea of TCM is incorporating additional bit as a parity bit to the

symbol representation and increase number of constellation points while keeping the

effective throughput unchanged. As a result, there is no increase in the signal bandwidth

but positive gain in coding. TCM combines redundant non-binary modulation with a finite

state FEC, non-binary modulation assigns certain permissible constellation to existing

symbols and FEC controls coded signal sequences selection. In the receiver, the decoding

structure is trellis-based soft-decision maximum likelihood which takes the noisy input

signal uses the defined constellation and minimum Euclidean distance to estimate the most

likely transmitted sequence. As this scheme applies the state diagram similar to the trellis

for binary convolutional code the term ‘trellis’ is used, however TCM is a non-binary

scheme [20].

2.3.2 Turbo Trellis Coded Modulation

As we discussed earlier Turbo coding is a technique that applies iterative decoding

algorithm to provide near channel capacity performance. On the other hand, Trellis coded

38

modulation introduces a coding technique with bandwidth efficiency. Hence, Turbo Trellis

Coded Modulation (TTCM) is a natural extension of Turbo coding which improves

bandwidth efficiency. The goal of TTCM is to maximize the minimum Euclidean distance

between codewords and to keep the error coefficient factors as small as possible compared

to standard binary turbo code. Hence, TTCM eliminates the disadvantage of rate loss as a

result of parallel concatenation.

The structure of a simple TTCM consists of two identical TCM encoder parallel

concatenated with a symbol interleaver which is shown in Figure 8. The first Trellis

encoder works on the original bit stream while the stream for the second trellis block is the

interleaved version of the original bit stream. Then each encoded sequence goes to the

mapper in which complex symbols are assigned to the bit sequence. De-interleaver reverse

the action of the interleaver and finally selector combines the output of each of the parallel

path in order to send them through a single channel. In order to achieve a higher bandwidth

efficiency, puncturing at symbol level is often employed on each component code.

Figure 8 TTCM Encoder [20] (Reprint by permission)

39 In symbol-based non-binary TTCM the information of the systematic bits (original

data bits) and parity bits (encoded bits) are transmitted with the same non-binary symbol

together. So, systematic components and extrinsic information are inseparable and channel

noise affect both while transmitting. Hence, there are two components, the non-binary

symbol a-priori component (A/a) and systematic as well as the extrinsic components

together ([E&S]/[e&s]). Only the second component passes through each decoder to the

next decoder and the a-priori information is removed at the output of each decoder. The

structure of a TTCM decoder is depicted in Figure 8. The received symbol enters the

‘Metric’ block which generates the symbol probabilities for likelihood measurement that a

certain symbol has been sent. The selector switch prior to ‘symbol by symbol MAP’

decoder choose the current symbol reliability based on the Metric output and in case there

is no puncturing. Each decoder block has two inputs, the probability of systematic and

parity bits ([P&S]/[p&s]) which are inseparable and provided by Metric as well as the a-

priori information (A/a) comes from the other component decoder. Then it generates a-

posteriori information (A+[E&S]/a+[e&s]) as an output. In the next step, the a-priori

information is subtracted from a-posteriori to prevent the usage of same information more

than once which makes the component decoders’ corresponding information independent

and make iteration gains achievable. This result goes to interleaver/deinterleaver block to

generate A/a as an input to the other decoder.

40

Figure 9 TTCM Decoder [20] (Reprint by permission)

Decoding process iterates to improve the set of symbol reliability. Finally, the a-

posteriori information of the second decoder passes through de-interleaver to extract

information bits and hard decision select the specific symbol that has the maximum a-

posteriori probability [20].

2.3.3 Interleaver

Interleaver plays an important role in the construction of a reasonable Turbo code.

However, there is no systematic method in choosing an effective interleaver that creates

the best result. The classical use of interleavers is to randomize error location for

applications with burst error patterns such as bursty channels in wireless communication.

Interleavers are also used in concatenated coding in which the outer stage decoder produces

41

burst error pattern as a result of Viterbi decoder. Using interleaver capability in spreading

error bursts represents this error as an isolated error for inner stage decoder.

The application of interleavers in Turbo coding introduce another aspect of them

which is reducing the correlation between encoded bits for original bits and its interleaved

version. There are some parameters that lead to a desirable interleaver such as the block

size, the larger the block size the more improved performance for interleaver. Another

parameter is its randomization mapping which should be in a way to break low-weight

sequence and increase free distance to provide improvement in asymptotic performance.

Interleaver spread is its other requirement that ensures the close bits in the original

sequence will be further apart in the interleaved version.

Interleaver types can be considered in three major categories. The fist category is

Standard Interleavers that are mainly used in Turbo coding such as Rectangular

interleaver, Berrou-Glavieux interleaver (the structure that is introduced and used in the

main Turbo code paper [14]), and Helical interleaver. The second category is Reference

Interleavers which are primarily designed for gaining some insight to the problem and

some of these designs are Uniform interleaver, Flat interleaver, and Barrel-Shifting

interleaver. The third category is the collection of Optimized Interleavers that are designed

for specific applications and some the examples are S-random interleaver, Annealing

interleaver, and Odd-Even interleaver [76], [77].

Interleaver is a critical component for the performance of turbo codes. There are

numbers of interleavers [76], [78], [79], [80], [81], [82], [83], [84], [85] for turbo codes

each of which are designed based on different criteria. Among them interleavers with

42

algebraic construction are more appealing for their analytical design and practical

implementation [86]. For instance, Quadratic Permutation Polynomial (QPP) [87] provides

excellent performance for turbo codes and have been used in 3rd Generation Partnership

Project Long Term Evolution (3GPP LTE) [88], [89], [90]. In our model, we used QPP

interleaver structure partially for some of the frame sizes.

This section provides some background information about modulation, coding, and

coded modulation. As it is mentioned, different combination of coding and modulation

may lead to a novel idea of coded modulation that can be proposed as a new methodology

which will be discussed in the following section.

43

CHAPTER 3: METHODOLOGY AND SYSTEM MODEL

In this chapter, the general structure of the designed system in presented. Like every

other communication system, this design consists of transmitter, channel, and receiver.

Transmitter acquires several blocks including channel coding block and different layers of

modulations. Channel is a typical AWGN channel that adds white Gaussian noise to the

transmitter output signal. Receiver has the same blocks as transmitter in reverse in order to

do the reverse action of modulator and coder to recover the source data. Following

subsections provide the comprehensive design of the system and its consideration along

with the methods to enhance and improve the performance of the system.

3.1 Introduction

In order to improve the performance of communication systems two aspects need

to be considered, energy efficiency and spectral efficiency. Energy efficiency or power

efficiency depends on the amount of power that a system uses which is a critical issue for

wireless and cellular communications. It also shows the system tolerance against the

environment noise. Spectral efficiency or bandwidth efficiency relates to the amount of

bandwidth that a system allocates or the maximum rate of the information while

communicating through a limited bandwidth. There has been always a tradeoff in providing

efficiency in both energy and bandwidth.

One common way of satisfying spectral efficiency is applying appropriate

modulation scheme. Orthogonal Frequency Division Multiplexing (OFDM) is one of the

widely used modulation forms that enhances spectral efficiency by exploiting numbers of

orthogonal narrowband sub-channel instead of a single wideband channel. It multiplexes

44

different data stream on various sub-channels to form the modulated signal. OFDM enables

us to adjust power over all subcarriers and assign higher data rates to the best subcarriers

to generate maximum system throughput. Another way of improving spectral efficiency is

using M-ary modulation scheme. M-ary Quadrature Amplitude Modulation (MQAM)

assigns M complex constellation points to data stream in order to provide spectral

efficiency, but it degrades energy efficiency. Utilizing higher order constellation instead of

2D constellation is another way of improving spectral efficiency. Multi-dimensional

constellation such as four-dimensional M-ary QAM (4D-MQAM) that applies two sets of

complex constellations and consider them as a single 4D vector is an effective method in

increasing overall rate of the system to allocate less bandwidth while maintaining the same

level of energy efficiency.

Energy efficiency can be improved by applying error correcting codes that produces

lower error probability at the receiver for a fixed signal to noise ratio (SNR). Moreover,

taking advantage of appropriate channel coding technique and combining it with proper

modulation structure can provide a unique coded modulation structure that improves

system performance by satisfying both spectral and energy efficiency. Trellis Coded

Modulation (TCM) [16] is one of the early proposed methods in combining Trellis coding

and modulation and considering them as single entity that provides a great improvement in

system performance. Following by the invention of the Turbo Codes [14] the idea of Turbo

TCM (TTCM) [91], [92] is presented which is a natural extension of turbo coding which

improves bandwidth efficiency. The goal of TTCM is to maximize the minimum Euclidean

distance between codewords and to keep the error coefficient factors as small as possible

45

compared to standard binary turbo code. Hence, TTCM eliminates the disadvantage of rate

loss as a result of parallel concatenation.

Since Shannon’s landmark paper 1948 [1], there have been numerous extensive

studies in designing and developing coding structures, modulation methods and

combination of them in order to reach Shannon limit. Substantial improvement has been

achieved and numerous structures have been developed but there is still a place for research

addressing performance versus complexity.

In this dissertation, we are applying several different layers of modulation

combined with specific type of channel coding in order to improve the overall performance

of the system and getting closer to Shannon limit. The comprehensive detail of the designed

system is discussed in the following sections.

3.2 System Model

The general structure of the proposed system consists of a systematic parallel turbo

code as an error correcting code and two layers of modulation including QPSK modulation

and OFMD, which are described in the following subsections.

3.2.1 Channel Coding

The designed systematic turbo coder uses a 16-state duobinary trellis. The trellis

table is given in Table 2 and described comprehensively in [93], [94], [95]. Each branch of

the trellis is mapped to three sub-symbols each of which consists of three bits. The bit

assignment for each state creates simplex structure that fosters maximum distance to

provide a lower decoding error.

46

Table 2 State Table for 16 State Trellis Current State

Next State Input 00 Input 01 Input 10 Input 11

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2

2 6 10 16 3 12 15 11 4 9 7 14 13 8 5 1

4 7 1 8 12 3 5 14 2 13 6 11 9 16 15 10

10 12 2 15 7 6 16 13 1 14 3 9 11 5 8 4

The encoder is a parallel systematic turbo encoder that concatenates the result of

one encoder with the interleaved version of the same encoder by adding the source data for

systematic coding. Considering the aforementioned bit assignment and systematic bits, the

total rate of the designed code is 1/10. The code implementation also uses tail-biting [96]

to determine the starting state of a codeword. Tail-biting is a technique of trellis termination

which provides the same amount of error protection for all information digits for maximum

likelihood decoder at the cost of more complex decoding algorithm. The structure of the

encoder is illustrated in Figure 10.

47

Figure 10 Encoder Block Diagram

The decoder in this design is a floating-point implementation of the BCJR

algorithm [71], in order to find the true limits of system performance, without regard to

finite precision or log-map approximations. BCJR, which is named after its inventors is an

algorithm for maximum a-posteriori probability or forward-backward algorithm for

decoding error correcting codes. It contains the following steps:

• Compute forward probability

• Compute backward probability

• Compute smoothed probability based on other information (i.e. noise

variance for AWGN)

• Generate the joint probability P

)().,'().'(),,'( 1 ssssayssP kkk (10)

48 P is the joint probability of receiving N-bit sequence y and being in state s’ at time

k-1 and in state s at current time k.

'

11 ),'()'()(),'()'(s

kkkkk sssasayspsa (11)

skkkkk sssssyps ),'().()'()|()( 1 (12)

)'|,(),'( ssypss kk (13)

The initial values for and are as follow:

0,0)(,1)0(0,0)(,1)0( 00

sforsandsforsand

kk

In this design, we use a likelihood ratio table (LR table) as so we can find and

based on (2) and (3) as forward and backward probability. Having all required

probabilities, we are able to calculate the joint probability ),,'( yssP . As there are two series

of symbols; unpermuted and permuted, in the encoder, here in decoder there are also two

series of calculation for both unpermuted and permuted symbols.

The decoder iterates until the result of these two series converge to the same data

decision for each symbol, and that sequence is output as the recovered symbol sequence.

For each decoding cycle the maximum number of iterations is set, and if the codeword fails

to converge, a codeword error is declared. Using our simulation for a range of SNR values,

we can plot Eb/N0 vs. BER curves which will be discussed in the result section. The general

structure of the decoding process is depicted in Figure 11.

49

Figure 11 Decoder Block Diagram

3.2.2 Modulation

As mentioned earlier, the designed system takes advantage of two layers of

modulation. The output sequence of the encoder block first passes through QPSK

modulation (for both systematic and parity symbols). The result of QPSK modulation are

then OFDM modulated with N channels (N=16 for illustration purposes) having a balanced

number of systematic and parity symbols at each channel. The energy for systematic and

parity symbols is adjusted in a way that produces equal energy in the parity and systematic

bits for each codeword. This was experimentally determined to have the best BER

performance.

The complex baseband OFDM signal with K sub-channels is described as:

s

K

k

TtT

Kkj

k TteXK

tug

u

01)(1

0

)()

21(2

(14)

50 In which

fWK

is the number of sub-channels, W is the bandwidth and Δf is the

frequency separation of adjacent subcarriers. Ts is OFDM symbol period with cyclic prefix,

Tu is OFDM symbol period without cyclic prefix, Tg is the length of cyclic prefix, and Xk

is the complex modulated data symbol in kth sub-channel, in our model Xk is chosen from

the set of QPSK constellation points and can be represented as:

kXjkk eXX

(15)

For OFDM modulation without cyclic prefix (Tg=0) and considering

fTTT su 1 and kffKk

21 the OFDM signal is simplified to:

s

K

k

tfjk TteX

Ktu k

01)(1

0

2 (16)

In our model Xk consists of both parity symbols Pk and systematic symbols Sk and

can be shown as:

kkk SPX (17)

kPjkk ePP

(18)

kSjkk eSS

(19)

These symbols are distributed pseudo randomly, but with symmetric statistics

among all sub-channels, meaning that each sub-channel has the same ratio of parity and

systematic symbols. Since the code rate of the channel coding is 1/10, the number of parity

symbols is 9 times the number of systematic symbols and this trend is maintained in each

sub-channel as well.

51 Furthermore, in order to get desirable likelihood ratio at the demodulator to provide

effective soft decoding, the relative energy of the parity symbols and systematic symbols

at each sub-channel was investigated. Experimentally, it was determined that superior BER

performance is achieved when the total energy of the parity vs. systematic symbols is equal.

Hence, a normalization factor is assigned to symbols magnitude based on the following

relation.

m

jjk

n

iiksp SPEE

1

2

1

2 (20)

Based on the code rate and symmetric distribution of parity and systematic symbols

we have n=9m and as the symbols are QPSK modulated ],1[,, njiPP jkik the above

energy relation is simplified to:

kkkk

m

jjk

m

iik SPSmPmSP

39 22

1

29

1

2 (21)

Thus, considering a signal magnitude for systematic symbols 3 times that for parity

symbols creates the desired likelihood ratio characteristic that provides exceptional soft

decision decoding, and generates lower error rates for a fixed level of noise.

Using the designed coder for a very short block length and combining it with the

specified modulators we aim to improve system performance by reducing error probability

for an extremely noisy channel. Implementing the system, we manage to generate an

improved version of Eb/N0 vs. BER curves for short block length as well as approach the

sphere packing bound curves that will be discussed in the result section.

52

3.2.3 Four-Dimensional M-Ary QAM

In order to increase the overall rate of the designed system, we applied a novel 4D-

QAM modulation for parity symbols, while systematic bits are still QPSK modulated. This

rate 1/5 approach (measured is bits per channel use [97]) achieves performance nearly

identical to the original rate 1/10 system.

In this work, our main idea of applying 4D constellation is assuming two sets of 2D

complex signal constellations and combining them as a single four-dimensional vector.

i

r

i

r

cc

C

cc

C

2

22

1

11

(22)

i

r

i

r

cccc

CC

C

2

2

1

1

2

1 (23)

For this design two sets of 64QAM constellation are considered. Hence, the

resulting 4D vector contains (26)2=4096 possible elements, including all possible

combinations of points. Among these 4096 4D vectors we choose 64 vectors that create

maximum distance relative to each other. Finding these 4D vectors with maximum

distance, and mapping them to particular branches of the 16-state duobinary trellis is a

critical part of this design, which was performed using exhaustive search techniques.

Moreover, modulating the 4D symbols using OFDM is also discussed in the following

subsections.

53

3.2.4 Vector Selection

As mentioned, selection of 64 4D vectors among 4096 possible 4D vectors to

provide the best maximum distance regarding states in the trellis is very crucial. In this

design, in order to provide a better distance, 3 sets of coordinates at each of the 2D

constellations are considered. These points are marked in Figure 12 and color coded.

• The first set is 4 points at the far end of each constellation and marked by

red squares in Figure 12. To create a 4D vector any combination of these 4

points is possible.

• The second set contains 8 points in far-mid of each constellation and marked

by green squares in Figure 12. To form a 4D vector these coordinates can

just combine by the coordinates from this category.

• Last set, which is marked by purple squares, has 4 points in middle of each

constellation and to form a proper 4D vector these points can just combine

with a point from the first category.

54

Figure 12 Constellation Representation

The alphabet for MQAM modulation with even number of bits is as follow:

2,1)12()12(

:2

Mmwheremjm

evenbandMforAlphabetMQAM

MQAM

b

(24)

For this design, we just assume m=2, 4 and we have the following set:

33,73,37,77 jjjjSelected (25)

Combining these 2D vectors to creates a 4D vector using the above constraints, we

have the following set of 4D vectors:

55

7733337737737373733737377777

4

jjjjjjjjjjjjjj

C D (26)

The matrix of 4D vectors (17) contains all the possible choices for the final set, but

not all these vectors are in the final selected vectors.

Once we have chosen a subset of possible symbols, we next assign them to

appropriate branches of the trellis, in order to maximize the Euclidean distance between

high probability parallel branches. We use the following rules.

1. Outgoing branches from each state in the trellis should be at maximum

relative distance.

2. Incoming branches to each state of the trellis should be at maximum relative

distance.

3. The four “center” branches of each of the four possible three-hop paths

which terminate in the starting state, should be at maximum relative

distance.

Within these three rules, we perform an exhaustive search to find a trellis mapping

which has the best possible distance between all sets of parallel paths beginning and

terminating in the same state. The result is a set of 64 unique 4D-QAM symbols mapped

uniquely to the 64 branches in the trellis.

56

3.2.5 Modem Scheme

The structure of the modem, particularly the demodulator design, is very important

in utilizing the 4D-QAM model effectively. In the modulator, all the encoded parity

symbols are mapped to the corresponding 4D vectors based on the mapping described in

the previous section (systematic symbols are modulated differently using QPSK

modulation). At the receiver, the demodulator uses the same mapping pattern, implemented

as a matrix operation, in order to form likelihood ratios which are then used as a smoothed

probability in the BCJR decoding algorithm. This scheme creates an efficient data recovery

method that reduces complexity and generates low decoding error. The resulting system

structure achieves bit error performance very close to the sphere packing bound for rate

limited and block-size limited codewords. This will be further discussed in the following

section.

3.3 System Enhancement and Performance Improvement

In every communication system, after designing the main parts, enhancement and

optimization is the major concern. In our model, the aim of system improvement is

basically increasing rate of the system or in other word reducing bandwidth occupancy of

the system. There are several techniques that we can apply such as puncturing and changing

of the modulation format in order to reach to the desired rate while keeping the energy

efficiency as low as possible.

3.3.1 Puncturing

As mentioned earlier, channel coding adds some redundant bits to the data stream

in order to provide forward error correction, and a larger number of redundancy bits leads

57

to a stronger error correction against channel noise. However, these redundant bits make

transmitted data longer which occupies wider bandwidth [98]. One method in reducing

bandwidth occupancy is to use puncturing.

Puncturing is the action of deleting some of the encoded bits which leads to an

increase in code rate. Hence, it is widely used in rate adjustment in coding systems.

Punctured bits are typically determined by a puncturing pattern and its choice has an impact

on the error correcting performance. Two puncturing patterns can have the same rate but

produce different error correcting performance [99]. There exist several different

puncturing patterns and each can be helpful for different codes. For example, a

conventional puncturing algorithm is based on uniform puncturing of all bits which is

appropriate for convolutional code but cannot be optimal for turbo codes. Also, for

systematic codes there are some limitations such as preventing puncturing of systematic

bits or preventing puncturing of termination bits that should be considered when doing

puncturing [100], while non-systematic code does not have these restrictions. Typically,

there is a known specific distance between punctured bits in a puncturing pattern which is

referred to as periodic puncturing and its pattern can be denoted by a binary puncturing

matrix. A puncturing pattern can also be non-periodic which can be achieved by applying

a varying puncturing pattern throughout the bit stream. Results of [99] and [101] separately

show that a non-periodic approach produces better performance, although assigning a large

period for the periodic puncturing can produce relatively close results to the non-periodic

pattern.

58 In this design, in order to achieve a higher coding rate, one approach is applying

puncturing on parity at symbol level. Based on the explained design in pervious sections,

we could achieve rate 1/5 by applying 4D-QAM modulation for parity bits and QPSK

modulation for systematic bits and using OFDM on top of those. To increase the coding

rate by puncturing, we apply symbol puncturing by deleting 1 symbol out of each 4

symbols and insert zero at the demodulator instead of omitted symbols. This puncturing

can provide rate 1/4 which improves bandwidth efficiency of the system while the

performance degradation is negligible and the capacity curve is still have a reasonable gap

with sphere packing bound.

There exist different patterns for puncturing 1 symbol out of 4 symbols and we tried

all the possible patterns and among them the pattern presented in Figure 13 generates the

best error rate curves. It should be considered that since parity symbols are complex

symbols in order to puncture them both real and imaginary portion of the symbols should

be omitted.

59

Figure 13 Puncturing Pattern

Since this puncturing provides desirable system improvement, we continued by

applying more puncturing to get a higher rate. For the next step, puncturing 1 symbol out

of 3 symbols applied which generates rate 3/11. For this puncturing, the pattern does not

make much difference, as we basically do not have many possible patterns. The result for

rate 3/11 by applying puncturing is also promising and generates capacity curves still close

to the theory. However, continuing puncturing to the next level which is deleting 1 symbol

out of 2 symbols which creates rate 1/3, does not generate desirable result as it leads to

over-puncturing that makes it hard for the receiver to recover data for very low signal

energy. Another rate between 3/11 and 1/3 is rate 3/10 that can be achieved by puncturing

60

5 symbols out of 12. This structure also leads to over-puncturing and does not create the

desirable result. Hence, we should apply another method than puncturing to achieve rate

1/3.

3.3.2 Modulation Alternative

As mentioned, our ultimate goal in this design is achieving rate 1/3 while

maintaining system performance as good as lower rates. In previous section, we showed

that puncturing our system with rate 1/5 which exploits 4D-QAM for parity bits and QPSK

for systematic bits, to get rate 1/3 leads to over-puncturing and does not generate the

desirable result.

Another approach in increasing the overall rate of the system, is applying different

modulation structure. As discussed earlier, systematic bits acquire QPSK modulation

before OFMD. To provide a higher rate, we can exploit higher order modulation for

systematic bits. Thus, we applied 64QAM that decreases the number of required symbols

for systematic bits to 3 times and creates the overall rate to 1/3. The result of this design

generates error curves very close to the theory especially for larger block sizes that satisfies

our expectations. As we changed the modulation for systematic bits there are some

considerations regarding energy assignment for systematic symbols at every OFDM sub-

channels as well as the calculation of the total energy of the transmitter output signal.

Considering these and applying experimental method to assign he best energy for

systematic symbols we manage to get the desirable result very close to theoretical limits.

61

3.3.3 Coding Consideration

As discussed in previous sections, the applied coding structure for this design is

systematic Trellis Turbo coding. Systematic codes take advantage of the original data bits

to provide a better decoding structure and generate a lower decoding error. This is to the

cost of lower rate and occupying a larger bandwidth.

In our designed system, another way of increasing rate and providing bandwidth

efficiency is exploiting non-systematic coding structure. In other words, we just consider

parity (encoded) bits that acquire 4D-64QAM modulation at first level then punctured then

OFDM modulated. This model to achieve rate 1/3, the designed structure with puncturing

that creates rate 1/4 is considered. Then systematic bits are removed; hence the rate

increases to 1/3. This design improves performance for smaller block sizes compared to

using higher order modulation for systematic bits. While the result for larger block sizes is

slightly worse than previous design for rate 1/3 by taking advantage of higher order

modulation for systematic bits, it is still very close to the theoretical sphere packing bound.

These results are discussed in the following chapter.

62

CHAPTER 4: SIMULATION RESULTS

In order to evaluate the proposed method, a transmitter/receiver system is simulated

based on the defined structure in previous chapter. The channel is an AWGN channel which

is tested with a range of low signal to noise ratio (SNR). The input for the system is a

random bit stream which is recovered at the receiver with measured error rate.

4.1 Test Set

All the simulation process is done on MATLAB environment. The project consists

of several functions each of which is responsible for one block of the designed system. The

designed system has the main blocks as depicted in Figure 14. The first basic structure of

the system consists of systematic turbo encoding as a channel encoder. Then the resulting

encoded bit stream, including both permuted and unpermuted encoded bits, along with

systematic bits go to the modulation block which is QPSK for both systematic and parity

bits in basic structure of rate 1/10. Then the next level of modulation which is OFDM with

16 sub-channels is applied and the final symbols pass through AWGN channel that adds a

very high noise to the transmitted signal. In the receiver, the reverse action of the

transmitter is applied meaning that first the OFDM demodulator brings back information

of 16 parallel sub-channels into serial symbol stream. The QPSK demodulation generates

the maximum likelihood for both systematic and parity bits that goes to the BCJR decoding

algorithm to recover the source data.

63

Figure 14 Block Diagram of the Designed System

In digital communication, using Eb/N0 vs. BER curve is a common way to evaluate

system performance. Eb/N0 is the ratio of energy per bit to the spectral noise density and

BER is the rate of the error bits (at the receiver) to the total number of transmitted bits. In

general, Eb/N0 vs. BER curves are like waterfalls, the steeper and closer to Shannon limit

the curve, the more enhanced the system. This means that the system has a low bit error

rate for high level of noise and the error rate decreases a lot if the SNR increases a little

bit. In other words, the channel is utilized closed to its theoretic capacity and the system is

nearly optimal. In this work in order for our results to be comparable with sphere packing

bound results in [22] we are more interested in codeWord Error probability Rate (WER)

therefore all the resulting curves are for codeword error.

64 To construct Eb/N0 vs. WER curve, there should be a loop in the system to apply

different values for Eb/N0 and find the corresponding WER. In this regard, there are two

concerns. Firstly, Eb/N0 is the error in bit level or in the other word it is a digital noise,

while AWGN channel needs SNR (or analog noise) to operate. These two can be converted

to each other by (1)

0

.NE

BRSNR bb (27)

in which Rb is the bit rate and B is the bandwidth and applying appropriate values to get

the correct conversion is crucial. Secondly, the system works in symbol and sub-symbol

level but the final error needs to be calculated in bit level.

Taking these points in mind, we did the experiment on our MATLAB code and

achieved the results as discussed in the following section.

4.2 Results of Different Structures

As discussed earlier, the original structure of the designed system, that takes

advantage of QPSK modulation for both systematic and parity bits, has rate 1/10 and

provides error curve very close to theory. Figure 15 shows the resulting WER for different

short block sizes and Figure 16 illustrates the capacity bound for our designed rate 1/10 in

comparison to sphere packing bound and the same comparison for rate 1/3 DVBRSC which

is created by taking advantage of Coded Modulation Library (CML) for DVBRCS [102].

65

Figure 15 Word Error Rate for Rate 1/10 Short Codewords

66

Figure 16 Comparison of 16-State Duobinary Code Rate 1/10 and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed Word Error Probability Pw=10-4

In the next step, to increase the overall rate of the system we apply 4D-64QAM

modulation for parity bits while maintaining QPSK modulation for systematic bits which

provides the overall rate of 1/5 and we get the results as Figure 17 and 18.

67

Figure 17 Word Error Rate for Rate 1/5 Short Codewords

68

Figure 18 Comparison of 16-State Duobinary Code Rate 1/5 and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed Word Error Probability Pw=10-4

As discussed in previous chapter, in order to increase the overall rate of the system

while keeping the performance as close to the theory as possible, one approach is applying

puncturing on symbol level. We applied several patterns as well as various puncturing rates

among them the puncturing pattern presented in Figure 13 for rate 1/4 and rate 3/11 with

arbitrary puncturing pattern (of course we try to keep deleted symbols as far from each

other as possible.) generate the best results as depicted in Figure 19 to 22.

69

Figure 19 Word Error Rate for Rate 1/4 Short Codewords

70

Figure 20 Comparison of 16-State Duobinary Code Rate 1/4 and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed Word Error Probability Pw=10-4

71

Figure 21 Word Error Rate for Rate 3/11 Short Codewords

72

Figure 22 Comparison of 16-State Duobinary Code Rate 3/11 and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed Word Error Probability Pw=10-4

Further, to increase the rate even more in order to get to rate 1/3 which is a generic

rate and its result is comparable with others results, we applied QAM modulation for

systematic bits. The result of this design generates error rate very close to the theoretical

bound for larger block sizes. These results are presented in Figure 23 and 24.

73

Figure 23 Word Error Rate for Rate 1/3 Short Codewords Using QAM for Systematic Bits

74

Figure 24 Comparison of 16-State Duobinary Code Rate 1/3 Using QAM for Systematic Bits and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed Word Error Probability Pw=10-4

As it is clear in the curves for rate 1/3 by applying higher order modulations for

systematic bits, for shorter block sizes results are not very close to sphere packing bound

curve as expected. Thus, we tried non-systematic structure by removing data bits and just

considering encoded bits at the coding section with 4D-QAM modulation. The results are

presented in Figure 25 and 26. This results for non-systematic structure creates lower error

for shorter block sizes but larger error for larger block sizes comparing to previous

approach with higher order modulation for systematic bits.

75

Figure 25 Word Error Rate for Rate 1/3 Short Codewords for Non-Systematic

76

Figure 26 Comparison of 16-State Duobinary Code Rate 1/3 with Non-Systematic Coding and Existing DVBRCS with Sphere Packing Lower Bound [22] as a Function of Information Block Size and a Fixed Word Error Probability Pw=10-4

77

CHAPTER 5: CONCLUSION AND FUTURE WORK

In all communication systems, performance improvement is the vital issue.

Different coding and modulation schemes, their combination as well as evolution over the

past few decades creates a tremendous progress in advanced communication. In this work,

we develop a 16-state duobinary trellis turbo code which uses 2 layers of different

modulations for systematic and parity bits. In our initial approach, we use QPSK

modulation as a first layer of modulation for both systematic and parity bits then utilize

OFDM for the second layer of modulation. The distribution of both systematic and parity

symbols over OFDM sub-channels are considered symmetrically while the assigned energy

to each of them is not equal and achieved experimentally. This initial design creates rate

1/10 and generate the performance curve very close to the sphere packing lower bound.

Then in order to improve the bandwidth efficiency of the system we tried different

modulation scheme to increase the system rate while keeping the performance close to

lower rates. In the second approach, the heuristic method of 4D-QAM constellation for

parity bits is proposed while the modulation for systematic bits maintained the same. This

modulation increases the system rate to 1/5 but keeps the performance still very close to

sphere packing lower bound. Further, we employ different puncturing patterns in an

effective way to increase the overall rate of the system but still achieve performance very

close to the sphere packing bound for very short code blocks at a code rate of 1/4 and 3/11

bits per channel use. To increase the rate even further and get closer to more generic rates

we apply different modulation scheme for systematic bits. Using QAM modulation for

systematic bits along with 4D-QAM modulation for parity bits as well as acquiring proper

78

structure of puncturing in symbol level allow us to increase the rate up to 1/3 while keeping

the performance curve as close as 0.5 dB to the theoretical sphere packing bound.

Additionally, employing a non-systematic coding structure enables us to create systems

with higher rate with less puncturing. Results of the non-systematic coding structures

especially for shorter block sizes demonstrate negligible error close to theoretical bound.

Comparison of this small gap between our result and theory with other results for short

codes indicates about 1 dB closer approach to the bound. Current work is focused on

achieving similar results at a rate of 1/3 bits per channel use which are distributed

symmetrically along OFDM sub-channels, in order to improve system performance and

approach the theoretical sphere packing lower bound. Furthermore, we applied a heuristic

method of choosing 64 four-dimensional vectors among 4096 that achieves a very low

decoding error probability, and produces performance substantially close to the theoretical

sphere packing lower curve even for a very short block length. Comparison of this small

gap between our result and theory with other results for short codes indicates about 1 dB

closer approach to the bound

5.1 Future Directions

In this designed system, we applied 16 state turbo trellis coding structure combined

with different layers of modulation. Other approach to this design could take advantage of

different near optimum coding scheme such as LDPC coding structure. Also, other

modulation schemes with different/higher orders can be applied. For system improvement,

we applied different ad-hoc puncturing structures without regard to interleaver scheme

79

while in some recent works the joint impact of puncturing and interleaving is investigated

[103], [104], [105] which can be considered as a method to improve the current design.

The designed system, that is comprehensively explained in previous chapters, is

fully implemented in MATLAB environment and most of the functions are converted to C

codes by taking advantage of MATLAB coder toolbox. The next step to this design is

applying these files and implementing the structure on hardware by taking advantage of

DSP processors.

80

REFERENCES

[1] C. E. Shannon, “A Mathematical Theory of Communication,” Bell Syst. Tech. J., vol. 27, no. 3, pp. 379–423, Jul. 1948.

[2] A. Guillén i Fàbregas, A. Martinez, and G. Caire, “Bit-interleaved coded modulation,” Found. Trends Commun. Inf. Theory, vol. 5, no. 1–2, pp. 1–153, 2008.

[3] R. W. Hamming, “Error Detecting and Error Correcting Codes,” Bell Syst. Tech. J., vol. 29, no. 2, pp. 147–160, Apr. 1950.

[4] P. Elias, “Coding for Noisy Channels,” IRE Conv Rec, vol. 3, pp. 37–46, 1955. [5] G. Forney, “Correction to ‘Convolution Codes I: Algebraic Structure,’” IEEE Trans.

Inf. Theory, vol. 17, no. 3, pp. 360–360, May 1971. [6] G. Forney, “Structural analysis of convolutional codes via dual codes,” IEEE Trans.

Inf. Theory, vol. 19, no. 4, pp. 512–518, Jul. 1973. [7] J. Wozencraft and B. Reiffen, Sequential Decoding. Cambridge, MA: MIT Press, 1961. [8] R. Fano, “A heuristic discussion of probabilistic coding,” IEEE Trans. Inf. Theory, vol.

IT-9, pp. 64–74, Apr. 1963. [9] A. Viterbi, “Error bounds for convolutional codes and an asymptotically optimum

decoding algorithm,” IEEE Trans. Inf. Theory, vol. 13, no. 2, pp. 260–269, Apr. 1967. [10] J. Heller and I. Jacobs, “Viterbi Decoding for Satellite and Space Communication,”

IEEE Trans. Commun. Technol., vol. 19, no. 5, pp. 835–848, Oct. 1971. [11] R. C. Bose and D. K. Ray-Chaudhuri, “On a class of error correcting binary group

codes,” Inf. Control, vol. 3, no. 1, pp. 68–79, Mar. 1960. [12] I. Reed and G. Solomon, “Polynomial Codes Over Certain Finite Fields,” J. Soc.

Ind. Appl. Math., vol. 8, no. 2, pp. 300–304, Jun. 1960. [13] G. D. Forney and G. D. Forney, Concatenated codes, vol. 11. Citeseer, 1966. [14] C. Berrou and A. Glavieux, “Near optimum error correcting coding and decoding:

turbo-codes,” IEEE Trans. Commun., vol. 44, no. 10, pp. 1261–1271, Oct. 1996. [15] C. Berrou, A. Glavieux, and P. Thitimajshima, “Near Shannon limit error-

correcting coding and decoding: Turbo-codes. 1,” in Technical Program, Conference Record, IEEE International Conference on Communications, 1993. ICC ’93 Geneva, 1993, vol. 2, pp. 1064–1070 vol.2.

[16] G. Ungerboeck, “Channel coding with multilevel/phase signals,” IEEE Trans. Inf. Theory, vol. 28, no. 1, pp. 55–67, Jan. 1982.

[17] H. Imai and S. Hirakawa, “A new multilevel coding method using error-correcting codes,” IEEE Trans. Inf. Theory, vol. 23, no. 3, pp. 371–377, May 1977.

[18] E. Zehavi, “8-PSK trellis codes for a Rayleigh channel,” IEEE Trans. Commun., vol. 40, no. 5, pp. 873–884, May 1992.

[19] X. Li and J. A. Ritcey, “Bit-interleaved coded modulation with iterative decoding,” Commun. Lett. IEEE, vol. 1, no. 6, pp. 169–171, 1997.

[20] L. Hanzo, Ed., Turbo coding, turbo equalisation, and space-time coding: exit-chart aided near-capacity designs for wireless channels, 2nd ed. Chichester, West Sussex, U.K. ; Hoboken, N.J: Wiley, 2011.

[21] C. E. Shannon, “Probability of error for optimal codes in a Gaussian channel,” Bell Syst. Tech. J., vol. 38, no. 3, pp. 611–656, May 1959.

81

[22] S. Dolinar, D. Divsalar, and F. Pollara, “Code performance as a function of block size,” TMO Prog. Rep., vol. 42, no. 133, 1998.

[23] S. Dolinar, D. Divsalar, and F. Pollara, “Turbo code performance as a function of code block size,” in Proceedings. 1998 IEEE International Symposium on Information Theory (Cat. No.98CH36252), 1998, p. 32-.

[24] J. Wolfowitz, “The coding of messages subject to chance errors,” Ill. J. Math., vol. 1, no. 4, pp. 591–606, Dec. 1957.

[25] R. M. Fano, Transmission of Information: A Statistical Theory of Communications. M.I.T. Press, 1961.

[26] R. Gallager, “A simple derivation of the coding theorem and some applications,” IEEE Trans. Inf. Theory, vol. 11, no. 1, pp. 3–18, Jan. 1965.

[27] C. E. Shannon, R. G. Gallager, and E. R. Berlekamp, “Lower bounds to error probability for coding on discrete memoryless channels. I,” Inf. Control, vol. 10, no. 1, pp. 65–103, Jan. 1967.

[28] R. G. Gallager, Information theory and reliable communication. Wiley, 1968. [29] J. A. T. Thomas M. Cover, Elements Of Information Theory 2nd Ed. 2006. [30] A. Valembois and M. P. C. Fossorier, “Sphere-Packing Bounds Revisited for

Moderate Block Lengths,” IEEE Trans. Inf. Theory, vol. 50, no. 12, pp. 2998–3014, Dec. 2004.

[31] G. Wiechman and I. Sason, “An Improved Sphere-Packing Bound for Finite-Length Codes Over Symmetric Memoryless Channels,” IEEE Trans. Inf. Theory, vol. 54, no. 5, pp. 1962–1990, May 2008.

[32] Y. Polyanskiy, H. V. Poor, and S. Verdu, “Channel Coding Rate in the Finite Blocklength Regime,” IEEE Trans. Inf. Theory, vol. 56, no. 5, pp. 2307–2359, May 2010.

[33] Y. Altuğ and A. B. Wagner, “Moderate deviation analysis of channel coding: Discrete memoryless case,” in 2010 IEEE International Symposium on Information Theory, 2010, pp. 265–269.

[34] Y. Altuğ and A. B. Wagner, “Refinement of the Sphere-Packing Bound: Asymmetric Channels,” IEEE Trans. Inf. Theory, vol. 60, no. 3, pp. 1592–1614, Mar. 2014.

[35] E. N. O. Sackey, “Performance evaluation of M-ary frequency shift keying radio modems via measurements and simulations,” Electr. Eng. Blekinge Inst. Technol., 2006.

[36] B. Sklar, Digital communications: fundamentals and applications, 2nd ed. Upper Saddle River, N.J: Prentice-Hall PTR, 2001.

[37] C. U. Ndujiuba, O. Oni, A. E. Ibhaze, C. U. Ndujiuba, O. Oni, and A. E. Ibhaze, “Comparative Analysis of Digital Modulation Techniques in LTE 4G Systems,” J. Wirel. Netw. Commun., vol. 5, no. 2, pp. 60–66, 2015.

[38] G. Y. Li et al., “Energy-efficient wireless communications: tutorial, survey, and open issues,” IEEE Wirel. Commun., vol. 18, no. 6, pp. 28–35, Dec. 2011.

[39] P. C. P. Liang and W. E. Stark, “Algorithm for joint decoding of turbo codes and M-ary orthogonal modulation,” 2000, p. 191.

82

[40] D. Nojima, Y. Nagao, M. Kurosaki, and H. Ochi, “Derivation of Log-Likelihood Ratio for M-Ary Non-Orthogonal FSK Wireless System,” in Vehicular Technology Conference (VTC Fall), 2012 IEEE, 2012, pp. 1–5.

[41] J. G. Proakis, Digital communications, 5th ed. Boston: McGraw-Hill, 2008. [42] W. T. Webb and L. Hanzo, Modern Quadrature Amplitude Modulation: Principles

and applications for fixed and wireless channels: one. IEEE Press-John Wiley, 1994. [43] B. P. Lathi, Modern Digital and Analog Communication Systems, Fourth Edition,

New to this Edition: Oxford, New York: Oxford University Press, 2009. [44] L.-F. Wei, “Trellis-coded modulation with multidimensional constellations,” IEEE

Trans. Inf. Theory, vol. 33, no. 4, pp. 483–501, 1987. [45] A. R. Calderbank and N. J. A. Sloane, “Four-dimensional modulation with an eight-

state trellis code,” ATT Tech. J., vol. 64, no. 5, pp. 1005–1018, 1985. [46] M. Karlsson and others, “Four-dimensional coherent signalling-constellations and

rotations,” in 19th Optoelectronics and Communications Conference (OECC) and the 39th Australian Conference on Optical Fibre Technology (ACOFT), 2014, p. 138.

[47] S. Ishimura and K. Kikuchi, “Eight-state trellis-coded optical modulation with signal constellations of four-dimensional M-ary quadrature-amplitude modulation,” Opt. Express, vol. 23, no. 5, p. 6692, Mar. 2015.

[48] S. Ishimura and K. Kikuchi, “Experimental demonstration of the 8-state Trellis-coded 4D-QPSK optical modulation format,” in 2015 Optical Fiber Communications Conference and Exhibition (OFC), 2015, pp. 1–3.

[49] P. Johannisson, M. Sjödin, T. A. Eriksson, and M. Karlsson, “Four-dimensional modulation formats for long-haul transmission,” in OFC 2014, 2014, pp. 1–3.

[50] J. K. Fischer et al., “Generation, Transmission, and Detection of 4-D Set-Partitioning QAM Signals,” J. Light. Technol., vol. 33, no. 7, pp. 1445–1451, Apr. 2015.

[51] S. Ishimura and K. Kikuchi, “Multi-dimensional permutation modulation aiming at both high spectral efficiency and high power efficiency,” in OFC 2014, 2014, pp. 1–3.

[52] L. Coelho and N. Hanik, “Global optimization of fiber-optic communication systems using four-dimensional modulation formats,” in European Conference and Exposition on Optical Communications, 2011, p. Mo–2.

[53] S. Shembil, “Spectrally Efficient Four Dimensional M-ary QAM for Synchronous DS-CDMA.”

[54] L. Litwin and M. Pugel, “The principles of OFDM,” RF Signal Process., vol. 2, pp. 30–48, 2001.

[55] “The Principles of OFDM | by Louis Litwin & Michael Pugel,” Wireless LAN Professionals, 26-Jul-2017. .

[56] Rupesh Sharma, “Design Ofdm System And Remove Nonlinear Distortion In OFDM Signal At …,” 22:51:31 UTC.

[57] D. W. K. Ng, E. S. Lo, and R. Schober, “Energy-efficient resource allocation in multiuser OFDM systems with wireless information and power transfer,” in 2013 IEEE Wireless Communications and Networking Conference (WCNC), 2013, pp. 3823–3828.

83

[58] D. Mérouane, “Short introduction to OFDM.,” White Pap. Mob. Commun. Group Inst. Eurecom, 2004.

[59] O. Amin, E. Bedeer, M. H. Ahmed, and O. A. Dobre, “Energy Efficiency #x2013;Spectral Efficiency Tradeoff: A Multiobjective Optimization Approach,” IEEE Trans. Veh. Technol., vol. 65, no. 4, pp. 1975–1981, Apr. 2016.

[60] A. F. Molisch, Wireless communications, 2nd ed. Chichester, West Sussex, U.K: Wiley : IEEE, 2011.

[61] G. C. C. Jr and J. B. Cain, Error-Correction Coding for Digital Communications. Springer Science & Business Media, 2013.

[62] W. C. Huffman and V. Pless, Fundamentals of Error-Correcting Codes. Cambridge University Press, 2010.

[63] M. J. E. Golay, “Notes on Digital Coding,” IEEE 37, p. 657, 1949. [64] D. E. Muller, “Application of Boolean algebra to switching circuit design and to

error detection,” Trans. IRE Prof. Group Electron. Comput., vol. EC-3, no. 3, pp. 6–12, Sep. 1954.

[65] A. Viterbi, “Convolutional Codes and Their Performance in Communication Systems,” IEEE Trans. Commun., vol. 19, no. 5, pp. 751–772, Oct. 1971.

[66] M. S. Ryan and G. R. Nudd, “The viterbi algorithm,” 1993. [67] V. L. Priya and D. R. Rao, “Design And Implementation Of Coding Techniques

For Communication Systems Using Viterbi Algorithm.” [68] D. Divsalar and F. Pollara, “On the design of turbo codes,” JPL TDA Prog. Rep.

42, vol. 123, pp. 99–121, 1995. [69] J. D. Andersen, A turbo tutorial. Institut for Telekommunikation, Danmarks

Tekniske Universitet, 1999. [70] “Decoding of Turbo Codes in Symmetric Alpha-Stable Noise : Figure 1.” [Online].

Available: https://www.hindawi.com/journals/isrn/2011/683972/fig1/. [Accessed: 05-Sep-2017].

[71] L. Bahl, J. Cocke, F. Jelinek, and J. Raviv, “Optimal decoding of linear codes for minimizing symbol error rate (Corresp.),” IEEE Trans. Inf. Theory, vol. 20, no. 2, pp. 284–287, Mar. 1974.

[72] M. F. Brejza, L. Li, R. G. Maunder, B. M. Al-Hashimi, C. Berrou, and L. Hanzo, “20 Years of Turbo Coding and Energy-Aware Design Guidelines for Energy-Constrained Wireless Applications,” IEEE Commun. Surv. Tutor., vol. 18, no. 1, pp. 8–28, Firstquarter 2016.

[73] K. Gracie and M.-H. Hamon, “Turbo and Turbo-Like Codes: Principles and Applications in Telecommunications,” Proc. IEEE, vol. 95, no. 6, pp. 1228–1254, Jun. 2007.

[74] R. M. Radaydeh and M. M. Matalgah, “Performance analysis of multiple carrier M-ary FSK system with diversity combining over generalized fading channels,” in Communications, 2005. ICC 2005. 2005 IEEE International Conference on, 2005, vol. 4, pp. 2357–2361.

[75] J. A. Massey, “Coding and modulation in digital communications.,” Int. Zurich Semin. Digit. Commun. Zurich Switz., no. 3rd, 1974.

84

[76] H. R. Sadjadpour, N. J. A. Sloane, M. Salehi, and G. Nebe, “Interleaver design for turbo codes,” IEEE J. Sel. Areas Commun., vol. 19, no. 5, pp. 831–837, May 2001.

[77] B. Johann, “Interleavers for Turbo Codes,” Master of Philisophy, The University of Malta, Department of Communications and Computer Engineering, 1999.

[78] J. J. Boutros and G. Zemor, “On quasi-cyclic interleavers for parallel turbo codes,” IEEE Trans. Inf. Theory, vol. 52, no. 4, pp. 1732–1739, Apr. 2006.

[79] S. Crozier and P. Guinand, “High-performance low-memory interleaver banks for turbo-codes,” in IEEE 54th Vehicular Technology Conference. VTC Fall 2001. Proceedings (Cat. No.01CH37211), 2001, vol. 4, pp. 2394–2398 vol.4.

[80] S. Crozier and P. Guinand, “Distance upper bounds and true minimum distance results for turbo-codes designed with DRP interleavers,” Ann. Télécommunications, vol. 60, no. 1–2, pp. 10–28, Feb. 2005.

[81] Y. Ould-Cheikh-Mouhamedou, S. Crozier, and P. Kabal, “Efficient distance measurement method for turbo codes that use structured interleavers,” IEEE Commun. Lett., vol. 10, no. 6, pp. 477–479, Jun. 2006.

[82] Y. Ould-Cheikh-Mouhamedou, S. Crozier, and P. Kabal, “Distance measurement method for double binary turbo codes and a new interleaver design for DVB-RCS,” in IEEE Global Telecommunications Conference, 2004. GLOBECOM ’04, 2004, vol. 1, p. 172–178 Vol.1.

[83] F. Daneshgaran and M. Mondin, “Iterative interleaver growth algorithms of polynomial complexity for turbo codes,” in Proceedings. 1998 IEEE International Symposium on Information Theory (Cat. No.98CH36252), 1998, p. 418-.

[84] C. J. Corrada-Bravo and I. Rubio, “Deterministic interleavers for turbo codes with random-like performance and simple implementation,” in Proc. 3rd International Symposium on Turbo Codes, 2003.

[85] C. Berrou, Y. Saouter, C. Douillard, S. Kerouedan, and M. Jezequel, “Designing good permutations for turbo codes: towards a single model,” in 2004 IEEE International Conference on Communications (IEEE Cat. No.04CH37577), 2004, vol. 1, pp. 341–345.

[86] E. Rosnes and O. Y. Takeshita, “Optimum Distance Quadratic Permutation Polynomial-Based Interleavers for Turbo Codes,” in 2006 IEEE International Symposium on Information Theory, 2006, pp. 1988–1992.

[87] J. Sun and O. Y. Takeshita, “Interleavers for turbo codes using permutation polynomials over integer rings,” IEEE Trans. Inf. Theory, vol. 51, no. 1, pp. 101–119, Jan. 2005.

[88] J. H. Ryu, Permutation Polynomial Based Interleavers for Turbo Codes Over Integer Rings: Theory and Applications. Ohio State University, 2007.

[89] J. Wang, K. Zhang, H. Kröll, and J. Wei, “Design of QPP Interleavers for the Parallel Turbo Decoding Architecture,” IEEE Trans. Circuits Syst. Regul. Pap., vol. 63, no. 2, pp. 288–299, Feb. 2016.

[90] C. L. Chi and C. H. Kuo, “Quadratic permutation polynomial interleaver for LTE turbo coding,” in 2012 International Conference on Information Security and Intelligent Control, 2012, pp. 313–316.

[91] W. J. Blackerty and S. G. Wilson, “Turbo trellis coded modulation,” 1996.

85

[92] D. Divsalar and F. Pollara, “Turbo trellis coded modulation with iterative decoding for mobile satellite communications,” in International Mobile Satellite Conference, 1997, pp. 333–339.

[93] F. A. Alder, “Symbol assignment and performance of simplex signaling in high dimensional trellis-coded modulation,” 1998.

[94] F. Alder, J. Dill, and A. Lindsey, “Simplex symbol assignment in circular trellis-coded modulation,” in Milcom, 1999, vol. 1, pp. 311–315.

[95] R. Chinchilla, “Interleaver Design for the Circular Simplex Turbo Block Coded Modulator,” PhD Thesis, Ohio University, Athens, OH, USA, 2003.

[96] H. Ma and J. Wolf, “On Tail Biting Convolutional Codes,” IEEE Trans. Commun., vol. 34, no. 2, pp. 104–111, Feb. 1986.

[97] D. J. Costello and G. D. Forney, “Channel coding: The road to channel capacity,” Proc. IEEE, vol. 95, no. 6, pp. 1150–1177, Jun. 2007.

[98] L. Sari, “Effects of puncturing patterns on punctured convolutional codes,” ℡KOMNIKA Indones. J. Electr. Eng., vol. 10, no. 4, pp. 752–762, 2012.

[99] J. Berkmann and I. T. AG, Non-periodic puncturing of turbo codes and convolutional codes. 2006.

[100] S. Yokohama, “Puncturing Algorithm for Turbo Code,” TSG-RAN Working Group, Japan, 4, Apr. 1999.

[101] J. Li, Q. Chen, S. Gao, Z. Ma, and P. Fan, “The optimal puncturing pattern design for rate-compatible punctured Turbo codes,” in Wireless Communications & Signal Processing, 2009. WCSP 2009. International Conference on, 2009, pp. 1–5.

[102] “Coded Modulation Library.” [Online]. Available: http://www.iterativesolutions.com/Matlab.htm. [Accessed: 17-Aug-2017].

[103] B. Yang, J. Lu, K. Chen, J. Zhang, and C. Dai, “Puncturing and interleaving analysis of a physical layer link based on IEEE802.11a,” in 2011 Global Mobile Congress, 2011, pp. 1–7.

[104] “US Patent Application for INTERLEAVING AND PUNCTURING APPARATUS AND METHOD THEREOF Patent Application (Application #20170230063 issued August 10, 2017) - Justia Patents Search.” [Online]. Available: http://patents.justia.com/patent/20170230063. [Accessed: 05-Sep-2017].

[105] R. Garzón-Bohórquez, C. A. Nour, and C. Douillard, “Improving Turbo Codes for 5G with parity puncture-constrained interleavers,” in 2016 9th International Symposium on Turbo Codes and Iterative Information Processing (ISTC), 2016, pp. 151–155.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!

Thesis and Dissertation Services