I've a problem with Interrupt Service Routines and Analog Devices DSP
21364. I've written an ISR that moves a sample from an input stream into
a circular buffer, and it's triggered at a fixed rate.
When I execute some code (while ISR is filling a buffer) like this (it's
a Finite Impulse Response Filter part):
lcntr = r2, do (pc,loopend_fir-1) until lce;
f8 = f3*f4, f13 = f8+f13, f4 = dm(i2,m1), f3 = pm(i8,m9);
f13=f8+f13, f4 = dm(i2,-2);
it gives me (along a 2048 pts buffer) some wrong results, while if I
disable interrupts before calculus and I enable them after, all goes
right. Only code is affected, ISR deploys samples regularly.
I've ensured that ISR is executed in a transparent way (AFAIK).
The same errors occur in other points of my code. It looks like it has a
random behaviour, but it produces the same results at each try.
How can I solve this issue, without enabling/disabling INTs along my code??
This is only VisualDSP simulation behaviour, but I'll try to ensure a
good result before downloading code on EZ-KIT.
Thank you very much for your support.
(Btw, I've used ADSP-21262 before, and it works correctly even with INTs
Reply by ●June 20, 20052005-06-20
Are you sure that your ISR is not being re-called while within the
processing of a previous entry into the ISR?
Maybe interrupt nesting is enabled, and the ISR is being triggered
faster than it is being attended + processed.
Reply by ●June 21, 20052005-06-21
Did you read the anomaly list for your silicon version?
Reply by Tony●June 21, 20052005-06-21
Jaime Andr�s Aranguren Cardona wrote:
> Did you read the anomaly list for your silicon version?
Thank you very much for your answers.
Analog has just written me, saying that there's an hardware bug in
ADSP-21364, they asked me to send them my code so they can troubleshoot
it, and can report a valid solution (in the meanwhile,
disabling/enabling interrupt can be applied).
Reply by ●June 23, 20052005-06-23
Those are good news... It would be nice from your part to let us know what
ADI tells you.
Jaime Andr�s Aranguren Cardona
Soluciones en DSP
"Tony" <email@example.com> escribi� en el mensaje
> Jaime Andr�s Aranguren Cardona wrote:
>> Did you read the anomaly list for your silicon version?
> Thank you very much for your answers.
> Analog has just written me, saying that there's an hardware bug in
> ADSP-21364, they asked me to send them my code so they can troubleshoot
> it, and can report a valid solution (in the meanwhile, disabling/enabling
> interrupt can be applied).