— устройства, которые передают данные, это передатчики
— устройства, которые только принимают данные, это приемники
— устройства управления интерфейсом, это контроллер.
В интерфейсе используется инверсная логика, то есть логический 0 это Н-уровень, а логическая 1 это L-уровень.
Линии и сигналы интерфейса:
DIO1 – DIO8 – шина данных. Данные и команды передаются параллельным кодом. В команде содержится адрес устройства и приказ стать приемником или передатчиком. Адреса: Первичные (15) и вторичные (до 32).
Линии управления передачей:
DAV – данные доступны (действительны). Активный уровень показывает, что данные могут быть прочитаны (вырабатывает передатчик).
NRFD – не готов к приему данных. Его вырабатывает приемник – используется для синхронизации работы приемников, помогает согласовать медленные и быстрые устройства.
NDAC – данные не приняты (вырабатывает приемник).
Эти три сигнала используются при всех передачах данных.
Сигналы управления интерфейсом:
ATN – внимание, подает контроллер когда передает команду.
IFC – сброс (очистка) интерфейса, подает контроллер для сброса всех устройств.
SRQ – запрос обслуживания, подает устройство когда они требуют обслуживания.
REN – разрешение дистанционного управления – подает контроллер.
EOI – конец идентификации.
Передача данных: каждый байт данных (команды) сопровождается тремя байтами квитирования.
Протокол обмена интерфейса:
Сигналом DAV управляет передатчик, а NRFD и NDAC приемник. Низкий уровень DAV и данные на шине установлены и действительны.
Пусть контроллер установил передатчики и приемники, тогда все приемники формируют Н-уровень, NRFD – готов к приему (1). Передатчик выдает на шину данных данные, когда они стабильны выдается L-уровень на DAN (2). Приемники начинают принимать эти данные и вырабатывают NRFD = L-уровень (3). Во время приема данных каждый из приемников вырабатывает NDAC = L-уровень (4). Когда самый медленный приемник примет данные он освобождает линию и вырабатывает NDAC = Н-уровень, то есть все приемники приняли данные. Получив Н-уровень NDAC передатчик вырабатывает DAV = Н-уровень (5). Это значит, что данные на линии уже не доступны. После этого приемник вырабатывает L-уровень NDAC (6) и Н-уровень NRFD (7), то есть система готова к приему новых данных.