Языки описания схем — различия между версиями
PodymovVV (обсуждение | вклад) |
PodymovVV (обсуждение | вклад) м |
||
(не показаны 43 промежуточных версий 1 участника) | |||
Строка 1: | Строка 1: | ||
− | ''Актуальность информации: осенний семестр | + | ''Актуальность информации: осенний семестр 2022/2023 учебного года.'' |
− | Обязательный курс для студентов группы | + | Обязательный курс для студентов группы 518мк_дус. Курс проводит [[Подымов Владислав Васильевич|Подымов В.В.]] |
= Материалы занятий = | = Материалы занятий = | ||
− | |||
− | |||
'''[[Media: Hdl_lecture_01.pdf|Блок 1.]]''' Организационные вопросы. | '''[[Media: Hdl_lecture_01.pdf|Блок 1.]]''' Организационные вопросы. | ||
Строка 17: | Строка 15: | ||
'''[[Media: Hdl_lecture_05.pdf|Блок 5.]]''' Вспоминаем дискретную математику: схемы из функциональных элементов с задержкой. | '''[[Media: Hdl_lecture_05.pdf|Блок 5.]]''' Вспоминаем дискретную математику: схемы из функциональных элементов с задержкой. | ||
− | '''[[Media: Hdl_lecture_06.pdf|Блок 6.]]''' Комбинационные схемы с обратной связью. Основные триггеры. | + | '''[[Media: Hdl_lecture_06.pdf|Блок 6.]]''' Комбинационные схемы с обратной связью. Основные триггеры. |
+ | |||
+ | '''[[Media: Hdl_lecture_07.pdf|Блок 7.]]''' Ещё несколько слов о сигналах: активный уровень, передний фронт, задний фронт, такт. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_08.pdf|Блок 8.]]''' Ещё несколько слов о триггерах: синхронные триггеры, асинхронные триггеры, типичные входы триггеров. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_09.pdf|Блок 9.]]''' Последовательные схемы. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_10.pdf|Блок 10.]]''' Шины. Регистры. Уровень регистровых передач (RTL). | ||
+ | |||
+ | '''[[Media: Hdl_practice_01.pdf|Практический блок 1.]]''' Разработка комбинационных и последовательных схем. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_11.pdf|Блок 11.]]''' Verilog: от логических значений до комбинационных схем. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_12.pdf|Блок 12.]]''' Verilog: основы программной симуляции. | ||
+ | |||
+ | '''[[Media: Hdl_practice_02.pdf|Практический блок 2.]]''' Verilog и непрерывное присваивание. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_13.pdf|Блок 13.]]''' Verilog: синтезируемость кода | ||
+ | |||
+ | '''[[Media: Hdl_lecture_14.pdf|Блок 14.]]''' Verilog: ещё пара слов о процедурных командах. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_15.pdf|Блок 15.]]''' Verilog: аппаратная семантика постоянной процедуры. | ||
+ | |||
+ | '''[[Media: Hdl_practice_03.pdf|Практический блок 3.]]''' Verilog и процедуры. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_16.pdf|Блок 16.]]''' Вспоминаем дискретную математику: автоматы. | ||
+ | |||
+ | '''[[Media: Hdl_lecture_17.pdf|Блок 17.]]''' Автоматы и синхронные схемы. | ||
− | + | '''[[Media: Hdl_lecture_18.pdf|Блок 18.]]''' Пара слов о символьных автоматах. | |
− | '''[[Media: | + | '''[[Media: Hdl_practice_04.pdf|Практический блок 4.]]''' Автоматы. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_19.pdf|Блок 19.]]''' Verilog: немного синтаксического сахара. |
− | '''[[Media: | + | '''[[Media: Hdl_practice_05.pdf|Практический блок 5.]]''' Verilog и продвинутый синтаксис: параметры, массивы, генерация. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_20.pdf|Блок 20.]]''' Verilog: как реализовать автомат. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_21.pdf|Блок 21.]]''' "Грамотная" разработка схем. Данные и управление. Операционный и управляющий автоматы. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_22.pdf|Блок 22.]]''' Как спроектировать операционный автомат. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_23.pdf|Блок 23.]]''' Как дополнить операционный автомат управляющим. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_24.pdf|Блок 24.]]''' Как уменьшить автомат. Автоматы с таймерами. |
− | '''[[Media: | + | '''[[Media: Hdl_practice_06.pdf|Практический блок 6.]]''' Операционный и управляющий автоматы в Verilog. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_aux_01.pdf|Кое-что ещё 1.]]''' Протоколы передачи данных. Общее описание протокола UART. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_aux_02.pdf|Кое-что ещё 2.]]''' Схемная реализация протокола UART. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_aux_03.pdf|Кое-что ещё 3.]]''' Классификация протоколов передачи данных. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_aux_04.pdf|Кое-что ещё 4.]]''' Протокол SPI для двух устройств. |
− | '''[[Media: | + | '''[[Media: Hdl_lecture_aux_05.pdf|Кое-что ещё 5.]]''' Протокол SPI для произвольного числа устройств. Состояние высокого импеданса. |
= Условия получения зачёта = | = Условия получения зачёта = |
Версия 11:42, 7 сентября 2022
Актуальность информации: осенний семестр 2022/2023 учебного года.
Обязательный курс для студентов группы 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.