Обновить
16K+
392
Юрий Панчул / Yuri Panchul@YuriPanchul

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

77
Рейтинг
1 243
Подписчики
Отправить сообщение

Сегодня директора стратегического маркетинга компании Synopsys спросили, что он думает насчет того, чтобы софтвер его компании писал ИИ? И знаете что он ответил? «Это дело далекого будущего. Для этого требуется математика уровня PhD, а также итеративная доработка на основе проприетарных данных от фабрик микросхем — данных, которые ИИ пока не способен полностью смоделировать. (Пока!)»

Прикол тут в том, что сам Синопсис хайпит вовсю свой ИИ-софтвер для других компаний. А сами, как вы видите, говорят: мы де перейдем на это в далеком будущем. При том, что их софтвер — это просто программы на C++. Я работал в Synopsys, так что я знаю изнутри. Так что не говорите мне, что ИИ якобы уже хорошо пишет на C++ алгоритмически-интенсивные программы.

Для тех кто не в курсе: софвер Синопсиса используют инженеры для проектирования микросхем. В комментариях мой слайд про процесс: код на языке SystemVerilog превращается в граф из логических элементов и элементов состояния (D-триггеров), потом программы размещения и трассировки раскладывают и соединяют этот граф по площадке микросхемы.

От этого трудно отмахнуться! Перед нами цитата не луддиста-отрицателя ИИ, а человека из самого истока всех чипов, которые проектирует Apple, Intel, NVidia, и даже чипов для российких дронов (компании в Зеленограде тоже используют софтвер от Synopsys). ИИ сможет писать такие программы на C++ в Да-ле-ком Бу-ду-щем. Так что в этом году всем нам AGI не грозит.

Теги:
+17
Комментарии1

На конференции SNUG Silicon Valley 2026 встретил давнего приятеля, китайского американца, который последние десять лет работал в компаниях, занимающихся чипами для аппаратного ускорения искуственного интеллекта. На позиции инженера по верификации: SystemVerilog тестбенчи, UVM итд. Его мнение про область:

  1. В области training никто не превзойдет NVidia.

  2. В области inference слишком много компаний. Скоро произойдет лопание пузыря, примерно как с доткомами в 2000–2001 годы, и большинство из них вымрет.

  3. Но парочка останется, как и лидеры типа Amazon и Google после дот‑ком пузыря. Они будут отличаться от NVidia тем что дешевле.

  4. Особенно несладко придет компаниям, которые метались между тем на что нужно ставить — CNN, LLM, трансформеры, датацентры, автомобили, edge computing.

  5. Его на работе нагибают на использование ИИ при писании кода — ведут учет потраченных токенов например. Он этого не любит и спросил меня, как к этому относятся у меня на работе.

Я ему сказал — у нас начальство относится рационально: «если вы находите в этом пользу — ок, если нет — не парьтесь». Тем более что на наших задачах ИИ плохо работает — у меня собственно была на эту статья и постер на конференции.

Товарищ сказал: «ну хорошо, если меня уволят за неиспользование ИИ, буду стучаться к вам».

Теги:
+26
Комментарии15

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

На что у меня ответ: степени окисления азота может быть от -3 до +5. Теория валентности устарела сто лет назад.

Чтобы никто не начал обвинять меня в плоскоземельстве, приведу две цитаты из википедии:

  1. Русской: "С момента возникновения теории химической связи понятие «валентность» претерпело существенную эволюцию. В настоящее время оно не имеет строгого научного толкования, поэтому практически полностью вытеснено из научной лексики и используется преимущественно в методических целях."

  2. Английской: "Because of the ambiguity of the term valence, other notations are currently preferred. Beside the lambda notation, as used in the IUPAC nomenclature of inorganic chemistry, oxidation state is a more clear indication of the electronic state of atoms in a molecule."

Понятно? "не имеет строгого научного толкования" и "other notations are currently preferred".

Именно поэтому американские учебники химии, например Kotz & Treichel - избегают слова valency когда они вводят понятие химической связи. Они говорят о перемещении электронов, молекулярных орбиталях, потом вводят понятие степени окисления.

Однако советские люди, которым эту валентность вдолбили в 8 классе - хором намехаются над смешными ИИ-дизайнерами нового учебника, не отдавая себе отчет, что они сами обладают полузнанием.

