02-23-2018 06:44 AM
I am trying to implement an interface with DDR where PL and PS both can access the location and do read and write operation.. Means that.. PL will compute some algo. and write to a location of DDR and at a particular time PS will read that same location on DDR and process the algo (implemented on PS) and write its results on some other location on DDR..and so on..
I am confused with what memory location I should make PL write data to DDR and which location from PS to write on DDR..From google searches I found "mmap" function calls and /dev/mem to find the memory allocation..
Are these correct approaches to implement the functionality I described above..? Also SDK is not able to take "/sys/mman.h" when I load the Vivado hardware to SDK and write PS logic.. alot of confusion with this iteration...
Any specific guide or reference link will be a great help..
02-23-2018 01:48 PM
02-26-2018 12:45 PM
Please check the attached error message that is observed when I compile the code to access DDR from PL and PS side with CDMA IP block..
The message reads-
arm-none-eabi-gcc -Wall -O0 -g3 -I/opt/Xilinx/SDK/2017.4/gnu/aarch32/lin/gcc-arm-linux-gnueabi/arm-linux-gnueabihf/libc/usr/include/asm -c -fmessage-length=0 -MT"src/helloworld.o" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -I../../Design1_23Feb_bsp/ps7_cortexa9_0/include -MMD -MP -MF"src/helloworld.d" -MT"src/helloworld.o" -o "src/helloworld.o" "../src/helloworld.c"
../src/helloworld.c:22:22: fatal error: sys/mman.h: No such file or directory
src/subdir.mk:24: recipe for target 'src/helloworld.o' failed
make: *** [src/helloworld.o] Error 1
Also I have attached the screen shot of the same.. Let me know how to resolve this and also the proper approach to implement the DDR interface from PL and PS as mentioned in the original post..