throbber
Defence Science Journal, Vol 43, No 1, January 1993, pp 59-69
`© 1993, DESIDOC
`
`Coding Theory and its Applications in Communication Systems*
`
`Vijay K. Bhargava, Qing Yang and David J. Peterson
`Department of Electrical and Computer Engineering, University of Victoria
`PO Box 3055, Victoria, BC, Canada V8W 3P6.
`
`A"BSTRACT
`
`Error control coding has been used extensively in digital communication systems because of its
`cost-effectiveness in achieving efficient, reliable digital transmission. Coding now plays an important
`role in the design of modern communication systems. This paper reviews the development of basic
`coding theory and state-of-art coding techniques. The applications of coding to communication systems
`and future trends are also discussed.
`
`r---------------,
`
`III IIIIIIIIIII
`
`llISOl[ T( - - l
`[lATA OWKI.
`
`L
`
`.
`
`.__.J
`
`Figure 1. Digital communication using forward error control coding.
`
`can
`technique which
`design
`a
`is
`Coding
`fundamentally change
`the trade-offs
`in a digital
`communication system. The most
`trivial example of
`coding is the repetition of the same message on the
`transmission channel. Here it is clear that redundancy,
`and therefore reliability, is obtained at the expense of
`transmission efficiency, or bandwidth utilization.
`In
`general, error control coding can increase signal quality
`from problematic to acceptable levels. If the attendant
`
`1. INTRODUCTION
`
`1.1 The Coding Problem
`
`Error control coding is concerned with methods of
`delivering information from a source to a destination
`with a minimum of errors. Error control coding can be
`categorized as
`forward
`error
`correction (FEe),
`automatic repeat request (ARQ), or as a combination
`of FEC and ARQ (hybrid).
`
`The communication system depicted in Fig. 1
`employs FEe. The source generates data bits or
`messages that must be transmitted to a distant user over
`a noisy channel. Generally speaking, a specific signal
`is assigned to each of M possible messages that can be
`emitted by the source. The selection rule that assigns
`a transmitted signal to each message is the code. The
`encoder
`implements the selection rule, while the
`decoder performs the corresponding inverse mapping.
`Because of channel noise, the transmitted signals may
`not arrive at the receiver exactly as transmitted, causing
`errors to occur at the decoder input. A natural design
`objective is to select the code such that most of the
`errors occuring at the decoder input can be corrected
`by the decoder. thereby providing an acceptable level
`of reliabilty.
`
`Received 14 September 1992
`• Research supported by a grant
`Government of Canada.
`
`from Canadian Institute for Telecommunications Research under the NCE program of
`
`the
`
`59
`
`IPR2018-01474
`Apple Inc. EX1015 Page 1
`
`

`

`DEF SCI J, VOL 43, NO.
`
`JANUARY 1993
`
`increase in complexity at the transmitter and receiver
`is economically viable, and bandwidth utilization is not
`unduly
`compromised,
`useful
`perfo.rmance
`improvements may result. For example, with coding,
`less power may be required to communicate between
`a satellite and a mobile terminal. Furthermore, coding
`may result in an increase in the maximum number of
`mobile terminals per satellite
`The study of error control coding began in 1948with
`Claude Shannon) who demonstrated the existence of
`codes achieving reliable communication whenever the
`code rate is smaller than a threshold Ccalled the channel
`capacity. For
`the
`additive white Gaussian noise
`(AWGN).channel, the channel capacity is given by
`S]
`C = B log, L _ +
`r
`.N
`Where B is the channel bandwidth, and SIN is the
`ratio of signal
`to noise power
`falling within the
`bandwidth. This remarkable result indicates that the
`ultimate performance limit caused by channel noise is
`not reliability, as generally believed before Shannon's
`work, but
`the rate at which data can be reliably
`transmitted.
`The concept of channel capacity is fundamental to
`communication theory and is surprisingly powerful and
`general. It can be applied to a large class of channel
`models, whether memoryless or not, discrete or
`nondiscrete. However, Shannon's celebrated coding
`theorems are only existence theorems; they do not show
`how promising coding schemes can be constructed.
`Since the publication of Shannon's result, a considerable
`amount of
`research has addressed the design and
`analysis of practical coding and decoding techniques
`permitting reliable communication at
`the data rates
`promised by the theory 2-4.
`
`1.2 Basic Coding Process
`In addition to the FECIARQ categorisation
`mentioned earlier, coding systems have traditionally
`been
`separated
`into
`block
`and
`convolutional
`error-correction techniques.
`In an (n, k) linear block code, a sequence of k
`information bits is used to obtain a set of n-k parity
`bits, yielding an encoded block of n bits. Usually
`modulo-Z arithmetic is used to compute the parity bits.
`Modulo-Z arithmetic is particularly suited to digital
`logic; addition corresponds to the EXCLUSIVE-QR
`operation, while multiplication can be realised as an
`
`60
`
`AND operation. The code rate r is defined as r = kin
`where n is called the block length. Linear codes form
`a linear vector space;
`two code words can be added
`(modulo-Z) to produce a third code word.
`The Hamming weight of a code word c is defined
`to be the number of nonzero components of c. For
`example, the code word c =(110101) has a Hamming
`weight of 4. The Hamming distance between two code
`words c) and Cz, denoted d(ct , Cz), is the number of
`positions in which they differ. For example if c) =
`(110101) and Cz = (111000) then d(ct,Cz) = 3. The
`minimum distance d of a linear block code is defined
`to be the minimum \\ eight of its nonzero code words.
`A code can correct all patterns of t or fewer random
`errors and detect all patterns having no more than s
`errors, provided that s+2t+ 1 ~ d. If the code is used
`for error correction alone, any pattern of t or fewer
`random errors can be corrected, provided that 2t+ 1 ~ d.
`A convolutional code of rate l/v may be generated
`by a K stage shift register and v modulo-Z adders.
`Information bits are shifted in at the left, and for each
`information bit
`the output of the modulo-Z adders
`provides two channel bits. The constraint length of the
`code is defined as the number of shifts over which a
`single information bit can influence the encoder output.
`For the simple binary convolutional code, the constraint
`length is equal to K, the length of the shift register.
`Whether block coding or convolutional coding is
`used,
`the encoded sequence is mapped to suitable
`waveforms by the modulator and transmitted over the
`noisy channel. The physical channel or the waveform
`the hardware (for example,
`channel consists of all
`filtering and amplification devices) and the physical
`media that
`the waveform passes through, from the
`output of the modulator to the input of the demodulator.
`The demodulator estimates which of the possible
`symbols was transmitted based upon an observation of
`the received signal. Finally, the decoder estimates the
`information
`sequence
`from
`the
`transmitted
`demodulator output. The decoder makes use of the fact
`that the transmitted sequence is composed of the code
`words. Transmission errors are likely to result
`in
`reception of a noncode sequence.
`1.3 Coding Gain
`It is often useful to express coding performance not
`in terms of
`the error
`rate reduction for a given
`signal-to-noise ratio (SNR), but as the SNR difference
`at a fixed bit error rate. Consider an AWGN channel
`
`IPR2018-01474
`Apple Inc. EX1015 Page 2
`
`

