Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ав пособиеOffice Word 97 - 2003.doc
Скачиваний:
160
Добавлен:
11.06.2015
Размер:
3.88 Mб
Скачать

1.5. Минимизация конъюнктивных нормальных форм

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

Булева функция называетсяимплицентой БФ , если на каком-либо наборе переменныхгде функцияравна нулю или не определена, функциятакже равна нулю.

Простой имплицентой БФ называется элементарная дизъюнкция, которая являетсяимплицентой булевой функции и никакая ее часть не может быть имплицентой функции.

К числу элементарных дизъюнкций относится также константа нуля. При этом предполагается, что справедливы следующие утверждения:

- конъюнкция конечного числа имплицент булевой функции также является имплицентой данной БФ;

- конъюнкция всех имплицент булевых функции является полной системой;

- конъюнкция всех простых имплицент БФ называется сокращенной конъюнктивной нормальной формой.

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

Пример 1.5. СКНФ задана в числовом виде: . С помощью алгоритма Квайна - Мак-Класки найти МКНФ. Запишем эти макстермы в двоичном коде и разделим их на группы (см. табл. 1.8).

Согласно с алгоритмом Квайна - Мак-Класки сравниваем между собой соседние группы и выполняем операцию неполного конъюнктивного склеивания (см. табл. 1.9).

Продолжаем выполнять операцию неполного конъюнктивного склеивания до тех пор, пока имеется возможность.

Таблица 1.8

Имплицентная таблица функции

Номер

группы

Двоичные номера макстерма

1

0100

2

0101, 1001, 1100

3

1011, 1101

Таблица 1.9

Таблица склеиваний макстермов

Номер

группы

Двоичные номера макстерма

1

010*, *100

2

*101, 10*1, 110*, 1*01

В нашем примере после еще одного цикла склеивания имеем три простые имплиценты: . Строим имплицентную таблицу 1.10.

Таблица 1.10

Таблица простых имплицент

Простые

имплиценты

макстермы

0100

0101

1001

1011

1100

1101

X10X

*

*

*

*

1X01

*

*

10X1

*

*

Таким образом, получили минимальную КНФ:

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

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

Введем относительно булевой функции две доопределенные функции:

- на всех неопределенных наборах начальной булевой функциидоопределяется единицами;

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

Тогда теорема Квайна в этом случае утверждает следующее:

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

В качестве иллюстрации применения теоремы Квайна рассмотрим пример.

Пример 1.6. Булева функция задана таблицей истинности

Таблица 1.11.

Таблица истинности булевой функцию

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

*

1

*

1

1

0

*

Найти минимальную ДНФ.

Если доопределить булеву функцию нулями получаем СДНФ функции(см. табл. 1.11). Она записывается так:

Затем доопределяя функцию единицами, получаем СДНФв виде:

.

Используя метод минимизации Квайна, получаем окончательную сокращенную ДНФ .

Строим импликантную таблицу, столбцами которой будут макстермы функции , а строками простые импликанты(табл. 1.12).

Таблица 1.12

Импликантная таблица булевой функции

импликанты

макстермы

*

*

*

*

Минимальную ДНФ запишем так:

Пример 1.7. Булева функция задана картой Карно (рис. 1.3.). Найти минимальное доопределение этой функции.

П

10

11

01

00

10

1

1

1

-

11

0

1

-

1

01

0

-

0

0

00

-

1

1

1

Рис. 1.3. Карта Карно

рочерк в карте Карно означает, что таким образом обозначенные значения БФ не определенны. Из карты, приведенной на рис. 1.3, видно, какие наборы целесообразно доопределять единицами, а какие нулями. Доопределяем функцию и записываем соответствующую карту Карно так (рис.1.4):

Выбор нуля или единицы диктуется, прежде всего, возможностями склеивания. Нетрудно увидеть, что окончательно минимальную ДНФ можно записать так:

Заметим, что рассмотренный метод минимизации БФ будет использован ниже при синтезе полного одноразрядного двоичного сумматора.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]