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

Аннотация


Функционально-полные (в смысле критериев Поста) толерантные элементы были предложены как распространение парадигмы структурно-устойчивых ЭВМ, предложенной профессором В.А. Харитоновым на рубеже 90-х годов ХХ века, на уровень регистровых передач. Структурно-устойчивые ЭВМ обладают способностью к эмуляции требуемой системы команд при отказе отдельных команд из исходного множества. На эту идею натолкнула процедура покомандного диагностирования процессоров цифровых вычислительных комплексов специальных автоматизированных систем. В свою очередь, функционально-полные толерантные логические элементы (ФПТЛЭ) обладают способностью сохранения функциональной полноты при заданной модели отказов. В 1996-1997 годах были получены ФПТ функции с учетом модели однократных константных отказов одного из четырех входов соответствующего логического элемента (константа нуля и константа единицы). Они оказались композицией И, ИЛИ, НЕ логических функций. Из них практическое значение имеют известные функции 2ИЛИ-2И-НЕ, 2И-2ИЛИ-НЕ. При учете модели замыканий входов (Bridging Faults: Dominant; Wired AND, OR; Dominant AND/OR) оказалось, что мощность множества ФПТ функций уменьшается, но функции 2ИЛИ-2И-НЕ, 2И-2ИЛИ-НЕ сохраняют толерантность. В дальнейшем были рассмотрены вопросы сохранения функциональной полноты на транзисторном уровне для внутренних отказов логического элемента (вентиля) КМДП транзисторов (stuck-closed transistor - постоянно закрытый, stuck-open transistor - постоянно открытый). Показано, что функциональная полнота сохраняется при отказе одного транзистора либо в верхней части схемы (подключения «+» источника питания), либо в нижней (подключения шины «ноль вольт»). В дальнейшем пришло понимание, что аналогично можно обеспечивать сохранение не только функциональной полноты, но и самой реализуемой функции на уровне одного элемента. В статье рассматриваются особенности ФПТЛЭ, включенных в состав программных логистических интегральных систем (ПЛИС), имеющих так называемые LUT (look up table).

Полный текст

Введение Функционально-полные толерантные логические элементы явились развитием концепции структурной устойчивости профессора В.А. Харитонова [1]. ФПТЛЭ сохраняют логический базис при отказах в рамках заданной модели в смысле знаменитой теоремы Поста[1] [2, 3] как альтернатива внутреннего резервирования внешнему. В отличие от базисов И-НЕ, ИЛИ-НЕ, ФПТЛЭ используют комбинирование операций И-НЕ, ИЛИ-НЕ. Таким образом, речь идет об активной отказоустойчивости, при которой остаточные базисы могут быть использованы для восстановления требуемой функции. Для этого необходима возможность реконфигурации схем из таких элементов, что реализовано в программируемых пользователем вентильных матрицах ППВМ - программируемых логических интегральных схемах типа FPGA. Предполагается, что имеются средства (встроенные или внешние) обнаружения факта отказа и определения конкретного состояния ФПТЛЭ. Сама идея развивалась также направлением самосинхронных автоматов [4-8] на базе Института проблем информатики (ИПИ) РАН [9, 10]. В дальнейшем были исследованы соответствующие ФПТ логические функции с учетом модели замыканий входов, множество которых оказалось подмножеством множества ФПТ функций, полученных в работе [2]. Однако для пассивной отказоустойчивости АСУ целесообразнее сохранять исходную базисную функцию, что и было предложено в статье [3], это уже требует значительной избыточности. Таким образом, ФПТЛЭ можно разделить на ФПТ, сохраняющие базис в смысле теоремы Поста, и ФПТ, сохраняющие исходную функцию. И те, и другие (по классификации ПЛИС) мелкозернистые и крупнозернистые [11] (рис. 1). Рис. 1. Классификация ФПТЛЭ В дальнейшем были получены ФПТЛЭ для парирования кратных отказов. Рассмотрим особенности вариантов ФПТЛЭ, парирующих в указанных выше смыслах однократные отказы. 1. КМДП-реализация ФПТЛЭ для мелкозернистых ПЛИС При модели отказов одного КМДП-транзистора или входа функциональная полнота сохраняется. Например, для КМДП-структур 2ИЛИ-2И-НЕ, 2И-2ИЛИ-НЕ - это функции и (рис. 2). а б Рис. 2. КМДП-схемы ФПТЛЭ, сохраняющих базис FCTLE1 (а) и FCTLE2 (б) на основе КМДП-транзисторов VT1-VT8 Схемы на рис. 2 [3] характеризуются наличием двух подсхем - подключения источника питания (z+) и двойственной ей схемы подключения шины «ноль вольт» (z-), которые описываются выражениями: (1) (2) (3) (4) Несмотря на то что при отказах нарушается ортогональность функций (z+), (z-), т.е. на некоторых наборах одновременно могут быть подключены либо обе шины, либо ни одной, чего не должно быть при нормальном функционировании, всегда возможно путем подбора настроить элемент на реализацию остаточного базиса, в отличие от эквивалентного по числу транзисторов элемента 4И-НЕ. Причем возможны два отказа - отказ транзистора в (z+) и отказ транзистора в (z-). Таким образом, отказы транзисторов практически кратные. Для сохранения базисной функции 2ИЛИ-НЕ при модели однократных константных отказов необходимо выражение . (5) Легко видеть, что в случае четырхкратной избыточности (6) функция 2ИЛИ-НЕ сохранится при любом однократном константном отказе. Такой элемент[2] [3], содержащий 16 КМДП-транзисторов, может быть использован как сложный (восемь переменных): (7) при условии отсутствия отказов и отказоустойчивый (две переменные) - в специальной аппаратуре автоматизированных систем управления (АСУ). Для сохранения базисной функции 2И-НЕ при модели однократных константных отказов может быть использован элемент (8) т.е. (9) КМДП-реализация показана на рис. 3. Рис. 3. КМДП-схема ФПТЛЭ, сохраняющего функцию 2И-НЕ-FCTLE4 - 2. КМДП-реализация ФПТЛЭ, сохраняющих базис, для крупнозернистых ПЛИС Простейший LUT [12, 13] на две переменные (2-LUT) имел бы вид, представленный на рис. 1. LUT на две переменные (рис. 4) реализует функцию (10) где a, b, c, d - настройки, записываемые в ячейки статической оперативной памяти SRAM (снизу вверх). Рис. 4. LUT на две переменные (2-LUT) Для настройки на заданную логическую функцию двух переменных в четыре ячейки ОЗУ (SRAM) загружается соответствующая таблица истинности. При активации одного из четырех путей в дереве транзисторов (см. рис. 4) переменными Х1, Х2 значение логической функции считывается из соответствующей ячейки ОЗУ и передается на выход OUT. Инверторы по переменным обеспечивают реализацию всех членов совершенной дизъюнктивной нормальной формы (СДНФ). LUT на три переменные (3-LUT) представлен на рис. 5. Рис. 5. LUT на три переменные (3-LUT) Здесь уже необходимо 8 бит настройки: . (11) В источниках указано, что оптимальным по быстродействию и сложности представления типовых логических функций является использование LUT на четыре переменных (4-LUT). Такой LUT для входных переменных A, B, C, D (настройка - 16 бит) с установленным на выходе функционально-полным толерантным логическим элементом [3] изображен на рис. 6. Рис. 6. LUT на четыре переменные (4-LUT) с ФПТЛЭ на выходе, настроенным на реализацию инверсии Такой LUT для входных переменных A, B, C, D обеспечивает работоспособность в объеме своих «половинных» возможностей при отказе одного любого входа A, B, C, D, либо одного транзистора в дереве передающих транзисторов VT1-VT30, либо в элементах-инверторах, либо в SRAM. Таким образом, это ФПТ LUT. ФПТЛЭ на выходе (см. рис. 6) реализуется следующим образом (рис. 7). Рис. 7. ФПТЛЭ-инвертор с функцией Такие ФПТЛЭ-инверторы, использующие так называемое расчетверение, могут быть установлены и вместо входных инверторов LUT, и вместо инверторов по данным. Для обнаружения ошибок при вычислении логических функций в LUT целесообразно использовать дополнительные средства контроля и диагностики. 3. КМДП реализация ФПТЛЭ, сохраняющих исходную функцию, для крупнозернистых ПЛИС Дальнейшее увеличение избыточности возможно путем резервирования передающих транзисторов (расчетверения передающих транзисторов). Однако непосредственно для 4-LUT это не может быть выполнено в силу ограничений Мида и Конвей на число последовательно соединенных транзисторов [14, 15], поэтому вначале обеспечим резервирование 2-LUT (рис. 8). Рис. 8. Отказоустойчивый LUT на две переменные (2-LUT-FT) На рис. 8 используется ФПТ передающая функция где х - передающие транзисторы. Тогда схема толерантна к отказу любого одного транзистора в каждой четверке. Для обеспечения толерантности SRAM предложена ячейка [3] (рис. 9). Рис. 9. Отказоустойчивая SRAM Для получения 3-LUT-FT предлагается схема, представленная на рис. 10. Рис. 10. Отказоустойчивый LUT на три переменные (3-LUT-FT) Соединение двух 3-LUT-FT через указанный на рис. 10 1-LUT-FT позволяет получить требуемый 4-LUT-FT. Для получения n LUT (n > 4) на базе 4-LUT, содержащего 30 транзисторов в дереве и два транзистора в выходном инверторе 4-LUT, при соединении двух 4-LUT парой передающих транзисторов с инвертором необходима сложность (12) где - сложность настройки на реализацию заданной логической функции (в числе транзисторов); 8 - суммарное число транзисторов в SRAM (6 шт.) и соответствующем инверторе (2 шт.); - число транзисторов в требуемых 4-LUT без учета инверторов по входам переменных; - сложность требуемых дополнительных 1-LUT при n > 4; 2n - число транзисторов в инверторах входных переменных без учета ограничений по нагрузочной способности инверторов по входам. В свою очередь, для получения n LUT-FT требуется «расчетверить» каждый транзистор: (13) 4. Оценка вероятности безотказной работы 4-LUT и 4-LUT-FT Затраты на реализацию 4-LUT (см. рис. 6) представлены в табл. 1. Таблица 1 Затраты на реализацию 4-LUT № п/п Наименование Количество транзисторов, шт. 1 Дерево передающих транзисторов 30 2 Инверторы - 21 шт. 42 3 Шеститранзисторная SRAM 96 Итого 168 Затраты на реализацию 4-LUT-FT (см рис. 10) представлены в табл. 2. Таблица 2 Затраты на реализацию 4-LUT-FT № п/п Наименование Количество транзисторов 1 Дерево передающих транзисторов 120 2 Инверторы - 16 + 8 + 8 + 2 272 3 Шеститранзисторная SRAM 384 Итого 776 Получим выражения вероятности безотказной работы 4-LUT - P(t) и 4-LUT-FT - P(t)ftm с учетом экспоненциальной модели отказов, задавая интенсивность отказов одного транзистора и время работы (pис. 11): (14) Рис. 11. Графики изменения вероятности безотказной работы 4-LUT - Р(t) и 4-LUT-FT - Р(t)ftm при интенсивности отказов l = 10-5 1/ч Сравним предложенное резервирование с троированием, сложность мажоритарного элемента на выходе 4-LUT равна 12 транзисторам: (15) Сравним предложенное резервирование с троированием, использующим три мажоритарных элемента на выходе 4-LUT: (16) Соответствующие графики изображены на рис. 12. а б Рис. 12. Графики изменения вероятности безотказной работы: а - в диапазоне от 1 до 0,4, схемы 4-LUT без резервирования Р(t); б - в диапазоне от 1 до 0,5, вероятности безотказной работы резервированной схемы с расчетверением Р(t)ftm, вероятности безотказной работы резервированной троированной схемы с одним мажоритаром Р3 и троированной схемы с тремя мажоритарами Р33 при интенсивности отказов (сбоев) l = 10-5 1/ч Выводы Таким образом, использование ФПТЛЭ позволяет сохранять логический базис как в мелкозернистых, так и в крупнозернистых ПЛИС АСУ при отказе одного любого транзистора, одного любого входа. При таких неисправностях есть возможность использования «половинных» возможностей элемента, а массив «пораженнных» элементов после диагностики и реконфигурации обеспечивает синтез не всех, но наиболее важных функций АСУ. Введение существенной избыточности позволяет получить ФПТЛЭ, сохраняющих логическую функцию при отказах одного транзистора в каждой четверке транзисторов. Подобное расчетверение позволяет получить более высокую вероятность безотказной работы, чем троирование. При этом затраты на троирование равны 516 транзисторам с учетом одного мажоритара либо 540 - с учетом трех мажоритаров. Затраты на реализацию предлагаемого ФПТЛЭ с сохранением логической функции с учетом декомпозиции 4-LUT для удовлетворения требований Мида и Конвей равны 776 транзисторам, что примерно на 50 % больше по сравнению с затратами на троирование. Предложенные ФПТЛЭ могут быть использованы в так называемых адаптивных логических модулях АЛМ [16-19] для RHBD (radiation hardering by design) процессорах и устройствах АСУ, обеспечивающих радиационную стойкость посредством архитектурных решений [20].

Об авторах

С. Ф Тюрин

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

Email: tyurinsergfeo@yandex.ru

Список литературы

  1. Харитонов В.А., Тюрин С.Ф. Модели управления устойчивостью функционально избыточных систем // Управление большими системами: материалы Междунар. науч.-практ. конф. - М., 1997. - С. 266.
  2. Тюрин С.Ф. Проблема сохранения функциональной полноты булевых функций при «отказах» аргументов // Автоматика и телемеханика. - 1999. - № 9. - С. 176-186.
  3. Tyurin S.F., Grekov A.V. Functionally complete tolerant elements // International Journal of Applied Engineering Research. - 2015. -Vol. 10, № 14. - Р. 34433-34442.
  4. Muller D.E., Bartky W.S. A theory of asynchronous circuits // Proc. Int. Symp. оn the Theory of Switching. - Harvard University Press, 1959. - Part 1. - Р. 204-243.
  5. Апериодические автоматы / под ред. В.И. Варшавского. - М.: Наука, 1976. - 304 с.
  6. Искусственный интеллект. Т. 3. Программные и аппаратные средства / В.И. Варшавский, В.Б. Мараховский, Л.Я. Розенблюм, А.В. Яковлев; под ред. В.Н. Захарова, В.Ф. Хорошевского. - М.: Радио и связь, 1990. - 304 с.
  7. Delay-insensitive asynchronous ALU for cryogenic temperature environments / B. Hollosi [et al.] // Circuits and Systems. - 2008. - Р. 322-325.
  8. Yakovlev A. Energy-modulated computing // Design, Automation & Test in Europe Conference & Exhibition (DATE). - 2011. - Р. 1-6.
  9. Плеханов Л.П. Основы самосинронных электронных схем [Электронный ресурс]. - URL: https://www.docme.ru/doc/997042/ osnovy-samosinhronnyh-e-lektronnyh-shem.-%E2%80%94-e-l.-izd (дата обращения: 01.11.2015).
  10. Библиотека элементов для проектирования самосинхронных полузаказных микросхем серий 5503/5507 и 5508/5509 / Ю.А. Степченков, А.Н. Денисов, Ю.Г. Дьяченко, Ф.И. Гринфельд, О.П. Филимоненко, Н.В. Морозов, Д.Ю. Степченков. - М.: ИПИ РАН, 2008. - 296 с.
  11. Угрюмов Е.П. Цифровая схемотехника: учеб. пособие. - СПб.: БХВ-Петербург, 2004. - 518 с.
  12. Строгонов А., Цыбин С. Программируемая коммутация ПЛИС: взгляд изнутри [Электронный ресурс]. - URL: http://www.kit-e.ru/articles/plis/ 2010_11_56.php (дата обращения: 16.12.2014).
  13. Основные производители современных ПЛИС-компьютеров и комплектующих к ним [Электронный ресурс]. - URL: https://parallel.ru/ fpga/vendors.html (дата обращения: 29.10.2015).
  14. Ульман Дж.Д. Вычислительные аспекты СБИС / пер. с англ. А.В. Неймана / под ред. П.П. Пархоменко. - М.: Радио и связь, 1990. - 480 с.
  15. Глебов А.Л. SP-BDD модель цифровых КМОП-схем и ее приложения в оптимизации и моделировании // Информационные технологии. - 1997. - № 10. - С. 44.
  16. Золотуха Р., Комолов Д. Stratix III - новое семейство FPGA фирмы Altera [Электронный ресурс]. - URL: http://kit-e.ru/assets/ files/pdf/2006_12_30.pdf (дата обращения: 28.11.2015).
  17. Строгонов А., Цыбин С. Использование ресурсов ПЛИС Stratix III фирмы Altera при проектировани микропроцессорных ядер [Электронный ресурс]. - URL: file:///C:/Users/%D0%A2%D1%8E%D1% 80%D0%B8%D0%BD/Desktop/%D0%A6%D1%8B%D0%B1%D0%B8%D0%BD%2010%20%D0%B3%D0%BE%D0%B4.pdf (дата обращения: 27.11.2015).
  18. Peter ClarkeCEO Interview: John Lofton Holt of Achronix Fastest FPGA? - URL: http://www.eetimes.com/document.asp?doc_id=1271406 (дата обращения: 29.10.2015).
  19. Speedster22i configuration user guide [Электронный ресурс]. - URL: http://www.achronix.com/wp-content/uploads/docs/Speedster22i_ Configuration_User_Guide_UG033.pdf (дата обращения: 29.10.2015).
  20. Чекмарев С.А. Способ и система инъекции ошибок для тестирования сбоеустойчивых процессоров бортовых систем космических аппаратов [Электронный ресурс] // Вестник Сибир. гос. аэрокосм. ун-та им. акад. М.Ф. Решетнева. - 2014. - № 4 (56). - URL: http:// cyberleninka.ru/article/n/sposob-i-sistema-inektsii-oshibok-dlya-testirovaniya-sboeustoychevyh-protsessorov-bortovyh-sistem-kosmicheskih-apparatov (дата обращения: 16.12.2015).

Статистика

Просмотры

Аннотация - 30

PDF (Russian) - 15

Ссылки

  • Ссылки не определены.

Данный сайт использует cookie-файлы

Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта.

О куки-файлах