EP2000914B1 - Verfahren und Vorrichtung zum Umorganisieren von Daten in einem Speichersystem, insbesondere für Steuergeräte in Kraftfahrzeugen - Google Patents

Verfahren und Vorrichtung zum Umorganisieren von Daten in einem Speichersystem, insbesondere für Steuergeräte in Kraftfahrzeugen Download PDF

Info

Publication number
EP2000914B1
EP2000914B1 EP08104224A EP08104224A EP2000914B1 EP 2000914 B1 EP2000914 B1 EP 2000914B1 EP 08104224 A EP08104224 A EP 08104224A EP 08104224 A EP08104224 A EP 08104224A EP 2000914 B1 EP2000914 B1 EP 2000914B1
Authority
EP
European Patent Office
Prior art keywords
segment
parameters
memory
data
nonvolatile memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
EP08104224A
Other languages
English (en)
French (fr)
Other versions
EP2000914A1 (de
Inventor
Joern Boettcher
Jens Liebehenschel
Markus Schmid
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
Publication of EP2000914A1 publication Critical patent/EP2000914A1/de
Application granted granted Critical
Publication of EP2000914B1 publication Critical patent/EP2000914B1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written

Definitions

  • the invention relates to a method and a device for reorganizing data in a non-volatile memory of a memory system, in particular in control units in motor vehicles.
  • Control units for the automotive sector are usually used for controlling and monitoring functions of the vehicle engine and / or other electrical systems in the motor vehicle.
  • a controller is preferably provided with a non-volatile memory to accommodate various operating variables and the like. to store even when power supply voltage is not applied, so that the control unit, for. can also rely on past data.
  • flash memories are used as nonvolatile memories for automotive ECUs. Due to degradation effects of the flash memory cells, the lifetime of a flash memory cell is limited to a certain number of write cycles. The manufacturer usually provides for a flash memory a certain number of write cycles for a certain total operating time of the motor vehicle during which the relevant control unit is operated.
  • the size of the memory in the control unit is increased and operating variables to be stored therein are sequentially written into the memory area. If a memory area of the memory, i. a segment filled with operation size data, the most recent operation size data of each type is copied to another segment in a reorganization process, and the completely written segment is deleted in a deletion operation immediately or before rewriting.
  • the most recent operating variable data of the completely or almost completely described segment is searched for and written byte-wise into the corresponding further segment, which is to be described in sequence with operating-volume data.
  • operating volume data from a working memory of the control device, ie a read / write memory, the data usually volatile stored, such as a RAM, when reorganizing the data, ie, for example, rearranging the data, written in the other segment, which data be written from the main memory also byte-wise in the other segment.
  • EP 1 031 929 A1 For example, a method for reorganizing operating volume data into a nonvolatile memory segment is described.
  • the respective most recent operating-size data are read from a segment of the non-volatile memory and stored in an address area of a firmware memory. If the non-volatile memory segment is out of memory, the operating-volume data stored in the firmware memory may be written to an unused nonvolatile memory segment.
  • the publication DE 19506957 A1 discloses a method and apparatus for updating and loading user programs in a program memory of a microprocessor system.
  • the publication WO 02/50844 A discloses a device for securing data areas of a memory in an electronic device, wherein data is copied between an EPROM and a RAM.
  • Fig. 1 is a control unit 1, for example, shown for use in the automotive sector.
  • the control unit 1 has a control unit 2.
  • the control unit 2 performs procedures and calculations to perform control of vehicle systems such as engine control, control of other electrical systems in the motor vehicle and the like.
  • the control unit 2 is coupled to a program and fixed data memory 3, are stored in the program instructions for performing the executed by the control unit 2 control method and fixed fixed data, such as constants, maps and the like.
  • the fixed data memory 3 is preferably designed as a nonvolatile memory which can not be written by the control unit 2 during normal operation, such as a ROM, flash memory, EPROM, EEPROM and the like.
  • control unit 2 is coupled to a random access memory 4 in the form of a read / write memory, such as e.g. a RAM, i. an optionally writable memory.
  • a read / write memory such as e.g. a RAM, i. an optionally writable memory.
  • the working memory 4 is required for the execution of the instructions specified in the read-only memory 3 instructions.
  • the working memory 4 may be provided as a volatile memory, such as e.g. in the form of SRAM (static RAM) or DRAM (dynamic memory).
  • control unit 2 In the control of systems by the control unit 2, it is often necessary to acquire, detect and update information about the systems to be controlled, environmental conditions and the like as operation amount data and to keep the most recent operation size data permanently available, even over a period of time during which the control unit 1 is switched off for a certain time, ie not supplied with a supply voltage. Data stored in the random access memory 4 is lost during such a period of time.
  • the non-volatile memory 5 has for this purpose two or more than two segments 6, i. physical separate memory sections, which are alternately described with operating-size data.
  • operation amount data to be stored is sequentially, i. in turn, written in the address area of a first segment 6. If this first segment 6 has been completely or almost completely described, so that further operating quantity data can no longer be stored completely therein, the following operating quantity data to be stored are written in a second of the segments 6.
  • the most recent operating variable data from the first segment 6 and / or from the working memory 4 are determined and written to the beginning of the address range of the second segment 6 of the non-volatile memory 5 before the first segment 6 is cleared or released for overwriting.
  • the most recent operating size data of each type is determined and written in advance into the second segment.
  • the operation size data may be written into the second segment 6 in a random order or in a non-predetermined order in a disordered manner.
  • a nonvolatile memory 5, as provided in control units 1, is able to carry out a so-called block writing process in a further operating mode in which more than one byte is simultaneously written from the working memory 4 into an address area of the non-volatile memory 5 can be.
  • the prerequisite for this is a specific constellation of the data in the working memory 4, in particular the corresponding data must be present consecutively as a data block. It is now envisaged to use this mode of operation and first to assemble the operating volume data initially to be written into a new segment 6 of the non-volatile memory in the working memory 4 in a data block and then to integrate the assembled data block into the segment 6 of the operating unit non-volatile memory 5 to write.
  • the relevant operating volume data may be completely read from the filled segment 6 of the nonvolatile memory 5 and written to the RAM in a contiguous address space.
  • the types of the operation amount data in the representation of Fig. 2 referred to as Type 1, Type 2 and Type 3.
  • the date having the most recent value is selected from the filled segment 6 of the nonvolatile memory 5 and copied into the work memory 4.
  • the operating quantity data to be stored in the second segment 6 can be stored in the second segment 6 Type can also be copied from another position in the memory 4, for example, from a different memory location of the memory 4 or externally. In this way, a data block of operating-size data from the first segment 6 and / or memory locations of the main memory 4 can be copied into a previously selected address area of the main memory 4 in order subsequently to write the corresponding data block in a block writing process into the second segment 6.
  • the type 1 operation size data from the completely written segment of the nonvolatile memory 5 and the operation quantity data types 2 and 3 are copied from the random access memory 4 into the address area (bold outlined) which is written to the nonvolatile segment to be rewritten with the block write process Memory 5 should be copied.
  • the operation amount data is written into the respective segment 6 in a specific address area and a corresponding reference information in a reference section to another address area of the segment of the non-volatile memory 5.
  • the reference information then gives the type and position, i. the address at which the operation amount data of the particular type referenced by the reference information is located.
  • the operation amount data is arranged in the work memory 4 so that the operation amount data can be transferred as a data block directly to the newly written segment 6 of the nonvolatile memory 5.
  • the prerequisites for this are that the data is consistent at certain times and that the representation of the operating quantity data in the working memory 4 corresponds to the representation of the operating quantity data in the nonvolatile memory 5. This would not be the case, for example, if data in the nonvolatile memory is e.g. encrypted would be stored.
  • the method of the present invention is particularly advantageous when the non-volatile memory is a small data unit (eg, one byte) at the same speed writes like a large contiguous block of data (several bytes), so that by using the block write process, the number of cycles for writing the operating-size data when reorganizing the operating-volume data to one segment can be significantly reduced.
  • This increase in speed can lead to a simplification of the software and an increase in the reliability of the controller.
  • the operating volume data as a whole can be used directly from the main memory 4, so that the data block to be written does not have to be searched for via slow accesses to the completely described segment 6 of the nonvolatile memory 5. This is important in the field of embedded systems, because a voltage dip is expected at any time. A voltage drop leads to data loss in the working memory 4, if the data is only in the working memory 4.
  • the method for reorganizing operating quantity data is preferably executed by the control unit 2.
  • the method may be implemented therein by a hardware implementation, an implementation by means of software corresponding to a computer program, and an implementation by hardware and software.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Description

    Technisches Gebiet
  • Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Umorganisieren von Daten in einem nicht-flüchtigen Speicher eines Speichersystems, insbesondere in Steuergeräten in Kraftfahrzeugen.
  • Stand der Technik
  • Steuergeräte für den Automotiv-Bereich werden üblicherweise zur Steuerung und Überwachung von Funktionen des Fahrzeugmotors und/oder weiterer elektrischer Systeme im Kraftfahrzeug eingesetzt. Ein derartiges Steuergerät ist vorzugsweise mit einem nicht-flüchtigen Speicher ausgestattet, um verschiedene Betriebsgrößen und dgl. permanent, d.h. auch bei nicht anliegender Versorgungsspannung zu speichern, so dass das Steuergerät z.B. auch auf zurückliegende Daten zurückgreifen kann.
  • Die Anforderung an die im Automotiv-Bereich eingesetzten Komponenten sind jedoch sehr hoch, und es wird im allgemeinen eine sehr hohe Zuverlässigkeit während der gesamten Lebensdauer des Kraftfahrzeugs gefordert. An die in Automotiv-Steuergeräten eingesetzten nichtflüchtigen Speicher werden daher ebenfalls hohe Anforderungen gestellt. Üblicherweise werden als nichtflüchtige Speicher für Automotiv-Steuergeräte Flash-Speicher eingesetzt. Aufgrund von Degradationseffekten der Flash-Speicherzellen ist die Lebensdauer einer Flash-Speicherzelle auf eine bestimmte Anzahl von Schreibzyklen beschränkt. Herstellerseitig wird üblicherweise für einen Flash-Speicher eine bestimmte Anzahl von Schreibzyklen für eine bestimmte Gesamt-Betriebsdauer des Kraftfahrzeugs, während der das betreffende Steuergerät betrieben wird, gewährleistet.
  • Um die Häuflgkeit, mit der in einem Steuergerät eine bestimmte Speicherzelle des nicht-flüchtigen Speichers überschrieben wird, zu reduzieren, wird die Größe des Speichers im Steuergerät erhöht und darin abzuspeichernde Betriebsgrößen in den Speicherbereich aufeinander folgend geschrieben. Ist ein Speicherbereich des Speichers , d.h. ein Segment, mit Betriebsgrößendaten gefüllt, so werden die jeweils aktuellsten Betriebsgrößendaten jeden Typs in einem Umorganisationsprozess in ein weiteres Segment kopiert und das vollständig beschriebene Segment in einer Löschoperation sofort oder vor einem erneuten Beschreiben gelöscht.
  • Bislang werden bei der Umorganisation der Daten die jeweils aktuellsten Betriebsgrößendaten des vollständig bzw. nahezu vollständig beschriebenen Segmentes gesucht und Byte-weise in das entsprechend weitere Segment, das in Folge mit Betriebsgrößendaten beschrieben werden soll, geschrieben. Weiterhin können Betriebsgrößendaten aus einem Arbeitsspeicher des Steuergeräts, d.h. einem Schreib-/Lesespeicher, der Daten in der Regel flüchtig speichert, wie z.B. einem RAM, beim Umorganisieren der Daten, d.h. z.B. einem Umordnen der Daten, in das weitere Segment geschrieben werden, wobei diese Daten aus dem Arbeitsspeicher ebenfalls Byte-weise in das weitere Segment geschrieben werden. Dadurch, dass für das Schreiben jedes Bytes eine einzelne Zugriffsoperation auf den nicht-flüchtigen Speicher benötigt, ist die Umorganisation der Daten in einem derartigen Speichersystem aufwendig.
  • In der Druckschrift EP 1 031 929 A1 ist ein Verfahren zum Umorganisieren von Betriebsgrößendaten in ein Segment des nicht flüchtigen Speichers beschrieben. Dabei werden bei einer Initialisierung des Systems die jeweils aktuellsten Betriebsgrößendaten aus einem Segment des nicht-flüchtigen Speichers ausgelesen und in einen Adressbereich eines Firmware-Speichers gespeichert. Wenn das Segment des nicht flüchtigen Speichers keinen Speicherplatz mehr aufweist, können die Betriebsgrößendaten, die in dem Firmware-Speicher gespeichert sind, in ein nicht verwendetes Segment des nicht flüchtigen Speichers geschrieben werden.
  • Die Druckschrift US 2006/155917 A1 offenbart ein Verfahren zum Steuern von Schreib und Leseoperationen in einer Speichervorrichtung mit Speicherblöcken, die aufgrund von wiederholten Löschungsverfahren einer Abnutzung unterliegen. Dabei wird versucht, die Löschungsvorgänge in dem Speicher möglichst gleich zu verteilen.
  • Die Druckschrift DE 19506957 A1 offenbart ein Verfahren und eine Anordnung zum Aktualisieren und Laden von Anwenderprogrammen in einem Programmspeicher eines Mikroprozessorsystems.
  • Die Druckschrift WO 02/50844 A offenbart eine Vorrichtung zum Sichern von Datenbereichen eines Speichers in einem elektronischen Baustein, wobei Daten zwischen einem EPROM- und einem RAM-Speicher kopiert werden.
  • Offenbarung der Erfindung
  • Es ist Aufgabe der vorliegenden Erfindung, ein Verfahren und eine Vorrichtung zur Verfügung zu stellen, womit das Umorganisieren der Daten in einem Speichersystem für ein Steuergerät effizienter durchgeführt werden kann.
  • Diese Aufgabe wird durch das Verfahren gemäß Anspruch 1 sowie durch das Steuergerät gemäß dem nebengeordneten Anspruch 6 gelöst.
  • Weitere vorteilhafte Ausgestaltungen der Erfindung sind in den abhängigen Ansprüchen angegeben.
  • Kurzbeschreibung der Zeichnungen
  • Bevorzugte Ausführungsformen werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
  • Fig. 1
    eine schematische Darstellung eines Steuergeräts gemäß einer Ausführungsform der Erfindung; und
    Fig. 2
    eine schematische Darstellung des Verfahrens zum Umorganisieren von Daten gemäß einer weiteren Ausführungsform der Erfindung.
    Beschreibung der bevorzugten Ausführungsformen
  • In Fig. 1 ist ein Steuergerät 1 z.B. für den Einsatz im Automotiv-Bereich dargestellt. Das Steuergerät 1 weist eine Steuereinheit 2 auf. Die Steuereinheit 2 führt Verfahren und Berechnungen durch, um eine Steuerung von Fahrzeugsystemen, wie z.B. die Motorsteuerung, die Steuerung weiterer elektrischer Systeme im Kraftfahrzeug und dgl. durchzuführen. Die Steuereinheit 2 ist mit einem Programm- und Festdatenspeicher 3 gekoppelt, in dem Programmbefehle zum Durchführen des von der Steuereinheit 2 ausgeführten Steuerverfahrens sowie unveränderliche Festdaten, wie z.B. Konstanten, Kennfelder und dergleichen gespeichert sind. Der Festdatenspeicher 3 ist vorzugsweise als nichtflüchtiger, durch die Steuereinheit 2 im Normalbetrieb nicht beschreibbarer Speicher, wie z.B. ein ROM, Flash-Speicher, EPROM, EEPROM und dgl. ausgeführt.
  • Weiterhin ist die Steuereinheit 2 mit einem Arbeitsspeicher 4 in Form eines Schreib-/Lesespeichers gekoppelt, wie z.B. einem RAM, d.h. einem wahlweise beschreibbaren Speicher. Der Arbeitsspeicher 4 wird für die Ausführung der in dem Festwertspeicher 3 vorgegebenen Instruktionen benötigt. Der Arbeitsspeicher 4 kann als flüchtiger Speicher vorgesehen sein, wie z.B. in Form eines SRAM (Statisches RAM) oder DRAM (Dynamischer Speicher).
  • Bei der Steuerung von Systemen durch die Steuereinheit 2 ist es häufig notwendig, Informationen über die zu steuernden Systeme, über Umfeldbedingungen und dergleichen als Betriebsgrößendaten zu erfassen, zu ermitteln und zu aktualisieren und die jeweils aktuellsten Betriebsgrößendaten permanent verfügbar zu halten, auch über einen Zeitraum hinweg, während dem das Steuergerät 1 für eine bestimmte Zeit ausgeschaltet ist, d.h. nicht mit einer Versorgungsspannung versorgt wird. Daten, die in dem Arbeitsspeicher 4 gespeichert sind, gehen während einer solchen Zeitdauer verloren.
  • Zum Speichern derartiger Betriebsgrößendaten ist daher ein von der Steuereinheit 2 beschreibbarer nicht-flüchtiger Speicher 5, z.B. in Form eines Flash-Speichers, vorgesehen. Der nicht-flüchtige Speicher 5 weist dazu zwei oder mehr als zwei Segmente 6, d.h. physikalische voneinander getrennte Speicherabschnitte, auf, die wechselweise mit Betriebsgrößendaten beschrieben werden. Im Detail werden zu speichernde Betriebsgrößendaten aufeinander folgend, d.h. der Reihe nach, in den Adressbereich eines ersten Segments 6 geschrieben. Wenn dieses erste Segment 6 vollständig bzw. nahezu vollständig beschrieben worden ist, so dass weitere Betriebsgrößendaten nicht mehr vollständig darin gespeichert werden können, werden die nachfolgenden zu speichernden Betriebsgrößendaten in einem zweiten der Segmente 6 geschrieben.
  • Damit beim Wechsel der Segmente 6 des nicht-flüchtigen Speichers 5 zu jedem Zeitpunkt aktuelle Betriebsgrößendaten gespeichert bleiben, werden die jeweils aktuellsten Betriebsgrößendaten aus dem ersten Segment 6 und/oder aus dem Arbeitsspeicher 4 ermittelt und an den Beginn des Adressbereichs des zweiten Segmentes 6 des nicht-flüchtigen Speichers 5 geschrieben, bevor das erste Segment 6 gelöscht oder zum Überschreiben freigegeben wird. Dazu werden die aktuellsten Betriebsgrößendaten jeden Typs (entsprechend des verkörpernden Parameters) ermittelt und vorab in das zweite Segment geschrieben. Die Betriebsgrößendaten können in einer bestimmten Reihenfolge oder in nicht zuvor bestimmter Reihenfolge ungeordnet in das betreffende zweite Segment 6 hineingeschrieben werden. Ein solcher Schreibvorgang erfolgt bislang Byte-weise oder Wort-weise (oder in anderen Datenblöcken mit geringer Bitanzahl =< 32) und erfordert eine größere Anzahl von Schreibzugriffen auf den nichtflüchtigen Speicher 5. Dies stellt eine erhöhte Verarbeitungslast für die Steuereinheit 2 dar.
  • Häufig ist ein nichtflüchtiger Speicher 5, wie er in Steuergeräten 1 vorgesehen ist, in der Lage, in einer weiteren Betriebsart einen so genannten Blockschreibprozess durchzuführen, bei dem mehr als ein Byte gleichzeitig aus dem Arbeitsspeicher 4 in einen Adressbereich des nicht-flüchtigen Speichers 5 geschrieben werden kann. Voraussetzung hierfür ist eine bestimmte Konstellation der Daten in dem Arbeitsspeicher 4, insbesondere müssen die entsprechenden Daten aufeinander folgend als Datenblock vorliegen. Es ist nun vorgesehen, diese Betriebsart zu nutzen und die anfänglich in ein neues Segment 6 des nicht-flüchtigen Speicher zu schreibenden Betriebsgrößendaten zunächst in dem Arbeitsspeicher 4 in einem Datenblock zusammenzustellen und anschließend den zusammengestellten Datenblock in das zur nachfolgenden Speicherung von Betriebsgrößendaten vorgesehene Segment 6 des nichtflüchtigen Speichers 5 zu schreiben.
  • Im Idealfall können die relevanten Betriebsgrößendaten vollständig aus dem gefüllten Segment 6 des nichtflüchtigen Speichers 5 ausgelesen und in das RAM in einen zusammenhängenden Adressbereich geschrieben werden. Entsprechend der verschiedenen als Betriebsgrößendaten zu speichernden Parameter werden die Typen der Betriebsgrößendaten in der Darstellung der Fig. 2 als Typ 1, Typ 2 und Typ 3 bezeichnet. Gemäß einer Ausführungsform wird für jeden Typ von Betriebsgrößendaten das Datum mit dem aktuellsten Wert aus dem gefüllten Segment 6 des nichtflüchtigen Speichers 5 ausgewählt und in den Arbeitsspeicher 4 kopiert. Wird für ein Betriebsgrößendatum eines bestimmten Typs festgestellt, dass der in dem gefüllten Segment 6 gespeicherten Wert nicht dem aktuellsten Wert entspricht bzw. dieser sich nicht in einem zu den übrigen Betriebsgrößendaten konsistenten Zustand befindet, kann das in das zweite Segment 6 zu speichernde Betriebsgrößendatum des entsprechenden Typs auch von einer anderen Position in den Arbeitsspeicher 4 kopiert werden, z.B. von einer anderen Speicherposition des Arbeitsspeichers 4 bzw. von extern. Auf diese Weise kann ein Datenblock aus Betriebsgrößendaten aus dem ersten Segment 6 und/oder aus Speicherpositionen des Arbeitsspeichers 4 in einen zuvor ausgewählten Adressbereich des Arbeitsspeichers 4 kopiert werden, um anschließend den entsprechenden Datenblock in einem Blockschreibeprozess in das zweite Segment 6 zu schreiben.
  • Im gezeigten Ausführungsbeispiel der Fig. 2 werden die Betriebsgrößendaten des Typs 1 aus dem vollständig beschriebenen Segment des nicht-flüchtigen Speichers 5 und die Betriebsgrößendaten der Typen 2 und 3 aus dem Arbeitsspeicher 4 in den Adressbereich (fett umrandet) kopiert, der mit dem Blockschreibprozess in das neu zu beschreibende Segment des nichtflüchtigen Speichers 5 kopiert werden soll.
  • Bei einer weiteren Ausführungsform werden in o. a. Weise die Betriebsgrößendaten in das betreffende Segment 6 in einen bestimmten Adressbereich und eine entsprechende Verweisungsinformation in einem Verweisungsabschnitt an einen weiteren Adressbereich des Segments des nichtflüchtigen Speichers 5 geschrieben. Die Verweisungsinformation gibt dann entsprechend den Typ und die Position, d.h. die Adresse, an, an dem sich die Betriebsgrößendaten des bestimmten durch die Verweisungsinformation referenzierten Typs befinden. Beim Umorganisieren der Betriebsgrößendaten beim Wechseln von dem ersten auf das zweite Segment 6 des nicht-flüchtigen Speichers 5 ist es dann notwendig, in das neu zu beschreibende Segment 6 des nichtflüchtigen Speichers 5 sowohl den Datenblock der zusammengestellten Betriebsgrößendaten als auch einen weiteren Datenblock mit den dazugehörigen Verweisungsinformationen zu schreiben.
  • Unter Umständen ist es nicht erforderlich, die Daten im Arbeitsspeicher 4 in einem separaten Bereich als Datenblock aufzubereiten. Es ist möglich, durch die Operation der Steuereinheit 2, dass die Betriebsgrößendaten im Arbeitsspeicher 4 so angeordnet sind, dass die Betriebsgrößendaten als Datenblock direkt auf das neu zu beschreibende Segment 6 des nichtflüchtigen Speichers 5 übertragen werden können. Die Voraussetzungen hierfür sind, dass die Daten zu bestimmten Zeitpunkten konsistent sind und dass die Repräsentation der Betriebsgrößendaten im Arbeitspeicher 4 der Repräsentation der Betriebsgrößendaten im nichtflüchtigen Speicher 5 entspricht. Dies wäre beispielsweise nicht der Fall, wenn Daten in dem nichtflüchtigen Speicher z.B. verschlüsselt abgelegt würden.
  • Das Verfahren der vorliegenden Erfindung ist insbesondere vorteilhaft, wenn der nicht-flüchtige Speicher eine kleine Dateneinheit (z.B. ein Byte) mit der gleichen Geschwindigkeit schreibt wie einen großen zusammenhängenden Datenblock (mehrere Bytes), sodass durch die Verwendung des Blockschreibprozesses die Anzahl der Zyklen zum Schreiben der Betriebsgrößendaten beim Umorganisieren der Betriebsgrößendaten auf ein Segment deutlich reduziert werden kann. Dieser Geschwindigkeitszuwachs kann zu einer Vereinfachung der Software und einer Erhöhung der Zuverlässigkeit des Steuergeräts führen.
  • Besonders vorteilhaft ist es, wenn die Betriebsgrößendaten insgesamt aus dem Arbeitsspeicher 4 direkt verwendet werden können, so dass der zu schreibende Datenblock nicht über langsame Zugriffe auf das vollständig beschriebene Segment 6 des nichtflüchtigen Speichers 5 gesucht werden muss. Dies ist im Bereich eingebetteter Systeme wichtig, da zu jedem Zeitpunkt mit einem Spannungseinbruch zu rechnen ist. Ein Spannungseinbruch führt zu Datenverlust im Arbeitsspeicher 4, falls sich die Daten nur im Arbeitsspeicher 4 befinden.
  • Das Verfahren zum Umorganisieren von Betriebsgrößendaten wird vorzugsweise durch die Steuereinheit 2 ausgeführt. Das Verfahren kann darin durch eine Hardware-Implementierung, einer Implementierung mit Hilfe einer Software, die einem Computerprogramm entspricht, sowie durch eine Implementierung durch Hardware und Software realisiert werden.

Claims (9)

  1. Verfahren zum Umorganisieren von Betriebsgrößendaten zwischen Segmenten eines nicht-flüchtigen Speichers (5), wobei die Betriebsgrößendaten verschiedenen Typen von Betriebsgrößendaten umfassen, mit folgenden Schritten:
    - Aufeinander folgendes Schreiben der zu schreibenden Betriebsgrößendaten in einen Adressbereich eines ersten Segments (6), wobei das Schreiben gemäß einer Betriebsart in mehreren Schreibzugriffen byte- oder wortweise erfolgt;
    - wenn kein Speicherplatz zum Schreiben von zu schreibenden Betriebsgrößendaten
    - in dem ersten Segment (6) vorhanden ist, Durchführen folgender Schritte:
    - Erzeugen eines zusammenhängenden Datenblockes an einem Adressbereich eines von dem nicht-flüchtigen Speicher separaten Arbeitsspeichers (4) aus den aktuellsten Betriebsgrößendaten jeden Typs aus dem ersten Segment (6) des nicht-flüchtigen Speichers (5) und/oder aus dem Arbeitsspeicher;
    - Erzeugen eines weiteren zusammenhängenden Datenblocks an einem weiteren Adressbereich des Arbeitsspeichers (4), wobei der weitere Datenblock Verweisungsdaten aufweist, die für jeden Typ von Betriebsgrößendaten auf die in das erste oder zweite Segment (6) zu schreibende Betriebsgrößendaten verweisen,
    - Kopieren des Datenblockes in einem Blockschreibeprozess in einen vordefinierten Adressbereich eines zweiten Segmentes (6) des nicht-flüchtigen Speichers (5), wobei der Blockschreibeprozess einer weiteren Betriebsart entspricht, bei der die Betriebsgrößendaten des zusammenhängenden Datenblockes im Arbeitsspeicher (4) gleichzeitig in den vordefinierten Adressbereich geschrieben werden, wobei der weitere Datenblock in einem weiteren Blockschreibeprozess in einen vordefinierten weiteren Adressbereich des ersten bzw. zweiten Segmentes (6) des nicht-flüchtigen Speichers (5) kopiert wird.
  2. Verfahren nach Anspruch 1, wobei beim Erzeugen des Datenblockes eine Konsistenzprüfung durchgeführt wird, um verschiedene Betriebsgrößendaten abhängig von dem Ergebnis der Konsistenzprüfung aus dem ersten Segment (6) des nicht-flüchtigen Speichers (5) und dem Arbeitsspeicher (4) so zusammenzustellen, dass die Zusammenstellung der Betriebsgrößendaten konsistent ist.
  3. Verfahren nach Anspruch 1 oder 2, wobei nach dem Blockschreibeprozess das erste Segment (6) des nicht-flüchtigen Speichers (5) gelöscht oder zum Überschreiben freigegeben wird.
  4. Verfahren nach Anspruch 1 oder 2, wobei vor dem Blockschreibeprozess das zweite Segment (6) des nicht-flüchtigen Speichers (5) gelöscht oder zum Überschreiben freigegeben wird.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei die Betriebsgrößendaten aufeinander folgend und sich aneinander anschließend in das zu beschreibende Segment (6) des nicht-flüchtigen Speichers (5) geschrieben werden.
  6. Steuergerät (1) zum Umorganisieren von Betriebsgrößendaten zwischen Segmenten in einem nicht-flüchtigen Speicher (5), insbesondere für automotive Anwendungen, wobei die Betriebsgrößendaten verschiedenen Typen von Betriebsgrößendaten umfassen, wobei das Steuergerät (1)
    - eine Steuereinheit (2);
    - einen nicht-flüchtigen Speicher (5) zum nicht-flüchtigen Speichern von Betriebsgrößendaten;
    - einen Arbeitsspeicher zum Beschreiben und Auslesen von Daten durch die Steuereinheit (2)
    umfasst, dadurch gekennzeichnet, dass die Steuereinheit (2) in der Art ausgebildet ist, um die zu schreibenden Betriebsgrößendaten in einen Adressbereich eines ersten Segments (6) aufeinander folgend zu schreiben, wobei das Schreiben gemäß einer Betriebsart in mehreren Schreibzugriffen byte- oder wortweise erfolgt; und um, wenn kein Speicherplatz zum Schreiben von zu schreibenden Betriebsgrößendaten in dem ersten Segment (6) vorhanden ist, einen zusammenhängenden Datenblock an einem Adressbereich eines Arbeitsspeichers (4) aus den aktuellsten Betriebsgrößendaten jeden Typs aus einem ersten Segment (6) des nicht-flüchtigen Speichers (5) und/oder aus dem Arbeitsspeicher (4) zu erzeugen und um einen weiteren zusammenhängenden Datenblock an einem weiteren Adressbereich des Arbeitsspeichers (4) zu erzeugen, wobei der weitere Datenblock Verweisungsdaten aufweist, die für jeden Typ von Betriebsgrößendaten auf die in das erste oder zweite Segment (6) zu schreibende Betriebsgrößendaten verweisen, den Datenblock in einem Blockschreibeprozess in einen vordefinierten Adressbereich des zweiten Segmentes (6) des nicht-flüchtigen Speichers (5) zu kopieren, wobei der Blockschreibeprozess einer weiteren Betriebsart entspricht, bei der die Betriebsgrößendaten des zusammenhängenden Datenblockes im Arbeitsspeicher (4) gleichzeitig in den vordefinierten Adressbereich geschrieben werden, wobei der weitere Datenblock in einem weiteren Blockschreibeprozess in einen vordefinierten weiteren Adressbereich des ersten bzw. zweiten Segmentes (6) des nicht-flüchtigen Speichers (5) kopiert wird.
  7. Steuergerät (1) nach Anspruch 6 wobei der nicht-flüchtige Speicher (5) einen Flash-Speicher umfasst.
  8. Steuergerät nach Anspruch 6 oder 7, wobei die Steuereinheit (2) ausgebildet ist, eine Konsistenzprüfung durchzuführen, um beim Erzeugen des zusammenhängenden Datenblockes verschiedene Betriebsgrößendaten abhängig von dem Ergebnis der Konsistenzprüfung aus dem ersten Segment (6) des nicht-flüchtigen Speichers (5) und dem Arbeitsspeicher (4) so zusammenzustellen, dass die Zusammenstellung der Betriebsgrößendaten konsistent ist.
  9. Computerprogramm mit einem maschinenlesbaren Code, das, wenn es auf einer Steuereinheit ausgeführt wird, ein Verfahren gemäß einem der Ansprüche 1 bis 5 ausführt.
EP08104224A 2007-06-08 2008-06-02 Verfahren und Vorrichtung zum Umorganisieren von Daten in einem Speichersystem, insbesondere für Steuergeräte in Kraftfahrzeugen Active EP2000914B1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102007026693A DE102007026693A1 (de) 2007-06-08 2007-06-08 Verfahren und Vorrichtung zum Umorganisieren von Daten in einem Speichersystem, insbesondere für Steuergeräte in Kraftfahrzeugen

Publications (2)

Publication Number Publication Date
EP2000914A1 EP2000914A1 (de) 2008-12-10
EP2000914B1 true EP2000914B1 (de) 2012-04-04

Family

ID=39743130

Family Applications (1)

Application Number Title Priority Date Filing Date
EP08104224A Active EP2000914B1 (de) 2007-06-08 2008-06-02 Verfahren und Vorrichtung zum Umorganisieren von Daten in einem Speichersystem, insbesondere für Steuergeräte in Kraftfahrzeugen

Country Status (4)

Country Link
US (1) US8010737B2 (de)
EP (1) EP2000914B1 (de)
AT (1) ATE552556T1 (de)
DE (1) DE102007026693A1 (de)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03269580A (ja) * 1990-03-20 1991-12-02 Yamaha Corp 電子楽器
US5680573A (en) * 1994-07-12 1997-10-21 Sybase, Inc. Method of buffering data objects in a database
DE19506957C2 (de) 1995-02-28 1999-01-07 Siemens Ag Verfahren zum Aktualisieren und Laden von Anwenderprogrammen in einem Programmspeicher eines Mikroprozessorsystems
US6104638A (en) 1999-02-26 2000-08-15 Hewlett-Packard Company Use of erasable non-volatile memory for storage of changing information
DE19951716A1 (de) * 1999-10-27 2001-05-03 Heidenhain Gmbh Dr Johannes Verfahren zur dynamischen Speicherverwaltung
SE9903890L (sv) 1999-10-28 2001-02-12 Appeal Virtual Machines Ab Förfarande för att effektivisera en databehandlingsprocess vid användning av en virtuell maskin och där ett skräpsamlingsförfarande används
JP3726663B2 (ja) 2000-09-07 2005-12-14 日産自動車株式会社 電子制御装置の制御データ記憶装置
FR2818426A1 (fr) 2000-12-18 2002-06-21 Schlumberger Systems & Service Dispositif et procede de securisation de zones de donnees dans une carte a puce
US7383284B2 (en) * 2002-04-30 2008-06-03 Sap Aktiengesellschaft Inventory management
US7754818B2 (en) 2005-01-11 2010-07-13 Brewer Science Inc. Gap fill materials and bottom anti-reflective coatings comprising hyperbranched polymers
US7363421B2 (en) * 2005-01-13 2008-04-22 Stmicroelectronics S.R.L. Optimizing write/erase operations in memory devices
US20070241882A1 (en) * 2006-04-18 2007-10-18 Sapias, Inc. User Interface for Real-Time Management of Vehicles

Also Published As

Publication number Publication date
EP2000914A1 (de) 2008-12-10
ATE552556T1 (de) 2012-04-15
DE102007026693A1 (de) 2008-12-11
US20080307153A1 (en) 2008-12-11
US8010737B2 (en) 2011-08-30

Similar Documents

Publication Publication Date Title
DE19934191B4 (de) Elektronische Steuerungseinheit und Steuerungsverfahren zum Speichern eines Neuschreibungszählwerts eines nichtflüchtigen Speichers
EP0997347A2 (de) Verfahren und Einrichtung zur Programmierung eines Steuergerätes, insbesondere eines Kraftfahrzeuges
DE19931184A1 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
EP2608037B1 (de) Verfahren zum Verwalten von Daten in einem Flash-Speicher, Fahrerassistenzeinrichtung und Kraftfahrzeug
WO2017125181A1 (de) Verfahren zum aktualisieren von software eines steuergerätes, vorzugsweise für ein kraftfahrzeug
EP2000914B1 (de) Verfahren und Vorrichtung zum Umorganisieren von Daten in einem Speichersystem, insbesondere für Steuergeräte in Kraftfahrzeugen
DE10234063B4 (de) Verfahren zum variantenspezifischen Programmieren eines Programm- und Datenspeichers eines Steuergeräts, insbesondere eines Steuergeräts eines Kraftfahrzeugs, sowie Vorrichtung zur Durchführung des Verfahrens
EP2003566B1 (de) Verfahren und Steuergerät zum Betreiben eines nichtflüchtigen Speichers, insbesondere zum Einsatz in Kraftfahrzeugen
DE10252059B3 (de) Verfahren zum Betreiben einer Speicheranordnung
DE10322723B3 (de) Vorrichtung und Verfahren zum Behandeln eines Zustands eines Speichers
DE102007059355A1 (de) Verfahren zum Betreiben eines Steuergerätes und Steuergerät
DE19963475A1 (de) Verfahren und Vorrichtung zur Steuerung von Betriebsabläufen in einem Fahrzeug sowie zur Bereitstellung von Daten diesbezüglich
EP1397736B1 (de) Verfahren zum betreiben eines steuergeräts
WO2004057465A2 (de) Verfahren und vorrichtung zur änderung von software in einem steuergerät sowie entsprechendes steuergerät
EP2017736B1 (de) Verfahren und Steuergerät zum Betreiben eines nichtflüchtigen Speichers, insbesondere zum Einsatz in Kraftfahrzeugen
DE102021002079B3 (de) Verfahren zum effizienten Ablegen von Daten
DE102013003593A1 (de) Verfahren zum Durchführen eines Löschungsvorgangs in einem beschreibbaren Speicherelement
DE10128752A1 (de) Verfahren zur Ablage von Daten in einen Speicherbaustein
WO2002099650A2 (de) Verfahren zur verwaltung eines speichers einer chipkarte
WO2001009902A1 (de) Verfahren und schaltungsanordnung zum korrigieren von speicherfehlern
WO2007110306A2 (de) Verfahren und recheneinheit zum betreiben einer speichereinrichtung
EP4419993A1 (de) Ändern des speicherinhalts eines hauptspeichers eines mikrocontrollers ohne separate speicherverwaltungseinheit
EP1224509A1 (de) Verfahren zum initialisieren oder konfigurieren einer elektrischen schaltung
DE10317465A1 (de) Aktualisierung eines Speicherbausteins
DE102006013764A1 (de) Verfahren zum Betreiben einer Speichereinrichtung

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

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA MK RS

17P Request for examination filed

Effective date: 20090610

17Q First examination report despatched

Effective date: 20090713

AKX Designation fees paid

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 552556

Country of ref document: AT

Kind code of ref document: T

Effective date: 20120415

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

Free format text: LANGUAGE OF EP DOCUMENT: GERMAN

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 502008006853

Country of ref document: DE

Effective date: 20120531

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20120404

LTIE Lt: invalidation of european patent or patent extension

Effective date: 20120404

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120804

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120704

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120705

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120806

BERE Be: lapsed

Owner name: ROBERT BOSCH G.M.B.H.

Effective date: 20120630

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120630

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

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

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

26N No opposition filed

Effective date: 20130107

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120602

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120630

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120630

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120630

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120715

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 502008006853

Country of ref document: DE

Effective date: 20130107

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120704

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20120404

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20120602

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20080602

REG Reference to a national code

Ref country code: AT

Ref legal event code: MM01

Ref document number: 552556

Country of ref document: AT

Kind code of ref document: T

Effective date: 20130602

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20130602

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 9

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: CZ

Payment date: 20160526

Year of fee payment: 9

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 10

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CZ

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20170602

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: IT

Payment date: 20190619

Year of fee payment: 12

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20190822

Year of fee payment: 12

Ref country code: GB

Payment date: 20190624

Year of fee payment: 12

REG Reference to a national code

Ref country code: DE

Ref legal event code: R119

Ref document number: 502008006853

Country of ref document: DE

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20200602

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20200602

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210101

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20200602

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20250618

Year of fee payment: 18