Картинку привожу не в посте, а в комменте, потому что посты большинство не читает (отвечают по картинке, первому предложению или сканированию ключевых слов), и если бы я бы привел бы картинку в посте, то получил бы кучу комментов со словом "валентность" и тут.

UPD: картинка не от ИИ, она старше, с 2019 года

UPD2: в корректных учебниках есть использование слова valence в качестве прилагательного: valence electrons и valence shells. А не "валентность азота, углерода итд" как в советском 8 классе. Как с "валентностью углерода 4" и "валентностью азота 4" из 8 класса объяснить бензольное кольцо и пентаксид азота N2O5? Это ненужный костыль.

Теги:
+9
Комментарии20

Против лома нет приема! Конкурсы по ASIC Design для молодежи станут таким же привычными как математические олимпиады

Наконец-то в России наладили массовый MPW сервис производства микросхем для молодежи! Каждый студент, у которого есть способности к проектированию процессоров, аппаратных ускорителей ИИ, сетевых чипов, может бесплатно участвовать в конкурсе и спроектировать собственный чип. МИЭТ, МФТИ и другие вузы объединили усилия с промышленностью, которая произведет микросхемы для победителей бесплатно. По значимости это как создание системы математических олимпиад в СССР.

Подробности в новостях МФТИ

Мой комментарий:

Обычно студенты изучают проектирование микросхем в вузе с помощью упражнений на симуляторе языка описания аппаратуры SystemVerilog и лабораторных работах с микросхемами реконфигурируемой логики, FPGA. Но в промышленности, для проектирования и производства массовых микросхем, им понадобится изучить маршрут RTL-to-GDSII, понять статический анализ тайминга применительно к технологии ASIC итд. Именно погружению в эту черную магию поможет новый конкурс, в результате которого победители получат сконструированные ими чипы.

Технология ASIC design относится к категории "против лома нет приема". Это способ достичь самую большую производительность в цифровом мире, на пару порядков привышающее то, что можно достичь программированием готовых процессоров. Быстрее - только квантовые вычисления, и то для ограниченных задач.

Именно поэтому магистральные маршрутизаторы, ускорители ИИ, графические процессоры и другие высокопроизводительные устройства стоят именно на ASIC design, впрочем как и частный случай цифровых устройств - процессор общего назначения.

Теги:
+9
Комментарии0

Трамписты решили сделать королевский подарок многополярному миру в лице Индии, Китая и в меньшей степени России и Ирану с помощью остановки программы рабочих H-1 виз. Поясню свою мысль (я в курсе, что половина людей комментирует по заголовку, а 75% не читают дальше первого абзаца, но тем не менее):

Я тертый калач и не идеализирую получателей рабочих H-1 виз (сам был таким в 1991 году). Большинство из них так же мухлюет в резюме как и местные, и не являются светочами технологической мудрости или трудовой этики. Кроме этого время ожидания гринкарты по labor certification сидя на H-1 визе перешло любые разумные пределы: в середине 1990-х оно было 3 года, сейчас некоторые больше 10 лет ждут. Я уже не говорю что H-1 визы разбираются аутсорсерами, и даже большим компаниям остается таких виз с гулькин нос. Короче сейчас большинство предприимчивых технарей старается сделать O-1 (особые способности) и некоторые L-1 (перевод из иностранного отделения компании в американское).

Тем не менее для меня очевидно, что полный бан на такие визы - это выстрел Америки себе в ногу и начало фундаментального изменения отношения ученых и инженеров других стран к эмиграции в Америку. Они будут оставаться на родине и перестанут мечтать про прекрасное далеко. Так как прекрасное далеко станет фундаментально недоступно, они начнут делать не на отцепись в других странах. Уйдет мысль "то что я тут в Индии/Китае/России/Иране лабаю - это так, временно, а вот уеду в Америку - там буду работать на совесть по гамбургскому счету. Буду слать фотки себя в кампусе Гугла/Микрософта, друзья детства будут мне завидовать, а бабушка всхлопывать ладошами при виде моего дома в Редмунде или Купертино и говорить "какое богатство!"

Улучшится ли от этого уровень американских студентов, которые заместят иностранцев и с помощью ИИ будут показывать чудеса производительности и качества на рабочем месте? Есть конечно масса способных американских студентов. Но есть и масса неспособных. Может даже Вэнс притащит в Силикон-Вэлли молодежь из гор Аппалач и других неблагополучных районов своего детства и они вместо наркомании и сидения на пособиях станут писать код или делать дизайн. Как говорила Верочка из "Служебного романа": "Можно и зайца научить курить". А вы как думаете?

Теги:
Всего голосов 10: ↑10 и ↓0+15
Комментарии4

Я целую неделю отлаживал свой блок GPU, в котором с мая месяца сделал новый подблок, которого не было у AMD, у которого Самсунг лицензировал технологию RDNA. Моим единственным желанием на Новый Год было чтобы прошел тест. Так как баг проявлялся только на подсистеме, тест которой шел 6 часов в софтвере и 8 часов на эмуляторе, после каждого изменения нужно было ждать это время. И вот я проснулся 1 января и тест прошел. Это значит, что с высокой вероятностью этот новый подблок моего дизайна войдет в телефоны Самсунг 2028 года. Все, сегодня можно не работать, а идти в лес или редактировать статью, которую у меня приняли на крутую конференцию. С Новым Годом!

Теги:
Всего голосов 24: ↑23 и ↓1+28
Комментарии11

Lex Kravetski в ФБ написал оду Микрософт Ворду, с которым у меня плохие отношения еще с конца 1980-х, когда он был под DOS-ом в графическом режиме. Причем тогда Ворд был еще более-менее, хотя бОльшая часть его функциональности лично мне не была нужна, для форматированных текстов хватало Лексикона от Eugene Veselov из ВЦ Академии Наук, затем уехавшим в Микрософт и ныне ставшим очень политизированным.

Главные проблемы с Вордом для меня начались после 2000 года, когда у него стало прыгать форматирование невпопад, особенно в текстах с комбинацией списков, таблиц и картинок. Lex такую проблему упоминает с позиции своих оппонентов: "блин, даже пробел в нём как-то странно работает, по коей причине даже простое форматирование сделать тяжело."

Из-за этого прыгания я сейчас для редактирования форматированных текстов как правило использую простой текстовый редактор joe (который имитирует редактор в TurboC 1988 года, но с квадратными блоками), а в нем - .md Markdown, который потом конвертирую в .pdf с помощью программы pandoc.

Также использую Google Doc, в нем форматирование не прыгает, как в Microsoft Word и в Libre Office, а сделано по человечески.

Раньше еще писал в текстовом редакторе на HTML, но Markdown удобнее, так как читабильнее в голом виде. Если вы еще не выучили Markdown и мучаетесь Вордом - просто нагуглите его в википедии, он учится за 15 минут.

Теги:
Всего голосов 8: ↑7 и ↓1+6
Комментарии12

Слышу уже от второго человека, что язык Rust не дает нормально работать с указателями в связанных списках, деревьях и графах (в моей вселенной ЯП без этого - это как свадьба без невесты). Взял ChatGPT, задал промпт: "write a code to insert a node into a doubly linked list in rust". Оно сгенерило нечто с кучей дополнительных слов, которых не было ни в Си, ни в Паскале 40 лет назад: borrow, as_ref, and_then, upgrade, map, downgrade, Some, clone, borrow_mut. Это все реально нужно или они там совсем озверели?

Теги:
Всего голосов 18: ↑13 и ↓5+11
Комментарии59

Записал видео (на английском языке) своей критики выдачи ИИ тула от Абишека Вармы из университета штата Иллинойс. Тул генерит SVA (SystemVerilog Assertions) для верификации (по простонародному - QA) цифровых аппаратных блоков систем на кристалле. Для повышения понятности, в начале видео рассказал основные идеи протокола AXI (Advanced eXtensible Interface): правила хендшейка valid/ready, конвейерность транзакций, внеочередной возврат данных по запросу чтения с тэгами.

Код, который я попросил Абишека скормить тулу для ревью.

Кратко что получилось:

Правила для проверок оно пишет некорректные. Например что если записать по адресу 100 число 123, то отныне и вовеки веков если прочитать с адреса 100, то там будет 123. Не задумывается, то после первой записи и до чтения может быть вторая, которая запишет число 456.

Далее, проверка для теста проверяет что после сброса (reset) данные на шине AXI будут равны X в виде data == 'x. Но это ерунда по двум причинам: Во-первых, данные могут быть после сброса какими угодно, хоть 0, хоть 123, так как они будуг игнорироваться если с ними не ходит бит valid=1, который кстати сбрасывается в 0. Во вторых, операция сравнения == 'x (неопределенным значением) дает в качестве результата 'x. Чтобы делать именно сравнение с 'x нужно использовать другую операцию ===, то это все равно не будет работать потому что (1). Это вообще невалидный тест.

Но это все цветочки - на это его можно натаскать. Более интересный вид тупости - ИИ конструирует проверку, что если сделаны запросы с тэгами 11, 3, 4, 7, то и данные будут возвращаться в таком же порядке - с тэгами 11, 3, 4, 7. Ему не приходит в голову задать себе вопрос - если бы это было так, зачем в AXI вообще были бы нужны тэги? Они ведь нужны чтобы идентифицировать данные которые приходят не в том порядке, скажем 4, 11, 3, 7.

Итд.

Теги:
Всего голосов 8: ↑6 и ↓2+7
Комментарии0

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

Нет, на предложение посмотреть на слайды нужно сразу сказать "просто не буду", как и на предложение посмотреть его демо, где он гениально генерит мультиплексоры из учебника, а также пристраивает к однотактному процессору то, что он называет AXI IP, хотя там простой конечный автомат, который игнорирует конвейерную и out-of-order природу AXI, ну это как показывать трехколесный детский велосипедик как демо для автомобиля Формулы-1. В этот месте стартапер начинает говорить быстро и листать код, чтобы тот, кто прервет его возгласом "это не AXI, а закамуфлированный APB" - выглядел невежливым.

Стартаперу нужно разумеется сразу дать задачку, причем сформулировать ее так, чтобы у него не было возможности заменить ее на другую. Но даже тут стартаперы творят наглости, присущие всем LLM. Например вместо текста ответа присылают видео(!) на час(!), где на 45-й минуте на экране за секунду проскальзывает "FAILED" на вашу задачку, а все остальное время видео он показывает те самые тривиальные мультиплексоры, которые он нашел в вашей репозитории, хотя вы ему совершенно четко написали, что вас не интересует как этот тул генерит мультиплексоры и простые FSM, а интересует решение конвейерных микроархитектурных задач. После чего он пишет отчет инвестору "мы решили 37 из 42 труднейших задач оттуда-то", хотя я в явной форме предложил решить только задачу номер 38 которую тул не решил.

В последнее время стартаперы нашли противоядие против задачек. Они честно, глядя в глаза, говорят что никакого прототипа у них нет, но оно должно работать, потому что AI уже умеет питон и диагностировать рак, значит должен научиться и верилог (вариант: уже умеет Scala, значит должен и Chisel). А мешает плохому танцору только то, что индустрия сделала весь код проприетарным и им не на чем учиться. Поэтому давайте пойдем посмотрим на слайдики, а если вы что-то спросите, мы ответим, что это есть в нашей roadmap. А потом напишем инвестору что мы нашли партнера и нужно слать следущие деньги.

Но не надо отчаиваться! Помимо стартаперов есть еще разные аспиранты, которые присылают вывод своих тулов на посмотреть. Это что-то невероятное по глупости. Некоторые виды глупости настолько глупы, что просто не пришли бы мне в голову. Написание (бесполезного) теста с помощью свободной рандомизации всех сигналов в AXI; проверка что после ресета данные равны 'x. Присваивание значений к типам (а не переменным). Ожидание что после записи в память это значение будет там вечно, несмотря на перезаписи. Проверка что ID прочитанных данных будут всегда в порядке ID адресов, хотя зачем тогда ID. Итд.

Тут нужно тоном коварного змия предложить устроить публичный разбор этого для обучения молодежи. Если аспирант согласится, то превратить это в выступление пародиста Александра Иванова на Вечере смеха в студии Останкино (если вы из поколения, которое застало язык фортран, то вы знаете о чем я говорю).

Теги:
Всего голосов 21: ↑18 и ↓3+21
Комментарии9

Народ жалуется на трудности поиска работы. В частности такие жалобы есть в группе русского QA коммьюнити в США. Написал для них следующий пост. Интересно сколько откликнется:

"Господа! В этом коммьюнити есть junior QA, которым могут быть полезны (например для поиска работы) рекомендации в LinkedIn. Я готов написать нижеследующую рекомендацию в обмен на несложную работу: проверить инструкцию и репозиторий для семинара, который я буду проводить в грядущий викенд в Cal Poly SLO (Калифорнийский политехнический государственный университет в Сан-Луис-Обиспо).

Рекомендация в LinkedIn будет звучать так:

"Товарищ такой-то/такая-то demonstrated reliable QA skills and verification creativity when testing a CI/CD workflow setup for an educational project aimed to help the universities to teach VLSI classes. The tested product is a variant of a Tiny Tapeout GitHub template for ASIC synthesis used during the Verilog Meetup at California Polytechnic State University in San Luis Obispo, California. The template includes JSON-based GitHub Actions and Python scripts to run Yosys/OpenROAD-based RTL-to-GDSII flow and cocotb/pytest-based verification for the digital designs coded in SystemVerilog. такой-то/такая-то wrote an informative report describing the observed usability problems and unclear parts in the instructions for the user. This work greatly contributed to the success of the CalPoly seminar and similar planned events in microelectronics workforce development.

Инструкция здесь - https://verilog-meetup.com/2025/10/20/from-fpga-to-asic-using-template/

Если вас это заинтересовало, можете приступать. За вопросами можете обращатся в личку.

Теги:
Всего голосов 17: ↑8 и ↓90
Комментарии7

Питон - предмет обожания секты питонистов, которые ходят по домам и всем говорят "Как, вы еще не выучили Питон? Он же учится за две недели!"

Допустим, но вот два практически идентичных репозитория (1, 2), которые я только что приготовил как форки от двух других практически идентичных репозиториев. Один для создания чипа на немецкой фабрике IHP (The Leibniz Institute for High Performance Microelectronics), а другой для создания чипа на американской фабрике SkyWater (аналог зеленоградского Микрона для военных).

И вот в одном репозитории на питоне нужно писать:

clock = Clock(dut.clk, 10, units="us")
assert not ((dut.uio_out.value >> 4) & 1);

а в другом:

clock = Clock(dut.clk, 10, unit="us")
assert not dut.uio_out.value [4];

Если во втором написать не "unit", а "units", оно пожалуется:

DeprecationWarning: The 'units' argument has been renamed to 'unit'.

DeprecationWarning: The 'units' argument has been renamed to 'unit'.

И типы данных поменялись:

unsupported operand type(s) for >>: 'LogicArray' and 'int'

А все почему? У питониcтов все время меняются версии, и в их коммьюнити не принято поддерживать обратную совместимость:

"Просто используй другую версию!", "Просто поставь виртуальные среды!", "Как, ты еще не используешь Докер? С ним это решается элементарно!" - "Ты просто не pythonian!"

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

Теги:
Всего голосов 30: ↑18 и ↓12+10
Комментарии42

Я кажется нашел объяснение одному из феноменов, который (правда редко) встречается во время интервью. Представьте что вы задаете какой-нибудь банальный вопрос (я не буду приводить реальный вопрос, а приведу аналог), типа "напишите код который отсортирует пять чисел".

Вместо того чтобы написать столь же банальный ответ и продолжать с более интересными вопросами, кандидат(ка) начинает писать какие-то каракули произнося при этом непрерывный поток слов: "представим себе что число A больше чем число B ... а что теперь случится если число B меньше чем C ... тогда наверное надо сравнить С и D ... хотя скорее A и C ... но сначала надо занести все эти числа в сбалансированное бинарное дерево ... или в хэш-таблицу ... хотя нет, лучше в B-дерево, но это тоже самое ... и что тогда будет если C больше A?"

Проходит 15 минут, потом полчаса. Я все это слушаю c покерным лицом раз в пять минут вставляя фразы типа "но тогда не обрабатывается случай когда числа равны ... эта структура данных не будет ничего делать" итд.

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

У меня гипотеза, что цель такого поведения - это чтобы у экзаменатора или интервьюера закончилось терпение и чтобы он сам стал объяснить как решать задачу, а потом отпустил поставив типа троечку. Для чего потребуется вставить фразу "ну я именно это и говорил(а), именно это имел(а) в виду".

А вы что думаете?

Теги:
Всего голосов 6: ↑6 и ↓0+7
Комментарии13

Читает ли кто-нибудь в современном мире диссертации или это считаетеся какой-то фигней чтобы поставить галочку? Вспомним что вся цифровая электроника, все айфоны, интернет-роутеры и ИИ-ускорители - построены на двух диссертациях: 1) магистерской диссертации Клода Шеннона, который в 1937 году повысил уровень абстракции проектировщиков с переключателей (на основе реле и ламп) до булевской логики и/или/не и 2) диссертации 1954 года Дэвида Хаффмана в MIT, который обобщил более ранние потуги и сформулировал модель Хоффмана для последовательностной логики: комбинационное облако вычисляет следующие значения элементов состояния (сейчас это в 99+% случаев D-триггеры), которые записываются по фронту тактового сигнала.

