![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/soc-top-bg.png)
19-21 апреля 2024 года
YADRO проводит инженерный хакатон SoC Design Challenge
Вы сможете прокачать навыки проектирования современных микропроцессоров на базе архитектуры RISC-V и попробовать свои силы в решении практических задач маршрута проектирования системы на кристалле (СнК) по четырем направлениям. За отведённое время вам предлагается решить один из предложенных кейсов. Работы будут оценивать эксперты-разработчики YADRO, аспиранты и преподаватели МИЭТ.
Треки
О чем трек
Проектирование топологии — один из основных этапов разработки интегральных схем. При топологическом проектировании современных цифровых интегральных происходит преобразование функционального (RTL) описания в логическую схему из стандартных ячеек. В дальнейшем происходит их размещение на плане кристалла (чипа) и трассировка металлических связей между размещенными ячейками в многослойной структуре.
Цифровой маршрут проектирования топологии сегодня является незаменимым при разработке СБИС и СнК, содержащих свыше миллиона транзисторов. В отличие от аналогового маршрута он использует статистические модели задержек, где сами элементы представляют собой не отдельные транзисторы, а стандартные ячейки (standard cells или вентили/gates). Стандартные ячейки реализуют простые логические функции (И, НЕ, триггер и др.), что в итоге экономит вычислительные ресурсы при разработке и ускоряет процесс проектирования системы на кристалле.
Задачи трека
- используя готовое окружение, пройти цифровой маршрут физического проектирования с помощью средств автоматизированного синтеза;
- провести оценку проекта по критериям быстродействия и энергопотребления, а также качества топологии;
- внести корректировки в маршрут физического проектирования для повышения характеристик проекта;
- провести проверки на соответствие временным ограничениям, технологическим нормам проектирования и корректности соединений;
- выполнить анализ шин питания в разработанном проекте.
Критерии оценивания
Успех в соревновании будет определяться качеством топологии, будут оцениваться следующие критерии:
- отсутствие критических нарушений по отчетам QoR;
- отсутствие ошибок в проекте;
- временные характеристики;
- модификация представленного окружения;
- эффективность использования вычислительных ресурсов.
Требуемый опыт и навыки
Трек рассчитан на участников без опыта в топологическом проектировании.
Эксперты и жюри
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/pereverzev.jpg)
Алексей Переверзев
председатель жюри
Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/korshunov.jpg)
Андрей Коршунов
Доцент, к.т.н., инженер
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/kalyonov.jpg)
Александр Калёнов
Инженер
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/peplov.jpg)
Илья Пеплов
Инженер по физическому дизайну
О чем трек
Цель функциональной верификации — проверка цифрового устройства на соответствие заявленной спецификации: выполняет ли оно заложенные в него функции, ведет ли себя предсказуемо. Даже небольшая интегральная микросхема типа микроконтроллера — это набор из десятков подмодулей, зачастую со сложным функционалом.
Внесение изменений в микросхему после выпуска невозможно, а значит, от качества верификации напрямую зависит работоспособность микросхемы. Если она будет содержать дефект, ресурсы и время на разработку, по сути, будут потрачены впустую. Поэтому часто верификация занимает до 70−80% от всего времени проекта, а верификаторы-профессионалы очень востребованы.
Задачи трека
В процессе выполнения задачи будет необходимо ознакомиться с принципом работы устройства, составить верификационный план и реализовать референсную модель блока в составе верификационного окружения с помощью конструкций языка SystemVerilog.
Участники познакомятся с актуальными методологиями работы, пройдут полноценный принятый в индустрии маршрут функциональной верификации от составления плана до локализации ошибок в дизайне, подтверждения его работоспособности и соответствия спецификации.
Критерии оценивания
Успех в соревновании будет определяться эффективностью верификации, а именно:
- количеством найденных ошибок;
- скоростью их нахождения;
- оптимальным использованием конструкций языка SystemVerilog;
- эффективностью использования вычислительных ресурсов.
Требуемый опыт и навыки
Желательно, но необязательно:
- понимание концепции ООП;
- опыт работы с языками программирования высокого уровня (C++, Python, Java);
- знакомство с языком описания аппаратуры SystemVerilog.
Эксперты и жюри
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/pereverzev.jpg)
Алексей Переверзев
председатель жюри
Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/solodovnikov.jpg)
Андрей Солодовников
Ассистент, инженер
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/chusov.jpg)
Сергей Чусов
Ассистент, инженер
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/barskikh.jpg)
Михаил Барских
Руководитель отдела верификации, к.т.н
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/pontus.jpg)
Иван Понтус
Старший инженер отдела верификации СнК
О чем трек
Системные программисты решают много интересных и амбициозных задач в маршруте проектирования систем на кристалле (СнК). Современные СнК включают в себя большое количество разнообразных подсистем — от низкоскоростной периферии до всевозможных ускорителей. На ранних этапах проектирования основной вызов для команд — это проверка соответствия заявленным требованиям, то есть верификация цифровой аппаратуры. При этом системные программисты первыми начинают разрабатывать всевозможные пользовательские функциональные сценарии, которые будут использованы в СнК. С помощью функциональных эмуляторов и RTL-симуляторов они могут проводить исследования и запускать различные сценарии проверки.
Задачи трека
Участники смогут проявить свои возможности и таланты для решения задач функциональной верификации со стороны software-разработки. На основе функциональной модели СнК необходимо разработать на языке С сценарии проверки блоков, входящих в прототип исследуемого СнК. Подключить в режиме косимуляции дополнительное оборудование и оценить полноту проверок путем сбора покрытия.
Критерии оценивания
Успех в соревнования будет определяться:
- полнотой проверок для каждого блока из состава СнК;
- скоростью разработки функциональных сценариев;
- знаниями языка SystemVerilog и С в разработке сценариев тестового окружения с использованием функциональных эмуляторов и RTL-симуляторов в режиме косимуляции;
- архитектурным подходом в разработке библиотек и программ на языке С.
Кроме процессора, участникам доступно окружение для тестирования и оценки производительности.
Требуемый опыт и навыки
Желательно, но необязательно:
- опыт разработка программ на С;
- знакомство с языком описания аппаратуры SystemVerilog;
- знакомство с Python для задач автоматизации проверок.
Эксперты и жюри
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/pereverzev.jpg)
Алексей Переверзев
председатель жюри
Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/osadchij.jpg)
Иван Осадчий
к.т.н., начальник лаборатории
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/kaleev.jpg)
Дмитрий Калеев
Доцент, к.т.н., инженер
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/kishko.jpg)
Дмитрий Кишко
Руководитель группы функциональной верификации и валидации., к.т.н.
О чем трек
В основе большинства современных цифровых микросхем лежат логические схемы с двоичной логикой работы, включающие комбинационную логику и элементы памяти (триггеры, регистры). Они создаются с использованием языков описания аппаратуры (HDL): Verilog или VHDL, которые оперируют двоичными данными. Программы логического синтеза переводят HDL-описание в схему соединения вентилей и триггеров — RTL-описание (Register Transfer Level). Самые распространенные современные цифровые чипы создаются на основе такого HDL-описания. Микроархитектура, разработанная RTL-инженером, во многом определяет производительность, компактность и энергоэффективность чипа.
Задачи трека
Участникам нужно оптимизировать многопортовый коммутатор (interconnect), работающий по определенному протоколу. Обычно interconnet используются при соединении устройств, таких как процессорные ядра, контроллеры памяти и периферийные блоки. Он пересылает пакеты данных от отправителя к адресату и решает вопросы арбитража при попытке одновременного доступа к одному устройству. Цели оптимизации — увеличение пропускной способности коммутатора и улучшение механизма учета приоритета пакетов данных (пакет с высоким приоритетом должен быть обработан как можно раньше).
Критерии оценивания
Критерии оценивания формируются из совокупности следующих характеристик коммутатора:
- максимальная тактовая частота;
- утилизация ресурсов ПЛИС (сколько LUT и FF занимает ваш дизайн);
- задержка (latency) при прохождении данных через коммутатор.
Совокупные характеристики решения определяют место команды в общем зачете. Критерии по важности каждого из параметров формулируются в начале хакатона.
Кроме базовой версии коммутатора, у участников будет верификационное окружение для тестирования и оценки его производительности.
Требуемый опыт и навыки для уровня «начинающие»
Достаточно иметь начальный опыт RTL-проектирования и ознакомиться с этими книгами:
- «Цифровая схемотехника и архитектура компьютера», Дэвид и Сара Харрис.
- «Архитектура компьютера и проектирование компьютерных систем», Дэвид Паттерсон.
Эксперты и жюри
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/pereverzev.jpg)
Алексей Переверзев
председатель жюри
Проректор по инновационному развитию НИУ МИЭТ, д.т.н., доцент
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/silantiev.jpg)
Александр Силантьев
Старший преподаватель, начальник лаборатории
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/primakov.jpg)
Евгений Примаков
Ассистент, инженер
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/trifonov.jpg)
Денис Трифонов
Старший инженер по разработке СнК
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/experts/stoyakin.jpg)
Андрей Стоякин
Инженер по разработке СнК
Как прошел хакатон в прошлом году?
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/soc-bottom-bg.png)
![](https://engineer.yadro.com/wp-content/themes/yadro/assets/public/img/soc-2024/soc-bottom-mobile-bg.png)