FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6359 Discussions

Nios II address range issue

Altera_Forum
Honored Contributor II
2,721 Views

Hi everybody, 

I am using SOPC to built avalon interface for my custom external logic.i have selected NiosII as master and my custom logic as slave.Using new component Wizard, I have added signal and interface. In the interface i have selected avalon slave,i got an error before generation. 

 

cpu_0:nois ii instruction master cannot address memories over 2^32.  

cpu_0:nois ii data master cannot address memories over 2^32.  

 

My data width is 32 but still getting error. 

I have tried auto-assign base address and manually edit addresses also but no effect.what base address should i specify for my device. 

 

Have anybody experienced this problem. 

 

Pankaj
0 Kudos
7 Replies
Altera_Forum
Honored Contributor II
858 Views

It's not a data width issue, it's an address span issue. If the memory range that you're trying to address is >2^32, it won't work. 

 

Cheers, 

 

- Ura
0 Kudos
Altera_Forum
Honored Contributor II
858 Views

You should not create a custom Avalon slave with a 32-bit address width. The maximum address space of the NIOS is 31 bits (upper bit is used for cache bypass). If you make a component with a 31-bit address space, there is no room for anything else on the processor's bus. 

 

Jake
Altera_Forum
Honored Contributor II
858 Views

Hi Jakobjones, 

 

Could you pls tell me what are the difference between Nios II instruction bus, address bus and data bus? 

 

In actual, does it mean that Nios II has only 2^31 of address bus/address spaces? 

 

Thx. 

Caridee
0 Kudos
Altera_Forum
Honored Contributor II
858 Views

Both the Instruction and Data master ports of the Nios II processor are used to address memory. Each master has a 32-bit address space but the highest bit is used by the Nios II processor to bypass the cache.  

 

Jake
0 Kudos
Altera_Forum
Honored Contributor II
858 Views

Hi Jake, 

 

thank you for ur quick reply. Appreciate it! 

 

i wish to confirm last thing, is intruction and data master port are referring to instruction bus and data bus, repectively? If yes, means both instruction bus and data bus are having 2^31 address bus? 

 

thx for your confirmation, correct me if i am wrong. 

 

caridee
0 Kudos
Altera_Forum
Honored Contributor II
858 Views

Yes, each master ( or bus if you wish) has a maximum address space of 31 bits. 

 

Jake
0 Kudos
Altera_Forum
Honored Contributor II
858 Views

Hi Jake, 

 

I got ur explanation, thanks! 

 

Caridee
0 Kudos
Reply