cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Observer
Observer
10,451 Views
Registered: ‎02-16-2011

program flash

Hi everybody, 

 

I'm working with SP605 evaluation board and need to boot from the flash memory my sdk design. Now, firt i program the fpga with de .bit and .bmm file. , and then run de .elf file. I want that this process was automatic when i turn my board, running from flash memory.

 

Previously i worked with a virtex5 custom board with and eprom memory and i use impact to prepare a .mcs file to program that memory.

 

I've been looking for tutorials or documentation for that pourpose (imagine it would be very simple) but i found nothing. Please if someone knows where to find documentation or could write me a quick tutorial.

 

Thanks in advance!

0 Kudos
39 Replies
Highlighted
Observer
Observer
7,845 Views
Registered: ‎05-06-2008


@raphael.barbieri wrote:

Hi xiaochh,

 

My problem was that I was not paying attention to the Flash initial address which in my case (SP605) is 0x42000000.

I'm running now using the an offset of 0x00A00000, so my srec_booloader application has the start position at 0x42A00000.

 

Record a hello_world aplication at this memory position and Run the srec_bootloader to test it.

 

Just be sure that you are really recording at the exact position... that was my fault first...

If you record your app in a different position, the srec_bootloader returns that same message!! 

 

Regards,


Hi,raphael.barbieri

Thanks for your information.

I upgraded my tool to ISE13.1. And when I use the program Flash tool in sdk, there is a cmmand sets supported by this programmer, as :

    1. Intel/ Sharp (Extended Command Set)

     2. AMD/Fujitsu (Standard Command Set)

    3. Intel (Standard Command Set)

   4. AMD/Fujitisu(Extended Command Set)

 

But I use the spansion flash s29gl in my project with the custom-build board (use Spartan6-LX16 fpga).

 

I am consider whether my problem is the the program flash tool don't support this spansion flash.

But if it is, what should I do?

 

Thanks again, raphael.barbieri

 

0 Kudos
Highlighted
7,828 Views
Registered: ‎02-18-2011

Probably this is your problem... and the program flash tool doesn't support you flash device...
Maybe you should use iMPACT for this...

Regards,
0 Kudos
Highlighted
Visitor
Visitor
7,465 Views
Registered: ‎07-13-2012

Hi,

 

 You can read xapp973, excellent application note from xilinx. File is attached with mail.

 

manish

0 Kudos
Highlighted
Explorer
Explorer
7,186 Views
Registered: ‎02-17-2013

When I execute this command I have a leak of memory. 

/home/mayotte/Xilinx/14.4/ISE_DS/ISE/bin/lin64/data2mem -bm system.bmm -bt system.bit -bd boot_esssai.elf output.bit

 

I place an examle of error that I can see in the console this is the latest. Do you have an idea why I have a leak of memory. 

 

INTERNAL_ERROR:Data2MEM:45 - Memory allocation leak of 8 bytes at 0x019B15F8 for 'CharPtrArrayType' data.
Total memory in use at allocation was 7605 bytes.
Source file "StringUtils.c", line number 901.

Memory contents:

019B15F8: 00 00 00 00 00 00 00 00

 

I have spartan 6 and I want programme the flash with a file who contains the  .elf and the .bit. I think  that with the impact 14.4 I load the file output.bit in the cable SPI. Unfortunately the file output.bit did'nt generate. 

Best Regards. 

0 Kudos
Highlighted
Explorer
Explorer
7,175 Views
Registered: ‎02-17-2013

hey raphael.barbieri

I am doing the same thing that you in this link http://forums.xilinx.com/t5/Embedded-Development-Tools/program-flash/td-p/134956/page/3. unfortunately it's'nt work I generated the system.bit thakns planAhead I have a microblaze processor then I export the hardware with xsdk then I create a project hello world. I launch this commande in a terminal 

/home/eukrea/Xilinx/14.4/ISE_DS/ISE/bin/lin64/data2mem -bm system_bd.bmm -bt system.bit -bd hello_world.elf -ob final_release.bit

 

I generated a file hello.mcs that I load in the board sp605 in SPI thanks impact. It specify the program succed. When I lauch minicom in the terminal I don't see the disp of hello world. I don't know if I must configure the jumper of the board or not ? 

 

Do have an idea ? 

 

Best Regards. 

0 Kudos
Highlighted
Explorer
Explorer
7,174 Views
Registered: ‎02-17-2013

hey raphael.barbieri
I am doing the same thing that you in this link http://forums.xilinx.com/t5/Embedded-Development-Tools/program-flash/td-p/134956/page/3. unfortunately it's'nt work I generated the system.bit thakns planAhead I have a microblaze processor then I export the hardware with xsdk then I create a project hello world. I launch this commande in a terminal
/home/eukrea/Xilinx/14.4/ISE_DS/ISE/bin/lin64/data2mem -bm system_bd.bmm -bt system.bit -bd hello_world.elf -ob final_release.bit

I generated a file hello.mcs that I load in the board sp605 in SPI thanks impact. It specify the program succed. When I lauch minicom in the terminal I don't see the disp of hello world. I don't know if I must configure the jumper of the board or not ?

Do have an idea ?

Best Regards.
0 Kudos
Highlighted
Explorer
Explorer
7,163 Views
Registered: ‎02-17-2013

Do you use Ise or PlanAhead for generate your system hardware ?
0 Kudos
Highlighted
Explorer
Explorer
7,161 Views
Registered: ‎02-17-2013

Hey raphael.barbieri
Do you use Ise or PlanAhead for generate your system hardware ?
0 Kudos
Highlighted
Voyager
Voyager
7,154 Views
Registered: ‎02-10-2012

Hey

 

Since yours is an Embedded Application you need to create a Boot loader if you want to run your application from the flash memory. Seeing the procedure what you described your steps are wrong. You should do the following :

 

1) Create a SREC image of the ELF file of your C project and store it in the flash memory. This can be done using the Flash Programmer from the SDK.

2) Create a BootLoader application for the Flash interface.

3) Using data2mem generate the bit file which has the bootloader elf file in it. This way you have embedded the bootloader into the download.bit file.

4) Now use IMPACT to generate a PROM file and store it in the flash memory.

 

The steps described above are very brief . The whole procedure needs a lot of patience and parameters have to be set correctly. Make sure you search previous posts on Bootloader's.

 

The procedure you executed is sufficient if you want to run a VHDL application. Not an Embedded Application!

 

Regards

Arvind

0 Kudos
Highlighted
Anonymous
Not applicable
6,985 Views

Hi all,

I have followed all the steps provided in the last post to program my linear flash (on ML605)  and everything went well.

 

However, I have the following issue: If I update my .elf software and I reprogram flash the SDK (step 1 of the previous post), the entire content of my linear flash is erased thus making it necessary to restore the prom file in the flash memeory.

 

To your knowledge, would it be possible to repogram the flash software from sdk without erasing the prom content? Restoring the prom file in the flash usually requires a lot of time!

 

Thank you in advance.

0 Kudos