В данной курсовой работе необходимо разработать управляющий автомат с жесткой / программируемой логикой для выполнения операции: y = (a - b)/с.
Управляющий автомат связан с операционным автоматом. В данном случае в качестве операционного автомата выступает микропроцессорная система, базирующаяся на каком-то конкретном микропроцессоре. В качестве данного микропроцессора выберем шестнадцатиразрядный микропроцессор Intel 80286. Т.е. все операнды должны иметь размер 16 бит, так как регистры имеют разрядность 16 бит. Но так как в заданной операции присутствует деление, то разрядность делимого (а) должна быть в два раза больше разрядности делимого (с). Все операнды хранятся в ОЗУ в дополнительном коде.
С учетом вышесказанного разработаем алгоритм и программу на ассемблере для выполнения заданной операции.
Листинг программы приведен в приложении 1.
Схема алгоритма приведена в приложении 2.
Этапы работы:
1. Составление алгоритма работы операционного автомата.
2. Построение таблицы переходов для автомата Мура, синтез СКУ и СВФ.
3. Построение автомата Мили, синтез СКУ и СВФ.
4. Минимизация числа состояний выбранного автомата.
5. Построение функций возбуждения и выходов.
6. Оценка автомата с точки зрения максимального быстордействия.
7. Разработка принципиальной схемы управляющего автомата с жёсткой логикой.
8. Разработка функциональной схемы МПА с программируемой логикой.
9. Разработка таблицы прошивки ПЗУ МПА с ПЛ.
10. Разработка принципиальной схемы МПА с ПЛ.
Управляющие автоматы с программируемой логикой строятся на основе принципа программного управления, использующего операционно-адресную структуру управляющих слов.
Микрооперация – слово ПЗУ, записанное по определенному адресу и содержащее информацию о микрооперациях, которые должны выполняться в данном такте работы операционного устройства, и информацию об адресе следующей микрокоманды. Для кодирования информации о выполняемых в одном такте микрооперациях, в микрокоманде выделяются поля операционные поля Y1..Yn, число которых определяет максимальное число выполняемых микроопераций в одном такте. Длина каждого операционного поля определяется количеством двоичных разрядов, используемых для кодирования сигналов микроопераций.
Для принудительной адресации микрокоманд адрес следующей МК указывается в каждой МК с возможностью его модификации в зависимости от значения ЛУ. В нашем случае, формат микрокоманды следующий:
По заданию требуется разработать управляющий автомат с программируемой логикой с принудительной адресацией.
Задание формата микрокоманд.
Всего в алгоритме 45 вершины, включая выдачу сигнала начала, и сигнала окончания работы. Следовательно нам потребуется ПЗУ с количеством >32 адресов. Существует ПЗУ 32х8 (К155РЕ3), его и будем использовать(4 шт) .
Рассмотрим формат управляющей МК.
Формат МК включает пять полей:
РСЛ[0/5] – АДРПЕР – адрес перехода, причем разряд РСЛ[5] используется для принудительной модификации адреса.
РСЛ[6/8] - поле логического условия ЛУ .
Для кодирования ЛУ используются 4 комбинации , а пятая (все нули) – для организации безусловного формирования пятого разряда адреса;
РСЛ[9/15] – поле управляющего сигнала (необходимо 6 бита)
1 Сергеев Н.П., Вашкевич Н.П. «Основы вычислительной техники». Учебное пособие.
2 Справочник по интегральным микросхемам. / под ред. Б.В. Тарабрина.
3 Майко Г.В.«ASSEMBLER для IBM PC».