Научная статья на тему 'ИССЛЕДОВАНИЕ ОСОБЕННОСТЕЙ ОБНАРУЖЕНИЯ ОШИБОК НА ВЫХОДАХ ПРОГРАММИРУЕМЫХ ЛОГИЧЕСКИХ ИНТЕГРАЛЬНЫХ СХЕМ ПРИ ФУНКЦИОНАЛЬНОМ КОНТРОЛЕ НА ОСНОВЕ МОДУЛЬНЫХ КОДОВ С СУММИРОВАНИЕМ'

ИССЛЕДОВАНИЕ ОСОБЕННОСТЕЙ ОБНАРУЖЕНИЯ ОШИБОК НА ВЫХОДАХ ПРОГРАММИРУЕМЫХ ЛОГИЧЕСКИХ ИНТЕГРАЛЬНЫХ СХЕМ ПРИ ФУНКЦИОНАЛЬНОМ КОНТРОЛЕ НА ОСНОВЕ МОДУЛЬНЫХ КОДОВ С СУММИРОВАНИЕМ Текст научной статьи по специальности «Электротехника, электронная техника, информационные технологии»

CC BY
49
8
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММИРУЕМАЯ ЛОГИЧЕСКАЯ ИНТЕГРАЛЬНАЯ СХЕМА / КОМБИНАЦИОННОЕ ЛОГИЧЕСКОЕ УСТРОЙСТВО / КОНТРОЛЬ НЕИСПРАВНОСТЕЙ / ВИДЫ НЕИСПРАВНОСТЕЙ / ОШИБКИ НА ВЫХОДАХ СХЕМЫ / КЛАССИЧЕСКИЕ И МОДУЛЬНЫЕ КОДЫ С СУММИРОВАНИЕМ / СИСТЕМА ТЕХНИЧЕСКОГО ДИАГНОСТИРОВАНИЯ

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Пашуков А.В.

В статье приведены примеры использования программируемых логических интегральных схем в различных отраслях промышленности. Описываются возможные неисправности в блоках ПЛИС и их отличие от неисправностей в программируемых логических матрицах. Особое внимание уделяется отказам элемента LUT. Описываются особенности организации систем технического диагностирования, функционирующих в рабочем режиме объектов диагностирования, для комбинационных логических устройств, реализованных на основе программируемых логических интегральных схем. На примере модульных кодов с суммированием показано, что известные подходы к организации таких систем для устройств, реализованных на вентильной основе, напрямую могут применяться и для устройств рассматриваемого типа. Поскольку фиксируются проявления неисправностей в виде ошибок, а не сами неисправности, подходы к организации систем диагностирования универсальны. Также приведена сравнительная характеристика модульных кодов с суммированием в зависимости от модуля кода. Предложен код, который будет обнаруживать в исследуемом примере все неисправности.

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

Похожие темы научных работ по электротехнике, электронной технике, информационным технологиям , автор научной работы — Пашуков А.В.

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

RESEARCH OF PECULIARITIES OF ERROR DETECTION ON THE OUTPUTS OF PROGRAMMABLE LOGIC INTEGRATED CIRCUITS WITH FUNCTIONAL CONTROL BASED ON MODULAR CODES WITH SUMMATION

The article provides examples of the use of programmable logic integrated circuits in various industries. Possible faults in FPGA blocks and their difference from faults in programmable logic arrays are described. Particular attention is paid to the failures of the LUT element. Features of the organization of technical diagnostics systems operating in the operating mode of the objects of diagnostics for combinational logic devices, implemented on the basis of programmable logic integrated circuits are described. Using the example of modular summation codes, it is shown that the known approaches to organizing such systems for devices implemented on a valve basis can be directly applied to devices of the type under consideration. Since malfunctions in the form of errors are recorded, and not the malfunctions themselves, the approaches to the organization of diagnostic systems are universal. It also provides a comparative characteristic of modular sum codes depending on the code module. A code has been proposed that will detect all faults in the example under study.

Текст научной работы на тему «ИССЛЕДОВАНИЕ ОСОБЕННОСТЕЙ ОБНАРУЖЕНИЯ ОШИБОК НА ВЫХОДАХ ПРОГРАММИРУЕМЫХ ЛОГИЧЕСКИХ ИНТЕГРАЛЬНЫХ СХЕМ ПРИ ФУНКЦИОНАЛЬНОМ КОНТРОЛЕ НА ОСНОВЕ МОДУЛЬНЫХ КОДОВ С СУММИРОВАНИЕМ»

УДК 004.052.42+681.518.5

А. В. Пашуков

Кафедра «Автоматика, телемеханика и связь на железнодорожном транспорте»,

Российский университет транспорта, Москва

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

В статье приведены примеры использования программируемых логических интегральных схем в различных отраслях промышленности. Описываются возможные неисправности в блоках ПЛИС и их отличие от неисправностей в программируемых логических матрицах. Особое внимание уделяется отказам элемента LUT. Описываются особенности организации систем технического диагностирования, функционирующих в рабочем режиме объектов диагностирования, для комбинационных логических устройств, реализованных на основе программируемых логических интегральных схем. На примере модульных кодов с суммированием показано, что известные подходы к организации таких систем для устройств, реализованных на вентильной основе, напрямую могут применяться и для устройств рассматриваемого типа. Поскольку фиксируются проявления неисправностей в виде ошибок, а не сами неисправности, подходы к организации систем диагностирования универсальны. Также приведена сравнительная характеристика модульных кодов с суммированием в зависимости от модуля кода. Предложен код, который будет обнаруживать в исследуемом примере все неисправности.

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

DOI: 10.20295/2412-9186-2021-7-3-477-495

