DE19616753A1 - Vorrichtung und Verfahren zur Steuerung eines Datenbusses - Google Patents
Vorrichtung und Verfahren zur Steuerung eines DatenbussesInfo
- Publication number
- DE19616753A1 DE19616753A1 DE19616753A DE19616753A DE19616753A1 DE 19616753 A1 DE19616753 A1 DE 19616753A1 DE 19616753 A DE19616753 A DE 19616753A DE 19616753 A DE19616753 A DE 19616753A DE 19616753 A1 DE19616753 A1 DE 19616753A1
- Authority
- DE
- Germany
- Prior art keywords
- data bus
- data
- controlling
- bus
- processor
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
Description
Die Erfindung betrifft eine Vorrichtung und ein Verfahren
zur Steuerung eines Daten-Übertragungskanals oder
Datenbusses, insbesondere eines Datenbusses, auf dem die
Daten gemäß eines vorgegebenen Übertragungsprotokolls oder
Busprotokolls bitseriell übertragen werden, sowie die
Verwendung einer hierarchischen Prozessorarchitektur zur
Steuerung eines Datenbusses. Die Erfindung ist anwendbar
für die Steuerung einer Vielzahl von Datenbussen, auf denen
Daten nach unterschiedlichen Übertragungsprotokollen
übertragen werden. Die Erfindung ist insbesondere geeignet
für die Steuerung einer Vielzahl von Feld-Datenbussen oder
Feldbussen für allgemeine Anwendungen und insbesondere für
die Steuerung von Feldbussen in Kraftfahrzeugen.
Daten-Übertragungskanäle oder Datenbusse dienen der
Datenübertragung zwischen elektronischen
Datenverarbeitungsanlagen, Peripheriegeräten und der
Umwelt. Diese Datenübertragung hat nach gewissen Regeln zu
erfolgen, dem Übertragungsprotokoll oder Busprotokoll.
Aufgrund der historischen Entwicklung haben sich eine
Vielzahl von Datenbussen etabliert, die eine
Datenübertragung gemäß dem jeweiligen, Datenbus-
spezifischen Busprotokoll erlauben.
Bei den Datenbussen unterscheidet man zwischen bitseriellen
Datenbussen, bei denen die Datenbits einzeln und
sequentiell übertragen werden, und bitparallelen
Datenbussen, bei denen jeweils eine bestimmte Anzahl von
Datenbits, ein byte, parallel übertragen wird.
Unter den seriellen Datenbussen nehmen die Feld-Datenbusse
oder Feldbusse eine Sonderstellung ein. Ein Feldbus ist ein
lokales Kommunikationsnetzwerk, das es ermöglicht, die
Punkt-zu-Punkt Verbindungen etwa zwischen einem oder
mehreren Meßwertaufnehmern und einer
Datenverarbeitungsvorrichtung oder zwischen einer
Datenverarbeitungsvorrichtung und einer Anzeigeeinheit zu
ersetzen. Das Anwendungsgebiet von Feldbussen ist
gegenwärtig insbesondere die industrielle
Fertigungstechnik. Darüberhinaus gibt es erste Anwendungen
für den Einsatz von Feldbussen im Kraftfahrzeug.
Gerade bei den Feldbussen hat sich eine Vielzahl von
Busvarianten am Markt etabliert, die jeweils für einen
bestimmten Anwendungszweck konzipiert und optimiert wurden.
Üblicherweise benötigt jede dieser Feldbusvarianten eine
eigene, proprietäre Steuerung, da die zugehörigen
Busprotokolle unterschiedlich sind.
In R. Prasad und J.-D. Decotignie: "Die Feldbusse - Der
große Basar, Teil 1: Die Probleme der industriellen
Kommunikation", Bulletin Schweizer Elektrotechnischer
Verein/Verbund Schweizer Elektrizitätswerke, Volume 84, Nr.
21, 22. Oktober 1993, Seite 11-17, wird eine Einordnung der
Feldbusse in die gegenwärtigen Kommunikationswelt gegeben
und auf die spezifischen Probleme beim Einsatz von
Feldbussen hingewiesen. Es wird am Beispiel der Steuerung
einer Werkzeugmaschine auf die Problematiken des zyklisch
oder des verlangten Datenaustausches, die Art der
Kommunikationsbeziehungen und Dateneigenschaften, die
Gültigkeitsdauer und Antwortzeiten und die Komplexität der
Prozeßkombinationen eingegangen. Weiterhin wird auf die
Bedeutung von Sichterheits- und Zuverlässigkeitsaspekten
beim Einsatz von Feldbussen hingewiesen.
In R. Prasad und J.-D. Decotignie: "Die Feldbusse - Der
große Basar, Teil 2: Das Pflichtenheft", Bulletin
Schweizer Elektrotechnischer Verein/Verbund Schweizer
Elektrizitätswerke, Volume 84, Nr. 25, 17. Dezember 1993,
Seite 26-30, werden die Eigenschaften der Geräte und der
Daten für den Entwurf eines Feldbusnetzes berücksichtigt,
Topologien und Übertragungsmedien vorgestellt und ein
Pflichtenheft für Feldbusse erstellt. Dabei werden
insbesondere die Dienste der Applikationsschicht erfaßt und
die Funktion der Netzverwaltung festgelegt.
In J.-D. Decotignie: "Die Feldbusse - Der große Basar,
Teil 3: Vergleich von existierenden Lösungen", Bulletin
Schweizer Elektrotechnischer Verein/Verbund Schweizer
Elektrizitätswerke, Volume 84, Nr. 21, 22. Oktober 1993,
Seite 27-34, werden verschiedene etablierte Feldbussysteme,
wie beispielsweise BITBUS, CAN (Controller Area Network),
FIP (Field Instrumentation Protocol), HART, INTERBUS-S,
LON, MIL-STD-1553, SERCOS und PROFIBUS (deutscher
Feldbusstandard DIN 19245), vorgestellt und verglichen. Es
wird herausgearbeitet, daß gegenwärtig zahlreiche
Feldbusvarianten existieren, daß aber keine dieser
Feldbusvarianten das gesamte Spektrum der
Benutzeranforderungen decken kann.
In W. Lawrenz: "AUTOBUSSE für die Sensor/Aktor-Vernetzung
am Beispiel CAN", Automatisierungstechnische Praxis,
Volume 35, Nr. 8, August 1993, wird das Protokoll und die
Eigenschaften eines automotiven Feldbusses, des CAN
(Controller Area Network) Feldbusses, eingehend
beschrieben. Hierfür werden komplette Steuerungen
vorgestellt, sowohl für die schaltungstechnische Komponente
als auch für die programmierungstechnische Komponente.
Weiterhin werden verschiedene Schaltkreise von mehreren
Herstellern vorgestellt, die für die Steuerung der
verschiedenen automotiven Feldbusse jeweils erforderlich
sind.
Aufgrund der unterschiedlichen und größtenteils
proprietären Busprotokolle der einzelnen Datenbusse ist
gegenwärtig für jeden Datenbus eine spezifische Steuerung
erforderlich. Zusammen mit der Vielzahl von gegenwärtig auf
dem Markt etablierten Datenbusvarianten existiert eine
große Anzahl an Datenbussteuerungen, die jeweils nur für
einen bestimmten Bustyp verwendbar sind.
Dies verursacht hohe Kosten für die Hersteller von
Datenbussteuerungen, da die Stückzahlen aufgrund der nur
eingeschränkten Einsatzmöglichkeiten gering sind. Für die
Anwender von Datenbussteuerungen erfordert die Vielzahl an
Datenbussteuerungen einen hohen Kostenaufwand aufgrund der
erforderlichen Bereitstellung mehrerer Datenbussteuerungen,
um mit den verschiedenen Datenbussen arbeiten zu können.
Weiterhin erfordert die Anpassung an einen neuen
Datenbustyp und dessen Datenbusprotokoll eine Änderung der
Schaltungstechnik der bestehenden Datenbussteuerungen,
insbesondere eine Erweiterung oder Veränderung einzelner
schaltungstechnischer Funktionen der Datenbussteuerung, und
damit einen hohen Entwicklungs-, Zeit- und Kostenaufwand.
Der Erfindung liegt daher die Aufgabe zugrunde, eine
Steuerung für einen Datenbus zu entwickeln, welche die
Steuerung der gegenwärtig existierenden und insbesondere
der zukünftig zu entwickelnden Datenbusse mit den jeweils
zugehörigen Datenbusprotokollen erlaubt. Die Anpassung an
neue Datenbusprotokolle soll dabei mit geringem Zeit- und
Kostenaufwand bewerkstelligt werden. Die Erfindung soll
zudem eine Steuerung bereitstellen, die eine hohe
Datenübertragungsgeschwindigkeit auf dem Datenbus
ermöglicht.
Diese Aufgabe ist erfindungsgemäß gelöst durch eine
Vorrichtung, welche die im Anspruch 1 aufgeführten Merkmale
aufweist.
Dabei ist vorteilhaft, daß durch das Merkmal einer
hierarchischen Prozessorarchitektur mit mindestens zwei
Prozessorebenen, die Steuerungsaufgaben so auf die
verschiedenen Prozessorebenen verteilt werden können, daß
die verschiedenen Prozessorebenen für einen bestimmten
Steuerungsteil optimiert werden können; dadurch wird eine
hohe Signalverarbeitungsgeschwindigkeit und eine hohe
Datenverarbeitungsgeschwindigkeit erzielt. Weiterhin ist es
vorteilhaft, daß aufgrund der Aufteilung und Optimierung
der Steuerungsaufgaben die hohe
Signalverarbeitungsgeschwindigkeit mit einer einfachen
Schaltungstechnik realisiert werden kann; dadurch ist die
Steuervorrichtung zuverlässig im Betrieb und kostengünstig
in der Herstellung. Weiterhin ist vorteilhaft, daß die
hierarchische Prozessorarchitektur und die Verteilung der
Steuerungsaufgaben auf verschiedenen Prozessorebenen eine
zeit- und kostengünstige Anpassung an neue Datenbustypen
und die zugehörigen Datenbusprotokolle erlaubt,
insbesondere ohne Erweiterung oder Veränderung
schaltungstechnischer Einzelfunktionen.
In einer Ausgestaltung der Erfindung weist die Vorrichtung
die Merkmale des Anspruches 2 auf.
Dabei ist es vorteilhaft, daß die erste programmierbare
Ablaufsteuerung, die als freiprogrammierbarer Sequenzer
ausgeführt sein kann oder als Mikroprozessor mit
eingeschränktem Befehlsatz ausgeführt sein kann, mit einem
Befehlsatz ausgerüstet ist, der für die spezielle Anwendung
optimiert ist und der eine schnelle Instruktionsausführung
und eine hohe Verarbeitungsgeschwindigkeit der auf dem
Datenbus übertragenen Binärzeichen ermöglicht; die erste
programmierbare Ablaufsteuerung übernimmt beispielsweise
die Steueraufgaben auf der Binärzeichenebene und besitzt
einen für diese Steueraufgaben speziell abgestimmten
Befehlssatz. Weiterhin ist es vorteilhaft, daß die erste
programmierbare Ablaufsteuerung mit einer Überabtastung der
Datenbusinformation zu einer sicheren Entscheidung
hinsichtlich des Bitwertes 0/1 kommt, wobei die
Entscheidungskriterien frei programmierbar sind. Weiterhin
ist es vorteilhaft, daß aufgrund der freien
Programmierbarkeit der ersten Ablaufsteuerung die Anpassung
an neue Datenbustypen ohne Erweiterung oder Veränderung
schaltungstechnischer Einzelfunktionen zeit- und
kostengünstig erreicht wird. Weiterhin ist es vorteilhaft,
daß die zweite programmierbare Ablaufsteuerung, die als
freiprogrammierbarer Sequenzer ausgeführt sein kann oder
als Mikroprozessor mit eingeschränktem Befehlsatz
ausgeführt sein kann, mit einem Befehlsatz ausgerüstet ist,
der für die spezielle Anwendung optimiert ist und der eine
schnelle Instruktionsausführung und eine hohe
Verarbeitungsgeschwindigkeit der Datenworte ermöglicht; die
zweite programmierbare Ablaufsteuerung übernimmt
beispielsweise die Steueraufgaben auf der Datenwortebene
und besitzt einen für diese Steueraufgaben speziell
abgestimmten Befehlssatz. Ein Datenwort setzt sich dabei
aus einer Anzahl von Binärzeichen zusammen, wobei die
Anzahl der Binärzeichen je Datenwort in der Regel durch das
Datenbusprotokoll vorgegeben wird, und beispielsweise ein
Datenwort aus ein bis acht Bits bestehen kann. Weiterhin
ist es vorteilhaft, daß aufgrund der freien
Programmierbarkeit der zweiten Ablaufsteuerung die
Anpassung an neue Datenbusprotokolle ohne Erweiterung oder
Veränderung schaltungstechnischer Einzelfunktionen zeit-
und kostengünstig erreicht wird.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale des Anspruches 3 auf.
Dabei ist es vorteilhaft, daß die Synchronisation der
Taktsignale durch die erste Ablaufsteuerung erfolgt, die
aufgrund ihres zugeschnittenen Befehlssatzes diese
Synchronisation mit hoher Geschwindigkeit durchführen kann
und dadurch hohe Übertragungsraten auf dem Datenbus
erlaubt. Weiterhin ist es vorteilhaft, daß diese hohen
Übertragungsraten von beispielsweise 10 MHz bei
gleichzeitiger hoher Flexibilität hinsichtlich des
steuerbaren Datenbustypes erzielt werden; damit verbunden
ist nicht nur ein Zeitvorteil, sondern auch ein
Kostenvorteil, sowohl hinsichtlich der Übertragungs- als
auch der Betriebskosten der Steuerung. Wenngleich der
Datenbus kein Taktsignal auf einer separaten Taktleitung
mitführt, kann das Taktsignal, welches der Datenbus
implizit aufweist, aus der Abfolge der auf dem Datenbus
übertragenen Daten ermittelt werden.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale der Ansprüche 4 und 5 auf.
Dabei ist es vorteilhaft, daß die Filterung der
Binärzeichen variabel und programmierbar ist und somit
einfach, zeit- und kostengünstig an veränderte
Übertragungs- oder Protokollbedingungen angepaßt werden
kann. Die Filterung der Binärzeichen dient beispielsweise
einem Ausfiltern von Störungen auf dem Übertragungskanal;
dieses Ausfiltern kann beispielsweise durch Einzel-
Abtastung des Empfangssignales zu einem bestimmten
Zeitpunkt, durch Mehrfachabtastung mit entsprechender
Mehrheitslogik, etwa majority-Entscheidungsstrategien, oder
durch Prüffenstertechniken erfolgen. Weiterhin ist
vorteilhaft, daß die erste Ablaufsteuerung durch
entsprechende Mittel das Taktsignal für die zweite
Ablaufsteuerung bereitstellt und somit eine zuverlässige
und kostengünstige Kommunikation zwischen den beiden
Ablaufsteuerungen gewährleistet wird.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale des Anspruches 6 auf.
Dabei ist es vorteilhaft, daß die Ausführung eines Sende-
/Empfangs-Protokolles durch die zweite Ablaufsteuerung
erfolgt, die aufgrund ihres zugeschnittenen Befehlssatzes
diese Ausführung mit hoher Geschwindigkeit durchführen kann
und dadurch hohe Übertragungsraten auf dem Datenbus
erlaubt. Weiterhin ist es vorteilhaft, daß die hohen
Übertragungsraten bei gleichzeitiger hoher Flexibilität
hinsichtlich des auszuführenden Datenbusprotokolles erzielt
wird; damit verbunden ist nicht nur ein Zeitvorteil,
sondern auch ein Kostenvorteil, sowohl hinsichtlich der
Übertragungs- als auch der Betriebskosten der Steuerung.
Weiterhin ist es vorteilhaft, daß durch eine mögliche
Beschränkung der Protokollbearbeitung auf die zweite
Ablaufsteuerung eine Änderung oder Anpassung des
Datenbusprotokolles nur durch Veränderung des
Steuerprogrammes für die zweite Ablaufsteuerung erzielt
werden kann. Die zweite Ablaufsteuerung ist damit
vorteilhaft für die speziellen Aufgaben des
Kommunikationsaufbaues und der Initialisierung des
Datenbusses optimiert; dies kann umfassen: Die
Adressenidentifikation, wobei die Größe des Adreßfeldes
innerhalb von systembedingten Grenzen frei programmierbar
ist, das Senden/Empfangen der Adressen und der Nutzdaten
sowie gegebenenfalls der Prüfdaten und der Handshake-Daten.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale der Ansprüche 7 und 8 auf.
Dabei ist es vorteilhaft, daß die Entscheidung über die
Datenbus-Zugriffsberechtigung und Adresserkennung aufgrund
des optimierten Befehlssatzes der zweiten Ablaufsteuerung
mit hoher Geschwindigkeit erfolgt. Das Gleiche gilt
vorteilhafterweise für die Fehlererkennung. Die
Fehlererkennung kann beispielsweise durch Paritätsbits oder
durch ein zyklisches Blockprüfungsverfahren entsprechend
den Anforderungen des Datenbusprotokolles erfolgen. Im Fall
des zyklischen Blockprüfungsverfahrens ist es vorteilhaft,
daß das Prüfungspolynom frei programmiert werden kann.
Weiterhin kann die zweite programmiebare Ablaufsteuerung
auch Mittel zur Fehlerkorrektur aufweisen; die
Fehlerkorrektur ist dadurch vorteilhaft mit hoher
Geschwindigkeit und geringem zusätzlichem
Bauelementeaufwand möglich.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale des Anspruches 9 auf.
Dabei ist es vorteilhaft, daß separate Sende- und
Empfangsspeicher die Möglichkeit bieten, gesendete Daten
gleichzeitig in den Empfangsspeicher einzulesen, um im
Falle eines Übertragungsfehlers Kontrollfunktionen zu
aktivieren. Die Realisierung der Sende- und
Empfangsspeicher ist grundsätzlich mit verschiedenen
Speicherarchitekturen möglich; die Realisierung als FIFO-
Speicher bietet die Vorteile des geringen
Adressierungsaufwandes, des schnellen Zugriffs und der
kostengünstigen Realisierung.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale der Ansprüche 10 und 11 auf.
Dabei ist es vorteilhaft, daß verschiedene Datenformate
über Register ausgewählt werden können, so daß
Übertragungsformate wie beispielsweise Return-to-Zero (RZ),
Non-Return-to-Zero (NRZ), Manchester oder Bit-Stuffing
Methoden verarbeitet werden können. Das Bit-Stuffing dient
dabei der Takt-Sychronisation und fügt ein komplementäres
Bit ein, wenn eine Anzahl identischer Bits übertragen
wurde. Hinsichtlich der Registrierung der
Identifikationsbitfolgen ist es vorteilhaft, daß die Größe
und Bitbreite dieser Register eingestellt werden kann und
somit eine Anpassung an neue Datenbusprotokolle ohne
Erweiterung oder Veränderung schaltungstechnischer
Einzelfunktionen zeit- und kostengünstig erreicht wird. Die
Bereitstellung von Status- und Kontrollinformation, wie
beispielsweise die Belegung und den Status der FIFO-
Speicher, die Interrupt-Maskierung oder den
Fehlertatbestand, erlaubt vorteilhafterweise die
Überwachung der Steuerfunktionen mit geringem Kostenaufwand
und hoher Geschwindigkeit.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale des Anspruches 12 auf.
Dabei ist es vorteilhaft, daß die Vorrichtung auch für die
Steuerung von seriellen Datenbussen geeignet ist, und
insbesondere die Steuerung sowohl der gegenwärtig bekannten
als auch der zukünftig entwickelten industriellen Feldbusse
und automotiven Feldbusse ermöglicht, wie beispielsweise
dem ABUS (Automotive Bit-serial Universal-interface
System), CAN-Bus (Controller Area Network), SAE-Bus J1850
oder dem VAN-Bus (Vehicle Area Network). Die
Adaptionsmöglichkeit wird vorteilhafterweise aufgrund der
hierarchischen Prozessorarchitektur ohne oder mit nur
geringer Erweiterung oder Veränderung schaltungstechnischer
Einzelfunktionen zeit- und kostengünstig erreicht. Aufgrund
der Arbeitsteilung und Spezialisierung der einzelnen
Prozessorebenen wird eine hohe Verarbeitungsgeschwindigkeit
bei gleichzeitig geringem Kostenaufwand erzielt.
In einer weiteren Ausgestaltung der Erfindung weist die
Vorrichtung die Merkmale des Anspruches 13 auf.
Dabei ist es vorteilhaft, daß der PowerPC Mikrocontroller
aufgrund seiner RISC-Architektur besonders für die
Bearbeitung von Steuerungsaufgaben mit hoher
Geschwindigkeit geeignet ist; die Integration der
erfindungsgemäßen Datenbus-Steuerung ist mit geringem
Kosten- und Entwicklungsaufwand erreichbar und
gewährleistet einen zuverlässigen und kostengünstigen
Betrieb. Der PowerPC Mikrocontroller ist ein Mitglied der
PowerPC Prozessorfamilie, einer Familie moderner und
hochleistungsfähiger Mikroprozessoren und Mikrocontroller.
Der PowerPC Mikrocontroller kann über die Vetriebswege der
IBM Deutschland beziehungsweise der IBM Corporation
erworben werden. Weiterhin ist es vorteilhaft, daß
gleichzeitig andere Funktionen auf einer gemeinsamen
Funktionsplattform integriert werden können, beispielsweise
in einem Kraftfahrzeug Funktionen der Motorsteuerung,
Klimasteuerung, Navigation, Anzeigeeinheiten sowie Audio-
und Videoapplikationen. Die Funktionsplattform weist dabei
neben einem PowerPC Mikrocontroller mit integrierter
hierarchischer Prozessorarchitektur noch DRAM-Speicher,
Anzeigeeinheiten sowie Bustreiber und Businterfaces für die
verschiedenen Datenbusse auf; diese Bausteine teilen sich
die anfallenden Aufgaben vorteilhaft, beispielsweise
übernimmt ein Bustreiber das Überwachen eines Pegelfensters
innerhalb der auf dem Datenbus übertragenen Daten.
Die Aufgabe ist weiterhin erfindungsgemäß gelöst durch ein
Verfahren, welches die im Anspruch 14 aufgeführten
Verfahrensschritte aufweist.
Dabei ist es vorteilhaft, daß das getrennte Verarbeiten von
Binärzeichen und Datenworten in verschiedenen
Prozessorebenen und die damit einhergehende Spezialisierung
der Verfahrensschritte eine hohe
Verarbeitungsgeschwindigkeit mit geringem
schaltungstechnischen Aufwand ermöglicht und insbesondere
ein hohes Maß an Flexibilität des Steuerungsverfahrens
hinsichtlich der Anpassung an neue Datenbusprotokolle
bietet.
In einer Ausgestaltung der Erfindung weist das Verfahren
die Verfahrensschritte des Anspruches 15 auf.
Dabei ist es vorteilhaft, daß die Be- und Verarbeitung der
über den Datenbus übertragenen Binärzeichen beziehungsweise
der Datenworte, insbesondere das Synchronisieren der
Taktsignale beziehungsweise das Festlegen von Bitlängen,
durch eine erste beziehungsweise zweite Ablaufsteuerung,
die frei programmierbar ist und einen für die zu
bearbeitenden Steuerungsaufgaben optimierten Befehlssatz
aufweist, schnell, zuverlässig und mit geringem
Kostenaufwand geleistet wird. Es ist insbesondere
vorteilhaft, daß in dem erfindungsgemäßen Verfahren
beispielsweise Adreßfeldgrößen oder Prüfpolynome frei
programmiert werden können und somit ein hohes Maß an
Flexibilität des Steuerungsverfahrens hinsichtlich der
Anpassung an neue Datenbusprotokolle bietet.
In einer weiteren Ausgestaltung der Erfindung weist das
Verfahren die Verfahrensschritte nach Anspruch 16 auf.
Dabei ist es vorteilhaft, daß durch die Verwendung von
weitgehend äquivalenten Instruktionen für das Senden und
das Empfangen von Daten über den Datenbus und durch das
erfindungsgemäße Abspeichern dieser Instruktionen ein
Wechsel des Übertragungsmodus vom Senden auf Empfangen oder
umgekehrt zu jedem Zeitpunkt einer Arbitrierungsphase der
Übertragung ohne Unterbrechung möglich ist. Wenn
beispielsweise die Instruktionen derart in den ersten und
zweiten Adressbereichen abgelegt sind, daß sich die
Adressen äquivalenter Instruktionen nur in einer Gruppe von
Bits oder nur in einem Bit unterscheiden, beispielsweise
dem höchstwertigen Bit, kann von einem Sendevorgang durch
einfaches Invertieren dieses Bits in einen Empfangsvorgang
umgeschaltet werden. Dies ist dann besonders vorteilhaft,
wenn ein Sendevorgang begonnen wurde, eine Busarbitrierung
jedoch ergibt, daß keine Sendeberechtigung vorliegt,
sondern vielmehr ein anderer Busteilnehmer die
Sendeberechtigung besitzt und ausübt. Dieses
erfindungsgemäße Verfahren kann auch als Schattenprogramm-
Ablauf betrachtet werden, da bei jedem Ablauf eines
Sendeprogrammes das zugehörige Empfangsprogramm als
Schattenprogramm hinterlegt ist, um bei entsprechender
negativer Busarbitrierung ohne Umschaltverzögerung in den
Vordergrund zu treten und abzulaufen. Dies erlaubt
vorteilhafterweise den Übergang vom Senden zum Empfangen
ohne Interruptmechanismen und den damit verbundenen
Zeitverlusten und ohne aufwendige Softwarekomponenten.
Die der vorliegenden Erfindung zugrundeliegende Aufgabe ist
weiterhin gelöst durch die Verwendung einer hierarchischen
Prozessorarchitektur, wie im Anspruch 17 beschrieben.
Dabei ist es vorteilhaft, daß durch die Verwendung einer
hierarchischen Prozessorarchitektur mit verschiedenen
Prozessorebenen die Aufteilung der Steuerungsaufgaben auf
die verschiedenen Prozessorebenen und damit eine
Spezialisierung der einzelnen Prozessorebenen auf die
übertragenen Teilaufgaben ermöglicht wird. Damit wird durch
die Verwendung einer hierarchischen Prozessorarchitektur
ein hohes Maß an Verarbeitungsgeschwindigkeit und
Protokollflexibilität bei gleichzeitiger Realisierung durch
eine zuverlässige und kostengünstige Schaltungstechnik
erzielt. Beispielsweise wird durch die Verwendung einer
ersten Prozessorebene für die Bearbeitung der Binärzeichen
und einer zweiten Prozessorebene für die Bearbeitung der
Datenworte eine Gliederung der Steuerungsaufgaben erzielt,
die neben einer großen Flexibilität für zukünftige
Busprotokolle auch eine hohe Zuverlässigkeit der
Steuerungsvorrichtung bietet. Weiterhin ist vorteilhaft,
daß die hierarchische Prozessorarchitektur und die
Verteilung der Steuerungsaufgaben auf verschiedenen
Prozessorebenen eine zeit- und kostengünstige Anpassung an
neue Datenbustypen und die zugehörigen Datenbusprotokolle
erlaubt, insbesondere ohne Erweiterung oder Veränderung
schaltungstechnischer Einzelfunktionen.
Ein Ausführungsbeispiel der Erfindung ist in den
Zeichnungen dargestellt und wird nachfolgend näher
beschrieben.
Es zeigen:
Fig. 1 ein grobstrukturiertes Blockschaltbild der
Vorrichtung zur Steuerung eines Datenbusses;
Fig. 2 ein mittelstrukturiertes Blockschaltbild einer
Ausführungsform der Vorrichtung zur Steuerung
eines Datenbusses;
Fig. 3 ein feinstrukturiertes Schaltbild einer
Ausführungsform der Vorrichtung zur Steuerung
eines Datenbusses mit Signalpfaden;
Fig. 4 ein Blockschaltbild einer integrierten Lösung für
die Vorrichtung zur Steuerung eines von mehreren
Datenbussen; und
Fig. 5 eine zentrale Funktionsplattform für die
Steuerung verschiedener Funktionen in einem
Kraftfahrzeug.
Das in der Fig. 1 dargestellte grobsturkturierte
Blockschaltbild der Vorrichtung 100 zur Steuerung eines
Datenbusses 101 zeigt eine hierarchische
Prozessorarchitektur mit einer ersten Prozessorebene 102
und einer zweiten Prozessorebene 103, welche über den
Signalpfad 104 Daten austauschen. Dieser Datenaustausch
beinhaltet insbesondere die Übermittlung der seriellen
Daten, der Takt- und Steuersignale. Beide Prozessorebenen
arbeiten für die Ausführung der Steuerfunktionen mit Daten
aus einem Speicher 105. Weiterhin ist ein Mikroprozessor
oder Mikrocontroller 106 dargestellt, der ebenfalls mit
Daten aus dem Speicher 105 arbeitet und der den Ablauf der
Datenbussteuerung kontrolliert.
Das in der Fig. 2 dargestellte mittelstrukturierte
Blockschaltbild einer Ausführungsform der Vorrichtung 200
zur Steuerung eines Datenbusses zeigt eine Reihe von
steuerbaren Datenbussen 201, 202, 203 und 204, die über
jeweils einen Treiber 211, 212, 213 und 214 mit den beiden
Sequenzern 221 und 222 verbunden sind. Der Sequenzer 221
arbeitet mit Daten aus dem Speicher 223 und der
Sequenzer 222 arbeitet mit Daten aus dem Speicher 224.
Beide Sequenzer stehen in Verbindung mit einem
Mikroprozessor oder Mikrocontroller 230.
Das in Fig. 3 dargestellte feinstrukturierte Schaltbild
einer Ausführungsform der Vorrichtung 300 zur Steuerung
eines Datenbusses mit Signalpfaden zeigt den modularen
Aufbau der Steuervorrichtung. Erfindungsgemäß wird die
Verarbeitung der Signale des Datenbusses 301 durch die
hierarchische Prozessorarchitektur in zwei Teilbereiche
oder Prozessorebenen aufgetrennt. Die jeweilige
Prozessorebene weist eine freiprogrammierbare
Ablaufsteuerung, einen Sequenzer, auf, welcher die diesem
Teilbereich zugewiesenen Aufgaben entsprechend dem
jeweiligen Datenbusprotokoll abarbeitet.
Der erste Teilbereich umfaßt die Binärzeichen- oder
Bitanalyse, die Bitübertragung, die Takt-Synchronisation
sowie die Formattierung der Bits durch eine Übertragungs-
und Formatierungseinheit 312. Dieser erste Teilbereich
wird von einem ersten Sequenzer 310 gesteuert und
abgearbeitet. Der erste Sequenzer 310 arbeitet dabei mit
Daten aus einem ersten Kontrollspeicher 311, der eine RAM
Architektur aufweist. Die Aufbereitung der übertragenen
Datenworte erfolgt in einer Datenassemblierungs-
Einheit 370.
Der zweite Teilbereich umfaßt das Empfangen und Senden der
Datenworte mit den zugehörigen Prüfmechanismen; dieser
zweite Teilbereich wird durch einen zweiten Sequenzer 320
gesteuert und abgearbeitet. Der zweite Sequenzer 320
arbeitet dabei mit Daten aus einem zweiten
Kontrollspeicher 321, der eine RAM Architektur aufweist.
Die in dem ersten Kontrollspeicher 311 und zweiten
Kontrollspeicher 321 abgelegten Programme repräsentieren
die erforderlichen Protokollmechanismen des zu steuernden
Datenbusses 301. Bestimmte Funktionen, wie Formatieren der
Binärzeichen zu Datenworten 312, Zyklisches
Blockprüfungsverfahren (CRC CHK/GEN) 313 oder Bit-Stuffing,
werden bei Bedarf aktiviert. Der erste Sequenzer 310 und
der zweite Sequenz er kommunizieren über eine Taktleitung
(CLK) 330 und eine Signalleitung 331 miteinander.
Die Dateneingabe erfolgt durch einen
Empfangsspeicher (RECV FIFO) 350 mit FIFO-Architektur und
die Datenausgabe erfolgt über einen Sendespeicher
(XMIT FIFO) 360 mit FIFO-Architektur. Solange die zu
übertragende Datenmenge die freie Kapazität der beiden
FIFO-Speicher 350 und 360 nicht überschritten hat, kann der
Programmablauf automatisch wiederholt werden, falls die
Datenübertragung als fehlerhaft erkannt wurde (AUTO REPEAT-
Funktion). Dies wird durch entsprechende Kontrollfunktionen
(REPEAT CNTL) 351 und 361 gesteuert, die jeweils bei den
beiden FIFO-Speichern 350 und 360 lokalisiert sind.
Weiterhin werden beim Senden die Daten auch mitgelesen und
parallel zum Sendevorgang in den Empfangsspeicher 350
eingeschrieben. Bei Übertragungsproblemen ist somit eine
Fehleranalyse durch den Mikroprozessor oder Mikrocontroller
möglich (MONITOR-Funktion).
Eine Identifikationsbitfolge-Einheit (ID-CHK) 314 prüft, ob
eine Bitfolge auf dem Datenbus auftritt, die mit einem der
im Nachrichten-Identifikationsregister abgespeicherten
Werte (MSG-ID) 315 übereinstimmt. Durch ein Maskier-
Register (Exemt Mask Register) können bei einem
Vergleichswert sowie durch ein allgemeines Maskier-Register
(Global Mask Register) bei allen anderen Vergleichswerten
einzelne Bits von der Prüfung ausgeschlossen werden.
Gegebenenfalls wird dann diese Bitfolge sowie alle weiteren
Bits bis zum Ende der Nachricht im Empfangsspeicher (RECV
FIFO) 350 festgehalten. Weiterhin weist die Vorrichtung 300
ein Zustands-Kontrollregister (Mode) 316 auf.
Die Bitein-/ausgabe- und Formatierungseinheit 312, die
Datenassemblierungseinheit 370, die
Blockprüfungseinheit 313 und die Identifikationsbitfolge-
Einheit (ID-CHK) 314 sind miteinander über eine erste
Busverbindung 380 miteinander verbunden. Weiterhin sind der
zweite Sequenzer 320, die Datenassemblierungseinheit 370,
die Blockprüfungseinheit 313, die Identifikationsbitfolge-
Einheit (ID-CHK) 314, das Nachrichten-
Identifikationsregister (MSG-ID) 315 sowie die
Kontrollfunktionen 351 und 361 der Sende- und
Empfangsspeicher 350 und 360 über eine zweite
Busverbindung 381 miteinander verbunden. Weiterhin werden
die beiden Kontrollspeicher 311 und 321 der beiden
Sequenzer 310 und 320, die Sende- und Empfangsspeicher 350
und 360, das Nachrichten-Identifikationsregister (MSG-
ID) 315 sowie das Moden-Kontrollregister (MODE) 316 über
eine dritte Busverbindung 382 miteinander verbunden, die
gleichzeitig die Schnittstelle zu der zentralen
Recheneinheit 390 des Mikroprozessors oder
Mikrocontrollers darstellt. Die Blockprüfungseinheit 313
und die Kontrollfunktionen 351 und 361 besitzen einen
Interruptausgang 391, der von der zentralen
Recheneinheit 390 des Mikroprozessors oder
Mikrocontrollers empfangen werden kann.
Die in den Fig. 1, 2 und 3 dargestellten Funktionsblöcke
sind folgendermaßen äquivalent:
Der Instruktionssatz des zweiten Sequenzers ist derart
konzipiert, daß es für die Sendebefehle, die bis zum Ablauf
einer Arbitrierungsphase abgearbeitet werden, einen
äquivalenten Empfangsbefehl gibt. Die hardware-
Kontrollfunktionen des Empfangsbefehls sind dabei eine
Untermenge der hardware-Kontrollfunktionen des zugehörigen
Sendebefehls. Durch die Gewährleistung eines entsprechenden
Zeitverhaltens bei der Abarbeitung der Sende- und
Empfangsbefehle wird erreicht, daß während der
Arbitrierungsphase, in der entschieden wird, ob die
Steuerung auf den Bus Zugriff nehmen darf oder nicht, ohne
Unterbrechung vom Sendemodus auf den Empfangsmodus
umgeschaltet werden kann. Im Programmspeicher 321 des
zweiten Sequenzers 320 befindet sich zum Einen das zum
jeweiligen Datenbusprotokoll gehörige Sendeprogramm. Zum
Anderen befindet sich in diesem Programmspeicher als
Schattenspeicher 322 mit RAM-Architektur das entsprechende
Empfangsprogramm, und zwar in einen durch die hardware
vorgegebenen Adressoffset höheren Adreßbereich. Geht
während der Arbitrierungsphase die Buskontrolle verloren
(Verlust der Arbitrierung), wird zur nächsten
Instruktionsadresse der Adressoffset hinzuaddiert und an
die entsprechende Adresse der Empfangsinstruktion des
Empfangsprogrammes im Schattenspeicher 322 gesprungen und
das Empfangsprogramm löst nahtlos und unterbrechungsfrei
das Sendeprogramm ab, wobei die bisher empfangenen Daten
aus dem Empfangsspeicher 350 nun Gültigkeit erlangen.
Tritt ein Fehler während der Arbitrierungsphase auf, wird
dieser als Verlust der Arbitrierung interpretiert, ein
Latch-Zwischenspeicher wird gesetzt und dieser steuert die
höchstwertige Adressleitung des Programmspeichers 321 des
zweiten Sequenzers 320 auf Sprung in den
Schattenspeicher 322. Damit springt die Instruktionsabfolge
direkt an die entsprechende Stelle des Empfangsprogrammes
und es wird das Empfangsprogramm weiter fortgesetzt. Die
bereits empfangenen Daten werden als Bestandteil der
Identifikations-Bitfolge interpretiert und auf
Übereinstimmung mit den Identifikations-Bitfolgen des
Identifikations-Registers 314 überprüft. Weiterhin werden
die Adresszeiger des Sendespeichers 360 zurückgesetzt. Nach
Beendigung des Datenverkehrs kann ein erneuter Sendeversuch
unternommen werden.
Das in der Fig. 4 dargestellte Blockschaltbild einer
integrierten Lösung für die Vorrichtung zur Steuerung eines
von mehreren Datenbussen zeigt eine Integration 500 von
einem PowerPC Mikrocontroller und der Vorrichtung zur
Steuerung eines Datenbusses. Neben verschiedenen
automotiven Feldbussen (ABUS, CAN, VAN) 510, die dieser
integrierte Baustein 500 über einen entsprechenden
Bustreiber 511 steuert, kann dieser integrierte
Baustein 500 auch noch einen Datenbus vom Typ RS-232 515
über einen Treiber 516 steuern und einen weiteren
Datenbus 520 über einen Treiber 521 steuern. Hierzu
arbeitet der integrierte Baustein 500 mit Daten aus
Programm- und Datenspeichern 530. Über einen
Videospeicher (VRAM) 540 steuert der integrierte
Baustein 500 eine Flüssigkristall-Anzeigeeinheit 570. Der
gesamte Aufbau wird durch die zentrale Funktion eines Nur-
Lese-Speichers (ROM) 550 und einer Takteinheit (CLK) 560
unterstützt.
Die in der Fig. 5 dargestellte Funktionsplattform 600 für
die zentrale Steuerung verschiedener Funktionen in einem
Kraftfahrzeug mittels eines PowerPC Kontrollers zeigt die
Steuerungsmöglichkeit eines A-Bus Datenbusses 610, der
wiederum mehrere Cluster-Controller 611, 612 und 613
aufweist, an welche die Sensoren 614 und die Aktoren 615
angeschlossen sind. Neben der Möglichkeit weitere
automotive Feldbusse zu steuern, besitzt die
Funktionsplattform 600 eine erste PCMCIA (Personnel
Computer Memory Card International Association)
Schnittstelle 620 für die Verbindung zu Speichermedien, wie
beispielsweise FLASH-Speicherkarten oder magnetischen
Speicherplatten. Diese Speichermedien können beispielsweise
benutzer- oder fahrzeugspezifische Daten enthalten oder
auch eine Benutzeridentifikation oder Zugangsberechtigung.
Weiterhin besitzt die Funktionsplattform 600 eine zweite
PCMCIA (Personnel Computer Memory Card International
Association) Schnittstelle 621 für die Verbindung zu neuen
Anwendungsprogrammen oder zur Datenkommunikation.
Weiterhin weist die Funktionsplattform 600 einen
Anzeigeausgang 630 auf, der eine Instrumententafel 631
steuert. Eine weitere Schnittstelle 640 erlaubt die
Kraftfahrzeug-Diagnose und gegebenenfalls eine Fehleranalyse
sowie den Datenaustausch anläßlich von Wartungsarbeiten am
Kraftfahrzeug. Weiterhin können über eine Schnittstelle 650
mit angeschlossener Antenne 651 Datendienste drahtlos
genutzt werden, beispielsweise Telefon, Telefax oder die
Positionsbestimmung mittels GPS. Über eine entsprechende
Schnittstelle 660 mit angeschlossener Videokamera 661
können fahrtstreckenspezifische Informationen erfaßt und
berücksichtigt werden.
Weiterhin besitzt die Funktionsplattform 600 eine serielle
Schnittstelle 670 für den Anschluß von Eingabemedien wie
beispielsweise eine Tastatur, eine Maus oder eine
Rollkugel, eine Schnittstelle 671 vom Typ SCSI für den
Anschluß von Massenspeichermedien wie beispielsweise einer
CD-ROM oder eines Magnetbandes, eine AUDIO-
Schnittstelle 672 beispielsweise für die Befehlseingabe
oder Informationsausgabe durch Sprache und eine parallele
Schnittstelle 673 für die Informationsausgabe
beispielsweise durch einen Drucker.
Claims (17)
1. Eine Vorrichtung (100) zur Steuerung eines
Datenbusses (101), wobei der Datenbus (101) zur
Übertragung von Informationen in Form von Binärzeichen
vorgesehen ist, und wobei
die Vorrichtung (100) zur Steuerung des Datenbusses (101) eine hierarchische Prozessorarchitektur aufweist,
die hierarchische Prozessorarchitektur mindestens zwei Prozessorebenen (102, 103) aufweist,
jede der mindestens zwei Prozessorebenen (102, 103) für Teilaufgaben der Steuerung des Datenbusses (101) vorgesehen ist, und
zwischen den mindestens zwei Prozessorebenen (102, 103) ein Datenfluß (104) stattfinden kann.
die Vorrichtung (100) zur Steuerung des Datenbusses (101) eine hierarchische Prozessorarchitektur aufweist,
die hierarchische Prozessorarchitektur mindestens zwei Prozessorebenen (102, 103) aufweist,
jede der mindestens zwei Prozessorebenen (102, 103) für Teilaufgaben der Steuerung des Datenbusses (101) vorgesehen ist, und
zwischen den mindestens zwei Prozessorebenen (102, 103) ein Datenfluß (104) stattfinden kann.
2. Die Vorrichtung (100) zur Steuerung eines Datenbusses
nach Anspruch 1, wobei
eine erste Prozessorebene (102) der mindestens zwei Prozessorebenen (102, 103) eine erste programmierbare Ablaufsteuerung (221) aufweist, und
die erste programmierbare Ablaufsteuerung (221) Mittel zur Verarbeitung der auf dem Datenbus (101) übertragenen Binärzeichen aufweist, und wobei
eine zweite, übergeordnete Prozessorebene (103) der mindestens zwei Prozessorebenen (102, 103) eine zweite programmierbare Ablaufsteuerung (222) aufweist, und
die zweite programmierbare Ablaufsteuerung (222) Mittel zur Verarbeitung von Datenworten aufweist, wobei
die Datenworte sich aus einer Anzahl der auf dem Datenbus (101) übertragenen Binärzeichen zusammensetzen.
eine erste Prozessorebene (102) der mindestens zwei Prozessorebenen (102, 103) eine erste programmierbare Ablaufsteuerung (221) aufweist, und
die erste programmierbare Ablaufsteuerung (221) Mittel zur Verarbeitung der auf dem Datenbus (101) übertragenen Binärzeichen aufweist, und wobei
eine zweite, übergeordnete Prozessorebene (103) der mindestens zwei Prozessorebenen (102, 103) eine zweite programmierbare Ablaufsteuerung (222) aufweist, und
die zweite programmierbare Ablaufsteuerung (222) Mittel zur Verarbeitung von Datenworten aufweist, wobei
die Datenworte sich aus einer Anzahl der auf dem Datenbus (101) übertragenen Binärzeichen zusammensetzen.
3. Die Vorrichtung (100) zur Steuerung eines
Datenbusses (101) nach Anspruch 2, wobei
der Datenbus (101) ein erstes Taktsignal aufweist, und
die Vorrichtung (100) zur Steuerung des Datenbusses (101) ein zweites Taktsignal aufweist, und wobei
die erste programmierbare Ablaufsteuerung (221) Mittel zur Synchronisation des zweiten Taktsignals auf das erste Taktsignal aufweist.
der Datenbus (101) ein erstes Taktsignal aufweist, und
die Vorrichtung (100) zur Steuerung des Datenbusses (101) ein zweites Taktsignal aufweist, und wobei
die erste programmierbare Ablaufsteuerung (221) Mittel zur Synchronisation des zweiten Taktsignals auf das erste Taktsignal aufweist.
4. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach Anspruch 2 oder 3, wobei
die erste programmierbare Ablaufsteuerung (310) Mittel zur Filterung (312) der auf dem Datenbus (301) übertragenen Binärzeichen aufweist.
die erste programmierbare Ablaufsteuerung (310) Mittel zur Filterung (312) der auf dem Datenbus (301) übertragenen Binärzeichen aufweist.
5. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 2 bis 4,
wobei
die erste programmierbare Ablaufsteuerung (310) Mittel
zur Bereitstellung eines dritten Taktsignals (331) für
die zweite programmierbare Ablaufsteuerung (320)
aufweist.
6. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 2 bis 5,
wobei
die zweite programmierbare Ablaufsteuerung (320)
Mittel zur Ausführung eines Sende-/Empfangs-
Protokolles des Datenbusses (301) aufweist.
7. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 2 bis 6,
wobei
die zweite programmierbare Ablaufsteuerung (320)
Mittel zur Entscheidung über eine Zugriffsberechtigung
und Adresserkennung für den Datenbus (301) aufweist.
8. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 2 bis 7,
wobei
die zweite programmierbare Ablaufsteuerung (320)
Mittel zur Fehlererkennung (313) der auf dem
Datenbus (301) übertragenen Binärzeichen aufweist.
9. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 1 bis 8,
wobei die Vorrichtung (300) weiterhin aufweist:
einen Empfangspeicher (350) für die über den Datenbus (301) zu empfangenden Daten, und
einen Sendespeicher (360) für die über den Datenbus (301) zu sendenden Daten,
wobei der Empfangsspeicher (350) und der Sendespeicher (360) vorzugsweise als FIFO-Speicher ausgeführt sind.
einen Empfangspeicher (350) für die über den Datenbus (301) zu empfangenden Daten, und
einen Sendespeicher (360) für die über den Datenbus (301) zu sendenden Daten,
wobei der Empfangsspeicher (350) und der Sendespeicher (360) vorzugsweise als FIFO-Speicher ausgeführt sind.
10. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 1 bis 9,
wobei die Vorrichtung (300) weiterhin aufweist:
Mittel (312) zur Bearbeitung des Datenformates der auf dem Datenbus (301) übertragenen Binärzeichen,
Register (315) zum Abspeichern von Identifikationsbitfolgen, bei deren Auftreten auf dem Datenbus (301) die Vorrichtung (300) zur Steuerung des Datenbusses (301) aktiv wird, und
Statusregister und Kontrollregister (316), deren Inhalte den Betriebszustand der Vorrichtung (300) zur Steuerung des Datenbusses (301) wiedergeben.
Mittel (312) zur Bearbeitung des Datenformates der auf dem Datenbus (301) übertragenen Binärzeichen,
Register (315) zum Abspeichern von Identifikationsbitfolgen, bei deren Auftreten auf dem Datenbus (301) die Vorrichtung (300) zur Steuerung des Datenbusses (301) aktiv wird, und
Statusregister und Kontrollregister (316), deren Inhalte den Betriebszustand der Vorrichtung (300) zur Steuerung des Datenbusses (301) wiedergeben.
11. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach Anspruch 10, wobei
die Größe der Register (315) zum Abspeichern von
Identifikationsbitfolgen eingestellt werden kann.
12. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 1 bis 11,
wobei
der Datenbus (301) ein Übertragungskanal ist, auf dem
die Binärzeichen seriell übertragen werden,
insbesondere ein Feldbus für allgemeine industrielle
Anwendungen oder ein Feldbus für den Einsatz im
Kraftfahrzeug.
13. Die Vorrichtung (300) zur Steuerung eines
Datenbusses (301) nach einem der Ansprüche 1 bis 12,
wobei
die Vorrichtung (300) zur Steuerung des
Datenbusses (301) in den Funktionsumfang eines
PowerPC Mikrocontrollers (500) integriert ist, und der
PowerPC Mikrocontroller Bestandteil einer zentralen
Funktionsplattform (600) ist.
14. Ein Verfahren zur Steuerung eines Datenbusses (101),
wobei auf dem Datenbus (101) Informationen in Form von
Binärzeichen übertragen werden, und das Verfahren
folgende Verfahrensschritte aufweist:
Verarbeiten der Binärzeichen in einer ersten Prozessorebene (102) von mindestens zwei Prozessorebenen (102, 103), und
Verarbeiten von Datenworten in einer zweiten, übergeordneten Prozessorebene (103) der mindestens zwei Prozessorebenen (102, 103), wobei die Datenworte sich aus einer Anzahl der Binärzeichen zusammensetzen.
Verarbeiten der Binärzeichen in einer ersten Prozessorebene (102) von mindestens zwei Prozessorebenen (102, 103), und
Verarbeiten von Datenworten in einer zweiten, übergeordneten Prozessorebene (103) der mindestens zwei Prozessorebenen (102, 103), wobei die Datenworte sich aus einer Anzahl der Binärzeichen zusammensetzen.
15. Das Verfahren zur Steuerung eines Datenbusses (101)
nach Anspruch 14, wobei
in der ersten Prozessorebene (102) eine erste programmierbare Ablaufsteuerung (221) folgende Verfahrensschritte aufweist:
Synchronisieren eines ersten Taktsignales des Datenbusses (101) mit einem zweiten Taktsignal für die Steuerung des Datenbusses,
Generieren eines dritten Taktsignales für die zweite Prozessorebene (103), die eine zweite programmierbare Ablaufsteuerung aufweist (222),
Detektieren eines Bitfensters innerhalb der auf dem Datenbus (101) übertragenen Daten, und wobei
in der zweiten Prozessorebene (103) die zweite programmierbare Ablaufsteuerung (222) folgende Verfahrensschritte aufweist:
Festlegen der Größe einer Identifikationsbitfolge, bei deren Auftreten auf dem Datenbus (101) das Verfahren zur Steuerung des Datenbusses aktiv wird,
Festlegen der Zahl der Binärzeichen je Datenwort, des Datenformates und der Übertragungsgeschwindigkeit der Daten auf dem Datenbus (101),
Senden und Empfangen von Kontrollsignalen, und
Prüfen der empfangenen Daten mittels eines zyklischen Blockprüfungsverfahrens.
in der ersten Prozessorebene (102) eine erste programmierbare Ablaufsteuerung (221) folgende Verfahrensschritte aufweist:
Synchronisieren eines ersten Taktsignales des Datenbusses (101) mit einem zweiten Taktsignal für die Steuerung des Datenbusses,
Generieren eines dritten Taktsignales für die zweite Prozessorebene (103), die eine zweite programmierbare Ablaufsteuerung aufweist (222),
Detektieren eines Bitfensters innerhalb der auf dem Datenbus (101) übertragenen Daten, und wobei
in der zweiten Prozessorebene (103) die zweite programmierbare Ablaufsteuerung (222) folgende Verfahrensschritte aufweist:
Festlegen der Größe einer Identifikationsbitfolge, bei deren Auftreten auf dem Datenbus (101) das Verfahren zur Steuerung des Datenbusses aktiv wird,
Festlegen der Zahl der Binärzeichen je Datenwort, des Datenformates und der Übertragungsgeschwindigkeit der Daten auf dem Datenbus (101),
Senden und Empfangen von Kontrollsignalen, und
Prüfen der empfangenen Daten mittels eines zyklischen Blockprüfungsverfahrens.
16. Das Verfahren zur Steuerung eines Datenbusses nach
Anspruch 14 oder 15, wobei das Verfahren Instruktionen
für das Senden und Instruktionen für das Empfangen von
Daten verwendet und folgende Verfahrensschritte
aufweist:
Abspeichern der Instruktionen für das Senden von Daten in einem ersten Adressbereich (321), und
Abspeichern der Instruktionen für das Empfangen von Daten in einem zweiten Adressbereich (322), wobei
weitgehend äquivalente Instruktionen für das Empfangen und Senden von Daten abgespeichert werden,
die äquivalenten Instruktionen für das Senden und für das Empfangen von Daten an Adressen in dem ersten (321) und zweiten (322) Adressbereich abgespeichert sind, die sich um einen Adressoffset unterscheiden, insbesondere die sich um das höchstwertige Bit der Adresse unterscheiden, und
Springen von einer Instruktion für das Senden von Daten von einer Stelle des ersten Adressbereiches (321) an die äquivalente Instruktion für das Empfangen von Daten in dem zweiten Adressbereich (322) durch Addition des Adressoffsets.
Abspeichern der Instruktionen für das Senden von Daten in einem ersten Adressbereich (321), und
Abspeichern der Instruktionen für das Empfangen von Daten in einem zweiten Adressbereich (322), wobei
weitgehend äquivalente Instruktionen für das Empfangen und Senden von Daten abgespeichert werden,
die äquivalenten Instruktionen für das Senden und für das Empfangen von Daten an Adressen in dem ersten (321) und zweiten (322) Adressbereich abgespeichert sind, die sich um einen Adressoffset unterscheiden, insbesondere die sich um das höchstwertige Bit der Adresse unterscheiden, und
Springen von einer Instruktion für das Senden von Daten von einer Stelle des ersten Adressbereiches (321) an die äquivalente Instruktion für das Empfangen von Daten in dem zweiten Adressbereich (322) durch Addition des Adressoffsets.
17. Verwendung einer hierarchischen Prozessorarchitektur
für die Steuerung eines Datenbusses (101), wobei auf
dem Datenbus (101) Informationen in Form von
Binärzeichen übertragen werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP1995/002188 WO1996041273A1 (de) | 1995-06-07 | 1995-06-07 | Vorrichtung und verfahren zur steuerung eines datenbusses |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19616753A1 true DE19616753A1 (de) | 1996-12-12 |
Family
ID=8166037
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE59511044T Expired - Lifetime DE59511044D1 (de) | 1995-06-07 | 1995-06-07 | Vorrichtung und verfahren zur steuerung eines datenbusses |
DE19616753A Withdrawn DE19616753A1 (de) | 1995-06-07 | 1996-04-26 | Vorrichtung und Verfahren zur Steuerung eines Datenbusses |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE59511044T Expired - Lifetime DE59511044D1 (de) | 1995-06-07 | 1995-06-07 | Vorrichtung und verfahren zur steuerung eines datenbusses |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0784820B1 (de) |
JP (1) | JP3415849B2 (de) |
DE (2) | DE59511044D1 (de) |
WO (1) | WO1996041273A1 (de) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0862303A2 (de) * | 1997-01-22 | 1998-09-02 | Sony Corporation | Elektronisches Gerät und Steuerungsverfahren für das Gerät |
DE19722221A1 (de) * | 1997-05-28 | 1998-12-03 | Siemens Ag | Elektrische Anlage, insbesondere diagnostisches Magnetresonanzgerät |
EP0924864A2 (de) * | 1997-12-22 | 1999-06-23 | Delco Electronics Corporation | Digitales Funkübertragungssystem zusammengesetzt aus mehreren Einheiten |
DE19946096A1 (de) * | 1999-09-27 | 2001-04-12 | Mannesmann Vdo Ag | Steuergerät, insbesondere für ein Kraftfahrzeug |
EP1168119A2 (de) * | 2000-06-20 | 2002-01-02 | Bayerische Motoren Werke Aktiengesellschaft | Steuergerät mit einem Hauptmikroprozessor und mit einer Prozessorschnittstelle zu einer Bus-Sende-Empfangseinheit |
DE10056198A1 (de) * | 2000-11-13 | 2002-02-14 | Infineon Technologies Ag | Kommunikationssystem zum Austausch von Daten unter Verwendung eines zusätzlichen Prozessors |
EP1017161A3 (de) * | 1998-12-29 | 2002-07-03 | SCHUNK Motorensysteme GmbH | Anordnung in einem Regelkreis zur Ansteuerung eines Motors eines Hilfsantriebs in einem Fahrzeug |
DE10100343A1 (de) * | 2001-01-05 | 2002-07-18 | Infineon Technologies Ag | Bus-System |
EP1237251A2 (de) * | 2001-03-02 | 2002-09-04 | Siemens Aktiengesellschaft | Datenaustausch in einem Datenbus |
EP1003106A3 (de) * | 1998-10-29 | 2003-04-09 | Siemens Aktiengesellschaft | Anordnung zur Anpassung von Betriebsdaten und/oder Betriebsprogrammen |
US6654669B2 (en) | 1997-11-15 | 2003-11-25 | Daimlerchrysler Ag | Processor unit for a data-processing-aided electronic control system in a motor vehicle |
WO2004046941A1 (en) * | 2002-11-20 | 2004-06-03 | Intel Corporation | Integrated circuit having multiple modes of operation |
US7093033B2 (en) | 2003-05-20 | 2006-08-15 | Intel Corporation | Integrated circuit capable of communicating using different communication protocols |
US7206989B2 (en) | 2002-11-20 | 2007-04-17 | Intel Corporation | Integrated circuit having multiple modes of operation |
WO2007042366A1 (de) * | 2005-10-11 | 2007-04-19 | Endress+Hauser Gmbh+Co.Kg | Verfahren zum sicheren versenden von daten eines feldgerätes der prozessautomatisierungstechnik |
DE102005052971A1 (de) * | 2005-11-07 | 2007-05-10 | Siemens Ag | Datenverarbeitungsvorrichtung und Verfahren zum Betrieb |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10330695B4 (de) * | 2003-07-08 | 2006-04-13 | Daimlerchrysler Ag | Fehlersicheres Programm |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4583195A (en) * | 1982-09-30 | 1986-04-15 | Pitney Bowes Inc. | Mailing system interface between a scale system processor and a serial data bus which interconnects peripheral subsystems |
FR2657979B1 (fr) * | 1990-02-08 | 1994-09-23 | Aerospatiale | Coupleur de bus serie. |
-
1995
- 1995-06-07 WO PCT/EP1995/002188 patent/WO1996041273A1/de active IP Right Grant
- 1995-06-07 JP JP50010397A patent/JP3415849B2/ja not_active Expired - Fee Related
- 1995-06-07 EP EP95922526A patent/EP0784820B1/de not_active Expired - Lifetime
- 1995-06-07 DE DE59511044T patent/DE59511044D1/de not_active Expired - Lifetime
-
1996
- 1996-04-26 DE DE19616753A patent/DE19616753A1/de not_active Withdrawn
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0862303A3 (de) * | 1997-01-22 | 2001-11-28 | Sony Corporation | Elektronisches Gerät und Steuerungsverfahren für das Gerät |
EP0862303A2 (de) * | 1997-01-22 | 1998-09-02 | Sony Corporation | Elektronisches Gerät und Steuerungsverfahren für das Gerät |
DE19722221A1 (de) * | 1997-05-28 | 1998-12-03 | Siemens Ag | Elektrische Anlage, insbesondere diagnostisches Magnetresonanzgerät |
DE19722221C2 (de) * | 1997-05-28 | 1999-10-21 | Siemens Ag | Elektrische Anlage, insbesondere diagnostisches Magnetresonanzgerät |
US6654669B2 (en) | 1997-11-15 | 2003-11-25 | Daimlerchrysler Ag | Processor unit for a data-processing-aided electronic control system in a motor vehicle |
EP0924864A2 (de) * | 1997-12-22 | 1999-06-23 | Delco Electronics Corporation | Digitales Funkübertragungssystem zusammengesetzt aus mehreren Einheiten |
EP0924864A3 (de) * | 1997-12-22 | 2004-12-01 | Delphi Technologies, Inc. | Digitales Funkübertragungssystem zusammengesetzt aus mehreren Einheiten |
EP1003106A3 (de) * | 1998-10-29 | 2003-04-09 | Siemens Aktiengesellschaft | Anordnung zur Anpassung von Betriebsdaten und/oder Betriebsprogrammen |
EP1017161A3 (de) * | 1998-12-29 | 2002-07-03 | SCHUNK Motorensysteme GmbH | Anordnung in einem Regelkreis zur Ansteuerung eines Motors eines Hilfsantriebs in einem Fahrzeug |
DE19946096A1 (de) * | 1999-09-27 | 2001-04-12 | Mannesmann Vdo Ag | Steuergerät, insbesondere für ein Kraftfahrzeug |
EP1168119A2 (de) * | 2000-06-20 | 2002-01-02 | Bayerische Motoren Werke Aktiengesellschaft | Steuergerät mit einem Hauptmikroprozessor und mit einer Prozessorschnittstelle zu einer Bus-Sende-Empfangseinheit |
EP1168119A3 (de) * | 2000-06-20 | 2006-01-18 | Bayerische Motoren Werke Aktiengesellschaft | Steuergerät mit einem Hauptmikroprozessor und mit einer Prozessorschnittstelle zu einer Bus-Sende-Empfangseinheit |
DE10056198A1 (de) * | 2000-11-13 | 2002-02-14 | Infineon Technologies Ag | Kommunikationssystem zum Austausch von Daten unter Verwendung eines zusätzlichen Prozessors |
DE10100343A1 (de) * | 2001-01-05 | 2002-07-18 | Infineon Technologies Ag | Bus-System |
DE10100343B4 (de) * | 2001-01-05 | 2013-05-08 | Infineon Technologies Ag | Bus-System |
EP1237251A2 (de) * | 2001-03-02 | 2002-09-04 | Siemens Aktiengesellschaft | Datenaustausch in einem Datenbus |
EP1237251A3 (de) * | 2001-03-02 | 2011-12-14 | Continental Automotive GmbH | Datenaustausch in einem Datenbus |
US7206989B2 (en) | 2002-11-20 | 2007-04-17 | Intel Corporation | Integrated circuit having multiple modes of operation |
US7421517B2 (en) | 2002-11-20 | 2008-09-02 | Intel Corporation | Integrated circuit having multiple modes of operation |
US7640481B2 (en) | 2002-11-20 | 2009-12-29 | Intel Corporation | Integrated circuit having multiple modes of operation |
WO2004046941A1 (en) * | 2002-11-20 | 2004-06-03 | Intel Corporation | Integrated circuit having multiple modes of operation |
US7093033B2 (en) | 2003-05-20 | 2006-08-15 | Intel Corporation | Integrated circuit capable of communicating using different communication protocols |
WO2007042366A1 (de) * | 2005-10-11 | 2007-04-19 | Endress+Hauser Gmbh+Co.Kg | Verfahren zum sicheren versenden von daten eines feldgerätes der prozessautomatisierungstechnik |
DE102005052971A1 (de) * | 2005-11-07 | 2007-05-10 | Siemens Ag | Datenverarbeitungsvorrichtung und Verfahren zum Betrieb |
Also Published As
Publication number | Publication date |
---|---|
WO1996041273A1 (de) | 1996-12-19 |
EP0784820A1 (de) | 1997-07-23 |
JP3415849B2 (ja) | 2003-06-09 |
JPH09508743A (ja) | 1997-09-02 |
DE59511044D1 (de) | 2006-06-01 |
EP0784820B1 (de) | 2006-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0784820B1 (de) | Vorrichtung und verfahren zur steuerung eines datenbusses | |
DE4222043C1 (de) | ||
DE19934514C5 (de) | Verfahren zum Konfigurieren eines an einen Feldbus angeschlossenen Busteilnehmers | |
DE10219832B4 (de) | Verfahren zum Kodieren von Steuergeräten in Verkehrsmitteln | |
DE102013210064A1 (de) | Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle | |
DE10029645A1 (de) | Verfahren zur Adressierung von Netzwerkkomponenten | |
DE102013210077A1 (de) | Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle | |
EP3759871B1 (de) | Master-slave bussystem und verfahren zum betrieb eines bussystems | |
DE102013210182A1 (de) | Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle | |
WO2020094346A1 (de) | Datenvermittlungsvorrichtung und datenvermittlungsverfahren für ein fahrzeug, vorrichtung und verfahren für eine fahrzeugkomponente eines fahrzeugs und computerprogramm | |
EP1700211B1 (de) | Laden von software-modulen | |
EP0941894B1 (de) | Schaltungsanordnung zur Kommunikation und Diagnose einer Vielzahl elektrischer Komponenten | |
DE69913927T2 (de) | Kommunikationssystem | |
EP0555456B1 (de) | Verfahren zur datenübertragung und datenverarbeitungsanlage mit verteilten rechnerknoten | |
WO2005002145A1 (de) | Anordnung und verfahren zur verwaltung eines speichers | |
EP1642422B1 (de) | Anpassung eines fahrzeugnetzwerks an geänderte anforderungen | |
DE102013210066A1 (de) | Verfahren zur Bereitstellung einer generischen Schnittstelle mit CRC-Funktionalität sowie Mikrocontroller mit generischer Schnittstelle und CRC-Einheit | |
DE102022208383A1 (de) | Verfahren zum Durchführen einer Datenübertragung | |
WO2022018131A1 (de) | Verfahren zum koppeln und ankoppeln eines sensors und kommunikationsnetzwerk | |
DE102013210093A1 (de) | Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle | |
DE102022000991A1 (de) | Automatisierungssystem und Verfahren zum Betrieb eines Automatisierungssystem | |
EP1885100A1 (de) | Verfahren zur automatischen Adressvergabe an einen Kommunikationsteilnehmer und Kommunikationsteilnehmer | |
DE102018010209A1 (de) | Master-Slave Bussystem und Verfahren zum Betrieb eines Bussystems | |
DE10236747A1 (de) | Vorrichtung zur Sicherung der Signalübertragung in einem Kraftfahrzeug | |
EP3160091A1 (de) | Verfahren zur übermittlung von daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |