| |||||
МЕНЮ
| Разработка управляющей части автомата для сложения двух чисел с плавающей запятой в дополнительном коде с помощью модели МураРазработка управляющей части автомата для сложения двух чисел с плавающей запятой в дополнительном коде с помощью модели МураСодержание Стр. Задание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1й раздел. Разработка машинного алгоритма выполнения операций . . . 1. Построение алгоритма операций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Пример выполнения сложения, оценка погрешности . . . . . . . . . . . . . . . . . . . . . . . 5 2й раздел. Разработка ГСА и функциональной схемы ОА . . . . . . . . 2.1. Разработка ГСА . . . . . . . . . . . . . . . . . . . . . . 2.2. Построение функциональной схемы ОА . . . . . . . . . . . . 3й раздел. Разработка логической схемы управляющей части автомата . 3.1. Составление таблицы переходов-выходов . . . . . . . . . . . 3.2. Граф автомата Мура . . . . . . . . . . . . . . . . . . . . 3.3. Построение функций возбуждения входов триггеров и логической схемы . . . .10 4й раздел. Оценка времени выполнения микропрограммы . . . . . . . . Заключение. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Задание Разработать управляющую часть автомата для сложения двух чисел с плавающей запятой в дополнительном коде с помощью модели Мура. Логическую схему реализовать в базисе «И-НЕ» на D-триггерах. Раздел 1. Разработка машинного алгоритма выполнения операции. Шаг 1. Сравнить порядки чисел A и B. Вычислить разность порядков
чисел. Если ?p ? 14, то выдать число A и закончить выполнение. Если ?p ? Шаг 2. Сложить мантиссы по правилам ДК. Шаг 3. Проверить условие нормализации ?. Если оно не выполняется, сдвинуть сумму на один разряд вправо, к порядку результата прибавить единицу и перейти к п. 5. Шаг 4. Циклически проверять условие нормализации ?. Если оно не выполняется, сдвинуть сумму на один разряд влево, от порядка результата отнять единицу. Шаг 5. Проверить сумматор порядков на переполнением. Если возникло переполнение, установить флаг №1. Если возникла ошибка типа «машинный ноль», установить флаг №2. Блок-схема имеет следующий вид. Рассмотрим пример выполнения операции. При сдвиге мантиссы числа В получается погрешность, равная: Раздел 2. Разработка ГСА и функциональной схемы ОА. Регистры РгА и РгВ имеют 22 разряда: биты 0-1 – знак числа, биты 2-15
Список микроопераций и логических условий представлен в таблице. |Y1 |РгА:=А |X1 |?T0&T2&T3&T4 ? ?T0&T1 ? | Ti – разряды СМП, Zi – разряды СММ. Условия X5 и X6 соответствуют условиям ? и ? в блок-схеме. ГСА имеет вид: Функциональная схема ОА имеет вид: Раздел 3. Разработка логической схемы управляющей части автомата. Каждое состояния автомата кодируется двоичным числом, равным индексу данного состояния. Например, b12 = 1100. Таблица переходов-выходов имеет вид: |Код ABCD |Исх. |Входной набор |Выходной набор|След. | Граф автомата Мура имеет вид: Из таблицы переходов-выходов можно вывести выражения для выходных сигналов: Из графа автомата Мура выводятся выражения для сигналов возбуждения триггеров: Заменим комбинации ABCD на Bi (например, B12 = A&B&?C&?D) и будем минимизировать выражения в скобках. [pic] [pic] [pic] Теперь осуществим переход в базис «И-НЕ». Раздел 4. Оценка времени выполнения микропрограммы. Временной граф имеет следующий вид. В графе имеются три цикла: 8-9, 11-12, 17-21. Будем считать, что
количество итераций циклов 8-9 и 11-12 равно 5, а цикла 17-21 – 3. Таким
образом, время выполнения циклов 8-9 и 11-12, имеющих по две вершины, равно Заключение. В результате проделанной работы построена управляющая часть
операционного автомата, который умеет складывать числа с плавающей запятой.
2 1 СМП(0)=0 СММ:=РгВ(0:15); СМП:=РгВ(16:21) СММ:=РгА(0:15); СМП:=РгА(16:21) [СМП]=14 РгА:=А; РгB:=В; СММ:=0; F1:=0; F2:=0 Начало Конец F1:=1 F1:=0 F1:=0; F2:=1 ?F1&СМП(0) F1&?СМП(0) ? [СММ]; СМП:=[СМП]-1 [СММ]; СМП:=[СМП]+1 ? СММ:=РгА(0:15)+РгВ(0:15); F1:=СМП(0) СМП:=РгА(16:21) СМП:=РгВ(16:21) РгВ(0:15); СМП:=[СМП]-1 РгА(0:15); СМП:=[СМП]+1 [СМП]=0 [СМП]=0 3 2 1 [pic] [pic] 2 Y9, Y10 Y7, Y8 1 X2 X1 Y6 Y1, Y2, Y3, Y4, Y5 Начало 1 1 1 0 0 0 0 1 1 0 1 0 1 1 1 0 0 0 1 X3 X4 X4 Y11, Y12 Y13, Y14 Y10 Y8 Y15, Y16 X5 Y17, Y12 1 X6 1 0 0 Конец Y4, Y20 Y19 2 1 1 0 0 0 1 1 0 0 1 0 1 1 0 Y4 b0 X7 X8 Y18, Y14 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14 b0 X5, X6 Y16 Y14 Y12 Y17 Y18 Y3 Y9 Y7 Y1 Y11 Y8 Y5 Y20 Y19 Y4 Y10 Y2 Y13 X3 X4 F2 F1 СММ 15 2 0 1 СМП 5 1 0 РгВ 21 17 16 15 2 0 1 РгА 21 17 16 15 2 0 1 [pic] [pic] [pic] [pic] [pic] [pic] [pic] [pic] [pic] [pic] [pic] [pic] Начало 1 2 3 5 7 11 8 9 12 10 13 14 15 4 6 16 17 18 22 21 20 19 23 Конец 104/256 152/256 108/256 148/256 1/2 1/2 1/5 4/5 1/5 4/5 1/2 1/2 1/4 3/4 3/4 1/4 2/3 1/3 [pic] |
ИНТЕРЕСНОЕ | |||
|