First post, by Tetrium
- Rank
- l33t++
I didn't know what else to call it. This topic's basically me typing what I think about the future of computer memory.
First a little history, which you probably know as well as I do 😉
In the dark ages of the x86 computer memory was installed basically the same way all components were installed: In DIP packages (single chips either soldered directly or placed in a socket)
At some point it was decided some changes had to be made, mostly because some of the hardware was getting too complicated to put in DIP sockets (like the cpu and chipset) or there were simply just too many single components needed (like RAM).
After some other routes the cpu eventually ended up being packaged in a square ceramic package with the pins on the underside.
For memory another solution was found:Several chips were placed on a single pcb (the ram stick, or the SIMM) and this was placed in special sockets (the 30 pin variant).
This had the advantage that searching and replacing failed ram components became much easier, as well as upgrading.
However, the 386SX required SIMM's to be fitted in pairs, since the 386SX had a 16 bit external bus.
The 386DX had an even wider external bus, 32 bit. This caused some problems sicne now 4 identical sticks of ram had to be fitted so a better solution was needed.
This solution finally arrived with the arrival of 72pin SIMM's.
These SIMM's went from being 8bit to 32bit, meaning only a single newer SIMM had to be fitted in order to get a full bank.
It however took a while before this new memory started becoming mainstream, only in the middle of the riegn of the 386's succesor, the 486, did it finally replace the now obsolete 30 pin SIMM.
This did not last long however. With the advent of the first Pentium, the bus was again doubled and became 64 bit. Again memory modules had to be installed in pairs.
Again a solution was deviced, the DIMM. What they basically did was electronically isolate the 2 separate sides of the ram module and stick a full 32 bit memory module on each side (hey, I'm cutting heaps of corners here 🤣 😜 ). Hence the SIMM was now called a DIMM.
This new module was 64 bit wide and solved the problem for a longer period. This was mainly because 128 bit x86 cpu's weren't acutely and thus 64 bit would remain sufficient for the foreseeable future.
Memory did ofcourse evolve, but it kept using the DIMM specs, though each newer DIMM wasn't compatible with the ones they replaced. Even though every successive DIMM had slightly more pins then it's predecessor, all remained 64 bit wide.
At some point more memory bandwidth was needed, more then the continuingly evolving DIMM's could keep up with.
Chipsets started appearing that could double maximum memory bandwidth by making the memory channel 128 bits wide instead of the then standard 64 bits.
This was good for a while, an easy jump to double maximum bandwidth while using current memory technology.
This was good for a single jump, dual channel soon became mainstream and even more memory bandwidth quickly became sought after.
But this jump wasn't so easy to make, again doubling the memory bus would require memory to be fitted in sets of 4 again.
In the end things moved to tripple channel, requiring 3 DIMM's to be fitted in order to fill a single bank.
As things are now this can't continue like this. What's next? Quad channel? hexa channel?? DDR4 is still in the far future and the DIMM isn't likely to be easily replaced by some new kind of memory....or is it?
Alright, so much for a brief intro, 🤣 😜
So the thing is, is there any "theoretical" solution to this?
You can't make a memory module be 128 bit, the module would simply become too long! Also having to fit sets of 3, later perhaps even 4, 6 or 8, it just can't continue like this. At some point it'll get stuck with no way forward.
But I suddenly got this weird idea (me and weird ideas? what else is new hehe 😜 ).
Back in the old days cpu's needed more and more pins, and in the end it was decided to package the cpu in a square ceramic PGA.
Modern cpu's have close to 1000 pins on a very small area while memory modules have all the connections in 1 single row, but on both sides of the module.
How bout changing the packaging of memory to be more like a cpu? memory in sockets, much like the older cpu sockets?
DDR3 DIMM's need 240 pins for a 64 bit memory bus. Something looking like the old P4 socket (say, socket 478) would double the number of available pins while still taking up relatively little space on a motherboard.
Also these sockets are easier to scale down in side then modules. Simply, because making module pins smaller decreases size in a linear way while making socket pins smaller decreases it exponentially.
Sooo...hypothetical future memory package in sockets...Sounds like a good idea? Or is there something I overlooked?
Discuss!