StudyDocs.ru Logo

Отчеты по лабораторным 1 и 2, Р-РС-71. Богачев.docx


Министерство образования РФГОУ ВПО «Московский государственный институт электроники и математики (технический университет)»






Лабораторная работа №1, №2по курсу«Проектирование цифровых и периферийных устройств»на темы: «Реализация простых операций на микропроцессорной установке» и «Реализация умножения и деления чисел на микропроцессорной установке»






Работу выполнили: студенты группы РС-71 Носов П.Попов И.Ионов А.Скоморохов В.Оськин М. Работу принял: Богачёв К.А.




Москва 2011
Лабораторная работа № 1Реализация простых операций на микропроцессорной установке.
Цель работы
Изучение системы МК МП серии К584 и принципов реализации простых операций на микропроцессорной установке; приобретение практических навыков работы на установке в микрокомандном режиме.
Теоретическая часть
Управление входными и выходными регистрами.Для изучения работы МП в микропроцессорном режиме в установке предусмотрены блоки входных и выходных регистров. Код микрокоманды и подлежащие обработке данные в виде 8-разрядных операндов заносятся соответственно в РЕГИСТР МИКРОКОМАНД и во входной РЕГИСТР ДАННЫХ и фиксируются с помощью индикаторных светодиодов. Результаты выполнения микрокоманды могут быть помещены в выходные регистры и зафиксированы на индикаторах ВЫХОД ИНФОРМАЦИИ и ВЫХОД АДРЕСА. Для занесения информации во входной регистр данных (РД) и регистр микрокоманд(РМК) необходимо :Соединить гнездо СИН с гнездом СИНХР входного РД и РМК;Нажать кнопку ПУСК при занесении нуля и кнопки ВВОД ИНФОРМАЦИИ и ПУСК при занесении единицы;Повторить п.2 восемь раз при занесении информации во входной РД и девять раз – в РМК, имея ввиду, что НАБОР ВОСЬМИРАЗРЯДНОГО ОПЕРАНДА НАЧИНАЕТСЯ СО СТАРШЕГО РАЗРЯДА, А КОДА МИКРОКОМАНДЫ – С МЛАДШЕГО (в обратном порядке).
Занесенная в регистре информация регистрируется индикаторными светодиодами, при этом : СТАРШЕМУ РАЗРЯДУ ОПЕРАНДА СООТВЕТСТВУЕТ 8-ОЙ СВЕТОДИОД, А МЛАДШЕМУ – 1-Й, т.е. старшие разряды расположены справа, младшие – слева; РАЗРЯДЫ КОДА МИКРОКОМАНДЫ СОВПАДАЕТ С НОМЕРАМИ ИНДИКАТОРНЫХ СВЕТОДИОДОВ.Чтобы привести входной РД и РМК в режим хранения, необходимо отсоединить СИМ от входа СИНХР регистров. Если на гнёзда СТРОБ подать нулевое напряжение с выхода одного из дополнительных ЛЭ, то входы входного РД будут постоянно подключены к входным шинам МП, а выходы РМК – к шине микрокоманд.Для занесения информации в выходные регистра необходимо на гнезда СИНХР подать синхроимпульс СИ4, предварительно проинвертировав его с помощью ЛЭ. При этом информация считывается с ШВых микропроцессора в выходной регистр данных и индицируется светодиодами ВЫХОД ИНФОРМАЦИИ, а с ШАдр - в адресный регистр и индицируется светодиодами ВЫХОД АДРЕСА.





УПРАВЛЕНИЕ МИКРОПРОЦЕССОРОМДля этой цели на лицевую панель установки выведены гнезда (СИНХР, ПРИОРИТЕТ, ПEPEHOC АЛУ) и тумблеры (ПОЗИЦИЯ 0, ПОЗИЦИЯ 1, ПЕРЕНОС ПРОГРАММ СЧЕТЧИКА, УПРАВЛЕНИЕ ИНКР). Подачей импульса СИМ на гнездо СИНХР с помощью кнопки ПУСК занесенная в РМК микрокоманда пересылается в ШЛМ и после преобразования в 20-разрядную внутреннюю МK МП заносится в регистр микроопераций. Исполняется команда на следующем такте после повторного нажатия кнопки ПУСК. Поэтому подлежащий обработке сигнал заносится во входной РД на один такт позже связанной с ним микрокоманды.При использовании входа ПEPEHOC АЛУ необходимо учитывать следующие факторы: - входной сигнал переноса АЛУ (II) фактически образует часть кода для многих микрокоманд, поэтому значение II определяется исполняемой МК;
П=0 на входе МП соответствует свободному гнезду ПЕРЕНОС АЛУ; для установки П=1 на входе МП необходимо гнездо ПЕРЕНОС АЛУ подать нулевое напряжение с выхода одного из логических элементов.подача сигнала на гнездо ПЕРЕНОС АЛУ должно отставать на один такт от связанной с ним МК, так как сигнал П непосредственно вводится в АЛУ и его значение должно оставаться в МП до исполнения МК, которое задерживается на один такт.Сигналу ПР=0 на входе соответствует свободное гнездо ПРИОРИТЕТ. Для подачи сигнала П=1 на вход МП необходимо гнездо ПРИОРИТЕТ соединить с выходом одного из ЛЭ. Напомним, что при ПР=0 на ШАдр выводится содержимое РР, а при ПР=1 – содержимое программного счётчика СТ на регистре общего назначения Р7.Управление тумблерами подчинено. При этом необходимо иметь в виду, что одна из микропроцессорных секций(МПС) всегда находится в младшей позиции, благодаря чему обеспечивается постоянный контроль младшего разряда ДР(ДРО) на гнезде СДВИГ ВПРАВО. С помощью тумблеров ПОЗИЦИЯ 0 и ПОЗИЦИЯ 1 можно изменить позицию другой МПС и осуществить: в старшей позиции(ПО=1, П1=1) вывод на гнёзда старших битов мультиплексоров А( СтА) и В (СтВ), старшего бита ДР(ДР7) на гнездо СДВИГ ВЛЕВО; в младшей позиции (П0=1, П1=0) вывод содержимого счётчика команд (ИСТВых) на гнездо ВЫХ СТ РАЗР В или управление инкрементом (УИ).С помощью тумблеров ПЕРЕНОС ПРОГРАММ СЧЁТЧИКА и УПРАВЛЕНИЕ ИНКР изменяются функции счетчика команд.
Реализация микрокомандного режима.Для перевода установки в микрокомандный режим работы следует :Установить тумблер РЕЖИМ в положение ОДИН, что обеспечит работу блока синхронизации в режиме одиночных импульсов.Подать нулевое напряжение с выходов дополнительных логических элементов на гнёзда:СТРОБ входных регистров, чтобы подсоединить выходы входного регистра данных к Швх микропроцессора, а выходы регистра микрокоманд – к ШМК;КОНТРОЛЬ блока памяти, чтобы исключить его влияние на работу МП;Подать на гнёзда СИНХР выходных регистров проинвертированный через элемент И-НЕ импульс СИ4 для контроля за исполнением микрокоманд на индикаторах ВЫХОД ИНФОРМАЦИИ и ВЫХОДА АДРЕСА;Подключить (при необходимости) вольтметр постоянного напряжения для контроля выхода переноса АЛУ, старших битов мультиплексоров А и В, младшего и старшего разрядов дополнительных регистров к соответствующим гнёздам на лицевой панели.Для исполнения микропроцессором цепочки микрокоманд необходимо : Осуществить сброс входных и выходных регистров кратковременным нажатием кнопки СБРОС;Занести по описанной выше методике первую микрокоманду в РМК;Подать СИИ на вход СИНХР микропроцессора, соединив соответствующие гнёзда и нажав кратковременно кнопку ПУСК, при этом преобразования через ПЛМ микрокоманда записывается в регистр микроопераций;Подать на входы МП сигналы, необходимые для исполнения первой МК;Занести во входной регистр данных операнд, если он связан с первой МК, и вторую МК в регистр микрокоманд;Подать на входы МП сигналы, необходимые для исполнения второй МК;Подать СИМ на вход МП, при этом микропроцессором исполняется первая МК, а вторая МК в преобразованном виде записывается в регистр микроопераций и т.д.
Выполнение работы.
Операция ввода, пересылки и вывода информации, сброса и установки регистров МП.
Соединение гнезда СИН с гнездом СИНХР входного регистра данных (РД);Занесение данных: ввод первого операнда в РД 100 с помощью двух нажатий кнопки ПУСК при занесении нуля и кнопки ВВОД ИНФОРМАЦИИ и ПУСК при занесении единицы;Соединение гнезда СИН с гнездом СИНХР регистра микрокоманд (РМК), при этом осуществляется запись данных во входной регистр;Занесение микрокоманды (МК) в регистр микрокоманд (РМК): ввод команды занесения из шины входа (Швх) в регистр (Р) при помощи введения кода микрокоманды в соответствии с таблицей (ввод производится аналогично второму пункту с помощью кнопки ПУСК) ШвхР: 1111 10 001 0, где первые четыре разряда определяют в основном функции арифметико-логического устройства (АЛУ), пятые и шестые разряды расширяют возможности кодирования; селекторное поле из разрядов седьмого, восьмого и девятого позволяет выбрать РОН, который участвует в выполняемой микрооперации (МКО);Подача СИМ на вход МП, при этом микропроцессором исполняется первая МК;Занесение МК в РМК: ввод команды вывода из регистра на шину выхода (Швых):0000 10 001 0 для вывода информации из регистра на шину выхода;Для занесения информации в выходные регистра производится подача на гнезда СИНХР синхроимпульс СИ4, предварительно проинвертировав его с помощью логического элемента (ЛИ) 2И-НЕ. При этом информация считывается с ШВых микропроцессора в выходной регистр данных и индицируется светодиодами ВЫХОД ИНФОРМАЦИИ, а с ШАдр - в адресный регистр и индицируется светодиодами ВЫХОД АДРЕСА.В результате на выходе можно либо получить тоже самое число, иными словами загрузить с ШВх регистры Р, РР, ДР 8-разрядными операндами, и содержимое регистров вывести на ШВых, либо с помощью других команд (P→ДР «0001 10 001 0», ДР→Р «1110 10 010 0», ДР→РР «0100 11 100 0» и т.д.) можно пересылать информацию из одного регистра в другой, то есть выполняются МКО пересылки между внутренними узлами микропроцессорной секции (МПС) без участия арифметико-логического устройства (АЛУ).
Арифметические и логические операции над двумя операндами.
Соединение гнезда СИН с гнездом СИНХР входного РД;Занесение данных: ввод первого операнда в РД 100;Соединение гнезда СИН с гнездом СИНХР регистра микрокоманд (РМК);Занесение микрокоманды (МК) в РМК ШвхРР: 0110 11 010 0;Подача СИМ на вход МП, при этом микропроцессором исполняется первая МК;Соединение гнезда СИН с гнездом СИНХР входного регистра данных (РД);Занесение данных: ввод второго операнда в РД 010 с помощью кнопки ПУСК;Соединение гнезда СИН с гнездом СИНХР РМК;Занесение МК в РМК: ввод команды сложения Швх+РРШвых: 0011 11 000 0; Подача СИМ на вход МП, при этом микропроцессором исполняется вторая МК; В результате на ШВых микропроцессора в выходном регистре данных с помощью индикации светодиодами получаем число 110, что соответствует числу «6» в десятичной системе, а так как мы вводили операцию сложения 100 («4») + 010 («2»), то работа микропроцессора в режиме микрокоманд выполнена верно.
Вывод: таким образом, получены практические навыки в реализации микрокомандного режима работы микропроцессорной установки, изучена последовательность действий при реализации цепочки операций в арифметических и логических операциях. Также исследовано кодирование микрокоманд и их форматов. На основании данной работы можно подвести итог, что в микрокомандном режиме исследуется непосредственно микропроцессор: операнды и управляющие слова заносятся во входные регистры, арезультаты операции можно наблюдать на светодиодах выходных регистров, и система микрокоманд делится на группы пересылки данными между внутренними блоками, основными операциями над операндами в АЛУ, операции сдвигов, причем имеется возможность инкрементировать содержимое некоторых регистров. Данная микропроцессорная установка довольно наглядно демонстрирует принцип работы процессора на микрокомандном элементарном уровне, рассматривая процесс, происходящий на каждом синхроимпульсе тактовой частоты.
















Лабораторная работа № 2Реализация умножения и деления чисел на микропроцессорной установке.
Цель работы: изучение алгоритмов умножения и деления двоичных чисел и принципов их реализации на микропроцессорной установке в микрокомандном и микропрограммном режимах.
Теоретическая часть.
УМНОЖЕНИЕ ДВОИЧНЫХ ЧИСЕЛ
Алгоритм умножения
При реализации умножения двух целых положительных двоичных чисел X и Y на МП используется регистр двойной длинны, составленный из рабочего (РР) и дополнительного (ДР) регистров. В РР размещается сумма двух частичных произведений, а в ДР – множитель Y. Множимое X заносится в один из РОН, например, в Р0; РР устанавливается в нулевое исходное состояние. Чтобы не было переполнения РР при получении сумм частичных произведений, число разрядов множимого X не должно превышать семи. Поэтому старшие разряды X и Y используются как знаковые и в них размещаются нули.Процедура умножения состоит в следующем:Перед каждым циклом i производится анализ текущего разряда множителя Y – младшего разряда ДР (ДР0i), который можно контролировать на индикаторе выходного регистра данных (РД), или на гнезде СДВИГ ВПРАВО БМУ. Если ДР0i=0, то производится логический сдвиг вправо РР, ДР с помощью МК (РР,ДР)СЛП-->РР,ДР. При ДР0i=1 выполняется комбинация сложения содержимого РР и Р0 с занесением суммы частичного произведения в РР, и сдвига вправо РР, ДР, для чего используется МК (РР+Р0,ДР)САП-->РР,ДР. После 8-го сдвига в РР оказываются старшие разряды произведения X и Y, а в ДР – младшие разряды. С помощью МК ДР-->ШВых содержимое ДР выводится на индикатор выходного регистра МП ВЫХОД ИНФОРМАЦИИ, при этом содержимое ДР автоматически выводится на индикатор ВЫХОД АДРЕСА(РР-->ШАдр), если гнездо ПРИОРИТЕТ является свободным (ПР=0).
Микропрограммная реализация умножения
Микропрограмма составляется на основании блок-схемы алгоритма умножения двоичных чисел, приведённой на следующем рисунке 1 (цифры в скобках указывают номера ячеек, где размещаются МК или операнды):Рисунок 1

