A SCSI controller, also called a host bus adapter (HBA), is a card or chip that allows a Small Computer System Interface (SCSI) storage device to communicate with the operating system across a SCSI bus.
The actual implementation of a SCSI controller varies by manufacturer. SCSI controllers can reside in a hard drive's PCI slot or can be a chip built into the motherboard. When an end user sends a request, the operating system sends the SCSI command to the controller, which then sends it to the storage device.
Like all components on a SCSI bus, a SCSI controller is given a unique identifier.
See also: iSCSI, SCSI Express (SCSIe), Advanced SCSI Programming Interface (ASPI )