8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 7 8 9 10 11 12 13 ... 131

Протокол ECP переопределяет сигналы SPP (табл. 1.8).

Контакт

Сигнал SPP

Имя в ECP

I/O

Описание

1

Strobe#

HostClk

О

Используется в паре с PeriphAck для передачи в прямом направлении (вывод)

14

AutoLF#

HostAck

о

Указывает тип цикла (команда/данные) при передаче в прямом направлении. Используется в паре с PeriphOk для передачи в обратном направлении

17

Selectln#

1284Active

о

Высокий уровень указывает на обмен в режиме IEEE 1284 (в режиме SPP уровень низкий)

16

lnit#

ReverseRequest#

о

Низкий уровень переключает канал на передачу в обратном направлении

10

Ack#

PeripnClk

I

Используется в паре с HostAck для передачи в обратном направлении

11

Busy

PeriphAck

I

Используется в паре с HostClk для передачи в обратном направлении. Индицирует тип команда/данные при передаче в обратном направлении

12

PaperEnd

AckReverse*

I

Переводится в низкий уровень как подтверждение сигналу ReverseRequest#

13

Select

Xflag*

I

Флаг расширяемости

15

Error#

PeriphRequest#*

I

Устанавливается ПУ для указания на доступность (наличие) обратного канала передачи*

2-9

Data [0:7]

Data [0:7]

I/O

Двунаправленный канал данных

* Сигналы действуют в последовательности согласования (см. далее).


Адаптер ЕСР тоже генерирует внешние протокольные сигналы квитирования аппаратно, но его работа существенно отличается от режима ЕРР.

На рис. 1.7а приведена диаграмма двух циклов прямой передачи: за циклом данных следует командный цикл. Тип цикла задается уровнем на линии HostAck: в цикле данных — высокий, в командном цикле — низкий. В командном цикле байт может содержать канальный адрес или счетчик RLE. Отличительным признаком является бит 7 (старший): если он нулевой, то биты 0-6 содержат счетчик RLE (0-127), если единичный — то канальный адрес. На рис. 1.76 показана пара циклов обратной передачи.

HostClk PeilphAck Data[0 7] " HostAck "

.3 .4

Байта

Данные

.ГЛ.

XZDC

Байт 1

Команда

Рис. 1.7. Передача в режиме ЕСР: а — прямая, б — обратная

В отличие от диаграмм обмена ЕРР, на рис. 1.7 не приведены сигналы циклов системной шины процессора. В данном режиме обмен программы с ПУ разбивается на два относительно независимых процесса, которые связаны через FIFO-буфер. Обмен драйвера с FIFO-буфером может осуществляться с использованием как DMA, так и программного


ввода-вывода. Обмен ПУ с буфером аппаратно выполняет адаптер ЕСР. Драйвер в режиме ЕСР не имеет информации о точном состоянии процесса обмена, но здесь обычно важно только то, завершен он или нет. Прямая передача данных на внешнем интерфейсе состоит из следующих шагов:

1.Хост помещает данные на шину канала и устанавливает признак цикла данных (высокий уровень) или команды (низкий уровень) на линии HostAck.

2.Хост устанавливает низкий уровень на линии HostClk, указывая на действительность данных.

3.ПУ отвечает установкой высокого уровня на линии PeriphAck.

4.Хост устанавливает высокий уровень линии HostClk, и этот перепад может использоваться для фиксации данных в ПУ.

5.ПУ устанавливает низкий уровень на линии PeriphAck для указания на готовность к приему следующего байта.

Поскольку передача в ЕСР происходит через FIFO-буферы, которые могут присутствовать на обеих сторонах интерфейса, важно понимать, на каком этапе данные можно считать переданными. Данные считаются переданными на шаге 4, когда линия HostClk переходит в высокий уровень. В этот момент модифицируются счетчики переданных и принятых байт. В протоколе ЕСР есть условия, вызывающие прекращение обмена между шагами 3 и 4. Тогда эти данные не должны рассматриваться как переданные.

Из рис. 1.7 видно и другое отличие ЕСР от ЕРР. Протокол ЕРР позволяет драйверу чередовать циклы прямой и обратной передачи, не запрашивая подтверждения на смену направления. В ЕСР смена направления должна быть согласована: хост запрашивает реверс установкой ReverseRequest#, после чего он должен дождаться подтверждения сигналом AckReverse#. Поскольку предыдущий цикл мог выполняться по прямому доступу, драйвер должен дождаться завершения прямого доступа или прервать его, выгрузить буфер FIFO, определив точное значение счетчика переданных байт, и только после этого запрашивать реверс.



0 ... 7 8 9 10 11 12 13 ... 131