I have a sharc-21479 EZ-Lite development kit and I am trying to program an FIR of length 1024 which is calculated every sample. My samples are coming at rate of 100KSPS through the SPI bus connected to the ADC. The second SPI bus is connected to the DAC to creat an audio loop-back. I have tested and checked the the loop-back audio routine (i.e. audio in, ADC, sharc-21479, DAC, audio out) works fine. When I am trying to include and FIR calculation which gets called every sample, the system gets stuck for some strange reason. Even if the weights of the filter are just an impulse, I get nothing at the output. Before I went to an interrupt service routine I do the necessary pushes and pops in assembely as follows:
bit set MODE1 SRD1L |SRD1H | SRD2L |SRD2H | SRRFL | SRRFH;
Baring in mind that I am using assembly all the way through what else do I need to push to gurantee that my status before the interrupt (i.e. when I was calculating my FIR) is maintained after the interrupt has been serviced. When I test the same system with C function (interrupts), I don't have the same problem. I can't use the C interrupt as that takes alot of over head and I want to speed my ISR.