6.5. Архитектура программируемого параллельного адаптера (ППА) КР580ВВ55А

Микросхема КР580ВВ56А – программируемое устройство ввода/вывода параллельной информации (ППА), которое применяется в качестве элемента ввода/вывода общего назначения, сопрягающего различные типы периферийных устройств с магистралью данных систем обработки информации.

Условное графическое обозначение микросхемы приведено на рис. 6.22, структурная схема показана на рис. 6.23.

Обмен информацией между магистралью данных систем и микросхемой КР580ВВ55А осуществляется через 8–разрядный двунаправленный трехстабильный канал данных (D). Для связи с периферийными устройствами используются 24 линии ввода/вывода, сгруппированные в три 8–разрядых канала ВА, ВВ, ВС, направление передачи информации и режимы работы которых определяются программным способом.

Микросхема может функционировать в трех основных режимах:

1) режим 0 – обеспечивается возможность синхронной программно управляемой передачи данных через два независимых 8–разрядных канала ВА и ВВ и два 4–разрядных канала ВС.

2) режим 1 – обеспечивается возможность ввода или вывода информации в/или из периферийного устройства через два независимых 8–разрядных канала ВА и ВВ по сигналам квитирования. При этом линии канала С используются для приема и выдачи сигналов управления обменом.

3) режим 2 – обеспечивается возможность обмена информацией с периферийными устройствами через двунаправленный 8–разрядный канал ВА по сигналам квитирования. Для передачи и приема сигналов управления обменом используются пять линий канала ВС. Выбор соответствующего канала и направление передачи информации через канал определяются сигналами А0, А1 (соединяемые обычно младшими разрядами канала адреса системы) и сигналами RD, WR, CS в соответствии с табл. 6.7.

Таблица 6.7

Сигналы на входах

Направление передачи информации

A0

A1

RD

WR

CS

0

0

0

1

0

ВА → канал данных

0

1

0

1

0

ВВ → канал данных

1

0

0

1

0

ВС → канал данных

0

0

1

0

0

Канал данных → ВА

0

1

1

0

0

Канал данных → ВВ

1

0

1

0

0

Канал данных → ВС

1

1

1

0

0

Канал данных → РУС

Х

Х

Х

Х

1

Канал данных → Z состояние

1

1

0

1

0

Запрещенная комбинация

Режим работы каждого из каналов ВА, ВВ, ВС определяется содержимым регистра управляющего слова (РУС). Произведя запись управляющего слова в РУС, можно перевести микросхему в один из трех режимов работы: режим 0 – простой ввод/вывод; режим 1 – стробируемый ввод/вывод; режим 2 – двунаправленный канал.

При подаче сигнала SR РУС устанавливается в состояние, при котором все каналы настраиваются на работу в режиме 0 для ввода информации. Режим работы каналов можно изменять как в начале, так и в процессе выполнения программы, что позволяет обслуживать различные периферийные устройства в определенном порядке одной микросхемой. При изменении режима работы любого канала все входные и выходные регистры каналов и триггеры состояния сбрасываются. Графическое представление режимов работы каналов показано на рис. 6.24, а формат управляющего слова (УС), определяющего режимы работы каналов, приведен на рис. 6.25.

В дополнение к основным режимам работы схема обеспечивает возможность программной независимой установки в 1 и сброса любого из разрядов регистра канала ВС.

Формат управляющего слова установки / сброса регистра канала ВС показан на рис. 6.26.

Если микросхема запрограммирована для работы в режиме 1 или 2, то через выводы ВС0 и ВСЗ канала ВС выдаются сигналы, которые могут использоваться как сигналы запросов прерывания для микропроцессора. Запретить или разрешить формирование этих сигналов в микросхеме можно установкой или сбросом соответствующих разрядов в регистре канала ВС. Эта особенность микросхемы позволяет программисту запрещать или разрешать обслуживание любого внешнего устройства ввода/вывода без анализа запроса прерывания в схеме прерывания системы.

