EP1352397A1 - Method for testing a non-volatile memory and the use of such a method - Google Patents

Method for testing a non-volatile memory and the use of such a method

Info

Publication number
EP1352397A1
EP1352397A1 EP02710781A EP02710781A EP1352397A1 EP 1352397 A1 EP1352397 A1 EP 1352397A1 EP 02710781 A EP02710781 A EP 02710781A EP 02710781 A EP02710781 A EP 02710781A EP 1352397 A1 EP1352397 A1 EP 1352397A1
Authority
EP
European Patent Office
Prior art keywords
test
data
memory
stored
test pattern
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.)
Withdrawn
Application number
EP02710781A
Other languages
German (de)
French (fr)
Inventor
Wolfgang Rankl
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.)
Giesecke and Devrient GmbH
Original Assignee
Giesecke and Devrient GmbH
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 Giesecke and Devrient GmbH filed Critical Giesecke and Devrient GmbH
Publication of EP1352397A1 publication Critical patent/EP1352397A1/en
Withdrawn legal-status Critical Current

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

Definitions

  • the invention relates to a method for testing a non-volatile memory according to claim 1 and a use of the method according to claims 14 and 15.
  • Chip cards have a wide variety of applications and uses. So-called memory cards are primarily used as telephone cards, health insurance cards or as cards for automatic machines or in public transport. However, their functionality is limited to a specific application.
  • Microprocessor cards also contain a CPU. In addition to the CPU, these cards usually contain an I / O unit, a data,
  • RAM volatile read / write memory
  • EEPROM non-volatile programmable memory
  • ROM non-volatile read-only memory
  • the operating system is mainly stored in the ROM and partly in the EEPROM. Fields of application for such microprocessor cards are: ID cards, electronic payments or access to the digital cellular network (GSM) etc.
  • the manufacturing cycle of a card can be divided into the following sections: The chip and the chip card are initially manufactured. In this first phase, the design of the chip is carried out, the operating system of the chip card is created, the card body and the module are manufactured, and the modules are embedded in the card body.
  • all basic, non-card-specific data is loaded.
  • special tests of the individual hardware components are carried out.
  • the test of the EEPROM is particularly important here, since it is very time-consuming due to the regular write times.
  • all card-specific data relating to the respective application are transferred from the card issuer to the company that personalizes the cards, such as the file tree for the respective application, its name etc.
  • the operating system previously stored in ROM is then completed by Parts of it, such as link tables or certain program code, are written into the EEPROM.
  • all application-specific data are loaded.
  • the throughput is restrictive for both the second and the third phase of the card manufacturing process Bottleneck in the transmission of data and memory access to the EEPRROM can be seen.
  • the card is only operational after the three phases just described have expired. It is therefore necessary to ensure that this complex process runs without errors and that no multiple executions of individual manufacturing steps are necessary because, for example, a single component proves to be defective.
  • Memory module does not work properly, all previous steps have been pointless. It is therefore necessary to recognize early and safely, if possible with no additional effort, whether the components used in the manufacture of the chip card are also working correctly so that the function of the card can be ensured.
  • a microcomputer with a PROM is known from US Pat. No. 5,175,840, which increases the access to the PROM from the outside and thus increases security by providing additional access monitoring means, in particular in the form of a control circuit.
  • this method does not disclose an improved test method.
  • it is disadvantageously necessary to create a specific test pattern (for example a checkerboard pattern) as a test data record and to read this in and out. Only then can the actual data to be saved be transferred to the EEPROM.
  • a major disadvantage with regard to the production time is therefore the additional time required for accessing the memory for test purposes only. Because in order to make the manufacturing process as cost-effective as possible, all necessary steps must be carried out in a time-minimized manner. It proves disadvantageous here that the write and read accesses to the memory modules, in particular to the EEPROM, are very time-consuming. For a check of the read / write memory according to the prior art, in addition to the read / write accesses which are necessary due to the application, additional write and read accesses had to be factored in for checking these modules.
  • EEPROM cells can only be written to and deleted again to a limited extent; the number of possible accesses is physical.
  • EEPROM memory is divided into pages. If only a single bit of an EEPROM memory needs to be changed, the associated page - ie the entire page of the memory - must be deleted beforehand.
  • test patterns In previous tests, it was necessary, depending on the desired test depth, to write several test patterns to the memory, to read them out again and then to compare them for agreement. Only after that could - at positive test result - the data to be stored is written to the EEPROM in an additional access. The tests are necessary, but in their current form they do not significantly extend the manufacturing cycle.
  • test method of the type mentioned in the introduction in which the test is carried out with data to be stored and is integrated in time in a write operation of the memory and in that at least one test pattern is created based on the data to be stored, so that storing data can be regenerated automatically at least from the test pattern last created, the following process steps being carried out at least once in an n-fold iteration:
  • test of a memory component can be optimally integrated into the card's production cycle.
  • the test according to the invention can be activated in particular during or immediately before a write access to the memory which is necessary anyway and without the use of special test data or devices which generate the test data.
  • multi-stage tests with one and the same data set are also possible by means of the method according to the invention.
  • the depth of the test can be changed by repeatedly inverting the data and thus by the number of iterations.
  • the test is carried out in two stages, i.e. with a first inversion of the data and a second re-inversion, so that when the test is successfully completed, the data to be stored are immediately in the memory. This advantageously saves several 5 time-consuming write accesses to the memory.
  • the data to be stored are immediately in the memory, regardless of the test depth or the number of process runs.
  • the test times of the chip card can advantageously be significantly reduced.
  • the method is also used for the temporary swapping out of memory contents.
  • the test pattern is created by inverting the data to be stored, so that after the first positive run of the method, the complement of the data to be stored is in the memory.
  • This test pattern is then inverted again at the end of the first process run.
  • the memory is thus written with the data to be stored, so that after the second process run has been completed positively, the data to be stored are exactly in the non-volatile memory and no additional writing process is necessary.
  • the creation of the test pattern is based on inverting the data to be stored.
  • test pattern can also be derived in another way from the data to be stored, for example by means of an XOR link or the like.
  • the method is also used sensibly for cases in which memory space that is no longer required is released for other applications - the so-called garbage collection.
  • flash memory cells such as a flash EEPROM or a FeRAM memory
  • flash memory cells such as a flash EEPROM or a FeRAM memory
  • FIG. 1 shows a schematic flow diagram of a method according to the invention.
  • the test is used in the test-initialization-personalization production steps of the chip card.
  • Data to be stored is used in such a way that it is automatically stored in the memory after the last test run and without additional write access.
  • the second use is to use the EEPROM test as a long-term test in order to check the functionality of the memory or memory area before each write access to the memory.
  • the data to be saved is also used to create a test sample.
  • test depth n and thus also the test time can advantageously be variably adjusted. It can therefore be adapted to the respective system conditions.
  • Test patterns and thus the data to be stored are then written to the non-volatile memory, preferably to the EEPROM, in the next method step.
  • the memory content is then read out.
  • the reading out of the memory content is recorded in a test result and compared with the test pattern, that is to say with the data which have been written into the memory. If the two data records do not match, then there is an error and the process terminates with an error message. Otherwise, the method ends successfully and after the test the data to be saved are immediately in the memory.
  • the first test pattern is preferably created during the first run by inverting the data to be stored. The first test pattern is thus the complement of the data to be stored. After the write and subsequent read access to the memory and the comparison of the read and written data, the first test pattern is inverted again, so that a second test pattern now again corresponds identically to the data to be stored. After the process run with the second test pattern, if the test result is positive (i.e. the data written and read match), the data to be stored are in the memory and the test / write process is completed.
  • the method can also be repeated several times by setting the test depth n to more than "2".
  • the operation by means of which the test pattern is created from the data to be stored is one
  • the data to be stored or the test pattern is inverted bit by bit, ie changed from "0" to "1” and from "1" to "0". This has the advantage that each bit in the memory is tested for both values at least once. Thus, the method provides maximum test coverage with a minimal test time, whereby for the write access of the data to be stored no additional access is necessary.
  • Test samples may be different; the only requirement for the selection of the operations is that the data to be stored can be restored after the last run or after the last test pattern.
  • a counter i which is at the beginning of the
  • Method is 1, incremented with each iteration. As long as the counter has not reached the predetermined value of the test depth n - that is, as long as T ⁇ n '- the iteration is run through. This makes it possible to achieve a higher test coverage by selecting the test depth. If, for example, two test patterns - by inverting the data - are used, the iteration can also be run through more than twice in order, for example, to record external disturbing influences which affect the function of the memory. These can be factors such as the changing temperature or the minimally changing voltage level of the circuit.
  • the chip card in particular the operating system, must be equipped with an inverter and possibly with a multiplexer and a counter i so that the data to be stored and then the respective test pattern can be inverted.
  • the chip card must have means for creating a test pattern. This means must be designed in such a way that, at a test depth of n, after the nth test run, the data to be stored can be regenerated from the last test sample.
  • the so-called memory test manager is used. It uses the test procedure described above to check whether the requested memory area is functional.
  • the memory test manager is thus an intermediate instance between a memory manager of the chip card and the memory.

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

The invention relates to a method for testing a programmable memory, whereby the test is integrated into the programming process and the data which is to be stored is used as test models so that said data remains in the memory immediately after the test without it being necessary to add a writing step. The depth of the test n can be adjusted in a variable manner. The test model is produced, particularly, by inverting the data which is to be stored and the test is carried out twice.

Description

Verfahren zum Test eines nichtflüchtigen Speichers und Verwendung eines solchen Verfahrens Method of testing non-volatile memory and use of such a method
Die Erfindung betrifft ein Verfahren zum Test eines nichtflüchtigen Speichers gemäß Anspruch 1 bzw. eine Verwendung des Verfahrens nach den Ansprüchen 14 und 15.The invention relates to a method for testing a non-volatile memory according to claim 1 and a use of the method according to claims 14 and 15.
Chipkarten haben unterschiedlichste Anwendungsgebiete und Einsatzzwecke. So werden sogenannte Speicherkarten vornehmlich als Telefonkarten, Krankenversicherungskarten oder als Karten für Automaten oder im öffentlichen Personenverkehr eingesetzt. Ihre Funktionalität ist allerdings auf eine spezifische Anwendung beschränkt.Chip cards have a wide variety of applications and uses. So-called memory cards are primarily used as telephone cards, health insurance cards or as cards for automatic machines or in public transport. However, their functionality is limited to a specific application.
Mikroprozessorkarten enthalten zusätzlich eine CPU. Üblicherweise enthalten diese Karten neben der CPU eine I/O-Einheit, einen Daten-,Microprocessor cards also contain a CPU. In addition to the CPU, these cards usually contain an I / O unit, a data,
Steuer- und Adreßbus, einen flüchtigen Schreib-/ Lese-Speicher (RAM) und einem nicht-flüchtigen, programmierbaren Speicher (EEPROM) und einen nichtflüchtigen Nur-Lese-Speicher (ROM). Das Betriebssystem ist hauptsächlich im ROM und teilweise im EEPROM abgelegt. Anwendungsfelder für solche Mikroprozessorkarten sind: Ausweiskarten, der elektronische Zahlungsverkehr oder der Zugang zum digitalen Mobilfunknetz (GSM) etc.Control and address bus, a volatile read / write memory (RAM) and a non-volatile programmable memory (EEPROM) and a non-volatile read-only memory (ROM). The operating system is mainly stored in the ROM and partly in the EEPROM. Fields of application for such microprocessor cards are: ID cards, electronic payments or access to the digital cellular network (GSM) etc.
Allen Kartentypen ist gemeinsam, daß die Karten in großen Stückzahlen hergestellt werden, so daß der Herstellungsprozeß hinsichtlich Zeit und Kosten optimiert sein muß.It is common to all card types that the cards are produced in large numbers, so that the production process must be optimized in terms of time and costs.
Bei der Aufzählung der möglichen Einsatzbereiche dieser Karten wird deutlich, daß auf die sichere und fehlerfreie Funktion der Karte und seiner Bauteile besonders hoher Wert gelegt werden muß, um insgesamt einen zuverlässigen Betrieb des Kartensystems gewährleisten zu können. Die fehlerfreie Funktion der eingesetzten Bauteile muß deshalb bereits während der Kartenfertigung überprüft werden.When enumerating the possible areas of application of these cards, it becomes clear that particular importance must be attached to the safe and error-free functioning of the card and its components in order to be able to guarantee reliable operation of the card system overall. The error-free function of the components used must therefore be checked during card production.
Der fertigungstechnische Zyklus einer Karte läßt sich in folgende Abschnitte einteilen: Anfänglich wird der Chip und die Chipkarte hergestellt. In dieser ersten Phase wird das Design des Chips ausgeführt, das Betriebssystem der Chipkarte erstellt, der Kartenkörper und das Modul hergestellt und es werden die Module in den Kartenkörper eingebettet.The manufacturing cycle of a card can be divided into the following sections: The chip and the chip card are initially manufactured. In this first phase, the design of the chip is carried out, the operating system of the chip card is created, the card body and the module are manufactured, and the modules are embedded in the card body.
In der zweiten Phase werden alle grundlegenden, nicht kartenindividuellen Daten geladen. In dieser Phase werden spezielle Tests der einzelnen Hardware-Komponenten ausgeführt. Hier ist es wesentlich, einen hohen Durchsatz zu erreichen, damit die Tests möglichst wenig von der teuren Fertigungszeit beanspruchen. Insbesondere der Test des EEPROM 's schlägt hier ins Gewicht, da er durch die regulären Schreibzeiten sehr zeitaufwendig ist. Weiterhin werden alle kartenindividuellen, sich auf die jeweilige Anwendung beziehenden Daten vom Kartenherausgeber an die Firma übergeben, die die Personalisierung der Karten vornimmt, wie beispielsweise den Dateibaum für die jeweilige Anwendung, deren Namen etc. Daraufhin wird das bisher im ROM abgelegte Betriebssystem komplettiert, indem Teile davon, wie Linktabellen oder bestimmter Programmcode, in das EEPROM geschrieben werden. Im nächsten Initialisierungsschritt werden alle anwendungsspezifischen Daten geladen.In the second phase, all basic, non-card-specific data is loaded. In this phase, special tests of the individual hardware components are carried out. Here it is essential to achieve a high throughput so that the tests take up as little of the expensive production time as possible. The test of the EEPROM is particularly important here, since it is very time-consuming due to the regular write times. Furthermore, all card-specific data relating to the respective application are transferred from the card issuer to the company that personalizes the cards, such as the file tree for the respective application, its name etc. The operating system previously stored in ROM is then completed by Parts of it, such as link tables or certain program code, are written into the EEPROM. In the next initialization step, all application-specific data are loaded.
Erst daraufhin können in der dritten Phase, der sogenannten Personalisierung, all diejenigen Daten geladen werden, die der kartenbenutzenden Person zugeordnet sind.Only then can all the data that are assigned to the person using the card be loaded in the third phase, the so-called personalization.
Sowohl für die zweite als auch für die dritte Phase des Kartenfertigungsprozesses ist der den Durchsatz beschränkende Flaschenhals in der Übertragung der Daten und den Speicherzugriffen auf das EEPRROM zu sehen.The throughput is restrictive for both the second and the third phase of the card manufacturing process Bottleneck in the transmission of data and memory access to the EEPRROM can be seen.
Erst nach Ablauf der drei eben beschriebenen Phasen ist die Karte einsatzfähig. Damit besteht die Notwendigkeit, sicherzustellen, daß dieses aufwendige Verfahren fehlerfrei abläuft und keine Mehrfachausführungen einzelner Fertigungsschritte erforderlich sind, weil sich beispielsweise ein einzelnes Bauteil als fehlerhaft erweist.The card is only operational after the three phases just described have expired. It is therefore necessary to ensure that this complex process runs without errors and that no multiple executions of individual manufacturing steps are necessary because, for example, a single component proves to be defective.
Wird erst nach der Personalisierung der Karte erkannt, daß einIt is only recognized after the personalization of the card that a
Speicherbaustein nicht fehlerfrei arbeitet, so sind alle vorhergehenden Schritte sinnlos gewesen. Es ist deshalb notwendig, möglichst ohne zusätzlichen Aufwand, frühzeitig und sicher zu erkennen, ob die bei der Herstellung der Chipkarte verwendeten Bauteile auch fehlerfrei arbeiten, damit die Funktion der Karte sichergestellt werden kann.Memory module does not work properly, all previous steps have been pointless. It is therefore necessary to recognize early and safely, if possible with no additional effort, whether the components used in the manufacture of the chip card are also working correctly so that the function of the card can be ensured.
Bisher erfolgte ein Test für einen EEPROM-Speicher einer Chipkarte, indem abwechselnd zwei spezielle Prüfmuster auf die Speicherzellen des EEPROMS geschrieben werden. Danach wurde der Speicherinhalt wieder ausgelesen und es wird vom Betriebssystem überwacht, ob das gelesene Datum mit dem Schreibdatum übereinstimmt. Als Prüfmuster wurden alternierend die binäre Codierung „10101010" und die binäre Codierung „01010101" - entsprechend einem Schachbrettmuster - gewählt, was in der Hexadezimalcodierung dem Datum „ AA" bzw. „55" entspricht.So far, a test for an EEPROM memory of a chip card has been carried out by alternately writing two special test patterns on the memory cells of the EEPROM. The memory content was then read out again and the operating system monitors whether the read date corresponds to the write date. The binary coding "10101010" and the binary coding "01010101" - corresponding to a checkerboard pattern - were alternately selected as the test pattern, which corresponds to the date "AA" or "55" in the hexadecimal coding.
Aus der US-PS 5,175,840 ist ein Microcomputer mit einem PROM bekannt, der durch das Bereitstellen von zusätzlichen Zugriffsüberwachungsmitteln, insbesondere in Form von einem Kontrollschaltkreis, den Zugriff auf das PROM von außen und damit die Sicherheit erhöht. Dieses Verfahren offenbart jedoch kein verbessertes Testverfahren. Bei den Testverfahren aus dem Stand der Technik ist es nachteiligerweise notwendig, ein spezifisches Prüfmuster (beispielsweise ein Schachbrettmuster) als Testdatensatz zu erstellen und dieses ein- und auszulesen. Erst danach können die eigentlichen, zu speichernden Daten an das EEPROM übertragen werden.A microcomputer with a PROM is known from US Pat. No. 5,175,840, which increases the access to the PROM from the outside and thus increases security by providing additional access monitoring means, in particular in the form of a control circuit. However, this method does not disclose an improved test method. In the test methods from the prior art, it is disadvantageously necessary to create a specific test pattern (for example a checkerboard pattern) as a test data record and to read this in and out. Only then can the actual data to be saved be transferred to the EEPROM.
Ein wesentlicher Nachteil hinsichtlich der Fertigungsdauer liegt deshalb in der zusätzlich benötigten Zeit für die Zugriffe auf den Speicher lediglich zu Testzwecken. Denn, um den Fertigungsprozeß möglichst kostenminimiert zu gestalten, müssen alle notwendigen Schritte zeitminimiert ausgeführt werden. Hierbei erweist es sich als nachteilig, daß die Schreib- und Lesezugriffe auf die Speicherbausteine, insbesondere auf das EEPROM sehr zeitintensiv sind. Für eine Überprüfung der Schreib-/ Lesespeicher nach dem Stand der Technik mußten nachteiligerweise neben den Schreib-/ Lesezugriffen, die aufgrund der Anwendung notwendig sind, zusätzliche Schreib- und Lesezugriffe für die Überprüfung dieser Bausteine einkalkuliert werden.A major disadvantage with regard to the production time is therefore the additional time required for accessing the memory for test purposes only. Because in order to make the manufacturing process as cost-effective as possible, all necessary steps must be carried out in a time-minimized manner. It proves disadvantageous here that the write and read accesses to the memory modules, in particular to the EEPROM, are very time-consuming. For a check of the read / write memory according to the prior art, in addition to the read / write accesses which are necessary due to the application, additional write and read accesses had to be factored in for checking these modules.
EEPROM-Zellen können nur begrenzt oft beschrieben und wieder gelöscht werden; die Anzahl der möglichen Zugriffe ist physikalisch bedingt. EinEEPROM cells can only be written to and deleted again to a limited extent; the number of possible accesses is physical. On
EEPROM Speicher ist in Seiten bzw. Pages untergliedert. Muß nur ein einzelnes Bit eines EEPROM Speichers geändert werden, dann muß vorher die zugehörige Page - also die gesamte Seite des Speichers - gelöscht werden.EEPROM memory is divided into pages. If only a single bit of an EEPROM memory needs to be changed, the associated page - ie the entire page of the memory - must be deleted beforehand.
Allein dieser Vorgang dauert bei einer 32 Byte großen Speicherseite ca. 10 ms. Auch aus diesem Grund müssen die Zugriffe auf die EEPROM Zellen minimiert werden, um die Lebensdauer der Karte nicht unnötig zu verringern.With a 32-byte memory page, this process alone takes approx. 10 ms. For this reason, too, access to the EEPROM cells must be minimized in order not to unnecessarily reduce the life of the card.
Bei den bisherigen Tests war es notwendig, je nach gewünschter Testtiefe, mehrere Testmuster auf den Speicher zu schreiben, wieder auszulesen und diese dann auf Übereinstimmung zu vergleichen. Erst danach konnten - bei positivem Testergebnis - in einem zusätzlichen Zugriff die zu speichernden Daten auf das EEPROM geschrieben werden. Die Tests sind notwendig, verlängern aber in der bisherigen Form den Fertigungszyklus nicht unbeträchtlich.In previous tests, it was necessary, depending on the desired test depth, to write several test patterns to the memory, to read them out again and then to compare them for agreement. Only after that could - at positive test result - the data to be stored is written to the EEPROM in an additional access. The tests are necessary, but in their current form they do not significantly extend the manufacturing cycle.
Aufgabe der vorliegenden Erfindung ist es deshalb, ein Verfahren bereit zu stellen, das eine zeit- und daher kostenminimierte Überprüfung von Schreib-/ Lesespeichern mit beliebiger Testtiefe ermöglicht.It is therefore the object of the present invention to provide a method which enables a time and therefore cost-minimized checking of read / write memories with any test depth.
Diese Aufgabe wird erfindungsgemäß durch ein Testverfahren der eingangs genannten Art gelöst, bei dem der Test mit zu speichernden Daten durchgeführt wird und zeitlich in einen Schreibvorgang des Speichers integriert ist und indem mindestens ein Prüfmuster basierend auf den zu speichernden Daten erstellt wird, so daß die zu speichernden Daten zumindest aus dem zuletzt erstellten Prüfmuster automatisch regeneriert werden können, wobei die folgenden Verfahrensschritte in einer n-fachen Iteration mindestens einmal durchlaufen werden:This object is achieved according to the invention by a test method of the type mentioned in the introduction, in which the test is carried out with data to be stored and is integrated in time in a write operation of the memory and in that at least one test pattern is created based on the data to be stored, so that storing data can be regenerated automatically at least from the test pattern last created, the following process steps being carried out at least once in an n-fold iteration:
(1) Erstellen eines Prüfmusters (2) Schreibzugrif f auf den nichtflüchtigen Speicher mit dem Prüfmuster,(1) creating a test pattern (2) write access f to the non-volatile memory with the test pattern,
(3) Lesezugriff auf den nichtflüchtigen Speicher zur Erfassung eines n-ten Testergebnisses(3) Read access to the non-volatile memory to acquire an nth test result
(4) Vergleich des n-ten Testergebnisses mit dem Prüfmuster auf Übereinstimmung.(4) Comparison of the nth test result with the test sample for agreement.
Weiterhin wird diese Aufgabe gelöst, indem das soeben beschriebene Verfahren vom Betriebsystem als Dauertest für die eingesetzten Speicherbausteine im Betrieb der Karte verwendet wird oder indem es lediglich bei Bedarf sporadisch als Funktionstest bei den Fertigungsschritten Test, Initialisierung und Personalisierung der Chipkarte verwendet wird. Mit dieser Lösung ist der Test eines Speicherbauteils optimal in den Herstellungszyklus der Karte integrierbar. Der erfindungsgemäße Test ist insbesondere während oder unmittelbar vor einem ohnehin notwendigen Schreibzugriff auf den Speicher aktivierbar und ohne Verwendung von 5 speziellen Prüfdaten bzw. Einrichtungen, die die Prüfdaten generieren.This object is further achieved by using the method just described by the operating system as a long-term test for the memory chips used in the operation of the card, or by only occasionally using it as a functional test in the test, initialization and personalization of the chip card production steps. With this solution, the test of a memory component can be optimally integrated into the card's production cycle. The test according to the invention can be activated in particular during or immediately before a write access to the memory which is necessary anyway and without the use of special test data or devices which generate the test data.
Vorteilhafterweise sind mittels des erfindungsgemäßen Verfahrens auch mehrstufige Tests mit ein und demselben Datensatz möglich. Durch wiederholte Invertierung der Daten und damit durch die Anzahl der o Iterationen kann der Test in seiner Tiefe verändert werden. In der bevorzugten Ausführungsform wird der Test zweistufig durchgeführt, d.h. mit einer ersten Invertierung der Daten und einer zweiten Re-Invertierung, so daß bei erfolgreichem Abschluß des Tests unmittelbar die zu speichernden Daten im Speicher stehen. Damit können vorteilhafterweise mehrere 5 zeitintensive Schreibzugriffe auf den Speicher eingespart werden. Mit der erfindungsgemäßen Lösung stehen nach erfolgreichem Abschluß des Tests sofort die zu speichernden Daten im Speicher, unabhängig von der Testtiefe bzw. von der Anzahl der Verfahrensdurchläufe.Advantageously, multi-stage tests with one and the same data set are also possible by means of the method according to the invention. The depth of the test can be changed by repeatedly inverting the data and thus by the number of iterations. In the preferred embodiment, the test is carried out in two stages, i.e. with a first inversion of the data and a second re-inversion, so that when the test is successfully completed, the data to be stored are immediately in the memory. This advantageously saves several 5 time-consuming write accesses to the memory. With the solution according to the invention, once the test has been successfully completed, the data to be stored are immediately in the memory, regardless of the test depth or the number of process runs.
o Durch die Verwendung der zu speichernden Daten als Testdaten lassen sich vorteilhafterweise die Testzeiten der Chipkarte signifikant reduzieren.By using the data to be stored as test data, the test times of the chip card can advantageously be significantly reduced.
Bisher mußte die CPU mit spezifischen Software-Modulen ausgestattet sein, um die Testmuster so zu erzeugen, daß eine möglichst optimale 5 Testabdeckung erreicht werden konnte. Mit dem erfindungsgemäßen Verfahren ist dies jedoch nicht mehr nötig, da die zu speichernden Daten direkt für den Test verwendet werden können.So far, the CPU had to be equipped with specific software modules in order to generate the test patterns so that the best possible test coverage could be achieved. With the method according to the invention, however, this is no longer necessary, since the data to be stored can be used directly for the test.
Ferner erweist es sich als vorteilhaft, daß automatisch eine optimale 0 Testqualität erreicht wird, indem durch die Invertierung der zu speichernden Daten und die anschließende Re-Invertierung jedes Bit einmal auf „0" und „1" gesetzt und damit getestet wird.Furthermore, it proves to be advantageous that an optimal test quality is automatically achieved by inverting the ones to be stored Data and the subsequent re-inversion of each bit are once set to "0" and "1" and thus tested.
Das Verfahren wird alternativ auch zur temporären Auslagerung von Speicherinhalten eingesetzt.Alternatively, the method is also used for the temporary swapping out of memory contents.
Wie bereits erläutert, wird das Verfahren in der bevorzugten Ausführungsform der Erfindung zweimal durchlaufen (d.h. n = 2). Beim ersten Durchlauf wird das Prüfmuster durch Invertierung der zu speichernden Daten erstellt, so daß nach dem ersten positiv abgeschlossenen Verfahrensdurchlauf das Komplement der zu speichernden Daten im Speicher steht. Daraufhin wird am Ende des ersten Verfahrensdurchlaufs dieses Prüfmuster nochmals invertiert. Beim zweiten Verfahrensdurchlauf wird der Speicher also mit den zu speichernden Daten beschrieben, so daß nach dem zweiten positiv abgeschlossenen Verfahrensdurchlauf exakt die zu speichernden Daten im nichtflüchtigen Speicher stehen und kein zusätzlicher Schreibvorgang notwendig ist. In dieser Ausführungsform basiert die Erstellung des Prüfmusters also auf dem Invertieren der zu speichernden Daten.As already explained, in the preferred embodiment of the invention, the method is run twice (i.e. n = 2). During the first run, the test pattern is created by inverting the data to be stored, so that after the first positive run of the method, the complement of the data to be stored is in the memory. This test pattern is then inverted again at the end of the first process run. In the second process run, the memory is thus written with the data to be stored, so that after the second process run has been completed positively, the data to be stored are exactly in the non-volatile memory and no additional writing process is necessary. In this embodiment, the creation of the test pattern is based on inverting the data to be stored.
In einer alternativen Ausführungsform kann das Prüfmuster auch auf andere Weise aus den zu speichernden Daten abgeleitet werden, beispielsweise durch eine XOR- Verknüpfung oder ähnliches.In an alternative embodiment, the test pattern can also be derived in another way from the data to be stored, for example by means of an XOR link or the like.
Weiterhin ist es möglich das Verfahren nicht nur zweimal sondern mehrfach zu durchlaufen und das Prüfmuster immer wieder zu invertieren, bis zum Schluß nach dem Ende des letzten Verfahrens wiederum die zu speichernden Daten im Speicher stehen.Furthermore, it is possible to run through the method not only twice but several times and to invert the test pattern again and again until the data to be stored are again in memory until the end after the end of the last method.
Generell läßt sich das beschriebene Verfahren für alle Arten derIn general, the described method can be used for all types of
Freispeicherverwaltung von Chipkartensystemen einsetzen, indem bei jedem Speicherzugriff und damit aktuell die Funktionsfähigkeit des Speichers bzw. Speicherbereichs überprüft wird. Die hauptsächliche Anwendung liegt allerdings in der Speicherdefragmentierung, bei der Daten aus bestimmten Speicherbereichen verschoben werden müssen.Use free memory management of chip card systems by each Memory access and thus currently the functionality of the memory or memory area is checked. The main application, however, is in memory defragmentation, in which data has to be moved from certain memory areas.
Doch auch für Fälle, bei denen aktuell nicht mehr benötigter Speicherbereich für andere Anwendungen freigegeben wird - die sogenannte Garbage Collection -wird das Verfahren sinnvoll eingesetzt.However, the method is also used sensibly for cases in which memory space that is no longer required is released for other applications - the so-called garbage collection.
Es ist jedoch erfindungsgemäß auch möglich, Flash-Speicherzellen, wie einen Flash-EEPROM oder einen FeRAM-Speicher zu verwenden, die sehr viel schnellere Zugriffszeiten gestatten als die regulären EEPROM Zellen. Dies führt zu noch besseren Fertigungs- und insbesondere Testzeiten.However, it is also possible according to the invention to use flash memory cells, such as a flash EEPROM or a FeRAM memory, which allow much faster access times than the regular EEPROM cells. This leads to even better manufacturing and especially test times.
Weitere Vorteile, Merkmale und alternative Ausführungsformen der Erfindung ergeben sich aus der nachfolgenden detaillierten Figurenbeschreibung.Further advantages, features and alternative embodiments of the invention result from the following detailed description of the figures.
Fig. 1 zeigt ein schematisches Ablaufdiagramm eines erfindungsgemäßen Verfahrens.1 shows a schematic flow diagram of a method according to the invention.
Unter Bezugnahme auf Fig. 1 wird nachfolgend ein Beispiel für einen möglichen Ablauf des Verfahrens erläutert.An example of a possible sequence of the method is explained below with reference to FIG. 1.
Grundsätzlich gibt es für die Erfindung zwei hauptsächliche Einsatzgebiete:There are basically two main areas of application for the invention:
1. die Verwendung des Verfahrens für den Test eines Speichers vor Inbetriebnahme einer Chipkarte und 2. die Verwendung des Verfahrens während des Betriebs der Chipkarte bei jedem Speicherzugriff als Dauertest, der von einem Memory Test Manager gesteuert wird.1. the use of the method for testing a memory before commissioning a chip card and 2. the use of the method during the operation of the chip card with each memory access as an endurance test, which is controlled by a memory test manager.
Bei der ersten Ausführungsform wird der Test bei den Fertigungsschritten Test - Initialisierung -Personalisierung' der Chipkarte eingesetzt. Dabei werden zu speichernde Daten so verwendet, daß sie nach dem letzten Testdurchlauf automatisch und ohne einen zusätzlichen Schreibzugriff im Speicher stehen.In the first embodiment, the test is used in the test-initialization-personalization production steps of the chip card. Data to be stored is used in such a way that it is automatically stored in the memory after the last test run and without additional write access.
Die zweite Verwendung sieht vor, den EEPROM-Test als Dauertest einzusetzen, um vor jedem Schreibzugriff auf den Speicher die Funktionsfähigkeit des Speichers bzw. Speicherbereichs zu überprüfen. Dabei werden auch die zu speichernden Daten zu Erstellung eines Prüfmusters verwendet.The second use is to use the EEPROM test as a long-term test in order to check the functionality of the memory or memory area before each write access to the memory. The data to be saved is also used to create a test sample.
Der erfindungsgemäße Test ist vorteilhafterweise in seiner Testtiefe n und damit auch Testzeit variabel einstellbar. Somit kann er an die jeweiligen Systembedingungen angepaßt werden.The test depth n and thus also the test time can advantageously be variably adjusted. It can therefore be adapted to the respective system conditions.
Ist es beispielsweise notwendig einen sehr schnellen aber relativ groben Test, d.h. einen Test mit nur wenig Testabdeckung, einzusetzen, dann wird als Testtiefe n = 1 gewählt, das heißt, daß das erfindungsgemäße Verfahren nur einmal durchlaufen wird. Dann werden die zu speichernden Daten identisch für die Erstellung des ersten und einzigen Prüfmusters verwendet. DasFor example, is it necessary to have a very quick but relatively rough test, i.e. to use a test with only a little test coverage, then the test depth chosen is n = 1, which means that the method according to the invention is run through only once. Then the data to be saved are used identically for the creation of the first and only test sample. The
Prüfmuster und damit die zu speichernden Daten werden dann im nächsten Verfahrensschritt auf den nichtflüchtigen Speicher, vorzugsweise auf das EEPROM, geschrieben. Danach wird der Speicherinhalt ausgelesen. Das Auslesen des Speicherinhaltes wird in einem Testergebnis erfaßt und mit dem Prüfmuster verglichen, also mit den Daten, die in den Speicher geschrieben worden sind. Stimmen die beiden Datensätze nicht überein, so liegt ein Fehler vor und das Verfahren bricht mit einer Fehlermeldung ab. Andernfalls, endet das Verfahren erfolgreich und nach dem Test stehen unmittelbar die zu speichernden Daten im Speicher.Test patterns and thus the data to be stored are then written to the non-volatile memory, preferably to the EEPROM, in the next method step. The memory content is then read out. The reading out of the memory content is recorded in a test result and compared with the test pattern, that is to say with the data which have been written into the memory. If the two data records do not match, then there is an error and the process terminates with an error message. Otherwise, the method ends successfully and after the test the data to be saved are immediately in the memory.
In der hauptsächlichen und bevorzugten Ausführungsform hat der Test jedoch eine Testtiefe von n = 2. Das heißt, daß die Verfahrensschritte des Prüfmustererstellens, des Schreibzugriffes, des Lesezugriffes und des Vergleichs zweimal durchlaufen werden. Vorzugsweise wird das erste Prüfmuster beim ersten Durchlauf durch Invertieren der zu speichernden Daten erstellt. Damit ist das erste Prüfmuster das Komplement der zu speichernden Daten. Nach dem Schreib- und anschließenden Lesezugriff auf den Speicher und dem Vergleich der gelesenen und geschriebenen Daten wird das erste Prüfmuster nochmals invertiert, so daß ein zweites Prüfmuster nun wieder identisch mit den zu speichernden Daten übereinstimmt. Nach dem Verfahrensdurchlauf mit dem zweiten Prüfmuster stehen dann bei positivem Testergebnis (d.h. Übereinstimmung der geschriebenen und gelesenen Daten) die zu speichernden Daten im Speicher und der Test-/Schreibvorgang ist abgeschlossen.In the main and preferred embodiment, however, the test has a test depth of n = 2. This means that the process steps of test pattern generation, write access, read access and comparison are carried out twice. The first test pattern is preferably created during the first run by inverting the data to be stored. The first test pattern is thus the complement of the data to be stored. After the write and subsequent read access to the memory and the comparison of the read and written data, the first test pattern is inverted again, so that a second test pattern now again corresponds identically to the data to be stored. After the process run with the second test pattern, if the test result is positive (i.e. the data written and read match), the data to be stored are in the memory and the test / write process is completed.
Um eine bessere Testtiefe n zu erzielen, kann das eben beschriebeneIn order to achieve a better test depth n, the just described can
Verfahren auch mehrfach wiederholt werden, indem die Testtiefe n auf mehr als „2" gesetzt wird.The method can also be repeated several times by setting the test depth n to more than "2".
In der eben beschriebenen Ausführungsform ist die Operation mittels derer das Prüfmuster aus den zu speichernden Daten erstellt wird, eineIn the embodiment just described, the operation by means of which the test pattern is created from the data to be stored is one
Invertierungs-Operation. Die zu speichernden Daten bzw. das Prüfmuster wird bitweise invertiert, d.h. von „0" auf „1" und von „1" auf „0" gewechselt. Das bringt den Vorteil, das jedes Bit im Speicher zumindest einmal auf beide Werte getestet wird. Somit stellt das Verfahren bei minimaler Testzeit eine maximale Testabdeckung zur Verfügung, wobei für den Schreibzugriff der zu speichernden Daten kein zusätzlicher Zugriff nötig ist.Inversion operation. The data to be stored or the test pattern is inverted bit by bit, ie changed from "0" to "1" and from "1" to "0". This has the advantage that each bit in the memory is tested for both values at least once. Thus, the method provides maximum test coverage with a minimal test time, whereby for the write access of the data to be stored no additional access is necessary.
Alternativ hierzu sind jedoch auch andere Operationen denkbar, wie beispielsweise eine XOR- Verknüpfung.Alternatively, however, other operations are also conceivable, such as an XOR operation.
Weiterhin ist es möglich, nicht - wie beim bisher beschriebenen Verfahren - die Operation auf den zu speichernden Daten und das Komplement dieser Operation abwechselnd auszuführen, sondern, eine Reihe von Operationen zu wählen, die eine maximale Testabdeckung ermöglichen und bei denen nach dem letzten Verfahrensdurchlauf wieder die Originaldaten aus dem letzten Prüfmuster wieder hergestellt werden können. Zur Verdeutlichung soll folgendes Beispiel dienen:Furthermore, it is possible not to perform the operation on the data to be stored and the complement of this operation alternately, as in the previously described method, but rather to select a series of operations which enable maximum test coverage and again after the last process run the original data from the last test sample can be restored. The following example is intended to illustrate this:
1. Operation : „+1",1st operation: "+1",
2. Operation : „+1" n. Operation : ,,+l" und letzte Operation : ,,-n".2nd operation: "+1" n. Operation: "+1" and last operation: "- n".
Dabei können die einzelnen Operationen zur Erstellung der jeweiligenThe individual operations to create the respective
Prüfmuster verschieden sein; die Bedingung für die Wahl der Operationen ist lediglich, daß nach dem letzten Durchlauf bzw. nach dem letzten Prüfmuster die zu speichernden Daten wiederhergestellt werden können. Dabei ist es erstens möglich, die Daten direkt aus dem aktuellen, letzten Prüfmuster abzuleiten (wie bei der Invertierungsoperation) oder zweitens durch eine Analyse der bisherigen Operationen (im Beispiel oben: durch die Anzahl der Inkrementierungen um „1". Das setzt allerdings eine etwas komplexere Analyseeinrichtung zur Regenerierung der zu speichernden Daten voraus, da ein Tracing aller Operationen auf den zu speichernden Daten mitgeführt werden muß. Die kostengünstige Form des Verfahrens ist es deshalb, wenn als Operation die Invertierung eingesetzt wird. Dann gilt es zu unterscheiden, ob das Verfahren eine gerade oder ungerade Testtiefe n hat. Im ersten Fall (n gerade), muß das erste Prüfmuster jeweils invertiert werden und das letzte wird belassen, da es mit den Originaldaten übereinstimmt. Im zweiten Fall (n ungerade) muß das erste Prüfmuster jeweils identisch mit den zu speichernden Daten übereinstimmen.Test samples may be different; the only requirement for the selection of the operations is that the data to be stored can be restored after the last run or after the last test pattern. Firstly, it is possible to derive the data directly from the current, last test pattern (as with the inversion operation) or secondly by analyzing the previous operations (in the example above: by the number of increments by "1". This does, however, set something complex analysis device for the regeneration of the data to be stored in advance, since all operations on the data to be stored must be traced. It is therefore the cost-effective form of the method if inversion is used as the operation. Then it is important to distinguish whether the method has an even or odd test depth n. In the first case (n even), the first test pattern has to be inverted and the last one is left because it matches the original data. In the second case (n odd), the first test pattern must match the data to be stored identically.
Als vorteilhaft erweist es sich, daß das Verfahren eine Iteration bestimmter Verfahrensschritte vorsieht. Dabei wird ein Zähler i, der zu Beginn desIt proves to be advantageous that the method provides for iteration of certain method steps. A counter i, which is at the beginning of the
Verfahrens auf 1 steht, bei jeder Iteration inkrementiert. Solange der Zähler nicht den vorbestimmten Wert der Testtiefe n erreicht hat - also solange T < n' - wird die Iteration durchlaufen. So ist es möglich, durch die Wahl der Testtiefe eine höhere Testabdeckung zu erzielen. Werden beispielsweise zwei Prüfmuster - durch Invertieren der Daten - verwendet, dann kann die Iteration auch mehr als zweimal durchlaufen werden, um beispielsweise äußere Störeinflüsse, die sich auf die Funktion des Speichers auswirken, zu erfassen. Das können Faktoren sein, wie beispielsweise die sich ändernde Temperatur oder sich minimal verändernde Spannungspegel der Schaltung.Method is 1, incremented with each iteration. As long as the counter has not reached the predetermined value of the test depth n - that is, as long as T <n '- the iteration is run through. This makes it possible to achieve a higher test coverage by selecting the test depth. If, for example, two test patterns - by inverting the data - are used, the iteration can also be run through more than twice in order, for example, to record external disturbing influences which affect the function of the memory. These can be factors such as the changing temperature or the minimally changing voltage level of the circuit.
Die Erfindung ist entsprechend in einer Vorrichtung zu sehen, die das eben erläuterte Verfahren zur Ausführung bringt. Dazu muß die Chipkarte, insbesondere das Betriebssystem, mit einem Inverter und gegebenenfalls mit einem Multiplexer und einem Zähler i ausgestattet sein, damit die zu speichernden Daten und anschließend das jeweilige Prüfmuster invertiert werden können. Soll jedoch das Prüfmuster nicht durch eine Invertierungs-Operation erstellt werden, so muß die Chipkarte Mittel zum Erstellen eines Prüfmusters aufweisen. Dieses Mittel muß so ausgelegt sein, daß aus bei einer Testtiefe von n, nach dem n-ten Testdurchlauf die zu speichernden Daten aus dem letzten Prüfmuster regeneriert werden können. Soll der EEPROM-Test während des Betriebs der Karte eingesetzt werden, so wird der sogenannte Memorytestmanager eingesetzt. Er überprüft, nach dem oben beschriebenen Testverfahren, ob der angeforderte Speicherbereich funktionsfähig ist. Der Memorytestmanager ist somit eine Zwischeninstanz zwischen einem Memorymanager der Chipkarte und dem Speicher. The invention is accordingly to be seen in a device which carries out the method just explained. For this purpose, the chip card, in particular the operating system, must be equipped with an inverter and possibly with a multiplexer and a counter i so that the data to be stored and then the respective test pattern can be inverted. However, if the test pattern is not to be created by an inversion operation, the chip card must have means for creating a test pattern. This means must be designed in such a way that, at a test depth of n, after the nth test run, the data to be stored can be regenerated from the last test sample. If the EEPROM test is to be used while the card is in operation, the so-called memory test manager is used. It uses the test procedure described above to check whether the requested memory area is functional. The memory test manager is thus an intermediate instance between a memory manager of the chip card and the memory.

Claims

Patentansprüche claims
1. Verfahren zum Test eines programmierbaren Speichers, bei dem der Test mit zu speichernden Daten durchgeführt wird und zeitlich in einen Programmiervorgang des Speichers integriert ist und indem mindestens ein Prüfmuster basierend auf den zu speichernden Daten erstellt wird, so daß die zu speichernden Daten zumindest aus einem zuletzt erstellten Prüfmuster automatisch regeneriert werden können, wobei die folgenden Verfahrensschritte mindestens einmal durchlaufen werden: - Erstellen des Prüfmusters1. Method for testing a programmable memory, in which the test is carried out with data to be stored and is integrated in time in a programming operation of the memory and in that at least one test pattern is created based on the data to be stored, so that the data to be stored are at least a test sample created last can be regenerated automatically, the following procedural steps being carried out at least once: - Creation of the test sample
Schreibzugriff auf den Speicher mit dem Prüfmuster,Write access to the memory with the test pattern,
Lesezugriff auf den Speicher zur Erfassung eines i-ten TestergebnissesRead access to the memory for recording an i-th test result
Vergleich des i-ten Testergebnisses mit dem Prüfmuster aufComparison of the i-th test result with the test sample
Übereinstimmung.Accordance.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Anzahl der Iterationen eine Testtiefe (n) definiert, mit n > 1 und wobei n geradzahlig ist.2. The method according to claim 1, characterized in that the number of iterations defines a test depth (n), with n> 1 and where n is an even number.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß im ersten Verfahrensschritt das erste Prüfmuster durch Invertieren der zu speichernden Daten erstellt wird und daß nach dem letzten Verfahrensdurchlauf die zu speichernden Daten durch Invertieren des letzten Prüfmusters regeneriert werden.3. The method according to claim 2, characterized in that in the first step, the first test pattern is created by inverting the data to be stored and that after the last process run, the data to be stored are regenerated by inverting the last test pattern.
4. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Iteration zweimal durchlaufen wird und daß zwei Prüfmuster verwendet werden, wobei das erste Prüfmuster das Komplement der zu speichernden Daten ist und wobei das zweite Prüfmuster die zu speichernden Daten sind. 4. The method according to any one of the preceding claims, characterized in that the iteration is run through twice and that two test patterns are used, the first test pattern being the complement of the data to be stored and the second test pattern being the data to be stored.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Anzahl der Iterationen nicht geradzahlig ist (n = 1,3,5,7 ) ist und daß im ersten Verfahrensschritt das erste Prüfmuster identisch aus den zu speichernden Daten erstellt wird und daß die weiteren Prüfmuster nach jedem Verfahrensdurchlauf jeweils invertiert werden.5. The method according to claim 1, characterized in that the number of iterations is not an even number (n = 1,3,5,7) and that in the first step the first test pattern is created identically from the data to be stored and that the others Test samples are inverted after each process run.
6. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß das Prüfmuster automatisch aufgrund der zu speichernden Daten erstellt wird.6. The method according to any one of the preceding claims, characterized in that the test pattern is created automatically on the basis of the data to be stored.
7. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß der Speicher ein nichtflüchtiger Schreib- /Lesespeicher, insbesondere ein EEPROM, ist.7. The method according to any one of the preceding claims, characterized in that the memory is a non-volatile read / write memory, in particular an EEPROM.
8. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß der Speicher ein Flash- oder ein FeRAM-Speicher ist.8. The method according to any one of the preceding claims, characterized in that the memory is a flash or a FeRAM memory.
9. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß der Test automatisch vor jedem Schreibzugriff auf den Speicher erfolgt.9. The method according to any one of the preceding claims, characterized in that the test is carried out automatically before each write access to the memory.
10. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß die Prüfmuster durch mindestens eine Operation auf den zu speichernden Daten erstellt werden, so daß die zu speichernden Daten nach dem letzten Verfahrensdurchlauf automatisch aus dem letzten Prüfmuster regeneriert werden können.10. The method according to any one of the preceding claims, characterized in that the test patterns are created by at least one operation on the data to be stored, so that the data to be stored can be regenerated automatically from the last test pattern after the last process run.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß die Operation eine XOR- Verknüpfung ist. 11. The method according to claim 10, characterized in that the operation is an XOR operation.
12. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß das Verfahren bei Nichtübereinstimmung des i-ten Testergebnisses mit dem i-ten Prüfmuster mit einer Fehlermeldung abbricht.12. The method according to any one of the preceding claims, characterized in that the method terminates with an error message if the i-th test result does not match the i-th test pattern.
13. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß das Prüfmuster von Iteration zu Iteration neu erstellt wird und nicht mit den anderen Prüfmustern übereinstimmen muß.13. The method according to any one of the preceding claims, characterized in that the test pattern is recreated from iteration to iteration and does not have to match the other test patterns.
14. Verwendung des Verfahrens nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß das Verfahren vom Betriebsystem bei jedem14. Use of the method according to one of the preceding claims, characterized in that the method of the operating system in each
Schreibzugriff auf den Speicher als Dauertest eingesetzt wird.Write access to the memory is used as an endurance test.
15. Verwendung des Verfahrens nach einem der Ansprüche 1 mit 13, dadurch gekennzeichnet, daß das Verfahren vor Inbetriebnahme des Speichers einmalig als Funktionstest verwendet wird. 15. Use of the method according to any one of claims 1 to 13, characterized in that the method is used once as a function test before starting up the memory.
EP02710781A 2001-01-11 2002-01-08 Method for testing a non-volatile memory and the use of such a method Withdrawn EP1352397A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10101234 2001-01-11
DE2001101234 DE10101234A1 (en) 2001-01-11 2001-01-11 Testing non-volatile memory involves producing test pattern, write access to memory with test pattern, read access to acquire test result and comparison with test pattern for agreement
PCT/EP2002/000110 WO2002063634A1 (en) 2001-01-11 2002-01-08 Method for testing a non-volatile memory and the use of such a method

Publications (1)

Publication Number Publication Date
EP1352397A1 true EP1352397A1 (en) 2003-10-15

Family

ID=7670389

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02710781A Withdrawn EP1352397A1 (en) 2001-01-11 2002-01-08 Method for testing a non-volatile memory and the use of such a method

Country Status (3)

Country Link
EP (1) EP1352397A1 (en)
DE (1) DE10101234A1 (en)
WO (1) WO2002063634A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111161786A (en) * 2019-12-28 2020-05-15 上海仪电智能电子有限公司 Large-capacity memory testing method for improving depth utilization efficiency of vector graphics

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014002369B4 (en) * 2014-02-18 2020-03-05 Giesecke+Devrient Mobile Security Gmbh Memory programming in a security module

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2557838B2 (en) * 1986-02-18 1996-11-27 株式会社東芝 IC card
JP2514954B2 (en) * 1987-03-13 1996-07-10 三菱電機株式会社 IC card
GB2228113B (en) * 1989-02-10 1993-01-27 Plessey Co Plc Circuit arrangement for verifying data stored in a random access memory
JPH03137900A (en) * 1989-07-27 1991-06-12 Nec Corp Nonvolatile semiconductor memory
JPH10125092A (en) * 1996-10-22 1998-05-15 Advantest Corp Flash memory tester
DE19711478A1 (en) * 1997-03-19 1998-10-01 Siemens Ag Integrated circuit and method for testing the integrated circuit
JPH10275500A (en) * 1997-04-01 1998-10-13 Nec Corp Test method and test circuit for semiconductor memory
US5991213A (en) * 1997-04-30 1999-11-23 Texas Instruments Incorporated Short disturb test algorithm for built-in self-test

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO02063634A1 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111161786A (en) * 2019-12-28 2020-05-15 上海仪电智能电子有限公司 Large-capacity memory testing method for improving depth utilization efficiency of vector graphics
CN111161786B (en) * 2019-12-28 2024-02-27 上海仪电智能电子有限公司 High-capacity memory test method for improving vector graphics depth utilization efficiency

Also Published As

Publication number Publication date
DE10101234A1 (en) 2002-07-18
WO2002063634A1 (en) 2002-08-15

Similar Documents

Publication Publication Date Title
DE102013222321A1 (en) Electronic device with a large number of memory cells and with physically unclonable function
DE102008033518A1 (en) Data processing method for a solid state disk control unit, solid state disk control unit and data storage element
DE102009033961A1 (en) Emulation of a once programmable memory
WO2000070620A1 (en) Memory array with address scrambling
DE10034878C2 (en) Method for checking a component and component with test memory
EP1352318B1 (en) Microprocessor circuit for portable data carriers
DE10292320T5 (en) Method and device for analyzing and repairing memory
DE19724471C2 (en) Device and method for writing data into a non-volatile memory
WO2002063634A1 (en) Method for testing a non-volatile memory and the use of such a method
DE10030990B4 (en) Method for writing and erasing a non-volatile memory area
DE10134654A1 (en) Process for error analysis of memory modules
DE102006000883A1 (en) Integrated circuit memory device e.g. RAM, operating method, involves executing read command within memory device concurrently by providing write address and write command to device prior to terminating execution of read command
DE10252059B3 (en) Data memory operating method e.g. for portable data carrier or mobile data processor, using back-up memory for retaining memory cell contents upon current interruption during programming
EP1248978A2 (en) Data memory
DE69619939T2 (en) Method and device for testing semiconductor memory devices
EP0715313B1 (en) Method of programming an electrically erasable read-only memory in an elecronic computer device and control device using the method
DE69427277T2 (en) Procedure for programming and testing a non-volatile memory
DE10148521B4 (en) Integrated memory and method for operating an integrated memory and a memory system with multiple integrated memories
DE102016225308A1 (en) Method and device for calibrating a control unit
DE10328238B4 (en) Method for loading smart cards with initialization and / or personalization data
DE10110272B4 (en) Semiconductor memory
DE112020007747T5 (en) Flash memory management device and flash memory management method
EP1517333B1 (en) Flag for memory with asymmetry concerning programming and erasure
DE102022209019A1 (en) Control device and method for initializing a control device
DE102015101327B4 (en) Method for adjusting the division of bus lines of a communication bus in a computer system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20030811

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

17Q First examination report despatched

Effective date: 20040128

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20161206