Abstract:
A method and apparatus for adaptive, variable bandwidth, high-speed data transmission of a multicarrier signal over digital subscriber lines wherein the initial optimal transmission bandwidth is identified based on initial signal-to-noise ratio (SNR) estimates of the orthogonal carriers of the multicarrier system. Maximum data throughput, or system performance margin, is achieved by assigning the total amount of information, or number of bits, to be transmitted in each multicarrier symbol to particular carriers through an initial bit allocation procedure, which is possibly subject to variable target bit error rates among the carriers. A transmit power mask, of any shape and level, is imposed upon the system by an initial energy allocation procedure that limits the maximum amount of power to be transmitted in each of the several carriers. Lastly, run-time adaptivity is achieved by monitoring the mean-squared-errors (MSE) of the orthogonal carriers, and the transmission bandwidth, as well as the bit allocation within the multicarrier symbol, is caused to change in real-time corresponding to changes in the channel characteristics in order to maintain optimal system performance.

Description:
FIELD OF THE INVENTION 
     The present invention relates to systems for the continuous Transmission and reception of multicarrier, high-speed data signals over Digital Subscriber Lines, and more particularly, to a method and apparatus for accomplishing real-time, adaptive bandwidth optimization, with an arbitrary transmit power mask, of a transmitted multicarrier, high-speed data signal over Digital Subscriber Lines. 
     BACKGROUND OF THE INVENTION 
     A basic multicarrier transmitter and a corresponding multicarrier receiver as known in the prior art are shown in FIG. 1 of the drawing. Transmitter 10 includes a serial-to-parallel converter 14, a multicarrier modulator 16, and a pretransmit processor 18. Receiver 12 includes a post channel processor 20, a multicarrier demodulator 22, and a parallel-to-serial converter 24. The transmitter and receiver are linked by a digital subscriber line (DSL) or other form of communication channel 26. Serial input data at a rate of b total  /T bits per second are grouped by converter 14 into blocks of b total  bits for each multicarrier symbol, with a symbol period of T. The b total  bits in each multicarrier symbol are modulated in modulator 16 by N separate carriers with b i  bits modulated by the i -th  carrier. The preferred embodiment uses an Inverse Fast Fourier Transform (IFFT) during modulation to generate N s  time-domain samples of a transmit signal for each block of b total  bits, where N s  is preferably equal to 2N. The corresponding multicarrier demodulator performs a Fast Fourier Transform (FFT), where b i   bits are recovered from the i -th  carrier. This particular embodiment of multicarrier modulation is known as the Discrete Multitone (DMT) modulation, and, as depicted in FIG. 2, the carriers in a DMT system are spaced 1/T HZ apart across the lower N/T Hz of the frequency band. More detailed discussion of the principles of multicarrier transmission and reception in general is given by J. A. C. Bingham in &#34;Multicarrier Modulation for Data Transmission: An Idea Whose Time Has Come&#34;, IEEE Communications Magazine, Volume 28, Number 5, pp. 5-14, May 1990; and by A. Ruiz et al. in &#34;Discrete Multiple Tone Modulation with Coset Coding for the Spectrally Shaped Channel&#34;, IEEE Transactions on Communications, Volume 40, Number 6, pp. 1012-1029, Jun. 1992. 
     Discrete Multitone Modulation 
     The general structure of a DMT system is illustrated in FIG. 3, where {X 0 ,X 1 , . . . , X N-1  } are the original, complex, input data symbols, {x k  } is the modulated data sequence (before cyclic prefix), {h k  } is the discrete-time channel response, {n k  } is the additive noise sequence, {y k  } is the received sequence (after the removal of cyclic prefix), and {x 0 , x 1 , . . . ,x N-1  } are the decoded, complex data symbols. The p i  &#39;s and p i  *&#39;s in FIG. 3 are known as the modulating and the demodulating vectors, and preferably they are chosen to be orthonormal. Therefore, for a discrete-time system, the following condition should be satisfied: 
     
         p.sub.i  p*.sub.j *=δ.sub.ij,                        (1) 
    
     where   denotes the dot product of two vectors and the &#34;δ-function&#34; is defined as ##EQU1## 
     For the DMT system, the independent modulating and demodulating vectors in FIG. 3 are the IDFT and the DFT vectors, given by the following pair of relationships: ##EQU2## 
     A DMT system with N complex subchannels in the frequency domain requires a DFT size of 2N, and the forced conjugate symmetry in the frequency domain will result in the desired real-valued time domain samples. In the preferred embodiment, IDFT and DFT are implemented with the well known IFFT and FFT algorithms. The cyclic prefix is a discrete-time technique (illustrated in FIG. 4) used to eliminate interblock interference (IBI) in the DMT system. More detailed treatments of the cyclic prefix and other finite block length DMT system implementational issues are given by J. S. Chow et al. in &#34;A Discrete Multitone Transceiver System for HDSL Applications&#34;, IEEE Journal on Selected Areas in Communications, Volume 9, Number 6, pp. 895-908, Aug. 1991; &#34;Equalizer Training Algorithms for Multicarrier Modulation Systems&#34;, 1993 IEEE International Conference on Communications, Geneva, Switzerland, May 1993; and &#34;Method for Equalizing a Multicarrier Signal in a Multicarrier Communication System&#34;, U.S. patent application Ser. No. 07/898,104 filed Jun. 1992, issued on Feb. 8, 1994 as U.S. Pat. No. 5,285,474, and assigned to the assignee of the present invention. 
     FIG. 5a is a block diagram illustrating a communication system including a Central Office Transceiver 27 and a Customer Premises Transceiver linked together by a Duplex Channel 29. Each transceiver includes a transmitter 30 and a receiver 32 that communicates with each other through an operations channel, and each transmitter is linked with a corresponding receiver by a communications channel 34. 
     FIG. 5b is a more detailed block diagram showing the principal operative components of a basic DMT transmitter 30 and a basic DMT receiver 32 connected through a channel 34. Serial input data are grouped into blocks, converted to a parallel form, and appropriately encoded by an encoder 36. Parallel outputs of the encoder are modulated by an IFFT operation at 38 and converted back to a serial data stream by a converter 40. The digital modulated data stream is cyclically prefixed, converted to analog form by a digital-to-analog converter (DAC) 42, low-pass filtered at 44, and passed through a D.C. isolating transformer 46 during pre-transmit processing to produce an analog transmit signal that is the input to the transmission channel 34. 
     At the receiver end, the received analog signal is passed through a D.C. isolating transformer and low-pass filter 48, converted to digital form by an analog-to-digital converter (ADC) 50, time domain pre-equalized by a finite impulse response (FIR) filter 52 to limit the effective memory of the channel, and stripped of the cyclic prefix during post-receive processing in converter 54. The resulting digital signals are demodulated by an FFT operation 56 and converted to parallel frequency domain signals. Since the amplitude vs. frequency and the delay vs. frequency responses of the channel are not necessarily constant across the entire used frequency band, the received signal will differ from the transmitted signal, and the parallel inputs to the decoder 58 will differ from those parallel outputs from the encoder 36. A simple form of equalization used to compensate these differences is a frequency domain equalizer (FEQ), which individually adjusts for the attenuation and delay of each of the carriers immediately before the parallel frequency domain signals are passed to the decoder. A one-tap FEQ and decision element is depicted in FIG. 6. Lastly, the frequency domain equalized signals are appropriately decoded and converted back to a serial form by the decoder. Ideally, the detected output serial data from the decoder 58 will be identical to the input serial data to the encoder 36. 
     Bandwidth Optimization 
     Due to the dispersive nature of twisted copper pairs, severe channel attenuation as well as intersymbol interference (ISI) are unavoidable in Digital Subscriber Line (DSL) applications. To mitigate the effects of ISI, some sophisticated form of equalization is necessary. Furthermore, the DSL environment consists of a wide variety of loop configurations; as a result, the optimal transmission bandwidth of one particular line may be grossly mismatched to that of another line. To insure best performance, it is then necessary to optimize the transmission bandwidth on a line-by-line basis. 
     In a conventional single-carrier digital transmission system, such as a Quadrature Amplitude Modulation (QAM) system, implemented with an equalizer or a precoder, the transmission bandwidth is determined by the symbol rate and the carrier frequency of the system. Unfortunately, variable symbol rate, single-carrier systems are still impractical to implement from a complexity standpoint with today&#39;s technology, and even if they are implemented, the granularity of possible symbol rates are typically very coarse. This is a direct consequence of the fact that for a fixed data rate, the symbol rate can only change in discrete multiples of b symbol  /(b symbol  ±1), where b symbol  is the number of bits transmitted by each data symbol, provided that only signal constellations with integer numbers of bits are used. 
     Multicarrier modulation, however, offers much more flexibility in terms of granularity because it acts on block symbols that consist of a much larger number of bits per symbol over a large number of carriers. Since different numbers of bits can be transmitted through the different carriers (subchannels), the multicarrier transceiver has complete control of the transmission bandwidth usage. As a result, more data will be transmitted through the better carriers and less data will be transmitted through the worse carriers. (See FIG. 7.) In this manner optimal performance can be achieved, in terms of either maximizing total data throughput for a fixed system performance margin or maximizing overall system performance margin for a fixed target data rate, under a fixed aggregate input power constraint and target bit-error-rate. 
     The maximum number of bits, b i , in a 2-dimensional data symbol (see FIG. 8) that can be supported by the i -th  carrier with Signal-to-Noise Ratio (SNR) equal to SNR(i) at a bit-error-rate of P e , a system performance margin of γ margin , and a total effective coding gain of γ eff  is approximately given by the following &#34;gap approximation&#34;, which is well known in communication theory (See for example, G. D. Forney, Jr. et al, &#34;Combined Equalization and Coding Using Precoding&#34;, IEEE Communications Magazine, Volume 29, Number 12, pp. 25-34, Dec. 1991): ##EQU3## The &#34;SNR gap&#34;, Γ, in Equation (5) is defined by: ##EQU4## where the Q-function is defined by: ##EQU5## so Q -1  (y) is the value of x that satisfies the relationship y=Q(x), and N e  is the number of nearest neighbors in the input signal constellation. For a bit-error-rate of 10 -7  which is common in DSL applications, the &#34;gap approximation&#34; reduces to the following: ##EQU6## Equation (8) will be referred to extensively in the Detailed Description of the Preferred Embodiment of the present application. 
     BRIEF DESCRIPTION OF THE PRIOR ART 
     Various bandwidth optimization techniques for multicarrier modulation have been proposed for different applications. 
     Water-Pouring Energy Distribution in The Frequency Domain 
     The theoretical optimal, or capacity achieving, energy allocation is the well known water-pouring energy distribution. Conceptually, the water-pouring energy distribution is obtained by first inverting the channel SNR curve (FIG. 7) in the frequency domain and then pouring the available energy into the resulting curve. The final &#34;water level&#34; at each particular frequency, or carrier, is the optimal amount of energy to use at that particular frequency, or carrier. The number of bits transmitted by each carrier is then determined by the maximum number of bits that can be supported by each carrier, given the water-pouring energy distribution and the desired bit-error-rate of each carrier. A more detailed discussion of the water-pouring technique is given by R. G. Gallager in the book entitled Information Theory and Reliable Communication, Wiley, New York, N.Y., 1968. While the water-pouring technique will yield the optimal bit and energy allocations, therefore the optimal transmission bandwidth, it is typically impractical to implement from a complexity standpoint, especially for DSL applications where impairments, such as severe crosstalk noise, are input power dependent. Furthermore, the water-pouring technique requires a complicated transmit filter for a single-carrier system that is often impractical to implement, and it requires infinite granularity in constellation sizes in a multicarrier system that is difficult to implement. 
     Hughes-Hartogs Algorithm 
     A multicarrier bandwidth optimization technique designed for voice-band modem applications, where only constellations with an integer number of bits are used, was invented by D. Hughes-Hartogs and described in &#34;Ensemble Modem Structure for Imperfect Transmission Media&#34;, U.S. Pat. Nos. 4,679,227 (Jul. 1987), 4,731,816 (Mar. 1988), and 4,833,706 (May 1989). The basic idea behind Hughes-Hartogs&#39; algorithm is to incrementally add, one bit at a time, the amount of data to be transmitted in each multicarrier symbol until the desired data rate or power constraint is satisfied. Furthermore, this algorithm will always choose the carrier, or subchannel, that requires the least amount of incremental power to support an additional bit at the given desired bit-error-rate. Hughes Hartogs&#39; algorithm, however, is typically too slow in convergence, making it especially unsuitable for DSL applications where the number of carriers and the number of bits to be supported by each multicarrier symbol are both typically much larger than those employed for voice-band modem applications. Also, the channel response, or channel SNR, is assumed to be fixed, i.e., time-invariant after training, in this particular algorithm. 
     All previous multicarrier bandwidth optimization techniques are performed exclusively during system initialization, when the optimal bit and energy allocations, under a certain set of chosen criteria, are determined. Should the channel characteristics change over time, the line will be dropped, and a redial is necessary to update the system transmission bandwidth to fit new channel characteristics. 
     SUMMARY OF THE INVENTION 
     For a practical implementation of a multicarrier communication system for continuous, high-speed data transmission over Digital Subscriber Lines, it is desirable to optimize the performance of the system on a line-by-line basis, subject to a possible constraint on the transmit power spectrum. Accordingly, a principal objective of the present invention is to provide a method and apparatus for calculating the optimal transmission bandwidth during on-line system initialization, subject to an arbitrary transmit power mask and/or variable target bit error rates among the subchannels. 
     Another objective of the present invention is to provide a method and apparatus that is also real-time adaptive during normal system operation, with continuous data transmission, to compensate for changes in transmission medium characteristics. 
     In accordance with a presently preferred embodiment of the present invention, the initial optimal transmission bandwidth is identified based on initial signal-to-noise ratio (SNR) estimates of the orthogonal carriers of the multicarrier system. Maximum data throughput, or system performance margin, is achieved by assigning the total amount of information, or number of bits, to be transmitted in each multicarrier symbol to particular carriers through an initial bit allocation procedure, which is possibly subject to variable target bit error rates among the carriers. A transmit power mask, of any shape and level, is imposed upon the system by an initial energy allocation procedure that limits the maximum amount of power to be transmitted in each of the several carriers. Lastly, runtime adaptivity is achieved by monitoring the mean-squared-errors (MSE) of the orthogonal carriers, and the transmission bandwidth, as well as the bit allocation within the multicarrier symbol, is caused to change in real-time corresponding to changes in the channel characteristics in order to maintain optimal system performance. 
     The present invention has the advantage of not only obtaining an optimal transmission bandwidth, in terms of optimal bit and energy allocations for the carriers during startup, employing a novel technique; but the optimal bit allocation, therefore the transmission bandwidth, is also adaptive during normal, continuous mode of data transmission, in order to maintain optimal performance in the event that the characteristics of the transmission medium is time varying. The concept of using a continuously adaptive transmitter in combination with a continuously adaptive receiver, for quasi-stationary, time-varying transmission channels is believed to be novel. Furthermore, while the present invention is targeted specifically for DSL applications, it can also be used for the transmission of digital multicarrier signals over other transmission environments, such as coaxial cable, optical fiber, and wireless environments, with minor modifications, and it allows for an arbitrary power mask to be placed on the transmitter, in addition to an overall input power constraint, as well as variable target bit error rates among the used subchannels, as part of the bandwidth optimization procedure, which are novel from previous methods. 
    
    
     These and other objectives and advantages of the present invention will no doubt become apparent to those skilled in the art after having read the following detailed description of the preferred embodiment which is illustrated in the several figures of the drawing. 
     IN THE DRAWING 
     FIG. 1 is a block diagram illustrating a basic prior art multicarrier transmitter, communication channel and receiver; 
     FIG. 2 is a diagram conceptually illustrating frequency domain discrete multitone modulation (DMT); 
     FIG. 3 is a diagram schematically depicting the basic structure of a discrete multitone modulation system; 
     FIG. 4 depicts a block of data including a cyclic prefix; 
     FIGS. 5a and 5b are block diagrams depicting the principal components of a discrete multitone (DMT) modulation communication system; 
     FIG. 6 is a schematic illustration of a one-tap frequency domain equalizer (FEQ) and associated decision element; 
     FIG. 7 illustrates DMT bit allocation in the frequency domain; 
     FIG. 8 illustrates two-dimensional 4 and 16 QAM signal constellations; 
     FIG. 9 is a flow chart depicting a total data throughput optimization algorithm in accordance with the present invention; 
     FIG. 10 is a flow chart illustrating a margin optimization algorithm in accordance with the present invention; 
     FIG. 11 is a flow chart depicting a bit swap algorithm in accordance with the present invention; 
     FIG. 12 is a block diagram illustrating a handshaking procedure in accordance with the present invention; 
     FIG. 13 is a block diagram showing the principal functional components used to implement the encoder 36 of FIG. 5b in accordance with the present invention; and 
     FIG. 14 is a block diagram showing the principal functional components used to implement the decoder 58 of FIG. 5b in accordance with the present invention. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The present invention relates to a method and apparatus for implementing a multicarrier-based transceiver system having continuous adaptive bandwidth optimization. The invention is particularly suited for operation over copper twisted pair conductor channels for Asymmetric Digital Subscriber Line services and various video transmission applications. 
     The apparatus used includes a transmitter and receiver that can generally be represented by the block diagram of FIG. 5 with special processing and encoding/decoding software and hardware for implementing the novel interactive and adaptive methods described below. In addition to providing continuous adjustment, as required, of transmission system parameters, it allows the transparent and simultaneous bi-directional communication between transmitter and receiver of control and operations information. 
     When given a set of initial SNR estimates of the orthogonal carriers of a multicarrier communication system, a set of target bit error rates for the carriers, and an arbitrary transmit power mask together with an overall transmit power constraint, the present invention provides a method of determining the initial bit and energy allocations, and therefore the corresponding transmission bandwidth. The key to determining the initial transmission bandwidth is to calculate the number of carriers to use over sorted carrier SNR&#39;s, which will in turn yield the corresponding transmission bandwidth. 
     The preferred embodiment can be implemented in accordance with one of two methods, depending on the goal of the data transmission system. The first method maximizes the total data throughput rate of the system, given a fixed system performance margin objective and a desired overall bit-error-rate. The second method maximizes the system performance margin, given a target data rate and a desired overall bit-error-rate. The system operates under the additional constraints of integer-bit constellation sizes and a nearly flat on/off energy allocation. The constellation granularity need not be restricted to integer bits, but the implementational complexity will increase with increasing granularity in constellation size. 
     Algorithmically, the preferred embodiment of the initialization procedure for maximizing total data rate subject to a fixed system performance margin is depicted in the flow chart of FIG. 9 and can be summarized in the following steps: 
     1. Compute SNR(i) i, when all carriers are used and E(i)=1  i, where SNR(i) is the SNR estimate of the i -th  carrier at the receiver and E(i) is the transmit energy of the i -th  carrier, normalized to 1. 
     2. Calculate SNR(i)/Γ(i) where Γ(i) is the &#34;SNR gap&#34; (from Equation 6) for the i -th  carrier that is determined by the desired bit-error-rate and other chosen system parameters for the i -th  carrier. 
     3. Sort the resulting SNR(i)/Γ(i)&#39;s into descending order and label them so that SNR(j)/Γ(j)≧SNR(j+1)/Γ(j+1)  j&lt;N. The mapping from the original carrier labels to the sorted carrier labels is stored and is invertible. 
     4. Let k=1, b max  =0, and initialize {b j  } to all zeros, where k is a count, b max  is the current maximum number of bits achievable in a multicarrier symbol, and {b j  } is the current bit allocation table that achieves b max . 
     5. Compute b target  (k) according to: ##EQU7##  where b target  (k) is the number of bits achievable in a multicarrier symbol using only the k best carriers, and the number of bits achievable by the j -th  carrier b j , is determined by: ##EQU8##  In Equation (10), round{x} is the integer rounding operation; i.e., when the decimal part of x≧0.5, x is rounded up to the next larger integer value by the operation round{x} and when the decimal part of x&lt;0.5, x is rounded down to the next smaller integer value no less than itself by the operation round{x}, floor{x} is the floor operation; i.e., x is always rounded down to the next smaller integer value no less than itself by the operation floor{x}, E target  is the total input energy, or power, constraint at the transmitter, k is the number of used carriers, Γ(j) is the &#34;SNR gap&#34; of the chosen system parameters for the j -th  carrier, and E maxj  is the maximum energy, or power, allowable in the j -th  carrier due to the transmit power mask. For each of the k used carriers, an equal amount of transmit energy E target  /k is used to calculate the achievable number of bits per multicarrier symbol, but in no event is such energy greater than the allowable amount of individual carrier transmit energy due to the power mask. 
     6. If b target  (k)&gt;b max , then set b max  =b target  (k) and keep track of the current bit allocation table, {b j  }={b j  }, that achieves b max . 
     7. If k≠N, then set k=k+1 and return to step 5, otherwise go to step 8. At this point b max  will indicate the maximum achievable data rate, and the currently stored bit allocation table that achieves b max , {b j  } can be used to obtain the initial system bit allocation table, {b i  }, since the mapping in step 3 is invertible. 
     8. Allocate input energies, {E i  }, accordingly so that P e  (i)=P e ,i,target  i given the bit allocation table {b i  }, where P e  (i) is the probability of error for the i -th  used carrier, and P e ,i,target is the target probability of error for the i -th  carrier. 
     9. Calculate the current total transmit energy, E total , according to: ##EQU9##  where E i  is the current transmit energy used by the i -th  carrier. 
     10. Scale the final energy distribution, {E i  }, according to: ##EQU10## The initial bit and energy allocation tables of this system are given by {b i  } and {E i  }, respectively. 
     Similarly, the preferred embodiment of the initialization procedure for maximizing system performance margin subject to a target data rate is depicted in the flow chart of FIG. 10 and can be summarized in the following steps: 
     1. Computer SNR(i)  i, when all carriers are used and E(i)=1  i, where SNR(i) is the SNR estimate of the i -th  carrier at the receiver and E(i) is the transmit energy of the i -th  carrier, normalized to 1. 
     2. Sort the resulting SNR(i)&#39;s into descending order and label them so that SNR(j)≧SNR(j+1)  j&lt;N. The mapping from the original carrier labels to the sorted carrier labels is stored and is invertible. 
     3. Let k=1, γ max  =-∞, and count=0, where k is a count, γ max  is the current maximum achievable system performance margin, and count is the number of carriers to use to achieve γ max . 
     4. Computer γ(k) according to: ##EQU11##  where γ(k) is the maximum system performance margin achievable in a multicarrier symbol with a target data rate of b target , a total effective coding gain of γ eff , and a desired bit-error-rate of 10 -7 , using only the k best carriers, and the current geometric SNR, SNR(k), is calculated as: ##EQU12##  where the current transmit energy used by the j -th  carrier, E j , is determined by: ##EQU13##  In Equation (15), E target  is the total input energy, or power, constraint at the transmitter, k is the number of used carriers, and E maxj  is the maximum energy, or power, allowable in the j -th  carrier due to the transmit power mask. For each of the k used carriers, an equal amount of transmit energy E target  /k is used to calculate the current geometric SNR, SNR(k), but in no event is such energy greater than the allowable amount of individual carrier transmit energy due to the power mask. 
     5. If γ(k)&gt;γ max , then set γ max  =γ(k) and count=k. 
     6. If k≠N, then set k=k+1 and return to step 4, otherwise go to step 7. At this point γ max  will indicate the maximum achievable system performance margin given the set of system parameters, and count will be the corresponding number of best carriers to use to achieve γ max . 
     7. Calculate the initial bit allocation table, {b i  }, based on γ max  and count according to: ##EQU14##  for those used carrier determined by count and the invertible mapping of step 2, keep track of the amount of rounding, diff j , by: ##EQU15##  and Γ max  is given by: ##EQU16##  using γ max  =γ margin . 8. Let B total  =Σ i=0   N-1  b i , where B total  is the total number of bits supported in a multicarrier symbol by the current bit allocation table {b i  }. 
     9. If B total  &gt;B target , then subtract one bit at a time from the current bit table, {b i  }, on the carrier that presently has the largest value of diff i , adjust diff i  =diff i  -1 and B total  =B total  -1 respectively, and repeat until B total  =B target . 
     10. If B total  &lt;B target , then add one bit at a time to the current bit table, {b i  }, on the carrier that presently has the smallest value of diff i , adjust diff i  =diff i  +1 and B total  =B total  +1 respectively, and repeat until B total  =B target . 
     11. Allocate input energies, {E i  }, accordingly so that P e  (i)=P e ,i,target  i given the bit allocation table {b i  }, where P e  (i) is the probability of error for the i -th  used carrier and P e ,i,target is the target probability of error for the i -th  carrier. 
     12. Calculate the current total transmit energy, E total , according to: ##EQU17##  where E i  is the current transmit energy used by the i -th  carrier. 
     13. Scale final energy distribution, {E i  }, according to: ##EQU18## The initial bit and energy allocation tables of this system are given by {b i  } and {E i  }, respectively. 
     The above-described processes for calculating the initial bit and energy allocation tables, therefore the initial system transmission bandwidth, may also be applied to a variable bandwidth, single-carrier system implemented with a Decision Feedback Equalizer (DFE) receiver or a Tomlinson precoder during the initialization process of such system. The optimal transmission bandwidth of such variable bandwidth, single-carrier system is accurately approximated by the optimal multicarrier transmission bandwidth calculated with the abovedescribed processes. 
     In many practical systems, the channel characteristics may be quasi-stationary and time-varying. For example, the frequency response of a Digital Subscriber Line may vary in time with temperature variations, and the noise characteristics may change in time with different numbers of active crosstalkers. As a result, the best transmission bandwidth and bit distribution identified during multicarrier system initialization may vary in time. Therefore, some real-time adaptive algorithm that can modify the system bit distribution and/or transmission bandwidth during normal system operation is necessary to maintain optimal system performance. The present invention includes an adaptive-update procedure that is effective in tracking channel variations for DSL applications. The key to this adaptive-update procedure is to keep track of the steady state MSE&#39;s, or SNR&#39;s, or SNR/Γ&#39;s of all used carriers in the multicarrier system in the background at the receiver during normal system operation, and when the MSE&#39;s, or SNR&#39;s, or SNR/Γ&#39;s of one carrier exceeds a predetermined threshold value, which is 3 dB worse than any other one carrier in the preferred embodiment, a bit is swapped from the worse carrier to a better carrier, so that the overall bit-error-rate is reduced. The preferred embodiment of this procedure is illustrated by the flow chart of FIG. 11 and can be summarized in the following steps: 
     1. Monitor steady state MSE&#39;s (or SNR&#39;s or SNR/Γ&#39;s) of all used carriers in the background at the receiver according to: 
     
         |E.sub.i,j |.sup.2 =R{E.sub.i,j.sup.2 }+I{E.sub.i,j.sup.2 }                                                         (21) 
    
     
         ε.sub.i,j =(λ)ε.sub.i,j-1 +(1-λ)|E.sub.i,j |.sup.2         (22) 
    
     where {E j  } is the error, or difference between the input and the output of the hard decision decoder (FIG. 6) at time j for the i -th  carrier, and it is computed independently for the real (R{E ij  }) and the imaginary (I{E ij  }) dimensions for each carrier i. The cumulative error energy estimate for the i -th  carrier at time j, ε ij , is then computed by averaging successive squared error magnitudes, where λ is a positive fraction slightly less than 1. SNR, or SNR/Γ, normalization is included if that is the preferred transmission quality measure. 
     2. Search through all used carriers for ε maxj  and ε minj  in the background at the receiver, where ε maxj  is the maximum cumulative error energy estimate and ε minj  is the minimum cumulative error energy estimate at time j, respectively. 
     3. If ε maxj  &gt;ε minj  +ε threshold  then go to step 4, otherwise return to step 1, where ε threshold  is the threshold value that needs to be exceeded before a bit swap operation can take place and in the preferred embodiment ε threshold  =3 (dB). 
     4. Send bit swap information back to transmitter via control channel. 
     5. Synchronize change through a simple handshake procedure. A block diagram illustrating the procedure is shown in FIG. 12. 
     6. Let b(min)=b(min)+1 and b(max)=b(max)-1, where b(min) is the current number of bits assigned in the bit allocation table to the carrier with a cumulative error energy estimate of ε minj  and b(max) is the current number of bits assigned in the bit allocation table to the carrier with a cumulative error energy estimate of ε maxj . 
     7. Let ε minj  =2ε minj  and ε maxj  =0.5ε maxj . 
     8. Adjust decoder slicer settings for the two carriers involved in the bit swap operation accordingly. 
     This particular adaptive update algorithm can also be applied in conjunction with or in place of any initial bandwidth optimization algorithm for a multicarrier communication system. 
     The above described processes are physically implemented by software programs residing in custom hardware that may be embodied with multiple general purpose Digital Signal Processors (DSP) connected in a serial pipeline format plus additional Random Access Memory (RAM), multi-drop inter-processor communications bus, and other corresponding digital and analog components or with a custom Very Large Scale Integration (VLSI) design plus other corresponding digital and analog components. In particular, the actual software programs that implement the above-described processes are physically located in the corresponding DSP&#39;s that actualize the data bit buffer and encoder 36 in the transmitter, and the FEQ and decoder 58 in the receiver of the multicarrier communication system shown in FIG. 5. 
     More detailed block diagrams of the data bit buffer and encoder 36 and the FEQ and decoder 58 are shown in FIGS. 13 and 14, respectively, to which reference is now made. The initial bit and energy allocation tables are calculated at the receiver. These tables are stored in the receiver as the receive bit allocation table 78 and the receive energy allocation table 80, and these receiver tables are available to the data symbol decoder 72 during normal continuous system operation. These same tables are also reliably communicated back to the transmitter and stored therein as the transmit bit allocation table 66 and the transmit energy allocation table 68, and these transmitter tables are available to the data symbol encoder 64 during normal continuous system operation. The MSE estimates are obtained from the input and the output of the data symbol decoder 72 during normal continuous system operation, and the bit swap process is calculated continuously in the background at the receiver. With each complete bit swap process as described above, the transmit bit allocation table 66, the receive bit allocation table 78, and the settings of FEQ 70 are updated accordingly. 
     Although the present invention has been described above in terms of particular preferred embodiments, it is anticipated that after having read this disclosure various alterations, modifications, and alternative applications will become apparent to those skilled in the art. Accordingly, it is intended that the appended claims be interpreted as covering all such alterations and modifications, and all such additional and alternative applications as fall within the true spirit and scope of the invention.