2014 Электротехника, информационные технологии, системы управления № 11 УДК 519.1(075.8)+510.6(075:8)
С.Ф. Тюрин
Пермский национальный исследовательский политехнический университет,
Пермь, Россия
ПОВЫШЕНИЕ ДОСТОВЕРНОСТИ ФУНКЦИОНИРОВАНИЯ ЛОГИЧЕСКИХ ЭЛЕМЕНТОВ LUT FPGA
Описывается предложенный подход к повышению достоверности функционирования логических элементов программируемых логических интегральных схем (ПЛИС) FPGA (field-programmable gate array) - LUT (Look Up Table путем рабочего (функционального) контроля. Доказывается, что путем использования второй, незадействованной на данном наборе входных переменных половине дерева передающих транзисторов можно эффективно контролировать вычисления заданных настройкой конфигурационной памяти SRAM (Static Random Access Memory) логических функций. При этом избыточность составляет ориентировочно от 50 до 80 %, что позволяет получить значительный выигрыш в достоверности. Если же учитывать дополнительно сложность настройки, избыточность LUT оценивается интервалом 17-10 %. Использование разработанного оригинального подхода для тестового контроля предполагает избыточность порядка 10 % и даже менее.
Ключевые слова: достоверность функционирования, логический элемент ПЛИС FPGA - LUT, рабочий контроль, тестовый контроль, интенсивность отказов (сбоев), вероятность обнаружения ошибок, конфигурационная память ПЛИС FPGA - SRAM.
S.F. Tyurin
Perm National Research Polytechnic University, Perm, Russian Federation INCREASING THE RELIABILITY OF THE LUT FPGA OPERATION
In the article is proposed increasing of the LUT FPGA reliability by using by way of using the second-half of the tree of the transmitting transistors. Complexity and authenticity of functioning s is evaluated. The effectiveness of the proposed approach shows.
Keywords: reliability, logic element, LUT, FPGA, ChLUT, decking, authenticity of functioning.
Введение. Применяемые в настоящее время логические элементы (ЛЭ) программируемых логических интегральных схем (ПЛИС, PLD) типа FPGA (field-programmable gate array) [1] - это постоянные запоминающие устройства ПЗУ (называемые также LUT - Look Up Table), реализованные на мультиплексоре, входы данных которого настраиваются так называемыми конфигурируемыми ячейками оперативной памяти SRAM (static random access memory) [1]. На рис. 1 изображен
логический элемент ПЛИС типа FPGA на 4 входных переменных, SRAM - ячейки конфигурационной памяти, в которую записывается таблица истинности требуемой логической функции, А, В, С, D - входные переменные, которые, как и выход OUT, коммутируются с помощью конфигурируемых матриц межсоединений, не изображенных на рис. 1.
Рис. 1. Транзисторная схема LUT с числом входов n = 4 (мультиплексор 16-1)
В процессе вычисления заданной логической функции в дереве передающих транзисторов LUT для установленного на входах А, В, С, D набора активируется одна из 2n цепочек со входа на выход и с соответствующей этому набору ячейки SRAM значение функции через выходной инвертор устанавливается на выходе элемента OUT.
В высоконадежных приложениях требуются цифровые устройства с контролем выполнения операций [2-9]. В обычных ПЛИС такой контроль не предусмотрен. Традиционно контроль во время функционирования (рабочий контроль) с целью проверки правильности вычислений реализуется путем введения большой избыточности, например, путем дублирования аппаратуры. Попробуем предложить и исследовать менее затратные варианты контроля.
Рабочий контроль LUT путем использования второй половины дерева передающих транзисторов. В дереве передающих транзисторов (см. рис. 1) имеются две половинки, подключаемые старшей пере-
менной D. Активная цепочка транзисторов всегда полностью находится в одной из половин. Другая половина как бы «отдыхает».
Попробуем использовать для контроля активной цепочки цепочку в другой половине дерева передающих транзисторов, которая «не работает» в данный момент. Эта цепочка почти полностью «активная», за исключением последнего, «старшего» транзистора. Так, для набора 0001 (старшие разряды справа - А, В, С, D) это будет своего рода альтернативная цепочка 0000. Теперь, если подключить ее к настроечному входу, соответствующему набору 0001, то перед последним транзистором можно сравнить логические уровни этих двух цепочек.
Однако нельзя просто так «замыкать» два настроечных входа -выходы SRAM. Но это можно сделать, отключая выходы SRAM неиспользуемой в данный момент половины дерева дополнительными группами «отключающих» транзисторов, управляемыми старшей переменной. Получаем схему (рис. 2).
Рис. 2. Рабочий контроль LUT путем использования второй половины дерева передающих транзисторов
На рис. 2 реализован контроль выхода LUT с использованием транзисторов Тс1, Тс2: один из «старших» транзисторов дерева проверяется непосредственно, другой - на соответствующем наборе, активирующем его. На рис. 2 схема сложения по модулю два реализована на основе LUT с n = 2, настроенного на реализацию константами.
Оценим сложность такого контроля. Логический элемент на n переменных (LUTn) без учета коммутаций входных переменных оценивается следующим образом. Транзисторов в дереве передающих транзисторов [1] на n переменных (на рис. 1-4 - переменных) насчитывается всего
Vurn = 2n+1 - 2, n > 2, (1)
так, для n = 4 (см. рис. 1) имеется 30 передающих транзисторов в дереве.
С учетом инверторов по входам переменных (2n транзисторов), выходных инверторов (в каждом 2 транзистора) получим всего в дереве LUTn:
LtrLUTn = 2"+1 - 2 + 2n + 2. (2)
Преобразуя и учитывая сложность SRAM [1] (6 транзисторов) с выходными инверторами (в каждом по два транзистора), получим
LsRAM-trLUTn = 2"+1 + 2n + 8 • 2n. (3)
Сложность схемы LUT с традиционным контролем путем дублирования (опять же - без учета коммутаций переменных) оценивается двукратной избыточностью + учитывается сложность схемы сравнения:
Wlut" = 2(2n+1 + 2n + 8 • 2n ) +16. (4)
Оценим избыточность дерева передающих транзисторов для контроля путем использования второй половины дерева передающих транзисторов с учетом только инверторов переменных.
Вводятся дополнительно 2n транзисторов отключения SRAM «неработающей» половины дерева, что позволяет подавать сигнал настройки от рабочей к контролирующей половине дерева, кроме того, учитываем сложность схемы сравнения и получим:
_ _ 2n+1 + 2n + 2n +16
ÖG-LUTn _ 2n+1 + 2n " (5)
График изменения (5), построенный в СКМ «Маткад», представлен на рис. 3.
Рис. 3. График изменения (5) в зависимости от числа переменных LUT
Так, при n = 4 получаем избыточность порядка 80 %. При увеличении n избыточность становится близка к 50 %. Но при дублировании (4) получаем больше 100 %!
При учете памяти настройки (SRAM) получим
_ _ 2n+1 + 2n + 2n +16 + 8 • 2n
°SRAM+C-LUTn _ 2n+1 + 2n + 8 • 2П .
График изменения (6), построенный в СКМ «Маткад» представлен на рис. 7.
Рис. 4. График изменения (6) в зависимости от числа переменных LUT
Так, при n = 4 получаем избыточность всего порядка 17 %. А при увеличении n избыточность вообще становится близка к 10 %!
Оценка достоверности контроля дерева LUT путем использования второй половины дерева передающих транзисторов. Вероятность безотказной работы дерева (без учета SRAM) LUTn при экспоненциальной модели отказов с учетом (6) описывается выражением:
Pc-LUTn (f ) = ,-(2"+1 +2n+2n " , (7)
где X - интенсивность отказов транзистора, t - время, n - число разрядов LUT.
В случае контроля LUT путем использования второй половины дерева передающих транзисторов вероятность Ррр ситуации, когда объект С-LUT работоспособен и распознается как работоспособный, определяется как
Ppp - C-LUTn (t) = e-(2"+1 +2П+2П )Xt-e"161t, (8)
что учитывает 16-транзисторную схему сложения по модулю два.
Вероятность Рнн ситуации, когда объект С-LUT не работоспособен и распознается как неработоспособный (происходит несравнение выходного сигнала), определяется как
2n+I+2" v t IX . t
Рнн - c-LUTn (t) = 2(1 - * 1 2 J )e 1 2 J ■ e"(16+2n)Xt, (9)
2П+1 ,лП
-(2 +2 г
где е 2 - вероятность безотказной работы половины дерева передающих транзисторов.
Схема сложения по модулю два, инверторы входных переменных учитываются выражением е~(-16+2")Х' •.
Таким образом, достоверность контроля путем использования второй половины дерева передающих транзисторов равна сумме (8), (9):
2"+1 +2" \ ( 2"+1+2",, 1А. • * — - 1А. • 1
P- c-lutw(t) = e~(2"+I+2и+2"+16)Ы + 2(1 -e 1 2 j )e 1 2 j .e"^2"^. (10)
Графики изменения достоверности функционирования дерева LUT (PI) и дерева с контролем С-LUT (Р2) представлены на рис. 5-8.
Рис. 5. График изменения достоверности функционирования дерева LUT (Р1) P1-LUTn (t) = e-(2"+1+2")1t и дерева с контролем С-LUT (Р2-выражение 19): n = 4, l = 10-8
Рис. 6. График изменения достоверности функционирования дерева LUT (Р1) и дерева С-LUT (Р2): n = 5, l = 10-8
Рис. 7. График изменения достоверности функционирования дерева LUT (Р1) и дерева С-LUT (Р2): n = 6, l = 10-9
Рис. 8. График изменения достоверности функционирования дерева LUT (Р1) и дерева С-LUT (Р2): n = 7, l = 10-9
Таким образом, получаем выигрыш в достоверности по отношению к неконтролируемому дереву. Вероятность обнаружения ошибок в дереве, если они есть, оценивается выражением
( ) =
2e
2 +2'
M
• (1 - e
2 +2n
M
)
1 - e"
(11)
Так, график изменения вероятности обнаружения ошибок в одной из половин дерева LUT представлен на рис. 9.
2
2
Рис. 9. График изменения вероятности обнаружения ошибок в одной из половин дерева LUT (Р0): t = 100, l = 10-5
Таким образом, при высокой интенсивности отказов (сбоев) и больших значениях n вероятность обнаружения ошибок резко уменьшается, что вызвано увеличением вероятности отказов (сбоев) в обеих половинах дерева транзисторов.
Тестовый контроль LUT путем использования второй половины дерева передающих транзисторов. В случае тестового контроля дополнительные «отключающие» транзисторы становятся ненужными (рис. 10), а для проверки LUT задается таблица тестовой функции, не зависящей от старшей переменной D, для сравнения результатов вычислений в двух половинах дерева.
Рис. 10. Тестовый контроль LUT путем использования второй половины дерева передающих транзисторов
Тогда сложность тестового контроля дерева оценивается выражением
Ô
TC-LUT"
2"+1 + 2n +16 2n+1 + 2n '
(12)
График изменения относительной сложности тестового контроля путем использования второй половины дерева передающих транзисторов представлен на рис. 11, а с учетом сложности настройки SRAM -на рис. 12.
п
Рис. 11. График изменения относительной сложности тестового контроля (12) в зависимости от числа переменных LUT
4 5 б 7 S 9 10
Рис. 12. График изменения относительной сложности
2n+1 + 2n +16 + 8 • 2n
тестового К°нтроля SsRAM+TC-LUTn _ 0n+1 0-
2 + 2n + 8 • 2
с учетом SRAM в зависимостиот числа переменных LUT
Таким образом, избыточность при тестовом контроле уменьшается при увеличении n с 4 до 10 от 40 % до единиц процента, а с учетом настройки - от 9 % до долей процента. При этом ускоряется тестирование, поскольку сигнал сравнения формируется непосредственно в LUT.
Сравнение контроля LUT путем использования второй половины дерева передающих транзисторов с контролем дубли-
рованием. При дублировании LUT без учета ячеек SRAM (учтем только настроечные инверторы) получим достоверность:
PMubie-LUTn(0 _ P 1(n) _ К20"'+2n+22+ 2(1 -e"^+2n+22)bt)e^+1+2n+22)bt]e"16b'. (13)
n(t) _ e
— ^-(2n+1 +2n+3 • 2n +16)bt
+ 2
1 - e
¡n+1 +2n Л \ / 2n+1+2n
-(16+2n+2 • 2n )Ь t
(14)
v y
При сравнении с (14) получим следующий график (рис. 13).
Рис. 13. Графики сравнения достоверности контроля путем дублирования дерева передающих транзисторов (Р1) и путем использования второй половины дерева передающих транзисторов (Р2): n = 4, l = 10-9
Таким образом, дублирование дает существенно большую достоверность. Однако проанализируем, чем это достигается. Оценим своего рода «удельное» значение увеличения достоверности функционирования без учета ячеек SRAM (учтем только настроечные инверторы) - на один дополнительный транзистор:
U
D-Duble-LUTn
n+1
(t) _ U 1(n) _
[e"2• (2"+1 +2n+2 • 2n )Ь1 + 2(1 — e_(2"+1 +2n+2 • 2" • t )e_(2"+1 +2n+2 • 2" )Ьt ]e~16 •X• t — e_(2"+1 +2n+2 • 2n )Ьt (15)
- e
2 + 2n + 2^2n +16
Ur
n (t) _ U 2(n) _
[e
-(2"+1+2n+3 • 2n +16)Ь t
+ 2(1 — e
)e
-(16+2n+2 • 2n ) • Ь t
] — e
-(2n+1+2n+2 • 2n )Ь t
(16)
2n +16
Ь t
2
2
e
e
2 +2
2 +2
Ь t
Ь t
2
2
e
Графики сравнения удельного (в расчете на один дополнительный транзистор) прироста достоверности путем дублирования (Ш) и путем использования второй половины дерева передающих транзисторов (И2) представлены на рис. 14.
Рис. 14. Графики сравнения удельного (в расчете на один дополнительный транзистор) прироста достоверности путем дублирования (U1) и путем использования второй половины дерева передающих транзисторов (U2): t = 10 000 ч, l = 10-8
Таким образом, начиная с n = 6 при указанных параметрах (см. рис. 14), контроль путем использования второй половины дерева передающих транзисторов в этом смысле эффективнее - один транзистор такого контроля дает больший прирост достоверности.
Однако учтем сложность настройки - ячеек SRAM и сравним выражения:
^D-Duble-LUTn (0 = P 1(n) = ^^+ 2(1 - +2n+8 ГГ]e"16 ^. (17)
PD - C-LUTn (t) = e-<2"+1+2n+9-2"+16)ht + 2(1 - e 1 2 j )e [ 2 ^ • e-(16+2n+S2">u. (18) При сравнении с (17) и (18) получим графики (рис. 15-18).
n+1 . -n
n+1 . -n
^^ ^ t
L t
t
Рис. 15. Графики сравнения достоверности контроля путем дублирования дерева передающих транзисторов с учетом сложности настройки - ячеек SRAM (Р1) и путем использования второй половины дерева передающих транзисторов (Р2): n = 4, l = 10-9
t
Рис. 16. Графики сравнения достоверности контроля путем дублирования дерева передающих транзисторов с учетом сложности настройки - ячеек SRAM (Р1) и путем использования второй половины дерева передающих транзисторов (Р2): n = 5, l = 10-10
Рис. 17. Графики сравнения достоверности контроля путем дублирования дерева передающих транзисторов с учетом сложности настройки - ячеек SRAM (Р1) и путем использования второй половины дерева передающих транзисторов (Р2): n = 6, l = 10-11
Рис. 18. Графики сравнения достоверности контроля путем дублирования дерева передающих транзисторов с учетом сложности настройки - ячеек SRAM (Р1) и путем использования второй половины дерева передающих транзисторов (Р2): n = 7, l = 10-11
Таким образом, при учете сложности настройки - ячеек SRAM получаем выигрыш перед дублированием в достоверности функционирования LUT с контролем.
Контроль дерева LUT путем использования второй половины дерева передающих транзисторов с дублированием настройки. Предлагаемый вариант рабочего контроля LUT путем использования второй половины дерева передающих транзисторов с дублированием настройки представлен на рис. 19. Не дублируются инверторы переменных и само дерево передающих транзисторов. Дублирующая настройка также имеет дополнительные транзисторы для ее отключения сигналами старшего адреса.
Рис. 19. Рабочий контроль LUT путем использования второй половины дерева передающих транзисторов с дублированием настройки
Сравним выражения без учета и с учетом дублирования настройки (учитываем дополнительную сложность ячеек SRAM - 6 транзисторов, инвертор - 2 транзистора, транзисторы отключения настройки - всего 9 по каждому входу настройки):
, (t ) = P2(t ) = е
— „-(2n+1+2n+9-2n +16)>4
+ 2
1 - е
,n+1 лn \ \
-(16+2n+8-2n )>t (19)
n+1 . nn
2'" '+2
2
е
е
P
D - C+2SRAM-LUTn
(t) =P3(t) =
= в~ (2 +2n+2-9-2n +16)X-t + 2
1 - e
\ (2n+1
e
-(16+2n) X-1
V У
Построим графики сравнения (рис. 20-24).
Рис. 20. Графики сравнения достоверности контроля путем использования второй половины дерева передающих транзисторов с учетом ячеек SRAM (Р2) и путем использования второй половины дерева передающих транзисторов при дублировании ячеек SRAM (Р3): n = 4, l = 10-8
Рис. 21. Графики сравнения достоверности контроля путем использования второй половины дерева передающих транзисторов с учетом ячеек SRAM (Р2) и путем использования второй половины дерева передающих транзисторов при дублировании ячеек SRAM (Р3): n = 5, l = 10-8
(20)
2
+9- 2n IX-1
+9- 2n IX-1
2
2
e
Рис. 22. Графики сравнения достоверности контроля путем использования второй половины дерева передающих транзисторов с учетом ячеек SRAM (Р2) и путем использования второй половины дерева передающих транзисторов при дублировании ячеек SRAM (Р3): n = 6, l = 10-8
0.9995 -1-1-1-1--
0 200 400 600 800 1000
t
Рис. 23. Графики сравнения достоверности контроля путем использования второй половины дерева передающих транзисторов с учетом ячеек SRAM (Р2) и путем использования второй половины дерева передающих транзисторов при дублировании ячеек SRAM (Р3): n = 7, l = 10-8
Таким образом, получаем выигрыш в достоверности, но он тигается значительной избыточностью.
дос-21
Контроль дерева LUT путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных. Легко видеть, что кроме дублирования настройки можно ввести и дублирование переменных - первой половиной дерева будут управлять одни инверторы (по переменным A, B, C, D), а второй - другие, дополнительные инверторы по переменным A', B\ C, D' (рис. 24), кстати, тут инверторов будет даже меньше, чем 2n, всего 2n - 1.
Тогда дублируются и ячейки памяти с соответствующими инверторами по их выходам и инверторы переменных:
PD - C+2SRAM + NOT-LUTn
(t ) = P 2(t ) =
(
_ g-(2"+1+2(2n-1)+2 ■ 9 ■ 2n +16)X-1 + 2
1 - e
2"+' +2(2n-1) + 2
^ ( 2n+1 +2(2n-1)
-(16)X-1
(21)
Следовательно, экономия по сравнению с обычным дублированием составляет половину дерева передающих транзисторов.
Рис. 24. Рабочий контроль LUT путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных
2
e
e
Сравним дублирование (Р1) - выражение (15) и использование второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р2) - выражение (19) (рис. 25-28).
Рис. 25. Графики сравнения достоверности путем дублированием (Р1) и путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р2): п = 4,1 = 10-9
Рис. 26. Графики сравнения достоверности путем дублированием (Р1) и путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р2): п = 5,1 = 10-9
Рис. 27. Графики сравнения достоверности путем дублированием (Р1) и путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р2): п = 6,1 = 10-10
Рис. 28. Графики сравнения достоверности путем дублированием (Р1) и путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р2): п = 7,1 = 10-8
Таким образом, достаточно меньшими средствами получаем большую достоверность.
4 4 4 4 5
О 2 10 4 10 6 10 3 10 1 -10Г
Рис. 29. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5): n = 4, l = 10-8
О 2000 4000 6000 8000 1 и"
t
Рис 30. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5): n = 5, l = 10-8
Рис. 31. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5): n = 6, l = 10-8
Рис. 32. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5): n = 7, l = 10-8
Однако внимательное рассмотрение временного диапазона показывает, что дублирование все-таки дает выигрыш, но на относительно небольшом временном интервале (рис. 33-37).
Рис. 33. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5): n = 7, l = 10-12
Рис. 34. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5): n = 7, l = 10-9
Рис. 35. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5) n = 7, l = 10-10
Рис. 36. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5) n = 4, l = 10-10
1
0.999997 0.999994
Pl(t)
.999991
P2(t)
.999988
P3(t)
■ ' 0.999985
P40)
P5(t) 0.999979 0.999976 0.999973
0.99997
0 1000 2000 3000 4000 5000
Рис. 37. Графики сравнения достоверности LUT (Р1), LUT с контролем путем использования второй половины дерева передающих транзисторов (Р2), LUT с контролем дублированием (Р3), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки (Р4), LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки и инверторов переменных (Р5) n = 4, l = 10-10
Выводы. Таким образом, рабочий контроль дерева LUT путем использования второй, незадействованной на данном наборе входных переменных половине передающих транзисторов требует избыточности от 50 до 80 %, а при числе переменных больше 4 позволяет получить выигрыш в достоверности. С учетом сложности настройки (статической памяти SRAM и соответствующих инверторов, без средств коммутации) избыточность оценивается интервалом 17-10 %. Использование такого подхода для тестового контроля предполагает избыточность порядка 10 % и даже менее.
Анализ показал, что обычное дублирование с учетом настройки оказывается лучше недублированного LUT на относительно небольшом временном интервале, за которым дублирование буквально «проваливается». LUT с контролем путем использования второй половины дерева передающих транзисторов лучше неконтролируемого LUT, LUT с контролем путем использования второй половины дерева передающих транзисторов с дублированием настройки лучше LUT с контролем путем использования второй половины дерева передающих транзисторов, LUT с контролем путем использования второй половины
дерева передающих транзисторов с дублированием настройки и инверторов переменных лучше всех вариантов.
Для обеспечения надежности настройки (SRAM) и инверторов входных переменных, например, возможно также и использования методов [10-14]. Целесообразны дальнейшие исследования с учетом этих подходов и предложенных в статье.
Библиографический список
1. Цыбин С. Программируемая коммутация ПЛИС: взгляд изнутри [Электронный ресурс]. - URL: http://www.kit-e.ru/articles/plis/ 2010_11_56.php (дата обращения: 2.11.2013).
2. Tyurin S.F. Retention of functional completeness of Boolean functions under "failures" of the arguments // Automation and Remote Control. -1999. - 60 (9 Part 2). - P. 1360-1367.
3. Адаптация FPGA до вщмови лопки / С.Ф. Тюрш, О. А. Громов, А.В. Греков, I.C. Понуровскш // Радюелектронш i комп'ютерш системы. - 2013. - № 1(60). - С. 177-182.
4. Городилов А.Ю., Понуровскш 1.С., Тюрш С.Ф. Повышение отказоустойчивости FPGA путем реконфигурации работоспособных элементов // Радюелектронш i комп'ютерш системы. - 2013. - № 1(60). -С.172-176.
5. Тюрин С.Ф. Логические элементы с избыточным базисом // Вестник Перм. ун-та. Сер. Математика. Механика. Информатика. -2013. - № 4. - С. 42-59.
6. Функционально-полный толерантный элемент: пат. № 2496227 Рос. Федерация / С.Ф. Тюрин, О.А. Громов, А.В. Греков, А.А. Сулей-манов. Опубл. БИ. 20.10.13, № 29.
7. Tyurin S.F., Grekov A.V., Gromov O.A. The principle of recovery logic FPGA for critical applications by adapting (3) - P. 328-332. DOI: 10.5829/idosi.wasj.2013.26.03.13474
8. Tyurin S.F., Gromov O.A. A residual basis search algorithm of fault-tolerant programmable logic integrated circuits // Russian Electrical Engineering. - 2013. - 84 (11). - P. 647-651. DOI: 10.3103/S1068371213110163
9. Tyurin S., Kharchenko V. Redundant Basises for Critical Systems and Infrastructures General Approach and Variants of Implementation // Proceedings of the 1st Intrenational Workshop on Critical Infrastructures Safety and Security; Kirovograd, Ukraine 11-13 May, 2011 / V. Kharchenko, V. Tagarev (edits). - Vol. 2. - 2011. - Р. 300-307.
10. Тюрин С.Ф. Надежность систем автоматизации: учеб. пособие. - Пермь: Изд-во Перм. нац. исслед. политехн. ун-та, 2012. - 262 с.
11. Donald C. Mayer, Ronald C. Lacoe. Designing IntegratedCircuits to Withstand Space Radiation [Электронный ресурс]. - Vol. 4, № 2. Crosslink -URL: http://www.aero.org/publications/crosslink/summer2003/06.html
12. Тюрин С. Ф., Морозов А. Н. Отказоустойчивая ячейка памяти с использованием функционально-полных толерантных элементов // Вестник Перм. ун-та. Сер. Математика. Механика. Информатика. -
2012. - № 4. - С. 68-75.
13. Тюрин С.Ф., Громов О.А., Греков А.В. Функционально-полный толерантный элемент ФПТ // Научно-технические ведомости Санкт-Петербург. гос. политехн. ун-та. - 2011. - № 1(115). - С. 24-31.
14. Kamenskih, A.N., Tyurin, S.F. Application of redundant basis elements to increase self-timedcircuits reliability // Proceedings of the 2014 IEEE North West Russia Young Researchers in Electrical and Electronic Engineering Conference. - ElConRusNW 2014.
References
1. Tsybin S.A. Programmiruemaia kommutatsiia PLIS: vzgliad iznutri [Programmable switching of the programmable logic device look from within], available at: http://www.kit-e.ru/articles/plis/ 2010_11_56.php (accessed 2 November 2013).
2. Tyurin S.F. Retention of functional completeness of Boolean functions under "failures" of the arguments. Automation and Remote Control, 1999, no. 9, pp 1360-1367.
3. Tiurin S.F., Gromov O.A., Grekov A.V., Ponurovskii I.S. Adaptatsiia FPGA do vidmovi logiki [Adaptation of Field-Programmable Gate Array to the refuse of logic]. Radioelektronni i komp'iuterni sistemy,
2013, no. 1(60), pp. 177-182.
4. Gorodilov A.Iu., Ponurovskii I.S., Tiurin S.F. Povyshenie otkazoustoichivosti FPGA putem rekonfiguratsii rabotosposobnykh elementov [Increase of fault tolerance of Field-Programmable Gate Array by reconfiguration of efficient elements]. Radioelektronni i komp'iuterni sistemy, 2013, no. 1(60), pp. 172-176.
5. Tiurin S.F. Logicheskie elementy s izbytochnym bazisom [Logical elements with excess basis]. Vestnik Permskogo natsional'nogo
issledovatel'skogo politekhnicheskogo universiteta. Matematika. Mekhanika. Informatika, 2013, no.4, pp. 42-59.
6. Tiurin S.F., Gromov O.A., Grekov A.V., Suleimanov A.A. Funktsional'no-polnyi tolerantnyi element [Functionally complete tolerant element], Patent RF,no. 2496227.
7. Tyurin S.F., Grekov A.V., Gromov O.A. The principle of recovery logic FPGA for critical applications by adapting (3), pp. 328-332. DOI: 10.5829/idosi.wasj.2013.26.03.13474
8. Tyurin S.F., Gromov O.A. A residual basis search algorithm of fault-tolerant programmable logic integrated circuits. Russian Electrical Engineering, 2013, no. 84 (11), pp. 647-651. DOI: 10.3103/S1068371213110163
9. Tyurin S.F., Kharchenko V.K. Redundant Basises for Critical Systems and Infrastructures General Approach and Variants of Implementation. Proceedings of the 1st Intrenational Workshop on Critical Infrastructures Safety and Security. Kirovograd, 2011, vol. 2, pp. 300-307.
10. Tiurin S.F. Nadezhnost' sistem avtomatizatsii [Reliability of systems of automation]. Izdatel'stvo Permskogo Natsional'nogo Issledovatel'skogo Politekhnicheskogo Universiteta, 2012, 262 P.
11. Donald C. Mayer, Ronald C. Lacoe. Designing IntegratedCircuits to Withstand Space Radiation. vol.4, no 2. Crosslink available at: http://www.aero.org/publications/crosslink/summer2003/06.html (accessed 13 December 2013).
12. Tiurin S.F., Morozov A.N. Otkazoustoichivaia iacheika pamiati s ispol'zovaniem funktsional'no-polnykh tolerantnykh elementov [Failure-safe cell of memory with use of functionally complete tolerant elements]. Vestnik Permskogo natsional'nogo issledovatel'skogo politekhnicheskogo universiteta. Matematika. Mekhanika. Informatika, 2012, no. 4, pp. 68-75.
13. Tiurin S.F., Gromov O.A., Grekov A.V. Funktsional'no-polnyi tolerantnyi element FPT [Functionally complete tolerant element]. Nauchno-tekhnicheskie vedomosti Sankt-Peterburgskogo Gosudarst-vennogo Politekhnicheskogo Universiteta. 2011, no. 1(115), pp. 24-31.
14. Kamenskih, A.N., Tyurin, S.F. Application of redundant basis elements to increase self-timedcircuits reliability. Proceedings of the 2014 IEEE North West Russia Young Researchers in Electrical and Electronic Engineering Conference. ElConRusNW 2014.
Сведения об авторе
Тюрин Сергей Феофентович (Пермь, Россия) - заслуженный изобретатель Российской Федерации, доктор технических наук, профессор кафедры автоматики и телемеханики Пермского национального исследовательского политехнического университета (614990, Пермь, Комсомольский пр., 29, e-mail: [email protected]).
About the author
Tyurin Sergey Feofentovich (Perm, Russian Federation) is Honored Inventor of the Russian Federation, Doctor of Technical Sciences, Professor at the Department of Automation and Telemechanics Perm National Research Polytechnic University (614990, Perm, 29, Komsomolsky pr., e-mail: [email protected]).
Получено 12.09.2014