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

ТЕХНИЧЕСКАЯ ДИАГНОСТИКА СИСТЕМ УПРАВЛЕНИЯ

УДК 681.518.5:004.052.32

В. В. Сапожников, Вл. В. Сапожников, Д. В. Ефанов

Петербургский государственный университет путей сообщения Императора Александра I

АНАЛИЗ СВОЙСТВ КЛАССИЧЕСКИХ И ВЗВЕШЕННЫХ КОДОВ БЕРГЕРА ПО ОБНАРУЖЕНИЮ ОШИБОК В ИНФОРМАЦИОННЫХ РАЗРЯДАХ

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

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

Введение

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

79

ля технического состояния объектов, основанный на непрерывном режиме тестирования без отключения объекта диагностирования от работы - метод функционального (рабочего, on-line) контроля [3] - [5]. Данный метод не требует подачи специальных тестовых воздействий [6], что актуально для систем непрерывного действия, например, систем железнодорожной автоматики и телемеханики (ЖАТ). Некорректная работа устройств ЖАТ может привести к сбоям в перевозочном процессе и создать условия для нарушения безопасности движения поездов [7], [8].

В системе функционального контроля выделяют три блока (рис. 1):

- основной логики f (х);

- контрольной логики g (х);

- тестер.

рабочие выходы

контроль

Рис. 1. Схема организации системы функционального контроля

Система функционального контроля строится на случай возможного возникновения одиночных дефектов во внутренней структуре контролируемого устройства f (х). Это могут быть кратковременные и постоянные (константные) неисправности на выходах внутренних логических элементов устройства f (х), а также неисправности типа «временная задержка» [9] - [11]. Система функционального контроля должна обеспечивать возможность идентификации любого внутреннего дефекта блока f (х).

Решение обозначенной выше задачи в современных управляющих системах достигается путем применения принципа дублирования. В этом случае блок контрольной логики g (х) повторяет контролируемое устройство f (х), а для установления соответствия между одноименными выходами

80

с различных блоков оба устройства снабжаются самопроверяемым компаратором [12]. В системе дублирования обнаруживаются любые одиночные неисправности контролируемого устройства f (х), однако она имеет высокий показатель сложности технической реализации (ее можно оценить площадью кристалла микросхемы), в сравнении с контролируемым устройством это зачастую трехкратное увеличение сложности.

При построении систем функционального контроля логических устройств далеко не всегда эффективно использовать именно принцип дублирования [9], [12], [13]. Можно построить систему функционального контроля, обнаруживающую все однократные дефекты блока f (х) с уменьшенной сложностью. Часто для решения этой задачи применяются коды с суммированием [5], [9], [14] - [16]. При этом выходам контролируемого устройства f (х) ставится в соответствие информационный вектор длины т (вектор < f (х) f (х) ... fm (х) >), а выходам блока контрольной логики g (х) - контрольный вектор длины k (вектор <g1 (х) g2 (х) ... gk (х) >). От свойств кода с суммированием зависят характеристики системы функционального контроля по обнаружению искажений в устройстве f (х). Так как одиночные дефекты во внутренней структуре блока f (х), например, константные неисправности на выходах внутренних логических элементов, могут влиять на произвольное количество рабочих выходов, т. е. могут искажать их действительные значения. Можно рассматривать свойства отдельно взятого кода по обнаружению ошибок в информационных разрядах, определяя тем самым и свойства системы функционального контроля по обнаружению ошибок в устройстве f (х).

В данной работе исследуются свойства классических и взвешенных кодов с суммированием (впервые описанных в работах Д. Бергера [14], [17]) по обнаружению ошибок в информационных векторах при безошибочности контрольных векторов. Также приводится способ построения кода с суммированием, сохраняющего число контрольных разрядов таким, как у классического кода Бергера, но обнаруживающего большее количество искажений в информационных векторах кодовых слов.

1 Свойства классических кодов Бергера

Классический код с суммированием образуется путем приписывания к информационному вектору длины m контрольного вектора длины к = |"log2 (m +1)"| (запись \t] обозначает целое сверху от t), содержащего в своих разрядах двоичное число, равное сумме числа единичных информационных разрядов. Чаще всего говорят о том, что это вес r информационного вектора. Данный код обозначим как S (n, т)-код, где n = m + k - число разрядов в кодовом слове.

Для примера в табл. 1 даются кодовые слова S (5,3)-кода.

81

ТАБЛИЦА 1. S (5,3)-код

№ Информационный вектор Контрольный вектор

Х1 Х2 Х3 л

0 0 0 0 0 0

1 0 0 1 0 1

2 0 1 0 0 1

3 0 1 1 1 0

4 1 0 0 0 1

5 1 0 1 1 0

6 1 1 0 1 0

7 1 1 1 1 1

Правила построения классического кода Бергера дают возможность получения такого кода, который обнаруживает любые однонаправленные (монотонные) искажения в информационных разрядах (по данному показателю S (n, т)-код является оптимальным [9], [18]). Однонаправленная ошибка в информационных разрядах - это ошибка, искажающая только нулевые разряды в единичные (0—1), либо, наоборот, только единичные разряды в нулевые (1——0). На рис. 2 а) показан пример такой ошибки. Подобное свойство S (n, т)-кода позволяет эффективно его использовать при организации систем функционального контроля устройств, на выходах которых возможны только однонаправленные искажения. Методы построения таких устройств изложены в [9], [19] - [21].

а) б) в)

m к m к m к

ToVT 'ТоТ 'o^oVr 'ТоТ 'o^oVr 'ТоТ

U 111 ) 1

1 1 0 1 о о 1 o 1 1 o о о 1 1 0 0 0 о о 1

Рис. 2. Ошибки в информационных векторах кодов: а) обнаруживаемые однонаправленные; б) обнаруживаемые разнонаправленные;

в) необнаруживаемые

S (n, т)-код кроме всех однонаправленных искажений в информационных векторах обнаруживает еще и любые искажения нечетных кратностей d (рис. 2 б). При возникновении таких искажений в информационном векторе

82

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

Необнаруживаемыми искажениями в информационных векторах S (n, т)-кодов являются разнонаправленные ошибки четных кратностей, содержащих группу искажений {0—^1 и 1 —^0} (рис. 2 в). Число таких искажений четной кратности d(d е {2, 4, ..., m - 1}, если m нечетное и d е {2, 4, ..., m}, если m четное) подсчитывается по формуле [22]:

d d

N

m,d

ZCr C 2 C '

d

m-

r

2

Зная выражение (1), нетрудно рассчитать и общее число искажений в коде Бергера как сумму всех величин Nm d:

N

t,

z

d=2

m,

Nm,d = Z

d=2

d d

d

m—

2

Z CrC 2 C

L-t ^mW

d

r=—

V 2 J

2

'm-r

Классические S (n, m)-коды не обнаруживают одинаковый процент ошибок четной кратности d в информационных векторах от общего числа искажений данной кратности в информационных векторах вне зависимости от длины информационного вектора [22]:

Рс

N

N

m,d

m,d

d

m-- d d

ZCr C 2 C 2

^m^r ^m-d

2mCd

C2

d

d

Из (2) следует, что в2 = 0,5; в4 = 0,375; в6 = 0,3125; ... в20 = 0,1762; и т. д. Значение величины Pd с увеличением значения m уменьшается и при m—да стремится к нулю [23] - [25].

Отметим, что классические коды Бергера имеют низкую эффективность обнаружения искажений в области малой кратности - ими не обнаруживается 50 % двукратных искажений и 37,5 % четырехкратных искажений. Естественно, что искажения малой кратности на выходах произвольного устройства f (х) более вероятны, чем искажения большей кратности.