Введение

Программируемые логические интегральные схемы (ПЛИС) начинают развиваться с момента появления первой микросхемы, реализующей булеву функцию. Затем появляются логические вентили, программируемые матрицы, полузаказные и заказные интегральные схемы и т. д.

В отличие от своих предшественниц, программируемых логических матриц (ПЛМ), ПЛИС нашли применение в различных отраслях промышленности. С их помощью производят цифровую обработку данных в космических системах (ARIAN-5, Space-Shuttle) [1]. Специально для этой задачи были разработаны микросхемы устойчивые к воздействию радиации. В атомной энергетике их используют для фильтрации входных сигналов, выполнения логических функций, в системах аварийной защиты [2, 3].

Гибкость и высокая скорость обработки данных ПЛИС позволяет активно применять их в системах цифровой радиосвязи и в различных системах военной отрасли: управления радарами, танком ABRAMS, запуском и наведением ракет PATRIOT, TOMAHAWK, STINGER [1, 4].

ПЛИС получили широкое распространение на железнодорожном транспорте. В [5] рассмотрены методы синтеза логических устройств электрической централизации на базе этих устройств, описан пример проектирования электронного реле с задержкой вытключения. Для задержки времени применяется схема счетчика, схема контроля и управления триггера.

В [6] описана архитектура безопасных устройств на железнодорожных переездах Чехии, где для обеспечения безопасности предложено применять систему с тройной модульной избыточностью и дублированием в каждом модуле.

ПЛИС входят в состав объектных контроллеров микропроцессорной централизации «Движение», аппаратуру тональных рельсовых цепей разработки «КОМАГ-Б» [1].

При создании устройств управления на основе ПЛИС соблюдаются широко известные принципы обеспечения безопасности, в т. ч. методы аппаратной и программной избыточности [7—13].

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

Основная цель статьи — показать, что для построения цифровых устройств с обнаружением неисправностей и ошибок в вычислениях могут применяться известные методы синтеза схем встроенного контроля на основе кодов с суммированием [14, 15],

1. Программируемые логические интегральные схемы и неисправности в них

Программируемые логические интегральные схемы — это электронный компонент (интегральная микросхема) для создания конфигурируемых настраиваемых цифровых электронных схем. В отличие от обычных цифровых микросхем, логика работы ПЛИС не определяется при изготовлении, а задается посредством программирования [16].

В простом варианте ПЛИС состоят из множества однотипных блоков (рис. 1), состояние которых отражается в таблицах LUT (Lookup Table). LUT размещаются в небольшом программируемом фрагменте памяти, куда записывается логическая функция блока. Чаще всего встречаются элементы LUT, позволяющие реализовать с помощью одного блока одну функцию четырех переменных. Однако встречаются LUT, которые имеют 5, 6, 7 и даже 8 выходов.

Применение ПЛИС обусловлено рядом преимуществ, среди которых можно выделить высокую производительность, быструю разработку проектов, простоту отладки и возможность параллельной работы над несколькими задачами.

AND

10 1 1 110 1 111 1

Рис. 1. Структурная схема ПЛИС с элементом LUT с тремя входами

Среди немалого числа компаний, выпускающих ПЛИС, выделяются Actel, Altera, Atmel, Lattice semiconductor, Xilinx.

В [17] рассмотрены неисправности «предшественников» ПЛИС — ПЛМ. При работе ПЛИС могут возникнуть следующие множества неисправностей [18]:

— отказы элементов LUT;

— неисправности входов схемы;

— неисправности межблочных соединений;

— отказы ячеек памяти.

Здесь пойдет речь только об отказах элементов LUT и неисправностях на входах всей микросхемы.

Неисправности в межблочных соединениях не рассматриваются: можно считать, что при их обрыве или коротком замыкании на вход блока поступает либо константа 0, либо константа 1. Что касается отказов ячеек памяти, задача диагностики логики ПЛИС представляется более сложной по сравнению с задачей диагностики памяти. К тому же в некоторых случаях отказы ячеек памяти можно рассматривать как однократные константные отказы на входе логических элементов: если ячейка памяти вышла из строя, она генерирует на выходе какое-либо постоянное значение (0 или 1).

Но сначала следует рассмотреть работу элемента LUT с различным числом входов и описать неисправности, способные возникать в этом процессе.

На рис. 2 изображен стандартный элемент LUT на четыре входные переменные. Структура его представляет собой дерево передающих транзисторов и яче-

Рис. 2. Транзисторная схема LUT с четырьмя входами (мультиплексор 16-1)

ек конфигурационной памяти (static random access memory), в которые записывается таблица истинности требуемой логической функции. Число ячеек напрямую зависит от количества входов в элемент LUT и высчитывается по фор-

лЯ

муле 2 , где я — количество входов.

С помощью конфигурируемой матрицы соединений коммутируются как входные переменные A, B, C, D, так и выход OUT. При вычислении логической функции для установленного на входах набора в дереве передающих транзисторов активируется одна из 24 цепочек. С соответствующей этому набору ячейки конфигурационной памяти значение функции через выходной инвертор устанавливается на выходе элемента OUT [19].

При использовании элементов LUT возможны три варианта реализации схем.

1. Количество входов элемента LUT соответствует количеству переменных (в нашем случае четыре).

2. Тогда все 16 ячеек памяти будут запрограммированы под соответствующее значение таблицы истинности и при подаче сигналов на выходы A, B, C, D будет коммутирована цепь.

3. Количество входов LUT больше количества переменных. (четыре входа LUT и пять переменных A, B, C, D, E).

