DE102023210817A1 - Method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit - Google Patents
Method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit Download PDFInfo
- Publication number
- DE102023210817A1 DE102023210817A1 DE102023210817.8A DE102023210817A DE102023210817A1 DE 102023210817 A1 DE102023210817 A1 DE 102023210817A1 DE 102023210817 A DE102023210817 A DE 102023210817A DE 102023210817 A1 DE102023210817 A1 DE 102023210817A1
- Authority
- DE
- Germany
- Prior art keywords
- event information
- buffer memory
- event
- computing unit
- stored
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0787—Storage of error reports, e.g. persistent data storage, storage using memory protection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Speichern einer Ereignisinformation bezüglich eines Ereignisses, insbesondere eines Hardware- und/oder Software-Fehlers und/oder eines Reset-Ereignisses, einer Recheneinheit (10) und/oder einer weiteren Recheneinheit in ein zumindest einen Pufferspeicher (16) aufweisendes Speichersystem (12) der Recheneinheit (10), mit folgenden Schritten:
- Einlesen einer in dem Pufferspeicher (16) zu speichernden Ereignisinformation bezüglich eines Ereignisses der Recheneinheit (10) und/oder der weiteren Recheneinheit, wobei die eingelesene Ereignisinformation eine Ursache für das Ereignis umfasst;
- Ermitteln einer Anzahl von in dem Pufferspeicher (16) gespeicherten Ereignisinformationen, welche dieselbe Ursache für das jeweilige Ereignis aufweisen wie die eingelesene Ereignisinformation, wobei
◯ die älteste Ereignisinformation mit derselben Ursache aus dem Pufferspeicher (16) gelöscht wird, wenn die ermittelte Anzahl größer oder gleich einem definierten Schwellenwert ist, ansonsten
◯ die älteste Ereignisinformation aus dem Pufferspeicher (16) gelöscht wird; und
- Speichern der eingelesenen Ereignisinformation in dem Pufferspeicher (16).
The invention relates to a method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit (10) and/or another computing unit in a memory system (12) of the computing unit (10) having at least one buffer memory (16), comprising the following steps:
- reading in event information to be stored in the buffer memory (16) relating to an event of the computing unit (10) and/or the further computing unit, wherein the read-in event information comprises a cause for the event;
- Determining a number of event information stored in the buffer memory (16) which have the same cause for the respective event as the read-in event information, wherein
◯ the oldest event information with the same cause is deleted from the buffer memory (16) if the determined number is greater than or equal to a defined threshold value, otherwise
◯ the oldest event information is deleted from the buffer memory (16); and
- Storing the read event information in the buffer memory (16).
Description
Die Erfindung betrifft ein Verfahren zum Speichern einer Ereignisinformation bezüglich eines Ereignisses, insbesondere eines Hardware- und/oder Software-Fehlers und/oder eines Reset-Ereignisses, einer Recheneinheit und/oder einer weiteren Recheneinheit in ein zumindest einen Pufferspeicher aufweisendes Speichersystem der Recheneinheit, ferner eine Recheneinheit sowie ein entsprechendes Computerprogramm und ein Speichermedium.The invention relates to a method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit and/or a further computing unit in a memory system of the computing unit having at least one buffer memory, furthermore a computing unit and a corresponding computer program and a storage medium.
Stand der TechnikState of the art
In Systemen, welche aus einem Mikrocontroller und/oder Mikroprozessor bestehen, können zur Laufzeit sogenannte Resets (Neustarts) auftreten, welche einen Neustart des Systems verursachen. Diese Resets können sehr unterschiedliche Gründe haben, so kann z. B. das Einschalten der Versorgungsspannung einen „Power-on Reset“ auslösen, eine Software-Funktion kann einen Software-Reset auslösen, ein Hardwarefehler im Mikrocontroller/Mikroprozessor kann einen Reset auslösen, etc.In systems consisting of a microcontroller and/or microprocessor, so-called resets (restarts) can occur during runtime, causing the system to restart. These resets can have very different causes; for example, switching on the supply voltage can trigger a "power-on reset," a software function can trigger a software reset, a hardware error in the microcontroller/microprocessor can trigger a reset, etc.
Da durch diese, teilweise ungewollten Neustarts die Verfügbarkeit der Anwendung negativ beeinflusst wird, besteht ein Interesse in der Erkennung und dem Loggen dieser Ereignisse. Hierfür ist es Stand der Technik eine Art von Reset-Buffer zu implementieren, aus welchem man die Liste der zuletzt aufgetretenen Resets auslesen kann.Since these, sometimes unintentional, restarts negatively impact application availability, there is an interest in detecting and logging these events. For this purpose, it is state of the art to implement a type of reset buffer from which the list of most recently occurred resets can be read.
Das Auslesen dieser Reset-Ereignisse kann bei Fehleranalysen im Feld und auch bei einer Rückläuferanalyse sehr hilfreiche Informationen zum Problem eines Gerätes liefern.Reading these reset events can provide very helpful information about a device's problem during error analysis in the field and also during return analysis.
Ein großes Problem in eingebetteten Systemen (englisch: „embedded systems“) ist jedoch, dass diese typischerweise nur eine sehr begrenzte Menge an verfügbarem Speicherplatz aufweisen, um solche Ereignisse abzulegen. Aus diesem Grund ist meist eine Abwägung zwischen den zu speichernden Daten und dem verfügbaren Speicherplatz notwendig. Dies führt unter anderem dazu, dass ein Reset-Buffer typischerweise nur eine bestimmte Anzahl an Ereignissen abspeichern kann und dann beim Eintreffen weiterer Ereignisse das jeweils älteste Ereignis im Buffer überschreibt.However, a major problem in embedded systems is that they typically have only a very limited amount of available memory to store such events. Therefore, a trade-off between the data to be stored and the available memory is often necessary. This leads, among other things, to a reset buffer typically only being able to store a certain number of events and then overwriting the oldest event in the buffer as new events arrive.
Mit dieser Methode hat man zwar den Speicherverbrauch im Griff, allerdings werden alte Reset-Ereignisse einfach verworfen. Dies ist akzeptabel, wenn immer derselbe Reset-Grund auftritt. Das Verwerfen der alten Reset-Ereignisse kann aber von Nachteil sein, wenn durch das Auftreten neuer Resets ältere Ereignisse im Buffer gelöscht werden und anschließend keinerlei Hinweis mehr besteht, dass dieser bestimmte (gelöschte) Reset auch irgendwann mal aufgetreten war.While this method keeps memory usage under control, old reset events are simply discarded. This is acceptable if the same reset reason occurs every time. However, discarding old reset events can be disadvantageous if the occurrence of new resets deletes older events from the buffer, leaving no trace that the specific (deleted) reset ever occurred.
Aus der
Offenbarung der ErfindungDisclosure of the invention
Gemäß einem ersten Aspekt ist Gegenstand der vorliegenden Erfindung ein, insbesondere computerimplementiertes, Verfahren zum Speichern einer Ereignisinformation bezüglich eines Ereignisses, insbesondere eines Hardware- und/oder Software-Fehlers und/oder eines Reset-Ereignisses, einer Recheneinheit und/oder der weiteren Recheneinheit in ein zumindest einen Pufferspeicher aufweisendes Speichersystem der Recheneinheit gemäß dem Anspruch 1.According to a first aspect, the subject matter of the present invention is a method, in particular a computer-implemented method, for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit and/or the further computing unit in a memory system of the computing unit having at least one buffer memory according to claim 1.
Gemäß einem zweiten Aspekt ist Gegenstand der vorliegenden Erfindung eine Recheneinheit gemäß dem Anspruch 10.According to a second aspect, the present invention relates to a computing unit according to
Gemäß einem weiteren Aspekt sind Gegenstand der vorliegenden Erfindung ein Computerprogramm und ein maschinenlesbares Speichermedium.According to a further aspect, the present invention relates to a computer program and a machine-readable storage medium.
Unter einem Ereignis der Recheneinheit kann im Rahmen der vorliegenden Anmeldung ein Ereignis bzw. ein Event verstanden werden, welches eine Software und/oder eine Hardware der Recheneinheit und/oder der weiteren Recheneinheit betrifft. Hierbei können für dasselbe Ereignis zumindest zwei unterschiedliche Ursachen bzw. Gründen vorliegen. Das heißt, es besteht ein Interesse daran, nicht nur eine Häufigkeit der Ereignisse, sondern auch die dem jeweiligen Ereignis zu Grunde liegende Ursache bzw. dessen Grund zu loggen und auszulesen bzw. zu ermitteln.In the context of this application, an event of the computing unit can be understood as an event that affects the software and/or hardware of the computing unit and/or the additional computing unit. At least two different causes or reasons can exist for the same event. This means that there is an interest in logging, reading, or determining not only the frequency of events, but also the underlying cause or reason for the respective event.
Das Ereignis ist bevorzugt ein Reset-Ereignis bzw. ein Neustart-Ereignis, wobei der Reset bzw. der Neustart ein Reset eines Software- und/oder eines Hardwaremoduls der und/oder der weiteren Recheneinheit umfassen kann. Denkbar ist auch, dass das Ereignis ein Fehlerereignis der und/oder der weiteren Recheneinheit ist. Hierbei kann das Fehlerereignis einen Fehler eines Software- und/oder eines Hardwaremoduls der Recheneinheit umfassen. Denkbar ist weiter, dass das Ereignis ein weiteres Ereignis der und/oder der weiteren Recheneinheit betrifft.The event is preferably a reset event or a restart event, wherein the reset or restart may comprise a reset of a software and/or hardware module of the and/or the further computing unit. It is also conceivable that the event is an error event of the and/or the further computing unit. In this case, the error event may comprise an error of a software and/or hardware module of the computing unit. It is further conceivable that the event relates to another event of the and/or the further computing unit.
Die Ursache bzw. der Grund des Ereignisses charakterisiert einen Auslöser des Ereignisses. Bspw. kann ein Reset-Ereignis durch ein Software- und/oder ein Hardwaremodul der und/oder der weiteren Recheneinheit verursacht werden. Denkbar ist, dass ein Reset-Ereignis durch ein Aktivieren oder Unterbrechen einer Versorgungsspannung der Recheneinheit verursacht bzw. ausgelöst wird.The cause or reason of the event characterizes a trigger of the event. For example, a reset event can be triggered by a software and/or a hardware module of the and/or the additional computing unit. It is conceivable that a reset event is caused or triggered by activating or interrupting a supply voltage of the computing unit.
Die Ereignisinformation kann das Ereignis umfassen, repräsentieren oder indizieren. Bspw. kann die Ereignisinformation als digitales Signal ausgebildet sein, welche das Ereignis umfasst, repräsentiert oder indiziert.The event information may include, represent, or indicate the event. For example, the event information may be embodied as a digital signal that includes, represents, or indicates the event.
Die Recheneinheit umfasst einen oder mehrere Mikrocontroller und/oder einen oder mehrere Mikroprozessoren. Weiter umfasst die Recheneinheit ein Speichersystem mit zumindest einem Pufferspeicher. Zusätzlich kann das Speichersystem ein oder mehrere weitere Speichereinheiten, bspw. einen Hauptspeicher, umfassen.The computing unit comprises one or more microcontrollers and/or one or more microprocessors. Furthermore, the computing unit comprises a memory system with at least one buffer memory. Additionally, the memory system may comprise one or more additional memory units, e.g., a main memory.
Unter einem Pufferspeicher bzw. einem Buffer kann im Rahmen der vorliegenden Anmeldung eine bevorzugt nichtflüchtige Speichereinheit des Speichersystems verstanden werden, welche ausgebildet bzw. eingerichtet ist, Daten, insbesondere Ereignisinformationen bezüglich Ereignissen der und/oder der weiteren Recheneinheit, temporär zu speichern bzw. zwischenzuspeichern. In the context of the present application, a buffer memory or a buffer can be understood as a preferably non-volatile memory unit of the memory system, which is designed or configured to temporarily store or buffer data, in particular event information relating to events of the and/or the further computing unit.
Hierzu weist der Pufferspeicher eine definierte Speichergröße auf. Insbesondere ist der Pufferspeicher ausgebildet, eine definierte Anzahl von Ereignisinformationen bzw. Einträgen zu speichern.For this purpose, the buffer memory has a defined memory size. In particular, the buffer memory is designed to store a defined number of event information items or entries.
Die den Pufferspeicher umfassende Recheneinheit ist bevorzugt als eine Steuereinheit bzw. ein Steuergerät ausgebildet. Insbesondere kann die Recheneinheit als ein eingebettetes System (englisch: „embedded system“) ausgebildet sein, bspw. als eingebettetes Steuergerät. Die Recheneinheit kann bspw. zum Steuern eines Fahrzeugs, eine Smart-Home-Geräts, einer Handwerkzeugmaschine, eines Haushaltsgeräts, eines Smartphones etc. ausgebildet sein.The computing unit comprising the buffer memory is preferably designed as a control unit or a control device. In particular, the computing unit can be designed as an embedded system, for example, as an embedded control device. The computing unit can be designed, for example, to control a vehicle, a smart home device, a handheld power tool, a household appliance, a smartphone, etc.
Das Verfahren umfasst einen Schritt des Einlesens einer in dem Pufferspeicher zu speichernden Ereignisinformation bezüglich eines Ereignisses der Recheneinheit und/oder der weiteren Recheneinheit. Hierbei umfasst die eingelesene Ereignisinformation eine Ursache für das Ereignis. Das Einlesen einer Ereignisinformation, insbesondere mittels einer Hardware- und/oder Softwareschnittstelle der Recheneinheit, kann ein Empfangen der Ereignisinformation und/oder ein Auslesen der Ereignisinformation aus einem, insbesondere temporären, Speichermedium umfassen. Dem Schritt des Einlesens der Ereignisinformation kann ein Schritt des Erfassens der Ereignisinformation vorausgehen, um die Ereignisinformation bspw. der Recheneinheit zum Speichern in dem Pufferspeicher bereitzustellen.The method comprises a step of reading in event information relating to an event of the computing unit and/or the further computing unit, to be stored in the buffer memory. The read-in event information comprises a cause of the event. Reading in event information, in particular by means of a hardware and/or software interface of the computing unit, can comprise receiving the event information and/or reading the event information from a storage medium, in particular a temporary storage medium. The step of reading in the event information can be preceded by a step of capturing the event information in order to provide the event information, for example, to the computing unit for storage in the buffer memory.
Das Verfahren umfasst weiter einen Schritt des Ermittelns einer Anzahl von in dem Pufferspeicher gespeicherten Ereignisinformationen, welche dieselbe Ursache für das jeweilige Ereignis aufweisen wie die eingelesene Ereignisinformation. Wenn bzw. falls bzw. genau in dem Fall, in dem die ermittelte Anzahl größer oder gleich einem definierten Schwellenwert ist, wird die älteste Ereignisinformation mit derselben Ursache aus dem Pufferspeicher gelöscht. Wenn bzw. falls bzw. genau in dem Fall, in dem die ermittelte Anzahl kleiner als der definierte Schwellenwert ist, wird die älteste Ereignisinformation aus dem Pufferspeicher gelöscht. Hierbei ist die älteste Ereignisinformation die älteste in dem Pufferspeicher gespeicherte Ereignisinformation, welche unabhängig von der von der Ereignisinformation umfassten Ursache gelöscht wird.The method further comprises a step of determining a number of event information items stored in the buffer memory which have the same cause for the respective event as the read-in event information. If, when, or precisely in the case in which the determined number is greater than or equal to a defined threshold value, the oldest event information item with the same cause is deleted from the buffer memory. If, when, when, or precisely in the case in which the determined number is less than the defined threshold value, the oldest event information item is deleted from the buffer memory. The oldest event information item is the oldest event information item stored in the buffer memory, which is deleted regardless of the cause encompassed by the event information item.
Das heißt, mit anderen Worten, das Verfahren umfasst einen Schritt des Löschens einer Ereignisinformation aus dem Pufferspeicher in Abhängigkeit der ermittelten Anzahl und einem definierten Schwellenwert, insbesondere des Löschens der älteste Ereignisinformation mit derselben Ursache aus dem Pufferspeicher, wenn bzw. falls bzw. genau in dem Fall, in dem die ermittelte Anzahl größer oder gleich einem definierten Schwellenwert ist, ansonsten des Löschens der ältesten Ereignisinformation aus dem Pufferspeicher.In other words, the method comprises a step of deleting event information from the buffer memory as a function of the determined number and a defined threshold value, in particular deleting the oldest event information with the same cause from the buffer memory if or when or exactly in the case in which the determined number is greater than or equal to a defined threshold value, otherwise deleting the oldest event information from the buffer memory.
Denkbar ist, dass der definierte Schwellenwert für alle Ursachen von Ereignissen der Recheneinheit denselben Wert aufweist. Denkbar ist auch, dass der definierte Schwellenwert für unterschiedliche Ursachen von Ereignissen der Recheneinheit unterschiedliche Werte aufweist. Das heißt, mit anderen Worten, der definierte Schwellenwert kann ein ursachenspezifischer Schwellenwert sein. Insbesondere kann der Schwellenwert in einem Bereich größer oder gleich 1 und kleiner oder gleich 20, bevorzugt größer oder gleich 1 und kleiner oder gleich 10 vorgegeben oder vorgebbar sein.It is conceivable that the defined threshold value has the same value for all causes of events in the computing unit. It is also conceivable that the defined threshold value has different values for different causes of events in the computing unit. In other words, the defined threshold value can be a cause-specific threshold value. In particular, the threshold value can be specified or specifiable in a range greater than or equal to 1 and less than or equal to 20, preferably greater than or equal to 1 and less than or equal to 10.
Das Verfahren umfasst ferner einen Schritt des Speicherns der eingelesenen Ereignisinformation in dem Pufferspeicher. Das heißt, mit anderen Worten die eingelesene Ereignisinformation wird in den Pufferspeicher geschrieben bzw. abgelegt.The method further comprises a step of storing the read-in event information in the buffer memory. In other words, the read-in event information is written or stored in the buffer memory.
Das vorgestellte Verfahren wird bevorzugt während eines Betriebs der Recheneinheit ausgeführt. Bspw. wird das Verfahren in der beschriebenen Abfolge von Verfahrensschritten wiederholt nacheinander ausgeführt, bevorzugt stets dann, wenn ein Ereignis der Recheneinheit auftritt bzw. eintritt.The proposed method is preferably executed during operation of the computing unit. For example, the method is executed repeatedly in the described sequence of process steps, preferably whenever an event of the computing unit occurs.
Das erfindungsgemäße Verfahren und die erfindungsgemäßen Vorrichtungen ermöglichen, dass auch selten auftretende Ursachen bzw. Gründe für Ereignisse der Recheneinheit in dem Pufferspeicher gespeichert bleiben. Insbesondere ist sichergestellt, dass eine zumindest einmal in dem Pufferspeicher gespeicherte Ursache für ein Ereignis nicht durch andere, häufiger auftretende Ursachen überschrieben wird. Vielmehr bleibt für jede aufgetretene Ursache zumindest die jeweils jüngste Ereignisinformation in dem Pufferspeicher gespeichert. Das heißt, mit anderen Worten, nicht jede in dem Pufferspeicher gespeicherte Ereignisinformation bleibt dauerhaft verfügbar, jedoch ist sichergestellt, dass von jeder Ursache mindestens eine vorgegebene Anzahl an Ereignisinformationen verfügbar bleibt und von anderen Ursachen nicht überschrieben werden kann. Dadurch kann die Diagnose bzw. Analyse von Ursachen von Ereignissen einer Recheneinheit, insbesondere von Gründen für Reset-Ereignisse der Recheneinheit, erheblich verbessert werden.The method and the devices according to the invention enable even rarely occurring causes or reasons for events in the computing unit to remain stored in the buffer memory. In particular, it is ensured that a cause for an event stored at least once in the buffer memory is not overwritten by other, more frequently occurring causes. Rather, for each cause that has occurred, at least the most recent event information remains stored in the buffer memory. In other words, not every piece of event information stored in the buffer memory remains permanently available; however, it is ensured that at least a predetermined number of event information items remain available for each cause and cannot be overwritten by other causes. This can significantly improve the diagnosis or analysis of causes of events in a computing unit, in particular reasons for reset events in the computing unit.
Mit dem vorgeschlagenen Ansatz entfällt die Notwendigkeit, die eingelesenen Ereignisinformationen vor dem Speichern zu filtern, bspw. hinsichtlich bewusst herbeigeführter und ungewollter Ereignisse, um die bewusst herbeigeführten Reset-Ereignisse überhaupt nicht zu speichern. Der für die vorgeschlagene Lösung erforderliche Speicherplatz kann hierbei durch eine Anpassung an die Anzahl der auftretenden Ursachen und die Wahl des Schwellenwerts optimiert werden, sodass auch bei eingebetteten Systemen mit geringem Speicherplatz alle aufgetretenen Ursachen von Ereignissen zuverlässig gespeichert und analysiert werden können. Dabei kann der Speicherbedarf des Pufferspeichers statisch verwaltet werden, das heißt, es ist keine dynamische Speicherallokation nötig. Vielmehr ist der für den Pufferspeicher benötigte Speicherplatz exakt vorhersagbar, was insbesondere für eingebettete Systeme vorteilhaft ist.The proposed approach eliminates the need to filter the read event information before saving it, for example, with regard to deliberately induced and unintentional events, in order to avoid saving deliberately induced reset events at all. The storage space required for the proposed solution can be optimized by adapting it to the number of occurring causes and the choice of threshold value, so that all occurring causes of events can be reliably stored and analyzed, even in embedded systems with limited storage space. The memory requirements of the buffer memory can be managed statically, meaning no dynamic memory allocation is necessary. Rather, the memory required for the buffer memory can be precisely predicted, which is particularly advantageous for embedded systems.
Vorteilhaft ist es, wenn die eingelesene Ereignisinformation aus einem weiteren Pufferspeicher des Speichersystems eingelesen wird, wobei die eingelesene Ereignisinformation eine, insbesondere die älteste, in dem weiteren Pufferspeicher gespeicherte Ereignisinformation ist. Denkbar ist auch, dass die eingelesene Ereignisinformation die zweiälteste oder drittälteste etc. in dem weiteren Pufferspeicher gespeicherte Ereignisinformation ist. Gemäß dieser Ausführungsform umfasst das Speichersystem der Recheneinheit den Pufferspeicher und den weiteren Pufferspeicher. Das Speichersystem kann also als ein zumindest zweistufiges System von Pufferspeichern verstanden werden. Hierbei ist eine in dem Pufferspeicher zu speichernde bzw. gespeicherte Ereignisinformation eine zuvor in dem weiteren Pufferspeicher gespeicherte Ereignisinformation. Somit kann der weitere Pufferspeicher als erster Pufferspeicher bzw. als eine erste Speicherstufe des Speichersystems und der Pufferspeicher als zweiter Pufferspeicher bzw. als eine zweite Speicherstufe des Speichersystems verstanden werden.It is advantageous if the read-in event information is read from a further buffer memory of the storage system, wherein the read-in event information is one, in particular the oldest, item of event information stored in the further buffer memory. It is also conceivable for the read-in event information to be the second oldest or third oldest, etc., item of event information stored in the further buffer memory. According to this embodiment, the memory system of the computing unit comprises the buffer memory and the further buffer memory. The memory system can therefore be understood as an at least two-stage system of buffer memories. In this case, an item of event information to be stored or stored in the buffer memory is event information previously stored in the further buffer memory. Thus, the further buffer memory can be understood as the first buffer memory or as a first storage stage of the storage system, and the buffer memory can be understood as the second buffer memory or as a second storage stage of the storage system.
Bevorzugt ist der weitere Pufferspeicher als FIFO-Pufferspeicher bzw. FIFO-Buffer (englisch: „First In First Out“) ausgebildet. Das heißt, mit anderen Worten, der FIFO-Pufferspeicher ist ausgebildet, die gespeicherten Daten, insbesondere die gespeicherten Ereignisinformationen, chronologisch zu speichern bzw. abzulegen. Hierbei ist der FIFO-Pufferspeicher ausgebildet, stets die älteste Ereignisinformation zu löschen, wenn in dem weiteren Pufferspeicher kein Speicherplatz zum Speichern einer zu speichernden Ereignisinformation mehr verfügbar ist. Durch diese Ausgestaltung werden zumindest die N jüngsten Ereignisinformationen unabhängig von der Ursache des jeweiligen Ereignisses chronologisch korrekt gespeichert, wobei N die Anzahl der in dem weiteren Pufferspeicher speicherbaren Ereignisinformationen repräsentiert. Dadurch sind die N zuletzt aufgetretenen Ereignisse und deren Ursache jederzeit auslesbar.Preferably, the additional buffer memory is configured as a FIFO buffer memory or FIFO buffer (English: "First In First Out"). In other words, the FIFO buffer memory is configured to store or save the stored data, in particular the stored event information, chronologically. The FIFO buffer memory is configured to always delete the oldest event information when there is no more storage space available in the additional buffer memory for storing the event information to be stored. This configuration ensures that at least the N most recent event information items are stored chronologically correctly, regardless of the cause of the respective event, where N represents the number of event information items that can be stored in the additional buffer memory. As a result, the N most recently occurred events and their cause can be read out at any time.
Vorteilhaft ist es hierbei, wenn dem Schritt des Ermittelns der Anzahl ein Schritt des Einlesens einer in dem weiteren Pufferspeicher zu speichernden weiteren Ereignisinformation bezüglich eines weiteren Ereignisses der Recheneinheit und/oder der weiteren Recheneinheit vorausgeht, wobei die weitere Ereignisinformation eine Ursache für das weitere Ereignis umfasst, und
- - dem Schritt des Speicherns der eingelesenen Ereignisinformation in dem Pufferspeicher ein Schritt des Löschens der, insbesondere ältesten, in dem weiteren Pufferspeicher gespeicherten Ereignisinformation und ein Schritt des Speicherns der eingelesenen weiteren Ereignisinformation in dem weiteren Pufferspeicher nachfolgen.
- - the step of storing the read-in event information in the buffer memory is followed by a step of deleting the, in particular the oldest, event information stored in the further buffer memory and a step of storing the read-in further event information in the further buffer memory.
Hierbei ist die aus dem weiteren Pufferspeicher gelöschte Ereignisinformation die in den Pufferspeicher gespeicherte Ereignisinformation. Insbesondere kann der Schritt des Ermittelns der Anzahl ansprechend bzw. in Reaktion auf das Einlesen der in dem weiteren Pufferspeicher zu speichernden weiteren Ereignisinformation erfolgen. Das heißt, mit anderen Worten, das Verfahren umfasst einen Schritt des Verschiebens der ältesten Ereignisinformation aus dem weiteren Pufferspeicher in den Pufferspeicher, um in dem weiteren Pufferspeicher Speicherplatzplatz für zu die speichernde weitere Ereignisinformation verfügbar zu machen. Durch diese Ausgestaltung können der Pufferspeicher und der weitere Pufferspeicher zusammen zur Speicherung von Ereignisinformationen verwendet werden, wobei die Ereignisinformationen unabhängig von der Ursache der jeweiligen Ereignisse zunächst chronologisch in dem weiteren Pufferspeicher gespeichert und erst dann in den Pufferspeicher verschoben werden, wenn in dem weiteren Pufferspeicher kein Speicherplatz zum Speichern einer weiteren Ereignisinformation verfügbar ist.Here, the event information deleted from the further buffer memory is the event information stored in the buffer memory. In particular, the step of determining the number can be carried out in response to the reading of the further event information to be stored in the further buffer memory. In other words, the method comprises a step of moving the oldest event information from the further buffer memory into the buffer memory in order to make storage space available in the further buffer memory for the further event information to be stored. Through this embodiment, the buffer memory and the further buffer memory can be used together to store event information, wherein the event information, regardless of the cause of the respective events, is initially stored chronologically in the additional buffer memory and only moved to the buffer memory when there is no storage space available in the additional buffer memory to store further event information.
Vorteilhaft ist es auch, wenn der und/oder der weiteren Ereignisinformation ein Datensatz zugeordnet ist, wobei der Datensatz beim Auftreten des und/oder des weiteren Ereignisses vorliegende Daten und/oder ergänzende Informationen bezüglich der Ursache für das bzw. das weitere Ereignis umfasst und zusammen mit der und/oder der weiteren Ereignisinformation in dem jeweiligen Pufferspeicher gespeichert wird.It is also advantageous if a data record is assigned to the and/or the further event information, wherein the data record comprises data present at the time of occurrence of the and/or the further event and/or additional information regarding the cause of the or the further event and is stored together with the and/or the further event information in the respective buffer memory.
Die beim Auftreten bzw. zum Zeitpunkt des Auftretens des und/oder des weiteren Ereignisses vorliegenden Daten können Daten der Recheneinheit und/oder einer die Recheneinheit umfassenden Vorrichtung, bspw. eines Fahrzeugs, sein. Die Daten können als Umgebungsdaten ausgebildet sein. Bspw. können die Daten ein oder mehrere Elemente umfassen, welche ausgewählt sind aus der Gruppe: Datum, Uhrzeit, Kilometerstand eines die Recheneinheit umfassenden Fahrzeugs, ein Wert einer Versorgungsspannung der Recheneinheit, eine Uptime der Recheneinheit, ein Power Cycle Counter, ein genereller bzw. allgemeiner Ereigniszähler und/oder ein spezifischer bzw. ursachenindividueller Ereigniszähler (ein eigener Zähler pro Ursache für das Ereignis, der beim Auftreten des Ereignisses um eins erhöht wird). Hierbei kann unter einem Power Cycle Counter ein Zähler verstanden werden, welche eine Anzahl von Powerzyklen der Recheneinheit repräsentiert. Da kann die Anzahl sein, wie oft das Steuergerät eingeschaltet und gelaufen ist oder auch z.B. die Anzahl der Aktivierungen einer Zündung eines die Recheneinheit umfassenden Fahrzeugs.The data available at the occurrence or time of the occurrence of the and/or further event can be data from the computing unit and/or a device comprising the computing unit, e.g., a vehicle. The data can be in the form of environmental data. For example, the data can comprise one or more elements selected from the group: date, time, mileage of a vehicle comprising the computing unit, a supply voltage value of the computing unit, an uptime of the computing unit, a power cycle counter, a general or generic event counter, and/or a specific or cause-specific event counter (a separate counter for each cause of the event, which is incremented by one when the event occurs). A power cycle counter can be understood as a counter that represents the number of power cycles of the computing unit. This can be the number of times the control unit has been switched on and run, or, for example, the number of times an ignition has been activated in a vehicle comprising the computing unit.
Die ergänzenden Informationen bezüglich der Ursache für das bzw. das weitere Ereignis können Informationen umfassen, welche die Ursache näher spezifizieren bzw. detaillieren. Denkbar ist, dass nur für eine oder mehrere einer Vielzahl von Ursachen für die Ereignisse ergänzende Informationen bezüglich der Ursache vorliegen bzw. bereitgestellt werden können.The additional information regarding the cause of the event(s) may include information that further specifies or details the cause. It is conceivable that additional information regarding the cause is available or can be provided only for one or more of a multitude of causes for the events.
Die Daten und/oder die ergänzenden Informationen können von einer weiteren Einheit der Recheneinheit, bspw. einem Register eines Mikrocontrollers der Recheneinheit, und/oder einer Einheit einer die Recheneinheit umfassenden Vorrichtung, bspw. einer von der Vorrichtung umfassen Sensoreinheit, und/oder einer relativ zu der Recheneinheit und/oder der Vorrichtung externen Einheit bereitgestellt werden. Bspw. können die Daten und/oder die ergänzenden Informationen über eine drahtlose oder drahtgebundene Kommunikationsverbindung, bspw. über eine CAN-, Ethernet-, Wifi- oder Mobilfunkverbindung, bereitgestellt werden.The data and/or the supplementary information can be provided by another unit of the computing unit, e.g., a register of a microcontroller of the computing unit, and/or a unit of a device comprising the computing unit, e.g., a sensor unit comprised by the device, and/or a unit external to the computing unit and/or the device. For example, the data and/or the supplementary information can be provided via a wireless or wired communication connection, e.g., via a CAN, Ethernet, Wi-Fi, or mobile network connection.
Durch diese Ausgestaltung können eine Analyse der Ereignisse bzw. eine Diagnose der Recheneinheit weiter detailliert und die Ursachen für das Auftreten bestimmter Ereignisse besser verstanden werden.This design allows for a more detailed analysis of the events or a diagnosis of the computing unit and for a better understanding of the causes for the occurrence of certain events.
Alternativ ist es vorteilhaft, wenn der und/oder der weiteren Ereignisinformation ein Datensatz zugeordnet ist, wobei der Datensatz beim Auftreten des und/oder des weiteren Ereignisses vorliegende Daten und/oder ergänzende Informationen bezüglich der Ursache für das bzw. das weitere Ereignis umfasst und in einem zusätzlichen Pufferspeicher des Speichersystems gespeichert wird, wobei die und/oder die weitere gespeicherte Ereignisinformation eine auf den gespeicherten Datensatz verweisende Größe umfasst. Die auf den gespeicherten Datensatz verweisende Größe kann als eine Referenz, bspw. als ein Index oder ein Pointer bzw. Zeiger, ausgebildet sein. Durch das Vorsehen eines zusätzlichen Pufferspeichers zum Speichern des Datensatzes besteht die Möglichkeit, sämtliche auftretende Ursachen inklusive der ergänzenden Informationen in dem Speichersystem der Recheneinheit zu speichern, sodass auch Ursachen gespeichert und ausgelesen werden können, welche eigentlich nie hätte auftreten sollen bzw. mit denen zur Entwicklungszeit der Recheneinheit nicht gerechnet wurde, das heißt, die a priori unbekannt waren bzw. wider Erwarten auftreten. Durch diese Ausgestaltung können die von dem Datensatz umfassten Daten und/oder Informationen ergänzend gespeichert werden, ohne den Pufferspeicher und/oder den weiteren Pufferspeicher um entsprechenden Speicherplatz erweitern zu müssen.Alternatively, it is advantageous if a data record is assigned to the and/or the further event information, wherein the data record comprises data present at the time of occurrence of the and/or the further event and/or additional information regarding the cause of the or the further event and is stored in an additional buffer memory of the memory system, wherein the and/or the further stored event information comprises a variable referring to the stored data record. The variable referring to the stored data record can be designed as a reference, e.g. as an index or a pointer. By providing an additional buffer memory for storing the data record, it is possible to store all occurring causes, including the additional information, in the memory system of the computing unit, so that even causes can be stored and read out that should never have occurred or that were not anticipated at the time of development of the computing unit, i.e. that were unknown a priori or occur contrary to expectations. This configuration allows the data and/or information comprised in the data set to be stored additionally without having to expand the buffer memory and/or the additional buffer memory by the corresponding storage space.
Vorteilhaft ist es des Weiteren, wenn das Verfahren einen Schritt des Ermittelns von in dem Pufferspeicher zum Speichern der eingelesenen Ereignisinformation verfügbarem Speicherplatz aufweist, wobei
- - die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen mit derselben Ursache wie die eingelesene Ereignisinformation nur dann ermittelt wird, wenn in dem Pufferspeicher kein Speicherplatz zum Speichern der eingelesenen Ereignisinformation verfügbar ist, ansonsten
- - die eingelesene Ereignisinformation in dem verfügbaren Speicherplatz des Pufferspeichers gespeichert wird.
- - the number of event information stored in the buffer memory with the same cause as the read-in event information is only determined if there is no storage space available in the buffer memory to store the read-in event information, otherwise
- - the read event information is stored in the available memory space of the buffer memory.
Gemäß dieser Ausführungsform wird also die eingelesene Ereignisinformation ohne Ermitteln der Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen mit derselben Ursache wie die eingelesene Ereignisinformation in den Pufferspeicher gespeichert, solange in dem Pufferspeicher genügend Speicherplatz zum Speichern der eingelesenen Ereignisinformation verfügbar bzw. frei ist. Durch diese Ausgestaltung kann bei verfügbarem Speicherplatz in dem Pufferspeicher auf den Schritt des Ermittelns der Anzahl verzichtet werden, wodurch das Verfahren beschleunigt und der verfügbare Speicherplatz zum Speichern der Ereignisinformationen voll ausgenutzt werden kann.According to this embodiment, the read event information is thus read without determining the number of event information stored in the buffer memory with the same cause as The read-in event information is stored in the buffer memory as long as there is sufficient memory space available or free in the buffer memory to store the read-in event information. This configuration allows the step of determining the number to be omitted if memory space is available in the buffer memory, thereby accelerating the method and allowing the available memory space for storing the event information to be fully utilized.
Vorteilhaft ist es außerdem, wenn im Schritt des Ermittelns der Anzahl zunächst ermittelt wird, ob für ein oder mehrere Ursachen die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen größer als der definierte Schwellenwert ist, wobei
- - die Anzahl von in dem Pufferspeicher gespeicherten Ereignisinformationen, welche dieselbe Ursache für das jeweilige Ereignis aufweisen wie die eingelesene Ereignisinformation, nur dann ermittelt wird, wenn für keine der Ursachen die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen größer als der definierte Schwellenwert ist, und
- - die älteste Ereignisinformation aus dem Pufferspeicher gelöscht wird, für deren Ursache die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen größer als der definierte Schwellenwert ist.
- - the number of event information items stored in the buffer memory which have the same cause for the respective event as the read-in event information is only determined if the number of event information items stored in the buffer memory is not greater than the defined threshold value for any of the causes, and
- - the oldest event information is deleted from the buffer memory, for which reason the number of event information stored in the buffer memory is greater than the defined threshold.
Das heißt, mit anderen Worten, zum Ermitteln der aus dem Pufferspeicher zu löschenden Ereignisinformation wird zunächst überprüft, ob für ein oder mehrere Ursachen die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen größer als der, ggf. ursachenspezifische, definierte Schwellenwert ist. Wenn für ein oder mehrere Ursachen die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen größer als der definierte Schwellenwert ist, wird die älteste Ereignisinformation aus dem Pufferspeicher gelöscht, für deren Ursache die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen größer als der definierte Schwellenwert ist.In other words, to determine the event information to be deleted from the buffer memory, a check is first made to determine whether the number of event information items stored in the buffer memory for one or more causes is greater than the defined threshold, possibly specific to the cause. If the number of event information items stored in the buffer memory is greater than the defined threshold for one or more causes, the oldest event information item for which the number of event information items stored in the buffer memory is greater than the defined threshold is deleted from the buffer memory.
Wenn für keine der Ursachen die Anzahl der in dem Pufferspeicher gespeicherten Ereignisinformationen größer als der definierte Schwellenwert ist, wird die Anzahl von in dem Pufferspeicher gespeicherten Ereignisinformationen, welche dieselbe Ursache für das jeweilige Ereignis aufweisen wie die eingelesene Ereignisinformation, ermittelt. Hierbei wird die älteste Ereignisinformation mit derselben Ursache aus dem Pufferspeicher gelöscht, wenn die ermittelte Anzahl gleich dem definierten Schwellenwert ist. Wenn die ermittelte Anzahl kleiner als der definierte Schwellenwert ist, wird die älteste Ereignisinformation aus dem Pufferspeicher gelöscht.If the number of event information items stored in the buffer memory is not greater than the defined threshold for any of the causes, the number of event information items stored in the buffer memory that have the same cause for the respective event as the read-in event information is determined. The oldest event information item with the same cause is deleted from the buffer memory if the determined number is equal to the defined threshold. If the determined number is less than the defined threshold, the oldest event information item is deleted from the buffer memory.
Durch diese Ausgestaltung werden zunächst diejenigen Ereignisinformationen gelöscht, deren Anzahl den definierten Schwellenwert überschreiten. Bspw. können bei verfügbarem Speicherplatz im Pufferspeicher zunächst eine Anzahl von Ereignisinformationen mit derselben Ursache gespeichert werden, die größer ist als der definierte Schwellenwert. Erst wenn kein Speicherplatz zum Speichern einer eingelesenen Ereignisinformation in dem Pufferspeicher mehr verfügbar ist, wird die älteste dieser Ereignisinformationen gelöscht. Dadurch ist sichergestellt, dass trotz des zwischenzeitlichen Speicherns von einer Anzahl von Ereignisinformationen mit derselben Ursache, welche größer als der definierte Schwellenwert ist, keine Ereignisinformationen mit gleicher Ursache gelöscht werden, deren Anzahl kleiner oder gleich dem Schwellenwert ist.This configuration ensures that those event information items whose number exceeds the defined threshold are deleted first. For example, if there is available storage space in the buffer memory, a number of event information items with the same cause that is greater than the defined threshold can initially be stored. Only when there is no more storage space available in the buffer memory to store a read-in event information item is the oldest of these event information items deleted. This ensures that, despite the interim storage of a number of event information items with the same cause that is greater than the defined threshold, no event information items with the same cause that are less than or equal to the threshold are deleted.
Vorteilhaft ist es darüber hinaus, wenn das Verfahren einen Schritt des Auslesens der gespeicherten Ereignisinformationen aus zumindest einem der Pufferspeicher, bevorzugt aus dem Pufferspeicher, dem weiteren Pufferspeicher und dem zusätzlichen Pufferspeicher, des Speichersystems aufweist. Im Schritt des Auslesens können ferner ein oder mehrere, den gespeicherten Ereignisinformationen zugeordnete Datensätze ausgelesen werden, welche beim Auftreten der Ereignisse vorliegende Daten und/oder ergänzende Informationen bezüglich der Ursache für die Ereignisse umfassen. Dem Schritt des Auslesens kann ein Schritt einer auf den ausgelesenen Ereignisinformationen basierenden Analyse bzw. Diagnose der Recheneinheit hinsichtlich des Auftretens der Ereignisse und deren Ursachen erfolgen. Ferner kann das Verfahren einen Schritt des Anpassens eines Software- und/oder Hardwaremoduls der Recheneinheit basierend auf den ausgelesenen Ereignisinformationen umfassen. Durch diese Ausgestaltung kann die Recheneinheit besonders zuverlässig analysiert und auch selten und/oder unerwartet auftretende Ereignisse diagnostiziert werden, um Software und/oder Hardware der Recheneinheit geeignet zu modifizieren.It is further advantageous if the method comprises a step of reading out the stored event information from at least one of the buffer memories, preferably from the buffer memory, the further buffer memory, and the additional buffer memory, of the storage system. In the reading out step, one or more data records associated with the stored event information can be read out, which records comprise data present at the time the events occurred and/or additional information regarding the cause of the events. The reading out step can be followed by a step of analyzing or diagnosing the computing unit with regard to the occurrence of the events and their causes based on the read out event information. Furthermore, the method can comprise a step of adapting a software and/or hardware module of the computing unit based on the read out event information. This embodiment allows the computing unit to be analyzed particularly reliably, and even rare and/or unexpectedly occurring events can be diagnosed in order to appropriately modify the software and/or hardware of the computing unit.
Vorteilhaft ist es ferner, wenn das Verfahren einen Schritt des Speicherns einer der und/oder der weiteren Ereignisinformation zugeordneten Zählerstandsinformation bezüglich einer Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit und/oder einer Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit mit einer definierten Ursache für das Ereignis in einem weiteren Speicherbereich des Speichersystems aufweist, wobei
- - im Schritt des Auslesens ferner die gespeicherte(n) Zählerstandsinformation(en) aus dem weiteren Speicherbereich ausgelesen werden und
- - für die ausgelesenen Ereignisinformationen basierend auf der/den ausgelesenen Zählerstandsinformation(en) jeweils ein Zählerstand ermittelt wird.
- - in the reading step, the stored meter reading information is read from the further memory area and
- - a meter reading is determined for each of the read event information based on the meter reading information(s) read.
Die Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit mit einer definierten Ursache für das Ereignis kann eine Gesamtzahl von Ereignissen der und/oder der weiteren Recheneinheit mit einer einzigen definierten Ursache oder eine Gesamtzahl von Ereignissen der und/oder der weiteren Recheneinheit mit einer definierten Gruppe von Ursachen sein. Denkbar ist, dass die Gesamtzahl von Ereignissen der und/oder der weiteren Recheneinheit eine Gesamtzahl von bewusst herbeigeführten Ereignissen bzw. Ursachen ist. Alternativ ist denkbar, dass die Gesamtzahl von Ereignissen der und/oder der weiteren Recheneinheit eine Gesamtzahl von Ereignissen ausgenommen von bewusst herbeigeführten Ereignissen bzw. Ursachen ist. Die Zählerstandsinformation kann einen Zähler bzw. Counter umfassen, welcher eine Gesamtzahl von Ereignissen der und/oder der weiteren Recheneinheit und/oder einer Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit mit einer definierten Ursache für das Ereignis repräsentiert.The total number of events of the and/or the further computing unit with a defined cause for the event can be a total number of events of the and/or the further computing unit with a single defined cause or a total number of events of the and/or the further computing unit with a defined group of causes. It is conceivable that the total number of events of the and/or the further computing unit is a total number of deliberately caused events or causes. Alternatively, it is conceivable that the total number of events of the and/or the further computing unit is a total number of events excluding deliberately caused events or causes. The counter reading information can comprise a counter which represents a total number of events of the and/or the further computing unit and/or a total number of events of the and/or the further computing unit with a defined cause for the event.
Bevorzugt wird im Schritt des Speicherns der Zählerstandsinformation eine bereits in dem weiteren Speicherbereich des Speichersystems gespeicherte bzw. vorhandene Zählerstandsinformation überschrieben. Im Schritt des Auslesens kann der jüngsten Ereignisinformation die ausgelesene Zählerstandsinformation bezüglich der Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit zugeordnet werden. Weiter kann der jüngsten Ereignisinformation mit einer definierten bestimmten Ursache die ausgelesene Zählerstandsinformation bezüglich der Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit mit dieser definierten Ursache zugeordnet werden.Preferably, in the step of storing the meter reading information, meter reading information already stored or present in the further memory area of the storage system is overwritten. In the step of reading, the read meter reading information regarding the total number of events of the and/or the further computing unit can be assigned to the most recent event information. Furthermore, the read meter reading information regarding the total number of events of the and/or the further computing unit with this defined cause can be assigned to the most recent event information with a defined, specific cause.
Für ausgelesene ältere Ereignisinformationen kann der zu ermittelnde bzw. zuzuordnende Zählerstand basierend auf der ausgelesenen Zählerstandsinformation ermittelt bzw. zugeordnet werden, insbesondere indem der von der Zählerstandsinformation repräsentierte entsprechende Zähler dekrementiert wird. Der ermittelte bzw. zugeordnete Zähler repräsentiert hierbei eine Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit und/oder eine Gesamtanzahl von Ereignissen der und/oder der weiteren Recheneinheit mit einer definierten Ursache zum Zeitpunkt des Auftretens des Ereignisses. Durch diese Ausgestaltung können der Speicherbedarf des Pufferspeichers weiter reduziert und zusätzlich der Speicherbedarf zum Vorhalten der Zählerstandsinformation in dem weiteren Speicherbereich des Speichersystems minimiert werden.For read-out older event information, the counter reading to be determined or assigned can be determined or assigned based on the read-out counter reading information, in particular by decrementing the corresponding counter represented by the counter reading information. The determined or assigned counter represents a total number of events of the and/or the further computing unit and/or a total number of events of the and/or the further computing unit with a defined cause at the time the event occurred. This configuration allows the storage requirements of the buffer memory to be further reduced and, in addition, the storage requirements for storing the counter reading information in the further memory area of the storage system to be minimized.
Von Vorteil ist es, wenn das Speichersystem der Recheneinheit zusätzlich zu dem Pufferspeicher einen weiteren Pufferspeicher umfasst. Der weitere Pufferspeicher ist eingerichtet, Ereignisinformationen bezüglich Ereignissen der und/oder der weiteren Recheneinheit zu speichern, wobei die Ereignisinformationen jeweils eine Ursache für das Ereignis umfassen. Bevorzugt ist der Pufferspeicher eingerichtet, zuvor in dem weiteren Pufferspeicher gespeicherte Ereignisinformationen zu speichern. Das Speichersystem kann also als ein zumindest zweistufiges System von Pufferspeichern verstanden werden. Der weitere Pufferspeicher ist bevorzugt als FIFO-Pufferspeicher ausgebildet. Durch diese Ausgestaltung kann ein zweistufiger Reset-History-Buffer bereitgestellt werden. Dies ermöglicht zumindest die N jüngsten Ereignisinformationen unabhängig von der Ursache des jeweiligen Ereignisses zu speichern, wobei N die Anzahl der in dem weiteren Pufferspeicher speicherbaren Ereignisinformationen repräsentiert. Dadurch sind die N zuletzt aufgetretenen Ereignisse und deren Ursache jederzeit auslesbar.It is advantageous if the memory system of the computing unit comprises a further buffer memory in addition to the buffer memory. The further buffer memory is configured to store event information relating to events of the and/or the further computing unit, wherein the event information each includes a cause for the event. The buffer memory is preferably configured to store event information previously stored in the further buffer memory. The memory system can therefore be understood as an at least two-stage system of buffer memories. The further buffer memory is preferably designed as a FIFO buffer memory. This configuration makes it possible to provide a two-stage reset history buffer. This makes it possible to store at least the N most recent event information items, regardless of the cause of the respective event, where N represents the number of event information items that can be stored in the further buffer memory. As a result, the N most recently occurring events and their cause can be read out at any time.
Von Vorteil ist es auch, wenn das Speichersystem der Recheneinheit ferner einen zusätzlichen Pufferspeicher umfasst, welcher eingerichtet ist, einen Datensatz mit beim Auftreten der Ereignisinformationen vorliegenden Daten und/oder ergänzenden Informationen bezüglich der Ursache für die Ereignisinformationen zu speichern. Durch diese Ausgestaltung können die von dem Datensatz umfassten Daten und/oder Informationen ergänzend gespeichert werden, ohne den Pufferspeicher und/oder den weiteren Pufferspeicher um entsprechenden Speicherplatz erweitern zu müssen.It is also advantageous if the memory system of the computing unit further comprises an additional buffer memory configured to store a data set with data present at the time the event information occurred and/or additional information regarding the cause of the event information. This configuration allows the data and/or information contained in the data set to be additionally stored without having to expand the buffer memory and/or the additional buffer memory by the corresponding storage space.
Ausführungsbeispiele der vorstehend und nachfolgend beschriebenen Erfindung können in Hardware und/oder in Software implementiert sein. Die Implementierung kann unter Verwendung eines digitalen Speichermediums, beispielsweise einer eines (E)EPROM, eines FLASH-Speichers, einer Festplatte oder eines anderen magnetischen oder optischen Speichers durchgeführt werden, auf dem elektronisch lesbare Steuersignale gespeichert sind, die mit einer programmierbaren Hardwarekomponente, insbesondere einer programmierbaren Logikkomponente, derart zusammenwirken können oder zusammenwirken, dass das jeweilige Verfahren oder einzelne Schritte davon durchgeführt werden.Embodiments of the invention described above and below can be implemented in hardware and/or software. The implementation can be carried out using a digital storage medium, for example an (E)EPROM, a FLASH memory, a hard disk, or another magnetic or optical memory on which electronically readable control signals are stored that can interact or interact with a programmable hardware component, in particular a programmable logic component, in such a way that the respective method or individual steps thereof are carried out.
Gemäß einer Ausführungsform umfasst die Recheneinheit eine programmierbare Hardwarekomponente, insbesondere eine programmierbare Logikkomponente, oder ist als diese ausgebildet.According to one embodiment, the computing unit comprises a programmable hardware component, in particular a programmable logic component, or is designed as such.
Eine programmierbare Hardwarekomponente kann durch einen Prozessor, einen Computerprozessor (CPU = Central Processing Unit), einen Grafikprozessor (GPU = Graphics Processing Unit), einen Computer, ein Computersystem, einen anwendungsspezifischen integrierten Schaltkreis (ASIC = Application-Specific Integrated Circuit), einen integrierten Schaltkreis (IC = Integrated Circuit), ein Ein-Chip-System (SOC = System an Chip), ein programmierbares Logikelement, ein feldprogrammierbares Gatterarray mit einem Mikroprozessor (FPGA = Field Programmable Gate Array) oder ein komplex programmierbarer Logikbaustein (CPLD = Complex Programmable Logic Device) gebildet sein.A programmable hardware component can be formed by a processor, a computer processor (CPU = Central Processing Unit), a graphics processor (GPU = Graphics Processing Unit), a computer, a computer system, an application-specific integrated circuit (ASIC = Application-Specific Integrated Circuit), an integrated circuit (IC = Integrated Circuit), a system on a chip (SOC = System on Chip), a programmable logic element, a field-programmable gate array with a microprocessor (FPGA = Field Programmable Gate Array) or a complex programmable logic device (CPLD = Complex Programmable Logic Device).
Von Vorteil ist auch ein Computerprogrammprodukt oder Computerprogramm mit Programmcode, der auf einem maschinenlesbaren Träger oder Speichermedium wie einem Halbleiterspeicher, einem Festplattenspeicher oder einem optischen Speicher gespeichert sein kann und zur Durchführung, Umsetzung und/oder Ansteuerung der Schritte des Verfahrens nach einer der vorstehend beschriebenen Ausführungsformen verwendet wird, insbesondere wenn das Programmprodukt oder Programm auf einem Computer bzw. einer Recheneinheit ausgeführt wird.Also advantageous is a computer program product or computer program with program code that can be stored on a machine-readable carrier or storage medium such as a semiconductor memory, a hard disk memory or an optical memory and is used to carry out, implement and/or control the steps of the method according to one of the embodiments described above, in particular when the program product or program is executed on a computer or a computing unit.
Im Folgenden soll die Erfindung anhand der Zeichnungen näher erläutert werden.In the following, the invention will be explained in more detail with reference to the drawings.
Dazu zeigen
-
1 eine schematische Darstellung einer Recheneinheit gemäß einer Ausführungsform; und -
2 ein Ablaufdiagramm eines Verfahrens zum Speichern einer Ereignisinformation bezüglich eines Ereignisses einer Recheneinheit gemäß einer Ausführungsform.
-
1 a schematic representation of a computing unit according to an embodiment; and -
2 a flowchart of a method for storing event information relating to an event of a computing unit according to one embodiment.
Die Recheneinheit 10 ist bspw. als ein, insbesondere eingebettetes Steuergerät 10 eines Fahrzeugs ausgebildet. Die Recheneinheit 10 ist eingerichtet, eine in dem ersten Pufferspeicher 14 zu speichernde Ereignisinformation bezüglich eines Ereignisses der Recheneinheit 10 und/oder einer weiteren Recheneinheit, bspw. eines weiteren Steuergeräts oder einer Sensoreinheit des Fahrzeugs, einzulesen. Hierbei umfasst die eingelesene Ereignisinformation eine Ursache für das Ereignis.The
Weiter ist die Recheneinheit 10 eingerichtet, einen in dem ersten Pufferspeicher 14 zum Speichern der eingelesenen Ereignisinformation verfügbaren Speicherplatz zu ermitteln. Hierbei ist die Recheneinheit 10 eingerichtet, die eingelesene Ereignisinformation in dem verfügbaren Speicherplatz des ersten Pufferspeichers 14 zu speichern, wenn in dem ersten Pufferspeicher 14 genügend Speicherplatz zum Speichern der eingelesenen Ereignisinformation verfügbar ist.Furthermore, the
Zudem ist die Recheneinheit 10 eingerichtet, eine Anzahl von in dem zweiten Pufferspeicher 16 gespeicherten Ereignisinformationen zu ermitteln, welche dieselbe Ursache für das jeweilige Ereignis aufweisen wie die älteste in dem ersten Pufferspeicher 14 gespeicherte Ereignisinformation.In addition, the
Außerdem ist die Recheneinheit 10 eingerichtet, die älteste Ereignisinformation mit derselben Ursache aus dem zweiten Pufferspeicher 16 zu löschen, wenn die ermittelte Anzahl größer oder gleich einem definierten Schwellenwert ist, und alternativ - das heißt, wenn die ermittelte Anzahl kleiner als der definierte Schwellenwert ist - die älteste Ereignisinformation aus dem zweiten Pufferspeicher 16 zu löschen. Hierbei können die Ursachen für das von der ältesten Ereignisinformation umfasste Ereignis im ersten Pufferspeicher 14 und für das von der ältesten Ereignisinformation umfasste Ereignis im zweiten Pufferspeicher 16 voneinander verschieden sein.In addition, the
Darüber hinaus ist die Recheneinheit 10 eingerichtet, die älteste Ereignisinformation aus dem ersten Pufferspeicher 14 in dem zweiten Pufferspeicher 16 zu speichern. Des Weiteren ist die Recheneinheit 10 eingerichtet, die älteste Ereignisinformation aus dem ersten Pufferspeicher 14 zu löschen. Ferner ist die Recheneinheit 10 eingerichtet, die eingelesene Ereignisinformation in dem ersten Pufferspeicher 14 zu speichern.Furthermore, the
Gemäß dieser Ausführungsform ist der erste Pufferspeicher 14 als FIFO (englisch: „First In First Out“)-Buffer 14 ausgebildet. Hierbei kann der erste Pufferspeicher 14 als eine erste Speicherstufe 14 des Speichersystems 12 und der zweite Pufferspeicher 16 als eine zweite Speicherstufe 16 des Speichersystems 12 verstanden werden. Der dritte Pufferspeicher 18 kann als eine der ersten und zweiten Speicherstufe 14, 16 nebengeordnete Speicherstufe 18 verstanden werden.According to this embodiment, the
Die in dem ersten Pufferspeicher 14 und dem zweiten Pufferspeicher 16 gespeicherten Ereignisinformationen sind chronologisch gespeichert. Hierbei ist die jüngste in dem zweiten Pufferspeicher 16 gespeicherte Ereignisinformation älter als die älteste in dem ersten Pufferspeicher 14 gespeicherte Ereignisinformation. Jede in dem zweiten Pufferspeicher 16 gespeicherte Ereignisinformation ist eine zuvor in dem ersten Pufferspeicher 14 gespeicherte Ereignisinformation.The event information stored in the
Vorliegend wird das Speichersystem 12 zum Speichern von Reset- bzw. Neustart-Ereignissen der Recheneinheit 10 verwendet. Das heißt, mit anderen Worten, gemäß dieser Ausführungsform wird ein mehrstufiger Reset-History-Buffer zum Abspeichern bzw. Speichern von Reset-Gründen beschrieben, welche insbesondere auf eingebetteten Systemen 10 wie bspw. einem Automotive Steuergerät 10 auftreten. Hierzu können mittels des Reset-History-Buffers Reset-Ereignisse, zusammen mit weiteren relevanten Daten, in den Pufferspeichern 14, 16, 18 des Speichersystems 12 gespeichert werden. Die gespeicherten Informationen können anschließend bspw. bei Problemen im Feld oder auch bei einer Rückläuferanalyse ausgelesen werden.In the present case, the
Gemäß dem vorgeschlagenen Ansatz kann beim Auftreten eines Reset-Ereignisses das Reset-Ereignis bzw. eine das Reset-Ereignis repräsentierende Ereignisinformation dem ersten Pufferspeicher 14 hinzugefügt werden (Pfeil 20 in
Weiterhin können zusätzlich ein oder mehrere Datensätze mit abgelegt bzw. gespeichert werden, welche Zusatzinformationen zum Auftreten des Reset-Ereignisses beinhalten. Diese Zusatzinformationen können beim Auftreten des Reset-Ereignisses bzw. zum Zeitpunkt des Auftretens des Reset-Ereignisses vorliegende Daten wie beispielsweise Datum, Uhrzeit, Kilometerstand eines die Recheneinheit 10 umfassenden Fahrzeugs, ein Wert einer Versorgungsspannung der Recheneinheit 10, Uptime der Recheneinheit 10, Power Cycle Counter, ein genereller bzw. allgemeiner Reset Counter (dieser Zähler wird um 1 erhöht bei jedem ungewollten Reset) und/oder ein spezifischer Reset Counter per Reset (ein eigener Zähler pro Reset-Grund, der beim Auftreten des Resets um 1 erhöht wird) umfassen. Die Datensätze mit den Zusatzinformationen werden in der Spalte „Info+“ des ersten Pufferspeichers 14 und entsprechend in der Spalte „Info+“ des zweiten Pufferspeichers 16 gespeichert.Furthermore, one or more data records can also be filed or saved, which contain additional information about the occurrence of the reset event. This additional information can include data present at the time of the reset event or at the time the reset event occurred, such as the date, time, mileage of a vehicle containing the
Denkbar ist, dass ein oder mehrere dieser Zusatzinformationen, bspw. Datum und/oder Uhrzeit, zum Zeitpunkt des Reset-Ereignisses nicht verfügbar sind, bspw. da diese über eine Schnittstelle wie einen CAN-Bus noch nicht empfangen wurde(n). Bevorzugt werden diese zunächst fehlenden Informationen nach dem Reset der Recheneinheit 10 nachgereicht und in dem ersten Pufferspeicher 14 eingefügt bzw. gespeichert. Falls auch dies nicht möglich sein sollte, kann nach einer konfigurierbaren Timeout-Zeit ein Default-Wert für die fehlende Information eingetragen werden.It is conceivable that one or more of these additional pieces of information, e.g., the date and/or time, are not available at the time of the reset event, e.g., because they have not yet been received via an interface such as a CAN bus. Preferably, this initially missing information is subsequently provided after the reset of the
Gemäß einer alternativen Implementierung ist es bei dem allgemeinen und/oder dem spezifischen Reset Counter auch denkbar, nur die aktuellen Zählerstände in einem separaten Speicherbereich des Speichersystems 12 zu verwalten und beim Auslesen des mehrstufigen Reset-History-Buffers auch diese Zählerstände mit auszulesen. Da alle Einträge des Reset-History-Buffers in chronologisch korrekter Reihenfolge ausgegeben werden, können anschließend basierend auf den aktuellen Zählerständen des oder der Reset Counter die Zählerstände beim Auftreten des jeweiligen Reset-Ereignisses ermittelt werden. Hierdurch kann Speicherplatz in den Pufferspeichern 14, 16 eingespart werden.According to an alternative implementation, it is also conceivable for the general and/or specific reset counter to manage only the current counter readings in a separate memory area of the
Der oder die Datensätze mit den Zusatzinformationen zum Auftreten des Reset-Ereignisses können direkt jedem Eintrag im ersten Pufferspeicher 14 bzw. zweiten Pufferspeicher 16 hinzugefügt werden. Alternativ können der oder die Datensätze in einen nicht dargestellten zusätzlichen Pufferspeicher bzw. separaten Buffer des Speichersystem 12 ausgelagert werden. Hierbei kann in dem ersten Pufferspeicher 14 bzw. zweiten Pufferspeicher 16 nur auf den Eintrag in diesem zusätzlichen Pufferspeicher bzw. separaten Buffer referenziert werden (beispielsweise mittels eines Index, Pointers, etc.). Dies bringt beim Verschieben einer gespeicherten Ereignisinformation vom ersten Pufferspeicher 14 in den zweiten Pufferspeicher 16 - das heißt, beim Speichern einer zuvor in dem ersten Pufferspeicher 14 gespeicherten Ereignisinformation in dem zweiten Pufferspeicher 16 und dem Löschen der gespeicherten Ereignisinformation aus dem ersten Pufferspeicher 14 - Vorteile mit sich, da weniger Daten verschoben werden müssen.The data record(s) with the additional information regarding the occurrence of the reset event can be added directly to each entry in the
Gemäß der in
Falls beim Eintragen eines neuen Reset-Ereignisses (Pfeil 20 in
Da im ersten Pufferspeicher 14 immer zuerst der älteste Eintrag bzw. die älteste Ereignisinformation in den zweiten Pufferspeicher 16 verschoben wird, liegt ein FIFO-Konzept vor. Durch das Verschieben des ältesten Eintrags in den zweiten Pufferspeicher 16 wird ein Löschen bzw. Entfernen dieses Eintrags aus dem Speichersystem 12 der Recheneinheit 10 vermieden.Since the oldest entry or the oldest event information in the
Gemäß der in
Wenn im zweiten Pufferspeicher 16 ein neuer Eintrag bzw. eine neue, die jeweilige Ursache für das Ereignis umfassende Ereignisinformation aus dem ersten Pufferspeicher 14 hinzugefügt werden soll, wird zuerst überprüft, wie viele eben diese Ursache umfassende Ereignisinformationen bzw. wie oft dieser Reset-Grund bereits in dem zweiten Pufferspeicher 16 vorhanden bzw. gespeichert ist. In
Gemäß einer alternativen Implementierung ist denkbar, zunächst freie Speicherplätze in dem zweiten Pufferspeicher 16 zu verwenden. Sobald keine freien Speicherplätze in dem zweiten Pufferspeicher 16 mehr verfügbar sind, wird ermittelt bzw. überprüft, für welche Reset-Gründe die Regel X=3 verletzt wird und aus diesen Reset-Gründen dann der älteste Eintrag entfernt. Damit wird sichergestellt, dass für jeden Reset-Grund mindestens X Einträge gespeichert werden können, jedoch im Falle von freiem bzw. verfügbaren Speicherplatz auch weitere Ereignisinformationen bzw. Einträge mit demselben Reset-Grund abgelegt bzw. gespeichert werden können.According to an alternative implementation, it is conceivable to initially use free memory locations in the
Bei der Konfiguration der Größe des zweiten Pufferspeichers 16 ist darauf zu achten, dass dieser mindestens X mal die Anzahl aller möglichen Arten bzw. Typen von Ereignisinformationen an Speicherplätzen zur Verfügung stellen muss. Falls die Recheneinheit 10 also 15 verschiedene Ereignisinformationen speichern können soll, müssen bei X=3 somit mindestens 3x15=45 Speicherplätze in dem zweiten Pufferspeicher 16 zur Verfügung stehen.When configuring the size of the
Gemäß der vorliegenden Ausführungsform können bei der Recheneinheit 10 Reset-Ereignisse auftreten, für deren Ursache ergänzende Informationen bereitgestellt werden. Bspw. kann im Falle eines Software-Reset-Ereignisses und/oder eines Hardware-Reset-Ereignisses, insbesondere eines SMU-Alarm-Reset-Ereignisses, von einer Software der Recheneinheit 10 weitere Reset-Details ermittelt und/oder bereitgestellt werden.According to the present embodiment, reset events can occur at the
Im Falle des SW-Resets können die ergänzenden Informationen bzw. Details zu einem ausgelösten Reset von der Software abgelegt bzw. gespeichert werden. Im Falle des Hardware-Resets, insbesondere des SMU-Alarm-Resets, können interne Register des von der Recheneinheit 10 umfassten Mikrocontrollers ausgelesen werden, um die ergänzenden Informationen zum Reset-Grund zu erhalten. Dieser Mechanismus ist ein großer Vorteil gegenüber anderen Implementierungen, da er die Möglichkeit bietet, bei einer späteren Fehleranalyse auch Reset-Gründe erkennen zu können, die zur Entwicklungszeit der Recheneinheit 10 noch nicht berücksichtigt wurden oder nicht bekannt waren und die durch einen Fehler in der Software und/oder Hardware der Recheneinheit 10 dennoch aufgetreten sind.In the case of a software reset, the additional information or details about a triggered reset can be stored or saved by the software. In the case of a hardware reset, in particular the SMU alarm reset, internal registers of the microcontroller included in the
Falls ein Reset-Ereignis auftritt, für welches keine ergänzenden Informationen bezüglich dessen Ursache bzw. keine erweiterten Reset-Details vorliegen oder bereitgestellt werden, bleibt das entsprechende Feld in der Spalte „Index“ in dem ersten Pufferspeicher 14 und dem zweiten Pufferspeicher 16 leer oder wird mit einem Platzhalter-Wert belegt. Wenn jedoch ein Reset-Ereignis auftritt, für welches weitere Reset-Details ausgelesen werden können, werden diese Informationen in der Spalte „Index“ eingetragen bzw. gespeichert. Der einzutragende Wert kann bei einem SW-Reset zum Beispiel einfach ein numerischer Wert sein, welcher aussagt, was genau in der Software zu dem Reset-Ereignis geführt hat. Im
Im Falle komplexerer Reset-Ereignisse, wie zum Beispiel bei dem zuvor genannten SMU-Alarm-Reset-Ereignis, kann es auch vorkommen, dass eine große Menge an Reset-Details bzw. eine Vielzahl an ergänzenden Informationen bezüglich der Ursache des Reset-Ereignisses abgelegt werden sollen. Um größere Datenmengen nicht in dem ersten Pufferspeicher 14 oder dem zweiten Pufferspeicher 16 speichern zu müssen und daher für alle Ereignisinformationen bzw. Einträge im Reset-Buffer diesen Speicherplatz für die Reset-Details vorhalten zu müssen, kann insbesondere eine Referenz auf einen weiteren Speicherbereich des Speichersystem 12 verwendet werden. Vorliegend beinhaltet der zweite Pufferspeicher 16 drei Einträge mit dem Reset-Grund „SMU_RST“. Diese beinhalten in ihrer Spalte „Index“ die Werte 21, 22 und 23. Diese Werte entsprechen den Indices in dem dritten Pufferspeicher 18 des Speichersystems 12, das heißt eine Referenz auf einen spezifischen Eintrag in diesem Buffer 18 (Pfeile 26 in
Gemäß einer alternativen Ausführungsform können die ergänzenden Informationen bzgl. der Ursache der Reset-Ereignisse bzw. der Reset-Details vor dem Speichern in dem Speichersystem 12 vorgefiltert werden, um weniger Daten in den Pufferspeichern 14, 16, 18 ablegen zu müssen und weiteren Speicherplatz zu sparen.According to an alternative embodiment, the additional information regarding the cause of the reset events or the reset details can be pre-filtered before being stored in the
Um zu ermitteln, ob es sich bei dem Wert in Spalte „Index“ des zweiten Pufferspeichers 16 um einen direkt verwendbaren Wert oder einen Index auf ein oder mehrere weitere Pufferspeicher des Speichersystems 12 handelt, wird die Angabe der Ursache bzw. der Reset-Grund verwendet. Ein SW-Reset hat im Beispiel einen direkt verwendbaren Wert, während ein SMU-Reset immer einen Index auf den dritten Pufferspeicher 18 beinhaltet. In einer alternativen Ausgestaltung kann der zugehörige Pufferspeicher nicht aus dem Reset-Grund abgeleitet werden, sondern aus dem Wertebereich des Eintrags in der Spalte „Index“. Bspw. könnten Werte 0-99 auf direkt verwendbare Details zu einem SW-Reset verweisen, die Werte 100-199 einen Index auf einen Buffer A, die Werte 200-299 einen Index auf einen Buffer B, etc. repräsentieren.To determine whether the value in the "Index" column of the
Gemäß dieser Ausführungsform werden die Einträge in dem dritten Pufferspeicher 18 gelöscht, sobald der zugehörige bzw. entsprechende, auf diesen Eintrag referenzierende Eintrag in dem ersten Pufferspeicher 14 bzw. in dem zweiten Pufferspeicher 16 gelöscht wird.According to this embodiment, the entries in the
Bei der Konfiguration der Größe des dritten Pufferspeichers 18 ist darauf zu achten, dass dieser eine Größe aufweist, welche mindestens einer Summe aus einer maximalen Anzahl von in dem zweiten Pufferspeicher 16 speicherbaren Ereignisinformationen mit einer Referenz, insbesondere in der Spalte „Index“, auf den dritten Pufferspeicher 18 und der Anzahl der in dem ersten Pufferspeicher 14 gespeicherten Ereignisinformationen entspricht.When configuring the size of the
Die in dem Speichersystem 12 gespeicherten Ereignisinformationen, insbesondere die Reset-Gründe bzw. die Ursachen für die Reset-Ereignisse, lassen sich sehr einfach aus dem ersten Pufferspeicher 14, dem zweiten Pufferspeicher 16 und dem dritten Pufferspeicher 18 in chronologisch korrekter Reihenfolge auslesen. Dies kann beispielsweise durch einen Diagnosedienst im Feld erfolgen oder auch über einen JTAG (englisch: „Joint Test Action Group“) Debugger im Werk im Falle einer Rückläuferanalyse. Darüber hinaus sind dem Fachmann weitere Möglichkeiten zum Auslesen dieser Daten über verschiedene Kommunikationskanäle der Recheneinheit 10 bekannt.The event information stored in the
Das Verfahren 100 wird bevorzugt während eines Betriebs der Recheneinheit 10 ausgeführt. Insbesondere wird das Verfahren 100 in der beschriebenen Abfolge von Verfahrensschritten wiederholt nacheinander ausgeführt, bevorzugt stets dann, wenn ein Ereignis der Recheneinheit 10 auftritt bzw. eintritt.The
In Schritt 110 wird eine in dem ersten Pufferspeicher 14 zu speichernde Ereignisinformation bezüglich eines Ereignisses der Recheneinheit 10 und/oder einer weiteren Recheneinheit eingelesen. Hierbei umfasst die eingelesene Ereignisinformation eine Ursache für das Ereignis.In
In Schritt 120 wird ein in dem ersten Pufferspeicher 14 zum Speichern der eingelesenen Ereignisinformation verfügbarer Speicherplatz ermittelt.In
Wenn in dem ersten Pufferspeicher 14 genügend Speicherplatz zum Speichern der eingelesenen Ereignisinformation verfügbar ist, wird die eingelesene Ereignisinformation in einem Schritt 190 in dem verfügbaren Speicherplatz des ersten Pufferspeichers 14 gespeichert. t.If sufficient storage space is available in the
Wenn in dem ersten Pufferspeicher 14 nicht genügend Speicherplatz zum Speichern der eingelesenen Ereignisinformation verfügbar ist, wird in Schritt 130 die älteste in dem ersten Pufferspeicher 14 gespeicherte Ereignisinformation eingelesen. In Schritt 140 wird eine Anzahl von in dem zweiten Pufferspeicher 16 gespeicherten Ereignisinformationen ermittelt, welche dieselbe Ursache für das jeweilige Ereignis aufweisen wie die älteste in dem ersten Pufferspeicher 14 gespeicherte Ereignisinformation.If there is insufficient storage space available in the
In Schritt 150 wird die älteste Ereignisinformation mit derselben Ursache aus dem zweiten Pufferspeicher 16 gelöscht, wenn bzw. falls bzw. genau in dem Fall, in dem die ermittelte Anzahl größer oder gleich einem definierten Schwellenwert ist.In
Alternativ, das heißt wenn bzw. falls bzw. genau in dem Fall, in dem die ermittelte Anzahl kleiner als der definierte Schwellenwert ist, wird in Schritt 160 die älteste Ereignisinformation aus dem zweiten Pufferspeicher 16 gelöscht. Hierbei können die Ursachen für das von der ältesten Ereignisinformation umfasste Ereignis im ersten Pufferspeicher 14 und für das von der ältesten Ereignisinformation umfasste Ereignis im zweiten Pufferspeicher 16 voneinander verschieden sein.Alternatively, that is, if or when or precisely in the case in which the determined number is smaller than the defined threshold value, the oldest event information is deleted from the
In Schritt 170 wird die älteste Ereignisinformation aus dem ersten Pufferspeicher 14 in dem zweiten Pufferspeicher 18 gespeichert.In
In Schritt 180 wird die älteste Ereignisinformation aus dem ersten Pufferspeicher 14 gelöscht.In step 180, the oldest event information is deleted from the
In Schritt 190 wird die in Schritt 110 eingelesene Ereignisinformation in dem ersten Pufferspeicher 14 gespeichert.In
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES CONTAINED IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- US 2009/0222700 A1 [0007]US 2009/0222700 A1 [0007]
Claims (14)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102023210817.8A DE102023210817A1 (en) | 2023-10-31 | 2023-10-31 | Method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102023210817.8A DE102023210817A1 (en) | 2023-10-31 | 2023-10-31 | Method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE102023210817A1 true DE102023210817A1 (en) | 2025-04-30 |
Family
ID=95342000
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE102023210817.8A Pending DE102023210817A1 (en) | 2023-10-31 | 2023-10-31 | Method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE102023210817A1 (en) |
-
2023
- 2023-10-31 DE DE102023210817.8A patent/DE102023210817A1/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE4244266C2 (en) | Method and circuit device for dynamically configuring device drivers for computer system equipment | |
| EP0067364B1 (en) | Method and arrangement for a non-volatile storage of the counting state of an electronic counter | |
| DE69028265T2 (en) | Data acquisition method for a logic analyzer | |
| DE102015217933B4 (en) | Device for processing data and method for operating such a device | |
| DE102014103347A1 (en) | Conditional links for direct memory access controllers | |
| DE112015007179T5 (en) | Information processing apparatus, information processing method and information processing program | |
| DE102019220274A1 (en) | Measuring circuits for electrical current | |
| DE112019007572T5 (en) | Programmable logic controller, setting tool and program | |
| DE102023210817A1 (en) | Method for storing event information relating to an event, in particular a hardware and/or software error and/or a reset event, of a computing unit | |
| DE102006041444B4 (en) | Circuit arrangement and method for detecting an execution time of a command in a computer system | |
| DE19951188B4 (en) | Method and device for recording pulse signals | |
| DE2102935A1 (en) | Method and device for determining the performance of machine programs | |
| DE102017108219A1 (en) | Control system and method of memory access | |
| WO2007033923A1 (en) | Data processing arrangement and the operation mode thereof | |
| DE102005009874B4 (en) | Method for signaling a state or event | |
| DE69317364T2 (en) | Method for observing a computer program flow in a processor with an internal cache memory | |
| DE2649506C2 (en) | Counting arrangement | |
| DE102009010881A1 (en) | Accelerated bitmap generation during built-in memory self-test by locking an Nth error | |
| DE102008042894A1 (en) | Method and device for testing a computer core in a computer having at least two computer cores | |
| DE10121745A1 (en) | Method and arrangement for a stack with a memory divided into data groups with several elements | |
| DE102005001930B4 (en) | Circuit and method for the secure processing of hardware events | |
| DE102008002494A1 (en) | Method for actualizing flash memory for emulation of electrically EPROMs, for saving serial electrically EPROMs, in dashboard of vehicle, involves verifying actual version of data set to violation of defined rule | |
| DE102017106400A1 (en) | Configuration switch and bus users with such a configuration switch | |
| DE102023213338A1 (en) | Managing a ring buffer-like memory | |
| DE102020210100A1 (en) | Method and apparatus for monitoring operation of a non-volatile memory device |