Анализируя табл. 1, можно прийти к выводу о том, что в классическом коде Бергера информационные векторы распределены между контрольными векторами неравномерно - один и тот же контрольный вектор ставится в соответствие C^ информационным векторам. Неравномерность распределения информационных векторов по контрольным определяет высокое общее ко-

83

личество необнаруживаемых искажений (Nm) в информационных векторах S (n, т)-кодов.

В [26], [27] показано, что минимальным значением числа Nm при установленных значениях m и к обладает такой (m, к)-код, у которого все 2m информационных векторов равномерно распределяются между 2к контрольными векторами. Такой код является оптимальным (m, к)-кодом по критерию минимума общего количества необнаруживаемых искажений в информационных векторах:

Nmin = 2m

В [26], [27] также предложен показатель эффективности кода с суммированием при данных m и к по обнаружению общего количества искажений в информационных векторах:

N k

t = .

^ д т-min v 7

Nm,k

Показатель ^ характеризует «близость» кода с суммированием к оптимальному (m, к)-коду по величине Nm. Чем ближе ^ к 1, тем эффективнее код обнаруживает ошибки в информационных векторах. Для классических кодов Бергера показатель ^ за редким исключением не превышает 50 %.

2 Взвешенные коды Бергера и их свойства

Улучшение свойств классических S (n, m)-кодов достигается путем различных модификаций. Один из способов основан на идее приписывания информационным разрядам некоторых весовых коэффициентов w и записи в контрольный вектор двоичного числа, характеризующего сумму весовых коэффициентов единичных информационных разрядов [14]. Подобные коды с суммированием называются взвешенными, или кодами с суммированием взвешенных информационных разрядов. Обозначим взвешенные коды как WS (n, m)-коды.

Рассмотрим WS (n, m)-код, предложенный Д. Бергером: информационным разрядам <f (x) f (x) ... fm (x) > в соответствие поставлена последовательность весовых коэффициентов, представляющих ряд натуральных чисел за исключением степеней числа 2: [3, 5, 6, 7, 9, 10,...]. Известны и другие последовательности весовых коэффициентов, используемые для решения задач диагностики [28].

84

В табл. 2 представлены кодовые слова WS (7,3)-кода (его можно сравнить с S (5,3)-кодом). Анализируя табл. 1 и 2, отметим, что каждому информационному вектору WS (7,3)-кода соответствует только один контрольный вектор, а в S (5,3)-коде нескольким информационным векторам может соответствовать один контрольный, поэтому в WS (7,3)-коде нет необнаруживаемых искажений, а в S (5,3)-коде они есть. Однако у WS (7,3)-кода число к > т, поэтому он не является удачным выбором при организации систем функционального контроля, коды с повторением (double-codes)., у которых к = т, в этом имеют приоритет, так как могут давать более простые технические реализации контрольного оборудования системы, изображенной на рис. 1.

ТАБЛИЦА 2. WS (7,3)-код

№ Информационный вектор Контрольный вектор

Х1 Х2 Х3 л Тз Т4

0 0 0 0 0 0 0 0

1 0 0 1 0 1 1 0

2 0 1 0 0 1 0 1

3 0 1 1 1 0 1 1

4 1 0 0 0 0 1 1

5 1 0 1 1 0 0 1

6 1 1 0 1 0 0 0

7 1 1 1 1 0 0 1

В работах [22], [25] предложено представлять коды с суммированием в виде таблиц, где в столбцах размещаются все контрольные векторы, образуя контрольные группы, каждой из которых поставлены в соответствие все информационные векторы. Такой подход позволяет на основе анализа контрольных групп подсчитать суммарное число необнаруживаемых искажений каждой кратности, так как все необнаруживаемые ошибки - это ошибки, переводящие информационные векторы одной контрольной группы друг в друга. Авторами статьи были составлены алгоритмы анализа контрольных групп для S (n, т) и WS (n, т) кодов и реализованы в виде программного модуля расчета характеристик кодов. В табл. 3 приведен фрагмент таблицы характеристик рассматриваемых кодов с суммированием с длинами информационных векторов т = 2 ^ 15. Сравнивая значения количества необнаруживаемых искажений по кратностям для S (n, т) и WS (n, т)-кодов, отметим такие особенности кодов Бергера:

