FAULT TOLERANT PROGRAMMABLE LOGIC ARRAY

Abstract


The Boolean algebra of logic, logic functions are the basis of a mathematical apparatus of digital electronics and circuit engineering. At the beginning, from the moment of the invention of the relay in the middle of the 19th a century, they were implemented by contact-relay diagrams - serial-to-parallel and bridge, then after creation of transistors - at the microelectronic level. Small-scale integrated microcircuits - "hard" logic, then chips of average integration scale including "flexible" logic were created. In the 1970s the first programmable logic arrays which were used further in larg-scale integrated microcircuits were released. Such structures are widely used during creation, for example, of control and monitoring devices. Programming was first once, at the factory, and then there was the possibility of programming by the user with the help of a special programmer. Then reprogrammable logic arrays were developed electrically. They are used also in the CPLD (complex programmable logic devices) programmable logic integrated circuits (PLIC), unlike FPGA (field-programmable gate array) where implementation in the form of a tree of the transferring transistors is used that in essence is the multiplexer selector or a fixed memory digit capacity of one bits with n address inputs. It is of interest to study the features of programming logic matrices in CPLD in order to consider the possibilities of increasing their fault tolerance in special highly reliable applications. The principles of programming the logic matrix are analyzed in the article, the simulation of the implementation of the conjunction in the NI Multisim 10 system of the National Instruments Electronics Workbench Group is performed, and the fault-tolerant implementation of the logic matrix is proposed and evaluated.

Full Text

