Hi,
I think there exists a problem with certain SPLOOP code, which causes a 'Loop buffer exception' and 'Missed stall exception' when CCS tries to access the target. I already noticed this problem in the past with different optimized loops. I could avoid the problem by disabling SPLOOP for the affected files. But now I'm using a IMGLIB function which is causing the same problem (IMG_sobel_3x3_8()).
I'm not sure if this is the right forum. It could be a device isssue, a CCS / Emulation problem or a compiler bug. First, I posted this question in the Keystone Multicore Forum, but I'm not getting any answer there:
https://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639/t/445013
Here is a small test program which can be used to reproduce the problem on the 6678 EVM:
ExceptionTest.zip
I'm using the following components:
- TMDXEVM6678L EVM
- CCS 5.5
- XDCtools 3.25.3.72
- SYS/BIOS 6.35.4.50
- IMGLIB C66xx 3.1.1.0
- Emulator SD XDS560v2 LC Traveler or SD XDS200
After the program is started, the exception can be triggered by accessing the target while it's running. For example by showing registers in the Register window or by entering an address in the memory window.
There also is an unresolved post which seems to be about the same issue on a C674x device:
https://e2e.ti.com/support/dsp/tms320c6000_high_performance_dsps/f/115/t/280988
Thanks,
Ralf