DE112018008197T5 - Laufzeit-Nach-Paket-Reparatur für Speicher - Google Patents

Laufzeit-Nach-Paket-Reparatur für Speicher Download PDF

Info

Publication number
DE112018008197T5
DE112018008197T5 DE112018008197.4T DE112018008197T DE112018008197T5 DE 112018008197 T5 DE112018008197 T5 DE 112018008197T5 DE 112018008197 T DE112018008197 T DE 112018008197T DE 112018008197 T5 DE112018008197 T5 DE 112018008197T5
Authority
DE
Germany
Prior art keywords
memory
error
computing system
run
response
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.)
Pending
Application number
DE112018008197.4T
Other languages
English (en)
Inventor
Vincent Zimmer
Anil Agrawal
Dujian WU
Shijian Ge
Zhenglong Wu
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 DE112018008197T5 publication Critical patent/DE112018008197T5/de
Pending legal-status Critical Current

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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • 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
    • 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/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • 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
    • 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
    • G11C2029/0409Online test

Abstract

Systeme, Vorrichtungen und Verfahren können Technologie bereitstellen, die Ausfälle in Speicherhardware mittels Laufzeit-Nach-Paket-Reparatur handhabt. Solche Technologie kann Betriebe aufweisen, um eine Laufzeit-Nach-Paket-Reparatur in Antwort auf einen Speicherhardwareausfall durchzuführen, der in dem Speicher detektiert wird (504). Die Laufzeit-Nach-Paket-Reparatur kann angestellt werden, nachdem Hochfahrstartbetriebe abgeschlossen wurden.

