FIREngine is a Digital FIR filter that filters inputs from an I2S2 PMOD ADC and DAC module. The purpose of this design is to filter audio from an I2S2 PMOD device found here: https://digilent.com/shop/pmod-i2s2-stereo-audio-input-and-output/. Although the number of taps the filter is not adjustable and must be determined before synthesis, the coefficients of each tap are programmable. This allows for different low, band, and high pass filters to be constructed for multiple audio filtering configurations. If is a parametrizable filter with symmetric or antisymmetric coefficients, odd number of taps. Uses 2s complement and fixed-point data. Coefficients are set via an SDI Interface.
Use TinyTapeout Demo board to connect PMOD to Tiny Tapeout project, program filter coefficients serially, and experience the results!
# | Input | Output | Bidirectional |
---|---|---|---|
0 | SPI CS | DAC MCLK | |
1 | SPI MOSI | DAC LRCK | |
2 | DAC SCLK | ||
3 | SPI SCLK | DAC Data | |
4 | ADC MCLK | ||
5 | ADC LRCK | ||
6 | ADC SCLK | ||
7 | ADC Data |