Архитектура сети это реализованная структура сети передачи данных, определяющая её топологию, состав устройств и правила их взаимодействия в сети. В рамках архитектуры сети рассматриваются вопросы кодирования информации, её адресации и передачи, управления потоком сообщений, контроля ошибок и анализа работы сети в аварийных ситуациях и при ухудшении характеристик.
Параллельная передача данных
Параллельная передача данных между контроллером и ВУ является по своей организации наиболее простым способом обмена. Для организации параллельной передачи данных помимо шины данных, количество линий в которой равно числу одновременно передаваемых битов данных, используется минимальное количество управляющих сигналов.
В простом контроллере ВУ, обеспечивающем побайтную передачу данных на внешнее устройство (рис. 3.5), в шине связи с ВУ используются всего два управляющих сигнала: "Выходные данные готовы" и "Данные приняты".
Рис. 3.5. Простой параллельный контроллер вывода.
Для формирования управляющего сигнала "Выходные данные готовы" и приема из ВУ управляющего сигнала "Данные приняты" в контроллере используется одноразрядный адресуемый регистр состояния и управления А2 (обычно используются раздельные регистр состояния и регистр управления). Одновременно с записью очередного байта данных с шины данных системного интерфейса в адресуемый регистр данных контроллера (порт вывода А1) в регистр состояния и управления записывается логическая единица. Тем самым формируется управляющий сигнал "Выходные данные готовы" в шине связи с ВУ.
ВУ, приняв байт данных, управляющим сигналом "Данные приняты" обнуляет регистр состояния контроллера. При этом формируются управляющий сигнал системного интерфейса "Готовность ВУ" и признак готовности ВУ к обмену, передаваемый в процессор по одной из линий шины данных системного интерфейса посредством стандартной операции ввода при реализации программы асинхронного обмена.
Логика управления контроллера обеспечивает селекцию адресов регистров контроллера, прием управляющих сигналов системного интерфейса и формирование на их основе внутренних управляющих сигналов контроллера, формирование управляющего сигнала системного интерфейса "Готовность ВУ". Для сопряжения регистров контроллера с шинами адреса и данных системного интерфейса в контроллере используются соответственно приемники шины адреса и приемопередатчики шины данных.
Рассмотрим на примере, каким образом контроллер ВУ обеспечивает параллельную передачу данных в ВУ под управлением программы асинхронного обмена. Алгоритм асинхронного обмена в данном случае передачи прост. 1. Процессор микроЭВМ проверяет готовность ВУ к приему данных. 2. Если ВУ готово к приему данных (в данном случае это логический 0 в нулевом разряде регистра А2), то данные передаются с шины данных системного интерфейса в регистр данных А1 контроллера и далее в ВУ. Иначе повторяется п. 1.
Пример 2.1. Фрагмент программы передачи байта данных в асинхронном режиме с использованием параллельного контроллера ВУ (рис. 3.5). Для написания программы асинхронной передачи воспользуемся командами процессора 8086.
MOV
|
DX, A2
|
номер порта A2 помещаем в DX
|
m1:IN
|
AL, DX
|
чтение байта из порта A2
|
TEST
|
AL, 1
|
проверка нулевого состояния регистра A2
|
JNS
|
ml
|
переход на метку ml если разряд не нулевой
|
MOV
|
AL, 64
|
выводимый байт данных помещается в AL
|
MOV
|
DX, A1
|
номер порта A1 записываем в DX
|
OUT
|
DX, AL
|
содержимое регистра AX передаем в порт A1
|
Команда во второй строке приводит к следующим действиям. При ее выполнении процессор по шине адреса передает в контроллер адрес А2, сопровождая его сигналом "Ввод" (IORD#; здесь и далее в скобках указаны сигналы на шине ISA). Логика управления контроллера, реагируя на эти сигналы, обеспечивает передачу в процессор содержимого регистра состояния А2 по шине данных системного интерфейса.
Команда в третьей строке приводит к следующим действиям. Процессор проверяет значение соответствующего разряда принятых данных. Нуль в этом разряде указывает на неготовность ВУ к приему данных и, следовательно, на необходимость возврата к проверке содержимого А2, т. е. процессор, выполняя три первые команды, ожидает готовности ВУ к приему данных. Единица в этом разряде подтверждает готовность ВУ и, следовательно, возможность передачи байта данных.
В седьмой строке осуществляется пересылка данных из регистра AX процессора в регистр данных контроллера А1. Процессор по шине адреса передает в контроллер адрес А1, а по шине данных - байт данных, сопровождая их сигналом "Вывод" (IOWR#). Логика управления контроллера обеспечивает запись данных с шины данных в регистр данных А1 и устанавливает в ноль бит готовности регистра состояния А2, формируя тем самым управляющий сигнал для ВУ "Выходные данные готовы". ВУ принимает байт данных и управляющим сигналом "Данные приняты" устанавливает в единицу регистр состояния А2. (Далее контроллер ВУ по этому сигналу может сформировать и передать в процессор сигнал "Готовность ВУ", который в данном случае извещает процессор о приеме данных внешним устройством и разрешает процессору снять сигнал "Вывод" и тем самым завершить цикл вывода данных в команде пересылки, однако в IBM-совместимых персональных компьютерах с шиной ISA сигнал "Готовность ВУ" не формируется, а имеется сигнал IO CH RDY#, позволяющий продлить цикл обмена, если устройство недостаточно быстрое. В данном случае нет необходимости в сигнале "Готовность ВУ", т.к. шина ISA является синхронной и, следовательно, все операции выполняются по тактовым импульсам.)
Блок-схема простого контроллера ВУ, обеспечивающего побайтный прием данных из ВУ, приведена на рис. 3.6. В этом контроллере при взаимодействии с внешним устройством также используются два управляющих сигнала: "Данные от ВУ готовы" и "Данные приняты".
Рис. 3.6. Простой параллельный контроллер ввода.
Для формирования управляющего сигнала "Данные приняты" и приема из ВУ управляющего сигнала " Данные от ВУ готовы" используется одноразрядный адресуемый регистр состояния и управления А2.
Внешнее устройство записывает в регистр данных контроллера А1 очередной байт данных и управляющим сигналом "Данные от ВУ готовы" устанавливает в единицу регистр состояния и управления А2.
При этом формируются: управляющий сигнал системного интерфейса "Готовность ВУ"; признак готовности ВУ к обмену, передаваемый в процессор по одной из линий шины данных системного интерфейса посредством операции ввода при реализации программы асинхронного обмена.
Тем самым контроллер извещает процессор о готовности данных в регистре А1. Процессор, выполняя программу асинхронного обмена, читает байт данных из регистра данных контроллера и обнуляет регистр состояния и управления А2. При этом формируется управляющий сигнал "Данные приняты" в шине связи с внешним устройством.
Логика управления контроллера и приемопередатчики шин системного интерфейса выполняют те же функции, что и в контроллере вывода (см. рис. 3.5),
Рассмотрим работу параллельного интерфейса ввода при реализации программы асинхронного обмена. Алгоритм асинхронного ввода так же прост, как и асинхронного вывода. 1. Процессор проверяет наличие данных в регистре данных контроллера А1. 2. Если данные готовы (логическая 1 в регистре А2), то они передаются из регистра данных А1 на шину данных системного интерфейса и далее в регистр процессора или ячейку памяти микрокомпьютера. Иначе повторяется п. 1.
Пример 2.2. Фрагмент программы приема байта данных в асинхронном режиме с использованием параллельного интерфейса (контроллер ВУ, рис. 3.6):
MOV
|
DX, A2
|
номер порта A2 помещаем в DX
|
m1:IN
|
AL, DX
|
чтение байта из порта A2
|
TEST
|
AL, 1
|
проверка нулевого разряда состояния регистра A2
|
JZ
|
ml
|
переход на метку ml если разряд не нулевой
|
MOV
|
DX, A1
|
номер порта A1 записываем в DX
|
IN
|
AL, DX
|
содержимое регистра A1 передаем в регистр AL
|
В третьей строке выполняется проверка содержимого регистра А2, т.е. признака наличия данных в регистре данных А1. Команда выполняется точно так же, как и в примере 2.1. Единица в нулевом разряде (содержимое регистра А2) подтверждает, что данные от ВУ записаны в регистр данных контроллера и необходимо переслать их на шину данных. Нуль в знаковом разряде указывает на неготовность данных от ВУ и, следовательно, на необходимость вернуться к проверке готовности.
IN AL, DX - пересылка данных из регистра данных контроллера A1 в регистр процессора AL. Процессор передает в контроллер по шине адреса системного интерфейса адрес A1, сопровождая его сигналом "Ввод". Логика управления контроллера в ответ на сигнал "Ввод" (IORD#) обеспечивает передачу байта данных из регистра данных A1 на шину данных и, в общем случае, но не в IBM-совместимом персональном компьютере с шиной ISA, сопровождает его сигналом "Готовность ВУ", который подтверждает наличие данных от ВУ на шине данных и по которому процессор считывает байт с шины данных и помещает его в указанный регистр. (В IBM-совместимом персональном компьютере с шиной ISA процессор считывает байт с шины данных по истечении определенного времени после установки сигнала IORD#.) Затем логика управления обнуляет регистр состояния и управления А2, формируя тем самым управляющий сигнал для внешнего устройства "Данные приняты". Таким образом завершается цикл ввода данных.
Как видно из рассмотренных примеров, для приема или передачи одного байта данных процессору необходимо выполнить всего несколько команд, время выполнения которых и определяет максимально достижимую скорость обмена данными при параллельной передаче. Таким образом, при параллельной передаче обеспечивается довольно высокая скорость обмена данными, которая ограничивается только быстродействием ВУ.
1. Шина ISA
Шина ISA (Industry Standart Architecture) шина, применявшаяся с первых моделей PC и ставшая промышленным стандартом. В PC моделей XT применялась шина с разрядностью данных 8 бит и адреса 20 бит. В моделях AT шина была расширена до 16 бит данных и 24 бита адреса, какой она остается до сих пор. Конструктивно шина выполнена в виде двух слотов. Подмножество ISA-8 использует только первый 62-контактный слот, в ISA-16 применяется дополнительный 36-контактный слот. Тактовая частота 8 МГц. Скорость передачи данных до 16 Мбайт\с. Обладает хорошей помехоустойчивостью.
Шина обеспечивает своим абонентам возможность отображения 8- или 16-битных регистров на пространство ввода-вывода и памяти. Диапазон доступных адресов памяти ограничен областью UMA (Unified Memory Architecture - унифицированная архитектура памяти), но для шины ISA-16 специальными опциями BIOS Setup может быть разрешено и пространство в области между15-м и 16-м мегабайтом памяти (правда при этом компьютер не сможет использовать более 15 Мбайт ОЗУ). Диапазон адресов ввода-вывода сверху ограничен количеством используемых для дешифрации бит адреса, нижняя граница ограничена областью адресов 0-FFh, зарезервированных под устройства систнемной платы. В PC была принята 10-битная адресация ввода-вывода, при которой линии адреса A[15:10] устройствами игнорировались. Таким образом, диапазон адресов устройств шины ISA ограничивается областью 100h-3FFh, то есть всего 758 адресов 8-битных регистров. На некоторые области этих адресов претендуют и системные устройства. Впоследствии стали применять и 12-битную адресацию (диапазон 100h-FFFh), но при ее использовании всегда необходимо учитывать возможность присутствия на шине и старых 10-битных адаптеров, которые "отзовутся" на адрес с подходящими ему битами A[9:0] во всей допустимой области четыре раза.
В распоряжении абонентов шины ISA-8 может быть до 6 линий запросов прерываний IRQ (Interrupt Request), для ISA-16 их число достигает 11. Заметим, что при конфигурировании BIOS Setup часть из этих запросов могут отобрать устройства системной платы или шина PCI.
Абоненты шины могут использовать до трех 8-битных каналов DMA (Direct Memory Access - прямой доступ к памяти), а на 16-битной шине могут быть доступными еще три 16-битных канала. Сигналы 16-битных каналов могут использоваться и для получения прямого управления шиной устройством Bus-Master. При этом канал DMA используется для обеспечения арбитража управления шиной, а адаптер Bus-Master формирует все адресные и управляющие сигналы шины, не забывая "отдать" управление шиной процессору не более, чем через 15 микросекунд (чтобы не нарушить регенерацию памяти).
Все перечисленные ресурсы системной шины должны быть бесконфликтно распределены между абонентами. Бесконфликтность подразумевает следующее:
· Каждый абонент должен при операциях чтения управлять шиной данных (выдавать информацию) только по своим адресам или по обращению к используемому им каналу DMA. Области адресов для чтения не должны пересекаться. "Подсматривать" не ему адресованные операции записи не возбраняется.
· Назначенную линию запроса прерывания IRQx абонент должен держать на низком уровне в пассивном состоянии и переводить в высокий уровень для активации запроса. Неиспользуемыми линиями запросов абонент управлять не имеет права, они должны быть электрически откоммутированы или подключаться к буферу, находящемуся в третьем состоянии. Одной линией запроса может пользоваться только одно устройство. Такая нелепость (с точки зрения схемотехники ТТЛ) была допущена в первых PC и в жертву совместимости старательно тиражируется уже много лет.
Задача распределения ресурсов в старых адаптерах решалась с помощью джамперов, затем появились программно-конфигурируемые устройства, которые практически вытеснены автоматически конфигурируемыми платами PnP.
Для шин ISA ряд фирм выпускает карты-прототипы (Protitype Card), представляющие собой печатные платы полного или уменьшенного формата с крепежной скобой. На платах установлены обязательные интерфейсные цепи - буфер данных, дешифратор адреса и некоторые другие. Остальное поле платы представляет собой "слепыш", на котором разработчик может разместить макетный вариант своего устройства. Эти платы удобны для макетной проверки нового изделия, а также для монтажа единичных экземпляров устройства, когда разработка и изготовление печатной платы нерентабельно.
С появлением 32-битных процессоров делались попытки расширения разрядности шины, но все 32-битные шины ISA не являются стандартизованными, кроме шины EISA. 2. Шина EISA
С появлением 32-разрядных микропроцессоров 80386 (версия DX) фирмами Compaq, NEC и рядом других фирм, была создана 32-разрядная шина EISA, полностью совместимая с ISA.
Шина EISA (Extended ISA) - жестко стандартизованное расширение ISA до 32 бит. Конструктивное исполнение обеспечивает совместимость с ней и обычных ISA-адаптеров. Узкие дополнительные контакты расширения расположены между ламелями разъема ISA и ниже таким образом, что адаптер ISA, не имеющий дополнительных ключевых прорезей в краевом разъеме, не достает до них. Установка карт EISA в слоты ISA недопустима, поскольку ее специфические цепи попадут на контакты цепей ISA, в результате чего системная плата окажется неработоспособной.
Расширение шины касается не только увеличения разрядности данных и адреса: для режимов EISA используются дополнительные управляющие сигналы, обеспечивающие возможность применения более эффективных режимов передачи. В обычном (не пакетном) режиме передачи за каждую пару тактов может быть передано до 32 бит данных (один такт на фазу адреса, один - на фазу данных). Максимальную производительность шины реализует пакетный режим (Burst Mode) скоростной режим пересылки пакетов данных без указания текущего адреса внутри пакета. Внутри пакета очередные данные могут передаваться в каждом такте шины, длина пакета может достигать 1024 байт. Шина предусматривает и более производительные режимы DMA, при которых скорость обмена может достигать 33 Мбайт/с. Линии запросов прерываний допускают разделяемое использование, причем сохраняется и совместимость с ISA-картами: каждая линия запроса может программироваться на чувствительность как по перепаду, как в ISA, так и по низкому уровню. Шина допускает потребление каждой картой расширения мощности до 45 Вт, но полную мощность, как правило не потребляет ни один адаптер.
Каждый слот (максимум - 8) и системная плата могут иметь селективное разрешение адресации ввода-вывода и отдельные линии запроса и подтверждения управления шиной. Арбитраж запросов выполняет устройство ISP (Integrated System Peripheral). Обязательной принадлежностью системной платы с шиной EISA является энергонезависимая память конфигурации NVRAM, в которой хранится информация об устройствах EISA для каждого слота. Формат записей стандартизован, для модификации конфигурационной информации применяется специальная утилита ECU (EISA Configuration Utility). Архитектура позволяет при использовании программно-конфигурируемых адаптеров автоматически разрешать конфликты использования системных ресурсов программным путем, но в отличие от спецификации PnP, EISA не допускает динамического реконфигурирования. Все изменения конфигурации возможны только в режиме конфигурирования, после выхода из которого необходима перезагрузка компьютера. Изолированный доступ к портам ввода-вывода каждой карты во время конфигурирования обеспечивает просто: сигнал AEN, разрешающий декодирования адреса в цикле ввода-вывода, на каждый слот приходит по отдельной линии AENx, в это время программно-управляемой. Таким образом можно по отдельности обращаться и к обычным картам ISA, но из это бесполезно, поскольку карты ISA не поддерживают обмена конфигурационной информацией, предусмотренного шиной EISA. На некоторых идеях конфигурирования EISA выросла спецификация PnP для шины ISA (формат конфигурационных записей ESCD во многом напоминает NVRAM EISA).
EISA - дорогая, но оправдывающая себя архитектура, применяющаяся в многозадачных системах, на файл-серверах и везде, где требуется высокоэффективное расширение шины ввода-вывода. 3. Шина MCA
Шина MCA (MicroChannel Architecture) - микроканальная архитектура - была введена в пику конкурентам фирмой IBM для своих компьютеров PS/2 начиная с модели 50 в 1987 году. Обеспечивает быстрый обмен данными между отдельными устройствами, в частности с оперативной памятью. Шина MCA абсолютно несовместима с ISA/EISA и другими адаптерами. Состав управляющих сигналов, протокол и архитектура ориентированы на асинхронное функционирование шины и процессора, что снимает проблемы согласования скоростей процессора и периферийных устройств. Адаптеры MCA широко используют Bus-Mastering, все запросы идут через устройство CACP (Central Arbitration Control Point). Архитектура позволяет эффективно и автоматически конфигурировать все устройства программным путем (в MCA PS/2 нет ни одного переключателя).
При всей прогрессивности архитектуры (относительно ISA) шина MCA не пользуется популярностью из-за узости круга производителей MCA-устройств и полной их несовместимости с массовыми ISA-системами. Однако MCA еще находит применение в мощных файл-серверах, где требуется обеспечение высоконадежного производительного ввода-вывода.
4. Локальная шина VLB
Локальная шина стандарта VLB (VESA Local Bus, VESA Video Equipment Standart Association Ассоциация стандартов видеооборудования) разработана в 1992 году. Главным недостатком шины VLB является невозможность её использования с процессорами, пришедшими на замену МП 80486 или существующими параллельно с ним (Alpha, PowerPC и др.).
Шины ввода-вывода ISA, MCA, EISA имеют низкую производительность, обусловленную их местом в структуре PC. Современные приложения (особенно графические) требуют существенного повышения пропускной способности, которое могут обеспечить современные процессоры. Одним из решений проблемы повышения пропускной способности было применение в качестве шины подключения периферийных устройств локальной шины процессора 80486. Шину процессора использовали как место подключения встроенной периферии системной платы (контроллер дисков, графического адаптера).
VLB - стандартизованная 32-битная локальная шина, практически представляющая собой сигналы системной шины процессора 486, выведенные на дополнительные разъемы системной платы. Шина сильно ориентирована на 486 процессор, хотя возможно ее использование и с процессорами класса 386. Для процессоров Pentium была принята спецификация 2.0, в которой разрядность шины данных увеличена до 64, но она распространения не получила. Аппаратные преобразователи шины новых процессоров в шину VLB, будучи искусственными "наростами" на шиннной архитектуре, не прижились, и VLB дальнейшего развития не получила.
Конструктивно VLB-слот аналогичен 16-битному обычному MCA-слоту, но является расширением системного слота шины ISA-16, EISA или MCA, располагаясь позади него вблизи от процессора. Из-за ограниченной нагрузочной способности шины процессора больше трех слотов VLB на системной плате не устанавливают. Максимальная тактовая частота шины - 66 МГц, хотя надежнее шина работает на частоте 33 МГц. При этом декларируется пиковая пропускная способность 132 Мбайт/с (33 МГц x 4 байта), но она достигается только внутри пакетного цикла во время передач данных. Реально в пакетном цикле передача 4 x 4 = 16 байт данных требует 5 тактов шины, так что даже в пакетном режиме пропускная способность составляет 105.6 Мбайт/с, а в обычном режиме (такт на фазу адреса и такт на фазу данных) - всего 66 Мбайт/с, хотя это и значительно больше, чем у ISA. Жесткие требования к временным характеристикам процессорной шины при большой нагрузке (в т. ч. и микросхемами внешнего кэша) могут привести к неустойчивой работе: все три VLB-слота могут использоваться только на частоте 40 МГц, при нагруженной системной плате на 50 МГц может работать только один слот. Шина в принципе допускает и применение активных (Bus-Master) адаптеров, но арбитраж запросов возлагается на сами адаптеры. Обычно шина допускает установку не более двух Bus-Master адаптеров, один из которых устанавливается в "Master"-слот.
Шину VLB обычно использовали для подключения графического адаптера и контроллера дисков. Адаптеры локальных сетей для VLB практически не встречаются. Иногда встречаются системные платы, у которых в описании указано, что они имеют встроенный графический и дисковый адаптер с шиной VLB, но самих слотов VLB нет. Это означает, что на плате установлены микросхемы указанных адаптеров, предназначенные для подключения к шине VLB. Такая неявная шина по производительности, естественно, не уступает шине с явными слотами. С точки зрения надежности и совместимости это даже лучше, поскольку проблемы совместимости карт и системных плат для шины VLB стоят особенно остро.
5. Шина PCI
Шина PCI (Peripheral Component Interconnect bus взаимосвязь периферийных компонентов) - шина соединения периферийных компонентов. Была анонсирована компанией Intel в июне 1992 года на выставке PC Expo.
Эта шина занимает особое место в современной PC-архитектуре (mezzanine bus), являясь мостом между локальной шиной процессора и шиной ввода-вывода ISA/EISA или MCA. Эта шина разрабатывалась в расчете на Pentium-системы, но хорошо сочетается и с 486 процессорами, а также с не-Intel'овскими процессорами. Шина PCI является четко стандартизованной высокопроизводительной шиной расширения ввода-вывода. PCI мультиплексная 32-разрядная шина. Существует также 64-разрядная версия. Частота шины 20-33 МГц. Стандарт PCI 2.1 допускает и частоту 66 МГц. Теоретическая максимальная скорость 132/264 Mбайт/с для 32/64 бит при 33 МГц, и 528 Мбайт/с при 66 МГц. Слот PCI достаточен для подключения адаптера (в отличие от VLB), на системной плате он может сосуществовать с любой из шин ввода-вывода и даже с VLB (хотя в этом и нет необходимости).
На одной шине PCI может быть не более четырех устройств (слотов). Мост шины PCI (PCI Bridge) - это аппаратные средства подключения шины PCI к другим шинам. Host Bridge - главный мост - используется для подключения PCI к системной шине (шине процессора или процессоров). Peer-to-Peer Bridge - одноранговый мост - используется для соединения двух шин PCI. Две и более шины PCI применяются в мощных серверных платформах - дополнительные шины PCI позволяют увеличить количество подключаемых устройств.
Автоконфигурирование устройств (выбор адресов, запросов прерывания) поддерживается средствами BIOS и ориентировано на технологию Plug and Play.Стандарт PCI определяет для каждого слота конфигурационное пространство размером до 256 восьмибитных регистров, не приписанных ни к пространству памяти, ни к пространству ввода-вывода. Доступ к ним осуществляется по специальным циклам шины Configuration Read и Configuration Write, вырабатываемым контроллером при обращении процессора к регистрам контроллера шины PCI, расположенным в его пространстве ввода-вывода.
В состав шины PCI введены сигналы для тестирования адаптеров по интерфейсу JTAG. На системной плате эти сигналы не всегда задействованы, но могут и организовывать логическую цепочку тестируемых адаптеров.
Шина PCI все обмены трактует как пакетные: каждый кадр начинается фазой адреса, за которой может следовать одна или несколько фаз данных. Количество фаз данных в пакете неопределенно, но ограничено таймером, определяющим максимальное время, в течении которого устройство может пользоваться шиной. Каждое устройство имеет собственный таймер, значение для которого задается при конфигурировании устройств шины.
В каждом обмене участвуют два устройства - инициатор обмена (Initiator) и целевое устройство (Target). Арбитражем запросов на использование шины занимается специальный функциональный узел, входящий в состав чипсета системной платы. Для согласования быстродействия устройств-участников обмена предусмотрены два сигнала готовности IRDY# и TRDY#. Для адреса и данных на шине используются общие мультиплексированные линии AD. Четыре мультиплексированных линии C/BE[3:0] используются для кодирования команд в фазе адреса и разрешения байт в фазе данных.
Шина имеет версии с питанием 5 В, 3.3 В. Также существует универсальная версия (с переключением линий +V I/O c 5 В на 3.3 В). Ключами являются пропущенные ряды контактов 12, 13 и 50, 51. Для 5 В-слота ключ расположен на месте контактов 50, 51; для 3 В - 12, 13; для универсального - два ключа: 12, 13 и 50, 51. Ключи не позволяют установить карту в слот с неподходящим напряжением питания. 32-битный слот заканчивается контактами A62/B62, 64-битный - A94/B94.
В отличие от адаптеров остальных шин, компоненты карт PCI расположены на левой поверхности плат. По этой причине крайний PCI-слот обычно разделяет использование посадочного места адаптера с соседним ISA-слотом (Shared slot).
Шина PCI являлась до последнего времени второй (после ISA) по популярности применения. В современных системах происходит отказ от шин ISA, и шинаPCI выходит на главные позиции. Некоторые фирмы для этой шины выпускают карты-прототипы, но, конечно же, доукомплектовать их периферийным адаптером или устройством собственной разработки гораздо сложнее, чем карту ISA. Здесь сказываются и более сложные протоколы, и более высокие частоты (8 МГц у шины ISA против 33 или 66 МГц у шины PCI). Также шина PCI обладает плохой помехоустойчивостью, поэтому для построения измерительных систем и промышленных компьютеров используется все еще относительно редко.
На некоторых системных (материнских) платах имеется небольшой разъем, который называется Media Bus. Он расположен позади разъема шины PCI одного из слотов. На этот разъем выводятся сигналы обычной шины ISA, и предназначен он для того, чтобы на графическом адаптере с шиной PCI можно было разместить и недорогой чипсет звуковой карты, предназначенный для шины ISA. Этот разъем, а тем более и такие комбинированные аудио-видео карты, широкого распространения не получили.
6. Шина SCSI
Шина SCSI (Small Computer System Interface - cистемный интерфейс малых компьютеров, произносится "скази") была стандартизована ANSI (American National Standards Institute - Американский институт стандартов) еще в 1986 году. Интерфейс предназначен для соединения устройств различных классов - памяти прямого и последовательного доступа, CD-ROM, оптических дисков однократной и многократной записи, устройств автоматической смены носителей информации, принтеров, сканеров, коммуникационных устройств и процессоров. Устройством SCSI (SCSI Device) - называется как хост-адаптер, связывающий шину SCSI с какой-либо внутренней шиной компьютера, так и контроллер целевого устройства - target controller, с помощью которого оно подключается к шине SCSI. С точки зрения шины все устройства могут быть равноправными и являться как инициаторами обмена, так и целевыми устройствами, однако чаще всего в роли инициатора выступает хост-адаптер. К одному контроллеру может подключаться несколько периферийных устройств, по отношению к которым контроллер может быть как внутренним, так и внешним. Широкое распространение получили периферийные устройства со встроенным контроллером SCSI (embeded SCSI controller), к которым, например, относятся накопители на жестких магнитных дисках, CD-ROM, стриммеры.
По физической реализации интерфейс является 8-битной параллельной шиной с тактовой частотой 5 МГц. Шина допускает подключение до 8 устройств, скорость передачи данных в первоначальной версии достигала 5 Мбайт/с. Впоследствии (1991 г.) появилась новая спецификация - SCSI-2, расширяющая возможности шины как в количественных, так и в качественных показателях. Тактовая частота шины Fast SCSI-2 достигает 10 МГц, а Ultra SCSI-2 - 20 МГц. Разрядность данных может быть увеличена до 16 бит - эта версия называется Wide SCSI-2 (широкий), а 8-битную версию назвали Narrow (узкий). 16-битная шина позволяет увеличивать число устройств до 16. Стандарт SCSI-2 определяет и 32-битную версию интерфейса, но такие устройства пока не распространены из-за неоправданно высокой стоимости интерфейса. Комбинации тактовой частоты и разрядности обеспечивают широкий диапазон пропускной способности, достигающей 40 Мбайт/с для реальной версии Ultra Wide SCSI-2.
Спецификация SCSI-2 определяет систему команд, которая включает набор базовых команд, обязательных для всех периферийных устройств, и специфических команд для периферии различных классов. Стандарт полностью описывает протокол взаимодействия устройств на шине, включая структуры передаваемой информации. Поддержка устройствами возможности исполнения цепочек команд, очередей (до 256 команд) и независимости их работы друг от друга обуславливают высокую эффективность применения SCSI в многозадачных системах. Возможность присутствия на шине более одного контроллера (инициатора обмена) позволяет обеспечить разделяемое использование периферии несколькими компьютерами, подключенными к одной шине.
SCSI-3 - дальнейшее развитие стандарта, направленное на увеличение количества подключаемых устройств, спецификацию дополнительных команд, поддержку Plug and Play. SCSI-3 существует в виде широкого спектра документов, определяющих отдельные стороны интерфейса. Транспортный уровень может использовать различные протоколы с соответствующей поддержкой физических соединений:
· SIP (SCSI-3 Interlocked Protocol) - протокол обмена традиционного интерфейса, физически реализуемый параллельным интерфейсом SCSI.
· FCP (Fibre Channel Protocol) - протокол оптоволоконного канала с соответствующим физическим уровнем FC-PH со скоростью передачи данных 100 Мбайт/с.
· SBP (Serial Bus Protocol) - протокол последовательной шины, реализуемый интерфейсом 1394 (FireWire).
· GPP (Generic Packetized Protocol) - обобщенный пакетный протокол, реализуемый любым пакетным интерфейсом.
· SSP (Serial Storage Protocol) - последовательный протокол памяти.
Современные устройства с интерфейсом SCSI выпускаются в соответствии со стандартом SCSI-2 или SCSI-3. В отличие от стандарта SCSI-2, который явно подразумевал более высокую производительность шины и устройств, чем SCSI-1, заявка о поддержке устройством стандарта SCSI-3 непосредственно на повышение производительности не указывает. Эта заявка прямо означает лишь соответствие новому поколению документов. Однако всвязи с общей тенденцией к росту производительности устройства SCSI-3 в большинстве случаев показывают более высокую производительность, чем SCSI-2. Стандарт SCSI-3 предполагает различные варианты протокольного и физического уровня интерфейса, включающие как параллельные, так и последовательные шины.
Для параллельных шин скорость передачи данных определяется частотой передач, измеряемой в миллионах передач за секунду - MT/sec (Mega Transfer/sec) и разрядностью. Название SCSI Fast указывает на частоту передач 10 MT/sec, временные диаграммы для такого режима определены в SCSI-2. Название SCSI Fast-20 указывает на частоту передач 20 MT/sec. Этот режим, более известный как SCSI Ultra, определен для параллельного интерфейса в SCSI-3. SCSI Fast-40 указывает на частоту передач 40 MT/sec. Этот режим, определенный в SCSI-3 и называемый как Ultra2 SCSI, в настоящее время является самым быстрым для параллельной шины. Он реализован только в низковольтной дифференциальной версии интерфейса LVD. Для будущих версий стандарта в SCSI-3 заложен режим и SCSI Fast-80, но говорить о его реализации еще преждевременно. Изначально разрядность шины SCSI составляла 8 бит в “узкой”(Narrow) версии. "Широкий" (Wide) вариант шины, появившийся с SCSI-2, имеет разрядность 16-бит (32-битные расширения не распространены). Скорость передачи данных для различных вариантов параллельной шины приведена в таблице 1.
|