Языки описания схем

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


Актуальность информации: осенний семестр 2023/2024 учебного года.

Обязательный курс для студентов группы 518мк_дус. Курс проводит Подымов В.В.

Материалы занятий

Блок 1. Организационные вопросы.

Блок 2. Вспоминаем дискретную математику: булевы функции, булевы формулы, схемы из функциональных элементов.

Блок 3. Как устроена цифровая аппаратура. Немного физики: как схемы из функциональных элементов связаны с реальным миром.

Блок 4. Логические вентили. Комбинационные схемы.

Блок 5. Вспоминаем дискретную математику: схемы из функциональных элементов с задержкой.

Блок 6. Комбинационные схемы с обратной связью. Основные триггеры.

Блок 7. Ещё несколько слов о сигналах: активный уровень, передний фронт, задний фронт, такт.

Блок 8. Ещё несколько слов о триггерах: синхронные триггеры, асинхронные триггеры, типичные входы триггеров.

Блок 9. Последовательные схемы.

Блок 10. Шины. Регистры. Уровень регистровых передач (RTL).

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

Прошлогодние

Практический блок 1. Разработка комбинационных и последовательных схем.

Блок 11. Verilog: от логических значений до комбинационных схем.

Блок 12. Verilog: основы программной симуляции.

Практический блок 2. Verilog и непрерывное присваивание.

Блок 13. Verilog: синтезируемость кода

Блок 14. Verilog: ещё пара слов о процедурных командах.

Блок 15. Verilog: аппаратная семантика постоянной процедуры.

Практический блок 3. Verilog и процедуры.

Блок 16. Вспоминаем дискретную математику: автоматы.

Блок 17. Автоматы и синхронные схемы.

Блок 18. Пара слов о символьных автоматах.

Практический блок 4. Автоматы.

Блок 19. Verilog: немного синтаксического сахара.

Практический блок 5. Verilog и продвинутый синтаксис: параметры, массивы, генерация.

Блок 20. Verilog: как реализовать автомат.

Блок 21. "Грамотная" разработка схем. Данные и управление. Операционный и управляющий автоматы.

Блок 22. Как спроектировать операционный автомат.

Блок 23. Как дополнить операционный автомат управляющим.

Блок 24. Как уменьшить автомат. Автоматы с таймерами.

Практический блок 6. Операционный и управляющий автоматы в Verilog.

Кое-что ещё 1. Протоколы передачи данных. Общее описание протокола UART.

Кое-что ещё 2. Схемная реализация протокола UART.

Кое-что ещё 3. Классификация протоколов передачи данных.

Кое-что ещё 4. Протокол SPI для двух устройств.

Кое-что ещё 5. Протокол SPI для произвольного числа устройств. Состояние высокого импеданса.

Условия получения зачёта

(Cм. слайды "Блок 1") Для получения зачёта достаточно в срок сдать решения четырёх заданий, которые будут выдаваться по мере проведения занятий. Если хотя бы одно решение не сдано в срок, то для получения зачёта потребуется выполнить особое штрафное задание.

Литература

Основная

  • Harris, Harris. Digital Design and Computer Architecture, 2nd Edition. Elseveir. 2013.
    • Перевод: "Харрис, Харрис. Цифровая схемотехника и архитектура компьютера. ДМК Пресс. 2018."
    • В сети в открытом доступе лежат и другие версии перевода (не выпущенные официально в печать).
  • Thomas, Moorby. The Verilog Hardware Description Language, 5th Edition. Springer. 2008.

Дополнительная

  • Hennesy, Patterson. Computer Organization and Design: The Hardware/Software Interface, 5th Edition. Morgan Kaufmann. 2013.
  • Palnitkar. Verilog HDL, 2nd Edition. 2003.
  • Vahid. Digital Design with RTL Design, VHDL, and Verilog, 2nd Edition. Wiley. 2010.