Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БГУИР---2012 / БГУИР--Лабораторная_работа_№3 / БГУИР--Лабораторная_работа_№3 .doc
Скачиваний:
55
Добавлен:
11.05.2015
Размер:
446.46 Кб
Скачать

5.2 Табличный метод Квайна - МакКласки

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

Любой аналитический (табличный) метод минимизации состоит из следующих шагов.

  • Выполняются все неполные склеивания и находятся все простые импликанты (имплиценты).

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

  • Среди множества тупиковых форм выбирается одна, которая по определенным критериям признается минимальной. Чаще всего это критерий минимального количества переменных (букв) в аналитическом выражении одной из тупиковых форм функции.

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

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

Второе состоит в определении всех существенных импликант, отыскании всех недостающих для реализации заданной функции простых импликант и построении тупиковой ДНФ. Наиболее распространенным среди табличных методов является относящийся к первому направлению метод Квайна-МакКласки.

Задача определения множества простых импликант является переборной и разумная организация вычислений может привести к значительному сокращению вычислений. Основной идеей метода Квайна-МакКласки является разбиение множества минимизируемых кубов на группы с равным количеством единиц в каждой. При выполнении склеивания сравниваются только кубы из соседних групп (различающихся на одну единицу). Это приводит к значительному сокращению числа переборов при выполнении склеиваний.

Метод Квайна-МакКласки для кубического представления булевых функций рассмотрим на примере минимизации функции четырех переменных.

5.2.1 Пример минимизации функции четырех переменных методом Куайна - Мак-Класки

Минимизируем логическую функцию S(a,b,c,d) методом Куайна - Мак-Класки.

1. Пусть функция S(a,b,c,d) задана таблицей истинности (символ 'означает операцию отрицания):

2. Сгруппируем минтермы по количеству в них единиц:

3. Произведем первое объединение строк каждых предыдущих и последующих групп:

4. Объединим строки с совпадающими позициями "крестиков":

5. Из двух строк с идентичными значениями минтермов оставляем только одну:

S(a,b,c,d) = bc' + ab'd' + ac' d'+ bd

5.3 Использование специальных методов

5.3.1 Карты Карно

Рассмотрим кратко метод карт Карно, как самый удобный метод, позволяющий быстро решать задачи минимизации булевых функций до 6 аргументов. При этом получается минимальная форма в базисе И, ИЛИ, НЕ. Существуют карты Карно на 2 , 3 , 4 , 5 и 6 переменных. Причем последние стали использоваться достаточно недавно. На рисунке 6 представлены карты Карно для 2, 3, 4, 5 и 6 аргументов.

Рисунок 6