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

Безопасность, надежность и техническая диагностика

УДК 681.5.09

В. М. Чухонин, канд. техн. наук Г. В. Осадчий

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

Построение современных систем железнодорожной автоматики и телемеханики (СЖАТ) на компьютерной элементной базе становится общепринятой нормой. Среди многочисленных задач, решаемых разработчиками таких систем, является повышение надежности программного обеспечения (ПО). Одно из направлений решения поставленной задачи - это использование самопроверяемых программ, базирующихся на достижениях в области аппаратной реализации [1], [2].

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

В работах [3], [4] рассмотрены методы синтеза парафазных автоматов при схемной реализации, однако вопрос получения алгебраического описания парафазного автомата, необходимого для программной реализации, минуя описание по схеме, не рассмотрен.

В парафазных схемах для представления двоичной переменной X в парафазном виде выделяются две фазы-линии: единичная линия с обозначением (X1) и нулевая линия (X0).

Ставится вопрос, в каком отношении находятся X1, X и значения переменой X в ее прямом и инверсном виде в функциях алгебры логики (ФАЛ).

Рассмотрим схему (рис. 1), которая показывает преобразование однофазного сигнала в парафазный.

х

1

6

*

h

Рис. 1 Преобразование однофазного сигнала в парафазный

В соответствии с рис. 1 f1 = х, f2 = x.

В табл. 1 приведено поведение схемы, представленной на рис. 1, при задании логических сигналов переменной X. В табл. 2 показано, как кодируется логическая «1» и логический «0» в парафазной логике [3].

21

Безопасность, надежность и техническая диагностика

Таблица 1

X f1 f2

0 0 1

1 1 0

Таблица 2

X X1 X0

0 0 1

1 1 0

Табл. 1 и 2 эквивалентны. Таким образом, логично сделать вывод, что имеет место следующее соотношение:

X ^

x = x1; x = x0.

Прямое значение переменной X равно единичной фазе X1, а инверсное значение переменной x равно нулевой фазе X0.

Особенность парафазной схемы состоит в следующем: значения на

единичном ( f 1 ) и на нулевом ( f 0 ) выходах являются инверсными при наличии парафазных сигналов на входах схемы, а сама схема исправна.

В дальнейшем будем рассматривать ФАЛ, заданные в виде дизъюнктивной нормальной формы (ДНФ). Очевидно, что ДНФ отражает поведение ФАЛ на множестве наборов, на которых выходной сигнал равен «1». Инверсное значение ДНФ (ОДНФ) равно «0» на том же множестве входных наборов, при которых ДНФ равна «1», и наоборот.

Следовательно, если в ДНФ и ОДНФ заменить входные переменные (буквы), которые могут быть в прямом и инверсном виде, на их эквивалентные значения в парафазном представлении, то ДНФ будет соответствовать единичной функции (f1), а ОДНФ - нулевой функции (f0) в парафазных схемах.

Например, f = x1 x2x3 v x4x5,

f=

= x1 x4 vx1 x5 vx2 x4 vx2 x5 vx3 x4 vx3 x5.

Запишем входные переменные в их парафазном представлении, тогда:

f1 = xj x° x\ v x4 x

1.

5;

f0 =

„0.0

0 0

.10

.10

.0.0

x1 x4 v x1 x5 v x2 x4 v x2 x5 v x3 x4 v x2 x

0

5 .

Функции f 1 и f 0 представляют собой алгебраическую парафазную запись исходной функции f.

В [3] приведен пример схемы (рис. 2), построенной на парафазных элементах в базисе {И, ИЛИ, НЕ} по формуле

f

x1 v x2

x3 x4.

22

Безопасность, надежность и техническая диагностика

x

x

x

x

x

x

f1

f0

Рис. 2 Схема по функции

По этой схеме можно записать формулы для f1 и f0:

Л 0 0 0 0 0 0

j = x1 x2 x3 v x1 x2 x4; f0 = xfv x2 v x^ x4.

Поставим задачу: получить формулы, эквивалентные (3) и (4), путем алгебраических преобразований, рассмотренных выше.

Имеем:

f = x1 v x2 • x3 x4 = x1 x2 (x3 v x4) = x1 x2 x3 v x1 x2 x4;

