19-21 апреля 2024 года
YADRO проводит инженерный хакатон SoC Design Challenge

Вы сможете прокачать навыки проектирования современных микропроцессоров на базе архитектуры RISC-V и попробовать свои силы в решении практических задач маршрута проектирования системы на кристалле (СнК) по четырем направлениям. За отведённое время вам предлагается решить один из предложенных кейсов. Работы будут оценивать эксперты-разработчики YADRO, аспиранты и преподаватели МИЭТ.

Хакатон завершен!

Треки

О чем трек

Проектирование топологии — один из основных этапов разработки интегральных схем. При топологическом проектировании современных цифровых интегральных происходит преобразование функционального (RTL) описания в логическую схему из стандартных ячеек. В дальнейшем происходит их размещение на плане кристалла (чипа) и трассировка металлических связей между размещенными ячейками в многослойной структуре.

Цифровой маршрут проектирования топологии сегодня является незаменимым при разработке СБИС и СнК, содержащих свыше миллиона транзисторов. В отличие от аналогового маршрута он использует статистические модели задержек, где сами элементы представляют собой не отдельные транзисторы, а стандартные ячейки (standard cells или вентили/gates). Стандартные ячейки реализуют простые логические функции (И, НЕ, триггер и др.), что в итоге экономит вычислительные ресурсы при разработке и ускоряет процесс проектирования системы на кристалле.

Задачи трека

  • используя готовое окружение, пройти цифровой маршрут физического проектирования с помощью средств автоматизированного синтеза;
  • провести оценку проекта по критериям быстродействия и энергопотребления, а также качества топологии;
  • внести корректировки в маршрут физического проектирования для повышения характеристик проекта;
  • провести проверки на соответствие временным ограничениям, технологическим нормам проектирования и корректности соединений;
  • выполнить анализ шин питания в разработанном проекте.

Критерии оценивания

Успех в соревновании будет определяться качеством топологии, будут оцениваться следующие критерии:

  • отсутствие критических нарушений по отчетам QoR;
  • отсутствие ошибок в проекте;
  • временные характеристики;
  • модификация представленного окружения;
  • эффективность использования вычислительных ресурсов.

Требуемый опыт и навыки

Трек рассчитан на участников без опыта в топологическом проектировании.

Эксперты и жюри

Алексей Переверзев

председатель жюри

Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент

Андрей Коршунов

Доцент, к.т.н., инженер

Александр Калёнов

Инженер

Илья Пеплов

Инженер по физическому дизайну

О чем трек

Цель функциональной верификации — проверка цифрового устройства на соответствие заявленной спецификации: выполняет ли оно заложенные в него функции, ведет ли себя предсказуемо. Даже небольшая интегральная микросхема типа микроконтроллера — это набор из десятков подмодулей, зачастую со сложным функционалом.

Внесение изменений в микросхему после выпуска невозможно, а значит, от качества верификации напрямую зависит работоспособность микросхемы. Если она будет содержать дефект, ресурсы и время на разработку, по сути, будут потрачены впустую. Поэтому часто верификация занимает до 70−80% от всего времени проекта, а верификаторы-профессионалы очень востребованы.

Задачи трека

В процессе выполнения задачи будет необходимо ознакомиться с принципом работы устройства, составить верификационный план и реализовать референсную модель блока в составе верификационного окружения с помощью конструкций языка SystemVerilog.

Участники познакомятся с актуальными методологиями работы, пройдут полноценный принятый в индустрии маршрут функциональной верификации от составления плана до локализации ошибок в дизайне, подтверждения его работоспособности и соответствия спецификации.

Критерии оценивания

Успех в соревновании будет определяться эффективностью верификации, а именно:

  • количеством найденных ошибок;
  • скоростью их нахождения;
  • оптимальным использованием конструкций языка SystemVerilog;
  • эффективностью использования вычислительных ресурсов.

Требуемый опыт и навыки

Желательно, но необязательно:

  • понимание концепции ООП;
  • опыт работы с языками программирования высокого уровня (C++, Python, Java);
  • знакомство с языком описания аппаратуры SystemVerilog.

Эксперты и жюри

Алексей Переверзев

председатель жюри

Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент

Андрей Солодовников

Ассистент, инженер

Сергей Чусов

Ассистент, инженер

Михаил Барских

Руководитель отдела верификации, к.т.н

Иван Понтус

Старший инженер отдела верификации СнК

О чем трек

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

Задачи трека

Участники смогут проявить свои возможности и таланты для решения задач функциональной верификации со стороны software-разработки. На основе функциональной модели СнК необходимо разработать на языке С сценарии проверки блоков, входящих в прототип исследуемого СнК. Подключить в режиме косимуляции дополнительное оборудование и оценить полноту проверок путем сбора покрытия.

Критерии оценивания

Успех в соревнования будет определяться:

  • полнотой проверок для каждого блока из состава СнК;
  • скоростью разработки функциональных сценариев;
  • знаниями языка SystemVerilog и С в разработке сценариев тестового окружения с использованием функциональных эмуляторов и RTL-симуляторов в режиме косимуляции;
  • архитектурным подходом в разработке библиотек и программ на языке С.

Кроме процессора, участникам доступно окружение для тестирования и оценки производительности.

Требуемый опыт и навыки

Желательно, но необязательно:

  • опыт разработка программ на С;
  • знакомство с языком описания аппаратуры SystemVerilog;
  • знакомство с Python для задач автоматизации проверок.

Эксперты и жюри

Алексей Переверзев

председатель жюри

Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент

Иван Осадчий

к.т.н., начальник лаборатории

Дмитрий Калеев

Доцент, к.т.н., инженер

Дмитрий Кишко

Руководитель группы функциональной верификации и валидации., к.т.н.

О чем трек

В основе большинства современных цифровых микросхем лежат логические схемы с двоичной логикой работы, включающие комбинационную логику и элементы памяти (триггеры, регистры). Они создаются с использованием языков описания аппаратуры (HDL): Verilog или VHDL, которые оперируют двоичными данными. Программы логического синтеза переводят HDL-описание в схему соединения вентилей и триггеров — RTL-описание (Register Transfer Level). Самые распространенные современные цифровые чипы создаются на основе такого HDL-описания. Микроархитектура, разработанная RTL-инженером, во многом определяет производительность, компактность и энергоэффективность чипа.

Задачи трека

Участникам нужно оптимизировать многопортовый коммутатор (interconnect), работающий по определенному протоколу. Обычно interconnet используются при соединении устройств, таких как процессорные ядра, контроллеры памяти и периферийные блоки. Он пересылает пакеты данных от отправителя к адресату и решает вопросы арбитража при попытке одновременного доступа к одному устройству. Цели оптимизации — увеличение пропускной способности коммутатора и улучшение механизма учета приоритета пакетов данных (пакет с высоким приоритетом должен быть обработан как можно раньше).

Критерии оценивания

Критерии оценивания формируются из совокупности следующих характеристик коммутатора:

  • максимальная тактовая частота;
  • утилизация ресурсов ПЛИС (сколько LUT и FF занимает ваш дизайн);
  • задержка (latency) при прохождении данных через коммутатор.

Совокупные характеристики решения определяют место команды в общем зачете. Критерии по важности каждого из параметров формулируются в начале хакатона.

Кроме базовой версии коммутатора, у участников будет верификационное окружение для тестирования и оценки его производительности.

Требуемый опыт и навыки для уровня «начинающие»

Достаточно иметь начальный опыт RTL-проектирования и ознакомиться с этими книгами:

  • «Цифровая схемотехника и архитектура компьютера», Дэвид и Сара Харрис.
  • «Архитектура компьютера и проектирование компьютерных систем», Дэвид Паттерсон.

Эксперты и жюри

Алексей Переверзев

председатель жюри

Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент

Александр Силантьев

Старший преподаватель, начальник лаборатории

Евгений Примаков

Ассистент, инженер

Денис Трифонов

Старший инженер по разработке СнК

Андрей Стоякин

Инженер по разработке СнК

Как прошел хакатон в прошлом году?