Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

simple LP filter: FFT/AmplitudeScale/IFFT.... vs traditiona

Status
Not open for further replies.

electricpete

Member level 2
Joined
Jun 4, 2006
Messages
45
Helped
10
Reputation
20
Reaction score
4
Trophy points
1,288
Activity points
1,624
filtering by ifft

I want to implement a low-pass filter. The situation is a post-processing filter process where time is not critical and data can be processed in batch. Final product will be in time domain.

Can I simply take the FFT, multiply the complex magnitudes by a scalar scaling factor (for example [1 1 1 1 0.9 0.5 0.1 0 0 0 ] are the scaling factors going from lowest frequency to highest frequency), and then inverse FFT?

Or would there be some advantage to developing an IIR or FIR filter to process by convolution in the time domain instead?
 

Re: simple LP filter: FFT/AmplitudeScale/IFFT.... vs tradit

>>>Can I simply take the FFT, multiply the complex magnitudes by a scalar scaling factor (for example [1 1 1 1 0.9 0.5 0.1 0 0 0 ] are the scaling factors going from lowest frequency to highest frequency), and then inverse FFT?


It depends on your signal. In common case, you can do this. If you perform FFT on the whole signal ot once. But
1. If signal is too long, you can loose accuracy of your FFT.
2. If your signal length is not multiple of 2, you need develop fast algorihm for that particular length.
3. Check equivalent impulse response in time domain for your spectral shape. It can be rather long (non-causal as well). May be for you it can became non-desirable, it depends on your goal.

If you want to process signal block-by-block:
1. Short transform length can not guarantie to you that inbetween of spectral bins is close to your desired one.

by developing filter in time domain, you can
1. assure causality,
2. guarantie good behaviour in all frequency range (inbetween spectral bins as well)

There is reasons reasons from theoretical viewpoint.

From computational viewpoint, in many cases considerably short filters are enough to perform required filtering. Especially, for IIR case.
FFT only used as fast approach to perform FIR filtering when FIR has considerably long length. Long FIR filters are used only in the case, when you need save phase relations in your original signal. (Linear phase filter) But even in this case you can design IIR with very good phase response in passband.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top