Цифровые устройства и микропроцессорные системы. Задачи и упражнения: Учебное пособие (Представление чисел и арифметические операции в цифровых устройствах. Микропроцессорные устройства и системы на базе МП КР580ВМ80), страница 91

 () — выход сигнала готовности к выдаче информации в память или устройство ввода-вывода;

ЗЗx (HLD) — вход сигнала запроса на переход МП в состояние захвата;

ПЗx (HLDA) — выход сигнала, подтверждающего состояние захвата;

ЗПр (INT) — вход сигнала запроса прерывания;

РПр (INTE) — выход сигнала, разрешающего прерывание;

Ож (WI) — выход сигнала, подтверждающего состояние ожидания;

Сбр (SR) — вход сигнала, по которому происходит обнуление счетчика команд.

Кроме того, МП имеет три вывода питания (+12, +5, -5 В) и вывод корпуса — всего 40 выводов.

Выводы СК:

 и  — чтение из памяти и запись в память;

 и  — ввод и вывод из/в устройство ввода-вывода;

(INTA) — подтверждение прерывания.

Остальные выводы аналогичны выводам МП.

Двухбайтовая команда ввода выполняется в МП КР580 за три машинных цикла: М1 — чтение 1-го байта команды В1 (кода операции ввода) из ячейки памяти с адресом А1; М2 — чтение 2-го байта команды В2 (адреса порта ввода) из ячейки памяти с адресом А21+1; М3 — ввод в МП байта данных D из порта. На рис. 8.3 Ф1 и Ф2 — последовательности тактовых импульсов, снимаемых с выходов ГТИ (см. рис. 8.2). Как видно из рис. 8.3, команда ввода выполняется за 10 тактов.

Сигнал синхронизации Син генерируется микропроцессором в начале каждого машинного цикла; он подается в ГТИ, в результате чего в последнем формируется импульс (строб состояния МП), совпадающий по времени со вторым тактовым импульсом последовательности Ф1. В начале машинных циклов М1 и М2 на шине адресов ША формируются 16-разрядные адреса ячеек памяти А1 и А2, а в начале машинного цикла М3 — 8-разрядный адрес порта ввода В2 (в последнем случае восемь старших разрядов ША не несут полезной информации).

Во время сигнала синхронизации Син на ШД появляется слово состояния МП W, в котором содержится информация о типе машинного цикла. Затем по ШД в каждом машинном цикле передается либо соответствующий байт команды В1 или В2, либо байт входных данных D, после чего до начала следующего машинного цикла ШД отключается (переходит в третье состояние, показанное на рис. 8.3 штриховой линией).

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

В машинных циклах М1 и М2 , остальные сигналы имеют единичные значения, в М3  , остальные сигналы -1.

в) Во всех четырех машинных циклах

,

Р8.3. Наихудшие условия стыковки имеют место на выходе МП ПЗх, который нагружен на входы трех микросхем. При низком уровне сигнала на выходе ПЗх микропроцессор обеспечивает ток нагрузки I0L = 1,9 мА, а суммарный входной ток трех микросхем

|I1Lå| £ 3×0,2 = 0,6 мА < I0L

При высоком уровне сигнала на выходе ПЗх обеспечивается ток нагрузки |I0H| = 0,15 мА, а суммарный входной ток микросхем:

|I1H| £ 3×0,05 = 0,15 мА £ |I0H|

Таким образом, электрическая стыковка в схеме на рис. 8.2 обеспечивается, но без запаса.

Р8.4. Каждая линия шины данных МПС рис. 8.2 (т.е. выходной шины данных Q СК КР580ВК28) нагружена на 64 входа ППА КР580ВВ55. При низком уровне сигнала на выходе СК обеспечивается ток нагрузки (см. табл. 8.1) I0L = 32 мА, а суммарный входной ток 64 ППА:

|I1Lå| £ 64×0,2 = 12,8 мА < I0L.

При высоком уровне сигнала на выходе СК обеспечивается ток нагрузки |I0H| = 5 мА, а суммарный входной ток 64 ППА:

|I1Hå| = 64×0,05 = 3,2 мА < |I0H|

Таким образом, нагрузочная способность СК по выходам достаточна для подключения 64 ППА.

Рис. Р8.1. Алгоритм шифратора

Р8.5. В алгоритм, имитирующий работу шифратора, можно заложить следующую идею:

если введенное число y = 1, то вывести 0;

если y ¹ 1, то подсчитать, сколько раз нужно сдвинуть y вправо, чтобы получить единицу, и это число вывести (рис. Р8.1). Программа будет следующей: