Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

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

 обмене  данными   и
обеспечивается   производительность,   достигающая   2    Мбайт/с,    вполне
достаточная и для адаптеров локальных сетей, внешних  дисков,  стриммеров  и
CD-ROM. Адресные циклы БРР всегда выполняются только  в  однобайтном  режиме
обращения.
Важной чертой ЕРР является то,  что  обращение  процессора  к  периферийному
устройству осуществляется в реальном  времени.  Программный  драйвер  всегда
способен наблюдать состояние и подавать команды в  точно  известные  моменты
времени. Циклы чтения и записи могут  чередоваться  в  произвольном  порядке
или  идти  блоками.  Такой  тип  обмена  наиболее  пригоден  для   регистро-
ориентированной периферии или периферии, работающей  в  реальном  времени  —
сетевых  адаптеров,  устройств  сбора  информации  и  управления,   дисковых
устройств и т. п.

                                  Режим ЕСР

Протокол ЕСР (Extended Capability Port — порт с расширенными  возможностями)
был предложен фирмами Hewlett Packard и Microsoft  как  прогрессивный  режим
связи с периферией типа принтеров и сканеров. Как  и  ЕРР,  данный  протокол
обеспечивает высокопроизводительный двунаправленный обмен  данными  хоста  с
периферийными устройствами.
Протокол ЕСР в обоих направлениях обеспечивает два типа циклов:
••• Циклы записи и чтения данных.  Командные циклы записи и чтения.
Командные циклы подразделяются на два типа:  передача  канальных  адресов  и
счетчика RLC (Run-Length Count).
В отличие от ЕРР вместе с  протоколом  ЕСР  сразу  появился  и  стандарт  на
программную (регистровую)  модель  реализации  его  адаптера,  изложенный  в
документе «The  IEEE  1284  Extended  Capabilities  Port  Protocol  and  ISA
Interface   Standard»   компании   Microsoft.   Этот   документ   определяет
специфические свойства реализации протокола,  не  заданные  стандартом  IEEE
1284: компрессия данных хост-адаптером по методу RLE;
••• буферизация FIFO для прямого  и  обратного  каналов:  применение  DMA  и
программного ввода/вывода.
Компрессия в реальном времени по методу RLE (Run-Length Encoding)  позволяет
достичь коэффициента сжатия до 64:1 при передаче растровых изображений.
Канальная адресация  ЕСР  применяется  для  адресации  множества  логических
устройств,  входящих  в  одно  физическое.   Например,   в   комбинированном
устройстве факс/принтер/модем, подключаемом только  к  одному  параллельному
порту, возможен одновременный прием факса и печать на принтере.
Как и в других режимах 1284, протокол ЕСР переопределяет сигналы SPP  (табл.
8).
                                                                  Таблица 8.
                 Сигналы LPT-порта в режиме ввода/вывода ЕСР
|Конта|Сигнал  |Имя в ЕСР  |I/|Описание                              |
|кт   |SPP     |           |O |                                      |
|1    |STROBE» |HortClk    |0 |Используется в паре с PeriphAck для   |
|     |        |           |  |передачи в прямом направлении (вывод) |
|14   |AUTOFEED|HostAck    |0 |Индицирует тип команда/данные при     |
|     |#       |           |  |передаче в прямом направлении.        |
|     |        |           |  |Используется в паре с PeriphClk для   |
|     |        |           |  |передачи в обратном направлении       |
|17   |SELECTIN|1284Active |О |Высокий уровень указывает на обмен в  |
|     |G       |           |  |режиме IEEE 1284. (В режиме SPP       |
|     |        |           |  |уровень низкий)                       |
|16   |INIT#   |ReverseRequ|О |Низкий уровень переключает канал на   |
|     |        |est#       |  |передачу в обратном направлении       |
|10   |ACK#    |PeriphClk  |I |Используется в паре с HostAck для     |
|     |        |           |  |передачи в обратном направлении       |
|11   |BUSY    |PeriphAck  |1 |Используется в паре с HostClk для     |
|     |        |           |  |передачи в обратном направлении.      |
|     |        |           |  |Индицирует тип команда/ данные при    |
|     |        |           |  |передаче в обратном направлении       |
|12   |PE      |AckReverse#|I |Переводится в низкий уровень как      |
|     |        |           |  |подтверждение сигналу ReverseRequestff|
|13   |SELECT  |Xflag*     |I |Флаг расширяемости Extensibility flag |
|15   |ERROR»  |PeriphReque|I |Устанавливается ПУ для указания на    |
|     |        |st#*       |  |доступность (наличие) обратного канала|
|     |        |           |  |передачи*                             |
|2-9  |Data[0:7|Data[0:7]  |I/|Двунаправленный канал данных          |
|     |]       |           |O |                                      |


