Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЦС Комбинационные схемы.pdf
Скачиваний:
283
Добавлен:
30.03.2015
Размер:
2.7 Mб
Скачать

Комбинационные схемы

3. МИНИМИЗАЦИЯ ФУНКЦИЙ АЛГЕБРЫ ЛОГИКИ

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

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

3.1. Метод Квайна

3.1.1. Алгоритм метода Квайна

Метод Квайна имеет строгий алгоритм и позволяет найти все МДНФ функции. Алгоритм метода Квайна:

1. Нахождение всех простых импликант функции

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

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

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

аих дизъюнкция – Сокращѐнной дизъюнктивной нормальной формой (СокрДНФ).

2. Нахождение МДНФ

2.1. Составляем таблицу Квайна, в столбцах которой – минтермы функции, а в строках – все простые импликанты.

25

Цифровая схемотехника

2.2.Просматриваем все строки. Если какая-либо простая импликанта поглощает какой-либо минтерм, то на пересечении соответствующей строки и столбца ставится метка.

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

2.3.Исследуется таблица, полученная после предыдущего этапа. Если в ней есть несколько столбцов, в которых метки расположены одинаково, то все они, кроме одного, вычѐркиваются, поскольку импликанты, осуществляющие поглощение оставшегося столбца, поглощают и выброшенные минтермы.

2.4.Если после всех вычѐркиваний на предыдущих этапах появляются строки, в которых нет ни одной невычеркнутой метки, то эти строки вычѐркиваются, т.к. соответствующие этим строкам простые импликанты не поглощают оставшиеся в рассмотрении минтермы.

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

2.6.В формальном выражении Петрика раскрываем скобки с учѐтом поглощения. Каждая полученная в результате конъюнкция соответствует ТДНФ, из них по минимуму букв выбираем МДНФ. Записываем получившуюся МДНФ, не забывая добавлять выписанные ранее

существенные импликанты.

Пример:

Дана функция четырех аргументов:

г(й,ц,у,к)ър(0,1,4,5,7,8,10,12,14,15)

Заносим функцию в таблицу истинности (табл. 3.1) и по ней записываем СДНФ функции:

г(й,ц,у,к)ъфывамфывкмфцвамфцвкм фцукмйывамйыуамйцвамйцуамйцук

Теперь необходимо провести все возможные склеивания конъюнкций высшего (4-го) ранга (по формуле 1.25), получая при этом конъюнкции 3-го ранга.

26

я
я
я
я
я
я
я
я
я
я

Комбинационные схемы

Табл. 3.1

N

x1

x2

x3

x4

f

 

 

 

 

 

 

0

0

0

0

0

1

 

 

 

 

 

 

1

0

0

0

1

1

 

 

 

 

 

 

2

0

0

1

0

0

 

 

 

 

 

 

3

0

0

1

1

0

 

 

 

 

 

 

4

0

1

0

0

1

 

 

 

 

 

 

5

0

1

0

1

1

 

 

 

 

 

 

6

0

1

1

0

0

 

 

 

 

 

 

7

0

1

1

1

1

 

 

 

 

 

 

8

1

0

0

0

1

 

 

 

 

 

 

9

1

0

0

1

0

 

 

 

 

 

 

10

1

0

1

0

1

 

 

 

 

 

 

11

1

0

1

1

0

 

 

 

 

 

 

12

1

1

0

0

1

 

 

 

 

 

 

13

1

1

0

1

0

 

 

 

 

 

 

14

1

1

1

0

1

 

 

 

 

 

 

15

1

1

1

1

1

 

 

 

 

 

 

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

Нулевая группа: фыва Первая группа: фывк

фцва

йыва

Вторая группа: фцвк

йыуа

йцва

Третья группа: фцук

йцуа

Четвѐртая группа: йцук

Сравниваем конъюнкции из соседних групп (каждую с каждой!) и, если возможно, склеиваем. Склеенные конъюнкции отмечаем (например, символом я), чтобы не забыть, что мы их склеивали. Каждую конъюнкцию можно склеивать несколько раз. Проведя все возможные склеивания, получим конъюнкции 3-го ранга:

27

Цифровая схемотехника

Нулевая группа: фыв я

фва я ыва я

Первая группа: фвк я

фцв я цва я йыа я йва я

Вторая группа: фцк

йуа я йца я

Третья группа: цук

йцу

Проводим все возможные склеивания конъюнкций 3-го ранга, получая конъюнкции 2-го ранга. Если при склеивании получается уже ранее записанная конъюнкция 2-го ранга, то второй раз ее не пишем, но склеенные конъюнкции 3-го ранга все равно отмечаем. Три конъюнкции ни с чем не склеились и остались неотмеченными.

