С помощью диаграмм Венна легко доказывается справедливость логических тождеств. Для этого надо убедиться, что левой и правой частям записанных логических выражений соответствуют одинаковые отображения на диаграмме Венна. Так, при наложении круга А и сегмента АВ мы сохраняем отображение круга А, т.е. А+АВ = А. При наложении отображения A Å B и сегмента АВ получаем отображение логической суммы А + В, т.е. A Å B + АВ = А+В. Если в области А+В исключить сегмент АВ, то получим отображение операции Исключающее ИЛИ, т.е. (А+В) = A Å B.
Для доказательства тождества удобно воспользоваться диаграммой Венна для логической функции трех переменных. Если в области X+Z исключить сегмент XY, получим отображение правой части выражения. Оно совпадает с отображением левой части, получаемым путем наложения сегментов
Для упрощения логических функций трех и четырех переменных удобно использовать карты Карно (рис. 3.4, а и 3.4, в). Карта Карно представляет собой прямоугольную таблицу, каждая клетка которой соответствует определенному набору таблицы истинности (рис. 3.4, б и 3.4, г). На карте фиксируют область прямых значений переменных и значение логической функции для каждого набора (0, 1 или Х, если функция на данном наборе не определена).
Карта Карно на рис. 3.4, в соответствует логической функции F, заданной выше словесно и с помощью таблицы истинности. Булева функция четырех переменных Y (рис. 3.4, а) на четырех наборах принимает значение 1, на восьми наборах – 0, на четырех наборах – не определена (такие наборы иногда называют факультативными, они обозначены как Х).
a
1 |
0 |
0 |
1 |
|
00 |
0 |
4 |
12 |
8 |
0 |
0 |
1 |
0 |
d |
01 |
1 |
5 |
13 |
9 |
0 |
0 |
Х |
X |
|
11 |
3 |
7 |
15 |
11 |
1 |
0 |
X |
Х |
а) |
б) 10 |
2 |
6 |
14 |
10 |
b
A
|
0 |
0 |
1 |
0 |
|
|
|
|
0 |
0 |
2 |
6 |
4 |
|
C |
0 |
1 |
1 |
1 |
в) |
|
|
г) |
1 |
1 |
3 |
7 |
5 |
|
B
Правила записи минимизированного выражения для логической функции по карте Карно:
1) выделяются блоки (замкнутые прямоугольные области, содержащие 1, 2, 4 , 8 клеток), заполненные единицами;
2) блоки должны быть возможно большими, а их количество наименьшим;
3) левая и правая, а также верхняя и нижняя строки карты считаются соседними;
4) блоки могут пересекаться, т.е. одна и та же клетка может входить в несколько блоков;
5) на факультативных наборах функция может доопределяться произвольно (на тех наборах, где стоят Х), чтобы получить наиболее крупные блоки;
6) функция записывается в виде логических произведений (ЛП), описывающих выделенные блоки;
7) переменная не включается в ЛП, если блок областью ее прямых значений делится пополам;
8) переменная включается в ЛП с инверсией, если рассматриваемый блок лежит в области ее инверсных значений;
9) при группировке в блоки клеток, заполненных нулями, по тем же правилам получаем инверсное значение логической функции.
Логическая функция F описывается совокупностью трех блоков
F = AB + BC + AC . (3.3)
С использованием формулы двойственности ее можно преобразовать в вид, удобный для реализации в базисе И-НЕ (рис. 3.5, а):
(3.4)
Логическая функция четырех переменных Y описывается совокупностью двух блоков:
Y = abd + bd.
На рис. 3.5, б приведен пример ее реализации, учитывающий преобразование к виду
.
Рис. 3.5 – Реализация логических функций F и Y
При синтезе комбинационного цифрового устройства на логических элементах можно рекомендовать следующий порядок:
1) формируется словесное условие задачи (определяется, что именно должно делать разрабатываемое устройство, уточняется алгоритм его работы);
2) составляется таблица истинности для логической функции, реализуемой устройством;
3) проводится минимизация логической функции с помощью карты Карно;
4) функция преобразуется в вид, удобный для реализации на заданной элементной базе.
Результат синтеза не является однозначным, поэтому вариантов построения цифрового устройства может быть несколько. Следует стремиться к более простому решению поставленной задачи.
Пример 3.1. Реализовать устройство с четырьмя входами, логическая функция которого задана таблицей истинности (рис. 3.6, в).
Решение. Представим логическую функцию, реализуемую устройством, в виде соответствующей ей карты Карно (рис. 3.6, а) (на рис. 3.6, б представлена таблица соответствия ее клеток наборам таблицы истинности).
Организовав блоки по нулям (блоки АВ и BD выделены на карте Карно контурной линией), запишем минимизированное выражение для логической функции по карте Карно:
которое легко реализовать на микросхеме К555ЛР3 (рис. 3.6, г).
Если блоки организовать по единицам, то их число уменьшается до трех, но требуются дополнительные инверторы:
Пример 3.2. Какие микросхемы применяются в системах мажоритарного резервирования?
Идея мажоритарного резервирования – построение устройства, от которого требуется высокая надежность, в виде трех идентичных устройств, выходные сигналы которых объединяются с помощью мажоритарных элементов, подобных разработанному в начале данного параграфа (рис. 3.1, а). В этом случае выход из строя одного из устройств не приведет к появлению неправильных сигналов на выходе мажоритарного элемента, так как они будут определяться сигналами двух исправных устройств. Если каждое из устройств разбить на несколько блоков, между которыми встроить мажоритарные элементы, можно еще более повысить надежность устройства в целом.
Для систем мажоритарного резервирования специально разработана микросхема КР1533ЛП3 (рис. 3.7), которая содержит три мажоритарных элемента, имеющих дополнительный вход управления ЕС. При ЕС=0 выходной сигнал каждого элемента равен 1 в случае, если не менее, чем на двух из трех входов А, В, С действует единичный сигнал. При ЕС=1 на выход проходит сигнал со входа С независимо от сигналов на других входах.