A method of demodulating a received Discrete Multitone, DMT, signal, comprising: applying a first time-domain equalizer to the received signal to produce an equalized time domain sampled signal arranged in frames; performing a first Discrete Fourier Transform or Fast Fourier Transform on the equalized time-domain sampled signal to produce an initial transform result; applying a sliding Fast Fourier Transform function (100, 104) to a subset of the initial transform result corresponding to said first Discrete Fourier Transform or Fast Fourier Transform of a subset of the samples of the equalized time-domain sampled signal; adding a difference between selected samples of the equalized time-domain sampled signal to the result of the applying step to produce an accumulated sum; storing identification of selected tones of the DMT signal; initializing a tone index; multiplying the accumulated sum by a per-tone equalizer coefficient and accumulating the result with previous per-tone equalizer results; shifting the subset of the samples of the equalized time-domain sampled signal by a sample position; responsive to the current tone index value corresponding to a selected tone, repeating the applying, performing, adding, storing, initializing, multiplying, and shifting steps for the component of the initial transform result corresponding to the selected tone, to produce a last accumulated per-tone equalizer result for the selected tone; incrementing the tone index; repeating the performing of the repeated applying, performing, adding, storing, initializing, multiplying, and shifting steps until the tone index reaches a terminal value; responsive to the current tone index value corresponding to a selected tone, applying a frequency domain equalizer to the last accumulated per-tone equalizer result for the tone; and responsive to the current index value corresponding to a tone that is not selected, applying the frequency domain equalizer to the initial transform result for the tone. applying a first time-domain equalizer to the received signal to produce an equalized time domain sampled signal arranged in frames; performing a first Discrete Fourier Transform or Fast Fourier Transform on the equalized time-domain sampled signal to produce an initial transform result; applying a sliding Fast Fourier Transform function (100, 104) to a subset of the initial transform result corresponding to said first Discrete Fourier Transform or Fast Fourier Transform of a subset of the samples of the equalized time-domain sampled signal; adding a difference between selected samples of the equalized time-domain sampled signal to the result of the applying step to produce an accumulated sum; storing identification of selected tones of the DMT signal; initializing a tone index; multiplying the accumulated sum by a per-tone equalizer coefficient and accumulating the result with previous per-tone equalizer results; shifting the subset of the samples of the equalized time-domain sampled signal by a sample position; responsive to the current tone index value corresponding to a selected tone, repeating the applying, performing, adding, storing, initializing, multiplying, and shifting steps for the component of the initial transform result corresponding to the selected tone, to produce a last accumulated per-tone equalizer result for the selected tone; incrementing the tone index; repeating the performing of the repeated applying, performing, adding, storing, initializing, multiplying, and shifting steps until the tone index reaches a terminal value; responsive to the current tone index value corresponding to a selected tone, applying a frequency domain equalizer to the last accumulated per-tone equalizer result for the tone; and responsive to the current index value corresponding to a tone that is not selected, applying the frequency domain equalizer to the initial transform result for the tone.