Сколковская школа синтеза цифровых схем

Сколковская Школа Синтеза Цифровых Схем - это инициатива, созданная для быстрой модернизации российского образования в области проектирования цифровых микросхем на уровне регистровых передач (Register Transfer Level - RTL).
Эта фундаментальная технология,которой пользуются инженеры Apple, Intel, NVidia и других электронных
компаний для проектирования микросхем в смартфонах, компьютерах,ускорителях машинного обучения.
Для успешного развития таких проектов в России необходимо вырастить суперзвезд-микроархитекторов, которые составляют костяк групп разработчиков внутри электронных компаний.
Этот процесс имеет смысл начинать еще со школы, примерно так же, как происходит формирование профессиональных математиков, победителей спортивных олимпиад и концертных музыкантов.

 

Партнер и спонсор проекта Фонд Сколково 

Спонсор проекта компания ООО Ядро Микропроцессоры

Уважаемые участники Сколковской школы синтеза цифровых схем !
Завершающее занятие "Сколковской Школы синтеза цифровых схем" состоялось 23 апреля в Капсуле №2 Технопарка Сколково.
На занятии  собрались учащиеся школы, которые занимались оффлайн и перед ними выступили  топ-менеджеры и руководители ведущих российских компаний. Каждый из них произнес вдохновляющую речь о связи образования и промышленности, пригласил в свои компании, дал советы на будущее.
Учащимся были вручены Дипломы о прохождении курса Школы, которые могут быть весьма полезны при выборе дальнейшего пути.
Кроме этого наиболее активные учащиеся, которые регулярно посещали оффлайн занятия получили подарки от партнера и спонсора проекта - компании ЯДРО Микропроцессоры.
Мероприятие транслировалось на канал ChipEXPO  на Youtube:http://youtu.be/rn-AerU92q8/
 
Перед учащимися с напутственной речью выступили:

Панчул Юрий Владимирович     
Разработчик микросхем и составитель программы школы

Тормасов Александр Геннадиевич     
Ректор Университета Иннополис, 
доктор физико-математических наук, профессор, 
экс-заведующий кафедрой теоретической и прикладной информатики МФТИ.

 

 Шумилин Сергей Сергеевич     
Заместитель Генерального директора по науке компании «Миландр»
    
Агамирзян Игорь Рубенович     
Вице-президент НИУ ВШЭ,
Профессор Департамента программной инженерии 
Факультета компьютерных наук НИУ ВШЭ

Абрамов Сергей .Михайлович
д.ф.-м.н., член-корреспондент РАН, 
руководитель Исследовательского центра мультиорицессорных систем 
Института программных систем имени Альфреда Карловича Айламазяна РАН

Суетин Николай Владиславович    
Вице-президент по науке и образованию  Фонда Сколково 
    
Редькин Александр Николаевич    
Генеральный директор компании «Синтакор»
    
Окунев Константин Евгеньевич    
Директор по технологическому развитию ГК «Элемент»
    
Максимов Евгений Викторович
Директор по развитию экосистемы и образовательных инициатив 
Группы компаний YADRO

В наших планах провести з-х дневную сессию Школы в рамках деловой программы выставки ChipEXPO-2022 (Сколково, 13-15 сентября), а с осени начать новый семестровый курс.

Программа курса будет размещена позже.

Но уже сейчас можно подать Заявку на участие в семестровом курсе 2022/2023 г.г. Форма регистрации на странице справа.

Опубликована статья о нашем проекте "Сколковская Школа синтеза цифровых схем".

Материал вышел на сайте https://sk.ru/news/novye-arhitektury-i-produkty-rozhdayutsya-v-molodyh-kompaniyah-startapah/

 

 

Спонсоры мероприятия

           

Дорогие друзья, участники «Школы синтеза цифровых схем», которая проходила в 2020 го и в 2021 году в Сколково
в рамках деловой программы выставки ChipEXPO.
 

Школа оказалась очень популярна, и мы решили расширить ее до полноценного семестрового курса по субботам, с объемом материала на уровне университетских лабораторных по FPGA, к которым мы добавили элементы компьютерной архитектуры, базовый туториал для ASIC и некоторые практические навыки.
Новый цикл занятий начнется с 30 октября 2021, закончится в апреле 2022 и будет проходить по субботам в Технопарке Сколково в Москве, с трансляцией на Youtube канал ChipEXPO.

В 2021 году будет 7 занятий. Фактически 3-х дневный курс школы на ChipEXPO с упражнениями на FPGA будет расширен до 7 дней (суббот).
А после Нового Года, начиная с 15 января - три более продвинутые занятия с комбинацией schoolRISCV и элементов микроархитектуры.
Наконец, в апреле мы организуем имитацию собеседования (в формате олимпиады / письменного экзамена) и его разбор, чтобы учащиеся поняли, что их ждет при поступлении на работу в серьезную электронную компанию и готовы ли они к этому.
Последние занятия не будут требовать наличия FPGA плат - собеседование / олимпиада будет состоять из решения микроархитектурных задач c помощью онлайн-платформы EDA Playground, написания коротких программ на ассемблере в симуляторе процессора RARS и ответов на письменные вопросы.
Одновременно с апреля мы начнем формировать второй поток желающих пройти обучение в школе.

После окончания школы планируется организовывать хакатоны в ведущих ВУЗах - МИЭТ, ВШЭ МИЭМ, МИРЭА, МГУ и т.д.

О том, как подготовиться к занятиям и как подготовить свое компьютер - статья Юрия Панчула на Хабре.


 

Сколковская Школа Синтеза Цифровых Схем, основной курс

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

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

1. Школьники-старшеклассники олимпиадного типа смогут понять, что представляют из себя работы в микроэлектронной промышленности: проектирование чипов для смартфонов, игровых приставок и самоуправляющихся автомобилей, или использование микросхем реконфигурируемой логики для управления космическим кораблем.

2. Студенты младших курсов смогут заложить твердую основу для дальнейшего изучения схемотехники и архитектуры компьютеров в их вузах.

3. Преподаватели вузов, физматшкол или кружков технологии смогут найти материал для постановки или улучшения своих курсов.

Два заключительных занятия отводятся под имитицию собеседования на позицию проектировщика цифровых микросхем на уровне регистровых передач. Для этого используютcя микроархитектурные задачки по мотивам реальных вопросов, которые задают на собеседованиях в топ-20 электронных и аэрокосмических компаниях мира. Победители получат поощрительные призы и рекомендации.

План занятий:

2021 год

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. Микроархитектура конвейерного процессора.

2022 год

*** Секция "Введение в центральные процессоры"

15 января 2022: 9. Проектирование процессорного кэша и измерение его
производительности.
Ведут инженеры компании Syntacore Николай Терновой и Павел Куроедов.

*** Секция "Стандартные блоки и приемы проектирования"

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

Ведет Дмитрий Смехов, инженер-разработчик ПЛИС, компании IRQ, ИнСис и
Inline Group.

*** Секция "Маршрут проектирования массовых микросхем ASIC"

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

Синтез, размещение и трассировка двух примеров - schoolRISCV и модуля
игры со спрайтами. Демонстрация измерения динамического
энергопотребления и формальной верификации логической эквивалентности,
Logic Equivalence Checker - LEC.

Проводится в МИЭТ. Ведет Александр Михайлович Силантьев, преподаватель
Национального исследовательского университета «Московский институт
электронной техники» (МИЭТ).

19 февраля 2022: 14. Маршрут физического проектирования от Siemens EDA
/ Mentor Graphics.

Занятие состоит из двух частей. В первой части демонстрируется
смешанный маршрут проектирования, когда для логического синтеза
используются программы для Cadence или Synopsys, а для физического
размещения и трассировки используеются программы от Siemens EDA /
Mentor Graphics.

Вторая часть - обзор алгоритмов, которые используются на маршруте RTL2GDSII.

Ведет Александр Силантьев, МИЭТ с помощью лекторов из МИЭТ и Mentor Graphics.

26 февраля 2022: 15. Продвинутая отладка с помощью временных диаграмм
и утверждений темпоральной логики.

С участием лекторов из Mentor Graphics / Siemens EDA.

*** Секция "Продолжение работы с периферийными устройствами, графикой и звуком"

5 марта 2022: 16. Подсоединение FPGA платы к компьютеру через
текстовую консоль PuTTY, с использованием переходника USB-to-UART.
Разбор учебного проекта: стековый калькулятор c обратной польской
записью и диалогом с пользователем через компьютер.

