Привет, Хабр! Не так давно в нашем блоге мы анонсировали студенческий инженерный «хакатон» YADRO SoC Design Challenge по проектированию современных микропроцессоров на базе архитектуры RISC-V. Теперь логично было бы поделиться подробным рассказом о том, как это произошло.
Спойлер: первый блин оказался не комом и в чем-то событие даже приятно удивило.
Подробности читайте под катом.
Что за инженерный хакатон?
Слово «хакатон» обычно ассоциируется с информатикой и программированием, но эта идея уже не актуальна.В настоящее время под этим термином понимаются любые соревнования (в том числе аппаратные), на которых собираются люди, чтобы представить идеи решения различных прикладных задач в ограниченное время.
И уже даже не обязательно собираться в одном месте: например, на платформе QuickSilicon для инженеров-аппаратистов позволяет организовывать виртуальные соревнования.
Наше мероприятие появилось как развитие идеи постепенного вхождения в профессию, которая лежит в основе Школа синтеза цифровых схем Сколково , для которого YADRO и Syntacore выступили партнерами и приглашенными экспертами.
Там ребята получают первое представление о развитии микроэлектроники, для дальнейшего изучения схемотехники и архитектуры компьютеров уже в старших классах.
На любом хакатоне атмосферу создают испытания.
У нас их было три и каждый представлен как отдельный трек.
РТЛ-дизайн .
Первый этап проектирования чипов для смартфонов, компьютеров, ускорителей машинного обучения и многого другого.
Инженеры-проектировщики описывают и моделируют цифровые блоки на языках описания аппаратуры Verilog или VHDL, а затем используют программы логического синтеза для перевода полученных описаний в принципиальные схемы.
Функциональная проверка .
Обязательный этап разработки цифровых устройств, предназначенный для проверки аппаратной конструкции микросхем на предмет их соответствия заявленным характеристикам, а также поведения в различных ситуациях и условиях.
Проверка занимает до 80% от общего времени, затраченного на работу над проектом, поскольку «заплатку» нельзя выпустить на микросхему после ее отправки в производство.
Даже небольшая интегральная схема, например, микроконтроллер, представляет собой набор из десятков субмодулей, зачастую со сложным функционалом, и все необходимо проверять.
Топологическое проектирование .
— этап разработки интегральных схем, представляющий собой процесс преобразования электрической или логической схемы в описание послойной реализации компонентов схемы (транзисторов, диодов, резисторов) и связей между ними в многослойную интегральную схему.
состав.
Это все практические задачи, над которыми работают инженеры ЯДРО.
Участникам были даны задания в упрощенном формате, соответствующем их уровню знаний.
Место и участники
Отличием такого мероприятия от хакатонов по кодированию является аппаратная составляющая, которая накладывает определенные условия при выборе места проведения.Например, трек по проектированию RTL сложно представить без предоставления участникам исходного кода самого процессора; трек по верификации сложно представить без среды для тестирования и проверки работоспособности.
Поэтому площадкой для проведения инженерного хакатона была выбрана территория нашего партнёра — Национального исследовательского университета МИЭТ.
Выбор партнера не случаен – НИУ МИЭТ уже более полувека является одним из ключевых вузов, готовящих кадры для электронной промышленности по широкому спектру специальностей: от материаловедения до создания технологий микроэлектроники.
, и от проектирования микросхем до проектирования фотошаблонов для их производства.
Важнейшей частью подготовки инженера-микроэлектроника является практика.
Поэтому совместно с НИУ МИЭТ мы запланировали ряд мероприятий, дающих возможность попрактиковаться в решении реальных производственных задач, первым из которых стал хакатон YADRO SoC Design Challenge. На таких соревнованиях студенты теперь могут проверить свои знания на реальных кейсах и быстро включиться в процесс разработки после окончания обучения.
Мы предполагали, что большая часть участников будет из самого МИТА, но были приятно удивлены тем, что поучаствовать захотели и студенты других вузов – МИУМ, НИУ ВШ, МГТУ.
Баумана, Университет Иннополис, Санкт-Петербургский политехнический университет, РТУ МИРЭА и другие.
Некоторые ребята даже специально приехали на мероприятие из Казани и Санкт-Петербурга.
Задания
Что пришлось сделать участникам на каждом треке? РТЛ-дизайн .Задача участников заключалась в том, чтобы повысить производительность двухкаскадного процессора RISC-V путем модификации его микроархитектуры путем добавления новых инструкций (умножение/деление), увеличения количества каскадов, добавления предсказания ветвей, оптимизации декодера команд и других блоков.
Участники могли сами решить, как повысить производительность.
Результаты оценивались путем анализа STA процессора и запуска теста CoreMark. Функциональная проверка .
Участникам необходимо было написать часть среды проверки с использованием SystemVerilog Assertions (SVA) (перенести спецификацию тестируемого устройства с естественного языка на SVA).
По итогам хакатона участники должны были обнаружить и указать как можно больше проектов, содержащих ошибки, а в идеале — сделать предположение о сути ошибок, содержащихся в проекте.
Топологическое проектирование .
В этом треке с использованием библиотеки стандартных ячеек необходимо было вручную разработать схемы и топологии триггеров, счетчика и делителя частоты, а также топологию СВЧ-переключателя.
Затем провести проверку разработанных топологий и извлечь паразитные компоненты, а также смоделировать схемы с учетом извлечения и получить наилучший результат.
В следующих статьях мы подробно разберем задачи хакатона с авторами треков — преподавателями МИЭТ.Поскольку задачи были максимально приближены к «боевым», мы предоставили участникам самый современный набор инструментов, которым пользуются все передовые разработчики микроэлектроники.
Организаторы MIЭT подготовили процесс Continuous Integration для проверки результатов (поверьте, это было непросто), скрипты сборки для работы в Vivado Xilinx, RISC-V Formal Verification Framework и другие инструменты.
Такие условия позволяют приравнять участие в хакатоне к реальному производственному опыту.
Последним «кирпичиком» в подготовке хакатона стала проверка необходимого уровня знаний участников, чтобы хакатон был максимально полезен для всех.
В конце концов, какой смысл в текущих задачах и условиях, если участники не могут к ним приблизиться? Поэтому мы провели небольшой отборочный тест для каждого из треков.
В комментариях к предыдущему посту был вопрос по поводу тестовых заданий, и теперь мы можем их вам дать.Вполне допускаем, что они могут показаться вам простыми, но не забывайте, что это студент хакатон.
Программа
Территория университета — чувствительный объект, а участники еще очень молодые, поэтому мы решили не делать хакатон хардкорным, с постоянной работой без перерывов на сон и еду.Вся программа была разделена на два дня – субботу и воскресенье, что было удобнее для участников.
Тем не менее работа над задачами продолжалась до последнего момента, что выразилось в том, что для многих ребят это был первый опыт соревнований такого рода.
Было бы жестоко и непродуктивно оставлять студентов наедине со своими задачами, поэтому в течение двух дней на каждом треке командам помогали наставники — наши специалисты из YADRO Microprocessors и Syntacore, имеющие практический промышленный опыт разработки микропроцессоров.
В частности, они помогли детям с декомпозицией крупных задач на более мелкие.
Это был один из уроков, которые мы усвоили как организаторы — стоило описывать задачи подробнее и разбивать их на этапы, ведь из-за ограниченного реального опыта разработки у участников даже небольшой сбой в начале может помешать прогрессу на задача в целом.
Помимо работы над задачами участники получили удовольствие от общения и консультаций с нашими экспертами.
Ведущий архитектор и руководитель отдела разработки микропроцессоров YADRO Алексей Кожин провел мастер-класс, на котором рассказал о необходимых знаниях, навыках и возможностях для реализации карьерных маршрутов в каждом из трех представленных на хакатоне направлений.
Полученные результаты
Достигли ли мы своих целей как организаторы – абсолютно.Мы убеждены, что аппаратные соревнования не менее актуальны, чем «классические» хакатоны по программированию.
И наши специалисты были рады видеть столько молодых и увлеченных ребят, ищущих нестандартные решения.
Что ж, нельзя не отметить победителей.
Победителем трека «РТЛ-дизайн» стала команда МИЭТ в составе двух студентов – Герасименко Евгения и Демичева Сергея (Институт МПГУ, 4 курс).
Победителем в треке «Топологическое проектирование» стал Артем Мордыга (Институт НМСТ, 4 курс), а в треке «Функциональная верификация» – команда НИУ ВШ? в составе: Анастасия Овчинникова, Илья Корчагин и Андрей Угодников.
Среди победителей были и студенты МГТУ.
Баумана и Университет Иннополис.
Все победители получили до 100 баллов за индивидуальные достижения при поступлении в магистратуру МИЭТ, а также в качестве призов отладочные платы на базе ПЛИС и логические анализаторы; Данные комплекты оборудования позволят студентам и дальше совершенствовать свои навыки проектирования современных микропроцессоров.
В этом году трасса РТЛ была самой многочисленной – на ней соревновались 14 команд. Для нас это четкий сигнал о том, что необходимо уделить дополнительное внимание проверочным и топологическим трекам: например, заранее провести вводные семинары по этим направлениям с нашими специалистами.
Что вы думаете о хакатонах по инженерному оборудованию, хотели бы вы в них поучаствовать? Теги: #Производство и разработка электроники #микроконтроллеры #Процессоры #хакатон #Хакатоны #электроника #risc-v #микропроцессоры #FPGA #Yadro
-
В Поисках Идеального Игрового Ноутбука
19 Oct, 24 -
Роль Погодных Приложений В Реальной Жизни
19 Oct, 24 -
Scalaxy Отключает Облако Xen
19 Oct, 24 -
Телевизоры Lg Electronics И Протокол Dlna
19 Oct, 24 -
Ад Под Названием Jsmpp
19 Oct, 24