DE102015223834A1 - Electronic control apparatus, means of locomotion and method of using a writable storage means - Google Patents

Electronic control apparatus, means of locomotion and method of using a writable storage means Download PDF

Info

Publication number
DE102015223834A1
DE102015223834A1 DE102015223834.2A DE102015223834A DE102015223834A1 DE 102015223834 A1 DE102015223834 A1 DE 102015223834A1 DE 102015223834 A DE102015223834 A DE 102015223834A DE 102015223834 A1 DE102015223834 A1 DE 102015223834A1
Authority
DE
Germany
Prior art keywords
storage means
writes
predefined
write
write operations
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
DE102015223834.2A
Other languages
German (de)
Inventor
Jan-Peter Alten
Enrique Marcial-Simon
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.)
Bayerische Motoren Werke AG
Original Assignee
Bayerische Motoren Werke AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bayerische Motoren Werke AG filed Critical Bayerische Motoren Werke AG
Priority to DE102015223834.2A priority Critical patent/DE102015223834A1/en
Publication of DE102015223834A1 publication Critical patent/DE102015223834A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Es werden ein elektronisches Steuergerät, ein Fortbewegungsmittel sowie ein Verfahren zur Verwendung eines wiederbeschreibbaren Speichermittels vorgeschlagen. Das Verfahren umfasst die Schritte: – Ermitteln einer vordefinierten maximalen Anzahl erlaubter Schreibvorgänge bezüglich des Speichermittels, – Ermitteln einer Anzahl bereits erfolgter Schreibvorgänge bezüglich des Speichermittels, – Ermitteln, dass die Anzahl erlaubter Schreibvorgänge gleich der Anzahl erfolgter Schreibvorgänge gleicht und aufgrund dessen – Verhindern eines weiteren Schreibvorgangs bezüglich des Speichermittels.An electronic control device, a means of transportation, and a method of using a rewritable storage means are proposed. The method comprises the steps of: determining a predefined maximum number of permitted writes to the storage means, determining a number of previous writes to the storage means, determining that the number of allowed writes is equal to the number of completed writes, and thereby preventing another Write operation with respect to the storage means.

Description

Die vorliegende Erfindung betrifft ein elektronisches Steuergerät, ein Fortbewegungsmittel sowie ein Verfahren zur Verwendung eines wiederbeschreibbaren Speichermittels. Insbesondere betrifft die vorliegende Erfindung eine Vermeidung einer Überbeanspruchung des Speichermittels durch eine übermäßige Anzahl von Schreibvorgängen. The present invention relates to an electronic control apparatus, a traveling means, and a method of using a rewritable storage means. In particular, the present invention relates to avoiding overstressing of the memory means by an excessive number of write operations.

Speichermittel unterliegen mitunter einer Abnutzung durch die wiederholte Ausführung von Schreibvorgängen. Ein Beispiel hierfür sind sogenannte Flash-Speicherbausteine. Flash-Speicher können bei jedem Belegen und Speichern an Lebensdauer verlieren. Daher sollten Steuergeräte, die mit Flash-Speichern ausgestattet sind, nicht allzu oft neu beschrieben werden. Storage means may be subject to wear from the repetitive execution of writes. An example of this are so-called flash memory devices. Flash memory can lose its life each time it is backed up and saved. Therefore, controllers equipped with flash memory should not be rewritten too often.

Es ist daher eine Aufgabe der vorliegenden Erfindung, eine Lebensdauer eines wiederbeschreibbaren Speichermittels zu verbessern. Insbesondere ist es eine Aufgabe der vorliegenden Erfindung Schreibvorgänge, vorzugsweise unnötige Schreibvorgänge, zu verringern bzw. gänzlich zu verhindern. It is therefore an object of the present invention to improve a lifetime of a rewritable storage means. In particular, it is an object of the present invention to reduce or eliminate write operations, preferably unnecessary writes.

Die vorstehend genannte Aufgabe wird erfindungsgemäß durch ein Verfahren zur Verwendung eines wiederbeschreibbaren Speichermittels gelöst. Das wiederbeschreibbare Speichermittel kann bspw. einen Flash-Speicher umfassen. Das Speichermittel kann als ein Speicherbereich verstanden werden, welcher einem durch Schreibvorgänge selbstständigen Verschleiß unterliegt und kann sich dadurch von anderen Speicherbereichen (andere "Speichermittel") unterscheiden, dass die anderen Speichermittel bei denselben Speichervorgängen keinem Verschleiß ausgesetzt sind. In einem ersten Schritt wird eine vordefinierte max. Anzahl erlaubter Schreibvorgänge bezüglich des betrachteten Speichermittels ermittelt. Mit anderen Worten wird eine Referenz geschaffen bzw. ausgelesen, anhand welcher festgestellt werden kann, ob eine vordefinierte max. Anzahl von Schreibvorgängen erreicht ist. Zusätzlich wird eine Anzahl tatsächlich bereits erfolgter Schreibvorgänge bezüglich des Speichermittels ermittelt. Dies kann durch Zählen (z. B. mittels einer Inkrementier-Schaltung) erfolgter Schreibvorgänge erfolgen. Anschließend erfolgt ein Vergleich, aus welchem hervorgeht, dass die Anzahl erlaubter Schreibvorgänge gleich der Anzahl erfolgter Schreibvorgänge ist. Es wird also festgestellt, dass eine kritische Anzahl erlaubter Schreibvorgänge erreicht ist. Aufgrund dieses Ergebnisses wird automatisch ein weiterer Schreibvorgang bezüglich des Speichermittels verhindert. Hierzu kann zunächst ermittelt werden, dass eine Ressource einen Schreibvorgang bezüglich des Speichermittels auszuführen wünscht und aufgrund des vorbeschriebenen Vergleichsergebnisses der Schreibvorgang verhindert wird. Auf diese Weise kann eine Nutzung des Speichermittels im Ansprechen auf ein bisheriges kritisches Nutzungsverhalten limitiert und ein (z. B. dauerhafter) Defekt des Speichermittels verhindert werden. Auf diese Weise kann die Verfügbarkeit des Speichermittels für eine vordefinierte Dauer sichergestellt werden. Die Dauer kann bspw. die zu erwartende Lebensdauer eines technischen Gerätes, welches das Speichermittel umfasst, sein. The above object is achieved by a method for using a rewritable storage means according to the invention. The rewritable storage means may comprise, for example, a flash memory. The storage means may be understood as a storage area which undergoes self-destructive wear by writes, and may thereby differ from other storage areas (other "storage means") in that the other storage means are not subject to wear in the same storage operations. In a first step, a predefined max. Number of allowed writes with respect to the storage means under consideration. In other words, a reference is created or read out by means of which it can be determined whether a predefined max. Number of write operations is reached. In addition, a number of actual writes already made with respect to the storage means are determined. This can be done by counting (eg by means of an incrementing circuit) successful write operations. Subsequently, a comparison is made, which shows that the number of allowed writes is equal to the number of successful writes. It is thus determined that a critical number of allowed writes has been achieved. Due to this result, another write operation with respect to the storage means is automatically prevented. For this purpose, it can first be determined that a resource wishes to execute a write operation with respect to the memory means and that the write operation is prevented on the basis of the above-described comparison result. In this way, a use of the storage means in response to a previous critical usage behavior can be limited and a (eg permanent) defect of the storage means can be prevented. In this way, the availability of the storage means for a predefined duration can be ensured. The duration may, for example, be the expected service life of a technical device comprising the storage means.