Организатор - Рафаэль Ильясов, руководитель Дизайн-центра электроники
и микроэлектроники Университета Иннополис.

12 марта 2022: 17. Графика с кадровым буфером (frame buffer). Создаем
видеопроцессор, который может рисовать прямые, квадраты и окружности
по командам, которые генерирует центральный процессор.

Ведет Дмитрий Смехов.

19 марта 2022: 18. Первые шаги в цифровой обработке сигналов (ЦОС) /
Digital Signal Processing (DSP). Эксперименты с цифровым фильтром,
микрофоном и усилителем. Изменение тембра голоса или мелодии, создание
эха. Презентация о практическом использовании преобразования Фурье и
демонcтрация его на FPGA.

Сергей Анатольевич Иванец, декан факультета электронных и
информационных технологий, Черниговский национальный технологический
университет, Украина.
В кооперации с Александром Силантьевым, МИЭТ.

*** Секция "Стандартные блоки и приемы проектирования: продолжение"

26 марта 2022: 19. Пересечение тактового домена, Clock Domain Crossing
- CDC. Обмен данными между блоками, которые работают на разных
частотах. Популярная тема во время интервью. Разбор нескольких
способов, как избежать потери данных или получения лишних данных, в
том числе с помощью применекния асинхронной очереди FIFO.

Организует Александр Силантьев.

Секция "Продвинутая микроархитектура центральных процессоров"

2 апреля  2022: 20. Внеочередное выполнение инструкций, алгоритм
Томасуло и переименование регистров.

Организует Александр Силантьев с коллегами по МИЭТ.

9 апреля  2022: 21. Три образовательных пакета с учебными процессорами:

1. Упражнения с учебным процессором YRV с архитектурой RISC-V от Монте Далримпл.

Подготовкой материалов занимается Дмитрий Смехов и Иннополис.

2. Упражнения с пакетом RVfpga от компании Imagination Technologies на
основе RISC-V ядра от Western Digital, с использованием плат с Xilinx
Artix-7 FPGA.

В подготовке принимает участие декан Илья Кудрявцев из Самарского
Университета, МИЭТ и Imagination Technologies.

3. Использование языка TIE для расширения процессоров Tensilica XTensa
от Cadence Design Systems.

При необходимости, это занятие может быть расширено.

Секция "Проверка и соревнование"

16 апреля  2022: 22. Имитиция собеседования на позицию проектировщика
цифровых микросхем на уровне регистровых передач.
23 апреля  2022: 23. Разбор имитации интервью и презентации проектов
участников Школы.

 

До участия в школе мы рекомендуем пройти три части теоретического курса от РОСНАНО, под общим названием «Как работают создатели умных наночипов»:
«От транзистора до микросхемы»,
«Логическая сторона цифровой схемотехники»,
«Физическая сторона цифровой схемотехники».

Ждем вас на Сколковской Школе Синтеза Цифровых Схем.

------------------------------------------------------------------------------

Детали программы:

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

Для тех, кто не участвовал в Школе на ChipEXPO:
* Начало работы со средой проектирования Intel Quartus Prime Lite Edition и платами с микросхемами реконфигурируемой логики Intel FPGA.
* Установка необходимого программного обеспечения на принесенных участниками школы ноутбуках и решение проблем с драйверами под Windows и Linux.
* Опробование маршрута проектирования на основе синтеза кода на языке описания аппаратуры Verilog.
* Простые упражнения с кнопками, лампочками, логическими элементами и мультиплексорами.
* Объяснение связи упражнений на FPGA c разработкой микросхем ASIC в массовых гаджетах.
Для тех, кто уже участвовал в Школе на ChipEXPO - более сложная комбинационная схема, сумматор чисел с плавающей точкой. Участники получат:
* Шпаргалку со всеми арифметическими операциями и контрольными стуктурами Verilog.
* Описание стандарта IEEE 754 для чисел с плавающей точкой.
* Заголовок модуля с портами вводы-вывода для слагаемых и результата, а также для признаков NaN ("not a number" - "не номер"), положительной и отрицательной бесконечности.
* Тестовое окружение на SystemVerilog для верификации работы сумматора.
* Обвязку для запуска модуля на FPGA плате, с наблюдением результата на семисегментном индикаторе.

Сначала участники, после обсуждения, пробуют реализовать модуль сами, а затем сравнивают свои решения с решением от преподавателя.

Вступительные речи:
Александр Биленко, организатор ChipEXPO.
Юрий Панчул, инженер-проектировщик и автор образовательных программ в области микроэлектроники.

Ведущий:
Александр Михайлович Силантьев,
преподаватель Национального исследовательского университета
«Московский институт электронной техники» (МИЭТ).

------------------------------------------------------------------------------

2. Последовательностая логика и конечные автоматы.

Разработка схем с использованием элементов состояния, D-триггеров.

Для тех, кто не участвовал в Школе на ChipEXPO:
* Упражнения со счетчиком, сдвиговым регистром и выводом на динамический семисегментный индикатор.
Для тех, кто уже участвовал в Школе на ChipEXPO или закончил первые упражнения раньше - дополнительные упражнения:
* Двигающиеся изображения на семисегментном индикаторе и конечный автомат кодового замка.

Ведущий:
Александр Силантьев.

------------------------------------------------------------------------------

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

Рассказ про генерацию графики на VGA.

Упражнение с рисованием на экране разноцветных квадратов и других статических изображений.

Презентация примера графической игры с параллельно вычисляемыми спрайтами и конечными автоматами для сценария игры.Демонстрация запуска игры на плате.

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

Модификация игры студентами.

Ведущие:
Удаленно: Сергей Анатольевич Иванец, декан факультета электронных и информационных технологий, Черниговский национальный технологический университет, Украина.
Михаил Коробков, fpga-systems.ru.

------------------------------------------------------------------------------

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

Предисловие к примерам работы со звуком: рассказ про протоколы SPI и I2S, которые используются в периферийных устройствах: микрофоне Digilent Pmod MIC3 и усилителе Digilent Pmod AMP3.

Для тех, кто не участвовал в Школе на ChipEXPO:

* Демонстрация распознавания ноты с помощью измерения периода синусоиды главной гармоники.

* Упражнение с распознаванием простой мелодии с помощью конечного автомата и выводом результата распознавания на семисегментный индикатор.

* Демонстрация использования модуля усилителя для генерации.

* Упражнение с генерацией простой мелодии с помощью конечного автомата.

Для тех, кто уже участвовал в Школе на ChipEXPO или закончил первые упражнения раньше - дополнительные упражнения:

* Совместить конечный автомат для распознавания мелодии с конечным автоматом для генерации мелодии - после распознавания последовательности нот схема должна продолжить мелодию.

* Обсуждение модификации примеров, введение в них других компонент: датчика освещения Digilent Pmod ALS и поворотного энкодера Digilent Pmod ENC. Данные с этих устройств могут использоваться для регуляции громкости или высоты генерируемого звука, или, альтернативно, для изменения скорости генерируемой мелодии.

* Краткое упоминание о более продвинутой обработке звуков методами цифровой обработки сигналов, с помощью цифровых фильтров и Фурье-преобразования, без углубления в математику.

Ведущие:

Виктор Прутьянов, SberDevices.
Мария Беличенко, преподаватель игры на флейте, будет играть ноты и мелодии для распознавания FPGA платой.

------------------------------------------------------------------------------

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

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

При разборе первого шага (вычисления квадратного корня за один такт): объяснение концепций задержек, статического временного анализа, критического пути, запаса (slack) и максимальной тактовой частой для схемы.

От конвейера к систолическому массиву. Эффективный способ умножения матриц. Применение к вычислениям нейросети для обработки группы векторов. Использование блочного умножения для обработки больших матриц с помощью компактного систолического массива.

Ведущие:

Михаил Сергеевич Шуплецов, доцент кафедры математической кибернетики, к.ф.-м.н. ВМК МГУ.
Владимир Зунин, Александр Юрьевич Романов, к.т.н., доцент Московского института электроники и математики им. А.Н. Тихонова (МИЭМ), Национальный исследовательский университет «Высшая школа экономики» (НИУ ВШЭ).

------------------------------------------------------------------------------

6. Архитектура: вид процессора с точки зрения программиста.

Лекция об ассемблере RISC-V с одновременными упражнениями на симуляторе процессора на уровне инструкций.

Как работает компилятор: от языка высокого уровня к инструкциям ассемблера.

Ведущий:

Никита Поляков, проектировщик микропроцессоров с архитектурой RISC-V в российской компании Syntacore.

------------------------------------------------------------------------------

7. Микроархитектура: вид процессора с точки зрения схемотехника.

Лекция по аппаратной организации процессора schoolRISCV, с вариантами одноцикловой и конвейерной микроархитектуры.

Демонстрация симуляции процессора в среде Siemens EDA / Mentor: ModelSim Starter Edition и Questa Advanced Simulator. Использование средств просмотра сигналов (waveform viewer) для отладки.

Демонстрация синтеза процессора и запуск его на платах.

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

Обсуждение упражнения по добавлению в систему в FPGA датчика освещения и других периферийных устройств.

Ведущий:

Станислав Жельнио

------------------------------------------------------------------------------

8. Пробуем маршрут RTL2GDSII: как разрабатываются массовые микросхемы.

Демонстрация использования профессиональных программ Cadence Genus и Innovus для синтеза, статического временного анализа, размещения и трассировки учебного процессора schoolRISCV с простейшим планом начального размещения (floorplan).

1. Логический синтез.
2. Определение плана начального размещения.
3. Определение ячеек ввода-вывода.
4. Определение сети подачи питания.
5. Синтез дерева тактовых сигналов.
6. Окончательное размещение.
7. Трассировка сигналов.
8. Статический временной анализ с учетом размещения и трассировки.
9. Окончательная проверка DRC и LVS.
10. Генерация GDSII файла.

Затем студенты выполняют те же шаги с Cadence Genus и Innovus.

В конце - обзорная презентация о микроэлектронном производстве.

Ведущие:

Александр Силантьев.
Виктор Прутьянов.

------------------------------------------------------------------------------

9. Элементы микроархитектуры 1: очереди FIFO и кредитные счетчики.

Что такое очередь FIFO. Как очередь FIFO устроена внутри - перемещение указателей, а не данных. Демонстрация в симуляторе и на FPGA плате.

Использование FIFO для временного хранения данных, перемещающихся между блоками. Понятие backpressure (задержки потока данных).

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

Разбор примера: процессорное ядро schoolRISCV посылает сообщения другому ядру schoolRISCV через блок шифрования сообщений. Очередь FIFO ставится после конвеера блока шифрования. Запись данных в блок шифрования происходит через запись в определенные адреса в адресном пространстве первого процессорного ядра, чтение данных из FIFO происходит через чтение из определенных адресов в адресном пространстве второго процессорного ядра.

Ведущие:

Дмитрий Смехов, инженер-разработчик ПЛИС, компании IRQ, ИнСис и Inline Group.
Виктор Прутьянов.

------------------------------------------------------------------------------

10. Элементы микроархитектуры 2: арбитры, банки и разделение памяти.

Что такое арбитр. Как использовать арбитр для разделения памяти между двумя или несколькими блоками. Повышение эффективности с помощью использования банков памяти. 

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

Ведущие:

Дмитрий Смехов.
Виктор Прутьянов.

------------------------------------------------------------------------------

11. Элементы микроархитектуры 3: строим процессорный кэш.

Откуда появилась нужда в кэшах - разрыв между скоростью логики и скоростью памяти. Временная и пространственная локальность. Типы кэшей - ассоциативный, прямой, многонаборный. Политика записи и выделения строки кэша. Стратегии выталкивания. Уровни кэширования и связь с многоядерными кластерами.

Разбор примера: подключаем процессорное ядро schoolRISCV к контроллеру внешней SDRAM памяти на FPGA плате. Наблюдаем потерю производительности по сравнению с использованием внутренней памяти. Подключаем простейший ассоциативный кэш и наблюдаем компенсацию потери производительности.

Домашний проект для особо продвинутых: подключить к schoolRISCV пример контроллера кэша на верилоге из приложения к учебнику Хеннесси-Паттерсона.

Ведущие:

Николай Терновой, Богдана Тищук, Павел Куроедов, Syntacore

------------------------------------------------------------------------------

12. Имитиция собеседования на позицию проектировщика цифровых микросхем на уровне регистровых передач.

Для этого используютcя микроархитектурные задачки по мотивам реальных вопросов, которые задают на собеседованиях в электронные компании.

------------------------------------------------------------------------------

13. Разбор имитации интервью с вручением поощрительных призов.
 

Контактные данные