DM642 video application running from flash
I want to run a simple video app ( which is smaller than 512K ) from the flash memory of DM642 EVM rev 3 board. Also I've added an extra LED blinking task to the project. I have modified boot.asm of fpga_loader project such that it has a new global routine (_mycopycode) which is copying my app code from flash to SDRAM ( or ISRAM since my code is actually small enough so that it can be copied into the internal memory ). After copying the app code, _mycopycode rotine branches to the entry point indicated at the beginning of copy table. Here is _main of fpga_loader project:
When I burn these into the flash and reset the board I can not see any video at the output but I can see that LEDs are toggling as expected. That means my app is copied correctly and started to run.
However, everything is fine when I load the same code into the board using JTAG emulator. I can see both LEDs are toggling and the video is OK.
App code uses 16 MByte of heap starting from address 0x81000000.
Code itself is copied into ISRAM so first half of SDRAM is never used.
(I also tried SDRAM, nothing changes )
All Stacks are defined in the ISRAM again.
I'm sure that I have still a lot of space in the ISRAM.
Does anyone have an idea about this problem ?
Why my video app does not work correctly from the flash memory but works well through JTAG ?