Введение. Логические операции [1-3] широко используются при реализации управляющих [4-6] и кодирующих, и других цифровых устройств [7-9]. В программируемых логических устройствах (ПЛИС) типа FPGA (field-programmable gate array) [10-13] логические функции реализуются путем настройки деревьев передающих транзисторов значениями таблиц истинности, поэтому они получили название LUT (Look upTable). Однако ПЛИС другого типа - CPLD (complex programmable logic devices) [14] основаны на логике программируемых матриц, которые были изобретены в начале 70-х годов ХХ века [15-17]. Первые матрицы были однократно программируемыми с так называемыми пережигаемыми (плавкими) перемычками, затем появились электрически перепрограммируемые матрицы [17-19]. Логические матрицы содержат подматрицы «И» и «ИЛИ» и могут быть классифицированы в соответствии с тем, какие подматрицы программируются, а какие фиксированы. Такая классификация программируемых матриц [19] представлена на рис. 1. Рис. 1. Классификация программируемых матриц Таким образом, в случае фиксированной матрицы «И» и программируемой матрицы «ИЛИ» получаем постоянную память (ПЗУ, ROM- read-only memory), для электрически перепрограммируемых устройств - это EEPROM (electrically erasable programmable read-only memory). Если программируются обе матрицы, получаем ПЛМ - программируемую логическую матрицу (PLA - programmable logic array). В случае программирования только матрицы «И», получаем ПМЛ - программируемую матрицу логики (PAL - programmable array logic). Структура ПЛМ и ПМЛ изображена на рис. 2. а б Рис. 2. Обобщённая структура логической матрицы: а - ПЛМ (PLA); б - ПМЛ(PAL) в ПЛИС типа CPLD; в - структура логики CPLD в Рис. 2. Окончание Однако приведённые структуры не раскрывают деталей программирования логики. Вызывает интерес рассмотрение особенностей программирования логических матриц с целью повышения их отказоустойчивости в специальных приложениях, например в радиационно-стойкой аппаратуре [11, 12]. 1. Принцип программирования логики. Принцип программирования логики, например реализация некоторой конъюнкции, может заключаться в закорачивании либо в незакорачивании передающих МОП-транзисторов (А, В, С, D) по заданным переменным [17-19] (рис. 3, а). Это может быть выполнено однократно - плавкой перемычкой либо другим транзистором, программируемым электрически. Однако возникают проблемы управления выходными транзисторами строк (см. рис. 3, а) при большом числе переменных [20], поэтому используются инверторы в качестве буферных элементов. Кроме того, резисторы реализуются с использованием тех же МОП-транзисторов переменных (рис. 3, б). Программирование по i-й переменной j-й функции, зависящей от одной переменной, с учётом её возможного инверсного значения, может быть представлено следующим образом: (1) а б Рис. 3. Программирование логики: а - с использованием резисторов и с управлением затвором МОП-транзисторов, б - с реализацией резисторов на основе МОП-транзисторов и с буферными инверторами Для функции, содержащей n переменных, получим: (2) Причём для s выполняются следующие условия: для существенной переменной, для несущественной переменной. 3. Отказоустойчивый узел программирования переменной. Для обеспечения отказоустойчивости программируемой логики используем результаты, описанные в [21-24]. Получим выражение, обеспечивающее парирование одного отказа транзистора переменной или транзистора настройки в ДНФ: (3) В КНФ выражение имеет вид: (4) Моделирование отказоустойчивого узла программирования одной переменной без учёта необходимости моделирования инвертора и резистора, реализованного на дополнительном транзисторе, изображено на рис. 4. а б в Рис. 4. Моделирование отказоустойчивого узла программирования одной переменной: а - переменная исключена, на входе 0; б - переменная исключена, на входе 1; в - переменная включена, на входе 0; г - переменная включена, на входе 1 г Рис. 4. Окончание Таким образом, парируется отказ одного транзистора как в блоке переменной, так и в блоке настройки. Для ДНФ парирование r отказов по некоторой i-й переменной описывается выражением: (5) Вероятность безотказной работы для экспоненциальной модели имеет вид: (6) Так, в случае r = 3 парируется отказ любых 3 транзисторов по каждой переменной: (7) Графики изменения вероятностей безотказной работы нерезервированного транзистора , схемы FCT, парирующей один отказ , схемы FCT, парирующей два отказа и схемы FCT, парирующей три отказа изображены на рис. 5. а б Рис. 5. Графики изменения вероятностей безотказной работы нерезервированного транзистора, схемы FCT, парирующей один отказ , схемы FCT, парирующей два отказа и схемы FCT, парирующей три отказа при интенсивности отказов 10 в минус пятой степени 1/ч; а - в диапазоне вероятности от 1 до 0; б - в диапазоне вероятности от 1 до 0,4 Выводы. Таким образом, программирование конъюнкций в логической матрице может выполняться путём включения либо исключения данной переменной, либо её инверсии с помощью транзистора настройки. Для несущественной переменной исключаются и она сама, и её инверсия. При этом в случае истинности конъюнкции (равенства конъюнкции единице) с помощью нагрузочного резистора, которой реализуется на дополнительном передающем транзисторе, и инвертора на выходе матрицы «И» (на выходе инвертора) формируется логический ноль. В случае ложности конъюнкции (равенства конъюнкции нулю) на выходе инвертора формируется единица. Реализация матрицы «ИЛИ» может быть выполнена путём включения или исключения заданных выходов матрицы «И» с помощью транзисторов настройки матрицы «ИЛИ» для получения требуемой ДНФ. Для повышения вероятности безотказной работы логической матрицы возможно использовать транзисторное резервирование. Моделирование подтверждает работоспособность предложенного резервирования, а оценка вероятности безотказной работы доказывает высокую эффективность такой отказоустойчивой матрицы в высоконадёжных приложениях, например в аэрокосмической области, где требуется обеспечить работоспособность в условиях воздействия негативных внешних факторов.

About the authors

S. F Tyurin

Perm National Research Polytechnic University

A. S Prokhorov

JSC «ER-Telecom Holding»

