-
Die Erfindung bezieht sich auf eine serielle Schnittstelleneinheit zum Abgeben
und Empfangen von Daten unter der Steuerung durch Taktsignale, wobei die
Abgabe der Daten von einer Datenquelle über einen Ausgangstreiber an einen
Datenausgang erfolgt.
-
Zum Übertragen von Daten zwischen den einzelnen Geräten eines
datenverarbeitenden Systems, beispielsweise zwischen einem Prozessorgerät und
einem Peripheriegerät, sind die einzelnen Geräte jeweils mit einer seriellen
Schnittstelleneinheit ausgestattet, über die die Daten abgegeben und von denen die
Daten empfangen werden können. Die Datenübertragung erfolgt dabei synchron,
was bedeutet, daß eines der beteiligten Geräte, das sogenannte Master-Gerät ein
Taktsignal erzeugt, das zur Steuerung des jeweiligen Datenübertragungsvorgangs
an die an das System angeschlossenen Geräte übertragen wird. Eine serielle
Schnittstelleneinheit dieser Art ist in der Fachliteratur unter der Bezeichnung SPI
(für Serial Peripheral Interface) bekannt. In dieser Schnittstelleneinheit ist ein
Sende-Schieberegister vorgesehen, aus dem die Daten seriell über einen
Ausgangstreiber an einen Datenausgang geschickt werden. Der Datenausgang ist
dann mit dem Dateneingang des Peripheriegeräts verbunden, für das die Daten
bestimmt sind. Für den Empfang der Daten enthält die serielle
Schnittstelleneinheit ein Empfangs-Schieberegister, in das die an einem
Dateneingang empfangenen Daten seriell eingegeben werden. Die seriellen Daten
kommen dabei vom Datenausgang der seriellen Schnittstelleneinheit des
Peripheriegeräts, an den sie aus dessen Sende-Schieberegister über einen
Ausgangstreiber angelegt worden sind.
-
Zur Sicherstellung einer korrekten Datenübertragung werden derzeit
umfangreiche Quittungsaustauschverfahren und Prüfsummenübertragungen
ausgeführt, bei denen der jeweilige Datenempfänger den korrekten Empfang
durch Zurücksenden einer Bestätigungsnachricht quittieren muß. Diese Verfahren
erfordern einen erhöhten Hardware- und Software-Aufwand in den bei der
Datenübertragung beteiligten Geräten, und außerdem wird das Volumen der
übertragenen Daten vergrößert. Alle diese Faktoren führen zu einer Reduzierung
der erreichbaren Datenübertragungsgeschwindigkeit.
-
Der Erfindung liegt die Aufgabe zugrunde, eine serielle Schnittstelleneinheit
der eingangs angegebenen Art zu schaffen, bei der die Korrektheit der
übertragenen Daten ohne großen Aufwand und ohne Beeinträchtigung der
erzielbaren Datenübertragungsgeschwindigkeit überwacht werden kann.
-
Diese Aufgabe wird gemäß der Erfindung dadurch gelöst, daß ein
Übertragungsmonitor vorgesehen ist, der die von der Datenquelle abgegebenen
Daten mit den vom Ausgangstreiber an den Datenausgang angelegten Daten
vergleicht und ein Fehlersignal abgibt, wenn die verglichenen Daten nicht
übereinstimmen.
-
Der in der erfindungsgemäßen seriellen Schnittstelleneinheit vorgesehene
Übertragungsmonitor kann ständig überprüfen, ob die zu übertragenden Daten mit
den Daten übereinstimmen, die tatsächlich am Datenausgang und damit an der
zum Datenempfänger führenden Leitung erscheinen. Falls auf der
Übertragungsleitung Störungen auftreten, kann dies vom Übertragungsmonitor
erkannt und in zweckmäßiger Weise angezeigt werden.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist in Patentanspruch 2
gekennzeichnet.
-
Die Erfindung wird nun anhand der Zeichnungen beispielshalber erläutert. Es
zeigen:
-
Fig. 1 eine schematische Darstellung der in einem Prozessorgerät und der
in einem Peripheriegerät enthaltenen seriellen Schnittstelleneinheiten gemäß der
Erfindung,
-
Fig. 2 ein Signaldiagramm zur Erläuterung eines
Datenübertragungsvorgangs zwischen dem Prozessorgerät und dem
Peripheriegerät ohne Störung,
-
Fig. 3 ein Signaldiagramm zur Erläuterung einer Datenübertragung
zwischen dem Prozessorgerät und dem Peripheriegerät bei Vorliegen einer
Störung und
-
Fig. 4 ein Beispiel für den Aufbau des Übertragungsmonitors.
-
In Fig. 1 ist eine Schnittstelleneinheit 10 dargestellt, die Teil eines nur
schematisch angedeuteten Prozessorgeräts 12 ist. Eine in Fig. 1 ebenfalls
dargestellte weitere Schnittstelleneinheit 14 ist Teil eines Peripheriegeräts 16, das
ebenfalls nur schematisch angedeutet ist. Das Prozessorgerät erzeugt die für die
Datenübertragung notwendigen Taktsignale und führt sie einer Taktleitung 18 zu.
Das Prozessorgerät 12 wirkt somit als Master-Gerät, im Gegensatz zum
Peripheriegerät 16, das als Slave-Gerät kein eigenes Taktsignal erzeugt, sondern
hinsichtlich der Datenübertragung ebenfalls vom Taktsignal aus dem
Prozessorgerät 12 gesteuert wird.
-
Die Schnittstelleneinheit 10 enthält ein Sende-Schieberegister 20, in das das
Prozessorgerät 12 zu übertragende Daten eingibt. Unter der Steuerung durch das
Taktsignal werden die Daten aus dem Sende-Schieberegister über einen
Ausgangstreiber 22 einem Datenausgang 24 zugeführt. Über eine Leitung 26
gelangen die Daten zu einem Dateneingang 28 der Schnittstelleneinheit 14, und
sie werden unter der Steuerung durch das Taktsignal in ein Empfangs-
Schieberegister 30 eingegeben. Sie stehen dann zur weiteren Verarbeitung im
Peripheriegerät 16 zur Verfügung.
-
Wie zu erkennen ist, werden auch die Taktsignale über einen Ausgangstreiber
32 an den Taktausgang 34 angelegt und gelangen über eine Leitung 36 zu einem
Takteingang 38 der Schnittstelleneinheit 14.
-
Die Schnittstelleneinheit 14 enthält ebenfalls ein Sende-Schieberegister 40,
dessen Dateninhalt über einen Ausgangstreiber 42 taktgesteuert an einen
Datenausgang 44 angelegt werden können. Über die mit dem Datenausgang 44
verbundene Leitung 46 gelangen die Daten zum Dateneingang 48 der
Schnittstelleneinheit 10 und dann taktgesteuert in ein Empfangs-Schieberegister
50.
-
Ein Datenübertragungsvorgang vom Prozessorgerät 12 zum Peripheriegerät 16
wird nun unter Bezugnahme auf Fig. 2 erläutert. In Fig. 2 sind bei 1, 2 und 3
die Signale an den entsprechenden Punkten 1, 2 bzw. 3 von Fig. 1 dargestellt.
Diese Art von Übertragung erfolgt unter der Steuerung durch das am Punkt 3
auftretende Taktsignal, wobei das Senden und auch das Empfangen jeweils
flankengesteuert erfolgen, nämlich das Senden bei der ansteigenden Sendeflanke
SF und das Empfangen bei der fallenden Empfangsflanke EF. Beispielsweise wird
mit der ersten Sendeflanke SF ein Bit mit hohem Signalwert aus dem Sende-
Schieberegister 20 geschoben und über den Ausgangstreiber 22 an den
Datenausgang 24 angelegt. Das über die Leitung 26 zum Dateneingang 28 des
peripheren Geräts 16 übertragene Bit wird mit der Empfangsflanke EF in das
Empfangs-Schieberegister 30 geschoben, was einem Lesevorgang entspricht. Das
am Punkt 1 der Schnittstelleneinheit 10 auftretende Signal vor dem
Ausgangstreiber 22 wird ebenso wie das am Punkt 2 nach dem Ausgangstreiber
22 auftretende Signal an einen in der Schnittstelleneinheit 10 enthaltenen
Übertragungsmonitor 52 angelegt, der die beiden Signale vergleicht und an
seinem Ausgang 54 ein Fehlersignal abgibt, falls die beiden verglichenen Signale
während der Empfangsflanke EF des Taktsignals, also während der Zeitperiode,
in der das Lesen des übertragenen Signals durch Eingeben in das Empfangs-
Schieberegister 30 des peripheren Geräts 16 erfolgt, nicht miteinander
übereinstimmen. Falls auf der vom Punkt 2 in der Schnittstelleneinheit 10 bis zum
Empfangs-Schieberegister 30 der Schnittstelleneinheit 14 führenden Verbindung
eine Störung auftreten sollte, die den Wert des gerade übertragenen Datensignals
verändert, kann dies vom Übertragungsmonitor 52 festgestellt werden, so daß
dann anhand des erzeugten Fehlersignals geeignete Maßnahmen ergriffen werden
können, die eine einwandfreie Übertragung des Datensignals, beispielsweise
durch Wiederholung, sicherstellen.
-
In Fig. 3 ist in einem ähnlichen Signaldiagramm der Fall dargestellt, daß im
Bereich der Empfangsflanke EF des Taktsignals eine Störung auftritt. Dies
bedeutet, daß das Datensignal am Punkt 2 aufgrund der Störung einen anderen
Signalwert hat als das Datensignal, das unter der Steuerung durch die Sendeflanke
SF des Taktsignals vom Sende-Schieberegister 20 an den Ausgangstreiber 22
abgegeben worden ist. In diesem Fall stimmen die vom Übertragungsmonitor 52
verglichenen Signale nicht überein, so daß dementsprechend am Ausgang 54
(Punkt 4) ein Fehlersignal erzeugt wird.
-
Auch die Schnittstelleneinheit 14 im Peripheriegerät 16 enthält einen
Übertragungsmonitor 54, der das Übertragen von Daten vom Schnittstellengerät
16 über die Schnittstelleneinheit 14 zur Schnittstelleneinheit 10 des
Prozessorgeräts 12 überwacht. Die Datenübertragungsvorgänge vom
Peripheriegerät 16 zum Prozessorgerät 12 laufen ebenso ab wie die
Übertragungsvorgänge vom Prozessorgerät 12 zum Peripheriegerät 16. Der
Unterschied besteht lediglich darin, daß das Prozessorgerät 12 als Master-Gerät
die für die Übertragungsvorgänge zum Peripheriegerät (Slave-Gerät) notwendigen
Taktsignale liefert.
-
Anhand von Fig. 4 werden nun der Aufbau und die Arbeitsweise des
Übertragungsmonitors 52 beschrieben.
-
Der Übertragungsmonitor 52 empfängt an den Eingängen 54 und 56 das vom
Sende-Schieberegister 20 dem Ausgangstreiber 22 zugeführte Datensignal bzw.
das vom Ausgangstreiber 22 an den Datenausgang 24 angelegte Datensignal. Die
beiden zu vergleichenden Signale werden den zwei Eingängen einer
Antivalenzschaltung 58 zugeführt, die immer ein Signal mit hohem Wert abgibt,
weil die an ihre Eingänge angelegten Signale aufgrund des angenommenen
Fehlerfalls unterschiedliche Werte haben. Über eine ODER-Schaltung 60 wird das
von der Antivalenzschaltung 58 abgegebene Signal dem Eingang D eines D-
Flipflops 62 zugeführt, das das Signal unter der Steuerung durch das Taktsignal
übernimmt. Dies bedeutet, daß am Ausgang Q des D-Flipflops 62 ein dem Wert
des Ausgangssignals der Antivalenzschaltung 58 entsprechendes Signal mit
hohem Wert abgegeben wird, das den Fehlerfall anzeigt. Das Ausgangssignal des
D-Flipflops 62 wird über eine UND-Schaltung 64 und die ODER-Schaltung 60
zum Eingang D des D-Flipflops 62 zurückgeführt, was zur Folge hat, daß ein
einen Fehlerfall anzeigendes Signal mit hohem Wert am Ausgang Q des D-
Flipflops 62 so lange festgehalten wird, bis an einen zweiten Eingang der UND-
Schaltung 64 ein Signal angelegt wird, das anzeigt, daß das Fehlersignal gelesen
worden ist.
-
Somit kann durch die Verwendung des Übertragungsmonitors in den
Schnittstelleneinheiten mit großer Sicherheit jeder bei der Datenübertragung
auftretende Fehler erkannt werden, ohne daß zusätzlich zu den eigentlich zu
übertragenden Daten ausschließlich der Fehlerprüfung dienende Daten übertragen
werden müssen.