Upload
gili
View
119
Download
11
Embed Size (px)
DESCRIPTION
5. Минимизация логических функций методом Квайна – Мак-Класки. Метод Карно позволяет минимизировать логические функции с относительно малым числом переменных . Кроме того метод является визуальным и сложным для алгоритмизации. - PowerPoint PPT Presentation
Citation preview
5. Минимизация логических функций методом Квайна – Мак-Класки
Метод Карно позволяет минимизировать логические функции с относительно малым числом переменных. Кроме того метод является визуальным и сложным для алгоритмизации.
Метод минимизации Квайна – Мак-Класки (далее просто Мак-Класки) является систематичным и его легко алгоритмизировать. Кроме того в нем отсутствуют ограничения на число переменных логической функции.
Метод Мак-Класки состоит из двух основных этапов:
1. Нахождение всех простых импликант логической функции, используя правило склеивания
2. Минимизации полученного множества простых импликант (задача нахождения оптимального покрытия)
10. Законы склеивания:a) (A & B) (A & B) Ab) (A B) & (A B) A
Метод Мак-Класки. 1-ый этап.
• Разделить двоичные векторы области единиц логической функции на секции в соответствии с их индексами. Индекс двоичного вектора = число единиц, входящих в состав этого вектора. • Составить таблицу интервалов, используя правило склеивания. Склеивать между собой только те двоичные векторы, которые отличаются друг от друга только в одной координате (ближайшие векторы). Склеивание происходит по этой координате. Ближайшие векторы могут находится только в соседних секциях таблицы. • В конце первого этапа получают все простые импликанты логической функции.
В ходе второго этапа полученное множество простых импликант минимизируют, т.е. выбирают минимальное количество простых импликант, которое позволяет покрыть всю область единиц логической функции (типичная задача нахождения оптимального покрытия).
Метод Мак-Класки. 2-ой этап.
1-ый этап – нахождение всех простых импликант логической функции.
Пример 5.1 пусть задана логическая функцияf (X1 , X2 , X3 , Х4 ) = (0,1,2,5,6,7,8,9,10,14)1
Найти МДНФ методом Мак-Класки.Решение:
Выпишем двоичные векторы области единиц логической функции и найдем их индексы
V1 (X1, X2, X3,Х4) ={(0000), (0001), (0010), (0101), (0110), (0111), (1000),
(1001), (1010), (1110),}.
0 1 1 2 2 3 1
2 2 3
Разделим двоичные векторы на секции в соответствии с их индексами, получим таблицу:
индекс интервал
0 0000
1 0001
0010
1000
2 0101
0110
1001
1010
3 0111
1110
Таблица интервалов:
Склеиваем между собой ближайшие векторы соседних секций пока это возможно.
индекс интервал индекс интер-вал
индекс интервал обозн.
0 0000 0-1 000- 0-1-1-2 -00- A4
1 0001 00-0 -0-0 A5
0010 -000 1-2-2-3 --10 A6
1000 1-2 0-01
2 0101 -001
0110 0-10
1001 -010
1010 100-
3 0111 10-0
1110 2-3 01-1
011-
-110
1-10
Все оставшиеся не склееннымиинтервалы образуют множество всех простых импликант логической функции.
А1
А2
А3
2-ой этап – минимизация полученного множества простых импликант логической функции.
Импли-кант
0000
00001
10010
20101
50110
60111
71000
81001
91010
101110
14
A1 0-01 x x
A2 01-1 x x
A3 011- x x
A4 -00- x x x x
A5 -0-0 x x x x
A6 --10 x x x x
Вся область единиц должна быть покрыта простыми импликантами (в каждом столбце хотя бы один «х»), и их должно быть минимальное количество.
Оптимальное покрытие: А2, А4, А6.
МДНФ:
А2 А4 А6 = X1&X2&X4 X2&X3 X3&X4.
Сходство методов Мак-Класки и Карно:
1. Векторы соседних клеток карты Карно = векторы соседних секций таблицы склеивания метода Мак-Класки.
2. Объдинение в контуры на карте Карно = склеивание в методе Мак-Класки.
3. Нахождение МДНФ и МКНФ методом Мак-Класки отличаются между собой по таким же принципам как и в методе Карно.
Пример Найти МКНФ логической функции
f(X1 ,X2 ,X3, X4 ) = (2,5,6,7,10,11,14)0 1-ый этап – нахождение множества всех простых импликант индекс интервал индекс интервал обозн. индекс интервал обозн.
1 0010 1-2 0-10 1-2-2-3 --10 A4
2 0101 -010 --10
0110 2-3 01-1 A1
1010 011- A2
3 0111 -110
1011 101- A3
1110 1-10
2-ой этап – минимизация полученного множества простых импликант
0010
2 0101
5 0110
6 0111
7 1010
10 1011
11 1110
14
A1 x x
A2 x x
A3 x x
A4 x x x x
3&2&1 AAAМКНФ
= (X1 X2 X4) & (X1 X2 X3) & (X3 X4)