First of all thanks for the help and sorry about the poor spec.
My sample rate is 200MSPS / 200MHz.
I am dealing with pipolar data which is filtered with a 40MHz low pass analog filter prior to digitization.
The data is then 'rectified' prior to this filter which is as follows
The filter is a low pass filter with a choice of different corner frequencies
500kHz
1MHz
2MHz
3MHz
4MHz
5MHz
7.5MHz
10MHz
at the moment I'm using one wizard generated FIR to do the job with eight different sets of coefficients.
After filtration the data is displayed on a screen and it is kind of nice to be able to see the wave in fine detail (the envelope is important) so ideally we did not want to drop the sample rate unless we had to.
Thanks 'thepancake', I sort of thought that IIR might not be the answer for my sample rate. I guess that FIRs run faster because the next output sample only depends on previous input samples and therefore can be easily pipelined? IIRs on the other hand depend on the output as well as the input so dont pipeline so well? Please correct me if i'm wrong.
Thanks 'Kaz', sorry about the spec. I hope thats cleared up now. I think I would prefer 'linear phase' if I understand the term correctly. I need to measure the time to from the start to certain points on the rectified / filtered envelope and I have noticed that the FIR filter has a nice fixed delay through it no matter what cutoff frequency I select.
Thanks 'FVM' I am a bit of a beginner when it comes to DSP so I'll look at the CIC filter as you suggest. I would love to use IIR for one reason. The delay through the filter is very short. I guess I'll never get one to run at 200MHz.
So far it looks as if i need to compromise a bit, maybe using a 60 tap FIR but after variable decimation. If I set the filter to run at 200MSPS, 100MSPS, 50MSPS i can choose say four cutoffs to be 10MHz, 7.5MHz, 5MHz, 4MHz at 200MSPS. I guest this would give me 5MHz, 3.75MHz, 2.5MHz, 2MHz at 100MSPS, etc etc. This would not be ideal because it would mean dropping the display resolution. Does this seem a good idea? or does anyone know better.
Thanks again for the help its very useful
Dave