ΣSigmaStudio Ask AI Русский Log in

Is it possible to offload FIR processing to the RPi 4 NEON SIMD from the ADAU1701?

SigmaDSP & SigmaStudio ajc9988 Aug 27, 2021 00:00 1 replies Original on forum ↗
Subscribe
ajc9988 Question
Aug 27, 2021 00:00

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

DaveThib Reply
Aug 27, 2021 00:00

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