bsuir.info
БГУИР: Дистанционное и заочное обучение
(файловый архив)
Вход (быстрый)
Регистрация
Категории каталога
Другое [63]
Форма входа
Логин:
Пароль:
Поиск
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Файловый архив
Файлы » ВМСиС » Другое

ВМСиС (з.), АиЛОВТ, Курсовая работа, вар.8, 2016
Подробности о скачивании 02.09.2016, 19:45
Министерство образования Республики Беларусь
Учреждение образования
Белорусский государственный университет информатики и радиоэлектроники
Кафедра электронных вычислительных машин

Пояснительная записка к курсовой работе по дисциплине «Арифметические и логические основы вычислительной техники»
Тема: Разработка сумматора-умножителя

Выполнил:
Студент гр. 400541
Горностай Н.Ю.

Проверила:
Лукьянова И.В.

Минск 2016
Исходные данные:
Исходные сомножители: = 28,69; = 21,59;
Алгоритм умножения: Г;
Метод умножения: умножение закодированного двоично-четверичного множимого на 2 разряда двоичного множителя одновременно в дополнительных кодах;
Варианты кодирования четверичных цифр двоичными кодами:
0= 01; 1= 10; 2= 00; 3= 11;
Тип синтезируемого умножителя: структурные схемы приведены для умножителя 2-го типа.
Метод минимизации ОЧУ: метод Квайна-Мак-Класки
Метод минимизации ОЧС: карты Карно-Вейча
Логический базис для реализации ОЧУ: А4
Логический базис для реализации ОЧС: А1

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

Разработка алгоритма умножения
Перевод сомножителей из десятичной системы счисления в четверичную:
Множимое:
28| 4
28|7| 4
0 4 1
3

* 0,69
4

* 2,76
4

* 3,04
4

* 0,16
4
0,64
=130,2300
=101101,00110101
Множитель:

21| 4
20|5| 4
1 4 1
1

* 0,67
4

* 2,68
4

* 2,72
4

* 2,88
4
3,52
=111,2113
=010101,10010111
Запишем сомножители в форме с плавающей запятой:
Мн = 0,101101001101 Р = 0.0111 (закодирован по заданию)
Мт = 0,010101100101 = 0.0011 (закодирован традиционно)
Умножение двух чисел с плавающей запятой на 2 разряда множителя одновременно сводится к сложению порядков, формированию знака произведения, преобразованию разрядов множителя согласно алгоритму и перемножению мантисс сомножителей.
= 0.0111 +3
= 0.0011 +3
P = 0.1010 +6
Результат закодирован в соответствии с заданием на кодировку множимого.
Знак произведения определяется суммой по модулю два знаков сомножителей:
зн Мн зн Мт = 0 + 0 = 0
Для умножения мантисс необходимо предварительно преобразовать множитель, чтобы исключить диаду 11 (34), заменив ее на триаду 101 и диаду 10 (24).
Преобразованный множитель имеет вид:
=0,112211
2Мн = 0,321120
-2Мн=3,012220
Умножение по алгоритму Г
0,000000000000 01,000000000000
0,013023000000 01,01101101001101 =Мн*
0,013023000000 01,01101101001101
0,001302300000 01,0101101101001101 = Мн*
0,020331300000 01,010001111110110101
0,000321120000 01,010101110010100001 =2Мн
0,021313020000 01,010010111011011001
3,333301222000 11,11111111011000000001 =-2Мн
0,021220302000 01,01001000000111010001
0,000001302300 01,0101010101101101001101 =Мн
0,021222210300 01,0100100000000010011101
0,000000130230 01,010101010101101101001101 = Мн
0,021223001130 01,010010000011010110101101

