Синтез микропрограммного управляющего автоматаРефераты >> Программирование и компьютеры >> Синтез микропрограммного управляющего автомата
Содержание
Введение 1 Постановка задачи 2 Описание используемого алгоритма умножения 2.1 Алгоритм умножения чисел в форме с ПЗ с простой коррекцией 2.2 Алгоритм умножения первым способом 3 Ручной подсчет 4 Выбор и описание структурной схемы ОА 5 Реализация содержательной ГСА 6 Построение отмеченной ГСА 7 Синтез МПА в соответствии с моделью Мили 7.1 Построение графа автомата 7.2 Построение прямой структурной таблицы переходов и выходов 7.3 Кодирование на D-триггерах 7.4 Получение логических выражений для функций возбуждения D-триггеров и функций выходов 7.5 Кодирование на RS-триггерах 7.6 Получение логических выражений для функций возбуждения RS-триггеров 7.7 Кодирование на T-триггерах 7.8 Получение логических выражений для функций возбуждения T-триггеров 7.9 Кодирование на счетчике 7.10 Получение уравнений для счетчика 8 Синтез МПА в соответствии с моделью Мура 8.1 Построение графа автомата 8.2 Построение прямой структурной таблицы переходов и выходов 8.3 Кодирование на D-триггерах 8.4 Получение логических выражений для функций возбуждения D-триггеров и функций выходов 8.5 Кодирование на RS- триггерах 8.6 Получение логических выражений для функций возбуждения RS- триггеров и функций выходов 9 Построение функциональной схемы микропрограммного управляющего автомата Заключение Библиографический список Перечень сокращений |
Введение
Потребность в вычислениях возникла у людей на самых ранних стадиях развития человеческого общества. Причем с самого начала для облегчения счета люди использовали различные приспособления. Многие из них были весьма интересными и остроумными по принципу действия, но все они обязательно требовали, чтобы в процессе вычислений активно участвовал человек-оператор. Качественно новый этап развития вычислительной техники наступил с изобретением и созданием электронных вычислительных машин, которые работают автоматически, без участия человека, в соответствии с заранее заданной программой. Появление таких машин вызвано объективными условиями современного развития науки, техники и народного хозяйства. Во многих областях человеческой деятельности уже в середине ХХ века объем и сложность вычислительных работ настолько возросли, что решение некоторых задач без применения вычислительной техники было бы практически не возможным. В настоящее время электронные вычислительные машины применяются во многих областях науки, техники и народного хозяйства. В основном они используются: для решения сложных математических и инженерных задач, в качестве управляющих машин в промышленности и военной технике, в сфере обработки информации.
1 Постановка задачи
Требуется разработать МПА, управляющий операцией умножения двоичных чисел в форме с плавающей запятой и характеристикой в дополнительном коде первым способом с простой коррекцией.
Функциональную схему устройства построить в основном логическом базисе. Операнды разрядностью 4 байта (тридцать два разряда) поступают по входной шине (ШИВх) в дополнительном коде (ДК), результат также в ДК выводится по выходной шине (ШИВых). В младших 24 разрядах операнда хранится мантисса со знаком, а в следующих 8 разрядах - характеристика.
2 Описание используемого алгоритма умножения
Процесс умножения состоит из последовательности операций сложения и сдвигов.
2.1 Алгоритм умножения чисел в форме с ПЗ с простой коррекцией
1. Определить знак произведения сложением по модулю два знаковых разрядов сомножителей.
2. Перемножить модули мантисс сомножителей по правилам с ФЗ:
2.1. Выполнить коррекцию, если хотя бы один из сомножителей отрицательный по правилу введения коррекции.
Правила введения коррекции при умножении чисел в ДК:
- Если сомножители положительны, коррекции нет.
- Если один из сомножителей отрицателен, к псевдопроизведению надо прибавить ДК от модуля положительного сомножителя.
- Если оба сомножителя отрицательны, к псевдопроизведению надо прибавить ДК от модулей дополнительных кодов обоих сомножителей, то есть их прямые коды.
2.2. Перемножить модули сомножителей, представленных в ДК, одним из четырех способов получить псевдопроизведение.
3. Определить характеристику произведения алгебраическим сложением характеристик сомножителей.
4. Нормализовать мантиссу результата и выполнить округление если необходимо.
2.2 Алгоритм умножения первым способом
Умножение с младших разрядов множителя со сдвигом частных сумм вправо.
В каждом такте цикла умножения первым способом необходимо:
2.1 Сложить множимое с предыдущей частной суммой, если очередной разряд множителя равен 1, и результат (новую частную сумму) запомнить; в случае если очередной разряд множителя равен 0 суммирование не выполнять;
2.2 Уменьшить вдвое частную сумму, что равносильно сдвигу ее на один разряд вправо.
3 Ручной подсчет
Выполним ручной подсчет в соответствии с выше указанным алгоритмом.
В качестве множителя возьмём число 9, а в качестве множимого 13.
3.1 Сомножители положительные (A>0, B>0)
A = 9 = 10012, Апк = 0,1001, Адк = 0,1001
B = 13= 11012, Впк = 0,1101, Вдк = 0,1101
3.1.1 Определим знак произведения: 0 + 0 = 0
3.1.2 Перемножим модули сомножителей:
Таблица 1
Множимое |
Множитель |
Сумматор |
Пояснения |
0,1101 |
0,1001 |
0,00000000 0,11010000 0,11010000 |
Сложение |
0,01101000 |
Сдвиг | ||
0,0100 |
0,00110100 |
Сдвиг | |
0,0010 |
0,00011010 |
Сдвиг | |
0,0001 |
0,00011010 0,11010000 0,11101010 |
Сложение | |
0,01110101 |
Сдвиг |
Получили псевдопроизведение: 0,01110101
3.1.3 Коррекция не нужна, так как оба множителя положительные.
3.1.4 Присвоение произведению знака:
(A*B)дк=0,01110101
(A*B)пк=0,01110101
A*B = (9)*(13) = 117 = 11101012
3.2 Сомножители разных знаков (А<0, B>0)