DE102020207945A1 - Memory control device and method for operating a memory control device - Google Patents

Memory control device and method for operating a memory control device Download PDF

Info

Publication number
DE102020207945A1
DE102020207945A1 DE102020207945.5A DE102020207945A DE102020207945A1 DE 102020207945 A1 DE102020207945 A1 DE 102020207945A1 DE 102020207945 A DE102020207945 A DE 102020207945A DE 102020207945 A1 DE102020207945 A1 DE 102020207945A1
Authority
DE
Germany
Prior art keywords
memory
write
identification
control device
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102020207945.5A
Other languages
German (de)
Inventor
Robert Richter
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102020207945.5A priority Critical patent/DE102020207945A1/en
Publication of DE102020207945A1 publication Critical patent/DE102020207945A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module

Abstract

Die Erfindung betrifft eine Speichersteuervorrichtung zum Beschreiben und/oder Auslesen eines einmal beschreibbaren Speichers mit vorgegebener Größe,wobei diese ausgebildet ist, jeweils Paare, umfassend eine Identifikation und einen der Identifikation zugeordneten Wert, in den einmal beschreibbaren Speicher zu schreiben, wobei mittels der Identifikation ein vorgebbarer Parameter zuordenbar ist und wobei die Speicher-größe der Identifikationen und der Werte vorgebbar ist und wobei die Speichersteu-ervorrichtung ausgebildet ist, die Anzahl der speicherbaren Paare anhand der Summe der Speichergrößen der Identifikationen und der Werte einerseits und der Größe des einmal beschreibbaren Speichers andererseits festzulegen.The invention relates to a memory control device for writing to and/or reading from a write-once memory of a predetermined size, this being designed to write pairs comprising an identification and a value associated with the identification into the write-once memory, the identification using a specifiable parameter can be assigned and wherein the memory size of the identifications and the values can be specified and wherein the memory control device is designed to determine the number of storable pairs based on the sum of the memory sizes of the identifications and the values on the one hand and the size of the write-once memory on the other to set.

Description

Technisches GebietTechnical area

Die Erfindung betrifft eine Speichersteuervorrichtung zum Beschreiben und/oder Auslesen eines einmal beschreibbaren Speichers mit vorgegebener Größe.The invention relates to a memory control device for writing to and / or reading out a write-once memory with a predetermined size.

Die Erfindung betrifft weiter ein Verfahren zum Betreiben einer Speichersteuervorrichtung zum Beschreiben und Auslesen eines einmal beschreibbaren Speichers mit vorgegebener Größe.The invention further relates to a method for operating a memory control device for writing to and reading out a write-once memory with a predetermined size.

Die Erfindung betrifft weiter eine Speichervorrichtung umfassend einen einmal beschreibbaren Speicher mit vorgegebener Größe und eine Speichersteuereinrichtung.The invention further relates to a memory device comprising a write-once memory with a predetermined size and a memory control device.

Stand der TechnikState of the art

Einmal-programmierbare beziehungsweise einmal beschreibbare Speicher - auch OTP-Speicher, one-time-programmable memory - genannt, können lediglich einmal programmiert, das heißt beschrieben werden. Eine nachträgliche Änderung von einmal geschriebenen Werten ist nicht möglich.One-time-programmable or one-time writable memories - also called OTP memories, one-time-programmable memory - can only be programmed, that is to say written, once. It is not possible to change values that have already been written.

Mittels sogenanntem „Paging“ oder „Patching“ ist eine „Reprogrammierung“ folgendermaßen möglich: Beim genannten „Paging“ wird der OTP-Speicher in verschiedene Seiten eingeteilt. Wird eine erneute Programmierung notwendig, wird eine neue „Seite“ benutzt. Wird der Speicher beispielsweise in zwei gleich große Seiten unterteilt, kann ein einmaliges, vollständiges Reprogrammieren nach dem erstmaligen Programmieren erfolgen.Using so-called “paging” or “patching”, “reprogramming” is possible as follows: With the so-called “paging”, the OTP memory is divided into different pages. If a new programming is necessary, a new "page" is used. If the memory is divided into two pages of equal size, for example, a one-time, complete reprogramming can be carried out after the initial programming.

Beim „Patching“ wird ein bestimmter Speicherbereich des Speichers reserviert. Dort werden dann die zu patchenden Adressen und die entsprechenden neuen Werte geschrieben, die die Programmierung der früheren Adressen entsprechend „aufheben“.With "patching" a certain memory area of the memory is reserved. The addresses to be patched and the corresponding new values are then written there, which "cancel" the programming of the previous addresses accordingly.

Offenbarung der ErfindungDisclosure of the invention

In einer Ausführungsform stellt die vorliegende Erfindung eine Speichersteuervorrichtung zum Beschreiben und/oder Auslesen eines einmal beschreibbaren Speichers mit vorgegebener Größe bereit, wobei diese ausgebildet ist, jeweils Paare, umfassend eine Identifikation und einen der Identifikation zugeordneten Wert, in den Speicher zu schreiben, wobei mittels der Identifikation ein vorgebbarer Parameter zuordenbar ist und wobei die Speichergröße der Identifikationen und der Werte vorgebbar ist und wobei die Speichersteuervorrichtung ausgebildet ist, die Anzahl der speicherbaren Paare anhand der Summe der Speichergrößen der Identifikationen und der Werte einerseits und der Größe des einmal beschreibbaren Speichers andererseits festzulegen.In one embodiment, the present invention provides a memory control device for writing to and / or reading out a write-once memory with a predetermined size, said memory being designed to write pairs, comprising an identification and a value assigned to the identification, to the memory, using a specifiable parameter can be assigned to the identification and the memory size of the identifications and the values can be specified and the memory control device is designed to determine the number of storable pairs based on the sum of the memory sizes of the identifications and the values on the one hand and the size of the write-once memory on the other .

