Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12590 Discussions

Can the NIOS II f be used as a dropin replacement for NIOS II e?

Altera_Forum
Honored Contributor II
1,058 Views

Can the NIOS II f be used as a dropin replacement for the NIOS II e? In other words are there any things that need to be taken into consideration when switching from the e version to the f version in QSYS? Is there anything in the e version that would not work in the f version? Our problem appears to lie in the communication between the NIOS II f and a register file generated in the SoC. 

 

Quartus Version: Quartus II 64-Bit 15.0.0 Build 145 SJ Web Edition 

Board: Altera DE2-115 Development and Education Board 

Language of code running on NIOS: C 

 

Thanks.
0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
315 Views

SOLUTION: Set data cache size of the NIOS II/f through QSYS (edit) to 0. This fixed everything. 

 

Found at this post. Kind of hard to find on Google due to the many ways one can spell NIOS II/f. 

https://alteraforum.com/forum/showthread.php?t=53914
0 Kudos
Altera_Forum
Honored Contributor II
315 Views

Yes the cache is the main difference between the cores that can cause problems with the software. If you still want to use the speed bump provided by the cache, you need to change the way you communicate with your components. You can use uncached addresses (I think the function to do that is called alt_remap_uncached() IIRC), or use the cache control functions to flush the cache after writing and invalidate it before reading. 

This applies also to memory buffers read/written by DMA:
0 Kudos
Reply