DE102017115057B4 - Method for checking security-relevant register or memory cells for stuck-at errors during operation by comparing two write processes with different inversion states - Google Patents

Method for checking security-relevant register or memory cells for stuck-at errors during operation by comparing two write processes with different inversion states Download PDF

Info

Publication number
DE102017115057B4
DE102017115057B4 DE102017115057.9A DE102017115057A DE102017115057B4 DE 102017115057 B4 DE102017115057 B4 DE 102017115057B4 DE 102017115057 A DE102017115057 A DE 102017115057A DE 102017115057 B4 DE102017115057 B4 DE 102017115057B4
Authority
DE
Germany
Prior art keywords
data
memory
register cells
stored
inverted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102017115057.9A
Other languages
German (de)
Other versions
DE102017115057A1 (en
Inventor
Andre Sudhaus
Jens-Arne Schürstedt
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.)
Elmos Semiconductor SE
Original Assignee
Elmos Semiconductor SE
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 Elmos Semiconductor SE filed Critical Elmos Semiconductor SE
Priority to DE102017115057.9A priority Critical patent/DE102017115057B4/en
Priority to CN201810731582.9A priority patent/CN109215723B/en
Publication of DE102017115057A1 publication Critical patent/DE102017115057A1/en
Application granted granted Critical
Publication of DE102017115057B4 publication Critical patent/DE102017115057B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Es wird ein Verfahren zur Überprüfung von Speicher- oder Registerzellen einer integrierten Schaltung auf Stuck-at-Fehler während des Betriebs dieser integrierten Schaltung vorgeschlagen, bei dem Teile der in den Speicher- oder Registerzellen abzulegenden Daten während des Betriebs mal invertiert, mal nicht invertiert abgelegt werden. Eine Information über die Invertierung wird mitabgelegt, sodass die Information rekonstruiert werden kann. Tritt ein Fehler durch einen Stuck-At-Fehler eines einzelnen Bits auf, so kann durch geeignete Invertierung der abzulegenden Daten und die entsprechende Information über die Invertierung die Speicherzelle in einem Notlaufmodus weiter genutzt werden. Ein weiterer Vorteil ist, dass hierdurch die Fehlerklasse „Stuck-At“ eindeutig identifiziert werden kann. Konkret wird die Fehlerdetektion durch ein erstes Abspeichern und Lesen der abzuspeichernden Daten und ein zweites Abspeichern und Lesen der gespeicherten Daten sichergestellt, wobei das zweite Abspeichern so erfolgt, das die Daten in den Speicher- und Registerzellen zumindest teilweise gegenüber dem ersten Speichern und Lesen beim zweiten Speichern und Lesen invertiert abgelegt werden.A method for checking memory or register cells of an integrated circuit for stuck-at errors during the operation of this integrated circuit is proposed in which parts of the data to be stored in the memory or register cells are stored inverted, sometimes not inverted, during operation become. Information about the inversion is included so that the information can be reconstructed. If an error occurs due to a stuck-at error of a single bit, the memory cell can be further used in an emergency mode by suitable inversion of the data to be stored and the corresponding information about the inversion. Another advantage is that this can clearly identify the defect class "Stuck-At". Specifically, the error detection is ensured by first storing and reading the data to be stored and a second storing and reading the stored data, wherein the second storage is carried out so that the data in the memory and register cells at least partially compared to the first storage and reading at the second Save and read are stored inverted.

Description

Oberbegriffpreamble

Es werden Verfahren zur Überprüfung von Speicher- oder Registerzellen einer integrierten Schaltung auf Stuck-at-Fehler während des Betriebs dieser integrierten Schaltung vorgeschlagen.Methods for checking memory or register cells of an integrated circuit for stuck-at errors during operation of this integrated circuit are proposed.

Allgemeine EinleitungGeneral introduction

Im Umfeld sicherheitsrelevanter integrierter Schaltungen sollen latente Fehler in Speicher- oder Registerzellen, die während des Betriebs z.B. durch Degradation etc. auftreten, gefunden werden, Dies betrifft beispielsweise Kalibrationsregister mit nahezu statischem Inhalt. Darüber hinaus besteht der Wunsch Register bei einem Einzelfehler nutzbar zu halten.In the field of safety-related integrated circuits, latent errors in memory or register cells, which occur during operation, e.g. due to degradation, etc. This applies, for example, to calibration registers with virtually static content. In addition, there is a desire register to keep usable in a single error.

Stand der TechnikState of the art

Aus dem Stand der Technik ist eine Registerabsicherung über redundante Daten wie CRC-Checksummen oder Parity-Bits bekannt. Sofern ein Parity-Fehler beispielsweise auftritt, ist das Register jedoch nicht mehr nutzbar. Dies kann in manchen Fällen zu Ausfällen führen.From the state of the art, register protection via redundant data such as CRC checksums or parity bits is known. However, if a parity error occurs, the register is no longer usable. This can in some cases lead to failures.

Beide Mechanismen allein finden einen Stuck-at Fehler erst bei tatsächlicher Variation aller Bits. Ein Register mit sicherheitsrelevantem Inhalt hätte damit das Potential, latente Fehler zu verdecken (z.B. Crashdaten wie Druck oder Beschleunigung, die typischerweise im Normalbetriebsfall ohne Crash keine deutliche Variation im Inhalt aufweisen).Both mechanisms alone find a stuck-at error only with actual variation of all bits. A registry with security relevant content would thus have the potential to obscure latent errors (e.g., crash data such as pressure or acceleration, which typically have no significant variation in content in normal operation without a crash).

Aus der DE 10 2013 215 055 A1 ist eine Schaltungsanordnung zur Erkennung von Speicherfehlern bekannt. Diese Schaltungsanordnung beinhaltet einen Speicher und eine Fehlererkennungsschaltung. Hierbei ist die Schaltungsanordnung so ausgelegt, dass sie ein Codewort eines fehlererkennenden Codes oder in einer Teilmenge von Bits invertiertes Codewort in dem Speicher an einem Speicherort speichert und ein Datenwort aus dem Speicher von dem Speicherort ausliest. Die Fehlererkennungsschaltung ist so ausgelegt, einen Speicherfehler anzuzeigen, wenn ein anliegendes Steuersignal einen ersten Wert annimmt, wenn das Datenwort kein Codewort des fehlererkennenden Codes ist. Zusätzlich ist die Fehlererkennungsschaltung so ausgelegt, dass im Falle, dass das anliegende Steuersignal einen zweiten Wert annimmt, der vom ersten Wert verschieden ist, und an den Speicherort das in der Teilmenge von Bits invertierte Codewort geschrieben wurde, anhand des aus dem Speicher ausgelesenen Datenworts zu bestimmen, ob ein Speicherfehler vorliegt, wenn das in der Teilmenge von Bits invertierte Codewort kein Codewort des fehlererkennenden Codes ist.From the DE 10 2013 215 055 A1 a circuit arrangement for detecting memory errors is known. This circuit includes a memory and an error detection circuit. In this case, the circuit arrangement is designed such that it stores a code word of an error-detecting code or in a subset of bits inverted codeword in the memory at a memory location and reads a data word from the memory of the memory location. The error detection circuit is configured to indicate a memory error when an applied control signal takes a first value when the data word is not a code word of the error-detecting code. In addition, the error detection circuit is designed such that in the event that the applied control signal assumes a second value other than the first value, and the codeword inverted in the subset of bits has been written to the memory location, the data word read from the memory is allocated determine if there is a memory error if the codeword inverted in the subset of bits is not a codeword of the error-detecting code.

