Calibration failing for DDR2 Memory Controller on Cyclone V
I'm having trouble implementing the example project generated when instantiating a DDR2 interace on a Cyclone V device on a custom board. At this point, I am trying to create a soft memory interface (saw a note that the EMIF doesn't work with hard memory interface, don't know how accurate that is) running at 300 MHz on a custom board to connect to . It appears the timing closes at this point, and I've entered what I believe are correct values for the memory device timing parameters and my board parameters, but I still always get a failure in the calibration at the guaranteed read stage on group 0.
I was able to generate an example DDR3 interface on the Cyclone V E development kit and get it to pass the driver test, and I am trying to recreate the same overall structure on my board (PLL, ISSP, DDR2 interface and DDR2 driver created by MegaWizard).
I'm at a bit of a loss as to what to try next to get this module working, so does anyone have any thoughts as to what to try next? I can upload some SignalTap or other debugging outputs if anything would be particularly useful.