Figure 11. RC Delay
Dual boot configuration mode typically requires two configuration data files. One of the two configuration data files
is a fail-safe image that is rarely, if ever, updated. The second configuration data file is a working image that is rou-
tinely updated. The working image is stored in the Configuration Flash, the fail-safe image is stored in the external
SPI memory. One Diamond project can be used to create both the working and the fail-safe configuration data files.
Configure the Diamond project with an implementation named working, and an implementation named failsafe.
Read the Diamond Online Help for more information about using Diamond implementations.
Use the following preferences to build a dual-boot design:
Diamond creates a JEDEC as well as a Bitstream file for the primary configuration data that is stored in the internal
Flash memory. A BIT file is created for the golden configuration data that is stored in the external SPI Flash. The
golden configuration data must be located in the external SPI Flash starting at address 0x010000. This differs from
a single image Master SPI Configuration Mode, which requires the configuration data be stored at offset 0x000000.
The following are the recommended processes for programming internal and external flash to use Dual Boot Mode:
Option A - Using background mode to program external flash:
1. Program MachXO2 internal flash (using Flash Programming Mode). Make sure SPI port enabled and per-
sistent on.
2. Program the external SPI flash in background mode.
3. Refresh or power cycle.
Option B - Using offline mode to program external SPI flash:
1. Program the external SPI flash first (may be none-background mode).
2. Program MachXO2 internal flash (using Flash Programming Mode).
3. Refresh or power cycle.
To prevent the MachXO2 from using dual boot mode when using the User Master SPI controller, set the
MASTER_SPI_PORT preference to EFB_USER. This reserves the Master SPI configuration port pins and pre-
vents dual-boot.
Slave SPI Mode (SSPI)
The MachXO2 provides a Slave SPI configuration port that allows you to access features provided by the Configu-
ration Logic. You can reprogram the Configuration Flash, UFM and Feature Row, and access status/control regis-
ters within the Configuration Logic block. The Flash memories is done using either offline or transparent
operations. The SRAM is not directly accessible using the Slave SPI port. It is necessary to send a REFRESH
command to load a new Flash image into the SRAM.
MachXO2 Programming and Configuration Usage Guide
Preference
CONFIGURATION
MASTER_SPI_PORT
COMPRESS_CONFIG
VCCIO
INITN
Dual-Boot Setting
CFG | CFG_EBRUFM | CFGUFM
ENABLE
ON | OFF
24
Need help?
Do you have a question about the MachXO2 and is the answer not in the manual?