Memory Training, Testing, and Margining
What happens during DDR memory training/initialization, and how does it differ from what is needed for manufacturing testing or system marginality validation? On Intel platforms, the BIOS Memory Reference Code (MRC) is used to initialize the memory controller and optimize read/write timing and voltage for optimal performance. The MRC is very complex: its job is […]
DDR Testing using Spoofed Memory Reference Code
Design engineers often must debug circuit boards that will not boot the bare metal firmware or have no working BIOS or boot loader at all. And, most memory controller firmware code (often called Memory Reference Code, or MRC) is dedicated to the sole task of initializing the DRAM, and does not provide any meaningful diagnostics […]