Pull to refresh
355
67.6
Юрий Панчул / Yuri Panchul @YuriPanchul

Проектировщик CPU, GPU, сетевых микросхем

Send message

Все равно не понимаю о чем вы. Можете написать мне в приват если не хотите тут писать или в телеграм

Дык я этим занимаюсь - каждое воскресение созваниваюсь на несколько часов с людьми, которые перенимают мой опыт создания образовательных материалов. Я вообще один из авторов материалов которые используются в 20 российcких университетах - https://engineer.yadro.com/chip-design-school/

Изготовят, есть программа https://tinytapeout.com/

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

Я вообще-то разработчик, с педагогами не соревнуюсь. Мне было бы за детей это делать облом. Конкретно задачу сделать как орган 8-классник придумал самостоятельно и сделал самостоятельно. 8-классница задачу вставить инструкцию сделала сама после моего объяснения последовательности шагов. Разумеется до этих задач я их тренировал другими упражнениями.

Конкретно задачу сделать как орган 8-классник придумал самостоятельно и сделал самостоятельно. 8-классница задачу вставить инструкцию сделала сама после моего объяснения последовательности шагов. Делать все это за них мне было бы облом. Разумеется до этих задач я их тренировал другими упражнениями.

Как достигнуто что не сошли на полдороги? Дык они были в лесу под Новосибирском, там делать больше нечего кроме как задачи решать - вот и концентрация.

Так это и есть основы. Кирпичики из которых складывается логика в цифровых схемах - логические элементы, D-триггеры и конструкции из них.

Образование будущих проектировщиков ASIC-ов, а также эмуляция и прототипирование ASIC-ов - см. мою презентацию https://bit.ly/yuri-panchul-fpga-systems-2024-1

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

Хороший вопрос. В современных ASIC-ах дизайнер типа меня (я проектирую чип на 3 нм) с RS-триггерами (правильнее SR-защелками) в повседневной жизни никогда не сталкивается, как и с JK. Во всех отчетах и в синтезе 99% элементов состояния - это D-триггеры в разных вариантах (с сбросом или без, с enable или без). Остальной 1% - это D-защелки для целей:

  1. Clock gater для экономии динамического энергопотребления (это не для новичка).

  2. Latch array - редкий объект для экономии на пару процентов энергопотребление.

  3. Time borrowing - экзотический прием для дизайнеров с многолетним опытом.

    То есть во всех вводных курсах можно сразу переходить к D-триггерам, JK пропустить вообще, а про SR упомянуть в порядке научпопа, если есть время. Гораздо лучше рассказать про что-то полезное, например раскрыть тему с конвейерами, так как их спрашивают на интервью в электронные компании, а SR и JK - нет.

Пардон, как это не хватает, в смысле? Вы никогда не видели schematic viewer в Quartus, Vivado или Gowin IDE?

Я работаю в Самсунге проектировщиком микросхем, а также участвую в процессе интервьирования новых инженеров. Просто тыкать в ПЛИС недостаточно - вопросы на интервью преимущественно на решение микроархитектурных задачек типа https://verilog-meetup.com/2024/06/16/focus-on-microarchitecture/ Но тренировка на ПЛИС несомненно способствует.

Я работаю в Самсунге проектировщиком микросхемы на постоянной позиции, и нанят прямо - то есть сконтактировал через сайт компании

Я работаю в Самсунге проектировщиком микросхемы на постоянной позиции нанят прямо - то есть сконтактировал через сайт компании

Ардуино - это другая парадигма вычислений. Заменять им схемотехнику - это как пение заменить рисованием.

Никакое количество програмирования Ардуино не научит, как спроектировать сам чип Ардуино, примерно как курсы по вождению автомобиля не научат, как конструировать его двигатель.

Микроконтроллер, в том числе в Ардуино - это частный случай того, что можно сделать в хардвере. Микроконтроллер - это просто схема которая вынимает из памяти поток команд, переваривает их и меняет свое состояние и сигналы к внешним устройствам.

Я проиллюстрировал это картинками в комменте выше - https://habr.com/en/articles/825564/comments/#comment_26989098

Ну если в системе образования чего-то нет (а я знаю, чего нет потому что я интервьирую студентов на работу), то иногда восполнением дыр приходится заниматься и людям без педагогического образования.

Ардуино - это другая парадигма вычислений. Я объяснил различия в комменте выше https://habr.com/en/articles/825564/comments/#comment_26989098

Никакое количество програмирования Ардуино не научит, как спроектировать сам чип Ардуино, примерно как корсы по вождению автомобиля не научат, как конструировать его двигатель.

Это знание нужно, но оно учится раньше и отдельно, в частности в курсе геометрии (аксиомы и теоремы) и физики (фальсифицируемость по Попперу)

Я глянул в первый и третий (второй получше хотя тоже есть проблемы). Это неоптимальные примеры для разбора новичками. Они сделали wrapper-ы для древних микросхем, но современный дизайн выглядит не так. Вот пример игры со спрайтами, который я разбираю на семинарах -

https://github.com/yuri-panchul/basics-graphics-music/tree/main/labs/14_game

Это тоже игра в духе игровых автоматов 1970-х, но верилог написал не инстанциацией модулей типа SN7474, а как он пишется с нуля в 21 веке, без попытки все вогнать в модули имитирующие микросхемы начала 1970-х.

Вот как я обычно показываю разницу между програмированием микроконтроллера и дизайном на языке описания аппаратуры -

https://habr.com/en/articles/825564/comments/#comment_26989098

Information

Rating
71-st
Location
Sunnyvale, California, США
Date of birth
Registered
Activity