SCSI
Первоначальный вариант интерфейса SCSI (Small Computer System Interface) был
предложен в конце 70-х годов Shugart Associates под названием SASI (Shugart Associates System Interface) взамен разработанной компанией IBM системной шины IPI (интеллектуальный периферийный интерфейс). После неудачи в конкурентной борьбе с фирмой IBM этот интерфейс был предложен комитету ANSI X3T9.2
как интерфейс нижнего уровня под названием SCSI. В 1984 году этот комитет закончил разработку спецификации SCSI-1 и в 1986 году она была опубликована в окончательном виде. Этот интерфейс обеспечивал подключение широкого класса периферийных устройств, таких как винчестеры, принтеры, сканеры, стриммеры, приводы CD-ROM и др. SCSI является интерфейсом системного, а не приборного уровня. В отличие от ST506/412 и других приборных интерфейсов с последовательной передачей информации, SCSI передает биты данных параллельно, что обеспечивает существенное повышение скорости обмена данными между устройством и хост-адаптером.
Интерфейс SCSI используется не только в IBM-совместимых компьютерах, но и семействах Macintosh, SPARC, VAX и др. Одна из причин такого широкого распространения интерфейса SCSI заключается в том, что он не накладывает никаких ограничений на связь между контроллером и периферийным устройством. Шину SCSI можно использовать для связи компьютера с несколькими периферийными устройствами (как внешними, так и внутренними). Более того, допускается совместное использование одного периферийного устройства несколькими компьютерами, подключенными к общей шине SCSI (правда это значительно сложнее сделать, чем написать, но об этом разговор особый). Подключаемые к шине SCSI
устройства могут играть роль ведущих (Initiator) или ведомых (Target), при этом одно и то же устройство может быть ведомым в одних случаях и ведущим - в других. Такое разделение функций устройств позволяет организовать передачу данных с одного периферийного устройства на другое (например, резервное копирование данных с винчестера на стриммерную кассету).
Обмен между устройствами по магистрали SCSI происходит в соответствии с протоколом высокого уровня и адресация осуществляется на уровне логических, а не физических (как в ESDI) блоков. Программы для работы со SCSI-устройствами не используют физические характеристики конкретного устройства (число головок, цилиндров и т.п.), а имеют дело с логическими блоками, что дает возможность работы фактически со всеми блочными устройствами.
Для подключения устройств SCSI используется кабель (как правило плоский) с 50-контактными разъемами (Приложение 3). Возможны как синфазная, так и дифференциальная (с помощью "токовой петли") передача данных по кабелю; при синфазной передаче длина кабеля может достигать 6м, при дифференциальной - 25м. Для гарантированной передачи сигналов по магистрали SCSI линию требуется согласовывать с помощью терминаторов (набора резисторов), устанавливаемых по обоим концам шины SCSI.
Спецификация SCSI предусматривает подключение к шине до восьми устройств, однако с учетом того, что каждое устройство может содержать 8 логических блоков, а каждый блок - 256 подблоков, возможности расширения являются фактически неограниченными. Каждое подключаемое к шине SCSI устройство имеет свой идентификатор, устанавливаемый с помощью перемычек или переключателей непосредственно в устройстве. Идентификаторы позволяют адресовать устройства и задают их приоритет (чем больше значение идентификатора, тем выше приоритет устройства).
На протяжении последних лет интерфейс SCSI был существенно расширен - появились спецификации Fast-SCSI и Wide-SCSI, обеспечивающие более высокую скорость обмена данными с устройствами SCSI. В настоящее время интерфейс SCSI
используется в основном в высокопроизводительных системах, предназначенных для коллективного использования (диски файловых серверов, сканеры и т.д.).