В этом случае две четырехвходные LUT используют совместно один и тот же набор из четырех менее значимых переменных (А, B, C, D). Выходной сигнал любого из этих LUT направлен на выход Out с использованием дополнительных транзисторов (мультиплексора 2—1), которые будут соответствовать пятой переменной E (рис. 3).

Для реализации функций шести переменных понадобится четыре элемента LUT, и т. д. В общем виде количество элементов LUT можно найти по формуле N = 2й-3, где n — количество переменных. Формула справедлива для значения n > 5.

Рис. 3. Реализация функции с пятью переменными на двух LUT с четырьмя входами

4. Количество входов LUT меньше количества переменных (четыре входа LUT и три переменных A, B, C).

В этом случае три входные переменные управляют тремя входами LUT, в то время как его четвертый вход понижен. Затем восемь ячеек памяти конфигурируются для хранения выходных значений, а остальные восемь принимают нулевые значения.

Перейдем к самим неисправностям. В ходе работы элемента LUT могут возникнуть следующие виды неисправностей:

— короткое замыкание одного из входов элемента (константа 1);

— обрыв одного из входов элемента (константа 0);

— замыкание соседних входов;

— обрыв транзистора;

— короткое замыкание транзистора;

— неисправность инверторов на входах схемы или на выходе ячеек памяти.

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

2. Синтез схем контроля для устройств, реализованных

на программируемых логических интегральных схемах

При проектировании устройств автоматики и вычислительной техники выбираются способы их диагностирования для обеспечения заданного уровня безопасности. Широко применяются принципы тестирования и тестопригод-ного проектирования [20], а также принципы синтеза устройств, способных обнаруживать неисправности при выполнении своих функций [21]. При создании таких устройств используются, как правило, схемы встроенного контроля с применением методов избыточного кодирования [22, 23]. При этом широкое распространение получили классические и модульные (остаточные) коды с суммированием [24]. Свойства данного класса кодов подробно изучены в [25, 26]. Рассматривая особенности обнаружения неисправностей в комбинационных устройствах, остановимся на применении модульных кодов с суммированием.

В модульном коде выделяется информационный и контрольный векторы с длинами m и к соответственно. В разряды контрольного вектора записывается двоичное число, равное сумме числа единиц в информационном векторе в кольце вычетов по выбранному модулю M g {2,3,..., m +1} (при M=m+1 строится классический код с суммированием, или код Бергера [27]).

Будем обозначать коды с суммированием как SM-коды («S» — sum code, M — значение модуля). Значение модуля не только определяет свойства кода, но и характеризует число разрядов в контрольных векторах. Оно вычисляется как к = |log2M, где |"...~| обозначает целое число сверху от вычисляемого значения.

В [28] показано, что свойства обнаружения ошибок SM-кодами напрямую лежат в основах методик их применения при реализации схем контроля. В этом случае учитываются возможности кодов в обнаружении ошибок различных видов (монотонных, симметричных и асимметричных) и с различными кратностями [29]. Например, классические коды Бергера обнаруживают любые монотонные и асимметричные ошибки, а модульные коды — любые монотонные ошибки с кратностями d < M и асимметричные с кратностями d < M+2 [30]. Эти особенности SM-кодов определили их широкое распространение при реализации встраиваемых схем контроля.

Пусть дано комбинационное устройство, синтезированное на ПЛИС. Функции схемы, вычисляемые устройством, образуют следующую систему:

f = AB + BC + BCD; f2 = AB + BC + AC;

<

f3 = ABD + ADE + ABDE ; f4 = AB + BC + BCD + E.

Схема, синтезированная на ПЛИС семейства MAX II типа EPM240T100C4, приведена на рис. 4, а ее параметры — в таблице 1.

Выше отмечалось, что каждый блок содержит в себе один элемент LUT. Для реализации функций f1 и f2 , имеющих в своем составе три и четыре переменные соответственно, требуется по одному блоку. Для реализации функции f3, состоящей из четырех переменных, требуется два блока. Для реализации функции f4 требуется один блок (т. к. первые три составляющие образуют функцию f). Для упрощения задачи допустим, что для выполнения функции f используется блок «А», для функции f2 — блок «Б», для функции f3 — блоки «В» и «Г» и для функции f4 — блок «Д».

Система технического диагностирования реализуется на основе структурной схемы, представленной на рис. 5 [31].

Структурная схема содержит в себе исходное устройство F(x) и схему контроля, состоящую из блоков G(f), G(x) и самопроверяемого тестера (TRC).

Таблица 1. Параметры синтезированной схемы

Параметр Значение

Семейство MAX II

Тип микросхемы EPM240T100C4

Количество логических ячеек (используется/всего) 5/240

Количество входов (используется/всего) 9/80

Рис. 4. Комбинационное устройство и его характеристики

Блоки Gf) и G(x) являются преобразователями, но в блоке Gf) преобразуются информационные векторы в контрольные, а в блоке G(x) выходным векторам сопоставляются контрольные векторы. Сигналы с блоков Gif) и G(x) поступают на блок TRC, где происходит их сравнение.

Блок TRC, как правило, реализуется в виде схемы сжатия на основе элементарных модулей сжатия парафазных сигналов. Поэтому выходы одного из блоков (Gf) или G(x)) инвертируются. Альтернативой такому подходу будет предварительное инвертирование значений контрольных разрядов, вычисляемых блоком G(x) либо Gf), на этапе синтеза соответствующих компонентов схемы контроля.

Xi

x2

J

Рис. 5. Структурная схема системы диагностирования комбинационного устройства

Для повышения показателей безопасности блоки С(/), С(х) и ТЯС синтезируются на разных кристаллах (ПЛИС). Число т=4 (модуль) может быть выбрано из множества М е {2;3;4;5}.

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

Для <52-кода имеем:

g = CDE v ABD v ACE v BCD v BCE v ABC v BCDE v ABCE v ABDE v BCDE;

g* = Л /3 /4 v /1/2 /3 v /1./2./3./4 v /1 /2/3-

Для ,53-кода:

g1 = ABCD v BCDE v ABCDE v ABCDE v ABCDE; g2 = ABCD v ABDE v BCDE v ABCE v ACDE v ABCDE;

gl* = /1 ./2./2 v /3/4 v -/^-/^-/3 v /1/2/3/4; g2* = /2/3/4 v /2/3/4 v /1/2/3/4-

Для £4-кода:

g1 = BE v ACD v ABD v CDE v ABCE v ADE v ABCD v ABCD v BCDE; g2 = ABC v ABD v BCD v BCE v ACE v CDE v ABDE v BCD v ABDE v ACDE;

§1* = /1/3 V /1/2 V /1/3 V /1/2/4; §2* = /2 /3 /4.V /1/2 /3 V Л /2/3 V /1/2/3 /4 V /1/2 ЛЛ.

3. Показатели обнаружения ошибок

В ходе исследования влияния всех одиночных неисправностей на выходы заданной схемы были получены следующие характеристики систем технического диагностирования (табл. 2).

Таблица 2. Характеристики обнаружения ошибок в заданной схеме при контроле на основе модульных кодов с суммированием

Контроль ошибок Контроль ошибок Контроль ошибок

Коли- на основе на основе на основе

Вид неисправности чество £2-кода £3-кода £4-кода

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

оши- обна- необ- обна- необ- обна- необ-

бок ружи- нару- ружи- нару- ружи- нару-

вае- жива- вае- жива- вае- жива-

мые емые мые емые мые емые

В блоке А

Из них: 433 433 0 433 0 433 0

короткое замыкание на входе 34 34 0 34 0 34 0

обрыв входов 32 32 0 32 0 32 0

замыкание входов между собой 195 195 0 195 0 195 0

короткое замыкание транзисторов 56 56 0 56 0 56 0

обрыв транзисторов 60 60 0 60 0 60 0

неисправность инверторов 56 56 0 56 0 56 0

В блоке Б

Из них: 472 472 0 472 0 472 0

короткое замыкание на входе 34 34 0 34 0 34 0

обрыв входов 38 38 0 38 0 38 0

замыкание входов между собой 252 252 0 252 0 252 0

короткое замыкание транзисторов 44 44 0 44 0 44 0

обрыв транзисторов 60 60 0 60 0 60 0

неисправность инверторов 44 44 0 44 0 44 0

В блоке В

Из них: 259 259 0 259 0 259 0

Окончание табл. 2

Контроль ошибок Контроль ошибок Контроль ошибок

Коли- на основе на основе на основе

Вид неисправности чество £2-кода £3-кода ^4-кода

оши- обна- необ- обна- необ- обна- необ-

бок ружи- нару- ружи- нару- ружи- нару-

вае- жива- вае- жива- вае- жива-

мые емые мые емые мые емые

короткое замыкание на входе 10 10 0 10 0 10 0

обрыв входов 24 24 0 24 0 24 0

замыкание входов между собой 109 109 0 109 0 109 0

короткое замыкание транзисторов 28 28 0 28 0 28 0

обрыв транзисторов 60 60 0 60 0 60 0

неисправность инверторов 28 28 0 28 0 28 0

В блоке Г

Из них: 278 278 0 278 0 278 0

короткое замыкание на входе 34 34 0 34 0 34 0

обрыв входов 14 14 0 14 0 14 0

замыкание входов между собой 114 114 0 114 0 114 0

короткое замыкание транзи- 28 28 0 28 0 28 0

сторов

обрыв транзисторов 60 60 0 60 0 60 0

неисправность инверторов 28 28 0 28 0 28 0

В блоке Д

Из них: 306 306 0 306 0 306 0

короткое замыкание на входе 30 30 0 30 0 30 0

обрыв входов 28 28 0 28 0 28 0

замыкание входов между собой 104 104 0 104 0 104 0

короткое замыкание транзи- 42 42 0 42 0 42 0

сторов

обрыв транзисторов 60 60 0 60 0 60 0

неисправность инверторов 42 42 0 42 0 42 0

На входах ПЛИС

Из них: 552 382 170 479 73 543 9

короткое замыкание на входе 66 47 19 58 8 66 0

обрыв входов 64 45 19 56 8 64 0

замыкание входов между собой 422 290 132 365 57 413 9

Всего 1994 1824 170 1921 73 1985 9

Из таблицы 2 видно, что при неисправности входных линий количество необ-наруживаемых ошибок невелико. Дело в том, что при неисправностях в отдельных блоках возникают ошибки первой кратности, которые обнаруживаются любым кодом, поскольку входные линии влияют сразу на несколько функций, то кратность ошибки увеличивается.

Также видно, что любой из рассмотренных кодов обнаруживает все ошибки, связанные с неисправностями блоков А, Б, В, Г, Д. Однако при возникновении неисправностей на входах микросхемы появляются необнаруживаемые ошибки. При анализе заметно, что с увеличением модуля кода их количество постепенно сокращается, но даже наилучший для рассматриваемого примера код Б4 не может обнаружить все ошибки.

Изучив более подробно наборы, где ошибка не обнаруживается, можно прийти к выводу, что с большей вероятностью не обнаруживаются те неисправности, которые влияют сразу на несколько выходных функций, что приводит к симметричным ошибкам (содержащим группы разнонаправленных искажений 0^1 и 1^0), которые не могут быть идентифицированы модульными кодами с суммированием.

Чтобы обнаружить такие ошибки модульными кодами, нужен код, который будет производить сравнивание групп выходов. Он может быть построен при использовании функции сложения по модулю два разрядов, занимающих соседние позиции в информационном векторе [15, 33]: §1 = / © /2, §2 = /2 © /3,

§3 = /3 © /4, §4 = /1 © /4.

Следует также отметить еще одну особенность схем, реализованных в базисе ПЛИС. В них иногда возникают неисправности, связанные с пробоем или обрывом транзисторов, которые могут не проявлять себя на выходах. Они не изменяют значения векторов, реализуемых на выходах рассматриваемого комбинационного устройства (см. рис. 2). Поскольку эти неисправности не влияют на работу схемы, их невозможно обнаружить. Такой тип неисправности не присущ схемам, построенным на логических вентилях. В этом случае реализуется неисправность «подмены функции», при этом для контроля необходимо дополнительно осуществлять тестовое диагностирование схем [34].

В сравнении с ПЛМ [17] вероятность обнаружения ошибки на ПЛИС в разы больше. Связано это с тем, что большинство возможных неисправностей возникает в отдельном блоке и приводит к искажению только одной выходной функции, в то время как некоторые неисправности в ПЛМ влияют на несколько выходных функций.

Заключение

В настоящее время устройства, реализованные на ПЛИС, получили широкое распространение в технической сфере, поскольку они просты в использовании, отличаются пониженным энергопотреблением и малыми габаритами.

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

В статье проведен сравнительный анализ нескольких кодов с суммированием. Ни один из них не гарантирует обнаружения всех ошибок, поэтому предложен «улучшенный» модульный код. Особенности его реализации (сложение по модулю два соседних разрядов информационных векторов) гарантируют обнаружение всех ошибок.

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

Проведенное исследование показало, что в схемах, реализованных на ПЛИС, возникает особый вид неисправностей, которые никак не влияют на выходные значения. Такие неисправности нельзя обнаружить с помощью кодов. Наилучший эффект дает совместное применение помехоустойчивых кодов с тестовым диагностированием.

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

1. Малиновский М. Л., Аленин Д. А., Барсов В. И., Коноваленко Н. В. Перспективы использования FPGA-технологий в системах железнодорожной автоматики // Вюник Харювського нащонального техшчного ушверситету сшьського господарства iменi Петра Василенка. Техшчш науки. - Харьков, 2012. - Вип. 130 «Проблеми енергозабезпечення та енергоз-береження в АПК Украши». - С. 79-81.

2. Zaikin A.A., Zhemov V. S., Miroshnik Y. M., Pronyakin A. V., SokolovI. V. New control systems for emergency protection of power reactors // Ядерные измерительно-информационные технологии. - 2005. - № 3 - С. 30-55.

3. Кудрявцев А. В., Карцев К. П., Сергеев И. А., Федоров В. А., Якушев А. Г. Проект цифровой управляющей системы безопасности для энергоблоков АЭС с реакторами ВВЭР. - Москва: Национальный исследовательский ядерный университет «МИФИ», 2012. - 144 с.

4. Желтов П. В. Применение FPGA в системах цифровой радиосвязи. Введение. - РГРТУ. -6 с.

5. Кабецкий А. Г., Марков Д. С. Методы и инструментальные средства построения логических устройств электрической централизации на базе программируемых логических интегральных схем // Известия Петербургского университета путей сообщения. - 2010. -№ 2.- С. 168-173.

6. Dobias R., Kubatova H. FPGA Based Design of Railway's Interlocking Equipment // Proceedings of EUROMICRO Symposium on Digital System Design. - 2004. - Рр. 467-473.

7. Бестемьянов П. Ф. Методы обеспечения безопасности аппаратных средств микропроцессорных систем управления движением поездов // Электротехника. - 2020. - № 9. -С. 2-8.

8. Сапожников В. В., Сапожников Вл. В., Христов Х. А., Гавзов Д. В. Методы построения безопасных микроэлектронных систем железнодорожной автоматики. Под ред. Вл. В. Сапожникова. - М.: Транспорт, 1995. - 272 с.

9. ^ляр В. В., Харченко В. С. Отказоустойчивые компьютерные системы управления с версионно-пороговой адаптацией: способы адаптации, оценка надежности, выбор архитектур // Автоматика и телемеханика. - 2002. - № 6. - С. 131-145.

10. Микони С. В. Общие диагностические базы знаний вычислительных систем. - СПб.: СПИИРАН, 1992. - 234 с.

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

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

13. Бочков К. А., Харлап С. Н., Сивко Б. В. Разработка отказоустойчивых систем на основе диверситетных базисов // Автоматика на транспорте. - 2016. - Т. 2. - № 1. - С. 47-64.

14. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Коды с суммированием для систем технического диагностирования. Т. 1: Классические коды Бергера и их модификации. -М.: Наука, 2020. - 383 с.

15. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Коды с суммированием для систем технического диагностирования. Т. 2: Взвешенные коды с суммированием. - М.: Наука, 2021. - 455 с.

16. Navabi Z. Embedded Core Design with FPGAs. McGraw-Hill Education. - 433p.

17. Ефанов Д. В., Пашуков А. В. Исследование особенностей обнаружения ошибок в комбинационных устройствах автоматики, реализованных на основе программируемых логических схем // Вестник Ростовского государственного университета путей сообщения. - 2019. - № 3. - С. 88-99.

18. Городилов А. Ю. Методы и алгоритмы диагностирования и реконфигурации логики высоконадежных ПЛИС: дис. канд. техн. наук. - Пермь, 2016. - 260 с.

