Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2331.pdf
Скачиваний:
11
Добавлен:
15.11.2022
Размер:
1.42 Mб
Скачать

циюF(a,b,c) . В частности, если начать испытание импликант

с последней импликанты в (7.3), то полученная тупиковая ДНФ для логической функции F(a,b,c) будет иметь вид:

F Тупиковая ДНФ (a,b,c) =

 

 

 

 

 

 

ab

+bc

+ ac

(7.5)

2

 

 

 

 

 

 

 

7.3. Визуальные методы минимизации логических функций

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

Импликантная матрица – это таблица, столбцы которой содержат элементарные конъюнкции (минтермы) СДНФ логической функции, а строки – найденные по методу Квайна импликанты.

Проиллюстрируем данный метод на примере рассматриваемой нами ранее логической функцииF(a,b,c) , СДНФ ко-

торой определяется соотношением (7.1):

F СДНФ (a,b,c) = abc + abc + abc + abc + abc + abc

Составим для этой функции импликантную матрицу (табл.7.3), в которой Ki - элементарные конъюнкции из (7.1),

а U j - импликанты из выражения (7.3).

Таблица 7.3

 

 

 

 

 

 

Ki

abc

abc

abc

abc

abc

abc

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

U j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Χ

 

Χ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ab

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Χ

 

 

 

 

 

 

Χ

 

 

 

 

 

 

 

ac

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Χ

 

 

 

 

 

Χ

 

 

 

 

 

 

bc

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Χ

 

 

 

Χ

 

 

bc

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ac

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Χ

 

 

 

Χ

 

ab

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Χ

Χ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100

 

 

 

 

 

 

 

 

В импликантной матрице ставим “ Χ” на пересечении тех строк и столбцов матрицы, в которых импликанта может поглотить конъюнкцию. Для получения тупиковой ДНФ необходимо выбрать минимальное число таких импликант U j , ко-

торые в совокупности поглотили бы все элементарные конъюнкции Ki . В результате этих действий получим две тупиковые формы логической функции F(a,b,c) .

F Тупиковая ДНФ (a,b,c) =

 

 

 

 

 

 

 

 

 

 

 

ac

+

bc + ab

(7.6)

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F Тупиковая ДНФ (a,b,c) =

 

 

 

 

 

 

(7.7)

ab +bc + ac

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.3.1. Метод

минимизации полностью

определенных

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

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

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

предварительно нанесенных на карту Карно, отыскиваются

прямоугольники (и/или квадраты) с числом клеток 2k , где k = (n-1),…,0. Задача минимизации состоит в том, чтобы все единичные значения логической функции покрыть минимальным количеством прямоугольников максимальной площади,

величина которых равна 2k . Для формирования тупиковых ДНФ в каждом прямоугольнике находится соответствующая импликанта, которая является одинаковой для всех объеди-

101

ненных клеток карты Карно. Найденные из каждого прямоугольника импликанты соединяются знаком дизъюнкции.

Если необходимо найти тупиковую КНФ логической функции f (x1,..., xn ), то задача минимизации решается сле-

дующим образом: среди нулевых значений логической функции f (x1,..., xn ) , предварительно нанесенных на карту Карно,

отыскиваются прямоугольники (квадраты) с числом клеток 2k , где k=(n-1),…,0. Задача минимизации состоит в том, чтобы все нулевые значения логической функции покрыть минимальным количеством прямоугольников максимальной пло-

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

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

Минимизируем с помощью данного метода логическую функциюF(a,b,c) , СДНФ которой определяется соотношени-

ем (7.1):

F СДНФ (a,b,c) = abc + abc + abc + abc + abc + abc

Построим для функции F(a,b,c) карту Карно (рис. 7.1).

ab

 

 

 

 

c

00

01

11

10

0

1

1

1

0

1

1

0

1

1

Рис. 7.1. Карта Карно функцииF (a,b,c)

102

Определим максимальный размер прямоугольника, которым можно покрыть клетки карты. Величина прямоугольников вычисляется как 2k , где k=(n-1),(n-2),…,0, а n – число аргументов, от которых зависит логическая функция. В нашем случае n=3, следовательно максимальный размер прямоугольника равен 231 =22 =4. В карте Карно нет прямоугольника (или квадрата), состоящего из четырех единиц, стоящих рядом, поэтому объединять клетки карты можно только по две, например так, как показано на рис. 7.2.

Минтермы функции образуют в карте три группы. Одна группа состоит из двух минтермов abc и abc . Общей у них

является импликанта ab , так как в соответствии с теоремами алгебры логики имеем:

abc + abc = ab(c + c) = ab ,

то есть переменная c из этой группы может быть исключена

[23].

Вторая группа состоит из двух минтермов abc и abc , следовательно

abc + abc = bc , то есть переменная a из этой группы может быть исключена.

Третья группа состоит из двух минтермов abc и abc , следовательно

 

 

 

 

abc + abc = ac , то есть переменная

b из этой группы мо-

жет быть исключена.

 

 

 

 

 

 

 

ab

 

 

 

 

 

 

 

c

00

01

11

10

 

0

1

1

1

0

 

1

1

0

1

1

 

Рис. 7.2. Карта Карно функцииF (a,b,c)

103

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