Моделирование логических элементов для реализации систем функций в ПЛИС FPGA
Моделирование логических элементов для реализации систем функций в конфигурируемых логических блоках ПЛИС типа FPGA на базе дешифратора – DC LUT и ДНФ – конфигурируемого логического элемента. Анализ системы схемотехнического моделирования NI Multisim 10.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 26.04.2019 |
Размер файла | 841,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
4
Моделирование логических элементов для реализации систем функций в ПЛИС FPGA
Введение© Тюрин С. Ф., 2013
логический блок дешифратор схемотехнический моделирование
Логический элемент (ЛЭ) программируемых логических схем (ПЛИС) FPGA (field-programmable gate array) представляет собой постоянное запоминающее устройство ПЗУ (LUT - Look Up Table), выполненное на основе мультиплексора (дерева элементарных мультиплексоров на базе передающих транзисторов), входы данных которого настраиваются так называемыми конфигурируемыми ячейками памяти[1, 2]. Недостатком такой структуры LUT FPGA является отсутствие возможности реализации систем логических функций в одном ЛЭ.
Дешифратор, как структура, обратная LUT, может позволить с помощью дополнительных аппаратных средств реализовать системы логических функций. Транзисторная схема, "обратная" структуре, может быть получена путём "разворота" LUT на 1800. Для каждого выходного инвертора создаётся альтернативная цепочка, гарантированно переводящая его выход в заданное логическое состояние. Далее, m раз объединяя по ИЛИ, соответствующие выходы из выходов получим реализацию системы из m n-разрядных логических функций на основе совершенных дизъюнктивных нормальных форм (СДНФ).
В [3, 4] предложена более экономичная ДНФ-реализация систем логических функций на основе аппаратно реализованного алгоритма ПЛМ - программируемой логической матрицы с использованием в качестве базисных функционально-полных толерантных (ФПТ) КМДП-элементов [5]. Для реализации такого подхода с использованием МОП передающих транзисторов предложены блок программируемой конъюнкции (матрица «И»), в котором требуемая j-я конъюнкция n переменных () по каждой i-й переменной будет формироваться с использованием двух бит конфигурационной памяти [6]. В набираемую цепочку входит либо переменная Si, либо её инверсия (неSi), либо эта переменная отсутствует. Тогда, например, по первой переменной первой конъюнкции, S1.1=1, (неS1.1)=0 для S1, по второй переменной S2.1=0, (неS2.1)=1 для (неS2), а по третьей, отсутствующей переменной S3.1=1, (неS3.1)=1 для (~). То есть соответствующий передающий транзистор будет открыт всегда, на любом наборе и ортогональность цепей к нему соблюдается.
В m блоках программируемой функции (матрица «ИЛИ») в конфигурационные ячейки F1.w (w=1…k) записывается единица, если эта w-конъюнкция входит в функцию, иначе записывается ноль.
Рассмотрим моделирование этих двух вариантов реализации систем логических функций.
1. Моделирование логического элемента для реализации систем логических функций в ПЛИС - FPGA - дешифратора DC -LUT
Выполним моделирование одного разряда дешифратора DC -LUT для n=2 (рис. 1) в системе схемотехнического моделирования NI Multisim 10 фирмы National Instruments Electronics Workbench Group [7,8].
На рис. 1 ключи S1, S2 моделируют переменные Х1, Х2. Ключ S1 через инвертор Х2 (транзисторы Q1,Q2) управляет передающим транзистором Х2' (Q11). Ключ S2 через инвертор Х1 (транзисторы Q5, Q6) управляет передающим транзистором Х1' (Q12). Инвертор на основе транзисторов Q3,Q4 обеспечивает логическую единицу в цепочку Х2',Х1'.
Одновременно ключи S1, S2 управляют альтернативными цепочками КНФ - S1- передающим транзистором Х2 (Q9), S2- передающим транзистором Х1 (Q10), которые передают нулевой потенциал к выходному инвертору (Q7, Q8), если на их затворы подана единица так, что к нему всегда приложена одна единственная активная цепочка. На рис. 4.6 - последовательная цепочка не Х1, неХ2 активизирована и именно она формирует логическую единицу на вход инвертора (Q7, Q8), выход которого обнулён. Это соответствует активному уровню выхода z0 (дешифратор с инверсными выходами).
Рис. 1. Моделирование одного разряда дешифратора DC -LUT для n=2 - последовательная цепочка не Х1, не Х2 активизирована, на выходе z0(Х5) - логический ноль
На рис. 2. представлено моделирование неактивной цепочки не Х1, неХ2 - ноль на затворе транзистора Х2' (Q12), логический ноль передаётся транзистором Х1 (Q10), затворы транзисторов Q9, Q12 обнулены. Это соответствует не активному уровню выхода z0 (дешифратор с инверсными выходами).
Рис. 2. Моделирование одного разряда дешифратора DC -LUT для n=2 - последовательная цепочка не Х1, неХ2 не активизирована - не Х1=0, на выходе z0(Х5) - логическая единица - не активный уровень
На рис. 3 представлено моделирование неактивной цепочки не Х1, неХ2 - ноль на затворе транзистора Х1' (Q11), логический ноль передаётся транзистором Х2 (Q9).
Рис. 3. Моделирование одного разряда дешифратора DC -LUT для n=2 - последовательная цепочка не Х1, неХ2 не активизирована - не Х2=0, на выходе z0(Х5) - логическая единица - не активный уровень
Выполним моделирование блоков программирования систем функций. Моделирование дизъюнкции трёх разрядов (0, 1, 2) дешифратора DC - LUT с инверсными выходами - реализация одной логической функции системы z0', z1', z2'=1 SR0,1,2 - значение конфигурационной памяти (рис. 4).
Рис. 4. Моделирование дизъюнкции трёх разрядов (0,1,2) дешифратора DC -LUT с инверсными выходами - реализация одной логической функции системы z0', z1', z2'=1, SR0,1,2 - значение конфигурационной памяти. На выходе z0(Х5) - логическая единица - активный уровень
На рис. 4 имеется два активных нуля z0'=0, z1'=0, z2'=1, поэтому функция равна 1 (Х5 подключена через инвертор Q1,Q3).
В случае если z0'=1, z1'=1, z2'=1, то z0', z1', z2'=0 (рис. 5).
Рис. 5. Моделирование дизъюнкции трёх разрядов (0, 1, 2) дешифратора DC -LUT - с инверсными выходами реализация одной логической функции системы z0', z1', z2'=0 SR0,1,2 - значение конфигурационной памяти, на выходе z0(Х5) - логический ноль - не активный уровень
2. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ-реализации логических функций
Моделирование матрицы И
На рис. 6 представлена модель одного разряда S0 матрицы И для логического элемента ПЛИС - FPGA на основе ДНФ. Ключи S2, S3 моделируют настройки конфигурации t1,t2. При t1=1 - существенная переменная неS0, при t2=1- существенная переменная S0. Ключ S1 формирует значение переменной S0, которое через инверторы (Q2,3,4,5) передаётся на инвертор Q7, Q8. В данном случае существенная переменная неS0, она равна 0, соответственно она активна и входит в конъюнкцию, которую "набирает" цепочка из передающих транзисторов типа Q12 для вычисления значения конъюнкции на инверторе Q9, Q10 в блоке конъюнкций (рис. 6).
Рис. 6 Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - существенная переменная неS0
Случай несущественности переменной S0 =1 моделируется так, как изображено на рис. 7, а несущественность переменной S0 =0 на рис. 8.
Рис. 7. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - переменная S0=1 несущественна
Рис. 8. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - переменная S0=0 несущественна
Если существенная переменная S0 = 0, то соответствующая конъюнкция не будет равна единице (рис. 9).
Рис. 9. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - существенная переменная S0 = 0
Если существенная переменная S0 = 1, то соответствующая конъюнкция может быть равна единице (рис. 10).
Рис. 10. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - существенная переменная S0 = 1
Моделирование матрицы ИЛИ
Выполним моделирование матрицы ИЛИ. На рис. 11 равна 0 конъюнкция, не входящая в функцию (t2=0).
Рис. 11. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - матрица ИЛИ, равна 0 конъюнкция, не входящая в функцию
На рис. 11 моделируется случай, когда равны 0 две конъюнкции (активный уровень k= 0), входящие в функцию. Выполним моделирование ситуации в матрице ИЛИ "все конъюнкции функции не активны (активный уровень k = 0) " (рис. 12).
Рис. 12. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - матрица ИЛИ, равны 0 конъюнкции, входящие в функцию
Рис. 12. Моделирование логического элемента ПЛИС - FPGA на основе ДНФ - матрица ИЛИ - все конъюнкции функции не активны (активный уровень k = 0)
Выводы
Таким образом, рассмотрены все основные случаи, необходимые для проверки логических элементов. Выполненное моделирование в системе схемотехнического моделирования NI Multisim 10 фирмы National Instruments Electronics Workbench Group подтверждает работоспособность предлагаемых технических решений DC -LUT и ДНФ-конфигурируемого логического элемента ПЛИС - FPGA, на которые поданы заявки на выдачу патента.
Список литературы
1. С. Цыбин. Программируемая коммутация ПЛИС: взгляд изнутри [Электронный ресурс]. URL: http://www.kit-e.ru/articles/plis/2010_11_56.php (дата обращения: 12.11.12).
2. Look up table implementation of fast carry for adders and counters: US 005274581A, 28.12.1993.
3. Тюрин С.Ф., Греков А.В. Набатов А.В. Микропрограммно-аппаратное восстановление логики программируемых логических интегральных схем с использованием функционально-полных толерантных элементов // Научно-технические ведомости СПб ГПУ. Информатика. Телекоммуникации. Управление. 2012. № 1(140). С. 107-112.
4. Тюрин С.Ф., Байдаров А.А., Морозов А.М., Набатов А.В. Моделирование в системе Квартус-2 конфигурируемого логического блока на основе ДНФ представления систем логических функций с использованием функционально-полных толерантных элементов // Информационно-измерительные и управляющие системы. 2012. № 3. С. 44-50.
5. Тюрин С.Ф., Громов О.А., Греков А.В., Сулейманов А.А. Функционально-полный толерантный элемент. Патент РФ № 2 496 227. Опубл. БИ №29 20.10.13 г.
6. Тюрин С.Ф., Понуровский И.С. Логический элемент ПЛИС FPGA для реализации ДНФ // Вестник Ижевского государственного технического университета. 2013. № 2. С. 095-098.
7. NI Multisim. [Электронный ресурс] URL: http://sine.ni.com/np/app/main/p/docid/nav-98/lang/ru/ (дата обращения: 27.09.2013).
8. Тюрин С.Ф., Морозов А.Н. Отказоустойчивая ячейка памяти с использованием функционально-полных толерантных элементов // Вестник Пермского университета. Сер. Математика. Механика. Информатика. 2012. № 4(12). С. 68-75.
Размещено на Allbest.ru
Подобные документы
История развития логических схем с программируемой и репрограммируемой структурами, рост уровня их интеграции и взаимосвязь между ними. Краткий обзор основных семейств Плис фирмы Xilinx. Детальный обзор архитектур и характеристик серий семейства Spartan.
контрольная работа [1,2 M], добавлен 13.06.2013Изучение логических операций и правил их преобразований. Моделирование цифровых схем, состоящих из логических вентилей. Способы описания работы логического устройства - таблицы истинности, временные диаграммы, аналитические функции, цифровые схемы.
лабораторная работа [2,1 M], добавлен 02.03.2011Особенности моделирования логических элементов в системе автоматизированного проектирования OrCAD 10.3, анализ его функционирования и оценка погрешности. Моделирование элементов иерархического уровня в системе автоматизированного проектирования GL–CAD.
лабораторная работа [1,8 M], добавлен 26.12.2009Генератор для входных параметров логических элементов. Ключевые понятия и принципы конструирования функциональных схем электронных устройств. Схемы некоторых устройств компьютера. Творческая мастерская Excel-графики, вентильные сказки братьев Гейтс.
методичка [2,1 M], добавлен 16.03.2014Применение математических методов для решения логических задач и построения логических схем. Определение и реализация булевых функций. Основные схемы функциональных элементов. Программируемые логические матрицы. Правила составления таблицы истинности.
курсовая работа [821,6 K], добавлен 19.03.2012Проектирование арифметико-логических устройств (АЛУ). Отладка описания логических схем на языке VHDL. Классификация АЛУ по способу представления чисел, характеру использования элементов и узлов. Список стандартных функций АЛУ, его описание на языке VHDL.
лабораторная работа [633,4 K], добавлен 11.03.2014Составление схемы встроенного блока логических наблюдений BILBO, методика ее модулирования и отладки. Порядок потактной разработки обнаруживающего теста с использованием системы схемотехнического проектирования "Мозайка". Описание на языке ЯЗОС.
курсовая работа [654,7 K], добавлен 26.08.2009Характеристика графических возможностей пакета MS Excel. Сущность MS Accses. Анализ систем счисления и арифметические операции над ними. Модифицированный, дополнительный и обратный коды. Принципы построения логических схем, изучение логических операций.
курсовая работа [2,3 M], добавлен 25.03.2015Современные семейства ПЛИС фирмы Xilinx, их характеристики и значимость в процессе построения систем цифровой обработки сигналов. Создание базы параметров, фактов и запрещенных комбинаций для решения открытой задачи поискового проектирования модели ПЛИС.
курсовая работа [3,6 M], добавлен 14.12.2012Понятие логических выражений, их назначение в создании алгоритмов. Список операторов сравнения, используемых в табличном редакторе Excel. Синтаксис функции "если" и примеры ее использования. Логические операторы "и", "или", "не", "истина", "ложь".
презентация [108,9 K], добавлен 07.03.2013