Внешние интерфейсы
Они подразделяются на две категории: параллельные и последовательные.
Параллельные интерфейсы характеризуются тем, что имеется группа линий связи, по которым одновременно периодически передаётся байт или другая единица информации.
7.2.1. Параллельный порт РС.
Исторически старейшим параллельный порт РС является асинхронный радиальный порт LPT. Он был применён для подключения печатающего устройства - принтера и получил название Line PrinTer - построчный принтер (LPT). В свою очередь в принтерах был применён однонаправленный интерфейс - Сentronics.n Максимальная длина - 4м .Пропускная способность 0,6 – 1,5 Мбит/с
Однако в дальнейшем после введения стандарта IЕЕЕ 1284 (1994г) возможности порта были значительно расширены. Режимы задаются в BIOS, в котором можно задать следующие режимы работы: SPP, ЕРР и ЕСР.
SPP - режим совместимости: стандартный однонаправленный программно-управляемый режим (Сentronics).
Сигнальные линии Сentronics разделяются на три группы:
1. Линии передачи данных от контроллера к устройству
2. Линии управления от контроллера к принтеру (устройству
3. Линии состояния от устройства к контроллеру
Программное управление LPT.
Стандартный LPT поддерживается тремя байтными регистрами, адресуемыми относительно трёх базовых адресов (BASE)
LPT1: BASE=2BCh; LPT2: BASE=378h; LPT3: BASE=278h;
BASE - регистр данных - запись
BASE+1 - регистр состояния - чтение
BASE+2 - регистр управления - запись
Физически регистры расположены в контроллере
Линии интерфейса отображаются в регистрах след. образом
Регистр данных (Data Register - DR) "Data": DR(7:0) - сигналы данных
Регистр управления (Control Register - CR)
"Strobe": (СR0)- сигнал строба данных (данные действительны)
"Auto Feed": (CR1) - признак для автоматического перевода строки
"Init": (CR2)- сигнал сброса в исходное состояние (в том числе возврат каретки)
"Select In": (CR3) - признак выбора устройства (только при нали чии этого сигнала устройство реагирует на остальные)
Регистр состояния (Status Register - SR) "Selekt": SR4 - признак "устройство выбрано"
"Busy": SR7 - сигнал "устройство занято" (устанавливается после получения строба данных, сброс является сигналом контроллеру для посылки следующего байта)
"Ack": SR6 - сигнал подтверждения данных (завершение приёма байта, запрос следующего)
"Paper End": SR5 - признак отсутствия бумаги
"Error": SR3 - признак любой ошибки (в том числе отсутствие бумаги)
ЕРР - (Enhenced - улучшенный PP): двунаправленный полудуплексный байтный режим с аппаратным формированием протокола интерфейса.
ЕСР - (Extended Cahability Port)- с расширенными возможностями). Протокол предусматривает как использования режима SPP, так и полубайтного режима (с использованием для чтения линий состояния), двунаправленного байтного режима с программным формированием протокола интерфейса (ЕРР) и собственно ЕСР: с использованием стека (FIFO), ПДП и с возможностью аппаратного сжатия данных методом RLE (Ran Length Encoding).
ЕСР+ЕРР - тоже, что и ЕСР, но с возможностью установки и режима ЕРР.
Рассмотрим работу в режиме ЕРР.
Предусмотрены четыре операции
- запись данных
- чтение данных
- запись адреса
- чтение адреса
Выходные линии от контроллера к внешнему устройству.
- признак запись/чтение
- сигнал строба данных
- сигнал строба адреса
- сигнал сброса
Двунаправленная шина адреса/данных (подключена как регистру данных, так и к регистру адреса).
Входные линии от ВУ
- сигнал ожидания данных/адреса ( при наличии этого сигнала строб может воспринимается , а в отсутствии блокируется).
- сигнал запроса прерывания (состояние SR6 ).
Операция записи данных состоит из следующих шагов
1. Программная запись в порт BASE+4.
2. Аппаратно формируется сигнал записи
3. После появления сигнала ожидания формируется фронт строба данных.
4. После снятия сигнала ожидания формируется спад строба данных
Согласование режимов ЕСР.
Для определения режимов и методов управления конкретным устройством протокол предусматривает последовательность согласования режима работы контроллера со способностями ВУ.
Последовательность выполняется таким образом, что устройства, не поддерживающие стандарт, на неё не ответят и контроллер будет работать в режиме интерфейса Сentronics, а устройства не поддерживающие предложенный режим, его отвергнут.
Предполагается, что исходным (дежурным) режимом работы является режим интерфейса ЕСР. В этом режиме контроллер (хост) выставляет на линии данных "байт расширяемости", запрашивая подтверждение на перевод ВУ в требуемый режим или на приём идентификатора ВУ.
Последовательность согласования состоит из программного формирования определённых сигналов управления из состава операций Сentronics и анализа реакции на них ВУ.