In einer weiteren Ausführungsform stellt die vorliegende Erfindung ein Verfahren zum Betreiben einer Speichervorrichtung bereit mit einem einmal beschreibbaren Speicher zum Betreiben einer Speichersteuervorrichtung zum Beschreiben und Auslesen eines einmal beschreibbaren Speichers mit vorgegebener Größe, umfassend die Schritte

  • - Festlegen einer maximalen Anzahl von in dem einmal beschreibbaren Speicher speicherbaren Paaren, wobei ein Paar eine Identifikation und einen der Identifikation zugeordneten Wert umfasst, anhand der Summe der Speichergrößen der Identifikationen und der Werte einerseits und der Größe des einmal beschreibbaren Speichers andererseits.
  • - Ein oder mehrmaliges Beschreiben des einmal beschreibbaren Speichers mit einer Anzahl von Paaren, wobei die Summe der Anzahlen des ein oder mehrmaligen Beschreibens kleiner ist als die maximale Anzahl, und
  • - Auslesen des Speichers.
In a further embodiment, the present invention provides a method for operating a memory device with a write-once memory for operating a memory control device for writing to and reading out a write-once memory with a predetermined size, comprising the steps
  • Establishing a maximum number of pairs that can be stored in the write-once memory, one pair comprising an identification and a value assigned to the identification, based on the sum of the memory sizes of the identifications and the values on the one hand and the size of the write-once memory on the other.
  • - One or more writing of the write-once memory with a number of pairs, the sum of the numbers of the one or more writing is less than the maximum number, and
  • - Reading out the memory.

In einer weiteren Ausführungsform stellt die vorliegende Erfindung eine Speichervorrichtung bereit, umfassend einen einmal beschreibbaren Speicher mit vorgegebener Größe und eine Speichersteuereinrichtung gemäß einem der Ansprüche 1-6.In a further embodiment, the present invention provides a memory device comprising a write-once memory of a predetermined size and a memory control device according to any one of claims 1-6.

Einer der damit erzielten Vorteile ist, dass die Flexibilität hinsichtlich einer Reprogrammierung erhöht wird: Es ist dabei egal, ob ein Wert eines Parameters mehrfach neu programmiert werden muss oder mehrere Werte unterschiedlicher Parameter einmal neu programmiert werden müssen. Insbesondere wird dadurch ermöglicht, beispielsweise Trimm-Parameter zu unterschiedlichen Zeiten während der Herstellung eines Sensors zu bestimmen und zu korrigieren und im hinsichtlich seiner Baugröße kleinen einmal beschreibbaren Speicher abzulegen.One of the advantages achieved with this is that the flexibility with regard to reprogramming is increased: It does not matter whether a value of a parameter has to be reprogrammed several times or several values of different parameters have to be reprogrammed once. In particular, this makes it possible, for example, to determine and correct trim parameters at different times during the manufacture of a sensor and to store them in the write-once memory, which is small in terms of its structural size.

Weitere Merkmale, Vorteile und weitere Ausführungsformen der Erfindung sind im Folgenden beschrieben oder werden dadurch offenbar.Further features, advantages and further embodiments of the invention are described below or become apparent as a result.

Gemäß einer weiteren Weiterbildung ist die Speichersteuervorrichtung ausgebildet, bei Abfragen einer Identifikation, die in keinem Paar im einmal beschreibbaren Speicher vorhanden ist, einen Standardwert für den der abgefragten Identifikation zugeordneten Parameter als Abfrageergebnis bereitzustellen. Vorteil hiervon ist, dass eine Programmierung des einmal beschreibbaren Speichers beziehungsweise ein Schreiben des einmal beschreibbaren Speichers zum Zurückliefern eines Standardwerts nicht notwendig ist. Ein weiterer Vorteil ist, dass damit die Anzahl der Programmierschritte verkleinert wird.According to a further development, the memory control device is designed to provide a standard value for the parameter assigned to the queried identification as a query result when an identification is queried that is not present in any pair in the write-once memory. The advantage of this is that it is not necessary to program the write-once memory or to write to the write-once memory in order to return a standard value. Another benefit is that so that the number of programming steps is reduced.

Gemäß einer weiteren Weiterbildung ist ein Schattenregister angeordnet, welches zumindest einem, insbesondere allen, vorgebbaren Parametern einen Standardwert zuordnet. Das Schattenregister kann dabei entweder Teil der Speichersteuervorrichtung, ein Teil des einmal beschreibbaren Speichers, ein Teil einer Speichervorrichtung oder vollständig separat angeordnet sein. Dabei kann das Schattenregister ebenfalls als einmal beschreibbarer Speicher oder als mehrfach beschreibbarer Speicher ausgebildet sein. Auf diese Weise wird vermieden, dass der Speicher unnötig beschrieben werden muss und der restliche noch nicht beschriebene Speicherplatz sich unnötig verkleinert.According to a further development, a shadow register is arranged which assigns a standard value to at least one, in particular all, predeterminable parameters. The shadow register can either be part of the memory control device, part of the write-once memory, part of a memory device or be arranged completely separately. The shadow register can also be designed as a memory that can be written once or as a memory that can be written repeatedly. In this way it is avoided that the memory has to be written to unnecessarily and the remaining memory space that has not yet been written is unnecessarily reduced.

Gemäß einer weiteren Weiterbildung ist die Speichersteuervorrichtung ausgebildet, in einem ersten Speicherbereich des einmal beschreibbaren Speichers die Identifikationen und in einem zweiten Speicherbereich des einmal beschreibbaren Speichers die den Identifikationen zugeordneten Werte zu schreiben. Einer der damit erzielten Vorteile ist, dass damit das Auslesen des einmal beschreibbaren Speichers vereinfacht wird.According to a further development, the memory control device is designed to write the identifications in a first memory area of the write-once memory and the values assigned to the identifications in a second memory area of the write-once memory. One of the advantages achieved with this is that it simplifies reading out the write-once memory.

