Line 1... |
Line 1... |
|
|
README for the spi_boot core
|
README for the spi_boot core
|
============================
|
============================
|
Version: $Date: 2005-02-16 19:03:26 $
|
Version: $Date: 2005-02-18 06:54:36 $
|
|
|
|
|
Description
|
Description
|
-----------
|
-----------
|
|
|
Line 11... |
Line 11... |
bootstrapping of FPGAs. It is able to retrieve the required data from
|
bootstrapping of FPGAs. It is able to retrieve the required data from
|
SecureDigital (SD) cards or MultiMediaCards (MMC) and manages the FPGA
|
SecureDigital (SD) cards or MultiMediaCards (MMC) and manages the FPGA
|
configuration process. SD cards as well as MMCs are operated in SPI mode which
|
configuration process. SD cards as well as MMCs are operated in SPI mode which
|
is part of both standards thus eliminating the need for dedicated
|
is part of both standards thus eliminating the need for dedicated
|
implementations. The SD/MMC Bootloader fits both. Beyond configuration, this
|
implementations. The SD/MMC Bootloader fits both. Beyond configuration, this
|
core supports a bootstrapping strategy where multiple sets are stored on one
|
core supports a bootstrapping strategy where multiple images are stored on one
|
single memory card.
|
single memory card.
|
For example consider a system completely based on SRAM. The bootloader
|
For example consider a system completely based on SRAM. The bootloader
|
provides an initial configuration image from the first set to the FPGA. This
|
provides an initial configuration data from the first image to the FPGA. This
|
image contains a design which pulls the next set from the memory card and
|
image contains a design which pulls the next image from the memory card and
|
transfers this data to SRAM. In the third step the final FPGA design is
|
transfers this data to SRAM. In the third step the final FPGA design is loaded
|
loaded from the third set.
|
from the third image.
|
|
|
|
|
Features
|
Features
|
--------
|
--------
|
|
|
* Configuration mode: configurates SRAM based FPGAs via serial slave mode
|
* Configuration mode: configurates SRAM based FPGAs via slave serial mode
|
(Xilinx and Altera)
|
(Xilinx and Altera)
|
* Data mode: provides stored data over a simple synchronous serial interface
|
* Data mode: provides stored data over a simple synchronous serial interface
|
* Broad compatability
|
* Broad compatability using SPI mode
|
+ SecureDigital cards using dedicated initialization command
|
+ SecureDigital cards using dedicated initialization command
|
+ MultiMediaCards
|
+ MultiMediaCards (see below)
|
* Operation triggerd by power-up or card insertion
|
* Operation triggerd by power-up or card insertion
|
|
|
|
|
|
Compatability
|
|
-------------
|
|
|
|
These cards have been tested with the SD/MMC Bootloader:
|
|
|
|
* SanDisk 128 MB SD
|
|
* SanDisk 64 MB MMC
|
|
* Panasonic 32 MB SD
|
|
|
|
Some MMC might fail with this core as not all cards support CMD18
|
|
(READ_MULTIPLE_BLOCK). Please consult the data sheet of your specific
|
|
model. In case your MMC does not implement CMD18 you might want to have a look
|
|
at the FPGA MMC-Card Config project.
|
|
|
|
|
Verification
|
Verification
|
------------
|
------------
|
|
|
The spi_boot core comes with a simple testbench that simulates an SD/MMC
|
The spi_boot core comes with a simple testbench that simulates an SD/MMC
|
card. All four implementations of the core are verified there in parallel
|
card. All four implementations of the core are verified there in parallel
|
Line 94... |
Line 109... |
* SanDisk MMC Product Manual
|
* SanDisk MMC Product Manual
|
http://www.sandisk.com/pdf/oem/manual-rs-mmcv1.0.pdf
|
http://www.sandisk.com/pdf/oem/manual-rs-mmcv1.0.pdf
|
|
|
* Toshiba SD Card Specification
|
* Toshiba SD Card Specification
|
http://i.cmpnet.com/chipcenter/memory/images/prod055.pdf
|
http://i.cmpnet.com/chipcenter/memory/images/prod055.pdf
|
|
|
|
* FPGA MMC-Card Config project
|
|
http://www.opencores.org/projects.cgi/web/mmcfpgaconfig/overview
|