Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
17260 Discussions

Nios system address mapping issues

Altera_Forum
Honored Contributor II
2,321 Views

hello , 

 

I created my own system like this.. 

NIOS-->(s)CDMA_ENCODING(M)-->(s)CDMA_DECODING(M)-->Slave 

 

 

in my system address lines are 16bit wide 

datalines are 32bit wide. 

 

NIOS-->-->-->Slave

 

here i am reducing 16-bit to 8-bit & 32-bit to 16 bit in middle of NIOS--> slave thats why i am using CDMA Encoding and decoding. 

 

 

here i am getting Address mapping errors kindly help. 

attaching my sopc system image.
0 Kudos
6 Replies
Altera_Forum
Honored Contributor II
841 Views

The error messages are very clear, aren't they? Especially the second one. 

Regarding the first one, maybe you are missing one point: you are supposed to always use byte addressing even if you device data is 16- or 32-bit wide. Then, your CDMA_MASTER master port address space range must be at least equal or greater then CDMA_SLAVE slave port range.
0 Kudos
Altera_Forum
Honored Contributor II
841 Views

Dear Cris72, 

 

 

i am clear about second error,and about first one..... 

 

My CDMA_MASTER master port is 8bit wide and my CDMA_SLAVE slave port is also 8bit wide then why i am getting this type of error... 

 

how to know the CDMA_MASTER master port address space range . 

kindly help. 

 

Thanks in advance.
0 Kudos
Altera_Forum
Honored Contributor II
841 Views

I guess the CDMA modules are custom components written by you. 

So, you do know the master port address range. You must make sure it equals or exceeds 0x40000, namely the one available on the slave.
0 Kudos
Altera_Forum
Honored Contributor II
841 Views

Dear cris72, 

 

please tell me how to know the address range of master. 

 

address width is 8 bit; 

data width is 16 bit; 

 

i mean 

 

32-bit data =>16-bit data => 32 bit data. in middle i am reducing data width to 16 bits again converting to 32 bit. here another warning is "no [byteenable] signal is asserted so master will writes into slave SPURIOUSLY. 

CDMA_ENCODING(MASTER):CDMA_DECODING(slave) address (0x0..0x1f) is out of range of masters address (0x0..0xf). 

what will be the address range.kindly tell me sir. 

 

its showing that CDMA_ENCODING (master) address range is 0x0..0xf 

CDMA_DECODING(slave) range is 0x0..0x1f.(it assigned automatically)..ITS CAUSING ERROR, I AM ATTACHING MY ADDRESS MAP IMAGE.. KINDLY LOOK IT AND SUGESST ME YOUR SOLUTION WHERE TO CHANGE MY ADDRESS RANGE.AND SPECIFY THAT ADDRESS RANGE SIR.PLEASE.
0 Kudos
Altera_Forum
Honored Contributor II
841 Views

I think you are still missing a point: the master address range must be equal or greater than the slave range.  

Now you have  

master : 8bit address , 0x00 to 0x0f 

slave : 9bit address , 0x00 to 0x1f 

This way the master can't access the whole slave memory and sopc returns the error. 

You must increase master range at least one bit. You definitely can do it, since in the original post it was even 0 to 0xffff and I don't know either WHY nor HOW you reduced it. 

I believe you have some option for this in the component options.
0 Kudos
Altera_Forum
Honored Contributor II
841 Views

Dear Cris72, 

Yes, I got some Idea About it how to do it.. i will get back to you soon sir, after modifying my logic. 

thank you.
0 Kudos
Reply