Hi Nives, It is not clear for me what is your issue. However, based on what you have wrote I think you have issue with Implementing and understanding decimation.
Here is short explanation what is decimation. With decimation of digital signal you are removing some samples of your signal in order to decrease its sampling rate. What you are achieving is reduction of your sampling rate. Easiest to explain would be decimation by 2. Imagine you have signal that you sample at 16MHz so you get 16 Msps and in your processing chain you would like to decrease its sampling rate to 8 Msps. What you want to do is to decimate it by 2. Imagine you represent certain period of your signal (T) as vector of samples : x = [1, 2, 3, 4, 5, 6, 7, 8] Then signal decimated by 2 would be: x_2d = [1, 3, 5, 7] So basically you have removed every second sample from your original signal and you have reduced its sampling rate. This should be easy to implement in FPGA by mapping two shift registers. Or you could use some of Xilinx IP cores. However you should be careful when you do decimation. When bandwidth of your signal is not small enough direct decimation will cause aliasing of your signal. In order to avoid this before you do decimation you should band limit your signal by low pass filter. In order to understand these concepts. I would advise you to read some DSP book. (https://www.amazon.com/Understanding-Digital-Signal-Processing-3rd/dp/0137027419/ref=sr_1_1?ie=UTF8&qid=1530806535&sr=8-1&keywords=understanding+dsp) Good Luck, Tarik From: USRP-users [mailto:usrp-users-boun...@lists.ettus.com] On Behalf Of Nives Novkovic via USRP-users Sent: donderdag 5 juli 2018 17:37 To: Marcus D. Leech Cc: USRP-users@lists.ettus.com Subject: Re: [USRP-users] RFNoC FIR filter block - filter taps Thank you for the tip, I have found this tool for easy FIR filter design: http://t-filter.engineerjs.com/ . What I am trying to achieve here is to get the same output signal from RFNoC FIR filter as I am currently getting from a design that is running purely on CPU using the low pass filter block in GNU radio. That block has the option to account a parameter called "decimation". Does anybody know how can I implement that parameter in RFNoC FIR filter block design? Kind regards, Nives pon, 2. srp 2018. u 16:02 Marcus D. Leech <mle...@ripnet.com<mailto:mle...@ripnet.com>> napisao je: On 07/02/2018 07:33 AM, Nives Novković wrote: Hi Marcus, Thank you for your answer, since I am quite new in this area I didn't understand how to figure out which coefficients to enter. For example, if I want to pass a signal only between 200 and 300 kHz, which coefficients should I use? Kind regards, Nives You'll need to use a filter design tool, like the FIRDES routines in Gnu Radio, or the external filter designer or some other tool. https://www.allaboutcircuits.com/technical-articles/finite-impulse-response-filter-design-by-windowing-part-i-concepts-and-rect/ --------------------------------------------------------------------------------------------------- Message: 5 Date: Tue, 19 Jun 2018 14:04:40 -0400 From: "Marcus D. Leech" <mle...@ripnet.com<mailto:mle...@ripnet.com>> To: usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com> Subject: Re: [USRP-users] RFNoC FIR filter block - filter taps Message-ID: <5b2945b8.1080...@ripnet.com<mailto:5b2945b8.1080...@ripnet.com>> Content-Type: text/plain; charset="utf-8"; Format="flowed" The RFNoC FIR filter takes a list of ints that can be scaled from a floating-point representation of the filter. Gnu Radio includes the firdes routines for producing coefficients for simple low-pass/high-pass/band-pass filters. One you have the results, you can just use a simple Python expression to scale by 32767.0 and convert to int. Something like: [int(i*32767) for i in filter_coeffs] Keep in mind that the RFNoC FIR filter is, last I checked, limited to 41 filter coefficients On 06/19/2018 10:28 AM, Nives Novkovi? via USRP-users wrote: > Hi everyone, > > me again with the questions. :) Next thing I am trying to learn is > RFNoC FIR filter. I see that the only thing I can modify for the > filter is filter taps. Is there any official documentation on those > blocks? I am trying to figure out what values should I enter there if, > i.e. I want to eliminate all the frequencies above 100 kHz. Those are > actually coefficients in the FIR filter equation? Here is my current > flow graph. > > > fir_filter_flow_grc.png > > Kind regards, > Nives > >
_______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com