When designing and implementing a project using a microprocessor or FPGA it is sometimes desirable to have a large amount of RAM available. One example of this is the Porta-Amp project. The Porta-Amp project involves the design of a portable MP3 player, where it is desired to store up to fifteen digital songs (each 3-5 MB in size) in a reasonably affordable, compact, non-volatile, and fast media.
Synchronous Dynamic Random Access Memory (SDRAM) is presently the memory of choice in personal computers and as such is easy to obtain and very affordable. Recently prices for PC100 SDRAM have sky-rocketed by 350%, however this increase is the result of a natural catastrophe in Taiwan and prices should settle back down once supply returns to normal. Even with the inflated SDRAM price it is still possible to obtain 32 MB of SDRAM for the price of 2 MB of Static RAM (SRAM).
With dimensions of 5.25" X 1.38" X 0.13" a SDRAM Dual Inline Memory Module (DIMM) is relatively compact. In addition, since the DIMM is basically a printed circuit board with individual SDRAM chips already soldered onto it, one does not have to deal with soldering surface mount chips. All that need be done is obtain a 168 pin DIMM socket and wire directly to it.
SDRAM isn't non-volatile. It does however provide the next best thing: a low power self-refresh mode. Unlike previous types of RAM SDRAM is capable of internally timing and generating refreshes when it is placed into its low power self-refresh mode.
PC100 SDRAM is rated for operation at 100MHz, has a 64 bit datapath, and is burst oriented. Thus even if one takes into account that the row and column addresses are time multiplexed, with the row having to be ACTIVATED before the column address can be used for READs or WRITEs, it is still possible to obtain respectable data throughput due to the column accesses being internally pipelined.
SDRAM is also standards driven, thus SDRAM modules manufactured by different companies are interchangeable (if they meet the same standard.) Two relevant standards are PC100 compliancy with respect to timing and performance as well as the JEDEC-standard 168-pin DIMM (Dual Inline Memory Module) physical interface.
For more in-depth information on the operation of SDRAM please see the
References.