У истории были альтернативные ветки (например электроника могла бы строится на C-элементах Мюллера), но в нашей параллельной вселенной они не прижились.

Теги:
Всего голосов 9: ↑8 и ↓1+10
Комментарии10

Товарищи студенты из проживающих в США! Кто хочет отправиться на летнюю практику и/или программу для выпускников вузов в техасском отделении Самсунга? Вы можете сходить на сайт и подать заявку напрямую (ссылка 1, ссылка 2). Альтернативно, я могу сделать для вас внутреннюю рекомендацию, так как я член команды разработки GPU в телефонах. Но так как я стараюсь рекомендовать компании только кандидатов, в качестве которых (по своим критериям) я уверен, я предлагаю всем желающим сделать одно из двух вещей:

  1. Решить задачку под названием SystemVerilog Microarchitecture Challenge for AI No.2. Adding the Flow Control. , далее получить от меня разбор вашего решения, после чего решить еще три маленькие задачки в зуме передо мною, и у вас будет рекомендация.

  2. Если вы живете в Области Сан-Францисского Залива или в Сакраменто, то сделать какой-нибудь проект на FPGA платах в рамках разработки open-source примеров для non-profit клуба Verilog Meetup (не аффилиированного с Самсунгом, это просто малочисленная тусовка, куда заходят люди из Теслы, Intel, Apple итд). Наш клуб будет на выставке самоделкиных Maker Faire в Valejo 26-28 сентября. Вы можете подойти ко мне на стенде и мы обсудим ваш проект.

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

Повышает ли моя рекомендация ваши шансы? Этого я не знаю. Как говорил Остап Бендер, полную гарантию вам может дать только страховой полис.

Пишите мне на yuri@panchul.com если вас интересует такое предложение.

Спасибо,
Юрий Панчул

Теги:
Всего голосов 11: ↑9 и ↓2+14
Комментарии2

Samsung expands GPU team: open RTL Designer and Performance Architect positions

The team at Samsung that designs the Xclipse GPU in Galaxy phones with Exynos SoC – is doing expansion. There are multiple jobs available, including positions in the RTL and Architecture teams:

These positions are in two locations:

  • Samsung Advanced Computing Lab (ACL) in San Jose, California

  • Samsung Austin Research and Development Center (SARC) in Austin,Texas

The compensations listed in the opening descriptions are base salaries only. The total compensation includes serious performance-based bonuses.

You can apply at the website – or, if you want, I can make you an internal referral since I (Yuri Panchul) am a member of the GPU team. Getting a referral from me is easy:

  1. First, you solve the SystemVerilog Microarchitecture Challenge for AI No.2. Adding the Flow Control, an open-source challenge from Verilog Meetup – and send me the solution to yuri@panchul.com.

https://github.com/verilog-meetup/systemverilog-microarchitecture-challenge-for-ai-2

2. Then I discuss your solution with you either in person (if you live in the San Francisco Bay Area) or over Zoom. I don’t care whether you solve the challenge manually or use AI for it, but I need you to explain every single line of the solution. In addition to it, I may ask you a couple more questions (manual solutions only in front of me, no AI).

3. If I like your solutions, I will enter your data in the Samsung internal referral website. After that, you will get an email from the website and can start an application to go through the official Samsung interview process. I will also forward your resume to the hiring managers and the team’s recruiters.

4. Note that solving a couple of puzzles for me is not a part of the official Samsung interview process. This is just my personal way to ensure I forward only the relevant resumes to the company. Every single member of our RTL teams would solve such a thing easily, so this is not something difficult, just some basic techniques to design a static pipeline in Verilog, generic for the industry.

Our team consists of friendly, proficient, and helpful people. We also have a fancy office that just got 10-year anniversary:

Thank you,
Yuri Panchul

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Когда я был в 9 классе в 1985 году, в Киеве поставили заведовать компьютеризацией школьного образования человека по фамилии Долина, бывшего полковника танковых войск из Донецка. Сейчас я понимаю что Долина был голова. Он временно поставил компьютеры MSX Yamaha в физматшколу номер 145, а через неделю их забрал. Ясень пень, что десятки физматшкольников потянулись в его контору, которая располагалась через дорогу.

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

Если с мытием полов у всех было еще более-менее, то инструкции обламывались писать 95% пришедших. Осталось всего 4 человека - один из 145-й (это я), два из физмат-интерната (у них были свои Ямахи, но с монохромным экраном и ограниченным доступом) и еще один школьник из третьей физматшколы (забыл номер). Долина предоставил нам безлимитный доступ ко всем компьютерам, тонне софтвера и посодействовал посылке двоих из нас в Новосибирскую Летнюю Школу Юных программистов.

На Ямахах помимо Бейсика был MSX-DOS, три компилятора Си, два компилятора Паскаля (включая ранний Turbo Pascal), Z80 процессор, ассемблер и отладчики (в командной строке и оконный), видеопроцессор со спрайтами, интерпретатор Lisp, Nevada Fortran, интерпретатор подмножества Пролога и даже перенесенный из CP/M подмножество Ada.

Мы писали для Долины программы типа записи действий футболистов на стадионе в реальном времени, а также графические мультики на Бейсике, которые он показывал людям из киевской киностудии мультфильмов. Он также был популярен у нанятой им секретарши которая подходила к нему сзади и обнимала его за плечи, на что он говорил "ты создана чтобы любить мужчин". Короче один из ролевых фигур моего взросления.

После Долины я в 10 классе пошел в Киевский Институт Кибернетики, но это уже была другая история.

Теги:
Всего голосов 32: ↑30 и ↓2+33
Комментарии28

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

Для меня из его реакций на некоторые мои утверждения ясно как божий день, что у него нет достаточного трейнинга в проектировании чтобы видеть эти проблемы самому. Поэтому я ему предложил всю ту же задачку на SystemVerilog (1, 2), которую я в этом году даю всем и в которой как в микрокосме представлены проблемы дизайна электроники, по крайней мере в микроархитектурной части и в контексте проекта в большой компании с использованием кода и тестового стенда других людей. Типа "решишь - поймешь в чем проблема".

Вместо того, чтобы по моим рекомендациям решить задачку и понять о чем я говорю - человек продолжает тусоваться и задавать людям вопросы на основе информации которую он услышал у других людей. Например спросил меня, хожу ли я на выставки DAC, где все говорят что тулы (средства проектирования) ограничивают сложность дизайнов. Я ответил что хожу на эту выставку с 1996 года, и тогда тоже все так говорили. Спросил у меня, слышал ли я о Chisel. Ответил "его используют только SiFive и Беркли. То что Chisel за 10 лет не проник в другие компании - означает что он ничего принципиально не решает". Итд.

Я не понимаю - что человек пытается достичь тусованием и такими вопросами? Какая часть фразы "пока вы сами не попробуете решать микроархитектурные задачи на верилоге, вы не будете понимать что вам говорят люди о проблемах такой разработки" - какая часть этой фразы ему непонятна?

Единственная гипотеза которая приходит мне в голову - человек пытается с помощью тусования найти технических людей, которых потом перепродать VC, то есть возглавить стартап и получить под них инвестии от венчурных капиталистов. Проблема с такой идеей: для технического человека ясно-понятно, что кроме тусования у этого джентльмена ничего значимого нет, то есть такой скрипач не нужен. С таким же успехом технический человек может сам пойти к VC.

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

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

Теги:
Всего голосов 16: ↑12 и ↓4+13
Комментарии5

Here is my take on Verilog-vs-VHDL

In the early 1990s many people thought that Verilog was a temporary language and was going away with VHDL standard adoption.

For example, Verilog was plagued by race conditions in the form:

always @ (posedge clock) a = b;
always @ (posedge clock) c = a;

You had to use non-blocking assignments or delays in simulation to counteract the fact that the order of always block evaluation is indeterminate. This led to a pre-synthesis-post-synthesis simulation mismatch. At the same time, many people complained that VHDL has different incompatible arithmetic packages (numeric_std and std_logic_arith) and writing something like

wire [3:0] a, b;
wire [4:0] c = a + b;

becomes something like

signal a, b : std_logic_vector (3 downto 0);
signal c : std_logic_vector (4 downto 0);
c <= std_logic_vector (resize (unsigned (a), 5) + resize (unsigned (b), 5))

Finally John Cooley, the first blogger of EDA industry (he started his blog http://deepchip.com even before the word "blogger" appeared in the press) decided to make a hackathon in 1997 (at that moment the word "hackathon" was also unknown) to find out who is more productive - Verilog or VHDL engineers.

John Cooley published the results in an article

"The Unexpected Results From A Hardware Design Contest:  Verilog Won & VHDL Lost? -- You Be The Judge!"

https://www.angelfire.com/in/rajesh52/contest.html

He found that the Verilog engineers were more productive in his challenge.

After that more and more companies started to switch to Verilog, especially when Verilog-2001 and SystemVerilog integrated all the features of VHDL (packages, generate, records/structs etc).

In the early 2000s Synopsys developers thought that VHDL was going to die soon. However they continued to maintain VHDL support for die-hard VHDL users like Texas Instruments, IBM and the military. But even the Pentagon eventually back in 2008 allowed contractors to mix VHDL RTL designs with SystemVerilog testbenches (before they used a mix of VHDL and Specman e language).

However, VHDL at some moment stopped declining and stabilized. For example PowerVR GPU used in Apple iPhone 1-4 was written in VHDL by the British company Imagination. VHDL is still used but EDA companies give SystemVerilog priority when implementing language support in their tools.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии3

Некоторые товарищи, например Олег Чирухин на Фейсбуке утверждают, что LLM хорошо пишет на JavaScript / TypeScript и плохо на Verilog / SystemVerilog потому что первого в мире больше. Однако у верилога есть два критических фактора, которых у JS вообще нет. В JS если программа работает долго - это просто неудобство, в Verilog-е если нарушается тайминг внутри такта (задержки в пикосекундах) или результат приходит через 5 тактов, а он ожидался через 4 - все нафиг ломается. LLM не понимает ни тайминг внутри тактов, ни тайминг по тактам (латентность).

Никто не будет из-за этого дурацкого LLM ставить везде hanshake не зависящий от латентности подблоков, снижать пропускную способность блока на порядок или снижать в разы тактовую частоту - скажем вместо процессора с частотой 2 GHz выкатывать на рынок процессор с частотой 20 MHz. И с производительностью по тактам 2 СoreMark / MHz вместо 12 СoreMark / MHz. И при этом большой в разы и с высоким энергопотреблением. Это как продавать автомобили со скоростью и грузоподъемостью велосипеда и весом как самосвал - такое никто не купит.

Тайминг внутри такта (задержки в пикосекундах) только из кода определить нельзя, нужна процедура статического анализа тайминга, который знает задержки конкретной библиотеки ASIC (LLM не умеет делать STA (static timing analysis) и не знает задержек конкретной версии библиотеки скажем на 2 нанометра low power такого-то вендора).

С неумением LLM понимать что происходит в каком такте все интереснее. В принципе это понять можно, но это требует довольно вдумчивого анализа конкретного кода, а LLM это не просто не умеет, а в наглую пишет "for illustration, assume the latency is 1" - типа тоном профессора "для иллюстрации, предположим латентность подблока - 1 такт". А если не предполагать? С предположением все поломается.

Конечно можно писать код с handshake, который не зависит от латентности, а просто ждет результата, но это принципиально усложняет дизайн, а также требует введение крупных очередей FIFO с непонятным размером.

Написал Олегу:

Тут есть два других фактора: 1. в реальных бизнес-задачах необходимо, чтобы разработчик мог понять например латентность кода подблоков - количество тактов на получение результата. LLM этого не понимает - оно из чужого кода часто и опытному разработчику не очевидно, а запустить симулятор и посмотреть это на диаграммах после симуляции LLM не может. 2. в верилоге есть составляющая которой вообще нет в программировании - таминг внутри такта в пикосекундах. Нужно чтобы схема синтезированная из кода в этот тайминг влезала. И если латентность (количество тактов) из чужого кода еще можно определить (если проанализировать цепочку присваиваний между комбинационной логикой и D-триггерами), то с таймингом вообще напряг. Хотя с таймингом у дизайнера вырабатывается интуиция, например что комбинационное умножение 4-х битных чисел в бюджет на 400 пикосекунд точно влезет, а вот комбинационное деление 32-битных точно не влезет - но все это нужно подтверждать запуском программы статического анализа тайминга, который (та-дам!!) LLM делать не может.

Теги:
Всего голосов 10: ↑10 и ↓0+11
Комментарии6
1

Информация

В рейтинге
105-й
Откуда
Sunnyvale, California, США
Дата рождения
Зарегистрирован
Активность