An integrated error correction and detection system for digital audio broadcasting

Share Embed Donate


Short Description

Download An integrated error correction and detection system for digital audio broadcasting...

Description

68

IEEE TRANSACTIONS ON BROADCASTING, VOL. 46, NO. 1, MARCH 2000

An Integrated Error Correction and Detection System for Digital Audio Broadcasting Brian Chen and Carl-Erik W. Sundberg

Abstract—Hybrid in-band on-channel digital audio broadcasting systems deliver digital audio signals in such a way that is backward compatible with existing analog FM transmission. We present a channel error correction and detection system that is well-suited for use with audio source coders, such as the so-called perceptual audio coder (PAC), that have error concealment/mitigation capabilities. Such error mitigation is quite beneficial for high quality audio signals. The proposed system involves an outer cyclic redundancy check (CRC) code that is concatenated with an inner convolutional code. The outer CRC code is used for error detection, providing flags to trigger the error mitigation routines of the audio decoder. The inner convolutional code consists of so-called complementary punctured-pair convolutional codes, which are specifically tailored to combat the unique adjacent channel interference characteristics of the FM band. We introduce a novel decoding method based on the so-called list Viterbi algorithm (LVA). This LVA-based decoding method, which may be viewed as a type of joint or integrated error correction and detection, exploits the concatenated structure of the channel code to provide enhanced decoding performance relative to decoding methods based on the conventional Viterbi algorithm (VA). We also present results of informal listening tests and other simulations on the Gaussian channel. These results include the preferred length of the outer CRC code for 96-kb/s audio coding and demonstrate that LVA-based decoding can significantly reduce the error flag rate relative to conventional VA-based decoding, resulting in dramatically improved decoded audio quality. Finally, we propose a number of methods for screening undetected errors in the audio domain. Index Terms—DAB, IBOC, hybrid IBOC, digital audio coding, PAC, channel coding, list Viterbi algorithm, error concealment.

I. INTRODUCTION

S

YSTEMS for digital audio broadcasting (DAB) of CD-quality stereo audio are being proposed and evaluated for the FM band [1]–[10],[26]. The strategy is to first introduce hybrid in-band on-channel, (HIBOC), systems, where the digital broadcast co-exists with the analog FM broadcast. This phase is a transition to a fully digital system with no remaining analog FM in the current FM band. In this paper we discuss one particular aspect of such systems, namely forward error correction matched to an audio compression algorithm using error concealment. In particular, we use a convolutional code concatenated with an error detecting block code. When such a concatenation structure exists, one can obtain improved decoding performance for DAB using list decoding algorithms rather than conventional Viterbi algorithms. Manuscript received August 26, 1999; revised March 8, 2000. The authors are with the Multimedia Communications Research Laboratory, Bell Labs, Lucent Technologies, 600 Mountain Avenue, Murray Hill, NJ 07974. Publisher Item Identifier S 0018-9316(00)04404-8.

In [1], a number of convolutional codes with Viterbi decoding [11], [12] are proposed and evaluated for new generation DAB systems with both equal error protection and unequal error protection [9], [13]–[16]. An outer cyclic redundancy check (CRC) block code detects or “flags” errors to allow error concealment and mitigation by the audio source decoder. The inner convolutional code allows efficient soft decision decoding and soft combining of two sidebands, which could not be done with some previously proposed DAB systems using Reed-Solomon codes [3], [4], [9], [11]. Although undetected errors may still cause significant distortion in the decoded audio, these undetected error events are quite rare with a properly designed CRC. On the other hand, detectable error events, which typically lead to only small and insignificant error-mitigation distortion, are more common. Thus, at the edge of coverage regions, the probability of error-mitigation events, i.e., the error-flag rate, determines the overall system performance. As we discuss in this paper, the list Viterbi algorithm (LVA) allows considerable improvement in this error-flag rate over the conventional Viterbi algorithm (VA), especially for flag rates consistent with high quality audio. Although with the appropriate choice of path metric (usually correlation or squared Euclidean distance), the conventional VA, which finds the sequence through a trellis with the best path metric [11], is the maximum likelihood (ML) sequence detector for (unconcatenated) convolutional codes, it is not the ML decoder for convolutional codes that have been concatenated with an outer CRC code due to the interdependence of bits in the CRC codewords. As we show in [17], the LVA [18], [19], which sequences through the trellis finds the ordered list of the with the best path metrics, can be used to implement the ML decoder for these concatenated codes. (A similar concatenation structure also arises in digital cellular TDMA systems like GSM and IS-136, although the CRC is applied only to certain speech bits. The LVA can also decode turbo codes [20], [21], which may be viewed as a concatenation of two convolutional case is, of course, the conventional VA. The codes.) The length of these sequences may be set equal to, for example, one CRC block, and the CRC decoder is used to select a path from the list that corresponds to a valid CRC codeword. One can combine error correction with the error detection required for the error mitigation described above by using a short list length and generating an error flag if no paths on the list correspond to CRC codewords. Several algorithms exist for producing the best sequences through terminated trellises, which arise in block-by-block transmission. (See [18], [19] and references therein.) These algorithms require known starting and ending states. However,

0018–9316/00$10.00 © 2000 IEEE

CHEN AND SUNDBERG: AN INTEGRATED ERROR CORRECTION AND DETECTION SYSTEM

the termination requires a tail [11], [12], thus leading to an overhead. A new family of LVA’s for continuous transmission, i.e., transmission without termination tails, has also been developed [17] and eliminates this overhead. In this paper we evaluate the suitability of the CRC and the LVA for digital audio broadcasting and describe results of informal listening tests using a 96-kb/s audio coding PAC algorithm [8]. We empirically characterize trade-offs among the CRC code rate, error-flag rate, double flag rate (error flags in two consecutive audio frames), and undetected block error rate, which all affect decoded audio quality. We also report results of proof-of-concept demonstrations of the LVA for additive white Gaussian noise channels. (These simulation results can also be used to predict relative performance for fully-interleaved Rayleigh fading and Ricean channels.) Our simulations demonstrate that the difference in decoded audio quality resulting from the LVA and conventional VA can be quite dramatic, reducing the error-flag rate in some cases by a factor of 25 (The reduction in double flag rate is even higher.), thus changing system performance from a case of point-of-failure with the conventional VA to an almost error-free case with the LVA. In Section II we give a brief description of the error detection and correction codes for the hybrid in-band on-channel FM systems considered in this paper. In Section III we describe how the LVA can be used for enhanced error detection and correction decoding. These decoding algorithms apply to both terminated and unterminated convolutional codes, the latter case requiring no terminating tail for each CRC block (continuous transmission). Section IV describes the results of simulations for evaluating the CRC and comparing LVA-based decoding to conventional VA-based decoding. In Section V we introduce methods for screening undetected errors. The paper ends with a discussion and conclusion section. II. CODES FOR HYBRID IN-BAND ON-CHANNEL FM DAB SYSTEMS As one can see from the system block diagram in Fig. 1, the channel code of the proposed DAB system consists of the concatenation of an outer CRC code and an inner convolutional code. The outer CRC code provides a mechanism for flagging or detecting errors so that the error mitigation capabilities of the PAC audio decoder may be exploited. The inner convolutional code provides soft-decision error correction capabilities. As discussed below, this inner convolutional code consists of two so-called complementary codes, which are specially designed to combat the unique adjacent channel interference characteristics that are inherent to FM DAB. Finally, the LVA module shown in Fig. 1 exploits the concatenated coding structure to provide enhanced joint error correction and error detection capabilities. The outer CRC and inner convolutional codes are described in more detail in the rest of this section. The LVA is the topic of Section III. A. CRC Error Detecting Codes Cyclic redundancy check (CRC) codes are a class of wellknown linear block codes that can be used for both error correction and error detection [11]. Such codes are defined by their

69

Fig. 1. FM DAB system block diagram. The channel coder consists of an outer CRC code for error detection and an inner convolutional code for error correction. The CRC exploits the error mitigation capabilities of the PAC audio decoder, and the LVA exploits the concatenated structure of the channel code.

generator polynomials, and the generator polynomials corresponding to several CRC codes of various block sizes are shown in Table I. are both inThe columns in Table I marked and dicators of the error detection capability of the corresponding CRC code. The minimum distance of these codes is so each CRC code is guaranteed to detect any error pattern with or less errors. However, most error patterns with more than errors are also detectable. In fact, the only undetectable error patterns are those that are CRC codewords. The fraction of error patterns that are undetectable is therefore approximately The overhead is expressed as a percentage of The CRC codes in the top part of Table I have roughly 6% overhead, while those in the bottom part have roughly 3–4% overhead. One can see that as a general rule CRC’s with longer block sizes have better error detection capability for a given percent overhead. However, from an audio decoding perspective, one prefers shorter CRC block lengths since shorter CRC blocks reduce the number of audio frames for which error mitigation is required, as discussed in Section IV. Thus, a trade-off is involved in selecting the CRC block length, and in Section IV we report simulation results for choosing this block length. B. Complementary Punctured-Pair Convolutional Codes Traditional channel coding methods that have been developed for either white noise channels or channels with a known, fixed interference power spectrum are not well-suited for the interference environment in the normally crowded FM band. Fig. 2 shows a configuration where the digital audio information is transmitted on two sidebands, one on each side of the analog host by means of a multicarrier modem (orthogonal frequency division multiplexing, OFDM). In the interference environment of the FM band, the so-called adjacent channel interference facing some receivers may completely wipe out (erase) one sideband, while other receivers may lose the other sideband. Thus, one would like to be able to recover all the digital audio information even

70

IEEE TRANSACTIONS ON BROADCASTING, VOL. 46, NO. 1, MARCH 2000

TABLE I CRC CODES OF VARIOUS BLOCK SIZES. THE NUMBER OF CODE BITS IN EACH BLOCK IS n; AND k IS THE NUMBER OF INFORMATION BITS. OVERHEAD IS EXPRESSED AS A PERCENTAGE OF k

Fig. 2. Power spectra of FM HIBOC systems. The digital audio signal is transmitted on each side of the analog host using a multicarrier modem. The regions A, B, and C have different interference susceptibility. Region A is more sensitive to interference than B. Region C is used optionally.

when either sideband is erased. On the other hand, if neither sideband is erased, one would like to exploit this advantage by, for example, being able to receive the digital audio signal farther away from the transmitter, thus extending coverage area. Furthermore, even when sidebands are not completely lost, carriers within a sideband are exposed to differing levels of interference. For example, the carriers in areas B of the HIBOC OFDM power spectrum in Fig. 2 are deemed to be more robust to interference. Areas A are always used, but are deemed to be more sensitive to adjacent channel interference. Areas C could optionally be used in a so-called extended bandwidth mode, yielding a potential increase in channel coding capability. Potentially, the transmission in areas C can take place with precancellation techniques [22], [23], where the self-interference from the analog host FM signal is cancelled. The bandwidth of areas A + B is for example about 70 kHz. One class of channel codes for dealing with these interference characteristics is the class of so-called complementary punctured-pair convolutional (CPPC) codes [1]. Two convolutional codes, called half-bandwidth codes, are designed by puncturing [11]–[13] a mother code. One code is transmitted on one sideband, and the other code, called its complementary code, is transmitted on the other sideband. The two codes are complementary in the sense that they combine to form a single code, called the full-bandwidth code whose rate is half the rate of the half-bandwidth codes. This process of puncturing is a well-known technique [11]–[13] for generating good high rate convolutional codes from low rate codes, as illustrated in Fig. 3, where a rate-2/5 code is generated from a rate-1/3 code. The resulting high rate code can be decoded using the same basic Viterbi algorithm that is used to decode the mother code. In the example of Fig. 3, two out of every twelve code bits from the rate-1/3 code are selectively dropped (punctured), thus creating a code of rate 2/5. (For every four information bits, there are ten code bits.) The puncturing pattern shown in Fig. 3 contains a “1” for each bit that is kept and a “0” for each bit that is punctured. In conventional punctured code design, the puncturing pattern is optimized to create only one best high rate code. Kroeger et al.proposed constructing complementary pairs of codes by puncturing a particular convolutional “mother” code [10],[26]. A low rate mother code is first punctured to the full rate (full bandwidth) code used for both sidebands. This code is then punctured to twice its original rate, forming the first code of

