Получи опыт решения задач по проектированию систем на кристалле (SoC) и созданию современных микропроцессоров RISC-V.
Треки:
1. Топологическое проектирование
О чем трек:Разработка топологии — это создание проекта расположения и соединения элементов микросхемы на кристалле. На этом этапе решается, как транзисторы и другие компоненты ASIC размещаются и взаимодействуют между собой. Цель топологического проектирования — создать оптимальную структуру схемы, которая обеспечит высокую производительность, минимальное энергопотребление и наименьшую площадь на чипе.
Цифровой маршрут проектирования топологии сегодня незаменим при разработке современных ASIC, содержащих миллионы и миллиарды транзисторов. Для создания схемы используются не отдельные транзисторы, а библиотеки стандартных ячеек из логических вентилей. На треке вы погрузитесь в ключевые задачи, которые решает инженер по топологическому проектированию (Backend ASIC engineer).
Задачи трека:
- Используя готовое окружение, пройти цифровой маршрут физического проектирования системы на кристалле (SoC) с помощью средств логического и физического синтеза;
- Провести оценку проекта по критериям быстродействия и энергопотребления, а также качества топологии (QoR, Quality of Results);
- Внести корректировки в маршрут физического проектирования для повышения характеристик проекта;
- Провести проверки на соответствие временным ограничениям, технологическим нормам проектирования и корректности соединений;
- Выполнить анализ шин питания в разработанном проекте.
Требования к участникам:
Желательно, но не обязательно:
- знание основ цифровой схемотехники;
- навыки использования скриптовых инструментов (bash, make, Tcl и т.п.);
- знакомство с минимальным синтаксисом языка Verilog/SystemVerilog;
- представление о топологии интегральной схемы.
Критерии оценивания:
- Отсутствие критических нарушений по отчетам QoR;
- Отсутствие ошибок в проекте, кроме заранее известных;
- Временные характеристики;
- Потребляемая мощность и IRdrop;
- Площадь, занимаемая стандартными ячейками;
- Модификация представленного окружения.
2. UVM-верификация
О чем трек:UVM — один из наиболее распространённых в полупроводниковой индустрии подходов к верификации цифрового дизайна. В его основе — идеи переиспользования и масштабирования кода, которые обеспечивают его применимость как в простейших IP, так и в дизайнах масштаба СнК. А объектно-ориентированный подход вместе с широкими возможностями управления рандомизацией в SystemVerilog дают возможность всеобъемлющего подтверждения работоспособности кода.
Участники смогут познакомиться с ключевыми парадигмами UVM — правилами построения верификационного окружения, принципом разделения ответственности и моделированием на уровне транзакций.
Задачи трека:
В ходе хакатона участники получат возможность пройти самую важную часть маршрута верификации, принятого среди мировых лидеров отрасли
- ознакомиться со спецификацией устройства;
- составить верификационной план, выделив основные функции дизайна, которые требуется проверить в процессе выполнения задачи;
- дополнить предоставленный код окружения компонентами, реализующими референсную модель блока и запланированные проверки с помощью конструкций языка SystemVerilog;
- запустив тесты, убедиться в корректности работы окружения, локализовать и задокументировать ошибки, допущенные в дизайне.
Требования к участникам:
Желательно, но не обязательно:
- понимание концепции ООП;
- знакомство с языком описания аппаратуры SystemVerilog;
- опыт работы с языками программирования высокого уровня (C++, Python, Java).
Критерии оценивания:
- Количество и сложность найденных ошибок;
- Корректность их локализации;
- Качество составленного плана;
- Эффективность и качество кода верификационного окружения (за это участники смогут получить дополнительные баллы).
3. Системная верификация СнК
О чем трек:Создание современных систем на кристалле (СнК) требует тщательной проверки верхнеуровневых требований. Разработчикам важно убедиться, что СнК соответствует целевым сценариям использования ещё до отправки на фабрику. Например, нужно удостовериться в корректной первоначальной загрузке всех подсистем и достижении требуемых показателей производительности и энергопотребления. Для этого разработчики создают тестовые сценарии на низкоуровневых языках программирования и проверяют их с помощью симуляторов.
Задачи трека:
- Разработать тестовый план для проверки внутренних блоков СнК на системном уровне;
- Создать тесты на языке C, запустить их и найти ошибки в дизайне;
- Подготовить отчёт от верификации по итогам работы.
Требования к участникам:
Желательно, но не обязательно:
- уверенное знание языка программирования C;
- базовые знания в области цифрового дизайна и архитектуры современных ЭВМ.
Критерии оценивания:
- Корректность и полнота разработки тестового плана;
- Найденные ошибки в дизайне СнК;
- Качество и структурированность кода разработанных тестов.
4. RTL-проектирование
О чем трек:RTL-проектирование (или проектирование логического дизайна) — неотъемлемая часть современной разработки систем на кристалле (SoC). На самом высоком уровне вычислительные системы состоят из вычислительных ядер, кэшей, различной периферии и интерконнекта. Эти блоки содержат различные компоненты: очереди, конвейеры, буферы, память. Компоненты почти всегда являются набором регистров, которые тактируются единым синхросигналом и соединены комбинационной логикой. RTL-дизайнер проектирует составные блоки цифровой аппаратуры и реализует их на языках HDL (Verilog, SystemVerilog, VHDL).
BASIC
Задачи трека:Оптимизировать модуль AXI Performance Monitor (APM).
Основная функция блока — сбор статистики шины AXI.
APM выполняет три операции:
- вычисление времени обработки AXI-транзакций;
- расчёт максимального и минимального времени обработки транзакции за известный временной интервал;
- расчёт среднего времени обработки транзакции.
Цели оптимизации:
- увеличить максимальную частоту модуля APM;
- уменьшить площадь, занимаемую APM на кристалле;
- сохранить пропускную способность шины AXI и точность расчёта блока;
- обеспечить минимально возможную задержку вычисления характеристик.
Требования к участникам:
Достаточно иметь начальный опыт RTL-проектирования и ознакомиться с литературой:
- «Цифровая схемотехника и архитектура компьютера», Дэвид и Сара Харрис.
- «Архитектура компьютера и проектирование компьютерных систем», Дэвид Паттерсон.
Критерии оценивания:
Критерии оценивания формируются из следующих характеристик monitor:
- максимальная тактовая частота;
- занимаемая площадь;
- точность подсчёта статистических данных;
- задержка (latency) при прохождении данных через APM.
Критерии по важности каждого из параметров формулируются в начале хакатона.
Кроме базовой версии APM, у участников будет верификационное окружение для тестирования и оценки его производительности.
BASIC+
Задачи трека:Спроектировать и разработать собственный ускоритель матричных операций для исполнения (инференса) нейросети по распознаванию объектов на фото
Особенности современных нейросетей для распознавания изображений:
- состоят из множества последовательных операций свёртки и применения нелинейной функции после каждой свёртки;
- в них применяется матричное умножение;
- операции можно ускорить, применяя специализированные аппаратные блоки;
- многие современные нейросети адаптированы для аппаратного исполнения: имеют упрощённую архитектуру и поддерживают целочисленную арифметику INT8, что снижает требования к вычислительным ресурсам.
Требования к участникам:
Для успешного участия в треке достаточно:
- иметь базовый опыт проектирования и разработки RTL на языке Verilog (или синтезируемом подмножестве SystemVerilog);
- ознакомиться с книгой «Цифровая схемотехника и архитектура компьютера», Дэвид и Сара Харрис.
Дополнительные полезные знания:
- основные операции в нейронных сетях: матричное умножение, двумерная свертка, функция активации ReLU;
- базовые принципы оптимизации цифровых схем.
Критерии оценивания:
- Время исполнения эталонного теста (производительность);
- Площадь дизайна на кристалле (эффективность использования ресурсов)
Для объективной оценки:
- все разработанные блоки будут синтезироваться инструментами логического синтеза ASIC для определения занимаемой площади;
- участникам будет предоставлено унифицированное верификационное окружение для проверки корректности работы и измерения производительности решения
Условия участия:
Для студентов
Принимаются заявки от студентов очной формы обучения: специалитет, бакалавриат, магистратура.
2-3 участника в команде
Можно прийти со своей командой или одному. Организаторы помогут всем индивидуальным участникам найти команду.
BASIC и BASIC+
По итогам тестирования мы разделим участников на две группы:
Хакатон будет проходить с 18 по 20 апреля в университете МИЭТ. Чтобы все успеть, необходимо быть в городе утром 18 апреля. Онлайн-формат не предусмотрен. YADRO организует проезд и проживание для иногородних участников из России и Беларуси.
Принимаются заявки от студентов очной формы обучения: специалитет, бакалавриат, магистратура.
2-3 участника в команде
Можно прийти со своей командой или одному. Организаторы помогут всем индивидуальным участникам найти команду.
BASIC и BASIC+
По итогам тестирования мы разделим участников на две группы:
- BASIC – новички, студенты с меньшим количеством баллов за тестирование
- BASIC+ – студенты с лучшими результатами
Хакатон будет проходить с 18 по 20 апреля в университете МИЭТ. Чтобы все успеть, необходимо быть в городе утром 18 апреля. Онлайн-формат не предусмотрен. YADRO организует проезд и проживание для иногородних участников из России и Беларуси.
Почему стоит участвовать:
- Познакомься с экспертами индустрии
- Попробуй силы в решении настоящих инженерных задач
- Общайся с единомышленниками
- Получи строчку в резюме и сертификат
- Выиграй мерч и подарки
Этапы хакатона:
20 февраля — 18 марта
Подача заявок
21-23 марта
Тестирование
21 марта организаторы отправят ссылку на тест всем, кто зарегистрировался на хакатон и прошел отбор по формальным критериям. Тестирование до 23 марта 23:59. Результаты тестирования отправят до 4 апреля.
7-11 апреля
Подготовительные лекции
Эксперты треков подготовили вводные онлайн-лекции. На них предоставят необходимую теорию и расскажут, что важно изучить перед стартом решения задач. В каждом треке – 1-2 лекции.
18-20 апреля
Хакатон
Подача заявок
21-23 марта
Тестирование
21 марта организаторы отправят ссылку на тест всем, кто зарегистрировался на хакатон и прошел отбор по формальным критериям. Тестирование до 23 марта 23:59. Результаты тестирования отправят до 4 апреля.
7-11 апреля
Подготовительные лекции
Эксперты треков подготовили вводные онлайн-лекции. На них предоставят необходимую теорию и расскажут, что важно изучить перед стартом решения задач. В каждом треке – 1-2 лекции.
18-20 апреля
Хакатон
Призы:
Уровень Basic
Планшет KVADRA_T и чехол с клавиатурой
для победителей:
- FPGA и RISC-V платы
- Мерч YADRO, который пригодится инженер
Планшет KVADRA_T и чехол с клавиатурой
для победителей:
- FPGA и RISC-V платы
- Мерч YADRO, который пригодится инженеру
Место проведения: г. Москва, МИЭТ
Регистрация до 18 марта:
Хочешь узнавать о новых хакатонах, соревнованиях первым?
Подписывайся на наши социальные сети:
Подписывайся на наши социальные сети:
Также, подписывайся на наш Telegram-бот, где мы присылаем хакатоны, соревнования по параметрам, которые интересны тебе: