Реферат по предмету "Программирование"


Разработка вычислительного устройства

Разработка вычислительного устройства



Разработать вычислительное устройство, выполняющее следующие операции:


изменение знака числа

деление чисел



Числа представлены в формате с плавающей точкой с разрядностью 18+6.



Описание структурной схемы устройства с ее обоснованием



Структурная схема устройства представлена на рисунке 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






 

ПЗУ А



Адреса памяти


Условия переходов


Код ПФ


Адреса переходов



0


0


0


1



1


0


P1


1



1


P1


2



2


0


P2


4



1


P2


3



3


0


0


10



4


0


P3


8



1


P3


12



5


0


P4


6



1


P4


10



6


0


P5


7



1


P5


8



7


0


0


9



8


0


0


9



9


0


0


5



10


0


P6


11



1


P6


12



11


0


0


10



12


0


0


*





Таблица 1






Y0


Обнуление регистров Ao и Am



Y1


Обнуление регистров Bo и Bm



Y2


Обнуление регистра Z



Y3


Запись в регистр Am



Y4


Запись в регистр Ao



Y5


Запись в регистр Bm



Y6


Запись в регистр Ao



Y7


Запись разряда частного в регистр Z



Y8


Сдвиг регистра Z в сторону старших разрядов



Y9


Выбор операции в сумматоре



Y10


Подсуммирование 1 в сумматоре



Y11


Разность порядков



Y12


Уменьшение порядка частного в регистре Bo



Y13


Установка выходной готовности



Y14


Гашение выходной готовности





Таблица 2



 



Рисунок 3






Функция


Значение



P1


Входная готовность



P2


Код операции



P3


Признак равенства 0 делителя



P4


Конец деления



P5


Знак числа в регистре Am



P6


Признак нормализации



P7


Знак числа в регистре Bm





Таблица 3



На рисунке 4 представлена связь управляющего автомата с операционным автоматом.





Рисунок 4



Числовые тестовые примеры выполнения операций с пояснениями

Пусть X=11010111*23, Y=1101*22. Найти частное от деления X/Y.

Все действия выполняются в устройстве в следующей последовательности:








0.1101111


Прямой код делимого


Частное X/Y



+


1.0011


Дополнительный код делителя







0.0000


Остаток положительный


1





0.0000


Остаток сдвинут влево на один разряд





+


1.0011


Дополнительный код делителя







1.0011


Остаток отрицательный


10





0.0111


Остаток сдвинут влево на один разряд





+


0.1101


Прямой код делителя







1.0100


Остаток отрицательный


100





0.1001


Остаток сдвинут влево на один разряд





+


0.1101


Прямой код делителя







1.0110


Остаток отрицательный


1000





0.1101


Остаток сдвинут влево на один разряд





+


0.1101


Прямой код делителя







1.1010


Остаток отрицательный


10000







Одновременно вычисляется порядок частного следующим образом:

pc = px - py = 0.011 - 0.010 = 0.001



Описание функциональной схемы устройства.

Функциональная схема устройства представлена на рисунке 5.

Функциональная схема реализует схему работы с мантиссами.

Используемый мультиплексор 2-1 на вход которого подается число в прямом и дополнительном коде и в зависимости от ситуации выбирается одно из двух чисел. В процессе работы осуществляется контроль делителя на равенство нулю, поэтому используемый мультиплексор должен иметь стробируемый вход.

Сумматор складывает числа, которые пришли с выхода мультиплексора и регистра Am, результат переписывается в регистр Am, который запоминает это число, сдвигает его влево в сторону старших разрядов и снова передает его на сумматор.

Так же старший разряд регистра подается на результирующий последовательно параллельный регистр Z, в котором происходит накопление результата. После определение результата, полученное число надо нормализовать и поэтому результирующий регистр кроме последовательного входа и параллельного вывода должен осуществлять сдвиг числа влево в сторону старших разрядов.



 





Рисунок 5



Краткое описание принципиальной схемы

Принципиальная схема устройства представлена на рисунке 6.

Два числа поступают на сумматор, который их суммирует и передает результат на регистр. В качестве сумматора используется микросхема К555ИМ6, а в качестве регистра К155ИР13 и К555ИР11 которые отличаются только разрядностью. Старший разряд регистра поступает на вход результирующего последовательно – параллельного регистра, в котором накапливается результат. В данной схеме в качестве результирующего регистра используется микросхема К531ИР24.





Рисунок 6



Заключение

В данной курсовой работе было разработано вычислительное устройство, выполняющее следующие операции:



Нахождение абсолютного значения числа.

Деление чисел в формате с плавающей запятой.


Построен алгоритм обработки чисел. Расписаны управляющие сигналы и префиксные функции. По имеющемся данным построена функциональная схема устройства. Также была построена принципиальная схема указанной части устройства, в которой были использованы конкретные микросхемы. Приведен тестовый пример выполнения операций.


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.