DE2809602A1 - Kanalbus-steuereinrichtung - Google Patents

Kanalbus-steuereinrichtung

Info

Publication number
DE2809602A1
DE2809602A1 DE19782809602 DE2809602A DE2809602A1 DE 2809602 A1 DE2809602 A1 DE 2809602A1 DE 19782809602 DE19782809602 DE 19782809602 DE 2809602 A DE2809602 A DE 2809602A DE 2809602 A1 DE2809602 A1 DE 2809602A1
Authority
DE
Germany
Prior art keywords
output
input
memory
channel
group
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
DE19782809602
Other languages
English (en)
Other versions
DE2809602B2 (de
DE2809602C3 (de
Inventor
Robert Stanley Capowski
Lewis Warren Wright
Terrence Keith 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

Die vorliegende Erfindung betrifft eine Kanalbus-Steuereinrichtung zwischen einer Mehrzahl von Eingabe/Ausgabe-Kanälen und einem gemeinsam benutzten Hauptspeicher in einer Datenverarbeitungsanlage, wobei diese Steuereinrichtung zur Uebermittlung von Anforderungs-Eingabe-Dateneinheiten von den Kanälen zum Hauptspeicher sowie zur uebermittlung von Beantwortungs-Ausgabe-Dateneinheiten vom Hauptspeicher zu den Kanälen bestimmt ist und einen Eingabepufferspeicher sowie einen Ausgabepufferspeicher zur Zwischenspeicherung der Dateneinheiten bei der Uebermittlung enthält.
Aus der deutschen Offenlegungsschrift Nr. 21 62 806 ist eine Einrichtung bekannt, mit der Anforderungen und Daten zwischen Eingabe/ Ausgabekanälen und einem aus mehreren Moduln bestehenden Speicher einer Datenverarbeitungsanlage übermittelt werden. In dieser Einrichtung sind Pufferspeicher zur Zwischenspeicherung der Daten bei der Uebermittlung in der einen und in der anderen Richtung vorgesehen. Durch Prioritätsschaltungen werden einerseits die Eingaben von den Kanälen in die Pufferspeicher und andererseits die Uebertragungen von den Puffern zu den Speichermoduln geregelt, wobei für diese Uebertragungen zum Speicher durchaus 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 Uebermittlung von Dateneinheiten von den Speichermoduln zu den Kanälen besteht keine besondere Steuerung/ so dass 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 Üebermittlungseinrichtung einerseits und der Ausgabe von der Uebermittlung&c-;_nrichtung an die Kanäle andererseits ergibt sich eine Störung des Speicheranforderungs- bzw. Datenflusses.
Der Erfindung liegt die Aufgabe zugrunde, diesen Nachteil zu beseitigen und allgemein eine Verbesserung der Uebertragungssteuerung zwischen E/A-Kanälen und Hauptspeicher zu bewirken, um dadurch eine grössere Ausnutzung der vorhandenen Einrichtungen sowie einen schnelleren Durchfluss bzw. eine kürzere Bearbeitungszeit zu erreichen.
809840/06 8 2
P09-76-024
Ausserdem soll die Erfindung eine Vereinfachung der Uobertragmigen ermöglichen bei Anlagen, in denen Eingabe/7\ur;gabe-Kanäle in Gruppen zusammengefasst sind.
Eine Kanalbus-Steuereinrichtung der eingangs genannten Art ist zur Lösung dieser Aufgaben orfindungsgemöss gekennzeichnet durch Kennzeichen-Eingabeeinrichtungen in Verbindung mit dem Eingabepufferspeicher zur Beigabe von Uebermittlungskennzeichen zu den Eingabe-Dateneinheiten bei deren Uebermittlung zum Hauptspeicher, einen Wartespeicher zur Aufnahme der Uebermittlungskennzeichen nach der Entnahme der zugeordneten Eingabe-Dateneinheiten aus dem Eingabepufferspeicher bei deren Weiterleitung an den Hauptspeicher, und Ausgabesteuereinrichtungen/ die mit dem Wartespeicher und dem Ausgabepufferspeicher zusammenwirken, um mit Hilfe der zwischengespeicherten Uebermittlungskennzeichen die Reihenfolge der Ausgabe-Dateneinheiten bei deren uebermittlung zu den Kanälen zu bestimmen.
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 üebermittlungseinrichtung übergeben wurden. Trotzdem können die eigentlichen Speicheroperationen je nach momentaner Zugriffsmöglichkeit in anderer Reihenfolge durchgeführt werden. Das optimiert die Pufferausnutzung und erhöht den Datendurchfluss. Beim Leeren des Eingabepuffers entstehen keine Verzögerungenf 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 üebermittlungseinrichtung die Herkunft der Verkehrseinheiten bei der
809840/0682
POO-76-024
Bearbeitung nicht mehr berücksichtigen muss, und weil die Spcicheroperations-Anforderungen einer ganzen Giuppe so wie die eines einzelnen Kanals behandelt werden können. Die Ueberniitt lung wird sozusagen transparent bezog].ich 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 Uebermittlungseinrichtung, in der die Zwischenspeicher bereichsweise den Kanalgruppen zugeordnet sind, durch besondere Uebertragungs-Freigabesignale den Steuereinheiten der Kanalgruppen angezeigt, dass noch Speicherplatz im zugeordneten Bereich verfügbar ist, um so für eine Kanalgruppe eine durchgehende quasi-asynchrone Uebertragung aufeinanderfolgender Dateneinheiten zu ermöglichen, bis c"ie zugeordneten Eingabe-Zwischenspeicher voll besetzt sind.
Ein Äusführungsbeispiel der Erfindung ist in den beigefügten Zeichnungen dargestellt und wird anschliessend näher beschrieben. Es zeigen:
Fig. 1 die Umgebung der vorliegenden Kanalbus-Steuerung (CBC) in einem Datenverarbeitungssystem,
Pig. 2 typische Eingabe- und Ausgabeverbindungen zwischen der Kanalbus-Steuerung (CBC) und Gruppen von Eingabe/Ausgabe-Kanälen in der in Fig. 1 gezeigten Umgebung,
Fig. 3 den internen Datenfluss der Kanalbus-Steuereinrichtung, Fig. 4 das Format eines Kanalbus-Sammelregisters aus Fig. 3 zur
Zusammensetzung von Anforderungseinheiten, Fig. 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,
Fig. 7 Verbindungen 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
809840/0682
PO9-7G-024
Steuery.igna.1en zur Uc-bermittlung der betreffendeÄ 5»Uo£(fcfeU 2 rungseinheit über den Eingabepu.f f er,
Fig. 12 eine Schaltung zur Auswahl des nächsten Kanalbus-Sammelregisters zum Auslesen und des Eingnbepufferabschnittes, in den die ausgelesene Information zu schreiben ist, Fig. 13 eine Schaltung zur Anzeige von Verfügbarkeit oder Belegung der
Kanalbus-Sainmelregister und der Eingabepufferabschnitte, Fig. 14 Schaltungen· und Verbindungen zwischen den Kanalbus-Samrnel-
registern und den Eingabepuffern zur Erzeugung und Einsetzung der Pufferkennzeichen PK und der Gruppeneingabekennzeichen EK sowie zur Einsetzung von Null-Füllwörtern mit gültiger Parität in leere Wortfelder,
Fig. 15 die Schaltung zur Auswahl des nächsten Abschnittes im Eingabe
& 16 puffer zum Auslesen an den Speicher, Fig. 17 die Eingabetaktierung des Eingabepuffers,
Fig. 18 'Datenbahnen zur Informationsübertragung vom Eingabepuffer an & 19 den Speicher und vom Speicher an den Ausgabepuffer, sowie eine Darstellung der Benutzung des Wartespeichers für den koordinierten Kennzeichenfluss beim Einschreiben von Daten in den Äusgabepuffer,
Fig. 20 einige Einzelheiten des Kennzeichen-Wartespeichers, und Fig. 21 die Schaltung zur Bestimmung des nächsten auszulesenden Ab
& 22 schnittes des Ausgabepuffers.
Umgebendes System
Die hier beschriebene Kanalbusleitungs-Steuereinrichtung, nachfolgend kurz Kanalbus-Steuerung oder CBC genannt, arbeitet in einem System, wie es allgemein in den Fig. 1 und 2 dargestellt ist. Mehrere Prozessor-Speichermoduln 1, 2, 3 ..., werden von der Speichersteuerung (SCE) 5 gesteuert verschachtelt adressiert. Die Speichersteuerung 5 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 Einspeicheroperation werden durch die Speichersteuerung 5 präsentierte Daten an einer in einem der Moduln 1 bis 3 bezeichneten Adressstelle gespeichert
809840/0682
PO9-76-024
und ein die Beendigung dieser Speicherung bestätigendes Signal über die Speichersteuerung 5 an die Quelle der betreffenden Eingabeanforderung weitergeleitct. Die bei 7 dargestellte Kanalbus-Steuerung CBC wirkt als Puffer zwischen der Speichersteuerung 5 und Gruppen von Eingabe/Ausgabokanälen, allgemein mit 9 bezeichnet. Eine Bus-Steuerung BCE 11 bildet die Schnittstelle zwischen den zentralen Prozessoren 12 und einem Bereitschaftrjspeicher (CACHE) 14 sov.'ie diesem und einen Wartungs- und Sichtgerätkonsol 15. Die Bus-Steuerung 11 steht ausserdem mit der Speichersteuerung 5 in Verbindung, für den Zugriff zu den Speichermoduln 1 bis 3, und zwar in Konkurrenz mit der Kanalbus-Steuerung CBC 7. Die Einheit BCE 11 und der Bereitschaftsspeicher (CACHE) 14 bilden keinen Teil der vorliegenden Erfindung und sind nur zur Veranschaulichung der Konkurrenzsituation dargestellt. Die Speichersteuerung SCE 5 hängt nur insofern mit.der vorliegenden Erfindung zusammen, als sie Empfänger bzw. Quelle der von der CBC 7 übermittelten Information ist.
Die in Fig. 2 dargestellte Schnittstelle 9 steht mit Kanalgruppen in Verbindung. Im gezeigten Ausführungsbeispiel ist die CBC 7 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 umfasst.
Die Kanäle in einer Gruppe werden gemeinsam durch eine Gruppenleiteinheit gesteuert, die "Direktor" genannt wird. Die nachfolgend mit Kanalgrxippe 1 bezeichnete Gruppe 20 wird durch 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äss Darstellung bei 32 ist die Prioritätsreihenfolge des Verkehrs für diese Gruppen: 1, 2, 3, wobei in KonkurrenzSituationen 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 fliesst von der Kanalbus-Steuerung CBC synchron über eine 81 Bit breite Datenbusleitung 34 zu den Direktoren. Von den Direktoren 1, 2 und 3 fliesst Information zur CBC über drei 41 Bit breite Datenbusleitungen 36, 38 und 40. Die Kanäle der Gruppe 1, bezeichnet mit der Nummer 42, sind einzeln mit E/A-Steuerungen und E/A-Geräten über die entsprechenden peripheren E/A-Schnittstellen 44 verbunden. In
809840/0682
gleicher Weise haben die Kanäle dar 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-Steuerimg CBC - Allgemeines
Die interne. Organisation der Kanalbus-Steuerung CBC ist schematisch in Fig. 3 gezeigt. Wortweise von den Kanalgruppen 1 bis 3 gesendete Information wird zu Änforderungseinheiten von 1, 2 oder 3 Wörtern in entsprechenden Kanalbus-Sammelregistern (CBAR) 70, 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 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 Uebertragungs-Freigabesignale in quasi-asynchroner Betriebsweise geladen.
Volle CBAR-Register stehen in der Prioritätsreihenfolge 1, 2, 3 im Wettbewerb um den Zugriff zu leeren Abschnitten in dem gemeinsam benutzten Eingabepuffer (EP) 78. Der Eingabepuffer 78 ist in die Bereiche 80, 82 und 84 unterteilt, die dem Verkehr der entsprechenden Kanalgruppen 1, 2 und 3 zugeordnet bzw. dafür reserviert sind, d.h., die Daten aus den CBAR-Registern 1, 2 und 3 gehen in die zugeordneten Bereiche 80, 82 und 84 des Eingabepuffers. Jeder dieser Bereiche umfasst 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 Abschnitte des Bereiches 84 mit 3-0 und 3-1. Jeder Abschnitt kann den gesamten Inhalt des zugeordneten CBAR-Registers in einer bitparallelen Uebertragung 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 gemeinsam benutzte Ausgaberegister 90· Die Belegung der Abschnitte wird durch später zu beschreibende Merker (Kippglieder) angezeigt. Die Auswahl beim Speicherzugriffs
809840/0682
— J. X —
Wettbewerb geschieht nach folgenden Kriterien: Zugänglichkeit des adressierten Speichermoduls (wobei dieser jeweils durch den Inhalt des betreffenden Pufferabschnitts gegeben ist), die Gruppenpriorität 1, 2 oder 3, die Abschnittspriorität innerhalb jedes Gruppenbereiches (der Abschnitt 0 hat Vorrang 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ängliclikeit von Speichermoduln für den Eingabepufferverkehr wird nach Darstellung in Fig. 1 beeinflusst durch den Wettbewerb mit dem Verkehr anderer Quellen (z.B. der zentralen Prozessoren).
Jedes CBAR-Register enthält drei 41 Bit grosse Segmente mit der Bezeichnung Wort 0, Wort 1 und Wort 2. Diese Segmente werden jeweils überschrieben, aber nicht gelöscht. Zu jedem CBAR gehört ein entsprechendes Kippglied (Binärelement), Fig. 4, das den Belegungszustand 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 Anforderung swort und 0, 1 oder 2 Datenwörtern. Die Datenwörter werden von der entsprechenden Kanalgruppe übertragen und selektiv durch die zugeordneten (später zu beschreibenden) Kennzeichen Dl und D2 in das Segment des Wortes 1 bzw. 2 gesteuert.
Das Anforderungswort enthält Adressinformation, Schlüsselinformation, Operationsinformation (S), Information über die Kanalidentität (ein Kanalkennzeichen KK) sowie Paritätsbits (P) und ein Festadressbit (F), das im aktiven Zustand eine bestimmte, für die vorliegende Erfindung nicht relevante Adressübersetzungsanforderung bezeichnet. Im Segment des Wortes 0 gibt es ausserdem einige ungenutzte oder Reservebitpositionen. Die Adresse und der Schlüssel bezeichnen eine Speicheradresse für eine Operation und den Schutzschlüssel für diese Adresse. Das Operationsbit S 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 ausserdem der jeweilige Empfänger (Senke) ist, an den die Information aufgrund der Anforderung schliesslich zu liefern ist. Mit den Paritätsbits (P) prüft die Kanalbus-Steuerung CBC die Anforderungsinformation auf Fehlerfreiheit. Diese Prüfungen sind nicht dargestellt, da sie mit der vorliegenden Erfindung nichts zu tun haben.
809840/0682
PO9-76-024
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üllwörter ersetzt, die in den Eingangspuffer 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 Markierunsbits, die angeben, 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 CBAR-Registers übertragen und ein Null-Füllwort von der CBC-Steuerschaltung automatisch an den Ausgang des anderen Segmentes abgegeben.
Mit jeder Anforderungsübertragung in den Eingabepuffer erzeugt die Kanalbus-Steuerung CBC Pufferidentifizierungs-Kennzeichen PK und Gruppeneingabekennzeichen EK, die über die Bahnen 94 und 96 (Fig. 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 unterteiltj 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
809840/0682
PO9-76-024
116 zur Ausgabcbusleitung 120, die mit den Direktoren der Kanalgruppen verbunden ist.
Das Kanalkennzeichen verlässt 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 CBC-Schaltung zu belasten.
Das Pufferkennzeichen verlässt den Wartespeicher 100 bei 130 und gelangt zur Auswahlschaltung (Adressiereinrichtung) 134, um den vom Speicher zu beschreibenden Ausgabepufferabschnitt zu wählen (d.h., denjenigen Abschnitt, der dem Eingabepuffe-rabschnitt 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 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 CBC zu ordnen, auch wenn diese Anforderungen in einer anderen Reihenfolge an den Speicher gegeben werden. Diese Operation wird später im Zusammenhang mit Fig. 21 genauer beschrieben.
Nicht einzeln gezeigte Weiterschaltleitungen (VOR), die in der nachfolgenden Beschreibung der Fig. 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 Sytemreferenztaktsignal 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
809840/0682
PO9-76-024
- 14 -
zu den entsprechenden Direktoren 1, 2 und 3. Unmittelbar bevor Ausgabeinformation auf den Busleitungszweig 154 gegeben wird, wird das Signal auf einer dieser V7eiterschaltleitungen 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 Uebertragungsfreigabeleitungen 170, 172 und 174 vorgesehen (mit ÜB-FREIGABE 1, 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-Register 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 CBC auf den je 41 Bit breiten Eingangsbusleitungen 180, 182 und 184 leiten.
Ein Direktor kann wiederholt solange übertragen, wie das Signal auf der Uebertragungsfreigabeleitung angehoben ist, d.h., er braucht zwischen den aufeinanderfolgenden Uebertragungen nicht darauf zu warten, dass das Signal auf der zugehörigen Uebertragungsfreigabeleitung abfällt und ansteigt. Diese Betriebsart nennt man quasi-asynchron.
Mit jeder Uebertragung hebt der entsprechende Direktor das Signal auf der Adresskennzeichenleitung oder der Datenkennzeichenleitung 1 oder der Datenkennzeichenleitung 2 an. Die Adresskennzeichenleitungen für die Direktoren 1, 2 und 3 sind mit 190, 192 und 194 bezeichnet. Die Datenkennzeichenleitungen 1 (Dl) 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, dass die zugehörige Anforderung für eine 4-Wort-Datenübertragung gi.lt (entweder Abruf oder Einspeicherung). Die Direktoren 1, 2 und 3 zeigen über entsprechende Uebertragungsende-Kennzeichenleitungen (EOT) der CBC das Ende einer Uebertragungseinheit an.
Format der Uebertragungen zum Kanalbus-Sammelregister CBAR
Nach Darstellung in Fig. 6 enthält eine Anforderungseinheit von einem Direktor an die Kanalbus-Steuerung CBC entweder eine Abrufanforderung oder eine Speicheranforderung. Eine Abrufanforderung kann die
809840/0682
PO9-76-024
- 15 -
Uebertragung von zwei Datenwörtern (Doppelwortabi~uf) oder να er Datenwörtern {Vierfachwortabruf) vom Speicher verlangen. Eine Speicheranforderung kann die Uebertragung 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 Fig. 6 bei 250 bzw. 252 gezeigt. Ein bei 254 in Fig. dargestellter Doppelwortabruf belegt drei Taktzyklen des Direktors (6 CBC-Zyklen); und zwar einen Direktorzyklus 256 zur Uebertragung eines Anforderungswortes und zwei Leerzyklen 257 und 258, nach denen eine weitere Uebertragung (wie bei 259 gezeigt) eingeleitet werden kann. Bei einem Doppelwortabruf sendet der Direktor das Anforderungswort (ADR für Adresse) gleichzeitig mit einem Adresskennzeichen (ADR-KE) und einem Uebertragungsendekennzeichen (EOT).
Ein bei 260 in Fig. 6 dargestellter Vierfachwort-Abruf belegt fünf Direktorzyklen (10 CBC-Zyklen), und zwar einen aktiven Uebertragungszyklus 262, dem ein Leerzyklus 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 Adresskennzeichen und einem Uebertragungsendekennzeichen. Im zweiten aktiven Zyklus 266 werden das Uebertragungsendekennzeichen und das Vierfachwort-Kennzeichen (QW) ohne weitere Information gesendet. Die CBC spricht auf diese Kennzeichenkombination in einer später zu beschreibenden Art an und setzt Nullen-Füllwörter und die zugehörige Parität in die Daten-/Markierungswortpositionen der Anforderungseinheit.
Bei einer Einspeicherungsoperation besteht die Anforderungseinheit aus dem Anforderungswort und einem oder mehreren Datenwörtern. Eine bei 270 in Fig. 6 angezeigte 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 Uebertragung beginnen, wie bei 278 vorgeschlagen. Im ersten aktiven Zyklus 272 wird das Anforderungswort mit einem Adresskennzeichen gesendet und im zweiten aktiven Zyklus 274 ein Datenwort mit dem Kennzeichen Dl oder D2.
In Fig. 7 ist die Durchschaltung zum CBAR 1 dargestellt und gezeigt, dass Information auf der Eingabebusleitung 280 der Gruppe 1 durch die Tore 282 in das Wortsegment 0 des entsprechenden CBAR-
809840/0682
PO9-7G-024
- 16 -
Registers geleitet wird, wenn das Adresskennzeichen vom Direktor 1 gesendet wird. Wenn das Kennzeichen Dl gesendet wird, verbinden die Tore 284 die Eingabebusleitung der Gruppe 1 mit dem Wortsegment 1 des CBÄR Aehnlich erfolgt die Durchschaltung zwischen dem Direktor 2 und dem CBAR 2, sowie zwischen dem Direktor 3 und dem CBAR.
Nach Darstellung in den Fig. 6 und 7 steuert in jeder Anforderungsübertragung das Adresskennzeichen die Adressinformation in das Wortsegment 0 des entsprechenden CBAR. Bei einer Einzelworteinspeicherung 270 steuert das angehobene Signal auf der Kennzeichenleitung Dl oder D2 die Daten- und Markierungsinformation von der entsprechenden Eingabebusleitung zu den betreffenden CBAR-WortSegmenten 1 oder 2 (Segment 1 wenn Dl, und Segment 2 wenn D2).
Eine Doppelworteinspeicherung 290 belegt vier Direktor-Taktzyklen f 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 CBÄR gesteuert. Im zweiten und dritten aktiven Zyklus 292 und 293 werden die Daten begleitet durch die Kennzeichen Dl und D2 in beliebiger Reihenfolge gesendet. Im dritten Zyklus wird ausserdem das EOT-Kennzeichen gesendet. Für eine normale Lese-Anforderung wird das Dl-Kennzeichen im zweiten aktiven Zyklus gesendet und das Kennzeichen D2 im dritten aktiven Zyklus. Für eine Anforderung "Rückwärts lesen" wird das Kennzeichen D2 zuerst gesendet und dann als zweites das Kennzeichen Dl, wodurch die effektive Positionsfolge der Eingabedaten im Speicher umgekehrt wird.
Eine Vierfachworteinspeicherung 296 belegt sieben Direktor-Taktzyklen (drei aktive Zyklen, ein Leerzyklus, zwei aktive Zyklen und wieder ein Leerzyklus). Die Adresse wird mit dem Adresskennzeichen gesendet, gefolgt durch zwei Daten-/Markierungswörter mit den Kennzeichen Dl und D2; Dl als erstes beim gewöhnlichen Vorwärtslesen bzw. D2 als erstes' beim Rückwärtslesen. Das Kennzeichen EOT wird im dritten aktiven Zyklus gesendet. Im fünften und sechsten Zyklus werden zwei weitere Datenwörter mit den Kennzeichen Dl und D2 gesendet (Dl voran beim Vorwärtslesen und D2 voran beim Rückwärtslesen). Das Vierfachwort-Kennzeichen wird entweder, im fünften oder im sechsten Zyklus gesendet. Das Kennzeichen EOT wird wieder im sechsten Zyklus gesendet. Der siebte Zyklus ist gemäss obiger Erklärung leer.
809840/0682
PO9-76-024
Wie oben schon erklärt wurde, muss das Signal auf der Uebertragungsfreigabeleitung (für jeden Direktor 170, 172 oder 174, Fig. 5) hoch sein, sobald im entsprechenden CBAR oder in einem Abschnitt des betreffenden Eingabepuffer-Gruppenbereiches 80, G2 oder 84 (Fig. 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 Uebertragungen warten zu müssen. Das betreffende CBiiR wird in drei CBC-Zyklen gefüllt. Wenn eine Leerstelle in dem betreffenden Eingabepufferbereich besteht, muss in Anbetracht des kontinuierlich anhaltenden Freigabesignals der Inhalt des gefüllten CBAR direkt in den Eingabepuffer übertragen werden, um das CBAR für seinen Direktor zugänglich zu halten. Diese Forderung wird unter Berücksichtigung der Operation der drei CBARs dadurch erfüllt, dass man den Eingabepuffer in jedem CBC-Zyklus einmal beschreibbar macht (d.h. innerhalb drei Zyklen einmal für jedes CBAR-Register). CBC-Steuerung für Anforderungsübertragungen
Die CBC-Steuerschaltung zur Reaktion auf Bedingungen, die durch Signale auf den Kennzeichenleitungen von den einzelnen Direktoren dargestellt werden, ist in den Fig. 8 bis 11 gezeigt. Diese Fig. 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 Fig. 8 gezeigte UND-Glied 300 spricht auf das gleichzeitige Erscheinen des EOT-Kennzeichens und des Adresskennzeichens vom Direktor 1 an und setzt das Kippglied (FF) 302. In diesem Zustand zeigt das Kippglied eine Abrufbedingung der Gruppe 1 an, die zur Zusammensetung einer Abrufanforderung im CBAR 1 führt. Bei der nächsten Uebertragung 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 CBC das Einsetzen von Null-Füllwörtern und der zugehörigen Parität in die entsprechenden Ausgangsleitungen des CBAR 1.
Fig. 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 Dl oder D2. Das Kippglied 304 wird gesetzt, wenn das Kennzeichen Dl benutzt
809840/0682
PO9-76-024
wird, und das Kippglied 3OG wird gesetzt, wenn das Kennzeichen D2 benutzt wird. Das UND-Glied 308 setzt das Kippglied 304, wenn das Di-Kennzeichen der Gruppe 1 das EOT der Gruppe 1 begleitet, und zwar einen Zyklus nach Empfang des Adresskennzeichens der Gruppe 1. Das UND-Glied 310 setzt das Kippglied 306, wenn das D2-Kennzeichen der Gruppe 1 das EOT der Gruppe 1 begleitet, und zwar einen Zyklus nach dem Adresskennzeichen der Gruppe 1.
Das Kippglied 304 sperrt das Ausgeben des Wortsegmentes 2 des CBAR 1 und lässt ein Null-Füllwort mit richtiger Parität in den Ausgang vom Wortsegment 2 des CBAR 1 zum Eingabepuffer 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. 10 zeigt, dass 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 der Gruppe 1 und des Vierfachwort-Kennzeichens QW an, wenn die Kennzeichen Dl und D2 dieser Gruppe beide inaktiv sind. Die Inaktivität der Kennzeichen Dl und D2 wird angezeigt durch das ODER-Glied 316, zusammen mit dem Inverter (N) 318. Das Kippglied 312 führt im gesetzten Zustand zu einer Inversion des wertniederen Adressbits (das eine Doppelwortgrenze im Speicher bezeichnet) und eines zugehörigen Paritätsbits, wenn die zweite Anforderungseinheit der Vierfachwort-Abrufctnforderung übertragen wird vom CBAR 1 an den Eingabepuffer 78. Bei einer solchen Uebertragung werden die Üebertragungsbahnen von den Wortsegmenten 1 und 2 des CBAR 1 gesperrt und Null-Füllwörter mit entsprechender Parität in die betreffenden Weiterleitungsbahnen zum Eingabepuffer 78 eingesetzt.
Fig. 11 zeigt das Kippglied (FF) 320, welches gesetzt wird, wenn eine Vierfachwort-Einspeicherung der Gruppe 1 im CBAR 1 zusammengesetzt wird. Das Kippglied 320 wird durch das UND-Glied 322 gesetzt, das auf das Zusammentreffen des Kennzeichens EOT mit einem der Datenkennzeichen Dl oder D2 (vom ODER-Glied 324) und mit dem Kennzeichen QW, entweder direkt oder verzögert (vom ODER-Glied 326; die Verzögerung 328 beträgt einen CBC-Zyklus) anspricht. Das gesetzte Kippglied 320 veranlasst die Kanalbus-Steuerung CBC zur Invertierung des werthiederen Adressbits und des zugehörigen Paritätsbits, wenn das Anforderungswort in der zugehörigen Einheit (die dann eine zweite Einheit eines Viererwort-Satzes ist) vom Wortsegment 0 des CBAR 1 in den Eingabepuffer
PO9-76-024
übertragen wird (wie beim Vierfachwort-Abruf in Fig. 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 Fig. zeigt die Erzeugung der CBAR-Ausgabe-Durchschaltsignale bei 330, 332 und 334 für CBAR 1 bzw. CBAR 2 und CBAR 3. Diese CBAR-Ausgabe-Durchschaltsignale werden an Schaltungen 336, 338 bzw. 340 angelegt, die zur Schreibwahl zugeordneter Eingabepufferbereiche 80, 82 und 84 (Fig. 3) dienen.
Die Signale der Steuerleitungen 330, 332 und 334 veranlassen die Ausgabe (üebertragung 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 1) 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 1 Ausgeben" bei 330 wird demzufolge angehoben, wenn das UND-Glied 342 die Belegung des CBAR 1 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 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 Ausgeben", 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 im zugehörigen Bereich des Eingabepuffers 78 an und hebt das Signal "CBAR 3 Ausgeben" an.
Die Schaltung 336 spricht axif das Signal "CBAR 1 Ausgeben" und andere später zu beschreibende Eingangssignale an und hebt entweder das Signal auf der Leitung 352 oder das Signal auf der Leitung 354 an, um den entsprechenden Abschnitt 1^-0 bzw. 1-1 im Bereich 80 des Eingabe-
809840/0682
PO9-76-024
puffery 78 zum Einschreiben auszuwählen. Die Schaltung 338 spricht auf das Signal "CBAIi 2 Ausgeben" 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 Signa]. "CBAR 3 Ausgeben" 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 78 zum Einschreiben aus. Der innere Aufbau der Schaltungen 336, 338 und 340 ist identisch, so dass nur Einzelheiten der Schaltung 336 beschrieben zu werden brauchen.
Die Schreibwahl-Schaltung 336 realisiert folgende 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, soweit nicht (aus der in Fig. 16 gezeigten Schaltung abgeleitete) Bedingungen anzeigen, dass 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:
EP k-0 EP k-1 AP k-0 AP k-1 CBAR k
SZ/ SZ/
belegt belegt belegt belegt lädt Abschnitt
Nein Nein Nein Nein k-0
Nein Nein Ja k-0
Nein Nein Ja Nein k-1
Nein Ja k-0
Ja Nein — — k-1
In der obigen Tabelle bezeichnet "k" die Gruppe mit der laufenden Priorität zum Einschreibzugriff in den Eingabepuffer (d.h., 1, 2 oder 3). Ferner bezeichnen "EP" den Eingabepuffer und "AP" den Ausgabepuffer. 11SZ" bedeutet "Speicherzugriff läuft", und "—" bedeutet "ohne Belang".
Bei Betätigung erregt das ODER-Glied 370 seine Ausgangsleitung 352, wodurch der Eingabepufferabschnitt 1-0 zum Einschreiben ausgewählt wird (SCHR. EP 1-0). Bei Betätigung erregt das ODER-Glied 372 die Leitung 354 und wählt dadurch den Eingabepufferabschnitt 1-1 (SCHR. EP 1-1).
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,
809840/0682
PO9--76-024
wenn eines der UND-Glieder 380 oder 382 betätigt wird. Jedes der obengenannten UND-Glieder wird vorbereitet durch das aktive Signal"CßAR 1 Ausgeben". Wenn das vorbereitete UND-Glied 374 auf das Signal "Eingabepufferabschnitt 1-0 nicht voll" und das Signal "Eingabepufferabschnitt 1-1 voll" 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 voll" und "Eingabepufferabschnitt 1-1 nicht voll" an, wobei das letzte Signal die Inversion des Signales "Eingabepufferabschnitt 1-1 voll"' im NICHT-Glied 384 ist, und betätigt das ODER-Glied 372 und wählt dadurch den einzigen freien Abschnitt 1-1 zum Einschreiben aus.
Das UND-Glied 376 spricht auf das Signal "Eingabepufferabschnitt 1-0 nicht voll", "Eingabepufferabschnitt 1-1 nicht voll" und die Negation des Signals "AP 1-0 SZ/BELEGT" durch das NICHT-Glied 386 an und betätigt das ODER-Glied 370. Das Signal "AP 1-0 SZ/BELEGT" besagt, dass 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, dass 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 (Fig. 4) . Das Kippglied 402 zeigt den freien/belegten Zustand des
809840/0682
PO9-76-024
Eingabeyufferabschriitts 1-0 an. Das Kippglied 404 zeigt den freien/belegten Sustand des EingabepuffGrabschnitts 1-1 an.
Das Kippglied 400 wird durch das UND-Glied 406 gesetzt, das auf das EOT-Kennzeichen vom Direktor 1 für die Gruppe 1 anspricht. Wenn das Kippglied 400 gesetzt ist, heisst das, dass das CBÄR 1 voll oder belegt ist. Dass Ki.ppglied 400 wird zurückgestellt, um anzuzeigen, dass das CBÄR 1 nicht voll, also frei ist, wenn Information in den Eingabepufferabfjchnitt 1-0 oder 1-1 geschrieben wird. Das Beschreiben dieser Puffersbschnitte wird durch das ODER-Glied 408 und das UND-Glied 410 angezeigt.
Das Kippglied 402 wird gesetzt durch das UND-Glied 412, um anzuzeigen, dass 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, dass der Eingabepufferabschnitt 1-0 nicht voll ist.
Das UND-Glied 416 setzt das Kippglied 404, welches dann anzeigt, dass 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, dass der Eingabepufferabschnitt 1-1 nicht voll ist, wenn dieser Abschnitt für das Lesen selektiert wird. Uebertragung vom und zum Eingabepuffer
Der Datenfluss und die Schaltung für Uebertragungen 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 CBAR-Ausgabedurchschalt-Steuerleitungen (330, 332 und 334 von Fig. 12) sind bei 426, 428 und 430 und entsprechende Tore bei 432, 434 und 436 dargestellt. Die CBAR-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 CBAR gehören.
Im Zweig 442 wird der Adressteil des ausgegebenen Anforderungswortes durch Uebersetzungsschaltungen 448 (für Adresspräfix und Rekonfiguration) verarbeitet, die Adresshilfsbits aus dem festen Adressbit und aus bestimmten werthohen Bits der ausgegebenen Adresse ableiten. Die Adresshilfsbits werden durch die Speichersteuereinheit SCE 5 (Fig. 1) dazu benutzt, defekte Speichermoduln im Prozessorspeicher zu umgehen.
809840/0682
PO9-76-024
-23- 2S0Q602
Diese Anordnung Lind die zugehörige Uiagehvmgsfunktion bilden keinen Teil der vorliegenden Erfindung und sind nur der Vollständigkeit halber dargestellt.
Die Anforderung zusammen mit den Hilfsadressbits laufen in die Weiterführungsbahn 450 weiter. Dabei werden ein wertniederes Adressbit und das Paritätsbit des entsprechenden wertniederen Adressbyte durch die Schciltung 452 bedingt invertiert. Die Inversion erfolgt, wenn die ausgegebene Anforderungseinheit die zweite Einheit eines Vierfachwort-Abrufes oder einer Vierfachwort-Einspeicherung ist (S. Fig. 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 EP-Kippglieder 456 gesetzt, d.h. in den Belegtanzeige-Zustand geschaltet (s. auch Fig. 13). Ausserdem werden mit diesen Signalen zugeordnete Lokalspeicher-Adresskippglieder 458 ausgewählt, um je drei Adr&ssbits 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 Eingabepufferabschnittes und wird in diesem Abschnitt für die spätere Steuerung des Ausgabeflusses gespeichert.
Die zwei Bit grossen Gruppeneingabekennzeichenzähler (EK-Zähler) 470, 472 und 474 sind den CBAR-Gruppen 1, 2 und 3 zugeordnet und werden nach jeder Ausgabeoperation des betreffenden CBAR um einen Schritt weiter geschaltet. Die aufeinanderfolgenden Zahlenwerte in jedem Zähler beziehen sich dabei Modulo 4 auf die Reihenfolge der Eintragung der Anforderungseinheiten der entsprechenden Gruppe im zugeordneten Eingabepufferbereich .
Die Tore 476, 478 und 480 werden durch entsprechende CBAR-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-Wert) genannt, bezeichnet die Reihenfolge der Eintragung der zugehörigen Anforderungseinheit in die Kanalbus-Steuerung CBC (relativ zu anderen Einheiten derselben Gruppe). Mit dem gespeicherten Eingabekennzeichen (EK-Wert) wird die Reihenfolge der Speicherausgabe-
80984 0/0682
PO9-7G-024
Uebertr.aguiiCien an die betreffende Kanalgruppe in einer noch zu beschreibenden Art gesteuert.
Ausgegebene Daten/Markierungs/Paritätsinformation im Zweig 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 Einzelwortnpeiclierung zusammen mit einem D2-Kennzeichen (bezeichnet durch den Zustand des Kippgliedes 306 in Fig. 9), schaltet das NTCHT-Glied 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 D2 übertragen die Tore 488 füllende Nullen und die zugehörige Parität auf die Weiterführungsbalin 486, und die Tore 484 werden gesperrt.
Aehnlich wird die Information auf dem Bahnzweig 446 behandelt. Wenn weder, ein Abruf noch eine Einzelwortspeicherung mit einem Kennzeichen Dl (bezeichnet durch das Kippglied 304 in Fig. 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 Dl 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 CBAR-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 EK gespeichert. Ausgabe/Leseauswahl beim Eingabepuffer
In den Fig. 15, 16 und 18 ist das Auslesen aus dem Eingabepuffer 78 dargestellt. Fig. 15 zeigt die Lesewahlschaltung 510 in Form eines allgemeinen Blockdiagrammes, 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
809840/0682
PO9-76-024
gezeigten Schaltung bei 512 und wählt mit drei Bit grossen Tei.i adressen (z.B. von den in Fig. 14 gezeigten LS-Ädress-Kippglledern458) bei 514 die LS-Belegungsanzeigen 516 (LS = Logische Speichere]nheit). Die Teiladressen bezeichnen LS-Speichernioduln, die die Speicherstellen enthalten, die schliesslich 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 Fig. 1 geliefert. Für jede logische Speichereinheit LS gibt es einen Eingang. Die Anzahl der Eingänge hängt von der Anzahl der Moduln im Prozessorspeicher ab. Diese sind so konstruiert, dass die Kanalbussteuerung 7 und die Bussteuerung 11 (Fig. 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 gesetzt, das auf das gleichzeitige Auftreten der Signale "Eingabepufferabschnitt 1-0 voll" (von Fig. 13), "LS (1-0) nicht belegt" (genauer "durch Adresse im Eingabepuffer 1-0 adressierte LS nicht belegt") und das nachfolgend beschriebene Ausgangssignal der Schaltung 522 anspricht (welches anzeigt, dass der Ausgabepufferabschnitt 1-0 frei ist und nicht gerade gefüllt wird). Das gesetzte Kippglied 520 (LES. EP 1-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: NICHT LES. EP 1-0 (höhere Priorität des nicht gesetzten Kippgliedes 520), Eingabepufferabschnitt 1-1 voll (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 524 (LES. EP 1-1) gestattet ein Auslesen des Eingabepufferabschnittes 1-1 in das Ausgaberegister 90.
Das Kippglied 528 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
809840/0682
P09 -76-024 2309602
gesetzt.) , Eingabepuffer 2-0 voll (von Schaltung in Fig. 13) , nachfolgend beschriebenes Ausgangs α igrial von der Schaltung 530, und zum Inhalt, des Eiiigab^jpuifers 2-0 gehörende LS nicht beilegt. Das gesetzte Kippglied (LES. EP ?~0) gestattet ein Auslesen des Eingabepufferbereiches 2-0 in das Ausgaberegister 90.
Das Kippglied 532 wird durch das UND-Glied 533 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), Eingabepufferabschnitt 2-1 voll (von der in Fig. 13 gezeigten Schaltung), später beschriebenes Äusgangssignal von der Schaltung 534, und zum Inhalt des Eingabepuffers 2-1 gehörige LS nicht belegt. Das gesetzte Kippglied 532 (LES. EP 2-1) 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 die Eingabepufferabschnitte 1-0, 1-1, 2-0 und 2-1 nicht ausgewählt und die Kippglieder 520, 524, 528, 532 nicht gesetzt sind und gleichzeitig ein Signal (von der in Fig. 13 gezeigten Schaltung) "Eingabepufferabschnitt 3-0 voll" erscheint zusammen mit dem Ausgangssignal von der später beschriebenen Schaltung 538 und einem Anzeigesignal, dass die logische Speichereinheit LS, die zum Inhalt von 3-0 gehört, nicht belegt ist.
Das Kippglied 540 wird gesetzt, um den Eingabepufferabschnitt 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, 532 und 536 also nicht gesetzt sind, und ausserdem ein Signal "Eingabepufferabschnitt 3-1 voll" von der in Fig. 13 gezeigten Schaltung, und ein Ausgangssignal von der noch zu beschreibenden Schaltung 542 auftritt, gleichzeitig mit einem Anzeigesignal, dass die logische Speichereinheit 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 (Fig. 3 und 18) in den Speicher Obertragen wurde.
809840/0682 ORIGINAL INSPECTED
PO9-76-024 ' .
Die Schaltungen 522, 52G, 530, 534, 538 und 542 sind alle identisch, und daher wird, nur rüe Schaltung 522 im einzelnen beschrieben.
Die Schaltung 522 besteht aus dem Kippglied 522.1, dem ODER-Glied 522.2 und dem Inverter 522.3. Das Kippglied 522.1 wird gesetzt, wenn das Kippglied 520 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 522.1 besagt "Speicherzugriff für Ausgabejjuffer-Abschnitt 1-0 läuft" (abgekürzt AP 1-0 SZ). Wenn das 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 Schreibwahlschaltung 336 in Fig. angelegt.
Ein aktives Ausgangssignal vom Inverter 522.3 zeigt an, dass kein LS-Speicherzugriff für den Abschnitt 1-0 läuft und dass 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 v/erden wie folgt entwickelt. Die LS-Adressen in den Kippgliedern (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 CBAR 3 mit niedrigster Priorität. Entsprechendes gilt für das CBAR 1 und das CBAR 2. Das Signal "Uebertragungsfreigabe 3" ist aktiv, wenn entweder das CBAR 3 oder die
ΰ:-er.;-:;; ^::::^:$09840/0682
PO9-76-024
EiiiCjcibMpufferabschnitte 3-0 oder 3-1 nicht belegt sind (und fällt ab, wenn CDAR 3 belegt wirdr während die Eingabepuff erabschnit.te 3-0 und 3-1 beide belegt sind).
Das Signal "EOT" vom Direktor 3 bereitet das CBAR 3 für den belegte;!! Zustand vor. Der Inhalt des CBAR 3 wird entweder direkt ausgegeber (υηα die Eingabepufferabschnitte 3-0 oder 3-1 beschrieben) oder innerhalb der nächsten beiden CBC-Zyklen, abhängig von der Aktivität der C-BAR 1 und 2, die ja die höhere Priorität haben. Die früheste nächste Uebertragung vom Direktor 3 bei 546 erfolgt nach zwei Direktorzyklen (vier CBC-Zyklen nach dem Signal EOT 3), woraus sich ein Zeitbereich 548 für den spätesten Uebertragungszeitpunkt aus dem CBAR 3 ergibt. Datenausgabe aus dem Eingabepuffer
In Fig. 18 ist bei 550 gezeigt, dass bei der Ausgabe das Inhaltes des Ausgaberegisters 90 Adress-, Schlü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 Adressinformation 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 Adressinformation. Für eine Einspeicheroperation benutzt die Speichersteuerung 5 die Adresse und die Markierungen dazu, die zugehörigen Daten in eine Doppelwortstelle im Speicher zu setzen. Die Markierungsbits bezeichnen Datenbytes, 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 Uebertragung der zugehörigen Information an den Speicher (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 auf null stehende Bit wird bei der Uebertragung zum Wartespeicher fallengelassen. Speichertaktierung
Im Ausführungsbeispiel ist der CBC-Zyklus etwas kürzer als 60 Nanosekunden. Der CBC-Eingabepuffer kann in jedem Zyklus beschrieben
809840/068 2 0Rla!NAL irJSPECTED
PO9-76-024
und ausgelesen werden. Die logischen Speichereinheiten LS sind jeweils verschachtelt in Intervallen von etwa 300 Nanosekunden zugänglich. Die Wahrscheinlichkeit der Blockierung in dieser Situation ist praktisch vernachlässigbar, so dass jeder Eingabepufferbereich virtuell kontinuierlichen Zugriff zum Speicher hat. Somit ist auch jede Uebertragungsfreigabe.leitung im allgemeinen kontinuierlich aktiv (ausgenommen die relativ seltenen Fälle, in denen ein CBAR belegt wird, während der zugehörige Eingabepufferbereich voll ist). . ■ Uebertragung in den Ausgabepuffer
Die Kennzeicheneintragungen in Fig. 19 im Wartespeicher 100 werden am 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 Prozessorspeicher 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 (Fig. 21) zwischen den Gruppeneingabekennzeichen vom Wartespeicher 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. Datenfluss im Kennzeichen-Wartespeicher
Fig. 20 zeigt die Organisation des Wartespeichers (WS) 100, der im wesentlichen eine parallele Schiebeanordnung ist und zeitlich
809840/0682
PO9-76-024
-30- 2809802
koordiniert mit den betreffenden Speicherzugriffsoperationen arbeitet. Die Schiebeanordnung ist. 16 B.i.ts breit zur Aufnahme von mehr als den Bits der Kennzeichen- und Paritätßinformation, 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 Eingabcpuffer EP gelangen in eine erste Schieberegisterstufe 580 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 CBC läuft ("CBC-Priorität"). Register 584 empfängt die BCE-Kennzeichen bei 586, wenn eine Speicheroperation (Einspeicherung oder Abruf) für die BCE 11 (Fig. 1) läuft. Die BCE-Eingänge für den Wartespeicher haben mit der 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 Verfugung gestellt wird.
Das aus dem Register 588 bei 590 ausgegebene Vorschaltbit unterscheidet BCE-Speicheroperationen von CBC-Operationen. Wenn dieses Bit auf 1 steht, empfängt die BCE ein Vorschaltsignal. Wenn das Bit auf 0 steht, wird es durch den Inverter 592 invertiert und als Vorschaltsignal (Weiterschaltsignal) für die CBC auf 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 Fig. gezeigt. Die Kanalidentifizierungsinformation (KK) vom Wartespeicherausgang 596 in Fig. 20 gelangt über die Eingabebusleitung 560 in den Ausgabepuffer und wird zusammen mit den auf der Eingabebusleitung 562 empfangenen Speicherausgabedaten gespeichert. Die Schreibwahl eines Ausgabepufferabschnittes wird gesteuert durch das Pufferkennzeichen, das (zeitlich bezogen auf das bei 594 von der entsprechenden· Leitung in Fig. 20 empfangene CBC-Vorschaltsignal) bei 600 von der Wartespeicher-
8 0 9 8 4 0/0682 cfiiQJNAL IFiSTCC^
PO9-76-024
Ausgangsleitung 596 in Fig. 20 empfangen wurde. Das Pufferkennzeichon wird in einem drei Bit grossen Register 604 gespeichert. Die CBC-Vorschaltanseige (Weiterschaltanzeige) wird im Kippglied 606 festgehalten.
Nach dem Setzen des Kippgliedes 606 erregt die Triggerschaltung 608 die Leitung 610 zu einem vorgegebenen Zeitpunkt und schaltet die Tore 612 zum Durchleiten 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 Speicherausgabedateri in dem Ausgabepufferabschnitt gespeichert werden, der demjenigen Eingabepufferabschnitt entspricht, in dem die zugehörige Anforderung gehalten wurde.
Nach einer schematisch bei 618 dargestellten angemessenen Verzögerung, wird das Kippglied 606 zurückgestellt und die Einschreibeoperation beendet, so dass der Ausgabepuffer zum Auslesen angesteuert werden kannn. Die Ausgänge des Decodierer:? 614 sind auch über die Leitungen 619 mit den Ausgabepuffer-Belegungsmerkern (Kippglieder, Fig. 22) und über die Leitungen 620 mit Eingangsleitungen 622 bis 627 der Kennzeichen-Vergleicherschaltungen 630, 632 und 634 verbunden. Auslesen des Ausgabepuffers
Die beiden Eingabekennzeichenbits EK vom Wartespeicher-Ausgang 596 in Fig. 20 werden bei 635 (Fig. 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 1" (GR 1 VOR) bei 636 von den Lesewahlschaltungen der Fig. 22. Die Schaltung 632 empfängt ein Eingangssignal "Gruppe 2 Vorschaltung" (GR 2 VOR) bei 638 von den Lesesteuerungen der Fig. 22. Die Schaltung 634 empfängt ein Eingangssignal "Gruppe 3 Vorschaltung" (GR 3 VOR) bei 640.
Die Vergleicherschaltung 630 liefert Vergleicherausgangssig- '
nale TC 1-0 und TC 1-1 bei 642 bzw. 643, die dann an zugeordnete Lese- "·"■ wahlschaltungen in Fig. 22 übertragen werden. Die Schaltung 632 erzeugt die Ausgangssignale TC 2-0 und TC 2-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 Lesewahlschaltungen in Fig. 22 übertragen werden.
8098 40/068 2
PO9-76-024
Während der Abschnitt 1-0 oder 1-1 im Atisgabepuffer beschrieben wird, steuert ein Schreibwählsignal zur Schaltung 630 auf einer Leitung 622 oder G23 ein entsprechendes Tor 650 oder 652, das von der Gruppeneingabekennzeichen-Leitung 635 zu einem entsprechenden zwei Bit grossen 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 das Beschreiben des Ausgabepufferabschnittes 3-0 bzw. 3-1.
Zwei Bit grosse Vergleicherschaltungen 658 und 660 sind mit den betreffenden Registern 654 und 656 einerseits und einem Ausgabekenn— zeichenzähler 662 andererseits verbunden. Der Zähler 662 wird durch das Vorschaltsignal der Gruppe 1 weitergeschaltet, wenn Information von einem Abschnitt 1-0 oder 1-1 des Ausgabepuffers über das Ausgabepuffer-Ausgaberegister 116 zum Direktor 1 ausgelesen wird.
Der Ausgabekennzeichenzähler 662 wird entsprechend der Anfangsstellung des zugehörigen Eingabekennzeichenzählers 470 (Fig. 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 den Direktor 1 von der CBC noch 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 (Fig. 14} erzeugt.
Nummt man z.B. an, dass zwei Anforderungen Rl, R2 der Gruppe 1 durch die Kanalbus-Steuerung CBC in der Reihenfolge Rl und dann R2 empfangen wurden und dementsprechend in den Eingabepufferabschnitten 1-1 und 1-0 gespeichert wurden, jedoch in der Reihenfolge R2 und dann Rl an den Speicher gegeben wurden, dann würde die Speicherantwort an R2 zuerst erzeugt und in den Ausgabepufferabschnitt 1-0 geschrieben. Die spätere
809840/0682
PO9-76-024
Antwort auf die frühere. Anforderung Rl würde in den Ausgabepufferabschnitt 1-1 gesetzt.
Das zu der Antwort auf R2 gehörende Eingabekennzeichen hat jedoch einen höheren Wert (Modulo 4) als das Eingabekennzeichen, das zu der späteren Antwort auf Rl gehört. Der Zahlenwert im Ausgabekennzeichenzähler 662 würde daher erst mit dem zu R2 gehörenden Viert übereinstimmen, nachdem er zuerst mit dem niederen Wert übereinstimmte, der zu Rl gehört. Denn der Ausgabekennzeichenzähler 662 zählt der Reihe nach in der Folge: 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 Uebereinstimmungssignal abgeben, nachdem der Ausgabekennzeichenzähler aufgrund des Auslesens des Ausgabepufferabschnittes 1-1 weitergeschaltet wurde (während die früher vom Speicher ausgegebenen Daten zu R2 im Ausgabepufferabschnitt 1-0 aufgehalten werden).
Weiterhin sei das nachstehende Tabellenbeispiel betrachtet, worin:
a) Rl, R2, R3, R4 Speicheranforderungen der Gruppe 1 darstellen, die nacheinander durch die CBC empfangen wurden,
b) Eintragungen " " nicht signifikante Zustände darstellen,
c) Eintragungen "A/.." bedeuten: "Die vom Speicher ausgegebenen Daten gehören zu .. ." , und
d) aufeinanderfolgende Eintragungszeilen den Pufferinhalt in aufeinanderfolgenden Zeitpunkten des CBC-Betriebes darstellen.
Puffer inhalt zugehöriges Eing.-Kennzeichen
EP 1-0 EP 1-1 AP 1-0 AP 1-1 AP 1-0 AP 1-1
Rl R2 —— | 00 01
Rl R3 A/R2 11 01
R4 R3 A/Rl A/R2 01
R3 A/R4 A/R2
Die in der letzten Zeile oben dargestellt 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).
809840/0682
PO9-76-024 _
Die Eingabekennzeichenwerte in der letzten Zeile der obigen Tabelle haben identische wertriiedere Bits (Einsen), aber unterschiedliche werthohe Bits (1 gehört zum Ausgabepufferbereich 1-0, 0 gehört zum Bereich 1-1). Daraus lässt sich ableiten/' dass ein aus nur einem Bit bestehendes Eingabekennzeichen nicht ausreicht, um einen Abschnitt des Ausgabepuffers eindeutig zum Auslesen auszuwählen. Weiterhin lässt sich daraus ableiten, dass bei einem Ausgabepuffer mit η Abschnitten pro Gruppe (n > 2) die Anzahl von Eingabekennzeichenbits m sein muss, wobei 2m > η ist.
Die Schaltung 632 enthält Vergleicherschaltungen entsprechend den Schaltungen 658 und 660, und einen dem 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 Fig. 22 dargestellt.
Paare von UND-Gliedern 704, 706 und 708 bewirken die Prioritätsauswahl für die Ausgabepufferbereiche 108, 110 und 112 (Fig. 3), die zu den Kanalgruppen 1, 2 bzw. 3 gehören. Diese Paare von UND-Gliedern bestimmen die Priorität in der Reihenfolge der entsprechenden Gruppen, wenn der betreffende Gruppenbereich belegt ist und andere Bedingungen für die Ausgabewählbarkeit erfüllt sind.
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.
809840/0682
PO9-76-024
Die Schaltungen 724 stehen mit dem ÜND-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 (Fig. 21) verbunden sind.
Die Schaltungen 724 stellen auch Belegungsbedingungen von Ausgabepufferabschnitten durch Signale auf den Leitungen 729, 730, 731 und
732 dar, aufgrund des Empfanges der Ausgabepuffer-Schreibwahlsignale bei
733 und 734. Die Speicherzugriffssignale AP 1-0 SZ, AP 1-1 SZ (Fig. 16) und die Belegungsanzeigesignale bei 729 und 731 (AP 1-0 belegtr AP 1-1 belegt) werden auch von den Eingabepuffer-Schreibwahlschaltungen 336 benutzt. Die Belegunsanzeigesignale bei 729 und 731 werden ausserdem 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 (Fig. 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 Ausgabepufferbereicher die zum Verkehr mit den Gruppen 2 und 3 gehören. Das zur Schaltung 736 gehörende UND-Gliedpaar 706 wird so vorbereitet, dass 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-Gliedpaares 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 (NICHT GR 1 VOR und NICHT GR 2 VOR) .
Die Schreibwahlsignale werden and die Schaltungen 736 bei 740 ■ angelegt (SCHR. AP 3-0 und 3-1). Die Signale AP 3-0 SZ und AP 3-1 SZ werden ausserdem an entsprechende Eingabepuffer-Schreibwahlschaltungen 340 (Fig. 12) angelegt.
Die Belegungsanzeigesignale der Schaltungen 738 bei 746 werden, kombiniert mit entsprechenden SZ-Signalen (Fig. 16), an entsprechende Eingabepuffer-Schreibwahlschaltungen 340 (Fig. 12) angelegt. Die Belegungsanzeigesignale der Schaltung 730 bei 746 werden ausserdem über Leitungen 747 an die zugeordneten UND-Glieder 718 und 720 des Paares angelegt.
809840/0682
PO9--7G-024
Die Schaltungen 736 und 738 erzeugen Lesewahl-Steuersignale bei 770 und 772, für die entsprechenden Ausgabepufferabschnitte über Leitungen, die in Fig. 21 gemeinsam mit LES. AP bezeichnet sind. Die Ausgänge 770 steuern die Auswahl dar Ausgabepufferabschnitte 2-0 und 2-1, die Ausgange 772 steuern die Auswahl der Ausgabepufferabschnitte 3-0 und 3-1.
Die Schaltungen 724, 736, 738 liefern Gruppenvorschaltsignale 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 Vorschaltsignal der Gruppe 3 bei 784 erhöht den Inhalt des entsprechenden Ausgabekennzeichenzählers der Gruppe 3 in den Kennzeichen-Vergleicherschaltungen 634 (Fig. 21).
Die Schaltungen 724, 736 und 738 liefern die betreffenden Vorschaltsignale VOR 1, 2 und 3 an die zugehörigen Direktoren 1, 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 Vorschaltsignales der Gruppe 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, dass die betreffende Gruppe 1, 2 oder 3 während der letzten vier CBC-Zyklen nicht weitergeschaltet wurde. Dadurch wird verhindert, dass der Verkehr einer Gruppe die gemeinsame Ausgangsbusleitung zu den Direktoren blockert, und ausserdem wird dadurch die Ausgangsubertragungsrate 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-
809840/0682
PO9-76-024
Vergleichssignale TCl-O und TC 1-1 schliessen sich gegenseitig aus, da nur einer der Vergleicher 658 oder 660 zu einem gegebenen Zeitpunkt eine Uebereinstimmung erkennen kann. Die Operationen der UND-Glieder 710 und 712 schliessen 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 AP-Belegunsanzeigesignal aktiv sind, und wenn ausserdem 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 AP 2-0 BEL. und AP 2-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 (Fig. 21) vorbereitet. Nur eines der beiden UND-Glieder 714 oder 716 wird also betätigt, wenn:
a) das entsprechende AP-Belegungsanzeigesignal und das Kennzeichen-Vergleichersignal aktiv sind,
b) das zugehörige Vorschaltsignal (Weiterschaltsignal) für die Gruppe 2 während der vier vorhergehenden CBC-Zyklen nicht erzeugt wurde und
c) das Vorschaltsignal 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 AP 3-0 BEL. und AP 3-1 BEL. bei 832 und 834 und durch Kennzeichen-Vergleichssignale (TC 3-0 und TC 3-1) bei 836 und 838 von den Kennzeichen-Vergleichern 634 (Fig. 21). Nur eines der UND-Glieder 718 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 CBC-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 Belegunszustände der betreffenden Ausgabepufferabschnitte ΙΟ und 1-1 bei 729 und 731 anzuzeigen. Das Kippglieci 902 wird gesetzt
8Ü98A0/0682
PO9-76-024
O Λ O **\ Γ·
- 38 - ίθυ;--;ο
durch das Eingangssignal "SCHR. AP 1-0" bei 733, wenn Information in den Auegabepuffcrabschnitt 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 entsprechende Kippglieder für die Anzeige der Belegung AP 2-0, 2-1 bei 744. Die Schaltungen 738 enthalten entsprechende Kippglieder, um den Belegungszustand von AP 3-0, 3-1 bei 746 anzuzeigen.
Die Betätigung des ODER-Gliedes 908 aufgrund der Betätigung eines der UND-Glieder 710 oder 712 bereitet das UND-Glied 910 vor, das dann über Leitung 912 auf das CBC-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 nach einer vorgegebenen Verzögerung von mindestens einem CBC-Zyklus abzugeben und um das Kippglied 914 zurückzustellen. Im gesetzten Zustand stimuliert das Kippglied 914 auch die Verzögerungsschaltung 918, einen CBC-Zyklus nach dem Setzen des Kippgliedes 914 und für die Dauer von drei CBC-Zyklen. Das Ausgangssignal der Schaltung 918 wird invertiert durch den Inverter 920, dessen Ausgangssignal· die UND-Giieder 704 für drei CBC-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 (NICHT GR 1 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 "Gruppe 2 seit vier Zyklen nicht vorgeschaltet" an die UND-Glieder 714 und 716 bei 810, 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 Ausgangssignale 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.
809840/0682 1AI ,.,_-.—
Ein invertiertes Vorsr:halt.signal fur die Gruppe 3 ist niclit erforderlich, da dia 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 an und stellen die Kippglieder 902 bzw. 904 in den "NICHT BELEGT"-Zustand zurüc]?. Im vorbereiteten Zustand sprechen die UND-Glieder 934 und 936 auf /iusgangssignale der UND-Glieder 710 und 712 an und erzeugen entsprechende Leseausvah]-Impulse bei 726 und 72G, um die betreffenden Äusgabepufferabschnitte 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ückstellsignale und die Leseauswahlimpulse für die Gruppen 2 und 3 zu erzeugen.
^-"■■'Λ| ι t>"T"~>rr->——■*>
809840/0682
-to-
-eerse i t e

Claims (7)

  1. ΪΌ9-76-024
    Ij) Kanalbus-Steuereinrichtung zwischen einer Mehrzahl von Eingabe/Ausgabek&nälen und einem gemeinsam benutzten Hauptspeicher in einer Datenverarbeitungsanlage, zur Uebermittlung von Anfordcrungs-Eingabe-Dateneinheiten von den Kanälen zum Hauptspeicher sowie zur Uebermittlung von Beantwortunys-Ausgabe-Dateneinheiten vom Hauptspeicher zu den Kanälen, mit Eingabepufferspeicher und Ausgabepufferspeicher zur Zwischenspaicherung der Dateneinheiten bei der Uebermittlung, gekennzeichnet durch Kennzeichen-Eingabeeinrichtungen (94, 96, Fig. 3; 460, 470, 472, 44, 476, 478, 480, Fig. 14) in Verbindung mit dem Eingabepufferspeicher (78, Fig. 1, Fig. 14) zur Beigabe von Uebermittlungskennzeichen (EK, PK) zu den Eingabe-Dateneinheiten bei deren Uabermittlung zum Hauptspeicher (1, 2, 3, Fig. 1); einen Wartespeicher (100, Fig. 3, Fig. 18, Fig. 19) zur Aufnahme der Uebermittlungskennzeichen nach der Entnahme der zugeordneten Eingabe-Dateneinheiten aus dem Eingabepufferspeicher bei deren Weiterleitung an den Hauptspeicher; und
    Ausgabesteuereinrichtungen (630, 632, 634, Fig. 21; 724, 736, 738, Fig. 22), die mit dem Wartespeicher zusammenwirken, um mit Hilfe der zwischengespeicherten Uebermittlungskennzeichen die Reihenfolge der Ausgabe-Dateneinheiten bei deren Uebermittlung zu den Kanälen (42, 46, 50, Fig. 2) zu bestimmen.
  2. 2. Kanalbus-Steuereinrichtung gemäss Patentanspruch 1, dadurch gekennzeichnet ,
    dass zu den Uebermittlungskennzeichen Eingabekennzeichen (EK) gehören, welche die Reihenfolgeposition der zugeordneten Eingabe-Dateneinheit bezüglich anderer Eingabe-Dateneinheiten bei deren Speicherung in den Eingabepufferspeicher (78) angeben, sowie Pufferkennzeichen (PK), welche den von der betreffenden Eingabe-Dateneinheit im Eingabepufferspeicher benutzten Speicherabschnitt angeben; dass die Eingabe-Dateneinheiten in einer anderen Reihenfolge als der Eingabepufferspeicher-Eingabereihenfolge an den Hauptspeicher übertragbar sind; und
    ORIGINAL INSPECTED 809840/06 8-2
    PO9-76-024
    - dass die Ausgabesteuereinrichtunyen Auav.'erte-einheiten (€30, 632, 634, Fig. 21) enthalten, welche auf die Eingabekennze.'.chen (EK) aus dem Wartespeicher ansprechen und Signale (TC 1-0, TC 1-1 ...) zur Steuerung der Ausgabe-Reihenfolge abgeben.
  3. 3. Kanalbur.-Steuereinrichtung gcniass Patentanspruch 1, dadurch gekennzeichnet,
    - dass Eingabepufferspeicher (78) und Wartespeicher (100) zur zusätzlichen Speicherung von Kanälkennzeichen (KlC) neben den üebermittlungskennzeichen (EK, PK) eingerichtet sind, wobei jedes Kanalkennzeichen sowohl den Ursprungskanal einer zugeordneten Eingabe-Dateneinheit als auch den Zielkanal der betreffenden Ausgabe-Dateneinheit angibt; und
    dass üebertragungs- und Steuereinrichtungen (124, 126, Fig, 3; 614, 616, 560, Fig. 21) vorgesehen sind, um Kanalkennzeichen gemeinsam mit zugeordneten Ausgabe-Dateneinheiten in den Ausgabepufferspeicher (106, Fig. 3, Fig. 21) einzugeben, so dass jede Ausgabe-Dateneinheit gemeinsam mit ihrem zugeordneten Kanalkennzeichen zu den Kanälen (42, 46, 50, Fig. 2) weiterübertragen werden kann.
  4. 4. Kanalbus-Steuereinrichtung gemäss Patentanspruch 2 oder 3, dadurch gekennzeichnet, dass die Ausgabesteuereinrichtungen enthalten:
    - 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 (EK) mit den jeweiligen Ausgabekennzeichen (AK); und
    Ausgänge (642, 643, 644, 645, 646, 647) zur Abgabe von Steuersignalen (TC 1-0, TC 1-1 ...) zur Steuerung der Ausgabereihenfolge der Ausgabe-Dateneinheiten aus dem Ausgabepufferspeicher derart, dass diese der Eingabereihenfolge der entsprechenden Eingabe-Dateneinheiten in den Eingabepufferspeicher entspricht.
    ORiGlMAL i^SH^'isM 809840/0682
    ■pOD-76-024
  5. 5. Kanalbus-Steuerelnrichturig gernäss Patentanspruch 1 zur Verwendung in einer Datenverarbeitungsanlage, in der die Eingabe/Ausgabe-Kanäle in mehreren Gruppen (42, 46, 50, Fig. 2) angeordnet, sind, wobei jede Gruppe mehrere Kanäle umfasst und für diese eine gemeinsame Direktor-Steuereinrichtung (26, 28, 30) zur Uebertraguiig von Anforderungs-Eingabe-Dateneinheiten und Beantwortungs-Ausgabe-Dateneinheiten zwischen den Kanälen der betreffenden Gruppe einerseits und der Kanalbus-Steuereinrichtung andererseits aufweist, gekennzeichnet durch: Eingabe-Durchschalteinrichtungen (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, Fig. 3) des Eingabepufferspeichers (78, Fig. .3, Fig. 14);
    Ausgabe-Leiteinrichtungen (604, 614, 616, Fig. 21), welche auf vom Wartespeicher (100) abgegebene Uebermittlungskennzeichen 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. 23.) zu bewirken, 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.
  6. 6. Verwendung der Kanalbus-Steuereinrichtung gemäss Patentanspruch 3 in einer Datenverarbeitungsanlage, in der die Eingabe/Ausgabe-Kanäle in Gruppen (42, 46, 50, Fig. 2) angeordnet sind, wobei jede Gruppe mehrere Kanäle umfasst, dadurch gekennzeichnet, dass die Eingabe-Dateneinheiten einer jeden Gruppe zusammen mit zugehörigen Kanalkennzeichen (KK) von der betreffenden Gruppe zur Kanalbus-Steuereinrichtung (CBC) übertragen werden und dass jede Eingabe-Dateneinheit zusammen mit dem zugehörigen Kanalkennzeichen im Eingabepufferspeicher gespeichert wird; und dass die entsprechende Ausgabe-Dateneinheit zusammen mit dem gleichen
    809840/0682
    PO9-76-024
    zugehörigen Kanal!;enn^.ciclior) im Ausgabopuffer gespeichert und dann von dort mitsamt diesem Kanalkennzeichen an die entsprechende Kanalgruppe ausgegeben wird, so das« die Dateneinheiten aller Kanäle je einer Gruppe wie Datoneiiiheiton eines einzigen Kanals übermittelt und zwischengespeichert werden können.
  7. 7. Verwendung gemäss Patentanspruch 6, dadurch gekennzeichnet, dass Verbindungen (170, 172, 174, Fig. 5) zur Weitergabe von Uebertragungs—FreigabeSignalen von der Kanalbus—Steuereinrichtung (CBC) zu Direktor-Steuereinheiten (DIR. 1, DIR. 2, DIR. 3) der Kanalgruppen (42, 46, 50, Fig. 2) vorgesehen sind, welche Signale die Uebertragung von Eingabe-Dateneinheiten von der betreffenden Kanalgruppe an die Kanalbus-Steuereinrichtung ermöglichen;
    - dass die in der Kanalbus-Steuereinrichtung (CBC, Fig. 3) vorhandenen Eingabespeicher in den einzelnen Kanalgruppen fest zugeordneten Bereichen (70, 80; 72, 82; 74, 84) angeordnet sind; und
    - dass Dstektoreinrichtungen (Fig. 13) vorgesehen sind, um den Besetztzustand bzw. die Verfügbarkeit der einzelnen Abschnitte (CBÄR 1, EP 1-0, EP 1-1; ...) der den Kanalgruppen zugeordneten Bereiche der Eingabespeicher anzuzeigen, mit deren Hilfe ein ununterbrochenes Uebertragungs-Freigabesignal für eine Kanalgruppe aufrecht erhalten werden kann, solange irgendein Eingabe-Speicherabschnitt der betreffenden Gruppe in der Kanalbus-Steuereinrichtung verfügbar ist (Fig. 17).
    809840/0682
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 true DE2809602A1 (de) 1978-10-05
DE2809602B2 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
US4858116A (en) * 1987-05-01 1989-08-15 Digital Equipment Corporation Method and apparatus for managing multiple lock indicators in a multiprocessor computer 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
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
CA1089107A (en) 1980-11-04
DE2809602B2 (de) 1979-05-31
PH13850A (en) 1980-10-22
CH626735A5 (de) 1981-11-30
AU3392678A (en) 1979-09-13
DE2809602C3 (de) 1980-01-31
IT1109990B (it) 1985-12-23
IT7821591A0 (it) 1978-03-24
ES467326A1 (es) 1978-11-01
US4115854A (en) 1978-09-19
GB1568474A (en) 1980-05-29
FR2386075B1 (de) 1981-02-06
FR2386075A1 (fr) 1978-10-27
JPS5547407B2 (de) 1980-11-29
AU515256B2 (en) 1981-03-26
BR7801871A (pt) 1979-04-17
JPS53120240A (en) 1978-10-20

Similar Documents

Publication Publication Date Title
DE2809602A1 (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
DE2719247A1 (de) Datenverarbeitungssystem
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE3724730A1 (de) Cache-steuereinrichtung
DE19807872A1 (de) Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl.
CH657714A5 (de) Mehrprozessorenanlage.
DE2118581A1 (de) Datenverarbeitungssystem
DE2523372B2 (de) Eingabe-ZAusgabe-Anschlußsteuereinrichtung
DE2061576A1 (de) Speicheranordnung
CH615521A5 (de)
DE2503738A1 (de) Speicheranordnung mit haupt- und pufferspeicher
DE2133661C2 (de) Pufferspeicher-Einrichtung mit einem Speicher
DE1499206B2 (de) Rechenanlage
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
CH634938A5 (de) Einrichtung fuer die weiterleitung von speicherzugriffsanforderungen.
DE3936339A1 (de) Controller fuer direkten speicherzugriff
DE2404887C2 (de) Schaltungsanordnung für den Informationsaustausch mit einem Rechner
DE3247083A1 (de) Mehrprozessorsystem
DE2537787A1 (de) Modularer arbeitsspeicher fuer eine datenverarbeitungsanlage und verfahren zum durchfuehren von speicherzugriffen an diesem speicher
DE1774849C3 (de) Adressierungseinrichtung für eine Speicherabschnittkette
DE3149678C2 (de) Anordnung zur Zwischenspeicherung von zwischen zwei Funktionseinheiten in beiden Richtungen zu übertragenden Informationen in einem Pufferspeicher
DE2542845C3 (de)

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