`

`BHARGAVA. er a/ : CODING THEORY AND APPLICATIONS IN COMMUNICATION SYSTEMS
`
`with one-sided noise spectral density N 0 having no
`bandwidth restriction. Let Eb denote the received
`energy per bit. It can be shown that if the SNR EblNo
`exceeds -1.6 dB,
`there exists a coding scheme which
`error-free
`communications, while
`reliable
`allows
`communication is not generally possible at lower SNRs.
`On the other hand, it is well-known that the uncoded
`phase shift keying (PSK) modulation over the same
`channel requires about 9.6 dB to achieve a bit error
`rate of lO,5 . Thus, as shown in Fig. 2, a potential coding
`gain of 11.2 dB is theoretically possible.
`
`hardware and the much less significant decrease in the
`cost of analog components such as power amplifiers,
`antennas and so on.
`
`Practical communication systems rarely provide the
`ablity to make full use of the actual analog voltages of
`the received signal. The normal practice is to quantize
`these voltages. If binary quantization is used, we say
`that a hard decision is made at the receiver as to which
`level was actually sent. For example , in coherent PSK
`with equally likely transmitted symbols , the optimum
`threshold is zero. The demodulator output is a one or
`a zero depending on whether the voltage is above or
`below the threshold . With coding,
`it
`is desirable to
`maintain an indication of the reliability of this decision .
`A soft-decision demodulator first decides whether the
`voltage is above or below the decision threshold, and
`than computes a 'confidence' number which specifies
`how far from the decision threshold the demodulator
`output is. This number in theory could be an analog
`quantity , but in most practical applications a three-bit
`(eight-level) quantization is used. It is known that soft
`decision decoding is about 3 dB more efficient than
`hard decision decoding at very high EblNo. A figure of
`2 dB is more likely at realistic values of EJNo.
`
`2. CODING FOR DIGITAL COMMUNICAnONS
`
`2. Block Codes and their Decoding
`
`The basic idea behind all block codes is illustrated
`by the following example. We consider a binary code
`having the eight code words (ססOO00), (001101),
`(010011) , (011110), (100110) , (lOI011) , (llOI01) and
`(11lO00) . These codes words form a vector space of
`dimension three, so the code is a (6, 3) linear code .
`The minimum weight of the seven nonzero code words
`is 3, so the minimum distance is 3. Thus, the code is a
`single error correcting code . This code is said to be in
`three bits of any code word
`systematic form ; the first
`can be considered as message bits while the last three
`bits, which are uniquely determined by the first
`three
`bib. are the redundant or parit y bits.
`
`Many of the important block codes found to date
`are so-called cyclic codes or are closely related to cyclic
`codes. For such codes, if an n tuple c= ('1>, cJ , 0, .. . ,
`
`61
`
`_
`
`···i
`
`iiI
`
`it- !
`~!
`'I~ I i: ~
`! -' ~ I.... ~
`.... ~
`: ~ ~
`I~z I~~
`.~~ I ~ ;:)
`i~a
`Xd
`I~C
`I.... :5 I~g
`I u, a::
`: ~ t-
`
`a..~
`
`iII
`
`I

`
`I
`
`!
`
`REGION OF POTENTIAL CODING GAIN
`
`10-
`
`'"
`~ 10-)
`a::
`I
`....
`iii
`
`~
`
`10-4
`
`10-5
`
`I
`- 2
`
`I
`0
`
`I
`2
`
`I
`4
`Eb"N o
`
`I
`6
`
`I
`8
`
`I
`10
`
`Figure 2. Performance of uncoded PSK over AWGN channel.
`
`Coding gain is defined as the difference in value of
`EblNo required to attain a particular error rate with and
`without coding. Notice that coding gain is obtained at
`the expense of transmission bandwidth . The bandwidth
`expansion is the reciprocal of the code rate . Coding
`schemes delivering 2 to R dB coding gain are widely
`used in modern digital communication systems . This is
`because of the phenomenal decrease in the cost of digital
`
`IPR2018-01474
`Apple Inc. EX1015 Page 3
`
`

