Friday, March 13, 2020

Memory Training, Testing and Margining

RAM

Quick ref : https://www.makeuseof.com/tag/quick-dirty-guide-ram-need-know/

RAM usually means SDRAM (Synchronous Dynamic RAM)

Soldered RAM on thin computers sacrifices upgradability and repairability

Form Factors of RAM :

  1. DIMM ( Dual In-line Memory Module)
  2. SO-DIMM (Small Outline DIMM) 

What does DDR Mean ?

RAM operates using DDR (Double Data Rate). DDR RAM means 2 transfers happen per clock cycle. Newer types of RAM are updated versions of the same technology, hence why RAM module carry the label of DDR, DDR2, DDR3 and so on.
All RAM generations are exactly the same physical size and shape, they still aren't compatible.  


DDR2

oldest kind of RAM. has 240pins(200 for SO-DIMM). Obsolete

DDR3

DDR3 RAM covers a huge range of CPU generations, stretching from Intel's LGA1366 socket through to LGA1151, as well as AMD's AM3/AM3+ and FM1/2/2+.
Has same no. of pins as DDR2. Runs on lower voltage and higher timings so they aren't compatible with DDR2. DDR3 SO-DIMM have 204pins.

DDR4

high price for long time. As price decreased, with latest AMD, and intel CPU generations it became popular. Which means, with upgraded CPU, you need a new MB and new RAM too.
DDR4 drops voltage even further, from 1.5V to 1.2V, while increasing the number of pins to 288.

DDR5

to hit the market yet.
288-pin design, RAM voltage drop to 1.1V.  DDR5 performance is expected to double the fastes standard of the previous DDR4 generation.
SK Hynix, has DDR5-6400 RAM - fastest possible module allowed under DDR5.

RAM Jargon: Speed, Latency, Timing and More

Clock Speed, Transfers and Bandwidth

ex DDR-1600, PC3-12800 ( Both tells generation and its transfer speed)
DDR2 ~ PC2, DDR3 ~ PC3, DDR4 ~ PC4
1600 → Megatransfers per sec (MT/s)
12800 → represents theoretical bandwidth in megabytes per sec. Ex PC3-12800 operates at 12,800 MB/s.
It is possible to overclock RAM, just like can be done to CPU or Graphics card. Overclocking increases RAM's bandwidth.
Q: Can we mix RAM modules with different clock speeds ?
A: Yes, but they'll all run at the clock speed of the slowest module.  In theory, you can mix RAM brands, but it isn't advisable. – may get into blue screen of death or random crashes when mixing either speed or brands :- D

Timing and Latency

RAM timing is a measurement of the performance of the RAM module in nanoseconds. The lower the numbers, the quicker RAM reacts to requests.
Represented as 9-10-9-27. First no. is CAS latency - which refers to the no, of clock cycles it takes for data requested by the memory controller to become available to a data pin.  Latency → DDR2 < DDR3 < DDR4 and still the speed is in order of DDR2 > DDR3 > DDR4.
For most people, capacity trumps speed and latency everytime. 16GB of DDR4-1600 RAM is better than 8GB DDR4-2400 RAM. In most cases, timing and latency are last point of consideration.

ECC

Error Correcting Code(ECC) RAM is a special kind of memory module that can detect and correct data corruption. ECC RAM is used in servers with mission-critical data. Consumer Motherboards and processors don't usually support ECC-compatible RAM.