|
Claims  |
|
|
What is claimed is:
1. In a multicarrier data transmission system that transmits data
continuously over dispersive, noisy subscriber loops for digital service
from a telephone central office to a user location and corresponding
digital service between transmitters and receivers at said user location
and said central office, a method for implementing variable transmission
bandwidth as a function of line frequency-variable attenuation, noise
power spectrum, a set of programmed and possibly variable carrier target
bit-error-rates, and a programmed and possibly frequency-variable transmit
power mask to improve data transmission speed or to improve performance
margin at any given transmission speed subject to a power or
power-spectral-density constraint, said method using subcarrier-indexed
measurements of channel gains, channel noises, desired carrier
bit-error-rates, and the programmed power mask to provide
subcarrier-indexed estimates of transmission quality and to maintain the
transmission quality at high levels, comprising the steps of:
(a) sorting the subcarrier-indexed estimates of the transmission quality,
scaled by the desired subcarrier bit-error-rates, into an invertible
ordering for assessment of the relative data-carrying capabilities of the
subcarriers at initialization and/or during data transmission;
(b) calculating bit and energy allocation tables for said multicarrier data
transmission system based on the sorted subcarrier-indexed estimates for
either improving aggregate transmitted data rate at fixed performance
margin with said power or power-spectral-density constraint or improving
performance margin at a fixed data rate with said power or
power-spectral-density constraint;
(c) communicating said bit and energy allocation tables between the
transmitters and the receivers of said multicarrier transmission system;
and
(d) implementing said bit and energy allocation tables in coordination
between the transmitters and the receivers during initialization of said
multicarrier transmission system and/or during simultaneous transmission
of said digital data by said multicarrier transmission system.
2. A multicarrier transmission system as recited in claim 1 and further
comprising the steps of:
communicating changes in bit allocation by removing a single or several
bits from those bits allocated to a carrier or subcarrier with a quality
estimate below a specified threshold and placing that bit or bits on a
second subcarrier or carriers with a quality estimate exceeding a second
specified threshold; and
coordinating the implementation of said changes in both the transmitters
and the receivers by communication through a bi-directional overhead data
channel, said overhead data channel being simultaneously present with the
user data channel on the same communication line.
3. A multicarrier transmission system as recited in claim 1 and further
comprising the steps of:
communicating the computed bit and energy allocation tables with reliable
means of error detection or correction by redundantly transmitting said
allocation tables on several subcarriers from the receivers to the
transmitters; and
coordinating the implementation of said allocation tables in both the
transmitters and the receiver by communication through the communication
line.
4. A multicarrier transmission system as recited in claim 1 and further
comprising the steps of:
making subcarrier quality estimates through a computation of the average
squared difference between an expected decision threshold on a subcarrier
and the detected subcarrier signal level; and
comparing said quality estimates to thresholds for each subcarrier to
determine whether or not a particular bit allocation or gain allocation
change is to be implemented.
5. A multicarrier transmission system as recited in claim 1 and further
comprising the steps of:
making subcarrier quality estimates through the computation of an average
signal-to-noise measure on a subcarrier; and
comparing said quality estimates to thresholds for each subcarrier to
determine whether or not a particular bit allocation or gain allocation
change is to be implemented.
6. A multicarrier transmission system as recited in claim 1 and further
comprising the steps of:
making subcarrier quality estimates through the computation of an average
signal-to-noise ratio multiplied by a subcarrier dependent programmed
reliability factor; and
comparing said quality estimates to thresholds for each subcarrier to
determine whether or not a particular bit allocation or gain allocation
change is to be implemented.
7. A multicarrier transmission system as recited in claim 2 and further
comprising the steps of:
communicating the computed bit and energy allocation tables with reliable
means of error detection or correction by redundantly transmitting said
allocation tables from the receivers to the transmitters; and
coordinating the implementation of said allocation tables in both the
transmitters and the receivers by communication through the communication
line.
8. A multicarrier transmission system as recited in claim 1, 2, 3 or 7, and
further comprising the steps of:
making subcarrier quality estimates through a computation of the average
squared difference between an expected decision threshold on a subcarrier
and the detected subcarrier signal level; and
comparing said quality estimates to thresholds for each subcarrier to
determine whether or not a particular bit allocation or gain allocation
change is to be implemented.
9. A multicarrier transmission system as recited in claim 1, 2, 3 or 7, and
further comprising the steps of:
making subcarrier quality estimates through the computation of an average
signal-to-noise measure on a subcarrier; and
comparing said quality estimates to thresholds for each subcarrier to
determine whether or not a particular bit allocation or gain allocation
change is to be implemented.
10. A multicarrier transmission system as recited in claim 1, 2, 3 or 7,
and further comprising the steps of:
making subcarrier quality estimates through a computation of the average
signal-to-noise ratio multiplied by a subcarrier dependent programmed
reliability factor; and
comparing said quality estimates to thresholds for each subcarrier to
determine whether or not a particular bit allocation or gain allocation
change is to be implemented.
11. A multicarrier communication system comprising: a transmitter means and
a receiver means communicatively linked together by a datalink, the signal
carrying characteristics of which are randomly variable, said transmitter
means including,
means for establishing a plurality of frequency domain subchannels for
respectively communicating various quantities of data bits selected from a
stream of data bits;
means for measuring the capability of the datalink to efficiently
communicate the data bits in each said subchannel and for developing an
optimum energy allocation and an optimum data bit allocation for each said
subchannels; and
means for causing an input data stream to be divided and modulated onto a
plurality of frequency domain carriers, each corresponding to one of said
subchannels for transmission over said datalink to said receiver means,
the quantity of data bits transmitted over each said subchannel being
selected as a function of said optimum data bit allocation; and said
receiver means including,
means for monitoring the quality of the transmission over each said
subchannels; and
means for returning an indication of the monitored quality to said
transmitter means.
12. A multicarrier communication system as recited in claim 11 wherein said
transmitter means further includes: means responsive to said indication of
monitored quality and operative to change the data bit allocation among
said subchannels to improve the quality of the transmission.
13. A multicarrier communication system as recited in claim 11 wherein said
means for measuring is initialized for maximizing total data rate in
accordance with the following steps:
a) computing SNR(i) i, when all subcarriers are used and E(i)=1 i, where
SNR(i) is the SNR estimate of the i.sup.-th subcarrier at the receiver and
E (i) is the transmit energy of the i.sup.-th subcarrier, normalized to 1;
b) calculating SNR (i) /.GAMMA.(i) , where
.GAMMA.(i) is the "SNR gap" for the i.sup.-th subcarrier that is determined
by the desired bit-error-rate, a system performance margin, a total
effective coding gain, the Q-function, and the number of nearest neighbors
in the input signal constellation for the i.sup.-th subcarrier;
c) sorting and storing the resulting SNR (i)/.GAMMA.(i)'s into descending
order and labeling them so that SNR(j)/.GAMMA.(j)>SNR(j+1)/.GAMMA.(j+1)
j<N;
d) letting k=1, b.sub.max =0, and initializing {b.sub.j } to all zeros,
where
k is a count,
b.sub.max is the current maximum number of bits achievable in a
multicarrier symbol, and
{b.sub.j } is the current bit allocation table that achieves b.sub.max ;
e) computing b.sub.target (k) according to
##EQU19##
where b.sub.target (k) is the number of bits achievable in a multicarrier
symbol using only the k best subcarriers, and
the number of bits achievable by the j.sup.-th subcarrier b.sub.j, is
determined by:
##EQU20##
wherein, round{x} is the integer rounding operation; i.e., when the
decimal part of x.gtoreq.0.5, x is rounded up to the next larger integer
value by the operation round{x} and when the decimal part of x<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.sub.target is the total input energy, or power, constraint at the
transmitter,
k is the number of used subcarriers,
.GAMMA.(j) is the "SNR gap" of the chosen system parameters for the
j.sup.-th subcarrier, and
E.sub.maxj is the maximum energy, or power, allowable in the j.sup.-th
subcarrier due to the transmit power mask;
for each of the k subcarriers used, an equal amount of transmit energy
E.sub.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 determined by the
power mask;
f) if b.sub.target (k)>b.sub.max, then setting b.sub.max =b.sub.target (k)
and keeping track of the current bit allocation table, {b.sub.j }={b.sub.j
}, that achieves b.sub.max ;
g) if k.noteq.N, then setting k=k+1 and returning to step e, otherwise
going to step h; at this point b.sub.max will indicate the maximum
achievable data rate, and the currently stored bit allocation table that
achieves b.sub.max, {b.sub.j }, can be used to obtain the initial system
bit allocation table, {b.sub.i 56 , since the mapping in step c is
invertible;
h) allocating input energies, {E.sub.i }, accordingly so that P.sub.e
(i)=P.sub.e,i,target i given the bit allocation table {b.sub.i }, where
P.sub.e (i) is the probability of error for the i.sup.-th used subcarrier
and
P.sub.e,i,target is the target probability of error for the i.sup.-th
subcarrier;
i) calculating the current total transmit energy, E.sub.total, according to
##EQU21##
where E.sub.i is the current transmit energy used by the i.sup.-th
subcarrier;
j) scaling final energy distribution,{E.sub.i }, according to
##EQU22##
and k) causing said transmitter means to allocate bits to each said
subchannel according to the bit allocation table {b.sub.i }) and to
allocate transmitting power to each said subchannel in accordance with the
distribution {E.sub.i }.
14. A multicarrier communication system as recited in claim 11 wherein said
means for measuring is initialized for maximizing system performance
margins subject to a predetermined target rate in accordance with the
following steps:
a) computing SNR(i) i, when all subcarriers are used and E(i)=1 i, where
SNR(i) is the SNR estimate of the i.sup.-th subcarrier at the receiver, and
E(i) is the transmit energy of the i.sup.-th subcarrier, normalized to 1;
b) sorting and storing the resulting SNR(i)'s into descending order and
labeling them so that SNR(j).gtoreq.SNR(j+1) j<N;
c) letting k=1, .gamma..sub.max =.infin., and count=0, where
k is a count,
.gamma..sub.max is the current maximum achievable system performance
margin, and
count is the number of subcarriers to use to achieve .gamma..sub.max ;
d) computing .gamma.(k) according to
##EQU23##
where .gamma.(k) is the maximum system performance margin achievable in a
multicarrier symbol with a target data rate of b.sub.target, a total
effective coding gain of .gamma..sub.eff, and a desired bit-error-rate of
10.sup.-7, using only the k best subcarriers, and
the current geometric SNR, SNR(k), is calculated as
##EQU24##
where the current transmit energy used by the j.sup.-th subcarrier,
E.sub.j, is determined by
##EQU25##
wherein, E.sub.target is the total input energy, or power, constraint at
the transmitter,
k is the number of used subcarriers, and
E.sub.maxj the maximum energy, or power, allowable in the j.sup.-th
subcarrier due to the transmit power mask; for each of the k subcarriers
used, an equal amount of transmit energy E.sub.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;
e) if .gamma.(k)>.gamma..sub.max, then setting .gamma..sub.max =.gamma.(k)
and count=k;
f) if k.noteq.N, then setting k=k+1 and returning to step d, otherwise
going to step g; at this point .gamma..sub.max will indicate the maximum
achievable system performance margin given the set of system parameters,
and count will be the corresponding number of best subcarriers to use to
achieve .gamma..sub.max ;
g) calculating the initial bit allocation table, {b.sub.i }, based on
.gamma..sub.max and count according to
##EQU26##
for those used subcarriers determined by count and the invertible mapping
of step b, keeping track of the amount of rounding, diff.sub.j, by
##EQU27##
and .GAMMA..sub.max is given by
##EQU28##
using .gamma..sub.max =.gamma..sub.margin ; h) letting B.sub.total
=.SIGMA..sub.i=0.sup.N-1 b.sub.i,
where B.sub.total is the total number of bits supported in a multicarrier
symbol by the current bit allocation table {b.sub.i };
i) if B.sub.total >B.sub.target, then subtracting one bit at a time from
the current bit table, {b.sub.i }, on the subcarrier that presently has
the largest value of diff.sub.i, adjusting diff.sub.i =diff.sub.i -1 and
B.sub.total =B.sub.total -1 respectively, and repeating until B.sub.total
=B.sub.target ;
j) if B.sub.total <B.sub.target, then adding one bit at a time to the
current bit table, {b.sub.i }, on the subcarrier that presently has the
smallest value of diff.sub.i, adjusting diff.sub.i =diff.sub.i +1 and
B.sub.total =B.sub.total +1 respectively, and repeating until B.sub.total
=B.sub.target ;
k) allocating input energies, {E.sub.i }, accordingly so that P.sub.e
(i)=P.sub.e,i,target i given the bit allocation table {b.sub.i }, where
P.sub.e (i) is the probability of error for the i.sup.-th used subcarrier,
and
P.sub.e,i,target is the target probability of error for the i.sup.-th
subcarrier;
l) calculating the current total transmit energy, E.sub.total, according to
##EQU29##
where E.sub.i is the current transmit energy used by the i.sup.-th
subcarrier;
m) scaling the final energy distribution,{E.sub.i }, according to
##EQU30##
and n) causing said transmitter means to allocate said bits to each said
subchannel according to the bit allocation table {b.sub.i } and to
allocate transmitting power to each said subchannel in accordance with the
distribution {E.sub.i }.
15. A multichannel communication system as recited in claim 12 wherein said
transmitting means and said receiver means adaptively modify the system
bit and/or transmission bandwidth during normal system operation in
accordance with the following steps:
a) monitoring the steady state MSE's (or SNR's or SNR/.GAMMA.'s) of all
used subcarriers in the background at said receiver means according to
.vertline.E.sub.ij .vertline..sup.2 =R{E.sub.ij.sup.2 }+I{E.sub.ij.sup.2 }
.epsilon..sub.ij =(.lambda.).epsilon..sub.ij-1
+(1-.lambda.).vertline.E.sub.ij .vertline..sup.2
where {E.sub.ij } is the error, or difference between the input and the
output of the hard decision decoder at time j for the i.sup.-th
subcarrier, and it is computed independently for the real (R{E.sub.ij })
and the imaginary (I{E.sub.ij }) dimensions for each subcarrier i; the
cumulative error energy estimate for the i.sup.-th subcarrier at time j,
.epsilon..sub.ij, is then computed by averaging successive squared error
magnitudes, where .lambda. is a positive fraction slightly less than 1;
SNR, or SNR/.GAMMA., normalization is included if that is the preferred
transmission quality measure;
b) searching through all used subcarriers for .epsilon..sub.maxj and
.epsilon..sub.minj in the background at said receiver means, where
.epsilon..sub.maxj is the maximum cumulative error energy estimate and
.epsilon..sub.minj is the minimum cumulative error energy estimate at time
j, respectively;
c) if .epsilon..sub.maxj >.epsilon..sub.minj +.epsilon..sub.threshold then
going to step d, otherwise returning to step a,
where .epsilon..sub.threshold is a predetermined threshold value that needs
to be exceeded before a bit swap operation can take place;
d) sending bit swap information back to said transmitter means via the
control channel;
e) synchronizing the change through a simple handshake procedure;
f) letting 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 subcarrier with a cumulative error energy estimate of
.epsilon..sub.minj , and
b(max) is the current number of bits assigned in the bit allocation table
to the subcarrier with a cumulative error energy estimate of
.epsilon..sub.maxj ;
g) letting .epsilon..sub.minj =2.epsilon..sub.minj and .epsilon..sub.maxj
=0.5.epsilon..sub.maxj ; and
h) adjusting the decoder slicer settings in said transmitter means for the
two subcarriers involved in the bit swap operation accordingly.
16. In a multicarrier transmission system having transmitters and receivers
to transmit and receive data continuously over communication lines, a
method for implementing variable bandwidth data transmission with a
plurality of subcarriers as a function of measured signal-to-noise ratios
of the subcarriers, comprising the steps of:
calculating signal-to-noise factors for the subcarriers as functions of the
measured signal-to-noise ratios of the subcarriers to a signal-to-noise
gap approximation of the subcarriers, said gap approximation being a
function of a system performance margin;
sorting the calculated signal-to-noise factors;
computing a plurality of bit allocation tables for the subcarriers using
the first k subcarriers as provided in the order of the sorted factors and
where k increases from one to the number of subcarriers;
determining bit allocation to the subcarriers by selecting from the
plurality of bit allocation tables the table with the highest bit
allocation to the subcarriers;
calculating energy allocation to each of the subcarriers according to its
bit allocation; and
implementing said calculated bit allocation and energy allocation to the
subcarriers in the transmission of data to optimize data transmission
speed during initialization of said multicarrier transmission system
and/or during simultaneous transmission of said data by said multicarrier
transmission system.
17. In a multicarrier transmission system as recited in claim 16 wherein
the calculating energy allocation step includes the substeps of:
calculating preliminary energy allocation to each of the subcarriers
according to its bit allocation such that a probability-of-error for each
of the subcarriers equals to a target probability of error for each of the
subcarriers;
determining the energy allocation to each of the subcarriers by finding the
smaller of a proportional preliminary energy allocation value and a
maximum subcarrier energy value, said proportional preliminary energy
allocation value being a function of the total preliminary energy
allocation to the subcarriers, an energy constraint,,and the preliminary
energy allocation to each of the subcarriers.
18. In a multicarrier transmission system as recited in claim 17 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of an average squared difference between an expected decision threshold on
a subcarrier and the detected subcarrier signal level; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
19. In a multicarrier transmission system as recited in claim 17 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios on the subcarriers; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
20. In a multicarrier transmission system as recited in claim 17 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios multiplied by a subcarrier dependent
programmed reliability factor; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
21. In a multicarrier transmission system as recited in claim 16 wherein
the calculating energy allocation step includes the substeps of:
calculating preliminary energy allocation to each of the subcarriers
according to its bit allocation such that a probability-of-error for each
of the subcarriers equals to a target probability of error for each of the
subcarriers; and
determining the energy allocation to each of the subcarriers by finding the
smaller of a proportional preliminary energy allocation value and a
maximum subcarrier energy value, said proportional preliminary energy
allocation value being a function of the total preliminary energy
allocation to the subcarriers, an energy constraint, and the preliminary
energy allocation to each of the subcarriers.
22. In a multicarrier transmission system as recited in claim 16 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of an average squared difference between an expected decision threshold on
a subcarrier and the detected subcarrier signal level; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
23. In a multicarrier transmission system as recited in claim 16 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios on the subcarriers; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
24. In a multicarrier transmission system as recited in claim 16 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios multiplied by a subcarrier dependent
programmed reliability factor; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
25. In a multicarrier transmission system having transmitters and receivers
to transmit and receive data continuously over communication lines, a
method for implementing variable bandwidth data transmission with a
plurality of subcarriers and as a function of measured signal-to-noise
ratios of the subcarriers, comprising the steps of:
sorting the signal-to-noise ratios of the subcarriers;
computing preliminary system performance margins using the subcarriers in
the order of the sorted ratios, the preliminary subsystem performance
margins being a function of the signal-to-noise ratios, the number of
subcarriers, a target data rate, a total effective coding gain, a desired
bit-error-rate, and energy for the subcarriers;
selecting the maximum system performance margin from said computed
preliminary system performance margins;
calculating bit allocations to the subcarriers using said maximum system
performance margin;
calculating energy allocation to the subcarriers according to its bit
allocation; and
implementing said calculated bit allocation and energy allocation to the
subcarriers in the transmission of data to optimize data transmission
speed during initialization of said multicarrier transmission system
and/or during simultaneous transmission of said data by said multicarrier
transmission system.
26. In a multicarrier transmission system as recited in claim 25 wherein
the calculating bit allocation step includes the substeps of:
calculating a preliminary bit allocation table using the system performance
margin; and
determining the bit allocations to the subcarriers from the preliminary bit
allocation table by comparing the total number of bits in the preliminary
bit allocating table with the target data rate to determine whether bits
should be added or removed from the preliminary bit allocation table.
27. In a multicarrier transmission system as recited in claim 26 wherein
the calculating energy allocation step includes the substeps of:
calculating preliminary energy allocation to each of the subcarriers
according to its bit allocation such that a probability-of-error for each
of the subcarriers equals to a target probability of error for each of the
subcarriers;
determining the energy allocation to each of the subcarriers by finding the
smaller of a proportional preliminary energy allocation value and a
maximum subcarrier energy value, said proportional preliminary energy
allocation value being a function of the total preliminary energy
allocation to the subcarriers, an energy constraint, and the preliminary
energy allocation to each of the subcarriers.
28. In a multicarrier transmission system as recited in claim 27 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of an average squared difference between an expected decision threshold on
a subcarrier and the detected subcarrier signal level; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
29. In a multicarrier transmission system as recited in claim 27 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios on the subcarriers; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
30. In a multicarrier transmission system as recited in claim 27 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios multiplied by a subcarrier dependent
programmed reliability factor; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
31. In a multicarrier transmission system as recited in claim 25 wherein
the calculating bit allocation step includes the substeps of:
calculating a preliminary bit allocation table using the system performance
margin; and
determining the bit allocations to the subcarriers from the preliminary bit
allocation table by comparing the total number of bits in the preliminary
bit allocating table with the target data rate to determine whether bits
should be added or removed from the preliminary bit allocation table.
32. In a multicarrier transmission system as recited in claim 25 wherein
the calculating energy allocation step includes the substeps of:
calculating preliminary energy allocation to each of the subcarriers
according to its bit allocation such that a probability-of-error for each
of the subcarriers equals to a target probability of error for each of the
subcarriers; and
determining the energy allocation to each of the subcarriers by finding the
smaller of a proportional preliminary energy allocation value and a
maximum subcarrier energy value, said proportional preliminary energy
allocation value being a function of the total preliminary energy
allocation to the subcarriers, an energy constraint, and the preliminary
energy allocation to each of the subcarriers.
33. In a multicarrier transmission system as recited in claim 25 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of an average squared difference between an expected decision threshold on
a subcarrier and the detected subcarrier signal level; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
34. In a multicarrier transmission system as recited in claim 25 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios on the subcarriers; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented.
35. In a multicarrier transmission system as recited in claim 25 further
including the steps of:
measuring subcarrier transmission quality estimates through the computation
of the average signal-to-noise ratios multiplied by a subcarrier dependent
programmed reliability factor; and
comparing said quality estimates to threshold values for the subcarriers to
determine whether bit swapping from the subcarriers with worse quality
estimates to subcarriers with better quality estimates is to be
implemented. |
|
|
|
|
Claims  |
|
|
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.sub.total /T bits per second are grouped by
converter 14 into blocks of b.sub.total bits for each multicarrier symbol,
with a symbol period of T. The b.sub.total bits in each multicarrier
symbol are modulated in modulator 16 by N separate carriers with b.sub.i
bits modulated by the i.sup.-th carrier. The preferred embodiment uses an
Inverse Fast Fourier Transform (IFFT) during modulation to generate
N.sub.s time-domain samples of a transmit signal for each block of
b.sub.total bits, where N.sub.s is preferably equal to 2N. The
corresponding multicarrier demodulator performs a Fast Fourier Transform
(FFT), where b.sub.i bits are recovered from the i.sup.-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
"Multicarrier Modulation for Data Transmission: An Idea Whose Time Has
Come", IEEE Communications Magazine, Volume 28, Number 5, pp. 5-14, May
1990; and by A. Ruiz et al. in "Discrete Multiple Tone Modulation with
Coset Coding for the Spectrally Shaped Channel", 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.sub.0,X.sub.1, . . . , X.sub.N-1 } are the original, complex, input
data symbols, {x.sub.k } is the modulated data sequence (before cyclic
prefix), {h.sub.k } is the discrete-time channel response, {n.sub.k } is
the additive noise sequence, {y.sub.k } is the received sequence (after
the removal of cyclic prefix), and {x.sub.0, x.sub.1, . . . ,x.sub.N-1 }
are the decoded, complex data symbols. The p.sub.i 's and p.sub.i *'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 *=.delta..sub.ij, (1)
where denotes the dot product of two vectors and the ".delta.-function"
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 "A Discrete Multitone Transceiver System for HDSL
Applications", IEEE Journal on Selected Areas in Communications, Volume 9,
Number 6, pp. 895-908, Aug. 1991; "Equalizer Training Algorithms for
Multicarrier Modulation Systems", 1993 IEEE International Conference on
Communications, Geneva, Switzerland, May 1993; and "Method for Equalizing
a Multicarrier Signal in a Multicarrier Communication System", 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 in | | |