`

`DEF SCI J, VOL 43, NO. I , JANUARY 1993
`
`Cn _ t is a code word, then the n tuple c'= (cn _t , Co, ct , •• . . ,
`cn - Z) , obtained by cyclically shifting c one place to the
`right , is also a code word. This class of codes can be
`easily encoded using simple feedback shift register
`circuits. Furthermore, because of
`their
`inherent
`algebraic structure,
`the decoding of cyclic code is
`straightforwarJ, both conceptually and in practice .
`Examples of cyclic and related codes include the
`Bose-Chaudhuri- Hocquenhem (BCH) , Reed-Solomon
`(RS) ,
`Hamming, maximum-length, maximum(cid:173)
`distance-separable (MDS), Reed -Muller, Golay , Fire,
`difference
`set,
`quadratic
`residue, Goppa,
`and
`quasicyclic
`codes. Some of
`these
`classes
`form
`overlapping sets. For example, RS code are a special
`class of BCH codes and also belong to the class of MDS
`codes. The details of these codes can be found in any
`one of the standard coding references 5-8.
`
`The first stc, of the decoding procedure involves
`re-encoding the received information bits to obtain a
`new parity sequence. The rnodulo-Z difference between
`this parity sequence and the original parity sequence is
`called the syndrome. If no errors have occurred, the
`parity bits computed at the decoder will be identical to
`those actually received, and the syndrome bits will be
`zero. If the syndrome bits are not zero, errors have
`been detected.
`
`the syndrome is processed
`For error correction,
`further. The algebraic constraints defining a given block
`code generally yield a decoding technique or algorithm
`for the code. The decoding algorithm makes further use
`of the syndrome to calculate the error pattern affecting
`the received word. Most decoding algorithms require
`the use of binary quantization (hard decisions) at the
`demodulator output. The syndrome is processed using
`anyone of the following methods:
`
`2.1.1 Table Look-Up Decoding
`
`k
`
`There is a unique correspondence between the 2 n
`-
`distinct syndromes and the correctable error patterns.
`redundancy n-k, all
`Thus,
`for codes with small
`correctable error patterns can be stored in a read-only
`memory (ROM), with the syndrome of the received
`word forming the ROM address. The error pattern is
`added modulo-Z to the received sequence to produce
`the transmitted code word . This procedure is used in '
`
`62
`
`some types of error correction hardware for computer
`memories.
`
`2.1.2 Algebraic Decoding
`
`The most prominent decoding method is the iterative
`algorithm for BCH codes due to Berlekamp. The basic
`idea is to compute the error-locator polynomial and
`solve for its roots. The complexity of this algorithm
`increases only as the square of the number of errors to
`be corrected. Thus, it is feasible to decode powerful
`codes. The use of Fourier-like transrorms has also been
`proposed to further reduce decoder complexity. The
`standard version of the algorithm is a bounded-distance
`algorithm. That is, not all possible error patterns can
`be corrected. The algorithm does not generalise easily
`to utilise soft decisions. There are several other
`algebraic decoding algorithms, some of which utilize
`soft decisions to improve performance. However,
`Berlekamp's algorithm is perhaps the deepest and most
`impressive result, and is straightforward to implement.
`This algorithm has permitted the use of BCH and
`Reed-Solomon codes in many applications, from the
`Voyager mission to compact disks.
`
`2.1.3 Majority Logic Decoding
`
`Majority logic decoding is a simple form of threshold
`decoding and
`is applicable
`to both
`block and
`convolutional codes . There are codes that, because of
`the special form of their parity check equations, are
`majority logic decodable. Reed-Muller codes are the
`most
`important class of codes of
`this
`type. A
`Reed-Muller code was used in the Mariner mission to
`encode photographs of Mars.
`
`2.2 Convolutional Codes and their DecoclinI
`Conovolutional
`codes
`have
`a much simpler
`mathematical structure than all but the most trivial block
`codes. Furthermore, unlike many block codes,
`it is
`possible to make use of soft- decision information in
`their decoding. For these reasons it is not surprising
`that
`they have been widely used. Because of the
`relatively small number of parameters specifying a
`convolutional code, many good codes have been found
`by computer
`search
`rather
`than
`by algebraic
`construction.
`The error-correction capability of a convolutional
`code is determined in most cases by the free distance
`
`IPR2018-01474
`Apple Inc. EX1015 Page 4
`
`

`