Die Unteransprüche zeigen bevorzugte Weiterbildungen der Erfindung. The dependent claims show preferred developments of the invention.

Die max. Anzahl erlaubter Schreibvorgänge bezüglich des Speichermittels kann bspw. anhand einer bisherigen Gesamtanzahl von Schreibvorgängen seit Beginn einer Inbetriebnahme des Speichermittels ermittelt werden. Alternativ oder zusätzlich kann für einen Teil-Zeitraum, welcher bspw. an einen aktuellen Zeitpunkt angrenzt, die in dem Teil-Zeitraum erfolgten Schreibvorgänge aufsummiert und mit einem zugehörigen Referenzwert, d. h. einer vordefinierten max. Anzahl erlaubter Schreibvorgänge, verglichen werden. Der Teil-Zeitraum kann bspw. in Stunden, Tagen, Wochen, Monaten oder Jahren bestimmt sein. Alternativ oder zusätzlich kann ermittelt werden, ob in Anbetracht einer zu erwartenden Lebensdauer, eines tatsächlichen Betriebszeitraums, einer für die zu erwartende Lebensdauer festgelegte Anzahl möglicher Schreibvorgänge und einer Anzahl bereits erfolgter Schreibvorgänge ein weiterer Schreibvorgang (z. B. im Mittel) zu einer überdurchschnittlichen oder übermäßigen Beanspruchung des Speichermittels führen würde und im Ansprechen darauf der weitere Schreibvorgang bezüglich des Speichermittels verhindert werden. Hierbei kann insbesondere eine lineare Abhängigkeit zwischen den Anzahlen erlaubter Schreibvorgänge und den zugehörigen Lebensdauerzeiträumen des Speichermittels zugrunde gelegt werden. Ein Versatz (auch „Offset“) kann dieser Abhängigkeit überlagert werden, um überdurchschnittliche Beanspruchungsspitzen in vordefiniertem Rahmen zu erlauben. The max. Number of permitted write operations with respect to the storage means can be determined, for example, based on a previous total number of write operations since the start of a startup of the storage means. Alternatively or additionally, for a sub-period which, for example, is adjacent to a current time, the write operations carried out in the sub-period are summed up and stored with an associated reference value, i. H. a predefined max. Number of allowed writes to be compared. The partial period can be determined, for example, in hours, days, weeks, months or years. Alternatively or additionally, it may be determined whether, in view of an expected life span, an actual operating period, a number of possible write operations set for the expected lifetime, and a number of previous write operations, another write (eg, average) to above or above would cause excessive stress on the memory means and in response to the further write operation with respect to the storage means can be prevented. In this case, in particular a linear dependence between the numbers of permitted write operations and the associated service life periods of the storage means can be used. An offset (also "offset") can be superimposed on this dependence in order to allow above-average stress peaks in a predefined frame.

Sofern eine erfindungsgemäße Verhinderung eines weiteren Schreibvorgangs bezüglich des Speichermittels vorgenommen wird, kann eine Ausgabe einer Anwenderabfrage zur Bestätigung einer Aufhebung der Verhinderung des weiteren Schreibvorgangs erfolgen. Mit anderen Worten kann der Anwender zunächst aufgefordert werden, sein Einverständnis mit einer (temporären) Überbeanspruchung des Speichermittels zu erklären und erst im Ansprechen auf eine erfolgte Bestätigung der weitere Schreibvorgang durchgeführt werden. Es kann also bspw. der Anwender darüber entscheiden, ob er einem vorzeitigen Ausfall des Speichermittels in Anbetracht der vorliegenden Umstände zustimmt oder ob er bspw. absehen kann, dass eine im Mittel nicht zu beanstandende Beanspruchung des Speichermittels durch eine zukünftig weniger intensive Nutzung des Speichermittels die aktuelle Überbeanspruchung kompensieren wird. If a prevention according to the invention of a further writing operation with regard to the storage means is carried out, an output of a user query for confirming a cancellation of the prevention of the further writing process can take place. In other words, the user may first be asked to declare his agreement with a (temporary) overuse of the storage means and only be carried out in response to a confirmation of the further writing process. It may therefore, for example, the user decide whether he premature failure of the storage means in view of the circumstances at hand, or whether it can, for example, foresee that a claim of the storage means, which on average will not be objected to, will compensate for the current overuse by a less intensive future use of the storage means.

