Пусть логическая функция имеет следующую таблицу истинности.
№
A
B
C
D
Y
0.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Совокупность прямоугольников, покрывающих все единицы, называют покрытием. Одна и та же ячейка может покрываться несколько раз. Итак, можно сделать следующие выводы:
1. Формула, получающаяся в результате минимизации логической функции с помощью карт Карно, содержит сумму стольких элементарных произведений, сколько прямоугольников имеется в покрытии.
2. Чем больше ячеек в прямоугольнике, тем меньше переменных содержится в соответствующем ему элементарном произведении.
Несмотря на то, что карты Карно изображаются на плоскости, соседство ячеек устанавливается на поверхности тора или цилиндра. Верхняя и нижняя границы карты Карно как бы «склеиваются», образуя цилиндр. При склеивании боковых границ получается тороидальная поверхность. Поэтому в примере ячейки с координатами 0100 и 0110 являются соседними и объединяются в прямоугольники. Действительно, указанным ячейкам соответствует сумма элементарных произведений. Аналогично объединяются и остальные две единичные ячейки 0011 и 1011.
Тогда карта Карно для функции четырех переменных будет иметь приведенный ниже вид.
CD
AВ
В результате объединения ячеек получим:
Анализ логической функции показывает, что схема устройства будет содержать пять логических элементов — два элемента И(на три входа), три инвертора НЕ и один элемент ИЛИ.
Построим логическую схему и проверим ее работу, используя, программу Electronics Workbench. Для проверки правильности работы схемы воспользуемся компонентом Генератор слова.
Рис. 4
Убедимся в том, что работа схемы соответствует таблице истинности логической функции.
Рассмотренные примеры позволяют сформулировать последовательность действий, выполняемых при минимизации логических функций с использованием карт Карно.
1. Изображается таблица для n переменных и производится разметка ее сторон.
2. Ячейки таблицы, соответствующие набором переменных, обращающих функцию в 1, заполняются единицами, остальные ячейки – нулями.
3. Выбирается наилучшее покрытие таблицы правильными прямоугольниками. Наилучшим считается такое покрытие, которое образовано минимальным числом прямоугольников, а если таких вариантов несколько, то из них выбирается тот, который дает максимальную суммарную площадь прямоугольников.