УДК 681.3
С.Ф. Тюрин, А.В. Греков, В.С. Коржев
СКОЛЬЗЯЩЕЕ РЕЗЕРВИРОВАНИЕ С ВОССТАНОВЛЕНИЕМ НА ОСНОВЕ ЭЛЕМЕНТОВ С ИЗБЫТОЧНЫМ БАЗИСОМ
Одним из динамично развивающихся в настоящее время направлений интегральной технологии являются программируемые логические интегральные схемы - ПЛИС [1].
ПЛИС ( programmable logic device, PLD) - это программируемая большая интегральная схема (ПБИС), интегральная схема с программируемой структурой (ИСПС), в которую загружается файл конфигурации универсальных аппаратных средств, необходимый пользователю [1].
ПЛИС FPGA (field-programmable gate array) -программируемые пользователем вентильные матрицы (ППВМ), имеющие множество логических элементов, конфигурируемых пользователем логических блоков (КЛБ), и гибкую архитектуру [1], применяются, например при построении коммутаторов и сетевых мостов с высокой пропускной способностью [2].
Тенденция дальнейшего развития технологии ПЛИС - введение блоков встроенной диагностики, например логических анализаторов для доступа к любому элементу работающей схемы без затрат трассировочных ресурсов схемы.
Сложность таких ПЛИС - сотни и тысячи программируемых логических элементов. Время загрузки файла конфигурации объемом до одного мегабайта составляет от нескольких десятков до сотен миллисекунд. Стоимость одной ПЛИС - несколько сотен рублей. В перспективе на ПЛИС планируется строить перестраиваемые, саморезервируемые системы с автоматической адаптацией функциональных блоков под требуемый алгоритм. Однако в настоящее время методы повышения отказоустойчивости ПЛИС ориентированы, в основном, на восстановление блоков памяти за счет резервных ячеек.
В связи с этим одной из важных проблем повышения надежности, отказоустойчивости программируемых логических интегральных схем типа FPGA, используемых в системах ответственного, критического применения, является разработка методов и средств восстановления логики -конфигурируемых логических блоков [3].
Различают пассивную и активную отказоустойчивость [4-7]. Пассивная отказоустойчивость основывается на структурном резервировании, при этом обеспечивается маскирование отказов.
Активная отказоустойчивость подразумевает менее затратное резервирование, а также процедуры диагностирования и реконфигурации массива работоспособных элементов. Одним из методов повышения активной отказоустойчивости, в т. ч. логики ПЛИС, является скользящее резервирование [7].
Скользящее резервирование при п основных элементах и т резервных обеспечивает работоспособность в случае, если работоспособно подмножество Я элементов мощностью I ЯI > п. Переключающее устройство (ПУ) при отказе элемента подключает оставшиеся резервные.
Для экспоненциальной модели отказов вероятность безотказной работы описывается выражением [7]:
п+т
Рееср(0 = IСт • е - • [1 -^Гт-' • (1)
1=п
Здесь РСССР - вероятность безотказной работы системы со скользящим резервированием (СССР); ( - интенсивность отказов переключающего устройства ПУ; t - время.
Например п = 10, т = 5, тогда
Рссср(0 = 1 с'15 • е'-[1 -е "]15-' • ¿-V. (2)
1=10
Раскроем сумму:
РсссР 0 ) = [ СС-е-10-(1-е~х' У5-10 + +СС-е-1Ш(1- е-( У5-11 + +СС-е-12('(1- е1 У5-12+ (3)
+СС-е-13('(1- е-' У5-53 + +СС-е-14('(1- е- У5-54 + +С1155-е-15(' -1 -е-(1)15-15 ]•
То есть из 15 элементов должны быть работоспособны любые 10.
График зависимости РСССР от числа резервных элементов для п = 10 при X = 10-6 представлен на рис. 1.
час
Рис. 1. Зависимость РСССР от числа резервных элементов для n = 10 при А = 106
P(j, 10, 5, t, А); P(j, 10, 6, t, А); P(j, 10, 6, t, А);
P( j, 10, 8, t, А); P( j, 10, 9, t, А)
Восстановление возможно до тех пор, пока имеются неиспользуемые работоспособные ячейки (реально используется 70-80 % функциональных возможностей ПЛИС, а то и меньше!).
Упрощение диагностирования возможно за счет введения пассивно-активной отказоустойчивости, когда фиксируется отказ одного из трех, например, каналов, в котором начинается замена элементов на резервные с контролем функционирования, до тех пор, пока не произойдет сравнение с работоспособными каналами. При этом необходимо допущение, что два работоспособных канала за время реконфигурации отказавшего канала не откажут.
Постановка задачи
Цель статьи - разработка и исследование подхода к повышению отказоустойчивости КЛБ ПЛИС на основе скользящего резервирования логических элементов с избыточным базисом.
При этом рекомендуется использование ограниченных возможностей отказавших ячеек ПЛИС, т. е. своего рода «внутреннее» резервирование. В [8-10] предлагается создание избыточных конфигурируемых базисов, сохраняющих функциональную полноту при заданной модели отказов и обеспечивающих работоспособность на подмножестве базисов подмножества элементов. Такие элементы названы функционально полными толерантными (ФПТ).
В этом случае отказавшие элементы из системы со скользящим резервированием остаются в резерве, если они сохраняют базис, и могут быть
использованы, но для реализации исходного базиса их потребуется больше.
Рассмотрим в качестве элементов системы со скользящим резервированием и восстановлением (СССРВ) логические элементы с избыточным базисом - функционально полные толерантные элементы, сохраняющие функциональную полноту при заданной модели отказов.
Предлагается пассивно-активная отказоустойчивость - мажоритарное скользящее резервирование с восстановлением на основе ФПТ элементов (рис. 2).
На рисунке указаны три канала КЛБ и троированные мажоритарные элементы (МЭ), в каждом канале используется скользящее резервирование с восстановлением на основе ФПТ элементов.
Экспериментальная часть
Функционально полный толерантный элемент для модели константных однократных отказов входов реализует функцию Х1 х2 у хз Х4 или, что то же самое, функцию (х1 у х2)(х3 v х4) [8-10].
Все модификации /4383 = х1 х2 у хз х4 для однократных константных отказов входов х2 у хз х4, х1 у хз х4, х1 х2 у х4, х1 х2 у хз представляют собой функции трех аргументов /31, /7, обладающие функциональной полнотой, и функцию /1 двух аргументов - известный базис Вебба (стрелка Пирса хз х4, х1 х2. Базис сохраняется и при замы-
Рис. 2. Пассивно-активная отказоустойчивость
кании соседних входов, например, второго входа с третьим: х1 х2 у х2 х4 = х2 (х1 у х4).
Восстановление отказавших основных (резервных) элементов эквивалентно их увеличению при допущении, что они восстанавливаются по мере наступления отказов. Но для восстановления одного элемента надо несколько отказавших.
Так, если остаются базисы Вебба (стрелка Пирса^), х1 х2, хз х4, то для получения базиса
х1 х2 у хз х4 необходимо четыре элемента с таким базисом - два для реализации двух конъюнкций х1 х2, хз х4, один для двухместной операции ИЛИ-НЕ и один инвертор:
х1 х2 у хз х4. (4)
Если имеется один элемент с одним из базисов х2 у хз х4, х1 у хз х4, х1 х2 у х4, х1 х2 у хз, необходима декомпозиция, например, вида:
х1 х 2 у хз х4,
(5)
а это два элемента с базисом х1 х2, хз х4 и один элемент х1 у хз х4 - всего три. _ В_ случае нал_ичия_ максимальных базисов х2 у хз х 4 , х1 у хз х4 , х1 х2 у х4 , х1 х 2 у хз , для восстановления необходимо минимум три элемента.
Таким образом, восстановление_ отказавших элементов для ФПТ базиса х1 х2 у хз х4 эквива-
т
лентно дополнительным минимум
тов, максимум
элемен-
где [ ] (ЮТ) - ближайшее
меньшее натуральное число. Естественно, в общем случае для различных абстрактных базисов будет иметь место выражение:
т
где г - максимальное требуемое количество отказавших элементов для восстановления исходной функции.
Если из четырех отказавших элементов восстановится один, то увеличение вероятности безотказной работы будет
Р п6 „-9Л//1 „-'' \15-9 (Г\
доп = С15 • е (1 - е ) . (6)
Это значит, что схема работоспособна и при шести отказах. То есть новая формула минимальной вероятности безотказной работы будет иметь следующий вид:
с 11 '15 ->12
+0* • е
РсссЬЛ) = [С5 • е~101' (1 - е-У-
'(1-е-'')15-11 +
'(1-е~х')15-12 +
'(1 -е-х')15-1з + -14" ^ - е"-" ^15-^4 +
++-15 • е
+0 • е-
+<C^ е'
(7)
+<0 • е
+С6 • е
15''^ - е-"у5-15 +
9'Л „-" 155-9п „-Хп1
'(1-е-")15-9] •е-
Эта новая формула для необходимых четырех элементов для восстановления одного полного.
Если надо всего три, то приращение будет больше. Когда откажут три элемента, схема работоспособна, а из этих трех отказавших восстанавливают один. Потом отказывают еще два - их недостаточно для восстановления. При шести отказах подключается восстановленный, если отказывает еще один (седьмой - не восстановленный, а нормальный), то теперь отказавших три и из них восстанавливается еще один, т. е. схема будет работать при семи отказах:
Р
/А Г/^10 -10''л -X'\1: СССРмин(') = е С1 - е )
+С1
+с
+с
+с
• е '' (1-е-'' У:
• е-12'' (¡-е-'1')1-
'(1-е-")1'
-14''п 11-14
е (1-е )
(8)
'(1-е-'')1'
+С •е-9''(1-е-'')15-9
+с7
.e-ÍШ(l-e-Xí)15-8]• е~к''.
Количество «восстановленных» элементов (если для восстановления одного надо г отказавших) из количества т равно:
V =
(9)
Например, т = 5; г = 4; V = 1. То есть дополнительно можно парировать шестой отказ. Остаток будет
^ = т - г
В нашем случае ^ = 1.
1 < w < г -1.
(10)
(О)
Остатки могут пригодиться в дальнейшем при последующих отказах элементов из количества п.
Если не считать остатки, то количество
т
— используется для парирования V. допол-
_ Г _
нительных к т отказов. Например, т = 18; г = 4; V = 4. Значит, после отказа еще четырех элементов можно восстановить еще один элемент, т. е. еще будет парировано дополнительных отказов:
ряде случаев это возможно, например переход из трехэлементного базиса в двухэлементный). Получаем ряд:
; V =
; V =
(12)
В принципе «вложенность» дробей может быть большая, но парируется дополнительных отказов не более п. Считаем, что повторно отказавшие элементы не восстанавливаются (хотя в
. (13)
Это не что иное, как геометрическая прогрессия, но с выделением целой части
=е<и. (14)
Сумма показывает дополнительное число парируемых отказов без учета «остатков». Если учитывать «остатки», то
т т
— + т - г —
г г
или V =
т (1 - г) + т
_ г _
т (1 - г) + т
_ г _
(15)
т (1 - г) + т
_ г _ + т (1 - г) + т
г _ г _
т (1 - г) + т
_ г _
В первом приближении (для восстановления из т отказавших) получаем для v1:
п+т
РсссрСО = 2Хт -е- е-" Гт-'
[?] (16)
Ст+( • е~(п-3(1 - е+')т+3 е~к,1
^^ п+т V /
з=1
В случае дополнительных затрат на восстановление оказавших (в получаем:
п+т
Н
+У Ст+7 • е<п~1)и (I — е~и )т+/ ■ е~(Х" +Хв"
^^^ п+т ' '
м
Если дополнительные затраты имеют вид:
п+т
Рсссг(0 = ЕС'п+т ■ ■ (1 -Г" +
и
(18)
7=1
Xt \т+] "I — (^пу+^в)*
т; V =
V2 =
V2 =
т; V! =
vз =
то необходимо определить условия получения выигрыша бР за счет восстановления отказавших элементов при введении дополнительной общей избыточности ( .
в
Пусть задано значение выигрыша бР^, тогда
п+т
■еа'-(1-е-ьГт-1 +
1—П
Н „ * ^ (19)
7=1
п+т
Формула (19) моделируется для расчетов в СКМ «MathCad».
Анализ полученных результатов
На рис. 3 представлены результаты расчетов выигрыша в вероятности безотказной работы ПЛИС-ФПТ при различных параметрах СССРВ (рис. 4), где P(X), P1(X), P2(X) - значение при различных параметрах. Параметры моделирования (количество логических элементов и интенсивности отказов) основаны на показателях сложности и надежности типовых ПЛИС FPGA фирмы Altera.
б)
О 1x10 1 2x10 3 3x10 J 4x10 J 5x10 1 6x10 3 7x10 3 8x10 3 9x10 J 1x10"
0 1x10 2x10 3x10 4x10"° 5x10 SxlO 7x10 8x10 9x10" 1x10"'
Рис. 3. График выигрыша в вероятности безотказной работы ПЛИС-ФПТ:
а - при п = 100, т = 20, г = 4; б - при п = 100, т = 10, г = 4; в - при п = 100, т = 8, г = 4; г - при п = 10, т = 8, г = 4; Э - при п = 20, т = 8, г = 4; е - при п = 200, т = 8, г = 4
Рис. 4. Расчетные параметры СССР ПЛИС-ФПТ
Теперь найдем значение производной по I от функции выигрыша в вероятности безотказной работы ПЛИС (§Ртр) с помощью системы компьютерной математики MathCAD:
т+п
.m+n-i—l
X
xCL„ '(m + n-i)-i't-e~Ut • (1 -е" )m+n~1 x
xCj +1> • - e~uy+m~l x
xCiTn • (j + m) ■ еы +1 • eu<j-n) • (1 - e~u )j+m x
n+m
-{Y[t-e~Xt-e-Ut •(\-e-u)m-i+n-xx
-X-t \m—i+n .
<+„ (т -1 + п) - < • г • (1 - е-'")
На рис. 5 представлены результаты расчетов значения производной при заданных параметрах СССРВ (рис. 4)
Приравняем производную к нулю и найдем оптимальное значение I с помощью встроенной функции гоо^ /(х), х):
root (p(X), X) = 4,669 • 10-6, root (p1(X), X) = 4,691 • 10-6, root (p2(X), X) = 4,902 • 10-6.
Теперь, зная оптимальное значение X, вычислим максимальное значение вероятности безотказной работы на протяжении десяти тысяч часов при заданных параметрах (см. табл.).
Отсюда можно сделать вывод, что при n = 200, m = 8, r = 4 максимальное значение вероятности безотказной работы ПЛИС-ФПТ достигается:
если X =10-11, X = 1011 при X = 4,669-ШЛ
пу 'в г
если X =10-7, X = 107 при X = 4,69110-6,
пу в
если X = 105, X = 105 при X = 4,902-Ш-6.
пу в
Из соотношения (19) можно определить при заданной Хв возможность выигрыша. Преобразуем (19) для определения X :
i=n n+m
=tZc
-Ht
(X-e~h)
-It \ n+m-i
(21)
И
+Z Cmn:i-e /•=1
.-(n- i)Xt _ yn-j
Максимальное значение вероятности безотказной работы
X 5P тр
4,669-10-6 0,259
4,691^10-6 0,25
4,90240-6 0,181
Рис. 5. График производной при п = 200, т = 8, г = 4
р(Х) - значение 5Р'тр при п = 200, т = 8, г = 4, / = 10000, X = 10-11, Х = 10-11; р10Л - значение 5Р' при п = 200, т = 8,
пу 'в ' г V / тр г
г = 4, / = 10000, X = 10-7, X = 10-7; р2(Х) - значение 5Р'
пу в тр
при п = 200, т = 8, г = 4, / = 1000, X = 10-5, X = 10-5
пу в
Выполним деление левой части выражения (21) на выражение правой части без члена, учитывающего (в:
-1л \п+т-( 1
1=п п+т
/[ЕС
„-iX/ /1 —Л*\п+т—i I • С • (1 — в ) +
(22)
H
,и+т ^ ^ J
M Тогда
I п+т
^ i=n
HTW
/[ЕС
^,-iXi /-1 — "kt \n+m—i ,
• e • (1 — в ) +
(23)
M
+X cri ■ (1 - е-" )m+J' V } = Xt. j=i
Предложена методика восстановления логики - КЛБ ПЛИС путем применения пассивно-активной отказоустойчивости с использованием скользящего резервирования с восстановлением элементов из отказавших ФПТ элементов, но сохранивших базис - таких элементов необходимо не более четырех. Скользящее резервирование позволяет в ряде случаев увеличить вероятность безотказной работы любых ПЛИС FPGA на 15-20 % от максимально возможного выигрыша по сравнению с классическим скользящим резервированием. Целесообразны дальнейшие исследования с целью поиска оптимальных вариантов пассивно-активной отказоустойчивой ПЛИС - ФПТ, например, с помощью процедуры наискорейшего спуска.
СПИСОК ЛИТЕРАТУРЫ
1. Угрюмов, Е.П. Цифровая схемотехника: Учеб. пособие для вузов [Текст] / Е.П. Угрюмов. -2-е изд., перераб. и доп. -СПб.: БХВ-Петербург, 2007. -800 с.
2. Achronix выпустит 22-нм ПЛИС на фабриках Intel [Электронный ресурс]. -Режим доступа: http:// www.russianelectronics.ru/leader-r/pechat/59266/
3. Yervant, Z. Gest editors' introduction: Design for Yield and reliability [Text] / Z. Yervant, G. Dmytris // IEEE Design & Test of Computers. -2004. -P. 177-182.
4. ГОСТ 27.002-89. Надежность в технике Основные понятия. Термины и определения [Текст]. -М.: Изд-во стандартов, 1990. -42 с.
5. Иыуду, К. Надежность, контроль и диагностика вычислительных машин и систем [Текст] / К. Иыуду. -М.: Высш. шк., 1989. -219 с.
6. Надежность и э ффективно сть в технике: Справочник в 10 т. [Текст] / Ред. совет: В.С. Авдуевский (пред.)
[и др.]. -Т. 2. Математические методы в теории надежности и эффективности; Под ред. Б.В. Гнеденко. -М.: Машиностроение, 1987. -280 с.
7. Основи надшносп цифрових систем. Пщручник [Текст] / За ред. Харченка В.С., Жихарева В.Я. -Харюв: Мшстерство освгги та науки, 2004. -572 с.
8. Тюрин, С.Ф. Функционально-полные толерантные булевы функции [Текст] / С.Ф. Тюрин // Наука и технология в России. -1998. -№ 4. -С. 7-10.
9. Тюрин, С.Ф. Проблема сохранения функциональной полноты булевых функций при «отказах» аргументов [Текст] / С.Ф. Тюрин // Автоматика и телемеханика. -1999. -№ 9. -С. 176-186.
10. Тюрин, С.Ф. Функционально-полный толерантный элемент. [Текст] / С.Ф. Тюрин, О.А. Громов, А.В. Греков // Патент РФ № 2449469, опубл. 27.04.2012 Бюл. № 12.