DE112012006171B4 - On-Chip-Redundanzreparatur für Speichergeräte - Google Patents

On-Chip-Redundanzreparatur für Speichergeräte Download PDF

Info

Publication number
DE112012006171B4
DE112012006171B4 DE112012006171.3T DE112012006171T DE112012006171B4 DE 112012006171 B4 DE112012006171 B4 DE 112012006171B4 DE 112012006171 T DE112012006171 T DE 112012006171T DE 112012006171 B4 DE112012006171 B4 DE 112012006171B4
Authority
DE
Germany
Prior art keywords
memory
address
dram
repair logic
repair
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE112012006171.3T
Other languages
English (en)
Other versions
DE112012006171T5 (de
Inventor
Darshan Kobla
David J. Zimmerman
Vimal K. Natarajan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112012006171T5 publication Critical patent/DE112012006171T5/de
Application granted granted Critical
Publication of DE112012006171B4 publication Critical patent/DE112012006171B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/1016Error in accessing a memory location, i.e. addressing error
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4097Bit-line organisation, e.g. bit-line layout, folded bit lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0407Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals on power on
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

Speichergerät, umfassend:einen dynamischen Random Access Memory (DRAM); undein Systemelement, das mit dem DRAM gekoppelt ist, wobei das Systemelement Folgendes umfasst:einen Speichercontroller für die Steuerung des DRAM; undReparaturlogik gekoppelt mit dem Speichercontroller, wobei die Reparaturlogik einen Reparaturlogikspeicher für die Bereitstellung eines Speichers für identifizierte fehlerhafte Adressen und die den identifizierten fehlerhaften Adressen entsprechenden Daten umfasst;wobei die Reparaturlogik so konfiguriert ist, dass sie eine Speichervorgangsanfrage empfängt und die Redundanzreparatur für eine Betriebsadresse für die Anfrage implementiert;wobei die Reparaturlogik einen Adressenübersetzer für das Übersetzen der eingegangenen Betriebsadresse zur Vermeidung defekter Bereiche im DRAM umfasst.

Description

  • TECHNISCHES GEBIET
  • Ausführungsformen der Erfindung beziehen sich generell auf das Gebiet von elektronischen Geräten und insbesondere auf die On-Chip-Redundanzreparatur für Speichergeräte.
  • HINTERGRUND
  • Um Speicher mit zusätzlicher Dichte für Computervorgänge bereitzustellen, werden Konzepte, die Speichergeräte mit einer Mehrzahl von eng gekoppelten Speicherelementen (welche als 3D-Stapelspeicher oder Stapelspeicher bezeichnet werden können) umfassen, entwickelt. Ein 3D-Stapelspeicher kann gekoppelte Schichten oder Einheiten von DRAM-(dynamisches RAM) -Speicherelementen umfassen, die als ein Speicherstapel bezeichnet werden können. Stapelspeicher kann verwendet werden, um eine große Menge an Hauptspeicher in einem einzigen Bauteil oder Paket bereitzustellen, wobei das Bauteil oder Paket weitere Systemkomponenten wie einen Speichercontroller und eine Zentraleinheit oder andere Systemelemente umfassen kann.
  • Jedoch können beim Herstellen von 3D-Stapelspeichern im Vergleich zu den Kosten von einfacheren Speicherelementen signifikante Kosten entstehen. Beim Aufbau von Stapelspeichergeräten kann eine fehlerfreie Speicherchiplage, wenn sie gefertigt wurde, Fehler bei der Herstellung des 3D-Stapelspeicherpakets ausbilden. Deswegen können die Kosten von defekten Speichergeräten für Gerätehersteller oder für Kunden, die elektronische Geräte erwerben, signifikant sein. Einen Ansatz bietet beispielsweise die Druckschrift TANABE, Akira; TAKESHIMA, Thosio; KOIKE, Hiroki; et al.: „A 30-ns 64-Mb DRAM with Built-in Self Test and Self-Repair Function"; IEEE j. solid state circuits, Nov. 1992, Vol. 27, No. 11, S. 1525 - 1533.
  • Figurenliste
  • Erfindungsgemäße Ausführungsformen werden beispielhaft und in keiner Weise einschränkend in den Figuren der begleitenden Zeichnungen dargestellt, wobei sich gleiche Bezugsnummern auf ähnliche Elemente beziehen.
    • 1 zeigt eine Ausführungsform eines Speichers mit Redundanzreparaturlogik;
    • 2 zeigt ein Flussdiagramm zur Darstellung einer Ausführungsform eines Redundanzreparaturprozesses für ein Speichergerät;
    • 3 zeigt eine Ausführungsform der Redundanzreparaturlogik für ein Speichergerät mit Verfolgung von defekten Speicherelementen;
    • 4 zeigt eine Ausführungsform einer Redundanzreparaturlogik für ein Speichergerät unter Verwendung von Speichergrößenreduzierung und Adressenübersetzung für Speicher-Chunks;
    • 5 zeigt eine Ausführungsform einer Redundanzreparaturlogik für ein Speichergerät unter Verwendung einer Speichergrößenreduzierung und Adressenübersetzung für Adresseneinträge;
    • 6 zeigt eine Ausführungsform einer Vorrichtung oder eines Systems, das Elemente für die Redundanzreparatur von Teilen des Speichers einschließt; und
    • 7 zeigt eine Ausführungsform eines Computersystems, einschließlich eines Stapelspeichers mit Elementen für die Redundanzreparatur von Teilen des Speichers.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Erfindungsgemäße Ausführungsformen sind im Allgemeinen auf die On-Chip-Redundanzreparatur für Speichergeräte ausgerichtet.
  • Wie hier verwendet:
    • bedeutet „3D-Stapelspeicher“ (wobei 3D auf dreidimensional hinweist) oder „Stapelspeicher“ ein Hauptspeicher, der ein oder mehrere gekoppelte Speicherchiplagenschichten, Speicherpakete oder andere Speicherelemente umfasst. Der Speicher kann vertikal oder horizontal gestapelt sein (wie beispielsweise nebeneinander) oder anderweitig Speicherelemente enthalten, die miteinander gekoppelt sind. Insbesondere kann ein DRAM-Stapelspeichergerät oder -system einen Speicherbaustein mit einer Mehrzahl von DRAM-Chiplagen umfassen. Ein Stapelspeichergerät kann auch Systemelemente im Gerät umfassen, die hier als eine Systemschicht oder ein Systemelement bezeichnet sein können, wobei die Systemschicht Elemente wie eine CPU (Hauptprozessor), einen Speichercontroller und andere zugehörige Systemelemente umfassen kann. Die Systemschicht kann einen System-On-Chip (SoC) einschließen. Bei einigen Ausführungsformen kann der Logikchip ein Anwendungsprozessor oder ein Grafikprozessor (Graphics Processing Unit, GPU) sein.
  • Mit der Ankunft des gestapelten DRAM-Standards (wie der WidelO-Standard) kann der DRAM-Wafer mit einem Systemelement wie einem System-On-Chip- (SoC)-Wafer im gleichen Paket mit einem Speicherstapel gestapelt sein. Der Stapelspeicher kann Through Silicon Via- (TSV)-Herstellungsverfahren verwenden, wobei Vias durch Silizium-Chiplagen hindurch hergestellt werden, um Signalwege durch den Speicherstapel bereitzustellen.
  • Ein Stapelspeichergerät kann jedoch einen Systemchip sowie einen oder mehrere DRAM-Chips enthalten, wobei die Komponenten- und Gerätekonstruktion relativ teuer ist im Vergleich zu älteren, einschichtigen Speichergeräten. Nach dem Herstellungsverfahren können defekte Speicherzellen vorhanden sein, was mit maßgeblichen Kosten verbunden sein kann, wenn defekte Geräte entsorgt werden müssen. Wenn jedes Speichergerät, das defekte Bereiche aufweist, entsorgt wird, sind die resultierenden Kosten im Vergleich mit Fehlern bei konventionellen einzelnen Chiplagenspeichern erheblich höher, da bei einem Stapelspeicher sowohl ein gestapeltes DRAM-Paket als auch ein SoC verloren geht. Bei einigen Ausführungsformen ermöglicht eine Reparaturlogik transparente Reparaturen gegenüber einem Speichercontroller des Speichergeräts, der zum Lesen und Schreiben der Daten von und zum DRAM unter Verwendung der Adressen, die defekte Speicherteile enthalten, verwendet wird.
  • In herkömmlichen Geräten können bestimmte Redundanzfunktionen vorhanden sein, die beim Auftreten von Fehlern zum Einsatz kommen. Doch generell ist eine Reparatur des Speichergeräts am Speichergerät notwendig. Bei einem Stapelspeichergerät können die Speicherschichten je nach DRAM-Hersteller von Gerät zu Gerät unterschiedlich sein.
  • Bei einigen Ausführungsformen ist eine On-Chip-Redundanzreparaturtechnik für Speichergeräte vorgesehen, wobei dies Technik Folgendes umfassen kann:
    1. (1) Bei einigen Ausführungsformen ist die Reparaturtechnik in den SoC eines Speichergeräts eingebunden, wodurch keine DRAM-seitigen Änderungen des Geräts erforderlich sind, was bedeutet, dass die Redundanz lieferantenunabhängig ist. Infolgedessen können mehrere Lieferanten für die Produktion eines Speichergerätes verwendet werden, was einem Hersteller hilft, Nachschub und Bedarf bei Massenproduktionsprodukten zu erfüllen.
    2. (2) Bei einigen Ausführungsformen kann die Redundanzreparatur ohne Änderungen an der Redundanztechnik oder an den Prozessen auf zukünftige DRAM-Geräte angewandt werden.
    3. (3) Bei einigen Ausführungsformen unterstützt die Redundanzreparaturtechnik sowohl die statische als auch die dynamische Redundanzreparatur.
    4. (4) Bei einigen Ausführungsformen kann die Redundanzreparatur auch auf herkömmliche Speichersubsysteme angewandt werden, um eine Umgehung von Speicherzellenfehlern zu ermöglichen.
  • Bei einigen Ausführungsformen bietet ein Speichergerät eine generische Redundanzreparatur für den Speicher, wobei die Redundanzreparatur auf dem Systemchip des Speichergeräts abgewickelt wird. Bei einigen Ausführungsformen umfasst ein Systemelement eines Stapelspeichers Komponenten zur Ermöglichung der Reparatur verschiedener Arten von DRAM-Speicher, die in einem Speichergerät zum Einsatz kommen können.
  • Bei einigen Ausführungsformen kann das Systemelement eines von mehreren Tools für die Redundanzreparatur der Speicherkomponenten verwenden. Bei einigen Ausführungsformen wird ein BIST für die Identifizierung defekter DRAM-Zellen verwendet. Bei einigen Ausführungsformen werden defekte DRAM-Zellen mittels Redundanzreparaturtechniken repariert, die Folgendes umfassen:
    1. (1) On-Chip-Speicherreparatur mit Tracking defekter Elemente - Bei einigen Ausführungsformen werden fehlerhafte Adressen im CAM (Content Addressable Memory) oder in einem anderen Reparaturlogikspeicher des Systemelements eines Speichergeräts für die Speicherung der Daten, die für die defekten Teile des DRAM-Speichers im Speicherstapel des Speichergeräts bestimmt waren, fusioniert. Wird an eine Adresse im DRAM geschrieben, bevor die Adresse an den DRAM gesendet wurde, wird die Adresse mit den im CAM bereitgestellten Adressen der defekten DRAM-Teile verglichen. Bei einem Treffer im CAM werden die Daten im CAM gespeichert und der Zugriff auf den DRAM wird ignoriert. Bei einigen Ausführungsformen greift das System nach dem Empfang einer Adresse für eine Speicherfunktion zuerst auf den CAM zu, um zu bestimmen, ob eine Übereinstimmung vorliegt, und wenn das der Fall ist, gibt das System keine Adresse an den DRAM aus, sondern erfasst die Daten vom CAM. Bei einigen Ausführungsformen umfasst ein Systemelement ein Latch-(Flipflop)-Gerät, das die Zustellung einer Adresse an den DRAM verhindert, wenn eine Übereinstimmung (auch als Treffer bezeichnet) mit der Adresse im CAM gefunden wird, wobei ein Multiplexer auf Basis einer Übereinstimmung im CAM zwischen den Daten aus dem CAM und den Daten aus dem DRAM auswählt.
    2. (2) On-Chip-Reparatur mit Speichergrößenreduzierung und Adressenübersetzung - Bei einigen Ausführungsformen umfasst die Redundanzreparatur des Speichers eine Reduzierung der Speichergröße und Übersetzung der Adresse. Bei einigen Ausführungsformen wird vom Speichergerät die gemeldete Gesamtspeichergröße um die Größe des defekten Speicherteils reduziert, so dass die angegebene Speichergröße der Größe des verfügbaren fehlerfreien Speichers des Speichergerätes entspricht. Bei einigen Ausführungsformen übersetzt das Speichergerät die Adressen der defekten Teile des Speichers, so dass die Adressen an die fehlerfreien Teile des Speichers umgeleitet werden. In einer bestimmten Implementierung umfasst die Übersetzung der Adressen einen Versatz der Speicheradressen über die defekten Speicherteile hinaus, z. B. durch Hinzufügen eines Adressenversatzes über einen ersten defekten Speicherteil hinaus und Hinzufügen von zwei Adressenversätzen zum Versatz über einen zweiten defekten Speicherteil hinaus usw.
  • Bei einigen Ausführungsformen werden die Reparaturen am Speicher im Systemelement eines Speichergeräts und außerhalb des Speicherelements gehandhabt. In diesem Fall sind die Reparaturen generisch und können für alle Speicherformate gelten, die von einem Speicherhersteller vorgegeben werden. Bei einigen Ausführungsformen stellt das Speichergerät Redundanz für defekte Elemente bereit, entweder durch Bereitstellung von Speicherplatz in einem separaten Speicher, wie der CAM für das erste Reparatur-Tool, oder durch Übersetzung der Adressen der defekten Speicherteile in die fehlerfreien Teile des Speichers.
  • Bei einigen Ausführungsformen kann das Prüfen zum Bestimmen defekter Speicherteile und die Redundanzreparatur des Speichers zur Vermeidung defekter Teile zu verschiedenen Zeitpunkten und auch mehrere Male über die Lebenszeit eines Speichergeräts erfolgen. Prüfung und Redundanzreparatur können entweder statisch beim anfänglichen Prüfen oder dynamisch im Betrieb erfolgen. Beispielsweise können Prüfung und Redundanzreparatur des DRAM in der Fertigung von Stapelspeichergeräten erfolgen und sie können bei der Herstellung von einer Vorrichtung oder einem System einschließlich Stapelspeicher erfolgen. Des Weiteren können das Prüfen und die Selbstreparatur im Betrieb einer solchen Vorrichtung oder eines solchen Systems erfolgen. Bei einem Beispiel können das Prüfen und die Redundanzreparatur bei jedem Einschaltzyklus für die Vorrichtung oder das System erfolgen. Bei einigen Ausführungsformen umfasst ein Systemspeicher einen BIST (Built-in Self-Test), wobei die Funktion des BIST auch die Identifizierung defekter Speicherteile umfassen kann.
  • Bei bestimmten konventionellen DRAMs können redundante Zeilen, Spalten oder Blöcke implementiert werden. Der Ausfall solcher Elemente erfordert jedoch die Abwicklung von Funktionen im konventionellen Speicher. Bei einigen Ausführungsformen erfolgt die Redundanzimplementierung im SoC eines Speichergeräts und ist somit nicht von der Verfügbarkeit einer DRAM-Zeilen- oder Spalten-Redundanz abhängig.
  • Bei einigen Ausführungsformen kann ein Speichergerät mit Redundanzreparatur ein Stapelspeichergerät umfassen, wie ein WidelO-kompatibles Speichergerät. Ausführungsformen sind jedoch nicht auf Stapelspeichergeräte oder eine bestimmte Speicherstruktur beschränkt und können beispielsweise auch Speichergeräte umfassen, die externe DRAMs anstatt Stapelspeichertechnologien enthalten.
  • 1 zeigt eine Ausführungsform eines 3D-Stapelspeichers mit Selbsttestlogik. In dieser Darstellung schließt ein 3D-Stapelspeichergerät 100, wie ein WideiO-Speichergerät, ein Systemelement 110 auf einem Substrat 105 ein, das mit einer oder mehreren DRAM-Speicherchiplagenschichten 120 gekoppelt ist, die hier auch als Speicherstapel bezeichnet werden. Bei einigen Ausführungsformen kann das Systemelement 110 ein System-On-Chip (SoC) oder ein anderes ähnliches Element sein. Bei dieser Veranschaulichung schließen die DRAM-Speicherchiplagenschichten vier Speicherchiplagenschichten ein, wobei diese Schichten eine erste Speicherchiplagenschicht 122, eine zweite Speicherchiplagenschicht 124, eine dritte Speicherchiplagenschicht 126 und eine vierte Speicherchiplagenschicht 128 darstellen. Jedoch sind Ausführungsformen auf keine spezielle Anzahl an Speicherchiplagenschichten im Speicherstapel 120 begrenzt und können eine größere oder kleinere Anzahl an Speicherchiplagenschichten einschließen. Jede Rohchipschicht umfasst eine(n) oder mehrere Scheiben oder Abschnitte und kann einen oder mehrere verschiedene Kanäle aufweisen. Jede Rohchipschicht kann eine temperaturkompensierte Self-Refresh-Schaltung (temperature compensated self-refresh, TCSR) umfassen, um thermische Aspekte anzugehen, wobei der TCSR und ein Mode-Register (MR) ein Teil einer Managementlogik des Geräts sein können.
  • Neben anderen Elementen kann das Systemelement 110 einen Speichercontroller 130 wie einen WidelO-Speichercontroller für den Speicherstapel 120 einschließen. Bei einigen Ausführungsformen umfasst jede Speicherrohchipschicht (mit der möglichen Ausnahme der oberen oder äußersten Speicherrohchipschicht, wie z. B. der vierten Speicherrohchipschicht 128 in dieser Darstellung) des Speicherstapels 120 eine Mehrzahl von Silizium-Durchkontaktierungen (Through Silicon Vias, TSVs) 150, um Pfade durch die Speicherrohchipschichten bereitzustellen.
  • Bei einigen Ausführungsformen umfasst die Systemschicht BIST-Logik 140. Bei einigen Ausführungsformen wird die BIST-Logik für das Prüfen der DRAM-Speicherschichten verwendet. Bei einigen Ausführungsformen umfasst die Systemschicht auch eine DRAM-Redundanzreparaturlogik 145. Bei einigen Ausführungsformen umfasst die DRAM-Reparaturlogik 145 Elemente für die Reparatur des defekten Speicherstapels, wobei die fehlerhaften Adressen an die Adressen von fehlerfreiem Speicher geleitet werden und wobei die Elemente die in den 3 bis 5 gezeigten Elemente enthalten können.
  • 2 zeigt ein Flussdiagramm zur Darstellung einer Ausführungsform eines Redundanzreparaturprozesses für ein Speichergerät. Bei einigen Ausführungsformen kann das Speichergerät geprüft werden 202, wobei diese Prüfung zu verschiedenen Zeitpunkten, u. a. in der Herstellung und im Betrieb, z. B. beim Selbsttest beim Einschalten, erfolgen kann. Bei einigen Ausführungsformen kann die Prüfung eine Prüfung der BIST-Logik eines Systemelements des Speichergeräts umfassen, z. B. beim Selbsttest beim Einschalten des Speichergeräts. Bei einigen Ausführungsformen können die Daten über defekte Teile des Speichers in der Redundanzreparaturlogik eines Systemelements des Speichers 204 gespeichert werden, wobei die Reparaturlogik genutzt werden kann, um den Speicherbetrieb fortzusetzen und gleichzeitig die defekten Speicherteile zu vermeiden.
  • Im Betrieb kann eine Lese- oder Schreibfunktion für den Speicher von einem Speichercontroller des Speichergeräts 206 empfangen werden. Bei einigen Ausführungsformen wird die Redundanzreparatur des DRAM-Speicherbetriebs vom Systemelement 210 implementiert.
  • Bei einigen Ausführungsformen kann die Redundanzreparatur eine Redundanzreparatur mit Defektverfolgung 230 verwenden. Bei einigen Ausführungsformen wird die Betriebsadresse an einen CAM oder einen anderen Reparaturlogikspeicher des Systemelements des Speichergeräts 232 geleitet, wie z. B. an den in 3 gezeigten CAM 315. Bei einigen Ausführungsformen wird die Betriebsadresse mit den fehlerhaften, im CAM 234 gespeicherten Adressen verglichen. Wenn eine Übereinstimmung mit einer fehlerhaften Adresse 236 gefunden wird, wird der DRAM beim Speicherbetrieb vermieden und der CAM wird entweder zum Lesen von Daten aus der Betriebsadresse oder zum Schreiben von Daten an die Betriebsadresse 240 verwendet. Wird keine Übereinstimmung gefunden, bedeutet das, dass die Betriebsadresse nicht als fehlerhafte Adresse identifiziert wurde, worauf auf den DRAM für den Lese- oder Schreibvorgang 242 zugegriffen wird.
  • Bei einigen Ausführungsformen kann die Redundanzreparatur eine Speicherreduzierung und einen Adressenversatz 250 umfassen. Bei einigen Ausführungsformen kann die gemeldete Speichermenge des Speichergeräts um die als defekt identifizierten Teile des Speichers 252 reduziert werden, so dass die gemeldete Speichergröße der verfügbaren Speichermenge entspricht. Bei einigen Ausführungsformen wird die Betriebsadresse an einen Adressenübersetzer des Systemelements des Speichers 254 geleitet, wobei der Adressenübersetzer bestimmt, wie viel Versatz für die Betriebsadresse bereitgestellt werden muss, um die defekten Teile des Speichers 256 zu vermeiden. Der Lese- oder Schreibbetrieb wird dann an die um den entsprechenden Adressenversatz 258 versetzte Adresse geleitet, so dass die Lese- und Schreibvorgänge in den fehlerfreien Teilen des Speichers erfolgen können und die defekten Speicherteile vermieden werden.
  • Bei einigen Ausführungsformen werden die Redundanzreparaturvorgänge im Systemelement abgewickelt, so dass die Vorgänge gegenüber dem Speichercontroller transparent sind, wobei der Speichercontroller so reagiert, als wären keine fehlerhaften Speicherteile im Speichergerät vorhanden.
  • 3 zeigt eine Ausführungsform der Redundanzreparaturlogik für ein Speichergerät, das On-Chip-Speicherreparatur verwendet. Bei einigen Ausführungsformen umfasst eine On-Chip-Speicherreparatur den Ersatz eines fehlerhaften Speichereintrags oder einer fehlerhaften Adresse für ein Speichergerät 300 im Gegensatz zum herkömmlichen Speicherbetrieb, bei dem eine vollständige Zeile oder Spalte ersetzt werden muss. Bei einigen Ausführungsformen wird ein CAM oder ein Scratchpad-Speicher mit den fehlerhaften Adressen fusioniert. Solche fehlerhafte Adressen können in der Fertigung oder im Betrieb festgestellt werden, z. B. beim Selbsttest beim Einschalten, bei dem die Firmware oder das OS (Betriebssystem) zum Laden des CAM mit den als fehlerhaft identifizierten Adressen verwendet wird. Eine Kombination aus Selbsttest beim Einschalten und Fusionieren in der Fertigung kann ebenfalls verwendet werden. Bei einigen Ausführungsformen wird im Fall eines Schreib- oder Lesevorgangs zum DRAM noch vor dem Senden der Betriebsadresse an den DRAM ein Vergleich mit den Adressen im CAM durchgeführt. Wenn die Betriebsadresse im DRAM vorhanden ist, was als CAM-Treffer gilt, werden die entsprechenden Daten in den CAM geschrieben oder aus diesem gelesen und es ist kein Zugriff auf den DRAM erforderlich.
  • Bei einigen Ausführungsformen umfasst das Speichergerät 300, z. B. ein Stapelspeichergerät, ein Systemelement 305, wobei das Systemelement 305 einen SoC eines Stapelspeichergeräts umfassen und das Systemelement 305 mit dem DRAM 350, z. B. einem ein- oder mehrschichtigen Speicherstapel, gekoppelt sein kann. Bei einigen Ausführungsformen ist ein Speichercontroller des Systemelements 305 mit einem CAM (oder anderem Reparaturlogikspeicher) 315 gekoppelt, wobei der CAM 315 den Speicher der Reparaturadressen und die den Reparaturadressen entsprechenden Daten bereitstellt. Bei einigen Ausführungsformen kann der CAM 315 unter einem oder mehreren Umständen programmiert werden, u. a. bei der Fertigung des Speichergeräts oder bei der Funktionsprüfung des Speichergeräts.
  • Bei einigen Ausführungsformen wird eine Adresse zum DRAM für einen Speichervorgang, wie ein Lese- oder Schreibvorgang, an den CAM 315 und an einen Flipflop 330 mittels Wechselrichter 325 geleitet, wobei der Flipflop 330 die Adresse an einen Ausgang leitet, der mit dem DRAM 350 nur dann gekoppelt ist, wenn ein Aktivierungssignal empfangen wird. Bei einigen Ausführungsformen wird der CAM 315 des Weiteren mit einem Multiplexer 320 gekoppelt. Bei einigen Ausführungsformen empfängt der Multiplexer 320 einen ersten Eingang, der die Daten vom DRAM 350 repräsentiert, und einen zweiten Eingang, der die Daten vom CAM 315 repräsentiert.
  • Bei einigen Ausführungsformen wird bei einem Schreibvorgang eine Adresse zum DRAM 350 am CAM 315 empfangen und wenn keine Übereinstimmung vorliegt, was bedeutet, dass die Adresse zu einem defekten Teil des DRAM 350 gehört, veranlasst das Treffer-Signal den Wechselrichter 325 zur Bereitstellung eines Deaktivierungssignals an den Flipflop 330, wodurch die Weiterleitung der Adresse an den DRAM 350 verhindert wird. Bei einigen Ausführungsformen werden die Schreibdaten für den Schreibvorgang an den CAM 315 geschrieben, wodurch an der gewählten Adresse ein Speicher bereitgestellt wird, der gegenüber dem Speichercontroller 310 transparent ist. Bei einigen Ausführungsformen, wenn keine Übereinstimmung vorliegt, was bedeutet, dass die Adresse nicht zu einem defekten Teil des DRAM 350 gehört, veranlasst der nicht vorhandene Treffer den Wechselrichter 325 zur Ausgabe eines Aktivierungssignals an den Flipflop 330, worauf die Schreibadresse vom DRAM 350 empfangen werden kann.
  • Bei einigen Ausführungsformen wird bei einem Lesevorgang eine Adresse zum DRAM 350 am CAM 315 empfangen und wenn keine Übereinstimmung vorliegt, was bedeutet, dass die Adresse zu einem defekten Teil des DRAM 350 gehört, veranlasst das Treffer-Signal den Wechselrichter 325 zur Bereitstellung eines Deaktivierungssignals an den Flipflop 330, wodurch die Weiterleitung der Adresse an den DRAM 350 verhindert wird. Bei einigen Ausführungsformen verursacht das Lesen zum CAM 315, dass die Daten vom CAM 315 auf einen ersten Eingang des Multiplexers 320 angewandt werden. Bei einigen Ausführungsformen verursacht der Treffer ein Signal an den Multiplexer 320 zur Auswahl des ersten Eingangs des Multiplexers, wodurch die Daten vom CAM dem Speichercontroller 310 zur Verfügung gestellt werden. Bei einigen Ausführungsformen, wenn keine Übereinstimmung vorliegt, was bedeutet, dass die Adresse nicht zu einem defekten Teil des DRAM 350 gehört, veranlasst der nicht vorhandene Treffer den Wechselrichter 325 zur Ausgabe eines Aktivierungssignals an den Flipflop, worauf die Leseadresse dem DRAM 350 bereitgestellt wird. Die Leseergebnisse in den Daten vom DRAM werden einem zweiten Eingang des Multiplexers 320 bereitgestellt, wobei der fehlende Treffer am CAM ein Signal verursacht, das zur Wahl des zweiten Eingangs des Multiplexers 320 führt und somit die Daten vom DRAM dem Speichercontroller bereitgestellt werden.
  • Bei einigen Ausführungsformen kann ein Speichergerät einen CAM beliebiger Größe umfassen. Bei einigen Ausführungsformen bestimmt die Größe des CAM wie viele defekte Elemente ersetzt werden können, so dass die Anzahl reparierbarer Einträge gleich der CAM-Größe ist. Bei einigen Ausführungsformen bietet die Verwendung eines größeren CAM mehr Schutz, verursacht aber zusätzliche Kosten und mehr Aufwand.
  • 4 zeigt eine Ausführungsform einer Redundanzreparaturlogik für ein Speichergerät unter Verwendung von Speichergrößenreduzierung und Adressenversatz; Bei einigen Ausführungsformenwird die verfügbare Speichergröße reduziert, um defekte Einträge oder Speicher-Chunks zu ignorieren oder zu verstecken. Bei einigen Ausführungsformen wird ein Adressenversatz oder eine Übersetzungslogik implementiert, um defekte Einträge oder einen Chunk von Einträgen zu vermeiden.
  • Bei einigen Ausführungsformen umfasst ein Prozess die Reduzierung der Gesamtgröße des DRAM, um die Existenz fehlerhafter Einträge oder Speicher-Chunks zu verstecken. Bei einigen Ausführungsformen wird ein DRAM in kleine Chunks von Logikadressen (z. B. 1 Kilobyte groß) aufgeteilt. Bei einigen Ausführungsformen wird bei einem defekten Eintrag in einem beliebigen Chunk der gesamte Chunk unzugänglich. Bei einigen Ausführungsformen wird die gemeldete Gesamtgröße des DRAM um die Anzahl defekter Speicher-Chunks reduziert. Bei einigen Ausführungsformen wird die Adresse zum DRAM durch einen Adressenübersetzer geleitet, der die Adresse auf Basis der Anzahl defekter Chunks, Einträge oder anderer Speicheraufteilungen effektiv versetzt. Bis zum Auffinden des ersten defekten Chunks ist die Speicheradresse z. B. nicht versetzt, doch für jeden gefundenen defekten Chunk wird die Adresse um 1 Kilobyte versetzt.
  • Bei einigen Ausführungsformen umfasst ein Redundanzreparaturprozess für einen Speicher 400 die Reduzierung der Gesamtgröße des DRAM, um die Existenz fehlerhafter Speicherteile zu verstecken. Bei einigen Ausführungsformen wird ein DRAM in kleine Chunks von Logikadressen (z. B. 1 Kilobyte groß) aufgeteilt. Bei einigen Ausführungsformen wird bei einem defekten Eintrag in einem beliebigen Chunk der gesamte Chunk unzugänglich bzw. ist nicht mehr verfügbar. Bei einigen Ausführungsformen wird dann die DRAM-Größe insgesamt um die Speichermenge reduziert, die in den defekten Speicher-Chunks identifiziert wurde. Bei einigen Ausführungsformen wird die Adresse zum DRAM durch einen Adressenübersetzer geleitet, der die Adresse auf Basis der Anzahl defekter Chunks effektiv versetzt. Bis zum Auffinden des ersten defekten Chunks ist die Speicheradresse z. B. nicht versetzt, doch für jeden gefundenen defekten Chunk wird die Adresse um 1 Kilobyte versetzt. Die Ausführungsformen sind jedoch nicht auf Adressenübersetzungen beschränkt, durch die Chunks des Speichers eliminiert werden; sie können auch verschiedene Ebenen der Speichergranularität nutzen. Bei einigen Ausführungsformen kann die Ebene der Granularität, wie in 5 gezeigt, für fehlerhafte Speichereinträge verfeinert werden.
  • Bei einigen Ausführungsformen umfasst ein Speichergerät 400 ein Systemelement 405 und einen DRAM 450. Das Systemelement 405 umfasst einen Speichercontroller 410 und einen Adressenversatzübersetzer 420, wobei der Adressenversatzübersetzer 420 den Versatz der Adressen des DRAM 450 bewirkt, so dass Daten, die in einen defekten Chunk des DRAM geschrieben oder daraus gelesen werden sollen, werden von einem versetzten Teil des DRAM 450 geschrieben bzw. gelesen, um den defekten Chunk zu vermeiden. In einem Beispiel wird der DRAM 450 mit fehlerfreien Teilen des Speichers (452, 454, 456, 458, 460, 462 und 464) und defekten Teilen des Speichers (453, 455, 457, 459, 461 und 463) dargestellt.
  • Bei einigen Ausführungsformen stellt der Adressenversatzübersetzer 420 Übersetzungen bereit, um das Lesen von oder Schreiben an defekte Teile des Speichers auf eine für den Speichercontroller 410 transparente Weise bereitzustellen. Bei einigen Ausführungsformen reduziert das Speichergerät die gemeldete Speichergröße des DRAM 450 noch weiter, so dass die reduzierte Speichergröße der DRAM-Größe minus der Größe der defekten DRAM-Teile entspricht.
  • 5 zeigt eine Ausführungsform einer Redundanzreparaturlogik für ein Speichergerät unter Verwendung von Speichergrößenreduzierung und Adressenversatz; Bei einigen Ausführungsformen kann die Ebene der Granularität für den Adressenversatz auf ein kleineres Element verfeinert werden, wie z. B. fehlerhafte Adresseneinträge. Bei einigen Ausführungsformen inkrementiert der Adressenübersetzer um einen Versatz von Eins, wobei der Adressenübersetzer auf fehlerhaften Adresseneinträgen basiert. Bei einigen Ausführungsformen umfasst ein Speichergerät 500 ein Systemelement 505 und einen DRAM 550. Das Systemelement umfasst einen Speichercontroller 510 und einen Adressenversatzübersetzer 520, wobei der Adressenversatzübersetzer 520 den Versatz der Adressen des DRAM 550 bewirkt, so dass Daten, die in einen defekten Chunk des DRAM geschrieben oder daraus gelesen werden sollen, werden von einem versetzten Teil des DRAM 550 geschrieben bzw. gelesen, um den defekten Chunk zu vermeiden.
  • Bei einigen Ausführungsformen stellt der Adressenversatzübersetzer 520 speziell eine bestimmte Anzahl von Adressenversätzen bereit, um die defekten Chunks im gesamten DRAM-Speicher zu vermeiden. In einem Beispiel wird der DRAM 550 mit einem fehlerfreien ersten Teil des Speichers 552 dargestellt, wobei die Adressen für diesen Teil nicht durch einen Adressenversatz versetzt wurden. In dieser Darstellung umfasst der DRAM 550 des Weiteren einen ersten defekten Eintrag 553, der an beliebiger Stelle im DRAM auftreten kann, wobei die Adressen ab dem ersten defekten Eintrag versetzt werden, so dass die Adressen in einen fehlerfreien zweiten Teil des Speichers 554 geleitet werden. Auf ähnliche Weise kann der DRAM 550 einen zweiten defekten Eintrag 555 umfassen, wobei die Adressen ab dem zweiten defekten Eintrag 555 um 2 Adressenversätze versetzt werden, so dass die Adressen an einen fehlerfreien dritten Teil des Speichers 556 geleitet werden; einem dritten defekten Eintrag 557, wobei die Adressen ab dem dritten defekten Eintrag 557 um 3 Adressenversätze versetzt werden, so dass die Adressen an einen fehlerfreien vierten Teil des Speichers 558 geleitet werden; und einem vierten defekten Eintrag 559, wobei die Adressen ab dem vierten defekten Eintrag 559 um vier Adressenversätze versetzt werden, so dass die Adressen an einen fehlerfreien fünften Teil des Speichers 560 geleitet werden. Ausführungsformen sind auch auf DRAM-Speicher anwendbar, die eine Anzahl defekter Einträge an beliebiger Stelle im DRAM enthalten. Des Weiteren umfassen die Ausführungsformen einen Speicher, in den bei Bedarf ein zusätzlicher Versatz implementiert werden kann. z. B. wenn mehrere defekte Einträge in direkter Nähe zueinander auftreten, um das Auftreten mehrfacher defekter Einträge zu vermeiden.
  • Bei einigen Ausführungsformen bietet der Adressenversatz 520 Adressenversätze zur Vermeidung des Lesens oder Schreibens von oder zu den defekten Teilen des Speichers auf eine Weise, die gegenüber dem Speichercontroller 510 transparent ist. Bei einigen Ausführungsformen reduziert das Speichergerät die gemeldete Speichergröße des DRAM 550 noch weiter, so dass die reduzierte Speichergröße der DRAM-Größe minus der Größe der defekten DRAM-Teile entspricht.
  • Eine weitere Variante wäre die Deaktivierung der Bank mit Speicherungseinträgen, wobei diese Implementierung die Komplexität der Adressenübersetzungslogik vereinfachen würde. Für den Stapel können verschiedene Versatzmethoden gewählt werden. So könnte z. B. für den untersten DRAM-Stapel, der besonders auf thermische Schwankungen, die durch die vom SoC abgegebene Wärme verursacht werden, reagiert, eine eintrags- oder chunkbasierte Adressenübersetzung und für höher liegende Stapel eine blockbasierte Adressenübersetzung implementiert werden. Bei einigen Ausführungsformen kann die Reparaturlogik für die Implementierung mehrerer verschiedener Adressenübersetzungen in den SoC mit unterschiedlicher Granularität der Speicherelemente ausgeführt werden, wobei eine Ebene gewählt wird, die mindestens zum Teil auf einer Anzahl von identifizierten Defekten basiert, und wobei die anderen Ebenen deaktiviert werden und die Deaktivierung eine Fusionierung der anderen Ebenen beinhalten kann. Bei einigen Ausführungsformen kann die Ebene in der Fertigung gewählt werden.
  • 6 zeigt eine Ausführungsform einer Vorrichtung oder eines Systems, das Elemente für die Reparatur von Teilen des Speichers einschließt. Das Computergerät 600 stellt ein Computergerät dar, das ein mobiles Gerät, wie einen Laptop, einen Tablet-Computer (der ein Gerät einschließt, das einen Touchscreen ohne eine separate Tastatur aufweist; ein Gerät, das sowohl einen Touchscreen als auch eine Tastatur aufweist; ein Gerät, das eine Schnellinitiierung aufweist, die als „Unmittelbar-Ein“-Betrieb bezeichnet wird; und ein Gerät, das generell mit einem Netzwerk in Betrieb verbunden ist, das als „immer verbunden“ bezeichnet wird), ein Mobiltelefon oder Smartphone, ein drahtloser e-Reader oder eine andere Mobilfunkvorrichtung einschließt. Es ist offensichtlich, dass bestimmte Komponenten allgemein dargestellt werden und nicht alle Komponenten eines solchen Geräts im Gerät 600 dargestellt werden. Die Komponenten können durch einen oder mehrere Busse oder andere Verbindungen 605 verbunden sein.
  • Gerät 600 umfasst Prozessor 610, der die Hauptverarbeitungsvorgänge des Geräts 600 ausführt. Prozessor 610 kann ein oder mehrere physische Geräte wie Mikroprozessoren, Anwendungsprozessoren, Mikrocontroller, programmierbare Logikgeräte oder andere Verarbeitungsmittel umfassen. Die Verarbeitungsvorgänge, die von Prozessor 610 durchgeführt werden, umfassen die Ausführung einer Betriebsplattform oder eines Betriebssystems, auf denen Anwendungen oder Gerätefunktionen oder beides ausgeführt werden. Die Verarbeitungsvorgänge schließen Vorgänge ein, die mit I/O (Ein-/Ausgabe) mit einem menschlichen Benutzer oder mit anderen Geräten in Beziehung stehen, Vorgänge, die mit dem Power-Management in Beziehung stehen, Vorgänge oder beides, die mit dem Verbinden von Gerät 600 mit einem anderen Gerät in Beziehung stehen. Die Verarbeitungsvorgänge können auch Vorgänge einschließen, die mit Audio-I/O, Display-I/O oder beidem verbunden sind.
  • In einer Ausführungsform umfasst Gerät 600 ein Audiosubsystem 620, welches Hardware- (wie Audiohardware und Audioschaltkreise), und Softwarekomponenten (wie Treiber und Codecs), die mit dem Bereitstellen von Audiofunktionen an das Computergerät assoziiert sind, repräsentiert. Audiofunktionen können einen Lautsprecherausgang, einen Kopfhörerausgang oder beides sowie einen Mikrofoneingang umfassen. Geräte für solche Funktionen können in das Gerät 600 integriert oder an das Gerät 600 angeschlossen werden. In einer Ausführungsform interagiert ein Benutzer mit dem Gerät 600 durch die Übertragung von Audiobefehlen, die vom Prozessor 610 empfangen und verarbeitet werden.
  • Das Display-Untersystem 630 repräsentiert Hardware- (wie Displaygeräte) und Softwarekomponenten (wie Treiber), die ein Display aufweisen, das visuelle Elemente, Tastelemente oder beides für einen Benutzer bereitstellt, um mit dem Computergerät zu interagieren. Das Anzeigesubsystem 630 weist Anzeigeschnittstelle 632 auf, die den konkreten Bildschirm oder das konkrete Hardwaregerät umfasst, den/das zur Bereitstellung einer Anzeige für einen Benutzer verwendet wird. In einer Ausführungsform umfasst die Anzeigeschnittstelle 632 eine vom Prozessor 610 getrennte Logik, um mindestens einige Verarbeitungsaufgaben in Verbindung mit der Anzeige auszuführen. Bei einer Ausführungsform schließt das Displayuntersystem 630 ein Touchscreen-Gerät ein, das einem Benutzer sowohl die Ausgabe als auch Eingabe bereitstellt.
  • Der I/O-Controller 640 repräsentiert Hardwaregeräte und Softwarekomponenten, die mit der Interaktion mit einem Benutzer verbunden sind. Der I/O-Controller 640 kann Hardware verwalten, die Teil des Audiountersystems 620, eines Display-Untersystems 630 oder von beiden solchen Untersystemen ist. Zudem verdeutlicht der I/O-Controller 640 einen Verbindungspunkt für zusätzliche Geräte, die mit dem Gerät 600 verbunden sind und über die ein Benutzer mit dem System interagiert. Zu den Geräten, die an das Gerät 600 angeschlossen werden können, können u. a. Mikrofon, Lautsprecher- oder Stereosysteme, Videosysteme oder andere Anzeigegeräte, Tastatur oder Keypad-Geräte oder andere I/O-Geräte zur Nutzung bei spezifischen Anwendungen, wie Kartenleser oder andere Geräte, umfassen.
  • Wie vorstehend erwähnt, kann I/O-Controller 640 mit Audiosubsystem 620, Anzeigesubsystem 630 oder mit beiden derartigen Subsystemen interagieren. Zum Beispiel kann ein Eingang über ein Mikrofon oder ein anderes Audiogerät Eingabe oder Befehle für eine oder mehrere Anwendungen oder Funktionen des Geräts 600 bereitstellen. Zusätzlich kann eine Audioausgabe anstatt oder zusätzlich zur Displayausgabe bereitgestellt werden. In einem anderen Beispiel, wenn das Anzeige-Subsystem einen Touchscreen umfasst, kann das Anzeigegerät auch als Eingabegerät betrieben werden, das zumindest teilweise vom I/O-Controller 640 gesteuert wird. Am Gerät 600 können zusätzliche Schaltflächen oder Schalter vorhanden sein, um vom I/O-Controller 640 verwaltete I/O-Funktionen bereitzustellen.
  • Bei einer Ausführungsform verwaltet I/O-Controller 640 Geräte, wie beispielsweise Beschleunigungsmesser, Kameras, Lichtsensoren oder andere Sensoren oder andere Hardware, die in Gerät 600 enthalten sein kein. Die Eingabe kann Teil der direkten Benutzerinteraktion sowie das Bereitstellen umgebungsbedingter Eingabe in das System sein, um dessen Vorgänge zu beeinflussen (wie das Filtern von Rauschen, das Anpassen von Displays bezüglich der Helligkeitserkennung, das Anwenden eines Blitzes einer Kamera oder andere Merkmale).
  • In einer Ausführungsform umfasst Gerät 600 Power-Management 650, das die Batteriestromverwendung, das Laden der Batterie und Funktionen verwaltet, die mit dem Energiesparbetrieb in Zusammenhang stehen.
  • Bei einigen Ausführungsformen umfasst das Speichersubsystem 660 Speichergeräte zum Speichern von Informationen in Gerät 600. Der Prozessor 610 kann Daten von Elementen des Speicheruntersystems 660 lesen und an diese schreiben. Speicher kann nicht flüchtige Speichergeräte (die einen Zustand aufweisen, der sich nicht ändert, wenn der Strom zum Speichergerät unterbrochen wird), flüchtige Speichergeräte (die einen Zustand aufweisen, der unbestimmt ist, wenn der Strom zum Speichergerät unterbrochen wird) oder beide solche Speicher umfassen. Der Speicher 660 kann Anwendungsdaten, Benutzerdaten, Musik, Fotos, Dokumente oder andere Daten sowie Systemdaten (gleich, ob langfristig oder temporäre) in Verbindung mit der Ausführung der Anwendungen und Funktionen des Systems 600 speichern.
  • Bei einigen Ausführungsformen kann das Speicheruntersystem 660 ein Stapelspeichergerät 662 einschließen, wobei das Stapelspeichergerät eine oder mehrere Speicherchiplagenschichten und ein Systemelement einschließt. Bei einigen Ausführungsformen schließt das Stapelspeichergerät 662 eine Speicherreparaturlogik 664 ein, wobei diese Logik die in den 3 bis 5 veranschaulichten Elemente umfasst.
  • Die Konnektivität 670 schließt Hardwaregeräte (z. B. Steckverbinder und Datenübertragungshardware für drahtlose Kommunikation, verdrahtete Kommunikation oder beides) und Softwarekomponenten (z. B. Treiber, Protokollstapel) ein, um Gerät 600 zu ermöglichen, mit Peripheriegeräten zu kommunizieren. Das Gerät könnte separate Geräte, wie z. B. andere Computergeräte, drahtlose Zugangspunkte (access points) oder Basisstationen sowie Peripheriegeräte, wie z. B. Headsets, Drucker oder andere Computergeräte sein.
  • Konnektivität 670 kann mehrere verschiedene Arten von Konnektivität umfassen. Zur Verallgemeinerung ist Gerät 600 mit der Zellkonnektivität 672 und der drahtlosen Konnektivität 674 veranschaulicht. Die Mobilfunkkonnektivität 672 verweist generell auf Mobilfunknetz-Konnektivität, die durch Mobilfunkanbieter, wie beispielsweise 4G/LTE (Long Term Evolution), GSM (Global System for Mobile Communications) oder Varianten oder Ableitungen, CDMA (Codemultiplexverfahren) oder Varianten oder Ableitungen, TDM (Zeitmultiplexbetrieb) oder Varianten oder Ableitungen oder andere Mobilfunkdienststandards bereitgestellt wird. Die drahtlose Konnektivität 674 bezeichnet drahtlose Konnektivität, die kein Mobilfunk ist. Sie kann persönliche Netzwerke (wie Bluetooth), lokale Netzwerke (wie WiFi), Weitverkehrsnetzwerke (wie WiMax) und andere drahtlose Kommunikation umfassen. Konnektivität kann ein oder mehrere Rundstrahl- und Richtantennen 676 umfassen.
  • Die Peripherieverbindungen 680 schließen Hardwareschnittstellen und Stecker sowie Softwarekomponenten ein (z. B. Treiber, Protokollstapel), um periphere Verbindungen herzustellen. Es ist offensichtlich, dass das Gerät 600 sowohl ein peripheres Gerät („an“ 682) für andere Computergeräte sein kann als auch Peripheriegeräte besitzen kann („von“ 684), die mit ihm verbunden sind. Das Gerät 600 weist allgemein einen „Docking“-Anschluss auf, um es mit anderen EDV-Geräten für Zwecke wie das Verwalten (wie das Herunterladen, Hochladen, Wechseln oder Synchronisieren) von Inhalt auf dem Gerät 600 zu verbinden. Zusätzlich kann ein Docking-Verbinder die Verbindung des Geräts 600 mit bestimmten Peripheriegeräten ermöglichen, mit denen die Content-Ausgabe mithilfe des Geräts 600 beispielsweise an audiovisuelle oder andere Systeme kontrolliert wird.
  • Zusätzlich zu einem eigenentwickelten Docking-Anschluss oder anderer eigenentwickelten Verbindungshardware kann das Gerät Peripherieverbindungen 680 über herkömmliche oder auf Standards basierenden Verbindern herstellen. Gewöhnliche Arten können einen universellen seriellen Bus- (USB) -Anschluss (der irgendeine von einer Anzahl von unterschiedlichen Hardware-Schnittstellen umfassen kann), DisplayPort, MiniDisplayPort (MDP), HDMI-Schnittstelle (HDMI), FireWire oder eine andere Art einschließen.
  • 7 zeigt eine Ausführungsform eines Computersystems, einschließlich eines Stapelspeichers mit Elementen für die Reparatur von Teilen des Speichers. Das Computersystem kann einen Computer, einen Server, eine Spielekonsole und andere Computergeräte enthalten. In dieser Veranschaulichung sind bestimmte allgemein bekannte Standardkomponenten, die nicht erfindungsrelevant sind, nicht gezeigt. Unter bestimmten Ausführungsformen umfasst ein Computersystem 700 eine Verbindung oder ein Koppelfeld 705 oder andere Kommunikationsmittel für die Übertragung von Daten. Ein Computersystem 700 kann ein Verarbeitungsmittel wie ein oder mehrere Prozessoren 710 enthalten, die für die Verarbeitung von Informationen mit der Verbindung 705 gekoppelt sind. Die Prozessoren 710 können einen oder mehrere physische Prozessoren und einen oder mehrere logische Prozessoren umfassen. Die Verbindung 705 wird der Einfachheit halber als Einzelverbindung dargestellt, es können aber mehrere verschiedene Verbindungen oder Busse vorhanden sein und die Komponentenverbindungen zu diesen Verbindungen können unterschiedlich sein. Die in 7 gezeigte Verbindung 705 ist eine Generalisierung, in der einer oder mehrere separate physische Busse dargestellt sind, mit Punkt-zu-Punkt-Verbindungen oder wobei beide durch entsprechende Brücken, Adapter oder Controller verbunden sind.
  • In einigen Ausführungsformen umfasst das Computersystem 700 des Weiteren einen RandomAccess Memory (RAM)-Speicher oder ein anderes dynamisches Speichergerät oder -element als Hauptspeicher 712 für das Speichern von Informationen und Anweisungen, die von den Prozessoren 710 ausgeführt werden. Der RAM-Speicher umfasst Dynamic Random Access Memory (DRAM), bei dem eine Aktualisierung des Speicherinhalts erforderlich ist, und Static Random Access Memory (SRAM), bei dem keine Aktualisierung des Inhalts notwendig ist, der aber mehr kostet. Bei einigen Ausführungsformen kann der Hauptspeicher aktiven Speicher von Anwendungen enthalten, z. B. eine Browseranwendung für die Verwendung bei Netzwerksuchaktivitäten durch einen Benutzerdes Computersystems. Der DRAM-Speicher kann Synchronous Dynamic Random Access Memory (SDRAM) umfassen, der ein Taktsignal für die Steuerung von Signalen und ein DataOut Dynamic Random Access Memory (EDO DRAM) umfasst. Bei anderen Ausführungsformen kann der Systemspeicher bestimmte Register oder anderen Speicher für spezielle Zwecke enthalten.
  • Bei einigen Ausführungsformen schließt der Hauptspeicher 712 Stapelspeicher 714 ein, wobei der Stapelspeicher eine Speicherreparaturlogik 715 für die Handhabung defekter Elemente des Stapelspeichers 714 umfasst. Bei einigen Ausführungsformen kann die Speicherreparaturlogik 715 Elemente einschließen, die in den 3 bis 5 veranschaulicht sind.
  • Das Computersystem 700 kann auch einen Read Only Memory (ROM) Speicher 716 oder ein anderes statisches Speichergerät für die Speicherung von statischen Informationen und Anweisungen für die Prozessoren 710 umfassen. Das Computersystem 700 kann ein oder mehrere nichtflüchtige Speicherelemente 718 zum Speicher von bestimmten Elementen aufweisen.
  • Bei einigen Ausführungsformen beinhaltet das Computersystem 700 ein oder mehrere Eingabegeräte 730, wobei die Eingabegeräte ein oder mehrere von Folgendem enthalten: Tastatur, Maus, Touchpad, Sprachbefehlserkennung, Gestenerkennung oder andere Geräte für die Bereitstellung einer Eingabe für ein Com putersystem .
  • Das Computersystem 700 kann außerdem über die Verbindung 705 mit einem Ausgabe-Display 740 gekoppelt sein. Bei einigen Ausführungsformen kann das Display 740 ein Liquid Crystal Display (LCD) oder eine andere Display-Technologie für das Anzeigen von Informationen oder Inhalten für einen Benutzer umfassen. In bestimmten Umgebungen kann das Display 740 einen Touchscreen umfassen, der zumindest teilweise als Eingabegerät verwendet wird. In bestimmten Umgebungen kann das Displaygerät 740 ein Audiogerät sein oder ein solches umfassen, z. B. einen Lautsprecher für die Tonausgabe von Informationen..
  • Außerdem können ein oder mehrere Sender oder Empfänger 745 mit der Verbindung 705 gekoppelt sein. Bei einigen Ausführungsformen kann das Computergerät 700 ein oder mehrere Ports 750 für den Empfang oder die Übertragung von Daten umfassen. Das Computersystem 700 kann ferner eine oder mehrere Rundstrahlantennen oder Richtantennen 755 zum Empfangen von Daten über Funksignale umfassen.
  • Das Computersystem 700 kann auch ein Stromversorgungsgerät oder - system 760 umfassen, welches ein Netzteil, eine Batterie, eine Solarzelle, eine Brennstoffzelle oder ein anderes System oderGerät für die Stromzufuhrbzw. Stromerzeugung umfasst. Der durch das Stromversorgungsgerät oder -system 760 gelieferte Strom kann je nach Bedarf an die Elemente des Computersystems 700 verteilt werden.
  • Bei der vorstehenden Beschreibung sind zum Zweck der Erklärung zahlreiche spezifische Details dargelegt, um ein gründliches Verständnis der vorliegenden Erfindung zu ermöglichen. Für einen Fachmann ist es jedoch offensichtlich, dass die vorliegende Erfindung ohne einige dieser spezifischen Details betrieben werden kann. In anderen Fällen sind wohlbekannte Strukturen und Geräte in Form von Blockdiagrammen gezeigt. Es können Zwischenstrukturen zwischen veranschaulichten Komponenten vorhanden sein. Die hier beschriebenen oder veranschaulichten Komponenten können zusätzliche Eingänge oder Ausgänge aufweisen, die nicht veranschaulicht oder beschrieben sind.
  • Verschiedene Ausführungsformen können verschiedene Prozesse umfassen. Diese Prozesse können von Hardwarekomponenten ausgeführt werden oder können in einem Computerprogramm oder maschinenausführbaren Befehlen umgesetzt sein, die verwendet werden können, um einen Universal- oder Spezialprozessor oder Logikschaltungen, die mit den Befehlen programmiert sind, zu veranlassen, die Prozesse auszuführen. Alternativ können die Prozesse von einer Kombination aus Hardware und Software ausgeführt werden.
  • Teile verschiedener Ausführungsformen können als ein Computerprogramm-Produkt bereitgestellt sein, das ein nichtflüchtiges computerlesbares Speichermedium umfassen kann, auf dem Computerprogramm-Befehle gespeichert sind, die verwendet werden können, um einen Computer (oder andere elektronische Geräte) zu programmieren, einen Prozess gemäß bestimmter Ausführungsformen von einem oder mehreren Prozessoren auszuführen. Das computerlesbare Medium kann beinhalten, ist aber nicht beschränkt auf, Disketten, optische Disks, Compact-Disk-Festspeicher (compact disk read-only memory, CD-ROM) und magnetooptische Disks, Festspeicher (read-only memory, ROM), Direktzugriffsspeicher (random access memory, RAM), löschbarer programmierbarer Festspeicher (erasable programmable read-only memory, EPROM), elektrisch löschbarer programmierbarer Festspeicher (electricallyerasable programmable read-only memory, EEPROM), magnetische oder optische Karten, Flash-Memory oder andere Arten eines computerlesbaren Mediums, die zum Speichern elektronischer Befehle geeignet sind. Außerdem kann die vorliegende Erfindung ebenfalls als ein Computerprogramm-Produkt heruntergeladen werden, wobei das Programm von einem entfernten Computer zu einem anfragenden Computer übertragen werden kann.
  • Viele der Verfahren sind in ihrer grundlegendsten Form beschrieben, jedem der Verfahren können jedoch Prozesse hinzugefügt oder davon gelöscht werden und Informationen können bei jeglicher der beschriebenen Meldungen hinzugefügt oder entfernt werden, ohne vom grundlegenden Umfang der vorliegenden Erfindung abzuweichen. Für einen Fachmann ist es offensichtlich, dass viele weitere Modifizierungen und Anpassungen durchgeführt werden können. Die jeweiligen Ausführungsformen sollen die Erfindung nicht einschränken, sondern sie veranschaulichen. Der Umfang der Ausführungsformen der vorliegenden Erfindung ist nicht durch die vorstehend aufgeführten spezifischen Beispiele bestimmt, sondern nur durch die nachfolgenden Ansprüche.
  • Wenn gesagt wird, dass ein Element „A“ mit Element „B“ gekoppelt ist, kann Element A direkt mit Element B gekoppelt sein oder indirekt durch beispielsweise Element C gekoppelt sein. Wenn die Beschreibung oder Ansprüche besagen, dass eine Komponente, Merkmal, Struktur, Prozess oder Charakteristikum A eine Komponente, Merkmal, Struktur, Prozess oder Charakteristikum B „veranlasst“, bedeutet dies, dass „A“ zumindest eine teilweise Ursache von „B“ ist, dass da aber ebenfalls zumindest eine weitere Komponente, Merkmal, Struktur, Prozess oder Charakteristikum sein kann, das bei der Ursache von „B“ hilft. Wenn die Beschreibung angibt, dass eine Komponente, ein Merkmal, eine Struktur, ein Prozess oder ein Charakteristikum beinhaltet sein „kann“ oder „könnte“, muss diese bestimmte Komponente, diese Merkmal, diese Struktur, dieser Prozess oder dieses Charakteristikum nicht beinhaltet sein. Wenn sich die Beschreibung oder ein Anspruch auf „ein“ Element bezieht, bedeutet dies nicht, dass nur eines der beschriebenen Elemente vorhanden ist.
  • Eine Ausführungsform ist eine Implementierung oder ein Beispiel der vorliegenden Erfindung. Bezugnahme in der Beschreibung auf „eine Ausführungsform“, „einige Ausführungsformen“ oder „andere Ausführungsformen“ bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder ein bestimmtes Charakteristikum, das/die im Zusammenhang mit den Ausführungsformen beschrieben wird, in mindestens einigen Ausführungsformen, aber nicht notwendigerweise allen Ausführungsformen, eingeschlossen ist. Das verschiedenartige Auftreten von „eine Ausführungsform“ oder „einige Ausführungsformen“ bezieht sich nicht notwendigerweise auf die gleichen Ausführungsformen. Es sollte selbstverständlich sein, dass in der vorstehenden Beschreibung beispielhafter Ausführungsformen der vorliegenden Erfindung verschiedene Merkmale manchmal bei einer einzelnen Ausführungsform, Figur oder Beschreibung davon zum Zweck der Vereinfachung der Offenbarung und zum Erreichen eines besseren Verständnisses einer oder mehrerer verschiedener erfinderischer Aspekte in Gruppen zusammengefasst sind. Diese Methode der Offenbarung soll jedoch nicht als eine Absicht ausgelegt werden, dass die beanspruchte Erfindung mehr Merkmale erfordert als in jedem Anspruch ausdrücklich zitiert sind. Wie in den folgenden Ansprüchen aufgezeigt, liegen die erfindungsgemäßen Aspekte in weniger als allen Merkmalen einer einzelnen vorstehenden offenbarten Ausführungsform. Somit sind die Ansprüche ausdrücklich ein fester Bestandteil dieser Beschreibung, wobei jeder Anspruch selbstständig als separate Ausführungsform dieser Erfindung steht.
  • Bei einigen Ausführungsformen umfasst ein Speichergerät einen DRAM und ein mit dem DRAM gekoppeltes Systemelement, wobei das Systemelement einen Speichercontroller für die Steuerung des DRAM und eine Reparaturlogik umfasst, die mit dem Speichercontroller gekoppelt ist, wobei die Reparaturlogik die als fehlerhaft identifizierten Adressen für die defekten Bereiche des DRAM enthält. Die Reparaturlogik wird so konfiguriert, dass sie eine Speichervorgangsanfrage empfängt und die Redundanzreparatur für die Betriebsadresse der Anfrage implementiert.
  • Bei einigen Ausführungsformen umfasst die Reparaturlogik einen Reparaturlogikspeicher für die Bereitstellung eines Speichers für identifizierte fehlerhafte Adressen, wobei die Reparaturlogik auf die Vorgangsanfrage an den Reparaturlogikspeicher reagiert, wenn die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt, wobei die Reparaturlogik ein Aktivierungssignal generiert, dessen Wert darauf basiert, ob die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt. Bei einigen Ausführungsformen ist der Reparaturlogikspeicher ein CAM.
  • Bei einigen Ausführungsformen umfasst die Reparaturlogik einen Flipflop mit einem Ausgang für die Ausgabe der Betriebsadresse an den DRAM und einen Eingang für den Empfang der Betriebsadresse vom Speichercontroller, wobei der Latch so konfiguriert ist, dass die Betriebsadresse nur dann an den DRAM geleitet wird, wenn die Betriebsadresse nicht mit einer identifizierten fehlerhaften Adresse übereinstimmt. Des Weiteren umfasst die Reparaturlogik einen Wechselrichter, der einen Eingang für den Empfang des Aktivierungssignals und einen Ausgang für die Ausgabe des invertierten Aktivierungssignals an den Flipflop umfasst.
  • Bei einigen Ausführungsformen umfasst das Speichergerät des Weiteren einen Multiplexer, wobei der Multiplexer einen Ausgang für die Bereitstellung der Daten an den Speichercontroller, einen ersten Eingang für den Empfang der Daten vom DRAM und einen zweiten Eingang für den Empfang der Daten vom Reparaturlogikspeicher umfasst. Bei einigen Ausführungsformen ist der Multiplexer so konfiguriert, dass entweder der erste Eingang oder der zweite Eingang auf Basis des von der Reparaturlogik generierten Aktivierungssignal gewählt wird.
  • Bei einigen Ausführungsformen umfasst die Reparaturlogik einen Adressenübersetzer für das Übersetzen der eingegangenen Betriebsadresse zur Vermeidung defekter Bereiche im DRAM. Der Adressenübersetzer kann einen Versatz der empfangenen Betriebsadresse bewirken, wobei durch den Versatz ein Teil des DRAM unzugänglich wird. Bei einigen Ausführungsformen ist der Teil des DRAM ein Chunk des DRAM oder ein Adresseneintrag des DRAM.
  • Bei einigen Ausführungsformen kann die Reparaturlogik eine gemeldete Speichermenge für den DRAM um die Speichermenge reduzieren, die durch den Adressenübersetzer unzugänglich gemacht wurde.
  • Bei einigen Ausführungsformen umfasst das Systemelement des Weiteren einen BIST, wobei durch den BIST die Adressen der defekten Speicherteile identifiziert werden. Bei einigen Ausführungsformen ist das Speichergerät ein WidelO-kompatibles Gerät.
  • Bei einigen Ausführungsformen umfasst ein Verfahren die Speicherung der Daten aus defekten Teilen eines DRAM in einer Reparaturlogik eines Systemelements des Speichergeräts, den Empfang von Lese- oder Schreibvorgangsanfragen für den DRAM und die Implementierung einer Redundanzreparatur für den Lese- oder Schreibvorgang zur Vermeidung der defekten Bereiche des DRAM.
  • Bei einigen Ausführungsformen umfasst die Speicherung der Daten aus defekten Teilen des DRAM die Speicherung der als fehlerhaft identifizierten Adressen des defekten Bereichs in einem Reparaturlogikspeicher. Bei einigen Ausführungsformen umfasst das Verfahren des Weiteren einen Vergleich der Betriebsadresse mit den identifizierten fehlerhaften Adressen zur Bestimmung, ob die Betriebsadresse mit einer fehlerhaften Adresse übereinstimmt. Bei einigen Ausführungsformen umfasst das Verfahren des Weiteren die Weiterleitung der Lese- oder Schreibanfrage an den Reparaturlogikspeicher, wenn die Betriebsadresse mit einer fehlerhaften Adresse übereinstimmt, und die Weiterleitung der Lese- oder Schreibanfrage an den DRAM, wenn die Betriebsadresse nicht mit einer fehlerhaften Adresse übereinstimmt. Bei einigen Ausführungsformen wird eine Schreibanfrage an eine fehlerhafte Adresse in den Reparaturlogikspeicher geschrieben und eine Leseanfrage an eine fehlerhafte Adresse wird aus dem Reparaturlogikspeicher gelesen.
  • Bei einigen Ausführungsformen umfasst das Verfahren des Weiteren die Übersetzung der Betriebsadresse in eine übersetzte Adresse zur Vermeidung der defekten Speicherbereiche, wobei die Übersetzung der Betriebsadresse den Versatz der Betriebsadresse beinhaltet, wodurch ein Teil des DRAM unzugänglich gemacht wird. Bei einigen Ausführungsformen ist der unzugängliche Teil des DRAM ein Chunk des DRAM oder ein Adresseneintrag des DRAM. Bei einigen Ausführungsformen umfasst das Verfahren des Weiteren die Reduzierung einer gemeldeten Speichermenge für den DRAM um die Speichermenge, die durch die Adressenübersetzung zur Vermeidung der defekten Speicherbereiche unzugänglich gemacht wurde.
  • Bei einigen Ausführungsformen schließt ein System einen Prozessor zum Verarbeiten von Daten des Systems; einen Sender, Empfänger oder beides gekoppelt mit einer Rundstrahlantenne, um Daten zu senden, Daten zu empfangen oder beides; und einen Speicher, um Daten zu speichern ein, wobei der Speicher ein Stapelspeichergerät umfasst und das Stapelspeichergerät einen q Speicherstapel mit einem oder mehreren Speicherchiplagenelementen, einschließlich einer ersten Speicherchiplage und ein mit dem Speicherstapel gekoppeltes Systemelement umfasst. Das erste Speicherchiplagenelement umfasst einen Speichercontroller für die Steuerung des Speicherstapels und eine mit dem Speichercontroller gekoppelte Reparaturlogik, wobei die Reparaturlogik die als fehlerhaft identifizierten Adressen für defekte Bereiche im Speicherstapel enthält. Bei einigen Ausführungsformen ist die Reparaturlogik so konfiguriert, dass sie eine Speichervorgangsanfrage empfängt und die Redundanzreparatur für eine Betriebsadresse für die Anfrage implementiert.
  • Bei einigen Ausführungsformen umfasst die Reparaturlogik des Systems einen oder mehrere Reparaturlogikspeicher, die als Speicher für identifizierte fehlerhafte Adressen dienen, wobei die Reparaturlogik auf die Vorgangsanfrage an den Reparaturlogikspeicher reagiert, wenn die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt, und wobei die Reparaturlogik ein Aktivierungssignal generiert, dessen Wert darauf basiert, ob die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt, oder wobei ein Adressenübersetzer die empfangene Betriebsadresse übersetzt, um die defekten Bereiche des Speicherstapels zu vermeiden, wobei der Adressenübersetzer einen Versatz der empfangenen Betriebsadresse bewirkt und der Versatz einen Teil des Speicherstapels unzugänglich macht.
  • Bei einigen Ausführungsformen ist das System ein mobiles Gerät. Bei einigen Ausführungsformen ist das mobile Gerät ein Tablet-Computer.
  • Bei einigen Ausführungsformen sind auf einem nicht flüchtigen Speichermedium computerlesbare Daten gespeichert, die Befehlssequenzen enthalten und bei Ausführung auf einem Prozessor den Prozessor zur Ausführung von Vorgängen veranlassen, einschließlich zum Speichern von Daten bezüglich defekter Teile eines DRAM in einer Reparaturlogik eines Systemelements eines Speichergeräts, zum Empfang einer Lese- oder Schreibvorgangsanfrage für den DRAM und zur Implementierung einer Redundanzreparatur für den Lese- oder Schreibvorgang, um defekte Bereiche des DRAM zu vermeiden.

Claims (19)

  1. Speichergerät, umfassend: einen dynamischen Random Access Memory (DRAM); und ein Systemelement, das mit dem DRAM gekoppelt ist, wobei das Systemelement Folgendes umfasst: einen Speichercontroller für die Steuerung des DRAM; und Reparaturlogik gekoppelt mit dem Speichercontroller, wobei die Reparaturlogik einen Reparaturlogikspeicher für die Bereitstellung eines Speichers für identifizierte fehlerhafte Adressen und die den identifizierten fehlerhaften Adressen entsprechenden Daten umfasst; wobei die Reparaturlogik so konfiguriert ist, dass sie eine Speichervorgangsanfrage empfängt und die Redundanzreparatur für eine Betriebsadresse für die Anfrage implementiert; wobei die Reparaturlogik einen Adressenübersetzer für das Übersetzen der eingegangenen Betriebsadresse zur Vermeidung defekter Bereiche im DRAM umfasst.
  2. Speichergerät nach Anspruch 1, wobei die Reparaturlogik auf die Vorgangsanfrage an den Reparaturlogikspeicher reagiert, wenn die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt, und wobei die Reparaturlogik ein Aktivierungssignal generiert, dessen Wert darauf basiert, ob die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt.
  3. Speichergerät nach Anspruch 2, wobei die Reparaturlogik ein CAM (content accessible memory) ist.
  4. Speichergerät nach Anspruch 2, wobei die Reparaturlogik einen Flipflop mit einem Ausgang für die Ausgabe der Betriebsadresse an den DRAM und einen Eingang für den Empfang der Betriebsadresse vom Speichercontroller umfasst, und der Latch so konfiguriert ist, dass die Betriebsadresse nur dann an den DRAM geleitet wird, wenn die Betriebsadresse nicht mit einer identifizierten fehlerhaften Adresse übereinstimmt.
  5. Speichergerät nach Anspruch 4, wobei die Reparaturlogik des Weiteren einen Wechselrichter umfasst, der einen Eingang für den Empfang des Aktivierungssignals und einen Ausgang für die Ausgabe des invertierten Aktivierungssignals an den Flipflop aufweist.
  6. Speichergerät nach Anspruch 4, das des Weiteren einen Multiplexer umfasst, der Multiplexer einen Ausgang für die Bereitstellung der Daten an den Speichercontroller, einen ersten Eingang für den Empfang der Daten vom DRAM und einen zweiten Eingang für den Empfang der Daten vom Reparaturlogikspeicher umfasst.
  7. Speichergerät nach Anspruch 6, wobei der Multiplexer so konfiguriert ist, dass entweder der erste Eingang oder der zweite Eingang auf Basis des von der Reparaturlogik generierten Aktivierungssignals gewählt wird.
  8. Speichergerät nach Anspruch 1, wobei der Adressenübersetzer einen Versatz der empfangenen Betriebsadresse bewirkt und durch den Versatz ein Teil des DRAM unzugänglich wird.
  9. Speichergerät nach Anspruch 8, wobei ein Teil des DRAM ein Chunk des DRAM oder ein Adresseneintrag des DRAM ist.
  10. Speichergerät nach Anspruch 8, wobei die Reparaturlogik eine gemeldete Speichermenge für den DRAM um die Speichermenge reduzieren kann, die durch den Adressenübersetzer unzugänglich gemacht wurde.
  11. Speichergerät nach Anspruch 1, wobei das Systemelement des Weiteren einen integrierten Selbsttest (Built-in Self-Test, BIST) umfasst und der BIST die Adressen der defekten Teile des Speichers identifiziert.
  12. Speichergerät nach Anspruch 1, wobei das Speichergerät ein WidelO-kompatibles Gerät ist.
  13. Verfahren, umfassend: Speicherung von Daten bezüglich defekter Teile eines dynamischen Random Access Memory (DRAM) in ein einer Reparaturlogik eines Systemelements eines Speichergeräts, umfassend die Speicherung der als fehlerhaft identifizierten Adressen des defekten Bereichs in einem Reparaturlogikspeicher und die den identifizierten fehlerhaften Adressen entsprechenden Daten; Empfang einer Lese- oder Schreibvorgangsanfrage für den DRAM; Implementierung einer Redundanzreparatur für den Lese- oder Schreibvorgang zur Vermeidung defekter Bereiche des DRAM; und Übersetzung der Betriebsadresse in eine übersetzte Adresse zur Vermeidung der defekten Speicherbereiche.
  14. Verfahren nach Anspruch 13, das des Weiteren einen Vergleich der Betriebsadresse mit den identifizierten fehlerhaften Adressen zur Bestimmung, ob die Betriebsadresse mit einer fehlerhaften Adresse übereinstimmt, umfasst.
  15. Verfahren nach Anspruch 14, das des Weiteren die Weiterleitung der Leseder Schreibanfrage an den Reparaturlogikspeicher, wenn die Betriebsadresse mit einer fehlerhaften Adresse übereinstimmt, und die Weiterleitung der Lese- oder Schreibanfrage an den DRAM, wenn die Betriebsadresse nicht mit einer fehlerhaften Adresse übereinstimmt, umfasst, wobei eine Schreibanforderung an eine fehlerhafte Adresse in den Reparaturlogikspeicher geschrieben und eine Leseanfrage an eine fehlerhafte Adresse vom Reparaturlogikspeicher gelesen wird.
  16. Verfahren nach Anspruch 13, wobei die Übersetzung der Betriebsadresse den Versatz der Betriebsadresse umfasst, wodurch ein Teil des DRAM unzugänglich gemacht wird.
  17. Verfahren nach Anspruch 13, das des Weiteren die Reduzierung einer gemeldeten Speichermenge für den DRAM um die Speichermenge, die durch die Adressenübersetzung zur Vermeidung der defekten Speicherbereiche unzugänglich gemacht wurde, umfasst.
  18. System umfassend: einen Prozessor zum Verarbeiten von Daten des Systems, einen Sender, einen Empfänger oder beides, der/die mit einer Rundstrahlantenne gekoppelt ist/sind, um Daten zu senden, Daten zu empfangen oder beides, und einen Speicher zum Speichern von Daten, wobei der Speicher ein Stapelspeichergerät aufweist, wobei das Stapelspeichergerät aufweist: einen Speicherstapel, der ein oder mehrere Speicherchiplagenelemente einschließlich eines ersten Speicherchiplagenelementes aufweist, und ein Systemelement gekoppelt mit dem Speicherstapel, wobei das erste Speicherchiplagenelement einschließt: einen Speichercontroller für die Steuerung des Speicherstapels; und Reparaturlogik gekoppelt mit dem Speichercontroller, wobei die Reparaturlogik einen Reparaturlogikspeicher für die Bereitstellung eines Speichers für identifizierte fehlerhafte Adressen für die defekten Bereiche des DRAM und die den identifizierten fehlerhaften Adressen entsprechenden Daten umfasst; wobei die Reparaturlogik so konfiguriert ist dass sie eine Speichervorgangsanfrage empfängt und die Redundanzreparatur für eine Betriebsadresse für die Anfrage implementiert; und einen Adressenübersetzer für das Übersetzen der eingegangenen Betriebsadresse zur Vermeidung defekter Bereiche im DRAM.
  19. System nach Anspruch 18, wobei die Reparaturlogik eine oder mehrere der Folgenden umfasst: einen Reparaturlogikspeicher für die Bereitstellung eines Speichers für identifizierte fehlerhafte Adressen, wobei die Reparaturlogik auf die Vorgangsanfrage an den Reparaturlogikspeicher reagiert, wenn die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt, wobei die Reparaturlogik ein Aktivierungssignal generiert, dessen Wert darauf basiert, ob die Betriebsadresse mit einer identifizierten fehlerhaften Adresse übereinstimmt; oder wobei der Adressenübersetzer einen Versatz der empfangenen Betriebsadresse bewirken kann, wobei durch den Versatz ein Teil des Speicherstapels unzugänglich wird.
DE112012006171.3T 2012-03-30 2012-03-30 On-Chip-Redundanzreparatur für Speichergeräte Active DE112012006171B4 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2012/031422 WO2013147840A1 (en) 2012-03-30 2012-03-30 On chip redundancy repair for memory devices

Publications (2)

Publication Number Publication Date
DE112012006171T5 DE112012006171T5 (de) 2015-01-08
DE112012006171B4 true DE112012006171B4 (de) 2020-06-18

Family

ID=49260899

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012006171.3T Active DE112012006171B4 (de) 2012-03-30 2012-03-30 On-Chip-Redundanzreparatur für Speichergeräte

Country Status (6)

Country Link
US (1) US9158619B2 (de)
KR (1) KR101652874B1 (de)
CN (1) CN104205232B (de)
DE (1) DE112012006171B4 (de)
TW (1) TWI508090B (de)
WO (1) WO2013147840A1 (de)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013147844A1 (en) * 2012-03-30 2013-10-03 Intel Corporation Built-in self-test for stacked memory architecture
CA2878742C (en) * 2014-01-23 2016-10-25 Sidense Corp. Redundancy system for non-volatile memory
KR102440362B1 (ko) 2015-09-25 2022-09-05 삼성전자주식회사 이미지 센서, 적층형 이미지 센서, 이미지 처리 장치 및 이미지 센서 칩 패키지의 제조 방법
US10395748B2 (en) 2016-06-15 2019-08-27 Micron Technology, Inc. Shared error detection and correction memory
CN106600250B (zh) * 2016-11-04 2020-11-24 北京果仁宝科技有限公司 区块链去中心化到中心化的用户标识方法和装置
US10490251B2 (en) 2017-01-30 2019-11-26 Micron Technology, Inc. Apparatuses and methods for distributing row hammer refresh events across a memory device
US11604754B2 (en) * 2017-05-25 2023-03-14 Advanced Micro Devices, Inc. Method and apparatus of integrating memory stacks
US10713136B2 (en) * 2017-09-22 2020-07-14 Qualcomm Incorporated Memory repair enablement
US10936221B2 (en) 2017-10-24 2021-03-02 Micron Technology, Inc. Reconfigurable memory architectures
CN108107867B (zh) * 2017-11-24 2019-10-11 中国人民解放军国防科技大学 一种复用系统逻辑的存储器自测试控制器实现方法及装置
US11281608B2 (en) 2017-12-11 2022-03-22 Micron Technology, Inc. Translation system for finer grain memory architectures
KR102126017B1 (ko) 2017-12-12 2020-06-23 연세대학교 산학협력단 베이스 다이 스페어 셀을 이용한 적층형 메모리 장치 및 그 수리 방법
WO2019222960A1 (en) 2018-05-24 2019-11-28 Micron Technology, Inc. Apparatuses and methods for pure-time, self adopt sampling for row hammer refresh sampling
US11152050B2 (en) 2018-06-19 2021-10-19 Micron Technology, Inc. Apparatuses and methods for multiple row hammer refresh address sequences
US10573370B2 (en) 2018-07-02 2020-02-25 Micron Technology, Inc. Apparatus and methods for triggering row hammer address sampling
KR102587648B1 (ko) 2018-07-23 2023-10-11 삼성전자주식회사 적층형 메모리 장치, 이를 포함하는 메모리 시스템 및 적층형 메모리 장치의 테스트 방법
US10599583B2 (en) * 2018-08-20 2020-03-24 Macronix International Co., Ltd. Pre-match system and pre-match method
US10685696B2 (en) 2018-10-31 2020-06-16 Micron Technology, Inc. Apparatuses and methods for access based refresh timing
WO2020117686A1 (en) 2018-12-03 2020-06-11 Micron Technology, Inc. Semiconductor device performing row hammer refresh operation
CN117198356A (zh) 2018-12-21 2023-12-08 美光科技公司 用于目标刷新操作的时序交错的设备和方法
US10957377B2 (en) 2018-12-26 2021-03-23 Micron Technology, Inc. Apparatuses and methods for distributed targeted refresh operations
CN109741782B (zh) * 2018-12-29 2020-10-16 西安紫光国芯半导体有限公司 一种dram的修复方法
US10770127B2 (en) 2019-02-06 2020-09-08 Micron Technology, Inc. Apparatuses and methods for managing row access counts
US11615831B2 (en) 2019-02-26 2023-03-28 Micron Technology, Inc. Apparatuses and methods for memory mat refresh sequencing
US11043254B2 (en) 2019-03-19 2021-06-22 Micron Technology, Inc. Semiconductor device having cam that stores address signals
US11227649B2 (en) 2019-04-04 2022-01-18 Micron Technology, Inc. Apparatuses and methods for staggered timing of targeted refresh operations
US11264096B2 (en) 2019-05-14 2022-03-01 Micron Technology, Inc. Apparatuses, systems, and methods for a content addressable memory cell with latch and comparator circuits
US11158364B2 (en) 2019-05-31 2021-10-26 Micron Technology, Inc. Apparatuses and methods for tracking victim rows
US11069393B2 (en) 2019-06-04 2021-07-20 Micron Technology, Inc. Apparatuses and methods for controlling steal rates
US10978132B2 (en) 2019-06-05 2021-04-13 Micron Technology, Inc. Apparatuses and methods for staggered timing of skipped refresh operations
US11360868B2 (en) * 2019-06-07 2022-06-14 Micron Technology, Inc. Redundant cloud memory storage for a memory subsystem
US11158373B2 (en) 2019-06-11 2021-10-26 Micron Technology, Inc. Apparatuses, systems, and methods for determining extremum numerical values
US11139015B2 (en) 2019-07-01 2021-10-05 Micron Technology, Inc. Apparatuses and methods for monitoring word line accesses
US10832792B1 (en) 2019-07-01 2020-11-10 Micron Technology, Inc. Apparatuses and methods for adjusting victim data
US11386946B2 (en) 2019-07-16 2022-07-12 Micron Technology, Inc. Apparatuses and methods for tracking row accesses
US10943636B1 (en) 2019-08-20 2021-03-09 Micron Technology, Inc. Apparatuses and methods for analog row access tracking
US10964378B2 (en) 2019-08-22 2021-03-30 Micron Technology, Inc. Apparatus and method including analog accumulator for determining row access rate and target row address used for refresh operation
US11200942B2 (en) 2019-08-23 2021-12-14 Micron Technology, Inc. Apparatuses and methods for lossy row access counting
US11302374B2 (en) 2019-08-23 2022-04-12 Micron Technology, Inc. Apparatuses and methods for dynamic refresh allocation
US11302377B2 (en) 2019-10-16 2022-04-12 Micron Technology, Inc. Apparatuses and methods for dynamic targeted refresh steals
US11309010B2 (en) 2020-08-14 2022-04-19 Micron Technology, Inc. Apparatuses, systems, and methods for memory directed access pause
US11348631B2 (en) 2020-08-19 2022-05-31 Micron Technology, Inc. Apparatuses, systems, and methods for identifying victim rows in a memory device which cannot be simultaneously refreshed
US11380382B2 (en) 2020-08-19 2022-07-05 Micron Technology, Inc. Refresh logic circuit layout having aggressor detector circuit sampling circuit and row hammer refresh control circuit
US11222682B1 (en) 2020-08-31 2022-01-11 Micron Technology, Inc. Apparatuses and methods for providing refresh addresses
US11960438B2 (en) * 2020-09-08 2024-04-16 Rambus Inc. Methods and circuits for streaming data to processing elements in stacked processor-plus-memory architecture
US11557331B2 (en) 2020-09-23 2023-01-17 Micron Technology, Inc. Apparatuses and methods for controlling refresh operations
US11222686B1 (en) 2020-11-12 2022-01-11 Micron Technology, Inc. Apparatuses and methods for controlling refresh timing
US11462291B2 (en) 2020-11-23 2022-10-04 Micron Technology, Inc. Apparatuses and methods for tracking word line accesses
US11264079B1 (en) 2020-12-18 2022-03-01 Micron Technology, Inc. Apparatuses and methods for row hammer based cache lockdown
US20220208295A1 (en) * 2020-12-31 2022-06-30 Ap Memory Technology Corporation Memory device, memory system and method of controlling memory device thereof
US11482275B2 (en) 2021-01-20 2022-10-25 Micron Technology, Inc. Apparatuses and methods for dynamically allocated aggressor detection
US11600314B2 (en) 2021-03-15 2023-03-07 Micron Technology, Inc. Apparatuses and methods for sketch circuits for refresh binning
WO2022226997A1 (zh) * 2021-04-30 2022-11-03 华为技术有限公司 存储单元的访问方法、修复方法、裸片和存储芯片
CN113544784B (zh) * 2021-06-04 2023-10-31 长江存储科技有限责任公司 用于三维nand存储器的固件修复
US11664063B2 (en) 2021-08-12 2023-05-30 Micron Technology, Inc. Apparatuses and methods for countering memory attacks
US11688451B2 (en) 2021-11-29 2023-06-27 Micron Technology, Inc. Apparatuses, systems, and methods for main sketch and slim sketch circuit for row address tracking
CN114546084A (zh) * 2022-01-28 2022-05-27 山东云海国创云计算装备产业创新中心有限公司 一种基板管理控制器复位方法、系统、存储介质及设备
CN115295061B (zh) * 2022-10-09 2022-12-16 江苏华存电子科技有限公司 一种存储器固件检修方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327197B1 (en) * 2000-09-13 2001-12-04 Silicon Access Networks, Inc. Structure and method of a column redundancy memory
US20100110745A1 (en) * 2008-10-30 2010-05-06 Micron Technology, Inc. Switched interface stacked-die memory architecture

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4441170A (en) * 1980-09-30 1984-04-03 Intel Corporation Memory redundancy apparatus for single chip memories
JPH05342112A (ja) * 1992-06-08 1993-12-24 Matsushita Electric Ind Co Ltd メモリー制御回路
US5781717A (en) * 1996-09-19 1998-07-14 I-Cube, Inc. Dynamic spare column replacement memory system
US5913928A (en) * 1997-05-09 1999-06-22 Micron Technology, Inc. Data compression test mode independent of redundancy
JP2001052495A (ja) * 1999-06-03 2001-02-23 Toshiba Corp 半導体メモリ
US6909645B2 (en) * 2002-07-16 2005-06-21 Intel Corporation Cluster based redundancy scheme for semiconductor memories
FR2843208B1 (fr) 2002-07-31 2005-03-04 Iroc Technologies Dispositif de reconfiguration d'un ensemble memoire presentant des defauts
US7028234B2 (en) * 2002-09-27 2006-04-11 Infineon Technologies Ag Method of self-repairing dynamic random access memory
JP4063796B2 (ja) 2004-06-30 2008-03-19 日本電気株式会社 積層型半導体装置
US7286380B2 (en) * 2005-09-29 2007-10-23 Intel Corporation Reconfigurable memory block redundancy to repair defective input/output lines
US20080165599A1 (en) 2006-01-31 2008-07-10 Gorman Kevin W Design structure used for repairing embedded memory in an integrated circuit
JP4245180B2 (ja) 2006-10-30 2009-03-25 エルピーダメモリ株式会社 積層メモリ
EP4254413A3 (de) 2006-12-14 2023-12-27 Rambus Inc. Mehrchip-speichervorrichtung
KR100843243B1 (ko) * 2007-04-18 2008-07-02 삼성전자주식회사 신호의 전송파워를 최적화한 반도체 메모리 장치 및 그파워 초기화 방법
US7984329B2 (en) 2007-09-04 2011-07-19 International Business Machines Corporation System and method for providing DRAM device-level repair via address remappings external to the device
US7816934B2 (en) 2007-10-16 2010-10-19 Micron Technology, Inc. Reconfigurable connections for stacked semiconductor devices
US8756486B2 (en) * 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US7978721B2 (en) * 2008-07-02 2011-07-12 Micron Technology Inc. Multi-serial interface stacked-die memory architecture
US8384417B2 (en) 2008-09-10 2013-02-26 Qualcomm Incorporated Systems and methods utilizing redundancy in semiconductor chip interconnects
US8086913B2 (en) * 2008-09-11 2011-12-27 Micron Technology, Inc. Methods, apparatus, and systems to repair memory
US7872936B2 (en) 2008-09-17 2011-01-18 Qimonda Ag System and method for packaged memory
KR20110105256A (ko) * 2010-03-18 2011-09-26 삼성전자주식회사 적층 구조를 갖는 반도체 메모리 장치 및 적층 구조를 갖는 반도체 메모리 장치의 리페어 방법
KR20120088450A (ko) 2011-01-31 2012-08-08 에스케이하이닉스 주식회사 반도체 장치 및 이의 리페어 방법
US9136021B2 (en) * 2011-12-23 2015-09-15 Intel Corporation Self-repair logic for stacked memory architecture
JP6004927B2 (ja) 2012-12-07 2016-10-12 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327197B1 (en) * 2000-09-13 2001-12-04 Silicon Access Networks, Inc. Structure and method of a column redundancy memory
US20100110745A1 (en) * 2008-10-30 2010-05-06 Micron Technology, Inc. Switched interface stacked-die memory architecture

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
TANABE, Akira; TAKESHIMA, Thosio; KOIKE, Hiroki; et al.: „A 30-ns 64-Mb DRAM with Built-in Self Test and Self-Repair Function"; IEEE j. solid state circuits, Nov. 1992, Vol. 27, No. 11, S. 1525 - 1533
TANABE, Akira; TAKESHIMA, Toshio; KOIKE Hiroki [u.a.]: A 30-ns 64-Mb DRAM with Built-in Self-Test and Self-Repair Function. In: IEEE j. solid-state circuits. Nov. 1992, Vol. 27, No. 11, S. 1525 – 1533 *

Also Published As

Publication number Publication date
CN104205232B (zh) 2017-05-31
TWI508090B (zh) 2015-11-11
US20140013185A1 (en) 2014-01-09
DE112012006171T5 (de) 2015-01-08
US9158619B2 (en) 2015-10-13
WO2013147840A1 (en) 2013-10-03
KR101652874B1 (ko) 2016-09-09
KR20140129219A (ko) 2014-11-06
CN104205232A (zh) 2014-12-10
TW201351428A (zh) 2013-12-16

Similar Documents

Publication Publication Date Title
DE112012006171B4 (de) On-Chip-Redundanzreparatur für Speichergeräte
DE112012006161B4 (de) Integrierter Selbsttest für Stapelspeicherarchitektur
DE112011106076B4 (de) Generischer Adressen-Scrambler für Speicherschaltungs-Testengine
DE112011106030B4 (de) Selbstreparaturlogik für eine Stapelspeicherarchitektur
DE112012006172B4 (de) Generischer Adressen-Scrambler für Speicherschaltungs-Testengine
DE102012024886B4 (de) Boundary Scan-Kette für gestapelten Speicher
DE112011106021B4 (de) Zugreifen auf Daten, die in einem Befehls-/Adressregister-Gerät gespeichert sind
DE112017001471T5 (de) Mehrebenen-speichermanagement
DE112017001020T5 (de) Unterstützung einer vielzahl von speichertypen in einem speichersteckplatz
DE112015003397T5 (de) Vorrichtung, System und Verfahren zur Bestimmung von Vergleichsinformationen basierend auf Speicherdaten
DE112013003219T5 (de) Flexible Befehlsadressierung für Speicher
DE112017004966T5 (de) Erweiterte anwendung eines fehlerprüfungs- und korrekturcodes in einem speicher
DE102016103867A1 (de) MBIST-Vorrichtung zum Verwenden mit ECC-geschützten Speichern
DE112012006070T5 (de) Speichergerät, das auf Gerätebefehle zur Betriebssteuerung reagiert
CN109031983B (zh) Dram的帮浦系统及其操作方法
US9230686B2 (en) Semiconductor device having roll call circuit
DE102022106020A1 (de) Anwendungsbewusste speicher-patrol-scrubbing-techniken
DE112011106097B3 (de) Selbstreparaturlogik für eine Stapelspeicherarchitektur
CN117033111A (zh) Usb接口的测试系统、方法、计算机设备和存储介质
DE112021007536T5 (de) Systeminterne abschwächung unkorrigierbarer fehler basierend auf vertrauensfaktoren, basierend auf einer fehlerbewussten analyse
DE102021119293A1 (de) Speichermodul und betriebsverfahren
CN106886504A (zh) 基于ahb总线的多核soc中实现原子操作系统及方法

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: MAUCHER BOERJES JENKINS, DE

Representative=s name: MAUCHER JENKINS, DE

Representative=s name: MAUCHER JENKINS PATENTANWAELTE & RECHTSANWAELT, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final