Метод «Безумного Макса» для тренировки проектировщиков кастомных вычисляющих структур
Когда студент устраивается на работу в электронную компанию, очень здорово, если он уже умеет строить одну и ту же электронную схему разными способами, в зависимости от требований пропускной способности, максимальной тактовой частоты, размера и энергопотребления.
Как натренировать такое умение? Для новых домашних работ в программе Школы Синтеза Цифровых Схем мы решили разодрать на блоки реальный процессор и дать студентам задачу собирать разные специализированные вычислительные устройства из этих блоков, примерно как герои фильма "Безумный Макс: Дорога ярости" собирали свои боевые драндулеты из частей реальных автомобилей.
В качестве первой жертвы мы выбрали открытый RISC-V процессор Wally, полное описание которого будет в книге RISC-V Microprocessor System-On-Chip Design, by David Harris, James Stine, Sarah Harris, Rose Thompson, которая выходит в следущем году.
Нам не нужно ждать выхода книги, так как исходный код Wally уже есть на гитхабе. Технология такая: мы клонируем репо Wally рядом с репо домашних работ systemverilog-homework, оборачиваем блок работы с числами с плавающей точкой (FPU - Floating Point Unit) в наши собственные врапперы, после чего даем студентам серию заданий построить вычислители фиксированных функций из этих блоков.
https://habr.com/ru/articles/862734/Алгоритмы и Структуры данных