`BHARGAVA, et al : CODING TIfEORY AND APPLICATIONS IN COMMUNICATION SYSTEMS
`
`of the code. This is defined to be the minimum Hamming
`distance between any two semi-infinite code sequences
`generated by the encoder. By linearity, this is simply
`the minimum Hamming weight of any nonzero code
`sequence.
`
`Three major decoding methods for convolutional
`codes are briefly described in the following sections.
`
`2.2.1 Viterbi Decoding
`
`Viterbi decoding is presently the most widely used
`decoding technique for convolutional codes. The
`Viterbi
`decoding
`algorithm finds
`the most
`likely(maximum likelihood) transmitted code sequence
`by using a structure called a trellis", Each code sequence
`is represented by a path through the trellis . .The degree
`to which a given code sequence matches the noisy
`received sequence is measured in terms of a path metric.
`Paths with high path metrics correspond to the most
`sequences. The Viterbi
`likely
`transmitted
`code
`algorithm is an efficient technique for searching all
`possible paths to find the most likely transmitted code
`sequence. In fact, the algorithm applies to any trellis
`code, not just the convolution codes . The significance
`of the trellis viewpoint is that
`the transmitted code
`sequence almost always corresponds to the path with
`the highest path metric. A major advantage of the
`Viterbi algorithm is the ease with which soft-decision
`information may be incorporated into the path metric.
`Unfortunately, the complexity of the Viterbi algorithm
`has an exponential dependence on the code's constraint
`length K. In practice, the Veterbi algorithm is rarely
`used with codes having constraint lengths exceeding 7.
`Another point worth mentioning is
`that Viterbi
`decoding does not perform very well in a bursty channel ,
`making it necessary to use interleaving. Convolutional
`codes
`using
`the Viterbi
`algorithm are
`often
`concatenated with powerful block codes, especially in
`deep space applications.
`
`2.2.2 Sequential Decoding
`
`Again, code sequences are represented as paths in
`a trellis. Sequential decoding makes use of the fact that
`in most cases, there are only a small number of paths
`with high path metrics. Therefore, by carefully
`restricting the path search procedure, it is often possible
`to isolate the maximum likelihood path without keeping
`
`track of all possible paths. The complexity of sequential
`decoders is relatively independent of constraint length,
`so codes with large constraint lengths (up to 1(0) can
`be used, yielding large
`coding gains. Sequential
`decoding is more suitable than Viterbi decoding when
`low bit error rates « 10'5) are required. However,
`unlike
`the Viterbi
`algorithm,
`the
`procedure
`is
`suboptimum; only a small fraction of the Possible code
`sequences is examined at anyone time. The sequential
`decoder must be capable of detecting situations when
`the correct path is not in the set of sequences under
`examination and 'backtracking' to the point where the
`correct path was most
`likely lost. The decoder must
`then examine a different set of paths extending from
`that point. Several stages of backtracking may be
`necessary to find the correct path again. A major
`disadvantage of sequential decoding is that the number
`of computations is an ill-behaved random variable,
`necessitating a very large buffer. Consequently,
`performance is limited by the probability of the buffer
`overflow.
`
`2.2.3 Threshold Decoding
`
`Some convolutional codes are threshold decodable.
`Several parity checks may be calculated for each
`message bit and if they exceed a threshold, a decision
`on the correctness of the bit is made. Moderate values
`of coding gain (1-3 dB) can be obtained with relatively
`inexpensive
`decoders
`and
`limited
`amount
`of
`redundancy.
`
`2.3 ARQ and Hybrid FEe ARQ Schemes
`
`In an automatic repeat request (ARQ) scheme,
`whenever the receiver detects an error in the transmitted
`message, it sends a retransmission request to the trans(cid:173)
`mitter over a feedback channel. These requests are
`repeated until the message is received correctly. Three
`basic types of ARQ protocols are commonly used-stop(cid:173)
`and-wait, go-back-N, and selective-repeat 10-12.
`
`Because of its simplicity, ARQ is used in many data
`communications systems . However. the technique has
`a major shortcoming-the throughput efficiency may be
`highly dependent on channel conditions. At low SNRs,
`the number of retransmissions required for correct
`message transmission may be very large. Hence, a
`successful transmission may involve a very long time
`
`f\1
`
`IPR2018-01474
`Apple Inc. EX1015 Page 5
`
`

`

`DEF SCI J, VOL 43, NO.1, JANUARY 1993
`
`r - - - - - - - - - - - l FEEDBACK .....----:--
`CHANNEL
`
`--,
`
`r--------------------------~
`I
`I
`I
`~
`:
`i
`.
`
`DATA IN
`
`FEC
`ENCODER
`
`FORWARD
`CHANNEL
`
`I
`I
`I
`I
`
`DATA OUT
`ARQ. t---...;;.;...;.~~-
`I '---~
`
`I
`DECODER -r
`
`FEC
`
`~----------------
`BINARY FORWARD CHANNEL
`
`...J
`
`Figure 3. FEetARD hybrid error control coding system.
`
`delay. Of course, this behaviour is unacceptable for
`delay-sensitive applications such as the digital voice
`communications. One approach to reducing the time
`delay is the hybrid FEClARQ scheme (Fig. 3). Here
`an ARQ scheme is used to obtain a desired error rate.
`FEC coding is used to correct low-weight error patterns
`in each message, reducing the number of retransmission
`requests.
`
`In a type-I hybrid FEClARQ scheme, the message
`and error detecting parity bits generated by the ARQ
`system are further encoded with an FEC code". At the
`receiver,
`the error correction parity bits are used to
`correct channel errors. The FEC decoder produces an
`estimate of the message and the error detection parity
`bits. The result is then tested by the error detection
`system to determine if the message should be accepted
`as error-free, or rejected as containing errors. If the
`channel signal strength is poor (high bi~ error rate), or
`if the message is long,
`the probability of error-free
`these
`zero. Under
`transmission may
`approach
`conditions, the efficiency may be improved by using a
`than a simple ARQ
`type-I hybrid scheme rather
`protocol. However, if signal strength is adequate, the
`type-I hybrid scheme involves a waste of bandwidth;
`the error correction parity bits are unnecessary. Thus,
`a plot of data throughput versus signal strength exhibits
`a crossover point between standard ARQ and the type-I
`hybrid schemes.
`
`In a type-II hybrid FEC/ARQ scheme" the first
`transmission of a message is coded with error detection
`
`64
`
`parity bits alone, as in a standard ARQ protocol. If the
`receiver detects errors in the received block, it saves
`the erroneous block in a buffer and requests a
`retransmission. The retransmitted information is not
`the original coded message, but a block of parity bits
`derived by applying anFEC code to the message. The
`receiver uses these parity bits (which may themselves
`be in error) to correct the block stored in the receiver
`buffer. If error correction is not successful, subsequent
`retransmissions are requested, which may consist of the
`original codeword or another block of error correction
`parity bits. The retransmission format depends on the
`strategy and on the error correction code used. The
`intention of type-II hybrid schemes is to provide the
`standard ARQ under good channel
`efficiency of
`conditions
`while
`obtaining
`the
`performance
`improvement of type-I hybrid schemes under poor
`channel conditions:
`
`2.4 Rate-Adaptive Coding
`In order to cope with diverse system requirements
`and service options, it is very attractive to investigate
`rate-adaptive FEC protocols, in which the code rate is
`adapted to suit prevailing trans..mission conditions'f.
`Such
`a
`technique
`is
`applicable
`to
`satellite
`communication
`systems, where
`adaptive
`signal
`compensation may provide adequate performance
`temporary poor channel conditions (due to
`under
`rainfall, etc) without a permanent bandwidth reduction
`caused
`by
`excessive
`coding
`overhead
`In
`the
`rate-adaptive coding, a high rate code is used under
`good channel conditions to maintain a high information
`
`IPR2018-01474
`Apple Inc. EX1015 Page 6
`
`

`

`BHARGAVA, et aJ : CODING TIiEORY AND APPLICATIONS IN COMMUNICATION SYSTEMS
`
`rate . As the channel condition worsens , the information
`rate is reduced by applying lower rate codes to maintain
`the desired BER performance. It is possible to optimize
`service quality by applying rate-adaptive FEe coding.
`Traditionally, convolutional codes have only been used
`in low code rate applications. However, as data
`transmission rates increase , the need arises for good
`high rate convolutional codes with practical encoding
`and
`decoding
`techniques. High
`rate
`punctured
`convolutional
`codes
`are
`a
`significant
`recent
`development in which the difficulties usually associated
`with decoding high rate
`codes
`are
`significantly
`reduced":". Viterbi or sequential decoding of rate b/v
`punctured convolutional codes is no more complex than
`the decoding of rate l/v codes . In fact, the punctured
`code is obtained in a straightforward manner from a
`'parent' rate l/v code, while a Viterbi or sequential
`decoder for the latter code can be easily modified to
`decode the punctured code . This property makes
`punctured convolutional codes attractive for
`rate(cid:173)
`adaptive
`applications-a
`single
`decoder
`can
`accommodate the entire family of punctured codes
`arising from a single parent code.
`Among the class of block codes , maximum distance
`separable (MDS) codes are particularly well suited to
`rate-adaptaive coding techniques. An (n , k) code for
`which the minimum distance equals n-k+ 1 is called a
`MDS code. MDS codes are optimal in the sense that
`no (n, k) code has minimum Hamming distance
`exceeding n-k+ 1. The MDS codes most often
`encountered in practice are RS codes. RS codes are
`attractive not only because of the ease with which they
`can be decoded using Berlekamp's decoding algorithm,
`
`but also because they feature a wide variety of possible
`code rates and block lengths. Rate adaptivity arises in
`the following manner. A low rate parent RS code can
`be broken down into several high rate subcodes, in
`much the same way that a parent convolutional code
`yields high rate punctured codes . The subcodes are
`themselves linear block codes having the MDS property.
`With appropriate modifications,
`the decoder for the
`parent code can also be used to decode the subcodes.
`Thus a single decoder may be used in a rate adaptive
`system where the transmitter employs the subcode most
`suitable for the current channel state.
`
`3. CODING APPLICAnONS
`
`3.1 Comparison of Block and Convolutional Codes
`
`The comparison of block and convolutional codes
`presented here is applicable to an AWGN channel. For
`channels with memory such as a mobile fading channel,
`the benefits of coding are even more spectacular.
`The comparison is based on an uncoded binary PSK
`system employing coherent detection. The information
`rate of the coded systems under comparison is assumed
`to be fixed. The coded systems require more frequency
`bandwidth . Table 1 has been adopted from": Two bit
`error rates considered here are 10.5 and 10-8
`• The column
`labelled 'data rate capability'
`is taken to be the
`following: low « 10 kbps) , moderate (10 kbps to 1
`Mbps), high (1 to 20 Mbps) and very high (>20 Mbps).
`
`At moderate and high data rates, convolutional
`coding with Viterbi decoding appears ' v be the most
`attractive coding technique . This assumes that there is
`
`Table I : Comparboo of major coding techniques on an AWGN channel
`
`Coding technique
`
`Coding gain
`at IO-s
`(dB)
`
`Coding gain Data rate
`at 10-"
`capability
`(dB)
`
`Concatenated (RS and Viterbi)
`
`Sequential decoding (soft decision)
`
`Block codes (soft decision)
`
`Concatenated (RS and short block)
`
`Viterbi decoding (hard decision )
`
`Sequential decoding (hard decision)
`
`Block codes (hard decis ion)
`
`Block codes (threshold decoding)
`
`Convolutional codes (threshold decoding
`
`6.6-7.5
`
`6.0-7 .0
`
`5.0-6.0
`
`4.5-5.5
`
`4.0-5 .5
`
`4.0-5.0
`
`3.~ .0
`
`2 .~.0
`
`1.5-3.0
`
`8.5-9.5
`
`8.0-9.0
`
`6.5-7.5
`
`6.5-7.5
`
`5.0-6.5
`
`6.0-7.0
`
`4.5-5.5
`
`3.5-5.5
`
`2.5-4.0
`
`Moderate
`
`Moder ate
`
`Moderate
`
`Very high
`
`High
`
`High
`
`High
`
`High
`
`Very high
`
`65
`
`IPR2018-01474
`Apple Inc. EX1015 Page 7
`
`

`

`DEF SCI J, VOL 43, NO.1, JANUARY 1993
`
`no appreciable interference other than Gaussian noise,
`that a decoded bit error rate of 10-5 is satisfactory, and
`that long continuous bit streams are transmitted. As
`mentioned previously, one advantage of the Viterbi
`algorithm over algebraic block decoding algorithms is
`its ability to make use of soft-decision information.
`However, if efficient algorithms for decoding long block
`codes with soft decisions are developed,
`they will
`undoubtedly be quite competitive.
`At very high data rates, concatenated RS and short
`block code systems can provide roughly the same gain
`with less complexity than Viterbi decoding. For larger
`coding gains at high speeds, sequential decoding with
`hard decisions appears to be the most attractive choice.
`At moderate data rates a better case can be made for
`using sequential decoding with soft decisions. However,
`in situations where the system protocols require the
`transmission of blocks of data (such as TDMA), block
`codes appear to be more attractive.
`In many applications, concatenated coding" offers
`a substantial coding gain. Decoding errors typically
`manifest
`themselves as burst errors at
`the decoder
`output. These types of bursts can be corrected by
`superimposing an outer burst-error-correcting code,
`usually a RS code.
`The effect of using the two decoders, each combating
`a specific type of error, results in significant coding gain
`improvement. The inner decoder reduces poor quality
`data to medium quality data and the outer decoder
`reduces medium quality data to very good quality data.
`Long codes are often desirable for good error control
`regardless of channel characteristics, and concetenation
`is a practical way of creating efficient long codes.
`
`Another important factor to be taken into account
`is the hardware complexity of the error control coding
`system. For high- speed transmission systems, selection
`of the coding scheme is severely restricted by the scarcity
`of high-speed FEC decoders. Some typical error control
`coding techniques and associated decoder complexities
`are listed in Table 2.
`In practice, the selection of a coding scheme greatly
`depends on the data rate, the channel conditions, and
`implementation complexity. For example, block codes
`are better suited to applications requiring high data
`rates. A convolutional decoder would fail to keep up.
`However, for predominantly Gaussian channels,
`the
`convolutional codes tend to outperform most short
`block codes of
`interest. Most of
`the
`previous
`applications of FEC coding to digital communications
`involve convolutional codes. This is mainly because of
`technological difficulties of implementing decoders for
`powerful block codes. With recent developments in
`VLSI
`technology,
`the situation has changed. New
`technology and a demand for integrated packetised
`data/voice communications have made sophisticated
`block coding schemes increasingly attractive from an
`economic viewpoint.
`
`3.2 Applications to Satellite Communications.
`Two of the most
`treasured resources in satellite
`communications are power and bandwidth. Conserving
`these resources has been a major concern ever since
`information transmission via satellite became a reality.
`Error control coding often used to improve the
`transmission quality, which is otherwise compromised
`by interference and power limitations. Furthermore,
`because
`of
`the
`considerable
`propagation
`delay
`
`Table 2. Comlexity of typical error control coding techniques
`
`Type of error
`
`Coding technique
`
`Decoder complexity
`
`Convolutional codes with threshold decoding
`
`Low
`
`BCHcodes
`
`Random
`
`onvolutional codes with Viterbi decoding
`
`Convolutional codes with sequential decoding
`
`Burst
`
`Voncatenated (RS and Viterbi)
`
`ARQ with error detection only
`
`Fire codes
`
`Reed-Solomon codes
`
`Doubly codes Reed-Solomon codes
`Concatenated (RS and Viterbi) with interleaving
`
`High
`
`Low
`
`High
`
`66
`
`IPR2018-01474
`Apple Inc. EX1015 Page 8
`
`

`

`BHARGAVA. et aJ : CODING TIiEORY AND APPLICAnONS IN COMMUNICATION SYSTEMS
`
`in geostationary satellite links, FEC
`(250-300 ms)
`techniques tends to be more widely used than ARQ
`techniques, which require data retransmission.
`satellite
`One of
`the
`remarkable
`features of
`communication systems
`is
`that bit
`errors occurs
`randomly, which is considered to be a significant
`advantage when applying FEC codes. A recent trend
`in digital satellite communication systems is to employ
`powerful FEC codes with large coding gains, making
`efficient use of limited satellite resources'", Since the
`usable frequency bands are severely limited, it is also
`desirable to apply high rate FEC codes.
`In satellite communication systems, convolutional
`codes with constraint length 7 are widely used. Block
`codes are also applied in some satellite systems .
`Examples of using block codes include a (31, 15) RS
`code for
`the joint
`tactical
`information distribution
`system (mDS), a (127, 112) BeH code for
`the
`INTELSAT V system, and a (7, 2) RS code for the air
`force
`satellite
`communications
`(AFSATCOM)
`wideband channels.
`Heavy signal attenuation is occasionally experienced
`in satellite channels due to

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket