-
System zum Empfang von seriellen Daten
-
Beschreibung Die Erfindung betrifft ein System zum Empfang von seriellen
Daten, in welchem eine lokale oder örtliche Einheit ihre eigene Adresse und Daten
seriell an eine Zentraleinheit überträgt.
-
Wenn eine Vielzahl solcher lokaler oder örtlicher Einheiten mit einer
Zentraleinheit zu verbinden ist, ist es in der Praxis bisher allgemein üblich, sie
in einem Verhältnis von eins-zu-eins mit einzelnen Anschlüssen des Eingabeteils
der Zentraleinheit zu verbinden. Bei dieser Art System kann die Zentraleinheit die
lokalen Einheiten über die Eingangsanschlüsse feststellen und identifizieren, und
folglich liefern die lokalen Einheiten nur Daten an die Zentraleinheitl ohne ihre
Adressendaten mit zu übertragen. Die Zentraleinheit ist in diesem Fall entsprechend
der Anzahl der jeweiligen lokalen Einheiten mit Empfangspuffern versehen.
-
Die Erfindung soll daher ein System zum Empfang serieller Daten schaffen,
welches die seriellen Daten wirksam verarbeitet, auch wenn den Daten eine Adresse
hinzugefügt ist.
-
Gemäß der Erfindung ist dies bei einem System zum Empfang von seriellen
Daten nach dem Oberbegriff des Anspruchs 1 durch die Merkmale im kennzeichnenden
Teil des Anspruchs 1 erreicht. Vorteilhafte Weiterbildungen der Erfindung sind
in
den Unteransprüchen angegeben.
-
Gemäß der Erfindung werden bei einem solchen System verschiedene Puffer
verwendet, um eine Adresse und Daten zu speichern, die von der Zentraleinheit aufgenommen
werden, während ein Unterbrechungssignal anliegt, wenn mindestens eine der Adressen
oder raten empfangen werden. Gemäß der Erfindung werden serielle Daten festgestellt,
um einen Adressenabschnitt von einem Datenabschnitt zu unterscheiden, welche eine
unterschiedliche Anzahl von Stoppbits aufweisen. Der Adressenabschnitt wird in einem
Adressenpuffer gespeichert, während der folgende Datenabschnitt in einem Datenpuffer
gespeichert wird.
-
Der Datenpuffer ist so ausgeführt, daß er ein Unterbrechungssignal
für eine Zentraleinheit erzeugt, nachdem der Datenabschnitt in dem Datenpuffer gespeichert
ist. Somit ist durch die Erfindung ein insgesamt verbessertes System zum Empfang
von seriellen Daten geschaffen.
-
Nachfolgend wird die Erfindung anhand von bevorzugten Ausführungsformen
unter Bezugnahme auf die anliegenden Zeichnungen im einzelnen erläutert. Es zeigen:
Fig. 1 ein Blockschaltbild eines herkömmlichen Daten -empfangs systems; Fig. 2 in
Form eines Blockschaltbilds ein System zum Empfang von seriellen Daten gemäß einer
Ausführungsform der
Fig. 3a und 3b den Aufbau von seriellen Daten;
Fig. 4 ein Blockschaltbild einer Schaltungsausführung zum Ansteuern eines in der
Schaltung der Fig. 2 vorgesehenen Flip-Flops; und Fig. 5 ein Zeitdiagramm, anhand
dessen die Arbeitsweise der in Fig. 4 dargestellten Schaltung veranschaulicht ist.
-
In Fig. 1 ist ein herkömmliches System dargestellt, in welchem serielle
Daten von einer lokalen oder örtlichen Einheit in einem Empfangspuffer B4 gespeichert
und in Paralleldaten umgesetzt werden. Die Paralleldaten durchlaufen dann nacheinander
weitere Empfangspuffer B3, B2 und B1, und wenn sie in dem letzten Empfangspuffer
B1 gespeichert worden sind, wird ein Unterbrechungssignal INT von dem Empfangspuffer
B1 erzeugt. Die nächsten Daten, welche an einer Zentraleinheit CPU eintreffen, bevor
die Daten von dem Empfangspuffer Bl an die Zentraleinheit CPU abgegeben worden sind,
werden in dem Empfangspuffer B2 gespeichert. Wenn die Daten in dem Empfangspuffer
B1 an die Zentraleinheit CPU abgegeben werden, werden die Daten in dem Empfangspuffer
B2 in den Empfangspuffer B1 geschoben, und es liegt ein weiteres Unterbrechungssignal
INT an. Auf diese Weise wird der Empfang von seriellen Daten und eine Datenabgabe
an die Zentraleinheit CPU asynchron gesteuert durchgeführt. Die der Zentraleinheit
CPU zugeführten Daten werden nacheinander in den Empfangspuffern B1 bis B4 gespeichert.
-
Inzwischen wird eine größere Anzahl lokaler oder örtlicher Einheiten
von einem System versor#-, bei welchem die Anzahl lokaler Einheiten mit einem gemeinsamen
Datenzuführweg verbunden ist, der von der Zentraleinheit CPU aus verläuft. Bei diesem
System überträgt jede lokale Einheit ihre eigene Adresse zur Stationskennzeichnung
zusammen mit Daten an die Zentraleinheit CPU. Bisher wird die in Fig. 1 dargestellte
Daten -empfangsschaltung verwendet, um serielle Daten einschließlich der Stationskennzeichnungsdaten
aufzunehmen. Wenn die Adresse einer lokalen Einheit in dem Empfangspuffer B1 gespeichert
worden ist, liegt ein Unterbrechungssignal an. Wenn die Zentraleinheit CPU unmittelbar
auf das Unterbrechungssignal INT anspricht und die Adresse annimmt, dann wird das
Empfangspuffer B1 geleert,und dieser Zustand hält an, bis die Daten in dem Empfangsteil
vollständig empfangen sind. Nachdem die Daten vollständig angenommen sind, ist nicht
eher, als bis die Daten von dem Empfangspuffer B4 an das Empfangspuffer B1 abgegeben
sind, vorgesehen, daß wieder ein Unterbrechungssignal anliegt, damit Daten von dem
Empfangspuffer B1 an die Zentraleinheit CPU übergeben werden. Somit wird ein Unterbrechungssignal
jedesmal dann erzeugt, wenn jeweils die Adresse und die Daten empfangen sind, und
folglich muß die Zentraleinheit CPU jedesmal die Unterbrechung behandeln. Hierdurch
wird häufig die Programmverarbeitung der Zentraleinheit CPU unterbrochen, was einen
schlechten Wirkungsgrad zur Folge hat. Da eine Adresse und Daten im allgemeinen
fortlaufend übertragen werden, folgt innerhalb eines kurzen Zeitabschnitts auf eine
erste Unterbrechung eine zweite Unterbrechung. Die Zentraleinheit CPU beginnt eine
Unterbrechung
zu verarbeiten, um Daten zu empfangen, nachdem eine
Unterbrechung zum Verarbeiten der empfangenen Adresse durchgeführt worden ist und
ti auf ihr normales Programm zurückgekehrt ist. Die Zentraleinheit CPU führt eine
Operation faktisch genau so wie eine Unterbrechungsverarbeitung in zwei verschiedenen
Schritten durch.
-
Wenn, wie oben ausgeführt, die Empfangspuffer der Zentraleinheit gemeinsam
für eine Adresse und für Daten benutzt werden, liegt ein Unterbrechungssignal beim
Empfang jeder Adresse und beim Empfang von Daten an, und die Unterbrechung muß jedesmal
verarbeitet werden, wenn das Unterbrechungssignal anliegt. Da die Zentraleinheit
die Daten noch nicht empfangen hat, wenn sie eine presse empfangen hat, und zu diesem
Zeitpunkt eine Datenverarbeitung nicht durchführen kann, geht die Zentraleinheit
im Falle eines Adressenempfangs mit der Adresse sparsam um ( d.h. sie hebt sie auf).
Diese aufgehobene Adresse wird nicht zusammen mit Daten verarbeitet, bis ein zweites
Unterbrechungssignal entsprechend dem Eintreffen von Daten anliegt. Es muß dann
nur zum Zeitpunkt eines Datenempfangs der Zentraleinheit zugeführt werden. Infolge
der gemeinsamen Benutzung derEmpfangspuffer ist es jedoch nicht möglich, ein Unterbrechungssignal
zu erzeugen, wenn nur Daten empfangen werden. Wenn Daten fortlaufend nach einer
Adresse empfangen werden, wird vorzugsweise ein Unterbrechungssignal nur zum Zeitpunkt
des Adressenempfangs erzeugt und die Daten werden fortlaufend (gleichzeitig) mit
einem Unterbrechungs-Verarbeitungsprogramm zugeführt bzw. bereitgestellt.
Das
einzig brauchbare Verfahren besteht jedoch darin, Daten jedesmal bei einer Unterbrechung
abzugeben, da ein Unterbrechungssignal infolge der gemeinsamen Nutzung der Puffer
auch zum Zeitpunkt eines Datenempfangs anliegt.
-
In Fig. 2 ist gemäß der Erfindung ein System zum Empfang von seriellen
Daten dargestellt. Die Schaltung weist zwei gleiche Gruppen von Empfangspuffern
AB1 bis AB4 und DB1 bis DB4 auf, welche zum Speichern einer Adresse und von Daten
verwendet werden und welche als Ganzes mit AB bzw. DB bezeichnet sind.
-
Serielle,von einer lokalen Einheit bereitgestellte Daten werden über
Verknüpfungsglieder G1 und G2, welche durch ein zur Unterscheidung von Adressen
und Daten vorgesehenes Flip-Flop 11 gesteuert werden, dem Adressenpuffer AB4 oder
dem Datenpuffer DB4 zugeführt. Mit diesem Flip-Flop 11 wird angezeigt, ob die seriellen
zu empfangenden Daten eine Adresse oder Daten sind.
-
Beim Einschalten (der Versorgungsspannung) und beim Rücksetzen bleibt
das Flip-Flop 11 rückgesetzt, und das Verknüpfungsglied G1 bleibt offen, so daß
eine zuerst eintreffende Adresse über das Glied G1 in dem Adressenpuffer AB4 gespeichert
wird. Am Ende des Adressenempfangs wird das Flip-Flop 11 gesetzt, um das Verknüpfungsglied
G2 zu öffnen, wodurch dann die auf die Adresse folgenden Daten in dem Datenpuffer
AB4 gespeichert werden. Der Inhalt des Adressenpuffers AB4 wird dann über die Adressenpuffer
AB3 und AB2 in das Adressenpuffer AB1 geschoben.
-
Genauso wird der Inhalt des Datenpuffers DB 4 über die Datenpuffer
DB3 und DB 2 in das Datenpuffer DB1 geschoben. Wenn dann
die Adresse
in dem Adressenpuffer AB1 und die Daten in dem Datenpuffer DB1 gespeichert sind,
wird ein Unterbrechungssignal INT2 erzeugt. Ein Unterbrechungssignal INT1 von dem
Adressenpuffer AB1 ist vorher abgedeckt worden und liegt nicht an.
-
Entsprechend dem Unterbrechungssignal INT 2 wird dann die Zentraleinheit
CPU gesteuert, so daß dann die Adresse von dem Adressenpuffer AB1 und die Daten
von dem Datenpuffer DBI an sie übertragen werden.
-
In Fig. 3a und 3b sind jeweils der Aufbau von seriellen Daten dargestellt,
die aus einem Adressenabschnitt und einem Datenabschnitt gebildet sind. Jedoch ist
der Aufbau bzw. die Anordnung von seriellen Daten, die bei der Erfindung anwendbar
sind, nicht auf die dargestellten Ausführungen beschränkt, sondern sie können auch
durch andere ersetzt werden, soweit sie erkennbare Adressen- und Datenteile aufweisen
Der Aufbau bzw. die Anordnung in Fig. 3a veranschaulicht die übertragung eines Datenbytes,
in welchem ein Adressen- und ein Datenabschnitt durch ein Stoppbit STP voneinander
getrennt sind. Ein Datenabschnitt und der nächste Adressenabschnitt sind durch zwei
oder mehr Stoppbits voneinander getrennt. Der Aufbau der Fig. 3b zeigt den Fall
einer übertragung von 2 oder mehr Datenbytes, in welchen ein Stoppbit einen Adressenabschnitt
von einem Datenabschnitt und auch Datenabschnitte voneinander trennt. Eine Anzahl
Bytes von Datenabschnitten kann fortlaufend zugeführt werden. Auf den letzten Datenabschnitt
in dem Aufbau der Fig. 3b folgt in einem Abstand von zwei oder mehr
Stoppbits
wie beim Aufbau der Fig. 3a ein Adressenteil.
-
In Fig. 4 ist eine Schaltung zum Ansteuern des Flip-Flops 11 der Fig.
2 dargestellt, wenn empfangene serielle Daten Si den in Fig. 3a oder 3b wiedergegebenen
Aufbau haben. Die Flip-Flop-Ansteuerung weist einen Zähler 12 zum Zählen von Bits
der Empfang genen Daten, ein erstes Flip-Flop 13, welches während eines Datenempfangs
gesetzt wird, ein zweites Flip-Flop 14, welches am Ende des Empfangs eines Datenabschnitts
gesetzt wird, einen Inverter 15 und ein UND-Glied G3 mit zwei Eingängen auf. In
Fig. 4 entsprechen die Angaben Si und RXC-denen in Fig. 2.
-
In Fig. 5 ist ein Zeitdiagramm dargestellt, das die Arbeitsweise der
in Fig. 4 dargestellten Schaltung in Verbindung mit den seriellen Daten eines Aufbaus
nach Fig. 3a anhand eines Beispiels veranschaulicht. In Fig. 5 ist in der ersten
Zeile ein Signal (a)dargestellt, welches die invertierte Form des Signals in Fig.
3a ist, und welches dem Empfangsdateneingang der Fig. 4 zugeführt wird. Ebenso sind
in Fig. 5 ein Ausgangssignal (b) des Flip-Flops 13 der Fig. 4, Ausgangssignale (c)
und (d) des Flip-Flops 14 und Ausgangssignale (e) und (f) des Flip-Flops 11 dargestellt.
-
Wenn ein Startbit ST eines Adressenabschnitts auf einer Leitung a
in Fig. 4 anliegt, wird das Flip-Flop 13 synchron mit einem Taktimpuls CLOCK gesetzt.
Wenn der Signalpegel auf einer Leitung b "hoch" wird, wird das UND-Glied G3 geöffnet,
um
empfangene Taktimpulse RXC und Daten an das Adressenpuffer AB4
abzugeben. Gleichzeitig mit dem Flip-Flop 13 wird der Zähler 12 angeschaltet, damit
er mit dem Zählen von Bits von Eingangsdaten beginnt und ein Signal (d) abgibt,
unmittelbar bevor das Stoppbit des Adressenabschnitts endet. Durch den Zählerausgang
(d) wird das Flip-Flop11 gesetzt und die Anzeige des Adressenabschnittes auf die
eines Datenabschnittes geschaltet, so daß die Ausgänge (e) und (f) des Flip-Flops
11 invertiert werden. Der Zähler 12 zählt die Datenbits weiter und gibt ein Abtastprüfsignal
(h) in der Mitte der Bitstelle sehr nahe bei dem Stoppbitab.Da in diesem Fall ein
Startbit eines Datenabschnitts anschließend an das Stoppbit eintrifft, wird der
Signalpegel auf der Leitung a "hoch" und der Ausgangspegel des Inverters 15 wird
"niedrig", wodurch ein Setzen des Flip-Flops verhindert ist. Mit Hilfe von zwei
(nicht dargestellten) Zählern wird der Zähler 12 wieder gestartet, um Datenbits
von einem Startbit an zu zählen, indem das Bit gleich nach dem Stoppbit gezählt
wird. Infolgedessen gibt der Zähler 12 ein Signal (d) ab, wenn er bis zu dem Stoppbit
des Datenabschnitts gezählt hat, und gibt dann ein Signal (h) in der Mitte des gleich
nach dem Stoppbit anliegenden Bits ab. Zu diesem Zeitpunkt ist das nächste Bit auch
ein Stoppbit, und der Signalpegel auf der Leitung a wird "niedrig". Der Ausgang
des Inverters 15 ist dann hoch, wodurch das Flip-Flop 14 gesetzt wird. Dann werden
die beiden Flip-Flops 13 und 11 rückgesetzt. Die nächsten eintreffenden Bits bilden
einen Adressenabschnitt. Das Flip-Flop 14 wird durch ein Rücksetzsignal (g) rückgesetzt,
wodurch die
ganze Schaltung wieder in den Anfangszustand kommt.
-
Auf diese Weise können im Hinblick auf das in Fig. 3a wiedergegebene
Formt die ersten Daten mit zwei fortlaufenden Zeichen in dem Adressenpuffer AB und
die zweiten Daten in dem Datenpuffer DB gespeichert werden. Genau auf dieselbe Weise
kann das erste Zeichen in dem Aufbau der Fig. 3b in dem Adressenpuffer AB und die
folgenden Zeichen in dem Datenpuffer DB gespeichert werden, bis zwei Stoppbits nacheinander
anliegen, um das Ende eines Datenabschnitts anzuzeigen.
-
Gemäß der Erfindung speichert somit ein System zum Empfang von Daten
Adressen-und Datenabschnittein einzelnen Puffern, um dann ein Unterbrechungssignal
zu erzeugen, wenn es einen oder beide der Adressen- und Datenabschnitte erhalten
hat. Das Ergebnis ist dann eine leistungsfähige Verarbeitung von empfangenen Daten.
-
Ende der Beschreibung