References

  1. Кузнецов О.П., Адельсон-Вельский Г.М. Дискретная математика для инженера. - М: Энергоатомиздат, 1988. - 450 с.
  2. Новиков Ф.А. Дискретная математика для программиста. - СПб.: Питер, 2001. - 502 с.
  3. Горбатов В.А. Фундаментальные основы дискретной математики. Информационная математика: учеб. пособие для вузов. - М.: Наука, 2000. - 540 с.
  4. Угрюмов Е.П. Цифровая схемотехника: учеб. пособие. - 2-е изд., перераб. и доп. - СПб.: БХВ-Петербург, 2007. - 782 с.
  5. Самосинхронный вычислитель для высоконадежных применений / Ю.А. Степченков [и др.] // Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС): сб. тр. всерос. науч.-техн. конф. / Институт проблем проектирования в микроэлектронике РАН. - М., 2010. - № 1.
  6. Библиотека самосинхронных элементов для технологии БМК / Ю.А. Степченков [и др.] // Проблемы разработки перспективных микроэлектронных систем - 2006: сб. науч. тр. / под общ. ред. А.Л. Стемпковского / Институт проблем проектирования в микроэлектронике РАН. - М., 2006. - С. 259-264.
  7. Тюрин С.Ф. Аляев Ю.А. Дискретная математика: практическая дискретная математика и математическая логика. - М.: Финансы и статистика, 2010. - 394 с.
  8. Тюрин С.Ф., Аляев Ю.А. Дискретная математика: тест-драйв по дискретной математике и математической логике. - Пермь: Изд-во Перм. нац. исслед. политехн. ун-та, 2014. - 231 с.
  9. Тюрин С.Ф. Дерево транзисторов для реализации систем логических функций // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2015. - № 2(14). - С. 37-45.
  10. Строгонов А., Цыбин С. Программируемая коммутация ПЛИС: взгляд изнутри [Электронный ресурс]. - URL: http://www.kit-e.ru/articles/plis/2010_11_56.php (дата обращения: 11.06.2017).
  11. Carl Carmichael. Triple Module Redundancy Design Techniques for Virtex FPGAs [Электронный ресурс]. - URL: https://www.xilinx.com/ support/documentation/application_notes/xapp197.pdf (дата обращения: 07.12.2016).
  12. Xilinx Reduces Risk and Increases Efficiency for IEC61508 and ISO26262 Certified Safety Applications. WP461 (v1.0) April 9, 2015 [Электронный ресурс]. - URL: http://www.xilinx.com/support/ documentation/white_papers/wp461-functional-safety.pdf (дата обращения: 20.12.2016).
  13. QPro Virtex-II 1.5V Platform FPGAs. DS122 (v3.0) April 7 2014 [Электронный ресурс]. - URL: http://www.xilinx.com/support/ documentation/data_sheets/ds122.pdf (дата обращения: 20.12.2016).
  14. CPLD (Complex Programmable Logic Device) [Электронный ресурс]. - URL: http://www.myshared.ru/slide/981511/ (дата обращения: 09.06.2017).
  15. Виды программируемой логики [Электронный ресурс]. - URL: http://www.pvsm.ru/programmirovanie/87810 (дата обращения: 10.06.2017).
  16. Programmable Logic Devices [Электронный ресурс]. - URL: http://ee.sharif.edu/~logic_circuits_t/readings/PLD.pdf (дата обращения: 04.06.2017).
  17. Программируемая логика и её применение в микропроцессорных системах [Электронный ресурс]. - URL: http://lektsii.org/7-10275.html (дата обращения: 08.06.2017).
  18. Arijit Banerjee, Sergiu Mosanhttp. Modelling and Design of A 45nm SLC 3D NAND Flash CPL [Электронный ресурс]. - URL: //venividiwiki.ee.virginia.edu/mediawiki/images/c/cd/ECE7332_FinalPresentation.pdf (дата обращения: 09.06.2017).
  19. Stephen Brown, Jonathan Rose. Architecture of FPGAs and CPLDs: A Tutorial [Электронный ресурс]. - URL: http://www.eecg.toronto.edu/ ~jayar/pubs/brown/survey.pdf (дата обращения: 10.06.2017).
  20. Ульман Дж.Д. Вычислительные аспекты СБИС / пер. с англ. А.В. Неймана; под ред. П.П. Пархоменко. - М.: Радио и связь, 1990. - 480 с.
  21. Сайт разработчика National Instruments [Электронный ресурс]. - URL: http://www.ni.com/multisim/ (дата обращения: 08.06.2017).
  22. Тюрин С.Ф. Статическая оперативная память на основе отказоустойчивой ячейки базового матричного кристалла // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2016. - № 1(17). - С. 16-27.
  23. Тюрин С.Ф. Автоматический синтез комбинационного автомата с помощью State Machine Editor системы QUARTUSII // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2015. - № 3(15). - С. 60-69.
  24. Тюрин С.Ф. Радиационно-устойчивая ячейка SRAM // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2014. - № 4(12). - С. 14-30.

Statistics

Views

Abstract - 49

PDF (Russian) - 26

Refbacks

  • There are currently no refbacks.

Copyright (c) 2017 Tyurin S.F., Prokhorov A.S.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies