Nios® V Embedded Processor Design Handbook

ID 726952
Date 1/27/2025
Public
Document Table of Contents

4.5.1. MAX® 10 FPGA On-Chip Flash Description

MAX® 10 FPGA devices contain on-chip flash that is segmented into two parts:

  • Configuration Flash Memory (CFM) — stores the hardware configuration data for MAX® 10 FPGAs.
  • User Flash Memory (UFM) — stores the user data or software applications.

The UFM architecture of MAX® 10 device is a combination of soft and hard IPs. You can only access the UFM using the On-Chip Flash IP Core in the Quartus® Prime software.

The On-chip Flash IP core supports the following features:

  • Read or write accesses to UFM and CFM (if enabled in Platform Designer) sectors using the Avalon® MM data and control slave interface.
  • Supports page erase, sector erase and sector write.
  • Simulation model for UFM read/write accesses using various EDA simulation tools.
Table 29.  On-chip Flash Regions in MAX® 10 FPGA Devices
Flash Regions Functionality
Configuration Flash Memory (sectors CFM0-2) FPGA configuration file storage

User Flash Memory

(sectors UFM0-1)

Nios® V processor application and user data

MAX® 10 FPGA devices support several configuration modes and some of these modes allow CFM1 and CFM2 to be used as an additional UFM region. The following table shows the storage location of the FPGA configuration images based on the MAX® 10 FPGA's configuration modes.

Table 30.  Storage Location of FPGA Configuration Images
Configuration Mode CFM2 CFM1 CFM0
Dual compressed images Compressed Image 2 Compressed Image 1
Single uncompressed image Virtual UFM Uncompressed image
Single uncompressed image with Memory Initialization Uncompressed image (with pre-initialized on-chip memory content)
Single compressed image with Memory Initialization Compressed image (with pre-initialized on-chip memory content)
Single compressed image Virtual UFM Compressed Image

You must use the On-chip Flash IP core to access to the flash memory in MAX® 10 FPGAs. You can instantiate and connect the On-chip Flash IP to the Quartus® Prime software. The Nios® V soft core processor uses the Platform Designer interconnects to communicate with the On-chip Flash IP.

Figure 17. Connection between On-chip Flash IP and Nios® V Processor
Note: Ensure the On-chip Flash csr port is connected to the Nios® V processor data_manager to enable the processor to control write and erase operations.

The On-chip Flash IP core can provide access to five flash sectors - UFM0, UFM1, CFM0, CFM1, and CFM2.

Important information about the UFM and CFM sectors.:

  • CFM sectors are intended for configuration (bitstream) data (*.pof) storage.
  • User data can be stored in the UFM sectors and may be hidden, if the correct settings are selected in the Platform Designer tool.
  • Certain devices do not have a UFM1 sector. You can refer to the table: UFM and CFM Sector Size for available sectors in each individual MAX® 10 FPGA device.
  • You can configure CFM2 as a virtual UFM by selecting Single Uncompressed Image configuration mode.
  • You can configure CFM2 and CFM1 as a virtual UFM by selecting Single Uncompressed Image configuration mode.
  • The size of each sector varies with the selected MAX® 10 FPGA devices.
Table 31.  UFM and CFM Sector SizeThis table lists the dimensions of the UFM and CFM arrays.
Device Pages per Sector Page Size (Kbit) Maximum User Flash Memory Size (Kbit) 3 Total Configuration Memory Size (Kbit) OCRAM Size (Kbit)
UFM1 UFM0 CFM2 CFM1 CFM0
10M02 3 3 0 0 34 16 96 544 108
10M04 0 8 41 29 70 16 1248 2240 189
10M08 8 8 41 29 70 16 1376 2240 378
10M16 4 4 38 28 66 32 2368 4224 549
10M25 4 4 52 40 92 32 3200 5888 675
10M40 4 4 48 36 84 64 5888 10752 1260
10M50 4 4 48 36 84 64 5888 10752 1638
3 The maximum possible value, which is dependent on the configuration mode you select.