Принципы SCSI были включены в спецификацию SCSI-2, где команды делятся на три категории : обязательные, факультативные и определяемые изготовителем. SCSI -устройства должны поддерживать как минимум, все обязательные команды устройств своего типа. В спецификации SCSI -2 были описаны команды для ПУ непосредственного доступа(дисковых накопителей), последовательного доступа(НМЛ), принтеров, процессоров, устройств памяти с однократной записью(оптических дисковых накопителей), ПЗУ на базе компакт-дисков, сканеров, устройств оптической памяти, устройств с автоматической сменой носителя и коммуникационных устройств.
В спецификацию SCSI -2 была включена также еще одна концепция, предложенная в документе CCS, а именно - концепция обратной выборки, или перевыборки. Согласно протоколу SCSI –1, если инициатор посылает команду исполнителю, он будет занимать шину до тех пор, пока исполнитель не завершит выполнение этой команды. Когда исполнитель выполнит команду, он через механизм арбитража потребует доступа к шине с целью перевыборки инициатора, который выдал ему эту команду. Операция завершается передачей исполнителем соответствующих данных и статуса. Таким образом инициатору не приходится ждать, пока исполнитель закончит текущую команду, и он может в принципе посылать команды другим исполнителям с целью их параллельного выполнения.
Это может быть полезно для системы, содержащей более одного исполнителя, однако чаще бывает необходимо послать следующую команду тому же самому исполнителю. Спецификация SCSI-1 предусматривает передачу только одной команды от инициатора логическому устройству SCSI-контроллера исполнителя. При работе с дисковыми накопителями такой режим может быть весьма неэффективным. Предположим, например, что у ЦП имеются четыре отдельных запроса от операционной системы на чтение секторов диска, размещающихся на дорожках 1, 50, 2 и 52. Поскольку ЦП работает c устройствами шины SCSI в терминах логических блоков данных, он не имеет представления о том, где( или каким образом) эти данные хранятся в устройстве), и, следовательно, не в состоянии оптимизировать последовательность команд перед их выдачей в SCSI- устройство. Такая возможность, называемая формированием очереди или цепочки команд, предусмотрена в спецификации SCSI-2( в очередь могут быть установлены до 256 команд).
Чтобы устройство могло одновременно следить за несколькими командами, ждущими выполнения, каждой команде присваивается тег очереди, определяющий однозначный механизм обращения к ней. Когда устройство выбрано на шине SCSI и передано сообщение идентификации
IDENTIFY, посылается двухбайтовое сообщение тега очереди QUEUE TAG, которое содержит нужную команду очереди и идентификатор инициатора. Когда контроллер исполнителя производит перевыборку инициатора, это сообщение с тегом посылается после идентификатора устройства. Команды, посылаемые без тега очереди, выполняются в порядке поступления, однако при этом ожидать выполнения может только одна команда, что регламентируется стандартным протоколом SCSI-1.
В спецификации SCSI-2 предусмотрено также существенное увеличение скорости передачи данных, максимальное значение которой согласно спецификации SCSI-1 составляло 5Мбайт/с. Проблема повышения скорости была разрешена двумя различными способами. Наиболее простым способом является увеличение числа разрядов шины данных. В настоящее время широкое распространение получили 16- и 32- разрядные процессоры, на фоне которых 8- разрядная шина SCSI -1 выглядит просто примитивно. В связи с этим в с спецификацию SCSI -2 был введен “широкий ” многоразрядный вариант шины(WIDE), предусматривающий введение дополнительно 24 линий данных, т. е увеличения их общего числа до 32. Для повышения пропускной способности шины также было предложено увеличить тактовую частоту обмена в два раза. Это составляет суть “быстрого” (высокоскоростного) варианта (FAST) шины SCSI -2.
Сочетание быстрого и широкого вариантов реализации шины SCSI дает возможность передавать данные с максимальной пропускной способностью 40 Мбайт/с. Это может показаться весьма впечатляющим, однако для большинства обычных приложений шины SCSI столь высокая пропускная способность просто не требуется. В конце концов, такая скорость нужна только для дискового накопителя! Устройства с интерфейсом SCSI обычно содержат буферы памяти, так что
эффективность использования шины SCSI определяется обьемом данных,
принимаемых устройством из дисковой памяти в свое буферное ЗУ, и интеллектуальностью алгоритма их обработки. При этом необходимо также учитывать, с какой скоростью сама вычислительная машина способна принимать данные. В общем не имеет смысла тратить усилия, увеличивать стоимость и скорость шины SCSI, реализуя “быстрый” или “широкий” ее варианты, если главная система не может воспользоваться увеличенной пропускной способностью.