После окончания умножения необходимо оценить погрешность вычислений. Для этого полученное произведение = 0,021223001130, ( * 6) приводится к нулевому порядку, а затем переводится в десятичную систему счисления:
= 21003,001130
= 619,4171
Результат прямого перемножения операндов дает следующее значение:
= 619,0224
Абсолютная погрешность:
Δ =619,4171 - 619,0224 = 0,3947
δ = 0,3947/619,0224=0,0006(0,06%)
Эта погрешность получена за счет приближенного перевода из десятичной системы счисления в четверичную обоих сомножителей, а также за счет округления полученного результата произведения.
Разработка структурной схемы сумматора-умножителя
Структурная схема сумматора-умножителя 2-го типа для алгоритма умножения “Г” приведена на схеме 1.
Если устройство работает как сумматор (на входе mul/sum – “1”), то оба слагаемых последовательно (за 2 такта) заносятся в регистр множимого, а на управляющий вход формирователя дополнительного кода (ФДК) F2 поступает «1». Следует учесть, что числа представлены в форме с плавающей запятой. Поэтому, прежде чем складывать мантиссы, необходимо выровнять порядки. В блоке порядков необходимо обеспечить сравнение порядков, используя сумматор порядков.
Первое слагаемое переписывается в регистр результата под действием управляющих сигналов, поступающих на входы «h» всех ОЧУС. Если на вход «h» поступает «0», то ОЧУС перемножает разряды Мн и Мт и добавляет к полученному результату перенос из предыдущего ОЧУС.
В ОЧС первое слагаемое складывается с нулем, записанным в регистре результата, и переписывается без изменений в регистр результата. На втором такте второе слагаемое из регистра множимого через цепочку ОЧУС попадает на входы ОЧС и складывается с первым слагаемым, хранящимся в регистре результата. Разрядность регистра результата должна быть на единицу больше, чем разрядность исходных слагаемых, чтобы предусмотреть возможность возникновения при суммировании переноса.
Если устройство работает как умножитель (на входе mul/sum – “0”), то множимое и множитель помещаются в соответствующие регистры, а на управляющий вход ФДК F2 поступает «0». Диада множителя поступает на входы преобразователя множителя (ПМ). Задачей ПМ является преобразование диады множителя в соответствии с алгоритмом преобразования. При этом в случае образования единицы переноса в старшую диаду множителя она должна быть учтена при преобразовании этой старшей диады (выход 1 ПМ). В регистре множителя в конце каждого такта умножения содержимое сдвигается на 2 двоичных разряда, и в последнем такте умножения регистр обнуляется. Выход 2 ПМ переходит в единичное состояние, если текущая диада содержит отрицание (01). В этом случае инициализируется управляющий вход F1 формирователя дополнительного кода (ФДК), и на выходах ФДК формируется дополнительный код множимого с обратным знаком (умножение на -1). Принцип работы ФДК в зависимости от управляющих сигналов приведен в табл.1.
Табл.1 Режимы работы формирователя дополнительного кода.
Сигналы на входах ФДК Результат на выходах ФДК
F1 F2
0 0 Дополнительный код множимого
0 1 Дополнительный код слагаемого
1 0 Меняется знак Мн
1 1 Меняется знак слагаемого

На выходах 3,4 ПМ формируются диады преобразованного множителя, которые поступают на входы ОЧУ вместе с диадами множимого.
На трех выходах ОЧУС формируется результат умножения диад
Мн·Мт+перенос из предыдущего ОЧУС. Максимальной цифрой в диаде преобразованного множителя является двойка, поэтому перенос, формируемый ОЧУС, может быть только двоичным:
3 · 2 = 1 2.
max maх
Мн Мт
Это означает, что на младшие входы ОЧС никогда не поступят диады цифр, соответствующие кодам «3», следовательно, в таблице истинности работы ОЧС будут содержаться 16 безразличных входных наборов.
Частичные произведения, получаемые на входах ОЧУС, складываются с накапливаемой частичной суммой из регистра результата с помощью цепочки ОЧС.
Частичные суммы хранятся в регистре результата и регистре множителя. Количество тактов умножения определяется разрядностью Мт.

Разработка функциональных схем основных узлов
Синтез одноразрядного четверичного умножителя
ОЧУ - это комбинационное устройство, имеющее 5 входов и 3 выхода:
• 2 разряда из регистра Мн, преобразованные в ФДК;
• 2 разряда из регистра Мт, преобразованные в ПМ;
• управляющий вход h.
Разряды множителя закодированы в обыкновенной двоичной с/с:
0 - 00; 1 - 01; 2 - 10; 3 - 11.

Разряды множимого закодированы в соответствии с заданием:
0 - 01; 1 - 10; 2 - 00; 3 - 11.

Управляющий вход h определяет тип операции:
0 - умножение закодированных цифр, поступивших на информационные входы ОЧУ.
1 - вывод на выходы без изменения значения разрядов, поступивших из регистра множимого.
Принцип работы ОЧУ описывается с помощью таблицы истинности

Таблица истинности ОЧУ
Мн Мт Упр. Ст. разряд Мл. разряд
Пример
h
0 0 0 0 0 1 1 1 1 1·0=00
0 0 0 0 1 1 1 0 0 Выход - код «01»
0 0 0 1 0 1 1 0 0 1·1=01
0 0 0 1 1 1 1 0 0 Выход - код «01»
0 0 1 0 0 1 1 0 1
1·2=02
0 0 1 0 1 1 1 0 0 Выход - код «01»
0 0 1 1 0 x x x x 1·3=03
0 0 1 1 1 x x x x Выход - код «01»
0 1 0 0 0 1 1 1 1 2·0=00
0 1 0 0 1 1 1 0 1 Выход - код «02»
0 1 0 1 0 1 1 0 1 2·1=02
0 1 0 1 1 1 1 0 1 Выход - код «02»
0 1 1 0 0 0 0 1 1 2·2=10
0 1 1 0 1 1 1 0 1 Выход - код «02»
0 1 1 1 0 x x x x 2·3=12
0 1 1 1 1 x x x x Выход - код «02»
1 0 0 0 0 1 1 1 1 3·0=00
1 0 0 0 1 1 1 1 0 Выход - код «03»
1 0 0 1 0 1 1 1 0 3·1=03
1 0 0 1 1 1 1 1 0 Выход - код «03»
1 0 1 0 0 0 0 0 1 3·2=12
1 0 1 0 1 1 1 1 0 Выход - код «03»
1 0 1 1 0 x x x x 3·3=21
1 0 1 1 1 x x x x Выход - код «03»
1 1 0 0 0 1 1 1 1 0·0=00
1 1 0 0 1 1 1 1 1 Выход - код «00»
1 1 0 1 0 1 1 1 1 0·1=00
1 1 0 1 1 1 1 1 1 Выход - код «00»
1 1 1 0 0 1 1 1 1 0·2=00
1 1 1 0 1 1 1 1 1 Выход - код «00»
1 1 1 1 0 x x x x 0·3=00
1 1 1 1 1 x x x x Выход - код «00»

В таблице выделено 8 безразличных набора, т.к. на входы ОЧУ из разрядов множителя не может поступить код 11.
Проведём минимизацию переключательных функций картами Карно-Вейча. Для проведения минимизации переключательных функций необходимо выделить те наборы переменных, где функция принимает единичное значение. Также необходимо включить и все безразличные наборы, то есть наборы, которые не могут прийти на вход схемы ОЧУ.
Минимизация функции картами Карно:


000
001
011
010
110
111
101
100
00 * *
01 * *
0
11 * *
10 * *
0
Минимизировав функцию, получим:

Из таблицы истинности видно, что функция идентична .
Минимизация функции картами Вейча:



11 1 1
* * * * * * * *

11 1
1
1 1 1 1 1
1


h h
Минимизировав функцию, получим:

Минимизация функции картами Вейча:


1
11 1 1 1
* * * * * * * *
1 1 1 1

1 1 1 1 1
1


h h
Минимизировав функцию, получим:

