0
$\begingroup$

I am a trying to implement the Receiver Signal Path of the ADRV9009 in Verilog, starting with the 2 half-band filters. These are the coefficient of the two filters:

Filter coefficient

This is the result that I got. My clock is 10Mhz (10ns per cycle) and I have 2 sin wave as an input. The frequency of first one is 1.25MHz (800ns per cycle, period = 10 clock cycles) with 8 samples given per cycle. Same goes for the second one with frequency of 4.167MHz (240ns per cycle, period = 3 clock cycles). And finally I add the 2 sin wave together to get that jiggling input.

enter image description here

I am wondering if this is the correct output that I should get. The output for the second sin wave barely changes unless I increase its period by 1 more clock cycle. I have not learned much about signal processing and filter so I might get this wrong. However, from my understanding, if the frequency of input wave is higher than the cutoff frequency, the FIR filter will just produce a signal of 0, which means my results are wrong.

Any help is appreciated! This is only for my personal projects though, as I am trying to learn more about digital and analog devices.

$\endgroup$

1 Answer 1

0
$\begingroup$

If I understand correctly, the OP is still seeing nearly a full output for the higher frequency above 4MHz, where as detailed below we should see a much greater attenuation of that signal.

The filters will have a gradual transition between the passband and stopband, and finite rejection so will put out non-zero values for higher frequencies in the stopband (attenuation region). Below are the expected magnitude and phase responses for the two filters given, where we can see the expected attenuation versus input frequency:

RHB3 Filter:

RHB3

RHB2 Filter: (It wasn't clear from the question if RHB2 is running at a decimated rate after RHB3, which I assume is the case, so I left the frequency axis as the normalized radian frequency ($\pi = f_s/2$)).

enter image description here

$\endgroup$
3
  • $\begingroup$ If I understand that correctly, does that mean the expected output should look like this? $\endgroup$ Commented Jul 5, 2021 at 1:04
  • $\begingroup$ ibb.co/xXp2g1G $\endgroup$ Commented Jul 5, 2021 at 1:07
  • $\begingroup$ Yes, basically - the higher frequencies will be attenuated. $\endgroup$ Commented Jul 5, 2021 at 1:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.