Forum Discussion

watanabe's avatar
watanabe
Icon for New Contributor rankNew Contributor
1 day ago

Regarding the issue of UFM not starting

I am trying to implement a remote system update feature using Quartus version 23.1 on an FPGA (MAX10 10M16SA). I have set the configuration mode to Dual Compressed Images, and writing to CFM0 and CFM1 of the on-chip flash is working correctly.

However, I am having trouble starting the Nios II software that I stored in the UFM.

There are no errors reported. I have already performed the following steps:

・Configured the HEX file in the On-Chip Flash settings in Platform Designer

・Added the HEX file when generating the .pof file using Convert Programming File

・Added the meminit.qip file to the project

・Verified that the BSP Editor settings are correct

I have also confirmed that the software itself runs correctly when executed in other environments.

Are there any other possible reasons why the software stored in UFM would not start correctly? I would greatly appreciate any advice or suggestions.

1 Reply

  • FakhrulA_altera's avatar
    FakhrulA_altera
    Icon for Regular Contributor rankRegular Contributor

    Hi watanabe,

    Thanks for the details. From my understanding, if CFM programming is working but the Nios II software in UFM does not start, the most common causes are below.

    Could you please check:

    • Boot method match: Confirm whether you are using XIP (execute-in-place) from UFM or a boot copier that copies the app from UFM to RAM. If the system is set for boot copier but only the app HEX is placed at the reset address, the CPU will not start correctly. 
    • Reset and exception vectors: Ensure the reset vector points to the exact UFM address/page where the code starts. A page or offset mismatch will look like “no boot”. Try refer UBooting with dual compressed images on a MAX 10.
    • Dual Compressed Images behavior: In Dual Compressed Images mode, on-chip RAM preload is disabled. If your flow depends on RAM being pre-initialized at configuration time, it will not work in this mode.
    • UFM placement for multiple images: If you are trying to keep two software images in UFM (aligned to CFM0/CFM1), you may need an explicit offset strategy and a combined HEX approach, not two separate HEX files. 

       

    Regards,
    Fakhrul