I have a MIG/MCB running on my Spartan-6 evaluation board. This is the board by the way -- https://numato.com/product/mimas-v2-spartan-6-fpga-development-board-with-ddr-sdram
Anyway, I am wondering what is the maximum address I can use for my user interface logic (i.e., "c3_p0_cmd_byte_addr")?
This is 30-bits wide because the lower two must be 0, but the actual external RAM chip is only 512Mb, so surely I cannot write to 0x3FFFFFFF, or can I (if I understand, the MCB does some kind of address translation at a lower layer)?
Thanks for any help!
Doing some more reading, it seems like the user address is specified with some bits allocated to BANK, ROW, and COLUMN -- https://www.xilinx.com/support/answers/44094.html
My specific memory part has 25 bits for those fields,
So I am guessing that I simply cannot use the upper 5 bits for addressing? That would be 0x07FFFFFC.. but you're right, that's > 64MB so I'm still a little confused