Altera_Forum
Honored Contributor
10 years agoHow to use the DDR3 SDRAM Controller with UniPHY (and the Avalon interface) SoCKit
Hello,
I'm using Quartus 13.1 and a terasic SocKit Cyclone V board. I'm new to FPGA-programming so please excuse if my misunderstanding seems basic. :) I want to build a Memory Controller in order to address the FPGA's DDR3 Memory with the ARM-processor, using Xillibus FIFOs. (This part works, I can send data to my FPGA's logic, manipulate them (like shifting bits etc.) and send them back to the ARM). Now I created an DDR3 Sdram-Controller with UniPHY by using the MegaWizard. I got all parameters from a demostration-project provided by terasic using the same board. However the example is coded in Verilog and I'm only capable of reading/writing VHDL. I don't know how I have to implement the provided interface. My Avalon interface has an address width of 26 bits and a data width of 128 bit, which stems from the memory parameters. But the DDR3 Words are 32 bit and 15 bit addresses, so how am I supposed to just write one word(32 bit). As far as I understood it, I only have to control the provided Avalon interface in order to read/write from/to the RAM, so do I have to translate all reading/writing requests to the size of the avalon interface? I honestly find the documentation a little confusing to say the least so if you know any other sources of information I would be grateful. Thanks in advance for any suggestions and/or clarifications.