Главная » Игры » Что делают в офисе инженеры в Apple и Intel: профориентационный онлайн-курс современной микроэлектроники для школьников

Что делают в офисе инженеры в Apple и Intel: профориентационный онлайн-курс современной микроэлектроники для школьников

Недавно вышел бесплатный онлайн-курс в трех частях под названием «Как работают создатели умных наночипов» (1, 2, 3). Он предназначен для профориентации школьников и отличается максимальной конкретностью: вот так выглядит распределение работы в команде проектирования микросхемы, вот на таких концепциях проектирования на уровне регистровых передач построена разработка, и вот такие алгоритмы используются для определения, на сколько мегагерц будет работать проектируемый процессор для компьютера или автомобильной электроники.

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


Кратко о том, что входит в каждый из трех модулей — «От транзистора до микросхемы», «Логическая сторона цифровой схемотехники» и «Физическая сторона цифровой схемотехники».

Концепция D-триггера внутри современного айфона осталась той же, что в журнале «Квант» 1986 года. Курс «Как работают создатели умных наночипов» начинается с абсолютного нуля, поэтому его первая часть, «От транзистора до микросхемы», во многом повторяет другие материалы по электронике для школьников, которые создавались в последние 50 лет — что такое транзистор, логические элементы, двоичные числа и триггеры. Транзисторы уменьшились в тысячу раз, но суть их не изменилась.

Они выглядят вот так: Единственный блок информации, которого не было в предыдущих курсах — это про так называемые стандартные ячейки (standard cells), на технологии которых строится подавляющее количество современных специализированных микросхем.

Попробуйте ответить на вопрос из тестирования ниже, и если вы знаете ответ, то вы можете первый модуль курса пропустить:

Почему стандартные ячейки современных микросхем (ASIC standard cells) называются стандартными?

  1. О, я знаю! Это потому что они реализуют стандартные логические функции И, ИЛИ, НЕ
  2. Элементы транзистора в стандартных ячейках имеют стандартный химический состав
  3. Стандартные ячейки работают на стандартной тактовой частоте
  4. Они имеют стандартную высоту (размерность на площади), что упрощает подвод к ним питания и автоматическое соединение их между собой
  5. Структура стандартных ячеек была когда-то стандартизована каким-то Европейским комитетом по стандартам

Правильный ответ:

Скрытый текст

4. Стандартные ячейки (ASIC standard cells) имеют стандартную высоту (размерность на площади), что упрощает подвод к ним питания и автоматическое соединение их между собой

Если не знаете, можете пройти первый модуль курса — «От транзистора до микросхемы». Вот его содержание:

Речь идет о так называемом маршруте RTL-to-GDSII, методах проектирования плана размещения миллиардов транзисторов и дорожек микросхемы на основе компиляции/синтеза кода на языках описания аппаратуры Verilog и VHDL. Если большая часть первого модуля курса «Как работают создатели умных наночипов» говорит о тех же вещах, которые были в популярных текстах для школьников еще с 1970-х, то во второй части, «Логическая сторона цифровой схемотехники» мы входим в область, которой в журнале «Квант» не было, и которая вообще в российском образовании была заброшена из-за коллапса СССР. Иначе — никаких действительно российских айфонов, роботов и самоуправляемых автомобилей. Провал в этой области необходимо преодолеть, начиная с уровня продвинутых школьников.

Посты на Хабре об этом учебнике получили более 300 тысяч просмотров, а скачивания дважды завалили британский сайт Imagination Technologies. В последние несколько лет в России произошел толчок к популяризации проектирования цифровых схем с помощью синтеза из языков описания аппаратуры, в том числе из-за выхода на русском языке бесплатного (в электронном варианте) учебника Дэвида Харриса и Сары Харрис «Цифровая схемотехника и архитектура компьютера». Правда ссылка работает только под Windows, а на Маке и под Линуксом глючит. Недавно вышла окончательно исправленная версия учебника, которую вы можете скачать по ссылке c сайта MIPS. Или купить бумажную книжку от ДМК Пресс на Озоне или в Лабиринте. Если у вас с ней проблемы, можете скачать эту же версию отсюда.

«Улитка» — это конечный автомат, который распознает последовательности нулей и единиц. Модуль «Логическая сторона цифровой схемотехники» курса «Как работают создатели умных наночипов» использует пример «улыбающейся улитки» из Харрисов. После этого демонстрируется синтезированная из описания электронная схема, с логическими элементам и и D-триггерами для хранения состояния конечного автомата «улитки». В курсе разбирается исходный текст автомата «улитки» на языке описания аппаратуры Verilog, а также вводятся концепции диаграмм состояний конечного автомата и временных диаграмм сигналов.

В экзамене к курсу «Как работают создатели умных наночипов» есть вопрос про диаграмму состояний конечного автомата так называемой «китайской комнаты» — популярного примера из области искуственного интеллекта. На основе примера «улитки» школьники на хакатонах могут синтезировать для плат ПЛИС разнообразные «кодовые замки». Если дать ему на входе комбинацию из нескольких иероглифов «дерево» и «медведь», с последуюшими иероглифами «наука», то автомат выдаст последовательность иероглифов «Сибирь» — это пример родился во время проведения семинара для школьников в Новосибирском академгородке: Вот диаграмма простого конечного автомата для ведения диалога китайскими иероглифами.

В этой части также обсуждаются алгоритмы размещения и трассировки, которые будут интересны математически-ориентированным школьникам. Третья часть, «Физическая сторона цифровой схемотехники» расписывает, как граф из логических элементов, синтезированный во второй части, раскладывается на микросхеме и превращается в чертеж в формате GDSII который собственно и отправляется на фобрику, где пекут микросхемы. Исследования в области автоматизации проектирования микросхем — популярная область среди бывших победителей матолимпиад.

Вот как выглядит проект чипа после размещения и трассировки с помощью программы Synopsys IC Compiler:

Ширина «ветвей» этого дерева меняется от толстых до тонких металлических соединений на микросхеме, чтобы удовлетворить физическим ограничениям медных проводников на нанометровом уровне полупроводниковой технологии: А вот эта изящная фрактальная структура — это дерево тактового сигнала внутри чипа, построенное так, чтобы тактовый сигнал приходил ко всем D-триггерам примерно в одно и то же время.

Этот алгоритм использовался в ранних программах автоматизации проектирования для соединения логических элементов схемы. А вот иллюстрация к так называемому алгоритму волновой трассировке (по английски Maze Routing — «Поиск путей в лабиринте»). Это полезное упражнение для тех, кто собирается в будущем писать гораздо более сложные алгоритмы, например для будущих трехмерных чипов: Алгоритм волновой трассировки настолько прост, что его может сам написать на Си, Питоне или Джаве способный старшеклассник.

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

Речь идет о видеоиграх 1970-х и 1980-х, с генерацией развертки, фрейм-буфером, спрайтами. Всего два месяца назад вышла книжка Designing Video Game Hardware in Verilog by Steven Hugg, в которой описывается проектирование схем игр на Verilog, с реализацией в ПЛИС, подключенной к дисплею VGA. Игровые автоматы для этих игр сначала, еще в 1970-х, собирали на микросхемах малой степени интеграции, потом на PAL и микроконтроллерах, в том числе Motorola 6502, которую использовали в первых Apple. Atari пинг-понг, space wars, танчики. В книжке Стивена Хагга также разбирается аппаратная реализация спрайтов, знакомых советским программистам и игроманам второй половины 1980-х по видеопроцессору Texas Instruments TMS9918, который стоял в японских компьютерах Yamaha MSX, импортированных в то время в советские школы.

Это отличный набор задач для современных студентов и школьников, которые начинают изучать электронику. Книжка Хагга полезна отнюдь не только и даже не столько ностальгирующим чудакам. 111. Так как задачи старые, но вот технологии — Verilog, logic synthesis, FPGA prototyping — новые, те же самые, которые изучают сейчас в 2018-2019 учебном году в MIT в курсе 6. Без простых упражнений с Verilog и ПЛИС не выросли бы инженеры, которые сейчас сидят в Санта-Кларе в Интеле, NVidia и AMD, в Купертино в Apple и в других электронных компаниях.

Было бы хорошо, если бы сейчас некоторое количество школьных и вузовских преподавателей проверили бы вышедший курс «Как работают создатели умных наночипов», после чего направили бы на него интересующихся школьников. Подвожу итог. Такие семинары сейчас обсуждаются в Зеленограде, Москве, есть также интерес в Сочи, Минске и других местах. Потом для школьников, которые получат сертификат этого курса, можно пригласить на практический семинар с платами ПЛИС (часть из которых раздать в качестве призов за успешные проекты). Это то, что должно существовать в каждой крупной технически продвинутой стране, и в России достаточно традиций в математике, физике и инженерных науках, чтобы поддержать такое развитие. В долговременной перспективе в России вырастит сообщество разработчиков чипов, которое сложилось в Кремниевой Долине, Японии, Тайване, Южной Корее, Великобритании, сейчас складывается в Шанхае и других местах.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

MIDI-router на Raspberry Pi

Хочу рассказать о том, как решить проблему, которая наверняка знакома любителям аппаратных синтезаторов. Причем, по понятным причинам хочется все это сделать не используя компьютер. Что делать, если хочется состыковать MIDI-контроллер и синтезатор, но у одного из них есть только USB ...

DynamicData: Изменяющиеся коллекции, шаблон проектирования MVVM и реактивные расширения

В феврале 2019 года состоялся релиз ReactiveUI 9  —  кроссплатформенного фреймворка для построения приложений с графическим пользовательским интерфейсом на платформе Microsoft .NET. ReactiveUI  — это инструмент для тесной интеграции реактивных расширений с шаблоном проектирования MVVM. Знакомство с фреймворком можно начать с ...