Skip to content
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Home
  • Download Now!
  • GeMRTOS
    • License
    • Download
    • GeMRTOS Documentation
      • Documentation Browser
      • GeMRTOS Manuals
    • GeMRTOS repository
  • Log in
  • Contact us
Search
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Download Now!!!
  • GeMRTOS
    • License
    • Download now!
    • GeMRTOS documentation
    • GeMRTOS repository
  • Login
  • Contact us
  • FPGA Laboratory ACCESS
  • Cursos de FPGA (en español)
  • Challenges
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Home
  • Download Now!
  • GeMRTOS
    • License
    • Download
    • GeMRTOS Documentation
      • Documentation Browser
      • GeMRTOS Manuals
    • GeMRTOS repository
  • Log in
  • Contact us
Search
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Download Now!!!
  • GeMRTOS
    • License
    • Download now!
    • GeMRTOS documentation
    • GeMRTOS repository
  • Login
  • Contact us
  • FPGA Laboratory ACCESS
  • Cursos de FPGA (en español)
  • Challenges

GeMRTOS - Getting started

  • Introduction to GeMRTOS
  • Getting Started with GeMRTOS: Multiprocessor RTOS for Altera FPGA (Nios II & Nios V)
  • API references
  • Platform Designer Flow for GeMRTOS Nios V FPGA Development
  • GeMRTOS RTOS Task Periods: Infinite Loop vs Periodic Tasks
  • Install Quartus Prime and WSL for GeMRTOS Nios V on Windows

GeMRTOS - Features

  • GeMRTOS Mutex and Critical Sections in Multiprocessor RTOS
  • GeMRTOS Signals: Runtime Exception Handling for Nios V RTOS
  • GeMRTOS System Architecture – Multiprocessor Design with Altera Nios V Processors
  • Hybrid Partition Scheduling in GeMRTOS, Multiprocessor RTOS for Altera FPGA
  • GeMRTOS Scheduling Lists: EDF and Fixed Priority RTOS Guide
  • GeMRTOS Tasks: Types, Creation, and Scheduling for Nios V
  • GeMRTOS Trigger Resources: Event Handling Beyond Interrupts
  • GeMRTOS Controller: Complete FPGA RTOS Hardware Guide
  • Data Structures in GeMRTOS: Control Blocks and Linked Lists
  • GeMRTOS Semaphores: Binary and Counting API for Nios V RTOS

General

  • Error (16031): Current Internal Configuration mode does not support memory initialization or ROM. Select Internal Configuration mode with ERAM.
  • newlib Thread Safety in GeMRTOS Nios V Multiprocessor RTOS
  • Set Up Questa-Intel FPGA Edition License for GeMRTOS Nios V
  • Installing Nios II Software Built Tools (SBT) for Eclipse in Quartus Prime starting from version 19.1
  • Fix Quartus Prime 23.1 Fatal Error When Creating ALTPLL IP
  • Fix Missing SDRAM Controller IP in Quartus Prime for GeMRTOS
  • GeMRTOS Nios: Fix 256MB Compile Boundary with -relax-all
  • Questa Simulation Setup for GeMRTOS Nios V: Two Common Fixes
  • Quartus Warning 113015: mem_init.hex Width Mismatch BSP Fix
  • GeMRTOS Secondary Processors Not Booting: nios2-download Fix
  • Fix Quartus Prime System Console: jvm.dll and awt.dll Errors
  • Eclipse does not start after full Quartus Prime instalation
  • Home
  • GeMRTOS KnowledgeBase
  • GeMRTOS
  • GeMRTOS Secondary Processors Not Booting: nios2-download Fix

GeMRTOS Secondary Processors Not Booting: nios2-download Fix

In GeMRTOS multiprocessor RTOS systems on Altera FPGA platforms with Nios V processors, you may find that only processor ID=1 starts correctly after downloading software with nios2-download, while all other processors fail to launch. This is a known boot sequence issue caused by how nios2-download handles the CPU reset across multiple processors.

Root Cause #

Prior to downloading the memory code, nios2-download resets the CPU. When processor ID=1 asserts the debug reset signal before the program code is downloaded, this reset propagates to all remaining processors. The problem is that the remaining processors are not paused during the download — unlike processor ID=1. If the boot code for those processors is not already stored in memory at the time of reset, they have nothing to execute and fail to start.

How to Fix It #

Boot code must be loaded into the boot memory when the FPGA device is configured. Follow these steps:

  1. Run the make mem_init_generate command in your GeMRTOS BSP/application build directory to generate the memory initialization files.
  2. Add the generated .qip file to the Quartus Prime project files.
  3. Perform a full hardware compilation in Quartus Prime to embed the boot code into the FPGA configuration.

After the FPGA is reprogrammed with the new configuration, all processors will have their boot code available in memory at reset and will start correctly.

Alternative: Update Memory Contents Without Full Recompilation #

If you want to avoid a full hardware recompilation, follow the “Update Memory Contents Without Recompiling” procedure described in the Intel Quartus Prime documentation. This updates the memory initialization data in the FPGA configuration without regenerating the full bitstream.

Key Takeaways #

  • In GeMRTOS Nios V multiprocessor systems, processors ID>1 are not paused during nios2-download — they reset and immediately try to execute code. If boot code is absent from memory, they fail to start.
  • The fix is a one-time step: run make mem_init_generate, add the .qip file to the Quartus project, and recompile hardware to embed boot code into the FPGA configuration.
  • After the initial hardware recompilation, subsequent software-only downloads via nios2-download will work correctly for all processors.
  • If full recompilation is impractical, use Intel’s “Update Memory Contents Without Recompiling” flow to update boot memory contents faster.
Avalon MM, GeMRTOS, Nios 2, Nios V, RISC-V
Share This Article :
  • Facebook
  • Twitter
  • LinkedIn
  • Pinterest
Still stuck? How can we help?

How can we help?

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Table of Contents
  • Root Cause
  • How to Fix It
  • Alternative: Update Memory Contents Without Full Recompilation
  • Key Takeaways

Copyright © 2026 - contact us - Dorrego 287 - B8000FLE - Bahía Blanca - Argentina - +542914311867  GeMRTOS

Nios II, Nios V, Quartus Prime, ModelsSim are property of their respective companies.
GeMRTOS is property of R. Cayssials.
**All contact forms on this site are protected by reCAPTCHA. Google Privacy

GeMRTOS joins Intel Partner Alliance as Gold member.