Имеют ли современные процессоры избыточность в своих логических устройствах для компенсации производственных ошибок?


10

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

Я знаю, что в больших блоках (например, в кеше) есть возможность просто отключить некоторые его части и тем самым уменьшить доступный объем памяти (так что вы можете по крайней мере продать чип по более низкой цене вместо того, чтобы выбрасывать его). Но есть ли что-то похожее для логических модулей? Я знаю, что существует несколько ALU для диспетчеризации, но стоит ли просто отключить один из них в случае сбоя в работе? Или есть даже дополнительные запасные ALU? Потому что для меня трудно поверить, что потрясающие устройства просто избавляются от каждого чипа, где в логических частях присутствует неисправный транзистор, в то время как отключение полного ALU значительно уменьшит достижимую вычислительную мощность.


Просто мое предположение. Цена на производство кремниевых пластин относительно велика при больших количествах, и вы можете протестировать его перед корпусом, чтобы можно было изготовить готовые чипы с относительно низким уровнем отказов. > 50% цены это чистый маркетинг. Кроме того, я думаю, что многие вариации процессоров в пределах одного и того же семейства выполняются в одной и той же топологии и отличаются только некоторыми отключенными функциями / ядрами / кэш-памятью (как вы уже написали), поэтому у производителя есть большой пробел для поддержания низкой частоты отказов производства даже при поврежденные юниты. Но я сомневаюсь, что у них есть, скажем, несколько зарезервированных ALU для одного ядра.
cyclone125

Я думаю, что наиболее известным примером этого был Intel 486SX, который был таким же, как DX с отключенным FPU. Но мне было бы интересно услышать, каково это современное состояние.
pjc50

Я сильно сомневаюсь в этом. Количество логики и время проектирования, необходимое для обеспечения низкоуровневой избыточности на скорости современных процессоров, не будет стоить того. Избыточность на уровне блоков (core, fpu, cache) или просто отключение блоков было бы более чем достаточно для значительного увеличения производительности. А при текущих ценах на процессор и размерах пластин даже доходность в 5% может быть прибыльной.
Эдгар Браун

Итак, вы думаете, что когда ALU не используется, они просто отключают ядро. Да, может быть возможность. Я надеялся, что кто-то здесь действительно узнает.
Юсака

1
Да, они отключают ядро. Это практика называется «биннинг».
DKNguyen

Ответы:


3

Как уже говорили другие, трудно увидеть избыточную логику ALU в ядре.

Ядро было разработано для оптимизации пропускной способности. Любая дополнительная логика для избыточного ALU повлияет на производительность, а увеличенная площадь замедлит все ядро. По мере развития технологий кремний становился все меньше, делая ядра быстрее, но по существу используя ту же интеллектуальную собственность. Зачем иметь избыточные ALU, когда для резервных ядер доступно место для увеличения производительности?

В 2011 году Intel подала патент как минимум на 32 ядра с 16 активными и 16 запасными. Патент заявляет, что неисправные сердечники будут иметь более высокие температуры, что позволит включить запасное ядро. По существу, динамическое распределение сердечника по мере необходимости.

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

Патент Intel: повышение надежности многоядерного процессора


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

5

Не в логике.

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

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

Однако эта «замена» должна быть настроена с использованием битов OTP (одноразового программирования) или какой-либо другой памяти, которая содержит свое значение. Таким образом, эти запоминающие устройства используются только в микросхемах, которые имеют такую ​​функцию «постоянной памяти», или такая функция программирования должна быть добавлена ​​также со всеми затратами, которые это несет.


Считаете ли вы, что эти биты OTP программируются электронным способом, например, сгорая предохранитель или что-то в этом роде, или крупные производители должны идти прямо на матрицу с лазерной подгонкой?
Юсака

1
OTP - это встроенные предохранители, которые можно программировать электронным способом (вроде EEPROM, но затем постоянно). Конечные пользователи также могут записывать их для серийных номеров, адресов Ethernet, ключей шифрования и т. Д.
Oldfart

4

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

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

Источник: /skeptics/15704/are-low-spec-computer-parts-just-faulty-high-spec-computer-parts


3

Я, конечно, не могу ответить на ваш вопрос наверняка. Нет особого смысла отключать блоки меньше 1 ядра, поскольку он становится очень детализированным «набором функций», который можно включить или нет, а декартово произведение всех возможных функций сделало бы множество возможных моделей ЦП. Уже есть много моделей процессоров, их увеличение в 10-100 раз точно не поможет!

Другой аспект заключается в том, что миллиарды транзисторов используются (по большей части) для создания кешей, и для дефектных транзисторов производители, безусловно, продают ЦП с отключенной частью встроенного кеша (например, см. AMD Thorton против AMD Barton).

Но я могу рассказать вам анекдот, который я услышал от человека, которому доверяю. Давным-давно я был любопытным оверклокером. В мои дни бюджетным разгоняемым процессором был AMD Athlon Thoroughbred:

Атлон Чистокровный

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

Этот человек сделал то же самое, значительная часть одного угла исчезла, но процессор чудесным образом работал нормально, хотя и значительно снизил производительность памяти. Уголок содержал только кэш-память второго уровня, так что после того, как эта часть исчезла, протокол кэширования каким-то образом работал вокруг теперь очень дефектного кристалла. Вероятно, он сообщал об ошибках в кеше для всех запросов в этой части, поэтому ЦП был сокращен только до своего кеша L1 (или только части L2), поэтому он был намного медленнее в большинстве тестов, но при этом имел практически одинаковую производительность при сжатых циклах.

В том же ключе можно сделать вывод, что если АЛУ неисправен и способен каким-то образом сигнализировать о том, что он отказался от работы, ЦП может быть в состоянии переключиться на другие АЛУ. Делается ли это производителями процессоров, неизвестно (и я сомневаюсь в этом), но пример кеша (15 лет назад) показывает, что это определенно выполнимо.


Это, безусловно, очень впечатляет, и даже кажется, что это какой-то динамический процесс, потому что система сама обнаружила неисправную часть чипа. Задавая вопрос, я больше думал об обнаружении системой тестирования в производственной линии. Но эта история определенно интересна;)
jusaca
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.