Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции МПСУ.doc
Скачиваний:
40
Добавлен:
06.12.2018
Размер:
7.86 Mб
Скачать

1.10. Интерфейс мпсу с изолированной системой шин

Интерфейсом называется совокупность аппаратных и программных средств, позволяющих организовать обмен информацией между МП и внешними устройствами, в том числе и с ИМС памяти.

Между аппаратными и программными средствами МПСУ существует тесная взаимосвязь. Команды МП могут исполняться только в той аппаратной среде, которая поддерживает входящие и выходящие сигналы МПСУ по циклам и тактам в соответствии с диаграммами, приведенными на рис.1.20 и рис.1.26. Для этого аппаратная часть структурно должна выглядеть так, как приведено на тех же рисунках.

Классификация подключаемых к МП устройств на ИМС памяти и ВУ предопределяет не только различие схем подключения, но и использование различных команд информационного обмена между МП и устройствами. В соответствии с этим делением устройств, подключаемых к МПСУ, интерфейс строится с изолированной и общей системой шин для ИМС памяти и ВУ.

Характеристики МПСУ с изолированной системой шин:

- для работы с внешними устройствами используются команды OUT и IN - вывода и ввода информации;

- для работы с памятью используются все остальные команды МП;

- адресные пространства ИМС памяти и ВУ изолированы друг от друга, поэтому адреса ИМС памяти и ВУ могут даже совпадать.

Достоинства интерфейса с изолированной системой шин:

- простота принципиальной электрической схемы МПСУ, особенно в части дешифрации адресов, и во многих случаях вообще не нужны дешифраторы;

- адресное пространство используется на 100%.

Недостатки интерфейса с изолированной системой шин:

- для работы требуется максимальный набор управляющих сигналов: , , , и ;

- усложняется программа, в которой производятся логические и арифметические операции над данными, связанными с ВУ, так как используемые две команды для работы с ВУ выполняют лишь простой ввод и вывод информации;

- всего можно адресовать 256 устройств ввода и вывода, так как размер адреса ВУ составляет 8 бит (в командах OUT и IN операнд однобайтный).

Характеристики МПСУ с общей системой шин:

- для работы с ВУ используются все те же команды, которые применяются для работы с ИМС памяти;

- адресное пространство ВУ и памяти общее и поэтому адреса ВУ и ячеек памяти должны быть различными.

Достоинства интерфейса с общей системой шин:

- для работы требуется сокращенный набор управляющих сигналов: , и ;

- упрощается программа, в которой производятся логические и арифметические операции над данными, связанными с ВУ;

- можно адресовать 65536 устройств ввода и вывода, так как размер адреса ВУ составляет 16 бит.

Недостатки интерфейса с общей системой шин:

- усложняются дешифраторы адреса ВУ;

- большие потери адресного пространства, которые можно уменьшить, значительно усложнив дешифраторы адресов.

Принципиальная схема МПСУ с изолированной системой шин при обслуживании одного ВУ приведена на рис.1.29а. Внешними устройствами ввода являются кнопки П ("Пуск") и С ("Стоп") с регистром RG, внешним устройством вывода – катушка контактора К с D-триггером Т. Релейный вариант исполнения системы управления контактором приведен на рис.1.28.

На рис.1.29а прямое подключение контактора К к триггеру нужно считать условным. Схемы выходных каскадов, обеспечивающих усиление по мощности, рассмотрены на рис.1.68…1.70. Синхроимпульсом записи информации (бита данных) является сигнал , который поступает по проводу 29. Бит, предназначенный для записи в триггер, является битом D0 шины данных.

Сигналы, снимаемые с кнопок П и С, являются двухстабильными, что делает невозможным их прямое подключение к ШД. Они подключены к ШД МП через регистр RG, выход которого является трехстабильным. Запись в регистр RG сигналов состояния кнопок П и С происходит по сигналу SYNC, который поступает на вход STB регистра и который появляется в каждом машинном цикле выполняемой команды (рис.1.20 и рис.1.26). Чтение регистра RG осуществляется по сигналу , который поступает по проводу 28 на ножку .

Память содержит только одну ИМС ПЗУ. Вход этой ИМС заземлен, и ИМС получается выбранной постоянно. Такое решение оправдано тем, что выбор единственной ИМС памяти лишен смысла. Открывается ПЗУ для чтения сигналом , поступающему по проводу 26 на ножку .

В ПЗУ записана программа управления контактором К с помощью кнопок П и С. Алгоритм управления приведен на рис.1.29а, на нем даны все пояснения. Программа управления, составленная в соответствии с приведенным алгоритмом, приведена на рис.1.30 (все коды 16-ричные).

Адрес

Код команды

Метка

Мнемокод

Комментарии

0000

DB

00

М1

IN 00

Чтение состояния кнопок П и С

0002

E6

01

ANI 01

Выделить бит состояния кнопки С

0004

C2

15

00

JNZ М4

Если С нажата, то К выключить

0007

DB

00

М2

IN 00

Чтение состояния кнопок П и С

0009

E6

02

ANI 02

Выделить бит состояния кнопки П

000B

C2

00

00

JNZ М1

Если П нажата, то К включить

000E

3E

01

М3

MVI A, 01

В аккумулятор код включения К

0010

D3

00

OUT 00

Вывод бита D0=1 в D-триггер

0012

C3

00

00

JMP М1

Возврат в начало программы

0015

3E

00

М4

MVI A, 00

В аккумулятор код выключения К

0017

D3

00

OUT 00

Вывод бита D0=0 в D-триггер

0019

C3

00

00

JMP М1

Возврат в начало программы

Рис.1.30. Программа управления контактором

Приведем расширенные комментарии, акцентируя внимание на состоянии элементов принципиальной схемы МПСУ и прохождении сигналов в ней.

Команда IN 00. Ввод байта из RG в аккумулятор А. К регистру RG подключены кнопки П и С.В команде IN указан произвольный номер 00 внешнего устройства ввода – регистра RG. Это оправдано тем, что ВУ ввода единственное и для его выбора достаточно сигнала , который появляется в процессе выполнения команды IN.

Команда ANI 01. Выполняется операция логического умножения аккумулятора, в котором содержится данные о состоянии кнопок П и С, и константы 01Н=0000.0001В. В результате умножения бит 0 аккумулятора остается таким же, каким он был при вводе из RG, а остальные биты аккумулятора подавятся – обратятся в 0. Эта операция называется маскированием байта умножением. Бит 0 аккумулятора отражает состояние кнопки С. Если кнопка С не нажата, то после маскирования в аккумуляторе окажется код 0000.0000В=00Н и установится значение Z=1 флага нуля , а при нажатой кнопке С – код 0000.0001В=01Н и установится значение Z=0 флага нуля.

Команда JNZ M4. Проверяется флаг Z нуля. Если Z=0 (кнопка С нажата и разомкнута), то переход на метку M4 программы. Иначе выполняется следующая записанная по программе команда.

Команда IN 00. Ввод байта из RG в аккумулятор А.

Команда ANI 02. Маскированием выделяется состояние бита 1 аккумулятора. Бит 1 отображает состояние кнопки П. Если кнопка П не нажата, то после маскирования в аккумуляторе окажется код 0000.0010В=02Н и установится значение Z=0 флага нуля , а при нажатой кнопке П – код 0000.0000В=00Н и установится значение Z=1 флага нуля.

Команда JNZ М1. Проверяется флаг Z нуля. Если Z=0 (кнопка П не нажата и не замкнута), то переход на начало программы – метку М1. Иначе выполняется следующая команда.

Команда MVI A, 01. Прямая загрузка в аккумулятор А константы 01Н=0000.0001В, в которой 0-й бит равен 1.

Команда OUT 00. Вывод содержимого аккумулятора в ВУ – D-триггер. На вход D триггера поступает сигнал нулевого бита байта данных с ШД, а на вход С триггера поступает единичный строб, полученный инверсией нулевого строба , поступившего с провода 29. Так как содержимое нулевого бита аккумулятора равно 1, то D-триггер установится в состояние 1 и контактор К включится.

Команда JMP М1. Безусловный переход на начало программы.

Команда MVI A, 00. Прямая загрузка в аккумулятор А константы 00Н= 0000.0000В, в которой 0-й бит равен 0.

Команда OUT 00. Вывод содержимого аккумулятора в ВУ – D-триггер. Так как содержимое нулевого бита аккумулятора равно 0, то D-триггер установится в состояние 0 и контактор К выключится.

Команда JMP М1. Безусловный переход на начало программы.

Коды приведенной программы должны быть перенесены в ПЗУ. Таблица прошивки ПЗУ приведена на рис.1.31.

Принципиальная схема МПСУ с изолированной системой шин при обслуживании нескольких ВУ приведена на рис.1.29б. Внешними устройствами ввода являются кнопки П ("Пуск") и С ("Стоп") с регистром RG, внешним устройством вывода – катушка контактора К с D-триггером Т (эти подключения такие же как и на рис.10.1а и, поэтому, не показаны).

Адрес

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0000

DB

00

E6

01

C2

15

00

DB

00

E6

02

C2

00

00

3E

01

0010

D3

00

C3

00

00

3E

00

D3

00

C3

00

00

Рис.1.31. Таблица прошивки ПЗУ

При обслуживании нескольких ВУ может потребоваться значительный объем памяти для размещения программ управления. Поэтому ИМС ПЗУ может быть несколько. На схеме показана только одна из ИМС блока ПЗУ, в котором размещена программа управления контактором К. Примем следующие условия работы:

1). До и после программы управления контактором К существуют программы управления другими ВУ.

2). Блок ПЗУ состоит из однотипных ИМС с объемом памяти каждой 211=2048 ячеек или 2Кбайт.

3). Стартовый адрес программы управления контактором равен 2036Н.

4). ВУ ввода и вывода имеют одинаковый адрес – 47Н.

При наличии множества корпусов ИМС памяти и нескольких ВУ требуются дешифраторы, с помощью которых будет производиться выбор корпуса ИМС памяти и ВУ.

Для дешифрации адреса 47Н=0100.0111В внешних устройств применены 4 инвертора и 1 логический элемент 8И-НЕ. По схеме дешифратора проверяется, что при коде 0100.0111В на выходе элемента 8И-НЕ установится сигнал 0.

Для дешифрации адреса 2036Н=0010.0000.0011.0110В определим порядковый номер ИМС, в которой записана программа управления контактором К, в блоке памяти из однотипных ИМС. Так как емкость одной ИМС типа КР573РФ2 составляет 204810 байт (индекс 10 указывает на десятичную запись числа), то порядковый номер ИМС, в которой используется ячейка с адресом 2036Н=826410, равен: 8264/2048=4,035=4 (округление результата). Для дешифрации ИМС блока ПЗУ используем биты А13, А12 и А11 адреса, выставляемого на ША, так как биты А10…А0 адреса заводятся напрямую на адресный порт ИМС памяти. В коде 2036Н биты А13, А12 и А11 образуют код 100В. На схеме биты А13, А12 и А11 заведены на вход дешифратора DC типа КР555ИД7. При коде 100В активным будет вывод 4, что совпало с расчетом порядкового номера ИМС ПЗУ с адресом 2036Н. Следовательно, если на ША будет выставлен адрес 2036Н, то на вход ИМС ПЗУ поступит сигнал 0, которым будет выбрана требуемая ИМС. На входах остальных ИМС блока памяти в это же время будут сигналы 1 и все эти ИМС будут отключены от ШД МП.

Алгоритм управления приведен на рис.1.29б, на нем даны все пояснения. Особенность алгоритма в том, что после совершения действий по включению или выключению контактора К возврата на начало этой программы нет, а выполняется команда управления другим ВУ. Вход в программу управления контактором К осуществляется извне после завершения программы управления другим ВУ.

Программа управления, составленная в соответствии с алгоритмом, приведена на рис.1.32 (все коды 16-ричные).

Адрес

Код команды

Метка

Мнемокод

Комментарии

2036

DB

47

М1

IN 47

Чтение состояния кнопок П и С

2038

E6

01

ANI 01

Выделить бит состояния кнопки С

203А

C2

20

JNZ М4

Если С нажата, то К выключить

203D

DB

47

М2

IN 47

Чтение состояния кнопок П и С

203F

E6

02

ANI 02

Выделить бит состояния кнопки П

2041

C2

4F

20

JNZ Конец

Если П нажата, то К включить, иначе выйти из программы

2044

3E

01

М3

MVI A, 01

В аккумулятор код включения К

2046

D3

47

OUT 47

Включить контактор К

2048

C3

4F

20

JMP Конец

Выйти из программы

204B

3E

00

М4

MVI A, 00

В аккумулятор код выключения К

204D

D3

47

OUT 47

Выключить контактор К

204F

Конец

1-я команда управления другим ВУ

Рис.1.32. Программа управления контактором

При выводе информации в ВУ дешифратор адреса при коде 47 выдает сигнал 0, из которого логическим элементом 2ИЛИ-НЕ совместно с сигналом формируется единичный строб для записи данных в D-триггер.

При вводе информации из ВУ дешифратор адреса при коде 47 выдает сигнал 0, из которого логическим элементом 2ИЛИ совместно с сигналом формируется единичный строб для считывания данных из регистра RG.

Рассмотрим подробно на сигнальном уровне выполнение команды OUT 47, расположенной по адресу 204DН.

После завершения выполнения команды MVI A, 00, расположенной по адресу 204ВН, в счетчике команд МП будет находиться адрес следующей команды – 204DН=0010.0000.0100.1101В. Этот адрес МП выставит на ША и будет выполнен цикл М1. Биты А13…А11 адреса образуют код 100В, по которому на выходе 4 дешифратора DC установится сигнал 0 и которым будет выбрана ИМС ПЗУ. Битами А10…А0 ША будет выбрана ячейка памяти в ПЗУ. При выполнении цикла М1 сформируется сигнал и в такте Т3 (рис.1.20) байт из ПЗУ перепишется в регистр команд МП. Этот байт имеет код D3 и является КОП. По завершении считывания байта счетчик команд инкрементируется и в нем установится адрес 204ЕН.

МП, используя прошивку дешифратора команд ДШК, установит, что команда с КОП D3 является двухбайтной, и будет выполняться за 3 цикла. Поэтому МП выставит взятый из счетчика команд адрес 204ЕН= 0010.0000.0100.1110В на ША и будет выполнять цикл М2. Битами А13…А11 адреса через дешифратор будет выбрана снова ИМС ПЗУ, остальными битами – выбрана ячейка памяти внутри ИМС ПЗУ. При выполнении цикла М2 сформируется сигнал и в такте Т3 байт из ПЗУ перепишется во временный регистр МП. Этот байт имеет код 47 и является операндом команды OUT 47. По завершении считывания байта счетчик команд инкрементируется и в нем установится адрес 204FН.

Далее, во исполнение результатов расшифровки КОП, будет выполняться 3-й цикл М3 – цикл записи байта в ВУ. На ШД МП, которая переключена на вывод, установится код 00Н, взятый из аккумулятора, а на ША МП выставит код 47Н. По этому коду наборным дешифратором сформируется на выходе сигнал 0. При выполнении цикла М3 сформируется сигнал =0 и в такте Т3 логическим элементом 2ИЛИ-НЕ, на входе которого присутствуют два нулевых сигнала, сформируется единичный сигнал, который поступит на вход С синхронизации D-триггера. На информационный вход D этого триггера уже поступает нулевой бит (так как предыдущей командой MVI A, 00 в нулевой бит аккумулятора был записан 0) с ШД МП, и по синхросигналу С в D-триггер запишется 0.

Команда OUT 47 выполнена до конца. Было 2 обращения к ПЗУ и одно – к ВУ. Эти обращения на уровне прохождения сигналов поддержаны схемой МПСУ.

Далее будет выполняться команда, записанная по адресу 204FН.

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