Нулевая группа: фв

ва

Первая группа: йа

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

г(й,ц,у,к)ъфцкмцукмйцумфвмвамйа

Составим таблицу Квайна, в столбцы которой заносим минтермы, а в строки – простые импликанты (табл. 3.2). Просматриваем все строки. Если какая-либо простая импликанта поглощает какой-либо минтерм, то на пересечении соответствующей строки и столбца ставится метка. Это значит, что данная импликанта равна 1 на наборе, для которого был записан этот минтерм.

На этом шаге можно проверить правильность склеивания. Если ранг простой импликанты меньше ранга минтерма на единицу, то в строке должно быть две метки, если на два, то в строке должно быть четыре метки, если на три, то восемь меток и т.д. Если минтерм ни с чем не склеивался, то он будет являться простой импликантой, и в его строке будет только одна метка.

Вкаждом столбце должна быть по крайней мере одна метка. Если

встолбце ни одной метки нет, значит, при склеивании была сделана ошибка.

28

Комбинационные схемы

 

 

 

 

 

 

 

 

 

 

Табл. 3.2

 

 

 

 

 

 

 

 

 

 

 

 

 

фыва

фывк

фцва

йыва

фцвк

йыуа

йцва

фцук

йцуа

йцук

 

 

 

 

 

 

 

 

 

 

 

 

 

фцк

 

 

 

 

я

 

 

я

 

 

 

цук

 

 

 

 

 

 

 

я

 

я

 

йцу

 

 

 

 

 

 

 

 

я

я

 

фв

я

я

я

 

я

 

 

 

 

 

 

ва

я

 

я

я

 

 

я

 

 

 

 

йа

 

 

 

я

 

я

я

 

я

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

После вычеркиваний таблица заметно упрощается (табл. 3.3):

Табл. 3.3

 

 

фыва

фывк

фцва

йыва

фцвк

йыуа

йцва

фцук

йцуа

йцук

 

фцк

 

 

 

 

я

 

 

я

 

 

 

цук

 

 

 

 

 

 

 

я

 

я

 

йцу

 

 

 

 

 

 

 

 

я я

сущ.

фв

я я я

 

я

 

 

 

 

 

 

ва

я

 

я я

 

 

я

 

 

 

сущ.

йа

 

 

 

я

 

я я

 

я

 

Столбцов, в которых метки расположены одинаково, нет, но зато есть строка, в которой нет ни одной невычеркнутой метки. Следовательно, эта импликанта не нужна в МДНФ, поэтому данную строку вычеркиваем (двойной прямой линией) (табл. 3.4):

29

Цифровая схемотехника

 

 

 

 

 

 

 

 

 

 

 

Табл. 3.4

 

 

фыва

фывк

фцва

йыва

фцвк

йыуа

йцва

фцук

йцуа

йцук

 

фцк

 

 

 

 

я

 

 

я

 

A

 

цук

 

 

 

 

 

 

 

я

 

я B

 

йцу

 

 

 

 

 

 

 

 

я я C

сущ.

фв

я я я

 

я

 

 

 

 

 

 

ва

я

 

я я

 

 

я

 

 

 

сущ.

йа

 

 

 

я

 

я я

 

я

 

Из оставшихся импликант нужно выбрать такие, которые оптимальным образом обеспечили бы единичные значения на оставшихся невычеркнутыми наборах. В данном случае очевидно, что это импликанта цук. Но можно найти оптимальный результат и с помощью

формального выражения Петрика, для чего все невычеркнутые им-

пликанты обозначим буквами и для каждого минтерма, соответствующего невычеркнутому столбцу, составим дизъюнкцию тех простых импликант, на пересечении с которыми в данном столбце стоят метки. Для первого столбца получаем (AмB), для второго – (BмC). Полученные дизъюнкции объединим знаками конъюнкции:

(AмB)(BмC)

Это и есть формальное выражение Петрика. Раскрываем скобки с учѐтом поглощения (согласно формуле 1.27):

(AмB)(BмC)ъABмACмBмBCъBмAC

Каждая полученная в результате конъюнкция соответствует ТДНФ, из них по минимуму букв выбираем МДНФ (т.е. вариант B). Записываем получившуюся МДНФ, не забывая добавлять выписанные ранее существенные импликанты:

г(й,ц,у,к)ъцукмфвмйа

импликанта B существенные импликанты

По МДНФ строим схему. Чтобы использовать однотипные логические элементы, рисуем схему на элементах И-НЕ, для чего преобразуем формулу по закону де Моргана: ________________

г(й,ц,у,к)ъцукмфвмйаъЦУКчФВчЙА

и рисуем схему (рис. 3.1):

30