Nios® V Embedded Processor Design Handbook

ID 726952
Date 7/08/2024
Public
Document Table of Contents

4.5.2.1. Nios® V Processor Application Copied from Configuration QSPI Flash to RAM Using Boot Copier (Bootloader via SDM)

You can use a boot copier to copy the Nios® V application from configuration QSPI flash to RAM when multiple iterations of application software development and high system performance are required. Altera recommends applying the memory organization in Memory Organization for Bootloader via SDM to use the Bootloader via SDM. The following section covers the description of each memory and the steps required to create them.

The boot copier is memory-initialized in the Bootloader ROM. For this boot option, the Nios® V processor starts executing the boot copier upon system reset, which copies the application from the configuration QSPI to the internal or external RAM. Once this completes, the Nios® V processor transfers the program control over to the application.
Note: In SDM-based FPGA device, Nios® V software booting from configuration QSPI Flash is not supported when the FPGA device is configured using Avalon-ST scheme.
Figure 47. Nios V Processor Application Copied from Configuration QSPI Flash to RAM Using Boot Copier (Bootloader via SDM)

Memory Organization for Bootloader via SDM

The Nios® V processor system should comprise of the following memory spaces to implement the Bootloader via SDM and Nios® V application. The memories are implemented as such:

  • Bootloader ROM and RAM (used by Bootloader via SDM only).
  • Nios® V processor application RAM (used by user application only).
Table 28.  Description of Memory Organization

Memory

Memory Type

Application Use

Linker Section

Notes

Bootloader ROM

(Internal ROM)

Read-Only Memory (ROM) Bootloader via SDM .text

Set as the Nios® V processor reset agent.

Perform memory initialization with Bootloader via SDM (.hex) file.

Bootloader RAM

(Internal RAM)

Random Access Memory (RAM) Bootloader via SDM .rodata,

.rwdata

, .bss, .stack, .heap,

.exceptions

Initialize Bootloader via SDM using alt_load().

User Application RAM (Internal or External RAM) Random Access Memory (RAM) Nios® V Application .text, .rodata, .rwdata, .bss, .stack, .heap,

.exceptions

The Nios® V processor application is loaded into RAM from flash by the Bootloader via SDM.