This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
I think I have an unexpected behavior.
I've defined a struct that sits in the CpuToCla1MsgRAM.
However, mistakenly, I'm writing to this struct from a CLA task.
I've implemented the Access Violation procedure (per the hands-on videos) and confirmed it's working if the CLA tries to access a memory block which is not assigned to it (e.g. LS0 - again, same procedure like in the video).
I'm wondering why I didn't get a violation interrupt when the CLA task is trying to write to the CpuToCla1MsgRAM?
I've confirmed the struct sits at 0x1500, which is the begining of the CpuToCla1MsgRAM.
The struct is defined in one of the C28 .c files, and prototype is in a shared .h file.
Here's some snippets:
In the shared .h file:
from the map file:
command file:
Hello - I suspect the message RAM may not be covered by the access violation flags/interrupt. I will do some research to confirm.
Mojo,
I've confirmed with our design team that on F2837x, F2807x, and F28004x the write protection violation is not generated when the CLA attempts to write to the CPUtoCLA message RAM. The write will be ignored, however.
This is an enhancement made on devices developed since then, such as the F2838x, F28003x, etc
Regards,
Lori
Thanks Lori.
I think it's worth mentioning this in the documentation / add to the video of the workshop...