Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PosobieMPS_pechat.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
1.06 Mб
Скачать

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

Ввод

Канал А (РС3-РС0)

Вывод

0

Ввод

1

0

Вывод

1

Ввод

Канал А Канал В

Вывод

0

Ввод

1

0

Режим 0

1

Режим 1

Канал С (РС7-PС4) Канал В

Рис. 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.

Контрольные вопросы и задания.

  1. Сколько каналов ввода-вывода содержит ППИ? В каких режимах могут работать каналы ППИ?

  2. Укажите назначение портов ввода-вывода ППИ.

  3. В чем суть инициализации ППИ? Представьте формат управляющего слова ППИ.

  4. Укажите на особенности во вводе-выводе через канал А в режиме 0 и в режиме 1.

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

  6. В чем заключаются особенности работы канала А в режиме 2?

  7. Для чего ЦП должен определять состояния каналов и как эта функция реализуется практически?

  8. Для ППИ выделен диапазон адресов (84 – 87)H. Что означает выполнение следующих команд:

mov AL, 00001001B

out 87H

Какую информацию несет передаваемый в ППИ байт?

  1. Дано 12 тумблеров и 12 лампочек, предназначенных для индикации состояния тумблеров. Можно ли организовать с помощью ППИ ввод данных в МП о состоянии тумблеров с последующим выводов битов состояния на индикацию. Каким образом?

  2. Дано 8 тумблеров и 8 лампочек индикации. Напишите ассемблерные команды для чтения состояния тумблеров через канал В ППИ (режим 0) и вывода байта состояния тумблеров на индикацию через канал А ППИ (режим 0). Перед командами ввода-вывода произвести инициализацию БИС в соответствии с заданием. Адреса портов БИС ППИ – (64-67) H.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]