Post on 14-Dec-2015
transcript
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
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.
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!
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:
FSB Effective FSB Designation
100 200 DDR200/PC 1600
133 266 DDR266/PC 2100
166 333 DDR333/PC 2700
200 400 DDR400/PC 3200
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
Do you need memory?
• Probably the quickest and cheapest speed improvement you can make – to a point.
SystemSpeed
Amount of RAM
Win 98 – 128 MB, 512 MaxWin 2000 – 256 MBWin XP – 1 Gig, 2-3G MaxVista and Win 7 – 2 Gig, 4G Max
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
Conventional Memory
Upper Memory
High Memory 64 KB
Extended Memory
(for a while was ExpandedMemory)
0
640 KB
1 MB
2 GB
384 KB
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.