Fig. 3. Convolutional code puncturing. A rate-1/3, memory M = 6 mother code is punctured with a puncturing period of 4, indicating that the same puncturing pattern is repeated every 4 input bits. The output code rate is 2/5. In this paper we have applied the list Viterbi algorithm to a hybrid IBOC system such as the one described in this section. However, the LVA is also applicable to other arrangements such as different channel coding, modem and audio coder choices.

the complementary pair. The punctured bits form the second code of the pair. The class of codes constructed in this way are called complementary punctured-pair convolutional codes. In their work, however, Kroeger et al. do not search for good codes within this class, i.e., they do not optimize the puncturing pattern. They also put unnecessary constraints on the class by only using a particular mother code. In [1] we give good CPPC codes for a variety of scenarios that arise in HIBOC DAB using a widest possible search space. These scenarios include equal error protection, unequal error protection, extended bandwidth mode, and transmission with variety of compatibility constraints. We easily arrive at better schemes than classic code combining [11], and we do not need to require conditions for so-called equivalent codes [24], which are a special subclass of complementary codes. We also demonstrate that codes that are both CPPC codes and rate-compatible (described below) punctured convolutional (RCPC) codes [13]–[15] can be used for unequal error protection in this setting. These RCPC codes can be time-multiplexed and decoded by the same decoder without intermediate termination bits (tails) [13]–[15]. The use of unequal error protection codes [9] further improves the capability of the channel codes, yielding extended coverage areas. Finally, we also show in [1] how puncturing can be used to intelligently assign channel code bits to carriers to handle the nonuniform interference within sidebands, leading to further code optimizations [1].

CHEN AND SUNDBERG: AN INTEGRATED ERROR CORRECTION AND DETECTION SYSTEM

III. LIST VITERBI ALGORITHM FOR ERROR DETECTION AND CORRECTION When developing a decoder for the concatenated encoder described in Section II, it is natural to consider the following twostage decoding strategy: 1. First, decode the inner convolutional code using a conventional Viterbi algorithm (VA) [11], which finds a sequence through a trellis with the best path metric. With the appropriate choice of path metric, usually correlation or squared Euclidean distance, the VA is the maximum likelihood (ML) decoder for (unconcatenated) convolutional codes. 2. Use conventional CRC error detection [11] to detect errors in each CRC block of the decoded VA output sequence. If no error is present in a CRC block, send the block to the audio decoder. Otherwise, send an error flag to trigger error mitigation. However, this strategy does not fully exploit the concatenated structure of the encoder. In particular, the only possible input sequences to the convolutional encoder are valid CRC codewords, and due to the interdependency among CRC codeword bits, the VA is not the ML decoder in the concatenated case. It is shown in [17] that the ML decoder in this case can be implemented using the so-called list Viterbi algorithm (LVA) [18] with a sufficiently long list size. The LVA finds the ordered list of the sequences case through the trellis with the best path metrics, the being the conventional Viterbi algorithm. Both parallel and serial implementations of the LVA are described in [18]. The parallel LVA finds all sequences simultaneously, while the serial LVA determines the sequences sequentially. The serial LVA is more computationally efficient since the algorithm can be terminated before determining all sequences, i.e., it has an adaptive list size. Alternative algorithms are described in [19] and references in [18] and [19]. With short list lengths one can use the following decoding strategy on each CRC block for enhanced error correction and detection: 1. 2. Use the LVA to determine the sequence with the th best path metric. 3. Use conventional CRC error detection [11] to detect errors in the th LVA output sequence. If no error is present, send the CRC block to the audio decoder and return to Step 1 to decode the next CRC block. If an error is present, return to Step 2. Otherwise, send increment If an error flag for this CRC block and return to Step 1 to decode the next CRC block. With the parallel LVA, all sequences are determined at once in Step 2 before any CRC error detection is performed. With the serial LVA, only the th sequence is determined. Thus, if this sequence is an error-free CRC codeword, then no computation will be wasted in determining subsequent sequences on the list. As long as the list length is long enough so that at least one of the sequences on the list is a valid CRC codeword, this algorithm produces the ML sequence as the decoded CRC block [17]. Otherwise, an error flag is produced.

71

We see that in contrast to the VA-based decoding method, where an error correction decoding stage is followed by an error detection stage, in this LVA-based decoding strategy the CRC error detector is employed in conjunction with the LVA for decoding of the inner convolutional code. Thus, error correction and detection are performed jointly. Not only does this integrated decoding strategy have a theoretical basis [17], but also the simulation results of Section IV demonstrate empirically a resulting decoding performance enhancement as well. The LVA’s in [18], [19], and references therein are for block-by-block transmission, i.e., these algorithms make use of a known starting and ending state, and thus, each CRC block must be terminated with a tail, as shown in Fig. 4. Although the encoder is in a known state at the start and end of each block, this tail leads to an overhead compared to continuous transmission, where no tail bits are required. Luckily, however, LVA’s for continuous transmission, which may arise in many broadcasting scenarios, have also been developed recently [17]. These continuous LVA’s work by first estimating the starting and ending states for each block before running the previously developed block-by-block LVA’s. Simulation results in [17] indicate that the obtainable performance of the continuous LVA is almost as good as that obtainable with terminated blocks. For short convolutionally coded messages without the overhead of a terminating tail, so-called tailbiting convolutional codes are an alternative, [25]. In [17] we also extended the LVA to tailbiting convolutional codes.

