Подключение устройств к шине

Подключение устройств к шине SCSI относительно несложно, но имеются нюансы при смешении разнотипных устройств на одной шине. Пропускная способность шины SCSI, «освоенная» компьютером, определяется, естественно, возможностями хост-контроллера. Шина SCSI обеспечивает хорошую совместимость устройств с параллельными интерфейсами разных поколений, «узких» и «широких», но зачастую одно старое устройство способно свести на нет мощь новых устройств, подключенных к шине. По типу интерфейса совместимыми являются только SE и LVD.

ВНИМАНИЕ

Смешивать устройства LVD с HVD на одной шине нельзя!

Устройства LVD можно использовать на одной шине с SE, но при этом все устройства перейдут в режим SE, и шина не сможет работать в режиме Ultra2, свойственном устройствам LVD. Интерфейс LVD, являясь дифференциальным, требует, чтобы каждый обратный провод (сигнал +) приходил на вход своего приемника; в версии SE все обратные провода на устройстве соединялись вместе и подключались к шине GND. Если на шине с устройствами LVD имеется хотя бы одно устройство SE, то линия DIFFSENS окажется заземленной и все устройства LVD перейдут в режим SE. При конфигурировании устройство LVD может быть принудительно переведено в режим SE установкой джампера «Force SE».

Если на шине присутствуют устройства Ultra160 и Ultra2 (или еще ниже), то шина будет работать в самом низком из этих режимов. Принудительно запретить режим Ultra160 (понизить до Ultra2) можно джампером «Disable U160».

Подключение «узкого» устройства к «узкой» шине — самая простая задача, поскольку здесь обычно встречаются лишь два типа разъемов (не считая Mac SCSI) — внешний (типа Centronics) и внутренний. Устройства должны быть сконфигурированы (см. выше), каждому должен быть назначен уникальный (на шине) идентификатор SCSI ID, формально — любой в диапазоне 0–7. Длина шины не должна превышать допустимого предела, на обоих концах шины (и только там!) должны быть установлены и включены терминаторы. На линию TERMPWR должно подаваться питание (чаще от хост-адаптера), что можно проверить, замерив напряжение на соответствующих контактах разъема.

Подключение «широкого» устройства к «широкой» шине может оказаться несколько сложнее, поскольку здесь больше разнообразия в разъемах. Из-за этого может потребоваться применение переходных адаптеров от одного типа разъема к другому. Также могут возникнуть сложности с подключением терминаторов, особенно для устройств LVD, среди которых внутренние терминаторы встречаются редко, а внешние могут занимать отдельный разъем на кабеле. Идентификаторы устройств можно задавать в диапазоне 0-15.

Подключение «узкого» устройства к «широкой» шине требует применения переходного адаптера с 68- на 50-контактный разъем. Старший байт в этом адаптере не должен терминироваться, если подключаемое устройство не крайнее на шине. Если же устройство крайнее, то в адаптере старший байт должен терминироваться и на самом устройстве должен быть установлен терминатор. Выбор положения устройства (крайнее или промежуточное) может определяться имеющимся адаптером. Идентификаторы устройств должны устанавливаться в диапазоне 0–7 для всех устройств, поскольку невидимость идентификаторов 8-15 узким устройством не позволит процедуре арбитража работать нормально (см. выше). Поскольку все «узкие» устройства — это SE-устройства, линия DIFFSENS окажется заземленной и все устройства LVD перейдут в режим SE. Существуют, однако, и адаптеры-мосты, при подключении SE-устройства позволяющие остальным находиться в режиме LVD. Определить режим можно, замерив напряжение на 16-м контакте 68-контактного разъема (46-м 80-контактного).

Подключение «широкого» устройства к «узкой» шине также потребует применения специального адаптера, и на «широком» устройстве следует установить джампер «Disable Wide». Дополнительно может потребоваться терминация старшего байта и относящихся к нему управляющих линий, чтобы обеспечить на них надежное пассивное состояние («висящие» входы восприимчивы к помехам). Некоторые версии встроенного микропрограммного обеспечения позволяют работать устройствам и без дополнительных терминаторов. Идентификаторы всех устройств должны быть в диапазоне 0–7 (по тем же соображениям, что и в предыдущем случае).

