Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!Ответы по аппаратке.doc
Скачиваний:
7
Добавлен:
19.09.2019
Размер:
877.06 Кб
Скачать
  1. Шина isa, її параметри. Основні сигнали шини.

Шина ISA

ISABus (Industry Standard Architecture) — шина расширения, применявшаяся с первых моделей PC и ставшая промышленным стандартом. В компьютере XT использовалась шина с разрядностью данных 8 бит и адреса — 20 бит. В компь¬ютерах AT ее расширили до 16 бит данных и 24 бит адреса. В таком виде она существует и поныне. Конструктивно, как показано на рис. 12.1, шина выполне¬на в виде двух щелевых разъемов с шагом выводов 2,54 мм (0,1 дюйма). Под¬множество ISA-8 использует только 62-контактный слот (ряды А, В), в ISA-16 применяется дополнительный 36-контактный слот (ряды С, D). С появлением 32-битных процессоров делались попытки расширения разрядности шины, но все 32-битные шины ISA не являются стандартизованными, кроме EISA. Шина РС/104, разработанная для встраиваемых контроллеров на базе PC, отличается от обычной ISA только конструктивно.

Для шины ISA выпущено (и продолжает выпускаться) огромное количество разнообразных карт расширения. Ряд фирм выпускает карты-прототипы (Proto¬type Card), представляющие собой печатные платы полного или уменьшенного формата с крепежной скобой. На платах установлены обязательные интерфейс¬ные цепи — буфер данных, дешифратор адреса и некоторые другие. Остальная часть платы свободна, и здесь разработчик может разместить макетный вариант своего устройства. Эти платы удобны для проверки нового изделия, а также для шжт&жа. ед,шш.чных экземпляров устройства, когда разработка и изготовление печатной платы нерентабельно.

Шина ISA обеспечивает возможность обращения к 8- или 16-битным регист¬рам устройств, отображенным на пространства ввода-вывода и памяти, непосред¬ственно доступные по командам центрального процессора. Диапазон адресов па¬мяти для устройств ограничен областью верхней памяти UMA (AOOOO-FFFFFh), поскольку ниже и выше находится ОЗУ, расположенное на системной плате. Для шины ISA-16 настройками CMOS Setup может быть разрешено пространство между 15-м и 16-м мегабайтом памяти (при этом компьютер не сможет исполь¬зовать более 15 Мбайт ОЗУ). Процессоры х86 при адресации портов ввода-вы¬вода используют только 16 разрядов адреса, так что максимально возможный диапазон адресов ввода-вывода — OOOO-FFFFh. Для шины ISA диапазон адре¬сов ввода-вывода сверху ограничен количеством задействованных для дешифра¬ции бит адреса, нижняя область адресов O-FFh недоступна (зарезервирована под устройства системной платы). В PC была принята 10-битная адресация ввода-вывода, при которой линии адреса А[15:10] устройствами игнорировались. Та¬ким образом, диапазон адресов устройств шины ISA ограничивается областью 100h—3FFh, то есть всего 758 адресов 8-битных регистров. На некоторые из ад¬ресов претендуют стандартные устройства (см. п. 3.3). Впоследствии стали при¬менять 12-битную адресацию (диапазон lOOh-FFFh). При ее использовании при¬ходится учитывать возможность присутствия на шине старых 10-битных адапте¬ров, которые «отзовутся» на адрес с подходящими ему битами А[9:0] во всей допустимой области 12-битного адреса четыре раза (у каждого 10-битного адре¬са будет еще по три 12-битных псевдонима). Полный 16-битный адрес использу¬ется только в шинах EISA и PCI.

Шина ISA-8 может предоставить до 6 линий запросов прерываний, ISA-16 — 11. Часть из них могут «отобрать» устройства системной платы или шина PCI.

Шина ISA-8 позволяет использовать до трех 8-битных каналов DMA. На 16-битной шине доступны еще три 16-битных и один 8-битный канал.