При работе микросхемы в режиме 0 обеспечивается простой ввод или вывод информации через любой из трех каналов, и сигналов управления обменом информацией с периферийным устройством не требуется. В этом режиме микросхема представляет собой совокупность двух 8–разрядных и двух 4–разрядных каналов ввода/вывода. Для записи управляющего слова в микросхему используется временная диаграмма режима 0 – вывод.

В режиме 1 передача данных осуществляется только через каналы ВА и ВВ, а линии канала ВС используются для приема и выдачи сигналов управления обменом (сигналов квитирования).

Форматы управляющих слов и функциональные схемы каналов ВА и ВВ при вводе данных в режиме 1 показаны на рис. 6.27.

При подаче сигнала STB RC (стробирующий сигнал приема) низкого уровня данные записываются во входной регистр соответствующего канала.

Выходной сигнал ASK RS «Подтверждение приема» высокого уровня свидетельствует о том, что входные данные записаны во входной регистр канала.

Сигнал на выходе IRQ «Запрос прерывания» может использоваться для прерывания работы микропроцессора и устанавливается в состояние высокого уровня, если сигналы STB RC, ASK RC и RD в состоянии высокого уровня и соответствующий разряд регистра канала ВС, используемый как триггер разрешения выработки запроса прерывания по данному каналу, установлен в состояние высокого уровня. Сигнал IRQ сбрасывается в состояние низкого уровня при чтении информации из соответствующего канала.

Для разрешения выработки сигнала IRQ BA используется 4–й разряд регистра канала ВС, а для сигнала IRQ ВВ 2–й разряд регистра канала ВС.

Форматы управляющих слов и функциональные схемы каналов ВА и ВВ при выводе информации в режиме 1 показаны на рис. 6.28.

Сигнал низкого уровня на выходе STB WR (стробирующий сигнал записи) свидетельствует о том, что микропроцессор произвел запись данных в выходной регистр канала.

Сигнал низкого уровня на входе ASK WR (подтверждение записи) свидетельствует о том, что внешнее устройство приняло данные, записанные в микросхему.

Сигнал IRQ устанавливается в состояние высокого уровня, если сигналы STB WR, ASK WR в состоянии высокого уровня и соответствующий разряд регистра канала ВС, используемый как триггер разрешения выработки запроса прерывания по данному каналу, установлен в состояние высокого уровня. В состояние низкого уровня сигнал IRQ сбрасывается при переходе сигнала WR в состояние низкого уровня. Для разрешения выработки сигнала IRQ ВА используется 6–й разряд регистра канала ВС, а для сигнала IRQ ВВ 2–й разряд регистра канала ВС.

При работе микросхемы в режиме 2 обеспечивается возможность обмена информацией с периферийными устройствами только по 8–разрядному двунаправленному каналу ВА. Для обеспечения протокола обмена используется пять линий канала ВС.

Формат управляющего слова и функциональная схема ввода/вывода данных в режиме 2 показаны на рис. 6.29. Функции сигналов управления, используемых при передаче информации в режиме 2, и временные соотношения между ними такие же, как и в режиме 1.

В режиме 2 допускается любая последовательность передачи данных, при которой сигнал WR появляется раньше сигнала ASK WR ВА, а сигнал STB WR ВА – раньше сигнала RD.

Если микросхема запрограммирована для работы в режиме 1 или 2, то состояние каждого сигнала управления об установлении связи с периферийным устройством, принимаемого и выдаваемого через выводы канала ВС, фиксируется в регистре канала ВС. Это позволяет программисту простым чтением содержимого регистра канала ВС проверить состояние каждого периферийного устройства, подключенного к микросхеме, и в соответствии с состоянием внешнего устройства изменять процесс прохождения программы.

Для чтения информации состояния используется обычная операция чтения канала ВС.