Научная статья на тему 'Взвешенный код с суммированием без операций переноса для решения задач технической диагностики дискретных систем'

Взвешенный код с суммированием без операций переноса для решения задач технической диагностики дискретных систем Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
125
14
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ТЕХНИЧЕСКАЯ ДИАГНОСТИКА / TECHNICAL DIAGNOSTICS / САМОПРОВЕРЯЕМАЯ СХЕМА ВСТРОЕННОГО КОНТРОЛЯ / ОБНАРУЖЕНИЕ НЕИСПРАВНОСТЕЙ / FAULT DETECTION / ИНФОРМАЦИОННЫЙ ВЕКТОР / DATA VECTOR / ОШИБКА / ERROR / КОД ХЭММИНГА / HAMMING CODE / ВЗВЕШЕННЫЙ КОД С СУММИРОВАНИЕМ БЕЗ ПЕРЕНОСОВ / WEIGHTED CODE WITH SUMMATION WITHOUT CARRIES / КОНТРОЛЬНАЯ КОМБИНАЦИОННАЯ СХЕМА / SELF-CHECKING BUILT-IN CHECK CIRCUIT / СТРУКТУРНАЯ ИЗБЫТОЧНОСТЬ / STRUCTURAL REDUNDANCY / BENCHMARK

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Сапожников В. В., Сапожников Вл В., Ефанов Д. В.

Проанализированы характеристики взвешенного кода с суммированием без операции переноса переполняемого разряда по обнаружению ошибок в самопроверяемых схемах встроенного контроля логических устройств автоматики и вычислительной техники. Показано, что описываемый код при использовании последовательности весовых коэффициентов, образующей натуральный ряд чисел, обеспечивает обнаружение любых однократных и двукратных ошибок в информационных векторах. По этому показателю предлагаемый код сравним с классическими кодами Хэмминга, однако имеет более простые функции вычисления значений контрольных разрядов. При некоторых значениях числа информационных разрядов код имеет меньшее на единицу число контрольных разрядов. Это обстоятельство позволяет организовывать самопроверяемые схемы встроенного контроля логических устройств с уменьшенной структурной избыточностью как по сравнению с дублированием, так и по сравнению с использованием для этих целей кода Хэмминга. У кодов Хэмминга лучшие характеристики обнаружения ошибок различного вида (монотонная, симметричная или асимметричная) и кратности, что определяет и большее число идентифицируемых на выходах логических устройств ошибок, чем при использовании предлагаемого взвешенного кода. Эксперименты с системами контрольных комбинационных схем LGSynth`89 и MCNC Benchmarks подтверждают теоретически полученные закономерности.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Сапожников В. В., Сапожников Вл В., Ефанов Д. В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Weighted code with summation without carries for solving the problems of technical diagnostics of discrete systems

Characteristics of weight-based code with summation without the operation of carries to the detection of errors in self-checking circuits of built-in test of logical devices of automation and computer technique are analyzed. It is shown that in the case when the described code uses a sequence of weight coefficients forming a natural series of numbers, it ensures detecting of any single and double errors in data vectors. For this indicator, the proposed code is comparable to the classic Hamming codes but has more simple functions describing check bits. For some values of data bits number, the new code has the number of check digits one less than the classic one. This makes it possible to organize self-checking circuits of built-in control for logical devices with reduced structural redundancy in comparison with both duplication and using Hamming code for these purposes. The characteristics of error detection by types (unidirectional, symmetrical or asymmetrical) and multiplicities are better for a Hamming code identifying more errors at the logical device output than with the use of the proposed weighted code. Experiments carried out with the systems of benchmarks LGSynth`89 and MCNC Benchmarks confirm the theoretically obtained patterns.

Текст научной работы на тему «Взвешенный код с суммированием без операций переноса для решения задач технической диагностики дискретных систем»

УДК 681.518.5:004.052.32 DOI: 10.17586/0021-3454-2018-61-4-323-335

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

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

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

190031, Санкт-Петербург, Россия E-mail: [email protected]

Проанализированы характеристики взвешенного кода с суммированием без операции переноса переполняемого разряда по обнаружению ошибок в самопроверяемых схемах встроенного контроля логических устройств автоматики и вычислительной техники. Показано, что описываемый код при использовании последовательности весовых коэффициентов, образующей натуральный ряд чисел, обеспечивает обнаружение любых однократных и двукратных ошибок в информационных векторах. По этому показателю предлагаемый код сравним с классическими кодами Хэмминга, однако имеет более простые функции вычисления значений контрольных разрядов. При некоторых значениях числа информационных разрядов код имеет меньшее на единицу число контрольных разрядов. Это обстоятельство позволяет организовывать самопроверяемые схемы встроенного контроля логических устройств с уменьшенной структурной избыточностью как по сравнению с дублированием, так и по сравнению с использованием для этих целей кода Хэмминга. У кодов Хэмминга лучшие характеристики обнаружения ошибок различного вида (монотонная, симметричная или асимметричная) и кратности, что определяет и большее число идентифицируемых на выходах логических устройств ошибок, чем при использовании предлагаемого взвешенного кода. Эксперименты с системами контрольных комбинационных схем LGSynth89 и MCNC Benchmarks подтверждают теоретически полученные закономерности.

Ключевые слова: техническая диагностика, самопроверяемая схема встроенного контроля, обнаружение неисправностей, информационный вектор, ошибка, код Хэмминга, взвешенный код с суммированием без переносов, контрольная комбинационная схема, структурная избыточность

Введение. При построении дискретных систем с обнаружением отказов эффективно используется помехоустойчивое кодирование [1—5]. На аппаратном уровне кодирование применяют как на этапе абстрактного синтеза во избежание некорректной работы устройства при переходах из состояния в состояние, так и на этапе разработки диагностического обеспечения устройства [6—9]. Кроме того, кодирование информации применяется и на программном уровне для повышения ее достоверности при обработке и передаче между блоками и узлами устройства [10].

Техническое состояние функционирующего дискретного устройства (без отключения от управляемых объектов) позволяет контролировать самопроверяемые схемы встроенного контроля (ССВК) [11—14]. При организации систем функционального контроля также используют избыточные коды, ориентированные на обнаружение ошибок [15, 16]. Свойства выбранного на этапе проектирования ССВК избыточного кода определяют и особенности технической реализации конечного устройства — его структурную избыточность и характеристики обнаружения ошибок на выходах объекта диагностирования [17].

Избыточные коды обладают разнообразными характеристиками обнаружения ошибок, в том числе по видам и кратностям. Например, равновесные коды, классические коды

Бергера и коды с суммированием взвешенных информационных разрядов обнаруживают любые монотонные ошибки (такие ошибки связаны с наличием искажений только нулевых или только единичных разрядов) в информационных векторах [8, 9, 18]. Эта особенность приведенных кодов при синтезе ССВК используется следующим образом. Для объекта диагностирования выявляются группы монотонно независимых выходов (они в совокупности должны покрывать все множество выходов). Затем для каждой группы таких выходов строится отдельная схема контроля на основе выбранного кода с обнаружением монотонных ошибок. Выходы отдельных схем контроля объединяются на входах самопроверяемого компаратора с целью получения одного контрольного сигнала [19]. Другой подход к использованию свойств кодов с обнаружением любых монотонных ошибок предполагает преобразование структуры объекта диагностирования в структуру с монотонно независимыми выходами по специальным алгоритмам и контроль всех выходов на основе кода с обнаружением монотонных ошибок [20]. Идея использования особенностей обнаружения определенного вида ошибок кодами широко используется в теории проектирования и тестирования логических устройств.

Вследствие особенностей логических устройств и преимущественного возникновения на их выходах ошибок с малой кратностью, при организации ССВК могут быть эффективно применены коды, ориентированные на обнаружение таких ошибок. Например, к подобным кодам относятся коды Хэмминга, в информационных разрядах которых обнаруживаются любые ошибки с кратностью ё<2 [21]. Свойства кода Хэмминга, проявляющиеся при функционировании ССВК, подробно изложены в ряде работ авторов, например, в [22—26]. Исследования показали, что может быть построен разделимый код, обеспечивающий обнаружение любых ошибок при ё<2 в информационных разрядах с более простыми функциями вычисления значений контрольных разрядов, чем у кодов Хэмминга [27, 28]. Настоящая статья посвящена исследованию особенностей обнаружения ошибок в информационных векторах. Выявленные особенности позволяют эффективно применять эти коды при организации ССВК.

Принципы построения кодов с обнаружением любых двукратных ошибок в информационных разрядах. Код с эффективным обнаружением ошибок с малой кратностью строится следующим образом [27]. Путем приписывания весовых коэффициентов разрядам информационных векторов устанавливается неравнозначность между ними. При этом используются весовые коэффициенты из натурального ряда чисел: каждому разряду информационного вектора, начиная с младшего, последовательно, по мере возрастания чисел, присваиваются соответствующие весовые коэффициенты: младшему (1) — ^1=1, следующему (/2) — ^2=2 и т.д. В контрольный вектор кода записывается двоичное число [V]2, равное

сумме весовых коэффициентов единичных разрядов информационного вектора без использования операции переноса:

т

[Ж ]2 =®/г к- ]2, (1)

г=1

где / — г-й разряд информационного вектора (/ = 1, т ); [к/^ ]2 — значение весового коэффи-

[W!]2 0 0 1

циента /-го разряда информационного вектора в двоичном виде. © © Код, получаемый по представленным правилам, обозна-

чу. [w3]2 дл 0 1 1 чим SWC(m,k) (sum code without carries), где m и k — длина

[w4]2 i о 0 информационных и контрольных векторов кода. Например,

для информационного вектора <1101> при формировании разрядов контрольного вектора требуется сложить весовые коэффициенты разрядов f1, f3 и f4: складываются числа

[W]2 1 1 0

Рис. 1

[W1]2=001, [w3]2=011 и [w4]2=100 (рис. 1).

Избыточность SWС(m,k)-кода характеризуется величиной & = р1о§2 (т +1)) (по этому

показателю данный код соответствует классическому коду Бергера [29]). Это объясняется тем, что при формировании значений разрядов контрольных векторов используется операция сложения двоичных чисел без переноса переполняемого разряда, а максимально возможная сумма значений весовых коэффициентов имеет разрядность максимального весового коэффициента, представленного в двоичном виде: ^тах=т.

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

без переносов SWС(m,k)-код имеет равномерное распределение всех 2т информационных

векторов между всеми 2& контрольными векторами. Эта особенность определяет минимальное общее число необнаруживаемых кодом ошибок при соответствующих значениях т и & [30]:

Кт& = 2т (2т-& -1). (2)

Например, с использованием формулы (2) нетрудно подсчитать общее число необнаруживаемых SWC(4,3)-кодом ошибок: = 24(24-3 -1) = 16.

Другой, не менее важной, особенностью SWС(m,k)-кода является возможность обнаружения любых ошибок с ^<2 в информационных векторах (по этому показателю рассматриваемый код соответствует классическому коду Хэмминга, или Н(т,&)-коду [21]). Именно это свойство SWС(m,k)-кода может быть эффективно использовано при организации ССВК логических устройств.

Таблица 1

Контрольные функции кодов SWС(mk) и Н(т,к)_

т SWС(m,k)-код Н(т,&)-код

4 ?! = / © Л; §2 = /2 © Л; 8з = Л 81 = /1 © /2 © /4; 8 2 = /1 © /з © /4; 8з = /2 © /з © /4

5 ^ = / ©/з ©/5; 82 = /2 © /з; 83 = /4 © /5 81 = /1 © /, © /4 © /5; 8 2 = /1 © /з © /4; 8з = /2 © /з © /4; 8 4 = Л

6 81 = / ©/з ©/5; 82 = /2 ©/з ©/6; 83 = /4 © /5 © /б 81 = /1 © /2 © /4 © /5; 8 2 = /1 © /з © /4 © и 8з = /2 ©/з ©/4; 8 4 = /5 © /6

7 81 = / ©/з ©/5 ©/7; 8 2 = /2 © /з © /6 © /7; 8з = /4 © /5 © /6 © /7 81 = /1 © /2 © /4 © /5 © /7; 82 = /1 © /з © /4 © /6 © /7; 83 = /2 ©/з ©/4; 8 4 = /5 © /6 © /7

8 81 = / © /з © /5 © /7; 8 2 = /2 © /з © /6 © /7; 8з = /4 ©/5 ©/6 ©/7; 8 4 = /8 81 = /1 © /2 © /4 © /5 © /7; 82 = /2 ©/з ©/4 ©/6 ©/7; 83 = /2 ©/з ©/4 ©/8; 8 4 = /5 © /6 © /7 © /8

9 81 = /1 ©/з ©/5 ©/7 ©/9; 82 = /2 ©/з ©/6 ©/7; 83 = /4 © /5 © /6 © /7; 8 4 = /8 © /9 81 = /1 © /2 © /4 © /5 © /7; 82 = /2 ©/з ©/4 ©/6 ©/7; 83 = /2 ©/з ©/4 ©/8 ©/9; 84 = /5 © /6 © /7 © /8 © /9

10 81 = /1 ©/з ©/5 ©/7 ©/9 ©/1о; 82 = /2 ©/з ©/6 ©/7; 83 = /4 © /5 © /6 © /7; 8 4 = /8 © /9 81 = /1 © /2 © /4 © /5 © /7 © /9; 82 = /2 © /з © /4 © /6 © /7 © /1о; 83 = /2 © /з © /4 © /8 © /9 © /1о; 84 = /5 © /6 © /7 © / © /9 © /1о

Следует отметить, что функции, описывающие разряды контрольных векторов £ЖС(т,к)-кодов, являются линейными, так как при их формировании используются только операции суммирования по модулю два разрядов информационных векторов. В табл. 1 приводятся функции, описывающие разряды контрольных векторов кодов 8ЖС(т,к) и И(т,к) при т=4—10.

Из табл. 1 следует, что выражения, описывающие контрольные функции 5ЖС(т,к)-кодов, являются более простыми, чем выражения для контрольных функций Н(т,к)-кодов. Более того, при некоторых значениях т разрядов в контрольных векторах 5ЖС(т,к)-кодов на единицу меньше, чем контрольных разрядов у Н(т,к)-кодов. Таким образом, сложность кодирующего оборудования, а следовательно и схемы контроля в ССВК, ниже при использовании 5ЖС(т,к)-кодов.

Особенности обнаружения ошибок SWC(m,k)-кодaми. С использованием специально разработанного программного модуля анализа характеристик равномерных блочных кодов в ССВК авторами были изучены особенности обнаружения ошибок 5ЖС(т,к)-кодами по крат-ностям ё е {1; т] и по видам (монотонные, симметричные и асимметричные ошибки [31]).

При этом их показатели сравнивались с показателями Н(т,к)-кодов [26].

В табл. 2 представлены результаты расчета числа необнаруживаемых ошибок 5ЖС(т,к)-кодами в информационных векторах, а в табл. 3 — показатели ут,к — доли необнаруживаемых ошибок в информационных векторах от их общего числа (%); доли необнаруживаемых монотонных ит,к, симметричных ст,к и асимметричных ат,к ошибок в информационных векторах от их общего числа (%).

Проанализировав представленные данные, можно сделать вывод, что наибольшее количество необнаруживаемых ошибок в информационных векторах 5ЖС(т,к)-кодов принадлежит классу асимметричных. 5ЖС(т,к)-коды обнаруживают 100 % симметричных ошибок при т<4 (при больших значениях т в 5ЖС(т,к)-кодах не обнаруживается некоторое количество симметричных ошибок).

Тенденции к изменению соотношений между ошибками различных видов при увеличении длины информационного вектора в 5ЖС(т,к)-кодах совпадают с тенденциями для аналогичных соотношений у Н(т,к)-кодов [26]. Однако различия проявляются, как правило, при тех значениях т, при которых у кодов Хэмминга на один контрольный разряд больше, чем у 5ЖС(т,к)-кодов. При т=5—7 и 12—15 5ЖС(т,к)-коды не обнаруживают больше ошибок, чем Н(т,к)-коды (при т>20 также встречаются подобные случаи, определяемые особенностями построения кодов). На рис. 2 сравниваются показатели ут,к, ит,к, ст,к и ат,к для кодов 5ЖС(т,к) и Н(т,к) — кривые 1 и 2 соответственно.

В диапазонах т=5—7 и 12—15 для 5ЖС(т,к)-кодов наблюдается резкое, по сравнению с Н(т,к)-кодами, увеличение значений ит,к, ст,к и ат,к. Доля ит,к достигает наибольших значений в конце каждого диапазона. С дальнейшим увеличением т значения ит,к начинают уменьшаться, однако являются несколько большими, чем для кодов Хэмминга. Значения ит,к становятся практически равными для обоих кодов при т=10, 11, 19, 20. Аналогичная зависимость прослеживается и для ст,к: значения ст,к практически равны для обоих кодов при т=9—11, 16—20 и т.д. Значения ат,к для 5ЖС(т,к)-кодов также больше, чем для Н(т,к)-кодов в диапазонах длин информационных векторов, в которых у последних больше контрольных разрядов. Однако по сравнению с ит,к и ст,к значения ат,к постепенно уменьшаются с увеличением т в каждом из диапазонов. За пределами указанных диапазонов значения ат,к для обоих кодов являются примерно равными.

Следует отметить, что 5ЖС(т,к)-коды, так же как и Н(т,к)-коды, обладают следующей особенностью. Доля необнаруживаемых ошибок различных видов для данной кратности от общего количества необнаруживаемых ошибок с данной кратностью в 8ЖС(т,к)-кодах не зависит от длины информационного вектора и является постоянной величиной [26].

го <

со О го

"О го

о

О О ч

о

Количество необнаруживаемых £^С(яг,А)-кодами ошибок

Таблица 2

т к Число необнаруживаемых ошибок при с1

3 4 5 6 7 8 9 10

4 3 16 4/0/12 0 0/0/0

5 3 64 16/0/48 32 4/12/16 0 0/0/0

6 3 256 64 / 0 /192 192 24 / 72 / 96 0 0/0/0 0 0/0/0

7 3 896 224 / 0/672 896 112/336/448 0 0/0/0 0 0/0/0 128 2/0/126

8 4 1792 448 / 0/ 1344 1792 224 / 672 / 896 0 0/0/0 0 0/0/0 256 4/0/252 0 0/0/0

9 4 4096 1024/0/3072 5120 640/ 1920/2560 2048 128/0/ 1920 2048 64 / 640 / 1344 2048 32/0/2016 512 4/ 140/368 0 0/0/0

10 4 10240 2560/0/7680 16384 2048/6144/8192 12288 768/0/ 11520 12288 384 / 3840 / 8064 10240 160/0/ 10080 3072 24 / 840 / 2208 0 0/0/0 0 0/0/0

11 4 26624 6656/0/ 19968 53248 6656/ 19968/26624 49152 3072 / 0 / 46080 49152 1536/ 15360/32256 53248 832/0/52416 26624 208/7280/ 19136 0 0/0/0 0 0/0/0

12 4 69632 17408 / 0/52224 155648 19456/58368/77824 180224 11264/0/ 168960 212992 6656/66560/ 139776 221184 3456/0/217728 135168 1056/36960/97152 49152 192 / 0 / 48960 16384 32 / 4032 / 12320

Примечание.В каждой клетке указано: асимметричных необнаруживаемых ошибок

сверху — общее число необнаруживаемых ошибок с данной кратностью, снизу — число монотонных/симметричных/

Ьв

Со 05

то

5

то а; а;

о; »

«

О О/

3

о

05

а ж к то

©V

ТО Со

О

а

а -к к к а

то а: о то а

со

К)

-VI

Таблица 3

Характеристики необнаруживаемых SWC(m,k)-кодaми ошибок различных видов

т & 1т,Ь % % ®т,Ь % ат,ь %

з 2 14,286 з,571 0 10,714

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4 з 6,667 1,667 0 5

5 з 9,677 2,016 1,21 6,452

6 з 11,111 2,18з 1,786 7,14з

7 з 11,811 2,079 2,067 7,665

8 4 5,882 1,0з6 1,029 з,817

9 4 6,067 0,72з 1,0з2 4,з 11

10 4 6,158 0,567 1,0зз 4,558

11 4 6,204 0,452 1,016 4,7з6

12 4 6,227 0,з55 0,989 4,88з

1з 4 6,2з9 0,275 0,959 5,004

14 4 6,244 0,212 0,929 5,10з

15 4 6,247 0,161 0,9 5,185

16 5 з, 124 0,081 0,45 2,59з

17 5 з, 124 0,051 0,425 2,648

18 5 з, 125 0,0з6 0,41з 2,676

19 5 з, 125 0,026 0,402 2,697

20 5 з, 125 0,02 0,з92 2,714

4 6 8 10 12 14 16 18 т

в)

%

10 8 6 4 2 0

10 12 14 16 18 т

б)

um,k, % 8

7 6 5 4

3 2 1

0

г)

ат,к % 20

16

12

8

4

0

4 6 8 10 12 14 16 18 т

4 6 8 10 12 14 16 18 т

Рис. 2

Так как оба рассматриваемых кода относятся к кодам с обнаружением любых двукратных искажений, целесообразно сравнить их по показателям обнаружения ошибок с малой кратностью. На рис. з представлены зависимости долей необнаруживаемых ошибок при й=з и 4 от общего числа ошибок с данными кратностями (величин рт,з и рт,4).

Проанализировав представленные графики, можно сделать вывод о приоритете Н(т,&)-кодов (кривая 2) перед SWС(m,k)-кодами (1) в области обнаружения ошибок с малой кратно-

стью вследствие более высокой сложности функций, описывающих контрольные разряды #(т,£)-кода, чем 5ЖС(т,£)-кода.

а)

Pm,3, %

20

15

10

б)

%

18 15 12

9 6 3 0

18 m

Рис. 3

Результаты экспериментальных исследований применения SWC(m,&)-кодов при организации ССВК. В ходе исследований особенностей практического использования 5ЖС(т,к)-кодов при организации ССВК был проведен ряд экспериментов с системами контрольных комбинационных схем LGSynth'89 и MCNC Benchmarks [32]. Для каждой выбранной схемы строились ССВК методом дублирования, а также на основе кодов Н(т,к) и SWU(m,k), после чего анализировалась сложность технической реализации систем функционального контроля и показателей обнаружения ошибок на выходах контрольных логических схем. В основе экспериментов лежала методика, описанная в работе [26].

Для анализа показателей обнаружения ошибок на выходах контрольных логических схем были выбраны комбинационные схемы, представленные в списочной форме (в формате *.netblif), из пакета LGSynth'89 [32]. С использованием специально разработанного программного модуля осуществлялось моделирование работы ССВК при внесении последовательно всех одиночных неисправностей выходов внутренних логических элементов контрольной комбинационной схемы. Для каждой неисправности осуществлялась подача всех входных наборов, а также фиксировалась реакция выходного вектора <fm f-i • • • f2 f1>, после этого определялось множество необнаруживаемых на выходах объекта диагностирования ошибок (классифицированных по видам и кратностям) при контроле на основе кодов Н(т,к) и 5ЖС(т,к). Результаты экспериментов занесены в табл. 4.

Для 8 из 23 контрольных комбинационных схем использование при организации ССВК £ЖС(т,к)-кода позволило синтезировать устройство с обнаружением любых одиночных неисправностей элементов внутренней структуры. Для всех остальных схем доля необнаружи-ваемых ошибок от общего их количества на выходах схемы (величина 5т,к) составила менее 2 % (за исключением схемы cm162a, для которой наблюдается небольшое превышение данного значения).

Сравнивая показатели 5т,к для ССВК представленных комбинационных схем и кодов, следует отметить превосходство первого кода Н(т,к) над 5ЖС(т,к) (табл. 5 и рис. 4). Для всех комбинационных схем показатели обнаружения ошибок оказываются лучшими у классических кодов Хэмминга.

Анализ сложности технической реализации состоял в определении условного показателя площади системы диагностирования для каждой выбранной контрольной комбинационной схемы из пакета MCNC Benchmarks в условных единицах стандартной библиотеки функциональных элементов stdcell2_2.genlib. Для этого с использованием разработанного программного модуля были получены файлы-описания в формате *.pla каждого блока ССВК (включая сам объект диагностирования), а также с применением интерпретатора SIS [33] получены численные данные по площадям ССВК на основе дублирования и использования кодов Н(т,к) и 8ШС(тк) (табл. 6).

5

0

Таблица 4

Показатели обнаружения ошибок на выходах логических схем при их контроле на основе SWC(m,k)-кодa_

№ п/п Схема Число входов Число выходов Число необ-наруживае-мых ошибок Доля необна-руживаемых ошибок от общего их числа, % Доля необнаруживаемых ошибок от общего числа ошибок данного вида, % Доля необнаружи-ваемых ошибок от общего числа не-обнаруживаемых ошибок, %

монотонные симметричные асим-метрич-ные й=з ¿>4

1 ст82а 5 з 4 0,617 0 0 100 100 0

2 ст85а 11 з 0 0 0 0 — — —

з Ь1 з 4 0 0 0 0 — — —

4 стЬ 16 4 0 0 0 0 — — —

5 74т1 7 4 0 0 0 0 0 — —

6 ст162а 14 5 6429 2,026 1,925 0 28,571 6,968 9з,0з2

7 ст16за 16 5 21888 1,792 1,64 0 29,з86 0,585 99,415

8 а1и2 10 6 219 0,з49 0,16 0,з6з 4,029 5з,425 46,575

9 х2 10 7 1з8 0,7 0,421 0 46,667 47,826 52,174

10 а1и4 14 8 5589 0,282 0,101 0,09з 2,662 80,569 19,4з 1

11 ст1з8а 6 8 0 0 0 — — — —

12 f51m 8 8 20 0,151 0 1з,008 4,651 20 80

1з рс1е 19 9 107671 0,616 0,47 0 19,557 55,568 44,4з2

14 ст42а 4 10 0 0 0 0 — — —

15 си 14 11 15з6 1,11з 0 0 54,545 100 0

16 рт1 16 1з з696 0,488 0 6,1зз 9,968 54,545 45,455

17 19 15 67660 0,408 0,04 2,269 10,702 5з,662 46,зз8

18 decod 5 16 0 0 0 — — — —

19 1соп 17 16 0 0 0 — — — —

20 рс1ег8 27 17 55025280 1,27 1,17з 0 14,249 27,081 72,919

21 1dd 9 19 196 0,649 0,649 — — 0 100

22 сс 21 20 211800 0,602 0,564 0,з09 з,041 24,869 75,1з 1

2з Ю2 24 21 8з6944 0,111 0 4,101 2,944 17,748 82,252

8т &, %

Н(т,&) SWС(m,k) Рис. 4

В качестве показателей структурной избыточности ССВК на основе SWС(m,k)-кодов были использованы коэффициенты ц и %: ц — доля площади ССВК на основе SWС(m,k)-кода от площади системы дублирования, х — доля площади ССВК на основе SWС(m,k)-кода от площади системы контроля на основе кода Хэмминга. Представленные на рис. 5 зависимости наглядно демонстрируют, что использование SWС(m,k)-кода при организации ССВК подавляющего большинства логических схем более эффективно по показателям структурной избы-

точности по сравнению с использованием как дублирования, так и классических кодов Хэм-минга. Средние значения показателей составляют р=78,504 и х=92,799 %. Причем для некоторых схем достигнуто уменьшение площади ССВК при использовании 5ЖС(т,к)-кода более чем на треть по сравнению с дублированием. Для большинства схем использование £ЖС(т,к)-кода, по сравнению с ССВК кодами Хэмминга, дает уменьшение площади на 10—15 %.

Таблица 5

Значения Ътк для различных конт рольных схем

Схема H(m,k) SWC(m,k) Схема H(m,k) SWC(m,k)

cm82a 0,617 0,617 pcle 0,543 0,616

cm85a 0 0 cm42a 0 0

b1 0 0 cu 0 1,113

cmb 0 0 pm1 0,236 0,488

z4ml 0 0 sct 0,146 0,408

cm162a 0,071 2,026 decod 0 0

cm163a 0 1,792 tcon 0 0

alu2 0,059 0,349 pcler8 0,586 1,27

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

x2 0,447 0,7 ldd 0,318 0,649

alu4 0,205 0,282 cc 0,283 0,602

cm138a 0 0 ttt2 0,013 0,111

f51m 0,015 0,151

Ц, % <> погани!

105 100 95 90 85 80 75 70 65 60

: «qu

: г О

О Stf6

О

■AHM

А

<> , > : newbvte

O.O.

ШЭ.Ч51ddiodcr bfl br2

<> P82

ml

6)

1

^ % ^ uewcMid

150 140 130 120 110 100 90 80 70

10

15

20

25

—Ain' /

..Л.-'01114 \ Ь2 ^ b m

Ы1 <>'

«"»i?«, öbi0 PO ш r'<>"%■<>■■£ " X л" - <> О , v, imsV

; ■. ~ о ■, г J «i-t

, 1 .I- '. ■ ; Ii ,

О V O-o-O-^d« ; \ ! tatii\J IIIJXlc'-4 V. 1Л1м" ^ mwby«

*o'

sqnS pS2

10 15 Рис. 5

20

25

m

5

5

Таблица 6

Результаты анализа сложности технической реализации ССВК_

№ п/п Схема Число входов Число выходов Площадь устройства, у.е. Д, % X, %

т система дублирования система на основе Н(т,к)-кода система контроля на основе SWC(m,k)-кода

1 петс^оМ 11 2 1136 2496 1704 2688 107,692 157,746

2 sqn 7 3 2008 4448 4152 3816 85,791 91,908

3 пе^1р1а2 10 4 840 2320 2152 1848 79,655 85,874

4 ^ 8 5 6968 14784 14400 11496 77,76 79,833

5 гоо1 8 5 3496 7840 6728 5880 75 87,396

6 тах512 9 6 9632 20320 17384 14992 73,78 86,24

7 тах1024 10 6 17816 36688 33168 28384 77,366 85,576

8 ас1 4 7 976 3216 2696 2328 72,388 86,35

9 ас2 8 7 2424 6112 7192 6128 100,262 85,206

10 dekoder 4 7 736 2736 2528 2040 74,561 80,696

11 тсат 4 7 712 2688 2528 2024 75,298 80,063

12 Ьг1 12 8 3608 8688 6576 6440 74,125 97,932

13 Ьг2 12 8 2952 7376 5712 5448 73,861 95,378

14 пе^'Ьу!е 5 8 592 2656 2504 2072 78,012 82,748

15 г3 12 8 1768 5008 4840 4408 88,019 91,074

16 тс 7 9 2376 6432 5456 5088 79,104 93,255

17 ех1010 10 10 43296 88480 83000 80856 91,383 97,417

18 пе^'срШ 7 10 1096 4080 3776 3496 85,686 92,585

19 Ь10 15 11 9168 20432 17944 17192 84,143 95,809

20 dk17 10 11 1768 5632 6304 5632 100 89,34

21 Яшу 15 11 10688 23472 20504 19272 82,106 93,991

22 ш0 15 11 10704 23504 20520 19288 82,063 93,996

23 т1 6 12 3064 8432 6144 5568 66,034 90,625

24 sqr6 6 12 2648 7600 7368 6584 86,632 89,359

25 р82 5 14 2368 7456 5904 5312 71,245 89,973

26 т2 8 16 10096 23328 14880 14672 62,894 98,602

27 т3 8 16 13464 30064 19216 18544 61,682 96,503

28 т4 8 16 18704 40544 26616 25464 62,806 95,672

29 tms 8 16 6784 16704 11232 10936 65,469 97,365

30 Ь2 16 17 40952 85248 53848 51400 60,295 95,454

Среднее значение 78,504 92,799

Заключение. Коды с суммированием весовых коэффициентов единичных информационных разрядов без операции переноса, обнаруживающие любые однократные и двукратные ошибки в информационных векторах, могут эффективно применяться при организации ССВК. По своим характеристикам описываемые SWС(m,k)-коды схожи с классическими кодами Хэмминга, но обладают меньшей сложностью контрольных функций, а при некоторых значениях т — даже меньшим числом контрольных разрядов. По сравнению с использованием при организации ССВК классических кодов Хэмминга за счет более простых контрольных функций 5ЖС(т,к)-кода достигается уменьшение структурной избыточности, однако при этом коды Хэмминга более предпочтительны по обнаружению ошибок.

Учет выявленных в настоящей статье особенностей 5ЖС(т,к)-кодов может оказаться полезным при организации ССВК логических устройств автоматики и вычислительной техники.

СПИСОК ЛИТЕРАТУРЫ

1. McCluskey E. J. Logic Design Principles: With Emphasis on Testable Semicustom Circuits. New Jersey: Prentice Hall PTR, 1986. 549 p.

2. Rao T. R., Fujiwara E. Error Control Coding for Computer Systems. NY: Prentice Hall, 1989. 584 p.

3. Pradhan D. K. Fault-Tolerant Computer System Design. NY: Prentice Hall, 1996. 560 p.

4. Abramovici M., Breuer M. A., Friedman A. D. Digital System Testing and Testable Design. Computer Science Press, 1998. 652 p.

5. Fujiwara E. Code Design for Dependable Systems: Theory and Practical Applications. New Jersey: John Wiley & Sons, 2006. 720 p.

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

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

8. Сапожников В. В., Сапожников Вл. В. Самопроверяемые дискретные устройства. СПб: Энергоатомиздат, 1992. 224 с.

9. Piestrak S. J. Design of Self-Testing Checkers for Unidirectional Error Detecting Codes. Wroclaw: Oficyna Wydawnicza Politechniki Wroclavskiej, 1995. 111 p.

10. Гавзов Д. В., Сапожников В. В., Сапожников Вл. В. Методы обеспечения безопасности дискретных систем // Автоматика и телемеханика. 1994. № 8. С. 3—50.

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

12. Kharchenko V., Kondratenko Yu., Kacprzyk J. Green IT Engineering: Concepts, Models, Complex Systems Architectures. Book series "Studies in Systems, Decision and Control". Springer, 2017. Vol. 74. 305 p. DOI: 10.1007/978-3-319-44162-7.

13. Nicolaidis M., Zorian Y. On-Line Testing for VLSI — А Compendium of Approaches // J. of Electronic Testing: Theory and Application. 1998. Vol. 12, Is. 1—2. P. 7—20. DOI: 10.1023/A:1008244815697.

14. Zeng C., McCluskey E. J. Finite State Machine Synthesis with Concurrent Error Detection // Intern. Test Conf. Atlantic City, NJ, 1999. P. 672—679. DOI: 10.1109/TEST.1999.805795.

15. Mitra S., McCluskey E. J. Which Concurrent Error Detection Scheme to Choose? // Proc. of Intern. Test Conf. Atlantic City, NJ, 03—05 October 2000. P. 985—994, DOI: 10.1109/TEST.2000.894311.

16. Das D., Touba N. A. Weight-Based Codes and Their Application to Concurrent Error Detection of Multilevel Circuits // Proc. of 17th IEEE Test Symposium. California, USA, 1999. P. 370—376.

17. Ефанов Д. В., Сапожников В. В., Сапожников Вл. В. Условия обнаружения неисправности логического элемента в комбинационном устройстве при функциональном контроле на основе кода Бергера // Автоматика и телемеханика. 2017. № 5. С. 152—165.

18. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Взвешенные коды с суммированием для организации контроля логических устройств // Электронное моделирование. 2014. Т. 36, № 1. С. 59—80.

19. Huches J. L. A., McCluskey E. J., Lu D. J. Design of Totally Self-Checking Comparators with an Arbitrary Number of Inputs // IEEE Transact. on Computers. 1984. Vol. C-33, N 6. P. 546—550.

20. Morosow A., Sapozhnikov V.V., Sapozhnikov Vl. V., Goessel M. Self-Checking Combinational Circuits with Unidirectionally Independent Outputs // VLSI Design. 1998. Vol. 5, Is. 4. P. 333—345. DOI: 10.1155/1998/20389.

21. Hamming R. W. Error Detecting and Correcting Codes // Bell System Technical J. 1950. Vol. 29, N 2. P. 147—160.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

22. Ефанов Д. В. Предельные свойства кода Хэмминга в схемах функционального диагностирования // Информатика и системы управления. 2011. № 3. С. 70—79.

23. Ефанов Д. В., Блюдов А. А. Коды Хэмминга и их обнаруживающие способности в схемах функционального контроля // Информатика и системы управления. 2012. № 2. С. 100—111.

24. Sapozhnikov V., Sapozhnikov Vl., Efanov D., Blyudov A. Analysis of Error-Detection Possibilities of CED Circuits Based on Hamming and Berger Codes // Proc. of 11th IEEE East-West Design & Test Symposium (EWDTS'2013). Rostov-on-Don, Russia, 27—30 September 2013. P. 200—207. DOI: 10.1109/EWDTS.2013.6673097.

25. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Исследование свойств кодов Хэмминга и их модификаций в системах функционального контроля // Автоматика на транспорте. 2015. Т. 1, № 3. С. 311—337.

26. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Особенности применения кодов Хэмминга при организации самопроверяемых схем встроенного контроля // Изв. вузов. Приборостроение. 2018. Т. 61, № 1. С. 47—59.

27. Sapozhnikov V., Sapozhnikov Vl., Efanov D., Dmitriev V. Weighted Sum Code Without Carries — is an Optimum Code with Detection of Any Double Errors in Data Vectors // Proc. of 14th IEEE East-West Design & Test Symposium (EWDTS'2016). Yerevan, Armenia, 14—17 October 2016. P. 134—141. DOI: 10.1109/EWDTS.2016.7807686.

28. Сапожников Вал. В., Сапожников Вл. В., Ефанов Д. В., Дмитриев В. В. Код с суммированием взвешенных информационных разрядов без переносов в системах функционального контроля // Автоматика на транспорте. 2017. Т. 3, № 3. С. 414—433.

29. Berger J. M. А Note on Error Detecting Codes for Asymmetric Channels // Information and Control. 1961. Vol. 4, Is. 1. P. 68—73. DOI:10.1016/S0019-9958(61)80037-5.

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

31. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Классификация ошибок в информационных векторах систематических кодов // Изв. вузов. Приборостроение. 2015. Т. 58, № 5. С. 333—343. DOI: 10.17586/00213454-2015-58-5-333-343.

32. Collection of Digital Design Benchmarks [Электронный ресурс]: <http://ddd.fit.cvut.cz/prj/Benchmarks/>.

33. SIS: A System for Sequential Circuit Synthesis / E. M. Sentovich, K. J. Singh, L. Lavagno, C. Moon, R. Murgai, A. Saldanha, H. Savoj, P. R. Stephan, R. K. Brayton, A. Sangiovanni-Vincentelli. Electronics Research Laboratory, Department of Electrical Engineering and Computer Science, University of California, Berkeley, 4 May 1992. 45 p.

Сведения об авторах д-р техн. наук, профессор; Петербургский государственный университет путей сообщения Императора Александра I, кафедра автоматики и телемеханики на железных дорогах; E-mail: [email protected]

д-р техн. наук, профессор; Петербургский государственный университет путей сообщения Императора Александра I, кафедра автоматики и телемеханики на железных дорогах; E-mail: [email protected]

д-р техн. наук, доцент; Петербургский государственный университет путей сообщения Императора Александра I, кафедра автоматики и телемеханики на железных дорогах; E-mail: [email protected]

Поступила в редакцию 30.09.17 г.

Ссылка для цитирования: Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Взвешенный код с суммированием без операций переноса для решения задач технической диагностики дискретных систем // Изв. вузов. Приборостроение. 2018. Т. 61, № 4. С. 323—335.

Валерий Владимирович Сапожников

Владимир Владимирович Сапожников —

Дмитрий Викторович Ефанов

WEIGHTED CODE WITH SUMMATION WITHOUT CARRIES FOR SOLVING THE PROBLEMS OF TECHNICAL DIAGNOSTICS OF DISCRETE SYSTEMS

V. V. Sapozhnikov, Vl. V. Sapozhnikov, D. V. Efanov

Emperor Alexander I St. Petersburg State Transport University, 190031, St. Petersburg, Russia E-mail: [email protected]

Characteristics of weight-based code with summation without the operation of carries to the detection of errors in self-checking circuits of built-in test of logical devices of automation and computer technique are analyzed. It is shown that in the case when the described code uses a sequence of weight coefficients forming a natural series of numbers, it ensures detecting of any single and double errors in data vectors. For this indicator, the proposed code is comparable to the classic Hamming codes but has more simple functions describing check bits. For some values of data bits number, the new code has the number of check digits one less than the classic one. This makes it possible to organize self-checking circuits of built-in control for logical devices with reduced structural redundancy in comparison with both duplication and using Hamming code for these purposes. The characteristics of error detection by types (unidirectional, symmetrical or asymmetrical) and multiplicities are better for a Hamming code identifying more errors at the logical device output than with the use of the proposed weighted code. Experiments carried out with the systems of benchmarks LGSynth'89 and MCNC Benchmarks confirm the theoretically obtained patterns.

Keywords: technical diagnostics, self-checking built-in check circuit, fault detection, data vector, error, Hamming code, weighted code with summation without carries, benchmark, structural redundancy

Data on authors

Valery V. Sapozhnikov — Dr. Sci., Professor; Emperor Alexander I St. Petersburg State

Transport University; Department of Automation and Remote Control on Railways; E-mail: [email protected] Vladimir V. Sapozhnikov — Dr. Sci., Professor; Emperor Alexander I St. Petersburg State

Transport University; Department of Automation and Remote Control on Railways; E-mail: [email protected] Dmitry V. Efanov — Dr. Sci., Associate Professor; Emperor Alexander I St. Petersburg

State Transport University; Department of Automation and Remote Control on Railways; E-mail: [email protected]

For citation: Sapozhnikov V. V., Sapozhnikov Vl. V., Efanov D. V. Weighted code with summation without carries for solving the problems of technical diagnostics of discrete systems. Journal of Instrument Engineering. 2018. Vol. 61, N 4. P. 323—335 (in Russian).

DOI: 10.17586/0021-3454-2018-61-4-323-335

i Надоели баннеры? Вы всегда можете отключить рекламу.