US20010032225A1 - Method of frequency domain filtering employing a real to analytic transform - Google Patents
Method of frequency domain filtering employing a real to analytic transform Download PDFInfo
- Publication number
- US20010032225A1 US20010032225A1 US09/758,536 US75853601A US2001032225A1 US 20010032225 A1 US20010032225 A1 US 20010032225A1 US 75853601 A US75853601 A US 75853601A US 2001032225 A1 US2001032225 A1 US 2001032225A1
- Authority
- US
- United States
- Prior art keywords
- real
- analytic
- fft
- product
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000001914 filtration Methods 0.000 title claims abstract description 24
- 239000013598 vector Substances 0.000 claims description 38
- 230000004044 response Effects 0.000 claims description 36
- 230000009466 transformation Effects 0.000 claims description 20
- 230000015654 memory Effects 0.000 abstract description 9
- 230000005055 memory storage Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 30
- 238000010586 diagram Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 15
- 230000003044 adaptive effect Effects 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 12
- 230000006735 deficit Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000003111 delayed effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
Definitions
- the present invention relates generally to filtering and more particularly relates to a method for performing frequency domain filtering employing a real to analytic transform.
- DSP digital signal processing
- FIR finite impulse response
- K the number of taps implemented in the filter.
- the method generates an inherent delay of approximately K/2 samples. If the sampling frequency of the input (and output) signals is F S then the number of MACs performed every second is F S *K. For large filters or at high sampling rates this may become a burden for the computational machine performing the processing.
- FC Fast Convolution
- FFT Fast Fourrier Transform
- IFFT Inverse Fast Fourrier Transform
- An example of the use of the Fast Convolution technique may be found in voice band modem applications such as ITU V.32bis or ITU V.34.
- the technique is used to remove the echo signal generated by various line conditions and impairments.
- the far end echo canceler (FEEC) cancels the received echo which was generated on the remote side.
- the round trip delay (RTD) of the echo ranges from 30 ms to 2 seconds.
- the FEEC must delay the input signal using a delay registry whose depth is approximately the round trip delay.
- the FEEC must ‘rotate’ the emulated echo by the same frequency offset.
- the frequency offset can be tracked using phase locked loop (PLL) circuitry.
- PLL phase locked loop
- the quadrature component of the transmitted signal must either be stored beforehand or derived from the in-phase component. The former doubles the delays registry whereas the latter requires the use of an additional Hilbert filter which increases the computational intensity.
- Typical prior art modem implementation schemes such as the one illustrated in FIG. 1, comprise a data access arrangement (DAA) 42 , transmitter 32 , receiver 34 , digital to analog converter (D/A) 38 and analog to digital converter (A/D) 40 .
- DAA data access arrangement
- D/A digital to analog converter
- A/D analog to digital converter
- the full duplex voice band modem also employs finite impulse response (FIR) adaptive filters.
- FIR filters include the far end echo canceler 41 FIR, the near end echo canceler 33 FIR and the equalizer FIR within the receiver 34 .
- the communication system embodying the modem is usually required to cope with a vast majority of different communication channels each posing diverse channel and echo impairments.
- the present invention has been developed to provide a method of frequency domain filtering that overcomes the limitations and disadvantages of the prior art.
- Another object of the present invention is to provide a method for real to analytic conversion utilizing an ‘overlap and save’ frequency domain convolution which uses negligible additional CPU resources.
- a method of performing real to analytic fast convolution on a real input block and a set of real Finite Impulse Response (FIR) coefficients to generate a complex output vector comprising the steps of performing a first Fast Fourrier Transformation (FFT) on the real input block, performing a second FFT on the set of FIR coefficients, multiplying the results of the second FFT element by element with the frequency response of an ideal real to analytic transform to form a first product, multiplying the results of the first FFT element by element with the first product to yield a second product, performing an Inverse Fast Fourrier Transformation (IFFT) on the results of the second product to generate a complex output vector and forming a first real output block from the real portion of the output vector.
- FFT Fast Fourrier Transformation
- IFFT Inverse Fast Fourrier Transformation
- the ideal real to analytic transform may comprise a positive frequency real to analytic transform or a negative frequency real to analytic transform.
- a method of performing real to analytic fast convolution on a real input block and a set of real Finite Impulse Response (FIR) coefficients to generate a complex output vector comprising the steps of performing a first Fast Fourrier Transformation (FFT) on the real input block, performing a second FFT on the set of FIR coefficients, multiplying the results of the first FFT element by element with the frequency response of an ideal real to analytic transform to yield a first product, multiplying the results of the second FFT element by element with the first product to yield a second product, performing an Inverse Fast Fourrier Transformation (IFFT) on the second product to generate a complex output vector and forming a first real output block from the real portion of the output vector.
- FFT Fast Fourrier Transformation
- IFFT Inverse Fast Fourrier Transformation
- an apparatus for performing filtering and frequency shifting on a real input signal comprising real to analytic means for performing a real to analytic fast convolution on the input signal, the real to analytic means operative to output a first complex signal, frequency generator means for generating a second complex signal represented by e j ⁇ t , the frequency generator means operative to generate the second complex signal having any arbitrary frequency ⁇ , a multiplier coupled to the real to analytic means and the frequency generator means, the multiplier for multiplying the first complex signal by the second complex signal to yield a third complex signal and real means coupled to the multiplier, the multiplier for taking the real component of the third complex signal to yield the real output signal.
- the real to analytic means comprises means for performing a Fast Fourrier Transformation (FFT) on the real input to yield a first FFT output, means for performing a second FFT on a set of real Finite Impulse Response (FIR) coefficients to yield a second FFT output, means for multiplying the second FFT output element by element with the frequency response of an ideal real to analytic transform to yield a first product, means for multiplying the first FFT output element by element with the first product to yield a second product and means for performing an Inverse Fast Fourrier Transformation (IFFT) on the second product to generate the first complex signal.
- FFT Fast Fourrier Transformation
- FIR Finite Impulse Response
- a method of performing filtering and frequency shifting on a real input signal so as to generate a real output signal comprising the steps of performing a real to analytic fast convolution on the input signal to yield a first complex signal, generating a second complex signal represented by e j ⁇ t , wherein the frequency generated is any arbitrary frequency ⁇ , multiplying the first complex signal by the second complex signal to yield a third complex signal and taking the real component of the third complex signal to yield the real output signal.
- the step of performing a real to analytic fast convolution comprises the steps of performing a first Fast Fourrier Transformation (FFT) on the real input signal, performing a second FFT on a set of Finite Impulse Response (FIR) coefficients, multiplying the results of the second FFT element by element with the frequency response of an ideal real to analytic transform to form a first product, multiplying the results of the first FFT element by element with the first product to yield a second product and performing an Inverse Fast Fourrier Transformation (IFFT) on the results of the second product to generate a complex output vector.
- FFT Fast Fourrier Transformation
- FIR Finite Impulse Response
- FIG. 1 is a high level block diagram illustrating a typical implementation of a prior art full duplex voice band modem
- FIG. 2 is a detailed block diagram illustrating a first prior art implementation of the far end echo canceler
- FIG. 3 is a detailed block diagram illustrating a second prior art implementation of the far end echo canceler
- FIG. 4 is a high level block diagram illustrating a prior art frequency domain convolution apparatus
- FIG. 5 is a detailed block diagram illustrating a far end echo canceler utilizing real to analytic fast convolution constructed in accordance with an embodiment of the present invention
- FIG. 6 is a high level block diagram illustrating a first embodiment of a real to analytic fast convolution scheme of the present invention
- FIG. 7 is a high level block diagram illustrating a second embodiment of a real to analytic fast convolution scheme of the present invention.
- FIG. 8 is a high level block diagram illustrating the prior art ‘overlap and save’ frequency domain block convolution scheme
- FIG. 9 is a high level block diagram illustrating a frequency domain filter incorporating a real to analytic conversion filter constructed in accordance with an embodiment of the present invention.
- FIG. 10 is a high level block diagram illustrating the frequency domain filtering scheme of the present invention utilized in a frequency division multiplexing (FDM) application.
- FDM frequency division multiplexing
- the methods taught by the present invention are demonstrated within the context of the far end echo canceler filter function in a voice band full duplex communication system such as the ITU V.32bis modem whose maximum data rate is 14,400 bps or the ITU V.34 modem whose maximum data rate is 28,800 bps.
- the far end echo canceler filter can utilize a fast convolution scheme such as the scheme known as ‘overlap and save.’
- a fast convolution scheme such as the scheme known as ‘overlap and save.’
- one skilled in the art may apply the scheme taught by the present invention to other filters within the modem such as the equalizer filter which performs intersymbol interference (ISI) cancellation, the near end echo canceler filter and to other signal processing applications such as radio frequency (RF) modems and acoustic echo cancelers.
- ISI intersymbol interference
- RF radio frequency
- one skilled in the art may apply the method of the present invention to other fast convolution schemes such as the ‘overlap and add’ technique.
- the prior art full duplex voice band modem of FIG. 1 comprises a transmitter 32 , a receiver 34 , an echo canceler unit 36 , a summer 37 , a D/A converter 38 , an A/D converter 40 and a DAA or hybrid 42 .
- the echo canceler unit comprises a near end echo canceler filter 33 , a delay line 35 , a far end echo canceler filter 41 and a summer 31 .
- the transmitter receives transmit data in from a Tx data in port and outputs transmit (Tx) samples to the echo canceler unit 36 and the D/A converter 38 .
- the DAA functions to match the impedance between the telephone line and the transmitter and receiver by transforming balanced analog voltage on the two-wire pair from the central office (CO) to two two-wire unbalanced pairs, one for the transmitter and one for the receiver and vice versa.
- the echo canceler unit 36 functions to remove echoes from the received signal by applying an adaptive near end filter to cancel the near end echo and an adaptive far end filter to cancel the far end echo.
- the signal at the input to the far end filter is delayed by a delay line 35 so as to match the round trip delay (RTD) introduced by the network.
- the signals at the output of the far end filter and the near end filter are summed by summer 31 to produce the output of the echo canceler unit.
- the output of the echo canceler is then subtracted from the received signal using the summer 37 .
- the receiver outputs a digital receive Rx data out signal.
- FIG. 2 A detailed block diagram illustrating a prior art implementation of a passband far end echo canceler is shown in FIG. 2.
- the far end echo canceler 41 comprises an adaptive FIR filter 54 , Hilbert transform 56 , a delay registry 58 , multiplication by ‘j’ ( ⁇ square root ⁇ square root over ( ⁇ 1) ⁇ ) function 57 , summer 60 , phase lock loop (PLL) module 61 , multiplier 62 and real component extraction function 64 .
- j ⁇ square root ⁇ square root over ( ⁇ 1) ⁇
- PLL phase lock loop
- the transmitter Tx 32 generates a modulated pass band sample stream.
- the sample stream is delayed using a delay registry 35 , whose minimum depth is the maximal round trip delay introduced by the communication network.
- the signal then passes through the adaptive FIR filter 54 which functions to emulate the echo impairment path.
- the signal at this point is real.
- the signal then undergoes a real to analytic transform 59 which comprises a Hilbert transform function 56 , delay registry 58 , multiplication by ( ⁇ square root ⁇ square root over ( ⁇ 1) ⁇ ), and summer 60 .
- the signal then undergoes in-phase to quadrature conversion via the Hilbert transform function 56 which is implemented using an FIR filter.
- the real portion is delayed by delay registry 58 which functions to compensate for the delay introduced by the FIR Hilbert transform implementation.
- the depth of delay registry 58 is exactly half the number of taps of the FIR filter used to implement the Hilbert transform function.
- the real and imaginary portions of the signal are combined by summer 60 to yield an analytic signal.
- the complex output signal of the real to analytic transform 59 is multiplied by an adaptive phase rotation correction factor, generated by the PLL 61 , via multiplier 62 .
- the phase lock loop 61 functions to estimate the accumulated phase offset e j ⁇ generated by the communication network.
- the real portion of the output of the multiplier 62 is then subtracted from the output of the A/D converter 40 along with the output of the near end echo canceler 33 via summer 37 .
- the resulting output of summer 37 is then input to the receiver Rx 34 .
- FIG. 3 A detailed block diagram illustrating a second prior art implementation of the far end echo canceler that attempts to overcome the problems of the far end echo canceler of FIG. 2 is shown in FIG. 3.
- the echo canceler 41 comprises an adaptive FIR filter 54 , multiplier 62 , phase lock loop 61 and real function 64 .
- the transmitter Tx 32 generates a complex analytic signal.
- An analytic signal has only one sided frequency components when viewed in the frequency domain (either positive or negative—positive in this implementation).
- the real portion of the complex sample stream is transmitted and passed to the near end echo canceler while the complex sample stream is delayed via delay registers 35 .
- the delayed complex signal is filtered by adaptive FIR filter 54 which functions to emulate the echo impairment path.
- the complex output signal of the AFIR filter is multiplied by an adaptive phase rotation correction factor e j ⁇ , generated by the PLL 61 , via multiplier 62 .
- the real portion 64 of the output of the multiplier is then subtracted from the A/D converter 40 samples along with the output of the near end echo canceler 33 via summer 37 . This result is then input to the receiver Rx 34 .
- the second prior art implementation of the far end echo canceler presented above also suffers from several disadvantages.
- One disadvantage is that the memory requirements for the delay registers is doubled due to complex signal storage.
- Another disadvantage is that, although the CPU resource consuming FIR Hilbert transform is eliminated, the CPU resource consumption of the adaptive FIR is doubled due to the fact that the adaptive filter operates on a complex signal rather than just the real portion of the signal. Since the AFIR 54 is usually a long filter, which compensates for the worst case echo impairment, this implementation requires a great deal of CPU resources.
- FIG. 4 A high level block diagram illustrating a prior art frequency domain convolution method is shown in FIG. 4. This method is widely used to convolve two time domain signals by multiplying their Fast Fourrier Transforms. The method comprises taking a first complex input and performing a first FFT function 210 , taking a second complex input and performing a second FFT function 212 and then multiplying the results of the first and second FFT functions using a multiplier 214 . An IFFT function 216 is then performed on the results of the multiplication to yield a complex output.
- the frequency domain filtering scheme provided by the present invention overcomes the disadvantages and limitations of the prior art.
- a detailed block diagram illustrating a far end echo canceler utilizing real to analytic fast convolution constructed in accordance with an embodiment of the present invention is shown in FIG. 5.
- the far end echo canceler 170 embodying the method of the present invention comprises a real to analytic fast convolution function 84 , multiplier 86 , PLL function 87 , real function 88 and first in first out (FIFO) (e.g., delay registers) 90 .
- FIFO first in first out
- the transmitter Tx 80 generates a passband (i.e., real component only) sample output stream.
- the sample stream is delayed using delay registry (i.e., FIFO) 82 .
- delay registry i.e., FIFO
- Each sample output from the transmitter is pushed into FIFO 82 .
- a buffer having a length N-K is input to the real to analytic fast convolution block 84 of the present invention which performs both adaptive filtering and a real to analytic conversion.
- the value N is the length of the FFT performed by the method and the value K is the length of the filter implemented by the method.
- output of the real to analytic fast convolution block 84 , the PLL 87 and the multiplier 86 are complex, as represented by the double lines emanating from each.
- the complex signal output by the real to analytic fast convolution block 84 is multiplied by an adaptive phase rotation correction factor e j ⁇ which is generated by the PLL 87 .
- the real portion of the signal output by the multiplier 86 is then stored in a FIFO 90 .
- the received signal output from the A/D converter is stored in a FIFO 98 .
- the signal from the near end echo canceler 94 is stored in a FIFO 96 .
- Each sample input to the receiver 92 is produced by subtracting one sample from FIFO 90 and one sample from FIFO 96 from a sample taken from FIFO 98 .
- the lengths of each of the delay registers or FIFOs used in the far end echo canceler are as follows: Delay Register/FIFO Length FIFO 82 max(RTD, N-K) FIFOs 96, 98 max(0, N-K-RTD) FIFO 90 N-K
- RTD is the estimated round trip delay measured in number of sample times.
- the size of the delay registers is exactly the estimated round trip delay.
- the application of the FFT algorithm requires a full buffer of length equal to the real to analytic fast convolution block 84 input buffer length N-K, it is required that the size of the FIFO 82 be greater than or equal to N-K samples.
- the output of the real to analytic fast convolution block 84 after phase compensation and taking the real portion, must be stored in another FIFO 90 .
- the size of the FIFO 90 is thus equal to the number of valid samples output by the real to analytic fast convolution block for each input buffer.
- the round trip delay is less than N-K, then the extra delay introduced by the FIFO 82 must be compensated for by the pair of FIFOs 96 , 98 each having a length N-K-RTD.
- the method of the present invention is advantageous in that it alleviates both the memory and CPU resource utilization problems described previously. Memory utilization is lowered due to the fact that only real samples are stored in the delay registry (i.e., FIFOs) thus obviating the requirement of double memories as in the second prior art scheme.
- CPU resource utilization is also lowered since the real to analytic fast convolution method of the present invention eliminates the need for time domain Hilbert transform filtering and is a much more efficient way of performing convolution on most computation machines.
- FIG. 6 A high level block diagram illustrating a first embodiment of a real to analytic fast convolution scheme of the present invention is shown in FIG. 6.
- the scheme is used to convolve the analytic part of real input samples with real coefficients.
- a first FFT 220 is performed on the real input samples and a second FFT 222 is performed on the real coefficients.
- real to analytic conversion is performed in the frequency domain by multiplying the frequency domain coefficients with the frequency response of an ideal real to analytic transform element by element.
- T P (i) is the frequency response of an ideal real to analytic (positive frequency) transform
- 0 ⁇ i ⁇ N is the transform size
- T N (i) is the frequency response of an ideal real to analytic (negative frequency) transform, 0 ⁇ i ⁇ N and N is the transform size. Note that when using T N (i), i.e., negative frequencies, the frequency shift multiplier e j ⁇ has to be conjugated (e ⁇ j ⁇ ). The half zeroed frequency spectrum and the results of the first FFT are then multiplied element by element via multiplier 226 . The results of the multiplication are then input to an IFFT function 228 to yield complex output samples.
- FIG. 7 A high level block diagram illustrating a second embodiment of a real to analytic fast convolution scheme of the present invention is shown in FIG. 7.
- This scheme is very similar to the scheme shown in FIG. 6. The difference being that the FFT of the real input samples, rather than the real coefficients, are multiplied by the frequency response of an ideal real to analytic transform element by element via multiplier 224 . In both schemes, the results achieved are the same, i.e., the output of the multiplier 226 is identical using both schemes.
- FIG. 8 A high level block diagram illustrating the prior art ‘overlap and save’ frequency domain block convolution scheme is shown in FIG. 8.
- K samples 102 are placed in a buffer and combined with N-K input samples 100 to form a vector of length N.
- the first K samples in the vector are provided from internal memory which is used to store the last K samples of the input vector from the previous processing cycle.
- the vector of size N then undergoes an FFT transform 104 of size N to yield an output vector S(i).
- the filter impulse response of length K 106 which are the FIR coefficients, is placed in a buffer of length N.
- the remainder of the buffer 108 which has a size N-K is padded with zeros.
- the combination forms a coefficient vector of length N which then undergoes an FFT transform 110 of size N to yield a frequency domain complex coefficient vector C(i) of size N.
- the vector C(i) can be computed beforehand or, alternatively, the vector C(i) can be computed on the fly.
- the two resulting frequency domain vectors S(i) and C(i) are then multiplied element by element by multiplier 112 .
- the output of the multiplier having a size N, then undergoes an inverse FFT transform.
- the resultant vector comprises N-K valid samples and K invalid samples.
- Invalid samples are generated as a result of the cyclic convolution performed in the fast convolution scheme (FFT, multiplication, IFFT).
- the N-K valid output samples are extracted and the last K samples from the input vector are saved for the next processing block.
- this prior art ‘overlap and save’ frequency domain block convolution scheme of FIG. 8 is able to generate N-K output samples for every N-K input samples.
- FIG. 9 A high level block diagram illustrating a frequency domain filter incorporating a real to analytic conversion constructed in accordance with an embodiment of the present invention is shown in FIG. 9.
- a buffer is filled with real input samples to form an overlapping windowed buffer similar to the scheme of FIG. 8.
- K samples 120 are placed in a buffer and combined with N-K input samples 121 to form a vector of length N.
- the first K samples in the vector are provided from internal memory which is used to store the last K samples of the input vector from the previous processing cycle.
- the last N-K samples making up the input vector are the N-K samples input to the real to analytic fast convolution block 84 (FIG. 5).
- the input vector then undergoes an FFT transform 122 of size N to yield S(i).
- the filter impulse response of length K 124 which comprises the FIR coefficients, is placed in a buffer of length N.
- the remainder of the buffer 125 which has a size N-K is padded with zeros.
- the combination forms a coefficient vector of length N which then undergoes an FFT transform 126 of size N to yield a frequency domain complex coefficient vector C(i) of size N.
- the vector C(i) can be computed beforehand or, alternatively, can be computed on the fly.
- T P (i) is the frequency response of an ideal real to analytic (positive frequency) transform
- 0 ⁇ i ⁇ N is the transform size
- T N (i) is the frequency response of an ideal real to analytic (negative frequency) transform 0 ⁇ i ⁇ N and N is the transform size.
- T N (i) i.e., negative frequencies
- the frequency shift multiplier e j ⁇ has to be conjugated (e ⁇ j ⁇ ).
- e ⁇ j ⁇ the frequency shift multiplier e j ⁇ .
- the output of the real to analytic conversion 128 is then multiplied by the vector S(i) output from the FFT block 122 via multiplier 130 .
- An inverse FFT 132 is then performed on the resultant block output from the multiplier 130 .
- the resultant vector output from the IFFT block 132 comprises N-K valid samples 136 and K invalid samples 134 .
- the invalid samples are due to the cyclic convolution performed in the last convolution scheme (FFT, multiplication, IFFT).
- FFT cyclic convolution performed in the last convolution scheme
- the real to analytic fast convolution block 84 (FIG. 5) generates N-K output samples.
- the first advantage is memory conservation. Doubling of the memory is not required, unlike in the prior art far end echo canceler of FIG. 3.
- the second advantage is reduced CPU utilization.
- the Hilbert filter 56 (FIG. 2) is obviated by the method of the present invention.
- the prior art ‘overlap and save’ scheme of FIG. 8 is made more efficient since, in the frequency domain, only half the number of multiplications are needed.
- one skilled in the art can exploit the zeroing of the negative frequency components in the first stage of the IFFT to reduce CPU utilization even further and compute only half of the points in S(i).
- the third advantage is that the fast convolution scheme of FIGS. 5 and 9 is more efficient in terms of the number of complex multiplications performed per output sample than in the prior art implementation of FIGS. 2 and 3 due to the relatively low computational complexities associated with the FFT and IFFT algorithms in comparison to FIR filtering on most computational machines.
- FDM frequency division multiplexing
- Typical FDM communication systems function to multiplex a plurality of input channels onto a single output channel. Each input channel is first filtered to generate a bandwidth limited signal. After filtering, the signal is shifted in frequency by a particular amount corresponding to the unique frequency slot assigned to that input channel, i.e., single sideband (SSB) modulation.
- SSB single sideband
- FIG. 10 A high level block diagram illustrating the frequency domain filtering scheme of the present invention utilized in a frequency division multiplexing (FDM) application is shown in FIG. 10.
- a plurality of input channel signals, represented as channel # 1 through channel #N are input to a bank of filter and shift modules 240 .
- Each filter and shift module 240 comprises a real to analytic fast convolution block 230 , multiplier 232 , local oscillator 236 and a complex to real function block 234 . Note that the outputs of the real to analytic fast convolution block 230 , multiplier 232 and local oscillator 236 are complex signals.
- the functions performed by the real to analytic fast convolution block 230 , multiplier 232 and complex to real function block 234 are identical to that of real to analytic fast convolution block 84 , multiplier 86 and complex to real function block 88 , respectively, each described previously in connection with FIG. 5.
- the local oscillator is a circuit which generates a sinusoidal waveform at a given frequency. It can be phase shifted to generate a 90 degree phase different signal signal, i.e., sine and cosine.
- the outputs of each filter and shift module 240 are added together via summer 242 to yield a composite FDM output signal.
- the frequency shift for each channel is determined by the value of ⁇ i in the complex signal e j ⁇ i t that is generated and output by the local oscillator 236 .
- Each channel will have its own independent local oscillator whose frequency is ⁇ i where i is the channel number. Note that the channel input signal is filtered and shifted in frequency without the use of FIR filtering or Hilbert transforms.
- the advantage of using the frequency domain filtering scheme of the present invention is that a Hilbert transform is not required.
- the frequency domain filtering scheme of the present invention is inherently faster than the equivalent FIR filter.
- the application of the present invention to an FDM system is appropriate since each input channel comprises a real signal rather than an analytic signal with complex real and imaginary parts.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Complex Calculations (AREA)
Abstract
Description
- The present invention relates generally to filtering and more particularly relates to a method for performing frequency domain filtering employing a real to analytic transform.
- Many digital signal processing (DSP) applications employ digital filtering techniques in order to filter out unwanted signals or noisy frequency components within signals. The implementation of such digital filters is often performed via the use of finite impulse response (FIR) filtering which is a well known method of implementing a convolution. This method requires K multiply and accumulate (MAC) operations per input, where K is the number of taps implemented in the filter. The method generates an inherent delay of approximately K/2 samples. If the sampling frequency of the input (and output) signals is FS then the number of MACs performed every second is FS*K. For large filters or at high sampling rates this may become a burden for the computational machine performing the processing.
- A technique well known in the art that can be used to overcome these tight computational constraints employs Fast Convolution (FC) which utilizes the Fast Fourrier Transform (FFT) and the Inverse Fast Fourrier Transform (IFFT). While this technique may dramatically reduce the computational requirements for the processor, it requires gathering and processing the data in blocks of size N, with N usually being a radix-2 quantity. In order to gain a significant reduction of the computational requirements, N has to be significantly larger than K.
- The major disadvantage of this method is that it introduces an inherent delay of size N, thus increasing the delay significantly with respect to the straightforward FIR method.
- Numerous applications of Fast Convolution are known in the art. The technique is mostly used where the inherent delay introduced by the processing is either not critical to the application or is needed in order to compensate for other delays in the system.
- An example of the use of the Fast Convolution technique may be found in voice band modem applications such as ITU V.32bis or ITU V.34. The technique is used to remove the echo signal generated by various line conditions and impairments. In particular, the far end echo canceler (FEEC) cancels the received echo which was generated on the remote side. The round trip delay (RTD) of the echo ranges from 30 ms to 2 seconds. In order to properly compensate for this delay and in order not to consume an enormous amount of processing resources, the FEEC must delay the input signal using a delay registry whose depth is approximately the round trip delay.
- Since these modem applications require an inherent delay to compensate for the RTD introduced by the physical conditions, they can easily incorporate a Fast Convolution in order to alleviate the computational burden of the filter used to emulate the echo path.
- Further, if the line condition impairments, e.g., frequency domain multiplexing up conversion and down conversion, introduce a frequency offset, the FEEC must ‘rotate’ the emulated echo by the same frequency offset. The frequency offset can be tracked using phase locked loop (PLL) circuitry. However, the quadrature component of the transmitted signal must either be stored beforehand or derived from the in-phase component. The former doubles the delays registry whereas the latter requires the use of an additional Hilbert filter which increases the computational intensity.
- A typical prior art modem scheme will now be described. Typical prior art modem implementation schemes, such as the one illustrated in FIG. 1, comprise a data access arrangement (DAA)42,
transmitter 32,receiver 34, digital to analog converter (D/A) 38 and analog to digital converter (A/D) 40. In addition, the full duplex voice band modem also employs finite impulse response (FIR) adaptive filters. Such FIR filters include the farend echo canceler 41 FIR, the near end echo canceler 33 FIR and the equalizer FIR within thereceiver 34. During operation, the communication system embodying the modem is usually required to cope with a vast majority of different communication channels each posing diverse channel and echo impairments. - As discussed above, the relatively long length of the various filters that is required to cope with the worst case impairments requires a large amount of processor resources. In order to reduce the burden of the filter processing on CPU usage, several well known DSP techniques can be utilized in implementing the above mentioned FIR filters, such as the ‘overlap and save’ and the ‘overlap and add’ employing the FFT and the IFFT.
- The use of such techniques as the ‘overlap and save’ and the ‘overlap and add’ methods in dedicated DSP hardware implementations can save a great deal of processor resources since such DSP processors have optimized hardware designed to perform signal processing functions. Examples of signal processing functions that are typically optimized and implemented in hardware include bit reversal, modulo counting, multiply and add functions, barrel shifters, etc. These hardware signal processing functions make possible highly optimized, fast and efficient FFT and IFFT implementations.
- Accordingly, the present invention has been developed to provide a method of frequency domain filtering that overcomes the limitations and disadvantages of the prior art.
- The limitations of prior art frequency domain fast convolution techniques include requiring an additional amount of CPU resources in cases where a Hilbert filtering transform is required in order to obtain the quadrature component from the in-phase one and create an analytic signal, i.e., a complex signal which has an in-phase component as its real part and a quadrature component as its imaginary part—‘real to analytic conversion.’ Such a signal has either positive or negative frequency components and therefore can easily undergo a frequency shift operation.
- Accordingly, it is an object of the present invention to provide a method of implementing a real to analytic conversion utilizing frequency domain convolution which uses negligible additional CPU resources.
- Another object of the present invention is to provide a method for real to analytic conversion utilizing an ‘overlap and save’ frequency domain convolution which uses negligible additional CPU resources.
- There is provided in accordance with the present invention a method of performing real to analytic fast convolution on a real input block and a set of real Finite Impulse Response (FIR) coefficients to generate a complex output vector, the method comprising the steps of performing a first Fast Fourrier Transformation (FFT) on the real input block, performing a second FFT on the set of FIR coefficients, multiplying the results of the second FFT element by element with the frequency response of an ideal real to analytic transform to form a first product, multiplying the results of the first FFT element by element with the first product to yield a second product, performing an Inverse Fast Fourrier Transformation (IFFT) on the results of the second product to generate a complex output vector and forming a first real output block from the real portion of the output vector.
- The ideal real to analytic transform may comprise a positive frequency real to analytic transform or a negative frequency real to analytic transform.
- There is also provided in accordance with the present invention a method of performing real to analytic fast convolution on a real input block and a set of real Finite Impulse Response (FIR) coefficients to generate a complex output vector, the method comprising the steps of performing a first Fast Fourrier Transformation (FFT) on the real input block, performing a second FFT on the set of FIR coefficients, multiplying the results of the first FFT element by element with the frequency response of an ideal real to analytic transform to yield a first product, multiplying the results of the second FFT element by element with the first product to yield a second product, performing an Inverse Fast Fourrier Transformation (IFFT) on the second product to generate a complex output vector and forming a first real output block from the real portion of the output vector.
- In addition, there is provided in accordance with the present invention an apparatus for performing filtering and frequency shifting on a real input signal, the apparatus outputting a real output signal, the apparatus comprising real to analytic means for performing a real to analytic fast convolution on the input signal, the real to analytic means operative to output a first complex signal, frequency generator means for generating a second complex signal represented by ejωt, the frequency generator means operative to generate the second complex signal having any arbitrary frequency ω, a multiplier coupled to the real to analytic means and the frequency generator means, the multiplier for multiplying the first complex signal by the second complex signal to yield a third complex signal and real means coupled to the multiplier, the multiplier for taking the real component of the third complex signal to yield the real output signal.
- The real to analytic means comprises means for performing a Fast Fourrier Transformation (FFT) on the real input to yield a first FFT output, means for performing a second FFT on a set of real Finite Impulse Response (FIR) coefficients to yield a second FFT output, means for multiplying the second FFT output element by element with the frequency response of an ideal real to analytic transform to yield a first product, means for multiplying the first FFT output element by element with the first product to yield a second product and means for performing an Inverse Fast Fourrier Transformation (IFFT) on the second product to generate the first complex signal.
- Further, there is provided in accordance with the present invention a method of performing filtering and frequency shifting on a real input signal so as to generate a real output signal, the method comprising the steps of performing a real to analytic fast convolution on the input signal to yield a first complex signal, generating a second complex signal represented by ejωt, wherein the frequency generated is any arbitrary frequency ω, multiplying the first complex signal by the second complex signal to yield a third complex signal and taking the real component of the third complex signal to yield the real output signal.
- The step of performing a real to analytic fast convolution comprises the steps of performing a first Fast Fourrier Transformation (FFT) on the real input signal, performing a second FFT on a set of Finite Impulse Response (FIR) coefficients, multiplying the results of the second FFT element by element with the frequency response of an ideal real to analytic transform to form a first product, multiplying the results of the first FFT element by element with the first product to yield a second product and performing an Inverse Fast Fourrier Transformation (IFFT) on the results of the second product to generate a complex output vector.
- The invention is herein described, by way of example only, with reference to the accompanying drawings, wherein:
- FIG. 1 is a high level block diagram illustrating a typical implementation of a prior art full duplex voice band modem;
- FIG. 2 is a detailed block diagram illustrating a first prior art implementation of the far end echo canceler;
- FIG. 3 is a detailed block diagram illustrating a second prior art implementation of the far end echo canceler;
- FIG. 4 is a high level block diagram illustrating a prior art frequency domain convolution apparatus;
- FIG. 5 is a detailed block diagram illustrating a far end echo canceler utilizing real to analytic fast convolution constructed in accordance with an embodiment of the present invention;
- FIG. 6 is a high level block diagram illustrating a first embodiment of a real to analytic fast convolution scheme of the present invention;
- FIG. 7 is a high level block diagram illustrating a second embodiment of a real to analytic fast convolution scheme of the present invention;
- FIG. 8 is a high level block diagram illustrating the prior art ‘overlap and save’ frequency domain block convolution scheme;
- FIG. 9 is a high level block diagram illustrating a frequency domain filter incorporating a real to analytic conversion filter constructed in accordance with an embodiment of the present invention; and
- FIG. 10 is a high level block diagram illustrating the frequency domain filtering scheme of the present invention utilized in a frequency division multiplexing (FDM) application.
- The following notation is used throughout this document.
Term Definition CO Central Office CPU Central Processing Unit DAA Data Access Arrangement DSP Digital Signal Processing FC Fast Convolution FDM Frequency Division Multiplexing FEED Far End Echo Cancellation FFT Fast Fourrier Transform FIFO First In First Out FIR Finite Impulse Response IFFT Inverse Fast Fourrier Transform ISI Intersymbol Interference ITU International Telecommunication Union MAC Multiply and Accumulate PLL Phase Lock Loop RF Radio Frequency RTD Round Trip Delay SSB Single Sideband - For illustrative purposes only, the methods taught by the present invention are demonstrated within the context of the far end echo canceler filter function in a voice band full duplex communication system such as the ITU V.32bis modem whose maximum data rate is 14,400 bps or the ITU V.34 modem whose maximum data rate is 28,800 bps. The far end echo canceler filter can utilize a fast convolution scheme such as the scheme known as ‘overlap and save.’ It should be noted that one skilled in the art may apply the scheme taught by the present invention to other filters within the modem such as the equalizer filter which performs intersymbol interference (ISI) cancellation, the near end echo canceler filter and to other signal processing applications such as radio frequency (RF) modems and acoustic echo cancelers. In addition, one skilled in the art may apply the method of the present invention to other fast convolution schemes such as the ‘overlap and add’ technique.
- As described previously, the prior art full duplex voice band modem of FIG. 1 comprises a
transmitter 32, areceiver 34, anecho canceler unit 36, asummer 37, a D/A converter 38, an A/D converter 40 and a DAA or hybrid 42. The echo canceler unit comprises a near endecho canceler filter 33, adelay line 35, a far endecho canceler filter 41 and asummer 31. The transmitter receives transmit data in from a Tx data in port and outputs transmit (Tx) samples to theecho canceler unit 36 and the D/A converter 38. The DAA functions to match the impedance between the telephone line and the transmitter and receiver by transforming balanced analog voltage on the two-wire pair from the central office (CO) to two two-wire unbalanced pairs, one for the transmitter and one for the receiver and vice versa. Theecho canceler unit 36 functions to remove echoes from the received signal by applying an adaptive near end filter to cancel the near end echo and an adaptive far end filter to cancel the far end echo. The signal at the input to the far end filter is delayed by adelay line 35 so as to match the round trip delay (RTD) introduced by the network. The signals at the output of the far end filter and the near end filter are summed bysummer 31 to produce the output of the echo canceler unit. The output of the echo canceler is then subtracted from the received signal using thesummer 37. The receiver outputs a digital receive Rx data out signal. - A detailed block diagram illustrating a prior art implementation of a passband far end echo canceler is shown in FIG. 2. The far
end echo canceler 41 comprises anadaptive FIR filter 54, Hilbert transform 56, adelay registry 58, multiplication by ‘j’ ({square root}{square root over (−1)})function 57,summer 60, phase lock loop (PLL)module 61,multiplier 62 and realcomponent extraction function 64. - The
transmitter Tx 32 generates a modulated pass band sample stream. The sample stream is delayed using adelay registry 35, whose minimum depth is the maximal round trip delay introduced by the communication network. The signal then passes through theadaptive FIR filter 54 which functions to emulate the echo impairment path. The signal at this point is real. The signal then undergoes a real to analytic transform 59 which comprises aHilbert transform function 56,delay registry 58, multiplication by ({square root}{square root over (−1)}), andsummer 60. The signal then undergoes in-phase to quadrature conversion via the Hilbert transformfunction 56 which is implemented using an FIR filter. The real portion is delayed bydelay registry 58 which functions to compensate for the delay introduced by the FIR Hilbert transform implementation. The depth ofdelay registry 58 is exactly half the number of taps of the FIR filter used to implement the Hilbert transform function. - The real and imaginary portions of the signal are combined by
summer 60 to yield an analytic signal. The complex output signal of the real toanalytic transform 59 is multiplied by an adaptive phase rotation correction factor, generated by thePLL 61, viamultiplier 62. Thephase lock loop 61 functions to estimate the accumulated phase offset ejθ generated by the communication network. The real portion of the output of themultiplier 62 is then subtracted from the output of the A/D converter 40 along with the output of the nearend echo canceler 33 viasummer 37. The resulting output ofsummer 37 is then input to thereceiver Rx 34. - The major disadvantage of this prior art echo canceler scheme, however, is the high CPU resource consumption of the Hilbert transform.
- A detailed block diagram illustrating a second prior art implementation of the far end echo canceler that attempts to overcome the problems of the far end echo canceler of FIG. 2 is shown in FIG. 3. The
echo canceler 41 comprises anadaptive FIR filter 54,multiplier 62,phase lock loop 61 andreal function 64. - The
transmitter Tx 32 generates a complex analytic signal. An analytic signal has only one sided frequency components when viewed in the frequency domain (either positive or negative—positive in this implementation). The real portion of the complex sample stream is transmitted and passed to the near end echo canceler while the complex sample stream is delayed via delay registers 35. The delayed complex signal is filtered byadaptive FIR filter 54 which functions to emulate the echo impairment path. The complex output signal of the AFIR filter is multiplied by an adaptive phase rotation correction factor ejθ, generated by thePLL 61, viamultiplier 62. Thereal portion 64 of the output of the multiplier is then subtracted from the A/D converter 40 samples along with the output of the nearend echo canceler 33 viasummer 37. This result is then input to thereceiver Rx 34. - The second prior art implementation of the far end echo canceler presented above also suffers from several disadvantages. One disadvantage is that the memory requirements for the delay registers is doubled due to complex signal storage. Another disadvantage is that, although the CPU resource consuming FIR Hilbert transform is eliminated, the CPU resource consumption of the adaptive FIR is doubled due to the fact that the adaptive filter operates on a complex signal rather than just the real portion of the signal. Since the
AFIR 54 is usually a long filter, which compensates for the worst case echo impairment, this implementation requires a great deal of CPU resources. - A high level block diagram illustrating a prior art frequency domain convolution method is shown in FIG. 4. This method is widely used to convolve two time domain signals by multiplying their Fast Fourrier Transforms. The method comprises taking a first complex input and performing a
first FFT function 210, taking a second complex input and performing asecond FFT function 212 and then multiplying the results of the first and second FFT functions using amultiplier 214. AnIFFT function 216 is then performed on the results of the multiplication to yield a complex output. - The frequency domain filtering scheme provided by the present invention overcomes the disadvantages and limitations of the prior art. A detailed block diagram illustrating a far end echo canceler utilizing real to analytic fast convolution constructed in accordance with an embodiment of the present invention is shown in FIG. 5. The far
end echo canceler 170 embodying the method of the present invention comprises a real to analytic fast convolution function 84,multiplier 86,PLL function 87,real function 88 and first in first out (FIFO) (e.g., delay registers) 90. - The
transmitter Tx 80 generates a passband (i.e., real component only) sample output stream. The sample stream is delayed using delay registry (i.e., FIFO) 82. Each sample output from the transmitter is pushed intoFIFO 82. When theFIFO 82 fills, a buffer having a length N-K is input to the real to analytic fast convolution block 84 of the present invention which performs both adaptive filtering and a real to analytic conversion. The value N is the length of the FFT performed by the method and the value K is the length of the filter implemented by the method. Note that output of the real to analytic fast convolution block 84, thePLL 87 and themultiplier 86 are complex, as represented by the double lines emanating from each. - The complex signal output by the real to analytic fast convolution block84 is multiplied by an adaptive phase rotation correction factor ejθ which is generated by the
PLL 87. The real portion of the signal output by themultiplier 86 is then stored in aFIFO 90. The received signal output from the A/D converter is stored in aFIFO 98. In addition, the signal from the nearend echo canceler 94 is stored in aFIFO 96. - Each sample input to the
receiver 92 is produced by subtracting one sample fromFIFO 90 and one sample fromFIFO 96 from a sample taken fromFIFO 98. The lengths of each of the delay registers or FIFOs used in the far end echo canceler are as follows:Delay Register/ FIFO Length FIFO 82 max(RTD, N-K) FIFOs max(0, N-K-RTD) FIFO 90N-K - Where RTD is the estimated round trip delay measured in number of sample times.
- In the prior art echo canceling schemes presented in FIGS. 2 and 3, the size of the delay registers is exactly the estimated round trip delay. However, since the application of the FFT algorithm requires a full buffer of length equal to the real to analytic fast convolution block84 input buffer length N-K, it is required that the size of the
FIFO 82 be greater than or equal to N-K samples. The output of the real to analytic fast convolution block 84, after phase compensation and taking the real portion, must be stored in anotherFIFO 90. The size of theFIFO 90 is thus equal to the number of valid samples output by the real to analytic fast convolution block for each input buffer. In addition, if the round trip delay is less than N-K, then the extra delay introduced by theFIFO 82 must be compensated for by the pair ofFIFOs - The method of the present invention is advantageous in that it alleviates both the memory and CPU resource utilization problems described previously. Memory utilization is lowered due to the fact that only real samples are stored in the delay registry (i.e., FIFOs) thus obviating the requirement of double memories as in the second prior art scheme.
- CPU resource utilization is also lowered since the real to analytic fast convolution method of the present invention eliminates the need for time domain Hilbert transform filtering and is a much more efficient way of performing convolution on most computation machines.
- A high level block diagram illustrating a first embodiment of a real to analytic fast convolution scheme of the present invention is shown in FIG. 6. The scheme is used to convolve the analytic part of real input samples with real coefficients. A
first FFT 220 is performed on the real input samples and asecond FFT 222 is performed on the real coefficients. Then, real to analytic conversion is performed in the frequency domain by multiplying the frequency domain coefficients with the frequency response of an ideal real to analytic transform element by element. The response in the case of a positive frequency analytic signal is given by - where TP(i) is the frequency response of an ideal real to analytic (positive frequency) transform, 0≦i<N and N is the transform size.
-
- where TN(i) is the frequency response of an ideal real to analytic (negative frequency) transform, 0≦i<N and N is the transform size. Note that when using TN(i), i.e., negative frequencies, the frequency shift multiplier ejθ has to be conjugated (e−jθ). The half zeroed frequency spectrum and the results of the first FFT are then multiplied element by element via
multiplier 226. The results of the multiplication are then input to anIFFT function 228 to yield complex output samples. - A high level block diagram illustrating a second embodiment of a real to analytic fast convolution scheme of the present invention is shown in FIG. 7. This scheme is very similar to the scheme shown in FIG. 6. The difference being that the FFT of the real input samples, rather than the real coefficients, are multiplied by the frequency response of an ideal real to analytic transform element by element via
multiplier 224. In both schemes, the results achieved are the same, i.e., the output of themultiplier 226 is identical using both schemes. - A high level block diagram illustrating the prior art ‘overlap and save’ frequency domain block convolution scheme is shown in FIG. 8.
K samples 102 are placed in a buffer and combined withN-K input samples 100 to form a vector of length N. The first K samples in the vector are provided from internal memory which is used to store the last K samples of the input vector from the previous processing cycle. - The vector of size N then undergoes an FFT transform104 of size N to yield an output vector S(i). The filter impulse response of
length K 106, which are the FIR coefficients, is placed in a buffer of length N. The remainder of thebuffer 108 which has a size N-K is padded with zeros. The combination forms a coefficient vector of length N which then undergoes an FFT transform 110 of size N to yield a frequency domain complex coefficient vector C(i) of size N. Note that if the filter is time invariant, the vector C(i) can be computed beforehand or, alternatively, the vector C(i) can be computed on the fly. - The two resulting frequency domain vectors S(i) and C(i) are then multiplied element by element by
multiplier 112. The output of the multiplier, having a size N, then undergoes an inverse FFT transform. The resultant vector comprises N-K valid samples and K invalid samples. Invalid samples are generated as a result of the cyclic convolution performed in the fast convolution scheme (FFT, multiplication, IFFT). The N-K valid output samples are extracted and the last K samples from the input vector are saved for the next processing block. Thus, this prior art ‘overlap and save’ frequency domain block convolution scheme of FIG. 8 is able to generate N-K output samples for every N-K input samples. - A high level block diagram illustrating a frequency domain filter incorporating a real to analytic conversion constructed in accordance with an embodiment of the present invention is shown in FIG. 9. A buffer is filled with real input samples to form an overlapping windowed buffer similar to the scheme of FIG. 8.
K samples 120 are placed in a buffer and combined withN-K input samples 121 to form a vector of length N. The first K samples in the vector are provided from internal memory which is used to store the last K samples of the input vector from the previous processing cycle. The last N-K samples making up the input vector are the N-K samples input to the real to analytic fast convolution block 84 (FIG. 5). The input vector then undergoes an FFT transform 122 of size N to yield S(i). - The filter impulse response of
length K 124, which comprises the FIR coefficients, is placed in a buffer of length N. The remainder of thebuffer 125 which has a size N-K is padded with zeros. The combination forms a coefficient vector of length N which then undergoes an FFT transform 126 of size N to yield a frequency domain complex coefficient vector C(i) of size N. Note that if the filter is time invariant, the vector C(i) can be computed beforehand or, alternatively, can be computed on the fly. - Real to
analytic conversion 128 in the frequency domain is then performed on the output of theFFT 126 by multiplying the frequency domain coefficients with the frequency response of an ideal real to analytic transform element by element. The response in the case of a positive frequency analytic signal is given by - where TP(i) is the frequency response of an ideal real to analytic (positive frequency) transform, 0≦i<N and N is the transform size.
-
- where TN(i) is the frequency response of an ideal real to analytic (negative frequency) transform 0≦i<N and N is the transform size. Note that when using TN(i), i.e., negative frequencies, the frequency shift multiplier ejθ has to be conjugated (e−jθ). It is well known in the art that in the case of a real time domain signal, zeroing of the negative frequency components is equivalent to a real to analytic transform. This reduces the effective size of the vector {tilde over (C)}(i) to N/2+1. In addition, if the FIR coefficients are time invariant, {tilde over (C)}(i) can be computed beforehand or on the fly.
- The output of the real to
analytic conversion 128 is then multiplied by the vector S(i) output from the FFT block 122 viamultiplier 130. Note that the element by element block multiplication requires only N/2+1 complex multiplications. Aninverse FFT 132 is then performed on the resultant block output from themultiplier 130. The resultant vector output from the IFFT block 132 comprises N-Kvalid samples 136 and Kinvalid samples 134. The invalid samples are due to the cyclic convolution performed in the last convolution scheme (FFT, multiplication, IFFT). Thus, for every N-K input samples, the real to analytic fast convolution block 84 (FIG. 5) generates N-K output samples. - There are three major advantages to performing frequency domain convolution using the method taught by the present invention. The first advantage is memory conservation. Doubling of the memory is not required, unlike in the prior art far end echo canceler of FIG. 3.
- The second advantage is reduced CPU utilization. The Hilbert filter56 (FIG. 2) is obviated by the method of the present invention. Furthermore, the prior art ‘overlap and save’ scheme of FIG. 8 is made more efficient since, in the frequency domain, only half the number of multiplications are needed. In addition, one skilled in the art can exploit the zeroing of the negative frequency components in the first stage of the IFFT to reduce CPU utilization even further and compute only half of the points in S(i).
- The third advantage is that the fast convolution scheme of FIGS. 5 and 9 is more efficient in terms of the number of complex multiplications performed per output sample than in the prior art implementation of FIGS. 2 and 3 due to the relatively low computational complexities associated with the FFT and IFFT algorithms in comparison to FIR filtering on most computational machines.
- Another application of the frequency domain filtering scheme of the present invention is in a frequency division multiplexing (FDM) system. Typical FDM communication systems function to multiplex a plurality of input channels onto a single output channel. Each input channel is first filtered to generate a bandwidth limited signal. After filtering, the signal is shifted in frequency by a particular amount corresponding to the unique frequency slot assigned to that input channel, i.e., single sideband (SSB) modulation.
- A high level block diagram illustrating the frequency domain filtering scheme of the present invention utilized in a frequency division multiplexing (FDM) application is shown in FIG. 10. A plurality of input channel signals, represented as
channel # 1 through channel #N are input to a bank of filter and shiftmodules 240. Each filter andshift module 240 comprises a real to analyticfast convolution block 230,multiplier 232,local oscillator 236 and a complex toreal function block 234. Note that the outputs of the real to analyticfast convolution block 230,multiplier 232 andlocal oscillator 236 are complex signals. The functions performed by the real to analyticfast convolution block 230,multiplier 232 and complex toreal function block 234 are identical to that of real to analytic fast convolution block 84,multiplier 86 and complex toreal function block 88, respectively, each described previously in connection with FIG. 5. The local oscillator is a circuit which generates a sinusoidal waveform at a given frequency. It can be phase shifted to generate a 90 degree phase different signal signal, i.e., sine and cosine. The outputs of each filter andshift module 240 are added together viasummer 242 to yield a composite FDM output signal. - The frequency shift for each channel is determined by the value of ωi in the complex signal ejω i t that is generated and output by the
local oscillator 236. Each channel will have its own independent local oscillator whose frequency is ωi where i is the channel number. Note that the channel input signal is filtered and shifted in frequency without the use of FIR filtering or Hilbert transforms. - The advantage of using the frequency domain filtering scheme of the present invention is that a Hilbert transform is not required. In addition to eliminating the need for a Hilbert transform, the frequency domain filtering scheme of the present invention is inherently faster than the equivalent FIR filter. The application of the present invention to an FDM system is appropriate since each input channel comprises a real signal rather than an analytic signal with complex real and imaginary parts.
- While the invention has been described with respect to a limited number of embodiments, it will be appreciated that many variations, modifications and other applications of the invention may be made.
Claims (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/758,536 US6400782B2 (en) | 1998-09-03 | 2001-01-10 | Method of frequency domain filtering employing a real to analytic transform |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14687898A | 1998-09-03 | 1998-09-03 | |
US09/758,536 US6400782B2 (en) | 1998-09-03 | 2001-01-10 | Method of frequency domain filtering employing a real to analytic transform |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14687898A Continuation | 1998-09-03 | 1998-09-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20010032225A1 true US20010032225A1 (en) | 2001-10-18 |
US6400782B2 US6400782B2 (en) | 2002-06-04 |
Family
ID=22519376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/758,536 Expired - Lifetime US6400782B2 (en) | 1998-09-03 | 2001-01-10 | Method of frequency domain filtering employing a real to analytic transform |
Country Status (4)
Country | Link |
---|---|
US (1) | US6400782B2 (en) |
EP (1) | EP1110155A1 (en) |
TW (1) | TW456128B (en) |
WO (1) | WO2000014650A1 (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6625629B1 (en) * | 2000-05-23 | 2003-09-23 | Microsoft Corporation | System and method for signal processing using an improved convolution technique |
US7552157B2 (en) | 2000-04-25 | 2009-06-23 | Institut Franco-Allemand De Recherches De Saint-Louis | Broad-dynamic filtering procedure for a recursive digital filter installed in a signal processor (DSP) operating with integers |
US20090257480A1 (en) * | 2008-04-09 | 2009-10-15 | Wi-Lan Inc | System and method for utilizing spectral resources in wireless communications |
US20100085921A1 (en) * | 2008-10-03 | 2010-04-08 | Shiquan Wu | System and method for data distribution in vhf/uhf bands |
US20100124254A1 (en) * | 2008-11-19 | 2010-05-20 | Wi-Lan, Inc. | Systems and etiquette for home gatways using white space |
US20100195580A1 (en) * | 2009-01-30 | 2010-08-05 | Wi-Lan Inc. | Wireless local area network using tv white space spectrum and long term evolution system architecture |
US20100309317A1 (en) * | 2009-06-04 | 2010-12-09 | Wi-Lan Inc. | Device and method for detecting unused tv spectrum for wireless communication systems |
US20100309806A1 (en) * | 2009-06-08 | 2010-12-09 | Wi-Lan, Inc. | Peer-To-Peer Control Network For A Wireless Radio Access Network |
US20130202014A1 (en) * | 2012-02-08 | 2013-08-08 | Texas Instruments Incorporated | DSSS Preamble Detection for Smart Utility Networks |
CN107783933A (en) * | 2016-08-31 | 2018-03-09 | 三星电子株式会社 | Image processing method and equipment |
CN111289952A (en) * | 2020-03-27 | 2020-06-16 | 华清瑞达(天津)科技有限公司 | Radar target echo simulation method and device |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7012881B2 (en) * | 2000-12-29 | 2006-03-14 | Samsung Electronic Co., Ltd. | Timing and frequency offset estimation scheme for OFDM systems by using an analytic tone |
US7362719B2 (en) * | 2002-03-22 | 2008-04-22 | Agere Systems Inc. | Method and apparatus for cross-talk cancellation in frequency division multiplexed transmission systems |
US7543009B2 (en) * | 2002-12-24 | 2009-06-02 | Stmicroelectronics Belgium Nv | Fractional fourier transform convolver arrangement |
US7873686B2 (en) * | 2004-07-28 | 2011-01-18 | The University Of Vermont And State Agricultural College | Complex half-band finite impulse response filter and method of making same |
US7483480B2 (en) * | 2004-11-24 | 2009-01-27 | Nokia Corporation | FFT accelerated iterative MIMO equalizer receiver architecture |
US7834873B2 (en) * | 2006-08-25 | 2010-11-16 | Intel Corporation | Display processing line buffers incorporating pipeline overlap |
JP2011004264A (en) * | 2009-06-19 | 2011-01-06 | Fujitsu Ltd | Digital signal processing apparatus and method |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8601604A (en) * | 1986-06-20 | 1988-01-18 | Philips Nv | FREQUENCY DOMAIN BLOCK-ADAPTIVE DIGITAL FILTER. |
EP0288577B1 (en) * | 1986-10-30 | 1992-06-03 | Fujitsu Limited | Echo canceller with short processing delay and decreased multiplication number and method for controlling an echo signal |
US5270953A (en) * | 1991-05-23 | 1993-12-14 | Rockwell International Corporation | Fast convolution multiplier |
US5285474A (en) | 1992-06-12 | 1994-02-08 | The Board Of Trustees Of The Leland Stanford, Junior University | Method for equalizing a multicarrier signal in a multicarrier communication system |
US5748686A (en) | 1996-04-04 | 1998-05-05 | Globespan Technologies, Inc. | System and method producing improved frame synchronization in a digital communication system |
FR2758677B1 (en) * | 1997-01-21 | 1999-04-02 | Matra Communication | ECHO CANCELLATION METHOD AND ECHO CANCELER IMPLEMENTING SUCH A METHOD |
US6240192B1 (en) * | 1997-04-16 | 2001-05-29 | Dspfactory Ltd. | Apparatus for and method of filtering in an digital hearing aid, including an application specific integrated circuit and a programmable digital signal processor |
US6266687B1 (en) * | 1998-09-18 | 2001-07-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Flexibility enhancement to the modified fast convolution algorithm |
-
1999
- 1999-09-03 WO PCT/US1999/020230 patent/WO2000014650A1/en active Application Filing
- 1999-09-03 EP EP99944071A patent/EP1110155A1/en not_active Withdrawn
- 1999-11-04 TW TW088115062A patent/TW456128B/en not_active IP Right Cessation
-
2001
- 2001-01-10 US US09/758,536 patent/US6400782B2/en not_active Expired - Lifetime
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7552157B2 (en) | 2000-04-25 | 2009-06-23 | Institut Franco-Allemand De Recherches De Saint-Louis | Broad-dynamic filtering procedure for a recursive digital filter installed in a signal processor (DSP) operating with integers |
US6625629B1 (en) * | 2000-05-23 | 2003-09-23 | Microsoft Corporation | System and method for signal processing using an improved convolution technique |
US20090257480A1 (en) * | 2008-04-09 | 2009-10-15 | Wi-Lan Inc | System and method for utilizing spectral resources in wireless communications |
US8675677B2 (en) | 2008-04-09 | 2014-03-18 | Wi-Lan, Inc. | System and method for utilizing spectral resources in wireless communications |
US8411766B2 (en) | 2008-04-09 | 2013-04-02 | Wi-Lan, Inc. | System and method for utilizing spectral resources in wireless communications |
US20110228689A1 (en) * | 2008-04-09 | 2011-09-22 | Wi-Lan, Inc. | System and method for utilizing spectral resources in wireless communications |
US20100085921A1 (en) * | 2008-10-03 | 2010-04-08 | Shiquan Wu | System and method for data distribution in vhf/uhf bands |
US9124476B2 (en) | 2008-10-03 | 2015-09-01 | Wi-Lan, Inc. | System and method for data distribution in VHF/UHF bands |
US8274885B2 (en) | 2008-10-03 | 2012-09-25 | Wi-Lan, Inc. | System and method for data distribution in VHF/UHF bands |
US20120096498A1 (en) * | 2008-11-19 | 2012-04-19 | Wi-Lan, Inc. | Systems and etiquette for home gateways using white space |
US8107391B2 (en) * | 2008-11-19 | 2012-01-31 | Wi-Lan, Inc. | Systems and etiquette for home gateways using white space |
US20100124254A1 (en) * | 2008-11-19 | 2010-05-20 | Wi-Lan, Inc. | Systems and etiquette for home gatways using white space |
US8995292B2 (en) * | 2008-11-19 | 2015-03-31 | Wi-Lan, Inc. | Systems and etiquette for home gateways using white space |
US8848644B2 (en) | 2009-01-30 | 2014-09-30 | Wi-Lan, Inc. | Wireless local area network using TV white space spectrum and long term evolution system architecture |
US20100195580A1 (en) * | 2009-01-30 | 2010-08-05 | Wi-Lan Inc. | Wireless local area network using tv white space spectrum and long term evolution system architecture |
US8335204B2 (en) | 2009-01-30 | 2012-12-18 | Wi-Lan, Inc. | Wireless local area network using TV white space spectrum and long term evolution system architecture |
US20100309317A1 (en) * | 2009-06-04 | 2010-12-09 | Wi-Lan Inc. | Device and method for detecting unused tv spectrum for wireless communication systems |
US8937872B2 (en) | 2009-06-08 | 2015-01-20 | Wi-Lan, Inc. | Peer-to-peer control network for a wireless radio access network |
US20100309806A1 (en) * | 2009-06-08 | 2010-12-09 | Wi-Lan, Inc. | Peer-To-Peer Control Network For A Wireless Radio Access Network |
US20130202014A1 (en) * | 2012-02-08 | 2013-08-08 | Texas Instruments Incorporated | DSSS Preamble Detection for Smart Utility Networks |
US9432077B2 (en) * | 2012-02-08 | 2016-08-30 | Texas Instruments Incorporated | DSSS preamble detection for smart utility networks |
CN107783933A (en) * | 2016-08-31 | 2018-03-09 | 三星电子株式会社 | Image processing method and equipment |
CN111289952A (en) * | 2020-03-27 | 2020-06-16 | 华清瑞达(天津)科技有限公司 | Radar target echo simulation method and device |
Also Published As
Publication number | Publication date |
---|---|
WO2000014650A1 (en) | 2000-03-16 |
EP1110155A1 (en) | 2001-06-27 |
TW456128B (en) | 2001-09-21 |
US6400782B2 (en) | 2002-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6400782B2 (en) | Method of frequency domain filtering employing a real to analytic transform | |
US7023908B2 (en) | DSL transmission system with far-end crosstalk compensation | |
US6952441B2 (en) | Method to determine a channel characteristic, and discrete wavelet transmitter and receiver to perform the method | |
US20050175112A1 (en) | Time domain equalization using frequency domain operations | |
JPS58501104A (en) | echo canceller | |
US8117250B2 (en) | VDSL2 transmitter/receiver architecture | |
US6987800B2 (en) | DSL transmission system with far-end crosstalk cancellation | |
EP1314260B1 (en) | Frequency domain echo canceller | |
JPS58114534A (en) | Initial state setting device for echo eraser and echo eraser | |
EP1434402B1 (en) | Fractional time domain interpolation | |
US7023929B2 (en) | Digital pre-compensation filter for DMT type transmitter | |
WO1995017046A1 (en) | An improved discrete multitone echo canceler | |
US6553066B1 (en) | Time error compensation arrangement and multi-carrier modem comprising the arrangement | |
US5524149A (en) | Circuit arrangement for echo suppression | |
US20040220986A1 (en) | Fractional fourier transform convolver arrangement | |
US7640000B2 (en) | Apparatus and method for cancellation of partially overlapped crosstalk signals | |
AU5667796A (en) | Method, device, dsp and modem for efficient echo canceler phase roll tracking | |
JP2003188747A (en) | Distortion compensation transmitter | |
JP4017323B2 (en) | Wraparound canceller | |
EP1503293A2 (en) | Method and system for performing a Fast Fractional Fourier Transform. | |
US7260144B2 (en) | Architecture for per tone equalizer with reduced complexity for DMT-based xDSL modems | |
US6647076B1 (en) | Method of compensating for interference in a signal generated by discrete multitone modulation, and circuit configuration for carrying out the method. | |
US6134570A (en) | Method and apparatus for efficient implementation of a multirate LMS filter | |
US7200221B2 (en) | Methods and systems for providing multi-path echo cancellation | |
EP1434142A1 (en) | Method and system to calculate Fractional Fourier Transform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: BANK OF NEW YORK TRUST COMPANY, N.A.,ILLINOIS Free format text: SECURITY AGREEMENT;ASSIGNOR:CONEXANT SYSTEMS, INC.;REEL/FRAME:018711/0818 Effective date: 20061113 Owner name: BANK OF NEW YORK TRUST COMPANY, N.A., ILLINOIS Free format text: SECURITY AGREEMENT;ASSIGNOR:CONEXANT SYSTEMS, INC.;REEL/FRAME:018711/0818 Effective date: 20061113 |
|
AS | Assignment |
Owner name: CONEXANT SYSTEMS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TAL, NIR;COHEN, RON;REEL/FRAME:018866/0711 Effective date: 19990105 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: CONEXANT SYSTEMS, INC.,CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. (FORMERLY, THE BANK OF NEW YORK TRUST COMPANY, N.A.);REEL/FRAME:023998/0838 Effective date: 20100128 Owner name: CONEXANT SYSTEMS, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. (FORMERLY, THE BANK OF NEW YORK TRUST COMPANY, N.A.);REEL/FRAME:023998/0838 Effective date: 20100128 |
|
AS | Assignment |
Owner name: THE BANK OF NEW YORK, MELLON TRUST COMPANY, N.A.,I Free format text: SECURITY AGREEMENT;ASSIGNORS:CONEXANT SYSTEMS, INC.;CONEXANT SYSTEMS WORLDWIDE, INC.;CONEXANT, INC.;AND OTHERS;REEL/FRAME:024066/0075 Effective date: 20100310 Owner name: THE BANK OF NEW YORK, MELLON TRUST COMPANY, N.A., Free format text: SECURITY AGREEMENT;ASSIGNORS:CONEXANT SYSTEMS, INC.;CONEXANT SYSTEMS WORLDWIDE, INC.;CONEXANT, INC.;AND OTHERS;REEL/FRAME:024066/0075 Effective date: 20100310 |
|
REMI | Maintenance fee reminder mailed | ||
FPAY | Fee payment |
Year of fee payment: 12 |
|
SULP | Surcharge for late payment |
Year of fee payment: 11 |
|
AS | Assignment |
Owner name: BROOKTREE BROADBAND HOLDING, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:038631/0452 Effective date: 20140310 Owner name: CONEXANT, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:038631/0452 Effective date: 20140310 Owner name: CONEXANT SYSTEMS WORLDWIDE, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:038631/0452 Effective date: 20140310 Owner name: CONEXANT SYSTEMS, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.;REEL/FRAME:038631/0452 Effective date: 20140310 |
|
AS | Assignment |
Owner name: LAKESTAR SEMI INC., NEW YORK Free format text: CHANGE OF NAME;ASSIGNOR:CONEXANT SYSTEMS, INC.;REEL/FRAME:038777/0885 Effective date: 20130712 |
|
AS | Assignment |
Owner name: CONEXANT SYSTEMS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LAKESTAR SEMI INC.;REEL/FRAME:038803/0693 Effective date: 20130712 |
|
AS | Assignment |
Owner name: CONEXANT SYSTEMS, LLC, CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:CONEXANT SYSTEMS, INC.;REEL/FRAME:042986/0613 Effective date: 20170320 |
|
AS | Assignment |
Owner name: SYNAPTICS INCORPORATED, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CONEXANT SYSTEMS, LLC;REEL/FRAME:043786/0267 Effective date: 20170901 |
|
AS | Assignment |
Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, NORTH CAROLINA Free format text: SECURITY INTEREST;ASSIGNOR:SYNAPTICS INCORPORATED;REEL/FRAME:044037/0896 Effective date: 20170927 Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, NORTH CARO Free format text: SECURITY INTEREST;ASSIGNOR:SYNAPTICS INCORPORATED;REEL/FRAME:044037/0896 Effective date: 20170927 |