For a comprehensive guide on FIR filters and other DSP topics, please visit DSPGuru.
What is a discrete-time signal?
A discrete-time signal is an infinite series of real numbers. It can be obtained by sampling from a continuous-time signal, and then each value in the sequence is called a sample.
What is a digital filter?
A digital filter is a system that performs mathematical operations on a discrete-time signal to reduce or enhance certain aspects of that signal.
What is the impulse response of a filter?
Impulse response is the output of the filter when presented with a brief input signal (... 0, 0, 0, 0, 1, 0, 0, 0, 0 ...), called an impulse.
What is a Finite Impulse Response (FIR) filter?
A finite impulse response (FIR) filter is a filter whose impulse response (or response to any finite length input) is of finite duration, because it settles to zero in finite time.
What can I use FIR filters for?
A FIR filter can be used- to filter out unwanted frequencies from a signal without distorting it,
- as a decimation filter to avoid aliasing while decreasing the sampling frequency,
- as an interpolation filter when increasing the sampling frequency.
C code generator
| Please note that the generated code is faster if the number of the taps is a power of 2. | |
| Name of filter | |
| Number format | |
| Fixed point precision of taps | |
| C type of coefficients | |
| C type of accumulator (must be big enough to store the sum of all taps multiplied by the largest possible input signal) | |
| Floating point type | |
| Unroll convolution loop (only recommended if the number of taps is less than 40) | |
Sample C++ code
If you like this app,
buy me a beer
.