Шина расширения ISA
Рис. 8.4. Шина расширения ISA
Шина ISA (Industry Standart Architecture) – шина, применявшаяся с первых моделей PC и ставшая промышленным стандартом (рис. 8.4). В 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] во всей допустимой области 4 раза. В распоряжении абонентов шины ISA-8 может быть до шести линий запросов прерываний 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.
С появлением 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. На некоторых идеях конфигурирования шины EISA выросла спецификация PnP для шины ISA. Формат конфигурационных записей ESCD во многом напоминает формат NVRAM EISA. Таким образом, EISA – дорогая, но оправдывающая себя архитектура, применяющаяся в многозадачных системах, на файл-серверах и везде, где требуется высокоэффективное расширение шины ввода-вывода.
Дата добавления: 2019-10-16; просмотров: 617;