Разработка сумматора-умножителя
Множитель представляется обычным весомозначным кодом: 04 — 00, 14 — 01, 24 — 10, 34 — 11. Метод умножения: умножение закодированного двоично-четверичного множимого на. Знак произведения определяется суммой по модулю два знаков сомножителей,. Результат закодирован в соответствии с заданием на кодировку множимого. Коды четверичных цифр множимого для перехода к двоично-четверичной с/с: Умножитель… Читать ещё >
Разработка сумматора-умножителя (реферат, курсовая, диплом, контрольная)
Содержание
- 1. Введение
- 2. Исходные данные
- 3. Разработка алгоритма умножения
- 4. Разработка структурной схемы сумматора-умножителя
- 5. Разработка функциональных схем основных узлов сумматора-умножителя
- 5. 1. Логический синтез одноразрядного четверичного сумматора (ОЧС)
- 5. 2. Логический синтез одноразрядного четверичного умножителя-сумматора (ОЧУС)
- 5. 3. Логический синтез преобразователя множителя (ПМ)
- 6. Литература
1.
Введение
.
Курсовой проект предполагает синтез цифровых схем арифметических устройств, выполняющих операции сложения, вычитания, умножения над числами, представленными в форме с плавающей запятой в двоичной и двоично-четверичной системах счисления.
2. ИСХОДНЫЕ ДАННЫЕ К КУРСОВОМУ ПРОЕКТУ
В качестве исходных данных к курсовому проекту задается следующее:
1. Исходные операнды — десятичные числа с целой и дробной частью, над которыми производится операция умножения (Мн=29.63, Мт=63.29).
2. Алгоритм выполнения операции умножения: Б.
3. Метод ускоренного умножения на базе которого строится умножитель:
умножение закодированного двоично-четверичного множимого на 2 разряда двоичного множителя одновременно в прямых кодах;
Преобразование множителя производится для исключения из процесса умножения диады множителя 11.
4. Двоичные коды четверичных цифр множимого для работы в двоично-четверичной системе счисления (вариант кодирования учитывается при выполнении арифметических операций: 04 — 10, 14 — 01, 24 — 00, 34 — 11.)
5.). Множитель представляется обычным весомозначным кодом: 04 — 00, 14 — 01, 24 — 10, 34 — 11.
6. Тип синтезируемого устройства умножения:
умножитель 2-го типа строится на базе ОЧУС, ОЧС и регистра результата.
7. Способ минимизации и логический базис для аппаратной реализации ОЧУС (Алгоритм Рота) и ОЧС (Карты Карно-Вейча), ОЧС реализуется на мультиплексорах.
Логический базис :
Х1 Х1Х2
Х2
3. РАЗРАБОТКА АЛГОРИТМА УМНОЖЕНИЯ.
ИСХОДНЫЕ ДАННЫЕ:
Исходные сомножители: Мн=29,63: Мт= 63,29.
Алгоритм умножения: Б.
Метод умножения: умножение закодированного двоично-четверичного множимого на
2 разряда двоичного множителя одновременно в прямых кодах.
Коды четверичных цифр множимого для перехода к двоично-четверичной с/с:
04 10, 14 01, 24 00, 34 11.
Тип синтезируемого умножителя: умножитель 2-го типа (ОЧУС, ОЧС, регистр результата).
Арифметические операции сложения двоично-четверичных чисел с разными знаками в дополнительных кодах и умножения на 2 разряда множителя в прямых кодах должны выполняться одним цифровым устройством, именуемым СУММАТОР-УМНОЖИТЕЛЬ. Учитывая то, что суммирующие узлы обязательно входят в состав умножителя, начнем синтез с разработки алгоритма умножения.
1. Перевод сомножителей из десятичной системы счисления в четверичную:
МНОЖИМОЕ
29 | 4 0,63 Мн4 =131,2201
28 7| 4 4
1 4 1 2,52 Мн2/4 = 11 101,00001001
3 4 в соответствии с заданной кодировкой множимого
2,08 множимое представляется кодом:
4 04 — 10, 14 — 01, 24 — 00, 34 — 11
0,32
0,28
МНОЖИТЕЛЬ
63| 4 0,29 Мт4 = 333,1022
60 15 | 4 4
3 12 3 1,16 Мт2/4 = 111 111,01001010
3 4 множитель представляется обычным весомозначным
0,64 кодом: 04 — 00, 14 — 01, 24 — 10, 34 — 11
2,56
2,24
2. Запишем сомножитель в форме с плавающей запятой в прямом коде:
Мн = 0,1 110 100 001 001 Рмн = 0.0011 +0310 закодирован по заданию
Мт = 0,11 111 101 001 010 Рмт = 0.0011 +0310 незакодирован по заданию
3. Умножение двух чисел с плавающей запятой на 2 разряда множителя одновременно в прямых кодах сводится к сложению порядков, формированию знака произведения, преобразованию разрядов множителя с целью исключения диады 11, и перемножению мантисс сомножителей.
Порядок произведения будет равен:
Рмн = 0.0011 +03
Рмт = 0.0011 03
Р = 0.0100 12
результат закодирован в соответствии с заданием на кодировку множимого.
Знак произведения определяется суммой по модулю два знаков сомножителей,
т.е.: зн Мн + зн Мт = 0 + 0 = 0.
Для умножения мантисс необходимо предварительно преобразовать множитель, чтобы исключить диаду 11(34), заменив ее на триаду 101. Преобразованный множитель имеет вид:
Мт п4 = 12 211 200 или Мт п2 = 01 00 00 01 01 00 10 10.
Перемножение мантисс по алгоритму «Б» приведено в таблице:
Четверичная с/с Двоично-четверичная система счисления Комментарии
0. 0 0. 10 10 10 10 10 10 10 10 10 10 10 10 10 10 ч= 0
0. 3 231 002 0. 10 10 10 10 10 10 10 11 00 11 01 10 10 00 П1ч = Мн*2
0. 3 231 002 0. 10 10 10 10 10 10 10 11 00 11 01 10 10 00 ч
0. 32 310 020 0. 10 10 10 10 10 10 11 00 11 01 10 10 00 10 П2ч = 4−1*Мн*2
0. 102 201 022 0. 10 10 10 10 10 01 10 00 00 10 01 10 00 00 ч
0. 1 312 201 000 0. 10 10 10 10 01 11 01 00 00 10 01 10 10 10 П4ч = 4−3*Мн*1
0. 2 021 002 022 0. 10 10 10 10 00 10 00 01 10 10 00 10 00 00 ч
3. 33 320 211 330 000 1. 11 11 11 00 10 00 01 01 11 11 10 10 10 10 П5ч = 4−4*Мн*(-1)
3. 33 322 232 332 022 1. 11 11 11 00 00 00 11 00 11 11 00 10 00 00 5ч
0. 13 122 010 000 000 0. 01 11 01 00 00 10 01 10 10 10 10 10 10 10 П8ч = 4−7*Мн*1
0. 13 110 302 332 022 0. 01 11 01 01 10 11 10 00 11 11 00 10 11 11 8ч
4. После окончания умножения необходимо оценить погрешность вычислений. Для этого полученное произведение (Мн*Мт4= 0, 13 110 302 332 022 РМн*Мт = 6) приводится к нулевому порядку, а затем переводится в десятичную систему счисления:
Мн*Мт4 = 131 103,02332022 РМн*Мт = 0;
Мн*Мт10 = 1875,1855.
Результат прямого перемножения операндов дает следующее значение:
Мн10*Мт10 = 29,63 * 63,29 = 1875,2827.
Абсолютная погрешность:
= 1875,2827 — 1875,1855 = 0,0972.
Относительная погрешность:
0,0972
, 518 321 ( = 0,518 321%)
Мн*Мт 1875,2827
Список литературы
- Луцик Ю.А. Конспект лекций по курсу Арифметические и логические основы вычислительной техники.
- Лысиков Б.Г. Арифметические и логические основы цифровых автоматов. Мн.: Вышэйшая школа, 2002.