85

98

ТАБЛИЦА 3. Необнаруживаемые ошибки в кодах Бергера

m к Необнаруживаемые ошибки кратностей d Nm 5

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

2 4 0 0 0 -

2 0 2 2 0

3 5 0 0 0 0 -

2 0 12 0 12 0,6667

4 5 0 0 0 0 0 -

3 0 48 0 6 54 0,2963

5 5 0 0 8 4 2 14 0

3 0 160 0 60 0 220 0,4364

6 6 0 0 32 32 8 2 74 0

3 0 480 0 360 0 20 860 0,5209

7 6 0 0 96 128 72 24 0 320 0,4

3 0 1344 0 1680 0 280 0 3304 0,5811

8 6 0 0 320 480 304 136 40 0 1280 0,6

4 0 3584 0 6720 0 2240 0 70 12 614 0,3044

9 7 0 0 896 1600 1280 736 280 48 14 4854 0,3164

4 0 9216 0 24 192 0 13 440 0 1260 0 48 108 0,3299

10 7 0 0 2304 5120 4800 3232 1856 600 108 26 18 046 0,3972

4 0 23 040 0 80 640 0 67 200 0 12 600 0 252 183732 0,3511

11 7 0 0 6144 14 848 16 384 13 696 9312 4272 1480 332 0 66 468 0,4622

4 0 56 320 0 253 440 0 295 680 0 92 400 0 5544 0 703384 0,3698

12 7 0 0 16 384 39 936 51 456 52 480 41 792 24 448 11 136 3088 352 82 241154 0,5265

4 0 135168 0 760 320 0 1182720 0 554 324 0 66 528 0 924 2699984 0,3868

13 8 0 0 40 960 108544 154624 182016 174720 121280 64 288 25 648 6184 796 150 879210 0,2888

4 0 319488 0 2196480 0 4392960 0 2882880 0 576576 0 24 024 0 10392408 0,4028

14 8 0 0 98 304 282 624 458752 609280 654 080 536832 346 048 165312 53 872 13 400 2560 0 3221 064 0,3205

4 0 745 472 0 6150144 0 15 375 360 0 13453440 0 4036032 0 336336 0 3432 40100216 0,418

15 8 0 0 237568 729088 1294336 1927168 2353664 2200832 1619072 937472 402048 123584 29 352 4708 0 11 858 892 0,3509

4 0 1720320 0 16773120 0 51251200 0 57 657 600 0 24216192 0 3363 360 0 102960 0 155084752 0,4325

1. Любой WS (n, т)-код имеет меньшее количество необнаруживаемых искажений четной кратности d, чем соответствующий S (n, т)-код.

2. любой WS (n, т)-код обнаруживает все двукратные искажения в информационных векторах.

3. любой S (n, т)-код, в отличие от WS (n, т)-кода, обнаруживает все искажения нечетных кратностей.

4. любой WS (n, т)-код обнаруживает на порядок больше ошибок в информационных векторах, чем S (n, т)-код.

На рис. 3 приведен график зависимости величины А

N

S

- от-

ношения числа необнаруживаемых ошибок в S (n, т)-кодах к числу необнаруживаемых искажений в WS (n, т)-кодах. Величина А (т) достигает своего минимума при т = 8.

Рис. 3. График зависимости величины А от т

На рис. 4 приведены графики изменения величин £ при изменении длины информационного вектора для S (n, т)-кодов и WS (n, т)-кодов соответственно.

WS (n, т)-коды обнаруживают большее количество ошибок в информационных векторах, чем S (n, т)-коды. По графикам (рис. 4) можно заключить, что при некоторых значениях т S (n, т)-коды ближе к оптимальным, а при некоторых, наоборот, WS (n, т)-коды. При этом чем ближе значение Wmax к числу 2k - 1, тем выше эффективность взвешенного кода для данного значения т.

Для WS (n, т)-кодов по графикам на рис. 4 можно также проследить такую закономерность: для кодов с постоянным значением числа контрольных разрядов k происходит увеличение значения коэффициента £ от кода с чис-

87

Y(m)A

1,0

0,8

Рис. 4. Графики зависимостей величины £, от m

лом информационных разрядов m = 2к - 1 к коду с числом информационных разрядов m = 2к, где к = |~log2 (Wmax +1)"|. Подобным свойством обладают и классические коды Бергера за той лишь разницей, что в них к = [" log2( m +1) "| [26], [29].

3 Построение модульно-взвешенного кода Бергера

Общим недостатком S (n, m) и WS (n, m) кодов является низкое значение коэффициента эффективности £ (см. табл. 3). Повысить способности кодов с суммированием по обнаружению ошибок в информационных векторах можно следующим образом. Суммарный вес единичных информационных разрядов будем вычислять по заранее установленному модулю M = 2^log2(m+1)^. Это обеспечит равенство чисел контрольных разрядов в получаемом коде и в коде Бергера. Обозначим модульно-взвешенный код с суммированием как WSM (n, m)-код.

В табл. 4 представлены рассчитанные характеристики WSM (n, m)-кодов с длинами информационных векторов m = 2 ^ 15. Данные коды могут быть сравнимы с классическими кодами Бергера (см. табл. 3).

Для WSM (n, m)-кодов характерны следующие особенности:

1. WSM (n, m)-коды, в отличие от S (n, m) и WS (n, m) кодов, близки по к оптимальному (m, к)-коду.

2. WSM (n, m)-коды обнаруживают большее количество ошибок четной кратности, чем S (n, m)-коды при одинаковых значениях m.

3. В классе необнаруживаемых у WSM (n, m)-кодов присутствует некоторое количество ошибок нечетных кратностей.

Отметим еще одну характерную особенность WSM (n, m)-кодов. Поскольку величина суммарного веса единичных информационных разрядов

88

68

ТАБЛИЦА 4. Необнаруживаемые ошибки в модульно-взвешенных кодах Бергера

m к Nm Nmrn m,k 5

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

2 2 0 2 2 0 0

3 2 0 4 4 8 8 1

4 3 0 8 12 0 20 16 0,8

5 3 0 32 48 12 8 100 96 0,96

6 3 0 96 192 120 32 16 456 448 0,9824561

7 3 0 320 640 496 320 160 0 1936 1920 0,9917355

8 4 0 384 832 1152 848 488 160 0 3864 3840 0,9937888

9 4 0 1024 2688 3776 4000 2992 1152 200 64 15 896 15 872 0,9984902

10 4 0 2048 8192 13 568 15 744 13 600 8112 2672 504 128 64 568 64 512 0,9991327

11 4 0 4096 23 552 43 008 57 344 60 480 42 912 19 744 7184 1792 0 260112 260096 0,9999385

12 4 0 10 240 62 464 128000 199168 241408 201216 122720 59 328 17 392 2048 512 1044496 1044480 0,9999847

13 4 0 24 576 159744 377856 644096 879616 889856 648 640 363392 153280 38 912 5136 1024 4186128 4186112 0,9999962

14 4 0 65 536 401 408 1034240 2025472 3102720 3516416 3033984 2070 272 1043840 356352 92 192 18 432 0 16 760 864 16 760832 0,9999981

15 4 0 147456 1015808 2838528 6037504 10280960 13 279 232 13 092 608 10198016 6229248 2801664 897088 221 184 36 864 0 67076160 67 076 096 0,999999

