-
"Verfahren und Anordnung zur Anpassung der Datenübertragungsgeschwindigkeit
eines Kanals an die Verarbeitungsgeschwindigkeit einer elektronischen Datenverarbeitungsanlage"
Die Erfindung betrifft ein Verfahren und eine Anordnung zur Anpassung der Datenübeftragungsgeschwindigkeit
eines Kanals, dessen Daten bitweise mit einer mittleren tlbertragungsgeschwindigkeit
fk anfallen, wobei jeweils N Bits einen Datenblock bilden, an die Verarbeitungsgeschwindigkeit
fs einer elektronischen Datenverarbeitungsanlage, die für die Verarbeitung eines
Datenblocks jeweils die Zeit tD beansprucht, mittels eines Pufferspeichers.
-
Es ist bekannt, zur Speicherung der während der Datenverarbeitungszeit
anfallenden Daten zwei parallel mit Schaltern an- und abschaltbare Pufferspeicher
gemäß Figur 1
zwischen dem Ubertragungskanal und einer elektronischen
Datenverarbeitungsanlage vorzusehen. Die Taktgeschwindigkeit wird dabei so gewählt,
daß abwechselnd ein Speicher die vom Kanal eintreffende Datenmenge N eines Blocks
aufnimmt, während die Datenbits des anderen Speichers ausgelesen und verarbeitet
werden und umgekehrt (Wechselspeichermethode).
-
Diese Anordnung hat den Nachteil, daß jeder Speicher N Speicherstellen
haben muß, wodurch bei langen Datenblöcken, beispielsweise Datenblöcken über 1000
Bits, der Aufwand beträchtlich wird.
-
Der Erfindung liegt die Aufgabe zugrunde, bei einer Speicheranordnung
zwischen einem Übertragungskanal und einer elektronischen Datenverarbeitungsanlage
Speicherstellen einzusparen, auch dann, wenn die Kanalgeschwindigkeit nahe an die
Datenverarbeitungsgeschwindigkeit heranreicht. Diese Aufgabe wird durch die im Anspruch
1 angegebene Erfindung gelöst.
-
Es ist nun möglich, erhebliche Speicherkapazität einzusparen.
-
Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen
beschrieben. Für den Fall, daß ein Speicher infolge einer hohen Datenverarbeitungsgeschwindigkeit
während der Dauer eines Kanalbits ausgelesen werden kann, gibt die Anordnung nach
Anspruch 2 eine vorteilhafte Lösung an. Für den Fall, daß der Inhalt des Speichers
in der Zeit zwischen zwei aufeinanderfolgenden Kanalbits nicht in die Datenverarbeitungsanlage
übernommen werden kann, führt die Anordnung nach Anspruch 3 zu einer sehr o'konomis
chen Lösung.
-
Die Erfindung wird nun anhand der Figuren 1 bis 5 näher erläutert.
Es zeigen: Figur 1 Blockschaltbild der bekannten Wechselspeicher anordnung Figur
2 Blockschaltbild des Pufferspeichers gemäß der Erfindung, für den Fall, daß ein
Speicher während der Dauer eines Eanalbits ausgelesen werden kann Figur 3 Zeitdiagramm
für einen aus zwei Teilregistern bestehenden Pufferspeicher
Figur
4 Blockschaltbild eines aus k-Teilregistern bestehenden Pufferspeichers Figur 5
Blockschaltbild einer technischen Realisierung des Blockschaltbildes nach Figur
4.
-
Zur Erläuterung wird als Beispiel eine elektronische Datenverarbeitungsanlage,
im folgenden EDV genannt, betrachtet, die kontinuierlich über einen Ubeftragungakanal
Daten mit der Geschwindigkeit fk zugesendet bekommt. Bevor die EDV diese Daten verarbeiten
kann, muß zuerst das Eintreffen von N Datenbits abgewartet werden. Die Verarbeitung
der Daten in der EDV geschieht mit einer hohen Taktgeschwindigkeit 8, wobei der
gesamte Verarbeitungsprozeß für den Block von N Bits die Zeit tD benötigt. Damit
die Daten nun sicher nacheinander verarbeitet werden können, muß die EDV mit der
Verarbeitung des ersten Blocks fertig sein, bevor bzw. spätestens, wenn der zweite
Block vollständig in den Piflferspeicher eingelaufen ist, da für die Uebernahme
vom Speicher in die EDV wiederum eine Zeit tü nötig ist. Damit der Speicher nicht
überläuft muß daher sein: tD + tüN/fk (1)
Da die Datenübernahme
vom Speicher in die EDV allgemein mit dem schnellen Verarbeitungstakt f8 erfolgt,
beträgt bei m auszulesenden Speichern mit der Jeweiligen Speicherkapazität Qi die
gesamte Auslesezeit:
wobei (2)
die Auslesezeit des i-ten Speichers ist. Während der Zeit tD laufen nun vom Kanal
kommend Q1 Datenbits ein. Damit diese Bits mit Sicherheit gespeichert werden können,
muß sein: Q1 = ent (tD. fk + i) (3) wobei Q1 c N sein muß. Nun benötigt die EDV
bei der Datenübernahme der Anzahl Q1 aus dem Puffer die Zeit tüi = Q1/f@ Die Ubernahmezeit
tüi kann kleiner, größer oder etwa gleich der Taktdauer 1/fk eines Kanalbits sein.
-
1. Im Falle, daß die Übernahmezeit kleiner als 1/fk ist, genügt ein
einfacher Speicher der Kapazität Q1 = ent (tD @ -fk + 1)
Figur 2
zeigt ein Blockschaltbild einer Schaltungsanordnung für den genannten Fall. Die
vom Kanal anfallenden Datenbits gelangen an den Eingang eines ersten Umschalters
S1, dessen einer Ausgang über einen Speicher 1 mit dem ersten Eingang eines zweiten
Umschalters S2 und dessen anderer Ausgang direkt mit dem zweiten Eingang des zweiten
Umschalters verbunden ist. Der Ausgang des zweiten Umschalters ist mit der EDV 2
verbunden, an die hier im Beispiel eine Steuereinheit 4 angeschlossen ist, die die
beiden Umschalter S1 und S2 und die Taktgeschwindigkeiten des Speichers und der
EDV steuert.
-
Die Steuereinheit kann auch Bestandteil der EDV sein.
-
Die Funktionsweise der Schaltung ist folgende: Zuerst wird die EDV
vom Kanal mit Daten versorgt, wobei die Schalter S1 und S2 in Stellung 0 stehen.
Sind N Bits eingelaufen, so wird der Schalter S1 in Stellung L umgeschaltet.
-
Die Kanaldaten laufen jetzt in den Speicher 1 ein. Währenddessen wird
in der Zeit tD der erste Datenblock von der EDV 2 verarbeitet. Sodann wird Schalter
S2 in Stellung L geschaltet, zeitlich zwischen zwei aufeinanderfolgenden Kanalbits
der Speicher geleert und unmittelbar anschließend die Schalter S1 und 52 wieder
in die Stellung 0 zurückversetzt.
-
Die Schaltung befindet sich somit wieder im Ausgangs zustand und die
EDV nimmt die restlichen Daten des zweiten Blockes vom Kanal auf.
-
Wenn die Zeit tüi zum Auslesen des Puffers mit dem Takt fs der EDV
sehr viel kürzer als die Dauer eines Kanaltaktes ist, so kann in einer sehr vorteilhaften
Weiterbildung der Erfindung das Auslesen des Pufferspeichers mit einem Lesetakt
t erfolgen, der zwar schneller als der Kanaltakt, doch wesentlich langsamer als
der Takt der EDV sein kann.
-
Das hat den Vorteil, daß der Speicher beispielsweise aus billigen,
verhältnismäßig langsam arbeitenden hochintegrierten N0ß-Schieberegistern aufgebaut
werden kann. In diesem Fall muß die Bedingung
erfüllt sein. Durch die Zeit tE wird ein eventueller Kanal jitter berücksichtigt.
-
2. Im Falle, daß die tbernahmezeit für die während tD
gespeicherten
Bits tüi = Q1/fs größer oder etwa gleich der Zeitdauer 1/fk eines Kanalbits ist,
wird die Pufferspeicherorganisation etwas komplizierter. Wenn die Zeit tüi 1k beträgt,
wird man aus Sicherheitsgründen gegen KanalJitter während der Dauer eines ersten
Kanalbits QI Bits in der Zeit tül in die EDV einlesen, dabei während des Einlesens
das folgende Kanalbit in einen zusätzlichen Speicher abspeichern und wenn dies geschehen
ist, dieses Bit während der Dauer des darauffolgenden Kanalbits in die EDV übernehmen.
-
Der Vorgang sei an einem Zeitdiagramm veranschaulicht. In Figur 3
zeigt Zeile a den Zeitablauf der anfallenden Kanal bits (i - 1) bis (i + 2). Der
Abtastzeitpunkt der Kanalbits liegt üblicherweise in der Mitte eines Bittaktes.
In den Zeilen b und c ist gezeigt, was indessen in den Speichern 1 und 2 geschieht
und Zeile d zeigt den Zeitplan der EDV.
-
Während die EDV einen ersten Block von N Daten verarbeitet, nimmt
der Speicher 1 die einlaufenden Kanalbits der Menge Q1 auf. Nachdem das i-te Kanalbit
eingelaufen ist, hat zur Zeit t1 die EDV die Verarbeitung des ersten Blockes abgeschlossen
und kann erneut Daten aufnehmen. Dabei wird
in dem nun folgenden
Zeitabschnitt tül der Speicher 1 geleert. Das mittlerweile-vom Kanal eintreffende
Bit (i + wird in einem Speicher 2 zur Zeit t = t2 gespeichert und solange aufgehoben,
bis der Speicher 1 vollständig ausgelesen ist. Das Auslesen ist zur Zeit t3 beendet.
Nun wird in der Zeit tü2 = 1/fs das Bit (i + 1) vom Speicher 2 in die EDV übernommen.
Die übrigen Kanalbits (i + 2) ... nimmt die EDV dann-direkt vom Kanal auf. In diesem
Fall besteht der zweite Specher genau aus einem Speicherelement.
-
Wenn die Zeit tü1 = Q1/fs wesentlich größer als 1/f ist, muß die Speicherkapazität
des Speichers 2 größer sein.
-
In der Zeit tü1 laufen dann Q2 Kanalbits in den zweiten Speicher ein.
Diese Anzahl ist Q2 = ent (tü1 fk + 1) = ent (Q1 kZ + 1) Für das Auslesen dieser
Daten wird dann die Zeitspanne benötigt: tü@ = Q@/f@ Hier können nun wieder zwei
Fälle unterschieden werden: 2.1 tü2<i/fk - tE
so daß die Datenmenge
Q2 zwischen zwei aufeinanderfolgenden Kanaldaten in das System eingelesen werden
kann.
-
2.2 tü@#1/fk so daß ein weiterer Pufferspeicher vorgesehen werden
muß, der die zwischenzeitig anfallenden Kanaldaten aufnimmt.
-
Es zeigt sich hierbei, daß für den dritten Speicher und alle etwa
noch nachfolgenden Speicher die gleichen Überlegungen gelten, daß also für den Speicher
i zwischen zwei Fällen zu unterscheiden ist: 1. Die Datenmenge Qi kann zwischen
zwei aufeinanderfolgenden Kanalbits in die EDV übernommen werden, weil tüi <
1/1 - tE ist 2. Da die Zeit tüi # 1/fk wird ein weiterer Speicher (i + 1) für die
Datenmenge Qi+1 benötigt.
-
Zu den Gleichungen (1), (2), (3) kommt allgemein noch die Bedingung
hinzu =ent (tüi#1/fk (6)
wobei sich die Zeiten und Speicherkapazitäten
nun rekursiv berechnen lassen unter der zusätzlichen Randbedingung, daß der letzte
Speicher eine Datenmenge Qk speichert, die zwischen zwei Kanalbits in das System
übernommen werden kann.
-
Für diese Datenmenge muß die Gleichung erfüllt sein:
In Figur 4 ist eine allgemeine Speicherorganisation, die diese-tiberlegungen verwendet,
als Blockschaltbild gezeigt.
-
Der Pufferspeicher ist aus mehreren Telispeichern Spi ... Spk aufgebaut
und dementsprechend erfordern die Schalter S3 und S4 zusätzliche Stellungen.
-
In Figur 5 ist ein Blockschaltbild für eine besonders vorteilhafte
Ausgestaltung des Pufferspeichers gezeigt. Der Pufferspeicher ist nicht aus k Teilspeichern
aufgebaut, sondern es werden nur zwei Speichereinheiten verwendet, welche insgesamt
die Datenmenge Qi bzw. Q2 aufnehmen und die an bestimmten Stellen über zusätzliche
Leitungen angezapft sind. Die speicherbare Datenmenge ist Jeweils in den Teilspeicherblöcken
in Figur 5 eingeschrieben.
-
So kann z.B. der Speicher 101 die Datenmenge Q5, und der Speicher
102 die Datenmenge (Q3 - Q5) usw. aufnehmen.
-
Die Kanalbits werden ii'ler einen Umschalter S5 alternierend einem
ersten z.B. in die Teilbereiche 101 bis 103 aufgeteilten Speicher PSp1 und einem
zweiten, beispielsweise in die Teibereiche 201 bis 203 aufgeteilten Speicher PSp2
zugeführt, deren Ausgänge init einem Umlaufschalter S6 verbunden sind, der die abgegriffenen
Datenbits einer an seinem Abtastarm angeschlossenen EDV 2 zuführt. Die Schalter
und die verschiedenen Taktgeschwindigkeiten werden von einer mit der EDV in Verbindung
stehenden Steuereinheit 4 gesteuert.
-
Die Funktionsweise ist folgende: Zuerst nimmt die EDV einen Datenblock
von N Bits vom Kanal auf, der anschließend sofort verarbeitet wird. Währenddee läuft
vom Kanal die Datenmenge Q1 = ent (tD x fk + 1) in die Speicher 101, 102 und 103
ein. Sodann werden die Speicher 201, 202 und 203 vom Kanal mit der Datenmenge
Q2
= ent (Q1 x fk/fs + 1) geladen, während gleichzeitig das System aus dem Speicher
PSp1 die Datenmenge Qi ausliest0 Anschließend werden die Speicher 101 und 102 vom
Kanal mit der Datenmenge Q3 = ent (Q2 x fk/fs + 1) geladen, während von der EDV
aus dem Speicher PSp2 die Daten Q2 ausgelesen werden9 usw Die Speicher PSpl und
PSp2 arbeiten so in einem Wechselbetrieb, wobei Jeder abwechselnd mit dem Kanaltakt
fk bzw mit dem EDV-Takt fs oder einem Lesetakt fL arbeitet. Wenn die EDV die Kanaldaten
wieder "eingeholt" hat, kann sie direkt über den Schalter S6 mit dem Kanal verbunden
werden, um die noch fehlenden Bits aufzunehmen.
-
Bisher wurden alle Überlegungen für den Fall angestellt, daß die eintreffenden
Daten kontinuierlich mit der Geschwindigkeit fk über den Kanal kommen. Die Speicheranordnung
kann jedoch unter Beachtung einer weiteren Randbedingung auch Daten verarbeiten,
die streng periodisch in Bündeln der Länge n anfallen. Das bedeutet, daß innerhalb
einer Zeit t1
über den Kanal n Daten eintreffen und da3 anschließend
eine Pause der Dauer t2 folgt, woraus sich eine mittlere Kanalgeschwindigkeit fkm
= n/(t1 + t2) ergibt.
-
Die Kapazität eines Pufferspeicherteils muß hier derart abgewandelt
werden, d seine Stellenzahl durch n teilbar ist. Damit ist gewährleistet, daß die
Schalter der Speicher nicht während des Einlaufs eines Datenbündels umgeschaltet
werden.