AT500103A1 - Aufbau eines knotenrechners für ein integriertes verteiltes echtzeitsystem - Google Patents

Aufbau eines knotenrechners für ein integriertes verteiltes echtzeitsystem Download PDF

Info

Publication number
AT500103A1
AT500103A1 AT0077304A AT7732004A AT500103A1 AT 500103 A1 AT500103 A1 AT 500103A1 AT 0077304 A AT0077304 A AT 0077304A AT 7732004 A AT7732004 A AT 7732004A AT 500103 A1 AT500103 A1 AT 500103A1
Authority
AT
Austria
Prior art keywords
computer
unit
point
criticality
mixed
Prior art date
Application number
AT0077304A
Other languages
English (en)
Inventor
Hermann Kopetz
Georg Kopetz
Original Assignee
Fts Computertechnik Gmbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fts Computertechnik Gmbh filed Critical Fts Computertechnik Gmbh
Priority to AT0077304A priority Critical patent/AT500103A1/de
Publication of AT500103A1 publication Critical patent/AT500103A1/de

Links

Landscapes

  • Multi Processors (AREA)

Description

Mixed-Criticality Knotenrechner mit einer Connector Einheit
Zitierte Patente: [1] US 5694542 issued on Dec. 12, 1989: A loosely coupled distributed Computer System with node synchronization for precision in real time.
[2] EP 0 658 257 vom 18.12.1996: Kommunikationskontrolleinheit und Verfahren zur Übermittlung von Nachrichten.
[3] US 5887143 issued on March 23, 1999: Time-Triggered Communcation Control Unit and Communication.
[4] AT 407 582 vom 15.6.2000: Nachrichtenverteilereinheit mit integriertem Guardian zur Verhinderung von Babbling Idiot Fehlem.
[5] AT 408382 vom 15.3.2001: Rechnerknotenarchitektur mit dediziertem Middleware Prozessor [6] AT 410490 vom 15.9.2002 : Verfahren zur Tolerierung von slightly-off-specification Fehlem in einem verteilten fehlertoleranten Echtzeitsystem.
[7] AT 410491 vom 15.9.2002: Kommunikationsverfahren zur Realisierung von Ereigniskanälen in einem zeitgesteuerten Kommunikationssystem.
[8] AT Patentanmeldung 844/2003 vom 30.5.2003: Virtuelle Netzwerke in einem zeitgesteuerten MultiCluster Echtzeitsystem [9] EP 1 355 456 Al v.16.04. 2002 FlexRay Communication Protocol Sonstige Literatur: [10] Kopetz, H. (1997). Real-Time Systems, Design Principles for Distributed Embedded Applications; ISBN: 0-7923-9894-7. Boston. Kluwer Academic Publishers.
[11] Kopetz, H, Bauer, G. The Time Triggered Architecture , Proc. ofthelEEE Vol. 91, No,l, Jan 2003, pp. 112-126 [12] TTP/C Spezifikation atURL: www.tttech.com
TECHNISCHES UMFELD verteiltes
Diese Erfindi au eines Knotenrechners für ein integriertes
Anwendungen mit unterschiedlichen
Sicherheitsan ^ : Knotenrechners nebeneinander ausgeführt werden. In einem solchen Knotenrechner muss konstruktiv gewährleistet sein, dass auch im Falle eines Softwarefehlers in einem nicht-sicherheitskritischen F.inreir.hlcnnie. 5 5 2004 eines
Anwendungsmoduls sich keine Auswirkung auf das Verhalten sicherheitskritischen Anwendungsmoduls ergibt.
HINTERGRUND DIESER ERFINDUNG
In vielen technischen Anwendungen, zum Beispiel im Automobil oder Flugzeug, werden Steuerungsaufgaben, die unterschiedlichen Sicherheitsanforderungen zu entsprechen haben, auf unterschiedlichen Rechnern ausgeführt. Man spricht in einem solchen Fall, wo jeder Funktion ein eigener weitgehend autonomer Rechner zugeordnet wird, von einer Federated Architecture. Dies führt dazu, dass z.B. in einem Auto der gehobenen Klasse bis zu 70 verschiedene Knotenrechner (ECU Electronic Control Unit) zu finden sind. Dabei werden in der bestehenden Federated Architecture noch keine replizierten Knotenrechner eingesetzt, um Hardwarefehler von Knotenrechnern maskieren zu können.
Durch den Einsatz einer integrierten Architektur, in der innerhalb eines einzigen Rechners mehrere Aufgaben mit unterschiedlichen Sicherheitsanforderungen ausgeführt werden können, könnte die Anzahl der Knotenrechner und die Anzahl der Verbindungen (die erfahrungsgemäß fehleranfällig sind) wesentlich reduziert werden, was zu erheblichen wirtschaftlichen und technischen Vorteilen führt.
Weiters lässt sich in einer solchen integrierten Architektur eine Replizierung von Funktionen zur Erhöhung der Zuverlässigkeit relativ einfach realisieren.
In einem solchen integrierten System muss durch die Architektur und den inneren Aufbau eines Knotenrechners gewährleistet werden, dass innerhalb der gegebenen Fehlerhypothese ein Fehler in einem Subsystem keine Auswirkungen auf die Funktion eines anderen unabhängigen Subsystems haben kann. Dabei ist zwischen Hardwarefehlem und Softwarefehlem zu unterscheiden.
Im Folgenden wird davon ausgegangen, dass ein Knotenrechner als System-on-Chip (SOC) in einem einzigen Chip realisiert. Entsprechend dem Stand der Technik muss in einem sicherheitskritischen System angenommen werden, dass ein solcher Chip in einer nicht einzuschränkenden Fehlerart ausfallen kann.
Die bekannte zeitgesteuerte Architektur [1-6, 10,11] löst dieses Problem für den Fall eines beliebigen Hardwarefehlers indem die Fehlerfortpflanzung im Zeitbereich verhindert wird und im Wertebereich über eine TMR (Triple-Modular Redundancy, [10,11]) Struktur ein fehlerhafter Wert eines Knotenrechners maskiert werden kann.
Die vorliegende Erfindung befasst sich mit dem Problem der Fehlerisolierung von Softwarefehlem innerhalb eines Knotenrechners.
Entsprechend dem Stand der Technik werden in einem Knotenrechner für eine integrierte Architektur die unabhängigen Softwaresubsysteme durch ein aufwendiges Betriebssystem und entsprechende Zusatzhardware, die den dynamischen Speicherschutz ermöglicht, voneinander abgekapselt. Dieses Betriebssystem erreicht jedoch eine so hohe Komplexität, dass es schwierig ist, die Richtigkeit und Rechtzeitigkeit der Anwendungen die von diesem Betriebssystem abhängen, durch eine formale Analyse nachzuweisen. F.inrp.ichknnip. 5 5 9004 ♦ · ♦ · ···· φ φ φ φ φ φ ····· · φ φ · • · » φ φ φ φ φ φ , · • · ····· φ φ φ φ φ • » · · # · φ • · φ φ φ φ φφφ φ · ·
Die vorliegende Erfindung schlägt einen anderen Weg vor: Für jede Sicherheitsklasse wird innerhalb eines Knotenrechners ein unabhängiger Applikations-Rechner (A-Rechner) mit eigenem Prozessor und eigenem Speicher vorgesehen.
Eine relativ einfache Connector-Einheit (C-Einheit), die zwischen einem zeitgesteuerten Kommunikationskontroller und den A-Rechnem angeordnet ist, verteilt die Inhalte einer eintreffenden Nachricht auf die verschiedenen A-Rechner und fasst die Ausgaben der A-Rechner in eine einzige Nachricht für das zeitgesteuerte Kommunikationssystem zusammen.
In einem sicherheitskritischen Subsystem muss der Sicherheitsnachweis die Funktion (Software) des entsprechenden A-Rechner, die C-Einheit und die Kommunikation über das zeitgesteuerte Kommunikationssystem umfassen. Da die C-Einheit viel einfacher ist als ein Betriebssystem mit Speicherschutz, ist der Sicherheitsnachweis im vorgeschlagenen System wesentlich einfacher
In dem AT Patent 410491 vom 15.9.2002 und der AT Patentanmeldungen 844/2003 vom 30.5.2003 wird offengelegt, wie mehrere unabhängige Kommunikationskanäle für Zustandsnachrichten und Ereignisnachrichten auf einem zeitgesteuerten Kommunikationssystem realisiert werden können.
Es ist somit möglich, die Verarbeitung und Kommunikation der verteilten Applikationssysteme weitgehend zu trennen und eine Fehlerfortpflanzung von einem Applikationssystem auf ein anderes Applikationssystem zu verhindern.
Ein in die Architektur integriertes Diagnosesystem erleichtert die Diagnose von transienten Hardware und Softwarefehlem.
Durch diese Erfindung ergeben sich folgende signifikante wirtschaftliche Vorteile: • Die Anzahl der Knotenrechner kann wesentlich reduziert werden, was zu signifikanten Kosteneinsparangen führt. • Die Anzahl der Kabel und damit der Verkabelungspunkte kann wesentlich reduziert werden, was zu einer Verbesserung der Zuverlässigkeit und zu Kosteneinsparungen in der Wartung führt. • Die Einführung von TMR Strukturen zur Erhöhung der Zuverlässigkeit wird ohne die Installation weiterer Knotenrechner möglich. • Die verschiedenen Subsysteme können unabhängig voneinander entwickelt werden-der Integrationsaufwand wird wesentlich vereinfacht. • Die Diagnose wird durch das integrierte Diagnosesystem vereinfacht. • Bestehende Hardware/Software Lösungen können in die neue Architektur integriert werden indem die in der legacy Applikation vorhandene Kommunikationsschnittstelle in der C-Einheit emuliert wird. • Die Entwicklung der Anwendung wird unabhängig von der konkreten Architektur des verwendeten Kommunikationssystems, da die Schnittstelle zwischen A-Rechner und C-Einheit technologieinvariant gehalten werden kann. F.inmichknnip. 5 5 2.004 4 • « 4 • · · · ·
Mb·
ZUSAMMENFASSUNG
Die vorliegende Erfindung offenbart den inneren Aufbau eines Knotenrechners für ein integriertes verteiltes Echtzeitsystem, in dem mehrere Subsysteme mit unterschiedlichen Sicherheitsanforderungen in einem Knotenrechner nebeneinander ausgeführt werden können. Es wird vorgeschlagen, in einem SOC Knotenrechner mehrere unabhängige Applikationsrechner zu realisieren und zwischen diesen Applikationsrechnem und dem Kommunikationskontroller eines zeitgesteuerten Kommunikationssystems eine Connector Einheit einzufügen, die der Verteilung der Nachrichteninhalte auf diese Applikationsrechner vomimmt.
KURZE BESCHREIBUNG DER ABBILDUNGEN
Das vorab beschriebene Ziel und andere neue Eigenschaften der vorliegenden Erfindung werden in den angeführten Abbildungen erläutert.
Fig. 1 zeigt den inneren Aufbau eines mixed-criticality Knotenrechners.
Fig. 2. zeigt ein verteiltes Computersystem, in dem vier mixed-criticality Knotenrechner über zwei Kommunikationskanäle verbunden sind.
Fig. 3 zeigt einen mixed-criticality Knotenrechner für eine sicherheitsrelevante Anwendung mit drei Connector Einheiten und acht Applikationscomputem.
BESCHREIBUNG EINER REALISIERUNG
Im folgenden Abschnitt wird eine konkrete Realisierung des Aufbaus eines mixed-criticality Knotenrechners mit einer Connector Eineit an einem möglichen Beispiel gezeigt.
Fig. 1 zeigt einen SOC (System-on-Chip) Knotenrechner 100 der über zwei replizierte Kommunikationskanäle 108 und 109 eines zeitgesteuerten Echtzeitkommunikationssystems mit den anderen Knotenrechnem des verteilten Systems verbunden ist.
Der Knotenrechner 100 der Fig. 1 beinhaltet vier Applikations Rechner (A-Rechner) 110,120,130 und 140, und eine Connector-Einheit (C-Einheit) 101. Eine C-Einheit 101 kann in einem Knotenrechner auch sinnvoll eingesetzt werden, wenn nur zwei A-Rechner vorhanden sind.
Jeder der A-Rechner 110,120,130 und 140 verfügt über einen eigenen Prozessor (CPU) und einen eigenen Speicher. Es ist deshalb konstruktiv ausgeschlossen, dass ein A-Rechner einen anderen A-Rechner im Zeit oder Wertebereich direkt beeinflussen kann, da weder der Speicherbereich noch die CPU gemeinsame Ressourcen darstellen.
Einre.ichlconie. 5. S 2004
Die C-Einheit hat eine Schnittstelle 102 zu den Kommunikationskanälen 108 und 109. Ein konkretes Beispiel für die Auslegung einer solchen Schnittstelle ist in [11] enthalten. In der Literatur [10] wird diese Schnittstelle 102 auch als Communication Network Interface (CNI) bezeichnet.
Die C Einheit ist über die Punkt-zu-Punkt Schnittstellen 111,121, 131 und 141 mit den A Rechnern 110,120,130 und 140 verbunden. Über die Punkt-zu-Punkt Schnittstelle 111 kann die C-Einheit die globale Zeit, die die C-Einheit von 102 erhält, und Daten von 102 an den A-Rechner 110 übergeben und von dem A-Rechner 110 übernehmen. Das gleiche gilt für die weiteren A-Rechner 120,130 und 140.
Erfindungsgemäß wird die C-Einheit 101 nur jene Daten an den A-Rechner 110 übergeben, die vom A-Rechner 110 zur Lösung seiner Aufgabe benötigt werden. Die Information, welche Daten von der C-Einheit an den A-Rechner 110 weiterzugeben sind findet sich in einer Steuerungstabelle, die der C-Einheit im Rahmen der Initialisierung zur Verfügung gestellt wird.
Entsprechendes gilt für die Schnittstelle 121 zu A-Rechner 120, die Schnittstelle 131 zu A-Rechner 130, und die Schnittstelle 141 zu A-Rechner 140.
Wenn aus der Sicht von A-Rechner 110 die Schnittstelle 111 den gleichen syntaktischen und semantischen Aufbau wie die Schnittstelle 102 hat, dann ist aus der Sicht der Software von 110 nicht zu unterscheiden, ob die Kommunikation zur C-Einheit 101 oder direkt zum Kommunikationskontroller 102 stattfindet. In diesem Fall hat die Einfügung der C-Einheit keine Auswirkungen auf die Software in 110, was ein großer Vorteil für bestehende legacy Anwendungen ist.
Der A-Rechner 110 kann über die Input/Output Schnittstelle 112 über die Leitungen 117, 118 und 119 Sensoren und Aktuatoren direkt ansprechen.
Die Schnittstelle 121 kann ein anderes Kommunikationsprotokoll als 102 realisieren. In diesem Fall übernimmt die C-Einheit die Rolle einer Protokolltransformation von der Protokollschnittstelle 121 zur Protokollschnittstelle 102.
Der Knotenrechner 130 kann eine lokale Schnittstelle 132 zu einem anderen Kommunikationssystem 139 haben. Der A-Rechner 130 wird dann zum Gatewayrechner zwischen dem Cluster der Fig. 2 und dem Cluster mit dem Kommunikationssystem 139.
Wenn der A-Rechner 110 Daten an den A-Rechner 120 übergeben will, so muss dies über die Schnittstellen 111 und 121 zum C Rechner erfolgen. Die Steuerungstabelle muss angeben, welche Daten vom A-Rechner 111 an den A-Rechner 121 weiterzuleiten sind. Entsprechendes gilt für die anderen A Rechner des Knotenrechners 100. Es gibt also keine direkte Verbindung zwischen den A-Rechnem des Knotenrechners 100.
Fig. 2 zeigt ein System mit vier Knotenrechner 210, 220, 230 und 240 die über zwei Kommunikationskanäle 201 und 202 eines zeitgesteuerten Kommunikationssystems verbunden sind.
Entsprechend der Patentanmeldung AT 844/2003 vom 30.5.2003 kann ein solches zeitgesteuertes Kommunikationssystem mehrere abgekapselte virtuelle Kommunikationskanäle mit definiertem Verhalten im Zeit- und Wertebereich auf einem einzigen physikalischen Kanal unterstützen.
Wenn angenommen wird, dass die in Fig. 2 im linken oberen Eck von 210, 220, 230 und 240 dargestellten vier Applikationsrechner ein Anwendungssystem bilden, so kann F.inreirhknnie 5 5 9004 diesem Anwendungssystem ein abgekapselter virtueller Kommunikationskanal zur Kommunikation zugewiesen werden. Damit ist die vollkommene Abkapselung eines Anwendungssystems im Zeit- und Wertebereich erreicht. Die unbeabsichtigte wechselseitige Beeinflussung von unterschiedlichen Anwendungssystem wird somit architektonisch ausgeschlossen.
Fig. 3 zeigt die innere Struktur eines Knotenrechners in einem sicherheitskritischen System.
In einem verteilten System, das Anwendungssubsysteme mit unterschiedlichen Sicherheitsanforderungen zu bedienen hat, ist es sinnvoll, das Anwendungssystem mit der höchsten Sicherheitsanforderung sehr einfach zu gestalten, um eine formale Analyse dieses Anwendungssystems zu ermöglichen.
In einem solchen System ist es daher sinnvoll innerhalb eines Knotenrechners 100 mehrere C-Einheiten rekursiv einzusetzen. Auf der untersten Ebene wird eine sehr einfache C-Einheit 300 die Trennung der sicherheitskritischen Anwendungen 310 von den nicht sicherheitskritischen Anwendungen 320 vornehmen.
Die C-Einheit 300 übernimmt die Daten von der Kommunikationsschnittstelle 102, die über die Kommunikationskanäle 108 und 109 mit den anderen Knotenrechnem verbunden ist, und übergibt die für das sicherheitskritische System bestimmten Daten über die Schnittstelle 311 an das sicherheitskritische Subsystem 310 und die für die nicht sicherheitskritischen Anwendungen bestimmten Daten über die Schnittstelle 321 an das Subsystem 320.
Falls erforderlich kann eine zweite C Einheit in 310 mehrere sicherheitskritische Subsysteme voneinander abkapseln. Im nicht sicherheitskritischen Bereich übernimmt die C-Einheit 320 diese Aufgabe.
Der Vorteil einer solchen Anordnung liegt in der radikalen Trennung der sicherheitskritischen von den nicht-sicherheitskritischen Anwendungen. Der Sicherheitsnachweis hat sich ausschließlich mit der einfachen C-Einheit 300 und den sicherheitskritischen Subsystem zu befassen und muss die nicht-sicherheitskritischen Subsysteme nicht berücksichtigen.
Wenn die Schnittsstellen 102,311 und 321 von der gleichen Art sind und nur zeitgesteuerte Zustandsnachrichten übertragen, dann muss die C-Einheit 300 lediglich Nachrichteninhalte zwischen diesen drei Schnittstellen periodisch kopieren. Eine solche einfache C-Einheit 300 ist einer formalen Analyse zugänglich.
In diesem Fall wird es sinnvoll sein, die einfache C-Einheit 300 in den Kommunikationskontroller 102 zu integrieren und somit die Trennung der sicherheitskritischen von den nicht sicherheitskritischen Anwendungen bereits im Kommunikationskontroller 102 vorzunehmen. Eine solche einfache C-Einheit benötigt keinen eigenen Prozessor und lässt sich gegebenenfalls in der Form einer dedizierten Hardware realisieren.
Ein A-Rechner, z.B. der Rechner 110 von Fig. 1, kann auch über zwei Schnittstellen (nicht nur mit der einen in Fig. 1 gezeigten Schnittstelle 111) mit der C-Einheit 101 verbunden sein.
Es kann vorteilhaft sein, eine Schnittstelle für die Übertragung von Zustandsnachrichten und eine zweite für die Übertragung von Ereignisnachrichten vorzusehen [9]. Die C-Einheit 101 kann dann, entsprechend dem in der AT Patentanmeldung 429/2001 vom F.inreirhknnie. S S 2004 19.3.2001 offenbarten Verfahren die Ereignisnachrichten in Zustandsnachrichten umwandeln und umgekehrt.
In diesem Fall wird es sinnvoll sein, die C-Einheit 101 mit einem eigenen Prozessor und Speicher auszustatten. Wenn erforderlich kann die C-Einheit auch eine Transformation der unterschiedlichen Protokolle, die an den Schnittstellen 102, 111, 121, 131 und 141 zum Einsatz kommen, vornehmen.
Zum Beispiel kann an der Schnittstelle 102 das TT-Ethemet Protokoll zum Einsatz kommen, an der Schnittstelle 112 das TTP/C Protokoll, an der Schnittstelle 121 das FlexRay Protokoll, an der Schnittstelle 131 das CAN Protokoll und an der Schnittstelle 141 das TT CAN Protokoll. Die in diesem Fall relativ komplexe C-Einheit kann eine Transformation zwischen all diesen Protokollen durchführen. Es sei festgehalten, dass jedes zeitgesteuerte oder ereignisgesteuerte Protokoll die Kommunikation zwischen den Knotenrechner 210,220,230 und 240 und der C-Einheit bestimmen kann. Beispiele für solche Protokolle sind TTP/C [12], FlexRay [9], TT-CAN, TT-Ethemet, CAN oder LIN.
Das Protokoll an der Schnittstelle 102 muss eine zeitgesteuerte Übertragungsphase unterstützen, damit die verschiedenen virtuellen Kommunikationskanäle voneinander zeitlich abgekapselt werden können. Beispiele für solche Protokolle sind TTP/C [12], FlexRay [9], TT-CAN und TT-Ethemet. Die ereignisgesteuerte Übertragungsphase von FlexRay [9], TT-CAN und TT-Ethemet kann für Nachrichten verwendet werden, die voneinander zeitlich nicht abgekapselt werden müssen.
Um transiente und permanente Fehler die in dem Knotenrechner 100 auftreten genau diagnostizieren zu können, kann die C-Einheit das Verhalten der A-Rechner 110,120, 130 und 140 an den Schnittstellen 111,121,131 und 141 kontinuierlich überwachen.
Zu diesem Zweck können im Rahmen der Systementwicklung Post-Conditions für Nachrichten im Zeit- und Wertebereich formuliert werden, die an diesen Schnittstellen 111,121,131 und 141 immer eingehalten werden müssen und von der C Einheit zur Laufzeit überprüft werden.
Diese Post-Conditions können neben einem Fehlverhalten auch ein Out-of-norm Verhalten eines A-Rechners charakterisieren. Ein Out-of-norm Verhalten liegt vor, wenn ein noch richtiges aber unwahrscheinliches Verhalten des betreffenden A-Rechners beobachtet wird. Zum Beispiel kann vor einer ereignisgesteuerten Schnittstelle die Länge der Warteschlange vor dem Konsumenten von Nachrichten verwendet werden, um ein Out-of-norm Verhalten zu charakterisieren. Wenn diese Warteschlange eine vorab definierte kritische Länge übersteigt, liegt ein out-of-norm Verhalten vor.
Jedes Fehl verhalten oder Out-of-norm Verhalten kann über einen dedizierten Diagnosekanal von der C-Einheit über einen auf den Kanälen 108 und 109 realisierten virtuellen Kommunikationskanal an einen Diagnosejob zur weiteren Auswertung übergeben werden. Ein solcher Diagnosejob kann auf einem dedizierten A Rechner eines mixed-criticality Knotenrechners oder in einer abgekapselten Partition eines mixed critcality Knotenrechners ausgeführt werden.
Um einen gegebenen Knotenrechnern in unterschiedlichen Anwendungsszenarien einsetzen zu können, ist es vorteilhaft, wenn der vorhandene Speicher eines Knotenrechners den einzelnen A-Rechnem nicht fix zugewiesen ist, sondern im Rahmen der Initialisierung des Knotenrechners dynamisch den verschiedenen A-Rechner des Knotenrechners zugeteilt werden kann. Zu diesem Zweck ist in der F.inreichlconie. A A 9.004
Knotenrechnerhardware ein Registersatz vorhanden, der angibt, welcher Speicherblock welchen Knotenrechner zugewiesen wird. Dieser Registersatz wird im Rahmen der Initialisierung des Knotenrechners beschrieben und bleibt dann bis zur nächsten Initialisierung unverändert. Mit diesem Mechanismus kann die Speicheraufteilung des Knotenrechners an die Anforderungen der Anwendungssoftware angepasst werden.
Es ist vorteilhaft, wenn die Steuerungstabelle der C-Einheit 101 und die Core Images der A-Rechner 110,120,130 und 140 über die Schnittstellen 108 und 109 in der Start-up Phase des Systems geladen werden können. Um einen nicht-autorisierten Zugriff zum System zu unterbinden, können die Ladeprotokolle mit bekannten asymmetrischen kryptographischen Verfahren gesichert werden. F.inre.ichknnie. 5. 5. 9004

Claims (1)

  1. 9 •· · * ···· ·· ···· • · ·· · · · · · • · ··«···· · · • · · ·*·· «««·« • · · · ♦ ♦ ♦ • · ··· · ·♦♦ «« m PATENTANSPRÜCHE (1) Mixed-Criticality Knotenrechner eines verteilten Echtzeitsystems mit einem Kommunikationskontroller zu einem gegebenen zeitgesteuerten Echtzeitkommunikationssystem dadurch gekennzeichnet, dass der Knotenrechner mindestens eine Connector Einheit (C-Einheit) und n Applikations Rechner (A-Rechner) beinhaltet und wo jeder der n A-Rechner über seinen eigenen Prozessor und einen eigenen Speicher verfügt und wo die A-Rechner sternförmig um die C-Einheit angeordnet sind, und wo die C-Einheit eine Kommunikationsschnittstelle (CNI-Communication Network Interface) zu dem Kommunikationskontroller für das Echtzeitkommunikationssystem hat, und wo jeder der n A-Rechner eine Punkt-zu-Punkt Schnittstelle zur C-Einheit hat, und wo die C-Einheit die globale Zeit, die sie über die CNI erhält, über die Punkt-zu-Punkt Schnittstellen an die A-Rechner weiterleitet, und wo die C-Einheit die an der CNI eintreffenden Daten entsprechend einer Steuerungstabelle auf die Punkt-zu-Punkt Schnittstellen der A-Rechner aufteilt, und wo die C-Einheit die Ausgabedaten, die sie über die Punkt-zu-Punkt Schnittstellen der A-Rechner erhält, an die CNI Schnittstelle übergibt. (2) Mixed-Criticality Knotenrechner nach Anspruch 1 dadurch gekennzeichnet, dass eine oder mehrere der Punkt-zu-Punkt Schnittsstellen zwischen einem A-Rechner und der C-Einheit syntaktisch und semantisch so aufgebaut sind wie die gegebene CNI zwischen der C-Einheit und dem Kommunikationskontroller, so dass aus der Sicht des A-Rechners nicht erkennbar ist, ob seine Punkt-zu-Punkt Schnittstelle zu einer C-Einheit oder direkt zum Kommunikationskontroller führt. (3) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 2 dadurch gekennzeichnet, dass die C-Einheit in dem Kommunikationskontroller integriert ist. (4) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 3 dadurch gekennzeichnet, dass die C-Einheit direkt in der Form dedizierter Hardware realisiert ist, die über die Parameter der Steuerungstabelle gesteuert wird. (5) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 4 dadurch gekennzeichnet, dass die C-Einheit ein autonomer programmierbarer Rechner mit eigener CPU, eigenem Speicher und eigener Software ist. (6) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 5 dadurch gekennzeichnet, dass anstelle eines A-Rechners ein weitere C-Einheit angeordnet ist, die selbst wieder mehrere Punkt-zu-Punkt Schnittstellen zu weiteren A Rechnern unterstützt. (7) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 6 dadurch gekennzeichnet, dass Daten über die Punkt-zu-Punkt Schnittstelle von einem A-Rechner zur C-Einheit und von dieser zu einem anderen A-Rechner übertragen werden können. (8) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 7 dadurch gekennzeichnet, dass von der C-Einheit nur jene Daten an einen A-Rechner übertragen werden, die dieser A-Rechner für die Lösung seiner Aufgabe benötigt. F.inmir.hkonip. 5 5 9004 (9) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 8 dadurch gekennzeichnet, dass die Syntax und Semantik der Punkt-zu-Punkt Schnittstellen von einer C-Einheit zu den verschiedenen A-Rechnem unterschiedlich ausgelegt sein können und den Schnittstellen von Kommunikationskontrollern unterschiedlicher Kommunikationsprotokolle entsprechen können. (10) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 9 dadurch gekennzeichnet, dass von der C-Einheit zwei oder mehr Punkt-zu-Punkt Schnittstellen zu einem A-Rechner führen, wobei die Syntax und Semantik dieser Punkt-zu-Punkt Schnittstellen unterschiedlich sein können und den Schnittstellen von Kommunikationskontrollem unterschiedlicher Kommunikationsprotokolle entsprechen können. (11) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 10 dadurch gekennzeichnet, dass eine der Punkt-zu-Punkt Schnittstelle zwischen der C-Einheit und einem A-Rechner für die Übertragung von Ereignisnachrichten und eine zweite Schnittstelle zwischen der C-Einheit und dem gleichen A-Rechner für die Übertragung von Zustandsnachrichten ausgelegt ist. (12) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 11 dadurch gekennzeichnet, dass eine der Punkt-zu-Punkt Schnittstelle zwischen der C-Einheit und einem A-Rechner für die Übertragung von Ereignisnachrichten entsprechend dem CAN Protokoll ausgelegt ist. (13) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 12 dadurch gekennzeichnet, dass eine der Punkt-zu-Punkt Schnittstelle zwischen der C-Einheit und einem A-Rechner für die Übertragung von Zustandsnachrichten entsprechend dem TTP/C Protokoll ausgelegt ist. (14) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 13 dadurch gekennzeichnet, dass eine der Punkt-zu-Punkt Schnittstelle zwischen der C-Einheit und einem A-Rechner für die Übertragung von Nachrichten entsprechend dem FlexRay Protokoll ausgelegt ist. (15) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 14 dadurch gekennzeichnet, dass die C-Einheit notwendige Protokolltransformationen zwischen ihren Schnittstellen vomimmt. (16) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 15 dadurch gekennzeichnet, dass ein A Rechner eine lokale Schnittstelle zu den Sensoren und Aktuatoren hat, die dieser A-Rechner zur Lösung seiner Aufgabe benötigt. (17) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 16 dadurch gekennzeichnet, dass ein A-Rechner eine lokale Kommunikationsschnittstelle zu einem privaten Kommunikationssystem hat und damit die Rolle einer Gateway zwischen zwei Cluster übernimmt. (18) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 17 dadurch gekennzeichnet, dass die unterschiedlichen A-Rechner weitgehend autonom arbeiten und nach Auftreten eines Fehlers die Fehlerbehandlung und gegebenenfalls den Wiederanlauf autonom durchführen. (19) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 18 dadurch gekennzeichnet, dass nach Erkennen eines Fehlers oder einer out-of-norm Bedingung in einem der A-Rechner oder in der C-Einheit eine Fehlermeldung an einen Diagnoserechner gesendet wird. F.inre.ichkonie. 5. 5 9.004 (20) Mixed-Criticality Knotenrechner nach einem oder mehreren der Ansprüche 1 bis 19 dadurch gekennzeichnet, dass im Rahmen der Initialisierung des Knotenrechners der vorhandene Speicher des Knotenrechners dynamisch auf die einzelnen A-Rechner aufgeteilt wird. F.inre.irhknnie. 5 5 9.004
