Техническое задание
В данном проекте необходимо разработать арифметически-логическое устройство (АЛУ) для выполнения операции деления без восстановления остатка (БВО) чисел, представленных в форме с плавающей запятой.
Критерий эффективности – минимальная стоимость.
Элементная база – 2-И-НЕ
Диапазон представления чисел 108.
Относительная погрешность вычисления (точность представления чисел) 10-5.
Тип устройства управления – жесткая логика.
РЕФЕРАТ
Данный проект выполнен студенткой второго курса специальности 2201 Захаровой Е.М. на листах формата А4 (пояснительная записка, состоящая из шести разделов) с иллюстрациями выполненного устройства на двух листах формата А1. Заданное устройство должно состоять из двух автоматов: управляющего (УА) и операционного (ОА). ОА служит для непосредственного выполнения арифметических и логических операций над операндами, приема данных из памяти, передачи результата операции в память или на другие устройства и передачи управляющих сигналов на УА.
УА служит для управления ОА посредствам генерируемых им управляющих сигналов. Исходя из технического задания, можно сделать вывод, что УА должен быть автоматом Мили, т.к. он имеет минимальное быстродействие и минимальную стоимость, а ОА – М-автоматом по той же причине.
РАЗРАБОТКА СТРУКТУРНОЙ СХЕМЫ ОА.
Для получения частного от деления двух чисел, представленных в форме с плавающей запятой, необходимо определить
,
При делении чисел с плавающей запятой мантисса (модуль числа) частного равна частному от деления мантиссы делимого на мантиссу делителя, а порядок (положение запятой) частного – разности порядков делимого и делителя. Частное нормализуется, и ему приписывается знак плюс если делимое и делитель имеют одинаковые знаки, и знак минус, если разные.
Если делимое равно 0, то в частное может быть записан 0 без выполнения деления. Если при вычитании порядков образовалось переполнение с положительным знаком или если делитель равен 0, то деление не производится и формируется сигнал прерывания.
При делении нормализованных чисел с плавающей запятой может оказаться, что мантисса делимого больше мантиссы делителя, и мантисса частного образуется с переполнением. Для устранения этого явления перед делением мантисс нарушают нормализации делителя сдвигом на разряд вправо. Тогда нарушения нормализации частного вправо не возникает.
Деление мантисс выполняется, как правило, методом без восстановления остатка аналогично делениюцелых чисел. Отличие заключается в том, что делимое берется такой же длины, как и делитель.
Как уже было описано в разделе «Реферат», ОА для заданного устройства будет М-автоматом. Он подходит по условию технического задания, т.к. минимизирует аппаратные затраты, а вместе с тем и стоимость, посредствам обобщения комбинационных схем γm по отношению ко всем регистрам, т.к. использовать каждую комбинационную схему γm для выполнения всех эквивалентных микроопераций.
|
М-автомат
На рисунке приведена схема М-автомата. В каждом такте такого автомата может выполняться только одна микрооперация. Сигнал [γm] задает преобразование, которое надо совершить (+,-,/, *). Для выработки слов на шину А1 используются управляющие сигналы а1, а2, …, an а на шину А2 – сигналы b2, … bn. Схема Ф настраивается на выполнение определенного преобразования управляющим сигналом [γm]. Загрузка результата z в регистр Sk инициируется управляющим сигналом dk. М-автомат получает управляющие сигналы ai, bi, di и γi из УА. Кодопреобразователь Ф не обладает памятью, поэтому каждый регистр включает в контур с обратной связью, что может привести к эффекту «гонок» (к искажению информации). Для его избежания будем использовать различные методы соседнего кодирования.
Разработка микропрограммы выполнения операции и структурно-операционной схемы ОА.
Рассчитаем разрядную сетку:
- диапазон представления чисел;
- относительная погрешность;
- основание системы счисления.
Формат чисел в формате представления с плавающей запятой:
Порядок:
, т.к.
Мантисса:
Для выявления переполнения в знаке порядка используем модифицированный код:
|
Здесь SgP – знак порядка, р – порядок, Sgm – знак мантиссы, m – мантисса. Внешние шины (входная и выходная) должны быть кратными 8, т.к. информация по ним передается байтами, а у нас получилось 25 разрядов, это не кратно 6, но 24 кратно. Мы не будем дополнять мантиссу до 32 разрядов, просто выделим один разряд для внутренней шины, а по внешним будем передавать 24 байта.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.