I am trying to learn FPGA programming, and I would like to analyze an audio input.
I would like to know what kind of frequencies are present in the signal but without using Fourier transform - there are two reasons for this.

First one is I dont need to know the exact frequency of the incoming signal, and the second reason is simple - I have just started learning FPGA and Fourier transform is beyond my skill level to implement.

So, are there any methods of checking if a signal of given frequency is part of the audio input? Say, I would like to know if any signal in frequency range 3KHz-5KHz is present in the input. How can such a problem be approached?

Edit. My first thought was to use a pair of low and high pass filters to do the job, but I am not sure if this would work well, because they only pass through the current signal.

  • $\begingroup$ This sounds like Electrical Engineering. $\endgroup$ Mar 16, 2021 at 22:58
  • $\begingroup$ @YuvalFilmus I wasn't really sure. I am studying CS and perceive this mostly as an "algorithmic" problem, but I will remove this question and move it to Electrical if no answers appear, thank you for Your suggestion. $\endgroup$ Mar 16, 2021 at 23:17
  • $\begingroup$ This is signal processing, which is what electrical engineers do. $\endgroup$ Mar 16, 2021 at 23:18
  • 2
    $\begingroup$ You could use a band filter. In fact, you don’t really need to filter your signal, just to compute some inner product. $\endgroup$ Mar 16, 2021 at 23:19


Your Answer

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

Browse other questions tagged or ask your own question.