Aus US 9 075 742 B2 ist ein Speicher bekannt, welcher eine Schreibeinrichtung umfasst, die Datenbits, Prüfbits zur Fehlerkorrektur und Overheadbits in einen Speicher schreibt, wobei jedes Bit des Overheadbits entsprechende jeder Gruppe von Bitgruppen einschließlich mindestens ein Bit der Datenbits und/oder der Prüfbits, wobei jedes Bit des Overhead-Bits anzeigt, ob die entsprechende Bitgruppe invertiert wurde, eine Leseeinheit, die die Datenbits, die Prüfbits und das Overheadbit aus dem Speicher liest, eine korrigierende Einheit, die einen Fehler in den Datenbits und Overheadbits, welche aus dem Speicher gelesen wurde, korriegiert, basierend auf den Prüfbits und eine Invertiereinheit, welche die Datenbits in der Bitgruppe entsprechend dem Overhead-Bit invertiert und die invertierten Datenbits als aus dem Speicher gelesene Daten ausgibt, falls der fehlerkorrigierte Overheadbit anzeigt, dass eine Inversion durchgeführt wurde.Out US Pat. No. 9,075,742 B2 a memory is known which comprises a writing device which writes data bits, error correction check bits and overhead bits into a memory, each bit of the overhead bit corresponding to each group of bit groups including at least one bit of the data bits and / or the check bits, each bit of the overhead Bits indicating whether the corresponding bit group has been inverted, a reading unit reading the data bits, the check bits and the overhead bit from the memory, a correcting unit which corrects an error in the data bits and overhead bits read from the memory, based on the check bits and an inverting unit which inverts the data bits in the bit group corresponding to the overhead bit and outputs the inverted data bits as data read from the memory if the error-corrected overhead bit indicates that an inversion has been performed.

Alle diese Schriften aus dem Stand der Technik lösen das Problem nicht.All of these prior art documents do not solve the problem.

Aufgabe des vorgeschlagenen VerfahrensTask of the proposed method

Die Aufgabe besteht somit darin, in Registern sicherheitsrelevanter ICs mit quasi-statischem Inhalt eine Überprüfung auf Stuck-At Fehler zu ermöglichen oder diese sogar trotz des Fehlers nutzbar zu halten. Hierzu ist ein Verfahren zum Auffinden potentiell nicht änderbarer Inhalte („Stuck-At“ Fehler) notwendig. Ein Notlaufbetrieb bei reduzierter Performance soll ermöglicht werden.The task is thus to allow a check for stucco-at faults in registers of security-relevant ICs with quasi-static content or even to keep them usable despite the fault. For this purpose, a method for finding potentially unchangeable content ("stucco-at" error) is necessary. An emergency mode with reduced performance should be possible.

Diese Aufgabe wird durch Verfahren nach Anspruch 1 gelöst.This object is achieved by the method according to claim 1.

Lösung der AufgabeSolution of the task

Es wird ein Verfahren zur Überprüfung von Speicher- oder Registerzellen einer integrierten Schaltung auf Stuck-at-Fehler und ggf. Bridging-Faults während des Betriebs dieser integrierten Schaltung vorgeschlagen. Das Verfahren beginnt mit dem Bereitstellen der in den zu überprüfenden Speicher- oder Registerzellen zu speichernden Daten. Diese zu speichernden Daten können zumindest in einen ersten und einen zweiten Teil aufgeteilt werden. Es ist denkbar, die Daten in mehr als zwei Teile aufzuteilen und diese unterschiedlich zu behandeln. Beispielsweise kann ein dritter Teil der Daten nicht abgesichert werden. Hier wird jedoch davon ausgegangen, dass beide Teile beispielsweise durch ein Parity-Bit oder eine CRC-Prüfsumme abgesichert werden, wobei nur die Speicher- und Registerzellen des ersten Teils einer Funktionsprüfung unterzogen werden. Der erste Teil der abzuspeichernden Daten und der zweite Teil der abzuspeichernden Daten sind überschneidungsfrei. Das bedeutet, dass ein Datum (und damit die zugehörige Register- oder Speicherzelle) entweder dem ersten Teil oder dem zweiten Teil zugehörig ist, nie aber beiden Teilen. Der erste Teil kann alle zu speichernden Daten umfassen. Der zweite Teil kann auch keine Daten umfassen. Der erste Teil sollte aber mindestens ein Datum enthalten, also mindestens ein Bit. Zu diesen abzuspeichernden Daten wird eine Prüfinformation hinzugefügt. Diese Prüfinformation kann vor oder nach der nachfolgenden teilweisen oder gesamten Inversion der abzuspeichernden Daten erfolgen. Beim Leseprozess muss dieser Vorgang dann nur in der umgekehrten Reihenfolge aufgehoben werden. Vorzugsweise wird die Prüfinformation Teil der abzuspeichernden Daten. Damit werden die Speicher- und Registerzellen für diese Prüfinformation dann selbst ebenfalls der Prüfung unterzogen. Das Hinzufügen einer Prüfinformation, insbesondere einer CRC-Checksumme zu den zu speichernden Daten ist somit ein wichtiger Teil des Verfahrens. Hierdurch wird diese Prüfinformation Teil der abzuspeichernden Daten. Diese zu speichernden Daten werden dann im Folgenden zu abgesicherten zu speichernden Daten. Es folgt typischerweise die Festlegung, ob und welcher erster Teil dieser abgesicherten zu speichernden Daten invertiert in den Speicher- oder Registerzellen abgelegt werden soll. Hierbei kann beispielsweise vorgesehen sein, alle Bits dieser Daten vor der Ablage zu invertieren oder nur bestimmte Daten oder ein bestimmtes Muster, beispielsweise jedes zweite Bit etc. Das Vorsehen von Mustern hinsichtlich der Inversion vor der Ablage hat den Vorteil, dass dann nicht nur Stuck-At-Fehler detektiert werden können, sondern dass auch Kurzschlüsse zwischen Leitungen erkannt werden können. Es ist besonders vorteilhaft, wenn die zu verwendenden Muster aufgrund der zum Produktionszeitpunkt der integrierten elektronischen Schaltung vorbekannten Topologie der Leitungen der integrierten mikroelektronischen Schaltung vorberechnet werden. Aufgrund dieser Topologie sind nämlich nur bestimmte Kurzschlüsse tatsächlich wahrscheinlich oder möglich.A method is proposed for checking memory or register cells of an integrated circuit for stuck-at errors and possibly bridging faults during the operation of this integrated circuit. The method begins by providing the data to be stored in the memory or register cells to be checked. These data to be stored can be divided at least into a first and a second part. It is conceivable to divide the data into more than two parts and treat them differently. For example, a third part of the data can not be secured. Here, however, it is assumed that both parts are protected by a parity bit or a CRC checksum, for example, whereby only the memory and register cells of the first part are subjected to a functional test. The first part of data to be stored and the second part of the data to be stored are non-overlapping. This means that a datum (and hence the associated register or memory cell) belongs to either the first part or the second part but never to both parts. The first part can include all data to be stored. The second part can not include any data. The first part should contain at least one date, at least one bit. For this data to be stored, a check information is added. This check information can take place before or after the subsequent partial or total inversion of the data to be stored. In the reading process, this process must then be reversed only in the reverse order. Preferably, the check information is part of the data to be stored. The memory and register cells for this test information are then also subjected to the test itself. The addition of a check information, in particular a CRC checksum to the data to be stored is thus an important part of the method. As a result, this check information is part of the data to be stored. In the following, this data to be stored will then become secured data to be stored. It typically follows the determination of whether and which first part of this secure data to be stored is to be stored inverted in the memory or register cells. In this case, it may be provided, for example, to invert all bits of this data before storage or only certain data or a specific pattern, for example every other bit etc. The provision of patterns with regard to inversion before storage has the advantage that not only stucco At-fault can be detected, but that short circuits between lines can be detected. It is particularly advantageous if the patterns to be used are precalculated due to the previously known at the time of production of the integrated electronic circuit topology of the lines of the integrated microelectronic circuit. Because of this topology, only certain shorts are actually likely or possible.

Auch können auf diese Weise Mustersequenzen berechnet werden, die nacheinander in die Speicherzellen geschrieben werden sollten. Der ganz große Vorteil des vorliegenden Vorschlags ist, dass er eine Prüfmethode angibt, mit der solche Testmuster als invertierte Muster von Nutzdaten erzeugt werden können, ohne die Nutzung während des Betriebs zu unterbrechen.Also, pattern sequences can be calculated in this way, which should be successively written into the memory cells. The great advantage of the present proposal is that it provides a test method that allows such test patterns to be generated as inverted patterns of payload without interrupting use during operation.

Diese Testmuster können zur Detektion von Bridging-Faults verwendet werden.These test patterns can be used to detect bridging faults.

Zusammen mit der späteren Ablage der abzuspeichernden Daten in den Speicher- und/oder Registerzellen erfolgt die Ablage mindesten einer korrespondierenden zusätzlichen Dateninformation, die markiert ob und welche Teile der abgesicherten gespeicherten Daten als erster Teil der abgesicherten gespeicherten Daten invertiert oder nicht invertiert werden sollen bzw. invertiert sind, wenn sie abgelegt sind. Diese zusätzliche Dateninformation wird bevorzugt so abgelegt, dass auch deren Registerbits einer Überprüfung unterzogen werden können. Beispielsweise ist es möglich, drei Bits vorzusehen, von denen zwei immer den inversen Wert des dritten Bits beinhalten müssen. Man kann beim Lesen nun das dritte dieser Bits invertieren und darauf prüfen, ob alle Bits den gleichen Wert haben. Ist dies nicht der Fall, ist diese zusätzliche Dateninformation an sich fehlerhaft. Dieser so ermittelte Wert kann dann genutzt werden um zu erkennen, ob ein erster Teil der gelesenen Dateninformationen invertiert wurde oder nicht. Die zusätzliche Dateninformation sollte also zumindest einen ersten Status aufweisen, wenn der erste Teil der abgesicherten gespeicherten Daten nicht invertiert abgelegt werden soll bzw. nicht invertiert abgelegt wurde und einen zweiten Status aufweisen, wenn der erste Teil der abgesicherten gespeicherten Daten invertiert werden soll bzw. invertiert abgelegt wurde. Beim Abspeichern der abzulegenden Daten in den betreffenden Register- und/oder Speicherzellen wird diese Information berücksichtigt. Diese zusätzliche Dateninformation wird zwischen verschiedenen Schreibvorgängen auf diese Speicher oder Registerzellen modifiziert. Bevorzugt umfasst die Nettoinformation nur ein Bit, das angibt, ob die abzulegenden Daten bzw. die abgelegten Daten invertiert sein sollen bzw. invertiert sind. In dem Fall wird die zusätzliche Dateninformation zwischen Schreibzugriffen auf die Register- und/oder Speicherzellen invertiert. Eine besondere Variante sieht eine Neugenerierung der zusätzlichen Dateninformation für jeden Schreibzugriff auf die Register- und/oder Speicherzellen vor. Hierbei kann beispielsweise diese Neugenerierung auch durch ein Zufallsprinzip in einem Zufallsgenerator erfolgen. Je nach dem logischen Inhalt der zusätzlichen Dateninformation erfolgt eine nicht invertierte Ablage des ersten Teils der abgesicherten zu speichernden Daten in einem, dem ersten Teil der abgesicherten zu speichernden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die zusätzliche Dateninformation einen ersten Status aufweist und eine invertierte Ablage des ersten Teils der abgesicherten zu speichernden Daten in einem, dem ersten Teil der abgesicherten zu speichernden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die zusätzliche Dateninformation einen zweiten Status aufweist. Für den zweiten Teil der abzulegenden Daten erfolgt eine nicht invertierte Ablage des zweiten Teils der abgesicherten zu speichernden Daten in einem, dem zweiten Teil der abgesicherten zu speichernden Daten entsprechenden, zweiten Teil der Speicher- oder Registerzellen. Dieser zweite Teil der Daten wird also nicht invertiert. Somit findet für diesen zweiten Teil der Daten auch keine Überprüfung des zugehörigen zweiten Teils der Speicher- und Registerzellen statt. Diese Speicher- und Registerzellen diese zweiten teils der Speicher- und Registerzellen sind von den Speicher- und Registerzellen des ersten Teils der Speicher und Registerzellen verschieden.Together with the subsequent filing of the data to be stored in the memory and / or register cells, the filing takes place at least one corresponding additional data information that marks whether and which parts of the protected stored data are to be inverted or not inverted as the first part of the saved stored data or are inverted when they are stored. This additional data information is preferably stored so that its register bits can also be subjected to a check. For example, it is possible to provide three bits, two of which must always include the inverse of the third bit. Now you can invert the third of these bits while reading and check whether all bits have the same value. If this is not the case, this additional data information itself is faulty. This value thus determined can then be used to detect whether a first part of the read data information has been inverted or not. The additional data information should therefore have at least a first status if the first part of the saved stored data is not to be stored inverted or not inverted and has a second status if the first part of the saved stored data is to be inverted or inverted was filed. When storing the data to be stored in the relevant register and / or memory cells, this information is taken into account. This additional data information is modified between different writes to these memories or register cells. Preferably, the net information comprises only one bit, which indicates whether the data to be stored or the stored data should be inverted or are inverted. In that case, the additional data information is inverted between write accesses to the register and / or memory cells. A particular variant provides for a regeneration of the additional data information for each write access to the register and / or memory cells. Here, for example, this regeneration can also be done by a random principle in a random number generator. Depending on the logical content of the additional data information, a non-inverted filing of the first part of the protected data to be stored takes place in a first part of the memory or register cells corresponding to the first part of the protected data to be stored, if the additional data information has a first status and an inverted storage of the first part of the data to be saved to be stored in a first part of the memory or register cells corresponding to the first part of the data to be backed up, if the additional data information has a second status. For the second part of the data to be stored, a non-inverted filing of the second part of the protected data to be stored takes place in a second part of the memory or register cells corresponding to the second part of the protected data to be stored. This second part of the data is not inverted. Thus, for this second takes place Part of the data also no review of the associated second part of the memory and register cells instead. These memory and register cells, these second part of the memory and register cells, are different from the memory and register cells of the first part of the memory and register cells.

Zu einem typischerweise späteren Zeitpunkt erfolgt das Lesen der mindesten einen zusätzlichen Dateninformation aus dem ersten und zweiten Teil der Speicher und Registerzellen als gelesene zusätzliche Dateninformation. Auf Basis dieser gelesenen zusätzlichen Dateninformation wird nun festgestellt, ob und welcher erster Teil der abgesicherten gespeicherten Daten in den Speicher- oder Registerzellen invertiert abgelegt worden ist. Je nachdem erfolgt dann das nicht invertierende Lesen eines, dem ersten Teil der Daten der Speicher- oder Registerzellen entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene zusätzliche Dateninformation einen ersten Status aufweist, um den ersten Teil der gelesenen Daten zu erhalten bzw. das invertierende Lesen des, dem ersten Teil der Daten der Speicher- oder Registerzellen entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene zusätzliche Dateninformation einen zweiten Status aufweist, um den ersten Teil der gelesenen Daten zu erhalten. Darüber hinaus erfolgt dabei das nicht invertierende Lesen eines, dem zweiten Teil der Daten der Speicher- oder Registerzellen entsprechenden, zweiten Teils der Speicher- oder Registerzellen, um den zweiten Teil der gelesenen Daten zu erhalten. Es folgt dann die Extraktion der Prüfinformation aus dem ersten Teil und/oder dem zweiten Teil der gelesenen Daten und die Durchführung einer Überprüfung der Daten auf Korrektheit mit Hilfe dieser extrahierten Prüfinformation. Besonders vorteilhaft ist die Verwendung einer CRC Prüfsumme, die mit den Daten als Teil derselben abgespeichert wird, sodass an dieser Stelle im Prozess eine CRC-Überprüfung (CRC-Check) durchgeführt wird. Es erfolgt dann die Ausgabe oder Verarbeitung oder Bereitstellung einer Fehlermeldung bei Auftreten eines Fehlers bei dieser Überprüfung.At a typically later time, the reading of the at least one additional data information from the first and second part of the memory and register cells takes place as read additional data information. On the basis of this read additional data information it is now determined whether and which first part of the saved stored data has been stored inverted in the memory or register cells. Depending on this, the non-inverting reading of a first part of the memory or register cells corresponding to the first part of the data of the memory or register cells takes place when the read additional data information has a first status in order to obtain the first part of the read data the inverting reading of the first part of the memory or register cells corresponding to the first part of the data of the memory or register cells when the read additional data information has a second status to obtain the first part of the read data. In addition, the non-inverting reading of a second part of the memory or register cells corresponding to the second part of the data of the memory or register cells takes place in order to obtain the second part of the read data. This is then followed by the extraction of the check information from the first part and / or the second part of the read data and the execution of a check of the data for correctness with the aid of this extracted check information. Particularly advantageous is the use of a CRC checksum, which is stored with the data as part of the same, so that at this point in the process a CRC check (CRC Check) is performed. The output or processing or provision of an error message occurs when an error occurs during this check.

Das zuvor beschriebene vorgeschlagene Verfahren hat den Vorteil, dass die Prüfung immer stattfindet und kein zusätzlicher Zeitaufwand bis auf die Gatterlaufzeiten der zusätzlichen Logikstufen entsteht. Es ist aber denkbar, einen ähnlichen Test ohne abgespeicherte Prüfinformationen wie Parity-Bits oder CRC-Prüfsummen durchzuführen. Statt des Zusatzaufwands durch zusätzliche Speicher- und Registerzellen wird der Zusatzaufwand dann in den Zeitaufwand für das Beschreiben der Speicher- und Registerzellen verschoben. Die Anzahl der benötigten Speicher- und Registerzellen sinkt dadurch. Auf der anderen Seite findet die Prüfung aber nur zum Zeitpunkt des Beschreibens statt. Ein Kippen des logischen Inhalts von Speicher- und Registerzellen lässt sich dann nicht ohne Weiteres beobachten. Statt eine Prüfinformation mit abzulegen, wird eine geschriebene Information möglichst unmittelbar nach der Ablage der Daten in den Speicher- und Registerzellen durch Auslesen verifiziert.The proposed method described above has the advantage that the check always takes place and no additional expenditure of time arises up to the gate run times of the additional logic stages. However, it is conceivable to perform a similar test without stored test information such as parity bits or CRC checksums. Instead of the overhead of additional memory and register cells, the overhead is then shifted to the overhead for writing the memory and register cells. The number of memory and register cells required thereby decreases. On the other hand, the test takes place only at the time of writing. Tilting the logical contents of memory and register cells can then not be easily observed. Instead of storing a check information, a written information is verified by reading as soon as possible after the storage of the data in the memory and register cells.

Es wird daher eine Verfahrensvariante zur Überprüfung von Speicher- oder Registerzellen einer integrierten Schaltung auf Stuck-at-Fehler während des Betriebs dieser integrierten Schaltung vorgeschlagen, die wie zuvor mit der Bereitstellung abzulegender Daten beginnt. Die abzulegenden Daten können dabei wieder in einen ersten Teil und einen zweiten Teil aufgeteilt werden. Dieser erste Teil und dieser zweite Teil sollen sich nicht überlappen. Der erste Teil der der abzulegenden Daten kann übrigens die Gesamtheit der abzulegenden Daten komplett umfassen. In dem Fall enthält der zweite Teil der Daten keine Daten. Der zweite Teil der abzulegenden Daten kann also keine Daten umfassen. Es erfolgt die Ablage mindesten einer zusätzlichen Dateninformation in den Speicher- oder Registerzellen zur Markierung des ersten Teils der abzulegenden Daten als invertiert oder als bei der Ablage zu invertieren. Die zusätzliche Dateninformation weist wieder zumindest einen ersten Status auf, wenn der erste Teil der abzulegenden Daten der Speicher- oder Registerzellen nicht invertiert sein soll bzw. nicht invertiert ist. Die zusätzliche Dateninformation weist zumindest einen zweiten Status auf, wenn der erste Teil der Daten der Speicher- oder Registerzellen invertiert sein soll oder invertiert ist. Des Weiteren folgt die nicht invertierte Ablage des ersten Teils der abzulegenden Daten in einem, dem ersten Teil der abzulegenden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die zusätzliche Dateninformation den ersten Status aufweist und die invertierte Ablage des ersten Teils der abzulegenden Daten in dem, dem ersten Teil der abzulegenden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die zusätzliche Dateninformation den zweiten Status aufweist. Für den zweiten Teil der abzulegenden Daten erfolgt die nicht invertierte Ablage des zweiten Teils der abzulegenden Daten in einem, dem zweiten Teil der abzulegenden Daten entsprechenden, zweiten Teil der Speicher- oder Registerzellen. Dabei überschneidet sich der erste Teil der Speicher- oder Registerzellen nicht mit dem zweiten Teil der Speicher- oder Registerzellen. Im Gegensatz zu dem zuvor beschriebenen Verfahren erfolgt die Überprüfung auf konformes Verhalten nun jedoch nicht durch die Überprüfung von Prüfinformationen. Die Überprüfung beginnt wieder mit dem Lesen der mindesten einen zusätzlichen Dateninformation als gelesene zusätzliche Dateninformation. Es wird vorgeschlagen, anschließend festzustellen, ob und welcher erster Teil der abgesicherten gespeicherten Daten in den Speicher- oder Registerzellen invertiert abgelegt worden ist. Das vorgeschlagene Verfahren umfasst das nicht invertierende Lesen eines, dem ersten Teil der Daten der Speicher- oder Registerzellen entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene zusätzliche Dateninformation einen ersten Status aufweist, um den ersten Teil der gelesenen Daten zu erhalten und das invertierende Lesen des, dem ersten Teil der Daten der Speicher- oder Registerzellen entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene zusätzliche Dateninformation einen zweiten Status aufweist, um den ersten Teil der gelesenen Daten zu erhalten. Wie zuvor erfolgt auch das nicht invertierende Lesen eines, dem zweiten Teil der Daten der Speicher- oder Registerzellen entsprechenden, zweiten Teils der Speicher- oder Registerzellen, um den zweiten Teil der gelesenen Daten zu erhalten. Zumindest der erste Teil der gelesenen Daten und der zweite Teil der gelesenen Daten stellen das erste Leseergebnis dar. Anders als zuvor findet nun jedoch nicht eine Prüfung einer Prüfinformation statt. Der Schreibvorgang ist hier noch nicht abgeschlossen, somit sind der erste Teil und der zweite Teil der abzulegenden Daten noch bekannt. Statt der Prüfinformationsauswertung erfolgt daher unter Ausnutzung dieses Umstands in dieser Variante des vorgeschlagenen Verfahrens ein Vergleich des ersten Teils und des zweiten Teils der abzulegenden Daten mit dem ersten Leseergebnis unter Ermittlung eines Vergleichsergebnisses. Die Verfahrensvariante kann daher nicht angewendet werden, wenn dieses Wissen bereits gelöscht wurde. Die Ausgabe oder Verarbeitung oder Bereitstellung einer Fehlermeldung bei Auftreten eines Fehlers, wenn das Vergleichsergebnis ein von dem ersten Teil und dem zweiten Teil der abzulegenden Daten abweichendes zweites Leseergebnis darstellt, ist der letzte hier noch zu erwähnende Schritt dieser Verfahrensvariante.Therefore, a method variant for checking memory or register cells of an integrated circuit for stuck-at errors during operation of this integrated circuit is proposed, which begins as before with the provision of data to be stored. The data to be stored can be divided again into a first part and a second part. This first part and this second part should not overlap. Incidentally, the first part of the data to be stored may completely include the entirety of the data to be stored. In that case, the second part of the data contains no data. The second part of the data to be stored can therefore not include any data. The storage of at least one additional data information in the memory or register cells for marking the first part of the data to be stored is performed as being inverted or inverting during storage. The additional data information again has at least a first status if the first part of the data to be stored of the memory or register cells should not be inverted or is not inverted. The additional data information has at least a second status if the first part of the data of the memory or register cells is to be inverted or inverted. Furthermore, the non-inverted filing of the first part of the data to be stored in a first part of the memory or register cells corresponding to the first part of the data to be stored follows if the additional data information has the first status and the inverted filing of the first part of the data to be filed in the first part of the memory or register cells corresponding to the first part of the data to be stored, if the additional data information has the second status. For the second part of the data to be stored, the non-inverted filing of the second part of the data to be stored takes place in a second part of the memory or register cells corresponding to the second part of the data to be stored. In this case, the first part of the memory or register cells does not overlap with the second part of the memory or register cells. However, in contrast to the method described above, checking for compliant behavior is now not done by checking check information. The check begins again with the reading of the at least one additional data information as read additional data information. It is suggested to determine subsequently whether and which first part of the saved stored data has been stored inverted in the memory or register cells. The proposed method comprises the non-inverting reading of a, the first part of Data of the memory or register cells corresponding first part of the memory or register cells when the read additional data information has a first status to obtain the first part of the read data and the inverting reading of the first part of the data of the memory or Register cells corresponding first part of the memory or register cells when the read additional data information has a second status to obtain the first part of the read data. As before, the non-inverting reading of a second part of the memory or register cells, corresponding to the second part of the data of the memory or register cells, also takes place in order to obtain the second part of the read data. At least the first part of the read data and the second part of the read data represent the first reading result. Unlike before, however, now does not take place a check of a check information. The writing process is not yet completed, so the first part and the second part of the data to be stored are still known. Therefore, instead of the check information evaluation taking advantage of this circumstance in this variant of the proposed method, a comparison of the first part and the second part of the data to be stored with the first reading result and determination of a comparison result. Therefore, the method variant can not be used if this knowledge has already been deleted. The issuance or processing or provision of an error message when an error occurs when the comparison result represents a second reading result deviating from the first part and the second part of the data to be stored is the last step of this method variant to be mentioned here.

Die dritte Verfahrensvariante sieht nun vor, dass der in der vorhergehenden Variante beschriebene Schreib/Lesezyklus mit einer ersten weiteren Dateninformation als erster Schreib/Lesezyklus durchgeführt wird und dann anschließend mit einer zweiten weiteren Dateninformation, die von der ersten weiteren Dateninformation verschieden ist, ein zweites Mal durchgeführt wird. Im ersten Schreib/Lesezyklus wird ein erstes Leseergebnis erhalten. Im zweiten Schreib/Lesezyklus wird ein zweites Leseergebnis erhalten. Das erste und zweite Leseergebnis sollten übereinstimmen. Ist dies nicht der Fall, so erfolgt die Ausgabe oder Verarbeitung oder Bereitstellung einer Fehlermeldung bei Auftreten eines solchen Fehlers. Durch das Ändern der weiteren Dateninformation zwischen dem ersten Schreib/Lesezyklus und dem zweiten Schreib/Lesezyklus werden im ersten Schreib/Lesezyklus andere Datenanteile invertiert abgelegt als im zweiten Schreib/Lesezyklus. Hierdurch kommt ein Prüfungseffekt Zustande.The third variant of the method now provides that the write / read cycle described in the preceding variant is performed with a first further data information as the first read / write cycle and then subsequently with a second further data information, which is different from the first further data information, a second time is carried out. In the first write / read cycle, a first reading result is obtained. In the second write / read cycle, a second reading result is obtained. The first and second read results should match. If this is not the case, the output or processing or provision of an error message occurs when such an error occurs. By changing the further data information between the first write / read cycle and the second write / read cycle, other data components are stored inverted in the first write / read cycle than in the second read / write cycle. This is a test effect states.

Die Grundidee des vorgeschlagenen Verfahrens besteht somit, den abzulegenden Dateninhalt der Speicher- und Registerzellen zeitlich und/oder ggf. von Speicher- oder Registerzelle zu Speicher- zu Registerzelle alternierend invertiert und nicht-invertiert abzulegen. Die derartige Ablage des abzulegenden Dateninhalts erfolgt zusammen mit der zusätzlichen Dateninformation über die Inversion selbst. Hierbei wird bevorzugt diese zusätzliche Dateninformation vor der Inversion dem abzulegenden Dateninhalt, also den abzulegenden Daten, hinzugefügt und somit selbst dieser Inversion ggf. unterworfen. Die Hinzufügung kann aber auch nach der Inversion erfolgen, was aber den Nachteil hat, dass die entsprechenden Speicher- und Registerzellen dieser Prüfung nicht ebenso unterworfen sind.The basic idea of the proposed method is therefore to store the data content of the memory and register cells to be stored temporally and / or optionally alternately from memory or register cell to memory cell to register cell in an inverted and non-inverted manner. Such storage of the data content to be stored takes place together with the additional data information about the inversion itself. In this case, this additional data information is preferably added to the data content to be stored, that is to say the data to be stored, and thus even subject to this inversion. However, the addition can also be made after the inversion, but this has the disadvantage that the corresponding memory and register cells are not subject to this test as well.

Das vorgeschlagene Verfahren kann sich somit also beispielsweise durch die zusätzliche Ablage mindestens eines zusätzlichen Bits zur Anzeige vollständig oder partiell invertierter Daten auszeichnen. Diese Bits werden vorteilhafterweise in die CRC/Parity Generierung mit eingeschlossen. Ein Stuck-at Fehler wird damit erkennbar.The proposed method can therefore be characterized, for example, by the additional storage of at least one additional bit for displaying completely or partially inverted data. These bits are advantageously included in the CRC / Parity generation. A stucco-at-fault becomes recognizable.

Bis zu diesem Punkt wurden die Verfahren so beschrieben, dass Speicher- und Registerzellen gleich behandelt werden konnten. Typischerweise steuern Registerzellen in integrierten Schaltungen jedoch Zustandsautomaten oder liefern Daten, die innerhalb des betreffenden integrierten Schaltkreises intern weiter benutzt werden. Sie können also typischerweise in zwei Richtungen benutzt werden: Zum einen können sie von der Bus-Seite her gelesen werden und zum anderen vorn der Seite der zu steuernden Teilschaltung der integrierten Schaltung her gelesen werden. Es ist daher vorteilhaft, wenn auch beim Lesen eines Registers von der Seite der zu steuernden Teilschaltung der integrierten Schaltung her die zusätzliche Dateninformation ausgewertet wird und die in der entsprechenden Registerzelle gespeicherte Information nicht invertiert, also in der vorgesehenen Polarität, an die nachfolgende zu steuernden Teilschaltung der integrierten Schaltung ausgegeben wird.Up to this point, the methods have been described so that memory and register cells could be treated equally. Typically, however, register cells in integrated circuits control state machines or provide data internally used internally within the integrated circuit concerned. Thus, they can typically be used in two directions: on the one hand they can be read from the bus side and on the other hand they can be read from the side of the integrated circuit subcircuit to be controlled. It is therefore advantageous if, even when reading a register from the side of the subcircuit of the integrated circuit to be controlled, the additional data information is evaluated and the information stored in the corresponding register cell is not inverted, ie in the intended polarity, to the subsequent subcircuit to be controlled the integrated circuit is output.

Der mögliche Notlaufbetrieb ergibt sich für einen Einzelfehler ohne die Anwendung von Testmustern für die Inversion. Als Einzelfehler wird hier eine Speicher- oder Registerzelle betrachtet, deren logischer Wert auf einem logischen Wert durch einen Schaden fixiert ist und durch zumindest eines der vorgesehenen regulären Verfahren im Betrieb nicht wie vorgesehen modifiziert werden kann und somit schadhaft ist. Da durch die Inversionsmöglichkeit des Zugriffs auf den Dateninhalt dieser einzelnen fehlerhaften Speicher- oder Registerzelle die Polarität der Ablage der binären Daten in dieser einzelnen fehlerhaften Speicher- oder Registerzelle festgelegt werden kann, kann nach Feststellung eines Fehlers die zusätzliche Dateninformation in den Speicher und Registerzellen stets so eingestellt werden, dass stets der richtige logische Wert für den korrekten Dateninhalt dieser fehlerhaften Speicher- oder Registerzelle geliefert wird. Somit wird die Abspeicherung der ursprünglich in der einzelnen fehlerhaften Speicher- oder Registerzelle abzulegenden Information in die Speicherstellen verschoben, die zur Speicherung der zusätzlichen Dateninformation vorgesehen sind. Hierdurch kann bei einer einzelnen fehlerhaften Speicher- oder Registerzelle ein Notlauf sichergestellt werden.The possible emergency operation results for a single error without the use of test patterns for inversion. As a single error here is considered a memory or register cell whose logical value is fixed to a logical value by a damage and can not be modified as intended by at least one of the scheduled regular procedures in operation and thus is defective. Since the inversion possibility of access to the data content of this single faulty memory or register cell, the polarity of the filing of the binary data can be set in this single faulty memory or register cell, after finding a fault, the additional data information in the memory and register cells always so that the correct logical value for the correct data content of this faulty memory or register cell is always supplied. Thus, the storage of the information originally stored in the individual defective memory or register cell is shifted to the memory locations provided for storing the additional data information. This can be ensured in a single faulty memory or register cell emergency.

Vorteil der ErfindungAdvantage of the invention

Ein durch eines der oben beschriebenen Verfahren aufgrund eines Schadens an der betreffenden Speicher- oder Registerzelle nicht veränderbares Bit in den Speicher- oder Registerzellen führt somit frühzeitig zur Verletzung der Integritätsprüfung z.B. durch den beschriebenen CRC-Check und kann somit angezeigt werden oder weitere Maßnahmen durch ein übergeordnetes System veranlassen.A bit in the memory or register cells which can not be changed by one of the above-described methods due to damage to the relevant memory or register cell thus leads, at an early stage, to violation of the integrity check, e.g. through the described CRC check and can thus be displayed or cause further action by a higher-level system.

Vorteilhafterweise können dann die Speicher- und Registerzellen als Notlauffunktion bis zur Wartung zwischenzeitlich so genutzt werden, dass das fehlerhafte Bit keine Auswirkung hat. Die Inversion kann gezielt dazu verwendet werden, dass das Register je nach abzulegendem Inhalt gezielt nur dann invertiert würde, wenn es dadurch nutzbar bleibt!Advantageously, then the memory and register cells can be used as an emergency function to maintenance in the meantime so that the faulty bit has no effect. The inversion can be used purposefully, that the register would only be inverted, depending on the content to be dropped, if it remains usable!

Optional kann durch den Versuch der Datenablage mit oder ohne Inversion die Speicher- und Registerzellen weiter in zumindest einem der beiden Zustände genutzt werden, was einen erheblichen Vorteil gegenüber dem Stand der Technik darstellt.Optionally, by attempting to store the data with or without inversion, the memory and register cells can be further used in at least one of the two states, which represents a considerable advantage over the prior art.

Glossarglossary

Stuck-At-Fehler und Bridging-Faults (Quelle Wikipedia)
Physikalische Fehler bei digitalen Schaltungen teilt man in mehrere Klassen ein.

  1. A) Stuck-at-Faults (dt. Haftfehler) sind Fehler, bei denen Gatter an einem Eingang oder Ausgang auf einem bestimmten Wert feststecken. Je nach dem Wert unterscheidet man Stuck-at-1 oder Stuck-at-O-Fehler.
  2. B) Als Bridging-Faults werden Kurzschlüsse zwischen zwei Leitungen bezeichnet. Daraus entstehen neue Funktionen der betroffenen Gatter. Input-Output-Bridging bedeutet, dass Ein- und Ausgänge der Schaltung miteinander verbunden sind (Rückkopplung). Dies führt zu zeitabhängigen Verhalten, z.B. zu oszillierenden Schaltungen. Speziell bei Transistoren kennt man noch Stuck-off-Fehler (Transistor sperrt immer), Stuck-on-Fehler (Transistor leitet immer) und Gate-Delay-Faults sowie Path-Delay-Faults, die Verzögerungen bei der Signalverarbeitung hervorrufen.
Stuck-At Errors and Bridging Faults (source Wikipedia)
Physical errors in digital circuits are divided into several classes.
  1. A) Stuck-at-faults are faults where tags are stuck at an input or output at a certain value. Depending on the value, a distinction is made between stucco-at-1 or stuck-at-o errors.
  2. B) Bridging faults are short circuits between two lines. This results in new functions of the affected gates. Input-output bridging means that the inputs and outputs of the circuit are interconnected (feedback). This leads to time-dependent behavior, eg to oscillating circuits. Especially with transistors, stucco-off faults (transistor always off), stuck-on faults (transistor always on) and gate delay faults, as well as path-delay faults, cause signal processing delays.

Claims (3)

Verfahren zur Überprüfung von Speicher- oder Registerzellen einer integrierten Schaltung auf Stuck-at-Fehler während des Betriebs dieser integrierten Schaltung umfassend die Schritte: - Bereitstellung abzulegender Daten, die in einen ersten Teil und einen zweiten Teil aufgeteilt werden können und • wobei dieser erste Teil und der zweite Teil sich nicht überlappen und • wobei der erste Teil der der abzulegenden Daten die Gesamtheit der abzulegenden Daten umfassen kann und • wobei der zweite Teil der abzulegenden Daten keine Daten umfassen kann und - Ablage mindesten einer zusätzlichen Dateninformation in den Speicher- oder Registerzellen zur Markierung des ersten Teils der abzulegenden Daten als invertiert, • wobei die zusätzliche Dateninformation zumindest einen ersten Status aufweist, wenn der erste Teil der abzulegenden Daten der Speicher- oder Registerzellen nicht invertiert sein soll und • wobei die zusätzliche Dateninformation zumindest einen zweiten Status aufweist, wenn der erste Teil der Daten der Speicher- oder Registerzellen invertiert sein soll; - nicht invertierte Ablage des ersten Teils der abzulegenden Daten in einem, dem ersten Teil der abzulegenden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die zusätzliche Dateninformation den ersten Status aufweist; - invertierte Ablage des ersten Teils der abzulegenden Daten in dem, dem ersten Teil der abzulegenden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die zusätzliche Dateninformation den zweiten Status aufweist; - nicht invertierte Ablage des zweiten Teils der abzulegenden Daten in einem, dem zweiten Teil der abzulegenden Daten entsprechenden, zweiten Teil der Speicher- oder Registerzellen, - wobei der erste Teil der Speicher- oder Registerzellen sich nicht mit dem zweiten Teil der Speicher- oder Registerzellen überschneidet; - Lesen der mindestens einen zusätzlichen Dateninformation als gelesene zusätzliche Dateninformation; - Feststellen, ob und welcher erste Teil der abgesicherten gespeicherten Daten in den Speicher- oder Registerzellen invertiert abgelegt worden ist; - nicht invertierendes Lesen eines, dem ersten Teil der Daten der Speicher- oder Registerzellen entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene zusätzliche Dateninformation einen ersten Status aufweist, um den ersten Teil der gelesenen Daten zu erhalten; - invertierendes Lesen des, dem ersten Teil der Daten der Speicher- oder Registerzellen entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene zusätzliche Dateninformation einen zweiten Status aufweist, um den ersten Teil der gelesenen Daten zu erhalten; - nicht invertierendes Lesen eines, dem zweiten Teil der Daten der Speicher- oder Registerzellen entsprechenden, zweiten Teils der Speicher- oder Registerzellen, um den zweiten Teil der gelesenen Daten zu erhalten; - wobei zumindest der erste Teil der gelesenen Daten und der zweite Teil der gelesenen Daten das erste Leseergebnis darstellen; - Ablage mindesten einer weiteren zusätzlichen Dateninformation in den Speicher- oder Registerzellen zur Markierung des ersten Teils der abzulegenden Daten als invertiert, • wobei die weitere zusätzliche Dateninformation zumindest einen ersten Status aufweist, wenn der erste Teil der abzulegenden Daten der Speicher- oder Registerzellen nicht invertiert sein soll und • wobei die weitere zusätzliche Dateninformation zumindest einen zweiten Status aufweist, wenn der erste Teil der Daten der Speicher- oder Registerzellen invertiert sein soll; - wobei sich die weitere zusätzliche Dateninformation von der zusätzlichen Dateninformation inhaltlich unterscheidet; - nicht invertierte Ablage des ersten Teils der abzulegenden Daten in einem, dem ersten Teil der abzulegenden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die weitere zusätzliche Dateninformation den ersten Status aufweist; - invertierte Ablage des ersten Teils der abzulegenden Daten in dem, dem ersten Teil der abzulegenden Daten entsprechenden, ersten Teil der Speicher- oder Registerzellen, wenn die weitere zusätzliche Dateninformation den zweiten Status aufweist; - nicht invertierte Ablage des zweiten Teils der abzulegenden Daten in einem, dem zweiten Teil der abzulegenden Daten entsprechenden, zweiten Teil der Speicher- oder Registerzellen, - wobei der erste Teil der Speicher- oder Registerzellen sich nicht mit dem zweiten Teil der Speicher- oder Registerzellen überschneidet; - Lesen der mindestens einen weitere zusätzlichen Dateninformation als gelesene weitere zusätzliche Dateninformation; - Feststellen, ob und welcher weitere erste Teil der abgesicherten gespeicherten Daten in den Speicher- oder Registerzellen invertiert abgelegt worden ist; - nicht invertierendes Lesen eines, dem ersten Teil der Daten entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene weitere zusätzliche Dateninformation einen ersten Status aufweist, um einen weiteren ersten Teil der gelesenen Daten zu erhalten; - invertierendes Lesen des, dem ersten Teil der Daten der Speicher- oder Registerzellen entsprechenden, ersten Teils der Speicher- oder Registerzellen, wenn die gelesene weitere zusätzliche Dateninformation einen zweiten Status aufweist, um den weiteren ersten Teil der gelesenen Daten zu erhalten; - nicht invertierendes Lesen eines, dem zweiten Teil der Daten der Speicher- oder Registerzellen entsprechenden, zweiten Teils der Speicher- oder Registerzellen, um den weiteren zweiten Teil der gelesenen Daten zu erhalten; - wobei zumindest der weitere erste Teil der gelesenen Daten und der weitere zweite Teil der gelesenen Daten das zweite Leseergebnis darstellen; - Vergleich des ersten Leseergebnisses mit dem zweiten Leseergebnis unter Ermittlung eines Vergleichsergebnisses; - Ausgabe oder Verarbeitung oder Bereitstellung einer Fehlermeldung bei Auftreten eines Fehlers, wenn das Vergleichsergebnis ein vom ersten Leseergebnis abweichendes zweites Leseergebnis darstellt.A method of checking memory or register cells of an integrated circuit for stuck-at errors during operation of said integrated circuit, comprising the steps of: - providing data to be filed, which can be divided into a first part and a second part, and wherein said first part and the second part do not overlap, and wherein the first part of the data to be stored may comprise the entirety of the data to be stored; and wherein the second part of the data to be stored can not comprise data; and store at least one additional data information in the memory or register cells for marking the first part of the data to be stored as inverted, wherein the additional data information has at least a first status, if the first part of the data to be stored of the memory or register cells should not be inverted, and wherein the additional data information at least a second status if the first part of the data of the memory or register cells is to be inverted; non-inverted filing of the first part of the data to be stored in a first part of the memory or register cells corresponding to the first part of the data to be stored, if the additional data information has the first status; - Inverted storage of the first part of the data to be stored in the first part of the data to be stored corresponding first part of the memory or register cells, when the additional data information has the second status; non-inverted storage of the second part of the data to be stored in a second part of the memory or register cells corresponding to the second part of the data to be stored, wherein the first part of the memory or register cells is not connected to the second part of the memory or register cells overlaps; Reading the at least one additional data information as read additional data information; - determining whether and which first part of the saved stored data has been stored inverted in the memory or register cells; non-inverting reading of a first part of the memory or register cells corresponding to the first part of the data of the memory or register cells, if the additional one read Data information has a first status to obtain the first part of the read data; - inverting the first part of the memory or register cells corresponding to the first part of the data of the memory or register cells, if the read additional data information has a second status to obtain the first part of the read data; non-inverting reading of a second part of the memory or register cells, corresponding to the second part of the data of the memory or register cells, to obtain the second part of the read data; - wherein at least the first part of the read data and the second part of the read data represent the first reading result; Storage of at least one additional additional data information in the memory or register cells for marking the first part of the data to be stored as inverted, wherein the further additional data information has at least a first status if the first part of the data to be stored of the memory or register cells is not inverted and wherein the further additional data information has at least a second status if the first part of the data of the memory or register cells is to be inverted; - Wherein the additional additional data information differs from the additional data information content; non-inverted filing of the first part of the data to be stored in a first part of the memory or register cells corresponding to the first part of the data to be stored, if the further additional data information has the first status; - Inverted storage of the first part of the data to be stored in the first part of the data to be stored corresponding first part of the memory or register cells, when the further additional data information has the second status; non-inverted storage of the second part of the data to be stored in a second part of the memory or register cells corresponding to the second part of the data to be stored, wherein the first part of the memory or register cells is not connected to the second part of the memory or register cells overlaps; Reading the at least one additional additional data information as read additional additional data information; - determining whether and which further first part of the saved stored data has been stored inverted in the memory or register cells; - non-inverting reading of a first part of the memory or register cells corresponding to the first part of the data, when the read additional additional data information has a first status to obtain another first part of the read data; - inverting the first part of the memory or register cells corresponding to the first part of the data of the memory or register cells, if the read additional additional data information has a second status to obtain the further first part of the read data; non-inverting reading of a second part of the memory or register cells corresponding to the second part of the data of the memory or register cells to obtain the further second part of the read data; - wherein at least the further first part of the read data and the further second part of the read data represent the second reading result; - Comparison of the first reading result with the second reading result with determination of a comparison result; - Output or processing or provision of an error message when an error occurs when the comparison result represents a second reading result different from the first reading result. Verfahren nach Anspruch 1 - Wobei die zusätzliche Dateninformation eine Information darüber enthält, welche Speicher- und/oder Registerzellen eine invertierte Information enthalten und welche Speicher- und/oder Registerzellen eine nicht invertierte Information enthalten, insbesondere mit welchem Muster (Inversionsmuster) die Information in den Speicher- und/oder Registerzellen invertiert ist.Method according to Claim 1 Wherein the additional data information contains information about which memory and / or register cells contain inverted information and which memory and / or register cells contain non-inverted information, in particular with which pattern (inversion pattern) the information in the memory and / or or register cells is inverted. Verfahren nach Anspruch 2 - Wobei durch Verwendung verschiedener Inversionsmuster zu verschiedenen Zeitpunkten Bridging-Faults erkannt werden.Method according to Claim 2 - Bridging faults are detected by using different inversion patterns at different times.
DE102017115057.9A 2017-07-05 2017-07-05 Method for checking security-relevant register or memory cells for stuck-at errors during operation by comparing two write processes with different inversion states Active DE102017115057B4 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102017115057.9A DE102017115057B4 (en) 2017-07-05 2017-07-05 Method for checking security-relevant register or memory cells for stuck-at errors during operation by comparing two write processes with different inversion states
CN201810731582.9A CN109215723B (en) 2017-07-05 2018-07-05 Method for checking register unit or memory unit for fixed fault

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102017115057.9A DE102017115057B4 (en) 2017-07-05 2017-07-05 Method for checking security-relevant register or memory cells for stuck-at errors during operation by comparing two write processes with different inversion states

Publications (2)

Publication Number Publication Date
DE102017115057A1 DE102017115057A1 (en) 2019-01-10
DE102017115057B4 true DE102017115057B4 (en) 2019-03-07

Family

ID=64665876

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017115057.9A Active DE102017115057B4 (en) 2017-07-05 2017-07-05 Method for checking security-relevant register or memory cells for stuck-at errors during operation by comparing two write processes with different inversion states

Country Status (1)

Country Link
DE (1) DE102017115057B4 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013215055A1 (en) 2013-07-31 2015-02-05 Infineon Technologies Ag Circuit arrangement and method with modified error syndrome for error detection of permanent errors in memories
US9075742B2 (en) 2009-09-09 2015-07-07 Kabushiki Kaisha Toshiba Memory device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9075742B2 (en) 2009-09-09 2015-07-07 Kabushiki Kaisha Toshiba Memory device
DE102013215055A1 (en) 2013-07-31 2015-02-05 Infineon Technologies Ag Circuit arrangement and method with modified error syndrome for error detection of permanent errors in memories

Also Published As

Publication number Publication date
DE102017115057A1 (en) 2019-01-10

Similar Documents

Publication Publication Date Title
DE102013211077B4 (en) Method for testing a memory and storage system
DE102013215055B4 (en) Circuit arrangement, device, method and computer program with modified error syndrome for error detection of permanent errors in memories
DE3853206T2 (en) METHOD AND DEVICE FOR BYTIC WRITE ERROR ENCODING.
DE102006001873B4 (en) Apparatus and method for checking an error detection functionality of a memory circuit
EP2100308B1 (en) Method and semiconductor memory with a device for detecting addressing errors
EP0104635A2 (en) Digital computer test method and configuration
DE102015210651B4 (en) Circuit and method for testing an error correction capability
DE2225841B2 (en) Method and arrangement for systematic error checking of a monolithic semiconductor memory
DE2157829C2 (en) Arrangement for recognizing and correcting errors in binary data patterns
DE102006007326A1 (en) Error correction circuit for dynamic RAM system, has read tree to receive data from data memory and parity data from parity memory, and also configured to produce display, whether error is occurred in data during storage within data memory
DE10256487B4 (en) Integrated memory and method for testing an integrated memory
EP3378006B1 (en) Method for loading of a secure memory image of a microcontroler and arrangement with a microcontroller
EP1444700B1 (en) Memory unit test
DE102017115057B4 (en) Method for checking security-relevant register or memory cells for stuck-at errors during operation by comparing two write processes with different inversion states
DE102017115058B4 (en) Method for checking safety-related register or memory cells for stucco-at faults during operation and for ensuring reliability
DE102017115056B3 (en) Method for checking safety-relevant register or memory cells for stuck at fault during operation
WO2007071590A1 (en) Method for recognizing a power outage in a data memory and recovering the data memory
EP0353660B1 (en) Fault prevention method in memory systems of data-processing installations, in particular telephone exchanges
DE102006036384A1 (en) Microprocessor system for controlling or regulating at least partially safety-critical processes
EP0453609B1 (en) Procedure for testing of a smallest addressable unit of a RAM for bit errors exceeding a fixed number
DE102006004168A1 (en) Checking an address decoder
EP2002446B1 (en) Method for operating a memory unit comprising the marking of memory blocks that are identified as defective
DE3433679A1 (en) Method and arrangement for securing important information in memory units with optional access, particularly for control bits in buffer memories acting as cache memories in a data processing system
EP0919917B1 (en) Method to test the buffer memory of a microprocessor system
DE102004024668A1 (en) Method for testing electronic circuit units and test device

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R081 Change of applicant/patentee

Owner name: ELMOS SEMICONDUCTOR SE, DE

Free format text: FORMER OWNER: ELMOS SEMICONDUCTOR AKTIENGESELLSCHAFT, 44227 DORTMUND, DE