In brief, my problem is that external interrupt latency is too big.
System Setting Up:
- AMUTEIN2 is configured as external interrupt pin, and interrupt source is from FPGA
- Precedures in SPRAAJ3 are strictly followed to setup dMAX to generate external interrupt
- 2 tasks in the system: background task and foreground task (ISR)
- RTI is enabled for timing measurement in system, but interrupt is not enabled for RTI.
Observations:
- External Interrupt is correctly generated and responded. There is no interrupt missing.
- Interrupt latency is around 1 us when system is idle.
- Interrupt latency is around 1 us when performing memcpy(156 Bytes) from internal memory to internal memory in background task.
- Interrupt latency is around 30 us when performing memcpy(156 Bytes) from external memory to internal memory in background task.
- Interrupt latency is around 10 us when performing dMAX(156 Bytes) from external memory to internal memory in background task.
It seems interrupt latency are heavily affected by EMIF operation.
The big latency time is not acceptable.
Are there any paticular settings for EMIF, dMAX or else to reduce the latency time?
Please Help. Thanks.
Boll