Knowledge Base Article

Why does Nios® V/g experience data corruption when using DTCM?

Description

Due to a problem in Quartus® Prime software, data corruption may occur when running a Nios® V/g processor application that interacts with a Tightly-Coupled Memory (TCM). This happens because of a RTL bug in the load-store unit.

This problem is affecting Nios® V/g processor in,

  • Quartus® Prime Pro Edition release 25.3.1 and earlier
  • Quartus® Prime Standard Edition release 25.1 and earlier

When Nios® V/g processor executes a non-TCM load (i.e. Load from On-Chip Memory or memory-mapped CSR) followed by a Data TCM load, the latter corrupts the former. This causes the non-TCM load to receive incorrect load data.

For example,

lw rd1,0(non-TCM)
lw rd2,0(TCM)

Expectation

Actual Failure

rd1 = load data from address “non-TCM”

rd1 = load data from address “TCM”

rd2 = load data from address “TCM“

rd2 = load data from address “TCM“

Resolution

This problem is fixed in Quartus® Prime Pro Edition 26.1 and is scheduled to be resolved in a future Quartus® Prime Standard Edition release.

Additional Information

A patch is available to fix this problem.

  • Quartus® Prime Standard Edition Software v25.1 Patch 0.01

Please contact Altera Support for additional support.

Updated 1 month ago
Version 3.0
No CommentsBe the first to comment