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++

wrong flash allocation

Altera_Forum
Honored Contributor II
992 Views

In my SOPC builder, I set the ext_flash address from 0x00000000 to 0x00FFFFFF. 

However, after booting, the FLASH is allocated in 0x80000000 - 0x810000000.(shown as below) 

Is there anyone meeting the same problem? 

Who can tell me how to solve it? Thanks. 

 

 

 

 

RedBoot™ bootstrap and debug environment [ROMRAM] 

Non-certified release, version UNKNOWN - built 14:25:02, Oct 3 2006 

 

Copyright © 2000, 2001, 2002, 2003, 2004 Red Hat, Inc. 

 

RAM: 0x04000020-0x06000000, [0x0402c7dc-0x05fec000] available 

FLASH: 0x80000000 - 0x81000000, 256 blocks of 0x00010000 bytes each. 

RedBoot>
0 Kudos
1 Reply
Altera_Forum
Honored Contributor II
303 Views

Hi weichuan, 

 

the mapping of flash from 0x0 to 0x80000000 isn't necessarily an error. 

The Nios2 processor uses the most significant address bit as cache bypass. 

If bit 31 is set, the Nios2 bypasses the data cache and accesses memory directly. 

 

Perhaps Redboot sets this bit to avoid cache troubles with flash. 

 

Cache bypass is explained in the "Nios II Software Developers Handbook", Chapter 7, heading "Managing Cache in Multi-Master Systems". 

 

Bye, 

Wolfgang
0 Kudos
Reply