Description

  • TECHNISCHES GEBIET
  • Ausführungsformen beziehen sich im Allgemeinen auf Thread-Planung in Rechensystemen. Genauer beziehen sich Ausführungsformen auf Technologie, die Ausfälle von Speicherhardware (z.B. dynamischer Direktzugriffspeicher (DRAM, Dynamic Random Access Memory)) über Laufzeit-Nach-Paket-Reparatur behebt.
  • ALLGEMEINER STAND DER TECHNIK
  • Fehler in dynamischem Direktzugriffspeicher (DRAM) sind eine herkömmliche Form von Hardwareausfall in modernen Rechenclustem. Ausfälle sind oft sowohl im Sinne von Hardwareaustauschkosten als auch Arbeitsunterbrechung kostspielig. Sowohl Endanwender als auch ursprüngliche Ausrüstungshersteller (OEMs, Original Equipment Manufacturers) können einer effektiven Speicherfehlerbehebung hohen Bedarf beimessen.
  • Figurenliste
  • Die verschiedenen Vorteile der Ausführungsformen werden einem Fachkundigen ersichtlich, indem er die folgende Beschreibung und angehängten Ansprüche liest und indem er die folgenden Zeichnungen heranzieht, in denen:
    • 1 eine Veranschaulichung eines Beispiels eines Laufzeitspeicherreparatursystems gemäß einer Ausführungsform ist;
    • 2 ein Blockdiagramm eines Beispiels eines Speicherbauelements ist, das für Laufzeitspeicherreparatur gemäß einer Ausführungsform angepasst ist;
    • 3 eine Veranschaulichung eines Beispiels einer Prozedur zur Laufzeit-Nach-Paket-Reparatur gemäß einer Ausführungsform ist;
    • 4 eine Veranschaulichung eines Beispiels einer Prozedur zum Einschalt-Nach-Paket-Reparatur ist, die verglichen mit der hierin offenbarten Laufzeit-Nach-Paket-Reparatur eine andere Lösung zur Speicherreparatur ist;
    • 5 ein Ablaufdiagramm eines Beispiels eines Verfahrens zum Reparieren von Laufzeitspeicher gemäß einer Ausführungsform ist;
    • 6 ein ausführlicheres Ablaufdiagramm eines Beispiels eines Verfahrens zum Reparieren von Laufzeitspeicher gemäß einer Ausführungsform ist;
    • 7 ein Blockdiagramm eines Beispiels eines Rechensystems, das ein System-auf-einem-Chip aufweist, gemäß einer Ausführungsform ist;
    • 8 eine Veranschaulichung eines Beispiels einer Halbleitervorrichtung gemäß einer Ausführungsform ist;
    • 9 ein Blockdiagramm eines Beispiels eines Prozessors gemäß einer Ausführungsform ist; und
    • 10 ein Blockdiagramm eines Beispiels eines Multiprozessor-basierten Rechensystems gemäß einer Ausführungsform ist.
  • BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • Wie zuvor beschrieben, sind Fehler in dynamischem Direktzugriffspeicher (DRAM) eine herkömmliche Form von Hardwareausfall in modernen Rechengruppen. Ausfälle sind oft sowohl im Sinne von Hardwareaustauschkosten als auch Arbeitsunterbrechung kostspielig. Sowohl Endanwender als auch ursprüngliche Ausrüstungshersteller (OEMs) können einer effektiven Speicherfehlerbehebung hohen Bedarf beimessen.
  • Wie unten ausführlicher beschrieben wird, können manche hierin beschriebene Implementierungen Nach-Paket-Reparatur- (PPR, Post Package Repair) Prozeduren annehmen, um Laufzeitreparaturen von Speicherhardware- (z.B. DRAM) Ausfällen umzusetzen. Solche Laufzeit-Nach-Paket-Reparatur (PPR) Prozeduren können vorteilhafterweise ohne Kapazitätsverlust, Auswirkungen auf Arbeitsleistung und/oder Kostenfolgen arbeiten.
  • 1 ist eine Veranschaulichung eines Beispiels eines Laufzeitspeicherreparatursystems 100 gemäß einer Ausführungsform. Wie veranschaulicht kann Laufzeitspeicherreparatursystem 100 ein Speicherbauelement, wie zum Beispiel einen DRAM 104, einen Laufzeit-DRAM-Ausfalldetektor 102 und Laufzeit-Nach-Paket-Reparaturhandler 106 aufweisen.
  • Manche hierin beschriebene Implementierungen können Technologie bereitstellen, die Hardwareausfälle in dem DRAM 104 mittels des Laufzeit-DRAM-Ausfalldetektors 102 detektiert. In einer Ausführungsform korrigiert der Laufzeit-Nach-Paket-Reparaturhandler 106 die detektierten Hardwareausfälle in dem DRAM 104. In solch einem Beispiel kann der Laufzeit-Nach-Paket-Reparaturhandler 106 solche Korrekturen durchführen, nachdem Einschaltstartbetriebe abgeschlossen wurden. Im Gegensatz dazu, kann Nach-Paket-Reparatur oft während Einschaltbetrieben (wie unten in 4 veranschaulicht) entgegen während Laufzeitbetrieben (wie unten in 3 veranschaulicht) durchgeführt werden.
  • Zum Beispiel wird eine solche Einschalt-Nach-Paket-Reparatur typischerweise Systemverfügbarkeit nachteilig beeinflussen, weil das Rechensystem zurückgestellt werden muss, wie unten in 4 veranschaulicht. In manchen Beispielen wird typischerweise Fehlerkorrekturcode- (ECC, Error Correcting Code) Speicher zum Detektieren und Korrigieren von Systemspeichern verwendet, um System-ECC-Kapazität und Systemarbeitsleistung zu erhalten (z.B. kann ECC Speicherlatenz beeinflussen). Manche Implementierungen hierin können eine neue Methodologie bereitstellen, um den DRAM-Hardwareausfall bei Laufzeit mittels Nach-Paket-Reparatur-Betrieben zu reparieren, wie unten in 3 veranschaulicht, was Auswirkung auf Arbeitsleistung und Speicherverfügbarkeit vermeiden kann. Zum Beispiel kann in der Laufzeitumgebung ein Speicherfehler, der von Nach-Paket-Reparaturbetrieben korrigiert wird, mittels eines Doppeldatenraten- (DDR, Double Data Rate) Speicherlogikanalysators (LA, Logic Analyzer) detektiert werden, der einen DDR-Speicherbus überwacht.
  • 2 ist ein Blockdiagramm eines Beispiels eines Speicherbauelements 200, das für Laufzeitspeicherreparatur angepasst ist, gemäß einer Ausführungsform. Wie veranschaulicht kann das Speicherbauelement 200 einen dynamischen Direktzugriffspeicher (DRAM) darstellen. In einer Ausführungsform weist das Speicherbauelement 200 mehrere Bankgruppen 202 (z.B. Bankgruppe 0, 1, 2, 4 usw.) auf. Jede der mehreren Bankgruppen 202 kann eine zugehörige Reservereihe 204 aufweisen, wo jede Reservereihe zur Seite gestellt ist, um für Laufzeit Nach-Paket-Reparaturbetrieben verwendet zu werden.
  • Zum Beispiel, wenn eine ausgefallene Reihe 206 detektiert ist, können die Daten in der ausgefallenen Reihe 206 korrigiert und zu der Reservereihe 204 gespeichert werden, die den entsprechenden Bankgruppen 202 (z.B. Bankgruppe 1, wie hier veranschaulicht) zugehörig ist. Wie unten ausführlicher beschrieben wird, kann die ausgefallene Reihe 206 mittels Nach-Paket-Reparaturbetrieben repariert werden. Die korrigierten und gespeicherten ausgefallenen Reihendaten können dann zu der nun reparierten Reihe der ausgefallenen Reihe 206 zurückbewegt werden.
  • Tabelle 1 veranschaulicht die Begrenzungen anderer Möglichkeiten zum Umgang mit Hardwareausfall in DRAM:
    Tabelle 1: Andere Techniken für Hardwareausfälle in DRAM
    Kategorie RAS-(Reihenadresstastsignal) Merkmal Begrenzungen
    Speicher-RAS (z.B. angeben von DRAM-Hardwarefehler) Sp eichereinzelb auelementd atenkorrektur (SDDC) x4 Arbeitsleistung negativ beeinflusst
    Verbesserte Speicherdoppelbauelement datenkorrektur (DDDC+1)
    x4 DRAM adaptive Datenkorrektur (ADC), Einzelgebiet (SR)
    x4 DRAM adaptive Doppelbauelementdaten
    Korrektur (ADDDC) Multigebiet (MR), +1
    DRAM - Rank -Sparing Speicherkapazität negativ beeinflusst
    DRAM-Multi-Rank-Sparing
    DRAM-Speicherspiegelung
    DDR 4- Adress-/teilweise Spiegelung
    Einschalt- N ach-Paket-Reparatur (PPR) Systemzurückstellung benötigt
  • Wie in Tabelle 1 veranschaulicht, wenn ein DRAM-Hardwareausfall auftritt (z.B. Detektieren und Korrigieren durch ECC, außer dass nichtkorrigierbare Fehler gespiegelt werden), können die folgenden Maßnahmen getroffen werden, um das Problem zu lösen: 1) Ersetzen des Doppeleingangsspeichermoduls (DIMM, Dual In-line Memory Module) mit Ausfall, das typischerweise Hardware- und Wartungskosten nach sich zieht; 2) SDDC/DDDC/ADC(SR)/ADDDC(MR) (z.B. wie in Tabelle 1 veranschaulicht), die typischerweise Auswirkung auf Arbeitsleistung aufweisen, weil Speicher im Lockstep-Modus arbeiten müssen; 3) Speicherspiegelung und Sparing, die typischerweise die Speicherkapazität verringern und folglich die Arbeitsleistung beeinflussen; oder 4) Einschalt-Nach-Paket-Reparatur, die typischerweise Systemverfügbarkeit beeinflusst.
  • In Zusammenfassung, andere Lösungen als Laufzeit-Nach-Paket-Reparatur resultieren für gewöhnlich in Hardware- und Wartungskosten und/oder nachteiligen Auswirkungen auf Systemarbeitsleistung. Im Gegensatz kann Reparatur von DRAM-Bauelementen zur Laufzeit mittels Laufzeit-Nach-Paket-Reparatur ohne Systemarbeitsleistungs- und Kapazitätsverlust, mit erhöhter Systemverfügbarkeit, erweiterter DIMM-Arbeitszeit und/oder Kostenersparnis durchgeführt werden.
  • 3 ist eine Veranschaulichung eines Beispiels einer Prozedur 300, um Laufzeit-Nach-Paket-Reparatur gemäß einer Ausführungsform umzusetzen. Wie veranschaulicht, kann die Prozedur 300 involvieren, dass der Laufzeit-DRAM-Ausfalldetektor 102 Hardwareausfälle in dem DRAM 104 detektiert. Wie hierin verwendet, kann sich der Ausdruck „Laufzeit“ auf Betriebe beziehen, die nach einem BIOS- (grundlegendes Eingabe/Ausgabe-System (Basis Input/Output System), z.B. Hochfahrprogramm) Start 302 und einer Übergabe an ein Betriebssystem 304, nachdem der BIOS-Start 302 vollständig abgeschlossen ist, stattfinden. Der Laufzeit-Nach-Paket-Reparaturhandler 106 kann die detektierten Hardwareausfälle in dynamischem Direktzugriffspeicher (DRAM) 104 korrigieren. In solch einem Beispiel führt der Laufzeit Nach-Paket-Reparaturhandler 106 solche Korrekturen durch, nachdem Einschaltstartbetriebe von BIOS-Start 302 abgeschlossen wurden. Im Gegensatz kann Nach-Paket-Reparatur oft während Einschaltbetrieben (wie unten in 4 veranschaulicht) entgegen während Laufzeitbetrieben (wie hier in 3 veranschaulicht) durchgeführt werden.
  • Zum Beispiel können manche der hierin beschriebenen Implementierungen die Nach-Paket-Reparaturprozeduren übernehmen, die von dem Joint Electron Device Engineering Council (JEDEC) definiert sind, um vorteilhafterweise eine Laufzeitreparatur von DRAM-Hardwarefehler zuzulassen. Zum Beispiel kann ausgefallene Reihenadressreparatur in DDR4 (Doppeldatenrate vier) Speicher als ein optionales Merkmal (z.B. oben in 2 veranschaulicht) zugelassen sein und eine Nach-Paket-Reparatur (PPR), die für Laufzeitbetriebe angepasst ist, eine Prozedur bereitstellen, um die ausgefallene Reihenadresse durch die elektrische Programmierung eines Elektrosicherungsschemas zu reparieren. Dementsprechend werden die Ausfallinformationen gesammelt und in der Laufzeit derart gespeichert, dass Reparatur des DRAM-Ausfalls in Laufzeit durchgeführt werden kann. Im Gegensatz kann der Nach-Paket-Reparatur-Ausfallhandhabungsmechanismus vom Einschalttyp aktuell nur bei Zurückstellung als eine Nach-Paket-Reparatur vom Einschalttyp verwendet werden.
  • 4 ist eine Veranschaulichung einer Prozedur 400, um Einschalt-Nach-Paket-Reparatur umzusetzen, die verglichen mit der hierin offenbarten Laufzeit-Nach-Paket-Reparatur eine andere Lösung ist. Wie veranschaulicht, involviert die Prozedur 400, dass Einschalt-Nach-Paket-Reparatur 404 (Einschalt-PPR) während Einschaltbetrieben durchgeführt wird, entgegen während Laufzeitbetrieben (wie oben in 3 veranschaulicht).
  • Zum Beispiel kann Einschalt-Nach-Paket-Reparatur 404 nur während der Einschaltselbsttest- (POST, Power-On Self-Test) Zeit während BIOS-Starts 402 aktivieren. Zum Beispiel bezieht sich Einschaltselbsttest (POST) auf eine Diagnosetestsequenz, die abgespielt wird, wenn eingeschaltet wird. Die Einschaltselbsttest- (POST) Diagnosetestsequenz wird von BIOS-Start 402 abgespielt (z.B. einem grundlegenden Eingang/Ausgang-System oder Hochfahrprogramm eines Computersystems), um zu ermitteln, ob die Computertastatur, der Direktzugriffspeicher, Datenträgerlaufwerke und andere Hardware korrekt arbeiten.
  • Nach der Einschalt-Nach-Paket-Reparatur 404 kann ein Rest von Start- 406 - betrieb durchgeführt werden, um den BIOS-Start 402 zu beenden, bevor Betriebe an Betriebssystem 408 übergeben werden. Nachdem Betriebe an ein Betriebssystem 408 übergeben sind, kann eine DRAM-Ausfalldetektion auf einem DRAM 412 während Laufzeit durchgeführt werden. Nutzung dieser detektierten Fehlerinformationen kann jedoch notwendigerweise eine Systemzurückstellung mit einem Neustart von BIOS-Start 402 benötigen, um die Betriebe der Einschalt-Nach-Paket-Reparatur 404 zu nutzen.
  • 5 ist ein Ablaufdiagramm eines Beispiels eines Verfahrens 500 zum Umsetzen von Laufzeitspeicherreparatur gemäß einer Ausführungsform. Wie veranschaulicht kann das Verfahren 500 in einem oder mehreren Modulen als ein Satz von Logikanweisungen implementiert sein, die in einem maschinen- oder computerlesbaren Datenspeichermedium gespeichert sind, wie Direktzugriffspeicher (RAM, Random Access Memory), Nur-Lese-Speicher (ROM, Read-Only Memory), programmierbarer ROM (PROM, Programmable Read Only Memory), Firmware, Flashspeicher usw. in konfigurierbarer Logik, wie zum Beispiel programmierbare Logikarrays (PLAs, Programmable Logic Arrays), feldprogrammierbare Gate-Arrays (FPGAs, Field Programmable Gate Arrays), komplexe programmierbare Logikbauelemente (CPLDs, Complex Programmable Logic Devices) in Logikhardware mit fixierter Funktionalität, die Schaltungstechnologie verwendet, wie zum Beispiel anwendungsspezifische integrierte Schaltung (ASIC, Application Specific Integrated Circuit), komplementäre Metalloxidhalbleiter- (CMOS, Complementary Metal Oxid Semiconductor) oder Transistor-Transistor-Logik- (TTL, Transistor-Transistor Logic) Technologie oder eine beliebige Kombination davon.
  • Zum Beispiel kann Computerprogrammcode, um in dem Verfahren 500 gezeigte Betriebe auszuführen, in eine beliebige Kombination von einer oder mehreren Programmiersprachen geschrieben sein, aufweisend eine objektorientierte Programmiersprache wie JAVA, SMALLTALK, C++ oder dergleichen, und herkömmliche prozedurale Programmiersprachen, wie die „C“ Programmiersprache oder ähnliche Programmiersprachen. Zusätzlich können Logikanweisungen Assemblieranweisungen, Anweisungssatzarchitektur (ISA, Instruction Set Architecture) Anweisungen, Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, zustandssetzende Daten, Konfigurationsdaten für integrierte Schaltkreise, Zustandsinformationen, die Elektronikschaltkreise personalisieren, und/oder andere strukturelle Komponenten die nativ für Hardware sind (z.B. Hostprozessor, zentrale Verarbeitungseinheit/CPU, Mikrosteuerung usw.), aufweisen.
  • Veranschaulichter Verarbeitungsblock 502 stellt Detektieren eines Speicherhardwareausfalls in einem dynamischen Zugriffsspeicher bereit. Zum Beispiel kann die Detektion des Speicherhardwareausfalls in einem dynamischen Direktzugriffspeicher Betriebe aufweisen, zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, und zu ermitteln, ob der Speicherfehler ein Hardwareausfall ist.
  • Veranschaulichter Verarbeitungsblock 504 stellt Durchführen von Laufzeit Nach-Paket-Reparatur in Antwort auf die Detektion von Speicherhardwareausfall bereit. Zum Beispiel kann die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe aufweisen, ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren anderen Adressen zu speichern, ausgefallene Reihendaten mittels Nach-Paket-Reparaturbetrieben zu reparieren und die korrigierten und gespeicherten ausgefallenen Reihendaten zu der reparierten fehlgeschlagenen Reihe zurückzubewegen. Zusätzliche und/oder alternative Details von Verfahren 500 sind unten in Bezug auf 6 beschrieben.
  • 6 ist ein ausführlicheres Ablaufdiagramm eines Beispiels eines Verfahrens 600 zum Reparieren von Laufzeitspeicher gemäß einer Ausführungsform. Wie veranschaulicht, kann das Verfahren 600 im Allgemeinen in Blöcke 502 und 504 von 2 eingegliedert sein, wie bereits besprochen. Genauer kann das Verfahren 600 in einem oder mehreren Modulen als ein Satz von Logikanweisungen implementiert sein, die in einem maschinen- oder computerlesbaren Datenspeichermedium gespeichert sind, wie RAM, ROM, PROM, Firmware, Flashspeicher usw., in konfigurierbarer Logik, wie zum Beispiel PLAs, FPGAs, CPLDs, in Logikhardware mit fixierter Funktionalität unter Verwendung von Schaltungstechnologie, wie zum Beispiel ASIC, CMOS oder TLL-Technologie oder eine beliebige Kombination davon.
  • Veranschaulichter Verarbeitungsblock 602 tritt in Antwort auf einen Rechensystemfehler in einen Fehlerhandhabungsmodus ein. Zum Beispiel kann die Detektion des Speicherhardwareausfalls in einem dynamischen Direktzugriffspeicher in Antwort auf einen Eintritt in den Handhabungsmodus durchgeführt werden. In einer Ausführungsform werden Rechensystemfehlerberichte von Fehlerhandhabung mittels Firmware-Systemverwaltungsunterbrechungen (SMI, System Management Interrupts) verarbeitet. In einem Beispiel werden solche Rechensystemfehlerberichte in einem verbesserte Maschinenprüfarchitektur zweiter Generation (eMCA2, enhanced Machine Check Architecture Generation Two) Modus oder dergleichen verarbeitet.
  • Zum Beispiel ist Systemverwaltungsmodus (SMM, System Management Mode) ein Sonderzweckbetriebsmodus, der Handhabung systemweiter Funktionen wie Leistungsverwaltung, Systemhardwaresteuerung und dergleichen bereitstellt. Systemverwaltungsmodus kann von Systemfirmware, nicht von Anwendungssoftware oder Allzwecksystemsoftware, verwendet werden, um isolierte Prozessorumgebung zu erlauben, die für das Betriebssystem transparent arbeitet. In einer Ausführungsform erlegt SMM gewisse Regeln auf. Im Allgemeinen kann in den Systemverwaltungsmodus nur durch Systemverwaltungsunterbrechung (SMI) mittels Systemfirmware in einem separaten Adressraum, der für andere zentrale Verarbeitungseinheitsmodi unzugänglich ist, eingetreten werden, um Transparenz zu erzielen.
  • Bei veranschaulichtem Verarbeitungsblock 604 kann eine Prüfung durchgeführt werden, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist oder nicht. Zum Beispiel kann die Detektion des Speicherhardwareausfalls in einem dynamischen Direktzugriffspeicher weiter Betriebe aufweisen, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist.
  • Veranschaulichter Verarbeitungsblock 606 handhabt andere Komponentenfehler. Zum Beispiel kann Korrektur des Rechensystemfehlers durchgeführt werden, während die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler kein Speicherfehler ist, umgangen wird.
  • Veranschaulichter Verarbeitungsblock 608 fährt mit Verarbeitung zurück zu dem Betriebssystem fort, sobald die Fehlerhandhabung erledigt ist. Zum Beispiel kann Verarbeitung zu Verarbeitungsblock von einem beliebigen der Verarbeitungsblöcke 606, 614 und/oder 620 fortfahren.
  • Veranschaulichter Verarbeitungsblock 610 ruft einen Laufzeitsoftwarehandler auf. Zum Beispiel kann ein Laufzeitsoftwarehandler in Antwort auf eine Ermittlung aufgerufen werden, dass es einen Speicherfehler gegeben hat. Der Laufzeitsoftwarehandler kann Betriebe mittels Systemverwaltungsunterbrechungen (SMI) aufweisen.
  • Veranschaulichter Verarbeitungsblock 612 ermittelt, ob ein Speicherhardwareausfall aufgetreten ist. Zum Beispiel kann die Detektion des Speicherhardwareausfalls in einem dynamischen Direktzugriffspeicher weiter Betriebe aufweisen, die ermitteln, ob der Speicherfehler ein Hardwareausfall ist.
  • Veranschaulichter Verarbeitungsblock 614 korrigiert Daten, die dem Speicherfehler zugehörig sind. Zum Beispiel kann Korrektur des Rechensystemfehlers durchgeführt werden, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  • Veranschaulichter Verarbeitungsblock 616 korrigiert und speichert ausgefallene Reihendaten mittels des Laufzeitsoftwarehandlers zu anderen Adressen. Zum Beispiel kann solcher Betrieb als Teil der Durchführung der Laufzeit-Nach-Paket-Reparatur durchgeführt werden. Wie veranschaulicht, kann die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung dass der Speicherfehler ein Hardwareausfall ist, durchgeführt werden.
  • Veranschaulichter Verarbeitungsblock 618 repariert ausgefallene Reihen mittels des Laufzeitsoftwarehandlers, indem eine Form von Nach-Paket-Reparatur implementiert wird. Zum Beispiel kann solcher Betrieb als Teil der Durchführung der Laufzeit-Nach-Paket-Reparatur durchgeführt werden.
  • Veranschaulichter Verarbeitungsblock 620 bewegt die korrigierten Daten mittels des Laufzeitsoftwarehandlers zurück zu der reparierten Reihe. Zum Beispiel kann solcher Betrieb als Teil der Durchführung der Laufzeit-Nach-Paket-Reparatur durchgeführt werden.
  • In Betrieb kann Laufzeit-Nach-Paket-Reparatur eine Reihe pro Bankgruppe eines Speicherbauelements korrigieren. Solche Laufzeit-Nach-Paket-Reparatur kann ein einfaches und leichtes Reparaturverfahren in dem Computersystem bereitstellen, wo ausgefallene Reihenadressen durch die elektrische Programmierung eines Elektrosicherungsschemas repariert werden können. Solche Laufzeit-Nach-Paket-Reparatur kann manche derselben und/oder ähnliche Betriebe wie die unter Bezug auf DDR JEDEC Solid State Technologie Association Spezifikation beschriebenen aufweisen.
  • Nun hin zu 7 ist ein Rechensystem 700 gezeigt. Das Rechensystem 700 kann im Allgemeinen Teil eines/einer elektronischen Bauelements/Plattform sein, das/die Rechenfunktionalität aufweist (z.B. persönlicher digitaler Assistent/PDA, Notebookcomputer, Tabletcomputer, Convertible Tablet, Server), Kommunikationsfunktionalität (z.B. Smartphone), Abbildungsfunktionalität (z.B. Kamera, Camcorder), Medienabspielfunktionalität (z.B. smarter Fernseher/TV), tragbare Funktionalität (z.B. Uhr, Brille, Kopfbekleidung, Schuhe, Schmuck), Fahrzeugfunktionalität (z.B. Auto, Lastkraftwagen, Motorrad), Spielfunktionalität (z.B. vernetzte Mehrspielerkonsole) usw. oder eine beliebige Kombination davon. In dem veranschaulichten Beispiel weist das System 700 einen Multikernprozessor 702 (z.B. Hostprozessor(en), zentrale Recheneinheit(en)/CPU(s)) auf, die eine integrierte Speichersteuerung (IMC, Integrated Memory Controller) 704 aufweisen, die mit einem Systemspeicher 706 gekoppelt ist. Der Multikernprozessor 702 kann mehrere Prozessorkerne P0-P7 aufweisen.
  • Das veranschaulichte System 700 weist auch ein Eingang/Ausgang- (IO) Modul 708 auf, das gemeinsam mit dem Multikernprozessor 702 und einem Grafikprozessor 710 auf einem Halbleiter-Die 772 als ein System-auf-einem-Chip (SoC, System-on-Chip) implementiert ist. Das veranschaulichte IO-Modul 708 kommuniziert zum Beispiel mit einer Anzeige 714 (z.B. Berührungsbildschirm, Flüssigkristallanzeige/LCD, Leuchtdioden-/LED-Anzeige), eine Netzwerksteuerung 716 (z.B. kabelgebunden und/oder drahtlos) und Massendatenspeicher 718 (z.B. Festplatte/HDD, optischer Datenträger, Festzustandslaufwerk/SSD, Flashspeicher).
  • Der Multikernprozessor 702 kann Logik 720 (z.B. Logikanweisungen, konfigurierbare Logik, Hardwarelogik mit fixierter Funktionalität usw., oder eine beliebige Kombination davon) aufweisen, um einen oder mehrere Aspekte des Verfahrens 500 (5) und/oder des Verfahrens 600 (6) durchzuführen, die bereits besprochen wurden. Obwohl die veranschaulichte Logik 720 innerhalb des Multikernprozessors 702 liegt, kann die Logik 720 anderswo in dem Rechensystem 700 liegen.
  • 8 zeigt eine Halbleiterpaketvorrichtung 800. Die veranschaulichte Vorrichtung 800 weist ein oder mehrere Substrate 804 (z.B. Silizium, Saphir, Galliumarsenid) und Logik 802 (z.B. Transistorarray und andere integrierte Schaltungs-/IC-Komponenten) mit dem (den) Substrat(en) 804 gekoppelt auf. Die Logik 802 kann mindestens teilweise in konfigurierbarer Logik oder Logikhardware mit fixierter Funktionalität implementiert sein.
  • In einem Beispiel implementiert die Logik 802 einen oder mehrere Aspekte des Verfahrens 500 (5) und/oder des Verfahrens 600 (6) und kann bereits für die Logik 720 (7) ersetzt werden, die bereits besprochen wurde. Daher kann die Logik 802 einen Thread identifizieren und einen Kern aus den mehreren Prozessorkernen in Antwort darauf, dass der ausgewählte Kern verfügbar ist, während er eine am wenigsten verwendete Bedingung in Bezug auf mehrere Prozessorkerne erfüllt, auswählen. Die Logik 802 kann auch den Thread einplanen, auf dem ausgewählten Kern ausgeführt zu werden. In einem Beispiel verfolgt die Logik 802 aktive Zeit für die mehreren Prozessorkerne und sortiert die mehreren Prozessorkerne auf Basis aktiver Zeit. In einem Beispiel weist die Logik 802 Transistorkanalgebiete auf, die innerhalb des (der) Substrats (Substrate) 804 positioniert (z.B. eingebettet) sind. Daher kann die Schnittstelle zwischen der Logik 802 und dem (den) Substrat(en) 804 kein abrupter Übergang sein. Die Logik 802 kann auch so betrachtet werden, dass sie eine epitaktische Schicht aufweist, die auf einem Anfangswafer des (der) Substrats (Substrate) 804 gezüchtet wird.
  • 9 veranschaulicht einen Prozessorkern 900 gemäß einer Ausführungsform. Der Prozessorkern 90 kann der Kern für einen beliebigen Typ von Prozessor sein, wie einen Mikroprozessor, einen eingebetteten Prozessor, einen Digitalsignalprozessor (DSP, Digital Signal Processor), einen Netzwerkprozessor oder ein anderes Bauelement, um Code auszuführen. Obwohl nur ein Prozessorkern 900 in 9 veranschaulicht ist, kann ein Verarbeitungselement alternativ mehr als einen des in 9 veranschaulichten Prozessorkerns 900 aufweisen. Der Prozessorkern 900 kann ein Einzelthread-Kern sein oder für mindestens eine Ausführungsform kann der Prozessorkern 900 multigethreadet sein, indem er mehr als einen Hardware-Thread-Kontext (oder „logischen Prozessor“) pro Kern aufweist.
  • 9 veranschaulicht auch einen Speicher 970, der mit dem Prozessorkern 900 gekoppelt ist. Der Speicher 970 kann ein beliebiger einer breiten Vielfalt von Speichern (verschiedene Schichten von Speicherhierarchie aufweisen) sein, wie sie bekannt oder sonst für Fachkundige verfügbar sind. Der Speicher 970 kann eine oder mehrere Code-913 Anweisung(en) aufweisen, die von dem Prozessorkern 900 auszuführen sind, wobei der Code 913 einen oder mehrere Aspekte des Verfahrens 500 (5) und/oder des Verfahrens 600 (6) implementieren kann, die bereits besprochen wurden. Der Prozessorkern 900 folgt einer Programmsequenz von Anweisungen, die von dem Code 913 angegeben sind. Jede Anweisung kann in einen Frontendabschnitt 910 eintreten und von einem oder mehreren Decodern 920 verarbeitet werden. Der Decoder 920 kann als seinen Ausgang einen Mikrobetrieb erzeugen, wie einen Mikrobetrieb mit fixierter Breite in einem vordefinierten Format, oder kann andere Anweisungen, Mikroanweisungen oder Steuersignale erzeugen, die die ursprüngliche Codeanweisung widerspiegeln. Der veranschaulichte Frontendabschnitt 910 weist auch Registerumbenennungslogik 925 und Planungslogik 930 auf, die im Allgemeinen Ressourcen zuweisen und den Betrieb entsprechend der umgewandelten Anweisung zur Ausführung reihen.
  • Der Prozessorkern 900 ist gezeigt, Ausführungslogik 950 aufzuweisen, die einen Satz von Ausführungseinheiten 955–1 bis 955-N aufweist. Manche Ausführungsformen können eine Zahl von Ausführungseinheiten aufweisen, die dediziert für spezifische Funktionen oder Sätze von Funktionen sind. Andere Ausführungsformen können nur eine Ausführungseinheit oder eine Ausführungseinheit, die eine bestimmte Funktion durchführen kann, aufweisen. Die veranschaulichte Ausführungslogik 950 führt die Betriebe durch, die von Codeanweisungen spezifiziert sind.
  • Nach Abschluss von Ausführung der Betriebe, die von den Codeanweisungen spezifiziert sind, setzt Backendlogik 960 die Anweisungen des Codes 913 zur Ruhe. In einer Ausführungsform erlaubt der Prozessorkern 900 Ausführung aus der Reihe, benötigt aber Ruhigstellung von Anweisungen in Reihenfolge. Ruhigstellungslogik 965 kann eine Vielfalt von Formen annehmen, wie sie Fachkundigen bekannt sind (z.B. Neuordnungspuffer oder dergleichen). Auf diese Weise wird der Prozessorkern 900 während Ausführung des Codes 913 transformiert, zumindest im Sinne des von dem Decoder erzeugten Ausgangs, der Hardwareregister und Tabellen, die von der Registerumbenennungslogik 925 genutzt werden, und beliebiger Register (nicht gezeigt), die von der Ausführungslogik 950 modifiziert werden.
  • Obwohl nicht in 9 veranschaulicht, kann ein Verarbeitungselement andere Elemente auf dem Chip mit dem Prozessorkern 900 aufweisen. Zum Beispiel kann ein Verarbeitungselement Speichersteuerlogik gemeinsam mit dem Prozessorkern 900 aufweisen. Das Verarbeitungselement kann I/O-Steuerlogik aufweisen und/oder kann I/O-Steuerlogik mit Speichersteuerlogik integriert aufweisen. Das Verarbeitungselement kann auch einen oder mehrere Zwischenspeicher aufweisen.
  • Nun in Bezug auf 10 ist ein Blockdiagramm einer Ausführungsform von Rechensystem 1000 gemäß einer Ausführungsform gezeigt. In 10 ist ein Multiprozessorsystem 1000 gezeigt, das ein erstes Verarbeitungselement 1070 und ein zweites Verarbeitungselement 1080 aufweist. Während zwei Verarbeitungselemente 1070 und 1080 gezeigt sind, ist zu verstehen, dass eine Ausführungsform des Systems 1000 auch nur ein solches Verarbeitungselement aufweisen kann.
  • Das System 1000 ist als ein Punkt-zu-Punkt Zwischenverbindungssystem veranschaulicht, wobei das erste Verarbeitungselement 1070 und das zweite Verarbeitungselement 1080 über eine Punkt-zu-Punkt-Zwischenverbindung 1050 gekoppelt sind. Es sollte verstanden werden, dass beliebige oder alle der in 10 veranschaulichten Zwischenverbindungen als ein Multidrop-Bus anstatt als Punkt-zu-Punkt-Zwischenverbindung implementiert werden können.
  • Wie in 10 gezeigt, können sowohl Verarbeitungselement 1070 als auch 1080 Multikernprozessoren sein, die erste und zweite Prozessorkerne (d.h. Prozessorkerne 1074a und 1074b und Prozessorkerne 1084a und 1084b) aufweisen. Solche Kerne 1074a, 1074b, 1084a, 1084b können konfiguriert sein, Anweisungscode auf eine Weise ähnlich der oben in Verbindung mit 9 beschriebenen auszuführen.
  • Jedes Verarbeitungselement 1070, 1080 kann mindestens einen geteilten Zwischenspeicher 1896a, 1896b aufweisen. Der geteilte Zwischenspeicher 1896a, 1896b kann Daten (z.B. Anweisungen) speichern, die von einer oder mehreren Komponenten des Prozessors genutzt werden, wie den Kernen 1074a, 1074b beziehungsweise 1084a, 1084b. Zum Beispiel kann der geteilte Zwischenspeicher 1896a, 1896b lokal Daten, die in einem Speicher 1032, 1034 gespeichert sind, für schnelleren Zugriff durch Komponenten des Prozessors zwischenspeichern. In einer oder mehreren Ausführungsformen kann der geteilte Zwischenspeicher 1896a, 1896b einen oder mehrere Mittellevel-Zwischenspeicher, wie Level 2 (L2), Level 3 (L3), Level 4 (L4) oder andere Level von Zwischenspeicher, einen Letztes-Level-Zwischenspeicher (LLC, Last Level Cache) und/oder Kombinationen davon aufweisen.
  • Während mit nur zwei Verarbeitungselementen 1070, 1080 gezeigt, ist zu verstehen, dass der Umfang der Ausführungsformen dahin nicht begrenzt ist. In anderen Ausführungsformen können ein oder mehrere zusätzliche Verarbeitungselemente in einem gegebenen Prozessor vorliegen. Alternativ können ein oder mehrere Verarbeitungselemente 1070, 1080 ein anderes Element als ein Prozessor sein, wie ein Beschleuniger oder ein feldprogrammierbares Gate-Array. Zum Beispiel kann (können) zusätzliche(s) Verarbeitungselement(e) zusätzliche(n) Prozessor(en), die dieselben wie ein erster Prozessor 1070 sind, zusätzliche(n) Prozessor(en), die heterogen oder asymmetrisch zum Prozessor eines ersten Prozessors 1070 sind, Beschleuniger (wie z.B. Grafikbeschleuniger oder Digitalsignalverarbeitungs- (DSP, Digital Signal Processing) Einheiten), feldprogrammierbare Gate-Arrays oder ein beliebiges anderes Verarbeitungselement aufweisen. Es kann eine Vielfalt von Unterschieden zwischen den Verarbeitungselementen 1070, 1080 im Sinne eines Spektrums von Gütemetrik geben, aufweisend architekturelle, mikroarchitektonische, thermische, Leistungsverbrauchseigenschaften und dergleichen. Diese Unterschiede können sich als Asymmetrie und Heterogenität unter den Verarbeitungselementen 1070, 1080 manifestieren. Für mindestens eine Ausführungsform können die verschiedenen Verarbeitungselemente 1070, 1080 in demselben Die-Paket liegen.
  • Das erste Verarbeitungselement 1070 kann weiter Speichersteuerlogik (MC, Memory Controller logic) 1072 und Punkt-zu-Punkt- (P-P) Schnittstellen 1076 und 1078 aufweisen. Ähnlich kann das zweite Verarbeitungselement 1080 eine MC 1082 und P-P-Schnittstellen 1086 und 1088 aufweisen. Wie in 10 gezeigt, koppeln die MCs 1072 und 1082 die Prozessoren mit jeweiligen Speichern, nämlich einem Speicher 1032 und einem Speicher 1034, die Abschnitte von Hauptspeicher sein können, die lokal an den jeweiligen Prozessoren angebracht sind. Während die MC 1072 und 1082 veranschaulicht sind, in die Verarbeitungselemente 1070, 1080 integriert zu sein, kann für alternative Ausführungsformen die MC-Logik diskrete Logik außerhalb der Verarbeitungselemente 1070, 1080 sein, anstatt darin integriert zu sein.
  • Das erste Verarbeitungselement 1070 und das zweite Verarbeitungselement 1080 können mit einem I/O-Subsystem 1090 mittels P-P-Zwischenverbindungen 1076 beziehungsweise 1086 gekoppelt sein. Wie in 10 gezeigt, weist das I/O-Subsystem 1090 P-P-Schnittstellen 1094 und 1098 auf. Darüber hinaus weist I/O-Subsystem 1090 eine Schnittstelle 1092 auf, um I/O-Subsystem 1090 mit einer Hochleistungsgrafikengine 1038 zu koppeln. In einer Ausführungsform kann Bus 1049 verwendet werden, um die Grafikengine 1038 mit dem I/O-Subsystem 1090 zu koppeln. Alternativ kann eine Punkt-zu-Punkt-Zwischenverbindung diese Komponenten koppeln.
  • I/O-Subsystem 1090 kann wiederum mit einem ersten Bus 1016 mittels einer Schnittstelle 1096 gekoppelt sein. In einer Ausführungsform kann der erste Bus 1016 ein Peripheral Component Interconnect- (PCI) Bus oder ein Bus wie ein PCI Express-Bus oder ein anderer I/O-Zwischenverbindungsbus dritter Generation sein, obwohl der Umfang der Ausführungsformen dahin nicht begrenzt ist.
  • Wie in 10 gezeigt, können verschiedene I/O-Bauelemente 1014 (z.B. biometrische Scanner, Lautsprecher, Kameras, Sensoren) mit dem ersten Bus 1016 gemeinsam mit einer Busbrücke 1018, die den ersten Bus 1016 mit einem zweiten Bus 1020 koppeln kann, gekoppelt sein. In einer Ausführungsform kann der zweite Bus 1020 ein Low Pin Count- (LPC) Bus sein. Verschiedene Bauelemente können in einer Ausführungsform mit dem zweiten Bus 1020 gekoppelt sein, aufweisend zum Beispiel eine Tastatur/Maus 1012, Kommunikationsbauelement(e) 1026 und eine Datenspeichereinheit 1019, wie ein Datenträgerlaufwerk oder ein anderes Massendatenspeicherbauelement, das Code 1030 aufweisen kann.
  • Der veranschaulichte Code 1030 kann einen oder mehrere Aspekte des Verfahrens 500 (5) und/oder des Verfahrens 600 (6) implementieren, die bereits besprochen wurden. Weiter kann ein Audio-I/O 1024 mit zweitem Bus 1020 gekoppelt sein und eine Batterie 1010 kann Strom an das Rechensystem 1000 versorgen.
  • Es ist zu beachten, dass andere Ausführungsformen berücksichtigt sind. Zum Beispiel kann anstelle der Punkt-zu-Punkt-Architektur von 10 ein System einen Multidrop-Bus oder eine andere solche Kommunikationstechnologie implementieren. Außerdem können die Elemente von 10 alternativ unter Verwendung mehr oder weniger integrierter Chips als in 10 gezeigt, unterteilt sein.
  • Zusätzliche Anmerkungen und Beispiele:
  • Beispiel 1 weist ein Rechensystem für Laufzeitspeicherreparatur auf, wobei das Rechensystem einen oder mehrere Prozessoren und einen Massendatenspeicher, der mit dem einen oder den mehreren Prozessoren gekoppelt ist, aufweist, wobei der Massendatenspeicher ausführbare Programmanweisungen aufweist, die, wenn von dem Hostprozessor ausgeführt, das Rechensystem veranlassen, einen Speicherhardwareausfall in einem Speicher zu detektieren und eine Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Speicherhardwareausfall in dem Speicher durchzuführen, wo die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  • Beispiel 2 weist das Rechensystem von Beispiel 1 auf, wo die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen, in Antwort auf einen Rechensystemfehler in einen Fehlerhandhabungsmodus einzutreten, und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  • Beispiel 3 weist das Rechensystem von Beispiel 1 auf, wo die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe aufweist, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwareausfall ist, und wo die Arbeitsleistung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird.
  • Beispiel 4 weist das Rechensystem von Beispiel 1 auf, wo die Arbeitsleistung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe aufweist, um ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren anderen Adressen zu speichern, ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren und die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen.
  • Beispiel 5 weist das Rechensystem von Beispiel 1 auf, wo die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen, in Antwort auf einen Rechensystemfehler in einen Fehlerhandhabungsmodus einzutreten, wo der Speicher ein dynamischer Direktzugriffspeicher ist und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird. Die Detektion des Speicherhardwareausfalls in dem Speicher weist weiter Betriebe auf, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwarefehler ist und wo die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird. Die Durchführung der Laufzeit-Nach-Paket-Reparatur weist weiter Betriebe auf, um ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren anderen Adressen zu speichern, eine ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren, die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen, den Rechensystemfehler zu korrigieren und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung zu umgehen, dass der Rechensystemfehler kein Speicherfehler ist, und den Rechensystemfehler zu korrigieren, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  • Beispiel 6 weist eine Halbleitervorrichtung für Laufzeitspeicherreparatur auf, wobei die Halbleitervorrichtung ein oder mehrere Substrate aufweist, und Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist. Die Logik ist mindestens teilweise in eine oder mehrere von konfigurierbarer Logik oder Hardwarelogik mit fixierter Funktionalität integriert, wobei die Logik mit dem einen oder den mehreren Substraten gekoppelt ist, um einen Speicherhardwareausfall in einem Speicher zu detektieren, und eine Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Speicherhardwareausfall in dem Speicher durchzuführen, wo die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  • Beispiel 7 weist die Halbleitervorrichtung von Anspruch 6 auf, wo die Logik, die mit dem einen oder mehreren Substraten gekoppelt ist, dazu dient, in Antwort auf einen Rechensystemfehler in einen Fehlerhandhabungsmodus einzutreten, und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  • Beispiel 8 weist die Halbleitervorrichtung von Anspruch 6 auf, wo die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe aufweist, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwarefehler ist und wo die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird.
  • Beispiel 9 weist die Halbleitervorrichtung von Anspruch 6 auf, wo die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe aufweist, um ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren anderen Adressen zu speichern, eine ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren und die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen.
  • Beispiel 10 weist die Halbleitervorrichtung nach Anspruch 6 auf, wo die Logik, die mit einem oder mehreren Substraten gekoppelt ist, in Antwort auf einen Rechensystemfehler in einen Fehlerhandhabungsmodus eintritt, wo der Speicher ein dynamischer Direktzugriffspeicher ist und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird. Die Detektion des Speicherhardwareausfalls in dem Speicher weist weiter Betriebe auf, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwareausfall ist und wo die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird. Die Durchführung der Laufzeit-Nach-Paket-Reparatur weist weiter Betriebe auf, um ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren anderen Adressen zu speichern, eine ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren, die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen, den Rechensystemfehler zu korrigieren und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung zu umgehen, dass der Rechensystemfehler kein Speicherfehler ist, und den Rechensystemfehler zu korrigieren, indem der Speicherfehle korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  • Beispiel 11 weist die Halbleitervorrichtung von Anspruch 6 auf, wo die Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist, Transistorkanalgebiete aufweist, die innerhalb des einen oder der mehreren Substrate positioniert sind.
  • Beispiel 12 weist das mindestens eine computerlesbare Datenspeichermedium auf, das einen Satz von ausführbaren Programmanweisungen aufweist, die, wenn von einem Rechensystem ausgeführt, das Rechensystem veranlassen, einen Speicherhardwareausfall in einem Speicher zu detektieren und eine Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Speicherhardwareausfall in dem Speicher durchzuführen, wo die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  • Beispiel 12 weist das mindestens eine computerlesbare Datenspeichermedium von Beispiel 12 auf, wo die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen, in Antwort auf einen Rechensystemfehler in einen Fehlerhandhabungsmodus einzutreten, und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  • Beispiel 14 weist das mindestens eine computerlesbare Datenspeichermedium von Beispiel 12 auf, wo die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe aufweist, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwareausfall ist, und wo die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird.
  • Beispiel 15 weist das mindestens eine computerlesbare Datenspeichermedium von Beispiel 12 auf, wo die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe aufweist, um ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren Adressen zu speichern, eine ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren und die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen.
  • Beispiel 16 weist das mindestens eine computerlesbare Speichermedium von Beispiel 12 auf, wo die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen, in Antwort auf einen Rechensystemfehler in einen Fehlerhandhabungsmodus einzutreten, wo der Speicher ein dynamischer Direktzugriffspeicher ist und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird. Die Detektion des Speicherhardwareausfalls in dem Speicher weist weiter Betriebe auf, um zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwareausfall ist, und wo die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird. Die Durchführung der Laufzeit-Nach-Paket-Reparatur weist weiter Betriebe auf, um ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren anderen Adressen zu speichern, eine ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren, die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen, den Rechensystemfehler zu korrigieren und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung zu umgehen, dass der Rechensystemfehler kein Speicherfehler ist, und den Rechensystemfehler zu korrigieren, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  • Beispiel 17 weist ein Verfahren zum Reparieren von Laufzeitspeicher auf, umfassend Detektieren eines Speicherhardwareausfalls in einem Speicher und Durchführen einer Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Hardwareausfall in dem Speicher, wo die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  • Beispiel 18 weist das Verfahren von Anspruch 17 auf, weiter aufweisend in Antwort auf einen Rechensystemfehler Eintreten in einen Fehlerhandhabungsmodus, und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  • Beispiel 19 weist das Verfahren von Anspruch 17 auf, wo die Detektion des Speicherhardwareausfalls indem Speicher weiter aufweist zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwareausfall ist, und wo die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird.
  • Beispiel 20 weist das Verfahren von Anspruch 17 auf, wo die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter aufweist, ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren Adressen zu speichern, eine ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren und die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen.
  • Beispiel 21 weist das Verfahren von Anspruch 17 auf, weiter aufweisend in Antwort auf einen Rechensystemfehler Eintreten in einen Fehlerhandhabungsmodus, wo der Speicher ein dynamischer Direktzugriffspeicher ist, und wo die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird. Die Detektion des Speicherhardwareausfalls in dem Speicher weist weiter auf zu ermitteln, ob der Rechensystemfehler ein Speicherfehler ist, zu ermitteln, ob der Speicherfehler ein Hardwareausfall ist, und wo die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird. Die Durchführung der Laufzeit-Nach-Paket-Reparatur weist weiter auf, ausgefallene Reihendaten zu korrigieren und zu einer oder mehreren anderen Adressen zu speichern, eine ausgefallene Reihe mittels Nach-Paket-Reparaturbetrieben zu reparieren, die korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe zu bewegen, den Rechensystemfehler zu korrigieren und die Durchführung des Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung zu umgehen, dass der Rechensystemfehler kein Speicherfehler ist, und den Rechensystemfehler zu korrigieren, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  • Beispiel 22 weist Mittel zum Durchführen eines Verfahrens, wie in einem beliebigen vorstehenden Beispiel beschrieben, auf.
  • Beispiel 23 weist maschinenlesbaren Datenspeicher auf, der maschinenlesbare Anweisungen aufweist, die, wenn ausgeführt, ein Verfahren implementieren oder eine Vorrichtung realisieren, wie in einem beliebigen vorstehenden Beispiel beschrieben.
  • Verschiedene Ausführungsformen können unter Verwendung von Hardwareelementen, Softwareelementen oder einer Kombination von beidem implementiert werden. Beispiele von Hardwareelementen können Prozessoren, Mikroprozessoren, Schaltungen, Schaltungselemente (z.B. Transistoren, Widerstände, Kondensatoren, Induktoren und so weiter), integrierte Schaltungen, anwendungsspezifische integrierte Schaltungen (ASIC), programmierbare Logikbauelemente (PLD), Digitalsignalprozessoren (DSP), feldprogrammierbares Gate-Array (FPGA), Logikgates, Register, Halbleiterbauelement, Chips, Mikrochips, Chipsätze und so weiter aufweisen. Beispiele von Software können Softwarekomponenten, Programme, Anwendungen, Computerprogramme, Anwendungsprogramme, Systemprogramme, Maschinenprogramme, Betriebssystemsoftware, Middleware, Firmware, Softwaremodule, Routinen, Subroutinen, Funktionen, Verfahren, Prozeduren, Softwareschnittstellen, Anwendungsprogrammschnittstellen (API, Application Programm Interfaces), Anweisungssätze, Rechencode, Computercode, Codesegmente, Computercodesegmente, Wörter, Werte, Symbole oder eine beliebige Kombination davon aufweisen. Zu ermitteln, ob eine Ausführungsform unter Verwendung von Hardwareelementen und/oder Softwareelementen implementiert ist, kann in Übereinstimmung mit einer Zahl von Faktoren variieren, wie gewünschter Rechenrate, Strompegeln, Hitzetoleranzen, Verarbeitungszyklusbudget, Eingangsdatenraten, Ausgangsdatenraten, Speicherressourcen, Datenbusgeschwindigkeiten und anderen Design- oder Arbeitsleistungseinschränkungen.
  • Ein oder mehrere Aspekte von mindestens einer Ausführungsform können durch jeweilige Anweisungen implementiert sein, die auf einem maschinenlesbaren Medium gespeichert sind, das verschiedene Logik innerhalb des Prozessors darstellt, die, wenn von einer Maschine gelesen, die Maschine veranlassen, Logik herzustellen, um die hierin beschriebenen Techniken durchzuführen. Solche Darstellungen, als „IP-Kerne“ bekannt, können auf einem greifbaren, maschinenlesbaren Medium gespeichert werden und an verschiedene Kunden oder Fertigungseinrichtungen zur Verfügung gestellt werden, um sie in die Herstellungsmaschinen zu laden, die tatsächlich die Logik oder den Prozessor bilden.
  • Manche Ausführungsformen können zum Beispiel unter Verwendung einer Maschine oder eines greifbaren computerlesbaren Mediums oder Artikels, das oder der eine Anweisung oder einen Satz von Anweisungen speichern kann, der die oder der, falls von einer Maschine ausgeführt, die Maschine veranlassen kann, ein Verfahren und/oder Betriebe in Übereinstimmung mit den Ausführungsformen durchzuführen, implementiert sein. Solch eine Maschine kann zum Beispiel eine beliebige geeignete Verarbeitungsplattform, Rechenplattform, ein Rechenbauelement, Verarbeitungsbauelement, Rechensystem, Verarbeitungssystem, einen Computer, Prozessor, oder dergleichen aufweisen und kann unter Verwendung einer beliebigen geeigneten Kombination von Hardware und/oder Software implementiert sein. Das maschinenlesbare Medium oder der Artikel kann zum Beispiel einen beliebigen geeigneten Typ von Speichereinheit, Speicherbauelement, Speicherartikel, Speichermedium, Datenspeicherbauelement, Datenspeicherartikel, Datenspeichermedium und/oder Datenspeichereinheit, zum Beispiel Speicher, entfernbare oder nichtentfernbare Medien, löschbare oder nichtlöschbare Medien, beschreibbare oder wiederbeschreibbare Medien, digitale oder analoge Medien, Festplatte, Diskette, Compact Disk Read Only Memory (CD-ROM), Compact Disk Recordable (CD-R), Compact Disk Rewriteable (CD-RW), optischen Datenträger, magnetische Medien, magneto-optische Medien, entfernbare Speicherkarten oder Datenträger, verschiedene Typen von Digital Versatile Disk (DVD), ein Band, eine Kassette oder dergleichen aufweisen. Die Anweisungen können einen beliebigen geeigneten Typ von Code aufweisen, wie Quellcode, kompilierten Code, interpretierten Code, ausführbaren Code, statischen Code, dynamischen Code, verschlüsselten Code und dergleichen, der unter Verwendung einer geeigneten Hoch-, Nieder-, objektorientierten, visuellen, kompilierten und/oder interpretierten Programmiersprache implementiert ist.
  • Ausführungsformen sind zur Verwendung mit allen Typen von Halbleiterintegrierten-Schaltungs- („IC“) Chips anwendbar. Beispiele diese IC-Chips weisen auf, sind aber nicht begrenzt auf, Prozessoren, Steuerungen, Chipsatzkomponenten, programmierbare Logikarrays (PLAs), Speicherchips, Netzwerkchips, Systeme-auf-einem-Chip (SoCs), SSD/NAND-Steuer-ASICs und dergleichen. Zusätzlich sind in manchen der Zeichnungen Signalleiterleitungen mit Linien dargestellt. Manche können sich unterscheiden, um grundlegendere Signalpfade anzugeben, ein Nummernetikett aufweisen, um eine Zahl von grundlegenden Signalpfaden anzugeben und/oder Pfeile an einem oder mehreren Enden aufweisen, um primäre Informationsflussrichtung anzugeben. Dies sollte jedoch nicht auf eine begrenzende Weise ausgelegt werden. Eher kann solch ein hinzugefügtes Detail in Verbindung mit einer oder mehreren beispielhaften Ausführungsformen verwendet werden, um einfacheres Verständnis einer Schaltung zu erleichtern. Beliebige dargestellte Signalleitungen, egal ob sie zusätzliche Informationen aufweisen oder nicht, können tatsächlich ein oder mehrere Signale aufweisen, die sich in mehreren Richtungen bewegen, und können mit einem beliebigen geeigneten Typ von Signalschema implementiert sein, z.B. digitale oder analoge Leitungen, die mit unterschiedlichen Paaren implementiert sind, optische Faserleitungen und/oder einzelendige Leitungen.
  • Beispielhafte Größen/Modelle/Werte/Spannen wurden vielleicht angegeben, obwohl Ausführungsformen nicht auf diese begrenzt sind. Da Fertigungstechniken (z.B. Fotolithografie) im Laufe der Zeit ausreifen, wird erwartet, dass Bauelemente kleinerer Größe gefertigt werden könnten. Zusätzlich können allgemein bekannte Strom/Masse-Verbindungen mit IC-Chips und anderen Komponenten innerhalb der Figuren zur Vereinfachung der Veranschaulichung und Besprechung und um gewisse Aspekte der Ausführungsformen nicht zu verschleiern, gezeigt sein oder auch nicht. Weiter können Anordnungen in Blockdiagrammform gezeigt sein, um zu vermeiden, Ausführungsformen zu verschleiern, und auch in Anbetracht der Tatsache, dass Einzelheiten in Bezug auf Implementierung solcher Blockdiagrammanordnungen stark von dem Rechensystem innerhalb dessen die Ausführungsform zu implementieren ist, abhängig sind, d.h. solche Einzelheiten sollten sehr wohl innerhalb des Wirkungsbereichs eines Fachkundigen sein. Wo spezifische Details (z.B. Schaltungen) vorgebracht sind, um Beispielausführungsformen zu beschreiben, sollte es für einen Fachkundigen ersichtlich sein, dass Ausführungsformen ohne diese spezifischen Details, oder mit Variation davon, ausgeübt werden können. Die Beschreibung ist daher als veranschaulichend, statt begrenzend anzusehen.
  • Der Ausdruck „gekoppelt“ kann hierin verwendet werden, um sich auf einen beliebigen Typ von Beziehung, direkt oder indirekt, zwischen den fraglichen Komponenten zu beziehen, und kann auf elektrische, mechanische, strömungstechnische, optische, elektromagnetische, elektromechanische oder andere Verbindungen zutreffen. Zusätzlich können die Ausdrücke „erstes“, „zweites“ usw. hierin verwendet werden, nur um die Besprechung zu erleichtern, und sie besitzen keine bestimmte zeitliche oder chronologische Signifikanz, außer es wird anderes angegeben.
  • Wie in dieser Anmeldung und in den Ansprüchen verwendet, kann eine Liste von Gegenständen, die mit dem Ausdruck „ein oder mehrere von“ verbunden sind, eine beliebige Kombination der aufgelisteten Ausdrücke meinen. Zum Beispiel können die Phrasen „ein oder mehrere von A, B oder C“ A; B; C; A und B; A und C; B und C; oder A, B und C meinen.
  • Fachkundige werden anhand der vorangehenden Beschreibung begrüßen, dass die breiten Techniken der Ausführungsformen in einer Vielfalt von Formen implementiert werden können. Deshalb, während die Ausführungsformen in Verbindung mit bestimmten Beispielen davon beschrieben wurden, sollte der wahre Umfang der Ausführungsformen nicht dahin begrenzt sein, da andere Modifikationen für den Fachkundigen bei einer Studie der Zeichnungen, Beschreibung und der folgenden Ansprüche ersichtlich werden.

