Forum Discussion

axel19's avatar
axel19
Icon for New Contributor rankNew Contributor
6 days ago

Quartus 26.1: quartus_asm triggers quartus_pfg despite disabled generation flags

Product: Quartus Prime Pro Edition
Version: 26.1.0 Build 110 (03/26/2026)
Component: Assembler (quartus_asm) / Programming File Generator (quartus_pfg)
Environment: Linux

Summary

Running quartus_asm with programming file generation explicitly disabled still triggers an internal call to quartus_pfg. This secondary step fails non-deterministically, even when no inputs or environment variables change between runs.

Expected Behavior

When invoking:

quartus_asm ... --set=GENERATE_PROGRAMMING_FILES=OFF --set=GENERATE_RBF_FILE=OFF

quartus_pfg should not be invoked at all, or it should be strictly disabled / skipped internally

Actual Behavior

quartus_asm always invokes quartus_pfg, even with generation disabled. This then leads to quartus_pfg unpredictably succeeding or failing. See attached log file.

This leads to inconsistent results across identical runs.

Outcomes observed across runs:

The attached log file shows exemplary the different outcome of successive runs with no changes in between. The order of these results are interchangeable as observed.

1. Success

Quartus Prime Programming File Generator was successful. 0 errors

2. Corruption error

Error (19192): File ..._hps_auto.sof is corrupted

3. Segmentation fault

*** Fatal Error: Segment Violation ... 

Reproduction

Run repeatedly without changing anything:

quartus_asm <proj> --read_settings_files=on --write_settings_files=off -c <rev> --set=GENERATE_PROGRAMMING_FILES=OFF --set=GENERATE_RBF_FILE=OFF

Impact

Breaks reproducibility guarantees

Causes intermittent CI failures

Forces workarounds (retry logic, ignoring exit codes, etc.)

Undermines trust in assembler output stage

Suggested Fixes / Questions

Why is quartus_pfg invoked when: GENERATE_PROGRAMMING_FILES=OFF GENERATE_RBF_FILE=OFF?

Can this behavior be: disabled completely, or controlled via a strict flag?

Is there a known issue with: HPS-related SOF post-processing

Workarounds (partial)

Re-running the same command sometimes succeeds

Running quartus_pfg separately succeeds

Ignoring exit codes is unsafe due to real corruption cases

Conclusion

quartus_asm appears to implicitly depend on quartus_pfg even when disabled, and that dependency is unstable. This behavior is first observed in Quarts 26.1. In 25.3 quartus_asm does not implicitly call quartus_pfg.  At minimum, this should be documented; ideally, the invocation should be conditional or removable.

5 Replies

  • axel19's avatar
    axel19
    Icon for New Contributor rankNew Contributor

    By the way, the forum post formation is broken. It would allow me to add bullet points or code-blocks but when trying to publish it, it claimed that I was using forbidden HTML tags.

      • axel19's avatar
        axel19
        Icon for New Contributor rankNew Contributor

        I assume you are referring to my comment saying that I was not able to add bullet points to my post. I don't want to add any changes to my post. I simply wanted to mention that I had to change the formatting of my post removing all bullet points formations and have them simply formatted as a new-line each.

        I would be, however, much more interested in any technical feedback regarding my observations of quartus_asm.

        Thank you!