19. Тюрин С. Ф., Прохоров А. С. Отказоустойчивые логические элементы ПЛИС. Fault tolerant LUT FPGA. - Известия вузов. Северо-кавказский регион // Технические науки. -2016. - № 4. - С. 11-17.

20. Ланцов В. Н., Мосин С. Г. Современные подходы к проектированию и тестированию интегральных микросхем. - Владимир: изд-во Владимир. гос. ун-та, 2010. - 285 с.

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

22. Слабаков Е. В., Согомонян Е. С. Самопроверяемые вычислительные устройства и системы (обзор) // Автоматика и телемеханика. - 1981. - № 11. - С. 147-167.

23. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Коды Хэмминга в системах функционального контроля логических устройств: монография. - СПб.: Наука, 2018. - 151 с.

24. Das D., Touba N. A. Synthesis of Circuits with Low-Cost Concurrent Error Detection Based on Bose-Lin Codes // Journal of Electronic Testing: Theory and Applications. - 1999. -Vol. 15. - Issue 1-2. - Pp. 145-155. DOI: 10.1023/A:1008344603814.

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

26. Sapozhnikov V., Sapozhnikov Vl., Efanov D. Modular Sum Code in Building Testable Discrete Systems // Proceedings of 13th IEEE East-West Design & Test Symposium (EWDTS" 2015), Batumi, Georgia, September 26-29, 2015. - Pp. 181-187. DOI: 10.1109/EWDTS. EWDTS.2015.7493133.

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

27. Ефанов Д. В., Сапожников В. В., Сапожников Вл. В. Применение модульных кодов с суммированием для построения систем функционального контроля комбинационных логических схем // Автоматика и телемеханика. - 2015. - № 10. - С. 152-169.

28. Berger J. M. A Note on Error Detection Codes for Asymmetric Channels // Information and Control. - 1961. - Vol. 4. - Issue 1. - Pp. 68-73. DOI: 10.1016/S0019-9958(61)80037-5.

29. Sapozhnikov V., Sapozhnikov Vl., Efanov D. Search Algorithm for Fully Tested Elements in Combinational Circuits, Controlled on the Basis of Berger Codes // Proceedings of 15th IEEE East-West Design & Test Symposium (EWDTS'2017), Novi Sad, Serbia, September 29-October 2, 2017. - Pp. 99-108. DOI: 10.1109/EWDTS.2017.8110085.

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

31. Goessel M., Ocheretny V., Sogomonyan E., Marienfeld D. New Methods of Concurrent Checking: Edition 1. - Dordrecht: Springer Science+Business Media B. V., 2008. - 184 p.

32. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В. Основы теории надежности и технической диагностики. - Санкт-Петербург: Издательство «Лань», 2019. - 588 с.

33. Сапожников В. В., Сапожников Вл. В., Ефанов Д. В., Дмитриев В. В. Новые структуры систем функционального контроля логических схем // Автоматика и телемеханика. -2017. - № 2. - С. 127. DOI143.

34. Литиков И. П., Согомонян Е. С. Тестово-функциональное диагностирование цифровых устройств и систем // Автоматика и телемеханика. - 1985. - № 3. - C. 111-121.

A. V. Pashukov

Department of Automation, remote control and communication on railway transport,

Russian University of Transport, Moscow

RESEARCH OF PECULIARITIES OF ERROR DETECTION ON THE OUTPUTS OF PROGRAMMABLE LOGIC INTEGRATED CIRCUITS WITH FUNCTIONAL CONTROL BASED ON MODULAR CODES WITH SUMMATION

The article provides examples of the use of programmable logic integrated circuits in various industries. Possible faults in FPGA blocks and their difference from faults in programmable logic arrays are described. Particular attention is paid to the failures of the LUT element.

Features of the organization of technical diagnostics systems operating in the operating mode of the objects of diagnostics for combinational logic devices, implemented on the basis of programmable logic integrated circuits are described. Using the example of modular summation codes, it is shown that the known approaches to organizing such systems for devices implemented on a valve basis can be directly applied to devices of the type under consideration. Since malfunctions in the form of errors are recorded, and not the malfunctions themselves, the approaches to the organization of

diagnostic systems are universal. It also provides a comparative characteristic of modular sum codes depending on the code module. A code has been proposed that will detect all faults in the example under study.

Programmable gate array, combinational logic device, control of malfunctions, types of malfunctions, errors in system output, classical and modular sum codes, test system

DOI: 10.20295/2412-9186-2021-7-3-477-495 References

1. Malinovsky M. L., Alenin D. A., Barsov V. I., Konovalenko N. V. (2012) Perspektivy ispol-zovaniya FPGA-tekhnologiy v sistemakh zheleznodorozhnoy avtomatiki [Prospects of using FPGA technologies in railway automation systems]. Bulletin of thePetro Vasilenko Kharkiv National Technical University of Agriculture. Technical sciences., iss. 130: Problems of energy supply and energy saving in the agroindustrial complex of Ukraine, p. 79-81. (In Russian)

2. Zaikin A. A., Zhemov V. S., Miroshnik Y. M., Pronyakin A. V., SokolovI. V. (2005) New control systems for emergency protection of power reactors. Yadernyye izmeritelno-informatsionnyye tekhnologii [Nuclear measurement and information technologies], no. 3, pp. 30-55.

3. Kudryavtsev A. V., Kartsev K. P., SergeevI. A., Fedorov V. A., Yakushev A. G. (2012) Proyekt tsifrovoy upravlyayushchey sistemy bezopasnosti dlya energoblokov AESs reaktorami VVER [Project of digital safety control system for NPPpower units with VVER reactors]. Moscow, National Research Nuclear University MEPhI Publ., 144 p.

