Как стать автором
Обновить

Что делать, когда мигать лампочками уже скучно, а проектировать процессор еще сложно

Разработка игр *FPGA *Программирование микроконтроллеров *Дизайн игр *Электроника для начинающих

ПЛИС и Verilog - естественная платформа для обучения будущего проектировщика процессоров, так же как Си и микроконтроллеры - естественная платформа для обучения будущего программиста встроенных систем.

И один, и другой путь начинается с мигания огоньками на недорогой плате, но дальше пути расходятся. Встроенный программист смотрит в сторону самоуправляющихся авто, с задачами на RTOS и распознаванием ситуации с помощью AI в GPU. Проектировщик микросхем на уровне регистровых передач смотрит в сторону групп, разрабатывающих CPU, GPU, NPU и сетевые чипы, но какие упражнения он может делать между миганием огоньками и трудоустройством в Интел?

С встроенным программированием понятно - студенты и школьники могут развлекаться и соревноваться в роботике. От простых роботов на Ардуине до продвинутых подводных роботов в коледже Харви-Мадд, где преподает Дэвид Харрис, автор известного учебника Харрис & Харрис (см. PDF с предисловием к новому изданию для RISC-V).

Студенты в Харви-Мадд с подводным роботом-торпедой
Студенты в Харви-Мадд с подводным роботом-торпедой

А как развлекаться и соревноваться юному схемотехнику? Конечно роботов можно строить и кодируя конечные автоматы в FPGA, но это более муторно, чем делать это программой на микроконтроллере. Можно задизайнить собственный процессор, но для этого нужно инвестировать много внимания в компьютерную архитектуру (ассемблер) и микроархитектуру (конвейеры, кэши), и кайф там получается сильно не сразу, скажем простейший однотактовый процессор мало кого впечатляет. Вот когда дело доходит до алгоритма Томасуло - там да, но до этого надо дойти.

Учить проектировать майнеры критповалюты? Это тоже не всем интересно и есть порог входа. Кроме этого, если мы скажем организуем десять команд хакатона по майнингу на FPGA, чем мы будем давать им призы? Подарочными картами "Эльдорадо"? А зачем, если они уже намайнили.

Этот вопрос уже лет пять обсуждается в МИЭТ, Роснано и вот сейчас на Сколковской Школе Синтеза Цифровых Схем. Пока мы нашли две темы, которые сложнее мигания и проще процессоров:

  1. Создание видео-игр со спрайтами.

  2. Распознавание и генерация звуков и мелодий.

Игры довольно простые, но фишка в том, что такая игра - это не программа, а схема, причем без процессора. Конечный автомат из логических элементов и D-триггеров. Игровые автоматы строили таким макаром в начале 1970-х, из микросхем малой степени интеграции (потом стали делать с процессором). Но то, что вы будете делать - это не ретрокомпьютинг/хоббизм/ностальгантство, а реализация таких схем современными методами. Проектировщик айфонов в Apple тоже синтезирует схемы из кода на языке описания аппаратуры Verilog.

До школы в Сколково мы делали такую школу в Зеленограде, и когда я показал видео с школьником, который спроектировал собственную игру, менеджеру образовательных программ компании Intel Ларри Ландису, у него была вот такая реакция:

Larry Landis / Ларри Ландис:

"Nice work by that kid, thats quite a bit of work, quite impressive! He looks like he is what maybe 14? Do you think he would be interested in an Intel internship :^) ?"

"Хорошая работа этого паренька, это довольно много работы, весьма впечатляюще! Похоже, ему лет 14? Как вы думаете, он будет заинтересован в стажировке в Intel: ^)?"

Если вы хотите посмотреть, как написать на языке описания аппаратуры Verilog код, который синтезируется в цифровую схему, которая конфигурируется в ПЛИС, вы можете просто заехать в эту субботу в 12 часов в Сколково. И не только посмотреть, но и поучаствовать - вам выдадут FPGA плату.

Сообщение от Александра Биленко, организатора ChipEXPO и Сколковской Школы Синтеза Цифровых Схем:

Уважаемые участники Сколковской школы синтеза цифровых схем !

Следующее занятие состоится 11  декабря  в Технопарке Сколково,
Капсула № 2  с 12:00 до 15:00.

(Информация для тех, кто не знает, как добираться в Сколково( платформа «Инновационный Центр»): 

1.проще всего по МЦД-1 (с Белорусского вокзала обычные электрички каждые 5-10 минут(в пути 25 минут), экспресс каждые пол-часа (в пути 17 минут);

2. Пересадка на МЦД-1  на станциях метро Беговая, Славянский бульвар, Кунцево.

Далее пешком 10 минут до БЦ "Амальтея", пройти через БЦ до входа в Технопарк.)

Тема занятия:

Модульная графичеcкая игра со спрайтами.Спикеры:
Михаил Коробков, Команда проекта FPGA-Systems.ru
Сергей Иванец, Черниговский Технический Университет (удаленно)

На этом занятии понадобится плата FPGA и монитор VGA, который будет подключаться к плате и на него будут выводиться результаты работы программ.Мы установим в Капсуле № 2 необходимое количество компьютеров для тех, у кого нет ноутбука (или для тех, кто не захочет привозить свой ноутбук). Также привезем необходимое количество мониторов (для этого я и хочу понять, сколько будет человек на занятии). 

Для записи на занятие ОФФЛАЙН, пришлите на адрес [email protected] свои Ф.И.О., а также наличие платы FPGA и ноутбука с установленным ПО. Получение каждого такого письма я буду подтверждать отправителю. 

На 09 декабря уже получены заявки от 14 человек. В Капсуле №2 может разместиться  20 - 25 человек.

В этот раз мы опробуем несколько иную схему коммуникаций для ОНЛАЙН участников: всех онлайн участников мы приглашаем в конференцию ZOOM с регистрацией. 

Заранее зарегистрируйтесь для участия в конференции:https://zoom.us/meeting/register/tJEkdeGpqT0sGNAlMRhyQe_66H04ep_Yvlyv

После регистрации вы получите электронное письмо с подтверждением, содержащим информацию о входе в конференцию.

Как и ранее, будет вестись прямая трансляция и запись на канале ChipEXPO в Youtube.

Ссылка на трансляцию в Youtube: https://www.youtube.com/watch?v=UQyshiP8B0g

Подписывайтесь на канал и присоединяйтесь к Школе !

И не забывайте о коварном COVID-2019!!!! Маски, дезинфекторы и дистанция - все это нужно соблюдать!!!!!

Итак, приступаем к формировании группы на 11 декабря !

А вот фрагмент позапрошлого занятия, с распознаванием и генерацией мелодий. Для него мы пригласили, помимо преподавателей МФТИ и МИРЭА, преподавательницу флейты Марию Беличенкоинстаграмме). Вот как ее игра распознавалась FPGA платой:

Вот текущее расписание на следущие субботы:

  • 30 октября 2021: 1. Введение в маршрут проектирования и упражнения с комбинационной логикой.

  • 13 ноября 2021: 2. Архитектура: вид процессора с точки зрения программиста.

  • 20 ноября 2021: 3. Последовательностая логика и конечные автоматы.

  • 27 ноября 2021: 4. Разбор учебного проекта: распознавание и генерация звуков и мелодий.

  • 4 декабря 2021: 5. Конвейеры и систолические массивы, с приложением для искуственного интеллекта.

  • 11 декабря 2021: 6. Разбор учебного проекта: модульная графичеcкая игра со спрайтами.

  • 18 декабря 2021: 7. Микроархитектура однотактового процессора.

  • 25 декабря 2021: 8. Микроархитектура конвейерного процессора.

  • 15 января 2022: 9. Проектирование процессорного кэша и измерение его производительности.

  • 22 января 2022: 10. Стандартные блоки и приемы проектирования: очереди FIFO и кредитные счетчики.

  • 29 января 2022: 11. Стандартные блоки и приемы проектирования: арбитры, банки и разделение памяти.

  • 5 февраля 2022: 12. Пробуем маршрут RTL2GDSII: как разрабатываются массовые микросхемы. Часть I.

  • 12 февраля 2022: 13. Пробуем маршрут RTL2GDSII: как разрабатываются массовые микросхемы. Часть II.

  • 19 февраля 2022: 14. Имитиция собеседования на позицию проектировщика цифровых микросхем.

  • 26 февраля 2022: 15. Разбор имитации интервью с вручением поощрительных призов.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
В каких-бы соревнованиях вы бы поучаствовали?
8.16% В соревнованиях по фигурному миганию огоньками на макетке и ПЛИС / FPGA 4
12.24% В соревнованиях по распознованию и синтезу звуков и мелодий на FPGA 6
28.57% В соревнованиях по разработке видео игр на FPGA 14
44.9% В соревнованиях по конструированию процессоров на FPGA 22
40.82% Ни в каких! Я усмирил гордыню и признал, что дизанить железо могут только в Америке! 20
Проголосовали 49 пользователей. Воздержался 21 пользователь.
Теги:
Хабы:
Всего голосов 17: ↑15 и ↓2 +13
Просмотры 9.4K
Комментарии Комментарии 50