ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ И СИСТЕМЫ ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА
УДК 004.052.32+681.518.5 DOI: 10.17586/0021-3454-2019-62-12-1039-1052
МЕТОД СИНТЕЗА СИСТЕМ ДИАГНОСТИРОВАНИЯ НА ОСНОВЕ ЛОГИЧЕСКОГО ДОПОЛНЕНИЯ С УМЕНЬШЕННЫМ ЧИСЛОМ ЭЛЕМЕНТОВ ПРЕОБРАЗОВАНИЯ
В. В. Сапожников1, Вл. В. Сапожников1, Д. В. Ефанов2, Д. В. Пивоваров1
1 Петербургский государственный университет путей сообщения Императора Александра I,
190031, Санкт-Петербург, Россия
2 Российский университет транспорта, 127994, Москва, Россия E-mail: [email protected]
Рассматривается метод логического дополнения для синтеза самопроверяемых комбинационных устройств. Предложен способ уменьшения числа элементов преобразования в базовой структурной схеме системы диагностирования исходного комбинационного устройства по равновесному коду „1 из 3", основанный на преобразовании только одной рабочей функции и дополнении трехразрядного кодового слова в схеме контроля до четырехразрядного, принадлежащего коду „2 из 4". Такой подход к построению системы диагностирования упрощает обеспечение самопроверяемости структуры, а также позволяет уменьшить сложность технической реализации конечного устройства за счет вариативности структуры блока контрольной логики, а также того факта, что тестеры равновесных кодов „2 из 4" имеют более простые схемы, чем кодов „1 из 3". Приводятся примеры использования представленного способа для синтеза самопроверяемых комбинационных устройств как с тремя выходами, так и с большим их числом.
Ключевые слова: самопроверяемое комбинационное устройство, метод логического дополнения, элемент сложения по модулю два, равновесный код, тестер равновесного кода, структурная избыточность устройства
Введение. Для контроля комбинационных логических устройств эффективно применять разнообразные равномерные двоичные коды [1—8]. Выбор кода для решения поставленной задачи осуществляется на этапе проектирования системы диагностирования, как правило, с целью снижения структурной избыточности конечного устройства по сравнению с дублированием, обеспечения его самопроверяемости для заданной модели неисправностей, снижения энергопотребления и т.д. Именно поэтому при синтезе систем диагностирования комбинационных логических устройств используются коды с малой избыточностью, зачастую ориентированные на обнаружение ошибок в информационных векторах или кодовых словах, а не на их коррекцию [9]. Одними из таких кодов являются равновесные коды, или коды „r из m", где m — длина кодовых слов (число разрядов), а r — вес (число единичных разрядов в кодовом слове). Равновесные коды образованы всеми кодовыми словами определенной длины с одинаковым весом [10]. Равновесные коды получают с помощью простых схем кодирования, кроме того, широко известны методы синтеза самопроверяемых тестеров равновесных кодов [11—15].
Использование равновесных кодов [16] с некоторыми ограничениями позволяет синтезировать полностью самопроверяемые структурные схемы систем диагностирования комбинационных устройств по методу логического дополнения. Этот метод позволяет во многих случаях строить самопроверяемые устройства для таких исходных объектов диагностирования, для которых невозможно построение самопроверяемых структур по методу дублирования [17]. При использовании метода логического дополнения кодовый информационный вектор, формируемый на выходах логического устройства, с помощью блоков контрольной логики и логического дополнения преобразуется в кодовое слово выбранного равновесного кода. Наиболее проста процедура построения полностью самопроверяемых структур с использованием равновесного кода „1 из т" (1/т-кода) [18]. Однако с увеличением числа т существенно возрастает сложность технической реализации тестера равновесного кода, а также увеличивается мощность множества его кодовых слов, что усложняет задачу формирования множества проверяющих комбинаций для тестера равновесного кода [13, 14]. Целесообразным оказывается разбиение всех выходов исходного комбинационного устройства на группы и применение для их контроля более простых равновесных кодов [19]. К ним относятся 1/3, 1/4, 2/4, 1/5, 2/5 коды. Методы синтеза систем диагностирования комбинационных логических устройств рассмотрены во многих работах соавторов настоящей статьи, в том числе в [20—23].
Основной проблемой при синтезе систем диагностирования по рассматриваемому методу является необходимость одновременного обеспечения полной самопроверяемости элементов структуры блока логического дополнения, а также тестера равновесного кода. Это требует формирования определенного множества кодовых векторов на выходах исходного комбинационного устройства. Данная особенность метода логического дополнения определяет приоритет группового контроля выходов комбинационного устройства перед контролем всех выходов одновременно, так как в этом случае удается уменьшить число элементов блока логического преобразователя. Настоящая работа посвящена описанию разработанного авторами метода синтеза систем диагностирования на основе логического дополнения с уменьшенным числом элементов преобразования, что позволяет не только снизить структурную избыточность конечного устройства, но и обеспечить самопроверяемость его структурной схемы.
Обобщенная структурная схема системы диагностирования многовыходных комбинационных устройств. На рис. 1 приведена известная структурная схема системы диагностирования, синтезированная по методу логического дополнения [24]. Объектом диагностирования в ней является комбинационное логическое устройство F(x), вычисляющее значения разрядов кодового информационного вектора </т /т-1 ... /2 /1>. Для преобразования данного кодового вектора в кодовое слово равновесного г/т-кода используется блок контрольной логики О(х), вычисляющий значения разрядов вектора контрольных функций т gm-1 ... g2 g1>, а также блок логического дополнения, образованный каскадом двухвходовых элементов сложения по модулю два (ХОК). Преобразования осуществляются по формуле:
И, = ®gi, г = \т. (1)
Для контроля принадлежности кодового вектора <Ът кт-1 ... к2 И]> равновесному коду устанавливается тестер данного кода (г/т-ТБС) с двумя выходами г0 и г1. На этих выходах вырабатываются сигналы с противоположными значениями ^фг1, если система диагностирования работает безошибочно. Если в каком-либо блоке системы диагностирования возникает неисправность, вызывающая искажение вектора <Ит Ит-1 ... И2 И]> и преобразующая его в вектор, не принадлежащий выбранному равновесному коду, то на выходах тестера устанавливаются равные значения г0=г1.
Следует отметить, что число элементов ХОК для некоторого класса комбинационных устройств может быть сокращено.
Входы
X /
т
Рабочие выходы
_А_
Л /2 • • •/т-1 /т
/2
/т-1 '
)т
Кодовое слово г/т-кода
О
О О
Кп-1
Ч.......У
г/т-ТБС
нн
3
§ I
Он Й
н л к и о
а(х)
Рис. 1
Для построения полностью самопроверяемого устройства по методу логического дополнения необходимо обеспечить выполнение следующих условий.
1. Структурные схемы блоков ^Р(х) и G(x) должны быть проверяемыми, т.е. неисправность, принадлежащая заданному классу, должна проявляться на выходах данных устройств хотя бы на одной входной комбинации [25].
2. Должна быть обеспечена полная самопроверяемость блока логического дополнения, что требует поступления в процессе эксплуатации устройства на входы каждого элемента ХОЯ хотя бы единожды каждой из тестовых комбинаций множества {00; 01; 10; 11} [26].
3. Должна быть обеспечена полная самопроверяемость тестера, что требует подачи определенного множества кодовых векторов на его входы [13, 14].
4. На структуры блоков Г(х) и G(x) также накладывается определенное ограничение, связанное с необходимостью исключения возможностей возникновения необнаруживаемых ошибок в равновесных кодах: должны быть исключены симметричные искажения (искажения равного числа нулевых и единичных разрядов) на выходах блока логического дополнения [16].
Все эти условия должны учитываться в комплексе при синтезе системы диагностирования.
Базовые структурные схемы систем диагностирования. В работах [24, 27, 28] рассматриваются способы применения равновесного 1/3-кода при построении самопроверяемых комбинационных устройств. При этом множества выходов исходного устройства разбиваются на трехэлементные подмножества, и каждая из этих групп контролируется на основе 1/3-кода собственной схемой контроля. Затем выходы отдельных схем контроля объединяются на входах самопроверяемого компаратора [29]. Базовая схема контроля по 1/3-коду изображена на рис. 2. Для преобразования любого информационного трехразрядного вектора в кодовое слово 1/3-кода требуется коррекция не более двух разрядов, что позволяет использовать в блоке логического дополнения два элемента ХОЯ.
При использовании структурной схемы, приведенной на рис. 2, на практике следует учитывать необходимость формирования полного множества тестовых комбинаций на все элементы сложения по модулю два и 1/3-Г5С. При этом, как показано в [30], самопроверяемый тестер для 1/3-кода может быть реализован только в виде схемы с памятью. Если используется несколько схем контроля для многовыходного устройства, то самопроверяемый тестер может быть реализован и в виде комбинационной схемы из базовых модулей, приведенных в [24].
Рабочие выходы
Входы
X/
Кодовое слово 1/3-кода
Рис. 2
Модифицируем базовую схему системы диагностирования, приведенную на рис. 2, таким образом, чтобы в ней можно было использовать только один элемент сложения по модулю два, что существенно упрощает процедуру синтеза самопроверяемой структуры. Пусть преобразуемым в базовой структуре будет только один выход, например /3, а блок контрольной логики будет вычислять две контрольные функции — преобразования g3 и дополнения g4 кодового вектора, состоящего из трех разрядов, до четырехразрядного. В этом случае два выхода устройства Дх) не преобразуются, и контроль можно осуществить с использованием равновесного 2/4-кода (рис. 3).
Рабочие выходы
Кодовое слово 2/4-кода
Рис. 3
Достоинством структурной схемы, приведенной на рис. 3, является не только наличие в блоке логического дополнения всего одного элемента сложения по модулю два, но и использование в качестве контролирующего устройства тестера 2/4-кода, имеющего простую структурную схему (рис. 4, а — 1/3-Т5С; б — 1/4-Т5С; в — 2/4-Т5С; г — ТКС). В качестве устройства контроля может быть использован и стандартный модуль сжатия парафазных сигналов, применение которого при синтезе систем диагностирования на основе метода логического дополнения описано в [31].
В основе способа построения базовой структурной схемы системы диагностирования, приведенной на рис. 3, лежит дополнение т выходов устройства до кодового вектора с т+1 разрядом за счет использования контрольной функции gm+1. Этот подход к построению системы диагностирования можно обобщить и для других равновесных кодов, например, 1/4 (рис. 5). При этом число элементов в логическом преобразователе будет увеличиваться и возрастет сложность тестера равновесного кода.
На рис. 4 приведены схемы тестеров [13, 14, 32], которые используются в базовых структурах.
а)
/1
/з
/2
б)
г)
/1 /2
/з
/4
/1 /2
/з
/4
8К>
/2 /з
/1 /4
Рис. 4
Кодовое слово 1/4-кода
Рис. 5
Синтез систем диагностирования для устройств с тремя выходами. Рассмотрим особенности синтеза самопроверяемых устройств с тремя выходами на примере схемы, заданной таблицей истинности (первые два столбца табл. 1 и 2). Пользуясь методом доопределения контрольных функций, описанным в [33], получим значения всех функций в системах технического диагностирования, построенных по структурным схемам рис. 2 и 3. Результаты доопределения показаны в третьих столбцах обеих таблиц. Серым фоном выделены те строки, для которых существует несколько вариантов заполнения, что позволяет подобрать значения функций с учетом необходимости обеспечения формирования полных множеств тестовых комбинаций для тестера и элементов сложения по модулю два.
0
2
0
2
2
2
0
0
Таблица 1
Пример получения значений функций логического дополнения до 1/3-кода_
Х1Х2Х3 /1/2/3 ё2ё3 ^2^3 Тестовые комбинации для
ХОЯ2 ХОК3
000 000 10 010 10 00
001 010 00 010 10 00
010 100 00 100 00 00
011 111 11 100 11 11
100 110 10 100 11 00
101 101 01 100 00 11
110 110 10 100 11 00
111 000 01 001 00 01
Из табл. 1 следует, что для тестера 1/3-кода формируются все необходимые проверяющие комбинации. Для элемента ХОК2 не удается получить тестовую комбинацию <01>, а для ХОК3 — сформировать проверяющую комбинацию <10> ни при каких условиях доопределения. Этот недостаток устранен в модифицированной структуре: из табл. 2 следует, что удается сформировать полные множества проверяющих комбинаций как для тестера 2/4-кода, так и для единственного элемента преобразования ХОК3.
Таблица 2
Пример получения значений функций логического дополнения до 2/4-кода_
Х1Х2Х3 /1/2/3 ё3ё4 к\к2кф4 Тестовые комбинации для ХОЯ3
000 000 11 0011 01
001 010 10 0110 01
010 100 01 1001 00
011 111 10 1100 10
100 110 00 1100 00
101 101 00 1010 10
110 110 00 1100 00
111 000 11 0011 01
Таким образом, модифицированная структурная схема системы диагностирования (рис. 3) позволяет на практике решать задачу обеспечения самопроверяемости устройства.
Минимизируя контрольные функции в системе диагностирования по 1/3-коду, получим
§2 — Х Х3 V Х2 Х3 V ХцХ2 Х3, ёз — Х1Х3 V Х2 Х3.
Аналогично получим контрольные функции в системе диагностирования по 2/4-коду:
ё3 — Х1Х2 V Х2 Х3; ё 4 — Х1Х3 V Х1Х2 Х3.
Из сравнения контрольных функций, полученных для систем диагностирования как по 1/3, так и по 2/4-коду, следует, что для рассматриваемого примера удается уменьшить структурную избыточность конечного устройства. Это также является преимуществом рассматриваемого способа синтеза систем диагностирования по методу логического дополнения.
Синтез систем диагностирования для многовыходных устройств. При синтезе систем диагностирования для многовыходных комбинационных устройств используется разбиение выходов на группы с контролем каждой такой группы по выбранному коду [19]. Рассмот-
рим, например, процедуру определения контрольных функций блоков контрольной логики для различных вариантов организации системы диагностирования устройства, снабженного шестью выходами. Условия работы устройства заданы таблицей истинности (см. табл. 3).
Таблица 3 Описание выходов исходной комбинационной схемы
X1X2X3 ////4/5/6
000 110010
001 110011
010 011001
011 011001
100 101101
101 000000
110 101111
111 110000
Существует несколько вариантов организации схемы контроля в данном случае. Рассмотрим три из них:
1) разбиение выходов на две контрольные группы по четыре выхода в каждой {/1, /2, /3, /4} и {/3,/4,/5,/6} с контролем обеих групп по 2/4-коду (структурная схема „2x2/4");
2) разбиение выходов на две контрольные группы по три выхода в каждой {/1, /2, /3} и {/4, /5, /6} с контролем обеих групп по 1/3-коду (схема „2x1/3");
3) разбиение выходов на две контрольные группы по три выхода в каждой {/1, /2, /3} и {/4, /5, /6} с контролем обеих групп по 2/4-коду (схема „2x2/4*", звездочка указывает на использование предложенной авторами структурной схемы).
Пользуясь алгоритмом доопределения контрольных функций, приведенным в [33], получим для каждого из трех вариантов (рис. 6—8) описательные таблицы (табл. 4—6). В них представлены как значения контрольных и контролируемых функций, так и тестовые комбинации для элементов сложения по модулю два в структуре блока логического дополнения.
Рабочие выходы
---Кодовое слово 2/4-кода
Рис. 6
Рабочие выходы
Кодовое слово 1/3-кода
Кодовое слово 1/3-кода
Рис. 7
Входы
Г
Рабочие выходы _л_
/1 /2 Я 1а /5 /б ▲ Ж А Ж Ж А
/з
т
gЗ gl g5
С(Х)
Кодовое слово 2/4-кода
2/4-Г5С
2/4 -73С
тс
Кодовое слово 2/4-кода
->ги] -►г1!
о
Я
^ 3
Й «
о °
Н Л К И
о «
Рис. 8
Таблица 4
Функции системы диагностирования для структуры „2x2/4"_
Х1Х2Х3 //////6 ё3ё4 к!к2к3к4 Тестовые комбинации для ё5ёб к'3к'4к5к6 Тестовые комбинации для
ХОЯ3 ХОЯ4 ХОЯ5 ХОЯ6
000 110010 00 1100 00 00 01 0011 10 01
001 110011 00 1100 00 00 00 0011 10 10
010 011001 00 0110 10 00 00 1001 00 10
011 011001 00 0110 10 00 00 1001 00 10
100 101101 01 1010 10 11 01 1100 00 11
101 000000 11 0011 01 01 11 0011 01 01
110 101111 10 1001 11 10 11 1100 11 11
111 110000 00 1100 00 00 11 0011 01 01
Таблица 5
Функции системы диагностирования для структуры „2x1/3"_
Х1Х2Х3 //////6 ё2ё3 к^3 Тестовые комбинации для ё5ё6 к4к5к6 Тестовые комбинации для
ХОЯ2 ХОЯ3 ХОЯ5 ХОЯ6
000 110010 10 100 11 00 00 010 10 00
001 110011 10 100 11 00 01 010 10 11
010 011001 01 010 10 11 00 001 00 10
011 011001 10 001 11 10 00 001 00 10
100 101101 01 100 00 11 01 100 00 11
101 000000 01 001 00 01 10 010 01 00
110 101111 01 100 00 11 11 100 11 11
111 110000 10 100 11 00 01 001 00 01
Таблица 6
Функции системы диагностирования для структуры „2x2/4*"_
Х]Х2Х3 //2/3/4/5/6 ё3ё4 к1к2к3к1 Тестовые комбинации для ХОЯ3 ё5ё6 к4к5к6к8 Тестовые комбинации для ХОЯ6
000 110010 00 1100 00 01 0101 00
001 110011 00 1100 00 00 0110 10
010 011001 00 0110 10 01 0011 10
011 011001 00 0110 10 01 0011 10
100 101101 00 1010 10 11 1001 11
101 000000 11 0011 01 11 0011 01
110 101111 11 1001 11 10 1100 11
111 110000 00 1100 00 11 0011 01
Отметим следующие особенности структур. Для „2*2/4" не удается обеспечить формирования проверяющей комбинации <00> для элемента ХОЯ6. Для „2*1/3" не удается обеспечить формирования проверяющей комбинации <01> для элемента ХОЯ2. Для структуры „2*2/4*" самопроверяемость обеспечить удается.
Выпишем формулы, описывающие выходы блоков контрольной логики представленных на рис. 6—8 структур.
Контрольные функции для структуры „2*2/4":
ё3 — Х1Х2 Х3 V Х1Х2 Х3,
ё4 — Х1 Х2;
g5 — x1x2 v x1x3; g6 — x1 v x2 x3-
Контрольные функции для структуры „2*1/3":
g2 — x1 x2 v x2 x3;
g3 — X1 x2 v x2 x3 — g2;
g5 — xi x2 x3 V xi x2 x3; g6 — xi x2 V xi x3 V xi x2 x3.
Контрольные функции для структуры „2*2/4*":
g3 — xi x2 x3 V xi x2 x3; g4 — xix2 x3 v xi x2 x3 — g3;
gs— xi; g6 — xi x3 v x2 x3 v xi x2.
Контрольные функции для структуры „2*2/4*" имеют меньше букв в записи, что свидетельствует о более простой схеме блока контрольной логики именно для этого случая.
Заключение. Представленный способ синтеза систем диагностирования на основе метода логического дополнения позволяет гораздо проще обеспечивать полную самопроверяемость конечного устройства, чем известные способы [i8—24]. Это достигается за счет уменьшения числа элементов преобразования в схеме блока логического дополнения. Например, в базовой структуре при контроле исходного устройства на основе 2/4-кода (см. рис. 3) такой элемент нужен только один. Кроме того, в ряде случаев возможно уменьшение сложности технической реализации и структурной избыточности конечного устройства.
СПИСОК ЛИТЕРАТУРЫ
1. Согомонян Е. С., Слабаков Е. В. Самопроверяемые устройства и отказоустойчивые системы. М.: Радио и связь, i989. 208 с.
2. Piestrak S. J. Design of Self-Testing Checkers for Unidirectional Error Detecting Codes. Wroclaw: Oficyna Wydawnicza Politechniki Wroclavskiej, i995. iii p.
3. Nicolaidis M., Zorian Y. On-Line Testing for VLSI — А Compendium of Approaches // J. of Electronic Testing: Theory and Applications. i998. N i2. P. 7—20. DOI: i0.i023/A:i0082448i5697.
4. Das D., Touba N. A. Weight-Based Codes and Their Application to Concurrent Error Detection of Multilevel Circuits // Proc. of i7th IEEE Test Symp. California, USA, i999. P. 370—376. DOI: i0.ii09/VTEST.i999.76669i.
5. Fujiwara E. Code Design for Dependable Systems: Theory and Practical Applications. John Wiley & Sons, 2006. 720 p.
6. Borecky J., Kohlik M., Kubatova H. Parity Driven Reconfigurable Duplex System // Microprocessors and Microsystems. 20i7. Vol. 52. P. 25i—260. DOI: i0.i0i6/j.micpro.20i7.06.0i5.
7. Stempkovskiy A., Telpukhov D., Gurov S., Zhukova T., Demeneva A. R-Code for Concurrent Error Detection and Correction in The Logic Circuits // 20i8 IEEE Conf. of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus). Moscow, Russia, 29 January—i February 20i8. P. i430—1433. DOI: i0.ii09/EIConRus.20i8.83i7365.
8. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Коды Хэмминга в системах функционального контроля логических устройств: монография. СПб: Наука, 20i8. i5i с.
9. Efanov D., Sapozhnikov V., Sapozhnikov Vl. Generalized Algorithm of Building Summation Codes for the Tasks of Technical Diagnostics of Discrete Systems // Proc. of i5th IEEE East-West Design & Test Symposium (EWDTS2017). Novi Sad, Serbia, 29 September—2 October 2017. P. 365—371. DOI: i0.ii09/EWDTS.20i7.8ii0i26.
10. Freiman C. V. Optimal Error Detection Codes for Completely Asymmetric Binary Channels // Information and Control. 1962. Vol. 5, is. 1. P. 64—71. DOI: 10.1016/S0019-9958(62)90223-1.
11. Anderson D. A., Metze G. Design on Totally Self-Checking-Check Circuits for m-out-of-n Codes // IEEE Transaction on Computers. 1973. Vol. С-33, is. 3. P. 263—269.
12. Мазнев В. И. О синтезе самотестируемых 1/р-тестеров // Автоматика и телемеханика. 1978. № 9. С. 142—145.
13. Сапожников В. В., Сапожников Вл. В. Самопроверяемые тестеры для равновесных кодов // Автоматика и телемеханика. 1992. № 3. С. 3—35.
14. Сапожников В. В., Сапожников Вл. В. Самопроверяемые дискретные устройства. СПб: Энергоатомиздат, 1992. 224 с.
15. Matrosova A., Ostrovsky V., Levin I., Nikitin K. Designing FPGA based Self-Testing Checkers for m-out-of-n Codes // Proc. of the 9th IEEE Intern. On-Line Testing Symposium (I0LTS'03). Kos Island, Greece, 7—9 July 2003. P. 49—53.
16. Ефанов Д. В., Сапожников В. В., Сапожников Вл. В., Пивоваров Д. В. Ограничения на структуры компонентов полностью самопроверяемых схем встроенного контроля, синтезированных методом логического дополнения до равновесного кода „1 из 3" // Электронное моделирование. 2019. Т. 41, № 1. С. 27—42. DOI: 10.15407/emodel.41.01.027.
17. Göessel M., Ocheretny V., Sogomonyan E., Marienfeld D. New Methods of Concurrent Checking: Edition 1. Dordrecht: Springer Science+Business Media B.V. 2008. 184 p.
18. Ефанов Д. В., Сапожников В. В., Сапожников Вл. В., Пивоваров Д. В. Синтез самопроверяемых схем встроенного контроля на основе метода логического дополнения до равновесных кодов „1 из n" // Автоматика и вычислительная техника. 2019. № 6. С. 62—75.
19. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В., Пивоваров Д. В. Синтез систем функционального контроля многовыходных комбинационных схем на основе метода логического дополнения // Вестн. Томского гос. ун-та. Управление, вычислительная техника и информатика. 2017. № 4. С. 69—80. DOI: 10.17223/19988605/41/9.
20. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Построение самопроверяемых структур систем функционального контроля на основе равновесного кода „2 из 4" // Проблемы управления. 2017. № 1. С. 57—64.
21. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В., Пивоваров Д. В. Метод логического дополнения на основе равновесного кода „1 из 4" для построения полностью самопроверяемых структур систем функционального контроля // Электронное моделирование. 2017. Т. 39, № 2. С. 15—34.
22. Sapozhnikov V., Sapozhnikov Vl., Efanov D., Bliudov A., Pivovarov D. Combinational Circuit Check by Boolean Complement Method Based on "1-out-of-5" Code // Proc. of 15th IEEE East-West Design & Test Symposium (EWDTS2017). Novi Sad, Serbia, 29 September—2 October 2017. P. 89—94. DOI: 10.1109/EWDTS.2017.8110076.
23. Ефанов Д. В., Сапожников В. В., Сапожников Вл. В., Пивоваров Д. В. Синтез самопроверяемых схем встроенного контроля на основе метода логического дополнения до равновесного кода „2 из 4" // Информатика. 2018. Т. 15, № 4. С. 71—85.
24. Гессель М., Морозов А. В., Сапожников В. В., Сапожников Вл. В. Логическое дополнение — новый метод контроля комбинационных схем // Автоматика и телемеханика. 2003. № 1. С. 167—176.
25. Пархоменко П. П., Согомонян Е. С. Основы технической диагностики (оптимизация алгоритмов диагностирования, аппаратурные средства). М.: Энергоатомиздат, 1981. 320 с.
26. Аксёнова Г. П. Необходимые и достаточные условия построения полностью проверяемых схем свертки по модулю 2 // Автоматика и телемеханика. 1979. № 9. С. 126—135.
27. Das D. K., Roy S. S., Dmitiriev A., Morozov A., Gössel M. Constraint Don't Cares for Optimizing Designs for Concurrent Checking by 1-out-of-3 Codes // Proc. of the 10th Intern. Workshops on Boolean Problems. Freiberg, Germany, September 2012. P. 33—40.
28. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Построение полностью самопроверяемых структур систем функционального контроля с использованием равновесного кода „1 из 3" // Электронное моделирование. 2016. Т. 38, № 6. С. 25—43.
29. Nikolos D. Self-Testing Embedded Two-Rail Checkers // J. of Electronic Testing: Theory and Applications. 1998. Vol. 12, is. 1-2. P. 69—79. DOI: 10.1023/A:1008281822966.
30. Сапожников В. В., Сапожников Вл. В., Чугуй Т. А. Метод синтеза самопроверяемого тестера для кода „1 из 3" // Изв. вузов. Приборостроение. 1991. Т. 34, № 6. С. 27—33.
31. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Организация систем функционального контроля с обеспечением полной самопроверяемости структуры на основе модулей сжатия парафазных сигналов // Изв. вузов. Приборостроение. 2017. Т. 60, № 5. С. 404—411. DOI: 10.17586/0021-3454-2017-60-5-404-411.
32. Сапожников В. В., Сапожников Вл. В. О синтезе самопроверяемых тестеров для кода „1 из 3" // Автоматика и телемеханика. 1991. № 2. С. 178—188.
33. Sapozhnikov V., Sapozhnikov Vl., Efanov D. Concurrent Error Detection of Combinational Circuits by the Method of Boolean Complement on the Base of „2-out-of-4" Code // Proc. of 14th IEEE East-West Design & Test Symposium (EWDTS 2016). Yerevan, Armenia, 14—17 October 2016. P. 126—133. DOI: 10.1109/EWDTS.2016.7807677.
Валерий Владимирович Сапожников
Владимир Владимирович Сапожников
Дмитрий Викторович Ефанов
Дмитрий Вячеславович Пивоваров
Сведения об авторах д-р техн. наук, профессор; Петербургский государственный университет путей сообщения Императора Александра I, кафедра автоматики и телемеханики на железных дорогах; E-mail: [email protected]
д-р техн. наук, профессор; Петербургский государственный университет путей сообщения Императора Александра I, кафедра автоматики и телемеханики на железных дорогах; E-mail: [email protected]
д-р техн. наук, доцент; ООО „ЛокоТех-Сигнал"; Российский университет транспорта (МИИТ), кафедра автоматики, телемеханики и связи на железнодорожном транспорте; E-mail: [email protected]
Петербургский государственный университет путей сообщения Императора Александра I, кафедра автоматики и телемеханики на железных дорогах; ассистент; E-mail: [email protected]
Поступила в редакцию 19.09.19 г.
Ссылка для цитирования: Сапожников В. В., Сапожников Вл. В., Ефанов Д. В., Пивоваров Д. В. Метод синтеза систем диагностирования на основе логического дополнения с уменьшенным числом элементов преобразования // Изв. вузов. Приборостроение. 2019. Т. 62, № 12. С. 1039—1052.
METHOD OF DIAGNOSTIC SYSTEM SYNTHESIS BASED ON BOOLEAN COMPLEMENT WITH REDUCED NUMBER OF CORRECTION ELEMENTS
V. V. Sapozhnikov1, Vl. V. Sapozhnikov1, D. V. Efanov2, D. V. Pivovarov1
1 Emperor Alexander I St. Petersburg State Transport University, 190031, St. Petersburg, Russia 2 Russian University of Transport, 127994, Moscow, Russia E-mail: [email protected]
Application of Boolean complement in self-checking combinational devices synthesis is considered. A method is proposed for reducing the number of correction elements in the basic block diagram of the initial combinational device diagnosis system using a 1-out-of-3 constant-weight code. The method is based on conversion of only one working function and the addition of three-digit code word in the check circuit to four-digit code word for 2-out-of-4 constant-weight code. Such an approach to the construction of diagnostic system simplifies the self-checking procedure of the structure and reduces the complexity of the final device implementation. The decrease is due to the variability of the check logic structure block and relative simplicity of codes checkers for 2-out-of-4 constant-weight codes as compared to 1-out-of-3 constant-weighted codes checkers. Examples of using the described method for synthesis of self-checking combinational devices with three or more outputs are presented.
Keywords: self-checking combinational device, Boolean complement method, addition modulo two element, constant-weight code, constant-weight code checker, device structural redundancy
REFERENCES
1. Sogomonyan E.S., Slabakov E.V. Samoproveryaemye ustroystva i otkazoustoychivye sistemy (The Self-Checked Devices and Failure-Safe Systems), Moscow, 1989, 208 р. (in Russ.)
2. Piestrak S.J. Design of Self-Testing Checkers for Unidirectional Error Detecting Codes, Wroclaw, Ofi-cyna Wydawnicza Politechniki Wroclavskiej, 1995, 111 p.
3. Nicolaidis M., Zorian Y. Journal of Electronic Testing: Theory and Applications, 1998, no. 12, pp. 7-20. DOI: 10.1023/A:1008244815697.
4. Das D., Touba N.A. Proceedings of 17th IEEE Test Symposium, California, USA, 1999, pp. 370-376, DOI: 10.1109/VTEST.1999.766691.
5. Fujiwara E. Code Design for Dependable Systems: Theory and Practical Applications, John Wiley & Sons, 2006, 720 p.
6. Borecky J., Kohlik M., Kubâtovâ H. Microprocessors and Microsystems, 2017, no. 52, pp. 251-260, DOI: 10.1016/j.micpro.2017.06.015.
7. Stempkovskiy A., Telpukhov D., Gurov S., Zhukova T., Demeneva A. 2018 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus), 29 January-1 February 2018, Moscow, Russia, pp. 1430-1433, DOI: 10.1109/EIConRus.2018.8317365.
8. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V. Kody Khemminga v sistemakh funktsional'nogo kontrolya logicheskikh ustroystv (Hamming Codes in Logic Devices Functional Control Systems), St. Petersburg, 2018, 151 р. (in Russ.)
9. Efanov D., Sapozhnikov V., Sapozhnikov Vl. Proceedings of 15th IEEE East-West Design & Test Symposium (EWDTS'2017), Novi Sad, Serbia, 29 September-2 October 2017, pp. 365-371, DOI: 10.1109/EWDTS.2017.8110126.
10. Freiman C.V. Information and Control, 1962, no. 1(5), pp. 64-71, DOI: 10.1016/S0019-9958(62)90223-1.
11. Anderson D.A., Metze G. IEEE Transaction on Computers, 1973, no. 3(С-33), pp. 263-269.
12. Maznev V.I. Automation and Remote Control, 1978, no. 9, pp. 142-145. (in Russ.)
13. Sapozhnikov V.V., Sapozhnikov Vl.V. Automation and Remote Control, 1992, no. 3, pp. 3-35. (in Russ.)
14. Sapozhnikov V.V., Sapozhnikov Vl.V. Samoproveryaemye diskretnyye ustroystva (Self-Checked Discrete Devices), St. Petersburg, 1992, 224 р. (in Russ.)
15. Matrosova A., Ostrovsky V., Levin I., Nikitin K. Proceedings of the 9th IEEE International On-Line Testing Symposium (IOLTS'03), 7-9 July 2003, Kos Island, Greece, pp. 49-53.
16. Efanov D.V., Sapozhnikov V.V., Sapozhnikov Vl.V., Pivovarov D.V. Engineering Simulation, 2019, no. 1(41), pp. 27-42. DOI: 10.15407/emodel.41.01.027.
17. Göessel M., Ocheretny V., Sogomonyan E., Marienfeld D. New Methods of Concurrent Checking: Edition 1, Dordrecht, Springer Science+Business Media B.V., 2008, 184 p.
18. Efanov D.V., Sapozhnikov V.V., Sapozhnikov Vl.V., Pivovarov D.V. Automatic Control and Computer Sciences, 2019, no. 6(53), pp. 481-491. DOI: 10.3103/S014641161906004X.
19. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V., Pivovarov D.V. Tomsk State University Journal. Control and Computer Science, 2017, no. 4, pp. 69-80. DOI: 10.17223/19988605/41/9. (in Russ.)
20. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V. Control Sciences, 2017, no. 1, pp. 57-64. (in Russ.)
21. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V., Pivovarov D.V. Modelling and Simulation in Engineering, 2017, no. 2(39), pp. 15-34. (in Russ.)
22. Sapozhnikov V., Sapozhnikov Vl., Efanov D., Bliudov A., Pivovarov D. Proceedings of 15th IEEE East-West Design & Test Symposium (EWDTS'2017), Novi Sad, Serbia, September 29-October 2, 2017, pp. 89-94. DOI: 10.1109/EWDTS.2017.8110076.
23. Efanov D.V., Sapozhnikov V.V., Sapozhnikov Vl.V., Pivovarov D.V Informatics, 2018, no. 4(15), pp. 71-85. (in Russ.)
24. Gessel M., Morozov A.V., Sapozhnikov V.V., Sapozhnikov Vl.V. Automation and Remote Control, 2003, no. 1(64), pp. 153-161.
25. Parkhomenko P.P., Sogomonyan E.S. Osnovy tekhnicheskoy diagnostiki (optimizatsiya algoritmov di-agnostirovaniya, apparaturnyye sredstva) (Fundamentals of Technical Diagnostics (Optimization of Diagnostic Algorithms, Hardware)), Moscow, 1981, 320 р. (in Russ.)
26. Aksenova G.P. Automation and Remote Control, 1979, no. 9, pp. 126-135. (in Russ.)
27. Das D.K., Roy S.S., Dmitiriev A., Morozov A., Gössel M. Proceedings of the 10th International Workshops on Boolean Problems, Freiberg, Germany, September, 2012, pp. 33-40.
28. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V. Modelling and Simulation in Engineering, 2016, no. 6(38), pp. 25-43. (in Russ.)
29. Nikolos D. Journal of Electronic Testing: Theory and Applications, 1998, no. 1-2(12), pp. 69-79. DOI: 10.1023/A:1008281822966.
30. Sapozhnikov V.V., Sapozhnikov Vl.V, Chuguy Т.А. Journal of Instrument Engineering, 1991, no. 6(34), pp. 27-33. (in Russ.)
31. Sapozhnikov V.V., Sapozhnikov Vl.V., Efanov D.V. Journal of Instrument Engineering, 2017, no. 5(60), pp. 404-411. DOI: 10.17586/0021-3454-2017-60-5-404-411. (in Russ.)
32. Sapozhnikov V.V., Sapozhnikov Vl.V. Automation and Remote Control, 1991, no. 2pt 2(52), pp. 289-296.
33. Sapozhnikov V., Sapozhnikov Vl., Efanov D. Proceedings of 14th IEEE East-West Design & Test Symposium (EWDTS'2016), Yerevan, Armenia, October 14-17, 2016, pp. 126-133, DOI: 10.1109/EWDTS.2016.7807677.
Data on authors
— Dr. Sci., Professor; Emperor Alexander I St. Petersburg State Transport University, Department of Automation and Remote Control on Railways; E-mail: [email protected]
— Dr. Sci., Professor; Emperor Alexander I St. Petersburg State Transport University, Department of Automation and Remote Control on Railways; E-mail: [email protected]
— Dr. Sci., Associate Professor; LocoTech-Signal Ltd.; Russian University of Transport; Department of Automation, Remote Control, and Communication in Railway Transport; E-mail: [email protected]
— Emperor Alexander I St. Petersburg State Transport University, Department of Automation and Remote Control on Railways; Assistant; E-mail: [email protected]
For citation: Sapozhnikov V. V., Sapozhnikov Vl. V., Efanov D. V., Pivovarov D. V. Method of diagnostic system synthesis based on Boolean complement with reduced number of correction elements. Journal of Instrument Engineering. 2019. Vol. 62, N 12. P. 1039—1052 (in Russian).
DOI: 10.17586/0021-3454-2019-62-12-1039-1052
Valery V. Sapozhnikov Vladimir V. Sapozhnikov Dmitry V. Efanov Dmitry V. Pivovarov