Выбрать главу

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

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

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

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

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

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

Назначение контактов слотов шин ISA и EISA приведено в табл. 6.2 и 6.3.

Таблица 6.2. Основной разъем шин ISA-8, ISA-16 и EISA

Ряд В Ряд А
GND 1 IOCHK#
Reset 2 SD7
+5 В 3 SD6
IRQ2/9¹ 4 SD5
-5 В 5 SD4
DRQ2 6 SD3
-12 В 7 SD2
0WS#² 8 SD1
+12 В 9 SD0
GND 10 IOCHRDY
SMEMW# 11 AEN
SMEMR# 12 SA19
IOWR# 13 SA18
IORD# 14 SA17
DACK3# 15 SA16
DRQ3 16 SA15
DACK1# 17 SA14
DRQ1 18 SA13
REFRESH# 19 SA12
BCLK 20 SA11
IRQ7 21 SA10
IRQ6 22 SA9
IRQ5 23 SA8
IRQ4 24 SA7
IRQ3 25 SA6
DACK2# 26 SA5
TC 27 SA4
BALE 28 SA3
+5 В 29 SA2
Osc 30 SA1
GND 31 SA0