Таблица 2.2 Программа работы автомата
№ ячейки | Данные в ПЗУ | |||
Y | X | A0 | A1 | |
00 | 00 | 0 | 01 | 00 |
01 | 01 | 0 | 10 | 01 |
10 | 10 | 0 | 11 | 10 |
11 | 11 | 0 | 00 | 11 |
Как видно из таблицы 2.2, микрокоманда автомата содержит 7 бит. Всего команд 4. Для кодирования адреса микрокоманды необходимо использовать 2 бита, для кодирования значения выхода необходимо испльзовать тоже 2 бита. Объем ПЗУ, необходимый для записи програмы составляет М=4*7 = 28 бит.
Для проверки правильности разработанной программы необходимо собрать схему автомата на панели «Управляющие автоматы на ПЗУ». Порядок работы с панелью следующий:
а) Подключить панель к источнику питания с помощью разъема, расположенного на задней стенке панели. Обратить особое внимание на соответствие первых выводов вилки и розетки разъема подключения питания.
б) С помощью специальных коммутационных проводников набрать на панели схему микропрограммного автомата с двумя адресными полями. Обратить внимание на разрядность всех полей микрокоманды. Она должна соответствовать программе.
На рисунке 2.5 показан пример соединения элементов МПА для микропрограммы, приведенной в таблице 2.2. На рисунке 2.5 приняты следующие обозначения: РМК – регистр микрокоманд; ДШ Y – дешифратор выходного кода; ДШ Х – дешифратор номера входного сигнала; УФА – устройство формирования адреса следующей микрокоманды; PROM – программируемое пользователем постоянное запоминающее устройство; Вход Х – входной управляющий сигнал.
При соединении элементов панели следует неиспользуемые входы устройства формирования адреса (УФА), дешифратора номера выходного кода (ДШ Y) и дешифратора входного сигнала (ДШ Х) соединить с общим проводом, т. е. подать на входы логич. 0. На входах, не соединенных с общим проводом, электроника формирует логич.1.
в) Занести коды программы работы автомата в ПЗУ. Для этого переключатель под кнопкой «Пуск» перевести в режим «Ручной», переключатель «Работа-Программирование» перевести в режим «Программирование». Нажать на кнопку «Сброс» для обнуления счетчика адреса микрокоманды. Ввод кодов программы выполняется с помощью субпанели «Программирование». Светодиодные индикаторы в нижней части панели отображают код текущего адреса ячейки памяти, светодиодные индикаторы верхней части – содержимое ячейки.

Рисунок 2.5 – Схема соединения элементов панели для реализации разработанного микропрограммного автомата с принудительной адресацией и двумя адресными полями
Для занесения кода в ячейку необходимо:
- обнулить содержимое ячейки, нажав на кнопку «Уст.0»;
- установить 1 в требуемые битовые поля кода;
- увеличить на 1 адрес ячейки, нажав на кнопку «Адрес +1»;
- повторить процедуру для занесения всех кодов программы.
После занесения всех кодов программы из таблицы 2 в ПЗУ индикатор должен показывать код номера 5. Закончить программирование, переведя переключатель «Работа-Программирование» перевести в режим «Работа».
г) Проверить работу автомата в пошаговом режиме. Для этого установить переключатель под кнопкой «Пуск» перевести в режим «Ручной» и, нажимая кнопку «Пуск», инициировать отработку автоматом одиночных команд. На индикаторе выходного кода дешифратора ДШ Y должна отображаться заданная кодовая последовательтость. Выполнить проверку работы автомата для входных сигналов X = 0 и Х = 1.
д) Перевести панель в режим работы «Циклический». Проверить работу автомата для входных сигналов X = 0 и Х = 1. Продемонстрировать достигнутый результат преподавателю и отметить у него факт выполнение работы.
Содержание отчета
Отчет должен содержать результаты разработки программы и проверки ее работы. Он должен содержать:
1. Задание
2. Блок-схему алгоритма работы МПА
3. Таблицы «прошивки» ПЗУ автомата
4. Расчет требуемых объемов памяти программ и разрядности регитра микрокоманд
5. Схему реализации разработанного микропрограммного автомата
6. Выводы по работе
Контрольные вопросы
1. Что понимается под принудиткльной адресацией?
2. Какое максимальное число различных значений выходной переменной может содержать один период работы МПА с принудительной адресацией и двумя адресными полями?
3. Как вычислить разрядность поля Nx в общем случае?
4. Как работает схема выбора адреса следующей микрокоманды автомта?
5. Чему равна длительность одного цикла работы МПА?
Лабораторная работа №3
Микропрограммный автомат с принудительной адресацией и одним адресным полем
Цель работы: изучить особенности программирования автомата с принудительной адресацией и одним адресным полем.
Краткие сведения из теории
В микропрограммном автомате с принудительной адресацией и одним адресным полем делается попытка сократить длину микрокоманды. Для этого в микрокоманде ликвидируется поле адреса А1 и задача вычисления этого адреса перекладывается на схему выбора адреса СВА.
На рисунке 3.1 показан формат используемой микрокоманды (а) и ее графическое изображение (б).

Рисунок 3.1 - МПА с принудительной адресацией и одним адресным полем: формат микрокоманды (а) и ее графическое изображение (б).
Микрокоманда состоит из 3 полей – поля значения выходной переменной Y (оператор присваивания), поля номера проверяемого входа Х ( оператор проверки условия) и адресного поля А0. Логика исполнения условной части команды следующая: если на проверяемом входе (Х) сигнал 0, то следующая микрокоманда читается из ячейки с адресом А0 , иначе – из ячейки с адресом А0Так как одна микрокоманда исполняется целиком за один такт работы автомата, то операция присваивания и условная операция неразделимы. Этот факт необходимо учитывать при разработке программы, т. е. программу надо строить из блоков по две операции. Есть и еще одно ограничение - ветвление программы может быть выполнено только в одну из двух соседних ячеек: А0 и А0+1.
Схемы выбора адреса следующей микрокоманды может быть реализована весьма просто на параллельном сумматоре. Действительно, так как бинарный сигнал Сх входного мультиплексора принимает только два значения, то логику исполнения уловной части микрокоманды модно представить уранением:
A(m+1) = A0 + Cx.
Для реализации данного уравнения естественно воспользоваться параллельным сумматором. На рисунке 3.2 показана реализация схемы выбора адреса следующей микрокоманды для автомата с принудительной адресацией и одним адресным полем.

Рисунок 3.2 - Реализация схемы выбора адреса следующей микрокоманды
Варианты выполнения лабораторной работы
В работе предполагается, что МПА имеет одноразрядный управляющий вход Х и многоразрядный выход Y. В зависимости от значения входного сигнала ( Х=0 или Х=1) вырабатываются различные кодовые последовательности. В таблице 3.1 приведены варианты заданий кодовых последовательностей автомата.
Таблица 3.1 Варианты заданий работы МПА
№ варианта | Х = 0 | Х = 1 |
1 | -0-1-… | стоп |
2 | -… | … |
3 | -0-1-… | стоп |
4 | -… | -… |
5 | -… | -… |
6 | -… | -… |
7 | -0-2-0-… | -0-… |
8 | … | -0-1-… |
9 | -… | -0-3-… |
Пример программирования автомата
Для примера рассмотрим вариант программирования автомата для формирования кодовой последовательности: при Х = 0 Y = …, при Х = 1 Y = СТОП.
На рисунке 3.3 показана блок-схема программы, реализующая кодовую последовательность рассматриваемого примера работы МПА. Она представляет собой последовательность команд, каждая из которых состоит из двух операций – присваивания и проверки условия. Команды программы обозначены символами Si , где i – адрес ячейки памяти, где хранится команда. У МПА данного типа возможны адресные переходы всегда в две соседние ячейки, поэтому команды должны располагаться парами в соседних ячейках памяти программ. При назначении адресов ячеек памяти (индексов i команд) эта особенность работы автомата была учтена.

Рисунок 3.3 – Блок-схема программы работы автомата с принудительной адресацией и одним адресным полем.
Основная проблема программирования такого автомата связана с невозможностью выполнить некоторые требуемые переходы. Так, например, команда S0 программы для автомата с двумя адресными полями ( см. рис.2 ) содержит переходы к ячейке S1 и к самой себе, причем при Х=0 переход должен быть выполнен к ячейки S1. В автомате с одним адресным полем такие переходы организовать невозможно. Действительно, если в команде S0 при Х=0 автомату задать переход к ячейке S1, то при Х=1 автомат самостоятельно перейдет к ячейке S2 ( автомат вычислит адрес перехода как S1 + 1). Основной способ устранить данное противоречие – продублировать требуемую команду, поместив ее в ячейку памяти, номер которой вычисляет автомат.
Для устранения противоречий на рисунке 3.3 введены дублирующие команды: S3 дублирует S0 , S5 дублирует S2 , S7 дублирует S4 , а S1 дублирует S6 . За счет дублирующих команд программа для автомата с принудительной адресацией и одним адресным полем оказывается более громоздкой, чем программа для автомата с принудительной адресацией и двумя адресными полями.
Так как расположение команд в памяти программ определяется номером команды, то легко записать программу работы автомата в виде двоичных кодов. Программа работы автомата приведена в таблице 3.2.
Таблица 3.2. Программа автомата с принудительной
адресацией и одним адресным полем
№ ячейки | Данные в ПЗУ | ||
Y | X | A0 | |
000 | 00 | 0 | 010 |
001 | 11 | 0 | 000 |
010 | 01 | 0 | 100 |
011 | 00 | 0 | 010 |
100 | 10 | 0 | 110 |
101 | 01 | 0 | 100 |
110 | 11 | 0 | 000 |
111 | 10 | 0 | 110 |
Как видно из таблицы 3.2, микрокоманда автомата содержит 6 бит. Всего команд 8. Для кодирования адреса микрокоманды необходимо использовать 3 бита, для кодирования значения выхода необходимо испльзовать 2 бита. Объем ПЗУ, необходимый для записи прогораммы, составляет М=8*6 = 48 бит.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 |