IV. SIMULATION RESULTS WITH DIGITAL AUDIO SIGNALS To evaluate the CRC outer code and the LVA’s we ran a number of software simulations and informal listening tests using actual audio signals and a 96-kb/s perceptual audio coder (PAC), which has a variable frame size [8], [9]. When the CRC outer code detects an error, a flag is passed to the audio decoder for error mitigation for the VA case, as described in Section III. As is also described in Section III, in the case of LVA-based error correction and detection, the flag is instead sent to the If no alternative is found that satisfies LVA, up to list size the CRC, a flag is passed to the error mitigation algorithm. For simplicity we assume a Gaussian channel. Other system simulation details are described in the tables. A. Performance Measures and Other Parameters Performance was measured using the following parameters: • PAC flag rate: Fraction of PAC frames that are flagged as being at least partially in error, invoking the error mitigation routine. • Pair flag rate: Fraction of consecutive pairs of PAC frames that are flagged as being at least partially in error. • PAC frame erasure rate: Fraction of PAC frames that are flagged as being completely in error (erased). No partial information from these frames is used by the error mitigation routine. • Pair erasure rate: Fraction of consecutive pairs of PAC frames that are erased.

72

IEEE TRANSACTIONS ON BROADCASTING, VOL. 46, NO. 1, MARCH 2000

TABLE II FULL-BANDWIDTH (RATE 2/5) AND HALF-BANDWIDTH (RATE 4/5) CONVOLUTIONAL CODES. THESE CODES ARE AMONG MANY THAT HAVE BEEN PROPOSED FOR DIGITAL AUDIO BROADCASTING Fig. 4. Terminated CRC block. The block consists of the information bits, the parity-check (CRC) bits, and a terminating tail. For a memory-6 code, a tail length of 6 bits is needed. For a block length of 500, this is an overhead of 1.2%.

• Undetected CRC errors: Number of CRC blocks that are declared error free, but in fact contain errors. • CRC block erasure rate: Fraction of CRC blocks that are declared as containing errors. • Decoded BER: Decoded bit error rate at output of VA or LVA. To illustrate the above definitions and how the variable PAC frames (in bits) relate to the fixed length CRC frame we give an example in Fig. 5. In this case 11 CRC frames correspond to 10 PAC frames. The CRC frames numbered 2, 5, 6 and 9 are flagged as containing errors. Thus, the CRC block erasure rate is 4/11. The PAC flag rate is 0.6 (PAC frames 2, 3, 5, 6, 7 and 8). The PAC pair flag rate is being contributed to by pairs (2,3), (5,6), (6,7) and (7,8). Erased PAC frames are 5 and 6. The pair erasure rate gets a contribution from (5,6). The additive white Gaussian noise channel is characterized by the ratio between energy per dimension and noise its power spectral density. This figure is related to more conventional measures by

where is the rate of the code in information bits per dimension (e.g., convolutional code rate for BPSK or QPSK signaling) and is the number of dimensions per symbol (e.g., 1 for BPSK, 2 for QPSK).

failure (PAC Flag Rate i.e., the is chosen so that error-mitigation induced artifacts are clearly audible. E. LVA vs. VA Performance Table VII compares the performance of the terminated list Viterbi algorithm with the performance of the conventional nonwas chosen to push terminated Viterbi algorithm. The either the VA or the LVA to the point of failure. We see that the LVA with a list size of 4 is better than the VA by about 0.8 dB in terms of point of failure. Also, at the point of failure of the VA, the LVA reduces the PAC flag rate by more than an order of magnitude. Listening to these signals shows that LVA has a huge impact. Because simulation results in [17] indicate that continuous LVA’s perform almost as well as terminated LVA’s, we expect similar results for continuous LVA’s. Similarly, Table VIII shows that there is a negligible difference in performance of the conventional Viterbi algorithm between the case when CRC blocks are not terminated and the case when the CRC blocks are terminated. The simulations above should be interpreted with some caution. We do not have statistical significance for the probability of undetected errors. The number of undetected CRC errors needs further work. However, it is clear from the informal listening gives tests that the LVA with even a small list size like considerable improvement.

B. Codes and Audio Signals The CRC codes used in our simulations are shown in Table I. Table II describes the full-bandwidth and half-bandwidth convolutional codes that were used. These codes are among many that have been proposed for digital audio broadcasting [1]. Details about the audio signals are shown in Table III, including their lengths in terms of PAC frames and CRC blocks. Although the frame length of the 96-kb/s perceptual audio coder varies, the average frame length is about 2230 bits, the minimum is about 70 bits, and the maximum is about 6690 bits. C. Effect of CRC Block Length on Performance Table IV shows the effect of CRC block length. In general, longer CRC blocks lead to higher PAC frame erasure rates. Indeed, in informal listening tests more error-mitigation induced artifacts can be heard when the (1 016 976)-CRC is used than when the (248 240)-CRC or (506 488)-CRC is used. D. CPPC Code Performance Tables V and VI show the results of simulations where the full-bandwidth (rate-2/5) and half-bandwidth (rate-4/5) convolutional codes of Table II are pushed to the nominal point of

V. PROPOSED AUDIO-DOMAIN ERROR SCREENING METHODS One can view the LVA-based algorithm of Section III as a joint error correction and detection algorithm that exploits the concatenated structure of the error correction (inner convolutional) and error detection (outer CRC) codes. In particular, the LVA exploits the knowledge at the receiver that all inputs to the convolutional encoder are valid CRC codewords to provide enhanced error correction capability over the VA (See Table VII.). The concatenated structure of the audio coder and channel coder in Fig. 1 suggests that additional gains may be obtainable by exploiting the fact that all inputs to the CRC encoder are source coded audio signals. Because the PAC audio coder is nonideal, its output bits do not form a sequence of independent, identically distributed bits that are equally likely to be 0’s or 1’s. Indeed, it is this residual redundancy that is exploited by the PAC decoder during error mitigation, which may be viewed as a sort of audio-domain error correction. In this section we propose some methods for using this residual redundancy for audio-domain error detection, i.e., for detecting errors that were not detected by the CRC or some other error detection method. We at

CHEN AND SUNDBERG: AN INTEGRATED ERROR CORRECTION AND DETECTION SYSTEM

73

TABLE III AUDIO SIGNALS

TABLE IV EFFECT OF CRC BLOCK LENGTH. THE CONVOLUTIONAL CODE RATE IS 2/5. E =N =

01 0 dB. DECODER IS CONVENTIONAL VITERBI ALGORITHM :

TABLE V FULL-BANDWIDTH RATE 2/5, M = 6 CODE (1111, 1111, 1010) NEAR POINT OF FAILURE (PAC FLAG RATE CONVENTIONAL VITERBI ALGORITHM

 10

TABLE VI HALF-BANDWIDTH RATE 4/5, M = 6 CODE (0110, 1001, 0010) NEAR POINT OF FAILURE (PAC FLAG RATE CONVENTIONAL VITERBI ALGORITHM

times refer to such audio-domain error detection of undetected errors as error “screening” to distinguish it from CRC-based or other “channel-domain” error detection. The algorithms pre-

 10

):

E

):

E

=N

=N

=

01 0 dB. DECODER IS :

= 3:4 dB. DECODER IS

sented in this section are intended mainly to illustrate the concepts involved, and evaluation of these algorithms is left for future work.

74

Fig. 5.

Fig. 6.

IEEE TRANSACTIONS ON BROADCASTING, VOL. 46, NO. 1, MARCH 2000

Illustration of the relationship between variable length PAC frames (in bits) and fixed length CRC frames.

Screening unit for LVA CRC undetected errors.

A. Screening of Undetected CRC Errors List Viterbi algorithms can significantly reduce the flag rate for digital audio broadcasting applications. The “price” is increased complexity and possibly an increased rate of undetected errors. The peak complexity increase with the LVA over the VA is of the order of L for a list size of L. With the serial algorithm, the average increase in the number of paths that need to be exis very tiny, due to the fact that only a plored beyond fraction of CRC blocks need the LVA to begin with. The issue of complexity needs further work. The results in this paper should be viewed as proof of concept rather than final algorithm to use in a practical system. The potential increase in the rate of undetected errors can be alleviated by increasing the number of CRC parity-check bits. However, these extra parity-check bits, which increase the redundancy in the system, lead to a decreased data rate given that the channel bandwidth is fixed. An alternative to introducing more CRC parity-check bits is to exploit the already existing residual redundancy of the audio coder. Fig. 6 illustrates one such method for screening undetected errors. Suppose the LVA decodes a frame in which the CRC does not detect any errors. (One could also, in principle, instead of have used the conventional Viterbi algorithm the LVA for decoding this frame without changing the operation of the error screening unit that we are now describing.) The decoded audio signal corresponding to this frame is denoted and this signal is compared to the error mitigation signal that would have been produced by the audio decoder had none of the sequences decoded by the LVA satisfied the CRC check. The energy of the difference between these two signals is one test statistic that can be used for error screening, i.e., an error is is used in place of if declared and (1) or (2) and can be applied either in where the test thresholds the time or frequency domain and the integration interval is one

audio coder frame. Also, this threshold test can be applied selectively, for example, to reduce computational load or to reduce the incidence of “false alarms,” i.e., false use of One criterion for deciding when to apply the threshold test is to do so only when the LVA is deemed likely to have introduced undecorresponds to a LVA-decoded tected errors, e.g., when sequence that was not the highest on the list. One can also reduce the probability of false alarms, perhaps at the expense of also reducing the probability of error detection, by adjusting the threshold levels to sufficiently “high” levels, which can be established by means of experiment. One could also adapt these thresholds to short term signal statistics, for example, (3) where the overbar refers to short term time averaging of the of consecutive audio frames, error signals over a number can be established by means say 100. Again, the value of of experiment. Thus, is a normalized threshold with a fixed numerical value (again, chosen based on experiment), and the in (3) is signal-adaptive. Another signal-adaptive threshold threshold that is simpler to implement than (3) is (4) which represents a short term energy normalization. As an alternative to (1) and (2), one might desire that the test statistics reflect perceptual properties of the human aural system. For example, one can change (2) to include a frequency that emphasizes certain frequencies weighting function over others: (5) Similarly, one can use a time-domain weighting function to modify (1). Finally, one may desire signal-adaptive weighting functions, as well as signal-adaptive thresholds, to account for pauses in music, for example, during which clicks may be most annoying. Again, experiments used to establish such weighting functions and corresponding thresholds are left for future work. B. Other Channel-Domain Error Detection Methods The audio-domain error screening methods of the previous section can be used in conjunction with other channel-domain error detection methods, for example, when no CRC is used for error detection. A few such channel-domain error detection methods are proposed in this section. Again, we leave evaluation of these algorithms for future work. 1) Path metric difference based detection: The first error detection method, illustrated in Fig. 7, is based on path metric differences. The LVA produces the two sequences with the two best path metrics. For example, if the path metric is Euclidean

CHEN AND SUNDBERG: AN INTEGRATED ERROR CORRECTION AND DETECTION SYSTEM

75

TABLE VII LVA vs. VA. AUDIO SIGNAL IS symph5. THE VA RESULTS HERE ARE FOR CONTINUOUS DECODING

