cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Visitor
Visitor
299 Views
Registered: ‎07-04-2019

Base address for memory mapping on Xilinx zcu102c board

Jump to solution

Currently I am trying to use mmap() function with 0x00000000 as the base address.With that I will be able to store some 3.37 lakh elements on to the PS DDR. But after that the board gets hanged and I have to restart the board. In the Xilinx document screen shot attached, they are saying nothing about the base address. But in the hdf file generated PS DDR physical base address is mentioned as 0xfd080000. If I give this as the base address, the board will be stuck in the initial step only. Is there any other way to decide about the correct base address, with which I should be able to store all the values on to the PS DDR. Any help would be appreciated!!!!

Tags (1)
ddr_zynq.PNG
ddr_address.PNG
0 Kudos
Reply
1 Solution

Accepted Solutions
Adventurer
Adventurer
202 Views
Registered: ‎03-13-2019

Hello @vir_t 

I am not getting entire picture what do you want to do 

But one suggestion though.

When you boot the board the bootable files will reside in initial address of DDR.

So while using mmap() make sure you use base address other than zero.

example:

mmap( NULL, length, ( PROT_EXEC | PROT_READ | PROT_WRITE ), MAP_SHARED, fd, offset address);

Suppose if you assign 0x0000 0000 in block design for DDR memory you can use 

offset address as 0x2000 0000. (Not necessarily this address but better than 0x0000 0000)

Hope if it helps.
-----------------------------------------------------------
Accept as solution if it solves your problem.

View solution in original post

0 Kudos
Reply
1 Reply
Adventurer
Adventurer
203 Views
Registered: ‎03-13-2019

Hello @vir_t 

I am not getting entire picture what do you want to do 

But one suggestion though.

When you boot the board the bootable files will reside in initial address of DDR.

So while using mmap() make sure you use base address other than zero.

example:

mmap( NULL, length, ( PROT_EXEC | PROT_READ | PROT_WRITE ), MAP_SHARED, fd, offset address);

Suppose if you assign 0x0000 0000 in block design for DDR memory you can use 

offset address as 0x2000 0000. (Not necessarily this address but better than 0x0000 0000)

Hope if it helps.
-----------------------------------------------------------
Accept as solution if it solves your problem.

View solution in original post

0 Kudos
Reply