AT0077304A 2004-05-05 2004-05-05 Aufbau eines knotenrechners für ein integriertes verteiltes echtzeitsystem AT500103A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AT0077304A AT500103A1 (de) 2004-05-05 2004-05-05 Aufbau eines knotenrechners für ein integriertes verteiltes echtzeitsystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
AT0077304A AT500103A1 (de) 2004-05-05 2004-05-05 Aufbau eines knotenrechners für ein integriertes verteiltes echtzeitsystem

Publications (1)

Publication Number Publication Date
AT500103A1 true AT500103A1 (de) 2005-11-15

Family

ID=35468029

Family Applications (1)

Application Number Title Priority Date Filing Date
AT0077304A AT500103A1 (de) 2004-05-05 2004-05-05 Aufbau eines knotenrechners für ein integriertes verteiltes echtzeitsystem

Country Status (1)

Country Link
AT (1) AT500103A1 (de)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2648975A1 (fr) * 1989-06-23 1990-12-28 Hewlett Packard France Sa Systeme de gestion de communications a un noeud d'un reseau
EP1148678A2 (de) * 2000-04-18 2001-10-24 Merten GmbH & Co. KG Datenbus-Einrichtung
US20020141720A1 (en) * 2001-04-03 2002-10-03 Ross Halgren Rack structure
AT410491B (de) * 2001-03-19 2003-05-26 Fts Computertechnik Gmbh Kommunikationsverfahren zur realisierung von ereigniskanälen in einem zeitgesteuerten kommunikationssystem
AT412592B (de) * 2003-05-30 2005-04-25 Fts Computertechnik Gmbh Virtuelle netzwerke in einem zeitgesteuerten multicluster echtzeitsystem

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2648975A1 (fr) * 1989-06-23 1990-12-28 Hewlett Packard France Sa Systeme de gestion de communications a un noeud d'un reseau
EP1148678A2 (de) * 2000-04-18 2001-10-24 Merten GmbH & Co. KG Datenbus-Einrichtung
AT410491B (de) * 2001-03-19 2003-05-26 Fts Computertechnik Gmbh Kommunikationsverfahren zur realisierung von ereigniskanälen in einem zeitgesteuerten kommunikationssystem
US20020141720A1 (en) * 2001-04-03 2002-10-03 Ross Halgren Rack structure
AT412592B (de) * 2003-05-30 2005-04-25 Fts Computertechnik Gmbh Virtuelle netzwerke in einem zeitgesteuerten multicluster echtzeitsystem

