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

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

ним объединяемые прямоугольники дугой. МДНФ данной функции будет выглядеть так:

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

У функции 6 аргументов соседние прямоугольники могут быть в соседних квадратных картах (если расположены в них на одном и том же месте). У функции, карта Карно которой приведена на рис. 3.17, три прямоугольника накрытия: первый – «разорванный» – накрывает четыре клетки в верхней левой квадратной карте, второй – получается объединением двух прямоугольников в двух правых квадратных картах, третий – объединяет четыре соседних прямоугольника по две клетки из всех четырех квадратных карт.

г(й,ц,у,к,е56)ъфыае5мйвае5мвке6

ук

 

 

 

 

 

 

 

е5е6

00

01

11

10

00

01

11

10

 

00

 

 

 

 

 

 

 

 

01

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

 

ц=0

11

1

1

 

1

1

1

 

 

10

1

 

 

1

1

 

 

 

00

 

 

 

 

 

 

 

 

01

 

1

 

 

 

1

 

 

11

 

1

 

 

1

1

 

ц=1

 

 

 

 

 

10

 

 

 

 

1

 

 

 

 

 

й=0

 

 

й=1

 

Рис. 3.17

3.2.3. Минимизация частично заданных функций картами Карно

С помощью карт Карно можно минимизировать и частично заданные функции. Особенность заключается в том, что на карте присутствуют клетки, соответствующие запрещенным наборам и обозначенные символом *. Значение функции на этих наборах не задано (т.е. может быть любым). Это означает, что данные клетки можно включать в прямоугольник накрытия (если это выгодно, т.е. прямоугольник получается большего размера) или не включать.

51

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

Например, если для функции четырех аргументов

г(й,ц,у,к)ър(0,2,5,7,8)ь(10,11,12,13,14,15)

на всех запрещенных наборах поставить 0, то в прямоугольники необходимо включить только клетки с единичным значением (рис. 3.18а). Получается три прямоугольника накрытия, и функция будет записана так:

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

Если на всех запрещенных наборах поставить 1, то в прямоугольники придется включить все непустые клетки (рис. 3.18б). Получается четыре прямоугольника накрытия, и функция будет записана так:

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

йц

 

 

 

йц

 

 

 

ук

00

01

11

10

ук

00

01

11

10

00

1

 

*

1

00

1

 

*

1

01

 

1

*

 

01

 

1

*

 

11

 

1

*

*

11

 

1

*

*

10

1

 

*

*

10

1

 

*

*

 

 

а)

 

 

 

 

б)

 

 

йц

 

 

 

йц

 

 

 

ук

00

01

11

10

ук

00

01

11

10

00

1

 

*

1

00

1

 

*

1

01

 

1

*

 

01

 

1

*

 

11

 

1

*

*

11

 

1

*

*

10

1

 

*

*

10

1

 

*

*

 

 

в)

 

 

 

 

г)

 

 

 

 

 

 

 

Рис. 3.18

 

 

 

 

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

52

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

содержать лишь два прямоугольника (рис. 3.18г), которому соответствует функция

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

Это и будет МДНФ частично заданной функции.

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

1.Все клетки с единичным значением должны быть накрыты прямоугольниками.

2.Клетки с нулевым значением не должны входить в прямоуголь-

ники .

3.Клетки, соответствующие запрещенным наборам (обозначенные на картах Карно *), могут входить или не входить в прямоугольник накрытия.

4.Число клеток в прямоугольнике должно быть кратным 2k, где k = 0, 1, 2, …

5.Прямоугольники могут перекрываться.

6.Прямоугольники могут быть «разорванными».

7.Выгоднее строить прямоугольники большего размера.

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

9.МДНФ находится путем анализа различных вариантов накрытий

ивыбора среди них такого варианта, в котором все единицы карты Карно накрыты наименьшим числом самых больших прямоугольников.

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

3.2.4. Нахождение МКНФ

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

1. Найти и записать МДНФ инверсной функции (т.е. функции, которая равна 1 на тех наборах, на которых исходная функция равна 0 и наоборот).

2. Перенести знак отрицания из левой части записанной равносильности в правую.

3. Преобразовать функцию по закону де Моргана (1.23, 1.24), получив в результате конъюнкцию элементарных дизъюнкций. Это и будет МКНФ.

Пример:

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

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

53

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

Наносим функцию на карту Карно (рис. 3.19а). Составляем карту Карно для инверсной функции (рис. 3.19б). Накрываем клетки прямоугольниками и записываем МДНФ функции:

Гъйвкмыукмфуа

йц

 

 

 

йц

 

 

 

ук

00

01

11

10

ук

00

01 11

10

 

 

 

 

00

1

1

1

1

00

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

01

1

1

 

 

 

 

 

 

 

 

 

01

 

 

1

1

 

 

 

 

 

 

 

11

 

1

1

 

 

 

 

 

 

 

 

11

1

 

 

1

 

 

 

 

 

 

 

10

 

 

1

1

 

 

 

 

 

 

 

10

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а)

 

 

 

 

б)

 

Рис. 3.19

Переносим знак отрицания из левой части в правую и преобразуем формулу по закону де Моргана:

гъЙВКМЫУКМФУАъ

ъЙВКсЫУКсФУАъ

ъ(фмума)с(цмвма)с(ймвмк)

Это МКНФ заданной функции.

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

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

3.2.5. Упражнения

1. Минимизировать функцию четырех аргументов с помощью карты Карно:

г(йцук)ър(0,2,3,4,5,6,7,10,11,13,15)

2. Минимизировать функцию пяти аргументов с помощью карты Карно:

54