- •Исходные данные:
- •Разработка алгоритма умножения.
- •Умножение по алгоритму в:
- •Результат минимизации функций по картам Карно-Вейча
- •Реализация очс в заданном базисе
- •Упрощение очус картами Вейча
- •Результата минимизации очус с помощью карт Вейча и алгоритма рота
- •Логический синтез одноразрядного четверичного сумматора на основе мультиплексоров
- •Временные затраты на умножение
- •Исходные данные :
- •Получаем:
- •Получаем:
- •Получаем:
- •В результате: так как |с5|1, то поиск простых импликант закончен
- •Проверка покрытия множества z´ множеством найденных l-экстремалей е
Результат минимизации функций по картам Карно-Вейча
ОЧС функция P
ОЧС функция S1
ОЧС функция S2
Реализация очс в заданном базисе
базис: А2
ОЧС функция P
Результат:
ОЧС функция S1
Результат:
ОЧС функция S2
Результат:
Реализация переключательной функции S1
Реализация переключательной функции S2
Реализация переключательной функции П
Логический синтез одноразрядного четверичного умножителя сумматора
ОЧУС - это комбинационное устройство, имеющее 6 входов и 3 выхода:
-
2 разряда из регистра Мн, преобразованные в ФДК;
-
2 разряда из регистра Мт, преобразованные в ПМ;
-
управляющий вход h.
-
вход переносов
Разряды множителя закодированы в обыкновенной двоичной с/с:
0 - 00; 1 - 01; 2 - 10; 3 - 11.
Разряды множимого закодированы в соответствии с заданием:
0 - 10; 1 - 00; 2 - 01; 3 - 11.
Управляющий вход h определяет тип операции:
0 - умножение закодированных цифр, поступивших на информационные входы ОЧУ.
1 - вывод на выходы без изменения значения разрядов, поступивших из регистра множимого.
Логический базис для реализации – А4.
На входы ОЧУС из разрядов множителя не может поступить код 11, при работе ОЧУС как сумматора на вход переноса не может поступить единица, а при умножении на ноль или единицу на вход переноса также не может поступить единица.
Принцип работы ОЧУС описывается с помощью следующей таблицы истинности:
Пер |
Мн |
Мт |
Упр |
Перенос |
Результат |
Результат в четв. |
||||||||
P1 |
X1 |
X2 |
Y1 |
Y2 |
H |
P |
Q1 |
Q2 |
||||||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1*0+0=0 |
|||||
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
Выход: код «01» |
|||||
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1*1+0=1 |
|||||
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
Выход: код «01» |
|||||
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1*2+0=2 |
|||||
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
Выход: код «01» |
|||||
0 |
0 |
0 |
1 |
1 |
0 |
Х |
Х |
Х |
1*3+0=3 |
|||||
0 |
0 |
0 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «01» |
|||||
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1*0+0=0 |
|||||
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
Выход: код «02» |
|||||
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
2*1+0=2 |
|||||
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
Выход: код «02» |
|||||
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
2*2+0=4 |
|||||
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
Выход: код «02» |
|||||
0 |
0 |
1 |
1 |
1 |
0 |
Х |
Х |
Х |
2*3+0=6 |
|||||
0 |
0 |
1 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «02» |
|||||
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0*0+0=0 |
|||||
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
Выход: код «00» |
|||||
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0*1+0=0 |
|||||
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
Выход: код «00» |
|||||
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0*2+0=0 |
|||||
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
Выход: код «00» |
|||||
0 |
1 |
0 |
1 |
1 |
0 |
Х |
Х |
Х |
0*3+0=0 |
|||||
0 |
1 |
0 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «00» |
|||||
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
3*0+0=0 |
|||||
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
Выход: код «03» |
|||||
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
3*1+0=3 |
|||||
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
Выход: код «03» |
|||||
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
3*2+0=6 |
|||||
0 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
Выход: код «03» |
|||||
0 |
1 |
1 |
1 |
1 |
0 |
Х |
Х |
Х |
3*3+0=9 |
|||||
0 |
1 |
1 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «03» |
|||||
1 |
0 |
0 |
0 |
0 |
0 |
Х |
Х |
Х |
1*0+1=1 |
|||||
1 |
0 |
0 |
0 |
0 |
1 |
Х |
Х |
Х |
Выход: код «01» |
|||||
1 |
0 |
0 |
0 |
1 |
0 |
Х |
Х |
Х |
1*1+1=2 |
|||||
1 |
0 |
0 |
0 |
1 |
1 |
Х |
Х |
Х |
Выход: код «01» |
|||||
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1*2+1=3 |
|||||
1 |
0 |
0 |
1 |
0 |
1 |
Х |
Х |
Х |
Выход: код «01» |
|||||
1 |
0 |
0 |
1 |
1 |
0 |
Х |
Х |
Х |
1*3+1=4 |
|||||
1 |
0 |
0 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «01» |
|||||
1 |
0 |
1 |
0 |
0 |
0 |
Х |
Х |
Х |
2*0+1=1 |
|||||
1 |
0 |
1 |
0 |
0 |
1 |
Х |
Х |
Х |
Выход: код «02» |
|||||
1 |
0 |
1 |
0 |
1 |
0 |
Х |
Х |
Х |
2*1+1=3 |
|||||
1 |
0 |
1 |
0 |
1 |
1 |
Х |
Х |
Х |
Выход: код «02» |
|||||
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
2*2+1=5 |
|||||
1 |
0 |
1 |
1 |
0 |
1 |
Х |
Х |
Х |
Выход: код «02» |
|||||
1 |
0 |
1 |
1 |
1 |
0 |
Х |
Х |
Х |
2*3+1=7 |
|||||
1 |
0 |
1 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «02» |
|||||
1 |
1 |
0 |
0 |
0 |
0 |
Х |
Х |
Х |
0*0+1=1 |
|||||
1 |
1 |
0 |
0 |
0 |
1 |
Х |
Х |
Х |
Выход: код «00» |
|||||
1 |
1 |
0 |
0 |
1 |
0 |
Х |
Х |
Х |
0*1+1=1 |
|||||
1 |
1 |
0 |
0 |
1 |
1 |
Х |
Х |
Х |
Выход: код «00» |
|||||
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0*2+1=1 |
|||||
1 |
1 |
0 |
1 |
0 |
1 |
Х |
Х |
Х |
Выход: код «00» |
|||||
1 |
1 |
0 |
1 |
1 |
0 |
Х |
Х |
Х |
0*3+1=1 |
|||||
1 |
1 |
0 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «00» |
|||||
1 |
1 |
1 |
0 |
0 |
0 |
Х |
Х |
Х |
3*0+1=1 |
|||||
1 |
1 |
1 |
0 |
0 |
1 |
Х |
Х |
Х |
Выход: код «03» |
|||||
1 |
1 |
1 |
0 |
1 |
0 |
Х |
Х |
Х |
3*1+1=4 |
|||||
1 |
1 |
1 |
0 |
1 |
1 |
Х |
Х |
Х |
Выход: код «03» |
|||||
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
3*2+1=7 |
|||||
1 |
1 |
1 |
1 |
0 |
1 |
Х |
Х |
Х |
Выход: код «03» |
|||||
1 |
1 |
1 |
1 |
1 |
0 |
Х |
Х |
Х |
3*3+1=10 |
|||||
1 |
1 |
1 |
1 |
1 |
1 |
Х |
Х |
Х |
Выход: код «03» |