в WSM (n, т)-кодах вычисляется по модулю M = 2^log2(т+Х1", в них появляются однонаправленные искажения различных кратностей. Например WSM (9,6)-код имеет 154 необнаруживаемые однонаправленные ошибки (96 двукратных, 32 трехкратных и 24 четырехкратных). Эту особенность WSM (n, т)-кодов необходимо учитывать при построении систем функционального контроля

[19] - [21].

Заключение

В данной работе изложены особенности кодов с суммированием (кодов Бергера) по обнаружению ошибок в информационных векторах. Показаны преимущества каждого из трех рассмотренных кодов: классического, взвешенного и модульно-взвешенного. Взвешенные коды Бергера имеют возможность обнаружения любых однократных и двукратных искажений в информационных векторах. Это свойство можно использовать при организации контроля комбинационных схем, в которых внутренняя структура исключает связь одного логического элемента с тремя и более выходами схемы. Недостатком взвешенного кода Бергера является большое число контрольных разрядов. При построении системы функционального контроля это может повлиять на сложность дополнительного оборудования (рис. 1). Взвешенный код, однако, может оказаться эффективнее в системе функционального контроля, чем код с повторением (система дублирования [9]). Предложенный модульно-взвешенный код имеет максимально высокую эффективность обнаружения ошибок в информационных разрядах при заданных значениях m и k в сравнении с классическими и взвешенными кодами с суммированием. В то же время модульно-взвешенный код не обнаруживает некоторое количество однонаправленных искажений, что должно учитываться в процессе выбора варианта кодирования при создании системы функционального контроля.

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

1. Kharchenko, V. (2013). Evolution of von Neumann's Paradigm: Safe and Green Computing. Proceedings of 11th IEEE East-West Design & Test Symposium (EWDTS 2013), Rostov-on-Don, 493-494.

2. Рабочее диагностирование безопасных информационно-управляющих систем / ред. А. В. Дрозда, В. С. Харченко. - Харьков : Национальный аэрокосмический университет им. Н. Е. Жуковского «ХАИ», 2012. - 614 с.

3. Goessel, M., Graf, S. (1994). Error Detection Circuits, London, 261 p.

4. Nicolaidis, M., Zorian, Y (1998). On-Line Testing for VLSI - А Compendium of Approaches. Journal of Electronic Testing: Theory and Application (JETTA), 12 (1-2), 7-20.

90

5. Lala, P. K. (2001). Self-Checking and Fault-Tolerant Digital Design, San Francisco,

216 p.

6. Основы технической диагностики (оптимизация алгоритмов диагностирования, аппаратурные средства) / П. П. Пархоменко, Е. С. Согомонян. - Москва : Энергоатомиздат, 1981. - 320 с.

7. Theeg, G., Vlasenko, S. (2009). Railway Signalling & Interlocking. DWMedia Group GmbH, Hamburg, 448 p.

8. Основы построения и принципы функционирования систем технического диагностирования и мониторинга устройств железнодорожной автоматики и телемеханики : учеб. пособие / Д. В. Ефанов, А. А. Лыков. - Санкт-Петербург : ПГУПС, 2012, - 59 с.

9. Самопроверяемые устройства и отказоустойчивые системы / Е. С. Согомонян, Е. В. Слабаков. - Москва : Радио и связь, 1989. - 208 с.

10. Matrosova, A., Lipsky, V, Melnikov, A., Singh, V (2010). Path Delay Faults and ENF. Proceedings of IEEE East-West Design & Test Symposium (EWDTS2010), St. Petersburg, 164-167.

11. Синтез легко тестируемых последовательностных схем / А. Ю. Матросова, Е. В. Митрофанов // Вестник Томского государственного университета. Управление, вычислительная техника и информатика. - 2013. - № 2. - С. 140-147.

12. Основы технической диагностики / В. В. Сапожников, Вл. В. Сапожников. -Москва : Маршрут, 2004. - 318 с.

13. Rao, T. R., Fujiwara, E. (1989). Error Control Coding for Computer Systems, New York, 584 p.

14. Berger, J. M. (1961). A Note on Error Detection Codes for Asymmetric Channels. Information and Control, 4 (1), 68-73.

15. Bose, B., Lin, D. J. (1985). Systematic Unidirectional Error-Detection Codes. IEEE Trans. Comput., C-34, 1026-1032.

16. Коды с суммированием для организации контроля комбинационных схем / А. А. Блюдов, Д. В. Ефанов, В. В. Сапожников, Вл. В. Сапожников // Автоматика и телемеханика. - 2013. - № 6. - С. 153-164.

17. Berger, J. M. (1961). A Note on Burst Detecting Sum Codes. Information and Control, 4 (2-3), 297-299.

18. Freiman, C. V. (1962). Optimal Error Detection Codes for Completely Asymmetric Binary. Information and Control, 5 (1), 64-71.

19. Метод построения комбинационных самопроверяемых устройств с обнаружением всех одиночных неисправностей / В. В. Сапожников, Вл. В. Сапожников, М. Гёссель, А. А. Морозов // Электронное моделирование. - 1998. - Т. 20. - № 6. - С. 70-80.

20. Morozov, A., Sapozhnikov, V. V, Sapozhnikov, Vl. V., Goessel, M. (1998). SelfChecking Combinational Circuits with Unidirectionally Independent Outputs. VLSI Design, 5 (4), 333-345.

21. Sapozhnikov V. V., Morosov, A., Sapozhnikov, Vl. V, Goessel, M. (1998). A New Design Method for Self-Checking Unidirectional Combinational Circuits. Journal of Electronic Testing: Theory and Applications (JETTA), 12 (1-2), 41-53.

22. О свойствах кода с суммированием в схемах функционального контроля / Д. В. Ефанов, В. В. Сапожников, Вл. В. Сапожников // Автоматика и телемеханика. -2010. - № 6. - С. 155-162.

91

23. Предельные свойства кода с суммированием / В. В. Сапожников, Вл. В. Сапожников, Д. В. Ефанов // Известия ПГУПС. - 2010. - № 3. - С. 290-299.

24. Blyudov, A., Efanov, D., Sapozhnikov, V, Sapozhnikov, Vl. (2012). Properties of Code with Summation for Logical Circuit Test Organization. Proceedings of 10th IEEE East-West Design & Test Symposium (EWDTS'2012), Kharkov, 114-117.

25. Применение кода с суммированием в системах технической диагностики и мониторинга устройств железнодорожной автоматики и телемеханики : дис. ... канд. техн. наук / Д. В. Ефанов. - Санкт-Петербург : ПГУПС, 2010. - 192 с.

26. Построение модифицированного кода Бергера с минимальным числом необнаруживаемых ошибок информационных разрядов / А. А. Блюдов, Д. В. Ефанов, В. В. Сапожников, Вл. В. Сапожников // Электронное моделирование. - 2012. - Т. 34. - № 6. -С. 17-29.

27. Sapozhnikov, V., Sapozhnikov, Vl., Efanov, D., Blyudov, A. (2013). Analysis of Error-Detection Possibilities of CED Circuits Based on Hamming and Berger Codes. Proceedings of the 11th IEEE East-West Design & Test Symposium (EWDTS2013), Rostov-on-Don, 200-207.

28. Das, D., Touba, N. A. (1999). Weight-Based Codes and Their Application to Concurrent Error Detection of Multilevel Circuits. Proceedings of the 17th IEEE Test Symposium, California, 370-376.

29. Метод построения кода Бергера с повышенной эффективностью обнаружения ошибок в информационных разрядах / В. В. Сапожников, Вл. В. Сапожников, Д. В. Ефа-нов, Д. А. Никитин // Электронное моделирование. - 2013. - Т. 35. - № 4. - С. 21-34.

© Сапожников В. В., Сапожников Вл. В., Ефанов Д. В., 2014

92