В состав микропроцессорного комплекта серии К580 входит специализированная БИС КР580ВВ55, называемая программируемым параллельным периферийным адаптером (ППА), и представляющая собой параллельный порт ввода-вывода (рис. 4.1).
Схема ППА размещена в пластмассовом корпусе с 40 выводами. Низкий уровень сигнала на управляющем входе доступа ВМ разрешает информационную связь процессора с ППА. При отсутствии сигнала ВМ и одного из сигналов ЧТ или ЗП линии данных находятся в высокоомном состоянии. По шине данных происходит не только обмен данными, но и засылка из процессора в ППА управляющих слов, определяющих основные режимы работы каналов ППА, а также передача в процессор информации о состоянии периферийного оборудования.
В составе ППА имеется три канала – А, В и С, образующих три 8-разрядных порта с различными характеристиками. Функциональное назначение каналов определяется кодом управляющего слова, которое загружается микропроцессором в регистр управления адаптером. Селекцию одного из трех каналов А, В или С (или регистра управляющего слова при загрузке адаптера) производят сигналы на адресных входах А1 и А0, подключенных к младшим разрядам шины адреса.
Направление обмена задают управляющие сигналы, поступающие на входы ЧТ или ЗП.
Каналы А и В состоят из 8-разрядных входных и выходных регистров с групповым управлением, т.е. все 8 разрядов сразу переводятся в режим ввода или вывода. Канал С разделен на два 4-разрядных подканала. Оба подканала в совокупности образуют 8-разрядный регистр.
В отличие от А и В канал С имеет не групповые цепи управления режимами, а поразрядное управление установкой и сбросом триггеров, образующих регистры обоих подканалов.
Режим работы каждого канала определяется содержимым регистра управляющего слова, в который заносится соответствующий код. Режимы каналов А и В устанавливаются независимо, а режим работы каждого подканала С зависит от режимов работы А и В. При каждом изменении режима работы любого канала все входные и выходные регистры сбрасываются в состояние 0. Внешние устройства системы подключаются непосредственно к выводам БИС ППА, т.е. каждый канал образует один порт. Это может быть как порт ввода, так и порт вывода, в зависимости от режима работы канала, задаваемого кодом управляющего слова. Комбинирование режимов работы каналов обеспечивает работу БИС параллельного интерфейса практически с любым периферийным оборудованием.
Работа каналов ППА возможна в трех режимах, обычно обозначаемых 0, 1 и 2.
В режиме 0 осуществляется асинхронный обмен данными с внешними устройствами через каналы А, В и оба подканала С без управляющих сигналов о готовности к работе и без подтверждения возможности обмена. Это означает, что данные, выводимые из микропроцессора по командам вывода, фиксируются в соответствующих регистрах ППА, а затем по линиям связи передаются во внешние устройства. Данные хранятся в ППА до выполнения центральным процессором очередной команды вывода, после чего записанная в портах информация обновляется. В режиме ввода данные считываются в аккумулятор микропроцессора по команде ввода из соответствующего порта. Поэтому изменение данных, поступающих из внешних устройств в интервалах между обращениями микропроцессора к портам, никак не отражается на работе системы управления.
Обычно режим 0 используется для ввода медленно меняющихся данных или каких-либо постоянных значений. При выводе в этом режиме на линиях каналов можно программно формировать сигналы, соответствующие заданным временным диаграммам. Иными словами, в этом режиме можно программно управлять различным периферийным оборудованием.
В режиме 1 обмен данными между процессором и внешними устройствами, подключенными к каналам А и В (или одному из них), происходит под управлением сигналов, формируемых в канале С, который используется не как порт данных, а как буферный регистр для управления вводом-выводом. В этом режиме ППА может быть использован для системного обмена с подтверждением готовности (квитированием). В этом случае порты А и В образуют канал обмена
данными, а порт С используется для накопления и сохранения сигналов управления обменом. Ввод информации в порт осуществляется по стробирующему сигналу от внешнего устройства. При записи информации в порт формируется сигнал «Входной буфер полон» (ВхБП), запрещающий внешнему устройству ввод следующего слова до чтения центральным процессором содержимого буфера. Вывод информации в режиме 1 также сопровождается управляющими сигналами.
При организации прерываний любой из разрядов порта С может быть выбран разработчиком системы в качестве триггера формирования сигнала запроса прерывания ЗПР (INT) и триггера фиксации сигнала разрешения прерывания РПР (INTE). Программный доступ к разрядам порта С дает возможность программисту разработать различные процедуры обработки прерываний применительно к структуре микропроцессорной системы.
В режиме 2, как порт ввода-вывода, может работать только канал А. При этом канал В также может работать, но только в режиме 0 или 1. Линии канала А в режиме 2 приобретают свойство двунаправленности и поэтому могут быть подключены к внешнему устройству, также использующему двунаправленные линии (дуплексный обмен). Управляющие сигналы в режиме 2 такие же, как в режиме 1. Переводом линий канала А в режимы ввода и вывода управляют поступающие от внешних устройств сигналы «Строб приема» и «Разрешение приема». При их отсутствии линии канала А остаются в высокоомном состоянии.
При выполнении команд ввода или вывода микропроцессор устанавливает на линиях А7-А0 шины адреса номер порта, с которым должен происходить обмен. Разряды А7-А2 подаются на контроллер ввода-вывода (селектор микросхемы), выходной сигнал которого подается на вход —ВМ и определяет, какая из микросхем ППА должна быть активизирована. Младшие разряды шины адреса подключаются к выводам А1, А0 и определяют, по какому из каналов данного ППА будет происходить обмен (табл. 4.1). Так же задается и обращение к регистру управляющего слова при программировании адаптера.
Таблица 4.1