4. Zheltov P. V. Primeneniye FPGA v sistemakh tsifrovoy radiosvyazi. Vvedeniye [Application of FPGA in digital radio communication systems. Introduction]. Ryazan State Radio Engineering University named after V.F. Utkin Publ., 6 p.

5. Kabetsky A. G., Markov D. S. (2010) Metody i instrumentalnyye sredstva postroyeniya log-icheskikh ustroystv elektricheskoy tsentralizatsii na baze programmiruyemykh logicheskikh integral'nykh skhem [Methods and tools for constructing logic devices of electric interlocking based on programmable logic integrated circuits]. IzvestiyaPeterburgskogo universiteta putey soobshcheniya [Bulletin of the Petersburg University of Railways]. Saint Petersburg, St. Petersburg State Transport University, no. 2, pp. 168-173. (In Russian)

6. Dobia/ R., Kubatova H. (2004) FPGA Based Design of Railway's Interlocking Equipment, Proceedings of EUROMICRO Symposium on Digital System Design, pp. 467-473.

7. Bestemyanov P. F. (2020) Metody obespecheniya bezopasnosti apparatnykh sredstv mikro-protsessornykh sistem upravleniya dvizheniyem poyezdov [Methods for ensuring the safety of hardware of microprocessor-based train control systems]. Elektrotekhnika [Electrical engineering], no. 9, pp. 2-8. (In Russian)

8. Sapozhnikov V. V., Sapozhnikov Vl. V., Khristov Kh. A., Gavzov D. V. (1995) Metody postroyeniya bezopasnykh mikroelektronnykh sistem zheleznodorozhnoy avtomatiki [Methods of safe microelectronic systems constructing of railway automation]. Moscow, Transport Publ., 272 p. (In Russian)

9. Sklyar V. V., Kharchenko V. S. (2002) Otkazoustoychivyye kompyuternyye sistemy upravleniya s versionno-porogovoy adaptatsiyey: sposoby adaptatsii, otsenka nadezhnosti, vybor arkhitektur [Fault-Tolerant Computer-Aided Control Systems with Multiversion-Threshold Adaptation: Adaptation Methods, Reliability Estimation, and Choice of an Architecture]. Av-tomatika i telemekhanika [Automation and Remote Control], no. 6, 131-145. (In Russian)

10. Mikoni S. V. (1992) Obshchiye diagnosticheskiye bazy znaniy vychislitelnykh sistem [General diagnostic knowledge base of computing systems]. Saint Petersburg, SPIIRAS Publ., 234 p. (In Russian)

11. DrozdA. V., Kharchenko V. S., Antoshchuk S. G., Drozd Yu. V., DrozdM. A., Sulima Yu. Yu. (2012) Rabochee diagnostirovanie bezopasnyh informatsionno-upravlyayushchih sistem [Objects and Methods of On-Line Testing for Safe Instrumentation and Control Systems]. Kharkov National Aerospace University, 614 p. (In Russian)

12. GavzovD. V., Sapozhnikov V. V., Sapozhnikov Vl. V. (1994) Metody obespecheniya bezopas-nosti diskretnykh sistem [Security Methods for Discrete Systems]. Avtomatika i telemekhanika [Automation and telemechanics], no. 8, pp. 3-50. (In Russian)

13. Bochkov K. A., Kharlap S. N., Sivko B. V. (2016) Razrabotka otkazoustoychivykh sistem na osnove diversitetnykh bazisov [Design of axiomatic fault-tolerant systems]. Avtomatika na transporte [Automation on Transport], vol. 2, no. 1, pp. 47-64. (In Russian)

14. Sapozhnikov V. V., Sapozhnikov Vl. V., Efanov D. V. (2020) Kody s summirovaniyem dlya sistem tekhnicheskogo diagnostirovaniya. Tom 1: Klassicheskiye kody Bergera i ikh modi-fikatsii [Summed codes for technical diagnostic systems. Vol. 1: Classic Berger codes and their modifications]. Moscow, Nauka Publ., 383 p. (In Russian)

15. Sapozhnikov V. V., Sapozhnikov Vl. V., Efanov D. V. (2021) Kody s summirovaniyem dlya sistem tekhnicheskogo diagnostirovaniya. Tom 2: Vzveshennyye kody s summirovaniyem [Summed codes for technical diagnostic systems. Vol. 2: Weighted codes with summation]. Moscow, Nauka Publ., 455 p. (In Russian)

16. Navabi Z. Embedded Core Design with FPGAs. McGraw-Hill Education, 433p.

17. Efanov D. V., Pashukov A. V. (2019) Issledovaniye osobennostey obnaruzheniya oshibok v kombinatsionnykh ustroystvakh avtomatiki, realizovannykh na osnove programmiruyemykh logicheskikh skhem [The research of the features of the error detection in combinational logic devices realized on the basis of the programmable logic circuits]. VestnikRGUPS [Bulletin of Ryazan State Radio Engineering University], no. 3, pp. 88-99. (In Russian)

18. Gorodilov A. Y. (2016) Metody i algoritmy diagnostirovaniya i rekonfiguratsii logiki vys-okonadezhnykh PLIS: dis. kand. tekhn. nauk [Methods and algorithms for diagnosing and reconfiguring the logic of highly reliable FPGAs: dis. Cand. tech. sciences]. Perm', 260 p.

