МИНОБРНАУКИ РОССИИ
–––––––––––––––––––––––––––––––––––––––––––––––––––
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В. И. Ульянова (Ленина)
–––––––––––––––––––––––––––––––––––––––––––
О. И. БУРЕНЕВА
ЭЛЕМЕНТЫ СИСТЕМ НА КРИСТАЛЛЕ
Учебно-методическое пособие
Санкт-Петербург Издательство СПбГЭТУ «ЛЭТИ»
2018
УДК 004.3(07) ББК З973.2-018я7
Б90
Буренева О. И.
Б90 Элементы систем на кристалле: учеб.-метод. пособие. СПб.: Изд-во СПбГЭТУ «ЛЭТИ», 2018. 32 с.
ISBN 978-5-7629-2264-7
Содержит описания лабораторных работ по созданию и отладке систем на базе программируемых логических микросхем.
Предназначено для подготовки магистров по направлению «Информатика и вычислительная техника» по программе «Микросистемные компьютерные технологии: системы на кристалле». Может быть использовано и при подготовке специалистов и бакалавров по профилю «Вычислительные машины, комплексы, системы и сети», а также специалистами, разрабатывающими электронную аппаратуру с использованием программируемых логических интегральных схем.
УДК 004.3(07)
ББК З973.2-018я7
Рецензент канд. физ.-мат. наук И. А. Хахаев (ИТМО).
Утверждено редакционно-издательским советом университета
в качестве учебно-методического пособия
ISBN 978-5-7629-2264-7 |
© СПбГЭТУ «ЛЭТИ», 2018 |
2
Введение
Современные программируемые логические интегральные схемы (ПЛИС) являются функционально-сложными элементами и все чаще используются при разработке встроенных систем. Каждое новое поколение FPGA отличается более высокими скоростями работы, большей степенью интеграции, увеличенным объемом памяти и более широкой номенклатурой специализированных элементов [1].
Для выполнения эффективных разработок, разработчику необходимо хорошо знать характеристики доступных блоков, ясно представлять тенденции развития рынка прикладных систем и понимать, как наиболее эффективно использовать возможности FPGA в этих системах.
Цикл включает в себя восемь лабораторных работ. Первые три работы направлены на получение навыков проектирования цифровых устройств различного типа на ПЛИС с последующим анализом характеристик результата с использованием специализированных программных средств среды проектирования Quartus II. Последующие работы ориентированы на освоение способов настройки и особенностей использования специализированных элементов систем на кристалле: распределенной и блочной памяти, процессорного soft-ядра, проектирование цифрового фильтра с использованием средств распределенной арифметики. Одна работа предполагает знакомство с маршрутом проектирования с использованием сторонней САПР, результаты работы которой используются в имплементирующей системе. Восьмая работа посвящена знакомству с JTAG-интерфейсом.
Во всех работах предусмотрено выполнение моделирования разработанных устройств, а также проведение макетных экспериментов, предполагающих использование отладочного набора с установленными ПЛИС компании «Altera», например производимого фирмой «TERASIC» (DE0, DE1, DE0Nano или аналогичные).
3
Лабораторная работа 1 ПРОЕКТИРОВАНИЕ КОМБИНАЦИОННОГО УЗЛА
Цель работы состоит в освоении маршрута проектирования цифровых комбинационных устройств в системе проектирования Quartus II и получении навыков моделирования, анализа результатов проектирования и имплементации проекта в учебную плату.
Краткие теоретические сведения
Под комбинационным узлом (КУ) понимается узел, значения выходных сигналов которого в каждый момент времени полностью определяются значениями сигналов на его входах. Для описания функционирования КУ используются функции алгебры логики, которые могут быть представлены таблицей истинности, аналитическим выражением и другими способами.
Для реализации функции КУ, заданной логическим выражением необходимо выполнить ее декомпозицию на функции имеющегося элементного базиса и прорисовать соответствующую комбинационную схему.
В качестве универсального логического модуля для воспроизведения функций КУ может быть использован мультиплексор. Произвольную функцию от аргументов, поступающих на управляющие входы, можно воспроизвести методом «мультиплексор-константа», подавая на его информационные входы константы 0 и 1. Альтернативой служит метод «мультиплексорфункция», при котором на управляющие входы мультиплексора подается часть входных переменных, а на информационные – остаточные функции, сформированные из оставшихся аргументов.
Третий вариант реализации функций КУ связан с использованием дешифратора: на выходах дешифратора вырабатываются все минтермы, которые можно составить из заданного числа аргументов, а логическая функция в совершенной дизъюнктивной нормальной форме есть дизъюнкция некоторого числа таких минтермов. Для получения функции требуется собрать нужные минтермы по схеме ИЛИ.
Задание на работу
1. Используя последовательность действий, приведенную в приложении, разработать в САПР Quartus II проекты, реализующие функцию следующими способами:
– с использованием элементарного логического базиса;
4
–на основе LPM-модуля мультиплексора (4:1) и логических элементов по схеме «мультиплексор-функция»;
–на основе LPM-модуля дешифратора.
2.Для каждого проекта оценить затраты на реализацию, проанализировать RTL-представление проекта, иерархию использованных примитивов, внутренних регистров и настройки LUT-таблиц, выполнить моделирование проекта.
3.Собрать общий проект, включив в него разработанные преобразователи в качестве отдельных параллельно работающих блоков. Проанализировать RTL-представление проекта, иерархию использованных элементов; определить временные характеристики проекта с использованием анализатора Timing Analyzer.
4.Провести имплементацию проекта в учебную плату: входные сигналы формировать на движковых переключателях, результаты работы наблюдать на светодиодных индикаторах.
Содержание отчета
1.По каждому из трех проектов отчет должен содержать: задание на работу; описание процесса проектирования; исходные файлы (схемные файлы или языковые описания); результаты анализа затрат оборудования, RTLописаний проекта и иерархии использованных элементов; временные диаграммы работы.
2.Для общего проекта верхнего уровня необходимо представить: исходный файл; результаты анализа RTL-представления, иерархию использованных примитивов; результаты моделирования; результаты временного анализа проекта с использованием Timing Analyzer; описание результатов макетирования.
3.Выводы по работе.
Варианты заданий
Вариант |
Функция |
Вариант |
Функция |
|
|
|
|
1 |
0, 2, 3, 4, 7, 9, 13, 15 |
5 |
0, 1, 3, 6, 7, 10, 12, 15 |
2 |
1, 2, 3, 5, 10, 11, 14 |
6 |
1, 2, 4, 6, 8, 10, 12, 14 |
3 |
2, 4, 5, 9, 10, 14, 15 |
7 |
2, 3, 5, 8, 9, 13, 14, 15 |
4 |
3, 4, 5, 7, 8, 10, 13, 14 |
8 |
3, 5, 7, 9, 11, 13, 15 |
5