| Контакт | Сигнал 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.