Skip to content
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Home
  • Download
  • Docs
    • Documentation Browser
    • GeMRTOS Manuals
    • GeMRTOS repository
    • License
  • Services
  • Contact us
Search
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Download
  • Docs
    • Documentation Browser
    • Manuals
    • GeMRTOS repository
    • License
  • Services
  • Contact us
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Home
  • Download
  • Docs
    • Documentation Browser
    • GeMRTOS Manuals
    • GeMRTOS repository
    • License
  • Services
  • Contact us
Search
GeMRTOS
GeMRTOS

The Generic eMbedded Multiprocessor RTOS

  • Download
  • Docs
    • Documentation Browser
    • Manuals
    • GeMRTOS repository
    • License
  • Services
  • Contact us

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

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

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
View Categories
  • Home
  • GeMRTOS KnowledgeBase
  • GeMRTOS
  • Quartus Warning 113015: mem_init.hex Width Mismatch BSP Fix

Quartus Warning 113015: mem_init.hex Width Mismatch BSP Fix

0:00 / 1:36
  • View as Markdown Open this page as plain Markdown (opens in a new tab)
  • Open in ChatGPT Ask questions about this page (opens in a new tab)
  • Open in Claude Ask questions about this page (opens in a new tab)
  • Open in Google AI Studio Ask questions about this page (Google account required) (opens in a new tab)

When building a GeMRTOS Nios V/II project, Quartus may emit Warning (113015) during compilation if memory initialization files generated by the mem_init_generate make target have a record length that does not match the memory data port width. The fix requires a one-line change to the BSP’s mem_init.mk file.

Issue Description #

This warning appears when using memory initialization files generated by the mem_init_generate make target in the makefile produced by the Nios® II Embedded Design Suite (EDS). The .hex files are generated with a default record length that may differ from the actual memory data port width, triggering the warning.

How to Fix It #

Modify the mem_init.mk file inside the BSP directory to add a --record switch to the $(ELF2HEX) command:

  1. Open <BSP directory>/mem_init.mk in a text editor.
  2. Find the line containing the $(ELF2HEX) command.
  3. Add the following switch to that command:
    --record=${mem_hex_width}/8

Example of the modified $(ELF2HEX) line:

XXXXXX = $(ELF2HEX) --record=4 $< $(mem_start_address) $(mem_end_address) --width=$(mem_hex_width) $(mem_endianness) --create-lanes=$(mem_create_lanes) $(elf2hex_extra_args) $@

Key Takeaways #

  • Warning 113015 is harmless in most cases but indicates the generated .hex record length does not match the memory port width — this can cause unexpected initialisation behaviour.
  • The fix is a single addition to mem_init.mk: add --record=${mem_hex_width}/8 to the $(ELF2HEX) command line.
  • The value 4 in the example (--record=4) corresponds to a 32-bit (4-byte) memory width — adjust the formula for other port widths.
  • This fix must be reapplied if the BSP is regenerated, as mem_init.mk is overwritten during BSP regeneration.

Source: Intel Support, Article 000081351.

Avalon MM, GeMRTOS, Nios 2, Nios V, RISC-V

Share This Article :

  • Facebook
  • X
  • 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
  • Issue Description
  • How to Fix It
  • 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.
Altera, Quartus, Cyclone, MAX and Agilex are trademarks of Altera Corporation.
GeMRTOS is property of R. Cayssials.
**All contact forms on this site are protected by reCAPTCHA. Google Privacy

Altera Solution Acceleration Partner - Member

GeMRTOS is a Member in Altera’s ASAP Program