Similar Documents

Publication Publication Date Title
EP2235628B1 (de) Kraftfahrzeug-steuervorrichtung
US10248477B2 (en) System, method and computer program product for sharing information in a distributed framework
DE60017457T2 (de) Verfahren zur isolierung eines fehlers in fehlernachrichten
DE102015108689B4 (de) Sicherheitsknoten in Zwischenverbindungsdatenbussen
DE102017214068B4 (de) Verfahren, Vorrichtung und Computerprogramm zur dynamischen Ressourcenzuweisung in einem Mehrprozessor-Computersystem
DE102015215480A1 (de) Verfahren und Vorrichtung zum Übertragen einer Nachricht in einem Fahrzeug
DE102017204691B3 (de) Steuervorrichtung zum redundanten Ausführen einer Betriebsfunktion sowie Kraftfahrzeug
EP4016296B1 (de) Fahrzeugsteuergerät mit synchronem treiber
DE102012017339B4 (de) Rechnersystem
EP3655876B1 (de) Ein-chip-system, verfahren zum betrieb eines ein-chip-systems und kraftfahrzeug
EP2075655A1 (de) Sicherheitssteuerung
WO2014071970A1 (de) Kaskadiertes feldbussystem
EP3381159B1 (de) Direkter zugriff auf bussignale in einem kraftfahrzeug
AT500103A1 (de) Aufbau eines knotenrechners für ein integriertes verteiltes echtzeitsystem
DE102021209687A1 (de) Cloudrechner zur Ausführung zumindest einer teilweise automatisierten Fahrfunktion eines Kraftfahrzeugs und Verfahren zum Betreiben eines Cloudrechners
DE102020213018A1 (de) Verfahren und Vorrichtung zur Übertragung von Daten zwischen Gastsystemen eines gemeinsamen Wirtssystems
WO2012110541A1 (de) Verfahren zum übertragen von daten über einen synchronen seriellen datenbus
DE102022212286A1 (de) Diagnose-Verfahren für ein elektronisches System und Erzeugen von Diagnose-Anwendungen für das elektronische System
EP3036649B1 (de) Verfahren und schaltungsanordnung zur zeitlichen eingrenzung und trennung von zugriffen in einem ein-chip-system
AT412592B (de) Virtuelle netzwerke in einem zeitgesteuerten multicluster echtzeitsystem
EP4189550A1 (de) Steuergerät für ein kraftfahrzeug, kraftfahrzeug und verfahren zum betrieb eines steuergeräts
DE102023110942B3 (de) Verfahren und Framework für Steuergeräte von Kraftfahrzeugen, um darin Applikationen miteinander zu koppeln, sowie zugehöriges Kraftfahrzeug und Computerprogramm
DE102011005239A1 (de) Sicherheitssystem sowie Verfahren zum Austauschen von sicherheitsgerichteten Daten in einem Sicherheitssystem
DE102018123563A1 (de) Verfahren zur Zwischenkernkommunikation in einem Mehrkernprozessor
DE102022111836A1 (de) Verfahren und Kraftfahrzeug-Steuergerät zum Betreiben einer Containervirtualisierung mit Logging-Funktion sowie computerlesbares Speichermedium

Legal Events

Date Code Title Description
AZ Withdrawn

Effective date: 20160515