The following apply to all or multiple boot modes that are SPI
related.
- Octal SPI flash memories support various protocols, however,
the OSPI boot mode of the device will only support a specific protocol defined in OSPI Bootloader Operation.
If the flash memory is complaint with JEDEC xSPI standards JESD251 and JESD216D, then xSPI boot mode is
additionally supported. Refer to the xSPI boot mode description for further details.
- When using a OSPI\xSPI\QSPI\SPI flash device greater than
128Mb, a flash device package with a RESET signal must be used. The reason is that the ROM only uses 3-byte
addressing mode (address is 24 bits). To address the full memory address range, software will typically
switch to 4-byte addressing mode. If a reset to the processor occurs (for example, due to a warm reset), the
ROM will execute expecting 3-byte addressing mode, but the flash will have been left in 4-byte addressing
mode. For the flash device to return to 3-byte addressing mode, it must be reset using this signal. This
typically can be achieved by using the RESET signal on the flash memory device. The ROM does not issue a
software reset command.
- When booting from any of the SPI boot modes, BOOTMODE pin
settings depend on operation during normal operation:
- To support high-speed OSPI with the DQS signal during
normal operation, set BOOTMODE8=1 to use internal iclk during boot and ensure signal LBCLKO is a no
connect (that is, absolutely no trace can be connected to LBCLKO). The ROM boot operates OSPI at low
speed (50 MHz), and during normal operation the OSPI interface can use the DQS signal to operate the
interface at high speeds.
- To support high-speed OSPI or QSPI without DQS signal
(that is, using the LBCLKO signal to support loopback clock), then set BOOTMODE8=0 to use external clock
during boot. In this case, ROM boot and normal operation use the externally looped back clock signal
LBCLKO. Board designers should refer to the device specific data sheet to undertstand board routing
guidelines for the LBCLKO signal.
- To support only low-speed OSPI\xSPI\QSPI\SPI operation
(that is, <=50-MHz OSPI clock), set BOOTMODE8=1 to use internal iclk, and ensure signal LBCLKO is a
no connect (that is, absolutely no trace can be connected to LBCLKO). Operation for both ROM boot and
normal operating mode clock the interface at low speed and use the internally pad looped back clock. The
DQS and LBCLKO signals are not used during boot or normal operation