Построение функциональной схемы ОЧУ состоит из объединения функциональных схем для каждого выхода. Построенная схема – схема 2.
Логический синтез одноразрядного четверичного сумматора
ОЧС - это комбинационное устройство, имеющее 5 входов и 3 выхода:
• 2 разряда одного слагаемого (множимого);
• 2 разряда второго слагаемого (регистр результата);
• вход переноса из младшего ОЧС.
Принцип работы ОЧС описывается с помощью таблицы истинности
Разряды обоих слагаемых закодированы : 0 - 01; 1 - 10; 2 - 00; 3 -11.
а1 a2 b1 b2 p П S1 S2 Пример
0 0 0 0 0 1 0 1 2+2+0=10
0 0 0 0 1 1 1 0 2+2+1=11
0 0 0 1 0 0 0 0 2+0+0=02
0 0 0 1 1 0 1 1 2+0+1=03
0 0 1 0 0 0 1 1 2+1+0=03
0 0 1 0 1 1 0 1 2+1+1=10
0 0 1 1 0 1 1 0 2+3+0=11
0 0 1 1 1 1 0 0 2+3+1=12
0 1 0 0 0 0 0 0 0+2+0=02
0 1 0 0 1 0 1 1 0+2+1=03
0 1 0 1 0 0 0 1 0+0+0=00
0 1 0 1 1 0 1 0 0+0+1=01
0 1 1 0 0 0 1 0 0+1+0=01
0 1 1 0 1 0 0 0 0+1+1=02
0 1 1 1 0 0 1 1 0+3+0=03
0 1 1 1 1 1 0 1 0+3+1=10
1 0 0 0 0 0 1 1 1+2+0=03
1 0 0 0 1 1 0 1 1+2+1=10
1 0 0 1 0 0 1 0 1+0+0=01
1 0 0 1 1 0 0 0 1+0+1=02
1 0 1 0 0 0 0 0 1+1+0=02
1 0 1 0 1 0 1 1 1+1+1=03
1 0 1 1 0 1 0 1 1+3+0=10
1 0 1 1 1 1 1 0 1+3+1=11
1 1 0 0 0 1 1 0 3+2+0=11
1 1 0 0 1 1 0 0 3+2+1=12
1 1 0 1 0 0 1 1 3+0+0=03
1 1 0 1 1 1 0 1 3+0+1=10
1 1 1 0 0 1 0 1 3+1+0=10
1 1 1 0 1 1 1 0 3+1+1=11
1 1 1 1 0 1 0 0 3+3+0=12
1 1 1 1 1 1 1 1 3+3+1=13

Минимизацию выходов ОЧС и П проведем с помощью карт Карно-Вейча.

Минимизация функции П картами Вейча:
a2
a2
a11 1
1 1
1 1 1 1 1 1 b1
1 1 11
1 1
b2 b2

p

a2 a2

a1 1
1 1 1
1 1
1
11 1 b1
1 1
1 1


11

b2 b2
p
Минимизировав функцию, получим:
_ _ _ _ _ _ _ _ _ _
П сднф=a1a2b1b2+a1b1b2p+a1a2b1p+a2b1b2+a1a2b2+
+a1a2p+b1b2p+a1b1b2

Минимизация функции картами Карно:


000
001
011
010
110
111
101
100

001 1 1 1 1
01

1

111 1 1
1 1 1
1
10 1
11

Минимизировав функцию, получим аналогичную П сднф.

Оценка эффективности минимизации переключательных функций
Для проведения оценки эффективности минимизации переключательных функций необходимо посчитать цену схемы до минимизации и цену схемы после минимизации. Эффективность минимизации k определяется как:

Все рассчитанные данные сведены в таблицу 3 и 4
Табл 3 Эффективность минимизации ОЧС

Вых.
схемы Рассчитанная цена схемы Эфф.
мин. k
До минимизации После минимизации
P1 с=2*5+ + =15 с=2*4+ + +1=13 1,15
P2 с=2*5+ + +1=14 с=2*4+ + +1=13 1,15
P3 с=14*5+ +14+ =99 с=10+ + 4 + =19 5,21
P4 с=16*5+ +16+ =113 c=3+ + 2 + =6 18,3

Табл 4 Эффективность минимизации ОЧУ

Вых.
схемы Рассчитанная цена схемы Эфф.
мин. k
До минимизации После минимизации
c=4*5+ +1+4+ +4+
+ =38 с=11+ +3+ +3+
+ =24 1,58
с=8*5+ +1+8+ +8+ =73 с=22+ +6+ +6+
+ =47 1,55
с=8*5+ +1+8+ +8+
+ =73 с=13+ +4+ +4+
+ =30 2,43

