Выбрать главу
ВНИМАНИЕ

Поскольку указатель данных может быть модифицирован ЦУ до завершения ввода-вывода, определение реального количества переданных данных с помощью указателя дает ненадежные результаты.

5.1.4. Конфигурирование устройств

Все устройства на шине должны быть согласованно сконфигурированы. Для них требуется программно или с помощью джамперов установить перечисленные ниже основные параметры.

♦ Идентификатор устройства (SCSI ID) — адрес 0–7 (для Wide SCSI 0-15), уникальный для каждого устройства на шине. Обычно хост-адаптеру, который должен иметь высший приоритет, назначается адрес 7 (15 для Wide SCSI, если все устройства 16-битные). Позиционный код, используемый для адресации, обеспечивает совместимость адресации 8- и 16-битных устройств на одной шине. Ряд версий BIOS считает загрузочным только устройство с SCSI ID=0.

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

♦ Включение терминаторов (Termination). В современных устройствах применяются активные терминаторы, которые могут включаться одним джампером или программно-управляемым сигналом. Терминаторы должны включаться только на крайних устройствах в цепочке. Современные хост-адаптеры позволяют автоматически включать свой терминатор, если они являются крайними, и отключать, если используются внутренний и внешний разъем канала. Это позволяет подключать и отключать внешние устройства, не заботясь о переключении терминаторов. Ранее приходилось открывать корпус и переставлять джампер, а пассивные терминаторы устанавливать в специальные гнезда (и извлекать их оттуда). При отсутствии внутренних терминаторов пользователь был вынужден применять внешние, устанавливаемые на кабель.

ВНИМАНИЕ

Правильная установка терминаторов крайне существенна — отсутствие/избыток терминаторов может привести к неустойчивости или неработоспособности интерфейса.

♦ Питание терминаторов (Terminator power) должно быть включено (джампером или программно) хотя бы на одном устройстве.

♦ Согласование скорости синхронного обмена (SCSI synchronous negotiation). Режим синхронного обмена, обеспечивающий высокую производительность, включается по взаимному согласию устройств. Если хотя бы одно устройство на шине его не поддерживает, рекомендуют запретить согласование на хост-адаптере. Если обмен будет инициирован целевым устройством, поддерживающим синхронный режим, «нормальный» хост-адаптер поддержит этот режим. Целевому устройству можно запретить запрос синхронного режима специальным джампером, который может называться «Enable TI-SDTR» (Target Initiated Synchronous Data Transfer Request Negotiation).

♦ Разрешение отключения (Enable disconnection). Позволяет устройствам отключаться от шины при неготовности данных во время длительных операций с носителем, что весьма эффективно в многозадачном режиме при нескольких ПУ на шине. В случае одного устройства отключение приводит только к дополнительным затратам времени на повторное соединение.

♦ Согласование ширины шины данных тоже выполняется по протоколу шины, исходя из возможностей обоих участников обмена. Целевому устройству можно запретить запрос 16-битного режима специальным джампером, который может называться «Enable TI-WDTR» (Target Initiated Wide Data Transfer Request Negotiation).

♦ Запрет 16-разрядного режима (Disable wide). Позволяет подключить «широкое» устройство к «узкой» шине.

Принудительное переключение в линейный режим (Force SE). Позволяет перевести устройство LVD в режим SE, независимо от состояния линии DIFFSENS.

♦ Запрет синхронизации по обоим фронтам (Disable U160). Позволяет принудительно перевести устройство Ultra3 SCSI в режим Ultra2.

♦ Старт по команде (Start on command), или запрет автоматического запуска шпиндельного двигателя (Disable Auto Spin up). При установке этого параметра запуск двигателя устройства выполняется только по команде от хост-адаптера, что позволяет снизить пик нагрузки блока питания в момент включения. Хост будет запускать устройства последовательно.

♦ Задержанный старт (Delayed Start) в сочетании с джамперами выбора задержки позволяет автоматически запускать двигатель через указанный интервал после подачи питания (разным устройствам задают различные значения задержки).

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

Подключение устройств к шине 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-контактного).