The International Blinking Pattern Interpretation (IBPI) is an internal computer hardware standard. It defines two items:
IBPI was defined by the SFF-8489 specification of the Small Form Factor Special Interest Group in 2011. SGPIO has been adopted across the storage industry, and has in large replaced such as SCSI Enclosure Services (SES) and SAF-TE.
States for drives or slots can be, for example, empty, failed, rebuilding, etc. The state of a drive or slot is determined by the host bus adapter, and is typically transmitted to the backplane through SGPIO-signals on a cable.
In a typical system architecture, the host bus adapter (HBA) connects to a backplane through a 4× iPass cable. The SGPIO-signals run inside this cable. The backplane may then optionally connect to the baseboard management controller of a motherboard through an I²C or SMBus.
The SGPIO bus consists of 4 electrical signals. It originates (or is driven by) an initiator, typically a host bus adapter or SAS Expander, and arrives at a target, typically a backplane.
SGPIO is typically used in conjunction with SAS or SATA cables, where each physical port is attached to a single disk drive.
The figure below shows the relationship between SClock, SLoad and the two data bits; SDataOut and SDataIn. An SGPIO frame is started after SLoad has been low for at least 5 SClock cycles.
Following the start of a new SGPIO frame, 3 bits per drive are driven from the initiator on to the SDataOut line. Simultaneously, the target drives 3 bits on the SDataIn line. The initiator and target both use the rising edge clock to transmit changes in the SLoad, SDataOut, and SDataIn.