Автор работы: Пользователь скрыл имя, 22 Апреля 2013 в 11:57, контрольная работа
Требуется спроектировать устройство производящее арифметическую операцию сложения по модулю пять двух чисел в двоичном коде. Слагаемые числа обозначим как Х1 и Х2, результат осуществляемой операции – как Y. Работа устройства описывается следующим уравнением:
Анализ технического задания.
Составление таблицы истинности.
Использовать замену симметричных переменных с использованием элементарных симметричных функций.
Анализ целесообразности совместной реализации системы функций.
Минимизация системы функций алгебры логики (раздельная).
Декомпозиция системы функций алгебры логики методом ПМФ.
Выбор элементной базы.
Факторизация системы логических уравнений.
Разработка принципиальной схемы синтезируемого устройства.
Расчет основных параметров устройства (время переключения, потребляемая мощность, время наработки на отказ).
Моделирование работы устройства, анализ правильности функционирования и состязаний в схеме.
Оценка степени выполнения задания.
y3 = 3 4 5 6 v 2 3 4 v
1 4 v 1 3 5 6 v
2 3 5 6 v 1 5 6 v
2 3 4 6 v 1 2 3 6 .
Сложность реализации устройства в этом представлении составляет
L(Y) = L’(y1) + L’(y2) + L’(y3) + Lинв. ,
где L’(yi) – сложность представления функции yi без учета инверсий входных переменных, а Lинв. – количество инверсных переменных, встречающихся в представлении функций y1,2,3 . Тогда
L(Y) = 19 + 21 + 27 +
6 = 73
оператора И, ИЛИ, НЕ.
На картах Карно видно, что переменные x1 и x4 , x2 и x5 симметричны при доопределении карт следующим образом:
y2 |
||||||||||||||
x1 |
||||||||||||||
x4 |
||||||||||||||
x2 |
1 |
1 |
1 |
0 |
* |
* |
1 |
0 |
||||||
1 |
0 |
* |
1 |
* |
* |
* |
1 |
x6 | ||||||
x5 |
0 |
0 |
* |
* |
* |
* |
* |
* |
||||||
0 |
0 |
* |
* |
* |
* |
* |
* |
|||||||
1 |
1 |
1 |
0 |
* |
* |
1 |
0 |
|||||||
1 |
0 |
* |
1 |
* |
* |
* |
1 |
x6 | ||||||
0 |
1 |
* |
0 |
* |
* |
* |
0 |
|||||||
0 |
0 |
0 |
0 |
1 |
* |
0 |
0 |
|||||||
x3 |
x3 |
y1 |
||||||||||||||
x1 |
||||||||||||||
x4 |
||||||||||||||
x2 |
0 |
0 |
0 |
0 |
* |
* |
0 |
0 |
||||||
0 |
1 |
* |
0 |
* |
* |
* |
0 |
x6 | ||||||
x5 |
0 |
0 |
* |
* |
* |
* |
* |
* |
||||||
1 |
0 |
* |
* |
* |
* |
* |
* |
|||||||
0 |
0 |
0 |
0 |
* |
* |
0 |
0 |
|||||||
0 |
1 |
* |
0 |
* |
* |
* |
0 |
x6 | ||||||
0 |
0 |
* |
0 |
* |
* |
* |
0 |
|||||||
0 |
0 |
0 |
1 |
0 |
* |
0 |
1 |
|||||||
x3 |
x3 |
y3 |
||||||||||||||
x1 |
||||||||||||||
x4 |
||||||||||||||
x2 |
0 |
1 |
0 |
1 |
* |
* |
0 |
1 |
||||||
1 |
0 |
* |
0 |
* |
* |
* |
0 |
x6 | ||||||
x5 |
0 |
1 |
* |
* |
* |
* |
* |
* |
||||||
0 |
0 |
* |
* |
* |
* |
* |
* |
|||||||
0 |
1 |
0 |
1 |
* |
* |
0 |
1 |
|||||||
1 |
0 |
* |
0 |
* |
* |
* |
0 |
x6 | ||||||
1 |
0 |
* |
0 |
* |
* |
* |
0 |
|||||||
0 |
1 |
0 |
0 |
1 |
* |
0 |
0 |
|||||||
x3 |
x3 |
Перестройка карты Карно для рассмотрения симметрии переменных x3 и x6 также позволяет убедиться в сделанном предположении о симметрии этих переменных (причем дополнительное доопределение не требуется).
2. Замена переменных с
использованием элементарных
Произведем следующую замену переменных
1) z1 = x1 x4 ;
z4 = x1 * x4 .
Таблица истинности замены:
Таблица 2.
x1 |
x4 |
z1 |
z4 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
Запрещенным является состояние z1 = 1, z4 = 1.
2) z2 = x2 x5 ;
z5 = x2 * x5 .
Таблица истинности замены:
Таблица 3.
x2 |
x5 |
z2 |
z5 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
Запрещенным является состояние z2 = 1, z5 = 1.
3) z3 = x3 x6 ;
z6 = x3 * x6 .
Таблица истинности замены:
Таблица 4.
x3 |
x6 |
z3 |
z6 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
Запрещенным является состояние z3 = 1, z6 = 1.
Построим таблицу отображения исходных входных наборов в базис zi и вычеркнем повторяющиеся наборы в z-отображении:
Таблица 5.
X1 |
X2 |
Y |
Z | |
x1 x2 x3 |
x4 x5 x6 |
y1 y2 y3 |
z1 z2 z3 |
z4 z5 z6 |
011 |
011 |
001 |
000 |
011 |
100 |
011 |
010 |
111 |
000 |
011 |
100 |
010 |
111 |
000 |
011 |
010 |
000 |
001 |
010 |
011 |
001 |
100 |
010 |
001 |
010 |
011 |
000 |
001 |
010 |
001 |
011 |
100 |
010 |
001 |
100 |
100 |
011 |
000 |
100 |
100 |
010 |
001 |
110 |
000 |
100 |
001 |
000 |
101 |
000 |
011 |
000 |
011 |
011 |
000 |
010 |
100 |
001 |
110 |
000 |
010 |
010 |
100 |
000 |
010 |
010 |
001 |
011 |
011 |
000 |
001 |
100 |
000 |
101 |
000 |
001 |
010 |
011 |
011 |
000 |
001 |
001 |
010 |
000 |
001 |
000 |
011 |
011 |
011 |
000 |
100 |
000 |
100 |
100 |
000 |
010 |
000 |
010 |
010 |
000 |
001 |
000 |
001 |
001 |
000 |
000 |
100 |
100 |
100 |
000 |
000 |
010 |
010 |
010 |
000 |
000 |
001 |
001 |
001 |
000 |
000 |
000 |
000 |
000 |
000 |
Доопределено: | ||||
010 |
101 |
010 |
111 |
000 |
111 |
000 |
010 |
111 |
000 |
110 |
000 |
001 |
110 |
000 |
110 |
001 |
010 |
111 |
000 |
001 |
110 |
010 |
111 |
000 |
000 |
110 |
001 |
110 |
000 |
000 |
111 |
010 |
111 |
000 |
000 |
101 |
000 |
101 |
000 |
101 |
010 |
010 |
111 |
000 |
101 |
000 |
000 |
111 |
000 |
Построим карты Карно преобразованных функций.
y1 |
||||||||||||||
z1 |
||||||||||||||
z2 |
||||||||||||||
z4 |
0 |
* |
* |
* |
* |
* |
* |
* |
||||||
* |
* |
* |
* |
* |
* |
* |
* |
z6 | ||||||
z5 |
* |
* |
* |
* |
* |
* |
* |
* |
||||||
* |
* |
* |
* |
* |
* |
* |
* |
|||||||
1 |
0 |
* |
* |
* |
* |
* |
* |
|||||||
0 |
* |
* |
* |
* |
* |
* |
* |
z6 | ||||||
0 |
* |
* |
1 |
* |
* |
* |
* |
|||||||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|||||||
z3 |
z3 |
y1 = 2 6 v 3 5 6 v 1 2 3
y2 |
||||||||||||||
z1 |
||||||||||||||
z2 |
||||||||||||||
z4 |
1 |
* |
* |
* |
* |
* |
* |
* |
||||||
* |
* |
* |
* |
* |
* |
* |
* |
z6 | ||||||
z5 |
* |
* |
* |
* |
* |
* |
* |
* |
||||||
* |
* |
* |
* |
* |
* |
* |
* |
|||||||
0 |
0 |
* |
* |
* |
* |
* |
* |
|||||||
0 |
* |
* |
* |
* |
* |
* |
* |
z6 | ||||||
1 |
* |
* |
0 |
* |
* |
* |
* |
|||||||
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
|||||||
z3 |
z3 |