Developer Manual/RAM init
The wiki is being retired!
Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to https://doc.coreboot.org/. Contributions welcome!
One of the most important tasks of coreboot is to initialize your system RAM.
SDRAM
There are a number of steps you have to perform to properly initialize SDRAM. This depends on the chipset, as well as the DIMMs which are inserted into the mainboard (and their properties, such as CAS latencies, and so on).
Sample northbridge datasheets:
- http://support.intel.com/design/chipsets/810/
- http://support.intel.com/design/chipsets/datashts/290656.htm
- http://download.intel.com/design/chipsets/datashts/29065602.pdf
Sample SDRAM datasheets:
- http://www.micron.com/products/partdetail?part=MT48LC16M16A2BG-75
- http://download.micron.com/pdf/datasheets/dram/sdram/256MSDRAM.pdf
DDR
DDR2
DDR3
Resources
SDRAM:
- Intel SPD Standard
- Micron 512 MB SDRAM Datasheet (PDF) -- contains some helpful explanations
DDR SDRAM:
- JEDEC DDR SPD Standard (PDF)
- Understanding DDR Serial Presence Detect (SPD) Table
- Micron DDR400 Datasheet
DDR2 SDRAM
DDR3 SDRAM
Note: Micron lists SPD values for all the memory they produce. This really helps when trying to trouble shoot memory and SPD values. Micron SPD Lookup