Gemäß einer weiteren Weiterbildung ist die Speichersteuervorrichtung ausgebildet, beim Auslesen des einmal beschreibbaren Speichers nacheinander die Identifikationen und den in dem jeweiligen Paar enthaltenen Wert auszulesen, solange bis eine nicht-gespeicherte Identifikation ermittelt wird, insbesondere wobei die Stelle im einmal beschreibbaren Speicher der ermittelten nicht-gespeicherten Identifikation ausgegeben und/oder gespeichert wird. Vorteil hiervon ist, dass das Lesen vereinfacht wird und nicht alle Speicherzellen ausgelesen werden müssen. Die erste nicht-gespeicherte, also nicht geschriebene Identifikation, dient als „Stopp“ beim Auslesen. Ebenso wird das weitere Beschreiben des einmal beschreibbaren Speichers vereinfacht, da dann die Stelle bekannt ist, ab der der einmal beschreibbare Speicher noch nicht beschrieben wurde. Ein erneutes Auslesen der Identifikationen bis zu einer nicht-gespeicherten Identifikation wird damit vermieden.According to a further development, the memory control device is designed to read out the identifications and the value contained in the respective pair one after the other when reading out the write-once memory, until a non-stored identification is determined, in particular where the location in the write-once memory of the determined non- stored identification is output and / or stored. The advantage of this is that reading is simplified and not all memory cells have to be read out. The first identification not saved, i.e. not written, serves as a "stop" when reading out. The further writing of the write-once memory is also simplified, since the point from which the write-once memory has not yet been written is then known. Reading out the identifications again until the identification is not saved is thus avoided.

Gemäß einer weiteren Weiterbildung ist die Speichersteuervorrichtung ausgebildet, beim Auslesen des einmal beschreibbaren Speichers nacheinander alle Identifikationen und jeweils den in dem jeweiligen Paar enthaltenen Wert auszulesen und wenn während des Auslesens eine bereits ausgelesene Identifikation erneut ausgelesen wird, wird der der bereits ausgelesenen Identifikation zugeordnete Wert mit dem Wert der erneut ausgelesenen Identifikation ersetzt. Vorteil hiervon ist eine besonders einfache Programmierung, da - wenn eine erneute Programmierung eines Wertes für einen Parameter notwendig wird - einfach erneut die Identifikation des Parameters zusammen mit dem Wert im Anschluss an bereits gespeicherte Paare geschrieben werden kann. Ebenso wird das Auslesen vereinfacht, da nicht überprüft werden muss, ob eine Identifikation mehrfach gespeichert ist, sondern es können einfach alle gespeicherten Paare ausgelesen werden und bei gleicher Identifikation wird mit dem zeitlich später ausgelesenen Wert der zeitlich früher ausgelesene Wert gleicher Identifikation überschrieben.According to a further development, the memory control device is designed to successively read out all identifications and in each case the value contained in the respective pair when reading out the write-once memory, and if an identification that has already been read out is read out again during reading out, the value assigned to the identification that has already been read out is also read out replaced by the value of the re-read identification. The advantage of this is a particularly simple programming, since - if a new programming of a value for a parameter is necessary - the identification of the parameter can simply be rewritten together with the value after the pairs that have already been saved. Reading out is also simplified, since it is not necessary to check whether an identification is stored more than once, but all stored pairs can simply be read out and, if the same identification is used, the value read out earlier with the same identification is overwritten with the value read out later.

Gemäß einer weiteren Weiterbildung des Verfahrens werden beim Auslesen des einmal beschreibbaren Speichers nacheinander die Identifikationen und der in dem jeweiligen Paar enthaltene Wert ausgelesen, solange bis eine nicht-gespeicherte Identifikation ermittelt wird, insbesondere wobei die Stelle im einmal beschreibbaren Speicher der ermittelten nicht-gespeicherten Identifikation ausgegeben und/oder gespeichert wird. Vorteil hiervon ist, dass das Lesen vereinfacht wird und nicht alle Speicherzellen ausgelesen werden müssen. Die erste nicht-gespeicherte Identifikation dient als „Stopp“ beim Auslesen. Ebenso wird das weitere Beschreiben des einmal beschreibbaren Speichers vereinfacht, da dann die Stelle bekannt ist, ab dem der einmal beschreibbare Speicher noch nicht beschrieben wurde. Ein erneutes Auslesen der Identifikationen bis zu einer nicht-gespeicherten Identifikation wird damit vermieden.According to a further development of the method, when reading out the write-once memory, the identifications and the value contained in the respective pair are read out one after the other until a non-stored identification is determined, in particular the location in the write-once memory of the determined non-stored identification is output and / or stored. The advantage of this is that reading is simplified and not all memory cells have to be read out. The first identification not saved serves as a "stop" when reading out. The further writing of the write-once memory is also simplified, since the point from which the write-once memory has not yet been written is then known. Reading out the identifications again until the identification is not saved is thus avoided.

Gemäß einer weiteren Weiterbildung des Verfahrens werden beim Auslesen des einmal beschreibbaren Speichers nacheinander alle Identifikationen und jeweils den in dem jeweiligen Paar enthaltenen Wert ausgelesen und wenn während des Auslesens eine bereits ausgelesene Identifikation erneut ausgelesen wird, wird der der bereits ausgelesenen Identifikation zugeordnete Wert mit dem Wert der erneut ausgelesenen Identifikation ersetzt. Vorteil hiervon ist eine besonders einfache Programmierung, da - wenn eine erneute Programmierung eines Wertes für einen Parameter notwendig wird - einfach erneut die Identifikation des Parameters zusammen mit dem Wert im Anschluss an bereits gespeicherte Paare geschrieben werden kann. Ebenso wird das Auslesen vereinfacht, da nicht überprüft werden muss, ob eine Identifikation mehrfach gespeichert ist, sondern es können einfach alle gespeicherten Paare ausgelesen werden und bei gleicher Identifikation wird mit dem zeitlich später ausgelesenen Wert der zeitlich früher ausgelesene Wert gleicher Identifikation überschrieben.According to a further development of the method, when the write-once memory is read out, all identifications and the value contained in the respective pair are read out one after the other and if an identification that has already been read out is read out again during the readout, the value assigned to the identification that has already been read out is assigned the value the re-read identification is replaced. The advantage of this is a particularly simple programming, since - if a new programming of a value for a parameter is necessary - the identification of the parameter can simply be rewritten together with the value after the pairs that have already been saved. Reading out is also simplified, since it is not necessary to check whether an identification is stored more than once, but all stored pairs can simply be read out and, if the same identification is used, the value read out earlier with the same identification is overwritten with the value read out later.

Gemäß einer weiteren Weiterbildung der Speichervorrichtung weisen alle Speicherzellen des einmal beschreibbaren Speichers vor einem erstmaligen Beschreiben den Wert „0“ oder den entsprechenden inversen Wert zum Wert „0“ auf. Dies ermöglicht eine einfache Ermittlung, ob die jeweilige Speicherzelle bereits mit einer Identifikation und/oder einem Wert beschrieben wurde oder nicht.According to a further development of the memory device, all memory cells of the write-once memory have the value “0” or the corresponding inverse value to the value “0” before being written to for the first time. This makes it easy to determine whether the respective Memory cell has already been written with an identification and / or a value or not.

Weitere wichtige Merkmale und Vorteile der Erfindung ergeben sich aus den Unteransprüchen, aus den Zeichnungen und aus dazugehöriger Figurenbeschreibung anhand der Zeichnungen.Further important features and advantages of the invention emerge from the subclaims, from the drawings and from the associated description of the figures on the basis of the drawings.

Es versteht sich, dass die vorstehend genannten und die nachstehend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.It goes without saying that the features mentioned above and those yet to be explained below can be used not only in the respectively specified combination, but also in other combinations or on their own, without departing from the scope of the present invention.

Bevorzugte Ausführungen und Ausführungsformen der Erfindung sind in den Zeichnungen dargestellt und werden in der nachfolgenden Beschreibung näher erläutert, wobei sich gleiche Bezugszeichen auf gleiche oder ähnliche oder funktional gleiche Bauteile oder Elemente beziehen.Preferred designs and embodiments of the invention are shown in the drawings and are explained in more detail in the following description, with the same reference symbols referring to the same or similar or functionally identical components or elements.

FigurenlisteFigure list

Dabei zeigt

  • 1 in schematischer Darstellung einen Speicher gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 2 in schematischer Form Schritte eines Verfahrens gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 3 in schematischer Form eine Speichervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung; und
  • 4 Schritte eines Verfahrens zum Betreiben einer Speichervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung.
It shows
  • 1 a schematic representation of a memory according to an embodiment of the present invention;
  • 2 in schematic form, steps of a method according to an embodiment of the present invention;
  • 3 in schematic form a memory device according to an embodiment of the present invention; and
  • 4th Steps of a method for operating a memory device according to an embodiment of the present invention.

Ausführungsformen der ErfindungEmbodiments of the invention

1 zeigt in schematischer Form einen Speicher gemäß einer Ausführungsform der vorliegenden Erfindung. 1 Fig. 3 shows in schematic form a memory according to an embodiment of the present invention.

Im Detail ist in 1 ein einmal beschreibbarer Speicher 2 gezeigt, der in 256 Adressen 3, nummeriert von 0 bis 255, unterteilt ist. Jede der Adressen 3 weist eine Größe von 16 Bit auf. Die Bits sind dabei von 0 bis 15 nummeriert. Der Ausgangszustand des einmal beschreibbaren Speichers 2 ist nicht-programmiert, das heißt alle Bits weisen den Wert „0“ auf. Darüber hinaus ist der einmal beschreibbare Speicher 2 in zwei Bereiche 2a, 2b unterteilt. Die Unterteilung ist hierbei nicht physisch bedingt, sondern wird durch eine Speichersteuereinrichtung (in 1 nicht gezeigt) zur Organisation des einmal beschreibbaren Speichers 2 vorgenommen. Im unteren Bereich 2a werden lediglich die Identifikationen IDX0-IDX169, also insgesamt 170, abgelegt. Jede der Identifikationen IDX (ID) weist eine Größe von 7 Bit auf. Diese kann entsprechend den Anforderungen auch größer oder kleiner, also im Wesentlichen frei gewählt werden. Hierbei sind in jeder Adresse 3 zwei aufeinander folgende Identifikationen IDX (ID) abgelegt, wobei am jeweiligen Ende der Identifikation ein Bit nicht beschrieben wird, das heißt Bit 7 und Bit 15 werden nicht beschrieben.In detail is in 1 a write-once memory 2 shown in 256 addresses 3 , numbered from 0 to 255. Any of the addresses 3 is 16 bits in size. The bits are numbered from 0 to 15. The initial state of the write-once memory 2 is not programmed, i.e. all bits have the value "0". In addition, the memory is write-once 2 in two areas 2a , 2 B divided. The subdivision is not physically determined, but is controlled by a memory control device (in 1 not shown) to organize the write-once memory 2 performed. In the lower range 2a only the identifications IDX0-IDX169, i.e. a total of 170, are stored. Each of the identifications IDX (ID) has a size of 7 bits. Depending on the requirements, this can also be selected larger or smaller, i.e. essentially freely. Here are in each address 3 two successive identifications IDX (ID) are stored, with a bit not being written at the respective end of the identification, i.e. bit 7 and bit 15 are not written.

