Como as CPUs podem ser estáveis ​​quando possuem tantos transistores?

10

Como sabemos que uma CPU é praticamente bilhões de transistores em uma única miniatura, e se um dos transistores quebrar?

A CPU possui algum mecanismo de recuperação automática?

cpuer
fonte
6
Na verdade, os maiores hoje em dia contêm bilhões de transistores.
Starblue 26/05
6
"estável" provavelmente não é a palavra certa, pois isso aponta mais para questões como metaestabilidade. Uma escolha melhor para esse tópico seria palavras como 'livre de defeitos' ou 'rendimento'. Ou você pode perguntar sobre a estabilidade do processo de fabricação, e não sobre os chips resultantes.
22812 Chris Stratton
2
@ ChrisStratton, acho que o OP pode estar perguntando mais sobre confiabilidade do que rendimento.
O Photon
11
Se um dos transistores quebrar, você joga o chip fora. Não há redundância (exceto alguns aplicativos específicos) e não há opções de reparo.
Dmitry Grigoryev

Respostas:

18

É simples, nós os testamos antes de vendê-los e jogamos fora os ruins.

Existem várias maneiras de fazer isso - pessoas diferentes fazem coisas diferentes, geralmente usam uma combinação de:

  • alguns testes estão em alta velocidade para garantir que eles sejam rápidos o suficiente.

  • outros testes envolvem um modo que transforma alguns ou todos os flip-flops no chip em gigantescos registros de turno serial, registramos dados conhecidos nessas cadeias, depois executamos o chip por um relógio e analisamos os novos resultados novamente e verificamos se eles correspondem nossos resultados previstos - as ferramentas de teste automático geram um conjunto mínimo de "vetores de varredura" que testam todos os gateways ou transistores aleatórios no chip - outros vetores fazem testes especiais de blocos de ram,

  • outros testam que os fios externos estão todos ligados corretamente

  • temos certeza de que não está puxando uma quantidade prejudicial de corrente

Tempo de teste custa dinheiro, às vezes fazemos alguns testes simples para os chips mortos óbvios antes de serem embalados para descartar os ruins e, em seguida, mais testes após o término da embalagem

Taniwha
fonte
11
"É simples, nós os testamos antes de vendê-los e jogamos fora os ruins". Se isso seria o único sistema de qualidade que seria provável ter um rendimento de 0,00000000001% com 1 bilhão de dispositivos com transístores
Federico Russo
2
É realmente muito simples; o truque está na quantidade extremamente grande de simulação e verificação de regras de antemão para garantir que seu rendimento seja aceitável. Raramente há redundância na própria lógica da CPU; Às vezes, você obtém um pouco de redundância nas RAMs do chip.
Pjc50 7/11
Se o projeto estiver correto, suas falhas individuais ocorrerão por defeitos de material, contaminação, erros de processo etc. Embora existam apenas alguns tamanhos de wafer em uso, ICs maiores são mais caros que seu tamanho proporcional, porque a chance de uma falha aumenta com área. Em alguns casos, você pode ter um chip com mais unidades funcionais do que às vezes é vendido; portanto, ainda poderá ser comercializado se for ruim, mas isso é limitado. Às vezes, você pode comprar FPGAs com desconto, testados apenas para funcionar como usado por um arquivo de configuração específico, em vez de trabalhar com um arquivo arbitrário.
21412 Chris Stratton
2
Acho que você esqueceu de mencionar fabricantes como a AMD que vendem processadores com núcleos ruins como um modelo diferente com o núcleo ruim bloqueado. Esse é um tipo de redundância, ou marketing inteligente, talvez.
Akaltar
Se alguém já se perguntou como as peças do mercado cinza são fornecidas, não deveria se perguntar mais. Eu trabalhei no final do software de sistemas de fabricação de chips, e os testes automatizados, conforme descrito aqui, representam uma grande parte dos custos de tempo e dinheiro para as plantas.
12

Para expandir um pouco o que os outros disseram: Existe validação e depois há classificação de chips.

Os transistores nas CPUs tendem a mostrar seus problemas em frequências mais altas, por isso é comum fabricar uma CPU e depois comercializá-la como vários produtos diferentes. As CPUs mais baratas são na verdade versões danificadas da CPU cara. Outra opção é desabilitar certas partes da CPU. Por exemplo, a AMD fabricou processadores com o núcleo BArton. Também vendeu processadores com núcleo Thorton. Thorton não era um novo núcleo. Em vez disso, metade do cache L2 estava com defeito e desativado. Dessa forma, a AMD recuperou algumas CPUs que seriam desperdiçadas.

O mesmo aconteceu com os três processadores principais da AMD. Eles eram originalmente quatro processadores principais, mas um dos núcleos estava com defeito e, portanto, foi desativado.

AndrejaKo
fonte
2
não é incomum fazer um design de chip com recursos que você pode desativar soprando fusíveis. Economia simples do rendimento do chip, se pudermos recuperar todo ou parte do chip, executando-o mais devagar ou desativando um recurso que falhou no teste, podemos recuperar parte do custo dessa parte em vez de jogar a parte inteira. você também pode voltar para o intel 386 SX e DX. e praticamente todas as CPUs são classificadas em velocidade. os mais lentos são peças que falharam em velocidades mais rápidas.
old_timer
2
Não, não o 386SX / 386DX. Esses chips possuem uma interface de barramento totalmente diferente. Você não desabilita apenas uma parte do 386DX para obter um 386SX. O que você diz é verdadeiro para o 486DX / 486SX, este último com o FPU desativado.
Michael Karcher 28/02
6

A resposta a sua pergunta é não." Atualmente, não há métodos de recuperação automática para falhas de hardware.

Os fabricantes projetam seus processos para obter o melhor rendimento (dólares) possível de suas bolachas. Ao reduzir os transistores, eles podem ajustar mais funcionalidade em menos área. Isso pode ser considerado como mais chips (da mesma funcionalidade) por wafer. À medida que o tamanho do chip diminui, é possível extrair mais deles de uma bolacha, mas à medida que diminuem, mais deles ficam ruins. Os fabricantes aceitam isso e estão constantemente empurrando o envelope da tecnologia para reduzir os chips. O que lhes diz que ESTÃO na borda do envelope são fichas ruins.

Se uma empresa pode reduzir o tamanho do recurso para 70% do tamanho antigo, pode obter cerca de 2 vezes o número de chips em uma bolacha. Se o rendimento no processo antigo era de 95% (digamos, 95 fichas boas em 100 em uma bolacha) e seu rendimento no novo processo fosse 75% (150 boas fichas em 200 em uma bolacha), eles ganhavam dinheiro indo para o novo processo.

Vintage
fonte
5
Para alguns tipos de chips, como memórias flash NAND, os fabricantes costumam empurrar o envelope para além do ponto em que os chips com defeito zero seriam a norma, mas a maioria das falhas terá características um tanto previsíveis, e espera-se que os dispositivos que os usam contornar eles.
Supercat
3

Em nós pequenos, cada "transistor" tem 2 portas, a menos que você tenha memória, como SRAM. Se alguém não funcionar, você apenas tem um driver lento. Para a SRAM, se ela não for aprovada, basta "explodir" a linha. Se ambos os FETS no transistor falharem, você teria um pedaço de areia muito caro, mas eu pessoalmente nunca tive isso. Os FinFETs modernos são tão pequenos que existem muitos problemas de produção (principalmente aborrecimentos) devido à natureza da litografia e da probabilidade. Você descobrirá que as primeiras coisas em novos processos são FPGAs, porque você pode simplesmente "explodir" as células ruins e alterar o gráfico de roteamento. Eu não posso lhe dar os números, mas você pode adivinhar como o mundo x86 funciona, as coisas raramente vão perfeitamente.

Aqui está uma ilustração do layout de uma célula XOR: XOR

As barras verdes esquerda / direita são barbatanas e o vermelho é poli. Os azuis são o metal colorido no nível 1.

As CPUs comerciais não possuem um mecanismo de recuperação automática, mas as coisas flutuando no meio acadêmico e nas CPUs de aplicativos especiais têm. Fiz alguns componentes especializados que usam arquiteturas assíncronas para resolver problemas de relógio que surgem devido a portões ruins, apesar da destruição do óxido de um buraco como um transportador quente, onde você obtém um transistor realmente lento.

b degnan
fonte
3

Aparentemente, os tempos mudaram. Muitas das respostas de cinco anos nesta pergunta não refletem mais o estado da arte e algumas não eram precisas.

Transistores e outros dispositivos em silício são bastante estáveis ​​após a fabricação, desde que o IC não superaqueça.

Aqui estão as coisas feitas agora em um processo moderno de fabricação de IC para minimizar defeitos:

  • Os CIs são extensivamente testados, tanto no nível de validação e verificação do projeto quanto em testes de amostras individuais. Este documento descreve alguns procedimentos de teste para o Pentium 4.
  • o design geral dos CIs agora é muito complexo para verificar completamente
  • Os CIs possuem microcódigo programável, que permite um grau limitado de reprogrammatibilidade se os defeitos forem descobertos após a fabricação
  • Os CIs modernos contêm camadas de silicone redundantes, permitindo que os defeitos descobertos durante a fabricação sejam corrigidos
  • muitas CPUs possuem módulos de hardware redundantes, sejam núcleos de CPU, memória cache ou outro IP; se nem todas as unidades estiverem funcionais, algumas poderão ser desativadas e "armazenadas" como peças de menor custo. Um exemplo é o IC multi-core do PS4 inclui um núcleo redundante que é desativado para obter um rendimento mais alto.
  • algumas CPUs terão desempenho, mas não na velocidade máxima; estes podem ser vendidos como CPUs de menor velocidade e menor custo
  • Muitas CPUs e RAM usam memória de codificação de correção de erros (ECC) ou executam a correção de erros de validação de mensagens em vários estágios da transferência de dados para garantir a integridade
  • Às vezes, os processadores falham de uma maneira que causa uma falha no sistema, mas não impede que o sistema volte a funcionar se for reiniciado (travamento do CMOS)

Erros de programação na especificação formal do processador são mais prováveis ​​do que falhas de um transistor específico.

Embora as CPUs comuns não possuam a capacidade de recuperação automática, também tem havido trabalho em CPUs com redefinição automática como uma contramedida para os raios cósmicos. Os raios cósmicos podem depositar energia suficiente em uma CPU ou RAM para causar oscilações de bits.

Como apontado nos comentários, os sistemas de missão crítica contam com várias CPUs para verificação há muito tempo. O ônibus espacial, em 1976 , como exemplo, usava cinco computadores, quatro dos quais executavam o mesmo programa e "votavam" em todas as decisões de controle de vôo para garantir a segurança.

jbarlow
fonte
O ECC e a detecção de erros são utilizados há bastante tempo (para memórias e comunicações, para funções lógicas aritméticas e similares, alguns sistemas de ponta têm detecção de erros há anos). Da mesma forma, a execução redundante (espacial ou temporal) tem sido usada para detectar erros há bastante tempo em sistemas em que o custo em hardware / tempo de execução parece justificado.
Paul A. Clayton
@ PaulA.Clayton se você publicasse um post sobre o Itanium e, posteriormente, os recursos do Xeon RAS, certamente ficaria feliz em votar a favor.
Oleksandr R.
2

Os transistores de processador mais modernos são FETs. Eles têm a vantagem de ganhar resistência de fonte / dreno ao começar a sobrecarregar. Esse é um fator que permite a criação de MOSFETs de alta potência, colocando muitos em paralelo. A carga é distribuída automaticamente. Isso pode ser um fator para ajudar a distribuir problemas. Mas acho que é realmente mais simples que isso.

Como na maioria das peças eletrônicas, se você as conduzir dentro das especificações, elas durarão um bom tempo. Quando um microprocessador é fabricado, existem dois fatores para o custo. Apenas o espaço no silício e, devido à complexidade, o rendimento real. Nem todos os chips funcionam após a fabricação. No entanto, uma vez feita e concluída a validação, você sabe que os transistores são bons. Se conduzido dentro das especificações, é provável que eles permaneçam bons.

Joe
fonte
2

Você já se perguntou por que o mesmo chip às vezes é vendido em velocidades diferentes? E você percebeu que algumas vezes a mesma arquitetura de chip GPU é vendida com diferentes números de unidades internas?

Não há como corrigir um defeito de hardware no nível do silício, mas com o tempo os designers aprenderam a lidar com o problema de aumentar o rendimento . Sem previsão, o rendimento depende exclusivamente da qualidade de fabricação. No entanto, se você for esperto, poderá recuperar algumas das fichas ruins.

Por exemplo, digamos que você tenha um design de chip de 18 núcleos, que funcione mais ou menos de forma independente. Durante o teste, você classifica os chips perfeitos e o libera como modelo A18. A maioria dos chips com falha possui apenas um erro; portanto, eles funcionarão bem desde que o núcleo defeituoso esteja desativado. Você os vende como modelo A17 a um preço ligeiramente mais baixo, e aqueles que têm dois núcleos ruins são vendidos como modelo A16 a um preço cada vez mais baixo.

O mesmo se aplica à classificação de velocidade de um chip. Os chips perfeitamente fabricados serão capazes de funcionar a velocidades além das especificações do projeto, mas os chips com problemas podem não funcionar. Estes são vendidos em especificações de velocidade mais baixa.

Este método aumentará drasticamente o rendimento geral e, portanto, é bastante comum. O PlayStation 3, por exemplo, possui 8 unidades SPE em hardware, mas uma sempre é desativada para explicar problemas de rendimento.

Pål-Kristian Engstad
fonte
1

A CPU possui algum mecanismo de recuperação automática?

Não, como explicado acima. No entanto, seus caches, especialmente L2 e L3, podem ter RAM extra. Quando a peça é testada na fábrica, os blocos de RAM ruins podem ser removidos e os blocos de RAM extras usados.

Brian Carlton
fonte
1

Em geral, não, você cobre transistores ruins através da tela de chips e espera uma porcentagem relativamente pequena de perdas depois disso. O setor de chips existe há décadas e eles têm muitos truques para gerenciar isso (e sim, às vezes um dos truques é deixar de lado as peças ruins e substituí-las gratuitamente ou deixar os clientes insatisfeitos).

Para ambientes reforçados por radiação (espaço), você provavelmente votaria três vezes, cada "bit" na verdade tem três bits que votam para formar um. são necessários apenas dois terços dos votos para determinar a configuração de bit. então os transistores no outro terço podem ficar ruins e eventualmente com a dose total. mas a principal preocupação é a virada de evento único. Esses chips e sistemas são projetados para esses ambientes de cima para baixo, silicone, hardware, software etc. E eles usam tecnologia antiga e comprovada, e não de ponta, de modo que a contagem e o tamanho dos transistores são de anos atrás.

O COTS deverá soluçar e falhar de tempos em tempos.

old_timer
fonte
-1

Pode parecer um milagre, mas existem vários mecanismos usados ​​para reduzir a quantidade de falhas no transistor. No entanto, dependendo do tipo de falha experimentada pelo transistor e de onde, a CPU pode ou não ser ainda utilizável algumas vezes sob certas condições.

Atualmente, muitas vezes não há um mecanismo de recuperação automática incorporado, mas há muita pesquisa em computação reconfigurável, redundância e outras técnicas para minimizar esse problema.

sybreon
fonte