logo
Лекции по теории автоматов

Алгоритм построения схемы без рисков по днф.

Пусть задана функция nпеременных

  1. Выбирается номер переменной i=1

  2. Представляется искомая функция как сумма трех блоков

f(x1) = A v B (xi) v C(x1i)

  1. Для xiопределяем пары наборовδ1δ2,на которых функция равна 1 и которая отличается только значениемxi.

  2. Для каждой полученной пары δ1δ2 определяем значения на выходах группы конъюнкцииA

Если A(δ1) =A(δ2) = 1, то риск отсутствует, еслиA= 0, то для пары образуем конъюнкцию, которая сохраняет значение 1 на обоих наборахδ1иδ2и не зависит отxi.

  1. Увеличиваем iна 1 и конец, еслиIбольшеn, иначе возвращаемся в пункт2.

Пример:

Есть функция трех переменных.φi(x1,x2,x3) = ⌐x1⌐x3vx2x3

i= 1 – риска нет

i= 2 – риска нет

i = 3

B = x2x3

C = ⌐x1x3

A = 0

*

1

1

0

*

0

0

1

x3

B = 1 C = 0

B = 0 C = 1

Следовательно δ1= 011, δ1= 010

Следовательно A= ⌐x1x2, тогда окончательно φ(x1,x2,x3) = ⌐x1⌐x3vx2x3v⌐x1x2

Существует два способа для определения конъюнкций, исключающих явление риска:

  1. С помощью операции обобщенного склеивания

если часть функции y1=RXivS⌐Xi=RSvRXivS⌐Xi

в примереR=x2,S= ⌐x1

  1. С помощью карт Карно

В карте Карно симметричные клетки отличаются только одним разрядом xi , следовательно если в симметричной клетке 1 , а она входит в разное покрытие, то возможен риск и эти 1 надо объединить введя дополнительное покрытие.

---------

x2

---------

x1

1

0

0

1

|

0

0

1

1

x3

КНФ

Схему аналогично представлена виде A,B,Cблоков, причем в группеAxiне входит в группуBиCвходит в прямом и инверсном виде. Риск возможен только если с выхода группы на двух комбинациях получается на двух комбинациях 1. В этом случае 0 на выходе обеспечивается на комбинацииδ1группыB, а на комбинацииδ2группы С или наоборот.

если τB> τCто получаем:

если τB<= τCто получаем:

Идея построения схемы без риска – по КНФ, формирование на выходе группы 0 на комбинациях δ1иδ2