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?
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?
Respostas:
É 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
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.
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.
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:
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.
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:
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.
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.
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.
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.
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.
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.