discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] Question on fir filter implementation(gr_fir_ccf_gene


From: isulsz
Subject: [Discuss-gnuradio] Question on fir filter implementation(gr_fir_ccf_generic)
Date: Tue, 2 Jun 2009 14:49:58 -0700 (PDT)

I have two questions regarding to the FIR filter implementation. 
I understand that the output of a FIR filter is the sum of the
multiplications of filter taps and previous (and current) inputs, or simply
speaking, a convolution, y[n] = \sum_{k from 0 to L-1}  h[k]  *  x[n-k]. 

Take gr_fir_ccf_generic for example, the code introduce a parameter
N_UNROLL(= 2 or 4) and seems to break the summation into N_UNROLL parts:
acc0,acc1,acc2,acc3 (if U_UNROLL == 4). and then sum them together. What is
the reason for doing this?

Another confusion is that, the summation is like this:
acc0 += d_taps[i+0] * input[i+0];
acc1 += d_taps[i+1] * input[i+1];
acc2 += d_taps[i+2] * input[i+2];
acc3 += d_taps[i+3] * input[i+3];

Why here is input[i PLUS SOMETHING]? I think these are FUTURE(but not
PREVIOUS) values of the current input (the current input is input[0] if I
understand the code correctly). 

Thank you very much!
-- 
View this message in context: 
http://www.nabble.com/Question-on-fir-filter-implementation%28gr_fir_ccf_generic%29-tp23841646p23841646.html
Sent from the GnuRadio mailing list archive at Nabble.com.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]