Языки описания схем
Обязательный курс для студентов группы 518/2. Курс проводит Подымов В.В.
Содержание
Материалы занятий
Здесь будут выкладываться план и слайды занятий по мере их проведения
Блок 1. Небольшое вступление и организационные вопросы.
Блок 2. КМОП-транзисторы: как это работает, и причём тут схемы из функциональных элементов.
Блок 3. Комбинационные схемы.
Блок 4. Последовательные схемы, и немного о тактовом сигнале
Блок 5. Модули. Шины. Регистры. RTL.
Блок 6. Практика: построение последовательных схем.
Блок 7. ASIC и ПЛИС.
Блок 8. Verilog: базовый синтаксис.
Блок 9. Verilog: симуляция.
Блок 10. Практика: Verilog (база).
Блок 11. Что такое процессор. Архитектура системы команд.
Блок 12. Основные функциональные блоки процессора.
Блок 13. Verilog: синтез.
Блок 14. Понятия операционного и управляющего автоматов.
Блок 15. Как спроектировать операционный автомат. Комбинационный управляющий автомат.
Блок 16. Процессор: операционный автомат, комбинационный управляющий автомат.
Условия получения зачёта
Необходимое и достаточное условие получения зачёта - это выполнение большого задания, коротко описываемого так: спроектировать и функционально протестировать процессор на языке Verilog.
Предыдущая версия задания удалена. Эта версия остаётся достаточной для зачёта, однако задание по умолчанию изменилось.
Часть 1
Спроектировать на языке Verilog основные функциональные блоки процессора (блок 12) для модельной архитектуры системы команд (блок 11). Фактическое число ячеек в памяти данных можно выбирать произвольным - достаточным для полноценной наглядной функциональной симуляции.
Достаточное техническое оснащение
Для полноценного выполнения задания курса достаточно иметь компьютер с Linux и установленными на нём (как правило, стандартными) пакетами
- iverilog (компилятор схемных дизайнов) и
- gtkwave (визуализатор диаграмм сигналов).
Допускается (хотя и не поощряется ввиду возможных проблем и неудобств) работа в Windows: достаточно скачать и установить Icarus Verilog, в стандартной комплектации содержащий исполняемые файлы
- iverilog.exe (компилятор схемных дизайнов),
- vvp.exe (средство исполнения скомпилированных дизайнов) и
- gtkwave.exe (визуализатор диаграмм сигналов).
Работа со схемными дизайнами при помощи других средств не возбраняется.
Литература
Основная
- Harris, Harris, Digital Design and Computer Architecture, 2nd Edition, Elseveir, 2013
- Thomas, Moorby, The Verilog Hardware Description Language, 5th Edition, Springer, 2008
Дополнительная
- J. Hennesy, D. Patterson, Computer Organization and Design: The Hardware/Software Interface, 5th Edition, Morgan Kaufmann, 2013
- S. Palnitkar, Verilog HDL, 2nd Edition, 2003
- F. Vahid, Digital Design with RTL Design, VHDL, and Verilog 2nd Edition, Wiley, 2010