My application code works fine while running from emulator, but it fails when booted from the flash. How do I debug it.
1. Check whether the TRST# signal is connected to GND during booting.
2. Make sure that the PLL is configured correctly. The default boot kernel may have the PLL configuration as per the EZ-KIT Lite board. This need to be changed if your application uses a different CLKIN.
3. Make sure that the external port registers are initialized properly. When running the code from emulator, these registers will be initialized by the VDSP++ tools using .xml file. During booting the boot kernel should initialize the external port registers as per the target board used.
4. For more debugging tips please refer the application note(EE-305) on the below link:
Another tip is to edit your boot-kernel .asm such that the first executed instruction is JUMP(PC,0);. This way, the part will load the boot-kernel and then just sit there executing the same instruction over and over again. After you reset the board and it starts booting, you connect with the emulator (be sure session is configured to NOT reset upon connection), change that instruction to a NOP;in the disassembly window, and then step/run through the rest of the boot sequence.