Hi all,
I can't execute any program from external SRAM memory.
The program is copied from FLASH to SRAM and the executed. This is done with a bootloader.
Here you are the details of the steps I do:
1-. I create a C program
2-. I compile in EXECUTABLE mode with _TEXT_START_ADDRESS = SRAM base address.
3-. I create the binary file of the "executable.elf" from the XMD with the next GCC command: "mb-objcopy -O binary executable.elf executable.bin"
Now I have 2 options:
-- FIRST
4-. I compile the FLASH charger in EXECUTABLE mode with _TEXT_START_ADDRESS = 0, in order to be stored in the internal BlockRAMs.
5-. I program the FPGA with the resulting "download.bit" bitstream.
6-. I burn the "executable.bin" file to the FLASH memory using a FLASH writer I have done that communicates the PC with the MicroBlaze's flash charger via serial port.
--SECOND
7-. I burn the "executable.elf" file with a tcl file that some people have sent me. This tcl uses the XMD tcl command "xdownload".