КОМПЬЮТЕРНОЕ ЖЕЛЕЗО
HARDWARE FOR PC

Параллельный интерфейс— LPT-порт



CR. 1 — Auto LF — единичное значение бита соответствует низкому уровню на выходе Auto LF# (14) — сигналу на автоматический перевод строки (LF — Line Feed) по приему байта возврата каретки (CR). Иногда сигнал и бит называют AutoFD или AutoFDXT.

CR.0 — Strobe — единичное значение бита соответствует низкому уровню на выходе Strobe* (1) — сигналу стробирования выходных данных.
Запрос аппаратного прерывания (обычно IRQ7 или IRQ5) вырабатывается по отри¬цательному перепаду сигнала на выводе 10 разъема интерфейса (Ack#) при уста¬новке CR. 4=1. Во избежание ложных прерываний контакт 10 соединен резистором с шиной +5 В. Прерывание вырабатывается, когда принтер подтверждает прием предыдущего байта. Как уже было сказано, BIOS это прерывание не использует и не обслуживает.
Перечислим шаги процедуры вывода байта по интерфейсу Centronics с указани¬ем требуемого количества шинных операций процессора.
1.
Вывод байта в регистр данных (1 цикл IOWR#).
2.
Ввод из регистра состояния и проверка готовности устройства (бит SR. 7 —
сигнал Busy). Этот шаг зацикливается до получения готовности или до сраба¬тывания программного тайм-аута (минимум 1 цикл IORD#).
3.
По получению готовности выводом в регистр управления устанавливается
строб данных, а следующим выводом строб снимается. Обычно, чтобы пере¬
ключить только один бит (строб), регистр управления предварительно считы-
вается, что к двум циклам IOWR# добавляет еще один цикл IORD#.
Видно, что для вывода одного байта требуется 4-5 операций ввода-вывода с реги¬страми порта (в лучшем случае, когда готовность обнаружена по первому чтению регистра состояния). Отсюда вытекает главный недостаток вывода через стандарт¬ный порт — невысокая скорость обмена при значительной загрузке процессора. Порт удается разогнать до скоростей 100-150 Кбайт/с при полной загрузке про¬цессора, что недостаточно для печати на лазерном принтере. Другой недостаток функциональный — сложность использования в качестве порта ввода.
Стандартный порт асимметричен — при наличии 12 линий (и бит), нормально работающих на вывод, на ввод работает только 5 линий состояния. Если необ¬ходима симметричная двунаправленная связь, на всех стандартных портах ра¬ботоспособен режим полубайтного обмена — Nibble Mode. В этом режиме, называ¬емом также Hewlett Packard Bi-tronics, одновременно принимаются 4 бита данных, пятая линия используется для квитирования. Таким образом, каждый байт пе¬редается за два цикла, а каждый цикл требует по крайней мере 5 операций ввода-вывода.

Hosted by uCoz