Claims (22)

  1. Rechensystem zur Laufzeitspeicherreparatur, wobei das Rechensystem umfasst: einen oder mehrere Prozessoren; und einen Massendatenspeicher, der mit dem einen oder den mehreren Prozessoren gekoppelt ist, wobei der Massendatenspeicher ausführbare Programmanweisungen aufweist, die, wenn von dem Hostprozessor ausgeführt, das Rechensystem veranlassen zum: Detektieren eines Speicherhardwareausfalls in einem Speicher; und Durchführen einer Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Speicherhardwareausfall in dem Speicher, wobei die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  2. Rechensystem nach Anspruch 1, wobei die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen zum: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; und wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  3. Rechensystem nach Anspruch 1, wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe umfasst zum: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; und wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird.
  4. Rechensystem nach Anspruch 1, wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe umfasst zum: Korrigieren und Speichern von ausgefallenen Reihendaten zu einer oder mehreren anderen Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; und Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe.
  5. Rechensystem nach Anspruch 1, wobei die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen zum: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; wobei der Speicher ein dynamischer Direktzugriffspeicher ist; wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird; wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe umfasst zum: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe umfasst zum: Korrigieren von ausgefallenen Reihendaten und Speichern davon zu einer oder mehreren Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe; Korrigieren des Rechensystemfehlers und Umgehen der Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler kein Speicherfehler ist; und Korrigieren des Rechensystemfehlers, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  6. Halbleitervorrichtung für Laufzeitspeicherreparatur, wobei die Halbleitervorrichtung aufweist: ein oder mehrere Substrate; und Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist, wobei die Logik mindestens teilweise in einer oder mehreren von konfigurierbarer Logik oder Hardwarelogik mit fixierter Funktionalität implementiert ist, wobei die Logik mit dem einen oder den mehreren Substraten gekoppelt ist zum: Detektieren eines Speicherhardwareausfalls in einem Speicher; und Durchführen einer Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Speicherhardwareausfall in dem Speicher, wobei die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  7. Halbleitervorrichtung nach Anspruch 6, wobei die Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist, dient zum: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; und wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  8. Halbleitervorrichtung nach Anspruch 6, wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe aufweist zum: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; und wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwarefehler ist, durchgeführt wird.
  9. Halbleitervorrichtung nach Anspruch 6, wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe umfasst zum: Korrigieren ausgefallener Reihendaten und Speichern davon zu einer oder mehreren anderen Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; und Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe.
  10. Halbleitervorrichtung nach Anspruch 6, wobei die Logik, die mit dem einen oder mehreren Substraten gekoppelt ist, dient zum: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; wobei der Speicher ein dynamischer Direktzugriffspeicher ist; wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird; wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe aufweist zum: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe aufweist zum: Korrigieren von ausgefallenen Reihendaten und Speichern davon zu einer oder mehreren anderen Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe; Korrigieren des Rechensystemfehlers und Umgehen der Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler kein Speicherfehler ist; und Korrigieren des Rechensystemfehlers, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  11. Halbleitervorrichtung nach Anspruch 7, wobei die Logik, die mit dem einen oder den mehreren Substraten gekoppelt ist, Transistorkanalgebiete aufweist, die innerhalb des einen oder der mehreren Substrate positioniert sind.
  12. Mindestens ein computerlesbares Datenspeichermedium, das einen Satz von ausführbaren Programmanweisungen aufweist, die, wenn von einem Rechensystem ausgeführt, das Rechensystem veranlassen zum: Detektieren eines Speicherhardwareausfalls in einem Speicher; und Durchführen einer Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Speicherhardwareausfall in dem Speicher, wobei die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  13. Mindestens ein computerlesbares Datenspeichermedium nach Anspruch 12, wobei die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen zum: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; und wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  14. Mindestens ein computerlesbares Datenspeichermedium nach Anspruch 12, wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe aufweist zum: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; und wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird.
  15. Mindestens ein computerlesbares Datenspeichermedium nach Anspruch 12, wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe aufweist zum: Korrigieren ausgefallener Reihendaten und Speichern davon zu einer oder mehreren anderen Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; und Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe.
  16. Mindestens ein computerlesbares Datenspeichermedium nach Anspruch 12, wobei die ausführbaren Programmanweisungen, wenn von dem Rechensystem ausgeführt, das Rechensystem veranlassen zum: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; wobei der Speicher ein dynamischer Direktzugriffspeicher ist; wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird; wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter Betriebe aufweist zum: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter Betriebe aufweist zum: Korrigieren von ausgefallenen Reihendaten und Speichern davon zu einer oder mehreren anderen Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe; Korrigieren des Rechensystemfehlers und Umgehen der Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler kein Speicherfehler ist; und Korrigieren des Rechensystemfehlers, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  17. Verfahren zum Reparieren von Laufzeitspeicher, aufweisend: Detektieren eines Speicherhardwareausfalls in einem Speicher; und Durchführen einer Laufzeit-Nach-Paket-Reparatur in Antwort auf den detektierten Speicherhardwareausfall in dem Speicher, wobei die Laufzeit-Nach-Paket-Reparatur durchgeführt wird, nachdem Hochfahrstartbetriebe abgeschlossen wurden.
  18. Verfahren nach Anspruch 17, weiter aufweisend: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; und wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird.
  19. Verfahren nach Anspruch 17, wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter aufweist: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; und wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird.
  20. Verfahren nach Anspruch 17, wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter aufweist: Korrigieren ausgefallener Reihendaten und Speichern davon zu einer oder mehreren anderen Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; und Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe.
  21. Verfahren nach Anspruch 17, weiter aufweisend: Eintreten in einen Fehlerhandhabungsmodus in Antwort auf einen Rechensystemfehler; wobei der Speicher ein dynamischer Direktzugriffspeicher ist; wobei die Detektion des Speicherhardwareausfalls in dem Speicher in Antwort auf den Eintritt in den Handhabungsmodus durchgeführt wird; wobei die Detektion des Speicherhardwareausfalls in dem Speicher weiter aufweist: Ermitteln, ob der Rechensystemfehler ein Speicherfehler ist; Ermitteln, ob der Speicherfehler ein Hardwareausfall ist; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler ein Hardwareausfall ist, durchgeführt wird; wobei die Durchführung der Laufzeit-Nach-Paket-Reparatur weiter aufweist: Korrigieren von ausgefallenen Reihendaten und Speichern davon zu einer oder mehreren anderen Adressen; Reparieren von ausgefallener Reihe mittels Nach-Paket-Reparaturbetrieben; Bewegen der korrigierten und gespeicherten ausgefallenen Reihendaten zurück zu der reparierten ausgefallenen Reihe; Korrigieren des Rechensystemfehlers und Umgehen der Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler kein Speicherfehler ist; und Korrigieren des Rechensystemfehlers, indem der Speicherfehler korrigiert wird und die Durchführung der Laufzeit-Nach-Paket-Reparatur in Antwort auf die Ermittlung, dass der Rechensystemfehler ein Speicherfehler ist, und die Ermittlung, dass der Speicherfehler kein Hardwareausfall ist, umgangen wird.
  22. Vorrichtung, aufweisend: Mittel zum Durchführen der Verfahren nach einem der Ansprüche 17-21.
DE112018008197.4T 2018-12-11 2018-12-11 Laufzeit-Nach-Paket-Reparatur für Speicher Pending DE112018008197T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/120199 WO2020118502A1 (en) 2018-12-11 2018-12-11 Runtime post package repair for memory

Publications (1)

Publication Number Publication Date
DE112018008197T5 true DE112018008197T5 (de) 2021-09-23

Family

ID=71076186

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018008197.4T Pending DE112018008197T5 (de) 2018-12-11 2018-12-11 Laufzeit-Nach-Paket-Reparatur für Speicher

Country Status (5)

Country Link
US (1) US20210311818A1 (de)
EP (1) EP3895168A1 (de)
CN (1) CN113454724A (de)
DE (1) DE112018008197T5 (de)
WO (1) WO2020118502A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200176072A1 (en) * 2020-02-04 2020-06-04 Intel Corporation Dynamic random access memory built-in self-test power fail mitigation
CN113900843A (zh) * 2021-09-08 2022-01-07 联想(北京)有限公司 一种检测修复方法、装置、设备及可读存储介质
US11829635B2 (en) * 2021-10-21 2023-11-28 Dell Products L.P. Memory repair at an information handling system
WO2023108319A1 (en) * 2021-12-13 2023-06-22 Intel Corporation In-system mitigation of uncorrectable errors based on confidence factors, based on fault-aware analysis

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366953B2 (en) * 2004-12-09 2008-04-29 International Business Machines Corporation Self test method and apparatus for identifying partially defective memory
KR20160074211A (ko) * 2014-12-18 2016-06-28 에스케이하이닉스 주식회사 포스트 패키지 리페어 장치
KR20160091688A (ko) * 2015-01-26 2016-08-03 에스케이하이닉스 주식회사 포스트 패키지 리페어 장치
KR20160104977A (ko) * 2015-02-27 2016-09-06 에스케이하이닉스 주식회사 반도체 메모리 장치 및 리프레쉬 제어 방법

