ВЕСТНИК ПЕРМСКОГО УНИВЕРСИТЕТА Математика. Механика. Информатика 2013 Вып. 4(23) УДК 519.1(075.8)+510.6(075:8) Реконфигурация функционально-полных толерантных элементов С. Ф. Тюрин Пермский государственный национальный исследовательский университет Россия, 614990, Пермь, ул. Букирева, 15 tyurinsergfeo@yandex.ru; 8-952-32-02-510 А. Ю. Городилов Пермский государственный национальный исследовательский университет Россия, 614990, Пермь, ул. Букирева, 15 gora830@yandex.ru; +7-902-83-07-328 А. А. Сулейманов Пермский национальный исследовательский политехнический университет Россия, 614990, Пермь, ул. Комсомольский пр., 29 alex@pstu.ru; +7-922-64-67-077 Предлагается и исследуется процедура парирования отказов комбинационных схем, реализующих конфигурируемые логические блоки (КЛБ) программируемых логических интегральных схем (ПЛИС) типа FPGA в функционально-полном толерантном (ФПТ) базисе. Вводится понятие нейтрального выхода ФПТ-схемы, обеспечивающего в случае отказов возможность частичных вычислений на оставшихся в работоспособном состоянии разрядах (конъюнкциях, функциях). Доказано, что ФПТ-схемы, в которых у последнего элемента задействованы все входы, обладают свойством управляемости состоянием выхода при любом однократном отказе. Описанный подход обеспечивает реконфигурацию логики ПЛИС с целью её частичного восстановления в надёжных, отказоустойчивых приложениях. Ключевые слова: логический элемент с избыточным базисом – функционально-полный толерантный (ФПТ) элемент; реконфигурация; парирование отказов; программируемая логическая интегральная схема (ПЛИС); надёжность, отказоустойчивость. Введение гральных схемах (ПЛИС) в новом ФПТбазисе позволяет обеспечить восстановление логики при отказах. При этом необходима диагностика – определение остаточных базисов, реконфигурация – реализация всех и части логических функций в остаточных базисах некоторого подмножества элементов. ФПТ-элемент также обладает свойством, которое раньше детально не исследовалось: в случае любого однократного константного отказа (stuck-at fault) за счёт других трёх, не отказавших, входов его можно привести в любое из двух состояний – "0" или "1". Таким свойством не обладают традиционные "моно" (в смысле дизъюнкцииконъюнкции) базисы И-НЕ, ИЛИ-НЕ. В [1…12] предложена концепция функционально-полного толерантного (ФПТ) логического базиса и элемента. ФПТ-элемент сохраняет свойство базисности в смысле теоремы Поста при заданной модели отказов. ФПТ-базис также предпочтителен для реализации широкого класса логических (булевых) функций по сравнению с традиционными базисами И-НЕ, ИЛИ-НЕ. Реализация конфигурируемых логических блоков (КЛБ) [13] и логических элементов в программируемых логических инте© Тюрин С. Ф., Городилов А. Ю., Сулейманов А. А., 2013 91 С. Ф. Тюрин, А. Ю. Городилов, А. А. Сулейманов Такое свойство сохраняется и для отказов типа замыканий (Bridging Faults) двух входов [10], причём тогда в некоторых случаях можно использовать все входы. Новое свойство предлагается использовать для нейтрализации некоторых отказов ФПТ-схем для обеспечения возможности частичного использования аппаратных средств при отказах. То есть предлагается своего рода отключение отказавших участков, чтобы они не "мешали" реализации хотя бы части функций на оставшемся оборудовании. Можно показать, что отказы транзисторов типа "постоянно открыт", "постоянно закрыт" эквиваленты константным отказам входов. Рассмотрим однократный константный отказ типа xi 0 , допустим x1 0 , тогда получим x2 x3 x4 (3). Ясно, что поскольку остаточная функция обладает функциональной полнотой, то с помощью неё можно получить и любую константу, например: 1. Нейтрализация ФПТ-элементом константных отказов по входам Функционально-полный толерантный элемент [1, 2], изображенный на рис. 1, реализует логическую (булеву) функцию x2 0 : 0 x3 x4 1, (4) x2 x3 1 : 1 1x4 0. (5) Очевидно, что так будет и при xi 1 . x1 x2 x3 x4 , или, что то же самое, функцию ( x1 x2 )( x3 x4 ). 0 x2 x3 x4 (2) , что соответствует Допустим x1 1 , тогда получим: 1x2 x3 x4 (6) , что соответствует x3 x4 (7) . (1) Аналогично: x1 1 & x2 z x2 x3 0 : 00 1, (8) x3 1 : 1x4 0. (9) Для сравнения возьмём элемент 4И-НЕ: x3 & x4 x1 x2 x3 x4 . При любом константном нуле на входе, например х1, на выходе будет единица, и убрать её уже будет невозможно: Рис. 1. Функционально-полный толерантный (ФПТ) элемент 0 x2 x3 x4 1. КМОП – реализация ФПТ-элемента [6, 7] представлена на рис. 2. 9 1 10 2 13 4 14 5 7 6 8 (11) Ясно, что для обеспечения реализации такого свойства ФПТ-элемента необходимо, чтобы на все входы поступали разные переменные. Понятно, что отказ по выходу не позволяет реализовать описываемое свойство. Но вероятность такого отказа при равновероятности отказов входов-выходов по крайней мере в 4 раза меньше. 11 12 3 (10) 2. Нейтрализация ФПТ-элементом отказов – замыканий по входам Рассмотрим отказы типа замыканий (Bridging Faults) двух входов [10]. Это следующие типы отказов: 1. Замыкания хiхj с доминированием (Dominant) хi. 2. Замыкания типа монтажного И/ИЛИ (Wired – AND/OR). 3. Модель доминантного монтажного И/ИЛИ (Dominant – AND/OR). 15 Рис. 2. КМОП – реализация ФПТ-элемента; 9 – х1, 10 – х2, 12 –-х3, 13 – х4, 14 выход z, 15 – GROUND ("ноль вольт"), 11 – +U питания, 1…8 –транзисторы 92 Реконфигурация функционально-полных толерантных элементов Новые остаточные функции ФПТ-элемента для модели отказов "замыкания" пар входов с доминированием представлены ниже. чтобы получить ноль на выходе, поскольку имеется конъюнктивная нормальная форма – КНФ: x1 x2 x3 x4 1 : (1 1)(1 1) 0. (13) Остаточный базис Отказ х1 AND х2 2. х1 x2 x3 x4 ( х1 х 3 )( x 2 x 4 ) 3. ( х1 х 4 )( x 2 x 3 ) х1 AND х4 3. Парирование отказов ФПТ-схем 4. ( х1 х 4 )( x 2 x 3 ) х2 AND х3 5. ( х 2 х 4 )( x1 x 3 ) х2 AND х4 Рассмотрим реализацию функции "Сумма по модулю два трех переменных": х3 x 4 x1 x2 ( х1 х 3 )( x 2 x 4 ) х3 AND х4 m3 x1 x 2 x3 x3 x 2 x1 x3 x 2 x1 х1 OR х3 x3 x 2 x1 x3 x 2 x1 . ( х1 х 4 )( x 2 x 3 ) х1 OR х4 ( х1 х 4 )( x 2 x 3 ) х2 OR х3 1. 6. 7. 8. 9. m3 x3 ( x2 x1 x2 x1 ) x3 ( x2 x1 x2 x1 ), (15) х2 OR х4 11. х1 х 2 ( х1 х 3 ) x 4 х1 AND х3 12. ( х1 х 3 ) x 2 х 3 x 4 х1 AND х3 х1 х 2 ( х1 х 4 ) x 3 х1 AND х4 ( х1 х 4 ) x 2 x 3 х 4 х1 AND х4 х1 х 2 ( х 2 х 3 ) x 4 х2 AND х3 ( х 2 х 3 ) x1 x 3 х 4 х2 AND х3 х1 х 2 ( х 2 х 4 ) x 3 х2 AND х4 ( х 2 х 4 ) x1 х 3 x 4 х2 AND х4 х1 ( х 2 x 3 x 4 ) х1 OR х3 х 3 ( х 4 x1 x 2 ) х1 OR х3 х1 ( х 2 x 3 x 4 ) х1 OR х4 х 4 ( х3 x1 x 3 ) х1 OR х4 х 2 ( х1 x 3 x 4 ) х2 OR х3 х 3 ( х 4 x1 x 2 ) х2 OR х3 х 2 ( х1 x 3 x 4 ) х2 OR х4 х 4 ( х 3 x1 x 2 ) х2 OR х4 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. m3 x3 ( x2 x1 x2 x1 ) x3 ( x2 x1 x2 x1 ). (16) Соответствующая схема представлена на рис. 3. x2 x1 x2 x1 x2 x1 x2 x1 & 1 & & 1 & 1 x3 x3 & & Рис. 3. Реализация суммы по модулю два трех переменных в ФПТ-базисе Для этой схемы (рис. 3) при любом отказе входов, да и выходов – только кроме выхода последнего элемента – свойство нейтрализации выхода схемы выполнятся, поскольку последний элемент при указанных допущениях сохраняет функциональную полноту. Мало того, при отказе одного из входов схема может реализовать сумму по модулю два от n-1 аргумента, в данном случае – от двух. Например, при константном отказе х3 типа "константа 1" (например, предполагается, что х3 и его инверсия реализуются одним элементом- В данном случае иногда необходимо задавать все четыре переменные, например для базиса ( х1 х 3 )( x 2 x 4 ), (14) Преобразуем выражение (12), для реализации в ФПТ-базисе: ( х 2 х 4 )( x1 x 3 ) 10. Рассмотрим парирование отказов ФПТ-схем. х1 AND х3 (12) 93 С. Ф. Тюрин, А. Ю. Городилов, А. А. Сулейманов m3 x1 x 2 x3 инвертором, у которого отказ "1" по выходу) – за счёт второго входа (инверсия х3), устанавливаемого в "0", подключается нижняя половина последнего элемента и реализуется функция сложения по модулю два х1х2 на левом нижнем элементе, правда с инверсией: m3 1( x2 x1 x2 x1 ) 1( x2 x1 x2 x1 ), (17) m3 1( x2 x1 x2 x1 ) x2 x1 1. (18) x3 x 2 x1 x3 x 2 x1 x3 x 2 x1 x3 x 2 x1 , m3 x3 x2 x1 x3 x2 x1 x3 x2 x1 x3 x2 x1 . m3 0( x2 x1 x2 x1 ) 0( x2 x1 x2 x1 ), (19) (21) x3 x2 x1 & x3 x2 x1 & И в этом случае можно получить сумму по модулю два с инверсией (23) m3 1x2 x11x2 x11 x2 x11 x2 x1 . (23) Но в случае отказа типа "0" любого одного из элементов первого ряда или соответствующей связи, например ноль на связи выхода первого элемента с первым входом последнего: (24) что не есть хорошо, не соответствует нашим ожиданиям. Тогда при х3=1 m3 0 1( x2 x1 x2 x1 ). & Рис. 4. Реализация суммы по модулю два трех переменных в базисе 4И-НЕ получим: m3 x3 x3 ( x2 x1 x2 x1 ), x3 x2 x1 (22) В случае отказа одного из элементов первого ряда или соответствующей связи, например, "ноль" на связи выхода первого элемента с первым входом последнего: m3 x3 0 x3 ( x2 x1 x2 x1 ),. & & При х3=1 m3 1( x2 x1 x2 x1 ). x3 x2 x1 (20) В случае отказа одного из элементов первого ряда или соответствующей связи, например, "единица" на связи выхода первого элемента с первым входом последнего: m3 x31 x3 ( x2 x1 x2 x1 ). (22) Схема представлена на рис. 4. Реализация на верхнем левом элементе (при установлении х3=0) позволяет получить х1х2 без инверсии: m3 0( x2 x1 x2 x1 ) x2 x1 . (21) m3 0 x3 x2 x1 x3 x2 x1 x3 x2 x1 0. (23) То есть тогда на выходе последнего элемента устанавливается "1". (24) Опять получаем инверсию суммы по модулю два х1х2. Аналогично можно показать, что при отказах второго элемента первого ряда можно получить суммы по модулю два х1х2. Выводы Таким образом, возможно использовать для реконфигурации ФПТ-схем, в которых возникли отказы, нейтрализацию по некоторым входам. Такая нейтрализация не всегда возможна для традиционных базисов. При этом в ФПТ-схемах обеспечивается частичное Реализация суммы по модулю два трёх аргументов в базисе 4И-НЕ имеет вид 94 Реконфигурация функционально-полных толерантных элементов использование аппаратных средств при отказах. Отключение отказавших участков ФПТсхем позволяет реализовать хотя бы часть функций на оставшемся оборудовании. Это позволяет повысить надёжность, отказоустойчивость цифровых схем, и в частности ПЛИС. мент: пат. 2438234 Рос. Федерация. № 2010123392; заявл. 08.06.2010; опубл. 27.12.2011, Бюл. № 36. 8. Тюрин С.Ф., Громов О.А., Греков А.В. Функционально-полный толерантный элемент. Патент РФ № 2449469, опубл. 27.04.2012, Бюл. № 12. 9. Тюрин С.Ф., Громов О.А., Греков А.В. Функционально-полный толерантный элемент ФПТ // Научно-технические ведомости Санкт-Петербургского государственного политехнического университета. 2011. № 1(115). С. 24–31. 10. Тюрин С.Ф., Греков А.В., Громов О.А. Определение функционально-полных толерантных булевых функций четырех аргументов с учетом модели замыканий переменных // докл. Акад. военных наук. № 5 (49). Саратов. 2011. С. 35–44. 11. Тюрин С.Ф., Громов О.А., Греков А.В., Сулейманов А.А. Функционально-полный толерантный элемент. Решение о выдаче патента на изобретение от 13.03.2013 по заявке № 2012125400/08 (038968) от 19.06.2012. 12. Тюрин С.Ф., Набатов А.В., Громов О.А., Греков А.В., Карлов Д.А. Программируемое логическое устройство. Решение о выдаче патента на изобретение от 16.08.13 по заявке № 2012117468/08(026319) от 26.04.2012. 13. Цыбин С. Программируемая коммутация ПЛИС: взгляд изнутри. [Электронный ресурс]. URL: http://www.kit-e.ru/articles/plis/ 2010_11_56.php (дата обращения: 12.11.12). Список литературы 1. Тюрин С.Ф. Функционально-полные толе- 2. 3. 4. 5. 6. 7. рантные булевы функции // Наука и технология в России. № 4. 1998. С. 7–10. Тюрин С.Ф. Синтез адаптируемой к отказам цифровой аппаратуры с резервированием базисных функций // Приборостроение. 1999. № 1. С. 36–39. Тюрин С.Ф. Адаптация к отказам одновыходных схем на генераторах функций с функционально-полными толерантными элементами // Приборостроение. 1999. № 7. С. 32–34. Тюрин С.Ф. Проблема сохранения функциональной полноты булевых функций при "отказах" аргументов // Автоматика и телемеханика. 1999. № 9. С. 176–186. Тюрин С.Ф., Несмелов В.А., Харитонов В.А. и др. Программируемое логическое устройство. Патент РФ № 2146840. Опубл. БИ № 8. 2000. Тюрин С.Ф., Громов О.А. Базисный элемент программируемых логических интегральных схем // Вестник Ижевского государственного технического университета.. 2010. № 3. С. 122–126. Функционально-полный толерантный эле- Reconfiguration of the complete tolerant elements S. F. Tyurin Perm State University, Russia, 614990, Perm, Bukirev st., 15 tyurinsergfeo@yandex.ru; 8-952-32-02-510 A. Y. Gorodilov Perm State University, Russia, 614990, Perm, Bukirev st., 15 gora830@yandex.ru; 79028307328 A. A. Suleymanov Perm National Research Polytechnic University, Russia, 614990, Perm, Komsomolsky pr., 29 alex@pstu.ru; +7-922-64-67-077 In the article is proposed the reconfiguration of the FCT elements for FPGA. This makes it possible to increase the reliability of the PLD logic. Key words: logic element with the redundancy basis –- functional complete tolerant ([FCT]) element; the programmed logic integral circuit (PLD); FPGA; reliability; failure resistance. 95