* Сигналы действуют в последовательности согласования (см. ниже).
Адаптер  ЕСР  тоже  генерирует  внешние  протокольные  сигналы  квитирования
аппаратно.
Прямая передача данных на внешнем интерфейсе состоит из следующих шагов:
1. Хост помещает данные на шину канала и устанавливает признак цикла  данных
(высокий уровень) или команды (низкий уровень) на линии HostAck.
2.  Хост  устанавливает  низкий  уровень  на  линии  HostClk,  указывая   на
действительность данных.
3. ПУ отвечает установкой высокого уровня на линии PeriphAck.
4. Хост устанавливает высокий уровень линии HostClk, и  этот  перепад  может
использоваться для фиксации данных в ПУ.
5. ПУ устанавливает низкий  уровень  на  линии  PeriphAck  для  указания  на
готовность к приему следующего байта.
Поскольку  передачи   в   ЕСР   разделены   FIFO-буферами,   которые   могут
присутствовать на обеих сторонах интерфейса, важно понимать, на каком  этапе
данные можно будет считать  переданными.  Данные  считается  переданными  на
шаге 4, когда линия HostClk переходит  в  высокий  уровень.  В  этот  момент
модифицируются счетчики переданных и принятых байт.
Обратная передача данных состоит из следующих шагов:
1.  Хост  запрашивает  изменение  направления  канала,  устанавливая  низкий
уровень  на  линии  ReverseRequestff.  2  ПУ  разрешает  смену   направления
установкой низкого уровня на линии Ack-Reverse#.
3. ПУ помещает данные на шину канала и устанавливает  признак  цикла  данных
(высокий уровень) или команды (низкий уровень) на линии PeriphAck.
4.  ПУ  устанавливает  низкий  уровень  на  линии  PeriphClk,  указывая   на
действительность данных.
5. Хост отвечает установкой высокого уровня на линии HostAck.
6. ПУ устанавливает высокий уровень линии PeriphClk, и  этот  перепад  может
использоваться для фиксации данных хостом.
7. Хост устанавливает низкий  уровень  на  линии  HostAck  для  указания  на
готовность к приему следующего байта.
Согласование режимов IEEE 1284
Периферийные  устройства  в  стандарте  IEEE  1284  обычно  не  требуют   от
контроллера  реализации  всех  режимов,  предусмотренных   стандартом.   Для
определения режимов и методов  управления  конкретным  устройством  стандарт
предусматривает последовательность согласования (negotiation  sequence)  для
установки требуемого режима интерфейса.
Во время фазы  согласования  контроллер  выставляет  на  линии  данных  байт
расширяемости (Extensibility  byte),  запрашивая  подтверждение  на  перевод
интерфейса  в  требуемый  режим  или  прием   идентификатора   периферийного
устройства (табл. 11). Идентификатор передается  контроллеру  в  запрошенном
режиме (любой режим обратного  канала,  кроме  ЕРР).  ПУ  использует  сигнал
Xflag  (Select  в  терминах  SPP)  для  подтверждения  запрошенного   режима
обратного  канала,  кроме  полубайтного.  Полубайтный  режим  поддерживается
всеми устройствами IEEE 1284. Бит Extensibility  Link  request  заложен  для
механизма  определения  дополнительных   режимов   в   будущих   расширениях
стандарта.
                                                                Таблица. 11.

                      Значение бит байта расширяемости

|Би|Описание                                 |Допустимые комбинации бит|
|т |                                         |[7:0]                    |
|7 |Request Extensibility Link — запрос для  |1000 0000                |
|  |будущих расширений                       |                         |
|6 |Запрос режима ЕРР                        |0100 0000                |
|5 |Запрос режима ЕСР с RLE                  |ООН 0000                 |
|4 |Запрос режима ЕСР Mode без RLE           |0001 0000                |
|3 |Резерв                                   |0000 1000                |
|2 |Запрос идентификатора устройства с       |                         |
|  |ответом в режиме:                        |                         |
|  |Nibble Mode (полубайтный)                |0000 0100                |
|  |Byte Mode (байтный)                      |0000 0101                |
|  |ЕСР без RLE                              |0001 0100                |
|  |ЕСР с RLE                                |0011 0100                |
|1 |Резерв                                   |0000 0010                |
|0 |Запрос Byte Mode                         |0000 0001                |
|No|Запрос Nibble Mode                       |0000 0000                |
|ne|                                         |                         |

Последовательность согласования состоит из следующих шагов:
1. Хост выводит байт расширяемости на линии данных.
2. Хост устанавливает высокий уровень сигнала Selecting  и  низкий  —  Auto-
Feedft, что означает начало последовательности согласования.
3. ПУ 1284 ответит установкой низкого уровня  сигнала  Ackff  и  высокого  —
Errorft, РЕ и Select.
4. Хост устанавливает низкий  уровень  сигнала  Strobeff  для  записи  байта
расширяемости в ПУ.
5. Хост устанавливает высокий уровень сигналов Strobeff и AutoFeedff.
6. ПУ отвечает установкой в низкий уровень сигналов РЕ и Errorff,  если  оно
имеет обратный канал передачи данных. Если запрошенный режим  поддерживается
устройством, на  линии  Select  устанавливается  высокий  уровень, 
12345След.
скачать работу

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

 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