Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по ВССиТ.doc
Скачиваний:
33
Добавлен:
14.02.2015
Размер:
692.22 Кб
Скачать
    1. Порты ввода-вывода

Среди системных ресурсов в архитектуре PCнаиболее дефицитными являются: линииIRQ, каналыDMA, адреса, они же порты, ввода-вывода (I/O ports) и так называемая «обыкновенная» память (conventionalmemory).

Запросы аппаратных прерываний IRQ(InterruptReQuests) — это сигналы, с помощью которых устройство, осуществляющее ввод-вывод данных (например, какой-либо контроллер), требует к себе внимания центрального процессора. СуществованиеIRQпозволяет прерывать работу процессора лишь при наличии такой необходимости со стороны устройства расширения. Без наличияIRQпроцессор должен был бы сам регулярно опрашивать все устройства для выявления их активности, что приводило бы к большим тратам процессорного времени.

Передаются IRQ посредством контроллеров прерываний РIС (ProgrammableInterruptController— программируемый контроллер прерываний 8 ног).

Каскадное «навешивание» 2-го контроллера позволяет реально иметь не 16, а 15 линий прерываний; кроме того, оно расстраивает приоритетность в назначении IRQ. В архитектуре PC, запросы IRQ с меньшими номерами обслуживаются раньше, нежели IRQ с большими номерами, а поскольку вторичный контроллер подключен через IRQ 2, то его прерывания (IRQ 8 — IRQ 15) наследуют приоритет IRQ 2 и оказываются «старше» IRQ3 — IRQ 7 первичного РIС ! Поскольку некоторые устройства особенно чувствительны к приоритетности прерываний, присвоение IRQ разным устройствам, вообще говоря, не произвольно. По этим причинам подключение третьего (и так далее) РIС недопустимо, так как это может совершенно запутать архитектуру PC.

Кроме IRQ, некоторые платы расширения требуют возможности прямого доступа к системной памяти — DMA (DirectMemoryAccess). Режим DMA позволяет устройству обмениваться данными с системной памятью напрямую, а не через центральный процессор, как это делается в режиме PIO (ProgrammableInput/Output— программный ввод/вывод). Возможность прямого доступа плат расширения к памяти в принципе делает систему более эффективной, но стандарт AT предусматривает только 7 каналов DMA (в IBM XT их было 4), что может служить еще одним источником конфликтов в системе.

Следующим дефицитным ресурсом PC-архитектуры являются порты памяти для устройств ввода-вывода (не следует путать их с физическими портами-соединителями, такими, как параллельный и последовательный!). Порты ввода-вывода — это некоторые зарезервированные группы адресов памяти, с их помощью центральный процессор находит устройство на системной шине и может осуществлять правильную адресацию ввода-вывода данных. Архитектура Intelпредусматривает для портов ввода-вывода специальное, отдельное от основной памяти, адресное пространство. Такая экономия была весьма разумна для той эпохи, когда вся системная память микрокомпьютера исчислялась единицами килобайт. Но сейчас, когда объем RAM-памяти на системной плате достигает десятков мегабайт, старая схема накладывает серьезные ограничения на свободу распределения адресов ввода-вывода.

Всего для адресации устройств ввода-вывода предусмотрено 16 адресных линий, что теоретически позволяет иметь 64 Кбайта адресного пространства для портов