Jak procesory mogą być stabilne, gdy mają tak wiele tranzystorów?

10

Jak wiemy, procesor to prawie miliardy tranzystorów na jednej miniaturze, co jeśli jeden z tranzystorów się zepsuje?

Czy procesor posiada mechanizm automatycznego odzyskiwania?

cpuer
źródło
6
W rzeczywistości te większe zawierają obecnie miliardy tranzystorów.
starblue
6
„stabilny” prawdopodobnie nie jest właściwym słowem, ponieważ wskazuje bardziej na takie kwestie, jak metastabilność. Lepszym wyborem dla tego tematu byłyby słowa takie jak „bez wad” lub „wydajność”. Lub możesz zapytać o stabilność procesu produkcyjnego, a nie o powstałe wióry.
Chris Stratton,
2
@ChrisStratton, myślę, że OP może prosić o więcej niż niezawodność.
Photon,
1
Jeśli jeden z tranzystorów się zepsuje, wyrzucasz układ. Nie ma redundancji (z wyjątkiem niektórych określonych aplikacji) ani opcji naprawy.
Dmitry Grigoryev

Odpowiedzi:

18

To proste, testujemy je, zanim je sprzedamy i wyrzucamy złe.

Jest na to wiele sposobów - różni ludzie robią różne rzeczy, często używają kombinacji:

  • niektóre testy są szybkie, aby upewnić się, że przebiegają wystarczająco szybko.

  • inne testy obejmują tryb, który zamienia niektóre lub wszystkie przerzutniki w chipie w gigantyczne rejestry przesuwne, rejestrujemy znane dane w tych łańcuchach, następnie uruchamiamy chip przez jeden zegar, a następnie skanujemy nowe wyniki z powrotem i sprawdzamy, czy pasują do siebie nasze przewidywane wyniki - automatyczne narzędzia testowe generują minimalny zestaw „wektorów skanujących”, które będą testować każdą losową bramkę lub tranzystor na chipie - inne wektory wykonują specjalne testy bloków pamięci RAM,

  • inne testują, czy wszystkie przewody zewnętrzne są prawidłowo połączone

  • upewniamy się, że nie pobiera niezdrowej ilości prądu

Testowanie czasu kosztuje, czasem przeprowadzamy proste testy pod kątem oczywistych martwych wiórów, zanim zostaną one zapakowane w celu usunięcia złych, a następnie przeprowadzane są dalsze testy po zakończeniu pakowania

Taniwha
źródło
1
„To proste, testujemy je, zanim je sprzedamy i wyrzucamy złe”. Jeśli byłby to jedyny system jakości, prawdopodobnie uzyskałby wydajność 0,00000000001% przy 1 miliardie urządzeń tranzystorowych
Federico Russo,
2
To naprawdę jest takie proste; sztuczka polega na bardzo dużej ilości symulacji i sprawdzeniu reguł wcześniej, aby upewnić się, że wydajność jest akceptowalna. Rzadko występuje nadmiarowość w samej logice procesora; czasami pojawia się odrobina nadmiarowości w RAM-ach na chipie.
pjc50,
Jeśli konstrukcja jest poprawna, Twoje indywidualne awarie wynikają z wad materiałowych, zanieczyszczenia, błędów procesowych itp. Mimo, że stosuje się tylko kilka rozmiarów płytek, większe układy scalone są droższe niż ich proporcjonalny rozmiar, ponieważ prawdopodobieństwo wystąpienia wady wzrasta wraz z powierzchnia. W kilku przypadkach możesz mieć układ z większą liczbą jednostek funkcjonalnych, niż jest to czasami sprzedawane, więc nadal może być zbywalny, jeśli jest zły, ale jest to ograniczone. Czasami możesz kupić układy FPGA ze zniżką, które są testowane tylko pod kątem działania określonego pliku konfiguracyjnego, a nie pracy z dowolnym plikiem.
Chris Stratton,
2
Myślę, że zapomniałeś wspomnieć o producentach takich jak AMD sprzedające procesory ze złymi rdzeniami jako o innym modelu z zablokowanym złym rdzeniem. To rodzaj redundancji lub może sprytny marketing.
akaltar
Jeśli ktokolwiek zastanawiał się, w jaki sposób dostarczane są części z szarej strefy, nie powinien się więcej zastanawiać. Pracowałem na końcu oprogramowania systemów chip fab, a automatyczne testowanie, jak tu opisano, to ogromna część czasu i kosztów finansowych dla roślin.
12

Aby rozwinąć nieco to, co powiedzieli inni: istnieje walidacja, a następnie klasyfikacja żetonów.

Tranzystory w procesorach mają tendencję do pokazywania swoich problemów na wyższych częstotliwościach, dlatego często wykonuje się jeden procesor, a następnie sprzedaje jako kilka różnych produktów. Tańsze procesory to w rzeczywistości uszkodzone wersje drogiego procesora. Inną opcją jest wyłączenie niektórych części procesora. Na przykład AMD stworzyło procesory z rdzeniem BArton. Sprzedawano także procesory z rdzeniem Thorton. Thorton nie był nowym rdzeniem. Zamiast tego połowa pamięci podręcznej L2 była uszkodzona i wyłączona. W ten sposób AMD dokonało pewnego odzyskiwania procesorów, które w przeciwnym razie zostałyby zmarnowane.

To samo stało się z 3 rdzeniowymi procesorami AMD. Początkowo były to 4 rdzeniowe procesory, ale jeden z rdzeni został określony jako uszkodzony, więc został wyłączony.

AndrejaKo
źródło
2
często zdarza się, że tworzy się układ z funkcjami, które można wyłączyć przez przepalenie bezpieczników. Prosta ekonomika wydajności układu, jeśli możemy uratować cały układ lub jego część, uruchamiając go wolniej lub wyłączając funkcję, która nie powiodła się w teście, możemy odzyskać część kosztu tej części, zamiast podrzucać całą część. możesz także powrócić do Intel 386 SX i DX jako przykładów. i prawie każde procesor ma ocenę prędkości. wolniejsze to części, które zawiodły przy większych prędkościach.
old_timer
2
Nie, nie 386SX / 386DX. Te układy mają zupełnie inny interfejs magistrali. Nie tylko wyłączasz część 386DX, aby uzyskać 386SX. To, co mówisz, jest prawdą w przypadku 486DX / 486SX, przy czym ten ostatni wyłącza FPU.
Michael Karcher
6

Odpowiedź na twoje pytanie brzmi „nie”. Obecnie nie ma metod automatycznego odzyskiwania w przypadku awarii sprzętu.

Producenci opracowują swoje procesy, aby uzyskać najlepszą możliwą wydajność (w dolarach) ze swoich płytek. Zmniejszając tranzystory, mogą zmieścić większą funkcjonalność na mniejszym obszarze. Można to uznać za większą liczbę układów (o tej samej funkcjonalności) na wafel. W miarę zmniejszania się rozmiaru chipa, możesz uzyskać więcej z opłatka, ale gdy się kurczą, więcej z nich okazuje się źle. Producenci akceptują to i nieustannie przesuwają kopertę technologii w celu zmniejszenia wiórów. Rzeczą, która mówi im, że SĄ na krawędzi koperty, są złe żetony.

Jeśli firma może zmniejszyć rozmiar elementu do 70% starego rozmiaru elementu, może uzyskać około 2 razy więcej żetonów na waflu. Jeśli ich wydajność w starym procesie wynosiła 95% (powiedzmy, 95 dobrych żetonów na 100 na waflu), a ich wydajność na nowym procesie wynosi 75% (150 dobrych żetonów na 200 na waflu), zarabiali pieniądze na nowy proces.

Zabytkowe
źródło
5
W przypadku niektórych rodzajów układów, takich jak pamięci flash NAND, producenci rutynowo przesuwają kopertę poza punkt, w którym układy z zerową wadą byłyby normą, ale większość awarii będzie miała charakter przewidywalny, a urządzenia wykorzystujące układy będą oczekiwać obejść je.
supercat
3

W małych węzłach każdy „tranzystor” ma 2 bramki, chyba że masz pamięć, taką jak SRAM. Jeśli jeden nie działa, masz po prostu powolny sterownik. W przypadku SRAM, jeśli nie przejdzie, po prostu „wysadzisz” rząd. Gdyby oba FETS na tranzystorze zawiodły, miałbyś bardzo drogi kawałek piasku, ale ja osobiście nigdy tak się nie stało. Nowoczesne FinFET są tak małe, że istnieje wiele problemów produkcyjnych (głównie kłopotów) ze względu na naturę litografii i prawdopodobieństwo. Przekonasz się, że pierwsze rzeczy w nowych procesach to układy FPGA, ponieważ możesz po prostu „wysadzić” złe komórki i zmienić wykres routingu. Nie mogę podać ci liczb, ale możesz zgadnąć, w jaki sposób świat x86 dzieli binowanie, rzeczy rzadko idą idealnie.

Oto ilustracja układu komórki XOR: XOR

Zielone paski po lewej / prawej stronie to płetwy, a czerwony to poli. Niebieskie są kolorowym metalem na poziomie 1.

Komercyjne procesory nie mają mechanizmu automatycznego odnajdywania, ale w środowisku akademickim i procesorach specjalnych aplikacji tak się dzieje. Zrobiłem kilka wyspecjalizowanych komponentów, które wykorzystują architekturę asynchroniczną do rozwiązywania problemów z zegarem, które powstają z powodu złych bram, choć zniszczenie tlenku dziury jako gorącego nośnika, w którym dostajesz jeden naprawdę wolny tranzystor.

b degnan
źródło
3

Najwyraźniej czasy się zmieniły. Wiele pięcioletnich odpowiedzi na to pytanie nie odzwierciedla już aktualnego stanu wiedzy, a niektóre z nich były nieprecyzyjne.

Tranzystory i inne urządzenia na krzemie są dość stabilne po wytworzeniu, pod warunkiem, że układ scalony nie przegrzewa się.

Oto czynności wykonane w nowoczesnym procesie wytwarzania układów scalonych w celu zminimalizowania wad:

  • Układy scalone są szeroko testowane, zarówno na poziomie walidacji i weryfikacji projektu, jak i indywidualnych testów próbek. W tym artykule opisano niektóre procedury testowania Pentium 4.
  • ogólny projekt układów scalonych jest obecnie zbyt skomplikowany, aby można go było całkowicie zweryfikować
  • Układy scalone mają programowalny mikrokod, który umożliwia ograniczony stopień reprogramowalności, jeśli wady zostaną wykryte po wytworzeniu
  • nowoczesne układy scalone zawierają zbędne warstwy krzemu, co pozwala na usunięcie defektów wykrytych podczas produkcji
  • wiele procesorów ma nadmiarowe moduły sprzętowe, bez względu na to, czy są to rdzenie procesora, pamięć podręczna czy inne IP; jeśli nie wszystkie jednostki działają, niektóre można wyłączyć i „spiętrzać” jako części tańsze. Jednym z przykładów jest wielordzeniowy układ scalony PS4, który zawiera jeden nadmiarowy rdzeń, który jest wyłączony, aby osiągnąć wyższą wydajność.
  • niektóre procesory będą działać, ale nie z najwyższą prędkością; mogą być sprzedawane jako procesory o niższej prędkości i niższych kosztach
  • wiele procesorów i pamięci RAM wykorzystuje pamięć kodowania z korekcją błędów (ECC) lub wykonuje korekcję błędów sprawdzania poprawności wiadomości na różnych etapach przesyłania danych, aby zapewnić integralność
  • czasami procesory ulegają awarii w sposób, który powoduje awarię systemu, ale nie uniemożliwia ponownego uruchomienia systemu po ponownym uruchomieniu (zatrzask CMOS)

Błędy programowania w formalnej specyfikacji procesora są bardziej prawdopodobne niż awarie konkretnego tranzystora.

Podczas gdy zwykłe procesory nie mają zdolności automatycznego odnawiania, pracowano również nad samoresetującymi procesorami jako środkiem przeciwdziałającym promieniom kosmicznym. Promienie kosmiczne mogą gromadzić wystarczającą ilość energii w procesorze lub pamięci RAM, aby powodować odwracanie bitów.

Jak wskazano w komentarzach, systemy o znaczeniu krytycznym od dawna polegają na wielu procesorach. Prom kosmiczny, w 1976 roku , jako jeden z przykładów, używane pięć komputerów, z których cztery prowadził sam program i „wybrany” na wszystkie decyzje kontroli lotu, aby zapewnić bezpieczeństwo.

jbarlow
źródło
ECC i wykrywanie błędów były używane od dłuższego czasu (do pamięci i komunikacji, do arytmetyki i podobnych funkcji logicznych niektóre zaawansowane systemy od lat wykrywały błędy). Podobnie, nadmiarowe wykonywanie (przestrzenne lub czasowe) było wykorzystywane do wykrywania błędów przez dość długi czas w systemach, w których koszt sprzętu / czasu wykonania wydaje się uzasadniony.
Paul A. Clayton
@ PaulA.Clayton, jeśli napiszesz post na temat funkcji Itanium, a później Xeon RAS, z pewnością chętnie zagłosuję na to.
Oleksandr R.
2

Większość nowoczesnych tranzystorów procesorowych to tranzystory polowe. Zaletą ich jest uzyskanie odporności na źródło / odpływ przy rozpoczynaniu przeciążenia. Jest to jeden z czynników, który umożliwia wytwarzanie tranzystorów MOSFET o dużej mocy poprzez umieszczenie wielu równolegle. Obciążenie rozkłada się automatycznie. Może to być czynnik ułatwiający rozwiązywanie problemów. Ale myślę, że to jest naprawdę prostsze.

Podobnie jak w przypadku większości części elektronicznych, jeśli jedziesz zgodnie ze specyfikacją, będą one działać przez dłuższy czas. Kiedy wytwarzany jest mikroprocesor, na koszt składają się dwa czynniki. Tylko przestrzeń na krzemie i, ze względu na złożoność, faktyczna wydajność. Nie wszystkie układy działają po wytworzeniu. Jednak po wykonaniu i po sprawdzeniu poprawności wiadomo, że tranzystory są dobre. Jeśli są napędzane w ramach specyfikacji, są szanse, że pozostaną dobre.

Joe
źródło
2

Czy zastanawiałeś się kiedyś, dlaczego ten sam układ jest czasami sprzedawany z różnymi prędkościami? Czy zauważyłeś, że czasami ta sama architektura układów GPU jest sprzedawana z różną liczbą jednostek wewnętrznych?

Nie ma sposobu na naprawienie defektu sprzętowego na poziomie krzemu, ale z czasem projektanci nauczyli się radzić sobie z problemem zwiększenia wydajności . Bez przewidywania, wydajność zależy wyłącznie od jakości produkcji. Jeśli jednak jesteś sprytny, możesz odzyskać część złych żetonów.

Na przykład, powiedzmy, że masz 18-rdzeniowy układ, który działa mniej więcej niezależnie. Podczas testowania sortujesz idealne układy i wypuszczasz je jako model A18. Większość uszkodzonych układów ma tylko jeden błąd, więc będą działać dobrze, dopóki wadliwy rdzeń zostanie wyłączony. Sprzedajesz je jako model A17 po nieco niższej cenie, a te, które mają dwa złe rdzenie, są sprzedawane jako model A16 po coraz niższej cenie.

To samo może dotyczyć prędkości chipa. Perfekcyjnie wykonane układy będą mogły pracować z prędkościami przekraczającymi specyfikację projektową, ale układy z problemami mogą nie. Są one sprzedawane przy niższych specyfikacjach prędkości.

Ta metoda radykalnie zwiększy ogólną wydajność i dlatego jest dość powszechna. Na przykład PlayStation 3 ma 8 jednostek SPE pod względem sprzętowym, ale jedna jest zawsze wyłączona, aby uwzględnić problemy z wydajnością.

Pål-Kristian Engstad
źródło
1

Czy procesor posiada mechanizm automatycznego odzyskiwania?

Nie, jak wyjaśniono powyżej. Jednak ich pamięci podręczne, zwłaszcza L2 i L3, mogą mieć w sobie dodatkową pamięć RAM. Podczas testowania części w fabryce uszkodzone bloki pamięci RAM można usunąć i użyć dodatkowych bloków pamięci RAM.

Brian Carlton
źródło
1

Zasadniczo nie, pokrywasz złe tranzystory za pomocą ekranu chipa i po tym spodziewasz się stosunkowo niewielkiego odsetka strat. Firma zajmująca się układami scalonymi istnieje od dziesięcioleci, ma wiele sztuczek, aby sobie z tym poradzić (i tak, czasami jedną z nich jest po prostu wypuszczenie złych części i ich wymiana za darmo lub niech klienci będą niezadowoleni).

W środowiskach zahartowanych promieniowaniem (przestrzeń kosmiczna) prawdopodobnie głosowałbyś potrójnie, każdy „bit” faktycznie ma trzy bity, które głosują, aby je wykonać. do ustalenia ustawienia bitów potrzeba tylko dwóch trzecich głosów. więc tranzystory w drugiej trzeciej części mogą się zepsuć i ostatecznie z całkowitą dawką. ale głównym problemem jest zdenerwowanie pojedynczym zdarzeniem. Te układy scalone i systemy są zaprojektowane dla tych środowisk od góry do dołu, krzemu, sprzętu, oprogramowania itp. I wykorzystują starą wypróbowaną i prawdziwą technologię, a nie najnowocześniejszą, więc liczba tranzystorów i wielkość tranzystorów pochodzi z lat temu.

Oczekuje się, że COTS czknie i od czasu do czasu zawiedzie.

old_timer
źródło
-1

Może się to wydawać cudem, ale istnieje wiele mechanizmów stosowanych w celu zmniejszenia liczby awarii tranzystorów. Jednak w zależności od rodzaju awarii tranzystora i tego, gdzie procesor może, ale nie musi, być użyteczny czasami w pewnych warunkach.

Obecnie często nie ma wbudowanego mechanizmu automatycznego odzyskiwania, ale przeprowadzono wiele badań nad rekonfigurowalnymi obliczeniami, redundancją i innymi technikami, aby zminimalizować ten problem.

sybreon
źródło