Serial presence detect (SPD) is a protocol used by computers to automatically determine the proper settings to use for the computer’s memory system. During the power-on self-test (POST) the computer’s basic input/output system (BIOS) connects with the SPD. They exchange vital information relating to the memory, and the BIOS automatically configures the system. For many years it was difficult to modify the information sent during SPD, but many modern BIOS systems have internal features that allow users to change settings and tweak memory performance. Serial presence detect is an improvement over the earlier form of auto configuration, parallel presence detect.
When a computer POSTs, it reads the profiles of all of the hardware running on the system. It will determine the machine’s basic capabilities and specifications in order to set up a stable profile for the hardware. As the boot process continues, this profile is used by the operating system and then by applications to determine how they will run.
The settings on a modern memory module can be quite complex. There are a number of different parameters that must operate together in order to keep the hardware stable. Manufacturers determine the proper settings for these factors and put the profile into the serial presence detect chip.
The serial presence detect module on a piece of computer memory is generally located on one end inside a tiny chip. This computer chip is separate from the rest of the chips on the module. In most cases, this chip will contain all of the relevant hardware information for the memory, but it will usually have room left over to store additional information if needed.
This additional space may be empty or it may have non-essential information available for the user. One of the more common pieces of information relates to improving the performance of the memory, a process called overclocking. When the memory’s initial profile is put together, it is very conservative. The profile is set far below the hardware’s actual capacity in order to ensure its stability.
In the past, it was very difficult to change the information sent by the serial presence detect system. On modern computers, overclocking has become so common that methods are built directly into the BIOS. The secondary profiles contained in a serial presence detect chip will often have completely different settings, allowing overclockers to simply choose a new profile if they want.
In addition to modifying the information in the BIOS, it is possible to alter the default information sent by the SPD system. Depending on the computer’s hardware type and the manufacturer of the memory, it is possible to download third-party programs that will allow a user to change his SPD information. This will change the default settings sent to the BIOS during POSTing, resulting in major changes in performance.