Hi all: I want to implemnt the filter spec below using CIC + CICCOMP filter FS=5MHz, fp=9k, fst=10k, ap=0.1, ast=100, decimator=100 I am using a Differential delay=50 and Number of sections=5 CIC filter and cascading a ciccomp filter which provide an extra 2 decimator. but the cic compensate filter fs=100k, fp=9k, fst=10k,ap=0.1,ast=100 D=2 will take 404 taps to implement using equiripple method, the taps is too long for input data block which is only 200 samples a frame, so before next frame is coming, the filter is still full of unprocessed last frame data, this will cause the output of nextframe filter in- accurate. any suggestions? savor
The taps of ciccomp filters are too long, any solution?
Started by ●October 7, 2008
Reply by ●October 7, 20082008-10-07
On Oct 7, 10:13�am, move <liubeny...@gmail.com> wrote:> Hi all: > > I want to implemnt the filter spec below using CIC + CICCOMP filter > > FS=5MHz, fp=9k, fst=10k, ap=0.1, ast=100, decimator=100 > > I am using a Differential delay=50 and Number of sections=5 CIC filter > and cascading a ciccomp filter which provide an extra 2 decimator. but > the cic compensate filter > > fs=100k, fp=9k, fst=10k,ap=0.1,ast=100 D=2 > > will take 404 taps to implement using equiripple method, the taps is > too long for input data block which is only 200 samples a frame, so > before next frame is coming, the filter is still full of unprocessed > last frame data, this will cause the output of nextframe filter in- > accurate. > > any suggestions? > > savorI am at the liquor store to buy some gin. I really like Tanqueray, but I only have enough money for Gordon's. What should I do? John
Reply by ●October 7, 20082008-10-07
On Tue, 7 Oct 2008 09:29:03 -0700 (PDT), John <sampson164@gmail.com> wrote:>On Oct 7, 10:13�am, move <liubeny...@gmail.com> wrote: >> Hi all: >> >> I want to implemnt the filter spec below using CIC + CICCOMP filter >> >> FS=5MHz, fp=9k, fst=10k, ap=0.1, ast=100, decimator=100 >> >> I am using a Differential delay=50 and Number of sections=5 CIC filter >> and cascading a ciccomp filter which provide an extra 2 decimator. but >> the cic compensate filter >> >> fs=100k, fp=9k, fst=10k,ap=0.1,ast=100 D=2 >> >> will take 404 taps to implement using equiripple method, the taps is >> too long for input data block which is only 200 samples a frame, so >> before next frame is coming, the filter is still full of unprocessed >> last frame data, this will cause the output of nextframe filter in- >> accurate. >> >> any suggestions? >> >> savor > >I am at the liquor store to buy some gin. I really like Tanqueray, but >I only have enough money for Gordon's. What should I do? > >JohnFat Tire. Eric Jacobsen Minister of Algorithms Abineau Communications http://www.ericjacobsen.org Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php
Reply by ●October 7, 20082008-10-07
On Oct 7, 12:52�pm, Eric Jacobsen <eric.jacob...@ieee.org> wrote:> On Tue, 7 Oct 2008 09:29:03 -0700 (PDT), John <sampson...@gmail.com> > wrote: > > > > >On Oct 7, 10:13�am, move <liubeny...@gmail.com> wrote: > >> Hi all: > > >> I want to implemnt the filter spec below using CIC + CICCOMP filter > > >> FS=5MHz, fp=9k, fst=10k, ap=0.1, ast=100, decimator=100 > > >> I am using a Differential delay=50 and Number of sections=5 CIC filter > >> and cascading a ciccomp filter which provide an extra 2 decimator. but > >> the cic compensate filter > > >> fs=100k, fp=9k, fst=10k,ap=0.1,ast=100 D=2 > > >> will take 404 taps to implement using equiripple method, the taps is > >> too long for input data block which is only 200 samples a frame, so > >> before next frame is coming, the filter is still full of unprocessed > >> last frame data, this will cause the output of nextframe filter in- > >> accurate. > > >> any suggestions? > > >> savor > > >I am at the liquor store to buy some gin. I really like Tanqueray, but > >I only have enough money for Gordon's. What should I do? > > >John > > Fat Tire. > > Eric Jacobsen > Minister of Algorithms > Abineau Communicationshttp://www.ericjacobsen.org > > Blog:http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.phpOh you are making me thirsty now, and we're way off topic (my fault). Fat Tire's an excellent choice. I am an IPA drinker. Some favorites: http://www.greenflashbrew.com/taproom.html http://www.southerntierbrewing.com/pages/beers.html John
Reply by ●October 8, 20082008-10-08
John wrote: ...> I am at the liquor store to buy some gin. I really like Tanqueray, but > I only have enough money for Gordon's. What should I do?Juniper berries are ripe now; pick some. With them, water, and EverClear (and a recipe, of course), you can make a very passable gin. The money you save will allow you to buy Tanqueray for special occasions (but you might prefer your own). See? There's always a way around a problem! Jerry -- Engineering is the art of making what you want from things you can get. ����������������������������������������������������������������������� ** Posted from http://www.teranews.com **
Reply by ●October 8, 20082008-10-08
On Oct 7, 10:13 am, move <liubeny...@gmail.com> wrote:> I am using a Differential delay=50 and Number of sections=5 CIC filter > and cascading a ciccomp filter which provide an extra 2 decimator.I don't think you mean your decimation ratio is 50, not your differential delay. One solution is to come out of your CIC at a higher rate, and decimator by 4 or 8 in your compensation filter. This means that you are using a narrower slice at the center of the CIC, so there's less droop to compensate. In fact your may be able to skip compensation all together. Then what was your compensation filter just becomes a decimate by four or eight polyphase FIR lowpass.> will take 404 taps to implement using equiripple method, the taps is > too long for input data block which is only 200 samples a frame, so > before next frame is coming, the filter is still full of unprocessed > last frame data, this will cause the output of nextframe filter in- > accurate.Shouldn't you be joining the frames together, processing them as a continuous stream, and then reframing them again at the output? If the next frame hasn't arrived, just freeze your filter logic in place and don't give it another clock until you have data from the next frame to start feeding in.
Reply by ●October 8, 20082008-10-08
On Oct 9, 5:38�am, cs_post...@hotmail.com wrote:> On Oct 7, 10:13 am, move <liubeny...@gmail.com> wrote: > > > I am using a Differential delay=50 and Number of sections=5 CIC filter > > and cascading a ciccomp filter which provide an extra 2 decimator. > > I don't think you mean your decimation ratio is 50, not your > differential delay. > > One solution is to come out of your CIC at a higher rate, and > decimator by 4 or 8 in your compensation filter. � This means that you > are using a narrower slice at the center of the CIC, so there's less > droop to compensate. �In fact your may be able to skip compensation > all together. �Then what was your compensation filter just becomes a > decimate by four or eight polyphase FIR lowpass. > > > will take 404 taps to implement using equiripple method, the taps is > > too long for input data block which is only 200 samples a frame, so > > before next frame is coming, the filter is still full of unprocessed > > last frame data, this will cause the output of nextframe filter in- > > accurate. > > Shouldn't you be joining the frames together, processing them as a > continuous stream, and then reframing them again at the output? �If > the next frame hasn't arrived, just freeze your filter logic in place > and don't give it another clock until you have data from the next > frame to start feeding in.Thanks! about the decimation rate : when I design using Xilinx Ip Core, the decimation is made to be an integral part of CIC filter, i.e the decimation and defferential delay are made together, if M=50 and D=50, the decimator should be placed between the comb and integer part, and then synthesis using decimation=50 and D=1. I am wonderring whether i could reduce the taps of CICcomp filter is that the ciccomp filter design in matlab could not be implemented in a multistage manner. ('cause the shape in the passband is not flat and inv-sinc), when the taps of filter exceed the number of input, i reckon the filter not a success one or padding zeros is needed to make the input length N+L-1. but once the situation is time critial (in a frame), padding zeros is not valid.
Reply by ●October 8, 20082008-10-08
On Oct 8, 7:47 pm, move <liubeny...@gmail.com> wrote:> I am wonderring whether i could reduce the taps of CICcomp filter is > that the ciccomp filter design in matlab could not be implemented in a > multistage manner. ('cause the shape in the passband is not flat and > inv-sinc), when the taps of filter exceed the number of input, i > reckon the filter not a success one or padding zeros is needed to make > the input length N+L-1. but once the situation is time critial (in a > frame), padding zeros is not valid.You have a more fundamental issue to confront: what makes you think it is legitimate to process each frame individually? What do the frames represent? What type of lowpass characteristic do you think you are going to be able to achieve within these short chunks of data?
Reply by ●October 11, 20082008-10-11
On Tue, 7 Oct 2008 10:23:47 -0700 (PDT), John <sampson164@gmail.com> wrote:>On Oct 7, 12:52�pm, Eric Jacobsen <eric.jacob...@ieee.org> wrote: >> On Tue, 7 Oct 2008 09:29:03 -0700 (PDT), John <sampson...@gmail.com> >> wrote: >> >> >> >> >On Oct 7, 10:13�am, move <liubeny...@gmail.com> wrote: >> >> Hi all: >> >> >> I want to implemnt the filter spec below using CIC + CICCOMP filter >> >> >> FS=5MHz, fp=9k, fst=10k, ap=0.1, ast=100, decimator=100 >> >> >> I am using a Differential delay=50 and Number of sections=5 CIC filter >> >> and cascading a ciccomp filter which provide an extra 2 decimator. but >> >> the cic compensate filter >> >> >> fs=100k, fp=9k, fst=10k,ap=0.1,ast=100 D=2 >> >> >> will take 404 taps to implement using equiripple method, the taps is >> >> too long for input data block which is only 200 samples a frame, so >> >> before next frame is coming, the filter is still full of unprocessed >> >> last frame data, this will cause the output of nextframe filter in- >> >> accurate. >> >> >> any suggestions? >> >> >> savor >> >> >I am at the liquor store to buy some gin. I really like Tanqueray, but >> >I only have enough money for Gordon's. What should I do? >> >> >John >> >> Fat Tire. >> >> Eric Jacobsen >> Minister of Algorithms >> Abineau Communicationshttp://www.ericjacobsen.org >> >> Blog:http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php > >Oh you are making me thirsty now, and we're way off topic (my fault). >Fat Tire's an excellent choice. I am an IPA drinker. Some favorites: > >http://www.greenflashbrew.com/taproom.html >http://www.southerntierbrewing.com/pages/beers.html > >JohnHi, I think you guys are elitists. What's wrong with Coors Light? OK, OK. I'm just jokin'. Many years ago I tried a regular Coors, after hearing so much about Coors beer. After one taste, I asked the bartender, "Can you pour this back into the horse? It's not done yet." If I won the Lottery, I'd be strictly drinkin' only Pilsner Urquell. [-Rick-] PS: I four bottles of Fat Tire in my fridge right now.
Reply by ●October 11, 20082008-10-11
On Tue, 7 Oct 2008 07:13:45 -0700 (PDT), move <liubenyuan@gmail.com> wrote:>Hi all: > >I want to implemnt the filter spec below using CIC + CICCOMP filter > >FS=5MHz, fp=9k, fst=10k, ap=0.1, ast=100, decimator=100 > >I am using a Differential delay=50 and Number of sections=5 CIC filter >and cascading a ciccomp filter which provide an extra 2 decimator. but >the cic compensate filter > >fs=100k, fp=9k, fst=10k,ap=0.1,ast=100 D=2 > >will take 404 taps to implement using equiripple method, the taps is >too long for input data block which is only 200 samples a frame, so >before next frame is coming, the filter is still full of unprocessed >last frame data, this will cause the output of nextframe filter in- >accurate. > >any suggestions? > >savorHi, If you can get your hands on a copy, perhaps the paper: Kwentus, A., et al, "Application of Filter Sharpening to Cascaded Integrator-comb Decimation Filters. IEEE Transactions on Signal Processing, Vol. 45, Feb. 1997, pp. 457-467. will help you flatten the passband of your CIC filter so that you don't need so many taps in your compensation filter. You can learn about "filter sharpening" at: http://www.dsprelated.com/showabstract/62.php which is Chapter 1 of the book "Streamlining Digital Signal Processing, a Tricks of the Trade Guidebook" (published by Wiley & Sons and the IEEE). Just a thought. Good Luck, [-Rick-]






