Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IEEE-1284.doc
Скачиваний:
45
Добавлен:
30.01.2015
Размер:
401.92 Кб
Скачать

Режим совместимости (Compatibility Mode)

Этот режим определяет протокол, используемый большинством PC, для передачи данных на принтер. Он обычно называется "Centronics" режимом и является методом, используемым со стандартным параллельным портом. В этом режиме данные помещаются на линии данных порта, состояние принтера не проверяется ни на какие ошибки и на занятость (сигнал Busy), и затем программно формируется строб данных (Strobe) для тактирования принтера. Рисунок 1 описывает эту передачу.

Рисунок 1 — Цикл передачи данных в режиме совместимости

Фазовые Переходы Режима Совместимости:

1. Запись данных в регистр данных.

2. Программа читает регистр состояния, чтобы проверить принтер на занятость (BUSY).

3. Если принтер не занят, то производится запись в Регистр Управления, чтобы установить линию STROBE.

4. Производится запись в Регистр Управления, чтобы сбросить линию STROBE,

Как может быть замечено, для вывода одного байта данных требуется четыре I /O инструкции и много дополнительных инструкций. В результате полоса пропускания порта ограничена величиной примерно 150КБ в секунду.

Эта полоса пропускания достаточна для связи с матричными и наиболее старыми лазерными принтерами, но ее недостаточно для связи с LAN адаптерами, сменными приводами дисков и лазерными принтерами нового поколения. Конечно, этот режим допускает передачу только в прямом направлении и должен быть объединен с обратным режимом, чтобы иметь полный двунаправленный канал

Этот режим был включен в стандарт как способ обеспечить обратную совместимость с огромной массой установленных принтеров и периферийных устройств. Другие режимы используются для обеспечения обратной передачи и высокопроизводительной связи.

Многие объединенные 1284 I/O контроллеры осуществляют режим, который использует FIFO буфер, чтобы передать данные по протоколу режима совместимости. Этот режим называют "Быстрый Centronics" или "Режим FIFO Параллельного Порта". Когда установлен этот режим, данные, записываемые в FIFO порт, будут переданы принтеру с использованием аппаратных средств формирования стробов для подтверждения связи. Так как имеются очень небольшие времена ожидания между передачами и программное обеспечение не должно делать никакого стробирования или проверки квитирования, скорости передачи в некоторых системах достигают 500КБ в секунду. Этот режим, однако, не входит в стандарт IEEE 1284.

Полубайтный режим ввода (Nibble mode)

Полубайтный режим предназначен для двунаправленного обмена и может работать на всех стандартных портах. Порты имеют 5 линий ввода состояния, используя которые ПУ (периферийное устройство) может посылать в хост байт тетрадами (nibble — полубайт, 4 бита) за два приема. Сигнал Ack#, вызывающий прерывание, которое может использоваться в данном режиме, соответствует биту 6 регистра состояния, что усложняет программные манипуляции с битами при сборке байта. Поэтому программное обеспечение должно читать байт состояния и затем манипулировать битами, чтобы получить правильный байт. Сигналы порта приведены в таблице 1, временные диаграммы — на рисунке 2.

Таблица 1 — Сигналы в полубайтном режиме ввода

Сигнал SPP

Имя в полубайтном режиме

In / Out

Описание

nStrobe

nStrobe

Out

Не используется для обратной передачи данных

nAutoFd

HostBusy

Out

Ведущий сигнал квитирования в режиме тетрады. Низкий уровень указывает, что главный компьютер готов к передаче в режиме тетрады. Высокий уровень указывает, что тетрада была получена.

nSelectIn

1284 Active

Out

Устанавливается высокий уровень, когда компьютер находится в режиме передачи 1284.

nInit

nInit

Out

Не используется для обратной передачи данных

nAck

PtrClk

In

Низкий уровень указывает на готовность данных тетрады, высокий устанавливается в ответ на положительный перепад HostBusy.

busy

PtrBusy

In

Используется для бита данных 3, затем 7

PE

AckDataReq

In

Используется для бита данных 2, затем 6

Select

Xflag

In

Используется для бита данных 1, затем 5

nError

nDataAvail

In

Используется для бита данных 0, затем 4

Data [8:1]

Не используются

Рисунок 2. Цикл передачи в режиме тетрады.

Фазы передачи в полубайтном режиме по стандарту 1284:

1. Компьютер сообщает о готовности к приёму данных, устанавливая на HostBusy низкий уровень.

2. Периферийное устройство отвечает, помещая первую тетраду на линиях состояния.

3. Периферия сигнализирует о готовности тетрады, устанавливая на PtrClk низкий уровень.

4. Компьютер устанавливает на HostBusy высокий уровень, указывая, что он получил тетраду и еще не готов для приема другой тетрады.

5. Периферия устанавливает на PtrClk высокий уровень для подтверждения компьютеру.

Состояния от 1 до 5 повторяются для второй тетрады

Полубайтный режим, подобно режиму совместимости, требует, чтобы программное обеспечение управляло протоколом, устанавливая и читая сигналы на линиях параллельного порта. Полубайтный режим требует наиболее интенсивной работы программного обеспечения для обратной передачи. По этой причине, имеется серьезное ограничение приблизительно 50КБ в секунду для этого типа передачи данных. Главное преимущество этого режима — способность функционировать на всех PC, которые имеют параллельный порт. Ограничения производительности, имеющие место в полубайтном режиме, не имеют большого значение для периферийных устройств с небольшими требованиями к пропускной способности канала в обратном направлении, типа принтеров, но могут быть почти невыносимы для адаптеров локальной вычислительной сети, дисководов или CD-ROM.

Соседние файлы в предмете Интерфейсы Периферийных Устройств