3.3.12.7 DSP Engine Trap Events

Arithmetic error traps that can be generated for handling exceptions in the DSP engine are selected through the Interrupt Control Register 4 (INTCON4). These are:

  • Trap on ACCA overflow enable using OVATE (INTCON4[21])
  • Trap on ACCB overflow enable using OVBTE (INTCON4[20])
  • Trap on catastrophic ACCA and/or ACCB overflow enable using COVTE (INTCON4[19]). Occurrence of the traps is indicated by these error status bits.
    • OVAERR (INTCON4[5])
    • OVBERR (INTCON4[4])
    • COVAERR (INTCON4[3])
    • COVBERR (INTCON4[2])

    An arithmetic error trap is also generated when the user application attempts to shift a value beyond the maximum allowable range (±32 bits) using the SFTAC instruction. This trap source cannot be disabled and is indicated by the Shift Accumulator Error Status (SFTACERR) bit (INTCON4[1] in the interrupt controller). The instruction will execute, but the results of the shift are not written to the target accumulator.