Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОСНОВЫ ТЕОРИИ ЦИФРОВЫХ УСТРОЙСТВ И....doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
5.42 Mб
Скачать

3.6.2 Минимизация логических функций с помощью карт Карно

Метод минимизации карт Карно (Вейча) находит широкое применение для минимизации переключательных функций 3 – 6 аргументов, поскольку обеспечивает простоту получения результата. На рисунке 3.5, а, б, в приведены карты Карно для трех f (x3 x2 x1), четырех f(x4 x3 x2 x1) и пяти аргументов f(x5 x4 x3 x2 x1) с нанесенными на них номерами минтермов функции f(x4 x3 x2 x1), где x5 – старший разряд, x1 – младший. Аргументы функции делятся на две группы, комбинации значений аргументов одной группы приписываются столбцам таблицы, комбинации значений аргументов другой группы – строкам таблицы. Столбцы и строки обозначаются комбинациями, соответствующим последовательности чисел в коде Грея, поскольку в этом случае склеивающиеся клетки находятся рядом.

Карта Карно определяет значение функции на всех возможных наборах аргументов и, следовательно, является таблицей истинности. Карты Карно компактны и удобны для поиска склеиваемых членов переключательной функции СДНФ. Объясняется это тем, что два любых минтерма, находящихся в клетках, расположенных рядом друг с другом, являются соседними. Они могут быть заменены одной конъюнкцией, содержащей на одну переменную меньше.

Группа из четырех минтермов, расположенных в соседних клетках, может быть заменена конъюнкцией, содержащей на две переменные меньше. В общем случае группа из 2k соседних клеток будет заменена одной конъюнкцией с n – k аргументами, при общем числе переменных равным n.

Минимизацию переключательных функций будем вести на основании следующих правил:

– все клетки, содержащие 1, объединяются в замкнутые области;

Рисунок 3.5 − Карты Карно для: а −3-х аргументов; б − 4-х аргументов; в − 5-ти аргументов

– каждая область должна представлять собой прямоугольник или квадрат с числом клеток 2k;

– клетки, расположенные на противоположных гранях таблицы, являются соседними, так как карту можно сворачивать в цилиндр по горизонтали и по вертикали;

– угловые клетки, расположенные на противоположных углах, являются соседними, в том числе все четыре угловые клетки объединяются в одну область;

– области могут пересекаться и одни и те же клетки могут входить в разные области;

– клетки, значение функции в которых не определено (Ф), могут принимать любое значение (0 или 1);

– необходимо стремиться к тому, чтобы число областей было минимальным, а каждая область содержала возможно большее число клеток.

На рисунке 3.6 – 3.8 приведены карты Карно с нанесенными на них различными вариантами переключательных функций.

Рисунок 3.6 − Карты Карно для 3-х переменных

На рисунке 3.6 приведена карта Карно для функции трех переменных

у = М0 М2 М5 М7.

В исходную функцию входят 12 переменных, необходимо минимизировать эту функцию. Объединим попарно клетки с минтермами М0 и М2, М5 и М7, поскольку они являются соседними. В первом случае в исходную функцию прямо и инверсно входит х1 и, следовательно, эта переменная будет исключена из конечного выражения. Для второй пары минтермов такой переменной будет х2, которая также будет исключена из конечного выражения. Минимизированная функция запишется в виде . Полученное выражение является функцией равнозначности

y = x1 x3.

Рисунок 3.7 − Карты Карно для 4-х переменных

На карту, приведенную на рисунке 3.7, нанесена функция четырех аргументов:

у = М0 М2 М5 М7 М8 М10 М13 М15.

Угловые минтермы М0, М2, М8, М10 являются соседними, т. к. карту можно сворачивать как по горизонтали, так и по вертикали. В эти четыре минтерма прямо и инверсно входят переменные х2 и х4, поэтому они не войдут в минимизированное выражение. Минимизированное выражение для этих минтермов

у1 =

Остальные четыре минтерма М5, М7, М13, М15 образуют замкнутую область в виде квадрата. Из конечного выражения здесь также будут исключены переменные х2 и х4. Минимизированное выражение для квадрата запишется в виде: у2 = х1 х3.

Результирующее выражение

или y = x1 x3.

Рассмотрим пример минимизации логической функции пяти аргументов.

Пусть задана некоторая функция

У = М2 М3 М4 М5 М10 М11 М12 М13 М18 М19 М20 М21 М22 М26 М27 М28 М29 М30.

Нанесем ее на карту Карно (рисунок 3.8).

Рисунок 3.8 − Карты Карно для 5-ти аргументов

Выделим четыре области, объединяющие соседние клетки:

– первую область образуют клетки:

у1 = М4 М5 М12 М13 М20 М21 М28 М29;

– вторая область образована клетками:

у2 = М2 М3  М10 М11  М18 М19 М26 М27;

– третья область: у3 = М18 М22 М26 М30.

Для первой области минимизированное выражение будет равно ,для второй области выражение – , третья область будет описываться логической функцией .

Минимизированное результирующее выражение будет равняться логической сумме полученных выражений:

.

В исходное логическое выражение входило восемьдесят аргументов, а в конечное минимизированное выражение – всего лишь семь. Отсюда следует вывод, что использование карт Карно для минимизации логических функций весьма эффективно. Причем исходная логическая функция может быть не полностью определена на всем набор и может не иметь совершенной дизъюнктивной нормальной формы.

Например, необходимо спроектировать дешифратор, лог.1 на выходе которого будет устанавливаться при поступлении на вход десятичного счетчика четвертого, пятого, шестого и седьмого импульсов у = М4 М5 М6 М7.

Рисунок 3.9 – Карта Карно для функции М4 – М7

Воспользуемся картой Карно для четырех переменных (рисунок 3.9). Нанесем на нее указанную функцию в виде четырех единиц. В клетки с номерами минтермов с 10 по 15 внесем значение функционала – Ф, т. к. у десятичного счетчика эти позиции отсутствуют. Объединим в одну область все единицы и одну строку функционалов (всего восемь клеток). Эта область опишется функцией y = Q3. Полученное выражение показывает, что для решения задачи не требуется внешний дешифратор. Функция автоматически формируется на выходе третьего триггера: Y = Q3.