Serial Presence Detect
From Wikipedia, the free encyclopedia
Serial Presence Detect (SPD) refers to a standardized way to automatically access information about a computer memory module. It is the serial version of Parallel Presence Detect (PPD).
Contents |
In order for a memory module to support SPD, the JEDEC standards require certain parameters to be placed in the lower 128 bytes of an EEPROM located on the memory module. These bytes contain timing parameters, manufacturer, serial number and other useful information about the module. This data allows a device utilizing the memory to automatically determine key parameters of the module. For example, the SPD data on an SDRAM module might provide information about the CAS Latency, allowing this to be correctly set without user intervention.
SPD uses varying forms of the I²C protocol to communicate with the EEPROM. This reduces the number of additional pins on the module to just two -- a clock signal and a data signal. (There are often three additional pins that may be used to to distinguish multiple modules from each other.) I²C is commonly used on motherboards for instrumentation tasks such as reading power supply voltages, CPU temperatures, and fan speeds.
EPP is an enhancement of SPD and provides additional performance-specific information needed for overclocking applications. The EPP information is stored in the same EEPROM, but in bytes 99-127 which are unused by standard SPD.
Programs that read SPD information, with full source code available, includes:
- On GNU/Linux systems, the user space program decode-dimms.pl provided with lm-sensors decodes and prints information on any memory with SPD information in the computer.
- LinuxBIOS reads and uses SPD information to initialize all memory controllers in a computer with timing, size and other properties.