Also Published As

Publication number Publication date
WO2020118502A1 (en) 2020-06-18
EP3895168A1 (de) 2021-10-20
US20210311818A1 (en) 2021-10-07
CN113454724A (zh) 2021-09-28

Similar Documents

Publication Publication Date Title
DE112018008197T5 (de) Laufzeit-Nach-Paket-Reparatur für Speicher
DE102012210232B4 (de) Vorbeugende Speicherreparatur auf der Grundlage der Analyse einer Vielzahl von Symbolen und Bereinigungszyklen
DE102006048115B4 (de) System und Verfahren zum Aufzeichnen von behebbaren Fehlern
DE102018122491A1 (de) Halbleiterspeichervorrichtung und verfahren zum betreiben derselben
DE102006048856B4 (de) Verfahren zum Betreiben einer IC-Halbleiterspeichervorrichtung und IC-Halbleiterspeichervorrichtung
DE102019117787B4 (de) Speichervorrichtung und Betriebsverfahren derselben
DE112007000659T5 (de) Flexibles Halten von Zustandsinformationen eines Mehrkernprozessors
US20170344421A1 (en) Integral post package repair
DE112006002265T5 (de) Zuverlässiges Rechnen mit einem Mehrkern-Prozessor
DE112012005320T5 (de) Multicore-Prozessor mit intern integriertem entscheidungsbasierten Selbsttest
DE102021122170A1 (de) Adaptive fehlerbereinigung und fehlerbehandlung für internen speicher
DE112012007115T5 (de) Wahlweise Logikprozessor-Zählung und Typauswahl für eine gegebene Arbeitsbelastung basierend auf Wärme- und Leistungsbudget-Einschränkungen der Plattform
US8711161B1 (en) Functional component compensation reconfiguration system and method
DE112017001805T5 (de) Bestimmen von thermischen obergrenzen in einem prozessor mit mehreren dies
DE112016005823T5 (de) Überwachen des betriebs eines prozessors
DE102004009693A1 (de) Technik zum Kombinieren eines Abtasttests und eines eingebauten Speicherselbsttests
DE112011105692T5 (de) Verfahren und eine Vorrichtung zur Injektion von Fehlern in einen Speicherhintergrund
DE102020118505A1 (de) Speichervorrichtungen mit darin enthaltenen variablen reparatureinheiten und verfahren zu deren reparatur
DE102021117226A1 (de) Konfigurierbarer reduzierter speicherstart
DE102020134018A1 (de) Technologie zum ermöglichen sicherer und belastbarer wiederherstellung von firmware-daten
DE112013000330T5 (de) In-Situ-Neubewertung von Prozessoren
DE102009047875A1 (de) Speicherreparatur
DE102020129549A1 (de) Leistungsüberwachung in heterogenen systemen
US7607038B2 (en) Systems and methods for CPU repair
DE102011011333B4 (de) Lesen in Peripheriegeräte und schreiben aus Peripheriegeräten mit zeitlich getrennter, redundanter Prozessorausführung