Random Access Memory
E N D
Presentation Transcript
Random Access Memory What computers use to think with
Running Programs • Stored on hard disk drive (or other media) • Copied into RAM from media • Then the program is run • CPU can’t get to hard disk drive contents from the Address Bus fast enough
DRAM • Uses transistor and capacitor to form memory:
Organizing Memory • Our computer thinks in terms of bits; we think in terms of Bytes. • 2 GB of RAM is really 2 billion by 8 bits of memory.
Early RAM • Dual Inline Pin Package (DIPPs)
Parity • Early memory had a bad habit of forgetting data • Parity is adding a ninth bit to a memory row for error checking • Some early memory errors were traced to Alpha waves/particles from substrate • Current thinking focuses on cosmic rays and no, I did not make this up!
Parity, cont. • Here’s how it works: 1 0 1 0 0 1 01 Even Odd One’s Ninth bit Zero’s
Parity, cont. • Here’s how it works: 1 0 1 0 0 1 01 Even Odd 0 One’s Ninth bit Zero’s
Parity, cont. • Here’s how it works: 1 0 1 0 0 1 01 Even Odd 1 0 One’s Ninth bit Zero’s
Parity, cont. • Here’s how it works: 1 0 1 0 0 1 01 Even Odd 0 1 One’s Ninth bit Zero’s 1
Parity, cont. • Here’s how it works: 1 0 1 0 0 1 01 Even Odd 0 1 One’s Ninth bit Zero’s 0 1
Banking • Memory must be as wide as External Data Bus • 386 and 486 were 32-bit EDB, so 72-pin was wide enough • Pentiums are 64-bits wide, so we need two 32’s (32+32=64). Should be matched pair of 72-pin memory, or one 64-bit DIMM • Total system memory is sum of modules 22
SDRAM • Synchronous DRAM came along • Tied to FSB speed (System Clock), so we did not have to wait quite as long • Faster than EDO in general, overall result is 4 to 6 times faster • Speeds: 66, 100, 133 (MHz) • Uses Serial Presence Detect (SPD) chip on each module to set timings
168-pin DIMMsSDRAM • Dual, or Different signals on opposite sides of module; Synchronous Dynamic RAM • 64-bits wide – only need one module per bank with Pentium • Notice two notches to orient module
ECC • Error Correction Code • Used in high-end servers • Unlike Parity, can find and correct one-bit errors; can find two-bit errors but not able to correct • Uses 8 bits over 64 bits of data • This one is still around
Registered DRAM • Uses registers as buffers for control signals • Again, found in high-end servers • What we use is UNBUFFERED memory in desktop systems
More Speed • Rambus developed a method for faster RAM • Had to use two sticks at a time • They did not learn from history: collected a lot of patents and developed expensive licenses • Intel thought it was great for earliest P4’s • Ran very hot – required a heat spreader • Has gone away except for replacement sticks • Betamaxed: Good technology, small market share drives it to extinction.
DDR • AMD went with Double Data Rate SDRAM • Rambus had coined bus speeds (200, 400) • DDR is 184-pins, 64-bits wide, one off-center notch • DDR uses throughput volumes:
Next Stop • Dual-Channel Architecture • Get some data from one module, some from another module • Theory is great; used for about six months • Have to use matched pairs; total system memory is sum of modules • Still supported today
DDR2 • Next generation of DDR – faster • 240-pins, 64-bit wide, won’t fit in DDR slot • Electrical improvements allow for faster speeds and less power consumption • Dual channel still supported • PC2-3200 to PC2-8000
DDR3 • 240-pin module – not compatible with DDR2 • Higher speeds, more efficient architecture, around 30% lower power consumption
DDR3 • Some modules include XMP (Extended Memory Profile) – allows user to overclock RAM • Others support Triple Channel Memory (stack three modules together logically) • Doubles the buffer from 4 to 8 bits to get bandwidth improvements • PC3-6400, 8500, 10667, 12800
Double Sided Memory • Memory can come either single-sided, • Or double-sided • Some motherboards have trouble with double-sided memory
CAS • Column Array Strobe – One element of the fetch-from-memory process; measured in FSB clock ticks. Think of it as RAM getting up off the couch. • Another name is Latency • There are four or five different “tech” numbers used with RAM – not to worry about them; the gamers will
Buffering • Buffering, or Registered, DRAM is used by servers using large amounts of memory • Extra chip on memory module, rather like a cache • We don’t use it in desktop systems; we use non-ECC and unbuffered DRAM
Installing DIMMs • DIMMs go straight down into slots, held in place by tabs at each end
Do you need memory? • Probably the quickest and cheapest speed improvement you can make – to a point. System Speed Win 98 – 128 MB, 512 Max Win 2000 – 256 MB Win XP – 1 Gig, 2-3G Max Vista and Win 7 – 2 Gig, 4G Max Amount of RAM
Replacing/Upgrading Memory • Beware the evil ESD! And that 5v on the (ATX) motherboard. • Check what you have, what your motherboard supports, empty slots • Get the right stuff for your application • Try not to mix speeds or capacities
If it doesn’t add up • Many motherboards have “on-board video” • System properties will show less than what you installed because 8 to 64 MB is set aside for video use. That’s where the difference lies. • If you examine the numbers closely, you may find 386Kb “missing” as it is turned off for Upper Memory Area (BIOS).
Troubleshooting RAM • Parity errors create a Non-Maskable Interrupt (NMI). System halts. • Can also get other Blue Screens of Death (BSOD) with memory addresses (in Hex). • True memory errors will show same address each time; other system errors will give different addresses (think about changing the power supply).
Memory Map 2 GB Extended Memory (for a while was Expanded Memory) High Memory 64 KB 1 MB Upper Memory 384 KB 640 KB Conventional Memory 0
Bank A slots Bank B slots
RAM Pricing • Overall, memory tends to decrease in price over time. We have seen this as DDR3 dropped from $300/module to $15/module. • Memory gets “pushed around” more than any other component – Vista drove prices up for six months, so did Win 7. • There are only a limited number of factories for RAM and if one breaks… up goes the prices.
Troubleshooting • Single bit failure – NMI and system halts • Module failure – Series of beeps at startup that continue until you turn system off • Sometimes system just will not POST • Keep some good memory handy • Remember the short parts list: unplug hard disk drive, optical, pull expansion cards and try restart.