Hi,
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:
main()
{ EVMDM642_init();
EVMDM642_fpgaLoad(0x90040000);
mycopycode();
}
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 ?
DM642 video application running from flash
Started by ●October 18, 2007