Sofern der Anwender (temporär) einer Aufhebung der Verhinderung des weiteren Schreibvorgangs zugestimmt hat, kann die Ausgabe einer weiteren Anwenderabfrage ausgesetzt werden. Dies kann für einen vordefinierten Zeitraum und/oder für eine zweite vordefinierte Anzahl von Schreibvorgängen, um welche die vordefinierte max. Anzahl erlaubter Schreibvorgänge überschritten wird, erfolgen. Insbesondere kann vorgesehen sein, dass der vordefinierte Zeitraum bzw. die vordefinierte Anzahl von Schreibvorgängen eine erneute Ausgabe der Anwenderabfrage bedingen, je nachdem, welche Bedingung als erste erfüllt wird. If the user has (temporarily) agreed to cancel the prevention of further writing, the output of another user query can be suspended. This can be done for a predefined period of time and / or for a second predefined number of writes by which the predefined max. Number of allowed writes is exceeded. In particular, it can be provided that the predefined time period or the predefined number of write processes cause a re-output of the user query, depending on which condition is fulfilled first.

Da unterschiedliche Prioritäten für Schreibvorgänge vergeben werden können, kann das Verhindern des weiteren Schreibvorgangs bzw. das Aussetzen des Verhinderns des weiteren Schreibvorgangs jeweils in Abhängigkeit der Prioritätsstufe des weiteren Schreibvorgangs erfolgen. Bspw. kann für eine niedrige Prioritätsstufe bereits zu einem früheren Zeitpunkt bzw. einer geringeren Anzahl bereits erfolgter Schreibvorgänge ein weiterer Schreibvorgang bezüglich des Speichermittels verhindert werden, während bezüglich eines Schreibvorgangs mit einer höheren Prioritätsstufe erst zu einem späteren Zeitpunkt bzw. bei einer höheren Anzahl erfolgter Schreibvorgänge die Ausführung eines weiteren Schreibvorgangs bezüglich des Speichermittels verhindert wird. Since different priorities can be assigned for write operations, the prevention of the further write operation or the suspension of the inhibition of the further write operation can each take place depending on the priority level of the further write operation. For example. For example, for a low priority level, an earlier write time or fewer writes already made can be prevented from further writing with respect to the memory means, whereas execution at a later time or at a higher number of completed writes can be prevented with respect to a write operation with a higher priority level another writing operation with respect to the storage means is prevented.

Die vordefinierte max. Anzahl erlaubter Schreibvorgänge bezüglich des Speichermittels kann bspw. in Form einer Annotation und/oder eines Labels und/oder eines (Debug-)Parameter/-Symbols im Binärprogramm und/oder eines Build-Parameter/-Arguments festgelegt sein. The predefined max. The number of permitted write operations with regard to the storage means can be defined, for example, in the form of an annotation and / or a label and / or a (debug) parameter / symbol in the binary program and / or a build parameter / argument.

Ein Label kann bspw. in einer system-internen oder -externen Datenbank hinterlegt sein, und dazu Kriterien, welche zu beachten sind wie bspw. maximale Anzahl von Schreibvorgängen, etc. Hierbei kann ein Label mit einem oder mehreren Ressourcen in der Datenbank assoziiert sein. Die Ressource referenziert dann wiederum zu einer anderen Tabelle, in welcher bspw. konkrete Maximalwerte gespeichert sind. Beispiel hierfür: Label Resource Comment APP_ROM_ID1 Flash_1 max writes of Flash_1 = 5000 ROM_ID1 Flash_1 max writes of Flash_1 = 5000 ROM_ID2 Flash_2 max writes of Flash_2 = 20000 ROM Flash_1, Flash_2 max (max writes of Flash_1, max writes of Flash_2) For example, a label may be stored in a system-internal or external database, and criteria to be observed such as maximum number of writes, etc. Here, a label may be associated with one or more resources in the database. The resource then references again to another table in which, for example, concrete maximum values are stored. Example: label Resource Comment APP_ROM_ID1 Flash_1 max writes of Flash_1 = 5000 ROM_ID1 Flash_1 max writes of Flash_1 = 5000 ROM_ID2 Flash_2 max writes of Flash_2 = 20000 ROME Flash_1, Flash_2 max (max writes of Flash_1, max writes of Flash_2)

Je nach Anwendungsfall kann das Verhindern eines weiteren Schreibvorgangs bezüglich des Speichermittels ein automatisches Auslassen einer Aktualisierung einer Software-Version und/oder eines Builds und/oder eines Kompiliervorgangs umfassen. Depending on the application, preventing further writing of the storage means may include automatically skipping an update of a software version and / or build and / or compilation operation.

Alternativ oder zusätzlich kann ein automatisches Verändern eines für den weiteren Schreibvorgang zu verwendenden Schreibbereiches dazu führen, dass das betrachtete Speichermittel zu Ungunsten eines anderen Schreibbereiches verschont wird. Alternatively or additionally, an automatic change of a writing area to be used for the further writing operation may result in the storage means in question being spared to the disadvantage of another writing area.

Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein elektronisches Steuergerät für den automobilen Einsatz vorgeschlagen, welches ein Speichermittel und eine Auswerteeinheit aufweist. Das Speichermittel kann dasjenige sein, welches durch das Verfahren gemäß dem erstgenannten Erfindungsaspekt beschrieben werden soll. Die Auswerteeinheit ist eingerichtet, die Schritte eines solchen Verfahrens auszuführen, dessen bevorzugte Ausgestaltungen sinngemäß auch auf das elektronische Steuergerät übertragen werden können. According to a second aspect of the present invention, an electronic control device for automotive use is proposed, which has a storage means and an evaluation unit. The storage means may be that which is to be described by the method according to the first aspect of the invention. The evaluation unit is set up to carry out the steps of such a method, the preferred embodiments of which can also be transferred analogously to the electronic control unit.

Gemäß einem dritten Aspekt der vorliegenden Erfindung wird ein Fortbewegungsmittel mit einem elektronischen Steuergerät gemäß dem zweitgenannten Erfindungsaspekt vorgeschlagen. According to a third aspect of the present invention, there is proposed a traveling means having an electronic control apparatus according to the second aspect of the invention.

