What is the method to read/write to DDR3 through the PS?
I am struggling to find any documentation or examples to interface between the two?
Thanks in advance
What is the method to read/write to DDR3 through the PS?
I am struggling to find any documentation or examples to interface between the two?
Thanks in advance
The Avnet Developing Zynq Software and Developing Zynq Hardware Speedway tutorials have detailed information and examples on how the Zynq PS DDR interface, as well as the other Zynq interfaces, work.
http://zedboard.org/support/trainings-and-videos
-Gary
Which topic mentions DDR3?
I can't find any mention of DDR3
Sorry if I'm being blind
Thanks for the help so far
Not sure exactly what sort of details or documentation you are looking for. You can always look at the Zynq Technical Reference Manual (UG585) http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf.
The presentation material for both Speedway trainings cover how the DDR memory controller in the Zynq device operates within the system.
The Software presentation covers accessing the DDR memory from an application point of view, including addresses, cacheing, etc. The lab exercises target the ZedBoard and the MicroZed boards, both of which use DDR3 memory.
If you want to how to hardware interface to the DDR memory works the Hardware presentation goes into more detail on that interface. If you are using a board with pre-defined definition files the DDR memory interface will be handled implicitly and you can 'just use it' by the normal application methods (linker scripts, etc.). If you want to know exactly how to configure the DDR3 interface Lab 2 of the Hardware Speedway goes into all of the details on the DDR controller configuration settings.
-Gary
Thanks for the documentation, it helped me out with understanding more about the DDR3 memory.
I am looking for an example in the PS/PL for how to complete the interface. I have found: http://www.fpgadeveloper.com/2014/08/using-the-axi-dma-in-vivado.html which appears to be useful though I'm not quite sure how to implement this to work with arbitrary data.