Ausbeuten in DRAM und anderen massiv redundanten Prozessen


9

Ich kämme gerade die elektrotechnische Literatur über die Strategien, die zur zuverlässigen Herstellung hochkomplexer, aber auch äußerst fragiler Systeme wie DRAM eingesetzt werden, bei denen Sie eine Reihe von vielen Millionen Komponenten haben und bei denen ein einziger Fehler das gesamte System beschädigen kann .

Es scheint, als ob eine gängige Strategie darin besteht, ein viel größeres System herzustellen und dann beschädigte Zeilen / Spalten mithilfe einstellbarer Sicherungen selektiv zu deaktivieren. Ich habe gelesen [1], dass (ab 2008) kein DRAM-Modul vom Netz geht und dass bei 1 GB DDR3-Modulen mit allen vorhandenen Reparaturtechnologien die Gesamtausbeute von ~ 0% auf etwa 70% steigt. .

Das ist jedoch nur ein Datenpunkt. Was ich mich frage ist, ist dies etwas, das im Feld beworben wird? Gibt es eine anständige Quelle für die Erörterung der Ertragsverbesserung im Vergleich zum SoA? Ich habe Quellen wie diese [2], die einen guten Job darin haben, den Ertrag aus den ersten Prinzipien zu diskutieren, aber das ist 1991, und ich stelle mir vor / hoffe, dass die Dinge jetzt besser sind.

Wird die Verwendung redundanter Zeilen / Spalten auch heute noch verwendet? Wie viel zusätzlichen Platz auf der Platine benötigt diese Redundanztechnologie?

Ich habe mir auch andere parallele Systeme wie TFT-Displays angesehen. Ein Kollege erwähnte, dass Samsung es früher billiger fand, defekte Displays herzustellen und diese dann zu reparieren, anstatt ihren Prozess auf eine akzeptable Ausbeute zu verbessern. Ich habe jedoch noch keine anständige Quelle dafür gefunden.

Refs

[1]: Gutmann, Ronald J. et al. Wafer Level 3-d Ics-Prozesstechnologie. New York: Springer, 2008. [2]: Horiguchi, Masahi et al. "Eine flexible Redundanztechnik für DRAMs mit hoher Dichte." Solid-State Circuits, IEEE Journal of 26.1 (1991): 12-17.


3
Zeilen- und Spaltenredundanz wird noch heute verwendet. Redundanz auf Blockebene wurde im Itanium 2 L3-Cache verwendet (siehe Stefan Rusu et al., "Itanium 2 Processor 6M: Höherer Frequenz- und größerer L3-Cache", 2004). Eine weitere Überlegung hinsichtlich der Ausbeute ist das Binning sowohl für Geschwindigkeit / Leistung / Betriebstemperatur als auch für "Kapazität" (z. B. können Chip-Multiprozessoren mit einer Reihe von Kernzahlen verkauft werden, selbst DRAM mit hoher Fehlerzahl könnten theoretisch als halbe Kapazität verkauft werden Teil).
Paul A. Clayton

faszinierend, danke. Wenn ich mir das Cache-Design anschaue, sehe ich 140 Subarrays mit jeweils 2 Subbanks, die wiederum acht 96x256-Array-Blöcke haben. Jeder Block hat 32 Bits. Dies bedeutet, dass insgesamt 140 * 2 * 8 * 96 * 256 * 32 = 1,762 x 10 ^ 9 Bit erforderlich sind, um 48 x 10 ^ 6 Bit Speicher zu erzeugen. Ist das richtig?
Mephistopheles

