Анализ затрат и эффективности компромиссов в производстве микропроцессоров Cisc
Производство микропроцессоров комплексного набора инструкций (CISC) предполагает тонкий баланс между стоимостью производства и вычислительной производительностью. Понимание этих компромиссов имеет решающее значение для полупроводниковых компаний, стремящихся оптимизировать свои проекты и удовлетворить разнообразные рыночные требования, от высококачественных серверов до встроенных систем. Этот анализ исследует инженерные и экономические факторы, которые определяют ландшафт затрат и производительности в производстве CISC, предоставляя представление о том, как производители ориентируются в этой сложной среде.
Понимание основ архитектуры CISC
Микропроцессоры CISC отличаются богатыми наборами команд, которые позволяют каждой инструкции выполнять несколько низкоуровневых операций, таких как загрузка из памяти, выполнение арифметической операции и хранение результата, в одной компактной машинной инструкции. Эта философия дизайна уменьшает количество инструкций на программу, упрощая дизайн компилятора и снижая требования к памяти для хранения кода. Исторически архитектуры CISC доминировали в вычислительной среде, а набор команд Intel x86 стал фактическим стандартом для персональных компьютеров и серверов.
Ключевое преимущество CISC заключается в его способности выполнять сложные задачи с меньшим количеством строк кода сборки по сравнению с архитектурами с сокращенным набором инструкций (RISC). Однако эта сложность обходится дорого: аппаратное обеспечение должно включать сложную логику управления, часто реализуемую с использованием микрокода, для декодирования и выполнения этих многоступенчатых инструкций. Сочетание сложности уровня инструкций и простоты аппаратного обеспечения лежит в основе анализа затрат и производительности в производстве CISC.
Факторы затрат на производство микропроцессоров CISC
Стоимость изготовления микропроцессора CISC может быть разбита на несколько взаимозависимых категорий.Каждый фактор влияет на конечную цену и потолок производительности чипа.
Расходы на проектирование и разработку
Архитектура CISC требует больших усилий по проектированию, поскольку набор инструкций должен быть тщательно определен, проверен на потенциальные опасности и оптимизирован для общих случаев использования. Микроархитектура - внутренняя организация исполнительных блоков, кэшей и логики управления - должна эффективно обрабатывать различные длины инструкций и режимы адресации, характерные для CISC. Инженерные команды тратят годы на проектирование, моделирование и использование современного ядра CISC, с затратами, часто превышающими несколько сотен миллионов долларов для основного процессора серверного класса. Например, разработка высококачественного ядра x86, такого как Золотая бухта Intel, может стоить более 500 миллионов долларов до того, как будет произведена первая пластина.
Сложности производственного процесса
Производство процессоров CISC на продвинутых технологических узлах требует значительных капитальных затрат. Современный полупроводниковый фаб (например, управляемый TSMC или Samsung) может стоить 15-20 миллиардов долларов США для сборки. Шкала затрат на вафель с размером матрицы; большие кристаллы CISC, которые упаковывают более сложную логику и большие кэши, уменьшают количество чипов на пластину и увеличивают стоимость единицы. Кроме того, сложность конструкций CISC часто требует дополнительных слоев металла и пользовательских аналоговых компонентов для управления мощностью, что еще больше увеличивает производственные расходы.
Тестирование и обеспечение качества
Процессоры CISC должны пройти тщательное тестирование, чтобы обеспечить правильное выполнение тысяч инструкций во всех возможных комбинациях операндов. Усилия по проверке огромны; процессоры x86, например, требуют миллиардов циклов моделирования. Функциональные тесты, тесты сканирования и встроенные схемы самотестирования (BIST) увеличивают стоимость проектирования и потребляют площадь вымирания. Послепроизводственное тестирование с использованием автоматизированного испытательного оборудования (ATE) может стоить миллионы долларов за семейство чипов, особенно для деталей серверного уровня, которые должны соответствовать строгим стандартам надежности.
Ставки доходности во время изготовления
Доходность — процент функциональных кристаллов из пластины — оказывает непосредственное влияние на стоимость. Процессоры CISC часто являются большими кристаллами (400-800 мм2 для высокопроизводительных серверных чипов), что делает их более восприимчивыми к производственным дефектам. Один критический дефект может сделать весь кристалл непригодным для использования, особенно если функции резервирования (например, запасные кэш-линии) ограничены. Показатели доходности для крупных кристаллов CISC на передовых узлах могут варьироваться от 50% до 80%, при этом более низкие выходы приводят к повышению эффективной стоимости на хороший кристалл. Производители используют такие методы, как сбор кристаллов (продажа частично дефектных чипов в качестве моделей с более низкой рамкой), чтобы смягчить потери урожайности.
Соображения производительности процессоров CISC
Производительность микропроцессоров CISC многомерна, на нее влияют архитектурные решения, которые взаимодействуют со сложностью набора команд.
Инструкция устанавливает сложность и эффективность выполнения
Инструкции CISC могут варьироваться в зависимости от времени выполнения. Одна инструкция может принимать от одного цикла (например, простой переход от регистра к регистру) до десятков циклов (например, строковая копия с повторяющимся префиксом). Микроархитектура должна быть разработана для обработки этих переменных задержек без остановки трубопровода в течение длительных периодов. Современные процессоры CISC разлагают сложные инструкции на более простые микрооперации (μops), которые могут быть выполнены вне порядка, метод, который улучшает среднюю пропускную способность, но добавляет сложность проектирования и энергопотребление.
Скорость выполнения сложных инструкций
В то время как некоторые сложные инструкции CISC (например, полиномиальное умножение или примитивы шифрования) могут ускорять определенные рабочие нагрузки, скорость их выполнения зависит от эффективности базовых последовательностей микрокода. Если сложная инструкция редко используется, аппаратные ресурсы, предназначенные для ее ускорения, могут быть расточительными. Например, инструкция может быстро передавать большие блоки памяти только в том случае, если микроархитектура включает в себя быстрый движок копирования памяти. Балансирование значения таких аппаратных ускорителей против их площади гибки и бюджета мощности является основной проблемой.
Микроархитектура эффективность дизайна
Такие факторы, как глубина трубопровода, точность предсказания ветвей, иерархия кэша и размер окна, не зависящего от порядка, напрямую влияют на производительность. Более глубокий трубопровод позволяет увеличить тактовую частоту, но увеличивает штрафы за неверное прогнозирование ветвей. Большие кэши уменьшают задержку памяти, но потребляют площадь и мощность, влияя на стоимость. Для конструкций CISC сложность декодирования инструкций, особенно обработки инструкций с переменной длиной (1-15 байт в x86), требует агрессивного предварительного кодирования и кэширования декодированных инструкций, добавляя к бюджету транзистора.
Производительность подсистем кэша и памяти
Процессоры CISC часто полагаются на большие многоуровневые кэши, чтобы скрыть задержку сложных доступов к памяти. Однако большие кэши увеличивают размер и стоимость. Компромисс между размером кэша и частотой имеет решающее значение: больший кэш L2 может замедлить время доступа из-за более длительных задержек проводов, в то время как меньший кэш может вызвать частые промахи, которые ухудшают производительность. Полоса пропускания памяти и стратегии предварительной обработки также играют роль, поскольку рабочие нагрузки CISC иногда демонстрируют нерегулярные шаблоны доступа к памяти, которые трудно предсказать.
Основные компромиссы: стоимость vs. производительность
Производители сталкиваются с фундаментальным компромиссом: повышение производительности обычно связано с более высокими затратами из-за более сложных конструкций, больших площадей для вымирания и передовых технологий изготовления. И наоборот, снижение затрат может привести к упрощению архитектур, которые жертвуют некоторыми возможностями производительности. Эта взаимосвязь не является линейной; небольшие дополнительные инвестиции в проектирование или технологические процессы могут иногда приносить непропорционально высокий прирост производительности, в то время как дальнейшее увеличение может ударить по уменьшающейся отдаче.
Умри размер и масштабирование затрат
Более крупный кристалл может вмещать больше ядер, более крупные кэши и специализированные ускорители, все из которых повышают производительность для многопоточной и интенсивной обработки данных. Однако размер кристалла увеличивается квадратично (с точки зрения площади) и линейно с стоимостью на пластину. Например, удвоение площади кристалла с 200 мм2 до 400 мм2 примерно вдвое увеличивает стоимость единицы примерно на 80-100%. Если прирост производительности от удвоения площади составляет всего 40%, соотношение затрат и производительности ухудшается. Производители часто нацеливаются на сбалансированный размер кристалла, который максимизирует производительность на доллар для их целевого сегмента.
Выбор узла фабрикации
Переход на меньший технологический узел (например, от 7 нм до 5 нм) уменьшает размер транзистора, позволяя более высокую плотность транзистора, более низкое потребление энергии и потенциально более высокие тактовые частоты. Однако стоимость пластины на более продвинутом узле значительно выше из-за повышенной сложности литографии, большего количества масок и более низкого раннего выхода. Процессор CISC, предназначенный для передового узла, может достичь повышения производительности на 30% и снижения мощности на 40% по сравнению с предыдущим поколением, но стоимость одного чипа может увеличиться на 50% или более в течение начальных лет зрелости узла. Решение о принятии нового узла зависит от рыночного спроса на производительность и способности производителя окупить инвестиции за счет премиального ценообразования.
Микроархитектурные особенности vs. сложность
Добавление таких функций, как одновременное многопоточность (SMT), большие буферы перепорядка или сложные ветвящиеся предикторы, может повысить производительность на 10-30%, но может добавить 20-40% к времени проектирования и количеству транзисторов. Для процессоров CISC, предназначенных для вычислений общего назначения, эти функции часто оправданы, потому что они обеспечивают повышение производительности в широком диапазоне приложений. Напротив, встроенные или маломощные конструкции CISC (например, некоторые микроконтроллеры на основе x86) могут опускать такие функции, чтобы поддерживать низкие затраты, принимая компромисс производительности для более низких цен.
Потребление энергии и тепловые затраты
Более высокая производительность обычно означает более высокое энергопотребление, что приводит к увеличению затрат на охлаждение, упаковку и доставку мощности. Процессоры CISC серверного класса имеют тепловые мощности (TDP), превышающие 300 Вт, что требует сложных радиаторов и жидкостных решений охлаждения в центрах обработки данных. Проектирование для более низкой мощности может включать использование меньшего количества ядер, более низких тактовых частот или специализированных транзисторов с низким уровнем утечки, все из которых могут снизить производительность. Таким образом, компромисс между затратами и производительностью выходит за рамки производства чипов на системный уровень, где затраты, связанные с мощностью, могут перевесить первоначальную экономию чипов.
Стратегии оптимизации затрат и производительности
Чтобы сбалансировать затраты и производительность, компании используют различные инженерные и бизнес-стратегии, ориентированные на различные сегменты рынка.
Модульные дизайнерские подходы
Модульные чиплеты на основе конструкций, популяризированных AMD с его архитектурой Zen, позволяют производителям смешивать и сопоставлять кристаллы на упаковке. Сложный процессор CISC может быть построен из более мелких, более простых чиплетов - каждый из которых изготовлен на экономически эффективном узле - и подключен через высокоскоростные межсоединения, такие как Infinity Fabric. Этот подход уменьшает эффективную площадь кристалла на чиплет (повышая выход), позволяет повторно использовать по линейкам продуктов и позволяет смешивать высокопроизводительные и оптимизированные по стоимости чиплеты в одном пакете. Например, серверный процессор может комбинировать большие вычислительные чиплеты на переднем узле с меньшим I / O кристаллом на более старом, более дешевом узле, одновременно оптимизируя стоимость и производительность.
Стратегическое использование передовых производственных узлов
Вместо того, чтобы спешить к самому передовому узлу для всех продуктов, производители могут зарезервировать передовые узлы для флагманских процессоров с высокой маржой и использовать зрелые узлы для более дешевых производных. Intel, например, продолжает производить некоторые процессоры Atom и Celeron CISC на более старых 14-нм узлах, а не переносить их на 10-нм, потому что требования к производительности для этих сегментов не оправдывают премию за стоимость. Этот многоуровневый подход позволяет компании максимизировать общую прибыль по всему стеку продуктов.
Инструкционная архитектура (ISA)
Хотя полноценный CISC ISA, такой как x86-64, должен оставаться обратно совместимым, производители могут добавлять специализированные расширения инструкций (например, AVX-512, AES-NI, SHA-NI) для ускорения конкретных рабочих нагрузок без изменения базового ISA. Эти расширения требуют дополнительных исполнительных блоков и декодирования логики, но они могут значительно повысить производительность для целевых приложений. Выбирая, какие расширения для реализации, разработчики чипов могут адаптировать баланс затрат и производительности для целевых рынков, например, включая векторные расширения для высокопроизводительных вычислений, но опуская их для встроенных чипов с низким энергопотреблением.
Повышение эффективности микроархитектуры
Вместо увеличения площади вымирания, дизайнеры часто сосредотачиваются на архитектурных инновациях, которые улучшают пропускную способность инструкций за тактовый цикл (IPC). Такие методы, как макро-фьюжн (объединение двух инструкций CISC в один микросхем), улучшенное предсказание ветвей через предикторы на основе нейронных сетей и эффективная политика замены кэша, могут повысить производительность без существенного увеличения стоимости. Например, микроархитектура Intel Skylake достигла улучшения IPC на 10-15% по сравнению с его предшественником Haswell в основном за счет микроархитектурных уточнений, а не за счет больших кэшей или более широких трубопроводов.
Сбор урожая и гибнущий
Для максимизации выручки от каждой пластины производители классифицируют функциональные матрицы на основе их эксплуатационных характеристик. Умирает с небольшими дефектами (например, один блок кэша отключен) или более низкие максимальные частоты могут быть проданы в качестве SKU более низкого уровня. Эта стратегия снижает эффективную стоимость на хороший кэш, используя в противном случае неполные чипы. Для процессоров CISC связывание по количеству ядер, тактовой частоте и размеру кэша создает лестницу продукта, где клиенты платят больше за более эффективные варианты. Стоимость тестирования и связывания более чем компенсируется увеличением использования выходной мощности пластин.
Объемные цены и экономика масштаба
Высокообъемное производство снижает затраты на единицу продукции за счет амортизации и оптимизации процессов с фиксированной стоимостью. Процессоры CISC, используемые на рынках ПК и серверов, извлекают выгоду из огромных объемов (сотни миллионов единиц в год), что позволяет амортизировать затраты на проектирование и маскировку по сравнению со многими чипами. Напротив, специализированные конструкции CISC для нишевых приложений (например, аэрокосмическое или промышленное управление) могут иметь низкие объемы, что приводит к гораздо более высоким затратам на единицу продукции. Производители должны тщательно оценивать, оправдывают ли требования к производительности нишевого приложения более высокую стоимость, или альтернатива RISC или микроконтроллер будет более рентабельной.
Заключение
Эффективный анализ компромиссов между затратами и производительностью в производстве микропроцессоров CISC имеет жизненно важное значение для разработки конкурентоспособных продуктов. Производители должны ориентироваться в сложной сети решений: выбор правильного узла изготовления, выбор размера матрицы, оптимизация микроархитектуры и использование модульных конструкций. Ни одно решение не подходит для всех сегментов рынка; оптимальный баланс зависит от целевых уровней производительности, объема и ценовой чувствительности. Используя комбинацию инженерной изобретательности и стратегической дифференциации продукта, такой как интеграция чиплетов, расширение набора инструкций и связывание с кристаллами, полупроводниковые компании могут поставлять процессоры CISC, которые отвечают меняющимся требованиям технологического рынка, сохраняя при этом здоровую прибыль. По мере того, как технологические технологии продолжают созревать и появляются новые архитектуры, компромиссы между стоимостью и производительностью останутся в основе инноваций микропроцессоров CISC.