Синтез ОЧС на основе мультиплексора
Мультиплексор – это логическая схема, имеющая n входов,m управляющих входов и один выход. При этом должно выполняться равенство .На выход мультиплексора может быть пропущен без изменений любой (один) логический сигнал, поступающий на информационные входы. Порядковый номер информационного входа, значение с которого в данный момент должно быть передано на выход, должно быть передано на выход, определяется двоичным кодам на управляющих входах. Для синтеза ОЧС будем использовать мультиплексор “один из восьми” (1 из 8-ми). Входы – это информационные входы мультиплексора. Входы – управляющие входы

Мультиплексор “один из восьми”
Используя таблицу истинности ОЧС, составим таблицу истинности для построения ОЧС на мультиплексорах

p П П
1 1 1 1 0 0 1 1
1 1 1 1 1 0 0 0
1 1 1 0 0 x x x
1 1 1 0 1 x x x
1 1 0 0 0 0 0 0 p
1 1 0 0 1 0 0 1
1 1 0 1 0 x x x
1 1 0 1 1 x x x
0 0 1 1 0 0 0 0 p
0 0 1 1 1 0 0 1
0 0 1 0 0 x x x
0 0 1 0 1 x x x
0 0 0 0 0 0 0 p 1
0 0 0 0 1 0 1 0
0 0 0 1 0 x x x
0 0 0 1 1 x x x
0 1 1 1 0 0 0 p 1
0 1 1 1 1 0 1 0
0 1 1 0 0 x x x
0 1 1 0 1 x x x
0 1 0 0 0 0 p 1 0 p
0 1 0 0 1 1 1 1
0 1 0 1 0 x x x
0 1 0 1 1 x x x
1 0 1 1 0 0 p 1 0 p
1 0 1 1 1 1 1 1
1 0 1 0 0 x x x
1 0 1 0 1 x x x
1 0 0 0 0 1 1 1
1 0 0 0 1 1 0 0
1 0 0 1 0 x x x
1 0 0 1 1 x x x
Управление мультиплексором осуществляется тремя переменными: , а вход соответствующих значений функций на информационные входы обеспечивается реализацией этих функций на дополнительных логических элементах.

Логический синтез преобразователя множителя (ПМ)
Преобразователь множителя (ПМ) служит для исключения из множителя диад 11, заменяя их на триады 10 и диад 10, заменяя их на триады 1 0.
Таблица истинности ПМ.
Вх. диада Мл. бит Зн. Вых. диада
Qn Qn-1 Qn-2 P S1 S2
0 0 0 0 0 0
0 0 1 0 0 1
0 1 0 0 0 1
0 1 1 0 1 0
1 0 0 1 1 0
1 0 1 1 0 1
1 1 0 1 0 1
1 1 1 1 0 0

Минимизируем выходные функции картами Карно
Минимизация функции P


00
01
11
10
0
1 1 1 1 1

Минимизация функции


00
01
11
10
0 1
1 1

Минимизация функции


00
01
11
10
0
1
1
1 1 1

Временные затраты на умножение
Временные затраты на умножение сомножителей определяются в основном затратами на образование частичных произведений, получаемых на выходах ОЧС.
Tу = 7*(Тсдв + Точу + 12*Точс + TФДК + Тпр. мт.), где
Точс - время формирования еденицы переноса в ОЧС
Точу - время умножения на одном ОЧУ
Тсдв - время сдвига частичной суммы
TФДК - время формирования доп. кода множимого
Тпр. мн – время преобразования множителя.

Литература
1. Савельев А.Я. Прикладная теория цифровых автоматов. М.: Высшая
школа, 1985.
2. Лысиков Б.Г. Арифметические и логические основы цифровых автома-
тов. Мн.: Вышейшая школа, 1980.
3. Лысиков Б.Г. Цифровая вычислительная техника. Мн.: , 2003 г.
4. Луцик Ю.А., Лукьянова И.В., Ожигина М.П. – Учебное пособие по
курсу "Арифметические и логические основы вычислительной техники". -Мн.: ротапринт МРТИ ,2001 г.
5. Луцик Ю.А., Лукьянова И.В.– Учебное пособие по курсу "Арифметические и логические основы вычислительной техники". -Мн.:ротапринт МРТИ ,2004 г.
Категория: Другое | Добавил: chamamilla
Просмотров: 2258 | Загрузок: 16
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]