NanoBoard 3000 - Serial SPI Flash Memory

Frozen Content

The NanoBoard 3000 provides serial Flash memory in the form of two M25P80 8-Mbit devices (from STMicroelectronics). These devices support a serial data rate of 25MHz. The M25P80 is an SPI-compatible device, with both devices accessed through the motherboard's SPI Controller, which itself resides within the board's NanoTalk Controller FPGA.

Serial Flash memory.

The function of the two devices (designated U52 and U53) can be summarized as follows:

  • U52 – used as Embedded memory. This device is used to provide embedded memory functionality within an FPGA design, enabling you to load and store an embedded software file that will be used when the target design is running.
  • U53 – used as either Embedded memory or Boot memory. This device can be used from within an FPGA design, as described above. It can also be used to store the programming file required for implementing a design within the on-board User FPGA. This gives you the ability to 'bootstrap' the FPGA device upon powering-up the NanoBoard.

The SPI Flash memory devices can be erased and programmed from within Altium Designer, using the instrument panel for the Host Controller when in normal operating mode – when the normal firmware is loaded into the Controller (from the SPI Flash memory used to store the Primary boot image), and the 'PLATFORM UPGRADE ENABLE' jumper (J24) is off.

Boot options are also accessible from the instrument panel for the Host Controller when in normal operating mode. For all 3000-series NanoBoards, options are provided to boot from the SPI Flash memory, or not to boot at all. For the Xilinx variant (NanoBoard 3000XN), the User FPGA (Spartan-3AN) of which has built-in Flash memory, a third option to boot from this memory is also available.

Location on Board

The two M25P80 devices (U52 and U53) are located on the component side of the board, to the left of the NanoTalk Controller device (U30).

Schematic Reference

The SPI Flash memory devices can be found on Sheet 23 (FLASHSPI_M25PX0.SchDoc, entitled User - Dual Serial Flash Memory) of the motherboard schematics.

Design Interface Component

Table 1 summarizes the available design interface component that can be placed from the FPGA NB3000 Port-Plugin.IntLib, to access and use the SPI Flash memory devices.

Table 1. SPI Flash memory port-plugin component.
Component Symbol
Component Name


Place this component to access the signals relating to the SPI Flash memory device used to facilitate embedded memory.

If your design involves communications with multiple common-bus SPI devices, you will need to place the generic SPI_BUS port component. For more information, see Using Multiple SPI and I2C Devices in a Design.

Further Device Information

For more information on the M25P80 device, refer to the datasheet (m25p80.pdf) available at

See Also

You are reporting an issue with the following selected text and/or image within the active document: