News:

Attention: For security reasons,please choose a user name *different* from your login name.
Also make sure to choose a secure password and change it regularly.

Main Menu

Gigabee Flasing options

Started by niko, October 15, 2012, 12:39:03 PM

Previous topic - Next topic

niko

Dear all,

it seems that I can flash my Gigabee module only with x1 SPI. If I select x4 before programming, IMPACT (Version O.61xd) tells me, that the MCS file was not created for x4 SPI. Anyhow, it seems I cannot create x4 files. Has anybode a small guide on how to do it?

Background is, that flashing the board (including verify) takes about 10-15 Minutes with my Xilinx USB Cable (6 MHz TCK speed, which is maximum).

Thanks and Best Regards,
Niko.

Ales Gorkic

Hi Niko,

Programming Flash via iMPACT always takes veeeery long time (what you reported).
For this reason we have developed Flashwriter project that you can do it within a minute.
It is available here
https://github.com/Trenz-Electronic/TE060X-GigaBee-Reference-Designs/tree/master/GigaBee_XPS14.2-FlashWriter

But if you want that FPGA boots in x4 mode you need to specify that in the bitgen options:
-g SPI_buswidth:4

For faster booting also apply frequency 26MHz:
-g ConfigRate:26

Best regards,

Ales


Oleksandr Kiyenko

Dear Niko,
If you want to use x4 SPI boot you need to do following steps:
- Open project
- Right click on "Generate Programming File" -> "Process Properties"
- Go to "Configuration Options"
- Set "4" in "-g SPI_buswidth" "Set SPI Configuration Bus Width" row (Quad mode)
- Rerun "Generate Programming File"
- Run iMPACT to create mcs file from resulted bit file
- switch iMPACT to boundary scan mode and write mcs to flash
But this will only speed-up boot of your project from flash, not Flash programming.
As I understand you concerned about long time to indirect Flash programming, this time is long because of
- Indirect programming (to write one byte several or even hundreds bytes should be send/received by 6 MHz interface)
- Bulk erase (iMPACT use full flash erase even if only part of it should be writed) it's usually much longer than sector erase
Xilinx not provide other ways to reprogram Flash.
So if you want faster reflash, only way it's include in your project SPI core and do reflash from project (transfer data using Ethernet much faster than Xilinx cable)
Please check https://github.com/Trenz-Electronic/TE060X-GigaBee-Reference-Designs/tree/master/GigaBee_XPS14.2-FlashWriter project it can be that you want.

Best Regards
Oleksandr

niko

Dear Alex,
dear Oleksandr,

thank you very much for your tips.
The generation of the x4 file worked and the board now boots much faster.
Furthermore, the download of the MCS over ethernet works nicely.
One question would remain: Is there a way to use other network address spaces for the flash downloader? In our setup, we have connected multiple gigabee modules in the 10.x.x.x range with static IP, which would mean either changing the network settings each time we want to flash, or adding another interface.

Thanks again,
Niko.

Ales Gorkic

Hi Niko,

If you want to use different IP for the modules you need to change this in GigaBee_XPS14.2-FlashWriter/SDK/SDK_Workspace/flashwriter/src/main.c:
u32 myIP = QUAD_TO_IP(169,254,169,99);

The last number (99) is set random and will differ from module to module.
ARP is used to check if the selected IP is OK.

Best regards

Ales

niko

Great, thanks for the info. Now I am starting to get productive!

Best Regards,
Niko.