TABLE VIII TERMINATED (L = 1) vs. NON-TERMINATED VA. (248 240)-CRC, RATE-2/5 CONVOLUTIONAL CODE, E

distance, then these two sequences are the closest two convolutional code sequences to the received signal. Since we assume that no outer CRC code exists, the highest sequence on the list, the one with the best path metric, is the decoded estimate of the convolutional code sequence. Since the path metric indicates the likelihood that the corresponding code sequence was the true transmitted sequence, if the path metric of the second highest sequence on the list is close to that of the highest sequence, then the two sequences are nearly equally likely to have been the transmitted sequence, and thus, an error is more likely to have occurred then if the path metrics were farther apart. Thus, one can detect errors by comparing the difference of (normalized and the two path metrics ( PM) to a threshold possibly adjusted for transmission conditions). When PM an error is declared and the error mitigation signal is used as the decoded audio output. (This condition is similar to the the one when an outer CRC detects an error.) If PM from the highest audio decoder decodes the audio signal sequence on the LVA list, unless the optional screening unit and as in Section is triggered. This unit compares instead of if an undetected error is V-A and selects deemed to be present (using for example the techniques above is selected as the output. in (1)–(5). If not, 2) Path metric based error detection: An alternative, path metric based error detection method is shown in Fig. 8. In this case, a conventional Viterbi algorithm (VA) produces one decoded sequence with the best path metric. This path metric, which again indicates the likelihood that the decoded sequence If PM is the correct one, is compared to a threshold an error is declared and error mitigation is triggered. (We assume here without loss of generality that higher path metrics are better.) If the path metric is Euclidean distance or correlation (with signal energy normalization), then this test is equiv-

=N

=

01 0 dB. AUDIO SIGNAL IS symph5 :

Fig. 7. Error detection method based on path metric differences. An LVA with L = 2 produces two sequences. The differences between their path metrics is used as a test statistic for error detection. Audio-domain screening of undetected errors follows.

Fig. 8. Path metric based error detection with audio-domain screening. The path metric of the conventional Viterbi algorithm output is compared to a threshold for error detection. For Euclidean distance or correlation path metrics, this error detection is equivalent to a bounded distance decoding test.

alent to a so-called bounded Euclidean distance (BDD) test. In this case, errors are declared when (6)

76

IEEE TRANSACTIONS ON BROADCASTING, VOL. 46, NO. 1, MARCH 2000

Fig. 9. Audio-domain error detection and screening. Closeness to the error mitigation signal s (t) is used as the criterion for selecting a path from the LVA list. Audio-domain error screening follows.

where and correspond to the received signal and the is the VA estimate of the transmitted signal, respectively, minimum Euclidean distance, and is a small correction term that controls the trade-off between the probability of false alarm and the probability of detection. Increasing leads to greater probabilities of both false alarms and error detections. Finally, and audio-domain error screening follows by comparing as described in Section V-A. 3) Error mitigation based detection: One final error detection method is shown in Fig. 9, where both error detection and screening occur in the audio domain. In this case the LVA produces a list of the sequences with the best path metrics as in Section V-A. However, since no outer CRC code is present, the rather than a CRC check, is used error mitigation signal that minito select a path from this list. Thus, the signal mizes (7) where is the decoded audio is selected as the output signal corresponding to the th sequence on the list. Also, one could use the distances from the two best signals in (7) to in an error detection step that is analogous to the path metric difference method described above, i.e., if both signals are nearly then an error mitigation flag is prothe same distance to is chosen as the decoded audio signal. Finally, duced and the audio-domain screening unit of Section V-A determines if is “too far” from If so, then the minimizing is also chosen as the decoded audio signal. This audio-domain error detection method does not use path metrics and thus, in contrast to the path metric based methods discussed earlier, the connection between error detection and the relative likelihood that the decoded sequence is correct is less direct. However, one might use this ad-hoc method, for example, in scenarios where the path metric is not matched to the channel probability law, such as would be the case if the channel model is uncertain. C. Extensions In the schemes of Figs. 7–9, we assume that there is no CRC code for detecting errors or selecting a sequence from a list.

However, even if there is an outer CRC code, one could still treat the concatenated outer CRC code and inner convolutional code as one overall channel code and employ error detection using the methods of this section, rather than resorting to CRC-based error detection. In this case, the LVA box in Figs. 7 and 9 and the VA box in Fig. 8 are replaced with the ML list decoder for the concatenated CRC and convolutional code described in [17]. The output is a list, where each path on the list satisfies the CRC. In the case of Fig. 8, the output list is of length 1. The “VA” for the concatenated codes is realized with an LVA for the convolutional code (with a “long enough” list size) and a CRC. The “safest” method to keep the probability of undetected errors low is probably the use of a CRC outer code as illustrated in some of the methods in this section. However, even when a CRC is not present, an LVA as well as a screening unit can be employed as shown above. An error mitigation flag can be generated by other means than with a CRC, which is also illustrated above. The preferred scheme is dependent on the particular source signals, source coders, channel codes and channels as well as the level of complexity. A mixture of the techniques above may even be applied. In some systems, (like the GSM system for cellular mobile radio) only a fraction of the source bits are protected by a CRC code, for example. VI. DISCUSSION AND CONCLUSIONS We have demonstrated that the list Viterbi algorithm can significantly improve the quality of received digital audio by considerably reducing the probability of error mitigation flags compared to a conventional Viterbi algorithm. The LVA is an option that can be added to the receiver without changing the transmitter. Thus, the LVA is backward compatible with systems introduced with the conventional VA. The improved flag rate is obtained at the cost of a potential increase in undetected errors as discussed above and at a cost of an increase in algorithm complexity. LVA’s for both terminated and unterminated convolutional codes exist, the latter case involving a so-called continuous decoding LVA (CLVA). In practice there may be hybrid cases where both are needed. Fig. 10 shows such a case, where transmission occurs in superframes consisting of CRC codewords followed by a terminating tail. Thus, over the superframe the are starting state for block 1 and ending state for block a hybrid between terminated LVA known. For blocks 1 and and CLVA can be used. For the remaining blocks, CLVA is used. The above results were obtained for the Gaussian channel. Further detailed experiments are required for other channels. The LVA is expected to yield considerable improvements also for interleaved fading channels [18]. Although we have considered use of a CRC code in many cases, the concept of the LVA is unrelated to CRC codes. For example, if there exists a source-based selection mechanism, the LVA can be operated without a CRC, as indicated in Section V. Sometimes the CRC code can be combined with source coder based error detection for improved performance. Some otherwise undetected errors will be flagged by, e.g., detecting irregularities in the decoder of a Huffman code.

