Is it possible to offload FIR processing to the RPi 4 NEON SIMD from the ADAU1701?
So my thought is this: since the Sharc came out, there have been advances in process and architecture making the number of coefficients that can be processed through NEON on ARM greatly increased over prior generations, as seen with the Raspberry Pi 4 in software based FIR filters.
What I would like to do is use the SPI connection protocol to connect the ADAU1701 to the RPi4 as a slave to solely apply the FIR filter, while the ADAU1701 I have (Wondom JAB5 board) outputs to RPi4 on MOSI and inputs from the RPi4 on MISO.
What I have found so far is I've compiled the 5.4.y kernel and am now trying to start connecting the devices together. Most of the instructions are to use the arm boards as a microprocessor to load the instructions for the DSP. I am just looking at the RPi4 being able to process more FIR filter coefficients in the same period of time versus the 1701 I have, which the current program I have designed in sigmastudio only allows for 550 FIR coefficients.
If this is not possible, then I'll have to figure out an ADC to RPi, run in software, then out to the adau1701/amp, which is acting as a 3-way crossover per standing speaker.
Just was wondering if sigmastudio is able to create a program able to do this at all, or if I need to put the RPi4 in the chain ahead of the DSP altogether. I'd prefer fewer DAC/ADC conversions, but...
Audio Signal Processors
spi master slave
programming
fir filter
i2c
sigmastudio
SigmaDSP Audio Processors
arm
raspberry pi
adau1701
Show More
Hello ajc9988,
You will have to use the serial port to do this and not the SPI port. Once you establish the connection using I2S or TDM then it is simple to route audio out of the serial port to your external processor and then back into the 1701. You can do some pre processing or post processing on the 1701.
By the way, If you want to change to the ADAU1452 processor you would be able to process much larger FIR filters. It can compute 4 filter taps per clock cycle. If you did pretty much only an FIR filter you could process up to 24,000 taps in one sample period. But the part does not have any converters so it complicates the hardware design.
Dave T
Please log in to reply.