19. Tyurin S. F., Prokhorov A. S. (2016) Otkazoustoychivyye logicheskiye elementy PLIS [Fault tolerant LUT FPGA]. Izvestiya vuzov. Severo-kavkazskiy region. Tekhnicheskiye nauki [Proceedings of universities. North Caucasian region. Technical sciences], no. 4, pp. 11-17. (In Russian)

20. Lancov V. N., Mosin S. G. (2010) Sovremennyepodkhody kproektirovaniyu i testirovaniyu integralnykh mikroskhem [Modern approaches to the design and testing of integrated circuits]. Vladimir, Vladimir State University Publ., 285 p. (In Russian)

21. Sogomonyan E. S., Slabakov E. V. (1989) Samoproveryayemyye ustroystva i otkazoustoychivyye sistemy [Self-checking devices and failover systems]. Moscow, Radio and Svyaz Publ., 208 p. (In Russian)

22. Sogomonyan E. S., SlabakovE. V. (1981) Samoproveryayemyye vychislitel'nyye ustroystva i sistemy (obzor) [Self-checking computing devices and systems (review)]. Avtomatika i telemekhanika [Automation and Remote Control], iss. 11, pp. 147-167. (In Russian)

23. Sapozhnikov V. V., Sapozhnikov Vl. V., Efanov D. V. (2018) Kody Khemminga v sistema-kh funktsionalnogo kontrolya logicheskikh ustroistv: monografiya [Hamming codes in

concurrent error detection systems of logical units: monograph]. St. Petersburg, Nauka [Science] Publ., 151 p. (In Russian)

24. DasD., ToubaN. A. (1999) Synthesis of Circuits with Low-Cost Concurrent Error Detection Based on Bose-Lin Codes. Journal of Electronic Testing: Theory and Applications, vol. 15, iss. 1-2, pp. 145-155. DOI: 10.1023/A:1008344603814.

25. Efanov D. V., Sapozhnikov V. V., Sapozhnikov Vl. V. (2010) O svoistvakh koda s summi-rovaniyem v skhemakh funktsionalnogo kontrolya [Properties of summation codes in concurrent error detection systems]. Avtomatika i telemekhanika [Automation and remote control], no. 6, pp. 155-162. (In Russian)

26. Sapozhnikov V., Sapozhnikov Vl., Efanov D. (2015) Modular Sum Code in Building Testable Discrete Systems. Proceedings of 13th IEEE East-West Design & Test Symposium (EWDTS'2015), Batumi, Georgia, September 26-29, 2015. Pp. 181-187. DOI: 10.1109/ EWDTS. EWDTS.2015.7493133.

27. Efanov D. V., Sapozhnikov V. V., Sapozhnikov Vl. V. (2015) Primeneniye modulnykh kodov s summirovaniyem dlya postroeniya system funktsionalnogo kontrolya kombinatsionnykh logicheskikh skhem [Application of modular summation codes for the design of concurrent error detection systems of combinational logical circuits]. Avtomatika i telemekhanika [Automation and remote control], no. 10, pp. 152-169. (In Russian)

28. Berger J. M. (1961) A Note on Error Detection Codes for Asymmetric Channels. Information and Control, vol. 4, iss. 1, pp. 68-73. DOI: 10.1016/S0019-9958(61)80037-5.

28. Sapozhnikov V., Sapozhnikov Vl., Efanov D. (2017) Search Algorithm for Fully Tested Elements in Combinational Circuits, Controlled on the Basis of Berger Codes. Proceedings of 15th IEEE East-West Design & Test Symposium (EWDTS^'2017), Novi Sad, Serbia, September 29-October 2, 2017. Pp. 99-108. DOI: 10.1109/EWDTS.2017.8110085.

29. Sapozhnikov V. V., Sapozhnikov Vl. V. & Efanov D. V. (2015) Klassifikatsiya oshibok v in-formatsionnykh vektorakh sistematicheskikh kodov [Classification of errors in data vectors of systematic codes]. Izvestiya vuzov. Priborostroeniye [Proceedings of higher educational institutions. Instrument engineering], vol. 58, no. 5, pp. 333-343. DOI: 10.17586/00213454-2015-58-5-333-343. (In Russian)

30. Goessel M., Ocheretny V., Sogomonyan E., MarienfeldD. (2008) New Methods of Concurrent Checking: Edition 1. Dordrecht: Springer Science+Business Media B. V., 184 p.

31. Sapozhnikov V. V., Sapozhnikov Vl. V. & Efanov D. V. (2019) Osnovy teorii nadezhnosti i tekhnicheskoy diagnostiki [Reliability and technical diagnostics theory fundamentals]. Saint Petersburg, Lan' Publishing House, 588 p. (In Russian)

32. Sapozhnikov V. V., Sapozhnikov Vl. V., YefanovD. V., Dmitriyev V. V. (2017) Novyye struktury sistem funktsional'nogo kontrolya logicheskikh skhem [New structures of the concurrent error detection systems for logic circuits]. Avtomatika i telemekhanika [Automation and Remote Control], no. 2, p. 127. (In Russian)

33. LitikovI. P., Sogomonyan Y. S. (1985) Testovo-^nktsional'noye diagnostirovaniye tsifrovykh ustroystv i system [Test-functional diagnostics of digital devices and systems]. Avtomatika i telemekhanika [Automation and Remote Control], no. 3, pp. 111-121. (In Russian)

Статья представлена к публикации членом редколлегии Д. В. Ефановым Поступила в редакцию 10.02.2021, принята к публикации 9.03.2021

ПАШУКОВ Артем Валерьевич — ассистент кафедры «Автоматика, телемеханика и связь на железнодорожном транспорте» Российского университета транспорта (РУТ (МИИТ)) art_pash@mail.ru

© Пашуков А. В., 2021

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