ОТКАЗОУСТОЙЧИВАЯ ПРОГРАММИРУЕМАЯ ЛОГИЧЕСКАЯ МАТРИЦА
- Авторы: Тюрин С.Ф1, Прохоров А.С2
- Учреждения:
- Пермский национальный исследовательский политехнический университет
- АО «ЭР-Телеком Холдинг»
- Выпуск: № 23 (2017)
- Страницы: 45-58
- Раздел: Статьи
- URL: https://ered.pstu.ru/index.php/elinf/article/view/2633
- DOI: https://doi.org/10.15593/вестник%20пермского%20национального%20исследовательского%20политехнического%20университета.%20электротехника,%20информационные%20технологии,%20системы%20управления.v0i23.2633
- Цитировать
Аннотация
Булева алгебра логики, логические функции являются основой математического аппарата цифровой электроники и схемотехники. Вначале, с момента изобретения реле в середине XIX века, они реализовывались релейно-контактными схемами - последовательно-параллельными и мостиковыми, затем после создания транзисторов - на микроэлектронном уровне. Были созданы микросхемы малой степени интеграции - «жёсткая» логика, затем микросхемы средней степени интеграции, включающие «гибкую» логику. В 70-е годы ХХ века были выпущены первые программируемые логические матрицы, которые в дальнейшем были использованы в микросхемах большой степени интеграции. Такие структуры широко используются при создании, например, устройств управления и контроля. Программирование сначала было однократным, на заводе-изготовителе, затем появилась возможность программирования пользователем с помощью специального программатора. Потом были разработаны электрически перепрограммируемые логические матрицы. Они используются также в программируемых логических интегральных схемах (ПЛИС) типа CPLD (complex programmable logic devices), в отличие от FPGA (field-programmable gate array), где используется реализация в виде дерева передающих транзисторов, что, по существу, является мультиплексором-селектором или постоянной памятью разрядностью один бит с n адресными входами. Вызывает интерес исследование особенностей программирования логических матриц в CPLD с целью рассмотрения возможностей повышения их отказоустойчивости в специальных высоконадёжных применениях. В статье анализируются принципы программирования матрицы логики, выполняется моделирование реализации конъюнкции в системе схемотехнического моделирования NI Multisim 10 firm National Instruments Electronics Workbench Group, предлагается и оценивается отказоустойчивая реализация матрицы логики.
Полный текст
Введение. Логические операции [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 Выводы. Таким образом, программирование конъюнкций в логической матрице может выполняться путём включения либо исключения данной переменной, либо её инверсии с помощью транзистора настройки. Для несущественной переменной исключаются и она сама, и её инверсия. При этом в случае истинности конъюнкции (равенства конъюнкции единице) с помощью нагрузочного резистора, которой реализуется на дополнительном передающем транзисторе, и инвертора на выходе матрицы «И» (на выходе инвертора) формируется логический ноль. В случае ложности конъюнкции (равенства конъюнкции нулю) на выходе инвертора формируется единица. Реализация матрицы «ИЛИ» может быть выполнена путём включения или исключения заданных выходов матрицы «И» с помощью транзисторов настройки матрицы «ИЛИ» для получения требуемой ДНФ. Для повышения вероятности безотказной работы логической матрицы возможно использовать транзисторное резервирование. Моделирование подтверждает работоспособность предложенного резервирования, а оценка вероятности безотказной работы доказывает высокую эффективность такой отказоустойчивой матрицы в высоконадёжных приложениях, например в аэрокосмической области, где требуется обеспечить работоспособность в условиях воздействия негативных внешних факторов.Об авторах
С. Ф Тюрин
Пермский национальный исследовательский политехнический университет
А. С Прохоров
АО «ЭР-Телеком Холдинг»
Список литературы
- Кузнецов О.П., Адельсон-Вельский Г.М. Дискретная математика для инженера. - М: Энергоатомиздат, 1988. - 450 с.
- Новиков Ф.А. Дискретная математика для программиста. - СПб.: Питер, 2001. - 502 с.
- Горбатов В.А. Фундаментальные основы дискретной математики. Информационная математика: учеб. пособие для вузов. - М.: Наука, 2000. - 540 с.
- Угрюмов Е.П. Цифровая схемотехника: учеб. пособие. - 2-е изд., перераб. и доп. - СПб.: БХВ-Петербург, 2007. - 782 с.
- Самосинхронный вычислитель для высоконадежных применений / Ю.А. Степченков [и др.] // Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС): сб. тр. всерос. науч.-техн. конф. / Институт проблем проектирования в микроэлектронике РАН. - М., 2010. - № 1.
- Библиотека самосинхронных элементов для технологии БМК / Ю.А. Степченков [и др.] // Проблемы разработки перспективных микроэлектронных систем - 2006: сб. науч. тр. / под общ. ред. А.Л. Стемпковского / Институт проблем проектирования в микроэлектронике РАН. - М., 2006. - С. 259-264.
- Тюрин С.Ф. Аляев Ю.А. Дискретная математика: практическая дискретная математика и математическая логика. - М.: Финансы и статистика, 2010. - 394 с.
- Тюрин С.Ф., Аляев Ю.А. Дискретная математика: тест-драйв по дискретной математике и математической логике. - Пермь: Изд-во Перм. нац. исслед. политехн. ун-та, 2014. - 231 с.
- Тюрин С.Ф. Дерево транзисторов для реализации систем логических функций // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2015. - № 2(14). - С. 37-45.
- Строгонов А., Цыбин С. Программируемая коммутация ПЛИС: взгляд изнутри [Электронный ресурс]. - URL: http://www.kit-e.ru/articles/plis/2010_11_56.php (дата обращения: 11.06.2017).
- Carl Carmichael. Triple Module Redundancy Design Techniques for Virtex FPGAs [Электронный ресурс]. - URL: https://www.xilinx.com/ support/documentation/application_notes/xapp197.pdf (дата обращения: 07.12.2016).
- 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).
- 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).
- CPLD (Complex Programmable Logic Device) [Электронный ресурс]. - URL: http://www.myshared.ru/slide/981511/ (дата обращения: 09.06.2017).
- Виды программируемой логики [Электронный ресурс]. - URL: http://www.pvsm.ru/programmirovanie/87810 (дата обращения: 10.06.2017).
- Programmable Logic Devices [Электронный ресурс]. - URL: http://ee.sharif.edu/~logic_circuits_t/readings/PLD.pdf (дата обращения: 04.06.2017).
- Программируемая логика и её применение в микропроцессорных системах [Электронный ресурс]. - URL: http://lektsii.org/7-10275.html (дата обращения: 08.06.2017).
- 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).
- 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).
- Ульман Дж.Д. Вычислительные аспекты СБИС / пер. с англ. А.В. Неймана; под ред. П.П. Пархоменко. - М.: Радио и связь, 1990. - 480 с.
- Сайт разработчика National Instruments [Электронный ресурс]. - URL: http://www.ni.com/multisim/ (дата обращения: 08.06.2017).
- Тюрин С.Ф. Статическая оперативная память на основе отказоустойчивой ячейки базового матричного кристалла // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2016. - № 1(17). - С. 16-27.
- Тюрин С.Ф. Автоматический синтез комбинационного автомата с помощью State Machine Editor системы QUARTUSII // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2015. - № 3(15). - С. 60-69.
- Тюрин С.Ф. Радиационно-устойчивая ячейка SRAM // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2014. - № 4(12). - С. 14-30.
Статистика
Просмотры
Аннотация - 49
PDF (Russian) - 26
Ссылки
- Ссылки не определены.