Проектирование и тестирование логических устройств
95
УДК 681.518.5:004.052.32
Вал. В. Сапожников, д-р техн. наук,
Вл. В. Сапожников, д-р техн. наук,
Д. В. Ефанов, канд. техн. наук,
В. В. Дмитриев,
М. Р. Черепанова
Кафедра «Автоматика и телемеханика на железных дорогах», Петербургский государственный университет путей сообщения Императора Александра I
СПОСОБ ПОСТРОЕНИЯ КОДА С СУММИРОВАНИЕМ С УЛУЧШЕННЫМИ ПОКАЗАТЕЛЯМИ ОБНАРУЖЕНИЯ ОШИБОК В ИНФОРМАЦИОННЫХ ВЕКТОРАХ
Описывается способ построения кода с суммированием с минимальным общим количеством необнаруживаемых ошибок, основанный на идее модификации кода с суммированием взвешенных переходов между разрядами, занимающими соседние позиции в информационном векторе. Предлагаемый код с суммированием можно отнести к классу модульных кодов с суммированием взвешенных переходов. Он имеет такое же количество контрольных разрядов, как и классический код Бергера, однако в нем улучшены показатели обнаружения ошибок в информационных векторах, прежде всего, в области малой кратности ошибок. Установлены свойства нового кода с суммированием; важно, что при длинах информационных векторов m Ф 2 (t = 1, 2, ...) может быть построен оптимальный код. При m = 2 (t = 1, 2, ...), однако, коды близки к оптимальным. В статье объясняется такая особенность модульного кода со взвешенными переходами. Кроме того, в эксперименте с контрольными комбинационными схемами LGSynth'89 показано, что модульный код со взвешенными переходами позволяет организовывать системы функционального контроля с улучшенными показателями обнаружения ошибок в сравнении со структурами, полученными по кодам Бергера. В некоторых случаях достигается решение задачи 100 %-го обнаружения ошибок на выходах контролируемых комбинационных схем. Все это делает представленный код перспективным для решения задач технической диагностики.
техническая диагностика; система функционального контроля; код с суммированием; код Бергера; взвешенный переход; код с суммированием взвешенных переходов; необнаруживаемая ошибка в информационном векторе; свойства обнаружения ошибок; оптимальный код
Автоматика на транспорте
№ 1, том 2, март 2016
96
Design and test of logical devices
Введение
Принципы помехоустойчивого кодирования часто используются при построении надежных систем управления ответственными технологическими процессами, к которым относится и перевозочный процесс на железнодорожном транспорте. Например, для работы системы сигнализации на железнодорожном транспорте используется кодирование рельсовых цепей - передача импульсов и пауз неравномерной длины, совокупность которых соответствует трем смысловым посылкам: кодам «З», «Ж» и «КЖ» [1-3]. Для расширения функциональных возможностей систем управления движением поездов применяют и более сложные устройства, передающие более широкий спектр информации. В таких устройствах для защиты информации применяются коды Хэмминга и Бауэра [4, 5]. Распространенным является и сменно-качественное кодирование, где используются комбинации недвоичного кода: работа частотной диспетчерской централизации, работа тональных рельсовых цепей, работа автоматов контроля сигнальных точек в системах диспетчерского контроля и т. д. [6-8]. Часто кодирование применяется при построении самих логических устройств управления и контроля - для обеспечения свойства их самопроверяемости [9-11].
Использование помехоустойчивого кодирования позволяет на этапе проектирования логического устройства обеспечить защиту от возникающих в процессе эксплуатации дефектов путем внесения избыточных элементов для выполнения необходимых функций [9]. Часто для этих целей применяют коды с повторением (например, для организации структур дублирования), а также коды с суммированием: коды Бергера, Боуза - Лина, модифицированные коды Бергера и другие (для организации самопроверяемых структур с уменьшенной структурной избыточностью по сравнению с дублированием) [12-24].
При построении надежных логических устройств управления распространенной является организация функционального контроля внутренних блоков. Например, применяется функциональный контроль арифметико-логических устройств, входящих в любые современные системы автоматического управления [25-29]. При таком виде диагностирования техническое состояние контролируемого устройства определяется без отключения его от объектов управления [30].
Рассмотрим, как осуществляется организация систем функционального контроля с использованием кодов с суммированием.
1 Коды с суммированием в системах функционального контроля
Структура системы функционального контроля изображена на рис. 1. В ней исходное арифметико-логическое устройство F(x), реализующее систему рабочих булевых функцийf1(x),f2(x), ...,fm(x), снабжается специальным контрольным оборудованием. В состав контрольного оборудования входит блок контрольной
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
97
Входы
информационные разряды
Рабочие
выходы
Сигнал
контроля
Рис. 1. Структура системы функционального контроля
логики G(x), вычисляющий значения контрольных функций g^x), g2(x), ..., gk(x), и самопроверяемый тестер, в процессе эксплуатации системы диагностирования фиксирующий соответствие между значениями рабочих и контрольных функций. Данное соответствие устанавливается на этапе проектирования системы функционального контроля и обычно определяется по правилам построения заранее выбранного кода с суммированием. Так, выходы блока F(x) отождествляются с информационным вектором длины т, а выходы блока G(x) -с контрольным вектором длины k. От правил построения кода в существенной мере зависят такие важные параметры системы функционального контроля, как обнаруживающая способность и аппаратурная избыточность, - последняя, в свою очередь, влияет на энергопотребление, быстродействие, тестопригодность и другие характеристики построенной дискретной системы [9, 10].
Структура, приведенная на рис. 1, на практике строится с условием 100 %-го обнаружения одиночных неисправностей [30]. Ввиду раздельной реализации блоков F(x), G(x) и тестера в произвольный момент времени возможно возникновение неисправности только в одном из компонентов системы функционального контроля. Неисправности блока контрольной логики искажают значения контрольных функций, что фиксируется тестером. Тестер, как «последний сторож» в системе функционального контроля, должен быть самопроверяемым и обнаруживать собственные неисправности хотя бы на одном входном наборе [10]. Задача функционального контроля состоит в обнаружении одиночных неисправностей в блоке F(x), внутренняя конфигурация связей между логическими элементами которого может привести к возникновениям искажений различных кратностей в значениях разрядов выходного вектора. Таким образом, можно рассматривать свойства кода с суммированием по обнаружению ошибок
Автоматика на транспорте
№ 1, том 2, март 2016
98
Design and test of logical devices
в информационных векторах, изучая тем самым особенности самой системы функционального контроля.
Различные коды с суммированием обладают различными свойствами обнаружения ошибок в информационных векторах и позволяют строить системы с различными техническими характеристиками.
2 Анализ свойств обнаружения ошибок кодами Бергера и кодами с суммированием взвешенных переходов
Классический код с суммированием, или код Бергера [31], строится по следующему правилу: определяется вес информационного вектора r (сумма единичных информационных разрядов), а затем полученное число представляется в двоичном виде и записывается в разряды контрольного вектора. Число контрольных разрядов в коде Бергера вычисляется по формуле: к = |~ log2(m +1) "
(запись [..."l обозначает целое сверху от вычисляемого значения). Далее будем обозначать код Бергера как S(m, к)-код.
В S(m, к)-коде один и тот же контрольный вектор соответствует всем информационным векторам с одинаковым весом. Для данного значения r это Crm информационных векторов. С увеличением r число информационных векторов, соответствующих одному и тому же контрольному вектору, увеличивается, до-
m m -1
стигая своего максимума при — для четного m и при —-— для нечетного m,
а затем уменьшается. Такое распределение информационных векторов между контрольными векторами приводит к тому, что S(m, к)-кодом не обнаруживается достаточно большое количество ошибок в информационных векторах. Например, S(5,3)-^a не обнаруживает 220 ошибок в информационных векторах, что составляет 22,18 % от всех возможных ошибок в информационных векторах (другими словами, данным кодом не обнаруживается чуть менее четверти ошибок в информационных векторах). При низком значении обнаруживающей способности все S(m, к)-коды имеют также и низкую эффективность обнаружения ошибок малых кратностей - ими не обнаруживается 50 % двукратных, 37,5 % четырехкратных, 31,25 % шестикратных ошибок и т. д. [32, 33].
Возникает задача повышения обнаруживающей способности, в том числе в области малой кратности ошибок, при сохранении числа контрольных разрядов в коде. С практической точки зрения, например в системах функционального контроля, решение этой задачи позволит, не увеличивая аппаратурной избыточности, обнаруживать большее количество одиночных неисправностей контролируемого логического устройства.
В [34] введено понятие оптимального разделимого кода по критерию минимума количества необнаруживаемых ошибок для заданных значений m и к.
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
99
Оптимальный код имеет равномерное распределение всех 2m информационных векторов между 2k контрольными векторами и не обнаруживает
Nmk = 2m (2m-k -1) (1)
ошибок в информационных векторах. К примеру, оптимальный код с параметрами т = 5 и k = 3 имеет N53 = 25 (25-3 -1) = 32 • 3 = 96 необнаруживаемых ошибок,
т. е. в 2,29 раз меньше, чем ^(5,3)-код. В том же источнике предложен способ улучшения характеристик S(m, ^)-кодов по обнаружению ошибок в информационных векторах с сохранением числа контрольных разрядов. Данный способ основан на преобразовании каждого слова кода Бергера в контрольной его части при помощи специального алгоритма. Он подразумевает определение веса вектора по модулю M = 2^log2 (m+1)"l 1 и использование поправочного коэффициента, равного сумме по модулю два значений установленных разрядов информационного вектора. Модифицированные коды Бергера в среднем обнаруживают вдвое больше ошибок в информационных векторах, чем классические S(m, ^-коды, однако они не являются оптимальными кодами. В [35-37] предложено семейство модифицированных кодов Бергера, получаемых установкой модуля определения
веса информационного вектора из множества M е {2; 4;...; 2^"log2(m+1)_l-2}. Данные коды имеют уменьшенное количество контрольных разрядов в сравнении с кодами Бергера. При своих параметрах m и k модульно модифицированные коды Бергера также не являются оптимальными (за исключением кода с M = 2, имеющего 2 контрольных разряда).
Оптимальный код с суммированием может быть получен на основе применения кода с суммированием взвешенных информационных разрядов. Впервые такой способ построения кода с суммированием описан в [31], а применение его для построения систем функционального контроля - в [38, 39]. Взвешивания информационных разрядов, однако, недостаточно для построения оптимального кода с теоретическим минимумом общего количества необнаруживаемых ошибок [40]. В [41-43] предложено несколько способов построения оптимальных кодов на основе модификации кодов с суммированием взвешенных информационных разрядов.
Оптимальный код с суммированием может быть получен и при модификации другого кода - кода с суммированием взвешенных переходов. Данный код предложен в [44], а некоторые его частные свойства обнаружения ошибок в системах функционального контроля показаны в [45-49]. Код с суммированием взвешенных переходов строится следующим образом.
Алгоритм 1. Получение контрольных векторов кода с суммированием взвешенных переходов:
1. Рассматриваются разряды информационного вектора, занимающие соседние позиции.
Автоматика на транспорте
№ 1, том 2, март 2016
100
Design and test of logical devices
2. Каждому переходу от разряда к разряду присваивается весовой коэффициент из натурального ряда (1, 2, ..., m - 1), начиная с младшего разряда.
3. Подсчитывается сумма так называемых активных переходов (переход между разрядами называется активным, если сумма по модулю два значений соседних разрядов равна единице).
4. Полученное число представляется в двоичном виде и записывается в разряды контрольного вектора.
Код с суммированием взвешенных переходов обозначим как WT (m, к)-код.
WT(m, к)-код обнаруживает большее количество ошибок в информационных векторах, чем S(m, к)-код, имея при этом, однако, увеличенное количество
m(m -1)
контрольных разрядов. Их число к =
l°g2
Увеличенное количество
контрольных разрядов в WT(m, к)-коде в сравнении с S(m, к)-кодом приводит к увеличению сложности контрольного оборудования в системе функционального контроля (см. рис. 1). Кроме того, контрольные разряды WT(m, к)-кодом используются неэффективно - WT(m, к)-коды не являются оптимальными [49]. Оптимальный код получается при использовании следующего алгоритма его построения [50, 51].
Алгоритм 2. Получение контрольных векторов модифицированного кода с суммированием взвешенных переходов:
1. Устанавливается значение модуля M = 2^log2 (m+1)"l (это модуль кода Бергера).
2. Подсчитывается сумма V так называемых активных переходов.
3. Определяется наименьший неотрицательный вычет числа V по установленному модулю: W = V (mod M).
4. Число W представляется в двоичном виде и записывается в контрольный вектор.
Продемонстрируем работу алгоритма построения модифицированного кода с суммированием взвешенных переходов, или WTM(m, к)-кода, на примере построения WT8(5,3)-кода. В табл. 1 записаны весовые коэффициенты каждого перехода между разрядами информационного вектора, а в табл. 2 показаны все кодовые слова WT8(5,3)-кода. К примеру, в информационном векторе <00101> активными являются переходы между разрядамиf иf f и f3,f иf4. Для получения числа V необходимо сложить значения весовых коэффициентов этих переходов: V = w + w23 + w34 = 1 + 2 + 3 = 6. Наименьший неотрицательный вычет числа V: W = 6 (mod8) = 6, что в двоичном виде представляется как <110>.
Анализируя таблицу 2, нетрудно заметить, что числа V для информационных векторов, равноудаленных от середины таблицы (эти векторы имеют противоположные значения одноименных разрядов), равны между собой. При этом количество повторений чисел V неодинаково (табл. 3). Это и приводит к неравномерности распределения информационных векторов WT(m,k)-кода между контрольными векторами (в контрольные группы). Выполняя модификацию
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
101
Таблица 1. Весовые коэффициенты переходов в информационном векторе
W4,5 W3,4 W2,3 W1,2
4 3 2 1
Таблица 2. Кодовые слова Ж78(5,3)-кода
№ Разряды информационного вектора V W = V (mod8) Разряды контрольного вектора
f5 f4 f3 f ft ^3 g2 g1
0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 1 1 1 0 0 1
2 0 0 0 1 0 3 3 0 1 1
3 0 0 0 1 1 2 2 0 1 0
4 0 0 1 0 0 5 5 1 0 1
5 0 0 1 0 1 6 6 1 1 0
6 0 0 1 1 0 4 4 1 0 0
7 0 0 1 1 1 3 3 0 1 1
8 0 1 0 0 0 7 7 1 1 1
9 0 1 0 0 1 8 0 0 0 0
10 0 1 0 1 0 10 2 0 1 0
11 0 1 0 1 1 9 1 0 0 1
12 0 1 1 0 0 6 6 1 1 0
13 0 1 1 0 1 7 7 1 1 1
14 0 1 1 1 0 5 5 1 0 1
15 0 1 1 1 1 4 4 1 0 0
16 1 0 0 0 0 4 4 1 0 0
17 1 0 0 0 1 5 5 1 0 1
18 1 0 0 1 0 7 7 1 1 1
19 1 0 0 1 1 6 6 1 1 0
20 1 0 1 0 0 9 1 0 0 1
21 1 0 1 0 1 10 2 0 1 0
22 1 0 1 1 0 8 0 0 0 0
23 1 0 1 1 1 7 7 1 1 1
24 1 1 0 0 0 3 3 0 1 1
25 1 1 0 0 1 4 4 1 0 0
26 1 1 0 1 0 6 6 1 1 0
27 1 1 0 1 1 5 5 1 0 1
28 1 1 1 0 0 2 2 0 1 0
29 1 1 1 0 1 3 3 0 1 1
30 1 1 1 1 0 1 1 0 0 1
31 1 1 1 1 1 0 0 0 0 0
Автоматика на транспорте
№ 1, том 2, март 2016
102
Design and test of logical devices
Таблица 3. Распределение чисел V при построении Ж78(5,3)-кода
Числа V
0 1 2 3 4 5 6 7 8 9 10
0 1 2 3 4 5 6 7 8 9 10
3 4 5 6 7
3 4 5 6 7
WT (ш,А:)-кода по алгоритму 2, мы устраняем этот недостаток, так как счет осуществляется до значения M - 1 = 7 : 8 (mod8) = 0, 9 (mod8) = 1 и 10 (mod8) = 2.
В табл. 4 приводится распределение информационных векторов по контрольным группам для рассматриваемого WT8(5,3)-кода. В каждой контрольной группе присутствует по 4 информационных вектора, причем в силу равенства значений V для равноудаленных от середины табл. 2 информационных векторов в каждой контрольной группе обязательно присутствуют как минимум два информационных вектора, отличающихся друг от друга во всех разрядах. Это обусловливает наличие в WT8(5,3)-коде необнаруживаемых ошибок максимальной кратностью d = m. Необнаруживаемые ошибки меньших кратностей появляются в WT8(5,3)-кодах при искажениях, переводящих информационные векторы одной контрольной группы в информационные векторы, не равноудаленные от середины табл. 2. Такой характер распределения информационных векторов по контрольным группам сохраняется для всех WTM(m, к)-кодов. Единственным исключением являются WTM(m, к)-коды с числом информационных разрядов m = 2t (t = 1, 2, ...). У них не заполняется последняя контрольная группа, так как количество информационных разрядов таково, что не образуется число W = 2к -1. В самом деле, при m = 4, например, максимальный вес информационного вектора W = w12 + w23 + w34 = 1 + 2 + 3 = 6.
Возвращаясь к WTM(m, к)-кодам с длинами информационных векторов m Ф 2 (t = 1, 2, ...), отметим, что в каждой контрольной группе для них имеются
Таблица 4. Распределение информационных векторов WT8(5,3)-кода
по контрольным группам
W = V (mod8)
0 1 2 3 4 5 6 7
Контрольный вектор
000 001 010 011 100 101 110 111
00000 00001 00011 00010 00110 00100 00101 01000
01001 01011 01010 00111 01111 01110 01100 01101
10110 10100 10101 11000 10000 10001 10011 10010
11111 11110 11000 11101 11001 11011 11010 10111
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
103
одинаковые по кратности переходы. Эти переходы и определяют количество
о и и w ТТЛ
искажении различной кратностью в каждой контрольной группе. На рис. 2, например, приводится граф всех возможных переходов в контрольной группе <101> ГТ8(5,3)-кода.
Рис. 2. Переходы в контрольной группе <111> Ж78(5,3)-кода
Общее количество необнаруживаемых ошибок в WTM(m, £)-кодах определяется путем умножения количества ошибок в одной контрольной группе на величину M.
В табл. 5 приводятся распределения необнаруживаемых ошибок в информационных векторах WTM(m, &)-кодов при некоторых значениях m. Анализ подобной таблицы позволил установить особенности нового класса кодов с суммированием по обнаружению ошибок в информационных векторах:
- любой WTM(m, £)-код обнаруживает 100 % одиночных искажений (является помехоустойчивым);
Таблица 5. Распределения необнаруживаемых ошибок в информационных векторах
некоторых WTM(m, £)-кодов
m k M Распределения необнаруживаемых ошибок по кратностям, Nm d N т
1 2 3 4 5 6 7 8 9 10 11 12
2 2 4 0 4 4
3 2 4 0 0 8 8
4 3 8 0 8 0 16 24
5 3 8 0 32 32 0 32 96
6 3 8 0 192 0 192 0 64 448
7 3 8 0 448 448 448 448 0 128 1920
8 4 16 0 832 0 1936 0 832 0 256 3856
9 4 16 0 2304 1280 4096 4096 1280 2304 0 512 15 872
10 4 16 0 7680 0 24 064 0 24 064 0 7680 0 1024 64 512
11 4 16 0 17 408 7424 58 496 45 696 45 696 58 496 7424 17 408 0 2048 260096
12 4 16 0 44 032 0 242688 0 466 944 0 242688 0 44 032 0 4096 1044 480
Автоматика на транспорте
№ 1, том 2, март 2016
104
Design and test of logical devices
- WTM(m, £)-коды с длинами информационных векторов m Ф 2 (t = 1, 2, ...) являются оптимальными;
- WTM(m, £)-коды с длинами информационных векторов m = 2t (t = 1, 2, .) близки к оптимальным, но не являются таковыми;
- WTM(m, £)-коды с четными значениями m обнаруживают 100 % ошибок нечетных кратностей в информационных векторах (таким свойством обладают любые коды Бергера);
- WTM(m, £)-коды обнаруживают 100 % ошибок кратности d = m - 1 в информационных векторах;
- WTM(m, £)-кодами не обнаруживается 100 % ошибок максимальной кратностью d = m в информационных векторах;
- количество необнаруживаемых ошибок каждой кратностью (а также общее число необнаруживаемых ошибок) кратно величине модуля M.
Свойства WTM(m, £)-кодов объясняются правилами их построения. Например, помехоустойчивость объясняется тем, что в качестве весовых коэффициентов используется последовательность натуральных чисел от 1 до m - 1, а модуль определения вычета всегда превосходит максимальное значение веса перехода
в информационном векторе: wx = m - 1, M = 2^log2(m+1)"l и M> m - 1. Если бы модуль M был равен значению веса перехода между самыми старшими разряда, то вычет из данного числа был бы равен нулю: w , (modM) =
ми w
m-1, m
= M (modM) = 0. Это означало бы, что даже при активизации перехода значение веса в общей сумме W было бы всегда равно нулю и разряд бы не контролировался.
На рис. 3 приводится сравнение WTM(m, £)-кодов с S(m, £)-кодами по способности к обнаружению двукратных ошибок в информационных векторах - изображена зависимость значения отношения количества двукратных необнаруживаемых ошибок в информационных векторах к общему количеству двукратных ошибок в информационных векторах (величина Pd) от длины информационного вектора. Из рис. 3 следует, что WTM(m, £)-коды более чем в два раза эффективнее обнаруживают двукратные ошибки, чем S(m, £)-коды. Это справедливо и для ошибок любых четных кратностей (табл. 6). На графиках, приведенных на рис. 4, показана зависимость величины nm, равной отношению количества необнаруживаемых ошибок данной кратностью в кодах Бергера и в рассматриваемых взвешенных кодах, от длины информационного вектора m. Величина показывает, во сколько раз уменьшается количество необнаруживаемых ошибок данной кратностью в WTM(m, £)-кодах в сравнении с S(m, £)-кодами при конкретном значении m.
При нечетных значениях m эффективность обнаружения WTM(m, £)-кодами ошибок четной кратностью в сравнении со значениями m±1 возрастает, что происходит по причине наличия в классе необнаруживаемых ошибок у кодов с нечетными значениями m ошибок нечетных кратностей.
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
105
100
80
60
S®
о4
со.
40
20
0
2 4 6 8 10 12 14 16 18 20
m
• • *0* • S(m,k) —О— WTM(m,k)
Рис. 3. Доля необнаруживаемых двукратных ошибок от общего числа двукратных ошибок в S(m, k)- и WTM(m, k)-кодах
3 Экспериментальные исследования кодов с суммированием
Для оценки эффективности вновь разрабатываемых способов построения надежных логических устройств часто используются известные базы контрольных логических схем [52]. Для сравнения свойств предложенного WTM(m, ^-кода со свойствами классических S(m, ^-кодов нами был выбран пакет контрольных комбинационных схем LGSynth'89 [53-55]. Контрольные комбинационные схемы LGSynth'89, в том числе, описаны в формате *.netblif, который является списочной формой задания схемы в виде net-листа - он содержит информацию о логических элементах структуры и задает конфигурацию связей между входами и выходами самой схемы и внутренними логическими элементами. Все контрольные комбинационные схемы записаны в базисе ИЛИ-НЕ (библиотека nor.genlib).
Целью экспериментов ставилось комплексное исследование параметров сложности технической реализации и возможностей обнаружения ошибок на выходах контролируемых устройств при организации систем их функционального контроля по WTM(m, ^-кодам, а также сравнение параметров систем функционального контроля со структурами, полученными по S(m, ^-кодам.
Показателем сложности технической реализации логического устройства является площадь (L). Площадь рассчитывается с применением известного интерпретатора SIS (Sequential Interactive Synthesis), разработанного в Университете Калифорнии (Berkeley) специально для решения задач технической диагностики [56].
Автоматика на транспорте
№ 1, том 2, март 2016
No 1, Vol. 2, March 2016 Automation on Transport
Таблица 6. Значение p по каждой кратности для классического и взвешенного кодов с суммированием
m Доля необнаруживаемых ошибок кратности d от общего количества ошибок данной к эатности, %
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
WTM (m, £)-код
2 0 100
3 0 0 100
4 0 8,33 0 100
5 0 10 10 0 100
6 0 20 0 20 0 100
7 0 16,67 10 10 16,67 0 100
8 0 11,61 0 10,8 0 11,61 0 100
9 0 12,5 2,98 6,35 6,35 2,98 12,5 0 100
10 0 16,67 0 11,19 0 11,19 0 16,67 0 100
11 0 15,45 2,2 8,66 4,83 4,83 8,66 2,2 15,45 0 100
12 0 16,29 0 11,97 0 12,34 0 11,97 0 16,29 0 100
13 0 15,54 2,05 8,89 4,75 6,54 6,54 4,75 8,89 2,05 15,54 0 100
14 0 16,35 0 12,76 0 12,27 0 12,27 0 12,76 0 16,35 0 100
15 0 15,6 3,1 9,23 4,26 7,32 5,79 5,79 7,32 4,26 9,23 зд 15,6 0 100
16 0 11,88 0 6,61 0 6,15 0 6,15 0 6,15 0 6,61 0 11,88 0 100
17 0 12,87 0,81 5,65 1,7 4,09 2,49 3,27 3,27 2,49 4,09 1,7 5,65 0,81 12,87 0 100
18 0 14,71 0 7,25 0 6,26 0 6,15 0 6,15 0 6,26 0 7,25 0 14,71 0 100
19 0 14,33 0,68 6,47 1,46 4,5 2,2 3,61 2,9 2,9 3,61 2,2 4,5 1,46 6,47 0,68 14,33 0 100
20 0 14,61 0 7,47 0 6,43 0 6,2 0 6,16 0 6,2 0 6,43 0 7,47 0 14,61 0 100
S (m, &)-код
2-20 0 50 0 37,5 0 31,25 0 27,34 0 24,61 0 22,56 0 20,95 0 19,64 0 18,55 0 17,62
106 Design and test of logical devices
Проектирование и тестирование логических устройств
107
Рис. 4. Улучшение свойства обнаружения двукратных ошибок WTM(m, ^-кодами
в сравнении с 5,(т,^)-кодами
С использованием разработанного программного обеспечения для 20 контрольных комбинационных схем были получены файлы, описывающие блоки системы функционального контроля, построенные по S(m,k)- и WTM(m,k)-кодам (см. рис. 1). Затем, с применением интерпретатора SIS, получены значения площадей полученных структур (табл. 7). Для подавляющего большинства контрольных комбинационных схем площадь системы функционального контроля, построенной по WTM(m,k)-коду, оказалась больше, чем площадь системы функционального контроля, построенной по S(m,k)-коду. Для оценки изменения сложности системы функционального контроля при использовании WTM(m,k)-кода взамен S(m,k)-кода введен коэффициент
s =
tS (m,k)
Lm_______
jWWTM(m,k) ’
(2)
который показывает, во сколько раз уменьшилась площадь, занимаемая системой на кристалле. Если е > 1, то эффективнее применение WTM(m,k)-кода, если е < 1, то эффективнее использовать S(m,k)-код. Практически для всех контрольных комбинационных схем получен показатель е < 1, за исключением alu2 и x2. Для 13 контрольных комбинационных схем значение е принадлежит диапазону 0,5-1,0, что говорит о том, что значение площади для большинства контрольных примеров увеличивается, но не более чем в два раза. В среднем значение площади увеличивается примерно на 25 %. Таким образом, системы функционального контроля, построенные по классическим кодам с суммированием, являются более простыми, чем системы функционального контроля, построенные по взвешенным кодам с суммированием.
Автоматика на транспорте
№ 1, том 2, март 2016
108
Design and test of logical devices
Таблица 7. Показатели сложности технической реализации систем функционального контроля
№ Контрольная схема Число выходов, m Площадь контрольной схемы Площадь системы функционального контроля е
S(m,k) WTM(m,k)
1 alu2 6 8856 22 112 12 548 1,762
2 alu4 8 17 288 177 472 261 960 0,677
3 b1 4 304 564 1912 0,295
4 c17 2 256 792 896 0,884
5 cm42a 10 640 10 432 15 312 0,681
6 cm82a 3 656 1768 1784 0,991
7 cm85a 3 992 2680 2752 0,974
8 cm138a 8 560 4704 8488 0,554
9 cm151a 2 760 896 1152 0,778
10 cm162a 5 1176 5872 6432 0,913
11 cm163a 5 1176 7376 8640 0,854
12 cmb 4 1248 2536 3896 0,651
13 cu 11 1464 25 592 30 864 0,829
14 decod 16 800 22 464 632 152 0,036
15 f51m 8 3360 15 752 21 696 0,726
16 pcle 9 1816 23 680 25 344 0,934
17 pm1 13 1280 19 120 77 856 0,246
18 tcon 16 1152 47 848 1200312 0,04
19 x2 7 1304 5960 4880 1,221
20 z4ml 4 1600 4672 7288 0,641
Среднее значение 0,734
На рис. 5 для наглядности графически в виде точек изображены значения величины е для различных контрольных примеров, а также жирной линией показано среднее значение е = 0,734.
Для определения свойств обнаружения ошибок различными кодами с применением специально разработанного программного обеспечения проанализированы возникающие на выходах контрольных комбинационных схем ошибки. Для каждой контрольной схемы определено количество необнаруживаемых S(m,k)- и ЖТМ(т,к)-кодами ошибок, а также рассчитаны следующие показатели обнаружения ошибок:
1) 8 - доля необнаруживаемых данным кодом ошибок, %, на выходах контрольной схемы от общего количества ошибок, возникающих на выходах схемы:
No 1, Vol. 2, March 2016
Automation on Transport
2
Проектирование и тестирование логических устройств
109
<N .... • ' ^Ч/^ а тг N
0 й о о
f ч
> О • 'о ; Он • • А* ✓
Е Е <5
V4
X о • • § О о чЗ
• • "а О V
т NO 6 .•* /V У •
s У е: °л
V • • • • •
in а о ’ • ос •••• 2 ••. а Xй
1/4 оо 6 ...» ° ..••• /у »•
• • • • • "1 г !ч/ ч
CN * ОС а о " •• (N ТГ а о 'Ч
• /ч •• у
• VN
тг й ✓ч У
31 с г i-1 N2
О
CN
ON
ОС
г-
in
Tf
m
<N
О
ON
ос
r-*
NO
in
Tf
m
in in in
I- ^ <N
in
r-^
o'
in
o"
in о
CN
o'
<D
X
о
X
3
X
X
О
К
Я
д
д
ю
S
§
kQ
д
kQ
д
о
&
д
§
X
3
д
д
д
д
я
&
д
д
tt
kQ
д
д
д
д
д
а>
м
д
д
д
а>
я
д
со
1/5
и
а
РЧ
ш
Автоматика на транспорте
№ 1, том 2, март 2016
110
Design and test of logical devices
5 = 100 •
Nm.
m
(3)
2) a - отношение количества необнаруживаемых ошибок в £(т,к)-коде к количеству необнаруживаемых ошибок в WTM(m,k)-коде; коэффициент, показывающий, во сколько раз WTM(m,k)-код эффективнее обнаруживает ошибки на выходах контрольной схемы, чем 5(т,к)-код:
3) ad - отношение количества необнаруживаемых ошибок данной кратностью d в £(т,к)-коде к количеству необнаруживаемых таких ошибок в WTM(m,k)-коде; коэффициент, показывающий, во сколько раз WTM(m,k)-код эффективнее обнаруживает ошибки на выходах контрольной схемы, чем 5(т,к)-код:
Данные экспериментальных исследований занесены в табл. 8 и 9. Таблица 8 содержит данные о свойствах кода по обнаружению ошибок в целом, а таблица 9 - по различным их кратностям.
Анализируя коэффициент a, можно сделать вывод о том, что WTM(m,k)-код достаточно эффективно обнаруживает ошибки в реальных логических устройствах: для 15 контрольных комбинационных схем модульный код с суммированием взвешенных переходов обнаруживает большее количество ошибок, чем классический код Бергера, при этом для 8 комбинационных схем достигнуто 100 %-е обнаружение одиночных ошибок на выходах контролируемых схем.
В табл. 9 приведены данные о распределениях необнаруживаемых ошибок на выходах 10 комбинационных схем по кратностям. Из табл. 9 следует, что для многих контрольных схем количество двукратных необнаруживаемых ошибок при использовании WTM(m,k)-кода уменьшилось в несколько раз в сравнении с контролем по 5(т,к)-коду.
Заключение
Предложенный в статье способ построения кода с суммированием позволяет для всех длин информационных векторов, за исключением т = 2 (t = 1, 2, ...), получать оптимальные коды с суммированием с таким же количеством контрольных разрядов, как у классического кода Бергера. При том, что для WTM (т, к)-кода достигнут минимум общего количества необнаруживаемых ошибок в информационных векторах, он более эффективно обнаруживает и ошибки малых
а =
т
(4)
т,d
(5)
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
111
Таблица 8. Показатели обнаружения ошибок кодами с суммированием
№ Контрольная схема Всего ошибок Количество необнаруживаемых ошибок 8, % а
Б(т,к) ШТМ(т,к) Б(т,к) ШТМ(т,к)
1 alu2 61 988 7672 2326 12,377 3,752 3,298
2 alu4 1966881 186 142 21 473 9,464 1,092 8,669
3 b1 44 2 0 4,545 0 -
4 c17 234 2 46 0,855 19,658 0,043
5 cm42a 278 8 0 2,878 0 -
6 cm82a 648 68 4 10,494 0,617 17
7 cm85a 30 912 176 0 0,569 0 -
8 cm138a 680 0 0 0 0 -
9 cm151a 14 592 14 592 14 592 100 100 1
10 cm162a 317331 1920 6585 0,605 2,075 0,292
11 cm163a 1221312 10 368 21 632 0,849 1,771 0,479
12 cmb 288218 6 0 0,002 0 -
13 cu 137984 34 048 640 24,675 0,464 53,2
14 decod 224 0 0 0 0 -
15 f51m 13 008 91 156 0,7 1,199 0,583
16 pcle 17 472 087 188416 97 113 1,078 0,556 1,94
17 pm1 189440 6848 617 3,615 0,326 11,099
18 tcon 4849 664 0 0 0 0 -
19 x2 19 708 104 348 0,528 1,766 0,299
20 z4ml 4168 128 0 3,071 0 -
Средние значения 8,815 6,664 1,323
кратностей. Например, все ЖТМ(т,к)-коды при длинах информационных векторов т = 2^20 более чем в два раза обнаруживают больше двукратных ошибок, чем £(т,к)-коды. Такое свойство определяет преимущество ЖТМ(т,к)-кодов перед £(т,к)-кодами при организации систем функционального контроля.
В качестве особенности предложенного оптимального кода следует отметить появление в классе необнаруживаемых ошибок с нечетными кратностями для четных значений длин информационных векторов и невозможность обнаружения ошибок с максимальными кратностями d = т. Последние, однако, в реальных схемах возникают крайне редко.
Результаты экспериментов с контрольными комбинационными схемами показали, что при незначительном увеличении показателя сложности технической реализации системы функционального контроля для большинства
Автоматика на транспорте
№ 1, том 2, март 2016
No 1, Vol. 2, March 2016 Automation on Transport
Таблица 9. Распределения необнаруживаемых ошибок по кратностям в контрольных схемах
Контроль- ная схема Необнаруживаемые ошибки по кратностям d, Nm и
1 2 3 4 5 6 7 8 N 1 'm
alu2
Всего 46095 11973 3589 287 44 0 61988
S (m, к) 0/0% 7644/63,84% 0/0% 28/9,76% 0/0% 0/0% 7672/12,38%
WTM(m, к) 0/0% 2230/18,63% 0/0% 96/33,45% 0/0% 0/0% 2326/3,75%
a - 3,43 - 0,29 - - 3,3
alu4
Всего 1426687 299561 151604 68823 20002 204 0 0 1966881
S (m, k) 0/0% 181963/60,74% 0/0% 4177/6,07% 0/0% 2/0,98% 0/0% 0/0% 186142/9,46%
WTM(m, k) 0/0% 14034/4,68% 0/0% 7439/10,81% 0/0% 0/0% 0/0% 0/0% 21473/1,09%
a - 12,97 - 0,56 - - - - 8,67
cm82a
Всего 576 68 4 648
S (m, k) 0/0% 68/100% 0/0% 68/10,49%
WTM(m, k) 0/0% 0/0% 4/100% 4/0,62%
a - - 0 17
cm 62a
Всего 248348 37886 23996 6877 224 317331
S (m, k) 0/0% 1920/5,07% 0/0% 0/0% 0/0% 1920/0,61%
WTM(m, k) 0/0% 6137/16,2% 224/0,93% 0/0% 224/100% 6585/2,08%
a - 0,31 0 - 0 0,29
cm 63a
Всего 987648 132096 79680 21824 64 1221312
S (m, k) 0/0% 10368/7,85% 0/0% 0/0% 0/0% 10368/0,85%
WTM(m, k) 0/0% 21568/16,33% 0/0% 0/0% 64/100% 21632/1,77%
a - 0,48 - - 0 0,48
112 Design and test of logical devices
Автоматика на транспорте № 1, том 2, март 2016
Окончание табл. 9
Контроль- ная схема Необнаруживаемые ошибки по кратностям d, Nm И
1 2 3 4 5 6 7 8 N 1 'т
Й m
Всего 12169 781 56 2 0 0 0 0 13008
S (т, к) 0/0% 91/11,65% 0/0% 0/0% 0/0% 0/0% 0/0% 0/0% 91/0,7%
WTM(m, к) 0/0% 156/19,97% 0/0% 0/0% 0/0% 0/0% 0/0% 0/0% 156/1,2%
а - 0,58 - - - - - - 0,58
pole
Всего 15696664 493980 448104 390486 271656 129756 37080 4361 17472087
S (т, к) 0/0% 188416/38,14% 0/0% 0/0% 0/0% 0/0% 0/0% 0/0% 188416/1,08%
WTM (т, к) 0/0% 31222/6,32% 13565/3,03% 25134/6,44% 18399/6,77% 4433/3,42% 4360/11,76% 0/0% 97113/0,56%
а - 6,03 0 0 0 0 0 - 1,94
pml
Всего 174528 9408 3968 1536 0 0 0 0 189440
S (т, к) 0/0% 6400/68,03% 0/0% 448/29,17% 0/0% 0/0% 0/0% 0/0% 6848/3,61%
WTM (т, к) 0/0% 512/5,44% 0/0% 105/6,84% 0/0% 0/0% 0/0% 0/0% 617/0,33%
а - 12,5 - 4,27 - - - - 1U
х2
Всего 16624 2428 544 96 16 0 0 19708
S (т, к) 0/0% 104/4,28% 0/0% 0/0% 0/0% 0/0% 0/0% 104/0,53%
WTM (т, к) 0/0% 288/11,86% 4/0,74% 48/50% 8/50% 0/0% 0/0% 348/1,77%
а - 0,36 0 0 0 - - 0,3
z4ml
Всего 4008 128 32 0 4168
S (т, к) 0/0% 128/100% 0/0% 0/0% 128/3,07%
WTM (т, к) 0/0% 0/0% 0/0% 0/0% 0/0%
а - - - - -
Проектирование и тестирование логических устройств 113
114
Design and test of logical devices
реальных схем достигается улучшение показателя обнаружения ошибок. В некоторых случаях достигается обнаружение 100 % одиночных неисправностей на выходах элементов внутренней структуры контрольных схем. В среднем ЖТМ(т,к)-коды обнаруживают в 1,323 раза больше ошибок на выходах контрольных комбинационных схем, чем £(т,к)-коды. ЖТМ(т,к)-коды в среднем не обнаруживают 6,664 % возможных ошибок на выходах контрольных схем, тогда как кодами Бергера не обнаруживается 8,815 % таких ошибок (см. табл. 8).
Использование информации о свойствах обнаружения ошибок на выходах реальных схем ЖТМ(т,к)-кодом позволяет при преобразовании структуры самого контролируемого устройства обеспечить решение задачи 100 %-го обнаружения одиночных неисправностей на выходах внутренних логических элементов. При этом потребуется меньшее количество избыточных элементов, чем при выборе в качестве основы системы контроля классического кода Бергера и применении известных алгоритмов реконфигурации структур комбинационных схем в контролепригодные [57-59].
Библиографический список
1. Шаманов В. И. Процесс формирования асимметрии тягового тока в рельсовой линии / В. И. Шаманов // Электротехника. - 2014. - № 8. - С. 34-37.
2. Кравцов Ю. А. Задачи и возможности совершенствования рельсовых цепей тональной частоты / Ю. А. Кравцов, А. И. Каменев, Н. Н. Балуев, В. А. Клюзко // Автоматика, связь, информатика. - 2014. - № 3. - С. 10-14.
3. Кравцов Ю. А. Перспективные способы кодирования рельсовых цепей тональной частоты / Ю. А. Кравцов, Е. В. Архипов, М. Е. Бакин // Автоматика на транспорте. - 2015. - Т. 1. - № 2. - С. 119-126.
4. Системы управления движением поездов на перегонах : учебник для вузов ж.-д. транспорта : в 3 ч. Ч. 2 / В. М. Лисенков, П. Ф. Бестемьянов, В. Б. Леушин,
А. В. Лисенков, А. Е. Ваньшин ; под ред. В. М. Лисенкова. - М. : ГОУ «Учебнометодический центр по образованию на железнодорожном транспорте», 2009. -324 с.
5. Шаманов В. И. Электромагнитная совместимость систем железнодорожной автоматики и телемеханики / В. И. Шаманов. - М. : ФГБОУ «Учебно-методический центр по образованию на железнодорожном транспорте», 2013. - 244 с.
6. Сапожников Вал. В. Теоретические основы железнодорожной автоматики и телемеханики : учебник для вузов ж.-д. транспорта / Вал. В. Сапожников, Ю. А. Кравцов, Вл. В. Сапожников ; под ред. Вал. В. Сапожникова. - М. : ГОУ «Учебнометодический центр по образованию на железнодорожном транспорте», 2008. -394 с.
7. Молодцов В. П. Системы диспетчерского контроля и мониторинга устройств железнодорожной автоматики и телемеханики : учеб. пособие / В. П. Молодцов,
А. А. Иванов. - СПб. : Петербургский гос. ун-т путей сообщения, 2010. - 140 с.
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
115
8. Ефанов Д. В. Основы построения и принципы функционирования систем технического диагностирования и мониторинга устройств железнодорожной автоматики и телемеханики : учеб. пособие / Д. В. Ефанов, А. А. Лыков. - СПб. : Петербургский государственный университет путей сообщения, 2012. - 59 с.
9. Согомонян Е. С. Самопроверяемые устройства и отказоустойчивые системы / Е. С. Согомонян, Е. В. Слабаков. - М. : Радио и связь, 1989. - 208 с.
10. Сапожников Вал. В. Самопроверяемые дискретные устройства / Вал. В. Сапожников, Вл. В. Сапожников. - СПб. : Энергоатомиздат, 1992. - 224 с.
11. Сапожников Вал. В. Применение кодов с суммированием при синтезе систем железнодорожной автоматики и телемеханики на программируемых логических интегральных схемах / Вал. В. Сапожников, Вл. В. Сапожников, Д. В. Ефанов // Автоматика на транспорте. - 2015. - Т. 1. - № 1. - С. 84-107.
12. Jha N. K. Design and Synthesis of Self-Checking VLSI Circuits / N. K. Jha, S. Wang // IEEE Trans. Computer-Aided Design. - 1993. - Vol. 12. - Issue 6. - Pp. 878-887.
13. Goessel M. Error Detection Circuits / M. Goessel, S. Graf. - London : McGraw-Hill, 1994. - 261 p.
14. Piestrak S. J. Design of Self-Testing Checkers for Unidirectional Error Detecting Codes / S. J. Piestrak. - Wroclaw : Oficyna Wydawnicza Politechniki Wroclavskiej, 1995. -
111 p.
15. Pradhan D. K. Fault-Tolerant Computer System Design / D. K. Pradhan. - N. Y. : Prentice Hall, 1996. - 560 p.
16. Gorshe S. S. A Self-Checking ALU Design with Efficient Codes / S. S. Gorshe,
B. Bose // Proceedings of 14th VLSI Test Symposium, Princeton. - NJ, USA, 1996. -Pp. 157-161.
17. Guo Y.-Y. Fast and Area-Time Efficient Berger Code Checkers / Y.-Y. Guo, J.-C. Lo,
C. Metra // Workshop on Defect and Fault-Tolerance in VLSI Systems. - 1997. - October 20-22. - Pp. 110-118.
18. Matrosova A.Yu. Self-Checking Synchronous FSM Network Design with Low Overhead / A.Yu. Matrosova, I. Levin, S.A. Ostanin // VLSI Design. - 2000. - Vol. 11. - Issue 1. - Pp. 47-58.
19. Matrosova A. Survivable Self-Checking Sequential Circuits / A.Yu. Matrosova, I. Levin,
S. A. Ostanin // Proc. of 2001 IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems (DFT 2001), Oct. 24-26. - San Francisco, CA, 2001. -Рр. 395-402.
20. Abdulhadi A. H. Self Checking Register File Using Berger Code / A. H. Abdulhadi,
A. H. Maamar // 6th WSEAS International Conference on Circuits, systems, control & signal processing, 2007, Cairo, Egypt, December 29-31. - Pp. 62-68.
21. Wang L.-T. System-on-Chip Test Architectures : Nanometer Design for Testability / L.-T. Wang, C. E. Stroud, N.A. Touba. - Morgan Kaufmann Publishers, 2008. - 856 p.
22. Рабочее диагностирование безопасных информационно-управляющих систем / А. В. Дрозд, В. С. Харченко, С. Г. Антощук [и др.] ; под ред. А. В. Дрозда,
B. С. Харченко. - Харьков : Национальный аэрокосмический университет им. Н. Е. Жуковского (ХАИ), 2012. - 614 с.
23. Srihari P. Sum Codes : A Binary Channel Coding Scheme / P. Srihari // International Journal of Computer Science And Technology. - 2014. - Vol. 5. - Issue 1. - Pp. 60-64.
Автоматика на транспорте
№ 1, том 2, март 2016
116
Design and test of logical devices
24. Никитин А. Б. Управление стрелочными электроприводами в компьютерных системах горочной централизации / А. Б. Никитин, А. Н. Ковкин // Автоматика на транспорте. - 2015. - Т 1. - № 1. - С. 51-62.
25. Pierce D. Efficient Self-Checking Checkers for Berger Codes / D. Pierce, P. K. Lala // Proc. of 1st IEEE Int. On-Line Testing Workshop. - 1995. - Pp. 238-242.
26. Mitra S. Which Concurrent Error Detection Scheme to Choose? / S. Mitra, E. J. Mc-Claskey // Proceedings of International Test Conference, 2000, USA, Atlantic City, NJ, 3-5 October 2000. - Pp. 985-994.
27. Mitra S. Diversity Techniques for Concurrent Error Detection / S. Mitra, E. J. McClas-key // International Symposium on Quality Electronic Design, 2001, USA, San Jose, CA, 26-28 March. - Pp. 249-250.
28. Ghosh S. Synthesis of Low Power CED Circuits Based on Parity Codes / S. Ghosh,
S. Basu, N.A. Touba // Proc. of 23rd IEEE VLSI Test Symposium (VTS’05). - 2005. -Pp. 315-320.
29. Ubar R. Design and Test Technology for Dependable Systems-on-Chip (Premier Reference Source). Information Science Reference, Hershey / R. Ubar, J. Raik, H.-T. Vier-haus. - N. Y., IGI Global, 2011. - 578 p.
30. Пархоменко П. П. Основы технической диагностики (оптимизация алгоритмов диагностирования, аппаратурные средства) / П. П. Пархоменко, Е. С. Согомонян. -М. : Энергоатомиздат, 1981. - 320 с.
31. Berger J. M. A Note on Error Detection Codes for Asymmetric Channels / J. M. Berger // Information and Control. - 1961. - Vol. 4. - Issue 1. - Pp. 68-73.
32. Ефанов Д. В. О свойствах кода с суммированием в схемах функционального контроля / Д. В. Ефанов, Вал. В. Сапожников, Вл. В. Сапожников // Автоматика и телемеханика. - 2010. - № 6. - С. 155-162.
33. Blyudov A. Properties of Code with Summation for Logical Circuit Test Organization / A. Blyudov, D. Efanov, Val. Sapozhnikov, Vl. Sapozhnikov // Proceedings of10th IEEE East-West Design & Test Symposium (EWDTS'2012), Kharkov, Ukraine, September 14-17, 2012. - Pp.114-117.
34. Блюдов А. А. Построение модифицированного кода Бергера с минимальным числом необнаруживаемых ошибок информационных разрядов / А. А. Блюдов, Д. В. Ефанов, Вал. В. Сапожников, Вл. В. Сапожников // Электронное моделирование. - 2012. - Т. 34. - № 6. - С. 17-29.
35. Блюдов А. А. Коды с суммированием для организации контроля комбинационных схем / А. А. Блюдов, Д. В. Ефанов, Вал. В. Сапожников, Вл. В. Сапожников // Автоматика и телемеханика. - 2013. - № 6. - С. 153-164.
36. Efanov D. On the Problem of Selection of Code with Summation for Combinational Circuit Test Organization / D. Efanov, Val. Sapozhnikov, Vl. Sapozhnikov, A. Blyudov // Proceedings of 11th IEEE East-West Design & Test Symposium (EWDTS'2013), Rostov-on-Don, Russia, September 27-30, 2013. - Pp. 261-266.
37. Блюдов А. А. О кодах с суммированием единичных разрядов в системах функционального контроля / А. А. Блюдов, Д. В. Ефанов, Вал. В. Сапожников, Вл. В. Сапожников // Автоматика и телемеханика. - 2014. - № 8. - С. 131-145.
38. Das D. Weight-Based Codes and Their Application to Concurrent Error Detection of Multilevel Circuits / D. Das, N. A. Touba // Proc. 17th IEEE Test Symposium, USA, California, 1999. - Pp. 370-376.
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
117
39. Das D. Low Cost Concurrent Error Detection Based on Modulo Weight-Based Codes /
D. Das, N.A. Touba, M. Seuring, M. Gossel // Proceedings of IEEE 6th International On-Line Testing Workshop (IOLTW), Spain, Palma de Mallorca, July 3-5, 2000. -Pp. 171-176.
40. Сапожников Вал. В. Взвешенные коды с суммированием для организации контроля логических устройств / Вал. В. Сапожников, Вл. В. Сапожников, Д. В. Ефа-нов // Электронное моделирование. - 2014. - Т. 36. - № 1. - С. 59-80.
41. О способах построения кодов с суммированием с минимальным общим числом необнаруживаемых искажений в информационных векторах / Вал. В. Сапожников, Вл. В. Сапожников, Д. В. Ефанов, Д. А. Никитин // Известия Петербургского университета путей сообщения. - 2014. - № 1. - С. 82-91.
42. Efanov D. Sum Code Formation with Minimum Total Number of Undetectable Errors in Data Vectors / D. Efanov, Val. Sapozhnikov, Vl. Sapozhnikov, D. Nikitin // Proceedings of 13th IEEE East-West Design & Test Symposium (EWDTS'2015), Batumi, Georgia, September 26-29, 2015. - Pp. 141-148.
43. Сапожников Вал. В. Модульно взвешенный код с суммированием для систем технического диагностирования / Вал. В. Сапожников, Вл. В. Сапожников, Д. В. Ефанов, Д. А. Никитин // Информатика и системы управления. - 2015. - № 3. - С. 53-62.
44. Saposhnikov Val. New Code for Fault Detection in Logic Circuits / Val. Saposhnikov, Vl. Saposhnikov // Proc. 4th Int. Conf. on Unconventional Electromechanical and Electrical Systems, St. Petersburg, Russia, June 21-24, 1999. - Pp. 693-696.
45. Мехов В. Б. Контроль комбинационных схем на основе кодов с суммированием взвешенных переходов / В. Б. Мехов, Вал. В. Сапожников, Вл. В. Сапожников // Известия Петербургского университета путей сообщения. - 2006. - № 2. -
C. 126-126.
46. Мехов В. Б. Построение тестов для взвешенных кодов / В. Б. Мехов // Автоматика и телемеханика железных дорог России. Новая техника и новые технологии : сб. науч. трудов ; ред. Вл. В. Сапожников. - СПб. : Петербургский гос. ун-т путей сообщения, 2007. - С. 81-89.
47. Mehov V. Concurrent Error Detection Based on New Code with Modulo Weighted Transitions between Information Bits / V. Mehov, Val. Saposhnikov, Vl. Sapozhnikov,
D. Urganskov // Proceedings of 7th IEEE East-West Design & Test Workshop (EWDTW'2007), Erevan, Armenia, September 25-30, 2007. - Pp. 21-26.
48. Мехов В. Б. Контроль комбинационных схем на основе модифицированных кодов с суммированием / В. Б. Мехов, Вал. В. Сапожников, Вл. В. Сапожников // Автоматика и телемеханика. - 2008. - № 8. - С. 153-165.
49. Сапожников Вал. В. Свойства кодов с суммированием взвешенных переходов с прямой последовательностью весовых коэффициентов / Вал. В. Сапожников, Вл. В. Сапожников, Д. В. Ефанов, В. В. Дмитриев // Информатика и системы управления. - 2014. - № 4. - С. 77-88.
50. Дмитриев В. В. Применение кода с суммированием с взвешенными переходами для построения систем функционального контроля / В. В. Дмитриев, Д. В. Ефанов, М. Р. Черепанова // Интеллектуальные системы на транспорте : сб. материалов V МНПК «ИнтеллектТранс-2015» ; под ред. д-ра техн. наук, проф. А. А. Корниенко. - СПб. : ФГБОУ ВПО ПГУПС, 2015. - С. 305-311.
Автоматика на транспорте
№ 1, том 2, март 2016
118
Design and test of logical devices
51. Sapozhnikov Val. Optimum Sum Codes, That Effectively Detect the Errors of Low Multiplicities / Val. Sapozhnikov, Vl. Sapozhnikov, D. Efanov, V. Dmitriev, M. Cherepanova // Radioelectronics & Informatics. - 2015. - № 1. - Pp. 17-22.
52. Collection of Digital Design Benchmarks. - URL : http://ddd.fit.cvut.cz/prj/Bench-marks.
53. Yang S. Logic Synthesis and Optimization Benchmarks / S. Yang // Technical Report, MCNC, Dec. 1988, published at 1989 MCNC International Workshop on Logic Synthesis.
54. Benchmarks : LGSynth89. - URL : http://www.cbl.ncsu.edu:16080/benchmarks/LG-Synth89/mlexamples/.
55. Yang S. Logic Synthesis and Optimization Benchmarks : User Guide : Version 3.0 / S. Yang. - Microelectronics Center of North Carolina (MCNC), 1991. - 88 p.
56. SIS : A System for Sequential Circuit Synthesis / E. M. Sentovich, K. J. Singh, L. La-vagno, 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.
57. Гессель М. Построение самотестируемых и самопроверяемых комбинационных устройств со слабонезависимыми выходами / М. Гессель, Е. С. Согомонян // Автоматика и телемеханика. - 1992. - № 8. - С. 150-160.
58. Гессель М. Исследование комбинационных самопроверяемых устройств с независимыми и монотонно независимыми выходами / М. Гессель, А. А. Морозов, Вал. В. Сапожников, Вл. В. Сапожников // Автоматика и телемеханика. - 1997. -№ 2. - С. 180-193.
59. Morosow A. Self-Checking Combinational Circuits with Unidirectionally Independent Outputs / A. Morosow, Val. V. Sapozhnikov, Vl. V. Sapozhnikov, M. Goessel // VLSI Design. - 1998. - Vol. 5. - Issue 4. - Pp. 333-345.
Sapozhnikov Valery V.,
Sapozhnikov Vladimir V.,
Efanov Dmitry V.,
Dmitriev Vyacheslav V.,
Cherepanova Maria R.
«Automation and Remote Control on Railways» department,
Petersburg State Transport University
Method of formation of sum code with improved efficiency of error detection in data vectors
The article describes a method for sum code formation with a minimum total number of undetectable errors (optimum code), based on the idea of modification of the code with
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
119
weighted transition summation between the bits, adjacent in data vector. The proposed sum code can be assigned to the class of modular codes with weighted transitions summation. It has the same number of check bits as a classic Berger code, however, it also has the improved performance of error detection in data vectors, especially in a low multiplicity of errors. The article states the properties of a new sum code, particularly important is that when data vectors have m Ф 2 (t = 1, 2, ...) length the optimum code can be built. When m = 2 (t = 1, 2, .), however, the codes are close to optimum. The article explains this feature of a modular code with weighted transitions. Moreover, the experiment with reference LGSynth'89 combinational circuits shows that modular code with weighted transitions allows to organize concurrent error detection (CED) systems with improved detection of errors in comparison with structures, based on Berger codes. In some cases, the problem of detection of 100 % of errors at the outputs of combinational circuits under control might be solved. All that makes the resulting code a promising for solving the problems of technical diagnostics.
technical diagnostics; concurrent error detection (CED) system; sum code; Berger code; weighted transition; code with summation of weighted transitions; undetectable error in data vector; error detection properties; optimum code
References
1. Shamanov V. I. Process of forming the asymmetry of track line traction current. Electrical engineering (Elektrotekhnika), 2014, issue 8, pp. 34-37.
2. Kravtsov Yu.A., Kamenev A. I., Baluev N. N., Klyuzko V.A. Problems and possibilities for improvement of audio-frequency track circuits. Automation, communication, information science (Avtomatika, svyaz’, informatika), 2014, issue 3, pp. 10-14.
3. Kravtsov Yu. A., Arkhipov E. V., Bakin M. E. Advanced methods of audio-frequency track circuits coding. Avtomatika na transporte, 2015, vol. 1, issue 2, pp. 119-126.
4. Lisenkov V. M., Bestem’yanov P. F., Leushin V. B., Lisenkov A. V., Van’shin A. E. Control systems for block train traffic: textbook for railway transport universities : in 3 parts. Part 2; under the editorship of V. M. Lisenkov. Moscow, GOU «Training center for railway transport education», 2009, 324 p.
5. Shamanov V. I. Electromagnetic compatibility of railway automation and remote control systems. Moscow, FGBOU «Training center for railway transport education», 2013, 244 p.
6. Sapozhnikov Val. V., Kravtsov Yu.A., Sapozhnikov Vl. V. Theoretical basics of railway automation and remote control: textbook for railway transport universities; under the editorship of Val. V. Sapozhnikov. Moscow, GOU «Training center for railway transport education», 2008, 394 p.
7. Molodtsov V. P., Ivanov A.A. Dispatching control and railway automation and remote control monitoring systems: manual. St. Petersburg, Petersburg State Transport University, 2010, 140 p.
8. Efanov D. V., Lykov A. A. Fundamentals of architecture and principles of operations of technical diagnosis and monitoring systems for railway automation and remote control devices: manual. St.Petersburg, Petersburg State Transport University, 2012, 59 p.
9. Sogomonyan E. S., Slabakov E. V. Self-checking devices and fault-tolerant systems. Moscow, Radio and communication (Radio i svyaz’), 1989, 208 p.
Автоматика на транспорте
№ 1, том 2, март 2016
120
Design and test of logical devices
10. Sapozhnikov Val. V., Sapozhnikov Vl.V. Self-checking discrete devices. St. Petersburg, Energoatomizdat, 1992, 224 p.
11. Sapozhnikov Val. V., Sapozhnikov Vl. V., Efanov D. V. Application of sum codes for synthesis of railway automation and remote control systems using programmable logic integrated circuits. Avtomatika na transporte, 2015, vol. 1, issue 1, pp. 84-107.
12. Jha N. K., Wang S. Design and Synthesis of Self-Checking VLSI Circuits. IEEE Trans. Computer-Aided Design, 1993, vol. 12, issue 6, pp. 878-887.
13. Goessel M., Graf S. Error Detection Circuits. London, McGraw-Hill, 1994, 261 p.
14. Piestrak S. J. Design of Self-Testing Checkers for Unidirectional Error Detecting Codes. Wroclaw, Oficyna Wydawnicza Politechniki Wroclavskiej, 1995, 111 p.
15. Pradhan D. K. Fault-Tolerant Computer System Design. New-York, Prentice Hall, 1996, 560 p.
16. Gorshe S. S., Bose B. A. Self-Checking ALU Design with Efficient Codes. Proceedings of 14th VLSI Test Symposium, Princeton, NJ, USA, 1996, pp. 157-161.
17. Guo Y.-Y., Lo J.-C., Metra C. Fast and Area-Time Efficient Berger Code Checkers. Workshop on Defect and Fault-Tolerance in VLSI Systems, 1997, October 20-22,
pp. 110-118.
18. Matrosova A.Yu., Levin I., Ostanin S. A. Self-Checking Synchronous FSM Network Design with Low Overhead. VLSI Design, 2000, vol. 11, issue 1, pp. 47-58.
19. Matrosova A., Levin I., Ostanin S. Survivable Self-Checking Sequential Circuits. Proc. of 2001 IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems (DFT 2001), Oct. 24-26, San Francisco, CA, 2001, pp. 395-402.
20. Abdulhadi A. H., Maamar A. H. Self Checking Register File Using Berger Code. 6th WSEAS International Conference on Circuits, systems, control & signal processing, 2007, Cairo, Egypt, December 29-31, pp. 62-68.
21. Wang L.-T., Stroud C. E., Touba N.A. System-on-Chip Test Architectures: Nanometer Design for Testability. Morgan Kaufmann Publishers, 2008. 856 p.
22. Drozd A. V., Kharchenko V. S., Antoshchuk S. G. [et al.]. Operational diagnosis of trusted information management system; under the editorship of A. V. Drozd and V. S. Kharchenko. Kharkov, National Aerospace University named after N. E. Zhukovsky (KhAI), 2012, 614 p.
23. Srihari P. Sum Codes: A Binary Channel Coding Scheme. International Journal of Computer Science And Technology, 2014, vol. 5, issue 1, pp. 60-64.
24. Nikitin A. B., Kovkin A. N. Electric point mechanism control in computer systems of automatic switching. Automation on Transport (Avtomatika na transporte), 2015, vol. 1, № 1, pp. 51-62.
25. Pierce D., Lala P. K. Efficient Self-Checking Checkers for Berger Codes. Proc. of 1st IEEE Int. On-Line Testing Workshop, 1995, pp. 238-242.
26. Mitra S., McClaskey E. J. Which Concurrent Error Detection Scheme to Choose? Proceedings of International Test Conference, 2000, USA, Atlantic City, NJ, 3-5 October 2000,pp. 985-994.
27. Mitra S., McClaskey E. J. Diversity Techniques for Concurrent Error Detection. International Symposium on Quality Electronic Design, 2001, USA, San Jose, CA, 2628 March, pp. 249-250.
28. Ghosh S., Basu S., Touba N.A. Synthesis of Low Power CED Circuits Based on Parity Codes. Proc. of 23rd IEEE VLSI Test Symposium (VTS’05), 2005, pp. 315-320.
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
121
29. Ubar R., Raik J., Vierhaus H.-T. Design and Test Technology for Dependable Systems-on-Chip (Premier Reference Source). Information Science Reference, Hershey - New York, IGI Global, 2011, 578 p.
30. Parkhomenko P. P., Sogomonyan E. S. Basics of technical diagnostics (optimization of diagnostic algorithms and equipment). Мoscow, Energoatomizdat, 1981, 320 p.
31. Berger J. M. A Note on Error Detection Codes for Asymmetric Channels. Information and Control, 1961, vol. 4, issue 1, pp. 68-73.
32. Efanov D. V., Sapozhnikov Val. V., Sapozhnikov Vl. V. On Sum Code Properties In Concurrent Error Detection Systems. Automation and remote control (Avtomatika i telemekhanika), 2010, № 6, pp. 155-162.
33. Blyudov A., Efanov D., Sapozhnikov Val., Sapozhnikov Vl. Properties of Code with Summation for Logical Circuit Test Organization. Proceedings of 10th IEEE East-West Design & Test Symposium (EWDTS'2012), Kharkov, Ukraine, September 14-17, 2012, pp.114-117.
34. Blyudov A. A., Efanov D. V., Sapozhnikov Val. V., Sapozhnikov Vl. V. Formation of modified Berger code with minimum number of undetectable errors of data bits. Electronic simulation (Elektronnoe modelirovanie), 2012, vol. 34, № 6, pp. 17-29.
35. Blyudov A.A., Efanov D. V., Sapozhnikov Val. V., Sapozhnikov Vl. V. Sum codes for organization of combinational circuits control. Automation and remote control (Av-tomatika i telemekhanika), 2013, № 6, pp. 153-164.
36. Efanov D., Sapozhnikov Val., Sapozhnikov Vl., Blyudov A. On the Problem of Selection of Code with Summation for Combinational Circuit Test Organization. Proceedings of 11th IEEE East-West Design & Test Symposium (EWDTS'2013), Rostov-on-Don, Russia, September 27-30, 2013, pp. 261-266.
37. Blyudov A. A., Efanov D. V., Sapozhnikov Val. V., Sapozhnikov Vl. V. On sum codes of unit bits in concurrent error detection systems. Automation and remote control (Avtomatika i telemekhanika), 2014, № 8, pp. 131-145.
38. Das D., Touba N.A. Weight-Based Codes and Their Application to Concurrent Error Detection of Multilevel Circuits. Proc. 17th IEEE Test Symposium, USA, California, 1999, pp. 370-376.
39. Das D., Touba N.A., Seuring M., Gossel M. Low Cost Concurrent Error Detection Based on Modulo Weight-Based Codes. Proceedings of IEEE 6th International On-Line Testing Workshop (IOLTW), Spain, Palma de Mallorca, July 3-5, 2000, pp. 171-176.
40. Sapozhnikov Val. V., Sapozhnikov Vl. V., Efanov D. V. Weight-based sum codes for logic devices testing organization. Electronic Modeling (Elektronnoe modelirovanie), 2014, vol. 36, № 1, pp. 59-80.
41. Sapozhnikov Val. V., Sapozhnikov Vl. V., Efanov D. V., Nikitin D. A. On methods of sum code formation with minimum total number of undetectable distortions in data vectors. Proceedings of Petersburg Transport University, 2014, № 1, pp. 82-91.
42. Efanov D., Sapozhnikov Val., Sapozhnikov Vl., Nikitin D. Sum Code Formation with Minimum Total Number of Undetectable Errors in Data Vectors. Proceedings of 13th IEEE East-West Design & Test Symposium (EWDTS'2015), Batumi, Georgia, September 26-29, 2015, pp. 141-148.
43. Sapozhnikov Val. V., Sapozhnikov Vl. V., Efanov D. V., Nikitin D.A. Modulary weighted-based sum code for technical diagnostic systems. Informatics and control systems (Informatika i sistemy upravleniya), 2015, No 3, pp. 53-62.
Автоматика на транспорте
№ 1, том 2, март 2016
122
Design and test of logical devices
44. Saposhnikov Val., Saposhnikov Vl. New Code for Fault Detection in Logic Circuits. Proc. 4th Int. Conf. on Unconventional Electromechanical and Electrical Systems, St. Petersburg, Russia, June 21-24, 1999, pp. 693-696.
45. Mekhov V. B., Sapozhnikov Val. V., Sapozhnikov Vl. V. Conbinational circuits control, based on sum codes with weighted transitions. Proceedings of Petersburg Transport University, 2006, № 2, pp. 126-126.
46. Mekhov V. B. Test generation for weighted-based codes. Automation and remote control of Russian railways. New equipment and new technologies: collection of research papers; under the editorship of Vl. V. Sapozhnikov. St. Petersburg, Petersburg Transport University, 2007, pp. 81-89.
47. Mehov V., Saposhnikov Val., Sapozhnikov Vl., Urganskov D. Concurrent Error Detection Based on New Code with Modulo Weighted Transitions between Information Bits. Proceedings of 7th IEEE East-West Design & Test Workshop (EWDTW'2007), Erevan, Armenia, September 25-30, 2007, pp. 21-26.
48. Mekhov V. B., Sapozhnikov Val. V., Sapozhnikov Vl. V. Checking of combinational circuits, based on modified sum codes. Automation and remote control (Avtomatika i telemekhanika), 2008, № 8, pp. 153-165.
49. Sapozhnikov Val. V., Sapozhnikov Vl. V., Efanov D. V., Dmitriev V. V. Properties of sum codes with weighted transitions with direct sequence of weight ratios. Informatics and management systems (Informatika i sistemy upravleniya), 2014, № 4, pp. 77-88.
5 0. Dmitriev V. V., Efanov D. V., Cherepanova M. R. Application of sum code with weighted transitions for concurrent error detection (CED) systems. Transport intelligent systems. Proceedings of V MNPK «IntellektTrans-2015»; under the editorship of A. A. Kornienko, D. Eng., professor. St. Petersburg, PGUPS, 2015, pp. 305-311.
51. Sapozhnikov Val., Sapozhnikov Vl., Efanov D., Dmitriev V., Cherepanova M. Optimum Sum Codes, That Effectively Detect the Errors of Low Multiplicities. Radioelectronics & Informatics, 2015, № 1, pp. 17-22.
52. Collection of Digital Design Benchmarks. URL: http://ddd.fit.cvut.cz/prj/Bench-marks.
53. Yang S. Logic Synthesis and Optimization Benchmarks. Technical Report, MCNC, Dec. 1988, published at 1989 MCNC International Workshop on Logic Synthesis.
54. Benchmarks: LGSynth89. URL http://www.cbl.ncsu.edu:16080/benchmarks/LG-Synth89/mlexamples.
55. Yang S. Logic Synthesis and Optimization Benchmarks: User Guide: Version 3.0. Microelectronics Center of North Carolina (MCNC), 1991, 88 p.
56. Sentovich E. M., Singh K. J., Lavagno L., Moon C., Murgai R., Saldanha A., Savoj H., Stephan P. R., Brayton R. K., Sangiovanni-Vincentelli A. SIS: A System for Sequential Circuit Synthesis. Electronics Research Laboratory, Department of Electrical Engineering and Computer Science, University of California, Berkeley, 4 May 1992, 45 p.
57. Goessel M., Sogomonyan E. S. Design of self-testing and self-checking combinational devices with weakly independent outputs. Automation and remote control (Avtomatika i telemekhanika), 1992, № 8, pp. 150-160.
58. Goessel M., Morozov A.A., Sapozhnikov Val. V., Sapozhnikov Vl. V. Srudy of combinational self-checking devices with independent and monotonic independent outputs. Automation and remote control (Avtomatika i telemekhanika), 1997, № 2, pp. 180-193.
No 1, Vol. 2, March 2016
Automation on Transport
Проектирование и тестирование логических устройств
123
59. Morosow A., Sapozhnikov Val. V., Sapozhnikov Vl. V., Goessel M. Self-Checking Combinational Circuits with Unidirectionally Independent Outputs. VLSI Design, 1998, vol. 5, issue 4, pp. 333-345.
Статья представлена к публикации членом редколлегии М. Н. Василенко Поступила в редакцию 15.07.2015, принята к публикации 11.09.2015
САПОЖНИКОВ Валерий Владимирович - доктор технических наук, профессор кафедры «Автоматика и телемеханика на железных дорогах» Петербургского государственного университета путей сообщения Императора Александра I. e-mail: port.at.pgups1@gmail.com
САПОЖНИКОВ Владимир Владимирович - доктор технических наук, профессор кафедры «Автоматика и телемеханика на железных дорогах» Петербургского государственного университета путей сообщения Императора Александра I. e-mail: sapozhnikov-at@yandex.ru
ЕФАНОВ Дмитрий Викторович - кандидат технических наук, доцент кафедры «Автоматика и телемеханика на железных дорогах» Петербургского государственного университета путей сообщения Императора Александра I. e-mail: TrES-4b@yandex.ru
ДМИТРИЕВ Вячеслав Владимирович - ассистент кафедры «Автоматика и телемеханика на железных дорогах» Петербургского государственного университета путей сообщения Императора Александра I. e-mail: webus@pisem.net
ЧЕРЕПАНОВА Мария Родионовна - студентка факультета «Автоматизация и интеллектуальные технологии» Петербургского государственного университета путей сообщения Императора Александра I. e-mail: bugsbunny.k38@gmail.com
© Сапожников Вал. В., Сапожников Вл. В., 2016 © Ефанов Д. В., Дмитриев В. В., Черепанова М. Р., 2016
Автоматика на транспорте
№ 1, том 2, март 2016