- •Казанский государственный технический университет
- •1. Интерфейсные бис
- •1.1. Параллельный периферийный интерфейс
- •1.2. Последовательный периферийный интерфейс
- •Форматы управляющих слов
- •2. Работа по прерываниям
- •– Подтверждение прерывания. Для приема сигналов подтверждения прерывания от цп. При переходе в режим прерывания цп выдает два активных импульса .
- •Кроме регистров управляющих контроллером в схему бис пкп входят:
- •1. Для инициализации бис пкп цп вводит следующие ассемблерные команды:
- •3. Прямой доступ к памяти
- •Контроллер пдп к1810 вт37
- •Контрольные вопросы и задания
- •4. Программируемый таймер к1810ви54
- •Список литературы
- •Содержание
1. Интерфейсные бис
Для подключения к шинам МПС внешних устройств (ВУ) используются интерфейсные БИС. Эти БИС позволяют организовать различные режимы обмена данными между центральным процессором и ВУ. Данные могут передаваться от ВУ (ввод) или к ВУ (вывод) в параллельном коде либо в последовательном. В первом случае применяется параллельный интерфейс связи, во втором – последовательный.
1.1. Параллельный периферийный интерфейс
В МПС, построенных на базе микропроцессора К1810, для организации обмена данными между ЦП и ВУ предназначен параллельный периферийный интерфейс (ППИ) БИС КР580ВВ55А. Это программируемое устройство, которое организует обмен 8-разрядными данными через 3 двунаправленных канала А, В и С. Направление обмена и режим работы каждого из каналов задаются программно. Каналы А и В не разделены, а линии канала С могут быть разделены на две четырехбитные группы, представляющие собой два независимых канала.
Структурная схема БИС КР580ВВ55А приведена на рис.1.1. В состав БИС ППИ входят:
8-разрядный двунаправленный трехстабильный буфер данных (БД), связывающий ППИ с системной шиной данных;
блок управления записью-чтением, обеспечивающий управление внешними и внутренними передачами данных, управляющих слов и информации о состоянии ППИ;
три 8-разрядных канала ввода-вывода А, В и С для обмена информацией с ВУ.
В канале А предусмотрены выходной регистр для приема данных с системной шины и выдачи их в ВУ и входной регистр для приема данных от ВУ и выдачи их на системную шину. В каналах В и С имеется по одному регистру, который обеспечивает передачу данных между ЦП и ВУ в требуемом направлении. Все каналы снабжены входными и выходными формирователями с тремя состояниями.
Error: Reference source not found
Рис. 1.1. Структурная схема БИС КР 580ВВ55А
В блоке управления находится регистр, называемый регистром управляющего слова (РУС). Настройка каждого из каналов ППИ на требуемый режим работы осуществляется засылкой управляющего слова из ЦП в РУС.
Управляющие сигналы выбора БИС ( ), чтения ( ) и записи ( ) подаются в блок управления ППИ. На выводы А1, А0 подключаются линии с адресной шины системного интерфейса. Информация на этих линиях определяет внутренний регистр ППИ, коммутируемый на шину данных:
00 – канал А,
01 – канал В,
10 – канал С,
11 – регистр управляющего слова.
Управляющие сигналы вместе с адресными сигналами А1 и А0 определяют вид операции, выполняемой ППИ в соответствии с табл.1.1, где Х – безразличное состояние сигнала.
Таблица 1.1
Операция |
|
|
|
А1 |
А0 |
Запись управляющего слова из ЦП |
0 |
1 |
0 |
1 |
1 |
Запись в канал А |
0 |
1 |
0 |
0 |
0 |
Запись в канал В |
0 |
1 |
0 |
0 |
1 |
Запись в канал С |
0 |
1 |
0 |
1 |
0 |
Чтение из канала А |
0 |
0 |
1 |
0 |
0 |
Чтение из канала В |
0 |
0 |
1 |
0 |
1 |
Чтение из канала С |
0 |
0 |
1 |
1 |
0 |
Отключение ППИ от шины данных |
1 |
X |
X |
X |
X |
Отметим назначение выводов ППИ, которые еще не рассматривались:
RESET – сброс БИС;
РА7 - РА0 – выводы для соединения канала А с ВУ;
РВ7 – РВ0 - выводы для соединения канала В с ВУ;
РС7 – РС0 - выводы для соединения канала С с ВУ;
Каналы ППИ могут работать в разных режимах. Предусмотрено три режима работы: режим 0, режим 1, режим 2. Канал А может работать в любом из трех режимов, канал В - в режиме 0 или 1. Канал С может быть использован для передачи данных только в режиме 0. В других режимах его
регистр используется как своеобразный регистр состояния.
Перед началом использования БИС проводят его инициализацию. Для этого определяют режим работы и направление передачи данных для каждого канала. Эту информацию кодируют и в виде управляющего слова заносят в РУС ППИ.
Формат управляющего слов приведен на рис.1.2. Значение бита D7=1 указывает, что ЦП посылает информацию в 7-разрядный регистр РУС ППИ.
Режимы работы каналов можно изменять как в начале, так и в процессе выполнения программы. Это позволяет обслуживать различные ВУ в определенном порядке одной БИС. При изменении режима работы любого канала регистры всех каналов сбрасываются.
Признак РУС - 1
Канал
С
Режим 0
0
0
Режим 1
0
1
Режим 2
1
0
0
Вывод
1
Ввод
Вывод
0
Ввод
1
0
Вывод
1
Ввод
Вывод
0
Ввод
1
0
Режим 0
1
Режим 1
Рис. 1.2. Формат управляющего слова
Режимы работы каналов ППИ.
Режим 0 (простой ввод-вывод).
В этом режиме может работать любой из каналов ППИ. Каждый канал может работать либо на ввод, либо на вывод данных в зависимости от указанного в управляющем слове направления передачи данных.
Если производится ввод, то регистр канала по сигналу коммутирует подключенное к каналу ВУ на шину данных системного интерфейса. Если выполняется вывод, то по сигналу информация с шины данных системного интерфейса появляется на выходах регистра канала. Канал С дополнительно может быть разделен на два четырехразрядных канала с выводами (РС7-РС4 и РС3-РС0). Сигналы квитирования в режиме 0 не формируются.
По сигналу сброса RESET регистр управляющего слова ППИ устанавливается в состояние, при котором все каналы настраиваются на работу в режиме 0 для ввода данных.
Режим 1 (стробируемый ввод-вывод)
В этом режиме могут работать каналы А и В. Выводы канала С используются для приема и выдачи сигналов управления (квитирования) обменом по каналам А и В, для выдачи сигналов запросов прерывания INTR в ЦП (для канала А – вывод РС3, для канала В – вывод РС0).
а)
INTR
б)
INTR
Рис. 1.3. Схема связи каналов ППИ с ВУ в режиме 1 (ввод):
а) канала А; б) канала В.
Структурные схемы связи ППИ с ВУ для работы каналов А и В в режиме 1 показаны на рис.1.3. (ввод) и на рис.1.4. (вывод).
Для операции ввода предназначены следующие управляющие сигналы:
-
(строб ввода) – входной сигнал от ВУ,
который загружает данные, поступающие
от ВУ, в регистр канала.
IBF (входной буфер загружен) – выходной сигнал подтверждения о загрузке данных в регистр канала.
INTR (запрос прерывания) – сигнал, выдаваемый в ЦП на прерывание.
Операцию вывода характеризуют такие три сигнала:
-
(выходной буфер загружен) – выходной
сигнал в ВУ о наличии данных на выходе
канала.
-
(подтверждение) – входной сигнал от ВУ,
подтверждающий получение данных из
канала ППИ.
INTR (запрос прерывания) – сигнал, выдаваемый в ЦП на прерывание.
а)
INTR
б)
INTR
Рис. 1.4. Схема связи каналов ППИ с ВУ в режиме 1 (вывод):
а) канала А; б) канала В
Незадействованные для управляющих сигналов выводы канала С могут быть использованы для ввода-вывода данных. Направление передачи по этим выводам определяется в управляющем слове.
Режим 2 (двунаправленная передача информации между ППИ и ВУ)
Режим 2 предназначен для двунаправленного обмена данными ЦП с ВУ только через канал А ППИ. При этом пять линий подключаемых к выводам канала С (РС7-РС3) выполняют функции управляющих сигналов (рис.1.5). В отличие от режимов 0 и 1 в режиме 2 направление передачи между каналом А и ВУ определяется не указаниями в управляющем слове, заносимым в РУС, а сигналами (вывод) или (ввод), определяющими направление передачи между ЦП и ППИ.
INTR
Рис. 1.5. Схема связи канала А ППИ в режиме 2 с ВУ
При работе каналов
в режимах 1 и 2 при вводе данных по
стробирующему сигналу приема (
),
равному 0, данные записываются во входной
регистр соответствующего канала.
Выходной сигнал подтверждения приема
( IBF), равный 1, свидетельствует
о том, что данные записаны в регистр
канала. Сигнал запроса прерывания INTR=1
информирует ЦП о завершении приема
информации в канале. Сигнал INTR
сбрасывается спадом сигнала
.
При выводе информации стробирующий сигнал записи ( ), равный 0, свидетельствует о том, что ЦП произвел запись данных в выходной регистр канала. Входной сигнал подтверждения записи ( ), равный 0, свидетельствует о том, что ВУ приняло данные. Сигнал INTR=1 информирует ЦП о завершении операции вывода информации из канала в ВУ. Сигнал INTR сбрасывается спадом сигнала .
При вводе или выводе в режимах 1 или 2 важным является определение ЦП момента, когда можно читать или выдавать данные. При вводе ЦП должен определить наличие данных, переданных ВУ, в регистре канала для того, чтобы их прочитать. При выводе ЦП должен определить произошла ли передача данных из канала в ВУ, т.е. освободился ли канал для следующей передачи, что позволит ЦП послать в канал очередные данные.
Для определения момента чтения или посылки данных в канал ППИ ЦП должен определить состояние канала. Определение состояния каналов А и В можно реализовать двумя путями. Первый – схемная реализация. Для этого используется сигнал ППИ INTR (запрос прерывания), вызывающий прерывание работы ЦП для выполнения программы ввода или вывода данных в ППИ. Практически используется другой вариант – программная реализация чтения состояния каналов А или В, которое формируется в соответствующих разрядах регистра канала С (бит С3 для канала А, бит С0 для канала В).
Выработку ППИ сигнала прерывания разрешает бит INTE регистра канала С: второй разряд этого регистра - для канала В, четвертый и шестой разряды – для канала А в режимах ввода и вывода соответственно. Путем установки или сброса указанных разрядов программист может разрешить или запретить обслуживание любого ВУ при работе по прерываниям.
Установка или сброс разряда регистра канала С, в том числе и бита INTE, осуществляется ЦП засылкой слова по адресу РУС, т.е. при состоянии сигналов А1, А0=1,1. При этом разряд D7 РУС должен быть равен 0 (рис.1.6).
Error: Reference source not found
Рис. 1.6. Формат слова установки разряда регистра канала С
При посылке управляющего слова с D7=0 разряд регистра канала C, указанный в битах D3-D1, сбрасывается в 0, если D0=0, или устанавливается в 1, если D0=1.
Установка в 1 бита INTE разрешает выработку сигнала прерывания INTR. Разряды D6-D4 не используются.
Рассмотрим пример ассемблерных команд при работе с ППИ. Пусть в МПС для портов ППИ выделены адреса в диапазоне (80-83)Н. Линии адресной шины подключены к выводам А1, А0 ППИ соответственно. Для инициализации ППИ с параметрами: канал А (режим 1, вывод), канал В (режим 0, ввод), канал С (ввод) и установки бита INTE в 1 для канала А нужно выполнить следующие команды:
mov AL, 10101011B; инициализация ППИ
out 83H
mov AL, 00001101B; установка бита 6
out 83H
Для анализа состояния канала А с целью передачи очередного байта данных ЦП должен прочитать байт по адресу 82Н и определить состояние канала А по биту С3.
Контрольные вопросы и задания.
Сколько каналов ввода-вывода содержит ППИ? В каких режимах могут работать каналы ППИ?
Укажите назначение портов ввода-вывода ППИ.
В чем суть инициализации ППИ? Представьте формат управляющего слова ППИ.
Укажите на особенности во вводе-выводе через канал А в режиме 0 и в режиме 1.
Дайте назначение сигналов управления передачей данных через канал В режиме 1 при вводе и выводе данных.
В чем заключаются особенности работы канала А в режиме 2?
Для чего ЦП должен определять состояния каналов и как эта функция реализуется практически?
Для ППИ выделен диапазон адресов (84 – 87)H. Что означает выполнение следующих команд:
mov AL, 00001001B
out 87H
Какую информацию несет передаваемый в ППИ байт?
Дано 12 тумблеров и 12 лампочек, предназначенных для индикации состояния тумблеров. Можно ли организовать с помощью ППИ ввод данных в МП о состоянии тумблеров с последующим выводов битов состояния на индикацию. Каким образом?
Дано 8 тумблеров и 8 лампочек индикации. Напишите ассемблерные команды для чтения состояния тумблеров через канал В ППИ (режим 0) и вывода байта состояния тумблеров на индикацию через канал А ППИ (режим 0). Перед командами ввода-вывода произвести инициализацию БИС в соответствии с заданием. Адреса портов БИС ППИ – (64-67) H.