Die Merkmale, Merkmalskombinationen und die sich aus diesen ergebenden Vorteile des zweit-, und drittgenannten Erfindungsaspektes ergeben sich derart ersichtlich entsprechend denjenigen des erstgenannten Erfindungsaspektes, dass zur Vermeidung von Wiederholungen auf die obigen Ausführungen verwiesen wird. The features, feature combinations and resulting from these advantages of the second and third aspects of the invention will become apparent in accordance with those of the first-mentioned aspect of the invention that reference is made to avoid repetition of the above statements.

Es ist ein Kerngedanke der vorliegenden Erfindung, Labels/Annotationen durch einen Build- und Testmechanismus derart interpretieren zu lassen, dass der Mechanismus nur dann baut und in einen Flash-Speicher lädt, sofern die Gesamtbilanz (also die Anzahl aller Flash-Vorgänge pro Tag/pro Woche/pro Monat/pro Jahr) als nicht schädlich für die verwendete Speicherressource (z. B. ein Steuergerät) erachtet wird. Die Gesamtbilanz hängt vom benutzten Flash-Speicher ab. Zum Beispiel könnte eine max. Anzahl von zehn Flash-Vorgängen pro Tag angesetzt werden. Der Mechanismus speichert hierzu die Anzahl der getätigten "sensitiven" Vorgänge ab. Über eine gewisse Zeitspanne soll dann ein Schwellenwert nicht oder nur gering überschritten werden, um im Mittel die Gesamtbilanz im Lot zu halten. Sind bereits 15 Flash-Vorgänge an einem Tag vorgekommen, wird eine entsprechende Meldung ausgegeben und die Build-Strategie so geändert, dass die Gesamtbilanz über die zukünftigen Flash-Vorgänge wieder ausgeglichen wird. Bspw. können an einem Montag 15 Flash-Vorgänge, am Dienstag dann nur 5 Flash-Vorgänge ausgeführt werden, wodurch sich im Mittel eine ausgeglichene Gesamtbilanz von 10 Flash-Vorgängen pro Wochentag ergibt. Falls möglich, wird dann später (z. B. aufgrund einer Bestätigung durch den Benutzer) veranlasst, dass jetzt – trotz erhöhter Anzahl Flash-Vorgänge – dennoch übertragen wird. In diesem Fall wird der Benutzer also bspw. darauf hingewiesen, dass ein gewisses Kontingent an Schreibvorgängen bereits erschöpft ist. Gegebenenfalls, bestätigt der Benutzer im Wissen dieser Situation den Schreibvorgang trotzdem, sodass ein Flash-Vorgang trotzdem übertragen werden kann. Diese Option wurde bereits oben erwähnt. It is a core idea of the present invention to have labels / annotations interpreted by a build and test mechanism such that the mechanism only builds and loads into a flash memory, as long as the total balance (ie the number of flash operations per day / per week / per month / per year) is not considered harmful to the storage resource used (eg a control device). The overall balance depends on the flash memory used. For example, a max. Number of ten flash operations per day. The mechanism stores the number of "sensitive" transactions. Over a certain period of time then a threshold is not or only slightly exceeded in order to keep the overall balance on balance. If 15 Flash operations have already occurred in one day, a corresponding message is output and the build strategy is changed so that the total balance of the future Flash operations is compensated again. For example. 15 Flash operations can be performed on a Monday, and then only 5 Flash operations on Tuesday, resulting in an average balance of 10 flash operations per day of the week. If possible, then later (for example, on the basis of a confirmation by the user), it will now be transmitted despite an increased number of flash operations. In this case, the user is thus informed, for example, that a certain quota of write operations has already been exhausted. If necessary, in the knowledge of this situation, the user confirms the writing process anyway, so that a flash operation can nevertheless be transmitted. This option has already been mentioned above.

Bevorzugt kann eine Eigenschaft nach Art einer Annotation hinterlegt werden, welche dazu führt, dass "nicht erneut gebaut" wird und ein korrespondierender Schreibvorgang verhindert wird. Überdies kann mittels eines Labels eine Priorität definiert werden. Je nach Prioritätswert wird diese dann in einer Schlange (engl. "Queue") abgearbeitet werden. Diese Schlange ist einzigartig und doppelte Einträge sind nicht vorgesehen. Wird ein Befehl ein zweites Mal angestoßen, wird dieser in der Schlange eliminiert. Die Priorisierung wird z.B. entweder beibehalten oder mithilfe eines anderen Ansatzes höher angesetzt. Denkbar ist zudem, dass bei einer gewissen Anzahl an Build-Befehlen die Priorisierung erhöht wird. Erfindungsgemäß kann auch eine Beeinflussung der Ressourcen erfolgen. Bspw. kann ein Build-Verfahren derart adaptiert werden, dass bei mehreren parallel zur Verfügung stehenden Ressourcen die geringste Ressource mit dem am kleinsten priorisierten Befehl gekoppelt wird. Ist eine Ressource lange belegt, ist der Build-Mechanismus so intelligent, dass eine Datenübertragung samt Überprüfung später durchgeführt wird. Auf diese Weise wird eine ressourcenschonende Verwendung eines Speichermittels und somit eine höhere Lebensdauer und effizientere Verwendung ermöglicht. Preferably, a property can be deposited in the manner of an annotation, which results in "not being rebuilt" and a corresponding writing process being prevented. Moreover, a priority can be defined by means of a label. Depending on the priority value, this will then be processed in a queue (English: "Queue"). This snake is unique and duplicate entries are not provided. If a command is triggered a second time, it will be eliminated in the queue. The prioritization is e.g. either maintained or set higher using a different approach. It is also conceivable that with a certain number of build commands the prioritization is increased. According to the invention, the resources can also be influenced. For example. For example, a build method may be adapted such that, with multiple resources in parallel, the lowest resource is coupled to the least prioritized instruction. If a resource has been used for a long time, the build mechanism is so intelligent that a data transfer including a check is performed later. In this way, a resource-saving use of a storage means and thus a longer life and more efficient use is made possible.

Die Erfindung ist besonders einfach zu implementieren. Zudem kann ein "Verhungern" bei Parallelisierung von Prozessen vermieden werden. Überdies wird der Ablauf der Prozesse bei deren Priorisierung effizienter. The invention is particularly easy to implement. In addition, a "starvation" can be avoided in parallel processes. Moreover, the process of prioritizing becomes more efficient.

Weitere Einzelheiten, Merkmale und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung und den Figuren. Es zeigen: Further details, features and advantages of the invention will become apparent from the following description and the figures. Show it:

1 eine schematische Darstellung eines Ausführungsbeispiels eines erfindungsgemäß ausgestalteten Fortbewegungsmittels bzw. einer erfindungsgemäß ausgestalteten Arbeitsmaschine; 1 a schematic representation of an embodiment of an inventively designed means of transport or inventively designed working machine;

2 eine schematische Detailansicht von Komponenten eines Ausführungsbeispiels eines erfindungsgemäßen Steuergerätes; 2 a schematic detail view of components of an embodiment of a control device according to the invention;

3 ein Diagramm veranschaulichend einen linearen Verlauf einer Anzahl erlaubter Schreibvorgänge über der Zeit; 3 a diagram illustrating a linear progression of a number of allowed writes over time;

4 ein erstes Ausführungsbeispiel eines erfindungsgemäßen Verfahrens; und 4 a first embodiment of a method according to the invention; and

5 ein zweites Ausführungsbeispiel eines erfindungsgemäßen Verfahrens. 5 A second embodiment of a method according to the invention.

1 zeigt einen Pkw 10 als Ausführungsbeispiel eines Fortbewegungsmittels. Der Pkw 10 weist ein Räumschild 9 auf, mittels dessen der Pkw 10 auch als Arbeitsmaschine ausgestaltet ist. Eine Auswerteeinheit 1 ist informationstechnisch mit einem Flash-Speicher als Speichermittel verbunden. 1 shows a car 10 as an embodiment of a means of transport. The car 10 has a plow blade 9 on, by means of which the passenger car 10 is also designed as a working machine. An evaluation unit 1 is information technology connected to a flash memory as storage means.

Zudem verfügt die Auswerteinheit 1 über eine informationstechnische Verbindung zu einem Touchscreen 3 als Anwenderschnittstelle. In addition, the evaluation unit has 1 via an information technology connection to a touchscreen 3 as user interface.

2 zeigt eine Detailansicht eines elektronischen Steuergerätes 8, welches mit einem Touchscreen 3 als Anwenderschnittstelle informationstechnisch verbunden ist. Innerhalb des Steuergerätes 8 ist eine Auswerteeinheit 1 informationstechnisch mit einem Flash-Speicher 2 verbunden, welcher vier Speicherbereiche oder Schreibbereiche 4, 5, 6, 7 aufweist. Jeder der Schreibbereiche 4, 5, 6, 7 kann als anspruchsgemäßes Speichermittel verstanden werden, da ein Schreibvorgang bezüglich eines jeden der Schreibbereiche 4, 5, 6, 7 keinen Einfluss auf den Verschleiß der übrigen Schreibbereiche aufweist. 2 shows a detailed view of an electronic control unit 8th which has a touch screen 3 is connected as a user interface information technology. Inside the control unit 8th is an evaluation unit 1 Information technology with a flash memory 2 which has four memory areas or write areas 4 . 5 . 6 . 7 having. Each of the writing areas 4 . 5 . 6 . 7 may be understood as claiming memory means, since a write operation with respect to each of the write areas 4 . 5 . 6 . 7 has no influence on the wear of the other writing areas.

3 zeigt einen möglichen linearen Verlauf einer Anzahl erlaubter Schreibvorgänge S(t) über der Zeit t. Ein linearer Zusammenhang ergibt sich für einen betrachteten Schreibbereich eines betrachteten Speichermittels, indem die maximale erlaubte Anzahl von Schreibvorgängen Smax bis zum Zeitpunkt Tmax ausgeführt werden darf. Für Teil-Lebensdauerbereiche ergeben sich entsprechend linear verringerte zulässige Anzahlen von Schreibvorgängen. Eine oberhalb des Graphen angeordnete Anzahl von Schreibvorgängen Sa überschreitet die zulässige Anzahl von Schreibvorgängen bezüglich der korrespondierenden Lebensdauer des betrachteten Speichermittels und führt daher einerseits zu einem Verhindern eines weiteren Schreibvorgangs bezüglich des betrachteten Speichermittels und andererseits zu einer Ausgabe einer Anwenderabfrage zur Bestätigung einer Aufhebung der Verhinderung des weiteren Schreibvorgangs. Eine zweite Anzahl ausgeführter Schreibvorgänge Sb liegt unterhalb des linearen Graphen und bedingt daher keine zu erwartende Beeinträchtigung der zu erreichenden Verwendbarkeitsdauer des Speichermittels. 3 shows a possible linear course of a number of allowed writes S (t) over time t. A linear relationship results for a considered write area of a considered memory means in that the maximum allowed number of write operations Smax may be executed until time Tmax. For partial life-time ranges, correspondingly linearly reduced permissible numbers of write operations result. A number of write operations Sa arranged above the graph exceeds the allowable number of write times with respect to the corresponding lifetime of the memory means under consideration, thus leading, on the one hand, to preventing further writing to the memory means under consideration and, on the other hand, to outputting a user query to confirm that the memory has been disabled further writing. A second number of executed write operations Sb is below the linear graph and therefore does not cause any expected impairment of the usable useful life of the memory means.

4 zeigt Schritte eines ersten Ausführungsbeispiels eines erfindungsgemäßen Verfahrens zur Verwendung eines wiederbeschreibbaren Speichermittels. In Schritt 100 wird eine vordefinierte max. Anzahl erlaubter Schreibvorgänge bezüglich des betrachteten Speichermittels ermittelt. Dies kann bspw. anhand des in 3 veranschaulichten Zusammenhangs erfolgen. In Schritt 200 wird anschließend eine Anzahl bereits erfolgter Schreibvorgänge bezüglich des Speichermittels ermittelt. Dies kann die Verwendung eines Zählwerks umfassen, welches bei jedem Schreibvorgang inkrementiert wird. Selbstverständlich kann für jeden unabhängig verwendbaren Schreibbereich im Speichermittel ein jeweiliger Zähler implementiert werden. In Schritt 300 wird ermittelt, dass die Anzahl erlaubter Schreibvorgänge gleich der Anzahl erlaubter Schreibvorgänge für einen korrespondierenden Zeitraum ist. Aufgrund dessen wird in Schritt 400 ein weiterer, von einer Ressource angekündigter Schreibvorgang bezüglich des Speichermittels verhindert. Um eine bedarfsgerechte Nutzung des Speichermittels zu gewährleisten, wird in Schritt 500 eine Prioritätsstufe des weiteren Schreibvorgangs ermittelt. Im Ansprechen auf einen weiteren Schreibvorgang einer ersten Prioritätsstufe wird in Schritt 600 das Verhindern des weiteren Schreibvorgangs automatisch ausgesetzt, um den Schreibvorgang einer besonders hohen Wichtigkeit zu Ungunsten der Lebensdauer des Speichermittels dennoch ausführen zu können. 4 shows steps of a first embodiment of a method according to the invention for using a rewritable storage means. In step 100 is a predefined max. Number of allowed writes with respect to the storage means under consideration. This can, for example, based on the in 3 illustrated context. In step 200 Subsequently, a number of already performed write operations with respect to the storage means is determined. This may involve the use of a counter, which is incremented at each write. Of course, for each independently usable write area in the memory means, a respective counter can be implemented. In step 300 it is determined that the number of allowed writes is equal to the number of allowed writes for a corresponding period of time. Because of that, in step 400 prevents another, announced by a resource writing with respect to the storage means. In order to ensure a needs-based use of the storage medium, in step 500 determines a priority level of the further write operation. In response to another write of a first priority level, in step 600 the prevention of further writing automatically suspended in order to perform the writing process of a particularly high importance to the detriment of the life of the memory means nevertheless can.

5 zeigt Schritte eines zweiten Ausführungsbeispiels eines erfindungsgemäßen Verfahrens zur Verwendung eines wiederbeschreibbaren Speichermittels. Die Schritte 100 bis 400 gleichen denjenigen, welche in Verbindung mit 4 diskutiert worden sind. Im Unterschied zur 4 fährt das Verfahren in Schritt 700 mit der Ausgabe einer Anwenderabfrage zur Bestätigung einer Aufhebung der Verhinderung des weiteren Schreibvorgangs fort. Die Ausgabe der Anwenderabfrage kann bspw. eine Anzeige einer korrespondierenden Schaltfläche auf einem Touchscreen (sh. 1 und 2) erfolgen. In Schritt 800 wird im Ansprechen auf den Empfang der Bestätigung durch den Anwender der weitere Schreibvorgang durchgeführt. Um den Anwender nicht unnötig mit weiteren Abfragen zu belästigen und die Anwenderakzeptanz des erfindungsgemäßen Verfahrens zu erhöhen, wird in Schritt 900 eine Ausgabe einer weiteren Anwenderabfrage zur Bestätigung einer Aufhebung der Verhinderung des weiteren Schreibvorgangs für einen vordefinierten Zeitraum bzw. für eine zweite vordefinierte Anzahl von Schreibvorgängen, um welche die vordefinierte maximale Anzahl erlaubter Schreibvorgänge überschritten wird, ausgesetzt. Auf diese Weise wird es dem Anwender überlassen, im Einzelfall zu entscheiden, ob eine vordefinierte oder (z. B. über ein Einstellungsmenü) vordefinierbare Anzahl weiterer Schreibvorgänge erlaubt werden soll, um eine besonders flexible Verwendung des Speichermittels zu ermöglichen. 5 shows steps of a second embodiment of a method according to the invention for the use of a rewritable storage means. The steps 100 to 400 similar to those associated with 4 have been discussed. In contrast to 4 the procedure continues in step 700 with the output of a user query confirming a cancellation of the prevention of the further writing process. The output of the user query can, for example, a display of a corresponding button on a touch screen (see. 1 and 2 ) respectively. In step 800 In response to the receipt of the confirmation by the user, further writing is performed. In order not to bother the user unnecessarily with further queries and to increase the user acceptance of the method according to the invention, in step 900 an output of another user query for confirming a suspension of the prevention of further writing for a predefined period or for a second predefined number of write operations by which the predefined maximum number of allowed writes is exceeded suspended. In this way, it is left to the user to decide on a case-by-case basis whether a predefined or (for example via a settings menu) predefinable number of further write operations should be allowed in order to allow a particularly flexible use of the storage means.

BezugszeichenlisteLIST OF REFERENCE NUMBERS

1 1
Auswerteeinheit evaluation
2 2
Flash-Speicher Flash memory
3 3
Touchscreen touchscreen
4, 5, 6, 7 4, 5, 6, 7
Schreibbereiche innerhalb des Flash-Speichers 2 Write areas within the flash memory 2
8 8th
Steuergerät control unit
9 9
Räumschild dozer blade
10 10
Pkw car
100–900 100-900
Verfahrensschritte steps
Sa, Sb Sa, Sb
Anzahl Schreibvorgänge Number of writes
S(t) S (t)
max. erlaubte Anzahl Schreibvorgänge über der Zeit. Max. allowed number of writes over time.
Smax.Smax.
max. Gesamtanzahl erlaubter Schreibvorgänge für ein Speichermittel Max. Total number of allowed writes to a storage device
t t
Zeit Time
Tmax.Tmax.
Lebensdauer der Komponente, welche das Speichermittel 2 enthält.Life of the component containing the storage medium 2 contains.