f = x1 v x2 • x3 x4 = x1 v x2 v x3 x4 = x1 v x2 v x3 x

4-

Проведем замену входных переменных на их парафазные представления в формулах (5) и (6) и получим f1 и f0, представленные в формулах (7) и (8):

f1 = xf x° x° v x° x20 x

f0 = x^v x2 v x^ x4.

0.

4 ;

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

23

Безопасность, надежность и техническая диагностика

По формулам (7) и (8) на рис. 3 построена парафазная схема, не содержащая парафазных логических элементов.

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

Рассмотрим таблицу истинности (ТИ) функции «И» в однофазном виде (табл. 3); в табл. 4 представлена ТИ функции «И» в парафазном виде. Для перехода от табл. 3 к табл. 4 каждый входной и выходной сигнал табл. 3 заменен своим парафазным представлением.

Таблица 3

*1 *2 f

0 0 0

0 1 0

1 0 0

1 1 1

Таблица 4

*1 *2 f

Х x10 Х2 Х f 1f0

01 01 01

01 10 01

10 01 01

10 10 10

Очевидно, что табл. 3 является тривиальным тестом для однофазного представления функции «И», а табл. 4 - тривиальным тестом парафазной функции «И». Справедливость этого утверждения строится на том, что каждый парафазный сигнал является следствием однофазного сигнала (см. рис. 1), поэтому длина парафазного теста определяется той же формулой, что и для однофазных схем: 2п , где n - число однофазных входов (в однофазных схемах (формулах) либо количество парафазных входов (в парафазных схемах (формулах).

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

Рассмотрим еще один способ получения парафазных ФАЛ по парафазной ТИ в виде дизъюнктивной совершенной нормальной формы (ДСНФ) или конъюнктивной совершенной нормальной формы (КСНФ).

Табл. 5 - это таблица истинности функции (2), а в табл. 6 содержатся ее парафазные представления.

Получим алгебраическую запись функции f1 как ДСНФ, а f0 - как КСНФ, используя парафазную ТИ (табл. 6).

24

Безопасность, надежность и техническая диагностика

о

Таблица 5

№ *4 *3 *2 *1 f

0 0 0 0 0 1

1 0 0 0 1 0

2 0 0 1 0 0

3 0 0 1 1 0

4 0 1 0 0 1

5 0 1 0 1 0

6 0 1 1 0 0

7 0 1 1 1 0

8 1 0 0 0 1

9 1 0 0 1 0

10 1 0 1 0 0

11 1 0 1 1 0

12 1 1 0 0 0

13 1 1 0 1 0

14 1 1 1 0 0

15 1 1 1 1 0

Таблица 6

№ *4 *3 *2 *1 f

x4 x° x3 x3 x2 x2 x^0 f 1f0

0 01 01 01 01 10

1 01 01 01 10 01

2 01 01 10 01 01

3 01 01 10 10 01

4 01 10 01 01 10

5 01 10 01 10 01

6 01 10 10 01 01

7 01 10 10 10 01

8 10 01 01 01 10

9 10 01 01 10 01

10 10 01 10 01 01

11 10 01 10 10 01

12 10 10 01 01 01

13 10 10 01 10 01

14 10 10 10 01 01

15 10 10 10 10 01

Тогда для функции f1 имеем:

f1

.0 x1 0 1 0 10 10

3 x2 x2 x1 ~ x1 V x4 x4 x3 x3

1 _0 0 3 x 0 3 x 0

V x4 x4 x3 x3 *^2 Л2 *^1 1 •

x2

<1 x°

25

Безопасность, надежность и техническая диагностика

ТТ 101!

Исходя из того, что х1 = х1; х2 = х

2, x3 хз , Х4 Х4,

Х = х1;

х2 = х2; х° = xj; х° = х4 следует:

v

Л ( 0 0\( 0 0\( 0 0\( 0 0\ /00\/11\/00\/11\

j = 1х4 х4 II х3 х3 II х2 х2 II х х )vl х4 х4 II х3 х3 II х2 х2 II х1 х1 I

( 1 1\( 0 0\/ 0 0\/ 0 0\

vIх4 II х3х3 II х2х2 II i1 х1 I.

Упрощая выражение и действуя в соответствии с законами алгебры логики, приходим к следующим преобразованиям вышеприведенной ФАЛ:

f1 =

Формула (9) соответствует формуле (7).

Для функции f0 имеют место аналогичные преобразования, как и для формулы (9). Выполнив их, получаем:

f0 = х1 V х2 V х^ х4.

Формула (10) соответствует формуле (8).

Таким образом, справедливо равенство формул (3), (7) и (9), а также (4), (8) и (10).

Рассмотрим получение алгебраической парафазной реализации элементарных ФАЛ от двух переменных по парафазной ТИ на примере функции «исключающее ИЛИ» (модуля сравнения [3], показанного на рис. 4). Произведем замену:

а1 ^ х1 ; а2 ^ х1° ; Р1 ^ х2; Р2 ^ х2; Z1 ^ f 0; Z2 ^ f1.

хх а1

х1 а 2.

х2 Р11

х20 ^2-

&

&

f0

&

&

f

Рис. 4 Модуль сравнения парафазных сигналов

26

Безопасность, надежность и техническая диагностика

По схеме рис. 4 запишем формулы для f1, f0, тогда:

/>0 110 0

f = zl = xl x2 v xl x2;

f1 = z2 = x° x2 v x1 x°.

В табл. 7 представлена ТИ функции исключающего «ИЛИ» (сложения по модулю два) в парафазном виде.

Таблица 7

X, X2 f

xjxf x2 x2 f 1f0

01 01 01

01 10 10

10 01 10

10 10 01

Запишем f1, f0 в виде СДНФ по табл. 8 тогда:

f0 = x1 x2 v x°x°;

f1 = x° x2 v xf x20.

Сравнение формул (11) и (13), (12) и (14) показывает, что они совпадают, т. е. алгебраическая парафазная запись однозначно описывает известный модуль сравнения.

Анализ других элементарных ФАЛ [3, табл. 2.4] показывает, что если их ТИ представить в парафазном виде, получить алгебраическую запись в парафазном виде и реализовать в виде логических схем (как это сделано для функции исключающего ИЛИ), то получаем еще 9 вариантов модулей сравнения парафазных сигналов. Это функции f1, f>, f4, f7, f8, f9, fn, /1з, fu (см. [3, табл. 2.4]).

Сформулируем выводы по проделанной работе.

1. Парафазная реализация однотактных автоматов может быть получена:

в виде схемы (при использовании парафазной реализации И, ИЛИ, НЕ);

путем алгебраических преобразований по ДНФ и ОДНФ;

по парафазной ТИ в виде ДСНФ или КСНФ.

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

27

Безопасность, надежность и техническая диагностика

3. Алгебраическая запись однотактных автоматов в парафазном виде позволяет использовать эти автоматы в программных реализациях алгоритмов управления (например, используя метод непосредственного вычисления булевых функций [5]) для повышения надежности ПО.

4. Предложено 9 новых вариантов модулей сравнения парафазных сигналов.

Библиографический список

1. Майерс Г. Искусство тестирования программ / Г. Майерс. - М. : Финансы и статистика, 1982. - 174 с.

2. Браун К. Быстрое тестирование / К. Браун, Р. Калбертсон, Г. Кобб. - СПб. : «Вильямс», 2002. - 384 с.

3. Сапожников В. В.. Теория дискретных устройств железнодорожной автоматики, телемеханики и связи / В. В. Сапожников, Ю. А. Кравцов, Вл. В. Сапожников. - М., 2001. - 307 с.

4. Сапожников В. В. Синтез самодвойственных дискретных систем / В. В. Сапожников, Вл. В. Сапожников, Р. Ш. Валиев; под ред. В. В. Сапожникова. - СПб. : Элмор, 2006. - 224 с. - ISBN 5-7399-0130-8.

5. Обнаружение ошибок в программных реализациях самопроверяемых тестеров в микропроцессорных системах / В. В. Сапожников, Вл. В. Сапожников, А. В. Харитонов, В. М. Чухонин // Автоматика и телемеханика. - 1989. - № 12. -С. 129-140. - ISSN 0005-2310.

28