at the moment I am working on a fairly complex application where I use ADAU1442. 6 channels analog in (via ADC), 6 channels digital in (via AES/EBU-receiver + ASRC inside ADAU1442) and related config on the outputs. Insinde AUAD1442: compressors, limiters, levelcontrol, level readback for Display purposes. Finaly program shall be loaded using a µC (although I additionaly put selfboot option on the PCB which might be usefull in some special circumstances). For initial testing at the moment I send data via USBi directly to the DSP. DSP Samplerate is set to 96KHz because ADCs + DACs run at 96KHz (slave to DSP)
Everything works fine so far until I came to the point that my compiler output window shows more than 50% usage of MIPS. As soon as I pass this threshold of complexity very strange effects take place: An additional sinewave (arround 40kHz) is generated if I send a signal through the DSP thus generating lare amount of distortion (THD+N 40dB compared to 100dB before). Filter frequencies seem halved when this happens. I.e. wenn I put a 5 kHz notch and send a 5kHz sinwave it is perfectly attenuated as long as I am below 50% MIPS. Getting over 50% I have to set the filterfreqency to 10K (and attenuation is not as perfect as before). Another thing I noticed when going beyond 50%: watchdog is alerted.
I wondered if it might be a problem of my 96KHz sampling rate and DSP resource display shows not the correct numbers for higher sampling rates. But effects stay the same when switching to 48kHz!
The effect seems similar as in this post: http://ez.analog.com/message/8218#8218 but I am not using over 100% ;-)
I hardly can imagine that ADAU1442 is overloaded since the program ist not so very complicated and large.
Any Ideas what else could be the reason for this behavior? And how to make it work beyond 50% MIPS ...
Another little question: In the readme.rtf there are sigmastudio versions up to 3.7.7 wheras I can only see version 3.7.4 Beta for download?!
Thanks in advance for help and kind regards