Как определить емкость scsi диска. Что такое SCSI жесткий диск

28. 07.2017

Блог Дмитрия Вассиярова.

SCSI — быстрый и необычный интерфейс

Здравствуйте.

Из этой статьи вы узнаете самое необходимое о SCSI что это такое, где и зачем используется, сколько поколений вышло с момента появления и как реализуется на практике.

Прочитайте - вдруг, SCSI пригодится и вам?

Что означает SCSI?

Это набор заглавных букв от фразы Small Computer Systems Interface. На русском языке он звучит как «скази», а расшифровка - системный интерфейс для малых компьютеров.

Данный стандарт создан для объединения компьютерных комплектующих различного назначения на одной шине: винчестеров, дисководов, сканеров, принтеров и пр. Зачем? Чтобы обеспечить им одинаково высокую скорость работы в качестве единого, но в то же время делимого механизма. Вдобавок благодаря SCSI можно использовать один девайс на нескольких компах сразу.

Другие возможности

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

Чаще всего применяются такие команды как запись, чтение, проверка устройств, запрос их характеристик, установка для них новых параметров или возврат предыдущих и т. д.

Также бывает реализация команд поверх проводов и контроллеров других стандартов. Если речь идет о IDE, ATA или SATA, она называется ATAPI - ATA Packet Interface; если сверху протокола USB - Mass Storage device. Таким образом, вы можете, к примеру, подключить выносной жесткий диск через обычный USB и для него будет использоваться имеющийся в операционке драйвер SCSI.

Где востребован SCSI?

На серверах и рабочих станциях высокой производительности. На серверах, относящихся к низкой ценовой категории, и тем более в домашних условиях, этот интерфейс встречается крайне редко; в таких случаях оптимальным вариантом является привычный для нас .

Но естественно никто вам не запрещает ставить такие скази устройства в свой домашний компьютер. Или например в домашний сервер.

Технология на практике

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

Наличие у SCSI адаптера означает то, что с центрального процессора снимается часть нагрузки, следовательно, железо работает быстрее.

Так как данная технология является последовательной, то и девайсы следует подключать соответственно. Причем каждый должен иметь уникальный ID, и все они - одинаковый интерфейс.

История появления

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

Итак, в 1979 году изобретатель 8-дюймовых дискет и производитель магнитных накопителей Алан Шугарт поставил перед собой задачу сделать для своей продукции универсальный интерфейс, который не терял бы своих позиций с учетом развития технологий.

И ему удалось ее решить путем создания стандарта, поддерживающей логическую и практическую (головка, цилиндр, сектор) адресацию. Она основывалась на протоколах 8-битной параллельной отправки информации по пути, включающему в себя несколько линий.

Новшество получило не очень благозвучное для русскоязычного населения название SASI (Shugart Associates Systems Interface), то есть связующий системный интерфейс, именованный в честь отца-основателя.

Через 2 года он поделился своей разработкой с комитетом ANSI (American National Standarts Institute - Национальный Институт Стандартизации США) - то же самое, что и ГОСТ в нашей стране. На базе этого изобретения специалисты ANSI создали SCSI.

Поколения интерфейса

Примечательно, что технология создана почти полстолетия назад, а говорим мы о ней до сих пор. Все потому, что она постоянно преображалась. С момента появления вышло 10 версий. Не буду забивать вам голову подробностями о каждой из них. Расскажу только, что было изначально, и что мы имеем теперь.

SCSI-1

  • Возможно подключение максимум 8 устройств к одной шине, в том числе и контроллера.
  • Предельная скорость составляла 1,5 Мб/с в асинхронной вариации («запрос-подтверждение»), и 5 Мб/с в синхронной - на несколько запросов возвращалось столько же подтверждений.
  • Со стороны электрики было 24 линий, включая дифференциальные и однополярные, хотя чаще подавались сигналы второго типа.
  • Частота шины составляла 5 МГц.
  • Самый длинный кабель - 6 м, а для дифференциальной шины HVD - 25 м.

Ultra-640 SCSI

  • Разрядность шины выросла вдвое, соответственно, можно подсоединять до 16 девайсов одновременно.
  • Ее частота составляет 160 МГц DDR.
  • Скорость тоже не идет ни в какое сравнение с первой модификацией - сейчас она достигает 640 Мб/с.
  • Разъем состоит из 68 контактов.
  • Протяженность кабеля достигает 10 м.

Serial Attached SCSI (SAS)

  • Появилась поддержка подключения устройств SATA.
  • Скорость данного интерфейса выросла уже до 12,0 Гбит/с.
  • Как заявляют разработчики, теперь есть возможно подключить 16384 устройств на одну шину! В предыдущем поколении как описано выше было лишь 16.

Электрика

Есть 3 способа передачи информации относительно электрики:

  • SE (single-ended) - асимметричный вид. Каждый сигнал отправляется по отдельной линии.
  • LVD (low-voltage-differential) - дифференциальный стандарт с низким напряжением. Сигналы «+» и «-» переправляются по разным проводам. Каждому из них отводится одна витая пара. Передаются они под напряжением ±1,8 В.
  • HVD (high-voltage-differential) - аналог предыдущего варианта, но с особыми приёмопередатчиками и увеличенным напряжением.

Нагрузка на интерфейс распределяется при помощи терминаторов, расположенных с обоих концов шины. Согласно электрическим характеристикам они разделяются на:

  • Пассивные - простые резисторы на 132 Ом;
  • Активные - стабилизаторы, производящие необходимый сигнал, а каждая линия питания подсоединяется к ним с сопротивлением в 110 Ом;
  • FPT (Forced Perfect Terminator). Название говорит само за себя - ускоренный улучшенный тип. Он имеет ограничители выбросов, и применяется в высокочастотных интерфейсах.

Чаще всего используется 2-я модель.

Конкурентоспособность SCSI

Стандарт SCSI прошел испытание временем и пользуется популярностью по сей день. Почему?

  • Обладает высокой скоростью;
  • Можно создавать цепь из 15 девайсов;
  • Ими удобно управлять;
  • HDD отличаются повышенной надежностью.

Все же на долю таких накопителей приходится всего около 30 % современного рынка, так как есть у SCSI и недостатки:

  • Дороговизна. Но нужно понимать, что вы платите за качество. Хоть винчестеры SATA обладают большей емкостью при меньшей цене, они не могут похвастаться такой долговечностью.
  • Устаревание. Появился усовершенствованный конкурент - технология SAS (Serial Attached SCSI), которая имеет более компактные провода, не нуждается в терминаторах, позволяет подсоединять больше устройств и обладает лучшей пропускной способностью.

На этом всё.

Жду вас на страницах блога как можно чаще.

Что такое SCSI?

О: Ответу на этот вопрос посвящен раздел [ SCSI Основы ].
Что такое SAS, что лучше SCSI или SAS и чем они отличаются?
О: Ответу на этот вопрос посвящен раздел [ SAS или SCSI ].
Что такое eSATA?
О: eSATA это Интерфейс SATA, предназначенный для подключения внешних устройств SATA. Он предоставляет канал с пропускной способностью 3 Гбит/с, что исключит задержки при нехватке пропускной способности, характерные для современных устройств внешнего хранения данных.

Что такое Unified Serial?
О: Все контроллеры Unified Serial позволяют подключать диски SATA и SAS, используя Интерфейс типа "точка-точка". При этом используется расширенный набор команд SCSI, обеспечивающий мощное управление данными, обработку ошибок и производительность.

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

Можно ли использовать SATA диски с SAS контроллерами?

О: Да, можно, при этом на одном контроллере можно одновременно использовать как SAS, так и SATA диски. Это позволяет уже сейчас начать переход на технологию SAS за умеренные деньги.

Можно ли использовать SAS диски с SATA контроллерами?
О: Нет.

Можно ли подключить SAS диски к контроллеру без использования hotswap корзины?
О: Да, можно. Для этого нужно использовать специальный кабель с разъемом SFF-8482 со стороны дисков. Разъем на другом конце кабеля определяется SAS контроллером.

В чем разница между SCSI-1, SCSI-2, Fast, Wide,Ultra Wide и Ultra2 SCSI?
О: Основное отличие заключается в наборе SCSI команд и ширине шины (соответственно - в скорости).
SCSI-1 5MB/Sec 8 bit SCSI шина
SCSI-2 5MB/Sec 8 bit SCSI шина
SCSI-2 Fast 10MB/Sec 8 bit SCSI шина
SCSI-2 Fast Wide 20MB/Sec 16 bit SCSI шина
SCSI Ultra 20MB/Sec 8 bit SCSI шина
SCSI Ultra Wide 40MB/Sec 16 bit SCSI шина
Ultra2 Wide 80MB/sec 16 bit SCSI шина
Ultra160 160MB/sec 16 bit SCSI шина
Ultra320 320MB/sec 16 bit SCSI шина

Когда нужно использовать Low Voltage Differential (LVD) контроллер?
О: В случае если:
Необходима высокая скорость передачи данных - 80 - 320 МБ/с
В окружающем пространстве очень высок уровень электромагнитных шумов, влияющих на передачу данных. Режим LVD обеспечивает намного большую помехоустойчивость, чем Single Ended (SE) SCSI
Необходимо обеспечить значительное удаление SCSI устройств от компьютера. LVD устройства могут быть удалены от SCSI контроллера на расстояние до 12 метров (это максимально допустимая длина LVD SCSI кабеля.

Что такое SCSI terminator и зачем он нужен?
О: SCSI Terminator это небольшое электронное устройство, которое должно располагаться на обоих концах SCSI шины и их (терминаторов) должно быть именно два на каждую SCSI шину. Чаще всего первым SCSI Terminator-ом служит контроллер SCSI (как правило, эту функцию можно "выключить" в BIOS контроллера, а по умолчанию она включена), а вторым - терминатор подключенный к последнему (от SCSI контроллера) разъему SCSI кабеля.

Некоторые SCSI устройства (устаревшие диски, дисководы, стримеры) имеют встроенный терминатор, который можно включить соответствующей перемычкой на устройстве. В этом случае, надо следить за тем, чтобы устройство с включенным терминатором располагалось в самом конце SCSI шины.

А у меня и без SCSI terminator-а все работает, может сойдет и так?
О: До поры до времени может и сойдет, особенно если у вас всего один диск и он используется не слишком интенсивно. Но при увеличении количества устройств на SCSI шине, или при увеличении нагрузки на нее, вы, в конце концов, рискуете потерять данные, так что, не стоит на этом экономить.

Что такое SCSI ID и зачем он нужен?
О: SCSI ID это уникальный (в пределах одной SCSI шины) идентификатор (номер) SCSI устройства. Он нужен для обеспечения адресации к устройствам на SCSI шине.

Назначается SCSI ID либо автоматически (например, если используются hotswap корзины для дисков, поддерживающие такую функцию), либо путем ручной установки соответствующих перемычек на SCSI устройствах. SCSI ID никак не связан с физическим порядком расположения устройств на SCSI шине (например, SCSI контроллер, как правило, имеет значение SCSI ID по умолчанию равным 7-ми, хотя чаще всего, но не всегда, располагается в начале SCSI шины), важно только чтобы на одной SCSI шине не было устройств с одинаковыми SCSI ID.

Значения SCSI ID могут быть:
от 0 до 15 (всего 16) для Wide (W) и UltraWide (UW, U2W, U160, U320) SCSI шины;
от 0 до 7 (всего 8) для Narrow (U, U2) SCSI шины;

Что будет если подключить к одному и тому же SCSI каналу два устройства с одинаковыми SCSI ID?
О: Ничего хорошего. В лучшем случае SCSI контроллер распознает одно из таких устройств, но правильно работать с ним все равно не сможет, в худшем - не "увидит" ни одного из этих устройств. Ни контроллер, ни диски повреждены не будут, но риск испортить данные на SCSI дисках остается.

Следует учитывать, что подавляющее большинство контроллеров никак не сообщает о возникновении такой ошибки, так что, при подключении новых устройств к SCSI шине, надо обращать внимание на соблюдение уникальности SCSI ID.

Обратите внимание на то, что сам SCSI контроллер так же имеет SCSI ID (как правило, он равен 7-ми, и может быть изменен в BIOS-е контроллера), так что не стоит назначать дискам такой же SCSI ID.

Что такое SAF-TE?
О: SAF-TE - SCSI Accessed Fault-Tolerant Enclosure (Доступный через SCSI шину Отказоустойчивый Корпус) - "открытые" технические требования, разработанные для обеспечения всестороннего и стандартизированного метода контроля и вывода информации о состоянии дисководов, источников питания и систем охлаждения, используемых в серверах высокой надежности и подсистемах хранения данных. Технические требования независимы от аппаратного обеспечения ввода - вывода, операционных систем и платформы сервера, потому что сам корпус представляется как просто еще одно устройство на SCSI шине. SAF-TE технические требования были приняты многими ведущими изготовителями серверов, устройств хранения данных и RAID контроллеров. Изделия, удовлетворяющие спецификации SAF-TE уменьшают стоимость затрат на контроль состояния корпусов, упрощают работу администратора сети, выдают аварийные уведомление и информацию о состоянии оборудования.

Интерфейс SCSI

В начале 1970-х годов для мини-ЭВМ (по тем временам это действительно была мини-ЭВМ) был разработан интерфейс SCSI (читается "скази"), название которого расшифровывается как Small Computer System Interface. Опять же, в названии видна его "портативность". Первоначальный вариант предполагал скорость обмена 5 Mb/s, а устройства подключались с помощью 50-проводного кабеля. В последствии в SCSI вносились различные дполнения и усовершенствования, повышающие скорость обмена - сегодняшние SCSI-контроллеры поддерживают скорости до 160 Mb/s, то есть больше, чем стандартная шина PCI. А самый первый стандарт SCSI, понятне дело, уже устарел и сейчас о нем практически никто не помнит. Вариантов SCSI довольно много, и все они имеют различные и запутанные названия (ситуация практически такая же, как и с IDE), поэтому мы не будем расматривать каждый отдельно, а сведем основные положения в таблицу.

Пропускную способность легко подсчитать: для этого нужно просто взять численное значение частоты, а в случае Wide умножить его на два. Например, контроллер UltraSCSI (часто говорят Ultra SCSI-2) имеет скорость 20 Mb/s. Данные таблицы уже в некоторой степени устарели, так как, согласно ней, максимум составляет 80 Mb/s (Ultra2 Wide SCSI, или просто UltraWide SCSI, так как сейчас не выпускаются контроллеры Wide SCSI не Ultra2, и Ultra по умолчанию подразумевает Ultra2), а уже широкое распространение получила скорость 160 Mb/s (такой стандарт называется Ultra160 SCSI). Эти стандарты доступны только с интерфейсом LVD (Low Voltage Differential ), обеспечиващим повышенную помехозащищенность и увеличенную допустимую длину каеля SCSI.

Вот типичные разъемы, которые можно встретить на SCSI-контроллерах:

Внутренние

Low-Density 50-pin
Подключение внутренних медленных устройств - старых HDD, почти всех CD/DVD-ROM, CD-R, MODD, ZIP и т. д. (как IDE, только на 50 контактов)

High-Density 68-pin
Подключение внутренних wide-устройств, в основном HDD
Внешние

DB-25
Подключение внешних медленных устройств, в основном сканеров, IOmega Zip Plus. Наиболее распространен на Mac. (как у модема). Устарел

Low-Density 50-pin
Или Centronics 50-pin. Внешнее подключение сканеров, стриммеров, обычно SCSI-1 (самый первый вариант SCSI). Как и сам SCSI-1, уже устарел

High-Density 50-pin
Или Micro DB50, или Mini DB50. Стандартный внешний разъем для подключения сканеров, внешних CD-ROM, старых HDD и т. п.

High-Density 68-pin
Или Micro DB68, Mini DB68. Cтандартный внешний wide разъем, в основном для подключения HDD

High-Density 68-pin
Аналогичен предыдущему (практически нигде не применяется)

Существует также еще один тип разъема - CL, или Single Connector имеющий 80 контактов. Single Сonnector используются в основном в host-swap (когда может потребваться горячая замена устройства) конфигурациях, так как объединяют сигналы SCSI-питания и заземления в одном разъеме.

Кроме вышеуказанных интерфейсов существует еще так называемый Serial SCSI , работающий на основе технологии Fibre Channel . Устройства соединяются с контроллером с помощью 6-жильного кабеля и могут обмеиваться на скоростях 100 Mb/s и более. На контроллерах Serial SCSI (также часто его называют SCSI-3) есть и обычные разъемы narrow и wide, что позволяет подключать и стандартные устройства SCSI. Fibre Channel более похожа на сетевой стандарт, чем на интерфейс для подключения носителей; в нем используется последовательная передача данных. Более подробно о технологии Fibre Channel смотрите статье Технология Fibre Channel.

Для работы любого устройства, как известно, необходима программная поддержка. Для большинства IDE-устройств она встроена в BIOS материнской платы, для остальных необходимы драйвера под различные операционные системы. У SCSI-устройств все немного сложнее. Для первичной загрузки со SCSI жесткого диска и работы в DOS необходим свой SCSI BIOS. Здесь есть 3 варианта:

  • Микросхема со SCSI BIOS есть на самом контроллере (как на видеокартах). При загрузке компьютера она активизируется и позволяет загрузиться со SCSI жесткого диска или, например, CD-ROM, MO. При использовании нетривиальной операционной системы (Windows NT, OS/2, *nix) для работы с устройствами SCSI всегда используются драйвера. Также они необходимы для работы устройств, не являющихся жесткими дисками, под DOS
  • Образ SCSI BIOS прошит в Flash-BIOS материнской платы. Обычно в BIOS платы добавляют SCSI BIOS для контроллеров на основе наиболее распространенных чипов. Ее можно перепрошивать и тем самым и изменять версию SCSI BIOS на более новую. При наличии на материнской плате SCSI-контроллера используется именно такой подход. Этот вариант также более выгоден экономически - контроллер без микросхемы BIOS стоит дешевле.
  • SCSI BIOS нет вообще. Работа всех SCSI-устройств обеспечивается только драйверами операционной системы. Загрузка с них, естественно, невозможна. Такой подход используется при создании собственного контроллера для какого-либо внешнего устройства (например, сканера), то есть когда загрузка с устройства не имеет смысла и использование дрйверов предполагается в любом случае

Кроме поддержки загрузки со SCSI устройств, BIOS обычно выполняет еще несколько функций: настройка конфигурации адаптера, проверка поверхности дисков, форматирование на низком уровне, настройка параметров инициализации SCSI-устройств, задание номера загрузочного устройства и так далее. В SCSI BIOS часто необходимо также хранить конфигурацию SCSI-устройств. Эту роль обычно выполняет маленькая микросхема типа 93C46 (flash). Подключается она к основному SCSI-чипу. У нее всего 8 ножек и несколько десятков байт памяти, однако ее содержимое сохраняется и при выключении питания (аналогично CMOS на материнской плате). В этой микросхеме SCSI BIOS может сохранять как параметры SCSI-устройств, так и свои собственные установки. В общем случае ее присутствие не связано с наличием микросхемы со SCSI BIOS, но, как показывает практика, обычно их устанавливают вместе.

Существуют также мощные контроллеры для серверов. Кроме обязательной поддержки самых скоростных режимов они обычно имеют поддержку RAID, горячей замены дисков и дополнительный SCSI-канал, что позволяет увеличить количество подключаемых устройств. Часто еще устанавливают аппаратный кэш величиной этак мегабайта в 32, 64 или больше. На картинке слева вы можете наблюдать такой контроллер от фирмы ASUSTeK (хорошая, к слову сказать, фирма). На его плате очень хорошо виден 486-й процессор, который, видимо, и пытается всем этим добром управлять.

Еще на плате контроллера SCSI можно встретить светодиод активности SCSI-шины и/или разъем для его подключения, а если есть поддержка кэша, то иногда и слоты для модулей памяти. Бывает, что ставят еще дополнительный IDE-контроллер, звуковую карту или VGA-карту. На очень старых контроллерах иногда можно найти разъемы для подключения дисководов для дискет.

К различным не слишком торопливым устройствам (обычно сканерам) в комплекте часто прилагается свой SCSI-контроллер. Как правило, он имеет предельно упрощенную конфигурацию: рассчитан только на одно устройство и работает только с ним, не имеет BIOS, работает только со своим драйвером и без прерываний (polling mode). С экономической точки зрения это вполне оправданно, так как предоставляет достаточно много возможностей (понятно, что даже самый примитивный вариант SCSI лучше, чем LPT или USB) при минимальных зарплатах. Но, с другой стороны, это и не есть хорошо, потому что ничего, кроме своего родного устройства со 100%-й гарантией использовать не удастся. Хотя это никому особенно и не нужно - все равно скорость работы таких карточек невелика и при реальной потребности в SCSI придется покупать что-то более серьезное.

Устройства подключаются к контроллеру соответсвующим (narrow или wide) кабелем по цепочке (аналогично IDE). Это относится и к внешним устройствам, только здесь можно провести аналогию с последовательным подключением, скажем, сканера и принтера к параллельному порту. Не сдедует обращать особого внимания на скоростные показатели носителей, так как в большинстве случаев действует правило: "Если разъем подходит, значит будет работать". Правда, в таком случае возможно замедление работы шины, поэтому, если есть возможность, лучше подключать медленные устройства к одному разъему, быстрые - к другому. Естественно, контроллер должен как-то различать подключенные к одному кабелю устройства, чтобы устанавливать с ними связь. Для этого каждое устройство имеет свой логический номер, который называется называется SCSI ID . Для устройств на narrow SCSI-шине он может быть от 0 до 7, на wide соответственно от 0 до 15. У SCSI-контроллера, являющегося равноправным SCSI-устройством, тоже есть свой номер, обычно это 7. Заметим, что если у вас один контроллер, но есть разъемы и narrow и wide, то SCSI-шина все-таки одна, и все устройства на ней должны иметь уникальные номера. Для некоторых целей, например, у библиотек устройств CD-ROM, применяется еще LUN - логический номер устройства. Если в библиотеке 8 CD-ROM, то она имеет SCSI ID, например, 6, а логически CD-ROM"ы различаются по LUN. Для контроллера все это выглядит в виде пар ID - LUN, в нашем примере 6-0, 6-1, ..., 6-7. Поддержку LUN при необходимости нужно включать в SCSI BIOS. Номер SCSI ID обычно устанавливается с помощью перемычек или через все ту же BIOS (автоматически или вручную), так как в SCSI существуют и новые стандарты, аналогичные Plug&Play, не требующие перемычек. Также можно установить параметры типа проверки четности (если контроллер ее поддерживает), включение терминатора, питание терминатора (см. дальше), включение диска по команде контроллера и т. д. Опять же, зачастую все это можно сделать программным способом через BIOS. Принцип использования ID хорош тем, что не требует прерываний. Для работы SCSI достаточно только одного прерывания (для самого контроллера), что, в отличие от IDE, позволяет экономить этот ресурс и поэтому дает возможность устанавливать в систему больше оборудования.

Теперь, как и обещалось, о терминаторах. Если коротко, то это такие штуковины, которые ставятся на концах шины. Цель применения терминаторов - обеспечить согласование уровней сигналов, уменьшить затухание и помехи. Говорят, что проблемы с терминаторами являются наиболее распространенными, однако если внимательно все делать, их не возникнет. Каждое SCSI-устройство имеет возможность включения или выключения терминаторов. Исключение составляют некоторые сканеры, у которых терминация шины включена навсегда, и внешние устройства со сквозной шиной. Варианты терминаторов:

  • Внутренние. Обычно присутствуют на жестких дисках; включаются установкой одной перемычки
  • Автоматические. Большинство контроллеров SCSI имеет такие. Они сами решают, включаться им или нет
  • В виде сборок резисторов, на некоторых CD-ROM и CD-R именно такие. Выключаются удалением из панелек всех сборок.
  • Внешние. Как в предыдущем пункте, но красивее (например, на стримере HP T4e). Устройство (обычно внешнее) в этом случае имеет два разъема SCSI: в один включается кабель к контроллеру, в другой - терминатор или кабель к следующему устройству в цепочке.

Два последних вида, правда, уже устарели и не применяются. Кроме того, терминаторы могут быть пассивными или активными. Сегодня практически все активные, они обеспечивают бОльшую помехоустойчивость и надежность на высоких скоростях. Определить, какой используется на SCSI устройстве обычно можно по способу его включения. Если это одна перемычка, или он автоматический, то скорее всего активный. А если для его выключения необходимо вытащить из устройства 1-2 резисторных сборки, то пассивный. В принципе, терминация шины с разных концов разными по типу терминаторами возможна, но только на низких скоростях. Кстати, это еще один аргумент в пользу разделения медленнх и быстрых устройств на разные контроллеры или каналы.

Более подробно про терминаторы написано в описании каждого устройства. Правила терминирования часто нарисованы в руководстве к адаптеру. Главное звучит так: шина SCSI должна быть затерминирована на обоих своих концах. Мы рассмотрим наиболее распространенные варианты устройств на одной SCSI-шине.

Простейший вариант: контроллер и одно устройство (внешнее или внутреннее - не важно). Терминаторы необходимо включить и на контроллере и на устройстве.

Вариант с несколькими внутренними устройствами. Терминатор включен только на последнем устройстве и на контроллере.

Есть как внутренние, так и внешние устройства. Терминаторы включены на крайних внутреннем и внешнем устройствах, но выключены на контроллере.

Есть внутреннее и несколько внешних устройств. Терминаторы включены на внутреннем и на последнем внешнем устройстве.

Немного сложнее ситуация, когда на одном контроллере (шине) используются narrow- и wide-устройства одновременно. Представим, что у нас две 8 бит шины, которые на самом деле есть просто старший и младший байты wide-шины (в описаниях и SCSI BIOS это так и называется - High byte/Low byte). Теперь, следуя вышеприведенным правилам, необходимо затерминировать обе эти шины. Обычно в таких случаях на контроллере можно независимо терминировать старший и младший байты wide-шины. В этой ситуации narrow шина есть продолжение младшего байта wide шины. Приведем один пример:

Narrow-устройства вполне можно использовать и на wide-шине даже тогда, когда на контроллере нет необходимого разъема (как внешнего, так и кнутреннего). Нужно только использовать переходник wide-narrow, или это может быть внешний SCSI кабель с narrow-разъемом на одном конце и wide на другом. Чаще всего такая необходимость возникает при подключении внешних narrow-устройств к wide-контроллеру, так как он обычно имеет внешний разъем типа wide. Если вы используете переходники, обратите внимание на терминацию. При подключении внешнего narrow-устройства к wide-разъему переходник должен терминировать high byte. Если же подключается narrow-устройство к внутреннему разъему wide, то переходник просто преобразовывает разъемы (то есть сокращает количество проводов с 68 до 50). Правда, как уже отмечалось, терминация часто производится самим контроллером и устройствами в автоматическом режиме, и проблем возникнуть не должно; эти сведения приведены скорее как справочная, нежели практическая информация.

В различных конфренциях и FAQ часто задают вопрос типа "А что лучше: IDE или SCSI?". Ответить на него очень просто, но с небольшим и очень важным дполнением: "Это смотря для чего". Вот основные преимущества SCSI перед IDE:

  • Более высокая скорость передачи данных
  • Возможна одновременная работа со всеми устройствами, где бы они ни находились и как бы ни были подключены
  • Длина кабеля может составлять 3-6 метров
  • Вообще более высокая надежность по сравнению с IDE как контроллеров, так и SCSI-устройств
  • Возможность использования внешних устройств
  • Максимальное количество устройств (до 15) значительно больше, чем у IDE, к тому же можно установить несколько SCSI-контроллеров (обычно не более четырех)
  • Для всех SCSI-устройств нужно всего лишь одно прерывание
  • Для повышения надежности и быстродействия можно использовать кэширование и технологии RAID и host-swap. Правда, в последнее время стали появляться и аналогичные IDE-контроллеры, но они, безусловно, не так хороши, как у SCSI
  • Однако, при всей своей красе, SCSI - дорогой интерфейс. Это относится как к контролерам, так и к устройствам. Прежде чем решить, нужен ли вам SCSI, необходимо уяснить поставленные цели. Для работы, скажем, в Microsoft Office, вовсе не нужно высокое быстродействие. К тому же преимущества сильно заметны только в случае активной многозадачности. Следует также помнить, что за небольшие деньги можно купить куда более быстродействующий и емкий жесткий диск с интерфейсом IDE, чем со SCSI. Но если вы занимаетесь видеомонтажем, записью CD, сложной графикой или просто хотите максимального быстродействия в любимом Unreal"е (или что у вас там любимое), то тут SCSI, понятное дело, стоит потраченных денег. В общем, решайте сами. Правда, в случае если финансы у вас находятся в плачевном состоянии, то решать тут особенно и нечего...

    Общие сведения об интерфейсах……………………………………….

    Классификация интерфейсов……………………………………………

    История создания интерфейса SCSI……………………………………

    Эволюция стандартов SCSI……………………………………………..

    Как выглядит и из чего состоит SCSI контроллер…………………….

    Концепция SCSI………………………………………………………….

    Фазы работы шины SCSI………………………………………………..

    Команды SCSI……………………………………………………………

    Хост – адаптеры………………………………………………………….

    Кабели SCSI……………………………………………………………...

    Программная поддержка SCSI устройств……………………………...

    Программирование аппаратных средств периферийных устройств…

    SCSI против IDE…………………………………………………………



    Список литературы………………………………………………………




    1. Общие сведения об интерфейсах


    Создание современных средств вычислительной техники связано с задачей объединения в один комплекс различных блоков ЭВМ, устройств хранения и отображения информации, аппаратуры данных и непосредственно ЭВМ. Эта задача возлагается на унифицированные системы сопряжения – интерфейсы. Под интерфейсом понимают совокупность схемотехнических средств, обеспечивающих непосредственное взаимодействие составных элементов вычислительной системы. Интерфейс обеспечивает взаимосвязь между составными функциональными блоками или устройствами системы.

    Основным назначением интерфейса является унификация внутрисистемных и межсистемных связей и устройств сопряжения с целью эффективной реализации прогрессивных методов проектирования функциональных элементов вычислительной системы.

    2. Классификация интерфейсов


    1) Машинные интерфейсы предназначены для организации связей между составными элементами ЭВМ, т.е. непосредственно для их построения и связи с внешней средой.

    2) Интерфейсы периферийного оборудования выполняют функции сопряжения процессоров, контроллеров, запоминающих устройств и аппаратурой передачи данных.

    3) Интерфейсы мультипроцессорных систем представляют собой в основном магистральные системы сопряжения, ориентированные в единый комплекс нескольких процессоров, модулей памяти, контроллеров запоминающих устройств, ограничено размещенных в пространстве.

    4) Интерфейсы распределенных ВС предназначены для интеграции средств обработки информации, размещенные на значительном расстоянии.

    Развитие интерфейсов осуществляется в направлении повышении уровня унификации интерфейсного оборудования и стандартизации условий совместимости, модернизации существующих интерфейсов, создания принципиально новых интерфейсов.


    3. История создания интерфейса SCSI


    Фамилия Shugart знакома многим: она принадлежит одному из ярчайших первопроходцев и идеологов «накопительной» индустрии - легендарному кремниевому олимпийцу (в смысле обитателю Олимпа Кремниевой Долины) Алану Ф. Шугарту, который в IBM руководил разработками флоппи и RIGID, потом работал в Memorex. В 1973 году Шугарт привлек капитал со стороны и создал компанию по производству 5,25-дюймовых FDD-приводов - Shugart Associates. Эта фирма проработала под его управлением год, после чего Шугарта выгнали те самые люди, которые инвестировали начинание. Шугарт оправлялся от удара шесть лет - в этот период он даже купил рыбацкую лодку и стал профессиональным рыбаком. Но тяга к хайтеку не прошла: в 1979 году он совместно с Финисом Коннером основал Seagate Technologies (первоначально - Shugart Technologies), после чего оставался ее руководителем в течение почти двух десятков лет, за которые компания стала крупнейшим независимым производителем жестких дисков (правда, и из Seagate в 1998-м Шугарта «поперли», но это уже совершенно другая история).

    Нас больше интересует Shugart Associates, поскольку именно она в 1979 году разработала интерфейс SASI - самый ранний вариант шины SCSI. Развернуть аббревиатуру SASI в настоящее время сложно, первые две буквы достоверно означают Shugart Associates, четвертая - Interface, а третья в разных источниках расшифровывается по-разному - System, Systems или Standard (думаю, правильной версией является все-таки последняя). Возможности SASI были весьма скромными даже по сравнению с первым вариантом SCSI - скорость передачи составляла лишь 1,5 Мбайт/с, интерфейс имел очень ограниченный набор команд. Однако заложенные в SASI идеи несли в себе много прогрессивного: вместо повсеместно распространенной тогда аналоговой последовательной передачи использовалась 8-разрядная параллельная цифровая, вместо связки линий управления интерфейс предоставлял набор команд, да и работал он на логическом уровне, позволяя адресовать блоки, а не физические головки, цилиндры и секторы.

    Через два года, в конце 1981-го, чтобы подстегнуть принятие интерфейса индустрией, Shugart Associates, скооперировавшись с NCR (National Cash Register), подала заявку в ANSI на создание технического комитета для доработки и стандартизации интерфейса. Такой комитет - X3T9.2 - был образован в 1982 году, а имя интерфейса сменилось на безличное описательное SCSI. В течение нескольких последующих лет стандарт дорабатывался и улучшался: расширилась полоса пропускания, добавились наборы команд - для принтеров, стримеров, процессоров, WORM- и ROM-устройств. (Необходимо заметить, что SCSI в отличие от SASI стал уже не просто дисковым интерфейсом, а родом системной шины: теоретически на «голом» SCSI можно собрать полноценную систему, подключив процессор, память, накопители и периферию.) После представления чернового варианта SCSI в 1984 году на утверждение ANSI многие фирмы стали выпускать продукты, более или менее совместимые с этим протостандартом. Первый официальный стандарт - X3.131-1986 - был принят в 1986 году (с появлением следующих версий его стали называть SCSI-1).

    Последующие дополнения и усовершенствования привели к созданию спецификации SCSI-2.


    4. Эволюция стандартов SCSI

    Спецификации SCSI строго определяют физические и электрические параметры интерфейса и минимум команд. Применение этих команд и стало основным достоинством интерфейса SCSI, так как сделало его управляемым. Разработанная в декабре 1985 года спецификация SCSI-1 предусматривала передачу данных по шине с разрядностью 8 бит и частотой 5 МГц. Скорость передачи данных по шине SCSI в стандартном асинхронном режиме (или режиме handshake, т. е. когда после каждой отправки данных требуется подтверждение) составляет около 3 Мб/с. При передаче в синхронном режиме шина SCSI способна развить пропускную способность около 5 Мб/с.

    Устройства подключались в цепочку друг за другом. Первое устройство подключалось к интерфейсу SCSI на главном компьютере, второе - к первому и т. д. (см. Рисунок 1). Первое и последнее устройства в цепочке должны были быть терминированы. На всех остальных устройствах терминирование необходимо было отключить. Устройства идентифицировались посредством задаваемого с помощью перемычек (jumper) или переключателей ID (от 0 до 7), при этом адаптеру шины на хосте присваивался, как правило, ID=7 как дающий наивысший приоритет при доступе к шине.

    Рисунок 1. Типовая схема подключения SCSI-устройств в виде цепочки.


    Стандарт не обязывал использовать какой-то определенный тип соединителей (коннекторов), а лишь описывал назначение контактов. Наибольшее распространение получили соединители D-Ribbon типа Centronics для ПК, а также DB-25 для Macintosh. Терминирование было преимущественно пассивное, активное же или регулируемое терминирование применялось лишь отдельными производителями.

    В марте 1990 года была разработана, а в 1992-м официально одобрена спецификация SCSI-2 (Fast SCSI), определяющая 18 базовых SCSI-команд (Common Command Set, CCS), обязательных для всех периферийных устройств, а также дополнительные команды для CD-ROM и другой периферии. Стало возможно обмениваться данными без участия центрального процессора. Появились "очереди" - способность принимать цепочки до 256 команд и обрабатывать их автономно в оптимизированном порядке. А если контроллер исполнительного устройства-адресата получил команду, не требующую никаких внешних взаимодействий, то этот контроллер не будет занимать шину до появления необходимости в передаче каких-нибудь данных. Здесь можно увидеть серьезное преимущество SCSI перед IDE,особенно в мультизадачных средах: шина IDE работает как пассивный канал передачи сигналов от центрального процессора - она должна выполнить сначала одну команду перед инициацией другой.

    Также появились расширения спецификации, обозначения которых часто можно видеть в прайс-листах. Базовая 8-разрядная версия - Fast SCSI (SCSI-2) -!имеет пропускную способность 10 Мб/с. Модификация Wide SCSI-2 является 16-разрядным вариантом Fast SCSI (SCSI-2) и соответственно имеет удвоенную скорость передачи данных, а также позволяет подключать до 15 периферийных устройств. Приставка Ultra обозначает повышенную до 20 МГц рабочую частоту, а контроллеры Ultra2 способны передавать данные на частоте 40 МГц. Очень часто встречаются обозначения Ultra Wide или Ultra2 Wide. Это означает, что используется комбинации вариантов. Так, например, Ultra2 Wide устройства могут обмениваться информацией с максимальной скоростью 80 Мб/с.

    Спецификация Ultra160/m SCSI была принята 14 сентября 1998 года. Основными компонентами Ultra160/m SCSI явились: двойная синхронизация при передаче данных (Double Transition Clocking), контроль целостности данных за счет использования циклического кода с избыточностью (CRC), контроль окружения (Domain Validation). Скорость передачи данных в 160 Мб/с достигается за счет использования обоих фронтов сигнала запрос/подтверждение для синхронизации данных. Соответственно, это позволяет разработчикам увеличить быстродействие или надежность, так как становится возможным использовать полосу пропускания шины до 160 Мб/с с существующими Ultra2 SCSI соединительными кабелями либо повысить надежность интерфейса Ultra2 SCSI (80 Мб/с) благодаря снижению частоты, на которой происходит синхронизация.

    Что касается контроля целостности данных за счет использования циклического кода с избыточностью (CRC), то в Ultra160/m используется тот же самый метод, который применяется в FDDI, в локальных сетях на основе протокола CSMA-CD и в волоконно-оптических каналах передачи данных. Контроль окружения представляет собой интеллектуальную технологию, заключающуюся в проверке подсистемы хранения данных, включая соединительные кабели, терминаторы и т.д. Эта технология контролирует функционирование системы в требуемых спецификациях, а в случае возникновения опасности потери данных даже понижает скорость передачи.

    По способу связи с контроллером SCSI-устройства делятся на два типа: использующие single-ended и дифференциальный (differential, D) электрические интерфейсы. В интерфейсе single-ended используется один проводник для каждого разряда передаваемых данных или управляющих сигналов и соответствующий проводник для "земли", причем информация передается только по одному сигнальному проводнику. В дифференциальном интерфейсе сигнал разделяется на положительную и отрицательную составляющую и передается по паре проводников, что дает возможность передавать сигнал на большие дистанции без помех. Выбор типа SCSI-трансивера определяет максимальную длину шины и число подключаемых устройств. Большинство существующих SCSI-устройств используют single-ended-трансиверы, что приводит к уменьшению длины кабеля при увеличение скорости передачи Дифференциальные трансиверы преодолевают это ограничение, но стоимость их намного выше. Решить эту проблему призвана технология Low-Voltage Differential (LVD), представляющая гибрид двух вышеуказанных технологий. Большинство новых устройств поддерживают универсальные трансиверы, которые могут работать как single-ended и как LVD трансиверы.


    Разрядность,

    Максимальная скорость передачи, Мб/с

    Максимальная длина кабеля/количество устройств, м/штук

    Количество контактов в разъеме

    6/7,25/6(0), 12/6 (LVD)

    3/7,25/6(0), 12/6 (LVD)

    Fast SCSI-2, Fast SCSI

    3/15,25/15(0), 12/15 (LVD)

    3/3,1,5/7,25/6 (D),12/6 (LVD)

    Wide Ultra SCSI-2

    3/3,1,5/7,25/15 (D), 12/15 (LVD)

    Fast-20 Wide SCSI

    Wide Ultra2 SCSI-2

    Fast-40 Wide SCSI

    Ultra3 Wide SCSI

    Еще существует 80-контактный разъем для подключения устройств в режиме "горячей замены" (Hot Swap). Особенность такого разъема - присутствие контактов питания наряду с контактами для передачи данных и управляющих сигналов.

    5. Как выглядит и из чего состоит SCSI контроллер

    Вот картинка самого простого FastSCSI контроллера на шине PCI.

    Как видно, больше всего места занимают разъемы. Самый большой (и самый старый) это разъем для 8-и битных внутренних устройств, часто называемый narrow , он аналогичен разъему IDE, только в нем не 40, а 50 контактов. На большинстве контроллеров есть и внешний разъем, как следует из названия, к нему можно и нужно подключать внешние SCSI устройства. На картинке изображен разъем типа mini-sub D на 50 контактов.

    Для Wide устройств используется аналогичный, но на 68 контактов, также используется крепление не в виде защелок, а на винтах - как у COM мышек и принтеров. Он даже меньше, чем narrow, за счет более высокой плотности расположения контактов. (Кстати, несмотря на название, wide шлейф тоже уже, чем narrow). Иногда можно встретить и старый вариант внешнего разъема - просто centronix. Такой же (внешне, но не функционально:) Вы можете встретить на своем принтере. Некоторые устройства, например IOmega ZIP Plus, а также расчитанные на Mac, используют обычный 25 контактный Cannon (D-SUB), как на модеме. Для внешних высокоскоростных соединений применяется и mini-centronics. Вот полная таблица:

    (размеры почти оригинальные)

    Внутренние

    Low-Density 50-pin

    подключение внутренних narrow устройств - HDD, CD-ROM, CD-R, MO, ZIP. (как IDE, только на 50 контактов)

    High-Density 68-pin

    подключение внутренних wide устройств, в основном HDD

    Внешние

    подключение внешних медленных устройств, в основном сканеров, IOmega Zip Plus. наиболее распространен на Mac. (как у модема)

    Low-Density 50-pin

    или Centronics 50-pin. внешнее подключение сканеров, стриммеров. обычно SCSI-1.

    High-Density 50-pin

    или Micro DB50, Mini DB50. стандартный внешний narrow разъем

    High-Density 68-pin

    или Micro DB68, Mini DB68. стандартный внешний wide разъем

    High-Density 68-pin

    или Micro Centronics. по некоторым источникам применяется для внешнего подключения SCSI устройств.

    Для работы любого устройства, как известно, необходима программная поддержка. Для большинства IDE устройств минимальная встроена в BIOS материнской платы, для остальных необходимы драйвера под различные операционные системы. У SCSI устройств все немного сложнее. Для первичной загрузки со SCSI жесткого диска и работы в DOS необходим свой SCSI BIOS. Здесь есть 3 варианта.

    1. микросхема со SCSI BIOS есть на самом контроллере (как на VGA картах). При загрузке компьютера он активизируется и позволяет загрузиться со SCSI жесткого диска или, например, CDROM, MO. При использовании нетривиальной операционной системы (Windows NT, OS/2, *nix) для работы с устройствами SCSI всегда используются драйвера. Также они необходимы для работы устройств, не являющихся жесткими дисками, под DOS.

    2. образ SCSI BIOS прошит в flash BIOS материнской платы. Далее по п.1. Обычно в BIOS платы добавляют SCSI BIOS для контроллере на основе чипа NCR 810, Symbios Logic SYM53C810 (на первой картинке именно он) или Adaptec 78xx. Этим процессом при желании можно управлять и изменять версию SCSI BIOS на более новую. При наличии на материнской плате SCSI контроллера используется именно такой подход. Этот вариант также более выгоден экономически:) - контроллер без микросхемы BIOS стоит дешевле.

    3. SCSI BIOSа нет вообще. Работа всех SCSI устройств обеспечивается только драйверами операционной системы.

    Кроме поддержки загрузки со SCSI устройств, BIOS обычно имеет еще несколько функций: настройка онфигурации адаптера, проверка поверхности дисков, форматирование на низком уровне, настройка параметров инициализации SCSI устройств, задание номера загрузочного устройства и т.д.

    Следующее замечание следует из первого. Как Вы знаете, обычно на материнских платах есть CMOS. В нем BIOS хранит настройки платы, в том числе конфигурацию жестких дисков. Для SCSI BIOS часто необходимо также хранить конфигурацию SCSI устройств. Эту роль обычно выполняет маленькая микросхема типа 93C46 (flash). Подключается она к основному SCSI чипу. У нее всего 8 ножек и несколько десятков байт памяти, однако ее содержимое сохраняется и при выключении питания. В этой микросхеме SCSI BIOS может сохранять как параметры SCSI устройств так и свои собственные. В общем случае ее присутствие не связано с наличием микросхемы со SCSI BIOS, но, как показывает практика, обычно их устанавливают вместе.

    Здесь Вы можете увидеть UltraWide SCSI контроллер фирмы ASUSTeK. На нем уже присутствует микросхема SCSI BIOS. Также можно разглядеть внутренний и внешний Wide разъемы.

    На последней (больше мне не удалось быстро найти:) картинке представлен двухканальный Ultra Wide SCSI контроллер. Его спецификация включает следующие пункты: RAID уровней 0,1,3,5 ; Failure Drive Rebuilding ; Hot Swap и on-line Rebuilding; кеш память 2, 4, 8, 16, 32 Mb; Flash EEPROM для SCSI BIOS. Очень хорошо виден 486 процессор, который видимо и пытается всем этим добром управлять.

    Еще на плате контроллера SCSI можно встретить

    • светодиод активности SCSI шины и/или разъем для его подключения
    • разъемы для модулей памяти
    • контроллер гибких дисков (в основном на старых платах Adaptec)
    • IDE контроллер
    • звуковую карту (на картах ASUSTeK для MediaBus)
    • VGA карту

    Другие карты SCSI

    Часто к сканерам и другим небыстрым SCSI устройствам в комплекте прилагается простой SCSI контроллер. Обычно это SCSI-1 контроллер на шине ISA 16 или даже 8 бит с одним (внешним или внутренним) разъемом. На нем нет BIOSа, eeprom, часто он работает без прерываний (polling mode), иногда поддерживает только одно (а не 7) устройство. В основном такой контроллер можно применять только со своим устройством, т.к. драйвера есть только для него. Однако при определенном навыке можно подключить к нему например жесткий диск или стример. Это оправдано только в случае отсутствия денег и наличия времени (или спортивного интереса:) , т.к. стандартный SCSI контроллер, как уже говорилось, можно приобрести за $20-40 и иметь на порядок меньше проблем и гораздо больше возможностей.

    6. Концепция SCSI


    Шина SCSI – это шина ввода-вывода, а не системная шина и не интерфейс приборного уровня. Интерфейсные средства типа шины SCSI особенно эффективны для машин, которые требуют подключения нескольких дисковых накопителей или других ПУ. Интерфейс SCSI повышает гибкость и вычислительную мощность системы, поскольку он позволяет подключить к одной шине несколько различных ПУ, которые могут непосредственно взаимодействовать друг с другом. Скорость передачи данных по шине безусловно не будет ограничивающим фактором, поскольку этот показатель для шины SCSI в настоящее время достигает 40Мбайт/с.

    Шина SCSI предусматривает возможность подключения до восьми устройств. На первый взгляд это может показаться довольно серьезным ограничением, однако, если учесть, что каждое устройство может представлять восемь логических блоков, а каждый логический блок – 256 логических подблоков, то очевидно, что возможности расширения здесь более чем предостаточные.

    Каждому из устройств шины SCSI должен быть назначен индивидуальный идентификатор ID, значение которого обычно задается при помощи коммутационных перемычек непосредственно в устройстве. Идентификатор ID выполняет две функции: он идентифицирует устройство на шине и определяет его приоритет в арбитраже за доступ к шине (чем больше номер устройства, тем выше его приоритет).

    Каждое из восьми возможных устройств шины может играть роль инициатора(initiator), исполнителя(target), либо совмещать обе эти роли. Инициатор – это часть хост(главного) адаптера SCSI, который служит для подключения главного компьютера к шине SCSI. В типичной системе к одному инициатору подключается один или несколько исполнителей. Система повышенной сложности может содержать более одного хост- адаптера SCSI(много инициаторов). В таких системах могут устанавливаться взаимодействие не только любого процессора с любым ПУ, но также хост - адаптеров друг с другом, поскольку хост – адаптер сам является устройством шины SCSI и может играть роль как инициатора, так и исполнителя. Два ПУ(оба исполнителя), однако, не могут взаимодействовать друг с другом, поскольку только пара инициатор – исполнитель может вести обмен даннами по шине в каждый конкретный момент времени.

    Хост – адаптер содержит аппаратные и программные средства для сопряжения с ЦП.

    Интерфейс контроллера SCSI и системной шины может быть как совсем простым (строится по принципу программного опроса канала В/В), так и более сложным (предусматривающим высокоскоростные обмены данными в режиме прямого доступа к памяти, ПДП). Такие контроллеры воспринимают высокоуровневые команды и освобождают ЦП от необходимости обработки и контроля сигналов шины SCSI.

    Программное обеспечение главного компьютера упрощается, поскольку ему не приходится учитывать физические характеристики конкретного устройства. Интерфейс SCSI предусматривает использование логических, а не физических адресов для всех блоков данных.

    7. Фазы работы шины SCSI


    Протокол шины SCSI предусматривает восемь отдельных фаз:

    Bus Free – «Шина свободна»

    Arbitration – «Арбитраж»

    Selection – «Выборка»

    Reselection – «Обратная выборка»

    Command – «Команда»

    Data – «Данные»

    Status – «Состояние »

    Message – «Сообщение»

    Последние четыре фазы называются фазами передачи информации. Шина SCSI в каждый конкретный момент времени может находится только в одной из этих восьми фаз.

    Фаза «Шина свободна» означает, что ни одно устройство в данный момент не работает с шиной SCSI в активном режиме, и шина свободна для обращения. Эта фаза обычно возникает после системного сброса или после сброса шины сигналом RST. Признаком фазы «Шина свободна» является отсутствие сигналов занятости BSY и выборки SEL.

    Шина переключается в фазу – «Арбитраж», когда какое – либо SCSI- устройство хочет взять на себя управление шиной, т.е стать инициатором на шине. Это происходит в случаях, когда инициатор хочет выбрать исполнителя или исполнитель хочет произвести перевыборку запрашивавшего его ранее инициатора. В фазу «Арбитраж» шина может переключится только из фазы «Шина свободна». После того, как устройство определяет, что шина свободна, начинается фаза «Арбитраж». Для этого формируется сигнал BSY, на соответствующую линию данных

    выдается идентификатор ID SCSI – устройства(ID – бит). При этом каждое

    из восьми возможных устройств шины SCSI может выдавать свой ID - бит

    только на закрепленную за ним линию данных как признак своего участия

    в арбитраже. Устройство с максимальным значением идентификатора ID выигрывает арбитраж и берет на себя управление шиной.

    Фаза «Выборка» дает возможность инициатору выбрать исполнителя, чтобы инициировать выполнение им соответствующей функции, например команды чтения READ или записи READ. Согласно протоколу спецификации SCSI-2 фаза «Выборка» всегда наступает после фазы «Арбитраж». В спецификации SCSI-1 предусматривается вариант системы с одним инициатором, где необходимость арбитража отсутствует, и в фазу выборки можно входить сразу же после фазы «Шина свободна». В обоих случаях для выборки исполнителя инициатор выдает его ID-бит на соответствующую линию данных шины SCSI и формирует сигнал выборки SEL.

    Необязательная фаза перевыборка возможна, когда исполнитель хочет восстановить связь с тем инициатором, который ранее послал ему команду. Эта фаза в принципе напоминает фазу «Выборка», с тем исключением, что вместе с сигналом выборки SEL переходит в активное состояние линия I/O, что позволяет различать эти две фазы.

    Фазы «Команда», «Данные», «Состояние » и «Сообщение» образуют группу фаз передачи информации, поскольку все они используются для передачи данных или управляющей информации по шине данных. Чтобы их различать, используются сигналы C/D – управление, I/O – ввод-вывод и MSG – сообщение, вырабатываемые исполнителями, который тем самым управляет всеми переходами из одной фазы в другую. Для управления передачей данных между исполнителем и инициатором в фазах передачи информации используются сигналы линий REQ/ACK – запрос/подтверждение (в версии SCSI-2 дополнительно применяются линии REQB/ACKB).

    Реальный обмен данными может осуществляться синхронным и асинхронным способом. В обоих случаях для выполнения квитирования используются сигнальные линии ACK и REQ. Для исполнителя режим синхронной передачи является необязательным. Инициатор может потребовать, чтобы исполнитель осуществлял синхронную передачу, однако если последний отвергнет этот запрос, то будет использоваться асинхронный режим.

    Чтобы передать данные инициатору в асинхронном режиме, исполнитель выдает их на линии данных шины SCSI вместе с сигналом REQ. Данные должны удерживаться на шине до тех пор, пока от инициатора не будет принят сигнал подтверждения ACK. После этого на шину выдаются следующие данные, и процесс повторяется. Если передача данных должна происходить в противоположном направлении, исполнитель выдает сигнал запроса REQ, говорящий о том, что он готов к приему данных. Инициатор выдает данные на линию данных шины SCSI, а за тем формирует сигнал ACK. Инициатор продолжает удерживать данные на шине до тех пор, пока линия REQ, не переключится в пассивное состояние. Затем исполнитель сбрасывает сигнал REQ, инициатор выдает новые данные, и процесс повторяется.

    Если в фазе «Сообщения» устройства согласились использовать синхронный режим обмена, то исполнитель не будет ждать поступления сигнала подтверждения ACK перед выдачей сигнала REQ для приема следующих данных. Он может генерировать один или более импульсов REQ без ожидания соответствующих импульсов ACK(до заранее оговоренного максимума, называемого смещением REQ/ACK).

    При выдаче всех запланированных импульсов REQ исполнитель сравнивает число запросов REQ и подтверждений ACK, чтобы удостовериться в том, что каждая группа данных принята успешно. При подготовке синхронного режима обмена устройства задают смещение REQ/ACK и период передачи. Период передачи определяет интервал времени между окончанием передачи очередного байта и началом передачи следующего.


    8. Команды SCSI

    Предшествующие спецификации интерфейсов для жестких дисков (как уже упомянутый ESDI) предусматривали последовательную передачу по одному биту за один раз, при этом управление диском осуществлялось по отдельным проводам (линиям), каждый из которых выполнял определенную функцию. Например, одна конкретная сигнальная линия задавала смещение головки чтения/записи жесткого диска, другая - направление смещения, третья - тип операции (чтение или запись), четвертая служила для передачи данных в требуемом формате. Таким образом, используемый контроллер зависел от типа жесткого диска.

    SCSI же способен выполнять высокоуровневые команды, например запрашивать тип подключенного к шине устройства с помощью команды Inquiry. Таким образом, помимо спецификации физических характеристик шины (тип соединителя, уровни напряжения, назначение контактов и т. д.) стандарт для каждого типа периферии (жесткий диск, CD-ROM и т. д.) определяет поддерживаемые команды и соответствующие им ответы (порядка 12 для каждого вида периферии). Стандартные команды SCSI-1 сгруппированы в соответствии с шестью типами устройств, как показано в Таблице 1.


    Таблица 1. Группы команд в соответствии с типами поддерживаемых устройств.

    Тип устройства

    Название

    Типичная функция

    Случайный доступ для чтения/записи (жесткий диск)

    Адреса логических блоков, длина записываемого блока

    Последовательный доступ (ленточный накопитель)

    Чтение следующей записи

    Контроль компоновки страницы

    Процессор

    Отправка и прием

    WORM (записывающий CD-ROM)

    Большой размер, съемный

    Случайный доступ только для чтения

    Адреса логических блоков, длина считываемого блока

    При запросе целевым устройством команды, как в примере с обращением ПК к диску, инициатор отвечает отправкой 6 байт командной информации. Эти байты служат для задания команды и идентификации устройства. Все вместе они называются блоком описания команды (Command Descriptor Block, CDB). Первый байт (точнее, байт за номером 0) определяет тип команды или операционный код (opcode). Некоторые наиболее распространенные коды имеют следующие значения (в шестнадцатеричном представлении):

    00 Тестовое устройство готово;

    03 Форматирование;

    08 Чтение;

    0А Запись;

    0B Поиск.

    Значение оставшихся байт зависит от конкретного операционного кода. Например, в случае команды Write (код 0A) они имеют следующий смысл:

    Байт 0 Операционный код 0А;

    Байт 1 Номер логического устройства в битах 5 и 6,


    биты с 1 по 4 задают адрес логического блока;

    Байт 2 Адрес логического блока;

    Байт 3 Адрес логического блока;

    Байт 4 Биты со 2 по 5 задают длину передачи;

    Байт 5 Бит 1 - флаг; биты 6 и 7 назначаются производителем.

    Передача команд осуществляется в асинхронном режиме. Однако если ответ содержит данные, то они могут передаваться в синхронном режиме, как в случае команды Inquiry, в ответ на которую целевое устройство передает идентифицирующую его тип строку ASCII (этот ответ часто отображается на мониторе ПК при загрузке драйверов SCSI).

    9. Хост - адаптеры


    Хост-адаптер реализует функции сопряжения шины SCSI с системными ресурсами, прежде всего с системной шиной и операционной системой компьютера. Он, как правило выполняет роль инициатора на шине SCSI , хотя в сложных (например, в мультипроцессорных и мультимашинных) SCSI-системах может динамически изменяться (инициатор/исполнитель).

    К числу основных функций хост - адаптера, определяющих его структуру и характеристики, относятся:

    Реализация протокола шины SCSI, а также физических и электрических спецификаций стандарта;

    Сопряжение с аппаратными и программными системными ресурсами

    Реализация протокола шины SCSI, как правило, осуществляется специализированной БИС контроллера шины SCSI. Обычно эта схема обеспечивает и реализацию электрических спецификаций стандарта.

    Сопряжение с аппаратными системными средствами предполагает прежде всего согласование разрядности и пропускной способности шины SCSI и системной шины хост-системы, а также реализацию развитых средств доступа к системной памяти. Структура узла согласования разрядности шин зависит от назначения хост-адаптера и используемой версии стандарта SCSI(8 разрядов для SCSI-1;16 или 32 разряда для SCSI-2). Основным средством согласования пропускной способности системной и SCSI-шин является буферная память, реализуемая обычно в виде буфера FIFO, либо двухпортового ОЗУ. Наиболее распространенный алгоритм доступа к системной памяти – прямой доступ, реализуемый чаще всего с помощью контроллера ПДП хост-системы.

    Сопряжение с программными системами предполагает наличие SCSI- драйвера для конкретной ОС.

    Характеристики современных хост - адаптеров


    Среди используемых БИС SCSI-контроллеров для шины AT доминирует модели фирмы NCR. Следом идут известные WD33C93 фирмы Western Digital и ALC 6250/60 фирмы Adaptec(США). Хост-адаптером чаще всего поддерживают как синхронный, так и асинхронный режимы обмена по шине SCSI. Скорость обмена существенно зависит от типа используемого контроллера. В простых хост-адаптерах она колеблется от 0,25 до 1 Мбайт/с в асинхронном режиме и синхронном режимах соответственно.

    Размер буфера данных также варьируется в достаточно широких пределах: от использования внутренних буферов БИC SCSI-контроллера небольшой емкости, до ОЗУ значительной емкости (1Мбайт). Наличие большого буфера существенно увеличивает стоимость хост-адаптера.

    10. Кабели SCSI

    Для обеспечения нечувствительности к помехам внешние кабели SCSI не только используют витые пары, но и организованы в виде трех концентрических слоев (см. Рисунок 2). Центральный, внутренний, слой содержит три пары: Request («Запрос»), Acknowledge («Подтверждение») и Ground («Земля»). Средний - промежуточный - слой служит для передачи управляющих сигналов. Третий - внешний - слой предназначен для передачи данных и информации о четности. В среднем слое пары скручены в противоположном направлении по сравнению с прилежащими к нему внешним и внутренним слоями для уменьшения емкостной связи между слоями. Размещение жил для передачи управляющих сигналов в среднем слое обеспечивает отсутствие интерференции между данными и сигналами Request/Acknowledge.

    Рисунок 2. Внешний кабель SCSI в разрезе.

    Хотя весь кабель в целом изолируется с помощью полихлорвинилового покрытия, для отдельных пар такая изоляция не годится, так как ее электрические характеристики сильно зависят от температуры, а кроме того, она имеет очень большую емкость. Такая конструкция кабеля сказываются в конечном итоге на его цене. Однако мы не так богаты, чтобы покупать дешевые вещи.

    11. Програмная поддержка SCSI устройств


    Задача программирования SCSI систем и устройств является многоуровневой и может быть разделена следующие относительно независимые подзадачи:

    Программирование аппаратных средств периферийных устройств.

    Реализация протоколов SCSI шины.

    Реализация SCSI команд.

    Доступ к SCSI устройствам ОС и прикладных задач.

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


    12. Программирование аппаратных средств периферийных устройств

    Конечным звеном средств программной поддержки ПУ в силу специфичности физических принципов их реализации неизбежно являются узкоспециализированные программы низкого уровня. Из-за того, что программирование на таком уровне сложно даже для общесистемных, не говоря уже о прикладных программистах, имеется тенденция к повышению уровня средств программирования ПУ за счет маскирования специфики ПУ на уровне так называемого firmware (внутреннего программного обеспечения –ВПО). Примером может служить маскирование функций непосредственного управления дисковыми накопителями на уровне внутренних команд дисковых контроллеров WD2010,8272 и др.

    Однако на уровень регистров контроллеров выходят только специализированные программы. В настоящее время ПУ как правило, программируются на уровне функций системной BIOS, а программы более высокого уровня вообще используют стандартные функции ОС.

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

    Однако как элемент управления устройствами, естественно,

    сохраняются на уровне ВПО контроллера ПУ и реализуется либо локальным микропроцессором (МП) контроллера, либо микроконтроллером, встроенным в базовую БИС контроллера ПУ.

    В целях сохранения наработанных программных средств управления электроникой ПУ, в настоящее время широко используется эмуляция стандартных интерфейсов ПУ, предполагающая преобразование логических адресов SCSI в физические адреса конкретного устройства. Примером может служить контроллер SmartConnex/ISA фирмы Distributed Proccessing Е Technology. Он использует интерфейс известного дискового контроллера WD1003 фирмы Western Digital, в результате чего компьютер “видит” контроллер как обычное устройство, совместимое с интерфейсом ST-506.

    Реально эмуляцию интерфейса выполняет невидимый для пользователя драйвер, запоминаемый при форматировании в последнем блоке НМД. Соответствующие драйверы имеются для наиболее распространенных ОС

    (MS-DOS,OS/2,Xenix/Unix,Novell NetWare). Установка контроллера SmartConnex в систему осуществляется с помощью специальной утилиты поставляемой фирмой.

    В известных контроллерах WD 33C92/93 фирмы Western Digital имеется даже встроенная команда преобразования форматов логических адресов в физические.

    Таким образом, для реализации различных ПУ в стандарте SCSI могут

    использоваться фрагменты готовых программ, поддерживающие такие стандартные функции управления ПУ в MS-DOS, как INT 13, INT 11 и др.

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

    13. SCSI против IDE

    Спор "Что лучше: IDE или SCSI" входит в число самых распространенных во многих телеконференциях. Число сообщений и статей на эту тему очень велико. Однако этот вопрос, как и знаменитое "Windows NT or OS/2 or Unix", в такой постановке является неразрешимым. Наиболее частая и правильная реакция на них "А для чего?". Рассмотрев этот вопрос подробнее, Вы сможете принять для себя решение о необходимости SCSI для себя.

    Расскажем подробнее, что может дать простой SCSI контроллер по сравнению с IDE и за что его нужно выбирать или не выбирать.

    предложение SCSI

    возражения EIDE/ATAPI

    ответ SCSI

    возможность подключения 7 устройств к одному контроллеру (к Wide - 15)

    нетрудно установить 4 контроллера IDE и всего будет 8 устройств

    на каждый контроллер IDE нужно по прерыванию! И только 2 будут с UDMA/33. А 4 UWSCSI это 60 устройств:)

    широкий спектр подключаемых устройств

    на IDE есть СDD, ZIP, MO, CD-R, CD-RW

    а драйвера и программы для всего этого у вас точно есть? и много? а вот для SCSI можно использовать любые, в том числе входящие в состав ОС

    возможность подключать как внутренние, так и внешние устройства

    Removable rack или LPT-IDE

    общая длинна кабеля SCSI может достигать 25 метров. В обычных вариантах 3-6м *

    если не разгонять шину PCI, можно и на метр

    можно использовать кэширование и технологии RAID для кардинального повышения производительности и надежности

    раньше были кэширующие Tekram"ы, а сейчас появились и RAID для IDE

    это не работает и вообще не серьезно

    * Стоит заметить, что в случае использования интерфейса Ultra или Ultra Wide SCSI на какчество соединительных кабелей и их длину накладываются дополнительные ограничения, в результате чего максимальная длина соединения может быть существенно снижена.

    Чтобы не складывалось впечатление, что IDE это очень плохо и за его использование Вам должно быть стыдно, отметим и положительные качества IDE интерфейса, частично в свете выше приведенной таблицы:

    1. Цена. Бесспорно иногда это очень важно.

    2. Не всем нужно подключать 4 HDD и 3 CDD. Часто двух каналов IDE более чем достаточно, а всякие там сканеры идут со своими карточками.

    3. В корпусе minitower сложно использовать шлейф, длиннее 80см:)

    4. IDE HD установить гораздо проще, там всего один jumper, а не 4-16 как на SCSI:)

    5. IDE контроллер уже есть у большинства материнских плат

    6. У IDE устройств шина всегда 16 бит и для моделей, сравнимых по цене, IDE выигрывает по скорости.

    Теперь о цене. Самый простой SCSI на шину ISA стоит около $20, но сейчас такие просто никому не нужны, поэтому можно найти и дешевле. Следующий вариант это контроллер на шине PCI. Простейший вариант FastSCSI стоит около $40. Однако сейчас появилось множество материнских плат, на которых всего за +$70 может быть установлен Adaptec 7880 UltraWideSCSI. Даже у знаменитых ASUS P55T2P4 и P2L97 есть варианты со SCSI. Для UWSCSI карточки цена варьируется от $100 до $600. Также бывают двухканальные (как IDE на Intel Triton HX/VX/TX) контроллеры. Цена их естественно выше. Заметим, что в случае SCSI, в отличие от IDE, где что-то новое придумать сложно, за дополнительные деньги контроллеры могут быть расширены функциями кэш-контроллера, RAID-0..5, hotswap и т.д., поэтому говорить о верхней границе стоимости контроллера не совсем корректно.

    И наконец о скорости. Как известно, сегодня максимальная скорость передачи информации по шине IDE составляет 33Мб/с. Для UWSCSI аналогичный параметр достигает 40Мб/с. Основные преимущества SCSI проявляются при работе в мультизадачных средах (ну и в Windows95 немного:). Многие тесты, приведенные под WindowsNT показывают несомненное преимущество SCSI. Пожалуй это самая популярная на сегодня ОС, для которой применение SCSI более чем оправдано. Также могут быть конкретные задачи (связанные, например, с обработкой видео) в которых просто невозможно использование IDE. Про отличия внутренних архитектур, также влияющих на производительность, в этой статье говорить не будем, поскольку там слишком много специальных терминов. Отметим только, что наблюдая за развитием IDE с удивлением замечаем, что он приобретает многие черты SCSI, но, будем надеяться, все-таки совсем они не сольются.

    Список литературы

    1. Михаил Гук: «Интерфейсы ПК. Справочник» "Питер",1999.


    2. А.П. Пятибратов:

    «Вычислительные машины, системы и сети»


    3. А.А. Мячев, В.Н. Степанов:

    «Персональные ЭВМ и микроЭВМ»

    М.: «Радио и связь», 1998.


    4. А.А. Мячев:

    «Интерфейсы IBM PC», 1992.


    5. Стефан Фойц: «Windows 98 для пользователя»

    К.: Торгово-издательское бюро BHV, 1998;


    6. «PC Computing»: «IDE vs SCSI»


    7. «PC Magazine»: «Interface IDE»



    Репетиторство

    Нужна помощь по изучению какой-либы темы?

    Наши специалисты проконсультируют или окажут репетиторские услуги по интересующей вас тематике.
    Отправь заявку с указанием темы прямо сейчас, чтобы узнать о возможности получения консультации.

    Интерфейс SCSI был разработан в конце 1970-х гг. орга-^ “ низацией Shugart Associates. Первоначально известный

    под названием SASI (Shugart Associates System Interface), после стандартизации в 1986 г. он уже под именем SCSI (читается «скази») стал одним из промышленных стандартов для подключения периферийных устройств - винчестеров, стримеров, сменных жестких и магнитооптических дисков, сканеров, CD-ROM и CD-R, DVD-ROM и т. п. К шине SCSI можно подключить до восьми устройств, включая основной контроллер

    SCSI (или хост-адаптер). Контроллер SCSI является по сути самостоятельным процессором и имеет свою собственную BIOS (которая иногда может размещаться в BIOS системной платы). Он выполняет все операции по обслуживанию и управлению шиной SCSI, освобождая от этого центральный процессор. К шине Wide SCSI подключаются до 15 устройств. Преимущество SCSI проявляется тогда, когда несколько устройств работают одновременно с одной шиной, освобождая ее, когда она не требуется.

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

    По терминологии командного языка SCSI, коммуникация осуществляется между источником-инициатором (initiator), посылающим команду, и целевым устройством-мишенью (target), исполняющим ее.

    Команда SCSI помещается в блоке описания команды (Command Descriptor Block - CDB), который состоит из кода операции (1 байт) и параметров команды (5 байт или более). В ответ мишень возвращает код статуса, который обычно равен 00h («успешный прием») либо 02h («ошибка») либо 08h («занято»). Команды SCSI включают 4 категории - N (нет данных), W (передача данных от инициатора к мишени), R (чтение данных инициатором) и В (двунаправленная связь).

    Протокол предусматривает около 60 команд, в том числе:

    • проверка готовности устройства;
    • запустить/остановить устройство (включить/выключить двигатель диска, загрузить/выгрузить носитель);
    • читать данные (4 модификации команды);
    • записать данные (4 варианта);
    • определить вместимость (емкость) накопителя;
    • форматировать устройство (сбросить все секторы в ноль), и т. д.

    Каждое устройство на шине SCSI получает по меньшей мере один логический номер (Logical Unit Number - LUN). Простые устройства получают только один LUN, более сложные - множество LUN. Например, устройство прямого доступа (НЖМД) состоит из набора логических блоков, обычно имеющих адреса (Logical Block Address - LBA). Именно использование LBA требует применение 4-х модификаций команд чтения/записи данных, одни из которых используют адреса на 21 бит, а другие - на 32 бита.

    Параллельный интерфейс 5С5/. Интерфейс 8С8І, как правило, является параллельным (рис. 4.24) и физически представляет собой плоский кабель с 25, 50, 68-контактными разъемами для подключения периферийных устройств. Шина 8С8І содержит восемь линий данных, сопровождаемых линией контроля четно-

    интерфейс

    Встроенные устройства

    [Заглушка

    Заглушка

    Вынесенные (внешние) устройства


    Рис. 4.24. Интерфейс 8С$1: а - общая архитектура; б - адаптер БСБ!

    сти, и девять управляющих линий. Стандарт SCSI определяет два способа передачи сигналов: однополярный, или асимметричный (Single ended), и дифференциальный (Differential). В первом случае имеется один провод с нулевым потенциалом («земля»), относительно которого передаются сигналы по линиям данных с уровнями сигналов, соответствующими ТТЛ-логике. При дифференциальной передаче сигнала для каждой линии данных выделено два провода, и сигнал на этой линии получается вычитанием потенциалов на их выходах. При этом достигается лучшая помехозащищенность, что позволяет увеличить длину кабеля.

    Для интерфейса SCSI необходимо наличие «терминаторов» согласующих сопротивлений, которые поглощают сигналы на концах кабеля и препятствуют образованию эха. Для SCSI вообще характерна высокая чувствительность к качеству изготовления кабелей и к их длине, которая может быть различной в зависимости от версии интерфейса.

    Устройства SCSI также соединяются в виде цепочки (daisy chain), причем каждое устройство SCSI имеет свой адрес (SCSI ID) в диапазоне от 0 до 7 (или от 0 до 15). В качестве адреса платы контроллера, а обычно используется наибольшее значение SCSI ID - 7(15), адрес загрузочного диска (SCSI ID) равен «О», второго диска - «1». Обмен между устройствами на магистрали SCSI определяется нормированным списком команд (Common Command Set - CCS). Программное обеспечение для интерфейса SCSI не оперирует физическими характеристиками накопителя (т. е. числом цилиндров, головок и т. д.), а имеет дело только с логическими блоками данных, поэтому в одной SCSI-цепочке могут быть размещены, например, сканер, жесткий диск и накопитель CD ROM.

    Опрос устройств производит контроллер SCSI сразу после включения питания. При этом для устройств SCSI реализовано автоконфигурирование устройств (Plug-n-play) по протоколу SCAM (SCSI Configured AutoMagically), в котором значения SCSI ID выделяются автоматически. Для стандартизированного управления SCSI-устройствами наиболее широко применяется программный интерфейс ASPI (Advanced SCSI Programming Interface).

    Характеристики SCSI. Существует более десятка различных версий интерфейса SCSI (табл. 4.8). Основными характеристиками шины SCSI являются:

    Ширина - 8 («narrow», узкий формат) или 16 бит («wide», широкий формат);


    Рис. 4.25. Маркировка устройств SCSI с различными электрическими параметрами: / - Single-Ended; 2 - Low Voltage Differential; 3 - High Voltage Differential; 4 - интерфейс смешанного типа Low Voltage Differential/Single-Ended

    Таблица 4.8. Версии (поколения) интерфейса SCSI

    скорость

    Ширина шины (раз-рядность)

    Максимальная длина связи (в зависимости от типа сигналов), м

    Максимальное

    количество

    подключений

    • (широкий)

    Не определено для скорости выше Ultra

    Ultra3 SCSI or Ultra 160 SCSI

    Не определено для скорости выше Ultra2

    Не определено

    Не определено

    • тактовая частота шины;
    • тип электросигналов (рис. 4.25):
    • - однополярный - Single-ended (SE);
    • - высоковольтный дифференциальный - High-voltage differential (HVD) - 5 В;
    • - низковольтный - Low-voltage differential (LVD) - 3 В.

    На скорость влияют в основном два первых параметра. Обычно они записываются в виде приставок к слову SCSI (табл. 4.8).

    Максимальную скорость передачи устройство-контроллер можно вычислить, взяв частоту шины, а в случае наличия «Wide» умножить ее на 2 (например, FastSCSI - 10 Мбайт/с, Ultra2WideSCSI - 80 Мбайт/с).

    Последовательные интерфейсы SCSI. Четыре недавние версии SCSI, а именно - SSA (Serial Storage Architecture), FC-AL и Serial Attached SCSI (SAS) отошли от традиционного параллельного стандарта SCSI и ориентированы на передачу данных по последовательным коммуникациям (см. табл. 4.8). Основные преимущества последовательного интерфейса - большие скорости передачи данных; «горячее» включение-выключение; лучшая помехозащищенность.

    Терминаторы, разъемы. По типу сигналов различают линейные (Single Ended) и дифференциальные (Differential) версии SCSI, их кабели и разъемы идентичны, но электрической совместимости устройств между ними нет (табл. 4.9).

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

    В линейной версии сигнал должен идти по своему одному проводнику, скрученному (или, по крайней мере, отдельному от другого в плоском шлейфе) с нулевым (обратным) проводом.

    SCSI-устройства соединяются кабелями в цепочку, на крайних устройствах подключаются терминаторы. Часто одним из крайних устройств является хост-адаптер. Он может иметь для каждого канала как внутренний разъем, так и внешний.

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

    Таблица 4.9. Разъемы интерфейса SCSI

    DB-25 - подключение внешних медленных устройств, в основном сканеров, lOmega Zip Plus, наиболее распространен для Macintosh (сходен с разъемом модема)

    Low-Density 50-pin или Centronics 50-pin - внешнее подключение сканеров, стримеров, обычно SCSI-1

    High-Density 50-pin или Micro DB50, Mini DB50 - стандартный внешний narrow-разъем

    High-Density 68-pin или Micro DB68, Mini DB68 - стандартный внешний wide-разъем

    High-Density 68-pin или Micro Centronics, применяется для внешнего подключения SCSI-устройств

    Таблица 4.10. Разъемы А-кабеля SCSI

    Контакт разъема

    Контакт разъема

    и 32-битовых версий 8С81 (в 8-битовом варианте контакты 1-5, 31-39, 65-68 не используются); разъемы для внешнего подключения выглядят как миниатюрный вариант Centronics с плоскими контактами, внутренние имеют штырьковые контакты;

    • Q-кабель, 68-проводное расширение до 32 бит, используется в паре с Р-кабелем;
    • кабель с разъемами D-25P - 8-битовый, стандартный для Macintosh, используется на некоторых внешних устройствах (Iomega ZIP-Drive).

    Возможны различные вариации кабелей-переходников.

    Шина. Как и в шине PCI, в шине SCSI предполагается возможность обмена информацией между любой парой устройств. Конечно, чаще всего обмен производится между хост-адаптером и периферийными устройствами. Копирование данных между устройствами может производиться без выхода на системную шину компьютера. Здесь большие возможности имеют интеллектуальные хост-адаптеры со встроенной кэш-памятью. В каждом обмене по шине принимает участие его инициатор (Initiator) и целевое устройство (Target). В табл. 4.11 приводится назначение сигналов шины.

    Таблица 4.11. Назначение сигналов шины SCSI

    (1 - Initiator, T - Target)

    Назначение

    Инверсная шина данных с битами паритета

    Питание терминаторов

    Внимание

    Шина занята

    Запрос на пересылку данных

    Ответ на REQ#

    Target передает сообщение

    Выбор (Select) целевого устройства инициатором или Reselect инициатора целевым устройством

    Управление (0) / данные (1) на шине

    Направление передачи относительно инициатора или фаза Selection (1) / Reselection (0)

    • ний терминатор может привести к неустойчивости или потере работоспособности интерфейса. Кабели. Ассортимент кабелей 8С81 довольно широк (табл. 4.9). Основные стандартизированные кабели: А-кабель (табл. 4.10) - стандартный для 8-битового интерфейса 8С81 50-проводный внутренний шлейф (разъемы ШС-50) или внешний экранированный (разъемы Сеп1гошс8-50); В-кабель - 16-битовый расширитель 8С81-2, распространения не получил;
    • Р-кабель - 16-битовый 8С81-2/3 68-проводный с улучшенными миниатюрными экранированными разъемами, универсальными для внутренних и внешних кабелей 8-, 16-