Jeder der Identifikationen IDX ist ein Parameter zugeordnet, dessen Wert IDX (value) im Bereich 2b abgelegt wird. Die Größe der Werte IDX (value) ist dabei 16 Bit. Insgesamt beansprucht somit jedes Paar (IDX(ID), IDX(value)) einen Speicherplatz von 23 Bit. Bei einem einmal beschreibbaren Speicher der Größe 4096 Bit können somit maximal 178 Paare (4096/23) gespeichert werden.Each of the identifications IDX is assigned a parameter, the value of which is IDX (value) in the range 2 B is filed. The size of the values IDX (value) is 16 bits. In total, each pair (IDX (ID), IDX (value)) takes up a storage space of 23 bits. With a write-once memory with a size of 4096 bits, a maximum of 178 pairs (4096/23) can be stored.

Im Folgenden wird deshalb eine Anzahl von 170 speicherbare Paare angenommen.In the following, a number of 170 storable pairs is therefore assumed.

Durch die in 1 gezeigte Unterteilung des einmal beschreibbaren Speichers 2 in zwei Bereiche 2a, 2b, kann das Auslesen optimiert werden. Die Adressen 3 des ersten Bereichs 2a des einmal beschreibbaren Speichers 2 weisen die Indizes für alle Identifikationen IDX (ID) auf, die Adressen 3 des zweiten Bereichs 2b weisen die Indizes für die zu den Identifikationen IDX (ID) korrespondierenden Werte IDX (Value) auf. Hierbei gilt die folgende Beziehung zwischen einem Paar und der Adresse des einmal beschreibbaren Speichers 2: Adresse der Identifikation  ( idx ) = idx / 2

Figure DE102020207945A1_0001
Adresse des zugeh o ¨ rigen Werts = idx + 85
Figure DE102020207945A1_0002
The in 1 The shown subdivision of the write-once memory 2 in two areas 2a , 2 B , the readout can be optimized. The addresses 3 of the first area 2a of write-once memory 2 have the indices for all identifications IDX (ID), the addresses 3 of the second area 2 B have the indices for the values IDX (Value) corresponding to the identifications IDX (ID). Here, the following relationship holds between a pair and the address of the write-once memory 2 : Address of identification ( idx ) = idx / 2
Figure DE102020207945A1_0001
Address of the O ¨ of some value = idx + 85
Figure DE102020207945A1_0002

Hierbei werden die geraden Indizes jeweils in der Adresse in den Bits 0 bis 6 abgespeichert, die ungeraden Indizes in der gleichen Adresse in den Bits 8 bis 14. Die Bits 7 und 15 werden hier in 1 nicht programmiert, also beschrieben, können aber in anderen Ausführungsformen genutzt werden.The even indices are saved in the address in bits 0 to 6, the odd indices in the same address in the bits 8th until 14th . Bits 7 and 15 are used here in 1 not programmed, i.e. described, but can be used in other embodiments.

2 zeigt in schematischer Form Schritte eines Verfahrens gemäß einer Ausführungsform der vorliegenden Erfindung. 2 shows in schematic form steps of a method according to an embodiment of the present invention.

Im Detail ist in 2 ein Verfahren zum Auslesen des einmal beschreibbaren Speichers 2 gemäß 1 gezeigt. Nach Beginn des Verfahrens in einem Schritt S0 wird eine Laufvariable i gleich dem Wert „0“ gesetzt. Die Laufvariable i bezeichnet hierbei den Index des auszulesenden Paares. Die Variable p bezeichnet hierbei ein Feld/Array, in dem die ausgelesenen Werte gespeichert werden.In detail is in 2 a method of reading out the write-once memory 2 according to 1 shown. After starting the procedure in one step S0 a run variable i is set equal to the value "0". The run variable i denotes the index of the pair to be read out. The variable p designates a field / array in which the read out values are saved.

In einem weiteren Schritt S2 wird überprüft, ob die Laufvariable i (noch) kleiner ist als der Wert der maximal speicherbaren Paare, hier 170. Wenn nein, wird der letzte Wert der Laufvariable als prog_idx Wert in einem weiteren Schritt S8 ausgegeben und gespeichert und das Auslesen dann in einem weiteren Schritt S9 gestoppt oder abgebrochen. Wenn ja, werden in einem weiteren Schritt S3 die geraden und ungeraden Identifikationen id_even und id_odd ermittelt.In a further step S2 a check is made as to whether the run variable i is (still) smaller than the value of the maximum pairs that can be stored, here 170. If no, the last value of the run variable is used as the prog_idx value in a further step S8 output and stored and the readout then in a further step S9 stopped or canceled. If so, it will be in a further step S3 the even and odd identifications id_even and id_odd are determined.

In einem weiteren Schritt S4 wird überprüft, ob die jeweilige gerade Identifikation geschrieben wurde. Wenn nein, wird der letzte Wert der Laufvariable als prog_idx Wert in einem weiteren Schritt S8 ausgegeben und gespeichert und das Auslesen dann in einem weiteren Schritt S9 gestoppt oder abgebrochen. Wenn ja, wird der zugehörige Wert in einem weiteren Schritt S5 ausgelesen und der Wert der Laufvariable um 1 erhöht.In a further step S4 it is checked whether the respective identification has just been written. If not, the last value of the run variable is used as the prog_idx value in a further step S8 output and stored and the readout then in a further step S9 stopped or canceled. If so, the associated value is used in a further step S5 read out and the value of the run variable increased by 1.

In einem weiteren Schritt S7 wird überprüft, ob die jeweilige ungerade Identifikation geschrieben wurde. Wenn nein, wird der letzte Wert der Laufvariable als prog_idx Wert in einem weiteren Schritt S8 ausgegeben und gespeichert und das Auslesen dann in einem weiteren Schritt S9 gestoppt oder abgebrochen. Wenn ja, wird der zugehörige Wert in einem weiteren Schritt S7 ausgelesen und der Wert der Laufvariable um 1 erhöht. Anschließend wird das Verfahren ab Schritt S2 wieder wiederholt.In a further step S7 it is checked whether the respective odd identification has been written. If not, the last value of the run variable is used as the prog_idx value in a further step S8 output and stored and the readout then in a further step S9 stopped or canceled. If so, the associated value is used in a further step S7 read out and the value of the run variable increased by 1. Then the procedure from step S2 repeated again.

Mit anderen Worten wird das Auslesen abgebrochen, sobald eine Identifikation in einer Adresse gefunden wird, die nicht beschrieben wurde, also den ursprünglichen Wert „0“ aufweist. Diese erste Adresse, die nicht beschrieben wurde, wird beispielsweise als prog_idx gespeichert. Wenn keine freien Identifikationen mehr vorhanden sind, wird der Speicher 2 als „voll“ angesehen.In other words, the read-out is aborted as soon as an identification is found in an address that has not been written to, ie has the original value "0". This first address, which has not been written to, is stored as prog_idx, for example. If there are no more free identifications, the memory 2 regarded as "full".

Nachdem der einmal beschreibbare Speicher 2 einmalig teilweise beschrieben wurde, können weitere Parameter programmiert werden. Der Wert prog_idx wird hierbei dann benutzt, um die korrekte Adresse zur Programmierung/zum Speichern der weiteren Paare zu ermitteln. Nach Schreiben eines jeden Paares beziehungsweise Wertes kann der Wert prog_idx jeweils um 1 erhöht werden und so weiter. Sobald dieser den Wert 170 - der mit der maximalen Anzahl der speicherbaren Paare übereinstimmt - erreicht hat, sind keine weiteren Programmierungen des Speichers beziehungsweise ein weiteres Schreiben in den einmal beschreibbaren Speicher 2 möglich.After the write-once memory 2 has been partially written once, additional parameters can be programmed. The value prog_idx is then used to determine the correct address for programming / storing the other pairs. After each pair or value has been written, the value prog_idx can be changed 1 be increased and so on. Once this is the value 170 - which corresponds to the maximum number of storable pairs - has reached, there is no further programming of the memory or further writing to the write-once memory 2 possible.

3 zeigt in schematischer Form eine Speichervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung. 3 Figure 12 shows in schematic form a memory device according to an embodiment of the present invention.

Im Detail ist in 3 eine Speichervorrichtung 1 gezeigt. Die Speichervorrichtung 1 weist einen einmal-programmierbaren Speicher 2 und eine mit dem einmal-programmierbaren Speicher 2 zur Steuerung desselben verbundene Speichersteuervorrichtung 4 auf.In detail is in 3 a storage device 1 shown. The storage device 1 has a one-time programmable memory 2 and one with the one-time programmable memory 2 for controlling the same connected storage control device 4th on.

4 zeigt Schritte eines Verfahren zum Betreiben einer Speichervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung. 4th 12 shows steps of a method for operating a memory device according to an embodiment of the present invention.

Im Detail zeigt 4 Schritte eines Verfahrens zum Betreiben einer Speichersteuervorrichtung 4 zum Beschreiben und Auslesen eines einmal beschreibbaren Speichers 2 mit vorgegebener Größe an Speicherzellen.Shows in detail 4th Steps of a method for operating a memory control device 4th for writing to and reading from a write-once memory 2 with a predetermined size of memory cells.

Das Verfahren umfasst dabei die folgenden Schritte:

  • - Festlegen T1 einer maximalen Anzahl von in dem einmal beschreibbaren Speicher speicherbaren Paaren, wobei ein Paar eine Identifikation und einen der Identifikation zugeordneten Wert umfasst, anhand der Summe der Speichergrößen der Identifikationen und der Werte einerseits und der Größe des einmal beschreibbaren Speichers andererseits.
  • - Ein oder mehrmaliges Beschreiben T2 des einmal beschreibbaren Speichers mit einer Anzahl von Paaren, wobei die Summe der Anzahlen des ein oder mehrmaligen kleiner ist als die maximale Anzahl, und
  • - Auslesen T3 des einmal beschreibbaren Speichers.
The process comprises the following steps:
  • - Determine T1 a maximum number of pairs storable in the write-once memory, a pair comprising an identification and a value assigned to the identification, based on the sum of the memory sizes of the identifications and the values on the one hand and the size of the write-once memory on the other.
  • - Writing one or more times T2 of the write-once memory with a number of pairs, the sum of the numbers of the one or more times being smaller than the maximum number, and
  • - Read out T3 of write-once memory.

Zusammenfassend kann zumindest eine der Ausführungsformen der Erfindung zumindest einen der folgenden Vorteile und/oder eines der folgenden Merkmale bereitstellen:

  • - Höhere Flexibilität beim Speichern von Werten von Parametern, insbesondere muss die Anzahl der Werte der Parameter als auch die Anzahl von Reprogrammierungen im Vorfeld nicht festgelegt werden.
  • - Einfaches und schnelles Auslesen des einmal beschreibbaren Speichers
  • - Weniger Programmierschritte
In summary, at least one of the embodiments of the invention can provide at least one of the following advantages and / or one of the following features:
  • - Greater flexibility when saving parameter values, in particular the number of parameter values and the number of reprogrammings do not have to be defined in advance.
  • - Easy and quick reading of the write-once memory
  • - Fewer programming steps

Obwohl die vorliegende Erfindung anhand bevorzugter Ausführungsbeispiele beschrieben wurde, ist sie nicht darauf beschränkt, sondern auf vielfältige Weise modifizierbar.Although the present invention has been described on the basis of preferred exemplary embodiments, it is not restricted thereto, but rather can be modified in many ways.

Claims (11)

