Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
6_ЛАБ_КЛ_2КСМ_2015-16.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
799 Кб
Скачать
☆

1.6 Минимизация систем переключательных функций

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

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

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

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

Дизъюнктивная нормальная форма представления переключательной функции в минимальной системе в общем случае не совпадает с ее минимальной дизъюнктивной нормальной формой.

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

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

Задача минимизации систем переключательных функций хорошо исследована в следующем классе функционально полных систем: "дизъюнкция", "конъюнкция" и "отрицание".

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

Пусть задана система полностью определенных переключательных функций, представленных в дизъюнктивной нормальной форме, например:

f1(x1,x2,x3) = x1/x3 v x1/x2 v /x1x3,

f2(x1,x2,x3) = x1/x2 v /x1x3 v /x1x2,

f3(x1,x2,x3) = x1x2 v /x1/x2/x3.

Полным множеством элементарных конъюнкций cистемы переключательных функций назовем множество всех различных элементарных конъюнкций функций данной системы:

А = {x1/x3; x1/x2; /x1x3; /x1x2; x1x2; /x1/x2/x3}.

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

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

Этап 1.

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

Построить полное множество элементарных конъюнкций минимизируемой системы переключательных функций.

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

Этап 2.

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

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

Последнее справедливо и для двух склеиваемых элементарных конъюнкций с признаками.

Если признаки склеиваемых конституент единицы не содержат общих номеров, то склеивание не производится.

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

Полученные в результате склеивания и поглощения конъюнкции называются простыми импликантами системы функций.

Этап 3.

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

Покрытие матрицы импликантами производится аналогично методу Квайна.

Рассмотрим пример.

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

Таблица 21

x1x2x3

f1

f2

000

001

010

011

100

101

110

111

1

0

0

0

0

1

1

1

1

0

1

1

0

1

0

0

Этап 1. Представим каждую из функций системы в СДНФ:

f1 = /x1/x2/x3 v x1/x2x3 v x1x2/x3 v x1x2x3,

f2 = /x1/x2/x3 v /x1x2/x3 v /x1x2x3 v x1/x2x3.

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

A = {/x1/x2/x3(1,2); /x1x2/x3(2); /x1x2x3(2); x1/x2x3(1,2); x1x2/x3(1); x1x2x3(1)}.

Этап 2. Построим СДНФ функции f:

f = /x1/x2/x3(1,2) v /x1x2/x3(2) v /x1x2x3(2) v

v x1/x2x3(1,2) v x1x2/x3(1) v x1x2x3(1).

Для удобства выполнения склеивания, пронумеруем каждую конституенту единицы из СДНФ функции f и выполним все склеивания:

f =

/x1/x2/x3(1,2) v

/x1x2/x3(2) v

/x1x2x3(2) v

x1/x2x3(1,2) v

x1x2/x3(1) v

x1x2x3(1);

1

2

3

4

5

6

1 - 2: /x1/x3(2) v /x1x2x/3(2) v /x1/x2/x3(1,2);

2 - 3: /x1x2(2) v /x1x2x3(2) v /x1x2x3(2);

4 - 6: x1x3(1) v x1/x2x3(1,2) v x1x2x3(1);

5 - 6: x1x2(1) v x1x2/x3(1) v x1x2x3(1).

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

f = /x1/x3(2) v x1x3(1) v /x1x2(2) v x1x2(1) v x1/x2x3(1,2) v /x1/x2/x3(1,2).

Дальнейшие склеивания и поглощения невозможны.

Получены простые импликанты минимизируемой системы булевых функций.

Этап 3. Строим импликантную матрицу (таблица 22):

- столбцы матрицы помечаем конституентами единицы из СДНФ функции f (для каждой конституенты единицы, отводим столько столбцов матрицы, сколько различных номеров функций содержит признак данной конституенты);

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

- заполнение матрицы производим аналогично методу Квайна.

Таблица 22

Простые

импликанты

системы

функций

Конституенты единицы функции f

/x1/x2/x3

/x1x2/x3

/x1x2x3

x1/x2x3

x1x2x3

x1x2/x3

1

2

2

2

1

2

1

1

/x1/x3 (2)

X

X

x1x3 (1)

X

X

/x1x2 (2)

X

X

x1x2 (1)

X

X

x1/x2x3 (1,2)

X

X

/x1/x2/x3 (1,2)

X

X

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

Таким образом, ядро функции f составят следующие простые импликанты: /x1/x2/x3(1,2), /x1x2(2), x1/x2x3(1,2), x1x2(1).

Выделенное ядро покрывает все конституенты единицы из СДНФ функции f.

В соответствии с вышеуказанным, получим следующее выражение:

f = /x1/x2/x3(1,2) v x1/x2x3(1,2) v /x1x2(2) v x1x2(1).

Выделив для функций вида fi импликанты с признаком, включающим i, получим следующую минимальную дизъюнктивную нормальную форму системы функций:

f1 = /x1/x2/x3 v x1/x2x3 v x1x2;

f2 = /x1/x2/x3 v x1/x2x3 v /x1x2.

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

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