Рассмотрим различные конфигурации подключения устройств к контроллеру SCSI (рис. 5.7). Контроллер может быть расположен на карте расширения, устанавливаемой в слот PCI или ISA, или же встроен в системную плату. Устройства, подключаемые к нему, могут быть как внутренними (разного рода дисковые и ленточные устройства), так и внешними (те же, а также сканеры и другие периферийные устройства). Терминаторы расставляются исходя из конкретных условий.

Рис. 5.7 . Подключение устройств к карте контроллера SCSI: а, в, г — правильно; б — неправильно

Правила подключения достаточно просты:

♦ концы кабельного шлейфа не должны висеть в воздухе (как на рис. 5.7, б );

♦ на устройствах, подключенных к концам шлейфа, должны быть включены внутренние терминаторы (на рисунке обозначено как TRM=ON) или же установлен внешний (рис. 5.7, г );

♦ на промежуточных устройствах терминаторы должны быть отключены (TRM=OFF).

Если контроллер SCSI смонтирован на дополнительной интерфейсной карте, то разъем, к которому подключаются внешние устройства, расположен достаточно близко к внутреннему, так что длинной линии между ними нет. В этом случае терминация внешнего разъема хлопот не доставляет: когда используется только внутреннее (рис. 5.7, а ) или только внешнее (рис. 5.7, г ) подключение, терминатор на контроллере включают. Когда используется и внешнее, и внутреннее подключение (рис. 5.7, в ), терминатор на контроллере отключают.

Если используется внутреннее подключение, а внешние устройства подключаются не все время, то приходится переключать терминатор контроллера в соответствии с текущей конфигурацией. В старых контроллерах приходилось вскрывать системный блок и переставлять джамперы. В новых контроллерах вскрытия не требуется — терминаторы включаются/отключаются программно (утилитой SCSI Setup) или даже автоматически. Если по какой-либо причине переключать терминатор контроллера не хочется, можно его отключить и пользоваться внешним, устанавливая его на внешний разъем (снаружи корпуса компьютера), когда внешние устройства не подключены.

Когда контроллер SCSI установлен на системной плате, он имеет только один разъем, к которому подключается кабель-шлейф. Если требуется только внутреннее или только внешнее подключение (рис. 5.8, а и б ), то терминатор на контроллере включают . Если используется и внутреннее, и внешнее подключение (рис. 5.8, в ), терминатор на контроллере отключают . Если используется универсальный кабель-шлейф с внутренними и внешним разъемами (как на рис. 5.8, в ), но внешних устройств нет, то терминатор на контроллере должен быть отключен, а на внешнем разъеме должен быть установлен внешний терминатор .

Рис. 5.8 . Подключение устройств к интегрированному контроллеру SCSI

Кабели и терминаторы могут входить в комплект адаптеров SCSI или системных плат со встроенным контроллером SCSI, а могут приобретаться отдельно. То, что входит в стандартный комплект поставки, не всегда подходит для конкретного применения. Так, например, в комплекте с системной платой CT-6BTS, имеющей контроллер Ultra-Wide SCSI, поставляется универсальный «широкий» (wide) шлейф (как показанный на рис. 5.8, в , но с меньшим количеством внутренних разъемов) и «узкий» внутренний. Для подключения только внутренних дисководов Wide SCSI такого комплекта недостаточно: нужен внешний терминатор! Можно, конечно, отрезать часть шлейфа, идущую от разъема для подключения контроллера к внешнему разъему, но жалко!

Контроллеры Wide SCSI обычно имеют и разъемы для подключения обычных («узких», или narrow) устройств. На той же системной плате CT-6BTS кроме 68-контактного разъема Wide SCSI имеется и 50-контактный — для обычных устройств. Узкий (8-разрядный) интерфейс можно рассматривать как подмножество широкого (16-разрядного), у которого используется только младшая половина шины данных. В простых одноканальных контроллерах (как на этой плате) контакты узкого разъема запараллелены с частью контактов широкого. При этом можно использовать смесь широких и узких устройств, для чего терминаторы на контроллере разделены на две половины: терминаторы младшего байта (TrmL) и старшего байта (TrmH) могут управляться независимо. На рис. 5.9, а и б , приведены корректные способы смешанного подключения (устройства с терминаторами на концах шлейфов подразумеваются). На рис. 5.9, в приведена некорректная схема — здесь в младшем байте и в сигналах управления окажутся три терминатора (перегрузка передатчиков) или «висячий» конец (отражения!). Заметим, что штатными кабелями из комплекта поставки платы (именно они и изображены на рис. 5.9, в ) корректно смешанное подключение выполнить нельзя.

