U.S. patent application number 11/072992 was filed with the patent office on 2006-03-16 for computationally efficient protocols for vdsl system.
Invention is credited to Raj Kumar Jain, Hak Keong Sim.
Application Number | 20060056525 11/072992 |
Document ID | / |
Family ID | 34910167 |
Filed Date | 2006-03-16 |
United States Patent
Application |
20060056525 |
Kind Code |
A1 |
Jain; Raj Kumar ; et
al. |
March 16, 2006 |
Computationally efficient protocols for VDSL system
Abstract
Techniques which reduce the computational burden of the IFFT/FFT
section of a DSL data transmission/reception apparatus, taking into
account the nature of conventional IFFT/FFT algorithms. These
algorithms operate using "butterflies" representing complex
calculations performed on input values. The butterflies are here
referred to as "simple" if all the input values are zero or if only
one input value is non-zero. The invention proposes that the tones
which have non-zero amplitudes are selected to maximize (or at
least increase) the number of simple butterflies. This is done
either in designing the band plans of the communication, or in
designing the band plan of a mode of operation of the apparatus
having a reduced data transmission rate. The IFFT/FFT section
receives information indicating that the IFFT/FFT algorithm can be
simplified based on knowledge of which of the input values will be
zero, and changes its mode of operation accordingly.
Inventors: |
Jain; Raj Kumar; (Mandarin
Gardens, SG) ; Sim; Hak Keong; (Singapore,
SG) |
Correspondence
Address: |
SLATER & MATSIL LLP
17950 PRESTON ROAD
SUITE 1000
DALLAS
TX
75252
US
|
Family ID: |
34910167 |
Appl. No.: |
11/072992 |
Filed: |
March 4, 2005 |
Current U.S.
Class: |
375/260 |
Current CPC
Class: |
H04L 27/2633 20130101;
H04L 27/2628 20130101 |
Class at
Publication: |
375/260 |
International
Class: |
H04K 1/10 20060101
H04K001/10 |
Foreign Application Data
Date |
Code |
Application Number |
Mar 5, 2004 |
SG |
200401383-5 |
Claims
1. A method of two-directional communication of data over a line,
the communication employing a bandwidth partitioned into a number
of bands including at least one band associated with each of the
two directions, the method including encoding the data carried in
each direction by modulation of a plurality of tones defined within
the at least one band associated with that direction, the bands
being selected within the bandwidth such that all the bands in a
given direction have a number of tones which is substantially equal
to a power of 2, and the bands are spaced apart by a number of
tones which is substantially equal to a power of 2.
2. The method according to claim 1 wherein the encoding of the data
to be transmitted in at least one of the directions is performed
using an IFFT section which includes a memory for receiving
amplitude data specifying the amplitudes of the plurality of tones
associated with said one direction, and an IFFT processing unit
operating iteratively an algorithm including radix calculations on
the data stored in the memory, the method including in at least one
of the iterations determining that one or more input values of at
least one radix calculation are zero, and accordingly simplifying
the radix calculation.
3. The method according to claim 2 wherein the simplifying of the
radix computation comprises omitting a calculation step of the
radix calculation.
4. The method according to claim 1 and further comprising decoding
of the data using an FFT section which includes a memory for
receiving time domain data describing a received signal, and a
processing unit including an FFT processing unit operating
iteratively an algorithm composed of radix calculations on the data
stored in the memory, the method including in at least one of the
iterations determining that one or more input values of at least
one radix calculation are zero, and accordingly simplifying the
radix calculation.
5. The method according to claim 4 wherein the simplifying of the
radix computation comprises omitting a calculation step of the
radix calculation.
6. A method of two-directional communication of data over a line,
the communication employing a bandwidth partitioned into a number
of bands including at least one band associated with each of the
two directions, the method including encoding the data carried in
each direction by modulation of a plurality of tones defined within
the at least one band associated with that direction, the method
including operating selectively in one of at least two modes
including: a first mode in which data is transmitted on all the
tones associated with communication in the corresponding direction;
and at least one second mode in which data is transmitted on a
subset of the tones associated with the corresponding direction,
the subset being selected as a set of 2.sup.n consecutive
tones.
7. The method according to claim 6 wherein the encoding of the data
transmitted in at least one direction is performed using an IFFT
section which includes a memory for receiving amplitude data
specifying the amplitudes of the plurality of tones associated with
the one direction, and an IFFT processing unit iteratively
performing an algorithm composed of radix calculations on the data
stored in the memory, the method including in at least one of the
iterations determining that one or more of inputs to at least one
radix calculation are zero, and accordingly simplifying the radix
calculation.
8. The method according to claim 7 wherein simplifying the radix
computation comprises omitting a calculation step of the radix
calculation.
9. The method according to claim 6 and further comprising decoding
the data transmitted in one direction using an FFT section which
includes a memory for receiving time domain data describing a
received signal, and a processing unit including an FFT processing
unit iteratively operating an algorithm composed of radix
calculations on the data stored in the memory, the method including
in at least one of the iterations determining that one or more
inputs to at least one radix calculation are zero, and accordingly
simplifying the radix calculation.
10. The method according to claim 9 wherein simplifying the radix
computation comprises omitting a calculation step of the radix
calculation.
11. A method of performing an IFFT transform as part of a method of
encoding data for transmission along a line within a bi-directional
communication protocol, the method comprising: receiving amplitude
data specifying the respective amplitudes of a plurality of tones;
and iteratively operating an algorithm composed of radix
calculations on the data stored in the memory to generate
time-domain data; the method including, in at least one of the
iterations, determining that one or more inputs to at least one
radix calculation are zero, and accordingly simplifying the radix
calculation.
12. A method of performing an FFT transform as part of a method of
decoding data transmitted along a line within a bi-directional
communication protocol, the method comprising: receiving time
domain data describing the received signal; and iteratively
operating an algorithm composed of radix calculations on the data
stored in the memory to generate amplitude data specifying the
respective amplitudes of a plurality of tones; the method
including, in at least one of the iterations, determining that one
or more inputs to at least one radix calculation are zero, and
accordingly simplifying the radix calculation.
13. A communication apparatus for use to implement a process of
two-directional communication of data over a line, the
communication employing a bandwidth partitioned into a number of
bands including at least one band associated with each of the two
directions, the apparatus including: a signal generation section
for generating a signal by encoding the data carried in one
direction by modulation of a plurality of tones defined within the
at least one band associated with that one direction, the signal
generation section including: an input section for receiving data
and transforming it into frames; an encoder for using the frames to
generate complex amplitude data characterizing the amplitude of the
tones associated with the one direction; an IFFT processing unit
for receiving the amplitude data, and iteratively operating an
algorithm composed of radix calculations on the data stored in the
memory to generate time-domain data; and a processor arranged, in
at least one of the iterations, to determine that one or more
inputs to at least one radix calculation are zero, and accordingly
control the IFFT processing unit to simplify the radix calculation;
and a signal transmission section including a line driver for
transmitting a signal based on the time-domain data.
14. The communication apparatus according to claim 13 wherein the
apparatus is operative to function in a selected one of: a first
mode in which data is transmitted on all the tones associated with
communication in a corresponding direction; and at least one second
mode in which data is transmitted on a subset of the tones
associated with the corresponding direction, the subset being
selected as a set of 2.sup.n consecutive tones, the processor being
arranged when the apparatus is in a said second mode to simplify
the radix calculation in at least the first stage to omit radix
calculations which do not take input values representing any of
said set of tones.
15. The communication apparatus according to claim 14 wherein the
processor is arranged, when the apparatus is in a said second mode,
to simplify the radix calculation in at least the first stage to
omit radix calculations which do not take as input values amplitude
data representing amplitudes of any of said set of tones.
16. The communication apparatus according to claim 13 wherein said
apparatus is operative to receive a signal in which there are a
plurality of bands associated with said one direction, each of the
bands having a number of tones which is substantially equal to a
power of 2, and the bands being spaced apart by a number of tones
which is substantially equal to a power of 2.
17. A communication apparatus for implementing a process of
two-directional communication of data over a line, the
communication employing a bandwidth partitioned into a number of
bands including at least one band associated with each of the two
directions, the apparatus including: a signal reception section for
receiving a signal transmitted in one direction and encoding data
by modulation of a plurality of tones defined within the at least
one band associated with that one direction, the signal reception
section including: an input section for receiving the signal and
generating time domain data; an FFT processing unit for receiving
the time domain data, and iteratively operating an algorithm
composed of radix calculations on the data stored in the memory to
generate amplitude data for the respective tones; a processor
arranged, in at least one of the iterations, to determine that one
or more input values to at least one radix calculation are zero,
and accordingly control the FFT processing unit to simplify the
radix calculation; and a decoder section for extracting data from
the amplitude data.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application relates to the following co-pending and
commonly assigned patent applications, all filed concurrently
herewith: Ser. No. ______, entitled "Allocating Data Between Tones
in a VDSL System" (attorney docket number 2005 LW 2383), Ser. No.
______, entitled "VDSL Protocol with Low Power Mode" (attorney
docket number 2005 LW 2385), and Ser. No. ______, entitled "Trellis
Modulation Protocols for a VDSL System" (attorney docket number
2005 LW 2386), which applications are hereby incorporated herein by
reference.
[0002] This application claims priority to Singapore Patent
Application 200401383-5, which was filed Mar. 5, 2004, and is
incorporated herein by reference.
TECHNICAL FIELD
[0003] The present invention relates to methods for transmitting
data, in particular over telephone lines (typically, copper
telephone lines) or similar lines. It further relates to systems
arranged to perform the methods.
BACKGROUND
[0004] The use of fast Internet connections has grown rapidly over
the last few years, and consequently the demand for broadband
(high-speed) connections is increasing.
[0005] One technology that is very well known in the market is
Asymmetric Digital Subscriber Line (ADSL) technology. This employs
the frequency spectrum indicated schematically in FIG. 1.
"Upstream" communications (that is in the direction from the home
or office user premises, "customer premises equipment" or "CPE", to
the "central office", or "Co" or DSLAM, FTTC, or Fibre To The Curb,
or FTTH, Fibre To The Home cabinets) are transmitted on frequencies
in the range of 25 kHz (i.e., above the maximum audible frequency
of 4 kHz) to 138 kHz. "Downstream" communications are in a higher
frequency band from 138 kHz to an upper limit. According to the
first two versions of ADSL (ADSL and ADSL2) the downstream band
goes up to 1.1 MHz, whereas in ADSL2+ it goes up to 2.2 MHz. The
upstream can be also extended from 0 khz up to 276 kHz, also known
as All Digital Loop and extended upstream. Within each of the
upstream and downstream bands, the range is divided into 4 kHz
intervals, "tones," so that the downstream band includes 256 tones
in ADSL and ADSL2 (which is capable of transmitting 8 MBps), and
512 tones in ADSL2+(which is capable of transmitting 28 MBps). Each
tone is encoded by quadrature amplitude modulation ("QAM"), and can
encode between 0 and 15 bits. During a training phase, the line
conditions (signal to noise ratio, SNR) of each of the tones is
estimated, and the number of bits which will be encoded in each
tone during each frame is selected.
[0006] In a typical ADSL modem, the main sections are (i) a Digital
Interface (which may use asynchronous transfer mode (ATM)); (ii) a
Framer (also referred to here as a framing unit); (iii) an DMT
Modulator; (iv) the AFE (Analog Front End); and (v) a Line
Driver.
[0007] The framer multiplexes serial data into frames, generates
FEC (forward error correction), and interleaves data. FEC and data
interleaving corrects for burst errors. This allows DMT-based ADSL
technology to be suitable for support of MPEG-2 and other digital
video compression techniques. For the transmit signal, an Encoder
encodes frames to produce the constellation data for the DMT
Modulator. It assigns the maximum number of bits per tone (based on
measured SNR of each tone) and generates a QAM constellation where
each point represents a digital value. Each constellation point is
one of N complex numbers, x+iy, where x and y are the phase and
amplitude components. The summation of bits in all carriers,
multiplied by the frame rate (4 kHz), represents the data rate. For
the receive signal, the decoder converts QAM symbols back into the
data bitstream.
[0008] In the DMT Modulator, a frequency domain processor
implements FFT/IFFT and associated processing. In the transmit
path, the Inverse Fast Fourier Transform (IFFT) module accepts
input as a vector of N QAM constellation points and duplicates each
carrier with its conjugate counterpart so the 2N output samples are
real. The 2N time domain samples may have for example the last
2N/16 samples appended as a cyclic extension (which may include a
cyclic suffix, a windowing function and/or a cyclic prefix
extension) for every symbol, and are then delivered to a DAC
(digital-to-analog converter). The set of time domain samples
represents a summation of all the modulated sub-channels, for the
duration of one data frame. In the receive path, the first 2N/16
samples (cyclic prefix) from the ADC are removed from every symbol.
A FFT module transforms the carriers back to phase and amplitude
information (N complex QAM symbols). Correction for attenuation of
the signal amplitude and phase shifts (i.e., overall distortion) is
implemented. If the QAM constellation is thought of as points in a
grid where rows and columns represent phase and amplitude
information respectively, then the grid effectively rotates
reference to the constellation points to correct for these
distortions.
[0009] Based on the SNR, which has been established for the tones,
they are classified based on the SNR such that a "path" is selected
for each tone through the encoding device, and each of the tones is
transmitted along to the framing unit through the corresponding
selected transmission path. This is illustrated in FIG. 2(a), in
which the framing unit 1 for producing V/ADSL frames receives data
along two paths 2, 3. Each path 2, 3 leads to a respective block 4,
5, which constructs respective portions of frames. The frame is
shown in FIG. 2(b), including a portion 6 generated by block 8, and
a portion 7 constructed by a block 9 (which may be an interleaver).
The outputs of the blocks 4, 5 are stored respectively in a fast
buffer 8 and interleaved buffer 9, until they are transmitted out
of the framing unit 1. Since the interleaver 5 interleaves data
over a period of time, data transmitted along path 3 will have a
different (higher) latency than data transmitted along the path 2.
Thus, these two paths are referred to as different "latency paths"
(e.g., they may be referred to as LP1 and LP2). Note that both
paths LP1 and LP2 may be interleaved.
[0010] DMT technology also includes a feature known as "tone
ordering". This means that the encoder, in forming VDSL symbols
(there may be multiple VDSL frames within one VDSL symbol),
determines the order in which subcarriers are assigned bits. The
term tone ordering is wide enough to include both (i) determining
the order in which the subcarriers are assigned data transmitted
along a given latency path; and (ii) the order in which the
subcarriers are assigned data transmitted along the different
latency paths.
[0011] Furthermore, the number of bits that are transmitted by each
of the tones may be modified if the estimated SNRs of the tones are
revised: increasing the number of bits stored per frame in some
tones and correspondingly reducing the number of bits stored per
frame in other tones. There could be other reasons to dynamically
change the bit allocation for spectral reasons too. This process is
known as "bit swapping."
[0012] For further details of the ADSL2 standard, the reader is
referred to the document ITU-T Recommendation G.992.3 published by
the International Telecommunication Union, the disclosure of which
is incorporated herein by reference in its entirety.
[0013] While ADSL provides Internet connections that are many times
faster than a 56K modem, they still are not fast enough to support
the integration of home services such as digital television and
Video-on-Demand. However, another DSL technology known as very high
bit-rate DSL (VDSL) is seen by many as the next step in providing a
complete home-communications/entertainment package.
[0014] In contrast to ADSL, a conventional VDSL standard (here
referred to as VDSL1) uses a number of bands, e.g., as shown in
FIG. 3, which may go up to, for example, 12 MHz. Data rates are
typically larger than those of ADSL, e.g., 8k samples per VDSL
symbol for 4096 point-FFT. VDSL has a number of further differences
from ADSL. For example, VDSL1 has different framing method from
ADSL2 (for example, with no sync symbol), it does not include
Trellis encoding, and its interleaving system is different. In the
ADSL2 system, the tone ordering is applied to all the tones used
for communication in a given direction. Up until now, two sets of
memories were required on a chip. If this feature is incorporated
into future versions of VDSL, here referred to as VDSL2, with 4k
tones or higher, each of the bit allocation table, gain tables,
tone ordering tables each for 4k tones requires significant on-chip
memory.
SUMMARY OF THE INVENTION
[0015] Embodiments of the present invention aim to provide new and
useful protocols for transmitting data through lines such as
telephone lines. Typically these protocols have transmission rates
of over 24 Mbps, and often much higher.
[0016] In general terms, embodiments of the invention propose
techniques which reduce the computational complexity of the
IFFT/FFT section that a data transmission/reception apparatus has
to perform, taking into account the nature of conventional IFFT/FFT
algorithms. These algorithms operate using "butterflies"
representing complex calculations performed on input values, and
composed of "radix calculations." The radix calculations may be
regarded as relatively "simple" if only one input value is non-zero
and even simpler (in fact, trivial) if all the input values are
zero. In certain circumstances (as described below) it is possible
to use pre-knowledge of which tones that have zero amplitudes to
simplify the calculations required, and thus save power for
example. From one point of view, the invention proposes that the
tones having non-zero amplitude are selected to maximize (or at
least increase) the number of simple radix calculations, to
increase the savings possible.
[0017] As in conventional systems, the total number of tones
available for the bi-directional communication is generally a power
of two. If the tones having non-zero amplitude are a set of
consecutive tones, then the number of simple radix calculations is
high (at least in the first stage) if there are about 2.sup.n
consecutive tones in the set, where n is an integer.
[0018] Similarly, if the tones having non-zero amplitudes are two
groups of consecutive tones, then the number of radix calculations
having more than one non-zero input is low (at least in the first
stage) if the groups of tones are spaced apart by about 2.sup.m
tones, where m is an integer.
[0019] A first aspect of the invention proposes in general terms
that the bands for the transmit and/or receive directions are
selected so that the IFFT/FFT algorithms include a relatively large
number of simple radix calculations.
[0020] The IFFT/FFT module uses the information that certain of the
tones have zero amplitude to simplify the computation it
performs.
[0021] A second aspect of the invention proposes in general terms
that the data transmission/reception includes a first ("high data
transmission rate") mode and at least one second ("reduced data
transmission rate") mode in which the rate of data transmission is
lower than in the high data transmission rate mode. In the reduced
data rate transmission mode, data is only encoded in a subset of
the total number of tones employed in the high transmission rate
mode, and this subset is selected such that the IFFT/FFT operations
include a large number of simple radix calculations.
[0022] The IFFT/FFT module (which, when performing the high data
transmission rate mode, employs an algorithm designed to be capable
of processing data specifying the full range of tones available for
transmission in the corresponding direction) is switched, in the
reduced data transmission rate mode(s), to a mode of operation that
uses the information that certain of the tones are not used to
simplify the computation it performs.
[0023] The reduced-power mode(s) may be useful when the volume of
data that is to be transmitted is reduced, since the economies in
the IFFT/FFT module lead to reduced power consumption and reduced
memory requirements. It is motivated by the observation that while
DSL communication cannot be interrupted completely, the volume of
data that it is required to transmit varies considerably with time,
and the possibility of a reducing power consumption at certain
times is advantageous, for example, to reduce unwanted heat
generation or unwanted spectral disturbances to other systems.
[0024] In two of the related applications referenced above, it is
proposed that tones may be grouped (e.g., subsets of the tones may
be defined; each of these subsets is composed only of tones that
are used for transmission in the same direction). This grouping may
have one of two functions. Firstly, the data that is to be
transmitted using a given group of tones can be Trellis encoded
together. Secondly, the group of tones can be used for one of more
of (i) bit allocation; (ii) bit swapping; (iii) tone ordering;
and/or (iv) gain allocation. The purpose of performing the five
operations on groups of tones (rather than, for example, on all
tones associated with data transmission in the same direction) is
to reduce the computational and memory requirements of coding and
decoding. This concept may be combined with the second aspect of
the present invention. For example, in the high data rate
transmission mode, the tones can be grouped such that those tones,
which will be used in the reduced data transmission rate mode(s),
are grouped together. Thus, the transition between the two modes
means ceasing to transmit complete groups of tones, which minimizes
the interference with the various uses of the groups described in
the previous paragraph.
[0025] A third aspect of the invention relates to the IFFT/FFT unit
employed in implementing the first and second aspects of the
invention. As described above, in order to obtain power savings,
the FFT/IFFT unit is capable of receiving control inputs that alter
its mode of operation, selecting modes of operation that use the
information that certain of the tones have a zero amplitude, and
thus skipping certain of the stages required in a full IFFT/FFT
algorithm.
BRIEF DESCRIPTION OF THE DRAWINGS
[0026] Preferred features of the invention will now be described,
for the sake of illustration only, with reference to the following
figures in which:
[0027] FIG. 1 shows the frequency usage of a conventional ADSL
technique;
[0028] FIG. 2, which is composed of FIGS. 2(a) and 2(b),
illustrates tone ordering in a conventional ADSL technique;
[0029] FIG. 3 shows the frequency usage of a conventional VDSL
technique;
[0030] FIG. 4 is composed of FIGS. 4(a) to 4(c), which respectively
show a novel IFFT/FFT module which is a first embodiment of the
invention, a data transmission section of a transceiver using the
module, and a data reception section of a transceiver using the
module.
[0031] FIG. 5 shows a known band plan;
[0032] FIG. 6 shows a radix-2 butterfly;
[0033] FIG. 7 shows the result of pre-processing the band plan of
FIG. 5 using the radix-2 butterfly of FIG. 6;
[0034] FIG. 8, which is composed of FIGS. 8(a) to 8(d), shows a
first band plan of a protocol used by an embodiment of the
invention, and the steps of processing it;
[0035] FIG. 9, which is composed of FIGS. 9(a) to 9(d), shows a
second band plan of a protocol used by an embodiment of the
invention, and the steps of processing it;
[0036] FIG. 10, which is composed of FIGS. 10(a) and 10(b), shows
schematically the data transmission rate in various modes of a
protocol according to an embodiment of the invention;
[0037] FIG. 11 shows a butterfly of a known IFFT/FFT algorithm;
[0038] FIG. 12, which is composed of FIGS. 12(a) to 12(d), shows
stages of the IFFT processing in a low power mode of an embodiment
of the invention; and
[0039] FIG. 13, which is composed of FIGS. 13(a) to 13(d), shows
stages of the FFT processing in another low power mode of another
embodiment of the invention.
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
[0040] Embodiments of the invention will now be described. For the
sake of simplicity, many features of the protocol operated by these
embodiments are not described, since they are according to the ADSL
standard (which is described for example in the document ITU-T
Recommendation G.992.3 published by the International
Telecommunication Union and is incorporated herein by
reference).
[0041] These embodiments make use of a novel IFFT/FFT module 10
shown in FIG. 4(a), and which is itself an embodiment of the
invention.
[0042] Considering first the case that the module is used to
perform an IFFT transform, the module includes a buffer 11, which
receives amplitude data and which, following the IFFT transform
operation, transmits frequency domain data. The IFFT transform is
performed by a processing unit 12 which repeatedly reads data from
the buffer 11, processes it according to a butterfly operation, and
returns it. This is performed under the control of a processor 13
which controls the processing unit 12 to simplify (truncate) the
algorithm it performs (alternatively in the implementation the
processing unit 13 may be embedded as a part of processing unit
12). Specifically, when the processing unit 12 is performing a
stage of the IFFT operation in which the inputs to number of the
radix calculations are known to be zero, the processor 13 controls
the processing unit 12 to simplify its algorithm by omitting at
least some of the unnecessary calculations implied by the zero
values.
[0043] The structure of a data transmission section of a VDSL
transceiver incorporating this module is shown in FIG. 4(b). It
includes a framer unit 21, an interleaver unit 22, a QAM encoder 23
generating complex amplitude data for respective tones, the IFFT
module 10 of FIG. 4(a), a filter 24, a DAC 25 and a line driver 26.
Note that in the complete system the transmit and receive
directions may be coupled together (for example, the section shown
in FIG. 4(c) which is described below, may additionally include
echo-cancellation and also equalizations filters).
[0044] Turning now to the case of a data receiving section of the
transceiver, the FFT can be performed using the module of FIG. 4(a)
but in this case the memory 11 receives from outside the module the
time-domain data, and, following the FFT operation, outputs
amplitude and phase (x+iy) for respective tones.
[0045] The structure of a data transmission section of a VDSL
transceiver incorporating this module is shown in FIG. 4(c). It
includes a signal input section 31 connected to the line for
receiving signals, an analog-to-digital converter 32, a filter 33,
an FFT module 10, a QAM decoder 34, a de-interleaver 35, and a data
extraction unit 36 for extracting data from frames output by the
de-interleaver 35.
[0046] Even with existing band plans, the IFFT/FFT module of FIG.
4(a) is capable of making savings by controlling the IFFT/FFT
module to omit unnecessary calculations, thereby reducing the
computational work of the IFFT/FFT calculations. Suppose that the
band plan is the known band plan 997 (shown in FIG. 5), where the
two shaded areas (tones 1 to 696, and 1182 to 1634) represent the
two bands used for transmission in one direction. In other words,
when the IFFT module receives amplitude data indicating that a
certain tone has a non-zero value, the portion of the table
corresponding to that tone is shown shaded in FIG. 5.
[0047] FFT transforms and IFFT transforms may be regarded as a
plurality of stages, each involving a butterfly ("radix
calculation"). As an illustration of the power saving available
using the IFFT/FFT module of FIG. 4(a), suppose that it operates
using the well-known radix-2butterfly shown in FIG. 6. In the
pre-processing stage, for IFFT each butterfly processing tone N
takes the other sample from tone (N-4096). Applying this to the
band-plan of FIG. 5, each butterfly at the pre-processing stage,
has at most one non-trivial input. Thus no complex addition is
needed in these butterflies, only one complex multiplication is
needed. There could be many other butterflies where both inputs are
trivial inputs and could be skipped. If the number of non-zero
tones is 1k in the downstream direction, then only 1k complex
multiplications are required. The other 3k butterfly processing
stages could be skipped. Referring to FIG. 5, no more butterfly
computation is needed in this stage. The result of the
pre-processing is shown in FIG. 7. In the next subsequent stages,
if the band separation is reduced the number of such reduced
radix-2 butterflies doubles from one stage to another as the stride
taken halved from one stage to another.
[0048] The explanation above assumes that the processor of the
IFFT/FFT module of FIG. 4(a) uses the butterfly of FIG. 6. For
butterflies of different radices there are different potential
savings.
[0049] Other systems, which are embodiments of this invention, also
include the feature of selecting the tones having non-zero
amplitudes for the downstream and upstream directions so as to
reduce the power of the FFT/IFFT module and have efficient
computations. With the band plans appropriately defined, only a
small number of computations will be required (at least in the
first stages) and there will be a considerable power saving. The
idea here is to propose a scheme such that the FFT/IFFT module only
processes the non-trivial data, hence saving a large amount of
power. The IFFT/FFT module is controllable to omit those
calculations that are not required in view of the selected band
plan. The power saving can be more than 50% depending on the number
of tones that are used to carry the relevant data. Consequently, it
lowers the heat dissipation requirements. This is particularly
important for remote DSL equipment, where heat is a challenging
problem.
[0050] If the downstream band is configured to a number of tones,
which is a power of two, efficient implementation could be drawn
and significant savings could be achieved. Due to the architecture
of the FFT/IFFT, the samples taken for each butterfly computation
in stage 0 involves at most one non-trivial sample. This
significantly reduces the computation since the samples with value
zero do not contribute to the computation and can be bypassed.
[0051] The following explanation is based on 4K tones and a radix-2
butterfly. There are eight stages of FFT/IFFT processing and a
pre-processing or post-processing stage. In conventional VDSL band
plans, tones 513 to 575 are used for all downstream transmission
profile (TS 101 270-2 V2.0.8). By contrast in one embodiment of the
present invention the band plan is adjusted as shown in FIG. 8(a)
whereby the tones assigned to transmission in each direction are
aligned to get fewer non-trivial computations. Specifically, FIG.
8(a) shows the initial data distribution in the memory. When
amplitude data indicates that a certain tone has a non-zero value,
the portion of the table corresponding to that tone is shown
shaded. Note that (by a trivial notation difference from FIG. 5)
the tones are numbered differently (0 to 4095 instead of 1 to
4096).
[0052] FIG. 8(b) shows the result of the pre-processing stage
(again, zero values are indicated by no shading; darker shading
indicates elements that are transformed from zero to non-zero
values by the pre-processing). The radix-2 butterfly takes in two
samples in strides of 2k for the first stage, for example {X.sub.1,
X.sub.2048}. Since X.sub.2048 is zero, the two outputs of the
radix-2 butterfly are {X.sub.1, X.sub.1W.sub.1} where W.sub.1 is
the associated twiddle factor. From FIGS. 8(a) and (b), it is clear
that all the radix-2 butterflies in the pre-processing phase and
also at stage 0 have only one non-zero value each. It is possible
that the pre-processing and stage 0 twiddle factors be combined
together into a single stage. These twiddle factors are a subset of
the set of twiddle factors needed for the 4K tones IFFT, so no
pre-computation and additional storage are required. The outputs
are again the product of the non-zero input and a twiddle factor.
This process saves one complete stage and significant reduction in
computational cycles as well as power consumption. Those
butterflies with all inputs of zero value do not have to be
processed at all. The radix-2 butterflies in the first stage have
either 1 non-zero input or all inputs of value zero. After the
first stage of radix-2 processing, some samples still have zero
value if the frequency band allocation is done appropriately. If
the frequency band groups are chosen with steps of two to power n,
2.sup.n where n is an integer value, most computational savings
could be achieved while IFFT/FFT processing. The pre-processing
stage of the IFFT computation could be combined with the processing
of 1st stage of the IFFT processing hence saving computational
cycles, memory bandwidth and power consumption.
[0053] FIG. 8(c) shows the result of stage 0 processing. Note that
this has the same occupancy as FIG. 8(b), because the tones of the
radix-2 butterflies are spaced apart by 2048. For example, the tone
{2096} and tone {4095} are combined in by radix-2 butterfly and the
output is written back to the same locations in the table. FIG.
8(d) shows the result of stage 1 processing. For stage 1, the two
inputs spaced by 1024 samples apart are taken to the butterfly in
the same fashion as above. For stage 2 of the processing (not
shown) samples that are 512 samples spaced apart are taken to the
butterfly unit.
[0054] A second example of a suitable proposed band plan according
to this embodiment is shown in FIG. 9(a), where the significance of
shaded and un-shaded entries is as in FIG. 8(a). In this band plan
too the two bands in a given direction (tones 63 to 575, and tones
1473 to 1984) each have 2.sup.n tones, and are spaced apart by
2.sup.m tones (note that n is not equal to m). Pre-processing leads
to the usage of tones shown by shading in FIG. 9(b); stage 0
processing to the usage of tones is shown by shading in FIG. 9(c);
and stage 1 processing to the usage of tones is shown by shading in
FIG. 9(d).
[0055] Note that while it is preferred in this embodiment for each
of the bands to have exactly 2.sup.n tones, and be spaced apart by
exactly 2.sup.m tones (n is not necessarily equal to m), as in
FIGS. 8(a) and 9(a), exact conformity with this rule is not
required, and lower (but still appreciable) savings compared to the
band plan of FIG. 5 are possible with small departures from the
rule, provided that the number of tones per band is substantially
equal to a power of two, and the number of tones spacing bands
apart is also substantially equal to a power of two. For example,
reasonable savings may be achieved if the number of tones is say
2.sub.n-k, where k is preferably less than 10% of 2.sup.n and more
preferably less than 5% of 2.sup.n. Similarly, the spacing of the
bands is preferably a number of tones, which may be written
2.sup.m-j, where j is preferably less than 10% of 2.sup.m and more
preferably less than 5% of 2.sup.m.
[0056] We now turn to embodiments of the invention that are
protocols permitting a low power mode of operation, which permits a
saving of power consumption in the IFFT in the case of the encoder,
or the FFT in the case of the decoder.
[0057] In the second embodiment of the invention, the protocol
switches from a high data transmission rate mode referred to here
as L.sub.1, to a low data rate transmission mode referred to here
as L.sub.2. This is illustrated in FIG. 10(a). Note that there may
be more than two modes of operation, such that there is a choice of
different power saving modes. This is illustrated in FIG. 10(b) in
which the protocol uses a first power saving mode L.sub.2 at a
first time, and a second power saving mode L.sub.4 at other
times.
[0058] In an embodiment of the invention, this is achieved by
providing the possibility of a low power mode in which data is only
transmitted on certain of the frequencies. The other tones are all
zeros. The transmitter section of the embodiment again has the
overall structure of FIG. 4(b) but in this case the processor 13
has the additional function of switching between the high and low
power modes. The processor 13 may also control the line driver to
reduce the power supply, and/or control the sampling rate of the
DAC. The IFFT processing unit 12 of FIG. 4(a) is controlled in this
case also to perform a modified algorithm that incorporates
knowledge of what frequencies are unused. This modified algorithm
has a reduced computational requirement compared to the form of the
IFFT used for the full range of tones. As discussed below, this can
result in a power saving of over 50%, depending on the number of
tones that are used to carry data in the low power mode. This is
particularly important for remote DSL equipment, where heat is a
challenging problem.
[0059] In the embodiment, the non-zero tones are selected such that
in the first stage ("stage 0") the samples taken for each butterfly
computation involve at most one non-trivial sample, and all the
trivial samples (involving coefficients which are all zero, or only
1 non-zero coefficient) are bypassed. The IFFT module (or FFT
module in the case of the decoder) is controlled to modify its
operation based on the saving that is possible due to the trivial
samples.
[0060] The following explanation, with reference to FIG. 11, is
based on the use of 4k tones and a radix-16 butterfly, which is
implemented using radix-4. There are three stages of FFT/IFFT
processing, and also a pre-processing or post-processing stage.
Suppose that the full set of tones are labeled 0 to 4095, that in
the high-power mode tones 513 to 575 are used for downstream data
flow (as in VDSL according to TS 101 270-2 V2.0.8), and that in the
low power mode only these 63 tones are used and the remaining
downstream tones are zero. This is illustrated in FIG. 12(a) where
the non-zero tones (i.e. tones of non-zero amplitude) are
shaded.
[0061] After the pre-processing, tones 512 to 575 and 3521 to 3583
are non-zero. FIG. 12(b) shows this data distribution.
[0062] The radix-16 butterfly of FIG. 11 takes in 16 samples in
strides of 256, for example {X.sub.1, X.sub.257, X.sub.513, . . .
X.sub.3585}. Each radix-4 butterfly in the first phase of the
radix-16 butterfly takes the samples in strides of 1024; thus,
samples X.sub.513, X.sub.1537, X.sub.2561 and X.sub.3865 are taken
for butterfly processing. Since only X.sub.513 is non-zero, the
four outputs of the radix-4 butterfly are {X.sub.513,
X.sub.513W.sub.1, X.sub.513W.sub.2, X.sub.513W.sub.3} where
W.sub.1, W.sub.2 and W.sub.3 are the associated twiddle
factors.
[0063] From FIG. 11 it is clear that the four radix-4 butterflies
in the second phase have only one non-zero value each. The outputs
are again the product of the non-zero inputs and twiddle factors.
Hence, the radix-16 butterfly outputs are {X.sub.513,
X.sub.513T.sub.1, X.sub.513T.sub.10, X.sub.513T.sub.11,
X.sub.513T.sub.12, X.sub.513T.sub.13, X.sub.513T.sub.14,
X.sub.513T.sub.15}, where T.sub.i (i=1, . . . , 15) are the
combined twiddle factors. These twiddle factors are a subset of the
set of twiddle factors needed for the 4k tones of the FFT/IFFT, so
no pre-computation or additional storage is required. The radix-16
butterflies in the first stage have either 1 non-zero input or all
inputs of value zero. Those butterflies with inputs of zero value
do not have to be processed at all. After the first stage of
radix-16 processing, the coefficients are as shown in FIG. 12(c).
Some samples still have zero value.
[0064] The second stage of the IFFT processing takes data in
strides of 16, for example {Y1, Y17, Y33, Y49, Y65, Y81, Y97, Y113,
Y129, Y145, Y161, Y177, Y193, Y209, Y225, Y241}). The first 4
samples and the last 4 samples are non-zero. Therefore, for each
radix-4 butterfly in the first segment, two samples are non-zero
and two are zeros. The number of complex additions is halved. There
would be no saving in the second stage since the inputs to the four
radix-4 butterflies are all non-zero.
[0065] There is no potential saving in the third stage. Table 1
shows the breakdown of the computation saving in each stage as a
factor of the number of non-trivial tones. For the number of tones
from 48 to 63, the pre-processing stage, stage 0 and stage 1 have a
computation reduction of approximately 97%, 80% and 10%
respectively (1 CMAC.apprxeq.5 CADD). Overall saving is about 40%.
For a number of tones less than 16, even stage 1 can be reduced by
up to 40%.
[0066] There is no saving in the IFFT processing if the number of
tones exceeds 127. Hence, it is preferable to limit the number of
tones to this number, and specifically to the range from 513 to
639. TABLE-US-00001 TABLE 1 Computation Complexity Table for IFFT
Number of non-zero tones Pre-processing Stage 0 Stage 1 Stage 2
0-15 0-15 BF 0-30 BF16' 256*(2 BF4.sub.1 + 4 256 BF4.sub.2) (1
trivial BF16 BF4.sub.1) 16-31 16-31 BF2 32-62 BF16' 256*(4
BF4.sub.1 + 4 256 BF4) (1 trivial BF16 BF4.sub.1) 32-47 32-47 BF2
64-94 BF16' 256*(2 BF4.sub.1 + 2 256 BF4.sub.2 + 4 BF4) BF16 (1
trivial BF41) 48-63 48-63 BF2 96-126 BF16' 256*(4 256 BF42 + 4 BF4)
BF16 64-79 64-79 BF2 128-158 BF16' 256*(2 BF4 + 256 2 BF42 + 4 BF16
BF4) 80-95 80-95 BF2 160-190 BF16' 256 BF16 256 BF16 96-127 96-127
BF2 192-254 BF16' 256 BF16 256 BF16 128-143 128-143 BF2 256 BF16
256 BF16 256 BF16 4K 2K BF2 256 BF16 256 BF16 256 BF16'=15
BF4.sub.1=3 BF16 CMAC, 0 CMAC, 0 CADD CADD (room for optimisation)
BF4.sub.2=4 CADD, 3 CMAC BF4=8 CADD, 3 CMAC
[0067] Here the term "BF4" means a radix-4 butterfly, BF2 mean a
radix-2 butterfly, etc. CADD stands for a complex adder operation,
and CMAC for a complex multiplier-accumulator.
[0068] We now analyze the power saving for the FFT processing.
Assume that in low-power mode, the 64 tones from 960 to 1023 are
non-trivial, as shown by shading in FIG. 13(a). These tones fit
into the upstream spectrum for all transmission profiles. Unlike
the IFFT section, these valid tones are the result of the FFT
processing and not the input to the processing. In this case, the
scenario is similar to the IFFT but reversed. Note that the
analysis here is based on a symmetrical decomposition of the FFT
algorithm. In stage 0, there is no potential saving as all the
outputs of this stage contribute to the final 64 tones. In stage 1,
there is some potential saving but it is only more significant if
the final output consists of less than 17 non-zero tones. The
saving is substantial in stage 2: only 128 reduced radix-16
butterflies need to be performed. These reduced butterflies consist
of only five radix-4 butterflies instead of eight. In the
post-processing stage, there are 64 radix-2 butterflies with a
single non-zero output. Computation saving in stage 2 and
post-processing stage are 69% and 97% respectively. Overall saving
is 32%. The tones recommended for the low-power mode is from 960 to
1023. Only 64 tones are proposed in this embodiment since the
upstream has lower traffic. TABLE-US-00002 TABLE 2 Computation
Complexity Table for FFT Number of non-zero Post- tones (n) Stage 0
Stage 1 Stage 2 processing 0-16 256*(BF16) 256*(6*BF4) 2*n*(5*BF4)
n*BF2 17-32 256*(BF16) 256*(BF16) 2*n*(5*BF4) n*BF2 33-48
256*(BF16) 256*(BF16) 2*n*(5*BF4) n*BF2 49-64 256*(BF16) 256*(BF16)
2*n*(5*BF4) n*BF2 65-80 256*(BF16) 256*(BF16) 2*n*(5*BF4) n*BF2
81-96 256*(BF16) 256*(BF16) 2*n*(5*BF4) n*BF2 97-112 256*(BF16)
256*(BF16) 2*n*(5*BF4) n*BF2 113-127 256*(BF16) 2*n*(5*BF4) n*BF2
256*(BF16) 128-144 256*(BF16) 256*(BF16) 256*(6*BF4) n*BF2 145-160
256*(BF16) 256*(BF16) 256*(6*BF4) n*BF2 161-176 256*(BF16)
256*(BF16) 256*(6*BF4) n*BF2 177-192 256*(BF16) 256*(BF16)
256*(6*BF4) n*BF2 193-224 256*(BF16) 256*(BF16) 256*(6*BF4) n*BF2
225-256 256*(BF16) 256*(BF16) 256*(6*BF4) n*BF2 4K 256*(BF16)
256*BF16 256*BF16 2K*BF2 BF4=8 CADD, 3 CMAC
[0069] We now briefly describe the process of switching between the
modes in the embodiments of FIGS. 12 and 13. The command message to
switch to low power mode is communicated by the ATU-C (ADSL
termination unit--central office). Once the ATU-R (ADSL termination
unit--remote) receives the message it may either accept the command
or reject the same. If ATU-R in its acknowledgement sends an accept
message, after a fixed duration coupled either with sync symbol,
the ATU-C may change the state from VDSL to a low band mode. It
will be a coordinated transition based on the command protocol, in
which all or a combination of one of the IFFT, filter, DAC and line
driver change their modes of operation. Since the ATU-C knows the
end-to-end delay, it may either synchronize the transition to a new
state after a fixed duration of transmitted frame or could also use
the synchronization frame as a reference. The ATU-C may also switch
to a different mode of transmission after a fixed synchronization
frame delay. A command message is appropriately defined to provide
the information for the mode of transmission desired (the bands
used, or limiting the FFT and frequency spectrum), and/or the delay
after which the switch will happen. The frames with a fixed
reference could be used to specify the delay.
[0070] As mentioned above, in two of the related applications
referenced above, it is proposed that tones may be grouped (e.g.
subsets of the tones may be defined; each of these subsets is
composed only of tones that are used for transmission in the same
direction). This grouping may have one of two functions. Firstly,
the data which is to be transmitted using a given group of tones
can be Trellis encoded together. Secondly, the group of tones can
be used for one or more of (i) bit allocation; (ii) bit swapping;
(iii) tone ordering; and/or (iv) gain allocation. The purpose of
performing the five operations on groups of tones (rather than, for
example, on all tones associated with data transmission in the same
direction) is to reduce the computational and memory requirements
of coding and decoding.
[0071] This concept may be combined with the present invention. For
example, suppose that a given group is defined to be the
frequencies 513 to 576 (i.e., the shaded tones of FIG. 12(a)). In
this case, the transition from the high power mode to the low power
mode of FIG. 12(a) would not involve disrupting any frequencies of
the group. This reduces the computational difficulty of the
transition (for example, the bit allocation table for the tones of
the group does not have to be modified during the transition).
[0072] Although only a few embodiments of the invention have been
disclosed in this application, many variations are possible within
the scope of the invention as will be clear to a skilled
reader.
* * * * *