Программируемые логические интегральные схемы

Материал из Кафедра математической кибернетики
Перейти к: навигация, поиск

Общая информация о спецкурсе

В 2016-2017 учебном году проводится две полугодовых части этого спецкурса: одна в осеннем и одна в весеннем семестре. Возможно участие во второй части спецкурса без посещения первой части.

Лекторы: Шуплецов Михаил Сергеевич, Подымов Владислав Васильевич.

Время и место проведения (весенний семестр 2016-2017 учебного года): среда, с 14:35 до 16:10, аудитория 504.

Аннотация

Часть 1

Спецкурс посвящен основам проектирования цифровых вычислительных устройств с использованием программируемых логических интегральных схем (англ. Field-Programmable Gate Arrays, FPGA). В рамках спецкурса рассматривается архитектура и основные области применения современных FPGA, происходит знакомство с основными этапами проектирования цифровых устройств на базе FPGA и математическими задачами, возникающими при разработке алгоритмов автоматизации указанных этапов. Кроме того, студенты получают практические навыки проектирования простых цифровых вычислительных устройств на базе FPGA с использованием языка описания схем Verilog и систем автоматизации проектирования компании Altera (Intel).

Часть 2

Спецкурс является продолжением спецкурса "Программируемые логические интегральные схемы" (ПЛИС, FPGA) и посвящен основам проектирования цифровых вычислительных устройств с использованием ПЛИС. В рамках второй части спецкурса более детально рассматриваются вопросы аппаратной реализации алгоритмов при помощи современных FPGA и происходит более глубокое освоение языка описания аппаратуры Verilog. В рамках спецкурса студенты выполняют лабораторные работы, которые позволяют получить практические навыки проектирования цифровых вычислительных устройств на базе FPGA компании Altera (Intel).

Программа курса

Часть 1

Лекция 1. Программируемые логические интегральные схемы (ПЛИС)

Устройство ПЛИС DE0-Nano компании Altera. Уровни абстракции при проектировании ПЛИС. Маршрут проектирования ПЛИС. Языки описания схем. Базовые концепции языка Verilog.

Презентация.

Лекция 2. Основы языка Verilog

Модули и шины. Структурное описание модулей. Функциональное описание модулей. Блокирующее и неблокирующее присваивание. Параметризованные модули.

Презентация.

Лекция 3. Операционный и управляющий автоматы

Понятие об операционном автомате. Примеры. Понятие об управляющем автомате. Примеры. Поведенческое описание управляющих автоматов на языке Verilog. Примеры проектирования простых устройств с использованием операционного и управляющего автоматов.

Презентация.

Часть 2

Раздел будет наполняться по мере проведения занятий

Лекция 1. Основы

Основы построения схем: комбинационная логика, последовательная логика, защёлки и триггеры. Полезные программы и интернет-ресурсы. Домашнее задание.

Презентация.

Репозиторий спецкурса

http://mks1.cmc.msu.ru/miklesh/fpga.git

Рекомендованная литература

  • Harris D.M., Harris S.L. Digital Design and Computer Architecture. Second edition. 2013.
  • Перевод, электронная версия: Харрис Д.М., Харрис С.Л. Цифровая схемотехника и архитектура компьютера. Второе издание. 2013.