Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ves_kursak.doc
Скачиваний:
3
Добавлен:
06.12.2018
Размер:
494.08 Кб
Скачать

2.2 Совершенные дизъюнктивная и конъюнктивная нормальные формы (сднф и скнф)

Сложность формулы (Y)=5*12=60

Сложность формулы (Y)=5*20=100

2.3 Анализ функции алгебры логики на принадлежность к классам

2.3.1 Анализ функции алгебры логики на принадлежность к классу функ кций сохраняющих ноль

Так как f(0, 0, 0, 0, 0) = 0, то данная функция алгебры логики принадлежит к классу функций сохраняющих ноль, т.е. fk0.

2.3.2 Анализ функции алгебры логики на принадлежность к классу функций сохраняющих единицу

Так как f(1, 1, 1, 1, 1)=0, то данная функция алгебры логики не принадлежит к классу функций сохраняющих единицу, т.е. fk1

2.3.3 Анализ функции алгебры логики на принадлежность к классу линейных функций

fл=CC0x0C1x1C2x2C3x3C4x4

Коэффициент С находим на наборе <0,0,0,0,0>

f(00000)= C00000=C=0,

тогда C=0

Коэффициент С4 находим на наборе <0,0,0,0,1>

f(00001)= 00 000C4*1=0,

тогда C4=0

Коэффициент С3 находим на наборе <0,0,0,1,0>

f(00010)= 0000C3*10=1,

тогда C3=1

Коэффициент С2 находим на наборе <0,0,1,0,0>

f(00100)= 000C2*100=0,

тогда C2=0

Коэффициент С1 находим на наборе <0,1,0,0,0>

f(01000)= 00C1*1000=0,

тогда C1=0

Коэффициент С0 находим на наборе <1,0,0,0,0>

f(10000)= 0C0*10000=1,

тогда C0=1

fл=01*x00*x10*x21*x30*x4=x3x0

В строке 3 идет несовпадение, значит функция не линейная, т.е. fkл.

2.3.4 Анализ функции алгебры логики на принадлежность к классу самодвойственных функций

=; функция несамодвойственна - не совпадает с 1-ой строкой последнего столбца таблицы истинности, значит данная функция алгебры логики не принадлежит к классу самодвойственных функций.

2.3.5 Анализ функции алгебры логики на принадлежность к классу монотонных функций

Проверим принадлежность функции алгебры логики к классу монотонных функций:

0<1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31

1<3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31

2<3, 6, 7, 10, 11, 14, 15, 18, 19, 22, 23, 26, 27, 30, 31

Так как 2>3, то f(2) >f(3), значит fkм функция не принадлежит к данному классу.

2.4 Минимизация функции алгебры логики

2.4.1 Минимизация с помощью карт Карно

Наносим функцию f(x0, x1, x2, x3, x4)=(2, 6, 10, 14, 16, 17, 20, 21,24, 25, 28, 29) на карту Карно

x4

x0 

x0  

x1

 

25

29

13

9

24

28

12

8

27

31

15

11

26

30

14

10

x3

19

23

7

3

18

22

6

2

17

21

5

1

16

20

4

0

 

 

x2

x2

x4

x0 

x0  

x1

 

1

1

0

0

1

1

0

0

0

0

0

0

0

0

1

1

x3

0

0

0

0

0

0

1

1

1

1

0

0

1

1

0

0

 

 

x2

x2


Выполняем накрытие всех единичных значений функции алгебры логики: получаем 2 накрытия площадью 12 ячеек (обводим их).

Записываем МДНФ в виде логической суммы конъюнкций, соответствующих выполненным накрытиям:

f (x0, x1, x2, x3, x4)=

2.4.2 Минимизация методом Квайна - Мак-Класски

Запишем двоичные наборы, на которых функция f(x0,x1,x2,x3, x4)=(2, 6, 10, 14, 16, 17, 20, 21, 24, 25, 28, 29) равна единице:

00010, 00110, 01010, 01110, 10000, 10001, 10100, 10101, 11000, 11001, 11100, 11101.

Группируем наборы по числу единиц в наборах 5-ого ранга. Не склеенные наборы отмечаем знаком:

5-ый ранг

0 группа

1 группа

2 группа

3 группа

4 группа

5 группа

00010

10000

00110

01010

10001

10100

11000

01110

10101

11001

11100

11101

Выполняем функцию склеивания наборов из соседних групп.

Поскольку все наборы принимают участие в склеивании, то первичных импликант нет. В результате получаем наборы 4-ого ранга, которые также разбиваем на группы:

4-ый ранг

1 группа

2 группа

3 группа

00-01

0-001

-0001

1000-

100-0

10-00

0-110

01-10

10-01

1-001

1010-

1100-

11-00

1-101

11-01

1110-

Выполняя склеивание, переходим к наборам 3-его ранга:

3 ранг

1 группа

2 группа

0--10

0--10

10-0-

1-00-

10-0-

1--00

1-00-

1--00

10- -0 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

1--01

1--01

1-10-

1-10-

11-0-

11-0-

3 ранг

1 группа

2 группа

0--10

10-0-

1-00-

1--00

10- -0 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

1--01

1-10-

11-0-

Выполняя склеивание, переходим к наборам 2-го ранга:

2 ранг

1 группа

1--0-

1--0-

1--0-

2 ранг

1 группа

1--0-

Мы получили 5 не склеиваемых набора, внесем их в импликантную таблицу:

00010

00110

01010

01110

10000

10001

10100

10101

11000

11001

11100

10101

11101

01110

0-110

01-10

0--10

1--0-

Заполняем таблицу метками.

Вычеркиваем столбцы, имеющие только одну метку, и строки, дающие эти метки. Две строки вычеркнуты, значит, первичные импликанты 0--10 и 1--0- обязательно войдут в МДНФ.

Столбцы, имеющие хотя бы одну вычеркнутую метку, также вычеркиваем. В окончательном виде МДНФ имеет вид:

f (x0, x1, x2, x3, x4)=

2.5 Синтез схемы методом каскадов

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

МДНФ:

f (x0, x1, x2, x3, x4)=

Рис. 2.3

Метод каскадов

Другой способ основан на использовании разложения Шеннона, которое дает возможность представить логическую функцию n переменных через функции (n-m) переменных, называемых остаточными функциями.

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

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

Производная первого порядка от ФАЛ по переменной Хi равна сумме по модулю два нулевой и единичной остаточных функций исходной логической функции f:

.

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

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

Определяем производные функции алгебры логики по каждой из переменных:

- По переменной х0

- По переменной х3

- По переменной х4

Теперь определим вес каждой производной:

- По переменной х0

х0

х3

х4

(1)

(2)

(1)(2)

0

0

0

0

1

1

0

0

1

0

1

1

0

1

0

1

0

1

0

1

1

0

0

0

1

0

0

0

1

1

1

0

1

0

1

1

1

1

0

1

0

1

1

1

1

0

0

0

Р0=6

- По переменной х3

(1) х0

х3

х4

(2)

(1)(2)

0

0

0

1

0

0

0

1

0

0

0

1

0

1

1

0

1

1

0

0

1

0

0

0

1

1

0

1

0

1

1

1

0

0

1

1

1

1

0

1

Р3=5

- По переменной х4

х0

х3

х4

(1)

(2)

(1)(2)

0

0

0

0

0

0

0

0

1

0

0

0

0

1

0

1

0

1

0

1

1

1

0

1

1

0

0

1

1

0

1

0

1

1

1

0

1

1

0

0

0

0

1

1

1

0

0

0

Р4=2

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

Рис. 2.4

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