Контакт | Сигнал SPP | Имя в EPP | I/O | Описание |
---|---|---|---|---|
1 | Strobe# | Write# | O | Низкий уровень — цикл записи, высокий — цикл чтения |
14 | AutoLF# | DataStb# | O | Строб данных. Низкий уровень устанавливается в циклах передачи данных |
17 | SelectIn# | AddrStb# | O | Строб адреса. Низкий уровень устанавливается в адресных циклах |
16 | Init# | Reset# | O | Сброс ПУ (низким уровнем) |
10 | Ack# | INTR# | I | Прерывание от ПУ |
11 | Busy | Wait# | I | Сигнал квитирования. Низкий уровень разрешает начало цикла (установку строба в низкий уровень), переход в высокий — разрешает завершение цикла (снятие строба) |
2-9 | Data[0:7] | AD[0:7] | I/O | Двунаправленная шина адреса/данных |
12 | PaperEnd | AckDataReq¹ | I | Используется по усмотрению разработчика периферии |
13 | Select | Xflag¹ | I | Используется по усмотрению разработчика периферии |
15 | Error# | DataAvail#¹ | I | Используется по усмотрению разработчика периферии |
¹ Сигналы действуют в последовательности согласования (см. ниже).
EPP-порт имеет
Таблица 1.5. Регистры EPP-порта
Имя регистра | Смещение | Режим | R/W | Описание |
---|---|---|---|---|
SPP Data Port | +0 | SPP/EPP | W | |
SPP Status Port | +1 | SPP/EPP | R | |
SPP Control Port | +2 | SPP/EPP | W | |
EPP Address Port | +3 | EPP | R/W | |
EPP Data Port | +4 | EPP | R/W | |
Not Defined | +5…+7 | EPP | N/A | В некоторых контроллерах могут использоваться для 16-32-битных операций ввода-вывода |
В отличие от программно-управляемых режимов, описанных выше, внешние сигналы EPP-порта для каждого цикла обмена формируются аппаратно по одной операции записи или чтения в регистр порта. На рис. 1.3 приведена диаграмма
Рис. 1.3. Цикл записи данных EPP
Цикл записи данных состоит из следующих фаз.
1. Программа выполняет цикл вывода (IOWR#
) в порт 4 (EPP Data Port
).
2. Адаптер устанавливает сигнал Write#
(низкий уровень), и данные помещаются на выходную шину LPT-порта.
3. При низком уровне Wait#
устанавливается строб данных.
4. Порт ждет подтверждения от ПУ (перевода Wait#
в высокий уровень).
5. Снимается строб данных — внешний EPP-цикл завершается.
6. Завершается процессорный цикл вывода.
7. ПУ устанавливает низкий уровень Wait#
, указывая на возможность начала следующего цикла.
Пример адресного
Рис. 1.4. Адресный цикл чтения EPP
Главной отличительной чертой EPP является выполнение внешней передачи во время одного процессорного цикла ввода-вывода. Это позволяет достигать высоких скоростей обмена (0,5–2 Мбайт/с). ПУ, подключенное к параллельному порту EPP, может работать со скоростью устройства, подключаемого через слот ISA.