Speichersteuervorrichtung (4) zum Beschreiben und/oder Auslesen eines einmal beschreibbaren Speichers (2) mit vorgegebener Größe, wobei diese ausgebildet ist, jeweils Paare, umfassend eine Identifikation und einen der Identifikation zugeordneten Wert, in den einmal beschreibbaren Speicher (2) zu schreiben, wobei mittels der Identifikation ein vorgebbarer Parameter zuordenbar ist und wobei die Speichergröße der Identifikationen und der Werte vorgebbar ist und wobei die Speichersteuervorrichtung (4) ausgebildet ist, die Anzahl der speicherbaren Paare anhand der Summe der Speichergrößen der Identifikationen und der Werte einerseits und der Größe des einmal beschreibbaren Speichers (2) andererseits festzulegen.Memory control device (4) for writing to and / or reading out a write-once Memory (2) with a predetermined size, which is designed to write pairs, comprising an identification and a value assigned to the identification, into the write-once memory (2), with a predeterminable parameter being assignable by means of the identification and with the memory size the identifications and the values can be specified and the memory control device (4) is designed to determine the number of storable pairs based on the sum of the memory sizes of the identifications and the values on the one hand and the size of the write-once memory (2) on the other. Speichersteuervorrichtung (4) gemäß Anspruch 1, wobei die Speichersteuervorrichtung (4) ausgebildet ist, bei Abfragen einer Identifikation, die in keinem Paar im einmal beschreibbaren Speicher (2) vorhanden ist, einen Standardwert für den der abgefragten Identifikation zugeordneten Parameter als Abfrageergebnis bereitzustellen.Memory control device (4) according to Claim 1 wherein the memory control device (4) is designed to provide a standard value for the parameter assigned to the queried identification as a query result when an identification is queried which is not present in any pair in the write-once memory (2). Speichersteuervorrichtung (4) gemäß Anspruch 2, wobei ein Schattenregister angeordnet ist, welches zumindest einem, insbesondere allen, vorgebbaren Parametern einen Standardwert zuordnet.Memory control device (4) according to Claim 2 , wherein a shadow register is arranged which assigns a standard value to at least one, in particular all, predeterminable parameters. Speichersteuervorrichtung (4) gemäß einem der Ansprüche 1-3, wobei die Speichersteuervorrichtung (4) ausgebildet ist, in einem ersten Speicherbereich (2a) des einmal beschreibbaren Speichers (2) die Identifikationen und in einem zweiten Speicherbereich (2b) des einmal beschreibbaren Speichers (2) die den Identifikationen zugeordneten Werte zu schreiben.Memory control device (4) according to one of the Claims 1 - 3 wherein the memory control device (4) is designed to write the identifications in a first memory area (2a) of the write-once memory (2) and the values assigned to the identifications in a second memory area (2b) of the write-once memory (2). Speichersteuervorrichtung (4) gemäß einem der Ansprüche 1-4, wobei die Speichersteuervorrichtung (4) ausgebildet ist, beim Auslesen des einmal beschreibbaren Speichers (2) nacheinander die Identifikationen und den in dem jeweiligen Paar enthaltenen Wert auszulesen, solange bis eine nicht-gespeicherte Identifikation ermittelt wird, insbesondere wobei die Stelle im einmal beschreibbaren Speicher (2) der ermittelten nicht-gespeicherten Identifikation ausgegeben und/oder gespeichert wird.Memory control device (4) according to one of the Claims 1 - 4th , wherein the memory control device (4) is designed to read out the identifications and the value contained in the respective pair one after the other when reading out the write-once memory (2) until a non-stored identification is determined, in particular the location in the write-once memory (2) the ascertained, non-stored identification is output and / or stored. Speichersteuervorrichtung (4) gemäß einem der Ansprüche 1-5, wobei die Speichersteuervorrichtung (4) ausgebildet ist, beim Auslesen des einmal beschreibbaren Speichers (2) nacheinander alle Identifikationen und jeweils den in dem jeweiligen Paar enthaltenen Wert auszulesen und wenn während des Auslesens eine bereits ausgelesene Identifikation erneut ausgelesen wird, wird der der bereits ausgelesenen Identifikation zugeordnete Wert mit dem Wert der erneut ausgelesenen Identifikation ersetzt.Memory control device (4) according to one of the Claims 1 - 5 , the memory control device (4) being designed to successively read out all identifications and the value contained in the respective pair when reading out the write-once memory (2), and if an identification that has already been read out is read out again during reading out, that of the identification that has already been read out is used The value assigned to the identification is replaced with the value of the identification that has been read out again. Verfahren zum Betreiben einer Speichersteuervorrichtung (4) zum Beschreiben und Auslesen eines einmal beschreibbaren Speichers (2) mit vorgegebener Größe, umfassend die Schritte - Festlegen (T1) einer maximalen Anzahl von in dem einmal beschreibbaren Speicher (2) speicherbaren Paaren, wobei ein Paar eine Identifikation und einen der Identifikation zugeordneten Wert umfasst, anhand der Summe der Speichergrößen der Identifikationen und der Werte einerseits und der Größe des einmal beschreibbaren Speichers (2) andererseits. - Ein oder mehrmaliges Beschreiben des einmal beschreibbaren Speichers (2) mit einer Anzahl von Paaren, wobei die Summe der Anzahlen des ein oder mehrmaligen Beschreibens kleiner ist als die maximale Anzahl, und - Auslesen des einmal beschreibbaren Speichers (2).A method for operating a memory control device (4) for writing to and reading out a write-once memory (2) having a predetermined size, comprising the steps - Establishing (T1) a maximum number of pairs storable in the write-once memory (2), one pair comprising an identification and a value assigned to the identification, based on the sum of the memory sizes of the identifications and the values on the one hand and the size of the write-once Memory (2) on the other hand. - One or more writing of the write-once memory (2) with a number of pairs, the sum of the numbers of the one or more writing is less than the maximum number, and - Reading out the write-once memory (2). Verfahren gemäß Anspruch 7, wobei beim Auslesen des einmal beschreibbaren Speichers (2) nacheinander die Identifikationen und der in dem jeweiligen Paar enthaltene Wert ausgelesen werden, solange bis eine nicht-gespeicherte Identifikation ermittelt wird, insbesondere wobei die Stelle im einmal beschreibbaren Speicher (2) der ermittelten nicht-gespeicherten Identifikation ausgegeben und/oder gespeichert wird.Procedure according to Claim 7 , whereby when reading out the write-once memory (2) the identifications and the value contained in the respective pair are read out one after the other until a non-stored identification is determined, in particular where the location in the write-once memory (2) of the determined non- stored identification is output and / or stored. Verfahren gemäß Anspruch 8, wobei beim Auslesen des einmal beschreibbaren Speichers (2) nacheinander alle Identifikationen und jeweils den in dem jeweiligen Paar enthaltenen Wert ausgelesen werden und wenn während des Auslesens eine bereits ausgelesene Identifikation erneut ausgelesen wird, wird der der bereits ausgelesenen Identifikation zugeordnete Wert mit dem Wert der erneut ausgelesenen Identifikation ersetzt.Procedure according to Claim 8 , wherein when reading out the write-once memory (2) all identifications and the respective value contained in the respective pair are read out one after the other and if an identification that has already been read out is read out again during reading out, the value assigned to the identification already read out becomes the value of the Replaced identification replaced. Speichervorrichtung (1), umfassend einen einmal beschreibbaren Speicher (2) mit vorgegebener Größe und eine Speichersteuervorrichtung (4) gemäß einem der Ansprüche 1-6.A memory device (1) comprising a write-once memory (2) with a predetermined size and a memory control device (4) according to one of the Claims 1 - 6th . Speichervorrichtung (1) gemäß Anspruch 10, wobei alle Speicherzellen des einmal beschreibbaren Speichers (2) vor einem erstmaligen Beschreiben den Wert „0“ oder den entsprechenden inversen Wert zum Wert „0“ aufweisen.Storage device (1) according to Claim 10 , whereby all memory cells of the write-once memory (2) have the value “0” or the corresponding inverse value to the value “0” before being written to for the first time.
DE102020207945.5A 2020-06-26 2020-06-26 Memory control device and method for operating a memory control device Pending DE102020207945A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020207945.5A DE102020207945A1 (en) 2020-06-26 2020-06-26 Memory control device and method for operating a memory control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020207945.5A DE102020207945A1 (en) 2020-06-26 2020-06-26 Memory control device and method for operating a memory control device

Publications (1)

Publication Number Publication Date
DE102020207945A1 true DE102020207945A1 (en) 2021-12-30

Family

ID=78826829

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020207945.5A Pending DE102020207945A1 (en) 2020-06-26 2020-06-26 Memory control device and method for operating a memory control device

Country Status (1)

Country Link
DE (1) DE102020207945A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6662262B1 (en) 1999-10-19 2003-12-09 Advanced Micro Devices, Inc. OTP sector double protection for a simultaneous operation flash memory
US20120290773A1 (en) 2011-05-10 2012-11-15 Crocus Technology Sa Information processing device comprising a read-only memory and a method for patching the read-only memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6662262B1 (en) 1999-10-19 2003-12-09 Advanced Micro Devices, Inc. OTP sector double protection for a simultaneous operation flash memory
US20120290773A1 (en) 2011-05-10 2012-11-15 Crocus Technology Sa Information processing device comprising a read-only memory and a method for patching the read-only memory

Similar Documents

Publication Publication Date Title
DE4022885C2 (en) Method for moving storage areas and hierarchy storage system
DE2261694A1 (en) STORAGE SYSTEM
EP0704803B1 (en) Flash memory management method
DE602004008240T2 (en) Method for managing defective memory blocks in a non-volatile memory and non-volatile memory for carrying out the method
DE60132229T2 (en) MEMORY DEVICE, MEMORY CONTROL METHOD AND PROGRAM
DE2432608A1 (en) MEMORY ARRANGEMENT FOR DATA PROCESSING DEVICES
DE1906940B2 (en) WORD-ORGANIZED MEMORY WITH REDUNDANT WORDS
DE3404206A1 (en) METHOD FOR PROVIDING TABLE INFORMATION FOR A DIGITAL VALVE CONTROL DEVICE
DE1524788A1 (en) Circuit arrangement for the detection and automatic replacement of defective storage locations in data memories
DE102020207945A1 (en) Memory control device and method for operating a memory control device
DE602004008697T2 (en) Wear compensation in a non-volatile flash memory without the need for free blocks
DE2425574A1 (en) ADDRESSING CHARACTERS IN A WORD-ORIENTED SYSTEM OF A COMPUTER
CH670715A5 (en)
EP1332501B1 (en) Memory management logic for expanding the utilization of read-only memories
DE19963475B4 (en) A method and apparatus for controlling operations in a vehicle and providing data therefor
DE102004013493A1 (en) Access method for a NAND flash memory device and a corresponding NAND flash memory device
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
DE1774212B2 (en) EN 20417 08/12/67 "37132 BEZ: DATA PROCESSING SYSTEM
DE2519195A1 (en) ASSOCIATIVE MEMORY
EP1625592A1 (en) Device and method for treating a state of a memory
DE102005058690A1 (en) Device and process for tax data storage
DE3244629A1 (en) DIGITAL DATA STORAGE
DE4209905C1 (en) Memory contents management system using EEPROM and RAM - compares new data with memory image stored in EEPROM, stores changed addresses of locations and writes corresp. contents in EEPROM
DE3541114C2 (en)
DE10128752A1 (en) Storage of data in computer memory, especially EEPROM or flash memory by writing data to memory in pages, whereby each page contains a value and a reference to the next page in the chain

Legal Events

Date Code Title Description
R163 Identified publications notified