I have enabled SIMD mode by setting the bit PEYEN of MODE1 register of SHARC processor. But when I enter the timer interrupt service routine, SIMD mode is automatically getting turned off. Why does this happen and how I can resolve this problem?
For some interrupts (IRQ2-0, timer expired), the sequencer automatically pushes the ASTATx, ASTATy, and MODE1 registers onto the status stack. When the sequencer pushes an entry onto the status stack, the DSP uses the MMASK register to clear corresponding bits in the MODE1 register. All other bit settings will remain the same. Since the reset value of MMASK register is 0x00200000, once the status stack is pushed inside the ISR of timer, PEYEN bit will be cleared in the MODE1 register (PEYEN corresponds to the bit field value 0x00200000). This is why you are seeing such behavior. In order to avoid this problem, you should clear the PEYEN bit in the MMASK register at the start of your program
For more information and an example of how the MMASK and MODE1 registers work together, see the SHARC processor's programming reference manual.
Retrieving data ...