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

ADAU1761 - How filter coefficients saved in microcontroller after SigmaStudio export?

SigmaDSP & SigmaStudio vnadon_B_ING Aug 14, 2015 00:00 1 replies Original on forum ↗
Thread Summary

Thread Summary

The user encountered conflicts between NLMS blocks and 2nd Order Index Selectable filters, as well as Division blocks, when implementing an algorithm on a microcontroller. The solution involved separating the NLMS and index selectable filters into one DSP and the rest of the algorithm into another DSP, while keeping the NLMS coefficients at 16. The final answer confirmed that the issue is closed, but did not provide details on how filter coefficients are stored in the microcontroller memory.
AI Generated Content
Subscribe
vnadon_B_ING Question
Aug 14, 2015 00:00

Hi everyone,

I have been running into a lot of difficulties to simply make my algorithm work by booting from a microcontroller. I finally was able to have something more or less working.

My algo has 2 NLMS blocks and a few 2nd Order Index Selectable filters. Apparently the NLMS and the index selectable filters conflict with each other when programmed in my uC, and it changes my output signal (compared to the algo simply programmed using SigmaStudio). Depending on the size of the NLMS and the number of index selectable filters I can eliminate or generate the problem. 1 NLMS over 24 coefficients with 1 index selectable filter generates the problem, but 2 NLMS each with 16 coefficients with 3 index selectable filters doesn't generate the problem...

Moreover, the index selectable filter blocks seem to also conflict with the Division block (which also uses a lot of coefficient memory, according to the compiler output). Again generating problems on the output signal.

My solution was to put the 2 NLMS with the index selectable filter in 1 DSP and the rest of my algo with the Division block in a 2nd DSP, and keeping the number of coefficients for the NLMS at 16.

The DSP memory is never full (not even 50% ressources used). Microcontroller memory is neither full (around 32% RAM, 55% Flash).

I would really like to solve this problem once and for all (instead of bypassing it), so that I can have more NLMS coefficients and more filters in my algo.

So I ask the following question, How are the filter coefficients saved in the microcontroller after exporting the files from SigmaStudio? Is it stored in Flash or RAM or another memory location that I don't know?

How would you tackle this problem? Do you know a better solution?

Thanks!

Audio Signal Processors

sigma studio

micro controller

filter implementation

SigmaDSP Audio Processors

adau1761

SigmaDSP

Show More

EZAdministrator Reply
Apr 29, 2019 00:00

This question has been closed by the EZ team and is assumed answered.