Claims (10)

Verfahren zur Verwendung eines wiederbeschreibbaren Speichermittels (2) umfassend die Schritte: – Ermitteln (100) einer vordefinierten maximalen Anzahl erlaubter Schreibvorgänge bezüglich des Speichermittels (2), – Ermitteln (200) einer Anzahl bereits erfolgter Schreibvorgänge bezüglich des Speichermittels (2), – Ermitteln (300), dass die Anzahl erlaubter Schreibvorgänge gleich der Anzahl erfolgter Schreibvorgänge gleicht und aufgrund dessen – Verhindern (400) eines weiteren Schreibvorgangs bezüglich des Speichermittels (2). Method for using a rewritable storage medium ( 2 ) comprising the steps of: - determining ( 100 ) a predefined maximum number of allowed writes to the storage means ( 2 ), - Determine ( 200 ) a number of previous writes to the storage medium ( 2 ), - Determine ( 300 ), that the number of allowed writes is equal to the number of successful writes and due to this - preventing ( 400 ) of a further write operation with respect to the storage means ( 2 ). Verfahren nach Anspruch 1, wobei das Speichermittel (2) einen Flash-Speicher umfasst. Method according to claim 1, wherein the storage means ( 2 ) comprises a flash memory. Verfahren nach Anspruch 1 oder 2, wobei die maximale Anzahl erlaubter Schreibvorgänge (Smax) bezüglich des Speichermittels (2) anhand – einer bisherigen Gesamtanzahl und/oder – einer in einem unmittelbar zurückliegenden vordefinierten Teil-Zeitraum erfolgten maximalen Anzahl Schreibvorgänge und/oder – einer mittleren zu erwartenden Lebensdauer des Speichermittels (2), eines Erfahrungswertes für eine Anzahl möglicher Schreibvorgänge bezüglich des Speichermittels (2) und einer Anzahl bereits erfolgter Schreibvorgänge erfolgt. Method according to claim 1 or 2, wherein the maximum number of permitted write operations (Smax) with respect to the memory means ( 2 ) on the basis of: - a previous total number and / or - a maximum number of write operations made in an immediately preceding predefined sub-period and / or - a mean expected life of the storage medium ( 2 ), an empirical value for a number of possible writes to the storage medium ( 2 ) and a number of already done write operations. Verfahren nach einem der vorstehenden Ansprüche weiter umfassend – Ausgeben (700) einer Anwenderabfrage zur Bestätigung einer Aufhebung der Verhinderung des weiteren Schreibvorgangs und im Ansprechen auf einen Empfang der Bestätigung – Durchführen (800) des weiteren Schreibvorgangs. Method according to one of the preceding claims further comprising - issuing ( 700 ) of a user query confirming a cancellation of the prevention of further writing and in response to a receipt of the confirmation - performing ( 800 ) of the further writing process. Verfahren nach Anspruch 4 weiter umfassend – Aussetzen (900) einer Ausgabe einer weiteren Anwenderabfrage zur Bestätigung einer Aufhebung der Verhinderung des weiteren Schreibvorgangs – für einen vordefinierten Zeitraum und/oder – für eine zweite vordefinierte Anzahl Schreibvorgänge, um welche die vordefinierte maximale Anzahl erlaubter Schreibvorgänge überschritten wird. The method of claim 4 further comprising - suspending ( 900 ) an output of another user query for confirming a cancellation of the further writing process - for a predefined period of time and / or - for a second predefined number of write operations by which the predefined maximum number of permitted write processes is exceeded. Verfahren nach einem der vorstehenden Ansprüche weiter umfassend – Ermitteln (500) einer Prioritätsstufe des weiteren Schreibvorgangs und im Ansprechen auf eine erste Prioritätsstufe – Aussetzen (600) des Verhinderns des weiteren Schreibvorgangs und im Ansprechen auf eine zweite Prioritätsstufe, welche niedriger als die erste Prioritätsstufe ist, – Verhindern (400) des weiteren Schreibvorgangs. Method according to one of the preceding claims further comprising - determining ( 500 ) of a priority level of the further write and in response to a first priority level - suspend ( 600 ) preventing the further writing operation and in response to a second priority level which is lower than the first priority level, - preventing ( 400 ) of the further writing process. Verfahren nach einem der vorstehenden Ansprüche, wobei die vordefinierte maximale Anzahl erlaubter Schreibvorgänge (Smax) bezüglich des Speichermittels (2) in Form – einer Annotation und/oder – eines Labels und/oder – eines Debug-Kommentars und/oder – eines Build-Targets vordefiniert ist. Method according to one of the preceding claims, wherein the predefined maximum number of permitted write operations (Smax) with respect to the memory means ( 2 ) in the form of - an annotation and / or - a label and / or - a debug comment and / or - a build target is predefined. Verfahren nach einem der vorstehenden Ansprüche, wobei das Verhindern (400) eines weiteren Schreibvorgangs bezüglich des Speichermittels (2) umfasst: – automatisches Auslassen – einer Aktualisierung einer Software-Version und/oder – eines Builds und/oder – eines Kompiliervorgangs und/oder – automatisches Verändern eines für den weiteren Schreibvorgang zu verwendenden Schreibbereiches. A method according to any one of the preceding claims, wherein said preventing ( 400 ) of a further write operation with respect to the storage means ( 2 ) includes: - automatic skipping - updating a software version and / or - a build and / or A compilation process and / or an automatic change of a writing area to be used for the further writing process. Elektronisches Steuergerät (8) für den automobilen Einsatz umfassend – ein Speichermittel (2), und – eine Auswerteeinheit (1), wobei die Auswerteeinheit (1) eingerichtet ist, die Schritte eines Verfahrens gemäß einem der vorstehenden Ansprüche auszuführen. Electronic control unit ( 8th ) for automotive use comprising - a storage means ( 2 ), and - an evaluation unit ( 1 ), whereby the evaluation unit ( 1 ) is adapted to carry out the steps of a method according to one of the preceding claims. Fortbewegungsmittel (10) umfassend ein elektronisches Steuergerät (8) nach Anspruch 9. Means of transportation ( 10 ) comprising an electronic control unit ( 8th ) according to claim 9.
DE102015223834.2A 2015-12-01 2015-12-01 Electronic control apparatus, means of locomotion and method of using a writable storage means Pending DE102015223834A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015223834.2A DE102015223834A1 (en) 2015-12-01 2015-12-01 Electronic control apparatus, means of locomotion and method of using a writable storage means

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015223834.2A DE102015223834A1 (en) 2015-12-01 2015-12-01 Electronic control apparatus, means of locomotion and method of using a writable storage means

