Всем привет, я Ши Кань из Института вычислительных технологий Китайской академии наук, "косой научно-технический работник". У меня более десяти лет опыта работы в области микросхем, сейчас я занимаюсь академическими исследованиями, связанными с микросхемами, в Китайской академии наук; но в то же время я также являюсь научно-популярным видеоблогером на Bilibili "Старый Ши говорит о чипах", мои зрители называют меня "Старым Ши".
Микросхемы: Краеугольный камень современного общества
Говоря о микросхемах, все, конечно же, знают их важность.
Будь то сейчас популярный искусственный интеллект, или биомедицина, автономное вождение, сетевая связь и т.д., почти все технологии современного общества, которые вы можете себе представить, зависят от микросхем — этой краеугольной технологии информационной эпохи.
Я работаю с микросхемами уже долгое время, процесс разработки микросхем на самом деле очень интересен, в основном по двум причинам.
Во-первых, применение микросхем очень широко. Как только вы войдете в эту отрасль, скорее всего, вам не придется беспокоиться о безработице, потому что многие отрасли нуждаются в технологиях микросхем.
Вторая причина, возможно, важнее: разработка микросхем — это очень сложное дело. Как инженеры по микросхемам, мы должны постоянно учиться, постоянно совершенствовать себя, чтобы справляться и встречать эту эпоху, полную возможностей и вызовов.
Тогда возникает вопрос: в чем же именно заключается сложность технологии микросхем?
Почему микросхемы такие сложные?
Выполнено: 10%//////////
Вы, возможно, знаете, что процесс изготовления микросхемы по сути является путешествием эволюции песчинки. Песок, возможно, является одним из тех веществ на этой планете, которые неисчерпаемы; но превращение низкоценного песка в высокоценную микросхему — это полностью добавленная человеческая мудрость.
Начиная с песка, нам нужно его очистить, чтобы получить кремниевую пластину. Затем, после ряда процессов, таких как литография, ионная имплантация, травление, упаковка и т.д., мы можем превратить неисчерпаемый песок в крошечную микросхему.
Итак, сказав столько и пройдя столько этапов, на самом деле производство микросхем — это лишь часть всего процесса разработки микросхем, оно не равно самой разработке микросхем.
Есть еще один очень важный этап — проектирование микросхем. Это означает выполнение проектирования схем в соответствии с требованиями и обеспечение их нормальной работы. Затем мы передаем спроектированную схему производителю микросхем для последующего производства, чтобы в конечном итоге получить физическую микросхему.
Но здесь возникает другая проблема: как гарантировать, что функции микросхемы соответствуют вашему первоначальному проекту?
Есть одна интересная маленькая история. В 1947 году очень известная женщина-программист Грейс Хоппер обнаружила, что ее компьютер не работает. После тщательной проверки и исследования она обнаружила, что в реле компьютера залетела моль. Тогда она осторожно вынула эту моль пинцетом и приклеила ее на лист бумаги.
Это, возможно, первый "баг" (жук), то есть уязвимость, обнаруженный за всю историю развития вычислительной техники.
Если предыдущий пример слишком устарел, то у нас есть еще больше примеров. Давайте задам вам математическую задачу: чему равен конечный результат этого выражения? На самом деле эта задача проста, потому что в выражении числитель и знаменатель одинаковы, их можно сократить; затем число перед знаком минус и число после него также одинаковы, поэтому вычитание одинаковых чисел должно дать ответ 0. Однако в реальных компьютерах и микросхемах результат может быть не таким.
Например, в одном из микропроцессоров Pentium компании Intel результат равен 255.00000000. Как так получилось? Оказалось, что американский ученый, занимаясь научными исследованиями, никак не мог правильно вычислить это выражение. В конце концов он обнаружил, что в блоке операций с плавающей запятой этого микропроцессора существует необнаруженная проектная уязвимость.
Не стоит недооценивать эту проектную уязвимость, ее последствия на самом деле очень серьезны. В 1990-х годах Intel потратила 475 миллионов долларов на отзыв по всему миру всех микропроцессоров Pentium с этой проблемой.
Итак, возвращаясь к первоначальному вопросу: в чем же сложность технологии микросхем?
На мой взгляд, сложность микросхем заключается в том, что они должны быть успешными с первого раза. Разработка микросхем не похожа на разработку программного обеспечения, где вы можете исправлять различные проблемы, выпуская патчи. В отличие от этого, как только микросхема завершила свой путь эволюции от песка до микросхемы, вы, возможно, уже потратили десятки тысяч, даже сотни миллионов юаней на изготовление и производство микросхемы, и ее уже сложно изменить.
Тогда возникает следующий вопрос: сколько сейчас проектов по разработке микросхем могут достичь успеха с первого раза?
Верификация микросхем: "Удушающая" проблема
Выполнено: 40%//////////
Согласно данным опроса, только 24% проектов по разработке микросхем могут достичь успеха с первого раза. То есть, 3/4 проектов из-за различных, больших и малых, необнаруженных проектных уязвимостей требуют по крайней мере еще одного цикла изготовления, что занимает много времени и денег.
Таким образом, ключевой вопрос заключается в следующем: как мы можем максимально гарантировать, что у микросхемы перед изготовлением будет как можно меньше или вообще не будет багов или проектных уязвимостей. Это направление, которым я занимался в последние годы.
Согласно тем же исследовательским данным, во всем процессе разработки микросхем, особенно с развитием искусственного интеллекта и различных высоких технологий, микросхемы становятся все более сложными. Верификация микросхем, таким образом, становится звеном, которое занимает очень высокую долю в общем цикле разработки микросхем, даже превышая половину, достигая 70% всего цикла проектирования микросхем.
Но, к сожалению, верификация микросхем — это тоже сложная задача. Здесь я привожу некоторые астрономические цифры, такие как длина окружности Земли, количество возможных звезд в Галактике или длина светового года.
В верификации микросхем также существует астрономическое число — это количество циклов, необходимое для полной верификации ядра процессора. Что означает это астрономическое число?
Если мы используем самые передовые технологии программной эмуляции для полной верификации ядра процессора, потребуется не менее 15000 лет. Используя самые передовые технологии аппаратной эмуляции, можно немного сократить это время до 30 лет. Но мы все знаем, что разработка микросхемы не может ждать 15000 лет или даже 30 лет.
Так в чем же суть проблемы? Мы действительно изучали это в последние годы. Мы обнаружили, что в верификации микросхем существует так называемый "невозможный треугольник", а именно: высокая производительность верификации, хорошие возможности отладки и низкая стоимость; и эти три критически важных для верификации микросхем фактора не могут быть удовлетворены одновременно. Для современных основных исследований или методов максимум, что можно сделать, — это выбрать два из трех, и именно это является основной причиной очень низкой эффективности верификации микросхем.
Кто-то должен делать что-то другое
Выполнено: 60%//////////
По этим причинам верификация микросхем в последнее время не получила большого развития.
В компаниях, занимающихся микросхемами, инженеры по микросхемам, возможно, больше пишут тестовые случаи, запускают регрессионную верификацию. По сути, это грязная и тяжелая работа. В академической сфере также мало ученых, занимающихся исследованиями в области верификации микросхем, особенно по сравнению с популярными областями, такими как искусственный интеллект.
Поэтому один академический авторитет сказал мне, что за то же время он мог бы опубликовать три или даже больше статей в области искусственного интеллекта, но в верификации микросхем, возможно, не опубликовал бы ни одной.
К сожалению, он был прав.
Однако кто-то должен делать что-то другое.
Поэтому в последние годы я возглавлял команду, занимающуюся исследованиями в области верификации микросхем, и с нуля построил систему исследований agile-верификации. Ядром этой исследовательской системы является платформа верификации под названием ENCORE, основанная на специальной микросхеме — программируемой пользователем вентильной матрице (FPGA). ENCORE может значительно повысить эффективность верификации, обеспечивая при этом хорошую отлаживаемость.
Для построения этой системы исследований agile-верификации, с одной стороны, нам необходимо постоянно оптимизировать на алгоритмическом уровне эффективность обнаружения уязвимостей, отладки и исправления; с другой стороны, мы также надеемся построить сквозную ускоренную платформу agile-верификации на основе программируемых логических микросхем (FPGA). На уровне применения мы хотим, чтобы эта платформа подходила как для верификации универсальных процессоров, таких как CPU или GPU, так и для верификации специализированных микросхем, таких как сейчас популярные AI-ускорители.
В последнее время мы провели много передовых исследовательских работ в этой области, включая упомянутые выше ENCORE и множество новых исследований. Мы также опубликовали результаты этих исследований на многих известных международных академических конференциях.
Позже мы также занимались некоторыми интересными работами, но поскольку они еще не опубликованы, я не буду их сейчас показывать.
Сделать так, чтобы больше людей лучше понимали микросхемы
Выполнено: 80%//////////
Но в процессе исследований я постепенно обнаружил, что эти научные или академические результаты в основном предназначены для просмотра нашим маленьким кругом тех, кто понимает только верификацию микросхем и связанные области. Тогда как мы можем сделать так, чтобы больше людей увидели нашу работу, узнали о наших исследованиях и даже приняли участие в нашей работе?
Тогда я естественным образом подумал о популяризации микросхем, что также показалось мне очень интересным. Я занимаюсь популяризацией уже четыре-пять лет, начиная с текстов, а затем перешел к созданию видео на Bilibili. Популяризация микросхем не только принесла мне много пользы, но и помогла познакомиться со многими единомышленниками, а также зрителями, которые меня любят и поддерживают.
Однако создание видео о популяризации микросхем — не простая задача, особенно сегодня, когда существует изобилие коротких видео. Один авторитетный блогер, также занимающийся популяризацией, сказал мне, что за то же время, что я делаю одно длинное видео с подробной популяризацией микросхем, он может сделать 10 или даже больше коротких видео, связанных с трендами, и их трафик может быть во много раз больше моего.
К сожалению, он тоже был прав.
Но, основываясь на этом, я считаю, что кто-то должен продолжать делать сложные вещи. Я надеюсь объединить популяризацию микросхем и верификацию микросхем — две одинаково сложные, но одинаково интересные вещи, и через видео и текст показать всем, что мы делаем, опубликованные статьи, а также открытые микросхемы, которые изучает наша большая команда.
Помимо микросхем, я также буду делиться с вами искусственным интеллектом, компьютерными технологиями и другими сложными технологиями, а также своим опытом роста, книгами, которые я прочитал, знаниями, которые я получил. Я знаю, что сам по себе я не гений и не так называемый всесторонний эксперт или гуру. Я скорее надеюсь стать вашим "гидом" и поделиться с вами своим путем.
Итак, возвращаясь к вопросу, которым я хотел поделиться сегодня: что интереснее — научные исследования микросхем или популяризация микросхем? Конечно, для меня оба одинаково интересны. Причина проста: потому что они одинаково сложны. В то же время, оба требуют от меня очень долгой и упорной настойчивости.
Многие говорят, что нам нужно делать сложные и правильные вещи. Но на самом деле проблема в том, что прежде чем что-то делать, как определить, правильно ли это? Если в глазах других дело кажется сидением на холодной скамье, грязной и тяжелой работой, будете ли вы продолжать им заниматься?
Поэтому я больше надеюсь делать сложные и долгосрочные вещи, такие как академические исследования по верификации микросхем или создание длинных видео с подробной популяризацией микросхем. Потому что если что-то сложно и требует долгосрочной настойчивости, то, скорее всего, это правильно.
Это все, чем я хотел с вами поделиться сегодня. Я — Старый Ши, спасибо всем!
Эта статья взята из публичного аккаунта WeChat: Gezhi Lundao Jiangtan , автор: Ши Кань, оригинальное название: «Насколько сложно производить микросхемы? Одна ошибка в операции деления обошлась в 475 миллионов долларов | Ши Кань»






















