DE102017005944A1 - Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen - Google Patents

Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen Download PDF

Info

Publication number
DE102017005944A1
DE102017005944A1 DE102017005944.6A DE102017005944A DE102017005944A1 DE 102017005944 A1 DE102017005944 A1 DE 102017005944A1 DE 102017005944 A DE102017005944 A DE 102017005944A DE 102017005944 A1 DE102017005944 A1 DE 102017005944A1
Authority
DE
Germany
Prior art keywords
data
identifier
cycle
time
data processing
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.)
Granted
Application number
DE102017005944.6A
Other languages
English (en)
Other versions
DE102017005944B4 (de
Inventor
Stefan Andreas Widmann
Wolfgang Halang
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE102017005944.6A priority Critical patent/DE102017005944B4/de
Publication of DE102017005944A1 publication Critical patent/DE102017005944A1/de
Application granted granted Critical
Publication of DE102017005944B4 publication Critical patent/DE102017005944B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs

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 eine Datenverarbeitungseinheit, die Daten erzeugt, verarbeitet oder nutzt, bestehend aus mindestens einem Prozessor mit mindestens einem Speicher, in dem Daten in Form von Datenelementen (1) abgelegt sind. Die Erfindung zeichnet sich dadurch aus, dass zur Erkennung der Verletzung von zyklischen Echtzeitbedingungen der in den Datenelementen (1) enthaltenen Datenwerte (2) innerhalb der Datenelemente eine Zykluszeitkennung (3) vorhanden ist, die in mindestens drei Teilkennungen (4, 5, 6) einen den Datenwert (2) eindeutig identifizierenden Identifikator, sowie den frühesten und spätesten zulässigen Aktualisierungszeitpunkt des Datenwerts (2) spezifiziert.

Description

  • Die Erfindung betrifft eine Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen.
  • Es ist bekannt, dass bereits in den 1960er Jahren in Datenverarbeitungsanlagen wie z. B. dem Großrechner TR4 [1] den Datenwerten weitere Kennungen hinzugefügt wurden, die
    • • den Datentyp und damit das Darstellungsformat des Datenwerts spezifizierten und teilweise
    • • weitere Bits, die eine Integritätsprüfung des gesamten Datenelements erlaubten.
  • Basierend auf der expliziten, hardwareverständlichen und -prüfbaren Spezifikation des Datentyps innerhalb des Datenworts selbst werden entsprechende Architekturen als Datentyparchitekturen bezeichnet.
  • Weiterhin ist bekannt, dass in Befähigungsarchitekturen dem Datenelement eine weitere Kennung hinzugefügt wird, die die Zugriffsrechte auf das betreffende Datenelement spezifiziert. Gute Beispiele moderner Befähigungsarchitekturen sind z.B. lowRISC [2] und SAFE [3].
  • Weiterhin ist bekannt, dass in sicherheitsgerichteten Feldbussystemen wie z.B. PROFIsafe (IEC 61784-3-3) und CIP Safety (IEC 61784-3-2) Zeitüberwachungen zum Einsatz kommen, die die zeitgerechte Übermittlung von Daten zwischen den Systemkomponenten überwachen. Dazu können z. B. Überwachungszeitgeber zum Einsatz kommen, die nach einer vordefinierten Zeitdauer eine Unterbrechung generieren oder einen Neustart einleiten können.
  • Überwachungszeitgeber mit Zeitfenster, englisch „windowed watchdogs“, kommen in der Technik zum Einsatz, um die Verletzung von Echtzeitbedingungen zu überwachen. Um sicherzustellen, dass eine maximale Zeitgrenze nicht überschritten wird, muss vor deren Ablauf ein Signal an den Überwachungszeitgeber abgesetzt werden, um diesen zurückzusetzen. Um auch zu häufige Rücksetzvorgänge als Fehler erkennen zu können - durch eine Fehlfunktion könnte der Rücksetzvorgang wiederholt erfolgen, ohne dass die eigentliche zu überwachende Funktionalität noch aufrecht erhalten werden kann -, wird eine untere Zeitgrenze eingesetzt, vor deren Ablauf keine Rücksetzung erfolgen darf.
  • Datenverarbeitungssysteme tragen in immer mehr Anwendungen die Verantwortung für Mensch, Umwelt und Investitionsgüter und ersetzen in manchen Applikationen betriebsbewährte mechanische Systeme, so z. B. bei den „x-by-wire“ Systemen in der Avionik und der Kraftfahrzeugtechnik oder autonomen Steuerungsfunktionen in Fahrzeugen. Entsprechend gravierende Auswirkungen können nicht oder nicht rechtzeitig erkannte Fehler haben.
  • Die hohe Komplexität der Systeme und der darin eingesetzten Soft- und Hardware führt zu erhöhten Fehlerwahrscheinlichkeiten. Zudem werden die eingesetzten integrierten Schaltkreise auf Grund der immer weiter reduzierten Strukturbreiten zunehmend empfindlicher gegenüber Umwelteinflüssen, speziell den Einwirkungen von Strahlung.
  • Verschiedenste Fehlerarten können dafür sorgen, dass zu verarbeitende Daten in Datenverarbeitungssystemen nicht innerhalb der vorgesehenen Zeitfenster zur Verfügung stehen. Die Verarbeitung dieser Daten führt damit zu fehlerhaften Ergebnissen, die zu gefährlichen Ausfällen eines gesamten Datenverarbeitungssystems führen können. Dies ist besonders für die oben erwähnten sicherheitsgerichteten Anwendungen relevant, bei denen derartige Ausfälle zu Personen-, Umwelt- oder Sachschäden führen können.
  • Daten werden in konventionellen Datenverarbeitungssystemen nur durch ihren Datenwert repräsentiert. Über die weiteren Dateneigenschaften wie z.B. Datentyp und - für diese Erfindungsmeldung besonders relevant - den frühesten und spätesten zulässigen Zeitpunkt zum Empfang einer Aktualisierung eines Datenwerts werden nur implizite Annahmen getroffen. Die Hardware kann also keine Überprüfungen entsprechender Dateneigenschaften vornehmen, da sie diese nicht kennt. Unterliegt ein System harten Echtzeitbedingungen, so kann das Ausbleiben von Datenwerten zu gefährlichen Ausgaben führen, die Mensch, Umwelt oder Investitionsgüter gefährden. Ebenso können Fehler dazu führen, das Werte zu häufig aktualisiert werden, was z. B. große Anteile der Übertragungskapazität von eingesetzten Bussystemen binden kann und wichtige Nachrichten deshalb die Empfänger nicht mehr innerhalb eines maximal zulässigen Zeitraums erreichen.
  • Keine der bisher genannten Architekturarten wie Datentyp- oder Befähigungsarchitekturen unterstützt die Spezifikation zyklischer Echtzeitbedingungen in einer Kennung, die dann automatisch von der die Daten verarbeitenden Hardware in den Datenverarbeitungseinheiten geprüft werden könnte.
  • Prozessgrößen in technischen Prozessen können in sehr unterschiedlichen Zeitabständen zur Verarbeitung anfallen. So können Positionsinformationen von CNC-Maschinen z. B. alle 10 µs aktualisiert, eine Taste zur Abfrage von Benutzereingaben beispielsweise alle 100 ms abgefragt und die Temperatur der Maschine könnte aufgrund der thermischen Trägheit z.B. einmal pro Sekunde erfasst werden. Daher ist eine feingranulare Überwachung abgestimmt auf die jeweilige Aktualisierungsrate der Daten notwendig.
  • In [4] werden die entsprechenden Echtzeiteigenschaften von Daten beschrieben.
  • Bei beiden sicherheitsgerichteten Feldbusprotokollen, PROFIsafe und CIP Safety, wird nur geprüft, ob aktualisierte Daten vor einem spätesten zulässigen Zeitpunkt eingetroffen sind. Dabei wird jedoch nicht überprüft, ob die Daten wirklich aktualisiert wurden. Die Kommunikationssoftware der Datenquelle wird die vorliegenden Daten bei dem in Feldbussen üblichen zyklischen Abrufen der Daten durch eine Zentraleinheit übermitteln, ohne zu prüfen, ob die Werte tatsächlich aktualisiert wurden. Eine Überwachung der Unterschreitung eines frühesten zulässigen Zeitpunkts einer Aktualisierung findet in beiden Protokollen nicht statt.
  • Der Nachteil von Überwachungszeitgebern mit Zeitfenster ist, dass diese i.A. nur einmal im System vorhanden sind und damit auch nur ein bestimmtes Zeitfenster überwachen können. Prozessgrößen mit unterschiedlichen Aktualisierungszeiträumen können dadurch nur begrenzt überwacht werden.
  • Die Aufgabe der Erfindung ist es, Verletzungen von zyklischen Echtzeitbedingungen bei der Datenverarbeitung auf einfache Weise durch die Hardware einer Datenverarbeitungseinheit zu erkennen.
  • Die Aufgabe wird bezogen auf die Datenverarbeitungseinheit durch die Merkmale des Anspruchs 1 und bezogen auf das Verfahren durch die Merkmale der Ansprüche 6 und 7 gelöst. Die Unteransprüche stellen jeweils vorteilhafte Ausgestaltungen dar.
  • Bezogen auf die Datenverarbeitungseinheiten sieht die Lösung vor, den einzelnen Datenelementen zusätzlich zum Datenwert eine Zykluszeitkennung hinzuzufügen, die den frühesten und den spätesten erlaubten Zeitpunkt des Empfangs einer Aktualisierung desselben Datenwerts spezifiziert. Das ermöglicht einer Datenverarbeitungseinheit, zu früh und nicht rechtzeitig eintreffende Aktualisierungen von Datenwerten frühestmöglich zu erkennen. Als Datenverarbeitungseinheit sind im Sinne dieser Erfindung alle technischen Einrichtungen zu verstehen, die Daten erzeugen, verarbeiten oder nutzen, so z. B. Sensoren, Prozessrechner und Aktoren. In derartigen Geräten ist mindestens ein Prozessor vorhanden, der erzeugte Daten in mindestens einem Speicher ablegt, aus einem solchen ausliest, verarbeitet und die Ergebnisse ggf. wieder in einem derartigen Speicher ablegt. Ein entsprechender Prozessor kann z. B. auch in programmierbarer Hardware wie FPGAs realisiert werden. Datenelemente im Sinne dieser Erfindung sind Datenworte in einem Speicher oder Register, die neben dem Datenwert weitere Informationen über den Datenwert selbst enthalten. Zeitpunkte im Sinne dieser Erfindung können absolute Zeitpunkte in Form einer Kombination aus Datum und Uhrzeit sein, oder auch relative Zeitangaben, wie sie im Umfeld von Computern gebräuchlich sind, wie z. B. die Anzahl der verstrichenen Sekunden seit dem 01.01.1970, 0:00 Uhr bei der Unixzeit.
  • Die beschriebene Zykluszeitkennung in den Datenelementen besteht aus mindestens drei Teilkennungen, die den Identifikator des Datenwerts, sowie den frühesten und spätesten zulässigen Zeitpunkt der Aktualisierung des durch den Identifikator identifizierten Datenwerts spezifizieren.
  • Vorteilshafterweise ist die Zykluszeitkennung untrennbar mit dem Datenwert verbunden und wird mit ihm gespeichert, verarbeitet und übertragen.
  • Bezogen auf die Datenverarbeitungseinheiten sieht die Lösung weiterhin vor, einen zusätzlichen Befehl im Prozessor der Datenverarbeitungseinheit vorzusehen, mit dessen Hilfe sich die Inhalte der Zykluszeitkennung eines Operanden setzen lassen.
  • Bezogen auf die Datenverarbeitungseinheiten sieht die Lösung weiterhin vor, den in mindestens einem Speicher abgelegten Befehlselementen ebenfalls eine Zykluszeitkennung hinzuzufügen. Befehlselemente im Sinne dieser Erfindung sind Befehlsworte in einem Speicher oder Register, die neben dem Befehlscode und der Spezifikation der Operanden bzw. Operandenadressen des Befehls weitere für die Ausführung des Befehls relevanten Informationen enthalten. Die Zykluszeitkennung im Befehlselement besteht aus mindestens drei Teilkennungen, wobei diese einen für das Ergebnis des Befehls zu setzenden Identifikator, sowie einen minimalen und einen maximalen relativen Zeitraum für eine zu empfangende Aktualisierung des durch den Identifikator beschriebenen Datenwerts spezifizieren.
  • Bezogen auf die Datenverarbeitungseinheiten sieht die Lösung weiterhin vor, dass im Prozessor oder als dediziertes Hardwaremodul eine Zyklusüberwachungseinheit vorhanden ist, die eine Zyklussteuereinheit besitzt und eine Datenverbindung zum Prozessor bzw. Prozessorkern aufweist. Die Zyklussteuereinheit verwaltet zwei Listen, die Zyklusüberwachungsliste Minimum und die Zyklusüberwachungsliste Maximum, die in mindestens einem Speicher abgelegt sind. Zur Erfüllung ihrer Aufgabe benötigt die Zyklussteuereinheit eine Zeitbasis, die ihr z. B.
    • • durch stetige Aktualisierung durch den Prozessor der Datenverarbeitungseinheit,
    • • eine in der Zyklusüberwachungseinheit vorhandene Echtzeituhr und / oder
    • • einen internen oder externen Zeitsignalempfänger wie DCF77, GPS, Galileo oder GLONASS
    zur Verfügung gestellt werden kann.
  • Bezogen auf das Verfahren sieht die Lösung vor, dass der Prozessor der Datenverarbeitungseinheit die Inhalte der Zykluszeitkennung des auszuführenden Befehlselements liest und deren Inhalte zur Bildung der Inhalte der Zykluszeitkennung des Ergebnisses der auszuführenden Operation nutzt. Ist der Identifikator innerhalb der Zykluszeitkennung des Befehlselements gleich Null, so wird der Identifikator innerhalb der Zykluszeitkennung des Ergebnisses auf Null gesetzt, womit angezeigt wird, dass das Ergebnis keine zu prüfenden zyklischen Echtzeitbedingungen aufweisen soll. Ist der Identifikator innerhalb der Zykluszeitkennung des Befehlselements ungleich Null, so wird dieser als Identifikator in der Zykluszeitkennung des Ergebnisses gespeichert und die beiden relativen Zeitspannen innerhalb der Zykluszeitkennung des Befehlselements werden jeweils auf den aktuellen Zeitpunkt addiert und die Ergebnisse dieser Berechnungen als frühester bzw. spätester zulässiger Zeitpunkt einer Aktualisierung des im Ergebnis vorhandenen Datenwerts in der Zykluszeitkennung des Ergebnisses abgelegt. Mit Vorteil wird vorgeschlagen, dass die Bestimmung und das Setzen der Inhalte der Zykluszeitkennung des Ergebnisses zeitgleich zur Ausführung der datenverarbeitenden Operation erfolgt.
  • Bezogen auf das Verfahren sieht die Lösung weiterhin vor, dass die Zyklussteuereinheit innerhalb der Zyklusüberwachungseinheit die zwei beschriebenen Listen Zyklusüberwachungsliste Minimum und Zyklusüberwachungsliste Maximum verwaltet. In der Zyklusüberwachungsliste Minimum werden Tupel bestehend aus Identifikator eines Datenwerts und frühestem zulässigen Aktualisierungszeitpunkt gespeichert. In der Zyklusüberwachungsliste Maximum werden Tupel bestehend aus Identifikatoren der Datenwerte mit den zugehörigen spätesten zulässigen Aktualisierungszeitpunkten gehalten. Mit Vorteil wird vorgeschlagen, dass die Tupel in der Zyklusüberwachungsliste Maximum in chronologisch aufsteigender Reihenfolge sortiert sind, also jenes Tupel an erster Stelle in der Liste liegt, dessen spätester zulässiger Aktualisierungszeitpunkt als nächstes erreicht wird. Die Zyklussteuereinheit prüft, ob der angegebene späteste zulässige Aktualisierungszeitpunkt in einem der Einträge der Zyklusüberwachungsliste Maximum verstreicht, ohne dass eine Aktualisierung des zugehörigen Datenwerts erfolgt ist. Wird einer der betreffenden Zeitpunkte überschritten, so erkennt dies die Zyklussteuereinheit als Fehler. Der Prozessor der Datenverarbeitungseinheit sendet alle Inhalte der Zykluszeitkennungen der zu verarbeitenden Datenelemente, bestehend aus Identifikator, frühestem und spätestem zulässigen Aktualisierungszeitpunkt an die Zyklusüberwachungseinheit bzw. der Zyklussteuereinheit innerhalb der Zyklusüberwachungseinheit. Diese sucht einen zum empfangenen Identifikator passenden Eintrag in der Zyklusüberwachungsliste Minimum. Wird ein solcher Eintrag gefunden, so vergleicht die Zyklussteuereinheit den im Eintrag angegebenen frühesten zulässigen Aktualisierungszeitpunkt mit dem aktuellen Zeitpunkt. Stellt sie dabei eine Unterschreitung fest, so erfolgte die Aktualisierung des Datenwerts zu früh, was die Zyklussteuereinheit als Fehler erkennt. Wurde der früheste zulässige Aktualisierungszeitpunkt nicht unterschritten oder es war kein zum Identifikator gehörender Eintrag in der Zyklusüberwachungsliste Minimum abgelegt, so aktualisiert die Zyklussteuereinheit diesen oder legt einen entsprechenden Eintrag an und verwendet dazu den empfangenen Identifikator zusammen mit dem empfangenen frühesten zulässigen Aktualisierungszeitpunkt. Weiterhin sucht die Zyklussteuereinheit einen zum empfangenen Identifikator passenden Eintrag in der Zyklusüberwachungsliste Maximum. Wird ein solcher gefunden, aktualisiert die Zyklussteuereinheit diesen, ansonsten legt sie einen entsprechenden Eintrag an und nutzt dazu neben dem empfangenen Identifikator den empfangenen spätesten zulässigen Aktualisierungszeitpunkt. Stellt die Zyklussteuereinheit einen Fehler fest, so meldet sie dies dem Prozessor der Datenverarbeitungseinheit über ein Signal, die Einstellung eines Lebenszeichens und / oder das Senden einer Nachricht. Mit Vorteil wird vorgeschlagen, dass die beschriebenen Vorgänge des Verfahrens zeitgleich zur Ausführung der Verarbeitung der Datenwerte im Prozessor der Datenverarbeitungseinheit erfolgen.
  • Die Erfindung wird nachfolgend anhand einer Zeichnung näher beschrieben. 1 der Zeichnung zeigt, wie den Datenwerten (2) innerhalb der Datenelemente (1) eine Zykluszeitkennung (3) hinzugefügt ist. 2 der Zeichnung zeigt die Aufteilung der Zykluszeitkennung (3) in mindestens drei Teilkennungen (4, 5, 6). Die Identifikatorteilkennung (4) spezifiziert den Identifikator des Datenwerts (2). Zwei weitere Teilkennungen (5, 6) spezifizieren den frühesten (5) bzw. spätesten (6) zulässigen Aktualisierungszeitpunkt des durch den Identifikator identifizierten Datenwerts. Die Reihenfolge der Teilkennungen ist in der Figur nur exemplarisch dargestellt, jede andere Anordnung ist ebenfalls möglich.
  • 3 der Zeichnung zeigt, wie in den Befehlselementen (7) neben Befehl und ggf. Operanden bzw. Operandenadressen (8) ebenfalls eine Zykluszeitkennung (9) vorhanden ist. 4 der Zeichnung zeigt die Aufteilung der Zykluszeitkennung (9) in mindestens drei Teilkennungen (10, 11, 12). Die Identifikatorteilkennung (10) spezifiziert den in der Identifikatorteilkennung der Zykluszeitkennung des Ergebnisses des Befehls zu setzenden Identifikator. Zwei weitere Teilkennungen spezifizieren die relativen Zeitspannen, nach deren Ablauf die Aktualisierung des zum Identifikator gehörenden Datenwerts frühestens (11) bzw. spätestens (12) erfolgen darf bzw. muss. Die Reihenfolge der Teilkennungen ist in der Figur nur exemplarisch dargestellt, jede andere Anordnung ist ebenfalls möglich.
  • 5 der Zeichnung zeigt den exemplarischen Aufbau der Zyklusüberwachungseinheit (13), bestehend aus den Kernkomponenten Zyklussteuereinheit (14) und den in mindestens einem Speicher abgelegten Zyklusüberwachungslisten Minimum (16) bzw. Maximum (17). Auf beide Listen kann die Zyklussteuereinheit (14) über eine Datenverbindung (17, 19) zugreifen. Weiterhin weist die Zyklussteuereinheit (14) eine Datenverbindung (15) zum Prozessor der Datenverarbeitungseinheit auf. Ein Taktsignal kann die Zyklussteuereinheit von extern zugeführt bekommen (21) oder durch einen Taktgenerator (20) innerhalb der Zyklusüberwachungseinheit (13) erzeugt. Eine Zeitbasis für die notwendigen Überprüfungen kann die Zyklussteuereinheit über die Datenverbindung (15) zum Prozessor der Datenverarbeitungseinheit, eine Echtzeituhr (22) und / oder einen externen Zeitsignalempfänger (23) wie z. B. DCF77, GPS, Galileo oder GLONASS empfangen. Zur Signalisierung des fehlerfreien Betriebs kann ein Lebenszeichensignal (25) von der Zyklussteuereinheit zum Prozessor der Datenverarbeitungseinheit gesendet werden. Ein Rücksetzsignal (24) ermöglicht es dem Prozessor der Datenverarbeitungseinheit, die Zyklusüberwachungseinheit (13) und damit vor allem die Zyklussteuereinheit (14) in einen definierten Zustand zu bringen.
  • Die Erfindung hat gegenüber dem Stand von Wissenschaft und Technik die folgenden Vorteile:
    • • Die Prüfungen in der Zyklusüberwachungseinheit werden zeitgleich zur Ausführung der eigentlichen Operation im Hauptprozessor durchgeführt, es entsteht also kein erhöhter Laufzeitbedarf.
    • • Die Erkennung der Verletzung zyklischer Echtzeitbedingungen erfolgt zu einem frühestmöglichen Zeitpunkt, lange bevor Überwachungszeitgeber das Ausbleiben von Verarbeitungsergebnissen erkennen können.
    • • Die Prüfung der Zykluszeitkennung findet feingranular pro einzelnem Datenwert statt und nicht über Überwachungszeitgeber für ganze Programme, Datenverbindungen oder sogar Systemkomponenten. Das erlaubt individuelle Überwachungszeiten.
    • • Durch Fehler wiederholt empfangene oder verarbeitete Datenwerte besitzen die identischen frühesten und spätesten möglichen Aktualisierungszeitpunkte in der Zykluszeitkennung, wodurch diese keine Veränderung der beiden Zeitpunkte hervorrufen. Bei konventionellen Überwachungszeitgebern reicht das erfolgreiche empfangen von Datenwerten zum Rücksetzen des Zeitgebers aus, weshalb weitere Fehlererkennungsmerkmale bei solchen Lösungen notwendig sind.
    • • Die betreffenden Fristen sind vorteilshafterweise untrennbar mit dem Datenwert selbst verbunden, wodurch es keine Gefahr von Inkonsistenzen gibt.
    • • Da es sich um eine gerätetechnische Lösung handelt, wird die Lösung nur einmal spezifiziert, entworfen, implementiert und getestet. Bei softwarebasierten Lösungen muss dieses Prozedere in der Regel bei jedem Projekt erneut durchlaufen werden.
  • Literatur
    • [1] AEG Datenverarbeitung: TR 4 Bedienungshandbuch
    • [2] A. Bradbury, G. Ferris, R. Mullins: Tagged memory and minion cores in the lowRISC SoC; 2014; http://www.lowrisc.org/docs/
    • [3] S. Chiricescu, A. DeHon, D. Demange, S. Iyer, A. Kliger, G. Morrisett, B. C. Pierce, H. Reubenstein, J. M. Smith, G. T. Sullivan, A. Thomas, J. Tov, C. M. White, D. Wittenberg: SAFE: A Clean-Slate Architecture for Secure Systems; http://www.crash-safe.org/docs/ HST2013-SAFE.html; 2013
    • [4] B. Dasarathy: Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them; IEEE Transactions on Software Engineering, Vol.11, Issue 1; 80-86; 1985
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Nicht-Patentliteratur
    • B. Dasarathy: Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them; IEEE Transactions on Software Engineering, Vol.11, Issue 1; 80-86; 1985 [0029]

Claims (10)

  1. Datenverarbeitungseinheit, die Daten erzeugt, verarbeitet oder nutzt, bestehend aus mindestens einem Prozessor mit mindestens einem Speicher, in dem Daten in Form von Datenelementen (1) abgelegt sind, dadurch gekennzeichnet, dass zur Erkennung der Verletzung von zyklischen Echtzeitbedingungen der in den Datenelementen (1) enthaltenen Datenwerte (2) innerhalb der Datenelemente eine Zykluszeitkennung (3) vorhanden ist, die in mindestens drei Teilkennungen (4, 5, 6) einen den Datenwert (2) eindeutig identifizierenden Identifikator, sowie den frühesten und spätesten zulässigen Aktualisierungszeitpunkt des Datenwerts (2) spezifiziert.
  2. Datenverarbeitungseinheit nach Anspruch 1, dadurch gekennzeichnet, dass die Zykluszeitkennung (3) untrennbar mit dem Datenwert (2) im Datenelement (1) verknüpft ist und mit diesem gespeichert, verarbeitet und übertragen wird.
  3. Datenverarbeitungseinheit nach Anspruch 1, dadurch gekennzeichnet, dass der Prozessor einen Befehl zum Setzen der Inhalte der Zykluszeitkennung (3) von mindestens einem Datenelement (1) vorsieht.
  4. Datenverarbeitungseinheit nach Anspruch 1, bei der Befehle in Form von Befehlselementen (7) im selben Speicher wie die Daten oder in mindestens einem weiteren Speicher abgelegt sind, dadurch gekennzeichnet, dass zur Spezifikation der zu setzenden Inhalte der Zykluszeitkennung (3) des Ergebnisses einer Operation in den Befehlselementen (7) eine Zykluszeitkennung (9) vorhanden ist, die in mindestens drei Teilkennungen (10, 11, 12) den für das Ergebnis zu setzenden Identifikator, sowie eine kürzeste (11) und längste (12) relative Zeitspanne für die Aktualisierung des Ergebnisses der Operation spezifiziert.
  5. Datenverarbeitungseinheit nach Anspruch 1, dadurch gekennzeichnet, dass zur Prüfung der Einhaltung der in den Zykluszeitkennungen (3) der durch den Prozessor zu verarbeitenden Datenelemente (1) spezifizierten frühesten und spätesten zulässigen Aktualisierungszeitpunkte im Prozessor oder als eigenständige Hardwareeinheit eine Zyklusüberwachungseinheit (13) vorhanden ist.
  6. Verfahren zum automatischen Setzen der Inhalte der Zykluszeitkennung (3) des Ergebnisses einer Operation in Datenverarbeitungseinheiten, bestehend aus mindestens einem Prozessor mit mindestens einem Speicher, in dem Daten in Form von Datenelementen (1), und Befehlen, die im selben oder mindestens einem weiteren Speicher in Form von Befehlselementen (7) abgelegt sind, dadurch gekennzeichnet, dass der Prozessor zusätzlich zur Ausführung der datenverarbeitenden Operation die Inhalte der Zykluszeitkennung (3) des Ergebnisses anhand der Inhalte der Zykluszeitkennung (9) innerhalb der Befehlselemente (7) und dem aktuellen Zeitpunkt bestimmt und in der Zykluszeitkennung (3) des Ergebnisses speichert.
  7. Verfahren zur Erkennung der Verletzung zyklischer Echtzeitbedingungen von Datenwerten, dadurch gekennzeichnet, dass in der Zyklusüberwachungseinheit (13) eine Zyklussteuereinheit (14) mindestens zwei Listen (16, 18) in mindestens einem Speicher verwaltet, wobei in einer Liste (16) die Identifikatoren der Datenwerte zusammen mit den jeweiligen frühesten zulässigen Aktualisierungszeitpunkten und in einer weiteren Liste (18) die Identifikatoren der Datenwerte zusammen mit den jeweiligen spätesten zulässigen Aktualisierungszeitpunkten gehalten werden.
  8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass der Prozessor der Datenverarbeitungseinheit bei allen zu verarbeitenden Datenelementen die Zykluszeitkennung ausliest und den Identifikator, den frühesten und den spätesten zulässigen Aktualisierungszeitpunkt an die Zyklusüberwachungseinheit (13) sendet und dass die Zyklussteuereinheit (14) innerhalb der Zyklusüberwachungseinheit (13) bei Empfang eines solchen Datensatzes den empfangenen Identifikator in der Liste für die frühesten zulässigen Aktualisierungszeitpunkte (16) sucht und, falls dieser gefunden wird, den zugehörigen frühesten zulässigen Aktualisierungszeitpunkt aus der Liste (16) mit dem aktuellen Zeitpunkt vergleicht und den Fall der Unterschreitung, also den Empfang der Datenaktualisierungsmeldung vor dem frühesten zulässigen Aktualisierungszeitpunkt, als Fehler erkennt und im fehlerfreien Fall die mit dem betreffenden Identifikator verknüpften Einträge in den beiden Überwachungslisten (16, 18), sofern vorhanden, mit den neuen frühesten und spätesten zulässigen Zeitpunkten aktualisiert oder entsprechende Einträge neu anlegt.
  9. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die Zyklussteuereinheit (14) das Überschreiten eines der in der Liste der spätesten zulässigen Aktualisierungszeitpunkte (18) enthaltenen spätesten zulässigen Aktualisierungszeitpunkts und damit eine ausbleibende oder verzögerte Aktualisierung eines Datenwerts als Fehler erkennt.
  10. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die Zyklusüberwachungseinheit bei Erkennen einer Verletzung der zyklischen Echtzeitbedingungen eines Datenwerts diese durch ein Signal und / oder das Einstellen eines Lebenszeichens und / oder eine Nachricht dem Prozessor der Datenverarbeitungseinheit meldet und dieser in der Folge einen Ausnahmefehler meldet und / oder die Datenverarbeitungseinheit in einen sicheren Zustand überführt und / oder neu startet.
DE102017005944.6A 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen Expired - Fee Related DE102017005944B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102017005944.6A DE102017005944B4 (de) 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102017005944.6A DE102017005944B4 (de) 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen

Publications (2)

Publication Number Publication Date
DE102017005944A1 true DE102017005944A1 (de) 2018-12-27
DE102017005944B4 DE102017005944B4 (de) 2020-09-24

Family

ID=64567546

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017005944.6A Expired - Fee Related DE102017005944B4 (de) 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen

Country Status (1)

Country Link
DE (1) DE102017005944B4 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10065417A1 (de) * 2000-12-27 2002-07-18 Siemens Ag Programmierung von zyklischen Maschinen

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10065417A1 (de) * 2000-12-27 2002-07-18 Siemens Ag Programmierung von zyklischen Maschinen

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
B. Dasarathy: Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them; IEEE Transactions on Software Engineering, Vol.11, Issue 1; 80-86; 1985
DHAWAN, Udit ; HRITCU, Catalin ; RUBIN, Raphael ; VASILAKIS, Nikos ; CHIRICESCU, Silviu ; SMITH, Jonathan ; KNIGHT, Thomas ; PIERCE, Benjamin ; DEHON, Andre: Architectural Support for Software-Defined Metadata Processing. ACM SIGARCH Computer Architecture News – ASPLOS'15. Band 43 Ausgabe 1, March 2015. Seiten 487 – 502. URL: https://dl.acm.org/citation.cfm?id=2694383 [abgerufen am 28.03.2018] *

Also Published As

Publication number Publication date
DE102017005944B4 (de) 2020-09-24

Similar Documents

Publication Publication Date Title
DE102018113625A1 (de) Fehlerinjektionstestvorrichtung und -verfahren
DE4112334C2 (de)
DE102015107671A1 (de) Steuerung und Diagnose einer Steuerungs-Wakeup-Funktionalität
DE102016124352A1 (de) Kommunikationssystem und ein in dem Kommunikationssystem ausgeführtes Informationssammelverfahren
EP1866714B1 (de) Verfahren und vorrichtung zur überwachung einer prozessausführung
DE112018005352T5 (de) Informationsverarbeitungsvorrichtung, bewegte einrichtung, verfahren und programm
EP3291094A1 (de) Prozessorsystem und verfahren zur überwachung von prozessoren
DE102019115727A1 (de) Elektronische Steuervorrichtung, Überwachungsverfahren, Aufzeichungsmedium und Gateway-Vorrichtung
DE102022126423A1 (de) Cloud-basierter plattform-server zum analysieren, berichten und antworten auf fahrzeug-dtc-daten
DE112011100168T5 (de) Erfassen von Diagnosedaten in einer Datenverarbeitungsumgebung
DE102017005944B4 (de) Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen
DE112019007853T5 (de) Steuereinrichtung
EP3486825A1 (de) Verfahren und vorrichtung zum rechnergestützten bestimmen eines schweregrads einer festgestellten verletzung der integrität
DE102016216728A1 (de) Fehlerdiagnose in einem Bordnetz
DE102017219195B4 (de) Verfahren zum gewährleisten eines betriebs eines rechners
DE112017006528T5 (de) Angriff/abnormalität-detektionsvorrichtung, angriff/abnormalität-detektionsverfahren und angriff/abnormalität-detektionsprogramm
EP3311273A1 (de) Verfahren und vorrichtung zum absichern einer programmzählerstruktur eines prozessorsystems und zum überwachen der behandlung einer unterbrechungsanfrage
DE102011083655A1 (de) Überwachungsvorrichtung zur Überwachung eines Betriebs einer Steuerverarbeitungsvorrichtung
DE102008048862A1 (de) Testmodul und Verfahren zum Testen einer O/R-Abbildungs-Middleware
DE102022122008A1 (de) Prozessorschaltung zum Sammeln von Protokollierungsdatensätzen mehrerer Steuerschaltungen in einem Datenpool, zugehöriges Betriebsverfahren für die Prozessorschaltung, System zum Sammeln von Protokollierungsdatensätzen und computerlesbares Speichermedium
DE102019118964B4 (de) Zyklische Fehlerstrom-Überprüfung eines Ladepunktes oder einer Ladestation
DE10148157B4 (de) Programmgesteuerte Einheit
WO2024175581A1 (de) Verfahren und vorrichtung zur visualisierung von debug-daten eines komplexen datenverarbeitungsnetzwerks
DE102016217762A1 (de) Überwachung von sicherheitsrelevanten Funktionen durch eine nicht sichere Recheneinheit
DE102022125715A1 (de) Verfahren und Unterstützungseinrichtung zum Unterstützen einer Robustheitsoptimierung für ein Datenverarbeitungssystem und korrespondierendes CI-System

Legal Events

Date Code Title Description
R086 Non-binding declaration of licensing interest
R012 Request for examination validly filed
R016 Response to examination communication
R084 Declaration of willingness to licence
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee