Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР_6_7.doc
Скачиваний:
10
Добавлен:
01.12.2018
Размер:
249.86 Кб
Скачать

4. Выполнение работы

4.1. Составление и проверка работоспособности микропрограмм

Разработка МП производится в несколько этапов.

Этап 1 - выбор алгоритма решения задачи и его запись в символьной форме.

Этап 2 - разработка блок-схемы алгоритма (если это необходимо).

Этап 3 - распределение памяти, то есть распределение загрузки регистров ПС.

Этап 4 - запись микропрограммы, реализующей алгоритм, в ОЗУ МК.

Этап 5 - отладка микропрограммы.

Составление МП удобнее начать с написания операционной части МК, т.е. с заполнения полей с 0-го по 5-й в соответствии с таблицами кодов (табл. 1…4). Микропрограмма записывается в виде последовательности МК. Рекомендуется каждую МК записывать в виде двух строк: символьной (на языке микропрограммирования) и кодовой (в машинном коде). В символьной

Формат прохождения данных Таблица 5

Контролируемые выходы Таблица 6

Пример составления микропрограммы Таблица 7

строке для каждой МК записываются функции обработки данных и функции переходов. Адреса переходов, констант, задаваемые полем в символической записи, а также адреса МК представляются в шестнадцатеричной форме.

Кодовые строки применяются при загрузке МК в микроЭВМ. При этом для ускорения ввода микропрограммы неиспользуемые поля рекомендуется считать нулевыми.

При выполнении МП в микроЭВМ можно выделить следующие типичные операции: загрузка исходных данных, чтение содержимого регистров, обработка данных, индексация (контроль) исходных данных, промежуточных и конечных результатов.

Следует отметить, что МП заносится в ОЗУ МК вручную, а данные размещаются в следующих регистрах ПС: R0…R15, RQ.

Ввод исходных данных может быть проведен только с использованием арифметических и логических операций. Загрузка любого РОН и регистра Q производится только с выводов АЛУ, например, путем суммирования с нулем. Поля 6 и 7 в данном случае можно не использовать.

Пусть необходимо, например, прочитать содержимое РОН5. Поля 0, 2 в этом случае не используются. В поле 1 (адрес В) заносится код адреса РОН5 - 0101. В качестве операции АЛУ выберем логическую функцию «ИЛИ», осуществляемую с данными, поступающими на его R и S входы. Для этого в поле 3 МК занесем код 0011. Источниками операндов выберем нулевой код, подаваемый на вход R, и регистр В (RB), содержимое которого пересылается на вход S. Для осуществления данной операции (R=0. S=B) в разряды 18…16 (I8…I6, поле 4) МК необходимо записать кодовое слово 011. Если результат чтения РОН5 необходимо загрузить в регистр Q без сдвига, а выход процессора Y подключить к входу АЛУ, то в разряды 23…20 (поле 5) МК требуется занести код 0000 (табл. 7).

Допустим, необходимо сложить содержимое регистров РОН5 и Q и результат поместить в ячейку 1101 ОЗУ МК. В этом случае полем 0 пользоваться не будем. В поле 1 запишем адрес регистра, в который необходимо поместить результат операции, например 1101. В поле 2 занесем адрес РОН5 - 0101; в поле 3 - код сложения 0000 (С0 =0), в трех младших разрядах поля 4 - код 000, соответствующий R=А и S=Q; а в поле 5 - код 011, определяющий пересылку результата в РОН с адресом, указанным в поле 1 (адрес В).

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