Рис. 5.9 . Подключение узких и широких устройств SCSI: а, б — правильно; в — неправильно

Если следовать вышеприведенным правилам (и не превышать разрешенную длину и число подключений), то при исправном оборудовании шина SCSI будет работать надежно, как ей и полагается. Если правила нарушать, то возможны варианты. Есть определенные модели контроллеров и устройств, для которых мелкие «шалости» с терминаторами «сойдут с рук». Так, например, может быть прощен (или почти прощен) висящий конец без терминатора (если он не очень длинный). Устройства могут работать (ОС будет загружаться, диски читаться), но, возможно, с не всегда заметными сбоями. Правда, если используется ОС Windows NT, то заглянув в журнал регистрации событий (Event Log), можно увидеть «букет» красных фонариков, связанных с устройствами SCSI. «Пышность» этого букета будет зависеть от тяжести нарушений и «норова» используемых устройств. Есть модели, придерживающиеся «строгих правил», и при нарушении терминации устройства работать вообще не будут. Как поступать в каждом конкретном случае, наверное, дело инсталлятора — на «лишний» терминатор или кабель другой конфигурации может просто не хватить денег. Но теория, увы, такова.

Интерфейс Fibre Channel

Кроме параллельного интерфейса, SCSI-3 может использовать и последовательный интерфейс Fibre (Fiber) Channel , или FCAL (Fibre Channel Arbitrated Loop — кольцо волоконного канала с арбитражем), который занимает промежуточное положение между интерфейсами периферийных устройств (SCSI-3) и технологиями локальных сетей. Этот интерфейс может иметь как электрическую (коаксиальный кабель), так и оптоволоконную реализацию. В обоих случаях частота 1 ГГц обеспечивает скорость передачи данных 100 Мбайт/с. Медный кабель допускает длину шины до 30 м, оптический — до 10 км. Здесь используется иной протокольный и физический уровни интерфейса и имеется возможность подключения к шине до 126 устройств (а не 8 или 16, как для параллельного интерфейса). Для двухточечного соединения возможен полнодуплексный режим (200 Мбайт/с), что невозможно в обычных параллельных шинах. Недавно фирма Adaptec выпустила адаптер со скоростью 2 Гбит/с (и оптика, и медь), обратно совместимый с обычным (1 Гбит/с). В полнодуплексном режиме достигается суммарная пропускная способность 400 Мбайт/с. В кольцо может объединяться до 126 узлов, длина кольца может достигать 10 км. По организации кольцо напоминает FDDI — все узлы собираются в замкнутую цепочку и транслируют приходящие кадры дальше по кольцу. Синхронизация передатчика каждого узла автономна, а для компенсации расхождения частот синхронизации используются межкадровые слова-заполнители, часть из которых может периодически отбрасываться или вводиться дополнительно при трансляции. Для обеспечения надежной передачи применяется кодирование 8В/10B, для скорости 100 Мбайт/с с учетом накладных расходов на обрамление кадров требуется битовая скорость в линии 1,0625 Гбит/с. Архитектурная модель FCAL состоит из пяти уровней FC-0…FC-4, нижний (FC-0) определяет среду передачи (оптоволокно или твинаксиальный кабель) и физический интерфейс. Верхний уровень (FC-4) определяет протоколы отображения, относящиеся как к интерфейсам периферийных устройств (SCSI и некоторые другие), так и к сетям (802.2 и IP). Информация по кольцу передается кадрами размером 36-2148 байт. Обмен данными между устройствами возможен как с установлением соединений, так и без них. Одновременно может быть открыто множество соединений, причем относящихся к разным протоколам (например, SCSI и IP). Аппаратура Fibre Channel включает интерфейсные адаптеры, концентраторы, коммутаторы и маршрутизаторы. Интерфейсные адаптеры представляют собой карты для компьютеров (для высокопроизводительных шин, например PCI). С интерфейсом FCAL выпускаются устройства хранения данных (дисковые и ленточные накопители, массивы накопителей). Концентраторы для FCAL в принципе необязательны, но они позволяют организовать кольцо на звездообразной топологии и обеспечить обход отказавших (отключенных) узлов — без них кольцо становится уязвимым при отказе линии или устройства. Коммутаторы (как, например, в технологии Ethernet) позволяют для группы подключенных устройств организовывать соединения «каждый с каждым», что эффективно, например, в случае разделения (совместного использования) несколькими серверами нескольких устройств хранения. Маршрутизаторы или мосты позволяют соединять FCAL с другими средами передачи информации (например, с классическим интерфейсом SCSI или со средами локальных сетей). В настоящее время FCAL применяется для подключения устройств внешней памяти к серверам, когда требуется высокая производительность и значительное удаление устройств друг от друга. В принципе, FCAL позволяет организовывать разделение ресурсов, обеспечивая и резервирование линий связи, но здесь пока имеются сложности на уровне операционных систем.

Хост-адаптер SCSI

Хост-адаптер является важнейшим узлом интерфейса, определяющим производительность системы SCSI. В его задачу входит передача данных между хостом (программой, исполняемой центральным процессором) и другими устройствами, подключенными к шине, по протоколам вышеописанных физических интерфейсов. Структуры передаваемых блоков данных и команды устройств стандартизованы, их описание приводится в литературе [4, 9]. Однако архитектуры и программные модели адаптеров не стандартизованы (в отличие, например, от адаптеров ATА). Существует широкий спектр адаптеров, к простейшим можно подключать только устройства, некритичные к производительности. Такие адаптеры могут входить, например, в комплект поставки сканеров, а подключение к ним диска может оказаться невозможным. Высокопроизводительные адаптеры имеют собственный специализированный процессор, большой объем буферной памяти и используют высокоэффективные режимы прямого управления шиной для доступа к памяти компьютера. Адаптеры SCSI существуют для всех шин расширения (ISA, EISA, MCA, PCI, VLB, PCMCIA, CardBus), шин USB и FireWire и для LPT-порта. Ряд системных плат имеют встроенный SCSI-адаптер, подключенный к одной из локальных шин. При выборе интерфейса, к которому подключается хост-адаптер, учитывайте производительность — интерфейс не должен стать узким местом при обмене с высокопроизводительными устройствами SCSI. Наибольшую эффективность имеют хост-адаптеры для шины PCI. Конечно, за мощный адаптер для сервера приходится платить — его цена может превышать цену рядового настольного компьютера. Еще дороже хост-адаптеры с встроенными контроллерами RAID-массивов, которые содержат мощный RISC-процессор и большой объем локальной памяти.

Конфигурирование хост-адаптеров с точки зрения шины SCSI не отличается от конфигурирования других устройств. Для современных адаптеров вместо джамперов используется программное конфигурирование. Утилита конфигурирования обычно входит в расширение BIOS, установленное на плате адаптера, и приглашение к ее вызову выводится на экран во время теста POST.

Как и всякая карта расширения, хост-адаптер должен быть сконфигурирован с точки зрения шины расширения, к которой он подключается. Системные ресурсы для шинного SCSI-адаптера включают:

♦ область памяти для расширения ROM BIOS, необходимого для поддержки конфигурирования устройств и дисковых функций (если в системе установлено несколько однотипных хост-адаптеров, для них используется ROM BIOS с одного адаптера, а разнотипные хост-адаптеры не всегда могут работать вместе);

♦ область разделяемой буферной памяти;

♦ область портов ввода-вывода (I/O port);

♦ IRQ — запрос прерывания;

♦ DMA — канал прямого доступ к памяти (для шин ISA/EISA), часто используемый для захвата управления шиной (bus mastering).

Всем устройствам SCSI, в том числе и хост-адаптеру, требуются специальные драйверы. Базовый драйвер дисковых устройств входит в BIOS хост-адаптера; он обычно эмулирует трехмерную адресацию дискового сервиса Int 13h. Расширения, например ASPI (Advanced SCSI Programming Interface), загружаются отдельно. От драйверов сильно зависит производительность устройств SCSI. «Умное» ПО способно эффективно загружать работой устройства, а иногда и «срезать углы» — выполнять копирование данных между устройствами без выхода на системную шину компьютера. Наиболее предпочтительны драйверы, работающие в режиме прямого управления шиной (bus mastering); их применение позволяет реализовать все преимущества SCSI в многозадачных системах.

Наши рекомендации