CHEN AND SUNDBERG: AN INTEGRATED ERROR CORRECTION AND DETECTION SYSTEM

Fig. 10.

Superframe of

77

N CRC blocks with terminating tail.

Although our discussions have centered around digital audio applications, the ideas and principles in this paper can also be successfully adopted for image, video, speech coding and other coded communication systems. Also, much of what has been described can in principle be generalized to include concatenated coding systems with other types of outer block codes such as Reed Solomon codes and other inner codes like trellis coded modulation schemes. ACKNOWLEDGMENT Thanks are due to Deepen Sinha and Hui-Ling Lou for software and stimulating technical discussions and to Gerry Monteleone for asking penetrating questions which led to new screening algorithms. REFERENCES [1] B. Chen and C.-E. W. Sundberg, “Complementary punctured-pair convolutional codes for digital audio broadcasting,” IEEE Transactions on Communications, to be published. [2] N. S. Jayant and E. Y. Chen, “Audio compression: Technology and applications,” AT&T Technical Journal, vol. 74, pp. 23–34, Mar./Apr. 1995. [3] J. A. C. Bingham, “In-band digital audio radio: An update on AT&T Amati PAC/DMT solution,” in Proc. International Symposium on Digital Audio Broadcasting, Toronto, Canada, Mar. 1994, pp. 270–277. [4] N. S. Jayant, E. Y. Chen, J. D. Johnston, S. R. Quackenbush, S. M. Dorward, K. Thompson, R. L. Cupo, J.-D. Wang, C.-E. W. Sundberg, and N. Seshadri, “The AT&T in-band adjacent channel system for digital audio broadcasting,” in Proc. International Symposium on Digital Audio Broadcasting, Toronto, Canada, Mar. 1994, Conference Record, pp. 254–267. [5] Second International Symposium on Digital Audio Broadcasting, The Sound of 2000, vol. 1–2, Toronto, Canada, Mar. 1994, Conference Record. [6] C.-E. W. Sundberg, “Digital audio broadcasting in the FM band,” in ISIE ’97, Guimaraes, Portugal, July 1997, Conference Record, pp. SS37–SS41. [7] B. W. Kroeger and A. J. Vigil, “Improved IBOC DAB technology for AM and FM broadcasting,” in NAB Show, Las Vegas, Nevada, Oct. 1996, Conference Record, pp. 1–10. [8] J. D. Johnston, D. Sinha, S. Dorward, and S. R. Quackenbush, “AT&T perceptual audio coding (PAC),” in Audio Engineering Society (AES) Collected Papers on Digital Audio Bit Rate Reduction, N. Gilchrist and C. Grewin, Eds, NY: AES, 1996, pp. 73–82. [9] D. Sinha and C.-E. W. Sundberg, “Unequal error protection (UEP) for perceptual audio coders,” in ICASSP ’99, Phoenix, AZ, Mar. 1999, Conference Record. [10] B. Kroeger and D. Cammarata, “Complementary punctured convolutional codes with application to IBOC DAB,”, Private communication, June 1997. [11] S. Lin and D. J. Costello, Jr., Error Control Coding: Fundamentals and Applications: Prentice-Hall, Inc., 1983. [12] G. C. Clark, Jr. and J. B. Cain, Error-Correction Coding for Digital Communications: Plenum Press, 1981. [13] J. Hagenauer, “Rate-compatible punctured convolutional codes (RCPC codes) and their applications,” IEEE Transactions on Communications, vol. 36, pp. 389–400, Apr. 1988. [14] R. V. Cox, J. Hagenauer, N. Seshadri, and C.-E. W. Sundberg, “Subband speech coding and matched convolutional channel coding for mobile radio channels,” IEEE Transactions on Signal Processing, vol. 39, pp. 1717–1731, Aug. 1991.

