Other Parts Discussed in Thread: UNIFLASH
Hello everyone,
I have to secure my F28335 DSP against any intrusion in order to protect the binary code. I read the guides sprufb0d.pdf and spra958l.pdf but I still have some points that I'd like to clarify before programming a password.
I use Code Composer Studio 5.5 and a SEED XDS560 V2 USB emulator (from Spectrum Digital). My code runs from Flash and the DSP always boots in "Branch to flash" mode, which branches to the entry point of my program.
Below is my list of doubts that I'd like to elucidate with you.
1. [DSP Unlocking]
How to unlock the DSP with CCS 5.5 ? Many information exist for older versions of CCS, but I found no menu to set the Flash programming data (such as the password) in the CCS 5.5 environment.
2. [Secured DSP Debugging]
Our development phase is not fully completed and we'll need to do some debugging (breakpoints, variable inspections). Is it possible with a secured device ?
The documentation sprufb0d.pdf is ambiguous to me about that:
- section 4.1 page 23: "If code is currently running from inside secure memory, only an access through JTAG is blocked (i.e., through the emulator)")
=> What does it mean ?
- section 4.1 page 25: "When initially debugging a device with the password locations in flash programmed (i.e., secured), the emulator takes some time to take control of the CPU. During this time, the CPU will start running and may execute an instruction that performs an access to a protected ECSL area. If this happens, the ECSL will trip and cause the emulator connection to be cut."
=> It's written in the documentation that the Wait-in-Reset emulation mode can be used in order to bypass this problem. How to set the Wait-in-Reset emulation mode in CCS 5.5 so that Debug sessions will work correctly with a secured device ?
3. [Properly locking the DSP]
In spra958l.pdf page 21, it's written that the addresses 0x33FF80 to 0x33FFF5 shall be fed with 0x0000's before writing a password to "lock the DSP properly". Does Code Composer Studio 5.5 or any external Flashing tool (SD Flash, Uniflash) manage this requirement ? or is it to be considered by the programmer ?
Thank you very much for your answers.