3
Nein, die 32 Bits sind Teil des 96x256-Blocks (12 Cache-Möglichkeiten * 8 * 4 * 32 Bits pro Cache-Zeile). Es sollte auch beachtet werden, dass einige der Bits für ECC verwendet werden, so dass der Cache 6 MB Daten hatte . (Die Verwendung von ECC führt zu einer weiteren Falte der Ausbeute beim Binning. Die ECC-Anforderungen variieren je nach Anwendung, und überschüssiges ECC kann verwendet werden, um eine niedrigere Spannung (oder Bildwiederholfrequenz für DRAM) ohne Datenverlust für ein Teil mit geringerer Leistung zu unterstützen und eine Korrektur für die Herstellung bereitzustellen Dies ist eher eine theoretische Überlegung, da Marketingfaktoren im Allgemeinen keine solche Flexibilität zulassen.)
Paul A. Clayton

Danke noch einmal. Dies dient eher dazu, eine Schätzung der Gesamtkosten des Herstellungsprozesses zu erhalten. Das heißt, wie viel zusätzlicher Platz auf der Platine (als Vertreter der aufgewendeten physischen Ressourcen) ist erforderlich, um diese 6 MB zu erreichen? Ich werde versuchen, dies anhand des vom L3-Cache eingenommenen Bereichs abzuschätzen und mich bei Ihnen zu melden.
Mephistopheles

2
Die Verwendung des Bitzellenbereichs berücksichtigt nicht die Zeilendecodierung und anderen Overhead. Der Flächen-Overhead der Redundanz könnte einfach geschätzt werden, indem erkannt wird, dass 4 der 140 Subarrays Ersatzteile sind (etwas weniger als 3% Overhead), wobei zusätzlicher Routing-Overhead ignoriert wird. Es sollte auch beachtet werden, dass 3MiB L3-Cache-Versionen verkauft wurden, so dass die Ausbeute für 6MiB-Versionen niedriger sein durfte. (Ich würde vermuten, dass die Verwendung von Transistoren mit größerer Größe als der Mindestgröße für die SRAM-Zellen für eine geringere Leckage auch die effektive Fehlerrate geringfügig verringern kann.) 136 verwendete Subarrays geben 8 für ECC an (6 +% Overhead).
Paul A. Clayton

Antworten:


1

Kein Hersteller wird jemals Ertragsdaten veröffentlichen, es sei denn, er muss dies aus irgendeinem Grund tun. Es gilt als Geschäftsgeheimnis. Um Ihre Frage direkt zu beantworten, nein, sie wird in der Branche nicht beworben.

Es gibt jedoch viele Ingenieure, deren Aufgabe es ist, den Leitungsdurchsatz und die End-of-Line-Ausbeute zu verbessern. Dies besteht häufig darin, Techniken wie Binning und Blockredundanz zu verwenden, um Verluste außerhalb der Leitungsfunktion so weit zu machen, dass sie verkauft werden können. Blockredundanz wird heute sicherlich verwendet. Es ist ziemlich einfach zu analysieren:

(fehlerhafte Blöcke pro Teil) / (Blöcke pro Teil) * (fehlerhafte Blöcke pro Teil) / (Blöcke pro Teil)

Dadurch erhalten Sie die Wahrscheinlichkeit, dass beide parallelen Blöcke ausfallen. Ich würde bezweifeln, dass Sie am Ende eine Rendite von nur 70% erzielen würden, da normalerweise 90% die akzeptable Mindestrendite sind.


2
Obwohl ich Ihre Antwort sehr schätze, hat @ Paul-a-Clayton diese Informationen zur Verfügung gestellt und konnte in den Kommentaren auch echte Veröffentlichungen (insbesondere das Itanium 2) zitieren. Während in diesen Veröffentlichungen die Blockredundanz erörtert wird, heißt es außerdem: "Diese Verwendung von Subarrays optimiert die Auslastung der Chipfläche, ohne den Grundriss des Kerns einzuschränken", ohne dass die Fehlertoleranz erwähnt wird. Wenn Sie Papiere haben, die speziell Blockredundanz als Werkzeug zur Fehlerbehebung vorschlagen, wären sie sehr dankbar.
Mephistopheles
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.