[15] J. Hagenauer, N. Seshadri, and C.-E. W. Sundberg, “The performance of rate-compatible punctured convolutional codes for digital mobile radio,” IEEE Transactions on Communications, vol. 38, pp. 966–980, July 1990. [16] Y. Yasuda, K. Kashiki, and Y. Hirata, “High-rate punctured convolutional codes for soft decision viterbi decoding,” IEEE Transactions on Communications, vol. 32, Mar. 1984. [17] B. Chen and C.-E. W. Sundberg, “List Viterbi algorithms for continuous transmission,” IEEE Transactions on Communications, to be published. [18] N. Seshadri and C.-E. W. Sundberg, “List Viterbi decoding algorithms with applications,” IEEE Transactions on Communications, vol. 42, pp. 311–323, Feb./Mar./Apr. 1994. [19] C. Nill and C.-E. W. Sundberg, “List and soft symbol output Viterbi algorithms: Extensions and comparisons,” IEEE Transactions on Communications, vol. 43, Feb./Mar./Apr. 1995. [20] K. R. Narayanan and G. L. Stüber, “Turbo decoding for packet data systems,” in IEEE Global Telecommunications Conference, GLOBECOM ’97, Phoenix, AZ, Nov. 1997, Conference Record, pp. 44–48. [21] J. S. Sadowsky, “A maximum likelihood decoding algorithm for turbo codes,” in IEEE Global Telecommunications Conference, GLOBECOM ’97, Phoenix, AZ, Nov. 1997, Conference Record, pp. 929–933. [22] B. Chen and C.-E. W. Sundberg, “In band on channel digital audio broadcasting by means of contagious band insertion and precancelling techniques,” IEEE Transactions on Communications, to be published. [23] H. C. Papadopoulos and C.-E. W. Sundberg, “Simultaneous broadcasting of analog FM and digital data by means of variable rate digital signaling and precanceling strategies,” IEEE Transactions on Communications, vol. 46, pp. 1233–1242, Sept. 1998. [24] S. Kallel, “Complementary punctured convolutional (CPC) codes and their applications,” IEEE Transactions on Communications, vol. 43, June 1995. [25] R. V. Cox and C.-E. W. Sundberg, “An efficient adaptive circular Viterbi algorithm for decoding generalized tailbiting convolutional codes,” IEEE Transactions on Vehicular Technology, vol. 43, pp. 57–68, Feb. 1994. [26] B. Kroeger and D. Cammarata, “Robust modem and coding techniques for FM hybrid IBOC DAB,”, presented at the NAB Radio Show, New Orleans, September 1997 and IEEE 47th Annual Broadcast Symposium, Washington, DC, September 1997. IEEE Transactions on Broadcasting, vol. 43, no. 4, pp. 412 – 420, Dec. 1997.

Brian Chen was born in Warren, MI, and received the B.S.E. degree from the University of Michigan, Ann Arbor, in 1994, and the S.M. degree from the Massachusetts Institute of Technology (MIT), Cambridge, in 1996, both in electrical engineering. He has submitted his doctoral thesis and will formally receive the Ph.D. degree in electrical engineering and computer science from MIT, Cambridge, in June 2000. Since 1994 he has been with the Department of Electrical Engineering and Computer Science, MIT, Cambridge, where he has held a National Defense Science and Engineering Graduate Fellowship and has served as both a Teaching Assistant and a Research Assistant. During 1996 and 1997, he was also with Lucent Technologies, Bell Laboratories, Murray Hill, NJ, both as a Member of Technical Staff–Level 1 and as a Consultant, developing signal design and channel coding technologies for digital audio broadcasting. His current research interests lie in the broad areas of communications and signal processing, with particular emphasis on information embedding, digital watermarking, and other multimedia communications topics. He has eleven patents pending. He is a member of Eta Kappa Nu, Tau Beta Pi, and IEEE. He has received the University of Michigan Regents-Alumni Scholarship, the William J. Branstrom Freshman Prize, and the Henry Ford II Prize from the University of Michigan.

78

Carl-Erik W. Sundberg (S‘69–M‘75–SM‘81–F‘90) was born in Karlskrona, Sweden on July 7, 1943. He received the M.S.E.E. and Dr.Techn. degrees from the Lund Institute of Technology, University of Lund, Lund, Sweden, in 1966 and 1975, respectively. Currently he is a Distinguished Member of the Technical Staff at Bell Laboratories, Lucent Technologies, Murray Hill, NJ. Before 1976 he held various teaching and research positions at the University of Lund. During 1976, he was with the European Space Research and Technology Centre (ESTEC), Noordwijk, The Netherlands, as an ESA Research Fellow. From 1977 to 1984 he was a Research Professor (Docent) in the Department of Telecommunication Theory, University of Lund, Lund, Sweden. He has held positions as Consulting Scientist at LM Ericsson, SAAB-SCANIA, Sweden, and at Bell Laboratories, Holmdel. His consulting company, SUNCOM, has been involved in studies of error control methods and modulation techniques for the Swedish Defense, a number of private companies and international organizations. His research interests include source coding, channel coding, digital modulation methods, fault-tolerant systems, digital mobile radio systems, spread-spectrum systems, digital satellite communications systems, digital audio broadcasting, and optical communications. He has published over 85 journal papers and contributed over 115 conference papers. He holds over 25 US, Swedish and international patents. Several additional patents are pending. He is coauthor of Digital Phase Modulation, (New York: Plenum, 1986), Topics in Coding Theory, (New York: Springer-Verlag 1989) and Source-Matched Digital Communications (New York: IEEE Press, 1996). Dr. Sundberg has been a member of the IEEE European-African-Middle East Committee (EAMEC) of COMSOC from 1977 to 1984. He is a member of COMSOC Communication Theory Committee. He has also been a member of the Technical Program Committees for the International Symposium on Information Theory, St. Jovite, Canada, October 1983, and for the International Conference on Communications, ICC’84, Amsterdam, The Netherlands, May 1984, for the 5th Tirrenia International Workshop on Digital Communications, Tirrenia, Italy, September 1991 and for the International Telecommunications Symposium, ITS’94, Rio de Janeiro, Brazil, August 1994. He has organized and chaired sessions at a number of international meetings. He has been a member of the International Advisory Committee for ICCS’88, ICCS’90, ICCS’92, ICCS’94, ICCS’96 and ICCS’98 (Singapore). He served as Guest Editor for the IEEE Journal on Selected Areas in Communications in 1988–1989. He is a member of SER (Svenska Elektroingenörers Riksförening) and the Swedish URSI Committee (Svenska Nationalkommittén för Radiovetenskap). In 1986 he and his coauthor received the IEEE Vehicular Technology Society’s Paper of the Year Award and in 1989 he and his coauthors were awarded the Marconi Premium Proc. IEE Best Paper Award. He is a fellow of the IEEE since 1990. He is listed in Marquis Who’s Who in America.

IEEE TRANSACTIONS ON BROADCASTING, VOL. 46, NO. 1, MARCH 2000

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF