|
|
|
|
|
|
|
|
страницы:
1
2
Текущая страница: 1
|
|
МИНИСТЕРСТВО ВЫСШЕГО И СРЕДНЕГО СПЕЦИАЛЬНОГО ОБРАЗОВАНИЯ РФ МОСКОВСКИЙ ИНСТИТУТ РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ И АВТОМАТИКИ
КУРСОВАЯ РАБОТА
Факультет ВАВТ
Дисциплина ЭВМ СКС
Студент
Специальность 22.02
Преподаватель Калиш Г.Г.
МОСКВА май 2003 Техническое задание
Разработать вычислительное устройство, выполняющее следующие операции:
изменение знака числа деление чисел
Числа представлены в формате с плавающей точкой с разрядностью 18+6.
Содержание
1. ТЕХНИЧЕСКОЕ ЗАДАНИЕ 2 2. СОДЕРЖАНИЕ 3 3. ОПИСАНИЕ СТРУКТУРНОЙ СХЕМЫ УСТРОЙСТВА С ЕЕ ОБОСНОВАНИЕМ 4 4. ОПИСАНИЕ БЛОК-СХЕМЫ АЛГОРИТМА ВЫПОЛНЕНИЯ ОПЕРАЦИЙ И ЕЕ МИКРОПРОГРАММНОЙ РЕАЛИЗАЦИИ. 6 5. ЧИСЛОВЫЕ ТЕСТОВЫЕ ПРИМЕРЫ ВЫПОЛНЕНИЯ ОПЕРАЦИЙ С ПОЯСНЕНИЯМИ 10 6. ОПИСАНИЕ ФУНКЦИОНАЛЬНОЙ СХЕМЫ УСТРОЙСТВА. 11 7. КРАТКОЕ ОПИСАНИЕ ПРИНЦИПИАЛЬНОЙ СХЕМЫ 12 8. ЗАКЛЮЧЕНИЕ 13 9. СПИСОК ЛИТЕРАТУРЫ. 13
Описание структурной схемы устройства с ее обоснованием
Структурная схема устройства представлена на рисунке 1. Она состоит из двух частей. Первая часть схемы, в состав которой входят регистры Ao и Bo и сумматор, предназначена для работы с порядками чисел. Вторая часть схемы, состоящая из регистров Am, Bm и Z, мультиплексора, сумматора и компаратора предназначена для работы с мантиссами чисел.
При выполнении операции деления используется два числа - A (делимое) и B (делитель). Число A хранится в регистрах Ao и Am соответственно порядок и мантисса. Число B хранится в регистрах Bo и Bm соответственно порядок и мантисса. В начале работы делимое A заносится в регистры: мантисса в регистр Am с помощью сигнала Y3, порядок в регистр Ao - Y4, а делитель B: мантисса в регистр Bm (Y5), порядок в регистр Bo (Y6). Мантисса делимого A сдвигается влево путем косой передачи из регистра Am в сумматор. Делитель B поступает в сумматор SM из регистра Bm в прямом или обратном кодах (Y9). Дополнительный код делимого образуется в SM за счет подсуммирования обратного кода делимого B сигналом “+1SM” (Y10). Цифры частного Zi, определяемые по знаку частичных остатков в регистре Am, фиксируются в регистре Z путем последовательного занесения их в младший разряд регистра Z (Y7) и сдвига содержимого регистра Z (Y8). Порядок частного определяется вычитанием порядков на SM путем подачи обратного значения порядка делителя из регистра Bo и фиксации результата в регистре Bo.
При выполнении операции изменения знака используется одно число. Число записывается в регистр Bm (Y5) и подается на сумматор SM в обратном коде (Y9) и записывается в регистр Am (Y3) с предварительным подсумированием единицы в сумматоре (Y10).
Рисунок 1
Описание блок-схемы алгоритма выполнения операций и ее микропрограммной реализации.
Блок-схема выполнения операций представлена на рисунке 2.
В начале работы гасится выходная готовность (Y14) и проверяется входная готовность (P1). После получения сигнала входной готовности обнуляются регистры A o и Am (Y0), Bo и Bm (Y1) и Z (Y2). Далее проверяется код операции (P2) для определения дальнейших действий.
Операция изменения знака числа - ветвь один. Записываем исходное число в регистр Bm (Y5). Передаем на SM его обратный код с подсуммированием единицы младшего разряда (Y10). Данные с SM записываем в регистр Am (Y3). После этого устанавливаем выходную готовность (Y13) и заканчиваем работу.
Операция деления чисел - ветвь два. Производим запись: мантиссы делимого в регистр Am (Y3), порядка делимого в регистр Ao (Y4) и мантиссы и порядка делителя в регистр Bm (Y5) и Bo (Y6) соответственно. Вычисляем разность порядков чисел путем сложения первого порядка с обратным кодом второго (Y11) и сохраняем результат в регистре Bo (Y6). Проверяем равенство делителя нулю (P3). Если делитель равен нулю, то сигнализируем об ошибке аргументов и устанавливаем выходную готовность (Y13). Если делитель не равен нулю, тогда деление возможно и начинается цикл поразрядного получения мантиссы частного. На SM передается сдвинутое косой передачей в сторону старших разрядов делимое и обратный код делителя (Y9) с подсуммированием единицы младшего разряда (Y10). С выхода SM частичный остаток заносится в регистр Am (Y3). Цифра модуля частного вычисляется как сумма по модулю два знаковых разрядов частичного остатка и делителя и заносится в предварительно сдвинутый на один разряд влево (Y8) регистр Z (Y7). Проверяем счетчик чисел (P4). Если он не равен нулю, продолжаем цикл по определению разрядов частного. Если счетчик равен нулю, то мы определили все разряды частного, и переходим к нормализации результата. Если число не нормализовано (P6), то производим сдвиг Z в сторону старших разрядов (Y8) и уменьшение порядка (Y12). После нормализации числа устанавливаем выходную готовность и заканчиваем работу.
Для реализации устройства используется управляющий автомат с выделенной адресной памятью, его схема изображена на рисунке 3, в таблице 1 представлены состояния его переходов, в таблице 2 управляющие сигналы и в таблице 4 описаны префиксные функции.
Рисунок 2 ПЗУ А
Текущая страница: 1
|
|
|
|
|
|
|
|
|
|