I have implemented the IIR accelerator on a circular buffer to filer real time data.
I use the core on 4 channels of audio.
When I break the code, and restart the code, or when I update the filter coefficients in real time, sometimes I get errors in the calculation.
I think this is to expect because some calculations can be made on intermediate (wrong) data. Since the filter is infinite, the wrong data stays in the filter loop.
I can detect the wrong data in the MAC_Status register.
I cannot find any description on how to reset the MAC core, to start with the new coeffitients when the filter gets unstable. Can any-one give me some advice on how to reset the MAC ?
There is also a description on the chain buffers (TCB), and how to end if the window is calculated for all channels. In the HRM manual it is stated several times that the accelerator will wait for a core intevention, but it is never described what intervention is needed, and how to restart the next window.
Can anybody help me on this ?
Thanks in advance,