DE102020111321A1 - System und verfahren zur erkennung und berichtigung von datenfehlern eines transparenten registers - Google Patents

System und verfahren zur erkennung und berichtigung von datenfehlern eines transparenten registers Download PDF

Info

Publication number
DE102020111321A1
DE102020111321A1 DE102020111321.8A DE102020111321A DE102020111321A1 DE 102020111321 A1 DE102020111321 A1 DE 102020111321A1 DE 102020111321 A DE102020111321 A DE 102020111321A DE 102020111321 A1 DE102020111321 A1 DE 102020111321A1
Authority
DE
Germany
Prior art keywords
backup
circuit
address
read
communication bus
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
DE102020111321.8A
Other languages
English (en)
Inventor
Heimo Hartlieb
Christian Heiling
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102020111321A1 publication Critical patent/DE102020111321A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • 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/1048Adding 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 arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0002Serial port, e.g. RS232C

Abstract

Ein Verfahren beinhaltet das Erkennen eines Schreibbefehls an eine erste Schaltung in einem Kommunikationsbus und das Vergleichen einer Schreib-Adresse mit einem Schreibbefehl mit einem Satz von Sicherungsadressen. Wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt, wird ein Fehlerberichtigungscode (ECC) basierend auf zumindest den Schreibdaten des Schreibbefehls erzeugt und der ECC wird in einem Speicher einer Parametersicherungsspeicherschaltung gespeichert. Ein Lesebefehl an die erste Schaltung wird in dem Kommunikationsbus festgestellt, wobei eine Lese-Adresse des Lesebefehls mit dem Satz von Sicherungsadressen verglichen wird und, wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt, wird basierend auf dem gespeicherten ECC festgestellt, ob Lesedaten des Lesebefehls beschädigt sind, und eine Fehlermitteilung wird bereitgestellt, wenn festgestellt wird, dass die Lesedaten beschädigt sind.

Description

  • Die vorliegende Erfindung betrifft allgemein ein elektronisches System und Verfahren und in besonderen Ausführungsformen ein System und Verfahren zur Erkennung und Berichtigung („error detection and correction“; EDC) von Datenfehlern eines transparenten Registers über einen Kommunikationsbus.
  • Fehlererkennung und -berichtigung (EDC) kann als Technik, die einen zuverlässigen Transfer und Abruf digitaler Daten ermöglicht, verstanden werden. EDC enthält einen Fehlererkennungsteil, der die Erkennung digitaler Fehler in z.B. einem digitalen Wort ermöglicht. Zum Beispiel verwendet ein einfacher Fehlererkennungsmechanismus ein Paritäts-Bit (z.B. ein Bit, das entweder 1 oder 0 ist, um zu bewirken, dass das gesamte digitale Wort eine gerade Zahl von 1en besitzt), um zu erkennen, ob ein Bit des digitalen Worts beschädigt wurde. Beispiele für Fehlererkennungsschemata beinhalten Wiederhol-Codes, Paritäts-Bits, Prüfsummen, zyklische Redundanzprüfungen („cyclic reductandancy checks“; CRCs) und kryptographische Hash-Funktionen.
  • EDC enthält auch einen Fehlerberichtigungsteil, der es ermöglicht, (ein) Bit(s), das/die als beschädigt erkannt wurde(n), zu berichtigen und so das originale digitale Wort zu rekonstruieren. Ein Fehlerberichtigungscode („error correction code“; ECC) kann als Code, der zur Fehlererkennung und Fehlerberichtigung verwendet wird, verstanden werden. Zum Beispiel kann ein ECC einem digitalen Wort redundante Daten und/oder Paritätsdaten hinzufügen, um die Rekonstruktion des originalen digitalen Worts zu ermöglichen, wenn ein derartiges digitales Wort beschädigt wurde. Das Leistungsvermögen des ECCs steht allgemein mit dem Umfang der hinzugefügten Redundanz in Zusammenhang. Zum Beispiel besitzt ein ECC, der dazu in der Lage ist, zwei Fehler in einem digitalen Wort zu berichtigen, im Allgemeinen mehr Redundanz als ein ECC, der dazu in der Lage ist, einen einzigen Fehler in einem digitalen Wort zu berichtigen.
  • ECC kann in verschiedenen Anwendungen verwendet werden. Zum Beispiel ist ein ECC-Speicher ein Speicher, der ECCs verwendet, um die üblichsten Arten interner Datenfehler zu erkennen und zu berichtigen.
  • Gemäß einer Ausführungsform beinhaltet ein Verfahren: Erkennen eines Schreibbefehls an eine erste Schaltung in einem Kommunikations-Bus, wobei der Schreibbefehl eine Schreib-Adresse und Schreibdaten enthält; Vergleichen der Schreib-Adresse mit einem Satz von Sicherungsadressen; wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt, das Erzeugen eines Fehlerberichtigungscodes (ECC) basierend auf zumindest den Schreibdaten, und das Speichern des ECCs in einem Speicher einer Parametersicherungsspeicherschaltung; das Erkennen eines Lesebefehls an die erste Schaltung in dem Kommunikations-bus, wobei der Lesebefehl eine Lese-Adresse und Lesedaten enthält; das Vergleichen der Lese-Adresse mit einem Satz von Sicherungsadressen; und, wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt, das Feststellen, ob die Lesedaten beschädigt sind, basierend auf dem gespeicherten ECC, und Bereitstellen eines Fehler-Hinweises, wenn festgestellt wurde, dass die Lesedaten beschädigt sind.
  • Gemäß einer Ausführungsform enthält eine integrierte Schaltung: eine Kommunikationsschnittstelle, die dazu ausgebildet ist, mit einem Kommunikationsbus gekoppelt zu werden; eine erste Schaltung, die dazu ausgebildet ist, mit dem Kommunikationsbus gekoppelt zu werden; und eine Parametersicherungsspeicherschaltung, die dazu ausgebildet ist, mit dem Kommunikationsbus gekoppelt zu werden, wobei die Parametersicherungsspeicherschaltung einen Speicher enthält und dazu ausgebildet ist: in dem Kommunikationsbus einen Schreibbefehl an die erste Schaltung zu erkennen, wobei der Schreibbefehl eine Schreib-Adresse und Schreibdaten enthält; die Schreib-Adresse mit einem Satz von Sicherungsadressen zu vergleichen; wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt, einen Fehlerberichtigungscode (ECC) basierend zumindest auf den Schreibdaten zu erzeugen und den ECC in dem Speicher zu speichern; in dem Kommunikations-bus einen Lesebefehl an die erste Schaltung zu erkennen, wobei der Lesebefehl eine Lese-Adresse und Lesedaten enthält; die Lese-Adresse mit dem Satz von Sicherungsadressen zu vergleichen; und, wenn die Lese-Adresse mit einer Sicherungsadresse der Sicherungsadressen übereinstimmt, basierend auf dem gespeicherten ECC festzustellen, ob die Lesedaten beschädigt sind, und als Reaktion auf das Feststellen, dass die Lesedaten beschädigt sind, einen Fehlerhinweis bereitzustellen.
  • Gemäß eine Ausführungsform enthält eine Parametersicherungsspeicherschaltung einen Speicher, wobei die Parametersicherungsspeicherschaltung dazu ausgebildet ist, mit einem Kommunikationsbus gekoppelt zu werden, sowie: in dem Kommunikationsbus einen Schreibbefehl zu erkennen, wobei der Schreibbefehl eine Schreib-Adresse und Schreibdaten enthält; die Schreib-Adresse mit einem Satz von Sicherungsadressen zu vergleichen; wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt, einen Fehlerberichtigungscode (ECC) zumindest basierend auf den Schreibdaten zu erzeugen und den ECC in dem Speicher zu speichern; in dem Kommunikationsbus einen Lesebefehl zu erkennen, wobei der Lesebefehl eine Lese-Adresse und Lesedaten enthält; die Lese-Adresse mit dem Satz von Sicherungsadressen zu vergleichen; und, wenn die Lese-Adresse mit einer Sicherungsadresse der Sicherungsadressen übereinstimmt, basierend auf dem gespeicherten ECC festzustellen, ob die Lesedaten beschädigt sind, und als Reaktion auf das Feststellen, dass die Lesedaten beschädigt sind, einen Fehlerhinweis bereitzustellen.
  • Für ein vollständigeres Verständnis der Erfindung und ihrer Vorteile wird nun Bezug genommen auf die folgenden Beschreibungen, die in Verbindung mit den begleitenden Zeichnungen erfolgen, in denen:
    • 1 eine schematische Darstellung einer beispielhaften integrierten Schaltung („integrated circuit“; IC) mit einem Kommunikationsbus zeigt;
    • 2 eine schematische Darstellung einer IC mit einem Kommunikations-bus zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung;
    • die 3 und 4 eine schematische Darstellung der IC von 2, die ein Kommunikationsverfahren während einer Schreib-Operation bzw. einer nachfolgenden Lese-Operation veranschaulicht, zeigen, gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 5 eine schematische Darstellung der IC von 2, die ein Kommunikationsverhalten während einer Status-Lese-Operation veranschaulicht, zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 6 eine schematische Darstellung der IC von 2, die ein Kommunikationsverhalten während einer Daten-Berichtigungs-Operation veranschaulicht, zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 7 ein Flussdiagramm für ein Beispiel-Verfahren zur Erkennung und Berichtigung von Datenfehlern eines transparenten Registers über einen Kommunikationsbus zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 8 eine Flussdiagramm für ein Beispiel-Verfahren zum Durchführen einer Fehlererkennung und -berichtigung von Sicherheitsregistern in Schaltungen, die mit einem Kommunikationsbus gekoppelt sind, zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 9 eine schematische Darstellung der IC von 2, die ein Kommunikationsverhalten während einer Daten-Prüf-Operation veranschaulicht, zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung; und
    • 10 ein Layout der IC von 2 zeigt, gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Sofern nicht anders angegeben, beziehen sich entsprechende Ziffern und Symbole in verschiedenen Figuren allgemein auf entsprechende Teile. Die Figuren sind gezeichnet, um die relevanten Aspekte der bevorzugten Ausführungsformen darzustellen, und sie sind nicht notwendigerweise maßstabsgetreu gezeichnet.
  • Das Herstellen und Verwenden der offenbarten Ausführungsformen wird unten ausführlich erläutert. Es sollte jedoch erkannt werden, dass die vorliegende Erfindung viele anwendbare erfinderische Konzepte, die in einer breiten Vielfalt konkreter Zusammenhänge verkörpert sein können, bereitstellt. Die erörterten konkreten Ausführungsformen sind lediglich illustrativ für bestimmte Wege, um die Erfindung herzustellen und zu verwenden, und sie begrenzen den Umfang der Erfindung nicht.
  • Die Beschreibung unten zeigt verschiedene konkrete Einzelheiten, um ein tiefes Verständnis einiger Beispiel-Ausführungsformen gemäß der Beschreibung zu bieten. Die Ausführungsformen lassen sich ohne eine oder mehr der konkreten Einzelheiten oder mit anderen Verfahren, Komponenten, Materialien und dergleichen erreichen. In anderen Fällen werden bekannte Strukturen, Materialien und Operationen nicht im Einzelnen gezeigt oder beschrieben, um die verschiedenen Aspekte der Ausführungsformen nicht zu verschleiern. Bezugnahmen auf „eine Ausführungsform“ in dieser Beschreibung zeigen an, dass eine bestimmte Konfiguration, Struktur oder Eigenschaft, die in Verbindung mit der Ausführungsform beschrieben wird, in zumindest einer Ausführungsform enthalten ist. Folglich beziehen sich Phrasen wie beispielsweise „bei einer Ausführungsform“, die an verschiedenen Stellen der vorliegenden Beschreibung auftreten können, nicht notwendigerweise genau auf dieselbe Ausführungsform. Darüber hinaus können konkrete Formationen, Strukturen oder Merkmale in einer oder mehr Ausführungsformen auf eine beliebige geeignete Weise kombiniert werden.
  • Ausführungsformen der vorliegenden Erfindung werden in einem bestimmten Kontext, einem System und Verfahren zur Erkennung und Berichtigung von Datenfehlern eines transparenten Registers über eine existierende Bussystemverbindung in einer integrierten Schaltung beschrieben. Ausführungsformen der vorliegenden Erfindung können zum Beispiel in anderen Systemen wie beispielsweise in einem Kommunikationsbus, der mit mehreren integrierten Schaltungen, gekoppelt ist, verwendet werden.
  • Bei einer Ausführungsform der vorliegenden Erfindung enthält eine integrierte Schaltung mit einem internen Kommunikationsbus eine zugeordnete Parametersicherungsspeicherschaltung, die redundante Daten zum Implementieren einer EDC/ECC-Eigenschaft speichert, um Fehler in Konfigurationsdaten von Schaltungen, die mit dem Kommunikationsbus gekoppelt sind, zu erkennen und/oder zu berichtigen. Durch Speichern der redundanten Daten an einer anderen Stelle als die Konfigurationsdaten können Fehler mit gemeinsamer Ursache vorteilhaft minimiert werden.
  • Eine integrierte Schaltung besitzt im Allgemeinen mehrere Schaltungen, die mit einem Kommunikationsbus, der mit einer Kommunikationsschnittstelle gekoppelt ist, gekoppelt sind. Zum Beispiel zeigt 1 eine schematische Darstellung einer beispielhaften IC 100 mit einem Kommunikationsbus 102. Die IC 100 enthält den Kommunikationsbus 102, eine Kommunikationsschnittstelle 104 und N Schaltungen, die mit dem Kommunikationsbus 102 gekoppelt sind, wobei jede der N Schaltungen zumindest ein Register besitzt. Auch wenn Beispiele auf das Schreiben an Schaltung 1 und das Lesen von Schaltung 1 gerichtet sind, versteht es sich, dass andere Schaltungen der Schaltungen 1 bis N verwendet werden können.
  • Während des Normalbetriebs kommuniziert die IC 100 über die Kommunikationsschnittstelle 104 mit einer externen Schaltung. Zum Beispiel kann eine externe Schaltung, die eine Konfiguration von Schaltung 1 ändern möchte, über die Kommunikationsschnittstelle 104 einen Schreibbefehl herausgeben, wobei der Schreibbefehl eine Adresse, die Schaltung 1 entspricht, und zu schreibende Schreibdaten aufweist. Wenn die Kommunikationsschnittstelle 104 den Schreibbefehl empfängt, erzeugt die Kommunikationsschnittstelle über den Kommunikationsbus 102 einen entsprechenden Schreibbefehl, wobei der entsprechende Schreibbefehl die Schreib-Adresse und die Schreibdaten enthält. Die Schaltung 1 empfängt dann den Schreibbefehl von dem Kommunikationsbus 102 und aktualisiert das zu dem Schreibbefehl gehörende Register basierend auf den Schreibdaten.
  • Eine externe Schaltung 203, die ein Register von der Schaltung 1 lesen möchte, kann über die Kommunikationsschnittstelle 104 einen Lesebefehl herausgeben, so dass der Lesebefehl eine Lese-Adresse, die Schaltung 1 entspricht, besitzt. Wenn die Kommunikationsschnittstelle 104 den Lesebefehl empfängt, erzeugt die Kommunikationsschnittstelle einen entsprechenden Lesebefehl für Schaltung 1 über dem Kommunikationsbus 102, wobei der entsprechende Lesebefehl die Lese-Adresse enthält. Schaltung 1 empfängt dann den Lesebefehl von dem Kommunikationsbus 102 und sendet Lesedaten von einem Register von Schaltung 1 zurück an die Kommunikationsschnittstelle 104 basierend auf der Lese-Adresse. Die Kommunikationsschnittstelle 104 empfängt dann Lesedaten von dem Kommunikationsbus 102 und sendet entsprechende Lesedaten an die externe Schaltung 203.
  • Die funktionale Sicherheit einer integrierten Schaltung ist allgemein wichtig. Bei einigen Anwendungen wie beispielsweise bei Automotive-Anwendungen kann die funktionale Sicherheit von zumindest einigen Aspekten einer integrierten Schaltung kritisch sein. Zum Beispiel besitzen einige Sicherheitsstandards wie beispielsweise der Standard ISO 26262 Anforderungen an eine minimale Fehlerrate.
  • Ein Fehler einer integrierten Schaltung kann zum Beispiel als Ergebnis davon auftreten, dass bei einem Register ein oder mehr Bits beschädigt sind. Die Beschädigung von Daten in einem Register kann z.B. als Ergebnis eines Fehlers bei der Schreib-Operation auftreten, oder als Fehler der Speicherzellen des Registers.
  • Bei einer Ausführungsform der vorliegenden Erfindung enthält eine zugeordnete Parametersicherungsspeicherschaltung einen einzelnen ECC-Generator und einen einzelnen Prüfer, um in einer der mit dem Kommunikationsbus gekoppelten Schaltungen, ungeachtet der Anzahl von mit dem Kommunikationsbus gekoppelter Schaltungen, beschädigte Daten zu erkennen und zu berichtigen. Die Parametersicherungsspeicherschaltung kann in einem Bereich der IC, der von dem durch eine der anderen mit dem Kommunikationsbus gekoppelten Schaltungen belegt ist, getrennten Bereich angeordnet sein.
  • 2 zeigt eine schematische Darstellung einer IC 200 mit einem Kommunikationsbus 202 gemäß einer Ausführungsform der vorliegenden Erfindung. Die IC 200 enthält einen Kommunikationsbus 202, eine Kommunikationsschnittstelle 204, eine Parametersicherungsspeicherschaltung 206, Bus-Master 208 und 210, einen Zugriffs-Arbiter 212 und N Schaltungen, die mit dem Kommunikationsbus 202 gekoppelt sind, wobei jede der N Schaltungen zumindest ein Register aufweist. Die Parametersicherungsspeicherschaltung 206 enthält ein oder mehr Register 218, einen ECC-Kodierer 214, einen Prüfer 215 und eine Nachschlagtabelle 216.
  • Der Kommunikationsbus 202 kann zum Beispiel als fortschrittlicher Peripherie-Bus („advanced peripheral bus“; APB) oder als fortschrittlicher HochleistungsBus („advanced high performance bus“; AHB) implementiert sein. Andere Kommunikationsbus-Implementierungen wie beispielswiese andere parallele Kommunikations-bus-Architekturen können ebenfalls verwendet werden. Der Kommunikationsbus 202 kann auf eine beliebige auf dem Fachgebiet bekannte Weise implementiert werden.
  • Die Bus-Master 208 und 210 sind dazu in der Lage, eine Kommunikation mit einer oder mehr der Schaltung 1 bis N über den Kommunikationsbus 202 zu veranlassen. Die Bus-Master 208 und 210 können auf eine beliebige auf dem Fachgebiet bekannte Weise implementiert werden. Zum Beispiel können die Bus-Master 208 und 210 bei einem APB-Bus als APB-Master implementiert sein.
  • Der Zugriffs-Arbiter 212 ist dazu ausgebildet, festzustellen, ob der Kommunikationsbus 202 beschäftigt oder nicht beschäftigt (inaktiv) ist. Wenn der Kommunikationsbus 202 beschäftigt ist, veranlasst der Kommunikationsbus 202 die anderen Bus-Master, den Kommunikationsbus 202, während er beschäftigt ist, nicht zu verwenden. Wenn zum Beispiel der Kommunikationsbus 202 beschäftigt ist, weil der Bus-Master 208 einen Schreibbefehl herausgibt, veranlasst der Zugriffs-Arbiter 212 den Busmaster 210, den Kommunikationsbus 202, während er beschäftigt ist, nicht zu verwenden. Der Zugriffs-Arbiter 212 kann auf eine beliebige auf dem Fachgebiet bekannte Weise implementiert werden.
  • Die Kommunikationsschnittstelle 204 kann als serielle Peripherieschnittstelle („serial peripheral interface“; SPI) implementiert sein. Andere Kommunikationsschnittstellen wie beispielsweise I2C-(„Inter-Integrierte Schaltung“), I2S-(„Inter-IC Sound“)-Schnittstelle, universelle asynchrone Sendeempfänger-(„universal asynchronous receiver-transmitter“; UART)-Schnittstelle und andere können ebenfalls verwendet werden. Die Kommunikationsschnittstelle 204 kann auf eine beliebige auf dem Fachgebiet bekannte Weise implementiert werden.
  • Die IC 200 kann in einem monolithischen Halbleitersubstrat implementiert sein. Bei einigen Ausführungsformen kann die IC 200 als Mehr-Chip-Einrichtung in einer einzigen Packung implementiert sein.
  • Die Schaltungen 1 bis N sind mit dem Kommunikationsbus 202 gekoppelt. Bei einigen Ausführungsformen ist N gleich 1 (d.h., eine einzige Schaltung ist mit dem Kommunikationsbus 202 gekoppelt). Bei anderen Ausführungsformen ist N größer als 1 wie beispielsweise 2, 5, 10, 16, oder mehr. Die Schaltungen 1 bis N können zueinander identisch oder voneinander verschieden sein. Bei einigen Ausführungsformen sind einige Schaltungen der Schaltungen 1 bis N identisch, während andere verschieden sind. Eine oder mehr der Schaltungen 1 bis N können Analog-Digital-Wandler (ADCs), Digital-Analog-Wandler (DACs), Referenzschaltungen wie beispielsweise Referenzströme und -spannungen, Zustandsmaschinen wie beispielsweise zum Erzeugen von Pulsweitenmodulation (PWM), nicht-flüchtige Speicher, etc. enthalten. Die Schaltungen 1 bis N können auf eine beliebige auf dem Fachgebiet bekannte Weise implementiert sein.
  • Jede der Schaltungen 1 bis N weist zumindest ein Register auf. Bei einigen Schaltungen der Schaltungen 1 bis N können sämtliche der Register sicherheitskritisch sein. Bei einigen Schaltungen der Schaltungen 1 bis N können zumindest ein aber nicht sämtliche der Register sicherheitskritisch sein. Bei einigen Schaltungen der Schaltungen 1 bis N kann keines der Register sicherheitskritisch sein.
  • Die Nachschlagtabelle 216 ist dazu ausgebildet, die Adresse der sicherheitskritischen Register zu speichern. Bei einigen Ausführungsformen enthält die Nachschlagtabelle 216 Informationen in einem einmal programmierbaren („one time programmable“ OTP) Speicher, der während der Herstellung programmiert wird. Bei anderen Ausführungsformen kann die Nachschlagtabelle 216 rekonfiguriert werden, nachdem die IC 200 in einer Anwender-Einrichtung installiert ist. Die Nachschlagtabelle 216 kann auf eine beliebige auf dem Fachgebiet bekannte Weise implementiert sein. Bei einigen Ausführungsformen werden die Beispiel-Fehlerberichtigungssysteme und - verfahren auf Schaltungen angewandt, die als sicherheitskritisch ausgewiesen werden, und nicht auf Schaltungen, die nicht als sicherheitskritisch ausgewiesen wurden.
  • Der Controller 219 kann unter anderem verschiedene Aktionen des Parametersicherungsspeichers wie beispielsweise das Herausgeben von Lesebefehlen, Schreibbefehlen, das Speichern von Daten in Register 218, das Setzen von Bits in dem Statusregister 221, das Anweisen des ECC-Kodierers 214, um ECC-Codes zu erzeugen, das Anweisen des Prüfers 215, die Gültigkeit von Daten zu prüfen, und das Lesen von der Nachschlagtabelle 216 implementieren oder steuern. Die Controller 219 können eine endliche Zustandsmaschine („finit state machine“; FSM) enthalten. Andere Implementierungen sind ebenfalls möglich.
  • Während des Normalbertriebs kommuniziert die IC 200 mit externen Schaltungen über die Kommunikationsschnittstelle 204. Zum Beispiel zeigen die 3 und 4 eine schematische Darstellung der IC 200, die ein Kommunikationsverhalten während einer Schreib-Operation bzw. einer nachfolgenden Lese-Operation veranschaulicht, gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Wie in 3 gezeigt, kann eine externe Schaltung 203, die eine Konfiguration von Schaltung 1 ändern möchte, über die Kommunikationsschnittstelle 204 einen Schreibbefehl 222 herausgeben. Der Schreibbefehl 222 kann eine Schreib-Adresse, die Schaltung 1 entspricht, sowie zu schreibende Schreibdaten enthalten. Die Kommunikationsschnittstelle 204 empfängt den Schreibbefehl 222 und erzeugt einen internen Schreibbefehl 224. Als nächstes empfängt der Bus-Master 208 den internen Schreibbefehl 224 und erzeugt einen internen Schreibbefehl 226 über den Kommunikationsbus 202, der von der Schaltung 1 empfangen wird. Der Schreibbefehl 226 enthält die Schreib-Adresse und die Schreibdaten. Die Schaltung 1 empfängt dann den Schreibbefehl von dem Kommunikationsbus 202 und aktualisiert das zu der Schreib-Adresse gehörende Register basierend auf den Schreibdaten.
  • Die Parametersicherungsspeicherschaltung 206 überwacht den Kommunikationsbus 202 und identifiziert die Schreib-Adresse und die Schreibdaten aus dem Schreibbefehl 226. Die Parametersicherungsspeicherschaltung 206 ermittelt dann basierend auf der Nachschlagtabelle 216, ob die Schreib-Adresse des Schreibbefehls 226 eine Sicherungsadresse ist. Wenn die Schreib-Adresse des Schreibbefehls 226 eine Sicherungsadresse ist, dann erzeugt der ECC-Kodierer 214 einen ECC basierend auf den Schreibdaten und speichert einen derartigen ECC in Registern 218.
  • Wie in 4 gezeigt, kann die externe Schaltung 203 eine Zeit nach dem Herausgeben des Schreibbefehls 222 einen Lesebefehl 228 über die Kommunikationsschnittstelle 204 herausgeben. Der Lesebefehl 228 kann eine Lese-Adresse, die gleich der Schreib-Adresse des Schreibbefehls 222 ist, enthalten. Wenn die Kommunikationsschnittstelle 204 den Lesebefehl 228 empfängt, erzeugt die Kommunikationsschnittstelle einen internen Lesebefehl 230. Der Bus-Master 208 empfängt den internen Lesebefehl 230 und erzeugt dann einen Lesebefehl 232 über den Kommunikationsbus 202, wobei der Lesebefehl 232 die Lese-Adresse enthält. Die Schaltung 1 empfängt dann den Lesebefehl 232 von dem Kommunikationsbus 202 und sendet Lesedaten von dem Register der Schaltung 1 basierend auf der Lese-Adresse an die Kommunikationsschnittstelle 204 zurück. Die Kommunikationsschnittstelle 204 empfängt dann derartige Lesedaten von dem Kommunikationsbus 202 und sendet entsprechende Lesedaten an die externe Schaltung 203.
  • Die Parametersicherungsspeicherschaltung 206 überwacht den Kommunikationsbus 202 und identifiziert die Lese-Adresse des Lesebefehls 232 und die entsprechenden Lesedaten. Die Parametersicherungsspeicherschaltung 206 ermittelt dann basierend auf der Nachschlagtabelle 216, ob die Lese-Adresse des Lesebefehls 232 eine Sicherungsadresse ist. Wenn die Lese-Adresse des Lesebefehls 232 eine Sicherungsadresse ist, wird der Prüfer 215 verwendet, um basierend auf dem in den Registern 218 gespeicherten ECC festzustellen ob die Lesedaten beschädigt wurden. Wenn der Prüfer 215 feststellt, dass die Lesedaten beschädigt sind, setzt die Parametersicherungsspeicherschaltung 206 in dem Statusregister 220 ein Fehler-Flag 221, um anzuzeigen, dass ein Fehler aufgetreten ist. Bei einigen Ausführungsformen kann die Parametersicherungsspeicherschaltung 206 der externen Schaltung 203 anstelle von oder zusätzlich zu dem Verwenden des Statusregisters 220 einen Fehler über einen separaten Pin (nicht gezeigt) anzeigen.
  • Bei einigen Ausführungsformen befindet sich das Statusregister 220 außerhalb der Parametersicherungsspeicherschaltung 206 und ist mit dem Kommunikations-bus 202 gekoppelt. Bei derartigen Ausführungsformen beinhaltet das Setzen des Fehler-Flags 221 in dem Statusregister 220, dass die Parametersicherungsspeicherschaltung 206 über den Bus-Master 210 einen Schreibbefehl an das Statusregister 220 herausgibt und der Kommunikationsbus 202 nicht beschäftigt ist.
  • Es versteht sich, dass die externe Schaltung, die den Lesebefehl 228 herausgibt, dieselbe oder eine andere als die externe Schaltung, die den Schreibbefehl 222 herausgibt, sein kann.
  • 5 zeigt eine schematische Darstellung der IC 200, die ein Kommunikationsverhalten während einer Status-Leseoperation veranschaulicht, gemäß einer Ausführungsform der vorliegenden Erfindung. Wie in 5 gezeigt, kann eine externe Schaltung durch Lesen des Statusregisters 220 prüfen, ob in Daten von einer oder mehr der Schaltungen 1 bis N ein Fehler aufgetreten ist. Zum Beispiel kann die externe Schaltung 203 über die Kommunikationsschnittstelle 204 einen Status-Lesebefehl 250 herausgeben, wobei der Status-Lesebefehl 250 eine Status-Lese-Adresse aufweist.
  • Wenn die Kommunikationsschnittstelle 204 den Lesebefehl 250 empfängt, erzeugt die Kommunikationsschnittstelle 204 einen Status-Lesebefehl 252. Der Bus-Master 208 empfängt den Status-Lesebefehl 252 und erzeugt einen Lesebefehl 254, wobei der Lesebefehl 254 die Status-Lese-Adresse enthält. Die Parametersicherungsspeicherschaltung 206 empfängt dann den Status-Lesebefehl 254 und sendet Status-Lesedaten von dem Statusregister 220 basierend auf der Status-Lese-Adresse an die Kommunikationsschnittstelle 204 zurück. Die Kommunikationsschnittstelle 204 empfängt dann derartige Status-Lesedaten von dem Kommunikationsbus 202 und sendet entsprechende Lesedaten an die externe Schaltung 203.
  • Vorteile einiger Ausführungsformen beinhalten die Fähigkeit, beschädigte Daten, die zu sicherheitskritischen Registern der Schaltungen 1 bis N gehören, ohne Verwenden eines Mikrocontrollers wie beispielsweise eines zugeordneten Mikrocontrollers zu erkennen. Da die Parametersicherungsspeicherschaltung Lesebefehle und Schreibbefehle, die bereits in den Kommunikationsbus herausgegeben wurden, überwacht, ist es vorteilhaft möglich, beschädigte Daten zu detektieren, ohne irgendeine zusätzliche Bandbreite des Kommunikationsbusses zu verbrauchen.
  • Es ist zum Beispiel eine übliche Praxis bei der Auslegung integrierter Schaltungen, dass eine bestimmte Schaltung wie beispielsweise ein ADC einmal ausgelegt und dann in mehreren integrierten Schaltungen wie beispielsweise in einer eigenständigen ADC-IC, einem ADC innerhalb einer Mehrzweck-Leistungsmanagement-IC („purpose power management IC“; PMIC) und einem ADC innerhalb einer Automotive-PMIC wiederverwendet wird. Im Allgemeinen wird jede einzelne Schaltung einem extensiven Simulations-, Test-, Verifikations- und Qualifikationsprozess unterzogen. Durch Verwenden einer zugeordneten Parametersicherungsspeicherschaltung ist es vorteilhaft möglich, z.B. einen einzelnen ADC-Block auszulegen und einen solchen ADC-Block für eine Mehrzweck-PMIC und für eine Automotive-PMIC ohne Modifikation zu verwenden, wobei die Automotive-PMIC auch eine Parametersicherungsspeicherschaltung enthält, anstelle einen ADC mit ECC-Funktionalität auszulegen, die in der Mehrzweck-PMIC nicht verwendet wird (daher Kosten und Komplexität unnötig erhöht), oder zwei verschiedene ADC-Module auszulegen (und damit unnötig Anstrengungen für eine Neuauslegung aufzuwenden). Daher kann das Verwenden einer zugeordneten Parametersicherungsspeicherschaltung vorteilhaft zu verringerten Bereichskosten („area overhead“) führen. Redundante(s) Verifikation, Testen und Qualifikation können ebenfalls vermieden werden. Das Verwenden einer zugeordneten Parametersicherungsspeicherschaltung ermöglicht vorteilhaft das Auslegen von Schaltungen wie beispielsweise eines ADCs, ohne zuerst entscheiden zu müssen, ob in einer solchen Schaltung ein EDC/ECC-Mechanismus implementiert werden soll. Zusätzliche Vorteile beinhalten die Fähigkeit, beschädigte Daten in irgendeiner von mehreren Schaltungen, die mit einem Kommunikationsbus gekoppelt sind, mit einem einzigen ECC-Kodierer zu erkennen.
  • Bei einigen Ausführungsformen kann die Parametersicherungsspeicherschaltung 206 beschädigte Daten korrigieren. Zum Beispiel zeigt 6 eine schematische Darstellung einer IC 200, die ein Kommunikationsverhalten während einer Datenberichtigungsoperation veranschaulicht, gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Wenn die Parametersicherungsspeicherschaltung 206 während des Normalbetriebs erkennt, dass Daten z.B. in Schaltung 1 beschädigt sind, kann die Parametersicherungsspeicherschaltung 206 solche beschädigten Daten korrigieren. Die Parametersicherungsspeicherschaltung 206 kann beschädigte Daten unter Verwendung des ECCs, der erzeugt wurde, wenn die Originaldaten geschrieben wurden, um berichtigte Daten zu erzeugen, berichtigen und einen Schreibbefehl mit einer Schreib-Adresse, die der Adresse der beschädigten Daten entspricht, herausgeben, und Daten, die den berichtigten Daten entsprechen, schreiben. Zum Beispiel kann der Parametersicherungsspeicher, um beschädigte Daten zu korrigieren, einen Schreibbefehl 240 herausgeben. Der Bus-Master 210 empfängt dann den Schreibbefehl 240 und erzeugt einen Schreibbefehl 242, wenn der Kommunikationsbus 202 nicht beschäftigt ist, wobei der Schreibbefehl 242 eine Schreib-Adresse, die der Adresse der beschädigten Daten entspricht, und berichtigte Schreibdaten besitzt. Die Schaltung 1 empfängt dann den Schreibbefehl von dem Kommunikationsbus 202 und aktualisiert das Register, das zu der Schreib-Adresse gehört, basierend auf den berichtigten Schreibdaten.
  • 7 zeigt ein Flussdiagramm eines Beispiel-Verfahrens 700 zur Erkennung und Berichtigung von Datenfehlern eines transparenten Registers über einen Kommunikationsbus gemäß einer Ausführungsform der vorliegenden Erfindung. Das Verfahren 700 kann zum Beispiel durch die IC 200 implementiert werden. Bei einigen Ausführungsformen können zumindest Teile oder alles von dem Verfahren 700 durch einen Controller 219 implementiert oder gesteuert werden. Andere Schaltungen einschließlich anderer integrierter Schaltungen und anderer Schaltungen, die mehrere gepackte ICs enthalten, können das Verfahren 700 implementieren.
  • Während Schritt 702 überwacht eine Parametersicherungsspeicherschaltung einen Kommunikationsbus. Bei einigen Ausführungsformen kann die Parametersicherungsspeicherschaltung unter Verwendung der Parametersicherungsspeicherschaltung 206 implementiert werden, und der Kommunikationsbus kann unter Verwendung des Kommunikationsbusses 202 implementiert werden. Während Schritt 704 erkennt die Parametersicherungsspeicherschaltung einen Befehl in dem Kommunikationsbus. Während Schritt 706 wird die Art von Befehl ermittelt. Bei dem Befehl kann es sich zum Beispiel um einen Lesebefehl oder einen Schreibbefehl handeln.
  • Wenn es sich bei dem während Schritt 706 ermittelten Befehl um einen Schreibbefehl handelt, wird eine Schreib-Adresse des Schreibbefehls während Schritt 708 mit einem Satz von Sicherungsadressen verglichen. Der Satz von Sicherungsadressen kann zum Beispiel in einer Nachschlagtabelle gespeichert sein. Wenn die Schreib-Adresse nicht mit irgendeiner der Sicherungsadressen in dem Satz von Sicherungsadressen übereinstimmt, setzt die Parametersicherungsspeicherschaltung das Überwachen des Kommunikationsbusses während Schritt 702 fort.
  • Wenn die Schreib-Adresse mit einer der Sicherungsadressen in dem Satz von Sicherungsadressen übereinstimmt, wird während Schritt 710 ein ECC basierend auf den Schreibdaten erzeugt. Während Schritt 712 wird der ECC z.B. in einem flüchtigen oder nicht-flüchtigen Speicher zusammen mit der Schreib-Adresse gespeichert. Die Parametersicherungsspeicherschaltung setzt dann das Überwachen des Kommunikationsbusses während Schritt 702 fort.
  • Bei einigen Ausführungsformen ist der ECC dazu in der Lage, einen oder mehr Fehler in den Schreibdaten zu erkennen. Bei einigen Ausführungsformen ist der ECC nicht in der Lage, Fehler in den Schreibdaten zu berichtigen. Bei anderen Ausführungsformen ist der ECC dazu in der Lage, einen oder mehr Fehler in den Schreibdaten zu erkennen und zu berichtigen.
  • Wenn es sich bei dem während Schritt 706 erkannten Befehl um einen Lesebefehl handelt, wird eine Lese-Adresse des Lesebefehls während Schritt 714 mit einem Satz von Sicherungsadressen verglichen. Wenn die Lese-Adresse nicht mit irgendeiner der Sicherungsadressen in dem Satz von Sicherungsadressen übereinstimmt, setzt die Parametersicherungsspeicherschaltung das Überwachen des Kommunikationsbusses während Schritt 702 fort.
  • Wenn die Lese-Adresse mit einer der Sicherungsadressen in dem Satz von Sicherungsadressen übereinstimmt, werden die Lesedaten während Schritt 716 geprüft, um basierend auf dem gespeicherten ECC, der zu der Lese-Adresse gehört, zu verifizieren, dass sie nicht beschädigt wurden. Wenn während Schritt 718 kein Fehler erkannt wird, dann wird festgestellt, dass die Lesedaten gültig sind, und die Parametersicherungsspeicherschaltung setzt das Überwachen des Kommunikationsbusses während Schritt 702 fort. Wenn während Schritt 718 ein Fehler erkannt wird, dann wird während Schritt 720 ein Fehler-Flag gesetzt. Das Fehler-Flag kann zum Beispiel durch Setzen eines Status-Bits in einem Statusregister und/oder durch Anlegen eines Signals an einen Pin der IC signalisiert werden. Bei einigen Ausführungsformen kann eine Fehlerbenachrichtigung auf andere Arten erreicht werden.
  • Wenn die Parametersicherungsspeicherschaltung nicht dazu ausgebildet ist, die beschädigten Daten zu korrigieren (Schritt 722), dann setzt die Parametersicherungsspeicherschaltung das Überwachen des Kommunikationsbusses während Schritt 702 fort. Wenn die Parametersicherungsspeicherschaltung dazu ausgebildet ist, die beschädigten Daten zu korrigieren (Schritt 722), werden die korrigierten Daten während Schritt 724 basierend auf dem ECC, der zu der Lese-Adresse gehört, erzeugt. Während Schritt 726 ermittelt ein Zugriffs-Arbiter, ob der Kommunikationsbus beschäftigt ist oder nicht. Wenn der Kommunikationsbus beschäftigt ist, dann wartet die IC während Schritt 728, bis der Kommunikationsbus frei (nicht beschäftigt) wird. Sobald der Kommunikationsbus nicht beschäftigt ist, wird während Schritt 730 über den Kommunikationsbus ein berichtigter Schreibbefehl herausgegeben, um die beschädigten Daten mit berichtigten Daten zu überschreiben. Die Parametersicherungsspeicherschaltung setzt dann das Überwachen des Kommunikationsbusses während Schritt 702 fort.
  • Vorteile von einigen Ausführungsformen beinhalten, dass ein Nutzer einer IC eine Fehlererkennung und -berichtigung von z.B. sicherheitskritischen Daten auf eine transparente Weise durchführen kann und ohne redundante Informationen (z.B. einen Hilfssummen-Code oder Paritäts-Bits) über den Kommunikationsbus (entweder den externen Kommunikationsbus oder den Kommunikationsbus innerhalb der IC) übertragen zu müssen. Bei einigen Ausführungsformen kann die Berichtigung der beschädigten Daten erfolgen, bevor die externe Schaltung wahrnimmt, dass ein Fehler aufgetreten ist.
  • Bei einigen Ausführungsformen wird eine Datenprüfung durchgeführt, um Datenfehler zu erkennen, wenn der Kommunikationsbus 202 nicht beschäftigt ist. Bei einigen Ausführungsformen können die Fehler während der Datenprüfung berichtigt werden. Zum Beispiel zeigt 8 ein Flussdiagramm eines Beispiel-Verfahrens 800 zum Durchführen einer Fehlererkennung und -berichtigung von Sicherheitsregistern in Schaltungen, die mit einem Kommunikationsbus gekoppelt sind, gemäß einer Ausführungsform der vorliegenden Erfindung. Das Verfahren 800 kann zum Beispiel durch die IC 200 implementiert werden. Bei einigen Ausführungsformen können zumindest Teile oder alles von dem Verfahren 800 durch den Controller 219 implementiert oder gesteuert werden. Andere Schaltungen einschließlich anderer integrierter Schaltungen und anderer Schaltungen, die mehrere gepackte ICs enthalten, können das Verfahren 700 implementieren. 9 zeigt ein Schaltbild der IC 200, das ein Kommunikationsverfahren während einer Datenprüfoperation veranschaulicht, gemäß einer Ausführungsform der vorliegenden Erfindung. 8 lässt sich mit Blick auf die 9 und 6 verstehen.
  • Während Schritt 801 wird ein Kommunikationsbus wie beispielsweise der Kommunikationsbus 202, z.B. durch eine Parametersicherungsspeicherschaltung wie beispielsweise die Parametersicherungsspeicherschaltung 206, z.B. auf eine ähnliche Weise wie in Schritt 702, überwacht. Während Schritt 802 wird festgestellt, ob der Kommunikationsbus beschäftigt oder nicht beschäftigt ist. Wenn der Kommunikations-bus beschäftigt ist, setzt die Parametersicherungsspeicherschaltung das Überwachen des Kommunikationsbusses während Schritt 801 für Befehle auf dem Kommunikationsbus gemäß z.B. dem Verfahren 700 fort.
  • Wenn der Kommunikationsbus nicht beschäftigt ist, dann gibt die Parametersicherungsspeicherschaltung während Schritt 804 einen Lesebefehl heraus. Zum Beispiel kann die Parametersicherungsspeicherschaltung 206, wie in 9 gezeigt, einen Lesebefehl 260 an den Bus-Master herausgeben, der dann einen Lesebefehl 262 mit der Lese-Adresse, die einer Sicherungsadresse des Satzes von Sicherungsadressen entspricht, herausgibt. Als Reaktion auf den Lesebefehl empfängt die Parametersicherungsspeicherschaltung 206 dann die Lesedaten von der Schaltung 1.
  • Die Lesedaten werden während Schritt 816 geprüft, um basierend auf dem gespeicherten ECC, der zu der Lese-Adresse gehört, zu verifizieren, dass die Lesedaten nicht beschädigt wurden. Wenn während Schritt 818 festgestellt wird, dass die Prüfung bestanden wurde, dann wird festgestellt, dass die Lesedaten nicht beschädigt sind, und die Parametersicherungsspeicherschaltung setzt das Überwachen des Kommunikationsbusses während Schritt 802 fort. Wenn während Schritt 818 festgestellt wird, dass die Prüfung nicht bestanden wurde, dann wird während Schritt 820 ein Fehler-Flag gesetzt.
  • Wenn die Parametersicherungsspeicherschaltung nicht dazu ausgebildet ist, die beschädigten Daten zu berichtigen (Schritt 822), dann setzt die Parametersicherungsspeicherschaltung das Überwachen des Kommunikationsbusses während Schritt 802 fort. Wenn die Parametersicherungsspeicherschaltung dazu ausgebildet ist, die beschädigten Daten zu berichtigen (Schritt 822), werden die berichtigen Daten während Schritt 824 basierend auf dem ECC, der zu der Lese-Adresse gehört, z.B. unter Verwendung eines erweiterten Timing-Codes mit Zwei-Bit-Fehlererkennung und Ein-Bit-Fehlerberichtigung, erzeugt. Andere ECC-Techniken können ebenso verwendet werden.
  • Dann wird während Schritt 830 über den Kommunikationsbus ein berichtigter Schreibbefehl herausgegeben, um die beschädigten Daten mit berichtigten Daten zu überschreiben. Zum Beispiel kann die Parametersicherungsspeicherschaltung 206, wie in 6 gezeigt, einen Schreibbefehl 240 an dem Bus-Master 210 herausgeben, der dann einen Schreibbefehl 242 mit der Lese-Adresse, die einer Sicherungsadresse des Satzes von Sicherungsadressen entspricht, herausgibt. Die Schaltung 1 empfängt dann den Schreibbefehl von dem Kommunikationsbus 202 und aktualisiert das Register, das zu der Schreib-Adresse gehört, basierend auf den berichtigten Daten.
  • Nach Schritt 830 setzt die Parametersicherungsspeicherschaltung dann das Überwachen des Kommunikationsbusses während Schritt 801 fort.
  • 10 zeigt ein Layout einer IC 200 gemäß einer Ausführungsform der vorliegenden Erfindung. Wie durch 10 gezeigt, befindet sich die Parametersicherungsspeicherschaltung 206 in einem Bereich der IC 200, der von jeder der Schaltungen 1 bis N, die mit dem Kommunikationsbus gekoppelt sind, getrennt ist. Andere Implementierungen sind ebenso möglich. Wie oben erörtert, können eine oder mehr der Schaltungen 1 bis N Analog-Digital-Wandler (ADCs), Digital-Analog-Wandler (DACs), Referenzschaltungen wie beispielsweise Referenzströme und -spannungen, Zustandsmaschinen wie beispielsweise zum Erzeugen von Pulsweitenmodulation (PWM), nicht-flüchtige Speicher, etc. enthalten. N kann gleich 1 oder höher sein.
  • Beispiel-Ausführungsformen der vorliegenden Erfindung werden hier zusammengefasst. Aus der Gesamtheit der hier eingereichten Beschreibung und Ansprüche lassen sich auch andere Ausführungsformen verstehen.
  • Beispiel 1. Verfahren, das beinhaltet: Erkennen eines Schreibbefehls an eine erste Schaltung in einem Kommunikationsbus durch eine Parametersicherungsspeicherschaltung, wobei der Schreibbefehl eine Schreib-Adresse und Schreibdaten enthält, wobei die erste Schaltung von der Parametersicherungsspeicherschaltung verschieden ist; Vergleichen der Schreib-Adresse mit einem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung, wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Erzeugen eines Fehlerberichtigungscodes (ECC) basierend auf zumindest den Schreibdaten durch die Parametersicherungsspeicherschaltung und Speichern des ECCs in einem Speicher der Parametersicherungsspeicherschaltung; Erkennen eines Lesebefehls an die erste Schaltung in dem Kommunikationsbus durch die Parametersicherungsspeicherschaltung, wobei der Lesebefehl eine Lese-Adresse und Lesedaten enthält; Vergleichen der Lese-Adresse mit dem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung; und wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen durch die Parametersicherungsspeicherschaltung basierend auf dem gespeicherten ECC, ob die Lesedaten beschädigt sind, und Bereitstellen einer Fehlermitteilung, wenn festgestellt wird, dass die Lesedaten beschädigt sind.
  • Beispiel 2. Verfahren gemäß Beispiel 1, das weiterhin beinhaltet: Erkennen eines zweiten Schreibbefehls an eine zweite Schaltung in dem Kommunikationsbus durch die Parametersicherungsspeicherschaltung, wobei der zweite Schreibbefehl eine zweite Schreib-Adresse und zweite Schreibdaten enthält; Vergleichen der zweiten Schreib-Adresse mit dem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung; wenn die zweite Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Erzeugen eines zweiten ECCs basierend auf zumindest den zweiten Schreibdaten durch die Parametersicherungsspeicherschaltung und Speichern des zweiten ECCs in dem Speicher der Parametersicherungsspeicherschaltung; Ermitteln eines zweiten Lesebefehls an die zweite Schaltung in dem Kommunikationsbus durch die Parametersicherungsspeicherschaltung, wobei der zweite Lesebefehl eine zweite Lese-Adresse und zweite Lesedaten enthält; Vergleichen der zweiten Lese-Adresse mit dem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung; und wenn die zweite Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen, ob die zweiten Lesedaten beschädigt sind, basierend auf dem gespeicherten zweiten ECC durch die Parametersicherungsspeicherschaltung und Bereitstellen einer Fehlermitteilung, wenn festgestellt wird, dass die zweiten Lesedaten beschädigt sind.
  • Beispiel 3. Verfahren gemäß einem der Beispiele 1 oder 2, das weiterhin beinhaltet: Feststellen, ob der Kommunikationsbus inaktiv ist, durch die Parametersicherungsspeicherschaltung; und wenn der Kommunikationsbus inaktiv ist: Herausgeben eines Sicherungs-Lesebefehls an eine Sicherungsadresse der ersten Schaltung über den Kommunikationsbus durch die Parametersicherungsspeicherschaltung, Empfangen von Sicherungs-Lesedaten von der ersten Schaltung über den Kommunikationsbus durch die Parametersicherungsspeicherschaltung als Reaktion auf das Herausgeben des Sicherungs-Lesebefehls, Lesen eines Sicherungs-ECCs, der zu der Sicherungsadresse der ersten Schaltung gehört, aus dem Speicher der Parametersicherungsspeicherschaltung, Feststellen, ob die Sicherungs-Lesedaten beschädigt sind, basierend auf dem Sicherungs-ECC, und Bereitstellen einer Fehlermitteilung, wenn festgestellt wird, dass die Sicherungs-Lesedaten beschädigt sind.
  • Beispiel 4. Verfahren gemäß einem der Beispiele 1 bis 3, das weiterhin beinhaltet: Berichtigen der Sicherungs-Lesedaten unter Verwendung des Sicherungs-ECCs; und Schreiben der berichtigten Sicherungs-Lesedaten in die Sicherungsadresse der ersten Schaltung über den Kommunikationsbus.
  • Beispiel 5. Verfahren gemäß einem der Beispiele 1 bis 4, wobei das Berichtigen der Sicherungs-Lesedaten das Verwenden eines erweiterten Hamming-Codes beinhaltet.
  • Beispiel 6. Verfahren gemäß einem der Beispiele 1 bis 5, wobei das Berichtigen der Sicherungs-Lesedaten das Berichtigen von mehr als einem Fehler in den Sicherungs-Lesedaten beinhaltet.
  • Beispiel 7. Verfahren gemäß einem der Beispiele 1 bis 6, wobei der Kommunikationsbus ein paralleler Bus ist.
  • Beispiel 8. Verfahren gemäß einem der Beispiele 1 bis 7, wobei die erste Schaltung in einer ersten integrierten Schaltung angeordnet ist und wobei die Parametersicherungsspeicherschaltung in einer von der ersten integrierten Schaltung verschiedenen zweiten integrierten Schaltung angeordnet ist.
  • Beispiel 9. Integrierte Schaltung, die enthält: eine Kommunikationsschnittstelle, die dazu ausgebildet ist, mit einem Kommunikationsbus gekoppelt zu werden; eine erste Schaltung, die dazu ausgebildet ist, mit dem Kommunikationsbus gekoppelt zu werden; und eine Parametersicherungsspeicherschaltung, die dazu ausgebildet ist, mit dem Kommunikationsbus gekoppelt zu werden, wobei die Parametersicherungsspeicherschaltung einen Speicher enthält und dazu ausgebildet ist: in dem Kommunikationsbus einen Schreibbefehl an die erste Schaltung zu erkennen, wobei der Schreibbefehl eine Schreib-Adresse und Schreibdaten enthält; eine Schreib-Adresse mit einem Satz von Sicherungsadressen zu vergleichen; wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: einen Fehlerberichtigungscode (ECC) basierend auf zumindest den Schreibdaten zu erzeugen und den ECC in dem Speicher zu speichern; in dem Kommunikationsbus einen Lesebefehl an die erste Schaltung zu erkennen, wobei der Lesebefehl eine Lese-Adresse und Lesedaten enthält; die Lese-Adresse mit dem Satz von Sicherungsadressen zu vergleichen; und wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen, ob die Lesedaten beschädigt sind, basierend auf dem gespeicherten ECC und Bereitstellen einer Fehlermitteilung als Reaktion auf das Feststellen, dass die Lesedaten beschädigt sind.
  • Beispiel 10. Integrierte Schaltung gemäß Beispiel 9, wobei sich die erste Schaltung in einem ersten Bereich der integrierten Schaltung befindet und wobei sich die Parametersicherungsspeicherschaltung in einem zweiten Bereich der integrierten Schaltung befindet, wobei sich der zweite Bereich außerhalb des ersten Bereichs befindet.
  • Beispiel 11. Integrierte Schaltung gemäß Beispiel 9 oder 10, die weiterhin eine zweite Schaltung, die dazu ausgebildet ist, mit dem Kommunikationsbus gekoppelt zu werden, enthält.
  • Beispiel 12. Integrierte Schaltung gemäß einem der Beispiele 9 bis 11, die weiterhin einen einmal programmierbaren Speicher, der dazu ausgebildet ist, den Satz von Sicherungsadressen zu speichern, enthält.
  • Beispiel 13. Integrierte Schaltung gemäß einem der Beispiele 9 bis 12, wobei die Kommunikationsschnittstelle eine serielle Peripherieschnittstelle enthält.
  • Beispiel 14. Integrierte Schaltung gemäß einem der Beispiele 9 bis 13, wobei der Kommunikationsbus eines von einem fortgeschrittenen Peripheriebus oder einem fortgeschrittenen Hochleistungsbus ist.
  • Beispiel 15. Integrierte Schaltung gemäß einem der Beispiele 9 bis 14, wobei der Kommunikationsbus ein fortgeschrittener Peripheriebus ist und die integrierte Schaltung weiterhin enthält: einen ersten Peripherie-Bus-Master, der zwischen die Kommunikationsschnittstelle und die erste Schaltung gekoppelt ist; und einen zweiten Peripherie-Bus-Master, der zwischen die Kommunikationsschnittstelle und die Parametersicherungsspeicherschaltung gekoppelt ist.
  • Beispiel 16. Integrierte Schaltung gemäß einem der Beispiele 9 bis 15, die weiterhin den mit der Kommunikationsschnittstelle, der ersten Schaltung und der Parametersicherungsspeicherschaltung gekoppelten Kommunikationsbus enthält.
  • Beispiel 17. Integrierte Schaltung gemäß einem der Beispiele 9 bis 16, die weiterhin einen mit der Kommunikationsschnittstelle und mit der Parametersicherungsspeicherschaltung gekoppelten Zugriffs-Arbiter enthält, wobei der Zugriffs-Arbiter dazu ausgebildet ist, festzustellen, ob der Kommunikationsbus beschäftigt ist.
  • Beispiel 18. Parametersicherungsspeicherschaltung, die einen Speicher enthält, wobei die Parametersicherungsspeicherschaltung dazu ausgebildet ist, mit einem Kommunikationsbus gekoppelt zu werden, und dazu: in dem Kommunikationsbus einen Schreibbefehl zu erkennen, wobei der Schreibbefehl eine Schreib-Adresse und Schreibdaten enthält; die Schreib-Adresse mit einem Satz von Sicherungsadressen zu vergleichen; wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt, einen Fehlerberichtigungscode (ECC) zumindest basierend auf den Schreibdaten zu erzeugen und den ECC in dem Speicher zu speichern; in dem Kommunikationsbus einen Lesebefehl zu erkennen, wobei der Lesebefehl eine Lese-Adresse und Lesedaten enthält; die Lese-Adresse mit dem Satz von Sicherungsadressen zu vergleichen; und wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen, ob die Lesedaten beschädigt sind, basierend auf dem gespeicherten ECC und Bereitstellen einer Fehlermitteilung als Reaktion auf das Feststellen, dass die Lesedaten beschädigt sind.
  • Beispiel 19. Parametersicherungsspeicherschaltung gemäß Beispiel 18, die weiterhin einen einmal programmierbaren Speicher, der dazu ausgebildet ist, den Satz von Sicherungsadressen zu speichern, enthält.
  • Beispiel 20. Sichere Parameterspeicherspeicherschaltung gemäß einem der Beispiele 18 oder 19, wobei die Parametersicherungsspeicherschaltung dazu ausgebildet ist, die Fehlermitteilung durch Setzen eines Fehler-Flags in einem Register, auf das über den Kommunikationsbus zugegriffen werden kann, bereitzustellen.

Claims (20)

  1. Verfahren, das aufweist: Erkennen eines Schreibbefehls (222) an eine erste Schaltung in einem Kommunikationsbus (202) durch eine Parametersicherungsspeicherschaltung (206), wobei der Schreibbefehl (222) eine Schreib-Adresse und Schreibdaten aufweist, wobei die erste Schaltung von der Parametersicherungsspeicherschaltung (206) verschieden ist; Vergleichen der Schreib-Adresse (222) mit einem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung (206); wenn die Schreib-Adresse (222) mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Erzeugen eines Fehlerberichtigungscodes (ECC) basierend auf zumindest den Schreibdaten durch die Parametersicherungsspeicherschaltung (206) und Speichern des ECCs in einem Speicher der Parametersicherungsspeicherschal tung; Erkennen eines Lesebefehls (228) an die erste Schaltung in dem Kommunikationsbus (202) durch die Parametersicherungsspeicherschaltung (206), wobei der Lesebefehl (228) eine Lese-Adresse und Lesedaten aufweist; Vergleichen der Lese-Adresse mit dem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung (206); und wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen durch die Parametersicherungsspeicherschaltung (206) basierend auf dem gespeicherten ECC, ob die Lesedaten beschädigt sind, und Bereitstellen einer Fehlermitteilung, wenn festgestellt wird, dass die Lesedaten beschädigt sind.
  2. Verfahren gemäß Anspruch 1, das weiterhin aufweist: Erkennen eines zweiten Schreibbefehls an eine zweite Schaltung in dem Kommunikationsbus (202) durch die Parametersicherungsspeicherschaltung (206), wobei der zweite Schreibbefehl eine zweite Schreib-Adresse und zweite Schreibdaten aufweist; Vergleichen der zweiten Schreib-Adresse mit dem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung, wenn die zweite Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Erzeugen eines zweiten ECCs basierend auf zumindest den zweiten Schreibdaten durch die Parametersicherungsspeicherschaltung (206) und Speichern des zweiten ECCs in dem Speicher der Parametersicherungsspeicherschaltung (206); Ermitteln eines zweiten Lesebefehls an die zweite Schaltung in dem Kommunikationsbus (202) durch die Parametersicherungsspeicherschaltung (206), wobei der zweite Lesebefehl eine zweite Lese-Adresse und zweite Lesedaten aufweist; Vergleichen der zweiten Lese-Adresse mit dem Satz von Sicherungsadressen durch die Parametersicherungsspeicherschaltung; und wenn die zweite Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen, ob die zweiten Lesedaten beschädigt sind, basierend auf dem gespeicherten zweiten ECC durch die Parametersicherungsspeicherschaltung und Bereitstellen einer Fehlermitteilung, wenn festgestellt wird, dass die zweiten Lesedaten beschädigt sind.
  3. Verfahren gemäß Anspruch 1 oder 2, das weiterhin aufweist: Feststellen, ob der Kommunikationsbus (202) inaktiv ist, durch die Parametersicherungsspeicherschaltung (206); und wenn der Kommunikationsbus (202) inaktiv ist: Herausgeben eines Sicherungs-Lesebefehls an eine Sicherungsadresse der ersten Schaltung über den Kommunikationsbus (202) durch die Parametersicherungsspeicherschaltung (206), Empfangen von Sicherungs-Lesedaten von der ersten Schaltung über den Kommunikationsbus (202) durch die Parametersicherungsspeicherschaltung (206) als Reaktion auf das Herausgeben des Sicherungs-Lesebefehls, Lesen eines Sicherungs-ECCs, der zu der Sicherungsadresse der ersten Schaltung gehört, aus dem Speicher der Parametersicherungsspeicherschaltung (206), Feststellen, ob die Sicherungs-Lesedaten beschädigt sind, basierend auf dem Sicherungs-ECC, und Bereitstellen einer Fehlermitteilung, wenn festgestellt wird, dass die Sicherungs-Lesedaten beschädigt sind.
  4. Verfahren gemäß Anspruch 3, das weiterhin aufweist: Berichtigen der Sicherungs-Lesedaten unter Verwendung des Sicherungs-ECCs; und Schreiben der berichtigten Sicherungs-Lesedaten in die Sicherungsadresse der ersten Schaltung über den Kommunikationsbus (202).
  5. Verfahren gemäß Anspruch 4, wobei das Berichtigen der Sicherungs-Lesedaten das Verwenden eines erweiterten Hamming-Codes aufweist.
  6. Verfahren gemäß Anspruch 4, wobei das Berichtigen der Sicherungs-Lesedaten das Berichtigen von mehr als einem Fehler in den Sicherungs-Lesedaten aufweist.
  7. Verfahren gemäß einem der Ansprüche 1 bis 6, wobei der Kommunikationsbus (202) ein paralleler Bus ist.
  8. Verfahren gemäß einem der Ansprüche 1 bis 7, wobei die erste Schaltung in einer ersten integrierten Schaltung angeordnet ist und wobei die Parametersicherungsspeicherschaltung (206) in einer von der ersten integrierten Schaltung verschiedenen zweiten integrierten Schaltung angeordnet ist.
  9. Integrierte Schaltung, die aufweist: eine Kommunikationsschnittstelle (204), die dazu ausgebildet ist, mit einem Kommunikationsbus (202) gekoppelt zu werden; eine erste Schaltung, die dazu ausgebildet ist, mit dem Kommunikationsbus (202) gekoppelt zu werden; und eine Parametersicherungsspeicherschaltung (206), die dazu ausgebildet ist, mit dem Kommunikationsbus (202) gekoppelt zu werden, wobei die Parametersicherungsspeicherschaltung (206) einen Speicher aufweist und dazu ausgebildet ist: in dem Kommunikationsbus (202) einen Schreibbefehl (222) an die erste Schaltung zu erkennen, wobei der Schreibbefehl (222) eine Schreib-Adresse und Schreibdaten aufweist; eine Schreib-Adresse mit einem Satz von Sicherungsadressen zu vergleichen; wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: einen Fehlerberichtigungscode (ECC) basierend auf zumindest den Schreibdaten zu erzeugen und den ECC in dem Speicher zu speichern; in dem Kommunikationsbus (202) einen Lesebefehl (228) an die erste Schaltung zu erkennen, wobei der Lesebefehl (228) eine Lese-Adresse und Lesedaten aufweist; die Lese-Adresse mit dem Satz von Sicherungsadressen zu vergleichen; und wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen, ob die Lesedaten beschädigt sind, basierend auf dem gespeicherten ECC und Bereitstellen einer Fehlermitteilung als Reaktion auf das Feststellen, dass die Lesedaten beschädigt sind.
  10. Integrierte Schaltung gemäß Anspruch 9, wobei sich die erste Schaltung in einem ersten Bereich der integrierten Schaltung (200) befindet und wobei sich die Parametersicherungsspeicherschaltung (206) in einem zweiten Bereich der integrierten Schaltung (200) befindet, wobei sich der zweite Bereich außerhalb des ersten Bereichs befindet.
  11. Integrierte Schaltung gemäß Anspruch 9 oder 10, die weiterhin eine zweite Schaltung, die dazu ausgebildet ist, mit dem Kommunikationsbus (202) gekoppelt zu werden, aufweist.
  12. Integrierte Schaltung gemäß einem der Ansprüche 9 bis 11, die weiterhin einen einmal programmierbaren Speicher, der dazu ausgebildet ist, den Satz von Sicherungsadressen zu speichern, aufweist.
  13. Integrierte Schaltung gemäß einem der Ansprüche 9 bis 12, wobei die Kommunikationsschnittstelle (204) eine serielle Peripherieschnittstelle aufweist.
  14. Integrierte Schaltung gemäß einem der Ansprüche 9 bis 13, wobei der Kommunikationsbus (202) eines von einem fortgeschrittenen Peripheriebus oder einem fortgeschrittenen Hochleistungsbus ist.
  15. Integrierte Schaltung gemäß Anspruch 14, wobei der Kommunikationsbus (202) ein fortgeschrittener Peripheriebus ist und die integrierte Schaltung (200) weiterhin aufweist: einen ersten Peripherie-Bus-Master (208), der zwischen die Kommunikationsschnittstelle (204) und die erste Schaltung gekoppelt ist; und einen zweiten Peripherie-Bus-Master (210), der zwischen die Kommunikationsschnittstelle (204) und die Parametersicherungsspeicherschaltung (206) gekoppelt ist.
  16. Integrierte Schaltung gemäß einem der Ansprüche 9 bis 15, die weiterhin den mit der Kommunikationsschnittstelle (204), der ersten Schaltung und der Parametersicherungsspeicherschaltung (206) gekoppelten Kommunikationsbus (202) aufweist.
  17. Integrierte Schaltung gemäß einem der Ansprüche 9 bis 16, die weiterhin einen mit der Kommunikationsschnittstelle (204) und der Parametersicherungsspeicherschaltung (206) gekoppelten Zugriffs-Arbiter (212) aufweist, wobei der Zugriffs-Arbiter (212) dazu ausgebildet ist, festzustellen, ob der Kommunikationsbus (202) beschäftigt ist.
  18. Parametersicherungsspeicherschaltung, die einen Speicher aufweist, wobei die Parametersicherungsspeicherschaltung (206) dazu ausgebildet ist, mit einem Kommunikationsbus (202) gekoppelt zu werden, und dazu: in dem Kommunikationsbus (202) einen Schreibbefehl (222) zu erkennen, wobei der Schreibbefehl (222) eine Schreib-Adresse und Schreibdaten aufweist; die Schreib-Adresse mit einem Satz von Sicherungsadressen zu vergleichen; wenn die Schreib-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: einen Fehlerberichtigungscode (ECC) zumindest basierend auf den Schreibdaten zu erzeugen und den ECC in dem Speicher zu speichern; in dem Kommunikationsbus (202) einen Lesebefehl (228) zu erkennen, wobei der Lesebefehl eine Lese-Adresse und Lesedaten aufweist; die Lese-Adresse mit dem Satz von Sicherungsadressen zu vergleichen; und wenn die Lese-Adresse mit einer Sicherungsadresse des Satzes von Sicherungsadressen übereinstimmt: Feststellen, ob die Lesedaten beschädigt sind, basierend auf dem gespeicherten ECC und Bereitstellen einer Fehlermitteilung als Reaktion auf das Feststellen, dass die Lesedaten beschädigt sind.
  19. Parametersicherungsspeicherschaltung gemäß Anspruch 18, die weiterhin einen einmal programmierbaren Speicher, der dazu ausgebildet ist, den Satz von Sicherungsadressen zu speichern, aufweist.
  20. Sichere Parameterspeicherspeicherschaltung gemäß Anspruch 18, wobei die Parametersicherungsspeicherschaltung (206) dazu ausgebildet ist, die Fehlermitteilung durch Setzen eines Fehler-Flags in einem Register, auf das über den Kommunikations-bus (202) zugegriffen werden kann, bereitzustellen.
DE102020111321.8A 2019-05-03 2020-04-26 System und verfahren zur erkennung und berichtigung von datenfehlern eines transparenten registers Pending DE102020111321A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/402,532 US11768731B2 (en) 2019-05-03 2019-05-03 System and method for transparent register data error detection and correction via a communication bus
US16/402,532 2019-05-03

Publications (1)

Publication Number Publication Date
DE102020111321A1 true DE102020111321A1 (de) 2020-11-05

Family

ID=72839087

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020111321.8A Pending DE102020111321A1 (de) 2019-05-03 2020-04-26 System und verfahren zur erkennung und berichtigung von datenfehlern eines transparenten registers

Country Status (3)

Country Link
US (1) US11768731B2 (de)
CN (1) CN111880961A (de)
DE (1) DE102020111321A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11217323B1 (en) 2020-09-02 2022-01-04 Stmicroelectronics International N.V. Circuit and method for capturing and transporting data errors
US11698833B1 (en) 2022-01-03 2023-07-11 Stmicroelectronics International N.V. Programmable signal aggregator

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4916704A (en) * 1987-09-04 1990-04-10 Digital Equipment Corporation Interface of non-fault tolerant components to fault tolerant system
US5404462A (en) * 1992-10-16 1995-04-04 Unisys Corporation Dual bus interface transfer system for central processing module
US5592631A (en) * 1995-05-02 1997-01-07 Apple Computer, Inc. Bus transaction reordering using side-band information signals
US7043673B1 (en) * 2001-08-03 2006-05-09 Netlogic Microsystems, Inc. Content addressable memory with priority-biased error detection sequencing
US7620875B1 (en) * 2006-03-07 2009-11-17 Xilinx, Inc. Error correction code memory system with a small footprint and byte write operation
US7958433B1 (en) * 2006-11-30 2011-06-07 Marvell International Ltd. Methods and systems for storing data in memory using zoning
US8365044B2 (en) * 2007-04-23 2013-01-29 Agere Systems Inc. Memory device with error correction based on automatic logic inversion
US20090132876A1 (en) * 2007-11-19 2009-05-21 Ronald Ernest Freking Maintaining Error Statistics Concurrently Across Multiple Memory Ranks
US8738995B2 (en) * 2009-09-10 2014-05-27 Hewlett-Packard Development Company, L.P. Memory subsystem having a first portion to store data with error correction code information and a second portion to store data without error correction code information
WO2011073710A1 (en) * 2009-12-16 2011-06-23 Sandisk Il Ltd Auxiliary parity bits for data written in multi-level cells
US8335976B2 (en) * 2010-05-24 2012-12-18 Oracle America, Inc. Memory system that provides guaranteed component-failure correction with double-error correction
KR101750457B1 (ko) * 2010-12-30 2017-06-23 삼성전자주식회사 Ecc를 이용하는 메모리 장치 및 그 시스템
US9189329B1 (en) * 2011-10-13 2015-11-17 Marvell International Ltd. Generating error correcting code (ECC) data using an ECC corresponding to an identified ECC protection level
US9612901B2 (en) * 2012-03-30 2017-04-04 Intel Corporation Memories utilizing hybrid error correcting code techniques
US9658975B2 (en) * 2012-07-31 2017-05-23 Silicon Laboratories Inc. Data transfer manager
KR102143517B1 (ko) * 2013-02-26 2020-08-12 삼성전자 주식회사 에러 정정회로를 포함하는 반도체 메모리 장치 및 반도체 메모리 장치의 동작방법
US9690650B2 (en) * 2013-03-11 2017-06-27 Macronix International Co., Ltd. Storage scheme for built-in ECC operations
US9323602B2 (en) * 2014-01-20 2016-04-26 Freescale Semiconductor, Inc. Error correction with extended CAM
US9558066B2 (en) * 2014-09-26 2017-01-31 Intel Corporation Exchanging ECC metadata between memory and host system
US9665423B2 (en) * 2015-06-15 2017-05-30 Nxp Usa, Inc. End-to-end error detection and correction
US9864654B2 (en) * 2015-09-21 2018-01-09 Sandisk Technologies Llc Detecting data indicated as being uncorrectable at a data storage device
CN106933751B (zh) * 2015-12-29 2019-12-24 澜起科技股份有限公司 用于保护动态随机访问存储器的方法和设备
US20190332469A1 (en) * 2019-07-05 2019-10-31 Intel Corporation Address range based in-band memory error-correcting code protection module with syndrome buffer

Also Published As

Publication number Publication date
CN111880961A (zh) 2020-11-03
US11768731B2 (en) 2023-09-26
US20200349001A1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
DE602004003275T2 (de) Nichtflüchtiger Speicher mit Seiten-Kopierfunktion und entsprechendes Verfahren
DE102011108933B4 (de) Sichere Speicherung durch interne Betriebssicherstellung
DE102013215055B4 (de) Schaltungsanordnung, Vorrichtung, Verfahren und Computerprogramm mit modifiziertem Fehlersyndrom zur Fehlererkennung von permanenten Fehlern in Speichern
DE3903496C2 (de)
DE102005048255A1 (de) Integriertes Schaltungsbauelement und Betriebsverfahren
DE102006048856B4 (de) Verfahren zum Betreiben einer IC-Halbleiterspeichervorrichtung und IC-Halbleiterspeichervorrichtung
DE102010051813B4 (de) Fehlerkorrekturmechanismen für 8-Bit Speichergeräte
DE3111447C2 (de)
DE3128740C2 (de)
DE2619159A1 (de) Fehlererkennungs- und korrektureinrichtung
DE112007003015T5 (de) Verfahren und Vorrichtung zur Cache-gestützten Fehlerdetektion und -korrektur in einem Speicher
DE2225841B2 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
EP2100308B1 (de) Verfahren und halbleiterspeicher mit einer einrichtung zur erkennung von adressierungsfehlern
WO1998009219A1 (de) Fehlererkennung in einem speichersystem
DE102020111321A1 (de) System und verfahren zur erkennung und berichtigung von datenfehlern eines transparenten registers
DE102017103347A1 (de) Verarbeitung von daten in speicherzellen eines speichers
DE2157829C2 (de) Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern
DE102018124836A1 (de) Neuartiger speicherbaustein
EP1588380B1 (de) Verfahren zur erkennung und/oder korrektur von speicherzugriffsfehlern und elektronische schaltungsanordnung zur durchführung des verfahrens
DE2549392C3 (de) Verfahren zur Erhöhung der Zuverlässigkeit von integrierten Speicherbausteinen und zur Verbesserung der Ausbeute von nach außen hin fehlerfrei erscheinenden Speicherbausteinen bei ihrer Herstellung
DE102016104012A1 (de) Verarbeitung eines Datenworts
DE102018219877A1 (de) Vorrichtung und Verfahren zum Erzeugen einer Fehlerkorrekturinformation
EP0127118A1 (de) Speichersteueranordnung, insbesondere für fehlertolerantes Fernsprech-Vermittlungssystem
DE102006036384A1 (de) Mikroprozessorsystem zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen
DE102019113970B4 (de) Erkennung von adressfehlern

Legal Events

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