DE2809602B2 - Kanalbus-Steuereinrichtung - Google Patents

Kanalbus-Steuereinrichtung

Info

Publication number
DE2809602B2
DE2809602B2 DE2809602A DE2809602A DE2809602B2 DE 2809602 B2 DE2809602 B2 DE 2809602B2 DE 2809602 A DE2809602 A DE 2809602A DE 2809602 A DE2809602 A DE 2809602A DE 2809602 B2 DE2809602 B2 DE 2809602B2
Authority
DE
Germany
Prior art keywords
output
input
memory
group
buffer
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.)
Granted
Application number
DE2809602A
Other languages
English (en)
Other versions
DE2809602C3 (de
DE2809602A1 (de
Inventor
Robert Stanley Verbank Capowski
Lewis Warren Hopewell Junction Wright
Terrence Keith Red Hook Zimmermann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2809602A1 publication Critical patent/DE2809602A1/de
Publication of DE2809602B2 publication Critical patent/DE2809602B2/de
Application granted granted Critical
Publication of DE2809602C3 publication Critical patent/DE2809602C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Description

4. Kanalbus-Steuereinrichtung gemäß Patentansprüchen 1 und 2, dadurch gekennzeichnet, daß die Eingabe-Dateneinheiten einer jeden Gruppe zusammen mit zugehörigen Kanalkennzeichen (KK) von der betreffenden Gruppe zur Kanalbus-Steuereinrichtung (CBC) übertragen werden und daß jede Eingabe-Datenevnheit zusammen mit dem zugehörigen Kanalkennzeichen im Eingabepufferspeicher gespeichert wird; und daß die entsprechende Ausgabe-Dateneinheit zusammen mit dem gleichen zagehörigen Kanalkennzeichen im Ausgabepuffer gespeichert und dann von dort mitsamt diesem Kanalkennzeichen an die entsprechende Kanalgruppe ausgegeben wird, so daß die Dateneinheiten aller Kanäle je einer Gruppe wie Dateneinheiten eines einzigen Kanals übermittelt und zwischengespeichert werden können.
Die vorliegende Erfindung betrifft eine Kanalbus-Steuereinrichtung nach dem Oberbegriff des Patentanspruchs 1.
Aus der deutschen Offenlegungsschrift Nr. 21 62 806 ist eint! Einrichtung bekannt, mit der Anforderungen und D.iten zwischen Eingabe-ZAusgabekanälen und einem ius mehreren Moduln bestehenden Speicher einer Datenverarb;itungsanlage übermittelt werden. In
dieser Einrichtung sind Pufferspeicher zur Zwischenspeicherung der Daten bei der Übermittlung in der einen und in der anderen Richtung vorgesehen. Durch Prioritätsschaltungen werden einerseits die Eingaben von den ('.analen in die Pufferspeicher und andererseits
die Übertragungen von den Puffern zu den Speichermoduln geregelt, wobei für diese Übertragungen zum Speicher curchaus eine andere Reihenfolge möglich ist als für die Eingaben von den Kanälen, in Abhängigkeit von der Verfügbarkeit der Speichermoduln zum Zugriff.
Für die Ausgabereihenfolge bei der Übermittlung von Dateneiniieiten von den Speichermoduln zu den Kanälen besteht keine besondere Steuerung, so daß diese Reihenfolge abhängig ist von den Wartebedingungen, also den Speicherzugriffsmöglichkeiten bei der Eingabe. Durch diese Umordnung der Reihenfolge zwischen der Eingabe von den Kanälen in die Übermittlungseinrichtung einerseits und der Ausgabe von der Übermittlungseinrichtung an die Kanäle
andererseits ergibt sich eine Störung des Speicheranforderungs- bzw. Datenflusses.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine Kanalbus-Steuereinrichtung zwischen einer Mehrzahl von Eingabe-/Ausgabekanälen und gemeinsam benutzten Hauptspeichermoduln einer Datenverarbeitungsanlage zu schaffen, die das Eingeben von Daten von den Kanälen in die Pufferspeicher sowie die Übertragung von den Pufferspeichern zu den Hauptspeichermoduln in Abhängigkeit von der Verfügbarkeit dieser Hauptspeichermoduln und die Ausgabereihenfolge bei der Übertragung von Daten von den Hauptspeichermoduln zu den einzelnen Kanälen so steuert, daß der Datendurchsatz und die Ausnutzung der vorhandenen Speicherkapazität verbessert werden.
Die Lösung besteht im Kennzeichen des Patentanspruchs 1. Weitere Lösungen sind in den Ansprüchen 2 bis 4 gekennzeichnet
Mit dieser Einrichtung ist es möglich, die aus dem Hauptspeicher abgerufenen Daten oder Einspeicherbestätigungen vom Hauptspeicher in der gleichen Reihenfolge an einzelne Kanäle oder Kanalgruppen auszugeben, wie die zugehörigen Abrufanforderungen bzw. einzuspeichernden Daten von den Kanälen bzw. Kanalgruppen an die Übermittlungseinrichtung übergeben wurden. Trotzdem können die einzelnen Speicheroperationen, je nach momentaner Zugriffsmöglichkeit, in anderer Reihenfolge durchgeführt werden. Das optimiert die Pufferausnutzung und erhöht den Datendurchfluß. Beim Leeren des Eingabepuffers entstehen keine Verzögerungen, und ein Eingabepufferabschnitt kann als frei markiert werden, sobald für ihn ein Speicherzugriff möglich ist, ohne Rücksicht auf die Eingabereihenfolge der gepufferten Daten.
Mit einer weiteren Ausgestaltung des Wartespeichers ist es möglich, Kanalkennzeichen, die bei der Eingabe die Dateneinheiten begleiten und deren Herkunft angeben, als Zielangaben den auszugebenden Daten wieder mitzugeben. Das erleichtert die Steuerung des Datenverkehrs, insbesondere bei Anordnung der Kanäle in Gruppen, weil die Übermittlungseinrichtung die Herkunft der Verkehrseinheiten bei der Bearbeitung nicht mehr berücksichtigen muß, und weil die Speicheroperations-Anforderungen einer ganzen Gruppe so wie die eines einzelnen Kanals behandelt werden können. Die Übermittlung wird sozusagen transparent bezüglich der Kanalherkunft.
In einer weiteren Ausgestaltung werden Eingabepuffer und Ausgabepuffer in gleiche, einander entsprechende Bereiche eingeteilt, die je einer Kanalgruppe zugeordnet sind. Dies erleichtert auch die Reihenfolgesteuerung des Datenverkehrs, weil der Verkehr der einzelnen Gruppen voneinander getrennt bleibt.
In einer weiteren Ausgestaltung wird von der Übermittlungseilrichtung, in der die Zwischenspeicher bereichsweüe den Kanalgruppen zugeordnet sind, durch besondere Übertragungs-Freigabesignale den Steuereinheiten der Kanalgruppen angezeigt, daß noch Speicherplatz im zugeordneten Bereich verfügbar ist, um so für eine Kanalgruppe eine durchgehende go quasi-asynchrone Übertragung aufeinanderfolgender Dateneinheiten zu ermöglichen, bis die zugeordneten Eingabe-Zwischenspeicher voll besetzt sind.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher f,5 beschrieben. Es zeig'.
Fig. I die Umgebung der vorliegenden Kanalbus-Steuerung (CBC)'m einem Datenverarbeitungssystem,
Fig.2 typische Eingabe- und Ausgabeverbindungen zwischen der Kanalbus-Steuerung (CBC) und Gruppe von Eingabe/Ausgabe-Kanälen in der in Fig.! gezeigten Umgebung,
F i g. 3 den internen Datenfluß der Kanalbus-Steuereinrichtung,
Fig.4 das Format eines K.analbus-Sammelregisters aus F i g. 3 zur Zusammensetzung von Anforderungseinheiten,
F i g. 5 bestimmte Steuer- und Busleitungsverbindungen zwischen der Kanalbus-Steuerung (CBC) und den Eingabe/Ausgabe-Kanalgruppen,
Fig.6 die Reihenfolge der Vorgänge beim Laden eines Kanalbus-Sammelregisters von der zugeordneten Kanalgruppe,
F ig. 7 Verbindung zur Durchgabe von Informationswörtern von einer Kanalgruppe in einzelne Wortsegmente eines Kanalbus-Sammelregisters,
Fig.8—11 Schaltungen zur Unterscheidung der durch eine Anforderungseinheit bezeichneten Operation und zur Entwicklung von j. leuersignalen zur Übermittlung der betreffenden Anforderungseinheiten über den EingaDepuffer,
Fig. 12 eine Schaltung zur Auswahl des nächsten Kanalbus-Sammelregisters zum Auslesen und des Eingab »pufferabschnittes, in den die ausgelesene Information zu schreiben ist,
Fig. 13 eine Schaltung zur Anzeige von Verfügbarkeit oder Belegung der Kanalbus-Sammelregister und der Eingabepufferabschnitte,
F i g. 14 Schaltungen und Verbindungen zwischen den Kanalbus-Sammelregistern und den Eingabepuffern zur Erzeugung und Einsetzung der Pufferkennzeichen PX und der Gruppeneingabekennzeichen EK sowie zur Einsetzung von Null-Füllwörtern mit gültiger Parität in leere Wortfelder,
Fig. 15 und 16 die Schaltung zur Auswahl des nächsten Abschnittes im Eingabepuffer zum Auslesen an den Speicher,
F i g. 17 die Eingabetaktierung des Eingabepuffers,
Fig. 18 und 19 Datenbahnen zur Informationsübertragung vom Eingabepuffer an den Speicher und vom Speicher an den Ausgabepuffer, sowie eine Darstellung der Benutzung des Wartespeichers für den koordinierten Kennzeichenfluß beim Einschreiben von Daten in den Ausgabepuffer,
Fig.20 einige Einzelheiten des Kennzeichen-Wartespeichers, und
Fig. 21 und 22 die Schaltung zur Bestimmung des nächsten auszulesenden Abschnittes des Ausgabepuffers.
Umgebendes System
Di; hier beschriebene Kanalbusleitungs-Steuereinrichtung, nachfolgend kurz Kanalbus-Steuerung oder CBC genannt, a.beitet in einem System, wie es allgemein in den Fig. 1 und 2 dargestellt ist. Mehrere Prozessor-Speiciiermoduln 1, 2, 3..., werden von der Speichersteuerung (SCE) 5 gesteuert verschachtelt adressiert. Die Speichersteuerung wählt auch die Speichermoduln, wie es bei 6 gezeigt ist.
Mit jedem Zugriffszyklus zu einem der Moduln 1 bis 3 werden entweder Daten abgerufen (Ausgabe) oder eingespeichert (Eingabe). In einer Abrufoperation wird Information an einer von der Speichersteuerung 5 angegebenen Moduladresse aus den Speichermoduln 1 bis 3 geholt und zur Ausgabeverteilung an die Speichersteuerung 5 gegeben. In einer Einspcicheropc-
ration werden durch die Speichersteuerung 5 präsentierte Date,, an einer in einem der Moduln 1 bis 3 bezeichneten Adressteile gespeichert und ein die Beendigung dieser Speicherung bestätigendes Signal über die Speichersteuerung 5 an die Quelle der betreffenden Eingabeanforderung weitergeleitet. Die bei 7 dargestellte Kanalbus-Steuerung CBC wirkt als Puffer zwischen der Speichersteuerung 5 und Gruppen von Eingabe/Ausgabekanälen, allgemein mit 9 bezeichnet. Eine Bus-Steuerung BCEU bildet die Schnittstelle zwischen den zentralen Prozessoren 12 und einem Bereitschaftsspeicher (CACHE) 14 sowie diesem und einem Wartungs- und Sichtgerätkonsol 15. Die Bus-Steuerung Il steht außerdem mit der Speichersteuerung 5 in Verbindung, für den Zugriff zu den Speichermoduln 1 bis 3, und zwar in Konkurrenz mit der Kanalbus-Steuerung CBCT. Die Einheit RCE11 und der Bereitschaftsspeicher (CACHE) 14 bilden keinen Teil der vorliegenden Erfindung und sind nur zur Veranschaulichung der Konkurrenzsituation dargestellt. Die Speichersteuerung SCES hängt nur insofern mit der vorliegenden Erfindung zusammen, als sie Empfänger bzw. Quelle der von der CBCl übermittelten Information ist.
Die in Fig. 2 dargestellte Schnittstelle 9 steht mit Kanalgruppen in Verbindung. Im gezeigten Ausführungsbeispiel ist die CBCJ mit drei Kanalgruppen 20,22 und 24 verbunden, wobei die Gruppen 20 und 22 je sechs Kanäle und die Gruppe 24 vier Kanäle umfaßt.
Die Kanäle in einer Gruppe werden gemeinsam durch eine Gruppenleiteiriheit gesteuert, die »Direktor« genannt wird. Die nachfolgend mit Kanalgruppe 1 bezeichnete Gruppe 20 wird di""ch den Direktor 26 gesteuert, auch Direktor 1 genannt. Die nachfolgend mit Kanalgruppe 2 bezeichnete Gruppe 22 wird durch den Direktor 28 bedient, nachfolgend Direktor 2 genannt. Die nachfolgend als Kanalgruppe 3 genannte Gruppe 24 wird durch den Direktor 30 bedient, nachfolgend Direktor 3 genannt. Gemäß Darstellung bei 32 ist de Prioritätsreihenfolge des Verkehrs für diese Gruppen: 1. 2. 3, wobei in Konkurren;'.situa:ionen die Gruppe 1 die höchste und die Gruppe 3 die niedrigste Priorität hat. Direktoren und Kanäle hängen nur soweit mit vorliegender Erfindung zusammen, als sie Quellen bzw. Empfänger der durch die CBC übermittelten Information sind.
Information fließt von der Kanalbus-Steuening CBC synchron über eine 81 Bit breite Datenbusleitung 34 zu den Direktoren. Von den Direktoren 1, 2 und 3 fließt Information zur CBC über drei 41 Bit breite Datenbusleitungen 36, 38 und 40. Die Kanäle der Gruppe i, bezeichnet mit der Nummer 42, sind einzeln mit E/A-Steuerungen und E/A-Geräten über die entsprechenden peripheri;n E/A-Schnittstellen 44 verbunden. In gleicher Weise haben die Kanäle der Gruppe 2 (Darstellung bei 46) einzelne externe Schnittstellen bei 48. und die Kanäle der Gruppe 3, dargestellt bei 50, haben Schnittstellen bei 52.
Kanalbus-Steuening CBC- Allgemeines
Die interne Organisation der Kanalbus-Steuerung CBC ist schematisch in F i g. 3 gezeigt Wortweise von den Kanalgruppen 1 bis 3 gesendete Information wird zu Anforderungssegmenten, im nachfolgenden auch Anforderungseinheiten genannt, von 1, 2 oder 3 Wörtern in entsprechenden Kanalbus-Sammelregistem (CBAR)JQ, 72 und 74 zusammengesetzt Das CBAR 70 empfängt den Verkehr von der Kanalgruppe 1 und wird auch CBAR 1 genannt. Das CBAR 72 gehört zur Kanalgruppe 2 und wird auch CBAR 2 genannt. Das CBAR 74 gehört zur Kanalgruppe 3 und wird auch CBAR 3 genannt. Jedes CBAR-Register (s. Fig.4) ist -, jeweils 123 Bits breit. Jedes Register setzt 1. 2 oder 3 Wörter mit jeweils 41 Bit Breite von der entsprechenden Kanalgruppe zu einer Anforderungseinheit zusammen, die aus einem Anforderungswort und 0, 1 oder 2 Datenwörtern besteht. Jede Einheit wird mit Hilfe der
κι später zu beschreibenden Übertragungs-Freigabesigna-Ie in quasi-asynchroner Betriebsweise geladen.
Volle CBAR-Register stehen in der Prioritätsreihenfolge I, 2, 3 im Wettbewerb um den Zugriff zu leeren Abschnitten in dem gemeinsam benutzten Eingabepuf- -, fer (EP) 78. Der Eingabepuffer 78 ist in die Bereiche 80, 82 und 84 unterteilt, die dem Verkehr der entsprechen den Kanalgruppen 1, 2 und 3 zugeordnet bzw. dafür reservier; sind, d. h., die Daten aus den CS/ltf-Registern 1,2 und 3 gehen in die zugeordneten Bereiche 80,82 und
_>n 84 des Eingabepuffers. Jeder dieser Bereiche umfaßt zwei Abschnitte. Die Abschnitte des der Gruppe 1 zugeordneten Bereiches 80 sind mit 1-0 und 1-1 bezeichnet, die Abschnitte des Bereiches 82 für die Gruppe 2 sind bezeichnet mit 2-0 und 2-1, und die
r. Abschnitte des Bereiches 84 mit 3-0 und 3-1. leder Abschnitt kann den gesamten Inhalt des zugeordneten CBAR-Registers in einer bitparallelen Übertragung empfangen.
Die Schaltung für die Auswahl einzelner Abschnitte
«ι des Puffers 78 zum Einschreiben und Auslesen ist allgemein mit 88 ^Adressiereinrichtung) bezeichnet. Ein Wettbewerb beim Einschreibzugriff wird nach der Gruppenpriorität gelöst. Belegte Abschnitte des Puffers 78 stehen im Speicherzugriffswettbewerb über das
r, gemeinsam benutzte Ausgaberegister 90. Die Belegung der Abschnitte wird durch später zu beschreibende Merker (Kippglieder) angezeigt. Die Auswahl beim Speicherzugriffswettbewerb geschieht nach folgenden Kriterien: Zugänglichkeit des adressierten Speichermo-
.o duls (wobei dieser jeweils durch den Inhalt des betreffenden Pufferabschnitts gegeben ist), die Gruppenpriorität !, 2 oder 3, die Abschnittspriorität innerhalb jedes Gruppenbereiches (der Abschnitt 0 hat Vorzug vor dem Abschnitt 1, wenn die anderen
.-, Bedingungen für beide erfüllt sind) und die Verfügbarkeit der entsprechenden Abschnitte im Ausgabepuffer (der weiter unten beschrieben wird). Die Zugänglichkeit von Speichermoduln für den Eingabepufferverkehr wird nach Darstellung in F i g. I beeinflußt durch den
ο Wettbewerb mit dem Verkehr anderer Quellen (7 B. der zentralen Prozessoren).
Jedes CßAK-Register enthält drei 41 Bit groCo Segmente mit der Bezeichnung Wort 0, Wort 1 und Wort 2. Diese Segmente werden jeweils überschrieben,
S5 aber nicht gelöscht Zu jedem CBAR gehört ein entsprechendes Kippglied (Binärelement), Fig.4, das den Beiegungszustand des betreffenden CBAR anzeigt und die Informationsübertragung vom und zum CBAR steuert Eine Eintragungseinheit in ein CBAR besteht aus einem von der entsprechenden Kanalgruppe in das Wortsegment 0 übertragenen Anforderungswort und 0, 1 oder 2 Datenwörtern. Die Datenwerter werden von der entsprechenden Kanalgruppe übertragen und selektiv durch die zugeordneten (später zu beschreibenden) Kennzeichen Di und D2 in das Segment des Wortes 1 bzw. 2 gesteuert
Das Anforderungswort enthält Adreßinformation, Schlüsselinformation, Operationsinfonnation (S), Infor-
mation über die Kanalidentität (ein Kanalkennzeichen KK) sowie Paritätsbits (P)und ein Festadreßbit (F), das im aktiven Zustand eine bestimmte, für die vorliegende Erfindung nicht relevante Adreßübersetzungsanforderung bezeichnet. Im Segment des Wortes 0 gibt es -, außerdem einige ungenutzte oder Reservebitpositionen. Die Adresse und der Schlüssel bezeichnen eine Spei'-.ieradresse für eine Operation und den Schlitzschlüssel für diese Adresse. Das Operationsbit 5 unterscheidet die vom Speicher auszuführende Operation entweder als einen Abruf (0) oder als eine Einspeicherung (1). Das Kanalkennzeichen (KK) bezeichnet einen bestimmten Kanal, der die Anforderungsquelle in der zugehörigen Gruppe darstellt und der außerdem der jeweilige Empfänger (Senke) ist, an den r, die Information aufgrund der Anforderung schließlich zu liefern ist. Mit den Paritätsbits (P) prüft die Kanalbus-Steuerung CßCdie Anforderungsinformation auf Fehierfreiheit. Diese Prüfungen sind nicht dargestellt, da sie mit der vorliegenden Erfindung nichts zu m tun haben.
Eine Abruf-Anforderungseinheit besteht nur aus dem Anforderungswort im Wortsegment 0. Der Inhalt der Wortsegmente 1 und 2 wird durch die CBC ignoriert und durch Null-Füllv. orter ersetzt, die in den Eingangs- ?-, puffer eingesetzt werden. Eine Einspeicher-Anforderungseinheit besteht aus dem Anforderungswort im Wortsegment 0 und einem oder zwei Datenwörtern in den Wortsegmenten 1 und 2. Die Datenwörter enthalten Datenbytes und Markierungsbits, die ange- j(> ben, welche Datenbytes zusammenhängend zu speichern sind. Bei einer Speicheroperation für nur ein Wort wird das Datenwort von der entsprechenden Kanalgruppe entweder in das Wortsegment 1 oder in das Wortsegment 2 des Cß/4/?-Registers übertragen und j-, ein Null-Füllwort von der CßC-Steuerschaltung automatisch an den Ausgang des anderen Segmentes abgegeben.
Mit jeder Anforderungsübertragung in den Eingabepuffer erzeugt die Kanalbus-Steuemng CoCPuffertdentifizierungs-Kennzeichen PK und Gruppeneingabekennzeichen EK. die über die Bahnen 94 und % (F i g. 3) zusammen mit der entsprechenden Anforderungseinheit in dem betreffenden Abschnitt des Eingabepuffers gespeichert werden. Das Puffer-Kennzeichen PK bezeichnet den betreffenden Eingabepufferabschnitt, der die Einheit aufnimmt, und das Gruppeneingabekennzeichen EK bezeichnet die Reihenfolge der Eintragung der betreffenden Einheit in die Kanalbus-Steuerung CBC relativ zu anderen Einheiten derselben Gruppe.
Wenn Anforderungseinheiten vom Ausgaberegister 90 des Eingabepuffers 78 in den Prozessorspeicher übertragen werden, werden die zugehörigen Kennzeichen (Kanalkennzeichen KK, Puffer-Kennzeichen PK und Gruppeneingabe-Kennzeichen EK) an einen Wartespeicher (WS) 100 übertragen, der nach dem FIFO-Prinzip arbeitet, und zwar zeitlich koordiniert mit der Speicheradressierung. Kennzeichen im Wartespeicher sind dadurch im Zusammenhang mit den entsprechenden Speicherausgaben adressierbar.
Ausgabedaten vom Prozessorspeicher (abgerufene Daten und Bestätigungen der Speicher-Eingabeoperationen) werden über die Busleitung 104 in den Ausgabepuffer (AP) 106 übertragen. Der Ausgabepuffer 106 ist in die den Gruppen zugeordneten Bereiche 108, 110 und 112 entsprechend den Bereichen 80,82 und 84 des Eingabepuffers 78 unterteilt Diese Bereiche im Ausgabepuffer sind weiter in Abschnitte unterteilt, die den Abschnitten im Eingabepuffer mit der Bezeichnung 1-0,1-1,2-0,2-1,3-0 und 3-1 entsprechen. Der Inhalt der belegten Abschnitte des Ausgabepuffers 106 steht im Zugriffswettbewerb über das gemeinsame Ausgaberegister 116 zur Ausgabebusleitung 120, die mit den Direktoren der Kanalgruppen verbunden ist.
Das Kanalkennzeichen verläßt den Wartespeicher 100 bei 124 und gelangt zum Ausgabepuffer-Eingang 126 und wird so mit den entsprechenden Speicherausgabedaten gespeichert und an den betreffenden Direktor ausgesendet. Dadurch kann der Direktor den Ausgangsverkehr auf einzelne Kanäle verteilen, ohne die CßC-Schaltung zu belasten.
Das Pufferkennzeichen verläßt den Wartespeicher 100 bei 130 und gelangt zur Auswahlschaltung (Adressiereinrichtungi 134. um den vom Speicher zu beschreiben Jen Ausgabepufferabschnitt zu wählen (d. h., denjenigen Abschnitt, der dem Eingabepufferabschnitt entspricht, der vorher durch die betreffende Anforderung belegt war).
Das Pufferkennzeichen und das Gruppeneingabekennzeichen gelangen vom Ausgang 140 des Wartespeichers 100 zur Leseprioritäts-Auswahlschaltung 138. Die Leseprioritäts-Auswahlschaltung 138 benutzt diese Kennzeichen zusammen mit einem Gruppenausgabekennzeichen AK, das bei 142 eingegeben wird, um die Ausgabedaten vom Ausgabepuffer 106 für jeden Direktor in der Reihenfolge der Eintragung der Anforderungen der zugehörigen Gruppe in die CBCzu ordnen, auch wenn diese Anforderungen in einer anderen Reihenfolge an den Speicher gegeben werden. Diese Operation wird später im Zusammenhang mit F i g. 21 genauer beschrieben.
Nicht einzeln gezeigte Weiterschaltleitungen (VOR), die in der nachfolgenden Beschreibung der F i g. 5 erwähnt werden, bereiten die einzelnen Direktoren darauf vor, den zugehörigen Gruppenverkehr auf der Busleitung 120 zu unterscheiden und anzunehmen.
Datenaustausch zwischen Direktor und Kanalbus-Steuerung CBC
In Fig. 5 ist gezeigt, wie der Direktor 1 und die Kanalbus-Steuerung CBC ein lokales Taktsignal vom gemeinsamen Systemreferenztaktsignal entwickeln, das bei 150 empfangen wird. Die Direktoren 2 und 3 benutzen dasselbe Referenztaktsignal, empfangen bei 151 und 152, zur Entwicklung ihrer eigenen lokalen Taktsignale. Die Speichersteuerung 5 verwendet dasselbe Referenztaktsignal.
Der erste Zweig 154 der 81 Bit breiten Ausgangsbusleitung von der CBC geht zum Direktor 1. Die Fortführung dieser Busleitung vom Direktor 1 zum Direktor 2 ist bei 156 gezeigt und die Fortführung vom Direktor 2 zum Direktor 3 bei 158. Separate Weiterschaltleitungen 160, 162 und 164 (mit VOR 1, VOR 2 und VOR 3 bezeichnet), führen von der CBC zu den entsprechenden Direktoren 1,2 und 3. Unmittelbar bevor Ausgabeinformation auf den Busleitungszweig 154 gegeben wird, wird das Signal auf einer dieser Weiterschaltleitungen angehoben und dadurch der entsprechende Direktor ausgewählt zum Empfang der Information auf der Ausgabebusleitung.
Zur Informationsübertragung in Gegenrichtung von den Direktoren zur CBC sind separate Übertragungs freigabeleitungen 170, 172 und 174 vorgesehen (mit ÜB-FREIGABE1,2 und 3 bezeichnet). Diese verlaufen von der CBC zu den entsprechenden Direktoren 1, 2
und 3, und Signale auf diesen Leitungen werden angehoben, wenn entweder das betreffende CBAR-Rtgister nicht belegt ist bzw. wenn ein Abschnitt im entsprechenden Eingabepufferbereich (80, 82 oder 84) nicht belegt ist. Wenn die Signale auf diesen Leitungen angehoben werden, können die betreffenden Direktoren Information wortweise an die CßC auf den je 41 Bit breiten Eing; /igsbusleitungen 180,182 und 184 leiten.
Ein Direktor kann wiederholt so lange übertragen, wie das Signal auf der Übertragungsfreigabeleitung angehoben ist, d. h., er braucht zwischen den aufeinanderfolgenden Übertragungen nicht darauf zu warten, daß das Signal auf der zugehörigen Übertragungsfreigabeleitung abfällt und ansteigt. Diese Betriebsart nennt man quasi-asynchron.
Mit jeder Übertragung hebt der entsprechende Direktor das Signal auf der Adreßkennzeichenleitung oder der Datenkennzeichenleitung 1 oder der Datenkennzeichenleitiing 2 an. Die Adressenkennzeichenleitungen für die Direktoren 1, 2 und 3 sind mit 190, 192 und 194 bezeichnet. Die Datenkennzeichenleitungen 1 (D 1) für die Direktoren 1, 2 und 3 sind mit 200, 202 und 204 bezeichnet. Die Datenkennzeichenleitungen 2 (D2) für die Direktoren 1, 2 und 3 sind mit 210, 212 und 214 bezeichnet.
Die Direktoren 1, 2 und 3 können über die betreffenden Vierfach-Wort-Kennzeichenleitungen (QW) 220, 222 und 224 der CBC mitteilen, daß die zugehörige Anforderung für eine 4-Wort-Datenübertragung gilt (entweder Abruf oder Einspeicherung). Die Direktoren 1, 2 und 3 zeigen über entsprechende Übertraglingsende-Kennzeichenleitungen (EOT) der CSCdas Ende einer Übertragungsfreiheit an.
Format der Übertragungen zum Kanalbus-Sammelregister CBAR
Nach Darstellung in F i g. 6 enthält eine Anforderungseinheit von einem Direktor an die Kanalbus-Steuerung CBC entweder eine Abrufanforderung oder eine Speicheranforderung. Eine Abrufanforderung kann die Übertragung von zwei Datenwörtern (Doppelwortabruf) oder vier Daten"/örtern (Vierfachwortabruf) vom Speicher verlangen. Eine Speicheranforderung kann die Übertragung von einem, zwei oder vier Datenwörtern an den Speicher verlangen. Bei einer Einspeicherungsoperation begleiten die Daten die Anforderung.
Die relative Taktierung des Direktors und der Kanalbus-Steuerung CBC sind in F i g. 6 bei 250 bzw. 252 gezeigt. Ein bei 254 in F i g. 6 dargestellter Doppelwortabruf belegt drei Taktzyklen des Direktors (6 CßC-Zyklen); und zwar einen Direktorzyklus 256 zur Übertragung eines Anforderungswortes und zwei Leerzyklen 257 und 258, nach denen eine weitere Übertragung (wie bei 259 gezeigt) eingeleitet werden kann. Bei einem Doppelwortabruf sendet der Direktor das Anforderungswort (ADR für Adresse) gleichzeitig mit einem Adreßkennzeichen (ADR-KE) und einem Übertragungsendekennzeichen (EOT).
Ein bei 260 in F i g. 6 dargestellter Vierfachwort-Abruf belegt fünf Direktorzyklen (10 CÄC-ZyklenX und zwar einen aktiven Übertragungszyklus 262, dem ein Leerzyldus 264, ein aktiver Zyklus 266 und zwei Leerzyklen 268 und 269 folgen. Im ersten aktiven Zyklus 262 sendet der Direktor eine Anforderung zusammen mit einem Adreßkennzeichen und einem Übertragungsendekennzeichen. Im zweiten aktiven Zyklus 266 werden das Übertragungsendekennzeichen und das Vierfachwort-Kennzeichen (QW) ohne weitere Information gesendet. Die CBC spricht auf diese Kennzeichenkombinalion in einer später zu beschreibenden Art an und setzt Nullen-Füllwörter und die zugehörige Parität in die Daten-ZMarkierungswortpositionen der Anforderungseinheit.
Bei einer Einspeicherungsoperation besteht die Anforderungseinheit aus dem Anforderungswort und einem oder mehreren Datenwörtern. Eine bei 270 in F i g. 6 gezeigte Einzelwortspeicheroperation belegt
ίο drei Direktorzyklen (d. h., genau soviel Zeit wie ein Doppelwortabruf). Die ersten beiden Zyklen 272 und 274 sind aktiv und der dritte Zyklus 276 ist leer. Nach dem Leerzyklus kann eine weitere Übertragung beginnen, wie bei 278 vorgeschlagen. Im ersten aktiven
i) Zyklus 272 wird das Anforclerungswort mit einem Adreßkennzeichen gesendet und im zweiten aktiven Zyklus 274 ein Datenwort mit dem Kennzeichen D 1 oder D 2.
In Fig. 7 ist die Durchschaltung zum CBARl dargestellt und gezeigt, daß Information auf der Eingabebusleitung 280 der Gruppe 1 durch die Tore 282 in das Wortsegment 0 des entsprechenden CBAR-Rcgisters geleitet wird, wenn das Adreßkennzeichen vom Direktor 1 gesendet wird. Wenn das Kennzeichen D 1 gesendet wird, verbinden die Tore 284 die Eingabebusleitung der Gruppe 1 mit dem Wortsegment 1 des CBAR 1. Ähnlich erfolgt die Durchschaltung zwischen dem Direktor 2 und dem CBAR 2, sowie zwischen dem Direktor3 und dem CBAR.
jo Nach Darstellung in den F i g. 6 und 7 steuert in jeder Anforderungsübertragung das Adreßkennzeichen die Adreßinformation in das Wortsegment 0 des entsprechenden CBAR. Bei einer Einzelworteinspeicherung 270 steuert das angehobene Signal auf der Kennzei-
!5 chenleitung D 1 oder D 2 die Daten- und Markierungsinformation von der entsprechenden Eingabebusleitung zu den betreffenden CBAR-Wortsegmenten 1 oder 2 (Segment 1 wenn D1, und Segment 2 wenn D 2).
Eine Doppelworteinspeicherung 290 belegt vier Direktor-Taktzyklen; drei aktive Zyklen 291, 292 und 293 und einen Leerzyklus 294. Im ersten aktiven Zyklus 291 wird das Anforderungswort durch die Adresse in das Wortsegment 0 der entsprechenden Gruppe des CBAR gesteuert. Im zweiten und dritten aktiven Zyklus 292 und 293 werden die Daten begleitet durch die Kennzeichen Di und D 2 in beliebiger Reihenfolge gesendet. Im dritten Zyklus wird außerdem das £O7"-Kennzeichen gesendet. Für eine normale Lese-Anforderung wird das Dl-Kennzeichen im zweiten aktiven Zyklus gesendet und das Kennzeichen D 2 im dritten aktiven Zyklus. Für eine Anforderung »Rück wärts lesen« wird das Kennzeichen D 2 zuerst gesendet und dann als zweites das Kennzeichen D1, woüurch die effektive Positionsfolge der Eingabedaten im Speicher umgekehrt wird.
Eine Vterfachworteinspeicherung 296 belegt sieben Direktor-Taktzyklen (drei aktive Zyklen, ein Leerzyklus, zwei aktive Zyklen und wieder ein Leerzyklus). Die Adresse wird mit dem Adreßkennzeichen gesendet, gefolgt durch zwei Daten-/Markierungswörter mit den Kennzeichen Dl und D 2; D\ als erstes beim gewöhnlichen Vorwärtslesen bzw. Ό2 als erstes beim Rückwärtslesen. Das Kennzeichen EOT wird im dritten aktiven Zyklus gesendet Im fünften und sechsten Zyklus
' 5 werden zwei weitere Datenwörter mit den Kennzeichen D \ und D 2 gesendet (D ί voran beim Vorwärisiesen und D 2 voran beim Rückwärtslesen). Das Vierfachwort-Kennzeichen wird entweder im fünften oder im
sectisten Zyklus gesendet. Das Kennzeichen FOT wird wieder im sechsten Zyklus gesendet. Der siebte Zyklus ist gemäß obiger Erklärung leer.
Wie oben schon erklärt wurde, muß das Signal auf der Übertragungsfreigabeleitung (für jeden Direktor 170, 172 oder 174, Fi g. 5) hoch sein, sobald im entsprechenden CBAR oder in einem Abschnitt des betreffenden Eingabepuffer-Gruppenbereiches 80, 82 oder 84 (F i g. 3) eine leere Stelle vorhanden ist. Das aktive Freigabesignal gestattet dem betreffenden Direktor, kontinuierlich an die CBC zu senden, ohne auf das Abfallen und Ansteigen eines Signals oder eine sonstige Bestätigung zwischen aufeinanderfolgenden Übertragungen warten zu müssen. Das betreffende CBAR wird in drei C'ßC-Zyklen gefüllt. Wenn eine Leerstelle in dem betreffenden Eingabepufferbereich besteht, muß in Anbetracht des kontinuierlich anhaltenden Freigabesignals der Inhalt des gefüllten CBAR direkt in den Eintiabepuffer übertragen werden, um das CBAR für seinen Dire'uor zugänglich zu halten. Diese Forderung wird unti ■ Berücksichtigung der Operation der drei CBARs dadurch erfüllt, daß man den Eingabepuffer in jedem CflC-Zyklus einmal beschreibbar macht (d. h. innerhalb drei Zyklen einmal für jedes C/?4/?-Register).
■CßC-Steuerung für Anforderungsübertragungen
Die CSC-Steuerschaltung zur Reaktion auf Bedingungen, die durch Signale auf den Kennzeichenleitungen von den einzelnen Direktoren dargestellt werden, ist in den F i g. 8 bis 11 gezeigt. Diese Figuren zeigen die Steuerungen der Gruppe 1 für den Direktor 1 und für das entsprechende CBAR-Register 1. Identische entsprechende Steuerschaltungen sind für die beiden anderen Direktoren 2 und 3 vorgesehen.
Das in F i g. 8 gezeigte UND Glied 300 spricht auf das gleichzeitige Erscheinen des ΕΟΓ-Kennzeichens und des Adreßkennzeichens vom Direktor 1 an und setzt das Kippglied (FF) 302. In diesem Zustand zeigt das Kippglied eine Abrufbedingung der Gruppe 1 an, die zur Zusammensetzung einer Abrufanforderung im CBAR 1 führt. Bei der nächsten Übertragung des Inhalts von CBAR 1 in den Pufferbereich 80 sperrt diese Bedingung das Ausgeben der Wortsegmente 1 und 2 des CBAR 1 und gestattet der CBCdas Einsetzen von Null-Füllwörtern und der zugehörigen Parität in die entsprechenden Ausgangsleitungen des CBAR 1.
F i g. 9 zeigt die Kippglieder (FF) 304 und 306 zum Feststellen der Zusammensetzung einer Einzelwortspeicheranforderung im CBAR 1 für die Kanalgruppe 1. Das mit der Anforderung gesendete Einzeldatenwort wird zum Wortsegment 1 oder 2 gesteuert durch das Kennzeichen DX oder D 2. Das Kippglied 304 wird gesetzt, wenn das Kennzeichen D1 benutzt wird, und das Kippglied 306 v.'ird gesetzt, wenn das Kennzeichen D 2 benutzt wird. Das UND-Glied 308 setzt das Kippglied 304, wenn das Dl-Kennzeichen der Gruppe 1 das £ÖT der Gruppe 1 begleitet, und zwar einen Zyklus nach Empfang des Adreßkennzeichens der Gruppe 1. Das UND-Glied 310 setzt das Kippglied 306, wenn das D 2-Kennzeichen der Gruppe 1 das £OTder Gruppe 1 begleitet, und zwar einen Zyklus nach dem Adreßkennzeichen der Gruppe 1.
Das Kippglied 304 sperrt das Ausgeben des Wortsegmentes 2 des CBAR 1 und läßt ein Null-Füllwort mit richtiger Parität in den Ausgang vom Wortsegment 2 des C8AR X zum Eingabepufier einsetzen. Wenn das Kippglied 306 gesetzt ist, wird umgekehrt die Ausgabe vom Wortsegment 1 des CBAR 1 gesperrt und ein Null-Füllwort eingesetzt.
Fig. IO zeigt, daß die Zusammensetzung einer Vierfachwort-Abrufanforderung der Gruppe 1 begleitet wird vom Setzen des Kippgliedes (FF) 312 durch ■) Betätigen des UND-Gliedes 314. Dieses spricht auf die gleichzeitig auftretenden Signale EOT oer Gruppe 1 und des Vierfachwort-Kennzeichens QW an, wenn die Kennzeichen DX und D 2 dieser Gruppe beide inaktiv sind. Die Inaktivität der Kennzeichen D 1 und D 2 wird
ίο angezeigt durch das ODER-Glied 316, zusammen mit dem Inverter (N)3X8. Das Kippgiied 3J2 führt im gesetzten Zustand zu einer Inversion des wertniederen Adreßbits (das eine Doppelwortgrenze im Speicher bezeichnet) und eines zugehörigen Paritätsbits, wenn
ii die zweite Anforderungseinheit der Vierfach-Abrufanforderung übertragen wird vom CBAR X an den Eingabepuffer 78. Bei einer solchen Übertragung werden die Übertragungsbahnen von den Wortsegmenten 1 und 2 des CBAR 1 gesperrt und Null-Füllwörter
.'ii mit entsprechender Parität in die betreffenden Weiterleitungsbahnen zum Eingabepuffer 78 eingesetzt.
F i g. 11 zeigt das Kippglied (FF) 320, welches gesetzt wird, wenn eine Vierfachwort-Einspeicherung der Gruppe 1 im CBAR X zusammengesetzt wird. Das
2ϊ Kippglied 320 wird durch das UND-Glied 322 gesetzt, das auf das Zusammentreffen des Kennzeichens EOT mit einem der Datenkennzeichen Dl oder D 2 (vom ODER-Glied 324) und mit dem Kennzeichen OVV. entweder direkt oder verzögert (vom ODER-Glied 326;
in die Verzögerung 328 beträgt einen CßC-Zyklus) anspricht. Das gesetzte Kippglied 320 veranlaßt die Kanalbus-Steuerung CBCzur Invertierung des wertniederen Adreßbits und des zugehörigen Paritätsbits, wenn das Anforderungswort in der zugehörigen Einheit (die
Ji dann eine zweite Einheit eines Viererwort-Satzes ist) vom Wortsegment 0 des CBAR 1 in den Eingabepuffer übertragen wird (wie beim Vierfachwort-Abruf in F i g. 10). Dadurch wird eine, eine Doppelwortgrenze im Speicher bezeichnende Adresse zusammen mit dem dritten und vierten Datenwort (und den Markierungsbits) des Vierfachwort-Satzes in den Eingabepuffer übertragen.
Eingabepuffer-Schreibwahl
In Fig. 12 ist die Schaltung gezeigt, mit der bestimmt wird, welcher Teil des Eingabepuffers 78 in einen Zyklus eines Eingabe-/Schreibzugriffes zum Eingabepuffer zu laden ist (zu beschreiben ist). Der obere Teil dieser Figur zeigt die Erzeugung der CZMÄ-Ausgabe-Durchschaltsignale bei 330, 332 und 334 für CBAR 1 bzw. CBAR 2 und CBAR 3. Diese Cß^fl-Ausgabe-Durchschaltsignale werden an Schaltungen 336, 338 bzw. 340 angelegt, die zur Schreibwahl zugeordneter Eingabepufferbereiche 80,82 und 84 (F i g. 3) dienen.
Die Signale der Steuerleitungen 330, 332 und 334 veranlassen die Ausgabe (Übertragung in den Eingabepuffer) des Inhaltes desjenigen Kanalbus-Sammelregisters CBAR, das die höchste Priorität hat und für das eine Leerstelle im entsprechenden Eingabepufferbereich bereitsteht Die Reihenfolge der Gruppenpriorität ist bekanntlich 1, 2, 3, d. h, der Verkehr der Gruppe 1 (CBAR X) hat Vorrang gegenüber dem Verkehr der Gruppe 2 (CBAR 2) und dieser wiederum gegenüber dem Verkehr der Gruppe 3 (CBAR 3\ Das Signal »CBAR X Ausgeben« bei 330 wird demzufolge angehoben, wenn das UND-Glied 342 die Belegung des CBAR1 und eine Leerstelle im entsprechenden Bereich 80 des Eingabepuffers 78 feststellt. Das Negationsglied
344 bereitet das UND-Glied 346 vor, wenn das Signal »CBAR 1 Ausgeben« nicht aktiv ist Das UND-Glied 346 spricht dann auf die Anzeige »CBAR 2 voll« und auf das Vorhandensein einer Leerstelle im Bereich 82 des Eingabepuffers an und hebt das Signal »CBAR 2 Ausgeben«, an. Das UND-Glied 348 wird vorbereitet durch die Inaktivität von »CBAR 1 Ausgeben«, angezeigt durch das Negationsglied 344, und die Inaktivität von »CBAR 2 Ausgebemi, angezeigt durch das Negationsglied 350. Im vorbereiteten Zustand spricht das UND-Glied 348 auf die Belegung von CBAR 3 und das gleichzeitige Vorhandensein einer Leerstelle :m zugehörigen Bereich 84 des Eingabepuffers i'8 an und hebt das Signal »CBAR3 Ausgebern an.
Die Schaltung 336 spricht auf das Signal »CBAR 1 Ausgebet™ und andere später zu beschreibende Eingangssignale an und hebt entweder das Signal auf der Leitung 3132 oder das Signal auf der Leitung 354 an, um den entsprechenden Abschnitt 1-0 bzw. 1-1 im Bereich SO ues Cingabepuffeni 78 zum Einschreiben auszuwählen. Die Schaltung 338 spricht auf das Signal »CBAR 2 Ausgebem< und angegebene andere Eingangssignal an und hebt das Signal auf der Leitung 356 oder 358 an und wählt so entweder den Abschnitt 2-0 oder den Abschnitt 2-1 im Bereich 82 des Eingabepuffers 78 zum Einschreiben aus. Die Schaltung 340 spricht auf das Signal »CBAR 3 Ausgebemi und andere angegebene Eingangssignale an und hebt das Signal auf der Leitung 360 oder 362 an und wählt dadurch entweder den Abschnitt 3-0 oder 3-1 im Bereich 84 des Eingabepuffers jo 78 zum Einschreiben aus. Der innere Aufbau der Schaltungen 336, 338 und 340 ist identisch, so daß nur Einzelheiten der Schaltung 336 beschrieben zu werden brauchen.
Die Schreibwahl-Schaltung 336 realisiert folgende r, Regeln: Wenn nur ein Abschnitt im Bereich 80 des Eingabepuffers frei ist, so wird dieser Abschnitt gefüllt. Wenn beide Abschnitte des Bereiches 80 frei sind, dann ist der Abschnitt 1-0 zu füllen, sov/eit nicht (aus der in Fig. 16 gezeigten Schaltung abgeleitete) Bedingungen anzeigen, daß der Abschnitt 1-0 des Ausgabepuffers 106 entweder voll ist oder gerade gefüllt wird und der Ausgabepufferabschnitt 1-1 frei ist und auch nicht gerade gefüllt wird.
Diese Regeln sind in der nachstehenden Tabelle aufgeführt:
EPkO EP ki APkO A Pk\ CBARk
belegt belegt 5Z/belegt SZ/belegt lädt Abschnitt
Nein Nein Nein Nein Ar-O
Nein Nein Ja Ar-O
Nein Nein Ia Nein k-i
Nein Ja Ar-O
Ja Nein k-i
In der obigen Tabelle bezeichne!: »Ar« die Gruppe mit der laufenden Priorität zum Einschreibzugriff in den Eingabepuffer (d. h, I, 2 oder 3). Ferner bezeichnen »EP« den Eingabepuffer und »AP« den Ausgabepuffer. »SZ« bedeutet »Speicherzugriff läuft«, und »—« bedeutet »ohne Belang«.
Bei Betätigung erregt das ODER-Glied 370 seine Ausgangsleitung 352, wodurch di:r Eingabepufferabschnitt 1-0 zum Einschreiben ausgewählt wird (SCHR. EP1-0). Bei Betätigung erregt das ODER-Glied 372 die
60
65 Leitung 354 und wählt dadurch den Eingabepufferabschnitt 1-1 (SCHR. EPiA).
Das ODER-Glied 370 wird betätigt, wenn eines der UND-Glieder 374, 376 oder 378 betätigt wird, und das ODER-Glied 372 wird betätigt, wenn eines der UND-Glieder 380 oder 382 betätigt wird. Jedes der obengenannten UND-Glieder wird vorbereitet durch das aktive Signal »CBAR 1 Ausgebern. Wenn das vorbereitete UND-Glied 374 auf das Signal »Eingabe pufferabschnitt 1-0 nicht volki und das Signal »Eingabepufferabschnitt 1-1 volk anspricht und das ODER-Glied 370 betätigt, wird dadurch der Eingabepufferabschnitt 1-0 als der einzig freie Abschnitt zum Einschreiben ausgewählt Das vorbereitete UND-Glied 380 spricht auf das Signal »Eingabepufferabschnitt 1-0 volki und »Eingabepufferabschnitt 1-1 nicht volk an, wobei das letzte Signal die Inversion des Signales »Eingabepuffer abschnitt 1-1 \olk im NICHT-Glied 384 ist, und betätigt das ODER-Glied 372 und wählt dadurch den einzigen freien Abschniü J-I zum Einschreiben aus.
Das UND-Glied 376 spricht auf das Signal »Eingabe pufferabschnitt 1-0 nicht volk, »Eingabepufferabschnitt 1-1 nicht volk und die Negation des Signals »APi-0 SZ/BELEGTn durch das NICKT-GUed 386 an und betätigt das ODER-Glied 370. Das Signal »AP 1-0 SZJBELEGTn besagt, daß der Ausgabepufferabschnitt 1-0 voll ist oder gerade gefüllt wird (Speicherzugriff für 1-0 läuft). Das aktive Ausgangssignal vom NICHT-Glied 386 zeigt dadurch an, daß der Puffer 1-0 nicht voll ist und auch nicht gerade gefüllt wird.
Bei Vorbereitung spricht das UND-Glied 378 auf die Signale Eingabepuffer 1-0 und 1-1 nicht voll und Ausgabepuffer 1-0 und 1-1 beide SZ/belegt an und betätigt das ODER-Glied 370 (d-h, wenn alle Zugriffsbedingungen gleich sind, erhält Abschnitt 1-0 Einschreibepräferenz).
Vorbereitet spricht das UND-Glied 382 auf die nachfolgenden Bedingungen an und betätigt das ODER-Glied 372: Eingabepuffer 1-1 nicht voll, Ausgabepuffer 1-0 belegt und Ausgabepuffer 1-1 nicht belegt, letzteres durch das NICHT-Glied 388. Das UND-Glied 382 spricht effektiv nur an, wenn die Eingabepufferabschnitte 1-0 und 1-1 beide leer sind und der Ausgabepuffer 1-0 voll ist oder gerade gefüllt wird und der Ausgabepuffer 1-1 leer ist und nicht gerade gefüllt wird.
Anzeige für freie/belegte Puffergruppe
Fig. 13 zeigt die Schaltung für die Frei-/Belegtanzeige der Eingabepuffer der Gruppe 1. Je eine identische Schaltung ist vorgesehen für die Gruppe 2 und die Gruppe 3. Das den freien bzw. belegten Zustand des CBAR 1 anzeigende Kippglied (FF) 400 entspricht dem Kippglied 92 (F i g. 4). Das Kippglied 402 zeigt den freien/belegten Zustand des Eingabepufferabschnitts 1-0 an. Das Kippglied 404 zeigt den freien/belegten Zustand des Eingabepufferabschnitts 1-1 an.
Das Kippglied 400 wird durch das UND-Glied 406 gesetzt, das auf das ΕΟΓ-Kennzeichen vom Direktor 1 für die Gruppe 1 anspricht. Wenn das Kippglied 400 gesetzt ist, heißt das, daß das CBAR t voll oder belegt ist. Das Kippglied 400 wird zurückgestellt, um anzuzeigen, daß das CBAR I nicht voll, also frei ist, wenn Information in den Eingabepufferabschnitt 1-0 oder 1-1 geschrieben wird. Das Beschreiben dieser Pufferabschnitte wird durch das ODER-Glied 408 und das UND-Glied 410angezeigt.
Das Kippglied 402 wird gesetzt durch das UND-Glied
412, um anzuzeigen, daß der Eingabepufferabschnitt 1-0 voll ist Das UND-Glied 412 spricht auf die Schreibwahl des Eingabepufferabschnittes 1-0 an. Das UND-Glied 414 reagiert auf die Lesewahl des Eingabepufferabschnittes 1-0 und stellt das Kippglied 402 zurück, das dann anzeigt, daß der Eingabepufferabschnitt 1-0 nicht voll ist
Das UND-Glied 416 setzt das Kippglied 404, welches dann anzeigt daß der Eingabepufferabschnitt 1-1 voll ist wenn dieser Abschnitt für das Schreiben gewählt wurde. Das UND-Glied 418 stellt das Kippglied 404 zurück und zeigt damit an, daß der Eingabepufferabschnitt 1-1 nicht voll ist wenn dieser Abschnitt für das Lesen selektiert wird.
Übertragung vom und zum Eingabepuffer
Der Datenfluß und die Schaltung für Übertragungen von den Kanalbus-Sammelregistern CBAR in die Eingabepufferabschnitte sind in Fig. 14 dargestellt Die Ausgänge des CBAR 1.2 und 3 sind bei 420. 422 und 424 gezeigt Entsprechende CB/tÄ-Ausgabedurchschait-Steuerleitungen (330,332 und 334 von F i g. 12) sind bei 426, 428 und 430 und entsprechende Tore bei 432, 434 und 436 dargestellt. Die C&4Ä-Ausgabe läuft über eine gemeinsame, drei Wörter breite Bahn 440, die sich in je ein Wort breite Zweige 442, 444 und 446 aufspaltet, welche zu den entsprechenden Wortsegmenten 0,1 und 2 des gewählten CBARgehören.
Im Zweig 442 wird der Adreßteil des ausgegebenen Anforderungswortes durch Übersetzungsschaltungen 448 (für Adreßpräfix und Rekonfiguration) verarbeitet, die Adreßhilfsbits aus dem festen Adreßbit und aus bestinmiten werthohen Bits der ausgegebenen Adresse ableiten. Die Adreßhilfsbits durch die Speichersteuereinheit SCE5 (Fig. 1) dazu benutzt, defekte Speichermoduln im Prozessorspeicher zu umgehen.
Diese Anordnung und die zugehörige Umgehungsfunktion bilden keinen Teil der vorliegenden Erfindung und sind nur der Vollständigkeit halber dargestellt.
Die Anforderung zusammen mit den Hilfsadressenbits laufen in die Weiterführungsbahn 450 weiter. Dabei werden ein wertniederes Adreßbit und das Paritätsbit des entsprechenden wertniederen Adreßbyte durch die Schaltung 452 bedingt invertiert. Die Inversion erfolgt, wenn die ausgegebene Anforderungseinheit die zweite Einheit eines Vierfachwort-Abrufes oder einer Vierfachwort-Einspeicherung ist (s. F i g. 6,10 und 11).
Die Schreibwahlsignale für den Eingabepuffer (Fig. 12) werden über die Leitungen 453 an entsprechende Schreibwahleingänge 454 gegeben. Mit denselben Signalen werden zugeordnete ZfP-Kippglieder 456 gesetzt, d. h. in den Belegtanzeige-Zustand geschaltet (s. auch Fig. 13). Außerdem werden mit diesen Signalen zugeordnete Lokalspeicher-Adreßkippglieder 458 ausgewählt, um je drei Adreßbits von der Weiterführungsbahn 450 für später beschriebene Zwecke festzuhalten. Der Codierer 460 übersetzt die Position der jeweils aktiven Schreibwahlleitung in ein Pufferkennzeichen PK (3 Bits + Parität). Dieses Kennzeichen bezeichnet die Position des für das Schreiben ausgewählten Eingebepufferabschnittes und wird in diesem Abschnitt für die spätere Steuerung des Ausgabeflusses gespeichert.
Die zwei Bit großen Gruppeneingabekenn/.eichenzähler (EK-ZMer) 470, 472 und 474 sind den Cfl/4/?-Gruppen 1.2 und 3 zugeordnet und werden nach jeder Ausgabeoperation des betreffenden CBAR um einen Schritt weitergeschaltet. Die aufeinanderfolgenden Zahlenwerte in jedem Zähler beziehen sich dabei Modulo 4 auf die Reihenfolge der Eintragung der Anforderungseinheiten der entsprechenden Gruppen im zugeordneten Eingabepufferbereich.
Die Tore 476,478 und 480 werden durch entsprechende CÄ4Ä-Ausgabesteuersignale betätigt um einen Zahlenwert aus dem zugehörigen EK-Zähler an den ausgewählten Eingabepufferabschnitt in Verbindung mit der betreffenden ausgegebenen Anforderungseinheit zu übertragen. Der dadurch im Eingabepuffer gespeicherte Zahlenwert, Gruppeneingabekennzeichenwert (EK-Wen) genannt bezeichnet die Reihenfolge der Eintragung der zugehörigen Anforderungseinheit in die Kanaibus-Steuerung CßC(reIativ zu anderen Einheiten derselben Gruppe). Mit dem gespeicherten Eingabekennzeichen (E1Al-Wert) wird die Rerhsnfolge der Speiche rausgabe-Übertragungen an die betreffende Kanalgruppe in einer noch zu beschreibenden Art gesteuert
Ausgegebene Daten/Markicrungs/Paritätsiniormätion im Zweig 444 der Bahn 440 wird wie folgt behandelt Wenn eine andere Operation angefordert wird als ein Abruf (bezeichnet durch den Zustand des Kippgliedes 302 oder des Kippgliedes 312) oder als eine Einzelwortspeicherung zusammen mit einem D 2- Kennzeichen (bezeichnet durch den Zustand des Kippgliedes 306 in Fig.9), schaltet das NICHT-Giied 482 die Tore 484 ein zur Weiterleitung der Information von der Bahn 444 auf die Weiterführungsbahn 486.
Bei einer Abrufoperation oder einer Einzelwortspeicherung mit einem Kennzeichen D 2 übertragen die Tore 488 füllende Nullen und die zugehörige Parität auf die Weiterführungsbahn 486, und die Tore 484 werden gesperrt.
Ahnlich wird die Information auf dem Bahnzweig 446 behandelt. Wenn weder ein Abruf noch eine Einzelwortspeicherung mit einem Kennzeichen DX (bezeichnet durch das Kippglied 304 in F i g. 9) angefordert werden, schaltet das NICHT-Glied 490 die Tore 492 ein, um die Bahn 446 mit der Weiterführungsbahn 494 zu verbinden. Wenn ein Abruf oder eine Einzelwortspeicherung mit einem Kennzeichen D1 angefordert werden, werden füllende Nullen und die zugehörige Parität durch die Tore 496 in die Weiterführungsbahn 494 eingeschoben.
Die Weiterführungsbahnen 450, 486 und 494 vereinigen sich zu einer 125 Bit breiten Bahn 498, die auch von einer Quelle 500 drei Fehlerbits empfängt, die zur ausgegebenen Cß/4/?-Gruppe gehören. Diese Fehlerbits sind das Ergebnis von nicht dargestellten CBAR-Paritätsprüfungen, die jedoch keinen Teil der vorliegenden Erfindung bilden. Die Information von der Busleitung 498 wird in dem für das Schreiben gewählten Abschnitt des Eingabepuffers 78 zusammen mit den oben beschriebenen Pufferkennzeichen PK und den Gruppeneingabekennzeichen EKgespeichert.
Ausgabe/Leseauswahl beim Eingabepuffer
In den Fig. 15, 16 und 18 ist das Auslesen aus dem Eingabepuffer 78 dargestellt. Fig. 15 zeigt die Lesewahlschältüng 510 in Form eines allgemeinen Blockdiagramms, mit der der nächste Abschnitt des Eingabepuffers 78 zum Auslesen in das Ausgaberegister 90 (und dadurch in den Prozessorspeicher) ausgewählt wird. Die Lesewahlschaltung 510 empfängt Belegungsanzeigen des Ausgabepuffers aus der in Fig.22 gezeigten Schaltung bei 512 und wählt mit drei Bit großen Teiladressen (z.B. von den in Fig. 14 gezeigten LS-Adreß-Kippgliedern 458) bei 514 die LS-Beleeunes-
anzeigen 516 (LS = Logische Speichereinheit). Die Teiladressen bezeichnen LS-Speichermoduln, die die Speicherstellen enthalten, die schließlich durch die betreffenden kompletten Adressen bezeichnet werden, die in den entsprechenden Abschnitten der Eingabepufferbereiche gehalten werden.
Die LS-Belegungsanzeigen bei 516 werden von der Speichersteuerung 5 in F i g. 1 geliefert. Für jede logische Speichereinheit Z-S gibt es einen Eingang. Die Anzahl der Eingänge hängt von der Anzahl der Moduln im Prozessorspeicher ab. Diese sind so konstruiert, daß die Kanalbussteuerung 7 und die Bussteuerung 11 (F i g. 1) verschachtelt zu ihnen zugreifen können.
Die Lesewahlschaltung 510 wählt zum Lesen denjenigen belegten Abschnitt des Eingabepuffers mit der höchsten Priorität, der einem leeren Ausgabepufferabschnitt entspricht und eine Adresse enthält, die eine Stelle in einem nicht belegten LS-Modul bezeichnet
Einzelheiten der Lesewahlschaltung 510 sind in Fig. 16 dargestellt. Das Kippglied (FF)520 wird durch Betätigung des UND-Gliedes 521 gesetzt, das auf das gleichzeitige Auftreten der Signale »Eingabepufferabschnitt 1-0 voJh (von Fig. 13), »LS(l-O) nicht belegt« (genauer »durch Adresse im Eingabepuffer 1-0 adressierte LS nicht belegt«) und das nachfolgend beschriebene Ausgangssignal der Schaltung 522 anspricht (welches anzeigt, daß der Ausgabepufferabschnitt 1-0 frei ist und nicht gerade gefüllt wird). Das gesetzte Kippglied 51K) (LES. EP1-0) gestattet ein Auslesen des Eingabepufferabschnittes 1-0 in das Ausgaberegister 90.
Das Kippglied 524 wird durch das UND-Glied 525 gesetzt, das anspricht auf das gleichzeitige Auftreten folgender Signale: NICHTLES EP1-0 (höhere Prioritiit des nicht gesetzten Kippgliedes 521K. Eingabepufferabschnitt 1-1 vo//(von Schaltung in Fig. 13), nachfolgend beschriebenes Ausgangssignal von der Schaltung 526, und zugehörige LS mit Inhalt des Eingabepufferabschnittes 1-1 nicht belegt. Das gesetzte Kippglied 5X4 (LES. EP1-1) gestattet ein Auslesen des Eingabepuffevabschnittes 1-1 in das Ausgaberegister90.
Das Kippglied 528 wird wird durch das UND-Glied 529 gesetzt, das auf das gleichzeitige Auftreten der Signale Eingabepuffer 1-0 und 1-1 nicht ausgewählt (Kippglied 520 und 524 mit höherer Priorität nicht gesetzt), Eingabepuffer 2-0 voll (von Schaltung im Fig. 13), nachfolgend beschriebenes Ausgangssigniiil von der Schaltung 530, und zum Inhalt des Eingabepulffers 2-0 gehörende LS nicht belegt. Das gesetzt; Kippglied 528 (LES. EP 2-0) gestattet ein Auslesen des Eingabepufferbereiches 2-0 in das Ausgaberegister 90.
Das Kippglied 532 wird durch das UND-Glied 51!» gesetzt, das auf das gleichzeitige Auftreten folgender Signale anspricht: Eingabepufferabschnitte 1-0, 1-1 und 2-0 nicht ausgewählt (Kippglieder 520, 524 und 528 mit höherer Priorität nicht gesetzt), Eingabepufferabschnht 2-1 voll'(von der in F i g. 13 gezeigten Schaltung), spätcir beschriebenes Ausgangssignal von der Schaltung 534, und zum Inhalt des Eingabepuffers 2-1 gehörige LS nicht belegt. Das gesetzte Kippglied 532 (LES. EP2A) gestattet ein Auslesen des Eingabepufferabschnittes 2-1
Das Kippglied 536 wird gesetzt (LES. EP 3-0) und gestattet ein Auslesen des Eingabepufferabschnittes 3-0 durch das UND-Glied 537, das anspricht, wenn din Eingabepufferabschnitte 1-0, 1-1, 2-0 und 2-1 nichn ausgewählt und die Kippglieder 520,524,528,532 nichi; gesetzt sind und gleichzeitig ein Signal (von der in Fig. 13 gezeigten Schaltung) η Eingabepufferabschnitt 3-0 volk erscheint zusammen mit dem Ausgangssignal von der später beschriebenen Schaltung 538 und einem Anzeigesignal, daß die logische Speichereinheit LS, die zum Inhalt von 3-0 gehört, nicht belegt ist
Das Kippglied 540 wird gesetzt, um den Eingabe-
pufferabschnitt 3-1 zum Lesen auszuwählen (LES. EP 3-1), und zwar durch das UND-Glied 541, das anspricht, wenn kein anderer Abschnitt des Eingabepuffers ausgewählt ist, die Kippglieder 520, 524, 528, J32 und 536 also nicht gesetzt sind, und außerdem ein Signal
ίο »Eingabepufferabschnht 3-1 volh von der in Fig. 13 gezeigten Schaltung, und ein Ausgangssignal von der noch ziu beschreibenden Schaltung 542 auftritt, gleichzeitig mit einem Anzeigesignal, daß die logische Foeichereinheit LS, die zum Inhalt von 3-1 gehört nicht belegt ist
Nur eines der oben genannten Kippglieder 520, 524,
528, 532, 536 oder 540 wird jeweils gesetzt durch Betätigung des entsprechenden UND-Gliedes 521,525,
529, 533, 537 bzw. 541. Dadurch wird der zugeordnete Abschnitt des Eingabepuffers zum Auslesen ausgewählt Das betreffende Kippglied bleibt gesetzt, bis der Inhalt des Ausgaberegisters 90 (F i g. 3 und 18) in den Speicher übertragen wurde.
Die Schaltungen 522, 526, 530, 534, 538 und 542 sind
alle identisch, und daher wird nur die Schaltung 522 im einzelnen beschrieben.
Die Schaltung 522 besteht aus dem Kippglied 522.1, dem ODER-Glied 5222 und dem Inverter 5223. Das Kippglied 522.1 wird gesetzt, wenn das Kippglied 520
jo gesetzt wird und es wird zurückgestellt durch das Signal »Ausgabepuffer 1-0 belegt« (von der in Fig.22 gezeigten Schaltung). Der Zustand des Kippgliedes 52Zl besagt »Speicherzugriff für Ausgabepuffer-Abschnitt 1-0 läuft« (abgekürzt AP 1-0 SZ). Wenn das
j5 ODER-Glied 522.2 betätigt wird, wird das Ausgangssignal »AP 1-0 SZ/BEL« von der Schaltung 522 aktiviert (es besagt: »AP 1-0 im Speicherzugriff oder belegt«). Dieses Signal wird an die Schreibw.rhlschaltung 336 in Fig. 12 angelegt
AO Ein aktives Ausgangssignal vom Inverter 5223 zeigt an, daß kein LS-Speicherzugriff für den Abschnitt 1-0 läuft und daß der Ausgabepufferabschnitt 1-0 nicht belegt ist. Dieses Signal wird an das UND-Glied 521 angelegt, um so den Abschnitt 1-0 des Eingabepuffers für das Auslesen nur dann auszuwählen, wenn die logische Speichereinheit LS für diesen Abschnitt und der Ausgabepufferabschnitt 1-0 gleichzeitig zugänglich sind.
Die Schaltungen 526,530, 534, 538 und 532 erzeugen
entsprechende Signale für die Eingabepufferabschnitte 1-1.2-0,2-1,3-0 und 3-1.
Die Eingangssignale »LS (X-X) nicht belegt« zu den UND-Gliedern 521, 525, 529, 533, 537 und 541 werden wie folgt entwickelt. Die LS-Adressen in den Kippglie dem (Merkern) 458 (Fig. 14) entsprechen den LS- Adressen in den betreffenden belegten Abschnitten des Eingabepuffers. Jede derartige gespeicherte LS-Adresse wird decodiert (durch nicht dargestellte Decodierschaltungen) und mit ihr die Verfügbarkeitsanzeige des betreffenden, durch die Adresse bezeichneten LS-Moduls ausgewählt. Die ausgewählte Anzeige wird an das entsprechende UND-Glied 521,525,529,533, 537 oder 541 gegeben, das zu demjenigen Eingabepufferabschnitt gehört, der dieselbe Adresse enthält.
Eingabetaktierung für Eingabepuffer
Fig. 17 zeigt die Einschreibe-Taktierung des Eingabepuffers für das Kanalbus-Sammelregister CBAR3 mit
niedrigster Priorität. Entsprechendes gilt für das CBAR I und das CBAR 2. Das Signal »Übertragungsfreigabe 3« ist aktiv,, wenn entweder das CBAR 3 oder die Eingabepufferabschnitte 3-0 oder 3-1 nicht belegt sind (und fällt ab, wenn CBAR 3 belegt wird, während die Eingabepufferabschnitte 3-0 und 3-1 beide belegt sind).
Das Signal »EOT« vom Direktor 3 bereitet das CBAR 3 für den belegt jn Zustand vor. Der Inhalt des CBAR 3 wird entweder direkt ausgegeben (und die Eingabepufferabschnitte 3-0 oder 3-1 beschrieben) oder innerhalb der nächsten beiden CÄC-Zyklen, abhängig von der Aktivität der CBAR 1 und 2, die ja die höhere Priorität haben. Die früheste nächste Übertragung vom Direktor 3 bei 546 erfolgt nach zwei Direktorzyklen (vier CßC-Zyklen nach dem Signal EOT3), woraus sich ein Zeitbereich 548 für den spätesten Übertragungszeitpunkt aus dem CBAR3 ergibt
Datenausgabe aus dem Eingabepuffer
in F i g. Ϊ8 ist bei 550 gezeigt, daß bei der Ausgabe des Inhaltes des Ausgaberegisters 90 Adreß-, ichlüssel-, Daten- und Markierungsinformation (oder füllende Nullen in der Daten- und Markierungsposition) an den Prozessorspeicher ausgegeben werden, um die angeforderte Operation zu beenden. Die Adreßinformation enthält das Operationsbit (S) das angibt, ob die Operation eine Einspeicherungs- oder eine Abrufoperation ist Für eine Abrufoperation holt die Speichersteuerung 5 zwei Datenwörter mit Hilfe der Adreßinformation. Für eine Einspeicheroperation benutzt die Speichersteuerung 5 die Adresse und die Markierungen dazu, die zugehörigen Daten ir, eine Doppelwortstelle im Speicher zu setzen. Die Markierungsbits bezeichnen Dateqbytes, die zusammenhängend zu speichern sind.
Das Pufferkennzeichen PK, das Gruppeneingabekennzeichen EK und das Kanalkennzeichen KK kommen in den Wartespeicher 100 (bei 552) gleichzeitig mit der Übertragung der zugehörigen Information an den Speichel (bei 550). Eines der vier Kanal-Kennzeichenbits wird hierbei fallengelassen. Von den vier ursprünglichen Kanal-Kennzeichenbits ist normalerweise eines immer Null (nur für Paritäts/Leitungsprüfzwecke mitgeführt). Die anderen drei Bits bezeichnen einen der maximal sechs Kanäle, die die betreffende Gruppe bilden. Das normalerweise au> Null stehende Bit wird bei der Übertragung zum Wartespeicher fallengelassen.
Speichortaktierung
Im Ausführungsbeispiel ist der CSC-Zyklus etwas kürzer als ϋθ Nanosekunden. Der CßC-Eingabepuffer kann in jedem Zyklus beschrieben und ausgelesen werden. Die logischen Speichereinheiten LSsind jeweils verschachtelt in Intervallen von etwa 300 Nanosekunden zugänglich. Die Wahrscheinlichkeit der Blockierung in dieser Situation ist praktisch vernachlässigbar, so daß jeder Eingabepufferbereich virtuell kontinuierlichen Zugriff zum Speicher hat. Somit ist auch jede Übertragungsfreigabeleitung im allgemeinen kontinuierlich aktiv (ausgenommen die relativ seltenen Fälle, in denen ein CBAR belegt wird, während der zugehörige Eingabepufferbereich voll ist).
Übertragung in den Ausgabepuffer
Die Kennzeicheneintragungen in Fig. 19 im Wartespeicher 100 werden Jm Ausgang 560 in der Reihenfolge ihrer Eintragung auch wieder ausgegeben (d. h. in der Reihenfolge, in der die zugehörigen Informationen an den Speicherausgängen vom Prozes sorspeicher bei 562 erscheinen). Diese Informationen sind entweder Bestätigungen der Ausführung von Einspeicherungsanforderungen, oder aufgrund von Abrufanforderungen geholte Daten. Der Abschnitt des Ausgabepuffers 106, der für das Einschreiben vom Speicher ausgewählt wird, wird bestimmt durch die Schreibwahlschaltung 564. Diese Schaltung decodiert das Pufferkennzeichen, das vom Wartespeicher bei 566
ίο kommt und bestimmt dadurch den Abschnitt des Ausgabepuffers, der dem Eingabepufferabschnitt entspricht der die betreffende Anforderung enthielt
Die Leseauswahl der Ausgabepufferabschnitte wird bestimmt durch die Lesewahlschaltung 568, die im
π einzelnen in den Fig.21 und 22 dargestellt ist Für die Ausgabeübertragung wird derjenige Abschnitt des Ausgabepuffers zum Lesen ausgewählt, der voll ist und die höchste Priorität hat Die Wählbarkeit wird auf der Basis eines Vergleichs (F i g. 21) zwisr.ien den Gruppen-
2ö eingabekeimzcichcn vom Wartespeic'ier und den zugeordneten Gruppenausgabekennzeichen bestimmt. Ein Abschnitt wird wählbar, wenn seine Gruppe die höchste Priorität hat und sein Inhalt zu der ältesten Anforderung der Gruppe gehört. Die Ausgabereihenfolge innerhalb jeder Kanalgruppe entspricht immer der Eingabereihenfolge der entsprechenden Anforderungen dieser Gruppe, ungeachtet der Reihenfolge, in der diese Anforderungen an den Speicher gegeben werden und ohne Berücksichtigung der Eingabepufferabschnitte, die von diesen Anforderungen belegt wurden.
Datenfluß im Kennzeichen-Wartespeicher
Fig.20 zeigt die Organisation des Wartespeichers (WS) 100, der im wesentlichen eine parallele Schiebean-Ordnung ist und zeitlich koordiniert mit den betreffenden Speicherzugriffsoperationen arbeitet Die Schiebeanordnung ist 16 Bits breit zur Aufnahme von mehr als den 10 Bits der Kennzeichen- und Paritätsinformation, die von der Kanalbus-Steuerung CBC übertragen wird. Von den zusätzlichen Bits ist hier nur ein Vorschaltbit (Weiterschaltbit) von Interesse, und daher wird nachfolgend nur dieses Bit näher beschrieben.
Die Kennzeichen vom Eingabepuffer EPgelangen in eine erste Schieberegisterstufe 380 des Wartespeichers bei 552 und laufen später durch die Tore 582 zur nächsten Registerstufe 584. Die Tore 582 werden betätigt, wenn eine Speicheroperation für die CßCläuft (»CßC-Priorität«). Register 584 empfängt die BCE-Kennzeichen bei 586, wenn eine Speicheroperation
so (Einspeicherung oder Abruf) für die BCE 11 (Fig. Π läuft. Die ßCf-Eingänge für den Wartespeicher haben mit de- vorliegenden Erfindung nichts zu tun und sind nur der Vollständigkeit halber gezeigt
Der Inhalt des Registers 584 gelangt mit hier nicht relevanten Ausnahmefehlerbits in das Register 588, dessen Inhalt zeitlich koordiniert mit der Ausgabe der entsprechenden information aus dem Speicher zur Verfügung gestellt wird.
Das aus dem Register 588 bei 590 ausgegebene Vorschaltbit unterscheidet ßCf-Speicheropertlionen von CßC-Operationen. Wenn dieses Bit auf 1 steht, empfängt die ßC£ein Vorschaltsignal. Wenn das Bit auf 0 steht, wird es durch den Inverter 592 invertiert und als Vorschaltsignal (Weiterschallsignal) für die CBCauf die Leitung 594 gegeben. Mit jedem Vorschaltsignal an die CBC, werden die zugehörigen Kennzeichen (Pufferidentifizierung, Eingabekennzeichen, Kanalidentifizierung) über gemeinsam mit der Nummer 596 bezeichnete
separate Sammelleitungen an die CBC übertragen. Die Ausgabedaten des Registers 588 werden auch ins Register 598 eingegeben.
Einleseschaltung für den Ausgabepuffer
Die Einleseschaltung für den Ausgabepuffer 106 ist in Cig.21 gezeigt. Die Kanalidentifizierungsinformation (KK) vom Wartespeicherausgang 596 in F i g. 20 gelangt über die Eingabebusleitung 560 in den Ausgabepuffer und wird zusammen mit den auf der Eingabebusleitung 562 empfangenen Spcicherausg.ibedaten gespeichert. Die .Schreibwahl eines Ausgabepuffenibschnittes wird gesteuert durch das Puffcrkenn/.eichen, das (zeitlich bezogen auf das bei 594 von der entsprechenden Leitung in F-" i g. 20 empfangene CBC-Vorschaltsignal) bei 600 von der Wartcspeichcr-Ausgangsleitung 5% in Γ i g. 20 empfangen wurde. Das Pufferkennzeichen wird in einem drei Bit großen Register 604 gespeichert. Die CBC-Vorsehaltanzeige (Weiterschaltanzeige) wird im Kippglied 606 festgehalten.
Nach dem Setzen des Kippglicdes 606 erregt die Triggerschaltung 608 die Leitung 610 zu einem vorgegebenen Zeitpunkt und schaltet die Tore 612 zum Durchlesen des Pufferkennzeichens vom Register 604 an den Decodierer 614. Dessen Ausgänge steuern die Schreibwahl, über die Leitung 616, eines Abschnitts des Ausgabepuffers 106. wodurch das Kanalkennzeichen und die Speichcrausgabedaten in dem Ausgabepufferabschnitt gespeichert werden, der demjenigen Eingabepufferabschnitt entspricht, ir. dem die zugehörige Anforderung gehalten wurde.
Nach einer schematisch be: 618 dargestellten angemessenen Verzögerung, wird das Kippglied 606 zurückgestellt und die Einschreibeoperation beendet, so daß der Ausgabepuffer zum Auslesen angesteuert werden kann. Die Ausgänge des Decodierers 614 sind auch über die Leitungen 619 mit den Ausgnbepuffer-Belegungsmerkern (Kippglieder. Fig. 22) und über die Leitungen 620 mil Eingangsleitungen h22 bis 627 der Kennzeichen-Vergleicherschalmngen 630, 632 und 634 verbunden.
Auslesen des Ausgabepuffers
Die beiden Eingabekennzeichenbits EK vom Wartespeicher-Ausgang 596 in Fig. 20 werden bei 635 (Fi g. 21) empfangen und an jede der Kennzeichen-Vergleicherschaltungen 630, 632 und 634 angelegt. Da die Vergleicherschaltungen intern identisch sind, werden Einzelheiten nur von der Schaltung 630 beschrieben.
Die Vergleicherschaltung 630 empfängt ein Eingangssignal »Vorschaltung Gruppe (GR 1 VOR) bei 636 von den Lesewahlschaltungen der F i g. 22. Die Schaltung 632 empfängt ein Eingangssignal »Gruppe 2 Vorschaltung« (GR 2 VOR) bei 638 von den Lesesteuerungen der F i g. 22. Die Schaltung 634 empfängt ein Eingangssignal »Gruppe3 Vorschaltungii (GR 3 VOR) bei 640.
Die Vergleicherschaltung 630 liefert Vergleicherausgangssignale TC 1-0 und TC 1-1 bei 642 bzw. 643, die dann an zugeordnete Lesewahlschaltungen in Fig.22 übertragen werden. Die Schaltung 632 erzeugt die Ausgangssignale 7"C20und TC2-1 bei 644 bzw. 645 und die Schaltung 634 die Ausgangssignale TC 3-0 und TC 3-1 bei 646 bzw. 647, die alle an die entsprechenden Lesev/ahlschahur.gen in F i g. 22 übertragen werden.
Während der Abschnitt 1-0 oder 1-1 im Ausgabepuffer beschrieben wird, steuert ein Schreibwahlsignal zur Schaltung 630 auf einer Leitung 622 und 623 ein entsprechendes Tor 650 oder 652, das von dei Gruppeneingabekennz.eichen-Leitung 635 zu einem entsprechenden zwei Bit großen Register 654 oder 656 führt. Die Schaltung 632 enthält entsprechende Tor- und Registerpaare für das Einschreiben in den Ausgabepufferabschnitt 2-0 oder 2-1. Die Schaltung 634 enthält entsprechende Elemente für des Beschreiben des Ausgabepufferabschnittes 3-0 bzw.3-1.
Zwei Bit große Vergleicherschaltungen 658 und 660 sind mit den betreffenden Registern 654 und 656 einerseits und einem Ausgabekennzeichenzähler 662 andererseits verbunden. Der Zähler 662 wird durch das Vorschaltsignal der Gruppe 1 weitergeschaltet, wenn Information einem Abschnitt 1-0 oder 1-1 des Ausgabepuffers über das Ausgabepuffer-Ausgaberegistcr 116 zum Direktor 1 ausgelesen wird.
Der Ausgabekennzeichenzähler 662 wird entsprechend der Anfangxstelliing dos zugehörigen Fingahnkennzeichenzählers 470 (F ig. 14) initialisiert und durch das Vorschaltsignal der Gruppe 1 weitergeschaltet, wenn eine Ausgangsübertragung der Gruppe 1 erfolgt. Eine Kennzeichenübereinstimmungsanzeige, TC 1-0 oder TC 1-1, wird durch die betreffende Vergleicherschaltung 658 oder 660 nur erzeugt, wenn das Eingabekennzeichen im Register 654 oder 656 mit dem Wert des Ausgabekennzeichens im Zähler 662 übereinstimmt d. h. nur, wenn gegenwärtig die den entsprechenden Ausgabepufferabschnitt 1-0 oder 1-1 belegende Information die Antwort auf die älteste Anforderung der Gruppe 1 darstellt, für die an Hen Direktor 1 von der C'ßCnoch keine Antwort gesendet wurde.
Die in die Register 654 und 656 eingetragenen Eingabekennzeichenwerte stellen insbesondere die relative Reihenfolge der Eintragung in den Anforderungen der CBC dar. die zum Inhalt der betreffenden Abschnitte 1-0 und 1-1 gehören. Somit werden diese Werte in der Reihenfolge 00, 01, 10, 11 ... durch den Reihenfolgezähler (EK-Zähler) 470 (F i g. 14) erzeugt.
Nimmt man z. B. an, daß zwei Anforderungen R 1, R 2 der Gruppe 1 durch die Kanalbus-Steuerung CßCin der Reihenfolge R 1 und dann R 2 empfangen wurden und dementsprechend in den Eingabepufferabschnitten 1-1 und 1-0 gespeichert wurden, jedoch in der Reihenfolge R 2 und dann R 1 an den Speicher gegeben wurden, dann würde die Speicherantwort an R 2 zuerst erzeugt und in den Ausgabepufferabschnitt 1-0 geschrieben. Die spätere Antwort auf die frühere Anforderung R 1 würde in den Ausgabepufferabschnitt 1-1 gesetzt.
Das zu der Antwort auf R 2 gehörende Eingabekennzeichen hat jedoch einen höheren Wert (Modulo <■) als das Eingabekennzeichen, das zu der späteren Antwort auf R 1 gehört. Der Zahlenwert im Ausfe'abekennzeichenzähler 662 würde daher erst mit dem zu R 2 gehörenden Wert übereinstimmen, nachdem er zuerst mit dem niederen Wert übereinstimmte, der zu R 1 gehört. Denn der Ausgabekennzeichenzähler 662 zählt der Reihe nach in der Foige: 00,01,10,11,00..., jeweils weitergeschaltet bei einem Ausgabevorgang der Gruppe 1 (GR 1 VOR).
Die Vergleicherschaltung 658 wird in diesem Fall also nur ein Übereinstimmungssignal abgeben, nachdem der Ausgabekennzeichenzähler aufgrund des Auslesens des Ausgabepufferabschnittes 1-1 weitergeschaltet wurde (während die früher vom Speicher ausgegebenen Daten zu a 2 im Ausgabepufferabschnitt 1-0 aufgehalten werden).
Weiterhin sei das nachstehende Tabellenbeispiel betrachtet, worin:
a) Ri, R 2, R 3, /?4 Speicheranforderungen der Gruppe 1 darstellen, die nacheinander durch die CÖCempfangen wurden,
b) Eintragungen »—« nicht signifikante Zustände darstellen. '
c) r'ntragungen »A/..« bedeuten: »Die vom Speicher ausgegebenen Daten gehören zu ...«, und
d) aufeinanderfolgende Eintragungszeilen den Pufferinhalt in aufeinanderfolgenden Zeitpunkten des ln C'öC-ßetricbes darstellen.
Puffcrinhalt EPi-i APi-O ΛΠ-i Zugehöriges I
Eing.· Kennzeichen
EPi-O R2 APiO APIi
KX R3 A/R 2 — —
R\ R3 A/Ri A/R 2 — —
Rl /?3 A/R 4 A/R 2 01
/?4 00 01
Il 01
Die in der letzten Zeile oben dargestellte Situation kann entstehen, weil die Reihenfolge des Anforderungszugriffs zum Speicher variabel ist (und nur von der Verfügbarkeit der zugehörigen logischen Speichereinheit LS und des betreffenden Ausgabepufferabschnittes abhängt).
Die Eingabekennzeichenwerte in der letzten Zeile der obigen Tabelle haben identische wertniedere Bits (F.insen), aber unterschiedliche werthohe Bits (I gehört zum Ausgabepufferbereich 1-0, 0 gehört zum Bereich 1-1). Daraus läßt sich ableiten, daß ein aus nur einem Bit bestehendes Eingabekennzeichen nicht ausreicht, um einen Abschnitt des Ausgabepuffers eindeutig zum Auslesen auszuwählen. Weiterhin läßt sich daraus ableiten, daß bei einem Ausgabepuffer mit η Abschnitten pro Gruppe (n>2) die Anzahl von Eingabekennzeichenbits m sein muß, wobei 2m> η ist.
Die Schaltung 632 enthält Vergleicherschaltungen entsprechend den Schaltungen 658 und 660, und einen de-τι Zähler 662 entsprechenden Ausgabekennzeichenzähler für die Gruppe 2, die analog mit den Ausgabepufferabschnitten 2-0 und 2-1 arbeiten.
Die Schaltung 634 enthält in gleicher Weise Vergleicher- und Ausgabekennzeichenelemente, die analog mit den Ausgabepufferabschnitten 3-0 und 3-1 arbeiten.
Die Kennzeichen-Vergleicher-Ausgangssignale der Schaltungen 630,632 und 634 (TC 1-0,1-1,2-0, 2-1,3-0, 3-1) dienen in Verbindung mit den Ausgabepuffer-Belegungsanzeigen und anderen später beschriebenen Bedingungsanzeigen dazu, Prioritätskonflikte zu lösen und den nächsten Abschnitt des Ausgabepuffers zum Auslesen auszuwählen. Zeitlich gesehen wird nur ausgelesen (Gruppenvorschalt-Signal), wenn der Ausgabepuffer nicht beschrieben wird. Die Schaltungen zur Leseauswahl sind in F i g. 22 dargestellt
Paare von UND-Gliedern 704,706 und 708 bewirken die Prioritätsauswahl für die Ausgabepufferbereiche 108,110 und 112(Fi g. 3), die zu den Kanalgruppen 1,2 bzw. 3 gehören. Diese Paare von UND-Gliedern bestimmen die Prioritäi: in der Reihenfolge der entsprechenden Gruppen, wenn der betreffende Gruppenbereich belegt ist und andere Bedingungen für die Ausgabewählbarkeit erfüllt sind.
2')
50
55
60
65 Das UND-Gliedpaar 704 besteht aus den einzelnen UND-Gliedern 710 und 712, die für die Leseauswahl der Ausgabepufferabschnitte 1-0 und 1-1 vorgesehen sind. Das UND-Gliedpaar 706 besteht aus den einzelnen UND-Gliedern 714 und 716, die zur Leseauswahl der Ausgabepufferabschnitte 2-0 bzw. 2-1 vorgesehen sind. Das UND-Gliedpaar 708 besteht aus den einzelnen UND-Gliedern 718 und 720, die zur Leseauswahl des Ausgabepufferabschnitts 3-0 bzw. 3-1 vorgesehen sind.
Die Schaltungen 724 stehen mit dem UND-Gliedpaar 704 in Wechselwirkung und steuern die Leseauswahl der Ausgabepufferabschnitte 1-0 und 1-1 über die Ausgangsleitungen 726 bzw. 728, die mit dem Ausgabepuffer über Leitungen mit der Sammelbezeichnung LES. AP(F i g. 21) verbunden sind.
Die Schaltungen 72t stellen auch Belegungsbedingungen von Ausgabepul erabschnitten durch Signale auf den Leitungen 729, 73ö, 73i und 732 dar, aufgrund des limpfanges und der Ausgabepuffer-Schreibwahlsignale bei 733 und 734. Die Speicherzugriffssignale AP 1-0 SZ, AP 1-1 SZ (Fig. 16) und die Belegungsanzeigesignalc bei 729 und 731 (AP 1-0 belegt. APl-I belegt) werden auch von den Eingabepuffer-Schreibwahlschaltungcn 336 benutzt. Die Belegungsanzeigesignale bei 729 und 731 werden außerdem als Eingangssignale an die UND-Glieder 710 und 712 des Paares 704 über gemeinsam bezeichnete Leitungen 735 gegeben. Die Belegungsanzeigesignale von 729 und 731 und die invertierten SZ-Signale (Fig. 16) werden von den UND-Gliedern 521,525 (F i g. 16) für die Eingabepuffer-Lesewahl benutzt.
Die Schaltungen 736 und 738 sind mit den Schaltungen 724 identisch und übernehmen entsprechende Funktionen für die Eingabe- und Ausgabepufferbereiche, die zum Verkehr mit den Gruppen 2 und 3 gehören. Das zur Schaltung 736 gehörende UND-Gliedpaar 706 wird so vorbereitet, daß die betreffenden Ausgabepufferabschnitte 2-0 und 2-1 nur zum Auslesen gewählt werden können, wenn kein Abschnitt mit höherer Priorität (AP 1-0 oder 1-1) gegenwärtig ausgewählt ist (NICHT GR 1 VOR). Die Vorbereitung des zur Schaltung 738 gehörenden UND-Güedpaares 708 gestattet die Leseauswahl der Ausgabepufferabschnitte 3-0 und 3-1 der Gruppe 3 nur, wenn kein Abschnitt mit höherer Priorität (AP 1-0, 1-1, 2-0 oder 2-1) ausgewählt ist (NICHTGrX VOR und NICHTGR 2 VOR).
Die Schreibwahlsignale werden an die Schaltungen 736 bei 740 angelegt (SCHR. AP 3-0 und 3-1). Die Signale AP3-0 SZund AP 3-1 SZwerden außerdem an entsprechende Eingabepuffer-Schreibwahlschaltungen 343 (F ig. 12) angelegt
Die Belegungsanzeigesignale der Schaltungen 738 bei 746 werden, kombiniert mit entsprechenden 5Z-Signalen (Fig. 16), an entsprechende Eingabepuffer-Schreibwahlschaltungen 340 (F i g. 12) angelegt Die Belegungsanzeigesignale der Schaltung 738 bei 746 werden außerdem über Leitungen 747 an die zugeordneten UND-Glieder 718 und 720 des Paares 708 angelegt
Die Schaltungen 736 und 738 erzeugen Lesewahl-Steuersignale bei 770 und 772, für die entsprechenden Ausgabepufferabschnitte über Leitungen, die in F i g. 21 gemeinsam mit LiES. .APbezeichnet sind. Die Ausgänge 770 steuern die Auswahl der Ausgabepufferabschnitte 2-0 und 2-1, die Ausgänge 772 steuern die Auswahl der Ausgabepufferabschnitte 3-0 und 3-1.
Die Schaltungen 724, 736, 738 liefern Gruppenvor- schaltsignale bei 780, 782 bzw. 784, wobei das
Vorschaltsignal bei 780 für die Gruppe 1 den Ausgabekennzeichenzähler 662 in den Kennzeichen-Vergleicherschaltungen 630 (Fig. 21) weiterschaltet. Das Vorschaltsignal der Gruppe 2 bei 782 erhöht den Inhalt des entsprechenden Ausgabekennzeichenzählers der Gruppe 2 in der Kennzeichen-Vergleicherschaltung 632. Das Vors haltsignal der Gruppe 3 bei 784 erhöht den Inhalt des entsprechenden Ausgabekennzeichenzählers der Gruppe 3 in den Kennzeichen-Vergleicherschaltungen 634(F i g. 21).
Die Schaltungen 724, 736 und 738 liefern die betreffenden Vorschaltsignale VOR I1 2 und 3 an die zugehörigen Direktoren I1 2 und 3 über die Ausgänge 790 bzw. 792 und 794. Diese Signale bereiten die entsprechenden Direktoren zum Empfang der auf der Ausgangsbusleitung übertragenen Daten vor.
Die Schaltungen 724 geben das Komplement des Vnrsrhaltsignak rler Cirunne 1 über Leitung 798 als Prioritätssteuersignal an die UND-Glieder.706 und 708 (Eingang 800 bzw. 802). Die Schaltungen 736 geben das Komplement des Vorschaltsignales der Gruppe 2 über Leitung 804 als Prioritätssteuersignal an die UND-Glieder 708 (Eingang 806).
Die UND-Gliedpaare 704, 706 und 708 werden vorbereitet durch Ausgangssignale der Schaltungen 724, 736 und 738 bei 808, 810 bzw. 812. Diese Ausgangssignale zeigen an, daß die betreffende Gruppe 1, 2 oder 3 während der letzten vier CBC-Zyklen nicht weitergeschaltet wurde. Dadurch wird verhindert, daß der Verkehr einer Gruppe die gemeinsame Ausgangsbusleitung zu den Direktoren blockiert, und außerdem wird dadurch die Ausgangsübertragungsrate zu jedem Direktor eingeschränkt.
Die das Paar 704 bildenden UND-Glieder 710 und 712 werden einzeln vorbereitet durch die Belegungsanzeigesignale AP 1-0 BEL und AP 1-1 BEL (Eingänge 814 und 816) und durch entsprechende Kennzeichen-Vergleichssignale (TC 1-0 und TC 1-1) von den Kennzeichenvergleichern 630 (Fig. 21) über die Eingänge 818 und 820. Die Kennzeichen-Vergleichssignale TCl-O und TC1-1 schließen sich gegenseitig aus, da nur einer der Vergleicher 658 oder 660 zu einem gegebenen Zeitpunkt eine Übereinstimmung erkennen kann. Die Operation der UND-Glieder 710 und 712 schließen sich daher zeitlich gegenseitig aus. Somit wird nur eine der beiden Schaltungen betätigt (zur Vorbereitung der Schaltung 724 für die Abgabe eines Vorschaltsignales (Weiterschaltsignales) für die Gruppe 1), wenn das entsprechende Kennzeichen-Vergleichssignal und das A P- Belegungsanzeigesignal aktiv sind, und wenn außerdem während der vier vorhergehenden CBC-Taktzyklen kein Vorschaltsignal (Weiterschaltsignal) für die Gruppe 1 erzeugt wurde.
Die UND-Glieder 714 und 716 bilden das Paar 706 und werden einzeln durch die Belegungsanzeigesignale AP2-0 BEL und AP2-1 BEL (Eingänge 824 und 826) und durch entsprechende Kennzeichen-Vergleichssignale (TC 2-0 und TC 2-1 bei 828 und 830) von den Kennzeichenvergleichern 632 (F i g. 21) vorbereitet Nur eines der beiden UND-Glieder 714 oder 716 wird also betätigt wenn:
a) das entsprechende AP-Belegungssignal und das Kennzeichen-Vergleichersignal aktiv sind,
b) das zugehörige Vorschaltsignal (Weiterschaltsignal) für die Gruppe 2 während der vier vorhergehenden CSC-Zyklen nicht erzeugt wurde und
c) das Vorsciialtsignal der Gruppe 1 mit höherer Priorität gegenwärtig nicht aktiv ist.
Die UND-Glieder 718 und 720 bilden das Paar 708 und werden einzeln vorbereitet durch die Belegungsanzeigesignale AP3-0 BEL und AP3-i BEL bei 832 und 834 und durch Kennzeichen-Vergleichssignale (TC 3-0 und TC3-1) bei 836 und 838 von den Kennzeichen-Vergleichern 634 (F i g. 21). Nur eines der UND-Glieder 718 in und 720 wird also betätigt, wenn:
a) das entsprechende AP-Belegungsanzeigesignal und das Kennzeichen-Vergleichssignal aktiv sind,
b) das zugehörige Vorschaltsignal der Gruppe 3 in π den vier vorhergehenden CflC'-Zyklen nicht erzeugt wurde, und
c) ein Vorschaltsignal mit höherer Priorität der Gruppen 1 oder 2 gegenwärtig nicht aktiv ist.
Die Schaltungen 724 enthalten die Kippglieder (FF) 902 und 904, um die Belegungszustände der betreffenden Ausgabepufferabschnitte 1-0 und 1-1 bei 729 und 731 anzuzeigen. Das Kippglied 902 wird gesetzt durch das Eingangssignal »SCHR. AP 1-0« bei 733, wenn
2-, Information in den Ausgabepufferabschnitt 1-0 geschrieben wird. Das Kippglied 904 wird gesetzt durch das Eingangssignal »SCHR. AP 1-1« bei 734, wenn Information in den Ausgabepufferabschnitt 1-1 geschrieben wird. Die Schaltungen 736 enthalten entspre-
jo chende Kippglieder für die Anzeige der Belegung AP 2-0, 2-1 bei 744. Die Schaltungen 738 enthalten entsprechende Kippglieder, um den Belegungszustand von ΛΡ3-0.3-1 bei 746 anzuzeigen.
Die Betätigung des ODER-Gliedes 908 aufgrund der
j5 Betätigung eines der UND-Glieder 710 oder 712 bereitet das UND-Glied 910 vor, das dann über Leitung 912 auf das CßC-Synchronisierungssignal anspricht und das Kippglied 914 setzt wodurch bei 780 das Vorschaltsignal der Gruppe 1 abgegeben wird.
Durch Setzen des Kippgliedes 914 wird die Verzögerungsschaltung 916 stimuliert, um das Vorschaltsignal 1 für den Direktor 1 bei 790 nach einer vorgegebenen Verzögerung von mindestens einem CÄC-Zyklus abzugeben und um das Kippglied 914 zurückzustellen. Im gesetzten Zustand stimuliert das Kippglied 914 auch die Verzögerungsschaltung 918, einen CßC-Zyklus nach dem Setzen des Kippgliedes 914 für die Dauer von drei CßC-Zyklen. Das Ausgangssignal der Schaltung 918 wird invertiert durch den Inverter 920, dessen Ausgangssignal die UND-Glieder 704 für drei CÄC-Zyklen sperrt Die Sperrung wirkt für vier Zyklen relativ zum Setzen des Kippgliedes 914 (das für wenigstens einen Zyklus nicht zurückgestellt wird). Der Rückstellzustand des Kippgliedes 914 wird dargestellt als komplementiertes Vorschaltsignal der Gruppe 1 bei 798 (NICHTGRt VOR).
In der Schaltung 936 erzeugen Elemente, die dem Kippglied 914, den Verzögerungsschaltungen 916 und 918 und dem Inverter 920 entsprechen, die betreffenden Ausgangssignale für die Gruppe 2: Das Vorschaltsignal für die Gruppe 2 bei 782, das Vorschaltsignal 2 an den Direktor 2 bei 792, das Signal »Gmppe2 seit vier Zyklen nicht vorgeschaltet« an die UND-Glieder 714 und 716 bei 8110, und bei 804 das invertierte Vorschaltsignal der Gruppe 2.
In der Schaltung 938 liefern die dem Kippglied 914, den Verzögerungsschaltungen 916 und 918 und dem Inverter 920 entsprechenden Elemente folgende Aus-
gangssignale für die Gruppe 3: Vorschaltsignal für Gruppe 3 bei 784, Vorschaltsignal 3 an Direktor 3 bei 794 und »Gruppe 3 seit vier Zyklen nicht vorgeschaltet« an die UND-Glieder 708 bei 812.
Ein invertiertes Vorschaltsignal für die Gruppe 3 ist nicht erforderlich, da die Schaltung 738 für die Gruppe 3 die niedrigste Priorität hat.
Das Kippglied 914 in den Schaltungen 724 bereitet die UND-Glieder 930,932,934 und 936 vor. Im vorbereiteten Zustand sprechen die UND-Glieder 930 und 932 auf Ausgangssignale der UND-Glieder 710 und 712 an und
stellen die Kippglieder 902 bzw. 904 in den »NICHT BELEGT«-Zusland zurück. Im vorbereiteten Zustand sprechen die UND-Glieder 934 und 936 auf Ausgangssignale der UND-Glieder 710 und 712 an und erzeugen entsprechende Leseauswahl-Impulse bei /26 und 728, um die betreffenden Ausgabepufferabschnitte 1-0 und 1-1 auszulesen.
Die Schaltungen 736 und 738 enthalten Elemente, die den UND-Gliedern 930, 932, 934 und 936 entsprechen, um die betreffenden Rückstelisignale und die Leseauswahlimpulse für die Gruppen 2 und 3 zu erzeugen.
lliur/ii l3HI;ill /eichniinuen

Claims (3)

Patentansprüche:
1. Kanalbus-Steuereinrichtung zwischen einer Mehrzahl von Eingabe-/Ausgabekanälen und einem gemeinsamen aus mehreren Speichermoduln aufgebauten Hauptspeicher einer Datenverarbeitungsanlage, zur Übermittlung von einzugebenden Anforderungs-Datensegmenten von den Kanälen zum Hauptspeicher sowie zur Übermittlung von auszugebenden Beantwortungs-Datensegmenten vom Hauptspeicher zu den Kanälen, mit Eingabepufferund Ausgabepufferspeichern zur Zwischenspeicherung der Datensegmente bei der Übermittlung, gekennzeichnet durch Kanalbus-Sammielregister (70, 72, 74 in Fig.3), die den einzelnen Kanalgruppen (1 bis 3) zugeordnet sind und wortweise von den Kanalgruppen gesendeten Danen zu den Anforderungsdatensegmenten zusammensetzen, durch Kennzeichen-Eingabeschaltungen (94,96 in F i g. 3; 1MO, 470, 472, 474, 476, 478, 480, F i g. 14) zum Hinzufügen von Übermittlungskennzeichen (EK, PK) zu den Anforderungsdatensegmenten Ibei deren Eingabe vom Kanalbus-Sammelregister in den Eingabepufferspeicher (78), durch einen Wartespeicher (100), der dem Eingabepufferspeicher (78) nachgeschaltet ist und zur Aufnahme von Überm ittlungskennzeichen nach der Entnahme der zugeordneten Anforderungs-Datensegmente aus dem Eingabepufferspeicher (78) bei deren Weiterleitung an den Hauptspeicher dient und durch Ausgabesteuerschaltungen (630, 632, 634 in Fig.21; 724, 736, 738 in Fig. 22) die mit Leitungen (ίΓ.4,596 in Fig.20) mit dem Wartespeicher (If1O) verbunden sind, urn mit Hilfe der zwischengespeicher in Übermittlungskennzeichen die Reihenfolge der aus dem Hauptspeicher in den Ausgabepuffer übertragenen Beantwortungs-Datensegmente zur Übermittlung zu den Kanälen (42,46,50 in F i g. 2) festzulegen.
2. Kanalbus-Steuereinrichtung gemäß Patentanspruch 1, dadurch gekennzeichnet, daß die Ausgabesteuerschaltungen
— Zähleinrichtungen (662, Fig.21) zur Erzeugung von Ausgabekennzeichen (AK), welche die Reihenfolge der Entnahme von Ausgabe-Dateneinheiten aus jedem einzelnen Bereich des Ausgabepufferspeichers (106) bei Weitergabe an die Kanäle angeben;
— Vergleichseinrichtungen (654,656,658,660) zum Vergleich von dem Wartespeicher entnommenen Eingabekennzeichen (fTA^mit den jeweiligen Ausgabekennzeichen (AK);und
— Ausgänge (642, 643, 644, 645, 646, 647) zur Abgabe von Steuersignalen (TCi-O, TCl-I...) zur Steuerung der Ausgabereihenfolge der Ausgabe-Dateneinheiten aus dem Ausgabepufferspeicher, derart, daß diese der Eingabcrcihenfolge der entsprechenden Eingabe-Dateneinheitsn in den Eingabepufferspeicher entspricht, enthalten.
3. Kanalbus-Steuereinrichtung gemäß Patentansprüchen I und 2 in einer Datenverarbeitungsanlage, gekennzi:ichneit durch
— Eingabe-Durchschalteinrichttingen (336, 338, 340, Fig. 12; 432, 434, 436, Fig. 14) zur Durchschaltung von Eingabe-Dateneinheiten einer jeden Gruppe in einen separaten, nur dieser Gruppe zugeordneten Bereich (80,82,84, F i g. 3)
des Eingabepufferspeichers (78, F i g. 3, F i g. 14); — Ausgabe-Leiteinrichtungen (604, 614, 616, Fig.21), welche auf vom Wartespeicher (100) abgegebene Übermittlungskennzeichen ansprechen, um die Zwischenspeicherung von Ausgabe-Dateneinheiten der betreffenden Gruppe in einem nur dieser Gruppe zugeordneten Bereich (108, 110, 112, Fig.3) des Ausgabepufferspeichers (106, Fig.3, Fig.21) zu bewirke!, wobei die Positionen der zu je einer Gruppe gehörenden Bereiche des Eingabe- und des Ausgabepufferspeichers einander gleich sind; und wobei die Ausgabe-Leiteinrichtungen eine Ausgabe-Dateneinheit jeweils in denjenigen Abschnitt (1-0,1-1) des betreffenden Bereichs des Ausgabepufferspeichers steuern, dessen Position der Position des Eingabepufferspeicher-Abschnitts entspricht, in den vorher die entsprechende Eingabe-Dateneinheit eingespeichert worden war.
DE2809602A 1977-03-28 1978-03-06 Kanalbus-Steuereinrichtung Expired DE2809602C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/781,895 US4115854A (en) 1977-03-28 1977-03-28 Channel bus controller

Publications (3)

Publication Number Publication Date
DE2809602A1 DE2809602A1 (de) 1978-10-05
DE2809602B2 true DE2809602B2 (de) 1979-05-31
DE2809602C3 DE2809602C3 (de) 1980-01-31

Family

ID=25124299

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2809602A Expired DE2809602C3 (de) 1977-03-28 1978-03-06 Kanalbus-Steuereinrichtung

Country Status (12)

Country Link
US (1) US4115854A (de)
JP (1) JPS53120240A (de)
AU (1) AU515256B2 (de)
BR (1) BR7801871A (de)
CA (1) CA1089107A (de)
CH (1) CH626735A5 (de)
DE (1) DE2809602C3 (de)
ES (1) ES467326A1 (de)
FR (1) FR2386075A1 (de)
GB (1) GB1568474A (de)
IT (1) IT1109990B (de)
PH (1) PH13850A (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4126897A (en) * 1977-07-05 1978-11-21 International Business Machines Corporation Request forwarding system
JPS586173B2 (ja) * 1978-01-20 1983-02-03 株式会社日立製作所 チャネル制御方式
US4268906A (en) * 1978-12-22 1981-05-19 International Business Machines Corporation Data processor input/output controller
US4320456A (en) * 1980-01-18 1982-03-16 International Business Machines Corporation Control apparatus for virtual address translation unit
US4435762A (en) 1981-03-06 1984-03-06 International Business Machines Corporation Buffered peripheral subsystems
US4472787A (en) * 1981-08-12 1984-09-18 Rockwell International Corporation System for transferring words on a bus with capability to intermix first attempts and retrys
US4503501A (en) * 1981-11-27 1985-03-05 Storage Technology Corporation Adaptive domain partitioning of cache memory space
DE3241402A1 (de) * 1982-11-09 1984-05-10 Siemens AG, 1000 Berlin und 8000 München Verfahren zum steuern des datentransfers zwischen einem datensender und einem datenempfaenger ueber einen bus mit hilfe einer am bus angeschlossenen steuereinrichtung
US4604709A (en) * 1983-02-14 1986-08-05 International Business Machines Corp. Channel communicator
US4604689A (en) * 1983-04-15 1986-08-05 Convergent Technologies, Inc. Bus repeater
JPS60229160A (ja) * 1984-04-26 1985-11-14 Toshiba Corp マルチプロセツサシステム
CA1228677A (en) * 1984-06-21 1987-10-27 Cray Research, Inc. Peripheral interface system
US5341510A (en) * 1987-05-01 1994-08-23 Digital Equipment Corporation Commander node method and apparatus for assuring adequate access to system resources in a multiprocessor
US4949239A (en) * 1987-05-01 1990-08-14 Digital Equipment Corporation System for implementing multiple lock indicators on synchronous pended bus in multiprocessor computer system
US4858116A (en) * 1987-05-01 1989-08-15 Digital Equipment Corporation Method and apparatus for managing multiple lock indicators in a multiprocessor computer system
US5101477A (en) * 1990-02-16 1992-03-31 International Business Machines Corp. System for high speed transfer of data frames between a channel and an input/output device with request and backup request count registers
US5398330A (en) * 1992-03-05 1995-03-14 Seiko Epson Corporation Register file backup queue
US5666551A (en) * 1994-06-30 1997-09-09 Digital Equipment Corporation Distributed data bus sequencing for a system bus with separate address and data bus protocols
US6108734A (en) * 1997-12-01 2000-08-22 Digital Equipment Corporation Method and apparatus for a relaxed bus protocol using heuristics and higher level supervision
US6542971B1 (en) * 2001-04-23 2003-04-01 Nvidia Corporation Memory access system and method employing an auxiliary buffer
US7885405B1 (en) * 2004-06-04 2011-02-08 GlobalFoundries, Inc. Multi-gigabit per second concurrent encryption in block cipher modes
US7913024B2 (en) * 2008-12-09 2011-03-22 International Business Machines Corporation Differentiating traffic types in a multi-root PCI express environment
US8144582B2 (en) * 2008-12-30 2012-03-27 International Business Machines Corporation Differentiating blade destination and traffic types in a multi-root PCIe environment
CN113434355B (zh) * 2021-08-26 2021-12-17 苏州浪潮智能科技有限公司 模块验证方法、uvm验证平台、电子设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1483564A (de) * 1965-06-18 1967-09-06
US3702462A (en) * 1967-10-26 1972-11-07 Delaware Sds Inc Computer input-output system
DE1774183A1 (de) * 1968-04-26 1972-03-09 Siemens Ag Verfahren zur Zwischenspeicherung von Informationen,insbesondere in Fernsprechvermittlungsanlagen
US3699530A (en) * 1970-12-30 1972-10-17 Ibm Input/output system with dedicated channel buffering
US3976477A (en) * 1974-12-23 1976-08-24 Olin Corporation High conductivity high temperature copper alloy
US4017839A (en) * 1975-06-30 1977-04-12 Honeywell Information Systems, Inc. Input/output multiplexer security system

Also Published As

Publication number Publication date
AU3392678A (en) 1979-09-13
CA1089107A (en) 1980-11-04
ES467326A1 (es) 1978-11-01
IT1109990B (it) 1985-12-23
BR7801871A (pt) 1979-04-17
DE2809602C3 (de) 1980-01-31
FR2386075B1 (de) 1981-02-06
PH13850A (en) 1980-10-22
CH626735A5 (de) 1981-11-30
IT7821591A0 (it) 1978-03-24
GB1568474A (en) 1980-05-29
AU515256B2 (en) 1981-03-26
DE2809602A1 (de) 1978-10-05
JPS53120240A (en) 1978-10-20
FR2386075A1 (fr) 1978-10-27
US4115854A (en) 1978-09-19
JPS5547407B2 (de) 1980-11-29

Similar Documents

Publication Publication Date Title
DE2809602B2 (de) Kanalbus-Steuereinrichtung
DE2628363C2 (de) Datenverarbeitungs-Netzwerk
DE3642324C2 (de) Multiprozessoranlage mit Prozessor-Zugriffssteuerung
DE2162806C2 (de) Speichersteuereinheit zur vereinfachter Pufferung von Anforderungen der Ein- Ausgabekanäle
DE2719247C3 (de) Datenverarbeitungssystem
EP0435046B1 (de) Verfahren zum Wiederherstellen der richtigen Zellfolge, insbesondere in einer ATM-Vermittlungsstelle, sowie Ausgangseinheit hierfür
DE60207210T2 (de) System mit Schnittstellen, einem Schalter und einer Speicherbrücke mit cc-numa (cache-coherent non-uniform memory access)
DE4008078A1 (de) Kopierfaehige atm-vermittlungsstelle
DE3508291A1 (de) Realzeit-datenverarbeitungssystem
DE2854397A1 (de) Pufferspeichereinheit fuer ein datenverarbeitungssystem
DE2061576A1 (de) Speicheranordnung
DE2523372B2 (de) Eingabe-ZAusgabe-Anschlußsteuereinrichtung
CH615521A5 (de)
DE2944419A1 (de) Digitalrechnersystem
DE2133661C2 (de) Pufferspeicher-Einrichtung mit einem Speicher
DE3502147A1 (de) Datenverarbeitungssystem mit verbesserter pufferspeichersteuerung
DE2828741A1 (de) Einrichtung fuer die weiterleitung von speicherzugriffsanforderungen
EP0185260B1 (de) Schnittstelle für direkten Nachrichtenaustausch
DE3247083A1 (de) Mehrprozessorsystem
EP1308846B1 (de) Datenübertragungseinrichtung
CH641581A5 (de) Datenverarbeitungseinrichtung.
DE1774849C3 (de) Adressierungseinrichtung für eine Speicherabschnittkette
EP0058758B1 (de) Schaltungsanordnung zur Aufnahme und Weiterleitung von mit relativ hoher Geschwindigkeit auftretenden Datensignalen in einem Datenvermittlungsnetz
DE2900380C2 (de)
DE3149678A1 (de) Anordnung zur zwischenspeicherung von zwischen zwei funktionseinheiten in beiden richtungen zu uebertragenden informationen in einem pufferspeicher

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee