фабрики
2279
0
22 февраля 2021
фабрики

От идеи до кремниевых образцов: этапы проектирования цифровых микросхем

Изображение создано
с помощью нейросети
Изображение создано с помощью нейросети
2279
0
22 февраля 2021

По данным СМИ, объем мирового рынка приборов, в которых применяются полупроводники, в 2021 году достиг $ 555 млрд, что на 26% больше, чем в 2020 году. Капиталоёмкость сектора потребительской электроники при этом превысила $ 1 трлн. Экономисты отмечают, что прогресс в этой области был бы ещё стремительней, если бы не общемировой дефицит микросхем: за время пандемии предложение на 30% отстало от спроса. Учитывая это, микроэлектронную продукцию уже называют «новой нефтью». Как проектируются цифровые микросхемы, кто создаёт для них ПО, а также какие задачи и сложности появляются при переходе отрасли на более тонкие производственные нормы, рассказывает руководитель департамента аппаратных решений дизайн-центра «Оптимизирующие технологии» Денис Нефёдов.

Из статьи вы узнаете
  • зачем нужны САПР
  • что такое floor planning
  • как «вырастить» дерево синхронизации
  • сколько занимает полный цикл разработки цифровой микросхемы

Как и любое другое техническое проектирование, разработка микросхем начинается с технического задания. Получив его, дизайн-центр разбивает описанную в нём функциональность на аппаратную и программную реализацию. И начинает реализовывать аппаратную часть для того, чтобы впоследствии она была изготовлена в кремнии и выполняла описанную в техническом задании функцию. Процесс проектирования состоит из двух частей: логической (front-end) и физической (back-end). Разберем эти процессы подробнее.

Логическая часть

Первая часть — front-end, или логическое проектирование, — начинается с написания кода на специальном языке, который предназначен для описания аппаратуры, то есть процессов, происходящих внутри микросхемы. Наиболее распространенными языками описания аппаратуры сейчас являются Verilog и VHDL. Некоторые компании предпринимают попытки организовать поддержку описания аппаратуры на языках С, C++, но пока такой маршрут не сильно распространен в индустрии. В результате получается текстовый файл с описанием того, как должна работать микросхема. Его корректность проверяют с помощью поведенческого моделирования и соотнесения результатов с требованиями ТЗ.

Сразу отмечу, что проектирование микросхем невозможно без использования специальных средств автоматизированного проектирования (САПР). Сегодня в мире есть три основных поставщика САПР для разработки микроэлектроники — это компании Cadence, Synopsys и Siemens, поглотившая Mentor Graphics. Право на пользование САПР разработчики получают через приобретение лицензий, которые определяют период пользования и допустимое количество инженеров, одновременно взаимодействующих с САПР. Разные виды САПР необходимы на всех стадиях проектирования микросхемы.

С помощью средств проектирования — на первом этапе это логический синтезатор — код преобразуется в логическую схему. Примерно 30 лет назад такие схемы рисовали вручную, то есть, если нужен был сумматор A + B = С, в котором каждое из чисел 32-разрядное, приходилось самостоятельно рисовать схему на логических элементах. Сейчас это автоматический процесс.

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

Библиотека стандартных ячеек обычно включает в себя логические компоненты (инверторы, элементы «или», «и») и запоминающие (триггеры), а также их комбинации. Из этих элементов строится вся логическая схема проекта, а их геометрические размеры, скорости переключения и параметры энергопотребления будут впоследствии определять соответствующие характеристики проектируемого изделия.

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

Потому именно на этой стадии выбираются фабрика и библиотека стандартных ячеек, которую она предоставляет.
Кроме библиотеки важным является момент наличия IP-блоков — готовых элементов для проектирования микросхем. Но об их значении ниже.

Возвращаясь к этапу логического синтеза, следует отметить, что после загрузки всей информации система преобразует описание в логическую схему и формирует отчёт, может ли эта схема работать на этой частоте и по этой технологии. Если требуемые скоростные характеристики не достигаются, то рассматриваются варианты оптимизации логики функционирования аппаратуры или переход на более мелкую технологию изготовления: вместо 28 нм использовать 16 нм, например. Но если все полученные характеристики соответствуют требованиям, можно двигаться дальше.

Следующий этап — встраивание систем тестирования. Уже во время проектирования нужно подумать о том, чтобы после производства микросхему можно было легко протестировать. Если вернуться к примеру суммирования 32-разрядных чисел, то чтобы проверить такую схему, нужно перебрать 264 варианта. Это займет много времени, поэтому на логическом этапе встраиваются специальные схемы и алгоритмы технологического тестирования. Они также создаются с использованием САПР и предназначены для поиска только производственных дефектов без оценки правильности логического функционирования устройства. Фактически на этой точке заканчивается логическое проектирование и начинается физическая часть.

Физическая часть

На этом этапе из логической схемы нужно сделать топологию (послойный рисунок) и отдать эту информацию на фабрику. Для этого первым делом необходимо разработать план кристалла (floor planning). То есть взять область нужного размера в зависимости от логической сложности и расположить на нем подблоки нашего проекта: процессорное ядро, память, высокоскоростные интерфейсы (DDR, PCI-e) и другие элементы дизайна.

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

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

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

После этого в план кристалла помещаются элементы логической схемы (placement), полученной во время логического синтеза. А затем происходит процесс соединения этих элементов металлическими проводниками (routing). Эти этапы также проходят при помощи средств проектирования с использованием собственных алгоритмов и средств оптимизации и проверки.

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

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

С производства кристаллы для микросхемы выходят в виде пластин, на которых их могут быть тысячи и сотни тысяч. Например, процессоров может быть до 1000, а микросхем для билетов в метро — 100 000. Пластины разрезают на кристаллы и помещают в корпус. Выводы кристалла соединяются с выводами корпуса, и в таком виде микросхемы поступают на тестирование.

Тестирование также может быть проведено на пластине. Часто так и делают, для того чтобы не тратить корпусы и не пакетировать брак (при стабильном производственном процессе обычно получается 2−3% брака). Однако в таком случае после корпусирования необходимо провести еще одно тестирование (final test), потому что оно само по себе может вносить ошибки: где-то могут не соединиться контакты или сам корпус может оказаться бракованным. После этого протестированные микросхемы поступают в производство конечного устройства.

Как дизайн-центры взаимодействуют с фабриками

К выбору фабрики дизайн-центры подходят с учетом предъявленных технических требований, скорости работы микросхемы, энергопотребления и стоимости. Исходя из этого опытный системный инженер может понять, какая технология подходит лучше всего.
Немаловажным, а иногда и определяющим фактором является наличие IP-блоков по выбранной технологии, если нам нужен DDR, PCI, USB, Ethernet или что-нибудь еще, что точно необходимо лицензировать. Это предложение необязательно должно быть от фабрики, и часто разработкой и лицензированием IP-блоков занимаются сторонние компании.

Ещё один решающий параметр — стоимость. И тут всё не так однозначно, как может показаться. Например, у нас есть дилемма, что выбрать: технологию 28 или 16 нм? Здесь очень многое будет зависеть от объёма производства. Обычно можно построить график зависимости стоимости конечной микросхемы от объёма выпуска этих микросхем. После того как на нём будет найдена точка пересечения, например на 100 тыс. образцов, окажется, что выгоднее использовать технологию 16 нм, а не 28 нм.

Связано это с тем, что максимальные средства инвестируются в стоимость производства в самом начале, когда изготавливаются фотошаблоны. Они могут стоить от нескольких сотен тысяч до нескольких миллионов долларов. Но сами пластины, из которых нарезают кристаллы, стоят значительно меньше и не сильно отличаются для разных технологий, например для 16 и 28 нм. Таким образом, начальные затраты на фотошаблоны постепенно перераспределяются на каждый произведенный кристалл. А за счет того, что элементы, сделанные по технологии 16 нм, меньше, с одной пластины можно собрать больше кристаллов. И в какой-то момент стоимость кристалла, изготовленного по технологии 16 нм, становится меньше, чем по 28 нм.

Такой анализ мы проводим всегда, чтобы понять, в каком случае при наших потенциальных объемах мы выйдем на более выгодное производство — есть ли смысл идти на более мелкие нормы, удешевлять кристалл и в результате микросхему, или нам это невыгодно, потому что начальные инвестиции нашим объемом мы всё равно не компенсируем.

Сколько времени занимает процесс производства микросхем

Тут всё зависит от сложности. Полный цикл разработки — от согласования технического задания до передачи на фабрику информации о производстве — может занимать от полугода для простых микросхем, например, контроллера внутри ключа для домофона, и до двух-трёх лет для сложных микропроцессоров или графических ускорителей.

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

Какие средства ускоряют процесс разработки

По сути, всё проектирование завязано на САПР, которые лицензируются и требуют существенных затрат. И главная задача — заставить эти средства работать правильно и выдавать качественный результат. То есть необходимо написать для них правильные настройки, задать правильные входные управляющие файлы и уметь правильно интерпретировать и анализировать тот результат, который эти средства выдают.

Кроме САПР разработку ускоряют за счёт использования готовых и проверенных компонентов будущей микросхемы. Обычно это связано с необходимостью использовать высокоскоростные интерфейсы — DDR-память, PCIе-интерфейс и др. Это цифроаналоговые высокоскоростные интерфейсы, и их производство обычно многоитерационное. Поэтому, чтобы не разрабатывать всё самостоятельно, такие сложные высокоскоростные блоки проектировщики микросхем лицензируют у поставщиков — они уже проверены в кремнии и гарантированно работают.

Также к цифровым IP-блокам относятся такие стандартные вещи, как, например, ядро процессора. Его разработка — отдельный маршрут, для которого требуются специальные ресурсы. Поэтому при производстве микросхемы с таким блоком его лицензируют у ARM, MIPS, Synopsys или других производителей.

Таким образом, обычно в структуре микросхемы присутствуют как лицензируемые IP-блоки, определяющие стандартные вещи — процессорные ядра, интерфейсы, память, — так и блоки собственной разработки, которые обеспечивают ориентацию микросхемы на конкретную специфику.

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

При уменьшении производственных норм процесс разработки значительно усложняется по ряду причин:

  • сложность и размеры проектов увеличиваются, что, в свою очередь, увеличивает время моделирования и обсчета параметров микросхем,
  • вариации параметров элементов схем влияют на производительность в большей степени для более тонких (7 нм, 5 нм) технологий, что ведет к необходимости учитывать их в большем объёме и применять статистические методы расчёта,
  • при уменьшении размеров компонентов схем и расстояний между ними, уменьшаются, в свою очередь, и уровни сигналов внутри схемы, что повышает вероятность помех и наводок с соседних проводников и компонентов. Приходится проводить дополнительные анализы и применять специальные меры для уменьшения таких эффектов, как, например, экранирование чувствительных сигналов,
  • изменения на тонких нормах физических свойств материалов и начинающееся влияние квантовых эффектов становятся актуальными и тоже должны быть учтены при проектировании.
Наверх
Будь первым, кто оставит комментарий