ДЕЛЕНИЕ ДВОИЧНЫХ ЧИСЕЛ
Алгоритм операции деленияДеление двоичных чисел осуществляется путём ряда вычитаний и сдвигов. Пусть необходимо вычислить D=X:Y. Для этого старшие разряды Хст делимого Х следует поместить в РР, а младшие разряды Хмл – в ДР. Делитель У подается на входные шины (ШВх) микропроцессора со входного РЕГИСТРА ДАННЫХ при микрокомандном способе операции деления или из ЗУ – при микропрограммном способе. Старшие разряды делимого Х и делителя У являются значимыми. Чтобы не переполнялись РР и ДР, должно выполнятся неравенство У > Хст. После загрузки Х в РР, ДР выполняется начальный сдвиг их содержимого влево на один разряд микрокомандой (PP,ДР)СЦЛРР,ДР.Процедура деления состоит в следующем.В каждом цикле Хст (содержимое РР) сравнивается с У(ШВх), для чего используется микрокоманда РР-ШвхШВых. Результаты сравнения можно наблюдать на выходном гнезде МП ПЕРЕНОС АЛУ(ШВых). Если РР<ШВх, то ПВых=0. В этом случае необходимо выполнить циклический сдвиг РР, ДР влево с помощью микрокоманды (PP,ДР)СЦЛРР,ДР. При РР>ШВх получим ПВых=1. Поэтому осуществляется циклический сдвиг влево разности РР-ШВх, размещенной в РР, с содержимым ДР (остатка) путём введения МК (РР-ШВх,ДР)СЦЛРР,ДР, а затем с ШВх в младший разряд ДР заносится единица с помощью МК ШВхVДРДР, то по окончании деления (после 8 циклов) частное D окажется в ДР, а остаток - в РР.
Микропрограммная реализация деления
Выполнение работы.
Умножим с помощью микрокомандного и микропрограммного способа два числа: 12 и 13, в двоичной системе исчисления имеющих соответственно значения 00001100 и 00001101. Результат должен получиться 156 (10011100).
1. Алгоритм умножения и деления заданных двоичных чисел.
Принимаем X=00001100, Y=00001101, тогда X х Y = 10011100. В таблице 1 приведём последовательность действий, приводящих к указанному результату. Для наглядности младший разряд ДР(ДР0i) вынесен в отдельную графу.Таблица 1

iM0iPP ДРДР0iM0i+1
0000000 000011000Сдвиг 1
1Сдвиг 10000000 000001100Сдвиг 2
2Сдвиг 20000000 000000111Сложение+Сдвиг 3
3Сложение 00001101
+ 00001101
Сдвиг 300000110 100000011Сложение+Сдвиг 4
4Сложение00001101 100000011Сдвиг 5
+ 00010011 10000001
Сдвиг 4 00001001 110000000
5Сдвиг 500000100 111000000Сдвиг 6
6Сдвиг 6 00000010 011100000Сдвиг 7
7Сдвиг 7 00000001 001110000Сдвиг 8
8Сдвиг 800000000 100111000
i – номер цикла при реализации алгоритма умножения на МП; М0i – микрооперация, используемая в i-ом цикле алгоритма; М0i+1 – микрооперация, рекомендуемая по результатам анализа ДР0i для исполнения в i+1 цикле алгоритма. После 8-ого цикла в РР, ДР фиксируется результат.
2. Реализация микрокомандного режима.
Соединение гнезда СИМ с гнездом СИНХР микропроцессора; Занесение МК 0000 01 000 в РМК: обнуление рабочего регистра (0РР);Занесение МК 0001 11 010 в РМК для переноса вводимых данных в регистр данных (РД) в дополнительный регистр (ДР) (ШВхДР);Занесение данных в РД операнда Y 00001101 (ШВх=Y) в ДР и МК 1111 10 000 в РМК для переноса вводимых на следующей операции данных в нулевой регистр регистров общего назначения (РОН) (ШВхР0);Ввод данных в РД операнда Х 00001100 в Р0 и МК 1110 11 010 (ШВх=X) для вывода содержимого РД в выходной регистр, то есть на шину выхода (РДШВых), и с помощью индикации светодиодов в выходном регистре определяем младший разряд дополнительного регистра: если 0, то выполняем на следующей операции логический сдвиг вправо, если 1, то прибавляем к содержимому рабочего регистра значение операнда X в нулевом регистре РОН и потом арифметический сдвиг вправо;Так как младший разряд ДР равен 0, то выполняем логический сдвиг вправо рабочего и дополнительного регистра (РР,ДР)СЛПРР,ДР с помощью ввода команды с кодом 1100 11 101, тем самым реализуя первый цикл i=1;Ввод команды 1110 11 010 для вывода дополнительного регистра на шину выхода, и рабочего регистра на шину адреса, отображающихся индикаторами на выходных регистрах сверху от мнемосхемы в прямоугольниках «Выход информации» и «Выход адреса» соответственно (ДРШВых, РРШАдр);Снова младший разряд ДР равен 0, выполняем то же , что и в пункте 6, цикл i=2;Повторяем пункт 7; По индикаторам на выходных панелях снова определяем младший разряд ДР, в этом случае равный 1, поэтому вводим в РМК команду 1011 10 000, которая к нулевому значению РР 00000000 прибавляет содержимое регистра Р0 в РОН, равное 00001100, в результате получается 00001100 и затем выполняет арифметический сдвиг вправо (РР+Р0,ДР)САПРР,ДР, реализуется цикл i=3; Далее всё аналогично повторяем в зависимости от значения пладшего разряда ДР, пока число циклов не достигнет 8;На панелях «Выход информации» и «Выход адреса» (ШВых и ШАдр) с помощью индикации светодиодов видим результат: значение произведения X*Y, равное 10011100, то есть работа в системе микрокоманд выполнена верно.Все выполненные операции представлены для удобства в таблице 2:



Таблица 2
kiУстановкаКонтрольПояснения
ПШВхКод вводимой МК вводимойМКДР0
100000 01 0000РР
210001 11 010ШВхДР
30000011011111 10 000ШВх=Y, ШВхР0
40000011001110 11 0100ШВх=X, РДШВых
5101100 11 101(РР,ДР)СЛПРР,ДР
601110 11 0100ДРШВых, РРШАдр
7201100 11 101(РР,ДР)СЛПРР,ДР
801110 11 0101ДРШВых, РРШАдр
9301011 10 000(РР+Р0,ДР)САПРР,ДР
1001110 11 0101ДРШВых, РРШАдр
11401100 11 101(РР+Р0,ДР)САПРР,ДР
1201110 11 0100ДРШВых, РРШАдр
13501011 10 000(РР,ДР)СЛПРР,ДР
1401110 11 0100ДРШВых, РРШАдр
15601011 10 000(РР,ДР)СЛПРР,ДР
1601110 11 0100ДРШВых, РРШАдр
17701100 11 101(РР,ДР)СЛПРР,ДР
1801110 11 0100ДРШВых, РРШАдр
19801100 11 101(РР,ДР)СЛПРР,ДР
2001110 11 010ДРШВых, РРШАдр

Примечания: k – порядковый номер шага реализуемого алгоритма или введённой в МП микрокоманды; i – порядковый номер цикла;
3. Реализация микропрограммного режима.
1) Составим таблицу 24-разрядного слов микрокоманд микропрограммы, которые нужно сначала в регистр информации RG в соответствии с описанным выше алгоритмом работы микропрограммы, а затем из RG – в ЗУ, а также затем произвести контрольное чтение всех занесенных в ЗУ микрокоманд. Поскольку для умножения и деления 8-разрядных операндов требуется восемь операций сдвига, то для их подсчёта в одном из регистров общего назначения организуется счётчик сдвигов, в который заносится число 248(код – 11111000). После восьми сдвигов счётчик переполняется, фиксируя число 256 или код 100000000. На выходе переноса АЛУ появляется сигнал Пвых = 1, который индицирует окончание программы.Таблица содержит 26 колонок, нулевая колонка отводится под номера ячеек ЗУ, в которых хранится МК микропрограммы, последняя колонка – под пояснения. Основой для составления микропрограммы служит представленная в теоретических сведениях блок-схема алгоритма выполняемой операции. В первые 9 колонок таблицы занесём код МК МП, в колонках с 10 по 19 расположим управляющую часть МК или операнды, а в колонках с 20 по 24 разместим адресную часть. Для каждого разряда МК проставим единичные или нулевые биты информации.




Код микрокомандыУправляющая часть микрокомандами микропроцессораАдрес следующей микрокомандыПояснение
k123456789101112131415161718192021222324
0111110001000000001010000ШВх Р1
1000000000000111111001000ШВх = 11111000
2000001000000111111011000ШВх=0Р0
3000111010000000001000100ШВх ДР
4000000000101100001010100ШВх=Y=00001101
5111110000000000001001100ШВх Р0
6000000000001100001000110ШВх=X=00001100
7111011010001011000000010ДРШВых, ДР0=?
8110011101000000000001010(РР,ДР)СЛПРР,ДР
9101110000000000000001010(РР+Р0,ДР)САПРР,ДР
10011000001010000000011010Р1+1 Р1
11111011010000111000000110ДРШВых,ШВых=?
12111011010000011000011100ДРШВых, адр. в яч.7
13111011010000011000100000ДРШВых, КОНЕЦ

Микропрограмма реализуется пошаговым исполнением её отдельных микрокоманд согласно указанных в ячейках адресам. Как видно из адресной части микропрограммы, в ячейке 0 указан адрес ячейки 1, в ячейке 1 – адрес ячейки 2 и т.д. По этому до 6 ячейки включительно микрокоманды исполняются последовательно. В ячейке 6 указан адрес ячейки 12, где хранится МК вывода содержимого ДР на ШВых (а также РР на ШАдр при сигнале ПР=0) и адрес следующей МК – ячейка 7. Микрокомандной ячейки 7 проверяется младший разряд ДР0 дополнительного регистра, при этом адрес 01000 (8) заносится в регистр информации БМУ. Если ДР0 = 0, то он сохраняется и на следующем шаге даётся МК ячейки 8, если же ДР0=1, то счетчик адреса БМУ получает приращений +1 и выполняется МК ячейки 9. Из ячеек 8, 9 осуществляется переход в ячейку 10, по команде которой содержимое счётчика циклов Р1 увеличивается на +1. В ячейке 11 хранятся МК для вывода содержимого ДР и РР на ШВых и ШАдр и данные управляющей части МКМПр для проверки сигнала ПВых – выхода переноса АЛУ. При пвых=0 из ячейки 11 с помощью БМУ совершается переход к ячейке 12, где указан адрес ячейки 7 для выполнения следующего цикла программы; при ПВых=1 – к ячейке 13 для вывода информации на ШВых, ШАдр и окончания программы. 2) Запишем первую МК микропрограммы в регистр информации (RG)блока памяти, для чего :- подадим СИМ на вход С регистра RG;- нажмём кнопку ПУСК при занесении нулевого бита или кнопки ВХОД ИНФОРМАЦИИ и ПУСК при занесении единичного бита информации, вводя текущий код микрокоманды по таблице;- указанную манипуляцию выполняем 24 раза, начав с 24-ого РАЗРЯДА МК и ЗАКОНЧИВ 1-м.- отсоединияем СИМ от входа С RG. 3) Затем перенесём первую МК микропрограммы из регистра информации в ЗУ, для чего :- подадим СИМ на вход V1 ЗУ;- нажмём кнопку ПУСК, при этом счётчик адреса (RGA) и его индикатор зафиксирует занесение МК в первую ячейку ЗУ;- отсоединим СИМ от входа V1. 4) Повторим пункты 2) и 3) для занесения всех 14-ти микрокоманд микропрограммы.
5) Осуществим контрольное чтение занесённой в ЗУ микропрограммы в следующей последовательности :а) Подадим СИМ на вход V2 ЗУ и нулевое напряжение на гнездо КОНТРОЛЬ с выхода одного из логических элементов;б) Произведём сброс регистра информации RG и регистра адреса RGA.в) Нажимая кнопку ПУСК, наблюдаем на индикаторе регистра информации RG считывание из ЗУ микрокоманд микропрограммы, а на индикаторе регистра адреса RGA – номер ячейки ЗУ.г) Обнаружив ошибку в 11-ой набранной микропрограмме, производим сброс RG И RGA, в режиме контрольного чтения по индикатору регистра адреса RGA устанавливаем номер 10 ячейки ЗУ, то есть предшествующий номеру ошибочной МК, и вновь записываем её в ЗУ. 6) И наконец реализовываем выполнение занесённой в ЗУ микропрограмму двумя способами, для чего :а) Установливаем тумблер РАБОТА/ЗАПИСЬ в положение РАБОТА, тумблеры ПОЗИЦИЯ 0 и ПОЗИЦИЯ 1 – в верхнее положение;б) Многократно нажимая кнопку ПУСК, проконтролируем результаты последовательного выполнения микрокоманд микропрограммы умножения на индикаторах ВЫХОД АДРЕСА и ВЫХОД ИНФОРМАЦИИ (младшие разряды расположены СЛЕВА, старшие - СПРАВА), а адреса исполняемых команд и их коды – на индикаторах регистров адреса RGA и информации RG блока памяти;в) Также можно использовать непрерывный режим работы выполнения микропрограммы, чтобы каждый раз не нажимать кнопку ПУСК, что обеспечено не прерыванием тактов синхроимпульсов, следующих сразу друг за другом. Для этого установим тумблер РЕИМ в положение НЕПР и, нажимая кнопку ПУСК, исполняем микропрограмму в непрерывном режиме работы блока синхронизации. В итоге на светодиодных индикаторах ВЫХОД АДРЕСА и ВЫХОД ИНФОРМАЦИИ. ВЫХОД ИНФОРМАЦИИ и ВЫХОД АДРЕСА наблюдаем результат выполнения последовательных операций произведения X (00001100) и Y (00001101) – 10011100, что соответствует действительности, следовательно: микропрограмма, её алгоритм и его реализация на микропроцессорной установке выполнены верно.
Вывод: были изучены и реализованы два метода умножения двух чисел на микропроцессорной установке: микрокомандного (МК) и микропрограммного (МП). В МП последовательно вводятся и выполняются МК согласно алгоритму реализуемой операции. При втором способе составляется микропрограмма, представляющая собой набор МК, которые заносятся в ЗУ и считываются по мере их выполнения. В микропрограммном режиме можно реализовать умножение целых двоичных чисел без знака.В алгоритмах умножения и деления двоичных чисел используются операции сдвига, после выполнения которых выполняется контроль младшего разряда дополнительного регистра (ДРО), или выхода переноса АЛУ (Пвых) и в зависимости от их значений принимается решение на выполнение следующей операции. Так как МК исполняется на втором такте, то до завершения операции сдвига неизвестно, какую следующую МК необходимо вводить в МП. Это обстоятельство вынуждает использовать пустую операцию.Для реализации микрокомандного способа умножения и деления для удобства был составить табличный алгоритм.Отличие микропрограммного способа реализации от микрокомандного проявляется в автоматизации принятия решения о следующей микрокоманде, что обеспечивает БМУ.