Many computer users will be familiar with RAM. You might not know that the RAM you’re thinking of is a type of DRAM. Your computer also has some SRAM in it too. There are many differences between these two, but, from a user perspective, it mostly comes down to DRAM being cheaper and available in much larger capacities.
SRAM is significantly more expensive but much faster. This gives rise to their two different uses. DRAM is used as the main system RAM. The low cost and high density are helpful because you need gigabytes of it in modern computers. SRAM is used as the CPU cache. The high speed is excellent here as it keeps the CPU fed, but capacities are limited to keep CPUs affordable.
Explaining the Names
SRAM stands for Static Random Access Memory, while DRAM stands for Dynamic Random Access Memory. The differences above, however, don’t really explain why one is considered static and the other dynamic.
The difference is actually in how the memory cell works. Static RAM simply needs to be written to. It will keep the data it has stored without any further interaction, as long as there is a power supply. Dynamic RAM, however, needs each memory cell to be regularly recharged, or the data it holds will be lost, even with a constant power supply. A DRAM cell is recharged by reading its contents and then writing back the same data.
Note: Both DRAM and SRAM are volatile memory. Both will lose any data they hold if they lose power. This is also true of PSDRAM.
Of course, computers don’t show you that your RAM constantly has the write the same data back to itself. This would be entirely unnecessary and confusing to users. Despite this, the CPU, specifically the memory controller, has to regularly instruct the memory cells to perform a refresh cycle. Which adds to the load on the memory controller. SRAM doesn’t have to do any of this. Each SRAM cell doesn’t suffer from charge decay, so the cell never needs to be refreshed.
The Best of Both Worlds?
PSDRAM, also given the acronym PSRAM, stands for PseudoStatic RAM. It is a form of modified DRAM that makes it present more like SRAM. Individual memory cells are still made the same way as DRAM, making them cheap.
While it is relatively inexpensive, the density is lower than true DRAM. This is because PSDRAM introduces extra internal circuitry that automatically refreshes the memory cells. Like SRAM, the memory controller doesn’t need to do anything to keep data in PSDRAM. It just works.
The simplification means that the command circuitry needed to interact with PSDRAM is less complicated than DRAM. One potential downside of this is that because the CPU doesn’t control when memory banks get refreshed, it may issue a request for data just after the relevant bank of PSDRAM has begun a refresh cycle. This specific issue means that there may be unexpectedly high memory latency in some cases.
PSDRAM is a middle ground between DRAM and SRAM. Memory cells need to be refreshed regularly because they’re built on the same process as DRAM. The memory can be presented to the CPU like SRAM, though, as internal circuitry takes care of refreshing the memory cells automatically. At the end of the day, though, PSDRAM doesn’t offer many particular benefits. It is not used in standard computers at all.
That isn’t to say that PSDRAM is bad because it certainly is used. It can be found in some automotive systems, industrial control systems, and FPGA-based systems, where the reduced control complexity is useful. But PSDRAM doesn’t have a vast market footprint, which doesn’t seem likely to change. Don’t forget to share your thoughts on the subject in the comments below.