В каждый момент времени шиной может управлять только одно устройство-задатчик, обращающееся к ресурсам (портам или ячейкам памяти) устройств-исполнителей. Основным задатчиком является контроллер шины, расположен¬ный на системной плате. Он формирует запросы к исполнителям по командам обращения к памяти или вводу-выводу, выполняемым центральным процессо¬ром по сигналам контроллера DMA и контроллера регенерации памяти. Задат¬чиком на некоторое время может стать устройство, захватившее управление ши¬ной через запрос по 16-битному каналу DMA. Такой режим работы устройства называют прямым управлением шиной (bus mastering). При этом канал DMA при¬меняется для арбитража шины, а адаптер bus-master формирует все адресные и управляющие сигналы шины, не забывая передать управление шиной процессо¬ру не позднее, чем через 15 мкс (чтобы не нарушить регенерацию памяти).

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

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

ш Назначенную линию IRQx или DRQx устройство должно держать на низ¬ком уровне в пассивном состоянии и переводить в высокий уровень для активации запроса. Неиспользуемыми линиями запросов устройство уп¬равлять не имеет права, они должны быть электрически откоммутированы или подключаться к буферу, находящемуся в третьем состоянии. Одной линией запроса может пользоваться только одно устройство. Такая неле¬пость (с точки зрения схемотехники ТТЛ) была допущена в первых PC и из требований совместимости тиражируется до сих пор.

Задача распределения ресурсов для старых адаптеров решалась с помощью джамперов, затем появились программно конфигурируемые устройства, которые вытесняются автоматически конфигурируемыми платами РпР (см. п. 12.4).

Назначение контактов слотов шин ISA и EISA приведено в [4].

Прямой доступ к памяти позволяет абоненту шины организовывать обмен данными между своим регистром и памятью под управлением контроллера DMA, минуя центральный процессор. До выполнения обмена канал DMA должен быть инициализирован — задан начальный адрес и размер пересылаемого блока па¬мяти, направление и режим обмена. После инициализации канала обмен выпол¬няется по инициативе ПУ.

Для интерфейса ПУ каждый канал DMA представляется парой сигналов: за¬прос обмена — DRQx и подтверждение обмена — DACKx#, где х — номер исполь¬зуемого канала. На рис. 12.2 приведена диаграмма стандартного цикла передачи байта (для 8-битного канала) или слова (для 16-битного) от ПУ в память по каналу DMA.

Диаграмма обратной пересылки (из памяти в ПУ) отличается только тем, что на месте сигнала IOR# будет сигнал MEMR#, а на месте MEMW# — сигнал IOW#. Направление обмена и параметры режима задаются программированием контрол¬лера DMA.

Напомним, что по 8-битным каналам DMA за один сеанс настройки контрол¬лера можно передавать не более 64 К байт данных, начинающихся с любого ад¬реса (но с учетом границ страниц, см. п. 3.5). По 16-битным каналам за сеанс можно передавать не более 64К слов данных, начинающихся с четного адреса, и границы страниц иные. Используя DMA в режимах, отличных от одиночного, длительность непрерывной передачи не должна превышать 15 мкс (для обеспе¬чения регенерации памяти).

В случае прямого управления шиной (bus mastering) инициатором обмена ста¬новится контроллер какого-либо устройства или интерфейса, но не процессор и не канал DMA. Прямое управление позволяет контроллеру, не отвлекая цент-

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

На шине ISA имеются линии запросов маскируемых и немаскируемых аппа¬ратных прерываний. Линии запросов маскируемых прерываний IRQ2-IRQ7 посту¬пают на входы первичного контроллера прерываний, IRQ9-IRQ15 — на входы вто¬ричного. Контакт В4 (IRQ2/9) запрос IRQ2 вырабатывал только у машин РХ/ХТ. На всех современных машинах (класса AT) он является запросом IRQ9, хотя на многих адаптерах (всех 8-битных) он обозначается как IRQ2.

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

Способ подачи сигнала прерывания, принятый в ISA — чувствительность к уровню, причем к высокому, — имеет меньшую помехозащищенность, чем сраба¬тывание по отрицательному перепаду, и отрезает путь к нормальному разделе¬нию (совместному использованию) линий запросов.

Линия ЮСНК# позволяет вызывать немаскируемое прерывание (NMI), на ко¬торое процессор реагирует вне зависимости от каких-либо флагов. Это прерыва¬ние принято использовать для сообщения о серьезных ошибках, требующих ре¬акции системы, но не для регулярной работы. Вызов NMI от данной линии раз¬решается установкой бита 3 (EIC) системного порта 061h, а признаком того, что NMI вызвано сигналом ЮСНК#, является единичное значение бита 6 (ЮСНК) того же порта.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]