- •3.1. Реализация переключательных функций в универсальном базисе Шеффера
- •3.2. Реализация переключательных функций в универсальном базисе Пирса
- •1. Системы счисления
- •1.1. Общие положения
- •1.2. Алгоритмы перевода чисел (ап) из одной системы счисления в другую
- •2. Двоично-кодированные системы счисления. Посимвольное и групповое кодирование
- •3. Требования к оформлению курсовой работы
- •4.Пример пояснительной записки курсовой работы
- •4.1. Построение таблицы преобразования чисел
- •4.2. Построение двоично-кодированной таблицы преобразования
- •4.3. Построение системы переключательных функций
- •4.4. Раздельная минимизация системы переключательных функций
- •4.5. Совместная минимизация системы переключательных функций, выбор универсального базиса
- •4.6. Преобразование в универсальный функциональный базис
- •4.7. Построение комбинационной схемы
3.1. Реализация переключательных функций в универсальном базисе Шеффера
В качестве первого такого базиса рассмотрим универсальный базис В={/} – “Штрих Шеффера” (отрицание конъюнкции):
.
Для перехода к логической схеме введем оператор S(x1 x2) = x1/x2, которому соответствует универсальный элемент Шеффера ( рис. 3.1 ):
Рис. 3.1.
Рассмотрим свойства операции "/".
1. Операция не идемпотентна, так как х/х = =x.
2. Операция коммутативна, так как
х1/х2 = ==x2 / x1.
3.Операция не ассоциативна, так как
x1/(x2/x3) (x1/x2)/x3.
Выразим теперь функции базиса { , , } через функцию " / ".
Инверсия:x = =x/x = =x/1. Условимся в дальнейшем использовать второй из рассмотренных способов инвертирования, заменяя все неиспользуемые аргументы константой 1.
Перейдем теперь к операторному представлению и построим соответствующие фрагменты логических схем для исходного базиса и базиса Шеффера ( рис. 3.2 ):
=x/1 = S (x,1),
Рис. 3.2
Конъюнкция: x1 x2 = == (x1 / x2)/ 1
Перейдем теперь к операторному представлению и построим соответствующие фрагменты логических схем для исходного базиса и базиса Шеффера (рис. 3.3):
x1x2 = (x1 / x2)/ 1=S (S(x1,x2), 1) = S2 (x1,x2)
Рис. 3.3
ПРИМЕЧАНИЕ: S3 (x1, x2) = S (S2 (x1, x2),1) = S (x1, x2).
Аналогично можно определить оператор произвольной степени:
x1x2 для четных k,,
S k (x1, x2) = S (S k-1(x1, x2)) =
x1/x2 = S (x1, x2) для нечетных k.
Дизъюнкция:
x1 x2 = === (x1/1)/(x2/1)
Перейдем теперь к операторному представлению и построим соответствующие фрагменты логических схем для исходного базиса и базиса Шеффера (рис. 3.4)
x1 x2 = (x1/1)/(x2/1) = S (S(x,1),S (x2,1))
Рис. 3.4
По аналогии с операциями конъюнкции и дизъюнкции можно рассматривать как обобщение двуместной операции "/" многоместную операцию "Штрих Шеффера" и многоместный оператор Шеффера:
x1/x2/..../xt = =S (x1, x2,..., xt), где t – местность оператора и соответственно число входов многовходового универсального логического элемента Шеффера. Следует, однако, соблюдать осторожность при попытке представить многоместную операцию "Штрих Шеффера" в виде суперпозиции операций Шеффера меньшей местности. Следует помнить, что операция "/" не ассоциативна, поэтому, например, не справедливы равенства:
x1/x2/x3 = x1/(x2/x3) =(x1/x2)/x3.
Эквивалентное преобразование имеет вид:
x1/x2/x3 = === ((x1/x2)/1)/x3.
В операторной форме это преобразование имеет вид:
S (x1, x2, x3) = S (S 2 (x1, x2), x3) = S (x1, S 2 (x2, x3)) и может быть проиллюстрировано фрагментами логических схем (рис. 3.5):
Рис. 3.5
Рассмотрим два способа построения формул над базисом {/}, перехода к операторному представлению и построению логических схем.
Примем два допущения:
- исходной формулой является произвольная формула над базисом
{&,, };
- местность оператора Шеффера и соответственно число входов универсального логического элемента Шеффера фиксированы (t = const);
- допускаются инверсии элементарных переменных.
Способ 1.
ШАГ 1. Произвольную формулу с помощью эквивалентных преобразований по законам булевой алгебры вначале привести к ДНФ. Затем к ДНФ применить закон двойного отрицания и закон де Моргана для перехода в базис Шеффера:
f (x1,...,xn) = k1 ...k m = =.
Шаг 2. Если какие-либо операции Шеффера (отрицание конъюнкции) в полученной записи имеют местность больше t , необходимо выразить их через операции местности t. Операции с местностью меньше t следует привести к необходимой местности, заменяя отсутствующие переменные константой 1.
Шаг 3. Заменить каждую операцию Шеффера местностью t соответствующим оператором Шеффера, построить логическую схему.
ПРИМЕЧАНИЕ: вырожденной (однобуквенной) конъюнкции вида x в ДНФ в новой формуле соответствует вырожденная (однобуквенная) операция Шеффера вида x.
Пример 3.1. Пусть исходной является формула в ДНФ.
y =x1 x2 x3x 4 x1 x2 x3 , и t = 3
y= ==
= ==
=S (S (S2 (x1, x2, x3),x4, 1), S (x1,x2, 1), x3).
По операторному представлению легко построить логическую схему (рис 3.6).
Рис. 3.6
Способ 2. Произвольная формула над базисом {, , ) приводится к новому виду последовательной заменой операций исходного базиса эквивалентными подформулами в новом базисе в операторной форме. После этого понижаются степени операторов 3 и выше.
ПРИМЕЧАНИЕ: Вначале следует использовать операторы Шеффера произвольной местности, а затем привести их к необходимому значению t.
Пример 3.2. Пусть исходной является формула в ДНФ,
y = x1 x2 x3x4 x1x2 x3 , и t = 3
y = S2 (x1, x2 , x3,x4) S2 (x1,x2) x3 = S (S3 (x1, x2, x3,x4), S3 (x1,x2), x3) =
= S (S (x1, x2, x3,x4), S (x1,x2), x3) = S (S (S2 (x1, x2, x3),x4 ,1), S (x1,x2 ,1), x3).
Соответствующая логическая схема аналогична приведенной на рис. 3.6.