I am designing a new project which demands the usage of DRAM. I have never interfaced with one before, so my knowledge is rather limited. By analyzing the requirements, it would be sufficient to go with a 128 Mbit capacity running at 100 MHz with a 16 bit transfer per cycle.
By doing the research, I concluded that a SDR DRAM should be my choice for the following reasons:
- The controller is simpler to implement (I am aware that there are controllers available and also vendors may provide their own, but I may implement my own for learning purposes)
- It is good entry level for DRAM
- It does not need dedicated FPGA pins, so more flexibility
- The PCB layout is simpler due to the single ended, 50 Ohm impedance traces, versus the differential of the DDR
- A 16-bit SDR bus has the same number of traces as the 8 bit DDR, so no saving on this
- It uses 3.3V so I don't have to mess with different voltages on the banks (vs the SSTL of DDR)
- A SDR is cheaper than DDR
- Power consumption is lower in DDR, but the SDR consumption is not prohibitive or excessive
Now, based on the above, is there a major reason which I am not aware and have not considered that I should prefer going with DDR instead?