06-17-2016 05:43 AM
I am using MIG from Xilinx to write to DDR3 interfaced to Spartan6.
I am first wrote 64 bit data to the write FIFO of MCB to depth of 64. Then I drove following signals:
cmd_en = 1
cmd_instr = 0 --for write instruction
cmd_bl = 63 --for burst length of 64
I had following signals during that time interval(when cmd_en = 1 was issued).
cmd_full = 0
cmd_empty = 1
wr_en = 0
wr_mask = 0
wr_full = 1
wr_empty = 0.
In next clock, cmd_empty went low (=0). Other signals never changed even after very long simulation.
What can cause the MCB to not respond to my commands? (in MCB, mcb_command = 7, mcb_enable1 = 1, mcb_enable2= 1).
06-17-2016 06:38 AM
This could happen if the MCB hasn't completed calibration yet, or if there was an error. There are a couple of error status outputs of the MCB you could check.
06-17-2016 06:49 AM
@gszakacs. Thanks for your answer. I have checked for calib_done before writing to FIFO and issuing the command. And I also check rd_error, wr_error, wr_underrun and rd_overflow signals. All those signals are low.