Publications (1)

Publication Number Publication Date
DE102015223834A1 true DE102015223834A1 (en) 2017-06-01

Family

ID=58692891

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015223834.2A Pending DE102015223834A1 (en) 2015-12-01 2015-12-01 Electronic control apparatus, means of locomotion and method of using a writable storage means

Country Status (1)

Country Link
DE (1) DE102015223834A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220024472A1 (en) * 2021-07-07 2022-01-27 Toyota Jidosha Kabushiki Kaisha Control apparatus for vehicle

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005023057A1 (en) * 2005-05-05 2006-11-09 Infineon Technologies Flash Gmbh & Co. Kg Non-volatile memory
DE112007003036T5 (en) * 2006-12-11 2009-11-05 Marvell World Trade Ltd. Hybrid nonvolatile semiconductor memory system
DE102008056710A1 (en) * 2008-11-11 2010-05-12 Giesecke & Devrient Gmbh Portable data medium e.g. smart card, operating method for e.g. mobile telephone, involves detecting output of warning for user via terminal by data medium in case that rate of wear exceeds predetermined threshold
DE102012203713A1 (en) * 2011-03-10 2012-09-13 Deere & Company Method and device for extending the life of memories
DE102012208141A1 (en) * 2011-05-19 2012-11-22 International Business Machines Corporation Compensation for decreasing functionality
DE102012003710A1 (en) * 2012-02-24 2013-08-29 Giesecke & Devrient Gmbh Extension of the operating time of a security element
US20130246686A1 (en) * 2012-03-19 2013-09-19 Hitachi, Ltd. Storage system comprising nonvolatile semiconductor storage device, and storage control method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005023057A1 (en) * 2005-05-05 2006-11-09 Infineon Technologies Flash Gmbh & Co. Kg Non-volatile memory
DE112007003036T5 (en) * 2006-12-11 2009-11-05 Marvell World Trade Ltd. Hybrid nonvolatile semiconductor memory system
DE102008056710A1 (en) * 2008-11-11 2010-05-12 Giesecke & Devrient Gmbh Portable data medium e.g. smart card, operating method for e.g. mobile telephone, involves detecting output of warning for user via terminal by data medium in case that rate of wear exceeds predetermined threshold
DE102012203713A1 (en) * 2011-03-10 2012-09-13 Deere & Company Method and device for extending the life of memories
DE102012208141A1 (en) * 2011-05-19 2012-11-22 International Business Machines Corporation Compensation for decreasing functionality
DE102012003710A1 (en) * 2012-02-24 2013-08-29 Giesecke & Devrient Gmbh Extension of the operating time of a security element
US20130246686A1 (en) * 2012-03-19 2013-09-19 Hitachi, Ltd. Storage system comprising nonvolatile semiconductor storage device, and storage control method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220024472A1 (en) * 2021-07-07 2022-01-27 Toyota Jidosha Kabushiki Kaisha Control apparatus for vehicle

Similar Documents

Publication Publication Date Title
DE102014106241B4 (en) Method and system for assisting a driver
EP3523703B1 (en) Method for updating software in cloud gateways, computer program with an implementation of the method and processing unit for executing the method
DE10245931A1 (en) Workflow management system has a device for detecting fuzzy process definitions to enable continuous status management
DE102017217668A1 (en) Method and central data processing device for updating software in a plurality of vehicles
DE102016204392A1 (en) System and process for production planning
EP3929740A1 (en) Method for orchestrating a container-based application on a terminal
DE10243856B4 (en) Regulator and method for operating a regulator
EP1982243B1 (en) Method for storing a data block containing data for controlling a technical process, and control apparatus
DE10206865C1 (en) Limiting software process response time to predetermined maximum response time, process is subdivided and if process is terminated, result of selected sub-process is used as final result
DE4445651A1 (en) Process for the control of technical processes
DE102015223834A1 (en) Electronic control apparatus, means of locomotion and method of using a writable storage means
WO2011000367A1 (en) Method and device for the simplified error processing in a machine tool
EP3983897B1 (en) Method for ensuring and maintaining the function of a complete safety-critical system
DE112013003240B4 (en) Method for controlling a motor vehicle transmission
DE102015100566A1 (en) Method and light mechanism for mixed critical applications
DE3831048A1 (en) OPERATING PROGRAM FOR A DATA PROCESSING SYSTEM
DE10110444A1 (en) Determining workload of computer apparatus running computer program by determining run time of tasks after completion and subtracting run times upon interruption
DE102018206179A1 (en) Servomotor controller and servomotor control system
EP2126700B1 (en) Control of the run time behavior of processes
DE102016206490A1 (en) ELECTRONIC CONTROL UNIT
EP1967920A1 (en) Softwareupdate method for FPGA-based automation systems
DE102018123563A1 (en) Method for inter-core communication in a multi-core processor
DE102022115191A1 (en) Method and motor vehicle control device for cyclically generating current observation data of at least one determined observation variable, which are distributed in a data network of a motor vehicle
EP3757525B1 (en) Sensor and method for operating same
EP4293437A1 (en) Method and device for controlling the execution of program parts, programming method, programming apparatus

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed