DE2828731C2 - Adapter - Google Patents

Adapter

Info

Publication number
DE2828731C2
DE2828731C2 DE2828731A DE2828731A DE2828731C2 DE 2828731 C2 DE2828731 C2 DE 2828731C2 DE 2828731 A DE2828731 A DE 2828731A DE 2828731 A DE2828731 A DE 2828731A DE 2828731 C2 DE2828731 C2 DE 2828731C2
Authority
DE
Germany
Prior art keywords
request
state
memory
adapter
register
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.)
Expired
Application number
DE2828731A
Other languages
English (en)
Other versions
DE2828731A1 (de
Inventor
Matthew Anthony Wappingers Falls N.Y. Krygowski
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 DE2828731A1 publication Critical patent/DE2828731A1/de
Application granted granted Critical
Publication of DE2828731C2 publication Critical patent/DE2828731C2/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/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)
  • Hardware Redundancy (AREA)
  • Communication Control (AREA)

Description

Die Erfindung betrifft einen Adapter nach dem Oberbegriff des Anspruchs 1.
Adapter, euch als Geräte für die gleichzeitige mehrfache Datenübertragung im Zeitmultiplexbetrieb, sind allgemein bekannt. Aus dem Jahrbuch des elektrischen Fernmeldewesens 1967, S. 9 bis 29, ist z. B. ein Adapter für Datenverarbeitungsanlagen bekannt, der zwischen einem Prozessor, der eine Gruppe von E/A-Kanälen
bedient und einem gemeinsam benutzten Hauptspeicher angeordnet ist Auch die Informationsübertragung im Multiplexbetrieb ist aus dieser Literaturstelle bekannt Sie zeigt jedoch nicht spezielle Ausführungen von Speichern, die zur schnellen Abwicklung der Übertragung beitragen. Weiterhin ist aus der DE-OS 26 12 083 ein Adapter bekannt, der Speichervorrichtungen zum Zwischenspeichern von zu übertragenden Informationen enthält und der in einer Datenverarbeitungsanlage zur Anpassung zwischen einem Prozessor, der eine Gruppe
von E/A-Kanälen bedient und einer Speicherzugriffseinheit für den gemeinsam benutzten Hauptspeicher angeordnet ist. Die Nachteile dieses Adapters bestehen jedoch darin, daß die Pufferspeicher nicht voll ausgenutzt sind und die Speicheranforderungen und Antwortübertragungen nicht gleichzeitig durchgeführt werden können.
Der Erfindung liegt deshalb die Aufgabe zugrunde, einen Adapter für Datenverarbeitungsanlagen zur Anpassung zwischen einem Prozessor, der eine Gruppe von E/A-Kanälen bedient und einer Speicherzugriffseinrichtung für den gemeinsam benutzten Hauptspeicher und in dem die zu übertragende Information zwischengespeichert wird, zu schaffe», der die Pufferspeicher mehrfach ausnützt und der eine Mehrzahl von Speicheranforderungen und Antwortübertragungen gleichzeitig durchführen kann, ohne daß der Schaltungsaufwand bzw. die Störungen zunehmen.
Der Adapter nach der Erfindung ist durch die im Patentanspruch 1 aufgeführten Merkmale gekennzeichnet. Weitere Ausbildungen der Erfindung gehen aus den Unteransprüchen hervor.
Der Adapter der vorliegenden Erfindung zeichnet sich durch seine mehrfach ausgenützten Pufferspeicher und durch im Zeitmultiplex betriebene Folgesteuerschaltungen aus, mit denen eine Mehrzahl von Speicheranforderungen und Antwortenübertragungen gleichzeitig durchgeführt werden können. Dazu ist nur ein geringer zusätzlicher Schaltungsaufwand erforderlich. Die Wahrscheinlichkeit von Störungen (Überlauf oder Blockieren) ist gering, und die Kanalsteuerung wird nur verhältnismäßig wenig belastet und ist kaum komplexer gestaltet.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher beschrieben. Es zeigt
F i g. 1 schematisch die Systemumgebung für den Adapter,
6) Fi g. 2 die Schnittstelle zwischen dem Adapter und der Kar.albussteuerung,
F i g. 3 und 4 Format und Zeiteinteilung der vom Adapter an die Kanalbussteuerung abgegebenen Anforderung.ssignale,
F i g. 5 Formate von Adreß-Wort- und Daten-Wortsignalen in den F i g. 3 und 4,
F ί g. 6 die allgemeine Ablauffolge des Systems mit dem Adapter bei der Verarbeitung von Speicherzugriffsanforderungen und den zugehörigen Antworten,
F i g. 7 die Ablauffolge, gesteuert durch die b-Folgesteuerschaltung des Speicheradapters bei der Übertragung von Speicherzugriffsanforderungen an die Kanalbussteuerung,
F i g. 8 die Ablauffolge der c-Folgesteuerschaltung des Adapters beim Empfang der zu den einzelnen Anforderungen gehörenden Speicherantworten,
F i g. 9 den Datenfluß und die Folgesteuerung des Adapters,
F i g. 10 Einzelheiten des Daten/Markierungspufferspeichers des Adapters,
Fig. 11 den Steuerfolge-Pufferspeicher im Adapter,
Fig. 12 die Organisation des Direktors unter besonderer Betonung der für den Adapterbetrieb wichtigen Schaltungsteile,
Fig. 13 den Direktor-Steuerspeicher und die zugehörige Beziehung zwischen a-Folgesteuerschaltung und dem Adapter,
F i g. 14 die Zeiteinteilung im Adapter,
F i g. 15 die b-Folgesteuerschaltung des Adapters, F i g. 16 die c-Folgesteuerschaltung des Adapters,
F i g. 17 und 18 Arbeitsweise und Anordnung der logischen Schaltung des Hängedetektors im Adapter.
Ein rfas bevorzugte Ausführungsbeispiel des Adapters enthaltendes datenverarbeitendes System ist in den Fig. 1 und 2 dargestellt Zum besseren Verständnis der Arbeitsumgebung der vorliegenden Erfindung wird das ganze System beschrieben, obwohl man zum Verständnis der vorliegenden Erfindung nur die Wirkungsweise des Direktors und des Adapters zu kennen braucht
Das umgebende System besteht aus einem Hauptprozessor 10, einem Hauptspeicher 12, einer Speicherzugriffseinheit 14, einem Eingabe/Ausgabe-Prözessor 16 (der den Adapter der vorliegenden Erfindung enthält) und einem Konsol-Prozessor 18, der die Wartungsunterstützung für das System bietet. Der Hauptspeicher 12 besteht aus den Speichermoduln 12.1,12.2,123 ..„ deren Operationen zeitlich verschachtelt sind.
Die Speicherzugriffseinheit 14 enthält eine Kanalbussteuerung 1 ^,1, die einen Teil einer Peripherspeichersteuereinrichtung 14.2 bildet, die den Zugriff zum Hauptspeicher 12 steuert Die Kanalbussteuerung 14.1 stellt die asynchrone Verbindung zwischen dem Eingabe/Ausgabe-Prozessor 16 und der Peripherspeichersteuereinrichtung 14.2 dar. Die Peripherspeichersteuereinrichtung 14.2 arbeitet (gemeinsam benutzt) mit der Kanalbussteuerung 14.1, dem Hauptprozessor 10 und dem Konsol-Prozessor 18 zusammen.
Der Eingabe/Ausgabe-Prozessor 16 enthält ein bis drei E/A-Prozessoren 16.1, 16.2 und 163. Jeder dieser E/A-Prozessoren bedient eine separate Gruppe von bis zu sechs Eingabe/Ausgabe-Kanälen. Ein durch den E/A-Prozessor 16.1 bedienter Kanal ist mit 16.1.1 bezeichnet, der vom E/A-Prozessor 16.2 bediente Kanal mit 16.2.1 usw.
Jeder E/A-Prozessor (Direktor) wird von der betreffenden Kanalgruppe und einem erfindungsgemäßen Speicheradapter gemeinsam benutzt und wird als Untersystem bezeichnet Das Untersystem 16.1 besteht aus dem E/A-Prozessor 16.1.2 und dem Speicheradpater 16.13 (SAl). Das Untersystem 16.2 besteht aus dem E/A-Prozessor 16.2.2 und dem Adapter 16.23 (SA2).
Die entsprechend zu den Untersystemen 16.1,16.2 und 163 gehörenden Kanalgruppen 16.1.1,16.2. ί werden hier auch K.analgruppe 1 und 2 genannt Die Kanäle der Kanalgruppe 1 haben für den Anschluß an periphere Steuerungen und Geräte einzelne E/A-Schnittstellen, die gesammelt bei 16.1.4 dargestellt sind. Die Kanäle der Kanalgruppe 2 haben E/A-Schnittstellen, die bei 16.2.4 für eine Verbindung mit peripheren Steuergeräten und E/A-Geräten dargestellt sind.
Speicherzugriffsanforderungen werden von Adaptern wie 16.13 oder 16.23 über entsprechende Sammelleitungen 20 und 22 an die Speicherzugriffseinheit 14 weitergeleitet. Die Antworten des Speichers (als Antwort auf Abrufanforderungen erzeugte Daten und Statussignale für die Behandlung von Speicher/Eingabeanforderungen) werden von der Speicherzugriffseinheit 14 an die Adapter SAl, SA2 über eine Sammelleitung 30 zurückgegeben, die für jeden Adapter Anschlüsse aufweist Die Sammelleitung 20 wird hier als Eingangssammelleitung der Gruppe 1 bezeichnet und besteht aus 41 Leitungen. Die Sammelleitung 22, die Eingangssammelleitung der Gruppe 2, enthält, ebenso wie die Eingangssammelleitung der Gruppe 3,41 Leitungen. Die Sammelleitung 30, hier als Ausgangssammelleitung bezeichnet enthält 81 Leitungen.
Die Schnittstelle für die Gruppe 1 zwischen dem Adapter 16.1.3 (SAl) und der Kanalbussteuerung 14.1 ist in der F i g. 2 dargestellt.
Die Schnittstelle der Gruppe 1 enthält die Leitungen der Ausgangssammelleitung 3C; die Leitungen der EingangssammeHcitung 20 der Gruppe 1 sowie 7 Steuerleitungen, die gemeinsam mit der Nr. 40 und einzeln mi». 40.1 bis 40.7 bezeichnet sind.
Die Fortschaltleitung 40.1 wird von der Kanalbussteuerung 14.1 so gesteuert, daß sie die Übertragung der Antwortinformation an den Adapter SAl auf der Ausgangssammelleitung 30 durch ein kurz vor der Übertragung abgegebenes Signal anzeigt. Die Übertragungsfreigabeleitung 40.2 wivd von der Kanalbussteuerung 14.1 so gesteuert daß sie die Übertragung durch den Adapter SAl auf die Eingangssammelleitung 20 ermöglicht. Das Signal auf dieser Leitung tritt dann auf, wenn die Kapazität des für den Verkehr der Gruppe 1 reservierten Pufferspeichers in der Kanalbussteuerung 14.1 nicht ganz ausgeschöpft ist.
Die anderen 5 Leitungen werden von dem Adapter SAl gesteuert und von der Kanalbussteuerung 14.1 für die Steuerung der Signalbehandlung auf der Eingangssammelleitung 20 benutzt. Die Adreßkennzeichenleitung 403 (ADR) wird zur Anzeige des Vorhandenseins eines Adreßwortteiles einer Anforderung auf der Eingangssammelleitung 20 benützt. Die Kennzeichenleitungen 40.4 und 403, Dl bzw. D2 dienen zur Positionsordnung in DoppelwortspeicherpliHzen bei der Speicherung von einzelnen auf die Eingangssammelleitung 20 im allgemeinen als Teil einer Speicher/Eingabeanforderung gegebenen Datenwörtern. Durch Signale auf derQW-Kennzei-
chenleitung 410.6 (Viererwort) wird angezeigt, daß zu einer Anforderung die Übertragung von vier Datenwörtern in zwei zusammenhängende Doppelwortspeicherplätze gehört, die durch eine Adresse bezeichnet sind. Durch Signale der EOT-Kennzeichenleitung 40.7 wird das Ende einer angeforderten Übertragungsfolge angezeigt.
Der Adapter gibt zwei Arten von Anforderungen an die Kanalbussteuerung. Speicher- oder Eingabeanforderungen (S) verlangen die Speicherung von ein, zwei oder vier Datenwörtern an einem Speicherplatz, der durch ein in der Anforderung enthaltenes Adreßwort bezeichnet wird. Abrufanforderungen (S) verlangen den Abruf von zwei oder vier Datenwörtern von dem durch ein Adreßwort in der Anforderung bezeichneten Speicherplatz.
ίο Antworten vom Speichersystem werden an den Adapter über die Ausgangssammelleitung 30 weitergeleitet, die zwei Datenwörter parallel übertragen kann. Jede Antwort besteht entweder aus zwei Datenwörtern als Antwort auf eine Abrufanforderung oder aus Statusinformation, die zu einer Speicheranforderung gehört. Eine Abrufanforderung über vier Datenwörter verlangt im allgemeinen zwei Antworten (gewöhnlich hintereinander).
Jedes auf die Eingangssammelleitung 20 gegebene Adreßwort enthält eine Identitätsinformation (CHID), die die Anforderungsquelle bezeichnet (Gruppenkanal oder Direktor). Die Kanalbussteuerung 14.1 sorgt für die getrennte Behandlung von Anforderungen und Antworten einer jeden Gruppe und gibt die CHID-lnformation einer jeden Anforderung in der zugehörigen Antwort zurück.
Die F i g. 3 und 4 zeigen die Taktgabe und das Format Her Anforderungsübertragungen vom Adapter SA zur Kanalbussteuerung. Fig.3 zeigt die Taktgabe und das Format der Abrufanforderungen. Die Fig.4 zeigt die Taktgabe und das Format der Speicheranforderungen.
Die Form und Taktgabe einer Abrufanforderung für ein Doppelwort ist bei 50 in der F i g. 3 gezeigt. Format und Taktgabe der Abrufanforderung für ein Viererwort ist bei 52 in der F i g. 3 dargestellt. Eine Anforderung für einen Abruf oder eine Speicherung wird durch den Adapter nur abgegeben, wenn die zugehörige Übertragungsfreigabeieitung zu dem Adapter SA (z. B. 40.2 in der F i g. 2) aktiv ist, wie bei 53 angedeutet ist. Ein Doppelwortabruf, wie bei 50. belegt drei Zyklen der Schnittstellenoperation, von denen jeder etwa 120nsec dauert. Ein Schnittstellenzyklus dauert genau so lange, wie der Zyklus einer Direktoroperation und ungefähr so lang, wie zwei aufeinanderfolgende Zyklen einer Kanalbus-Operation.
In der nachfolgenden Beschreibung werden mit dem Ausdruck »Leerzyklus« Zyklusintervalle der Untätigkeit auf der Schnittstelle nach der Abgabe eines EOT-Kennzeichens durch den Adapter an die Kanalbussteuerung bezeichnet. Die einzige Systembeschränkung für den Adapter in bezug auf die Kanalbussteuerung besteht darin, daß ein solcher Leerzyklus nach jedem Auftreten eines EOT-Kennzeichens folgen muß. Ein solcher Leerzyklus hindert jedoch die Adaptersteuerungen (b-Folge) nicht daran, während dieses Zyklus Signale für den nächsten Zyklus der aktiven Übertragung vorzubereiten.
Eine Anforderungs-Übertragungsfolge für einen Doppelwortabruf, wie sie bei 50 in der Fig.3 gezeigt ist. belegt wenigstens zwei Zyklen der Schnittstellenoperation, nämlich einen aktiven Zyklus und wenigstens einen Leerzyklf.s. im aktiven Zyklus gibt der Adapter SA das Adreßwort auf die Gruppeneingangssammelleitung (20) und liefert gleichzeitig das Adreßkennzeichen und das EOT-Kennzeichen. Im Leerzykius bereitet der Adapter SA die Übertragung einer nächsten Anforderung vor. Im gezeigten Ausführungsbeispiel sind zur Vereinfachung
jo der Adaptersteuerung bei der Vorbereitung der nächsten Anforderung zwei Leerzyklen zugelassen.
Eine Anforderungsübertragungsfolge für einen Viererwort-Abruf, wie sie bei 52 gezeigt ist, belegt 5 Zyklen der Schnittstellenoperation, von denen vier tatsächlich zur Erfüllung der Systemforderungen benötigt werden. Hierbei handelt es sich um einen ersten aktiven Zyklus, dann einen Leerzyklus, dann zwei weitere aktive Zyklen und schließlich noch zwei Leerzyklen. Im ersten aktiven Zyklus versieht der Adapter SA das Adreßwort (auf
seiner Gruppeneingangssammelleitung) mit EOT-Kennzeichen und Adreßkennzeichen (auf den betreffenden Kennzeichenleitungen). Im nächsten aktiven Zyklus, dem dritten Zyklus, liefert der Adapter SA nur das EOT-Kennzeichen und das QW-Kennzeichen (Viererwort), wie bei 54 angedeutet. Die Kanalbussteuerung interpretiert das als eine implizite weitere Abrufanforderung (für zwei weitere Datenwörter) an einen sich an dem durch das im ersten Zyklus empfangene Adreßwort bezeichneten Doppelwort anschließenden Speicherplatz. Die
V) Kanalbussteuerung baut dann aus der ursprünglichen Anforderung eine weitere Anforderung auf. Während der letzten beiden Lr*erzyklen kann der Adapter SA den ersten aktiven Signalzyklus einer weiteren Anforderu £ vorbereiten.
Bei der Beantwortung einer Abrufanforderung steuern die Kanalbussteuerung und die Peripherspeichersteuereinrichtung (PSCF) die zugehörige (bezeichnete) Stelle im Modulspeicher 12 mit dem Adreßwort an. Von
dieser Stelle geholte Daten werden in eine zugehörige Antwort eingesetzt und auf der Ausgangssammelleitung an den Ursprungs-Adapter gegeben. Die Antwort enthält die Quellenidentität (CHlD) entsprechend der Bezeichnungsinformation in der Anforderung. Bei der Beantwortung einer Viererwortanforderung bildet die Kanalbussteuerung zwei Anforderunger, aus dem Adreßwort einer Anforderung. Die erste Anforderung ist die Originalanforderung und dient zum Holen eines ersten Paares von Datenwörtern aus einem durch die Adresse in der Originalanforderung bezeichneten Speicherplatz. Die zweite Anforderung wird von der Originalanforderung abgeleitet zum Holen eines zweiten Paares von Datenwörtern aus einem Speicherplatz, der sich an den durch die Originaladresse bezeichneten Speicherplatz anschließt. Die Adresse für die zweite Anforderung wird von der Originaladresse durch Invertieren eines wertniederen Bits der Originaladresse gebildet.
Die Übertragungsfolge einer Einzelwortspeicheranforderung, dargestellt bei 60 in der F i g. 4, belegt drei Schnittstellenzyklen, und zwar zwei Signalzyklen und einen anschließenden Leerzyklus. Im ersten Zyklus wird gleichzeitig mit einem Adreßkennzeichen das Adreßwort auf die Eingangssammelleitung 20 gegeben, im zweiten Zyklus wird ein Datenwort mit einem EOT-Kennzeichen und einem der Kennzeichen Dl oder D2 gesendet Das Kennzeichen Dl oder D2 wird vom Adapter SA entsprechend dem Wert eines Adressen-Bits (Bit 29)
ausgewählt, das er von der zugehörigen Anforderungsquelle (Kanal oder Direktor) bekommt, das jedoch nicht ausdrücklich in der Anforderungsinformation auf der Eingangssammelleitung enthalten ist. Mit dem Kennzeichen DI speichert die Kanalbussteuerung oder die PSCF das Datenwort in dem ungeraden Halbspeicherplatz eines Doppelwortspeicherplatzes, der durch die Anforderungsadresse bezeichnet ist. Mit dem D2-Kennzcichen speichert die Kanalbussteuerung das Datenwort in dem geraden Halbspeicherplatz eines Doppelwortspeicherplatzes, der durch die Anforderungsadresse bezeichnet ist. Im zweiten und dritten Zyklus bereitet der Adapter SA die Verarbeitung einer weiteren Anforderung vor.
Djjt- Übertragungsreihenfolge einer Doppelwortspeicheranforderung, dargestellt bei 62, belegt vier Schnittstellenüyklen, und zwar drei Signalzyklen und einen Leerzyklus. Im ersten Zyklus wird das Adreßwort mit Adreßkennzeichen gesendet. Im zweiten und dritten Zyklus werden nacheinander zwei Datenwörter mit ausgewählten D-Kennzeichen gesendet. Wenn tfine Rückwärtsspeicherung (66) angefordert wird, wird das Kennzeichen D2 mit dem ersten Datenwort und das Kennzeichen Dl mit dem zweiten Datenwort gegeben. Wenn die Anforderung eine gewöhnliche Speicheroperation (67) ist, wird das Kennzeichen DI mit dem ersten Datenwort und das Kennzeichen D2 mit dem zweiten Datenwort gegeben. Im dritten und vierten Zyklus bereitet der Adapter SA die Verarbeitung einer weiteren Anforderung vor.
Die Übertragukngsfolge für eine Viererwort-Speicheranforderung, dargestellt bei 64, belegt sieben Schnittstellenzyklen, drei aktive Adapter-Signalzyklen und anschließend einen Leerzyklus, dem zwei aktive Adapter- f Zyklen und anschließend ein weiterer Leerzyklus folgen. Im ersten Zyklus wird das Adreßwort mit dem Adreßkennzeichen gegeben !rr. zweiten und dritten Zyklus werden nacheinander zwei Datenwörter mit Daten- I kennzeichen gesendet (DI zuerst und dann D2 für eine gewöhnliche Speicherung; D2 zuerst und dann DI für eine Rückwärtsspeicherung). Zu dem zweiten Datenwort gehört ein EOT-Kennzeichen. Im fünften und sechsten Zyklus werden zwei weitere Datenwörter nacheinander mit derselben Kennzeichenreihenfolge gegeben, wie das erste Datenwortpaar. Das QW-Kennzeichen wird entweder im fünften oder im sechsten Zyklus (68) gegeben. Das EOT-Kennzeichen steht im sechsten Zyklus. Der Speicheradapter SA bereitet die Verarbeitung einer weiteren Anforderung während des sechsten und siebten Zyklus vor.
Auf ein QW-Kennzeichen mit einer Speicheranforderung bildet die Kanalbussteuerung eine zweite Anforderung, die ein zweites Paar von Datenwörtern und eine Adresse enthält, welche durch Invertierung des wertniederen Bits der Originalanforderungsadresse gebildet wird, nachdem das erste Paar von Datenwörtern mit der Originaladresse weitergeleitet wurde. So wird das zweite Paar von Datenwörtern an einem Speicherplatz gespeichert, der sich praktisch an den Speicherplatz anschließt, der das erste Paar aufnimmt.
C;2 F i g. 5 zeigt das Format eines Adreßwort- und eines Datenwort-Signals, die oben in der Beschreibung der F i g. 3 und 4 erwähnt wurden. Die Darstellung zeigt nur die notwendigen Bits. Diese Bits brauchen nicht in der dargestellten Reihenfolge gespeichert oder übertragen zu werden.
Das Adreßwort besteht aus:
1. einem vier Bit großen .Speicherschutzschlüssel 72; %l
2. einer 21 Bit großen Speicheradresse A aus zwei jeweils 8 Bit großen Adreßbytes 74 und 76 und 5 weiteren § Adreßbus 78; ψ
3. einem festen Adreß- (FA)-Bit 80, das angibt, ob eine Übersetzung in der CBC für die Wahl des Speicher-Mo- g duls erforderlich ist (12.1,12.2,123 usw., F i g. l),der durch die Anforderungsadresse bezeichnet ist; 40 |
4. ein Operationsbit 82 zur Unterscheidung von Speicheranforderungen (kS=l) von Abrufanforderungen (S = O);
5. vier Kanalidenlitätsbits (CHlD) 84, von denen drei die Anforderungsquelle bezeichnen und ein Bit der Paritätsprüfung dient; nd
6. aus vier unbenutzten oder Reservebits 86.
Außerdem gibt es sechs Paritätsbits P, eines zum Prüfen des Speicherschutzschlüssels 72, zwei zum Prüfen der Adreßbytes 74 und 76 und ein weiteres zum Prüfen von FA und S; ein weiteres Bit zum Prüfen des durch die fünf zusätzlichen Adreßbits 78 mit den Bits FA, S und ihrem Paritätsbit gebildeten Bytes und ein Paritätsbit zum Prüfen des CHID-Kennzeichens.
Das Datenwortformat besteht aus vier Datenbytes 100,102,104 und 106, zu denen jeweils ein entsprechendes Paritätsbit P gehört, und vier Markierungsbits M 108. Zu jedem Markierungsbit gehört ein anderes Datenbyte. Ein gesondertes Paritätsbit ist für die Markierungsbits vorgesehen. Mit den Markierungsbits »I« werden Datenbytes bezeichnet die innerhalb eines Doppelwortspeicherplatzes zusammenhängend zu speichern sind, der durch die Anforderungsadresse bezeichnet ist Die Markierukngsbits »0« bezeichnen Datenbytes, die nicht gespeichert zu werden brauchen.
Die allgemeine Verarbeitung von Anforderungs- und Antwortübertragungen ist in der F i g. 6 dargestellt. Bei 118 stellt der Direktor oder der Kanal eine Anforderung zusammen. Bei 120 überträgt der Direktor die Anforderung an den zugehörigen Adapter SA und liefert ein bei 122 dargestelltes Auswahlsignal. Das Auswahlsignal stellt eine Verriegelungsschaltung für Anforderungsbereitschaft (hier nicht dargestellt) ein, die die Adapter-Steuerungen zur Einleitung der Verarbeitung der Anforderung vorbereitet Bei 124 speichert der Adapter SA die Anforderung vorübergehend und gibt sie bei Einschaltung durch das Übertragungsfreigabesignal von der Kanalbussteuerung bei 126 (und durch andere Bedingungen interner Priorität) bei 128 an die Kanalbussteuerung weiter, die die Anforderung (speichert und gibt sie weiter) für die Speicherzugriffssteuerungen bei 130 bearbeitet Die Speicherzugriffssteuerungen verarbeiten die Anforderungen bei 132 und geben die zugehörige Antwort an die Kanalbussteuerung zurück, die auch die Antwort bei 134 in eine Warteschlange einsetzt und bei 136 nach einem bei 138 angedeuteten Gruppen-Fortschaltsignal an den zugehörigen Adapter SA gibt Nach Darstellung bei 140 speichert der Adapter SA die Antwort vorübergehend, bis sie vom Direktor zur endgültigen Benutzung
durch die Anforderungsquelle (Kanal oder interner Direktorprozeß) abgerufen wird.
Während der Annahme der Antwort bei 140 vergleicht der Adapter SA zusätzlich das CHID-Kennzeichen der Antwort mit demjenigen der ursprünglichen Anforderung und führt außerdem die später beschriebenen Hilfsoperationen der allfälligen Zeitablaufsperre einer aktiven Anforderung durch.
Hier werden zunächst spezifische Operationen für die Übertragung von Anforderungen von den Kanälen und von dem Direktor an den Adapter funktionell beschrieben. Die für die Ausführung der Operationen benötigten Schaltungen und Steuerungen werden später beschrieben.
Die Mikrof*rogrammsteuerungen CS (F i g. 2) werden von den Kanälen und internen Prozessen des Direktors durch einen später beschriebenen Unterbrechungsvorgang gemeinsam benutzt. Während ein Kanal oder ein
ίο interner Ablauf bedient werden, können diese Steuerungen die Information für eine Abrufanforderung oder Speicheranforderung zusammenstellen und sie an den Adapter SA weiterleiten, wo sie in zugehörigen Pufferbereichen in eine Warteschlange eingesetzt werden. Wenn die Anforderungsinformation in diese Schlange eingesetzt ist, können die gemeinsam benutzten Mikroprogrammsteuerungen zur Bedienung eines anderen Kanals oder internen Direktorablaufs freigegeben werden.
Die Zyklen des SA-Betriebes fallen mit den Zyklen des Direktorbetriebes und des Schnittstellenbetriebes zusammen. Die obenerwähnten, zum Adapter SA gehörigen Pufferspeicher sind auf Zeitmultiplexbasis während diskreter Unterzyklusphasen einer jeden Direktorzyklusoperation/SA-Zyklusoperation adressierbar. Diese Unterzyklusphasen sind nachfolgend durch die Zeitabschnitte a, b und c bezeichnet. Die Übertragungen von Anforderungen und ihre Einordnung in eine Warteschlange im SA-Pufferspeicher werden in den Zeitabschnitten »a« ausgeführt.
Der Adapter SA leitet Anforderungen unabhängig von Operationen der vorhergehenden Mikroprogrammsteuerungen CS (F i g. 2), die von Kanalprozessen und internen Direktorprozessen gemeinsam benutzt werden, weiter. Die Funktion dieser Operationen wird hier zunächst beschrieben, die dafür notwendigen Adapterschaltungen und Folgesteuerschaltungen später.
Nach Darstellung bei 160 in der Fig. 7 werden die Bedingungen »Anforderung bereit« und »Anforderung aktiv« durch ein von der Mikroprogrammsteuerung des Direktors kommendes Auswahlsignal vorbereitet. Die Bedingung »Anforderung aktiv« ist speziell der Anforderungsquelle zugeordnet (Kanal oder interner Direktorprozeß). Dadurch wird eine Folgesteuerschaltung mit acht Stufen im Adapter SA eingeschaltet, um die für das Herausziehen einer Anforderung aus der Schlange im Pufferspeicher im Adapter SA erforderlichen Aktionen einzuleiten und die Anforderung über die Eingangssammelleitung an die Kanalbussteuerung weiterzugeben. Diese Folgesteuerschaltung adressiert den Adapter-Pufferspeicher in den Zeitabschnitten »b« der SA-Zyklen und wird daher b-Folgesteuerschaltung genannt.
Die b-Folgesteuerschaltung leitet Anforderungen in der Reihenfolge weiter, in der sie vom Adapter SA empfangen wurden. Im Anfangszustand SbI, dargestellt bei 162, bereitet die b-Folgesteuerschaltung für die Dauer eines SA-Schnittstellenzyklus die Vorwärtsübertragung einer Anforderung vor. Die obenerwähnte Bedingung »Anforderung bereit« wird bei 164 abgefragt, und wenn keine Anforderung zur Weiterleitung bereit steht, bleibt die b-Folgesteuerschaltung für weitere Zyklen im Zustand SbI, bis eine Anforderung bereit steht.
Wenn eine Anforderung zur Weiterleitung bereit steht, schaltet die b-Foigesteuerschaltung bei 166 in den Zustand Sb2 weiter. Wenn dieser Zustand vom Zustand SbI her erreicht wird (und nicht vom Zustand Sb3 oder der Verzweigung 168, wie später beschrieben), wird ein b-Folgezeiger um einen Schritt höher geschaltet und dadurch wird die Warteschlangenposition der Anforderung effektiv bezeichnet, die als nächste weiterzuleiten ist. Die Bedingung »Anforderung bereit« wird (abhängig von der Stellung des b-Folgezeigers) bedingt zurückgestellt und der Adreßwortteil der nächsten Anforderung wird in dem b-Zeitabschnitt für die Übertragung an die Kanalbussteuerung im nächsten Zyklus geholt. In der Prüfung 168 wird der Zustand der Übertragungsfreigabeleitung (40.2 in F i g. 2) von der Kanalbussteuerung an den zugehörigen Adapter SA abgefragt.
Wenn die Übertragungsfreigabeleitung aktiv ist, schaltet die b-Folgesteuerschaltung gemäß der Darstellung bei 170 im nächsten Zyklus in den Zustand Sb3 weiter. Wenn dieser Zustand über die Reihenfolge SbI, Sb2, Sb3 (und nicht über die Folge Sb3, Sb2, Sb3 gemäß späterer Beschreibung) erreicht wird, wird der Adreßwortteil der Anforderung an die Kanalbussteuerung CBC über die zugehörige Eingangssammelleitung für einen vollen
so Zyklus und die zugehörigen Kennzeichensignale (ADR und EOT bzw. nur ADR) über die zugehörigen Kennzeichenleitungen 403 und 40.7 oder nur 403 übertragen. Bei Verarbeitung einer Speicheranforderung (S = I) bereitet die b-Folgesteuerschaltung in diesem Zustand das im nächsten Zyklus weiterzuleitende Datenwort vor (siehe F i g. 4).
Aus dem Zustand Sb3 verzweigt die Folgesteuerschaltung im nächsten Zyklus entsprechend dem Ergebnis der in diesem Zustand Sb3 ausgeführten kombinierten Abfragen 172, 174 und 175. Bei der Abfrage 172 wird die Anforderungsart (Abruf oder Speicherung) unterschieden, bei der Abfrage 174 die Verarbeitung einer Abrufanforderung nach vollständiger oder unvollständiger Verarbeitung in diesem Zustand (aus F i g. 3 geht hervor, daß Viererwort-Abrufe einen weiteren Kennzeichensignalzyklus nach der Adreßwortübertragung brauchen, um der Kanalbussteuerung die Kennzeichen QW und EOT zu geben), und die Abfrage 175 unterscheidet die Datenwort-
breite (ein Wort oder mehr), wenn die gegenwärtig verarbeitete Anforderung eine Speicheranforderung ist
Wenn eine Anforderung für einen Doppelwortabruf verarbeitet wird, ist die Verarbeitung an diesem Punkt beendet und die b-Folgesteuerschaltung verzweigt über den Zweig 176 der Abfrage 174 und kehrt im nächsten Zyklus in den Anfangszustand SbI zurück, wo die Bedienung einer weiteren Anforderung vorbereitet wird. Wenn ein Viererwort-Abruf verarbeitet wird, verzweigt die b-Folgesteuerschaltung in den Zweig 178 der
Abfrage 174 und läuft im nächsten Zyklus wieder in den Zustand Sb2 zurück.
Bei diesem Durchlauf des Zustandes Sb2 nach dem Wiedereintritt erfolgt nichts (entsprechend einem Leerzyklus. F i g. 3, nach der Übertragung des Adt eßwortteiles des Viererwort-Abrufes). Da das Übertragungsfreigabesignal in dieser Verarbeitungsstufe des Viererwort-Abrufes unverändert eingeschaltet, also aktiv ist, bleibt die
ZiS 16 /31
Reihenfolgeschaltung nur einen Zyklus lang im Zustand Sb2 und läuft dann direkt zum Zustand Sb3 weiter.
Bei diesem Durchgang durch den Zustand Sb3 nach dem Wiedereintritt, der zur Verarbeitung einer Viererwort-Abrufanforderung gehört, gibt die b-Folgesteaerschaltung die Kennzeichen QW und EOT an die Kanalbussteuerung (vgl. F i g. 3) und vervollständigt damit die Anforderungsweiteirleitung. Am Ende dieses Wiedereintrittszyklus kehrt der Folgeschaltungszustand unveränderbar in den Zustand SbI zurück, und zwar bei der Verzweigungsabfrage 174 über den Zweig 176.
Jetzt wird der erste Durchgang zum Zustand Sb3 nach Verlassen des Zustandes SbI unter der Annahme betrachtet, daß eine Einzelwort-Speicheranforderung verarbeitet wird. Die b-Folgestcuerschaltung würde als nächstes in den bei 182 gezeigten Zustand Sb4 über die Verzweigungen bei 172 und 175 laufen. In diesem Zustand wird das im Zustand Sb3 vorbereitete Datenwort über die Eingangssammelleitung mit dem Kennzeichen DI oder D2 an die Kanalbussteuerung auf der Leitung 40.4 oder 403 in Fig.2 weitergegeben. Die Kennzeichen Di oder D2 werden von der b-Folgesteuerschaltung entsprechend dem wertniedersten Adreßinformationsbit (29) ausgewählt, das der Adapter SA von der Anforderungsquelle bekommt, aber nicht an die Kanalbussteuerung in der Anforderung weiterleitet. Mit dieser Wahl wird festgelegt, ob das Datenwon in der geraden oder ungeraden Hälfte eines Doppelwortspeicherplatzes gespeichert wird, der durch die an die Kanalbussteuerung gesendete Anforderungsadresse bezeichnet ist.
Damit ist die Anforderungsweiterleitung beendet und der Zustand SbI braucht nicht vorbereitet zu werden.
Die Folgesteuerschaltung verzweigt demzufolge über die Abfrage 164 entweder zum Zustand SbI, wenn eine weitere Anforderung nicht direkt zur Verfugung steht, oder zum Zustand Sb2, wenn eine weitere Anforderung zur Weiterleitung bereit ist.
Jetzt sei angenommen, daß eine Abspeicheranforderung für mehrere Wörter beim ersten Eintritt in den
: Zustand Sb3 verarbeitet wird. Die Folgesteuerschaltung würde dann vom Zustand Sb3 bei 186 in den Zustand
Sb5 und nicht in den Zustand Sb4 weiterlaufen. Dieser Zustand Sb5 steuert die Übertragung des im Zustand Sb3
' vorbereiteten Datenwortes an die Kanalbussteuerung und die Vorbereitung eines weiteren Datenwortes für die
Übertragung im nächsten Schnittstellenzyklus (siehe F i g. 4). Das gegenwärtig übertragene Wort wird mit dem Kennzeichen DI oder D2 gesendet, abhängig von der Speicherrichtung normal oder rückwärts. Vom Zustand Sb5 verzweigt die Folgesteuerschaltung bei 188 entweder zu dem bei 190 gezeigten Zustand Sb8 oder zu dem bei 192 gezeigten Zustand Sb6. Wenn der zweite Schnittstellenzyklus der Übertragung einer Doppelwort-Speicheranforderung oder der fünfte Schnittstellenzyklus einer Viererwort-Speicheranforderung beendet ist. verzweigt die Folgesteuerschaltung zum Zustand Sb8. Wenn der zweite Schnittstellenzyklus einer Viererwort-Speicherübertragung beendet ist, verzweigt die Folgesteuerschaltung zum Zustand Sb6.
j Im Zustand Sb8 wird das zweite im Zustand Sb5 vorbereitete Datenwort mit einem EOT-Kennzeichen und
dem entsprechenden Datenkennzeichen (Dl bei rückwärts, D2 wenn vorv/ärts) weitergeleitet und damit die
' Anforderungsweiterleitung beendet. Die Vorbereitungsfunktionen des Zustandes SbI werden ein zweites Mal
durchlaufen und die Verzweigung 164 entweder zum Zustand Sb2 (wenn eine weitere Anforderung bereit ist) oder sonst zum Zustand SbI genommen.
Im Zustand Sb6 wird das zweite im Zustand Sb5 vorbereitete Datenwort mit dem entsprechenden Kennzeichen Di oder D2 übertragen und ein weiteres Datenwort (eines zweiten Datenwortpaares) während des Zeitabschnittes b des zugehörign Zyklus für die Übertragung in einem nachfolgenden Zyklus vorbereitet.
! Die Folgesteuerschaltung zeigt dann an, daß eine zweite Übertragung läuft und gehi in den bei 194 gezeigten
Zustand Sb7, wo sie wenigstens einen Verzö^rungszyklus (vgl. F i g. 4) lang leerläuft und bei 196 je nach dem Zustand der zugehörigen Übertragungsfreigabeleitung verzweigt. Wenn die Übertragungsfreigabeleitung aktiv ist, läuft die Folgesteuerschaltung in den Zustand Sb5 und weiter über Sb5 und Sb8 in den nächsten beiden Zyklen, um die Anforderung fertig zu verarbeiten. In diesem zweiten Durchgang durch den Zustand Sb5 »'Vd das QW-Kennzeichen (Viererwort) gesendet. In dem (einzigen) Durchgang durch den Zustand Sb8 wird das EOT-Kennzeichen gesendet (siehe F i g. 4).
■; Die Operationen der b-Folgesteuerschaltung für die Anforderungsweiterleitung, wie sie oben funktionell
charakterisiert (und später im einzelnen beschrieben) werden, erzeugen die Anforderungssignalfunktionen, die ϊ: graphisch in den F i g. 3 und 4 dargestellt sind.
Die Operationen des Adapters SA für die Verarbeitung der Antwort werden hier zunächst funktionell beschrieben. Einzelheiten der Schaltung und Steuerung werden später genauer beschrieben. Zu den betreffenden Steuerungen gehören eine Folgesteuerschaltung mit vier Stufen, die von den Folgesteuerschaltungen a und κ b unabhängig arbeitet Da diese Folgesteuerschaltung Zugriff zu Pufferspeicherbereichen im Adapter SA in den
ja c-Zeitabschnitten hat, wird sie c-Folgesteuerschaltung genannt
'5 In dem in der F i g. 8 bei 220 dargestellten Anfangszustand Sei bereitet die c-Folgesteuerschaltung sich auf
den Empfang einer nächsten Antwort von der Kanalbussteuerung vor, indem sie wiederholt bei 222 in aufeinan-
i| derfolgenden Zyklen entsprechend dem Status der Fortschaltleitung bedingt verzweigt (40.1, F i g. 2).
U Beim Erkennen eines Fortschaltsignals läuft die c-Folgesteuerschaltung im nächsten Zyklus in den bei 224
fj gezeigten Zustand Sc2, wobei sie den aktiven Zustand der Anforderung, der durch die Auswahl (122, F i g. 6) der
a-FoIgesteuerschaltung eingeschaltet worden war, zurückstellt und einen Teil der Antwort oder die ganze
It Antwort in einem Pufferspeicher des Adapters SA während des c-Zeitabschnittes dieses Zyklus speichert. Wenn
|s die Antwort zu einer Abrufanforderung eines Datenwortes ein Paar »abgerufener« Datenwörter in der Antwort
■J;! enthält wird es in dem Pufferspeicherbereich des Adapters SA gespeichert Im Zustand Sc2 wird das CHID-
ψ Kennzeichen der Antwort mit demjenigen der ursprünglichen Anforderung verglichen, um zu prüfen, ob die
f! Antwort in der richtigen Reihenfolge erzeugt wurde.
■fj Vom Zusiand Sc2 läuft die Folgesteuerschaltung automatisch in den bei 226 gezeigten Zustand Sc3 weiter.
■■«; Wenn die Antwort zu einer Abrufanforderung gehört, wird das zweite Datenwort des obenerwähnten Paares im
i]| Pufferspeicher des Adapters SA gespeichert Wenn eine andere zugehörige Antwort erwartet wird (d. h. die
zweite Antwort eines Viererwort-Abrufes), wird bei 228 in den bei 230 gezeigten Zustand Sc4 verzweigt Im Zustand Sc4 zeigen die Steuerschaltungen an, daß weitere Schritte erforderlich sind, und verzweigen bei 232 auf die Bedingung der Fortschaltleitung. Wenn das Fortschaltsignal erkannt wird, wiederholen die Steuerschaltungen die Zustände Sc2 und Sc3 in zwei aufeinanderfolgenden Zyklen (um die Daten der zweiten Antwort in den Pufferspeicher zu speichern) und verzweigen bei 228 zum Zustand Sei (um die Verarbeitung einer nächsten Antwort vorzubereiten).
Wenn die im Zustand Sc3 verarbeitete Antwort nicht zu einer Abrufanforderung gehört, läuft die c-Folgesteuerschalt'jng direkt bei der Verzweigung 228 in den Zustand Sei zurück.
In der F i g. 8 ist ein getrennt gesteuerter Zeitablaufsperreprozeß bei 240 dargestellt Dieser Prozeß prüft die
ίο einer Quelle zugehörigen aktiven Anforderungs-Bedingungen in einer festen Reihenfolge. Wenn eine Anforderung als aktiv erkannt wird, wird eine einige Millisekunden dauernde Zeitablaufzählung ausgeführt, während der dieselbe Anforderung wiederholt in jedem SA-Zyklus des Adapters von 120nsec geprüft wird. Wenn die Anforderung nicht innerhalb eines bestimmten Zeitraumes von 39,6 bis 52,8 msec zurückgestellt wird, wird ein erkanntes Hängenbleiben als Status dem Direktor und dem Konsol-Prozessor (18 in F i g. 1) angezeigt
Wenn eine gegenwärtig geprüfte Anforderung inaktiv ist oder inaktiv wird (z. B. durch eine von der c-Folgesteuerschaltung im Zustand Sc2 ausgeführte Operation), wird diese Zeitablaufzählung zurückgestellt und ein Y-Zähler, der den nächsten zu prüfenden Anforderungsvorgang (Quelle) auswählt (Anforderung Y), wird fortgeschaltet Diese Rückstellung ist bei 242 dargestellt und wird mit dem Zustand SdI bezeichnet Die Prüfung des Y-Anforderungsvorganges ist als Verzweigung bei 244 dargestellt Wenn die Anforderung inaktiv ist, wird Y um einen Schritt bei 246 erhöht (Zustandsbezeichnung Sd2) und der Schritt 242 wird für die nächste Anzeige des Vorganges einer Quellenforderung (Y + ί) erneut durchgeführt
Wenn die Quelle Y eine aktive Anforderung hat, wird die Y-Zählung nicht fortgeschaltet und der Schritt SdI wird wiederholt Bei jeder Wiederholung wird eine Schiebeschaltung, die den vollen Ablauf der Sperrzeit angibt mit einer Taktimpulsquelle verbunden, die auf relativ lange Intervalle (13,2 msec) eingestellt ist Wenn kein Taktimpuls empfangen wird, geschieht für diesen SA-Zyklus (120 nsec) nichts. Dieser Vorgang wiederholt sich in aufeinanderfolgenden SA-Zyklen so lange, bis entweder die Anforderung in den inaktiven Zustand zurückgestellt wird oder ein Taktimpuls nach 13,2 ms empfangen wird. In letzterem Fall wird die Schiebeschaltung um einen Schritt verschoben und eine »1« in die wertniederste Stufe eingesptzt Wenn dann eine »1« in der werthöchsten Stufe erscheint (abgefragt bei jeder Wiederholung des Schrittes SdI), wird ein Hängenbleiben status dem Direktor und dem Konsol-Prozessor angezeigt
Schaltkreise des Adapters SA sind schematisch in den F i g. 9 bis 11 dargestellt Zugehörige Zeitabläufe sind in der Fig. 14gezeigt
Der in LSI-Technik ausgeführte Pufferspeicher 300 dient für die vorübergehende Zwischenspeicherung von Anforderungs- und Antwortinformation. Der ebenfalls in LSI-Technik ausgeführte Pufferspeicher 302 speichert vorübergehend CHID-Kennzeichen-Information (z. B. Kanalidentität) für die Bezeichnung der Anforderungsqueiieri sowie andere zu jeder Anforderung gehörende information. Zu dieser anderen information gehören die Bits S. B, Wl und W2. Bit S unterscheidet den Anforderungstyp (Speichern, wenn S=I, Lesen, wenn S=O). Bit B gibt die zugehörige Richtung für Speicheranforderungen an (rückwärts, wenn B=I, vorwärts, wenn B=0). Die Bits Wl und W2 geben die Anforderungsbreite an (Anzahl der bei einer Speicheranforderung in den Speicher und bei einer Abrufanforderung auf den Kanal zu übertragenden Datenwörter; d. h. wenn Wl = 1 ist ist ein Daten wort wenn W2= 1 ist, sind zwei Datenwörter, wenn Wl und W2 beide 0 sind, sind 4 Datenwörter zu übertragen).
Diese Pufferspeicherbereiche sind dreimal pro SA-Zyklus (120 nsec) in sich nicht überlappenden Phasen (a, b und c) von jeweils 40nsec Dauer adressierbar (siehe Fig. 14). In jedem Zeitabschnitt »a« kann von den Direktor-Ausgabeschaltungen übertragene Anforderungsinformation in diese Pufferspeicher eingegeben werden oder Antwortinformation kann aus dem Pufferspeicher 300 entnommen und an die Direktor-Eingangsschaltungen gegeben werden. In jedem Zeitabschnitt »b« kann Anforderungsinformation aus den Pufferspeichern geholt und in Register gesetzt werden, deren Ausgänge mit der Eingangssammelleitung verbunden werden können. In jedem Zeitabschnitt »c« kann Information aus dem Pufferspeicher 302 in ein zur Steuerschaltung des
so Antwortempfanges gehörendes Register gesetzt werden. Antwortinformation kann gleichzeitig von anderen Registern, deren Eingänge mit der Ausgangssammelleitung verbunden werden können, in den Pufferspeicher 300 eingegeben werden.
Der in der F i g. 10 dargestellte Pufferspeicher 300 besteht aus zwei Gruppen, einer Datenpufferspeichergruppe 304 und einer Markierungspufferspeichergruppe 306. Segmente dieser Gruppen sind gemeinsam adressier- bar. Jede Gruppe enthält 8 Segernente, die einzeln verschiedenen Quellen der Anforderungsvorgänge zugeordnet sind (eine für jeden Kanal, eine für den Direktor und eine als Reserve), jedes Segment, wie etwa das Segment 304.1 der Datengruppe 304, umfaßt 8 einzeln adressierbare Wortspeicherplätze, 7 Speicherplätze 304.1.1 für die Speicherung von Daten wörtern und einen Speicherplatz 304.1.2 für die Speicherung von Anforderungsadreßinformation. Jedes Segment der Markierungsgruppe 306 enthält 4 einzeln adressierbare, jeweils 5 Bit große Speicherplätze. Jeder Speicherplatz kann Markierungsinformation fü ein Datenwort (bei einer Speicheranforderung) in dem entsprechenden Segment der Gruppe 304 enthalten.
Der in der Fig. 11 dargestellte Pufferspeicher 302 enthält 8 adressierbare Speicherplätze, die jeweils 9 Bit breit sind. Jeder Speicherplatz kann Steuerinformation enthalten, die zu einer Anforderung gehört. Solche Steuerinforr.iation schließt ein:
a) 2 Bits Wl, W2 zur Bezeichnung der Datenwortbreite W der Anforderung,
b) 1 Bit S zur Bezeichnung des Anforderungstyps;
c) I Bit B zur Bezeichnung der Anforderungsrichtung für Speicheranforderungen;
d) 1 FA-Bit, das im Zustand-1 angibt, daß der den Modul bezeichnende Teil der Anforderungsadresse übersetzt werden muß (IZl..., F i g. 1);
e) 1 Bit »29«, zur Bezeichnung des wertniedersten Bit der von der Anforderungsquelie an den Adapter SA, aber nicht an die Kanalbussteuerung gelieferten Adreßinformation;
f) 3 CHID-Bits zur Identitätsbezeichnung der Anforderungsquelle, also Kanal oder Direktor (alle internen Direlctorprozesse haben dasselbe CHI D-Kennzeichen = 111) und
g) ein Paritätsbit P.
In der F i g. 9 ist dargestellt, wie Adressen für den Zugriff zu Speicherplätzen in den Pufferspeichern 300 geliefert werden: Vom Zählerregister 310 (Kanalzeiger) in den Zeitabschnitten »a«, vom Zählerregister 312 (Eingangsbuszeiger) in den Zeitabschnitten »b« und vom Zählerregister 314 (Ausgangsbuszeiger) in den Zeitabschnitten »c«. Adressen für den Zugriff zu Speicherplätzen in dem Pufferspeicher 302 werden geliefert: Vom a-Zeiger316 in den Zeitabschnitten »a«, vom b-Zeiger 318 in den Zeitabschnitten »b« und vom c-Zeiger 320 in den Zeitabschnitten »c«.
Operationen betreffend die Pufferspeicher 300 und 302 in den Zeitabschnitten »a« werden durch die Zustände Sa der a-Foigesteuerschaltungen gesteuert, die in dem Mikroprogramm-Steuerspeicher (CS, Fig.2) des später beschriebenen Direktorprozessors enthalten sind. CHID-Information wird in den Pufferspeicherspeicher JIXZ in den Zeitabschnitten »a« vom Register 322 geladen, das mit CHID bezeichnet ist. Das Register 322 wird von den Direktorsteuerschaltungen geladen. Andere Steuerinformation wird in den Pufferspeicher 302 in den Zeitabschnitten »a« direkt von den Ausgabeschaltungen des Direktors geladen.
Das CHID-Kennzeichen im Register 322 wird auch in das zum Pufferspeicher 300 gehörende Register 310 gesetzt und als Segmentadresse für die Gruppen 304 und 306 benutzt. Aus dem Pufferspeicher 300 in Zeitabschnitten »a« gelesene Information wird im Register 324 festgehalten, um sie für die Dauer eines vollen Zyklus den Direktorschaltungen darzubieten.
Operationen betreffend den Pufferspeicher 300 und 302 in den Zeitabschnitten »b« und »c« werden von der b-FoIgesteuerschaltung 330 und der c-Folgesteuerschaltung 332 entsprechend gesteuert. Aus diesen Pufferspeichern in den Zeitabschnitten »b« geholte Information wird für volle Zyklen in Registern festgehalten und in die Adreßwortteile der Anforderungen mit eingeschlossen, die die Kanalbussteuerung über die Eingangssammelleitung dargeboten werden. Aus dem Pufferspeicher 302 in den Abschnitten »c« geholte CHID-Information wird festgehalten und mit der CHID verglichen, die eine Antwort begleitet, um zu verifizieren, daß die Antworten in der richtigen Reihenfolge empfangen werden. Antwortinformation wird für volle Zyklen in Registern festgehalten und in die Pufferspeicher 300 in den Abschnitten »c« eingegeben.
Di« Taktgabe für die Operationen betreffend die Pufferspeicher in den genannten Zeitabschnitten und die Zustandsänderungen und bestimmte Operationen der Folgesteuerschaltungen »b« und »c« erfolgt durch die Taktsignale Tl, T2,.., T6, die vom Direktortaktgeber durch eine Taktringschaltung 334 (Fig.9) abgeleitet werden. Diese Signale sind zeitlich überlappt (siehe Fig. 14) und überspannen Teile von jeweils 30 nsec des Direktorzyklus. Das Signal T5 fällt mit einem Teil des Abschnittes »a« zusammen. Das Signal T1 fällt mit einem Teil des Abschnittes »b« zusammen. Das Signal T3 fällt mit einem Teil des Abschnittes »c« zusammen.
Die Ausgangssignale bb des (Steuerfolge) Pufferspeichers in den Zeitabschnitten »b« werden für volle Zyklen in dem Eingangsbus-Steuerregister 338 festgehalten und zum Steuern der Zustandsänderungen der b-Folgesteuerschaltung 330 und für die Bildung eines Teiles des Anforderungsadreßwortes verwendet, wenn dieses Wort auf die Eingangssammelleitung (und dadurch an die Kanalbussteuerung) übertragen wird. Das CHID-Kennzeichen im Register 338 wird auch in das Register 312 (in dem später betrachteten Zustand SbI) für die Adressierung einer Segments in dem Pufferspeicher 300 gesetzt. Aus dem Pufferspeicher 300 in den Zeitabschnitten »b« geholte Information wird abwechselnd in die Register 340.1 und 340.2 gesetzt. Die Ausgabe des Registers 340.2 kann mit der Eingangssammelleitung verbunden werden, während das Register 340.1 Eingangssignale von dem Pufferspeicher 300 empfängt, und das Register 340.1 kann mit der Eingangssammelleitung verbunden werden, während das Register 340.2 von dem Pufferspeicher 300 geladen wird.
Die in den Zeitabschnitten »c« entnommenen Ausgangssignale cc des Pufferspeichers 302 werden^ Register 350 festgehalten. Information im Register 350 wird auch in das Register 134 als c-Abschitt-Segmentadresse für den Pufferspeicher 300 eingegeben. Der Inhalt des Registers 350 steuert die Zustandsänderungen der c-Folgesteuerschaltung 332. Dieser Registerinhalt enthält auch das Anforderungs-CH'D-Kennzeichen, das unter Steuerung dirjch die c-Folgesteuerschaltung an Vergleicherschaltungen 356 für den Vergleich mit dem CHID-Kennzeichen in einer hereinkommenden Antwort angelegt wird. Wortteile einer jeden Antwort werden von der Ausgangssammelleitung abwechselnd für einen Zyklus in den Halteregistern 354.1 und 354.2 zwischengespeichert und von dort abwechselnd in den Gruppenabschnitt 304 (Fig. 10) des Pufferspeichers 300 während der Zeitabschnitte »c« übertragen. Eintragungen in den Pufferspeicher 300 kommen vom Register 354.1, während das Register 354.2 geladen wird und vom Register 354.2, während das Register 354.1 geladen wird.
Zu den Folgesteuerschaltungen »a«, »b« und »c« gehörende Verriegelungsschaltungen sind bei 360 dargestellt. Die Schaltung »Anforderung aktiv« 362 und die Schaltung »Anforderung bereit« 364 werden verriegelt, eo wenn eine Anforderung in die Pufferspeicher 300, 302 durch die Steuerungen der a-Folgesteuerschaltung im Direktorsteuerspeicher CS (Fig.2) eingegeben wird. Die Schaltung »Anforderung bereit« kann durch die b-Folgesteuerschaltung 330 zurückgestellt werden, wenn die zugehörige Anforderung verarbeitet wird (siehe Zustand Sb2 bei 166 in der F i g. 7).
Für jede potentielle Anforderungsquelle (CHID) gibt es je eine Kippschaltung »Anforderung aktiv«, aber nur eine Schaltung »Anforderung bereit«. Die Kippschaltung »Anforderung aktiv« wird zurückgestellt, wenn eine zugehörige Antwort empfangen wird (siehe Zustand Sc2 bis 224 in der F i g. 8). Die Kippschaltung »Anforderung aktiv« sperrt im verriegelten Zustand die zugehörige Anforderungsquelle von der Bedienung durch den Direk-
tor-Mikroprogramm-Steuerspeicheraus.
Die Kippschaltung 366 für eine »zweite Übertragung« wird verriegelt, wenn eine Anforderung mit einer Breite von 4 Datenwörtern übertragen wird und ein Teil der Anforderung an die Kanalbussteuerung weitergeleitet wurde (siehe Zustände Sb3 und Sb6 in der F i g. 7). Diese Verriegelung wird zurückgestellt, wenn der Rest der zugehörigen Anforderung weitergeleitet wurde (siehe Zustände SbI und Sb8 in der F i g. 7).
Die Kippschaltung 368 für »zweite Übertragung*« wird verriegelt, wenn eine Antwort auf einen Viererwort-Abnif von der Kanalbussteuerung empfangen wird, und die ersten beiden Datenwörter der Antwort bereits angekommen sind. Diese Verriegelung wird zurückgestellt, wenn der Rest der zugehörigen Antwort empfangen worden ist.
Die Kippschaltung »Erhöhungssperre« 370 wird durch die b-Folgesteuerschaltung 330 im Zustand Sb2 verriegelt und dadurch eine Erhöhung des b-Zeigers 318 während der zu Viererwortanforderungen gehörenden zusätzlichen Übertragungsoperationen verhindert Diese Verriegelung wird zurückgestellt, wenn die b-Folgesteuerschaltungden Zustand Sb8 oder SbI erreicht
Die Kennzeichenleitungen zur Kanalbussteuerung sind bei 380 dargestellt und die Zeitgeberschaltungen für die Prüfung auf Hängenbleiben sind bei 390 angedeutet
Im Betrieb werden das CHID-Register322 und das Register 310 wiederholt mit Identitätsinformation (CHID) geladen, welche diejenige Einheit bezeichnet (Kanal oder internen Direktorprozeß), die gegenwärtig von den Direktor-Mikroprogrammsteuerungen bedient wird. Wenn ein interner Direktorprozeß bedient wird, wird die Direktoridentität (=111) eingegeben.
Am Anfang werden die Zeiger 316, 318 und 320 auf gleiche Adreßwerte gesetzt, die einen bestimmten Speicherplatz In dem Pufferspeicher 302 bezeichnen (z. B. »X«). In den Zeitabschnitten »a« wird der Wert im Register 322 als CHID-Darstellung in diesen Speicherplatz eingegeben und derselbe Wert im Register 310 als Segmentadresse für einen Zugriff zu dem Pufferspeicher 300 im Zeitabschnitt »a« benutzt In den Zeitabschnitten »b« wird derselbe Wert aus der Stelle X des Pufferspeichers 302 herausgeholt und in den Registern 338 (als b-FoIgesteuerinformation) und 312 (als b-Segmentadresse für den Pufferspeicher 300) benutzt In den Zeitabschnitten »c« wird derselbe Wert aus der Stelle X des Pufferspeichers 302 geholt und in den Registern 350 (als a-Zeitabschnitt-Steuerinformatiön) und 314 (als c-Zeitabschnitt-Segmentadresse zur Adressierung des Pufferspeichers 300) festgehalten.
Wenn eine Anforderung nicht in die Pufferspeicher 300,302 für die durch die anfängliche CHID-Eintragung bezeichnete Einheit geladen wird, behalten die zu den Pufferspeichern 300,302 gehörenden Register konstante Werte, bis ein? nächste Einheit für die Bedienung durch den Direktorsteuerspeicher unterbricht oder eine Anforderung für die gegenwärtig bediente Einheit geladen wird.
Die am Anfang im Zustand SbI stehende b-Folgesteuerschaltung verzweigt wiederholt (Prüfung 164 in F i g. 7) auf den Zustand der Kippschaltung »Anforderung bereit« 364. Wenn keine Anforderung bereit ist, bleibt die Folgesteuerschaltung »b« im Zustand SbI.
Die c-Folgesteuerschaltung hält am Anfang den Zustand Sei aufrecht und wartet auf ein Fortschaltsignal von der Kanalbussteuerung, das eine Antwort bezeichnet. Wenn keine Anforderung an die Kanalbussteuerung geleitet wurde, darf auch kein Fortschaltsignal kommen (wenn an diesem Punkt ein falsches Fortschaltsignal empfangen werden sollte, paßt der CHlD-Wert im Register 354,1 oder 354.2 nicht zu dem Wer;, im Register 350 und die Vergleicherschaltung 356 arbeitet dann im Zustand Sc2 und erzeugt eine Fehleranzeige).
Wenn eine Anforderung für die Weiterleitung an die Kanalbussteuerung bereit wird, werden die zugehörige Kippschaltung 362 »Anforderung aktiv« und die Kippschaltung 364 »Anforderung bereit« verriegelt Die Adresse im a-Zeiger 316 wird dann so erhöht, daß sie einen nächsten Speicherplatz im Pufferspeicher 302 während der Zeitabschnitte »a« adressiert.
Inzwischen erkennt die im Zustand SbI stehende b-Folgesteuerschaltung im nächsten Zeitpunkt Tl (F i g. 14 und Prüfung 164, F i g. 7), daß die Kippschaltung »Anforderung bereit« meldet und geht weiter zum Zustand Sb2. Dadurch wird der Prozeß für die Weiterleitung der Anforderung für die zugehörige Anforderung wie oben beschrieben in Gang gebracht. Im Zustand Sb2 wird die Adresse im b-Zeiger 318 erhöht und der Inhalt des Registers 338 effektiv so lange festgehalten, bis die Anforderungsweiterleitung beendet ist Wenn also der Zustand SbI wieder erreicht oder der Zustand Sb8 erreicht ist, dann ist die b-Folgesteuerschaltung sofort für die Verarbeitung der nächsten Anforderung bereit.
Wenn das Fortschaltsignal empfangen wird (das eine Antwort auf eine weitergeleitete Anforderung anzeigt), geht die c-Folgesteuerschaltung in den Zustand Sc2 (F i g. 8) und beginnt, die Antwort für die Register 354.1 und 354.2 sowie den Pufferspeicher 300 zu verarbeiten. Die zugehörige Kippschaltung 362 »Anforderung aktiv« wird im Zustand Sc2 entriegelt. Im Zustand Sc3 wird der Adreßwert im c-Zeiger 320 erhöht und der Inhalt des Registers 350 beibehalten, womit die c-Folgesteuerschaltung so vorbereitet wird, daß sie eine nächste Antwort bedienen kann, sobald sie in den Zustand Sei zurückkehrt.
Sobald eine der Kippschaltungen »Anforderung aktiv« zurückgestellt wird, kann der zu der entsprechenden Anforderung gehörende Kanalprozeß oder interne Direktorprozeß von der Direktor-Mikroprogrammsteuerung CS bedient werden. Wenn diese Bedienung dann zur Verfügung steht, wird die Antwort von dem Pufferspeicher 300 in einen Pufferspeicher im Direktor übertragen, der dem zugehörigen Kanal oder dem internen Direktorprozeß zugeordnet ist.
Wenn die Antwort auf eine aktive Anforderung überfällig ist, fragt die Zeitablaufzählschaltung 390 für die Hängenbleiben-Prüfung schließlich die Anforderung ab und sperrt sie zeitlich. Dadurch wird eine Anzeige für das Hängenbleibensein erzeugt.
Zwischen den Prozessen der Folgesteuerschaltungen »a«, »b« und »c« gibt es keine zeitlichen Einschränkungen. Wenn also eine Anforderung durch eine Aktion im a-Zeitabschnitt eines Zyklus bereitgestellt wird, kann bereits die b-Folgesteuerschaltung sofort ihre Arbeit mit der zugehörigen Anforderung im b-Zeitabschnitt
desselben Zyklus beginnen, und sobald die Kippschaltung »Anforderung aktiv« durch die c-FoIgesteuerschaltung im c-Zeitabschnitt eines Zyklus zurückgestellt wird, kann die a-Folgesteuerschaltung mit der Bearbeitung der Antwort in diesem Zyklus beginnen.
Einige der relevanten zeitlichen Beziehungen zwischen den Abläufen im a-Zeitabschnitt und b-Zeitabschnitt sind in der F i g. 14 in den letzten 11 Zeilen dargestellt
Das schematisch in den Fig. 12 und 13 gezeigte Direktorsystem ist ähnlich aufgebaut wie das in der US-Patentschrift 35 85 599 beschriebene System, wenn man die Anpassungen für die obenerwähnte a-FoIgesteuerschaltung außer acht läßt
Die Arithmetiklogikschaltung 500 empfängt 36 Bits große Wörter (32 Informationsbits und 4 Paritätbits) von den Sammelleitungen X und Y, dargestellt bei 502, und überträgt ein durch arithmetische und logische Verknüpfungen ermitteltes Ergebniswort auf die Z-Sammelleitung 504. Die Z-Sammelleitung 504 wird selektiv über schaltbare Leitverbindungen mit den Eingängen von Wortspeicherregistern A, B, C und D verbunden, allgemein dargestellt bei 506. Die Z-Sammelleitung 504 ist außerdem mit einem Speicher 508 verbunden, der beispielsweise eine Kapazität von 8000 Wörtern hat und ausschließlich vom Direktor benutzt wird, und außerdem mit einem Eingaberegister 510, das verschiedene lokale Eingabe/Ausgabe-Pufferspeicher bedient, die gemeinsam bei 512 dargestellt sind.
Die Byte-Logikschaltung 516 sorgt für die logische Verarbeitung und Behandlung von Bytes (8 Bits plus Parität), die von der LJ-Sammellekung und der V-Sammelleitung empfangen und allgemein bei 518 dargestellt sind. Die Ergebnis-Bytes gehen zur W-Sammelleitung 520. Die W-Sammelteitung 520 ist über nicht dargestellte Torschaltungen mit den Eingängen der Register A und C der Registergruppe 506 und auch mit den Eingängen des Registers 510 verbunden, das den Pufferspeicher 512 bedient
Der E-Schalter 530 empfängt die Antworteinganjssignale vom Register 324 (F i g. 9) und andere Eingangssignale vom Direktorspeicher 508 und der Sammelleitung 532 (die vom Prozessor 10 in der F i g. 1 kommt). Ausgänge dieses Schalters werden auf die E-Schaitersammelleitung 534 übertragen, die Torschaltungen speist, die mit den Eingängen der Register A und C in der Registergruppe 506 verbunden sind. Die E-Schaltersammelleitung 534 speist auch Torschaltungen für den Anschluß an Eisgänge des Registers 5iO, das den lokalen E/A-Speicher 512 bedient
Die Register 506 speisen Verbindungstorschaltungen zu den Eingängen der Register 502.1, die Eingangssignale an die X-Sammelleitung und Y-Sammelleitung 502 und an die Register 518.1 liefern, welche U-Sammelleitung und V-Sammelleitung 518 speisen. Die Ausgangssignale des Speichers 512 gehen zum Register 540, das die X-Registersammelleitung 502.1 speist
Die Verlängerung 542 der V-Sammelleitung speist schaltbar den (Steuerfolge) Pufferspeicher 302 (F i g. 9). Die Sammelleitungsverlängerungen 544 des Registers 540 und die X-Sammelleitung speisen schaltbar die Eingangssammelleitung 548 des (Daten) Pufferspeichers 300.
Im Betrieb laufen Informationssignale schaltbar von den Registern 506 und 540 zu den Registern 518.1 und 502.1 zu den Sammelleitungen U, V, X und Y. Diese Sammelleitungen speisen schaltbar die arithmetischen und logischen Netzwerke 500 und 516 und die Pufferspeicher 300 und 302 im Speicheradapter SA, Ergebnisausgangssignale der Schaltungen 500,516 laufen schaltbar zu den Z- und W-Sammelleitungen.504,520, weiche die Register 506 und die Speicher 508 und 512 speisen. Der Speicher 512 speist das Register 540 und dieses den Pufferspeicher 300 (Fig.9) des Speicheradapters. Die Speicher 300 und 508 speisen den E-Schalter 530 und vervollständigen so das Schaltungsnetzwerk zu den Registern 506 und den Speichern 512.
Die bei 550 angegebene E/A-Kanalgruppe verkehrt mit Jiesem System über die Speicher 512 und die Zugriffsanforderungen 552 zum Steuerspeicher CS (F i g. 13).
F i g. 13 zeigt den Mikroprogramm-Steuerspeicher 600, der dem Steuerspeicher CS der Fi g. 2 entspricht und der zum Steuern der in der F i g. 12 dargestellten Schaltung dient. Dieser Festwertspeicher enthält Mikroinstruktionen in einer vorgegebenen Reihenfolge für die Bildung von Mikroprogrammen. Diese Mikroprogramme steuern die verschiedenen Schaltungen des Direktors (F i g. 12) und sorgen für die Durchführung der Abläufe in der a-Folgesteuerschaltung des erfindungsgemäßen Adapters SA (F i g. 9).
In jedem Direktorzyklus adressiert der Adreßwähler 602 einen ausgewählten Speicherplatz im Stcuerspeicher 600. Eine Mikroinstruktion aus diesem Speicherplatz wird in das Steuerspeicher-Datenregister 604· gesetzt und dazu benützt, die Abläufe der Direktorschaltungen (F i g. 12) in diesem Zyklus zu steuern. Wenn diese Mikroinstruktion zur a-FoIge gehört, können mit ihr auch die Anforderungsinformation in die Pufferspeicher 300 und 302 (F i g. 9) geliefert, die Kippschaltungen 362,364 »Anforderung aktiv« und »Anforderung berat« verriegelt oder eine Antwort aus dem Pufferspeicher 300 geholt werdea
Teilfelder der Laufenden Mikroinstruktion im Register 604 werden durch die Decodierschaltungen 606 decodiert, deren Ausgangssignale Gruppen von Steuerleitungen 608 und 610 betätigen. Die Leitungen 6CA.steuern die Direktorschaltkreise. Die Leitungen 610 steuern Sammelleitungsschaltungen zwischen dem Direktor und dem Adapter SA. Eine Wählschaltung »Nächster Zustand« bei 612 benutzt die Ausgangssignale des Registers 604 für den laufenden Zustand und andere bei 614 angedeutete Bedingungen über den gegenwärtigen Status als Eingangssignale zum Adreßwähler 602 für die nächste Adresse. So können uie Mikroinstruktionen im Steuerspeicher 600 in einer programmierten Reihenfolge automatisch adressiert werden.
Das Register 602 kann auch von einem der bei 620 gemeinsam dargestellten Register anstatt von der Steuerschaltung 612 für den nächsten Zustand geladen werden, unter Umständen, die durch die bei 622 allgemein dargestellten Unterbrechung-Prioritätswählschaltungen bestimmt werden. Von den Registern! 620 werden mehrere ausschließlich vom Direktor benutzt und es ist wenigstens ein Register für jeden der Kanäle 550 vorgesehen (Fig. '2). Wenn ein Kanal- oder ein interner Direktorprozeß einen Unlerbrechungszugriff zum Steuerspeichersystem 600, 602, 604 zugeteilt erhält, wild ein im zugehörigen Register 620 enthaltener Adreßwert an den Adreßwäfcier 602 übertragen und in diesem Zyklus als erste Mikroinstruktion einer Mikropro-
grammfolge benutzt, die zu der für die Bedienung des Kanals oder Prozesses erforderlichen Operation gehört. Die Register 620 werden beim Systemlauf und zu anderen Zeiten mit für die Einleitungsoperationen für die Bedienung des Direktors und jeden Kanals geeigneten Werten geladen. Durch Aktivierung der Schaltungen 622 wird das Register 624 initialisiert für die Anzeige der Identität des Kanals oder des Prozesses, der bedient wurde.
Die Leitungen 610 erweitern in Verbindung mit dem Register 624 die »Sa«-Steuerung auf den Speicheradapter der F i g. 9. Diese Leitungen führen Folgesteuersignale Sa zum Speicheradapter SA und steuern dadurch das Durchschalten in die Pufferspeicher 300 und 302 (F i g. 9), das Durchschalten vom Register 624 in das CHI D-Register 322 (F i g. 9) und das Register 310, das Verriegeln einer ausgewählten Kippschaltung 362 »Anforderung aktiv« und der Kippschaltung 364 »Anforderung bereit« (F i g. 9). Die Funktionen dieser Steuerleitungen
ίο sind in der nachfolgenden Tabelle einzeln aufgeführt.
Leitungsname Leitungsfunktion
ABI Initialisiert die Speicheradresse im Kanalzeiger 310 bei Unterbrechung so, daß sie auf den
Speicherplatz Null des zugehörigen Segmentes zeigt.
SAVE Initialisiert die Speicheradresse im Kanalzeiger 310 auf den Wert 4 für Rückhalteoperationen.
X-SA Überträgt die Anforderungsinformation von der Direktorsammelleitung X zum Pufferspei
cher 300 und erhöht die Speicheradresse im Kanalzeiger310.
ADR-SA Speichert die Anforderungsadresse im Abschnitt 3Ö4 des Pufferspeichers 300. Die Adresse
wird im Segment 304.1 gespeichert, bezeichnet durch CHID 322 an dem Segmentspeicherplatz 304.1.2(F ig. 10).
SA-ESW Überträgt den Inhalt des Registers 324 (F ig.9) an den Direktor-Schalter E (Fig. 12); erhöht
die Speicheradresse im Register 310 nach der Übertragung.
LS-SA Überträgt die Anforderungsinformation von einem Kanalpufferspeicher in der Gruppe 512
(Fig. 12) in die Pufferspeicher 300,302 (F ig.')).
SELECT Überträgt die Anforderungsinformation an den (Steuerfolge) Pufferspeicher 302; schaltet den
a-Zeiger 316 weiter; verriegelt die zugehörige Kippschaltung 362 »Anforderung aktiv« über die CHID-Register und ermöglicht das Verri!L£eln der Kippschaltung 364 »Anforderung bereit« in der nächsten Takt-Zeit Tl.
FA GibtdasfixeAdreßbitFAinden Pufferspeicher 302 zur Wahlzeit ein.
S Gibt das Anforderungsbit S in den Pufferspeicher 302 zur Wahlzeit ein.
WI Gibt das Breitenbit Wl in den Pufferspeicher 302 zur Wahlzeit ein; wenn der Wert des Bits
Wl = 1 ist, wird eine Speicheranforderung von einem Wort angezeigt.
W2 Gibt das Breitenbit W2 in den Pufferspeicher 302 zur Wahlzeit ein; W2= 1 bezeichnet eine
2-Wort-Anforderung; Wl und W2 beide Null bezeichnet eine Viererwort-Anforderung.
RESET Stellt die Bits FA. S, Wl, W2 in dem Pufferspeicher zurück.
Im Betrieb kann das obige System bei der Bedienung eines Kanalprozesses oder eines Direktorprozesses eine Speicherzugriffsanforderung zusammenstellen und diese in die Pufferspeicher 300, 302 des Adapters SA wäh-
rend der a-Zeitabschnitte eingeben. Die bei einer Unterbrechung erregte Leitung ABI überträgt das zugehörige CHID-Kennzeichen vom Register 624 (Fig. 13) zu den Registern 310 und 322. »ADR-SA« überträgt die Anforderungsadresse an den Pufferspeicher 300. Die Leitungen FA, S, Wl und W2 sowie die Wählleitung werden für die Übertragung der zugehörigen Anforderungssteuerinformation in den Pufferspeicher 302 an den Speicherplatz erregt, der durch den laufenden Inhalt des a-Zeigers 316 bezeichnet wird. Die Wählleitung erhöht
außerdem den a-Zeiger 316, verriegelt die zugehörige Kippschaltung »Anforderung aktiv« und bereitet die Verriegelung der Kippschaltung »Anforderung aktiv« und bereitet die Verriegelung der Kippschaltung »Anforderung bereit« bei der nächsten Takt-Zeit TI vor (siehe F i g. H) und bereitet so den Speicheradapter vor, daß er die b-Folgesteuerschaltungsoperationen einleiten kann, die für die Weiterleitung der Anforderung an die Kanalbussteuerung erforderlich sind.
Die Leitungen X-SA und LS-SA werden aktiviert für nie Übertragung der Anforderungsinformation vom Direktor und den Kanälen in die Pufferspeicher 300 und 302. Nach bestimmten Operationen dieser Leitungen wird eine wertniedere Position im Register 310 erhöht, so daß Datenwörter einer Speicheranforderung nacheinander in die ersten vier Datenwortsteilen eines Segments, wie des Segments 304.1 (Fig. 10) im Pufferspeicher 300 gesetzt werden, die durch den Teil des Registers 310 bezeichnet sind, der denselben Wert enthält, wie das Register 322.
Durch Abgeben der Wählsignale wird die Kippschaltung »Anforderung aktiv« verriegelt, welche zur Anforderungsquelle gehört, und die gemeinsame Kippschaltung »Anforderung bereit«. Dadurch wird ein Fortschalten der b-Steuersignalfolge des Speicheradapters eingeleitet Die b-Folgesteuerschaltung leitet dann die Anforderung von den Pufferspeichern 300 und 302 über die Eingabesammelleitung an die Kanaibussteuerung weiter.
Die Kippschaltung »Anforderung bereit« wird im Zustand Sb2 der b-Folgesteuerschaltung zurückgestellt, wenn der Wert in den Registern 316 und 318 identisch ist (a-Zeiger gleich b-Zeiger). Die im Register 312 (F i g. 9) während der b-Steuersignalfolge enthaltenen werthohen Bits (Segmentadresse) entsprechen dem CHID-Wert (Kanalidentität) im Halteregister 338 (F i g. 9). Die Segmentadressen in den Registern 310 und 312 sind daher nur identisch, wenn die auf die Eingangssammelleitung weitergeleitete Anforderung der zuletzt durch den Speicher-
M adapier vom Direktor und/oder den Kanälen empfangenen Anforderungen entspricht Umgekehrt bedeutet die Anzeige, daß diese Werte verschieden sind, daß eine zusätzliche Anforderung für die Verarbeitung in der b-Steuersignalfolge bereit ist und daher die Kippschaltung »Anforderung bereit« nicht zurückgestellt werden sollte.
Wenn eine Antwort über die Ausgangssammelleitung empfangen wird, steuert die c-Steuersignalfolge des Adapters SA die Rückstellung der Kippschaltung »Anforderung aktiv«, die zur Identität der jeweiligen Quelle (CHID) der zugehörigen Anforderung gehört. Durch das Rückstellen einer Kippschaltung »Anforderung aktiv« kann der Steuerspeicher Anforderungen der zugehörigen Quelle für die Bedienung auf Grund einer Unterbrechung an die Prioritätswählschaltung 622 weitergeben (F ig. 13). Wenn also eine Antwort im Pufferspeicher 300 verfügbar ist und die zugehörige Kippschaltung »Anforderung aktiv« ist zurückgestellt, erhält die zugehörige Quelle einen Unterbrechungszugriff zum Steuerspeichersystem 600, 602 und 604 zugeteilt, und kann daher die Antwort holen unter der Annahme, daß sie zum Empfang einer Antwort vorbereitet ist, d. h., daß ihre Anforderung für die Bedienung durch Unterbrechen aktiv ist und sie gegenüber anderen konkurrierenden Quellen Priorität hat. Bei solchen Operationen aktiviert das Steuerspeichersystem 600, 602,604 die Leitungen ABI und SA-E, um die Information der Antwort vom Adapter-Pufferspeicher 300 über das Register 324 (F i g. 9) und den E-Schalter530(Fig. 12) an den entsprechenden Direktor-oder Kanalschaltkreis übertragen zu lassen.
Die in der Fig. 15 dargestellte b-Folgesteuerschaltung wird im Zusammenhang mit den Fig.7 und 14
anschließend beschrieben. Das Sb-Register 700 liefert 8 verschiedene Ausgangszustanclsanzeigen SbI, Sb2
Sb8. Zu den Takt-Zeiten Tl (Fig. 14) werden Zustandswerte vom Register 700 in das Register 702 (Sb Spät) durch die Torschaltung 704 übertragen. Neue Zustandswerte können durch die Schaltung 706 in das Register 700 zu den Takt-Zeiten T4 eingegeben werden. Eine »erste Rückstellung« betätigt das UND-Glied 708 und setzt die Register 700 und 702 in den Zustand Sb1 zurück.
Die Schaltung 706 arbeitet entsprechend der folgenden Booleschen Wahrheitstabelle und setzt neue b-Steuersignalfolgezustände durch neue Werte im Register 700 fest.
Zustand des *)! ierbeigeführt durch:
Sb-Registers
INITRESET + RQRDY.(Sb4 + Sb8) + Sb3 ■ 5.(2nd TFR+ W2)]
RQ RDY(SbI+Sb4 + Sb8) + Sb3 -S ■ 2ndTFR · W2]
:Sb2 ■ XMlT ENABLE]
Sb3 -S-WI]
Sb3 - S - W1+Sb7 ■ XMITENABLE]
Sn5 · W2 ■ 2nd TFR]
Sb6]
Sb5 -(2ndTFR + W2)]
SbI T4.
Sb2 T4.
Sb3 T4.
Sb4 T4.
Sb5 T4.
Sb6 T4.
Sb/ T4.
Sb8 T4.
*) In dieser Spalte: §j
»■« bezeichnet »UND« ^ y
» + « bezeichnet »ODER« ξ
»Sb—«bezieht sich auf den Zustand »Sb Spät«. Il
Im Zustand SbI (162, F i g. 7) wird die Kippschaltung 364 »Anforderung bereit« (F i g. 9) abgefragt (siehe Test {1
164 in F i g. 7), um festzustellen, ob eine Anforderung in den Pufferspeichern 300 und 302(Fi g. 9) bereit ist. 40 ^
Wenn eine Anforderung bereit ist, überträgt die Steuersignalfolgelogikschaltung "06 einen zum Zustand Sb2 Cj
gehörenden Wert (166, F i g. 7) in das Sb-Register 700 zur Takt-Zeit T4. Bei diesem Eintritt in den Zustand Sb2 |
wird der Wert im b-Zeigerregister 318 (F i g. 9) erhöht, der Adreßwortteil der Anforderung (Adresse, S, FA, SP, |j
CHID) aus dem Pufferspeicher 300 geholt und in eines der Register 340.1 oder 340.2 gesetzt und aus dem Kj
Pufferspeicher 302 geholt und in das Register 338 gesetzt. Die Kippschaltung »Anforderung bereit« wird 45 | zurückgestellt (wenn die Zeiger a und b gleich sind), und die Erhöhungssperrkippschaltung 370 verriegelt (diese jjij
Kippschaltung wird im Zustand Sb8 oder bei Rückkehr zum Zustand SbI zurückgestellt). Durch das Verriegeln
der Erhöhungssperrkippschaltung wird der b-Zeiger 318 bei späteren Durchgängen durch den Zustand Sb2 für i|
diese Anforderung nicht mehr erhöht. fi
Bei jedem Durchgang durch den Zustand Sb2 wird die zugehörige Übertragungsfreigabeleitung von der 50 % Kanalbussteuerung zu diesem Adapter SA darauf abgefragt (168, Fig.7), ob die Kanalbussteuerung zum ,|
Empfang einer Anforderung bereit ist. Wenn sie nicht bereit ist, wird der Schritt Sb2 wiederholt, der b-Zeiger j
jedoch nicht erhöht. Wenn die KanaJbussteuerung zur Verfugung steht, wird der Wert im Register 700 zur Takt-Zeit T4 auf den zum Zustand Sb3 gehörenden Wert geändert (siehe 170,Fi g. 7).
Im ersten Durchgang durch den Zustand Sb3 (»zweite Übertragung« nicht gesetzt) wird die in einem der Register 340.1,340.2 festgehaltene Speicheradresse von diesem Register während eines vollen Zyklus auf die Eingangssammelleitung übertragen (durchgeschaltet). Gleichzeitig werden die zugehörigen im Register 338 festgehaltenen Bit-Funktionen — S, FA und CHfD — von diesem Register als Teil des Adreßwortes auf die Eingangssammelleitung übertragen und das ADR-Kennzeichen auf die Leitung 403 (F i g. 2) gesetzt Wenn es sich bei der Anforderung um eine Speicheranforderung handelt (S = I), werden die im nächsten Zyklus zu sendenden Daten (siehe F i g. 4) vom Pufferspeicher 300 in das »andere« der Register 340.1,340.2 gesetzt Wenn es sich um eine Abrufanforderung handelt (S=O), wird das EOT-Kennzeichen auf die Leitung 40.7 gesetzt (F i g. 2), während die Adresse gesendet wird.
Im Zustand Sb3 werden S, W und »Zweite Übertragung« in logischen Kombinationen für die Bestimmung des nächsten Zustandes von Sb abgefragt (Prüfungen 172,174,175, in F i g. 7). Wenn der Adreßteil eines Viererwort-Abrufes weitergeiehet wird (S, Wl, W2 alle Null und »zweite Übertragung« nicht gesetzt), wird »zweite Übertragung spät« gesetzt (nach der Takt-Zeit Tl) und die Prüfungen 172 und 174 steuern die Folgesteuerschaltung in den Zustand Sb2. Wenn der Adreßteil eines Doppelwortabrufes weitergeleitet wird (S=O, S2= 1 im
Zustand Sb3), steuern die Prüfungen 172 und 174 den Sb in den Anfangszustand SbI zur Takt-Zeit T4, wodurch die b-Steuersignalfolge für die Verarbeitung einer weiteren Anforderung vorbereitet wird, wenn eme solche verarbeitungsbereit ist.
Wenn der Zustand Sb2 über die Verzweigung 178 der Prüfung 174 (Verarbeitung eines Viererwort-Abrufes) erreicht wird, sind sowohl die »Erhöhungssperre« ais auch die »zweite Übertragung« eingeschaltet. Demzufolge wird der b-Zeiger 318 nicht erhöht und nur bei der nächsten Takt-Zeit Tl in den Zustand Sb3 weitergeschaltet (Übertragungsfreigabe kann nicht abfallen, während eine Abrufanforderung weitergeleitet wird). Im zugehörigen zweiten Durchgang vom Zustand Sb2 in den Zustand Sb3 werden die Kennzeichen QW und EOT gesendet (siehe 54, F i g. 3).
ίο Wenn die beim Eintritt in den ersten Durchgang durch den Zustand Sb3 verarbeitete Anforderung eine Speicheranforderung ist, verzweigt die Prüfung 175 die Steuersignalfolge entweder in den Zustand Sb4 (182, Fi g. 7), wenn eine Einzelwortanforderung verarbeitet wird, oder in den Zustand Sb5(186, Fig. 7), wenn mehrere Wörter angefordert werden. Im Zustand Sb4 wird das in einem der Register 340.1 oder 340.2 durch den Zustand Sb3 vorbereitete Datenwort an die Kanalbussteuerung über die Eingangssammelleitung mit einem Datenkennzeichen (DI wenn Bit 29 = 0, D2 wenn Bit 29 = 1) und dem EOT-Kennzeichen übertragen. Vom Zustand Sb4 kehrt die Steuersignalfolge in den Zustand Sb 1 zurück.
Im Zustand Sb5 wird ein entweder im Zustand Sb3 oder im Zustand Sb6 vorbereitetes Datenwort über die \i Eingangssammelleitung an die CBC mit dem Kennzeichen Dl oder D2 übertragen (D2 wenn Bit B = 1 im
M Register 338 eine Rückwärtsspeicheranforderur.g anzeigt; D! wenn die Anforderung keine Rückwärtsspeicher-
'f> 20 anforderung ist), und ein im nächster Zyklus zu sendendes Datenwort wird im Register 340.1 oder 340.2
& vorbereitet, abhängig davon, welches Register gerade nicht die Eingangssammelleitung speist. Im Zustand Sb5
,^ wird die Kippschaltung 366 für die »zweite Übertragung« und Bit W2 (im Register 338 festgehalten) darauf
J; abgefragt (Prüfung 188, F i g. 7), ob eine weitere Doppelwortübertragung erforderlich ist. Bit Wl ist implizit Null,
Λ weil Wl = 1 eine Einzelwortübertragung bezeichnet und die Verzweigung 175 zum Sb5 diese Möglichkeit
& 25 negiert. Wenn Bit W2 ebenfalls gleich Null ist, und damit eine Viererwort-Übertragung anzeigt, und die
Kippschaltung »zweite Übertragung« nicht gesetzt ist und damit anzeigt, daß nur zwei Datenwörter gesendet
wurden, verzweigt die Prüfung 188 den Steuersignalfolgezustand nach Sb6 (192, F i g. 7).
jp Im Zustand Sb6 wird das zweite im Zustand Sb5 vorbereitete Datenwort auf die Eingangssammelleitung
\ übertragen und das entsprechende Kennzeichen Dl oder D2 entsprechend dem Wert des B-Bits gegeben. Dieser
Β 30 Zustand dient auch der Vorbereitung des dritten Datenwortes, das als nächstes zu senden ist. Im Zustand Sb6
wird die Kippschaltung für die »zweite Übertragung Spät« im Zyklus gesetzt (nach der Takt-Zeit Tl).
Vom Zustand Sb6 läuft unbedingt die Steuersignalfolge zum Zustand Sb7 für die Ausführung eines Warteschrittes von wenigstens einem Zyklus, bevor die Übertragung des zweiten Paares von Datenwörtern dieser Viererwort-Speicherung eingeleitet wird (siehe F i g. 4). Wenn die Übertragungsfreigabeleitung aktiv ist (Prüfung 196 in Fig.7), verzweigt die Steuersignalfolge vom Zustand Sb7 in den Zustand Sb5 zurück und die Vorgänge des Zustandes Sb5 werden wiederholt, wodurch das dritte Datenwort mit entsprechendem Kennzeichen gesendet und das vierte Datenwort vorbereitet wird.
Aus dem Zustand Sb5 verzweigt die Steuersignalfolge zum Zustand Sb8, beim ersten Durchgang aus dem Zustand Sb5 für eine Doppelwortspeicherung oder beim zweiten Durchgang für eine Viererwort-Speicherung. Im Zustand Sb8 wird das letzte Datenwort mit EOT-Kennzeichen und mit zugehörigem D-Kennzeichen gesendet und die Kippschaltungen für »zweite Übertragung« und »Erhöhungssperre« werden zurückgessellt. Die Verzweigung 164 in dti F i g. 7 wird dann gewählt, entweder zum Zustand Sb2, wenn eine weitere Anforderung bereit ist, oder sonst zum Zustand SbI. Im Zustand SbI werden ebenfalls die Kippschaltungen für die »zweite Übertragung« und die »Erhöhungssperre« zurückgestellt.
Die in der Fig. 16 und im Zusammenhang mit den Fig. 8 und 9 beschriebene c-Folgesteuerschaltung hat vier Phasen und wird im Zustand Sei gestartet. Der laufende Steuersignalfolgezustand wird im Register 800 zur Takt-Zeit T6 festgelegt und über Torschaltungen 802 in ein Spät-Register 804 zur Takt-Zeit T3 übertragen. Das Spät-Register 804 bereitet die Steuersignalfolgefortschaltung 806 in Verbindung mit S, Wl, W2, »zweite Übertragung*« (Kippschaltung 368. F i g. 9) und CBC GRP Fortschaltung 40.1 (F i g. 2) vor. Die Logikschaltung 806 ändert selektiv den gegenwärtig im Register 800 festgehaltenen Zustandswert. S, Wl und W2 werden im Register 350 festgehalten (F i g. 9), das von einem Speicherplatz im Pufferspeicher 302 geladen wird, der durch den c-Zeiger 320 bezeichnet ist.
Der Zustand Sei (220, F i g. 8) kann durch die »Anfangsrückstellung« des UND-Gliedes 808 oder als der nächste Zustand nach dem Zustand Sc3 über die Verzweigung 228 in der F i g. 8 eingeleitet werden. Im Zustand Sei wird die Kippschaltung für die »zweite Übertragung*« (368 in F i g. 9) zurückgestellt und die Reihenfolge verzweigt gemäß der Abfühlung der CBC-Fortschaltung (40.1, F i g. 2; Früfung 222, F i g. 8).
Wie oben erläutert wurde, ist der Wert im c-Zeiger 320 (Fig.9) am Anfang derselbe wie in den a- und b-Zeigern 316 bzw.318 und wird nur erhöht, wenn eine Antwort verarbeitet wird. Demzufolge dient der Zustand Sei am Anfang dazu, auf eine Fortschaltung bezüglich der Antwort abzufragen, die zu der ersten aktivierten Anforderung gehört Bei Erkennung einer Fortschaltung wird der Wert im Register 800 auf den zum Zustand Sc2 gehörenden Wert geändert (siehe 224, F i g. 8).
Im Zustand Sc2 wird die zur Anforderungsquelle gehörende Kippschaltung »Anforderung aktiv« zurückgestellt (d. h, die durch den gegenwärtig im Register 350 festgehaltenen CHID-Wert bezeichnete Kippschaltung). Wenn die Antwort zu einer Abrufanforderung gehört, enthält sie zwei Datenwörter (ohne Markierungsbits), die zur Takt-Zeit Tl parallel in die Register 354.1 und 354.2 übertragen werden. Der Inhalt des Registers 354.1 wird im c-Zeitabschnitt (nächste Takt-Zeit T3) in den Pufferspeicher 300 übertragen und in dem ersten oder dritten Wortspeicherplatz des Segmentes gespeichert, der durch das CHID-Kennzeichen im Register 350 bezeichnet ist (der dritte Speicherplatz bei der zweiten Antwort auf einen Viererwort-Abruf; der erste Speicherplatz in
änderen Fällen). Beim Empfang der Antwort wird die Parität der im Register 350 enthaltenen Information geprüft und das CHID-Kennrteichen dieser Information mit einem CHID-Kennzeichen verglichen, das in der Antwort enthalten ist (wenn die beiden nicht identisch sind, wird ein Fehler angezeigt).
Wenn die zu verarbeitende Antwort zu einem Üoppelwortabruf gehört oder die Antwort die zweite Antwort eines Viererwort-Abrufpaares ist, wird der Paritätsprüfstatus der Antwortinformation in eine (nicht dargestellte) Prüfgruppe gesetzt und steht daher für die exierne Untersuchung zur Verfügung (z. B. durch den Direktor).
Vom Zustand Sc2 aus wird der Wert im Register 800 im nächsten Zyklus automatisch auf den «um Zustand Sc3 gehörenden Wert geändert. Wenn die Antwort zu einem Abruf gehört, wird das zweite Datenwort eines Antwortpaares vom Register 354.2 in den Pufferspeicher 300 übertragen und an dem ersten, zweiten oder vierten Wortspeicherplatz des Segmentes gespeichert, der durch das CHID-Kennzeichen im Register 350 to bezeichnet ist.
Der erste Speicherplatz wird bei einer Antwort auf einen Einzelwortabruf (WI = 1) gewählt und bezeichnet das zweite Wort des geholten Paares (Adreß-Bit 29 = 1); dadurch wird effektiv das erste Wort des Paares überschrieben. Der vierte Speicherplatz wird bei einer Antwort auf einen Viererwort-Abruf gewählt. Bei allen anderen Abrufantworten wird der zweite Speicherplatz gewählt.
Wenn keine weitere Antwort fällig ist. erhöht der Zustand Sc3 den c-Zeiger 320 und über die Verzweigung 228 läuft die Steuersignalfolge wieder in den Zustand Sei. Wenn eine weitere Antwort fällig ist (d.h., die zweite Hälfte der Antwort auf einen Viererwort-Abruf) führt die Verzweigung 228 zum Zustand Sc4. Dieser Zustand verriegelt die Kippschaltung 368 für die »zweite Übertragung*« und zeigt damit an, daß eine weitere Verarbeitung fällig ist und hei dem nächsten Fortschalten von der K.analbussteuerung {Prüfung 232, F i g. S) verzweigt die Steuersignalfolge in den Zustand Sc2. Die Operationen der Zustände Sc2 und Sc3 werden dann für die weiteren Antworteten wiederholt und die Steuersignalfolge kehrt zum Zustand Sei zurück.
Die Logik für die Fortschaltung 806 der c-Steuersignalfolge ist in der nachfolgenden Wahrheitstabelle aufgeführt.
Zustand des Erzeugt von
Sc-Registers
Sei T6. [(ADRESPRQD*) ■ Sc3) + (Sei · ADVDET) + (INlT RESET)]
Sc2 T6. ['(ADV DET)-(Sei+SC4)]
Sc3 T6. Sc2
Sc4 T6. [(Sc4 · ADV DET) + (Sc3 · AD RESP RQD)]
*) AD RESP RQD = QUAD · REQUEST · SECOND XFER.
Die logische Schaltung des Zeitablaufzählers für Prüfung auf Hängenbleiben ist in der Fig. 18 dargestellt, fl
besondere Fälle von Zeitabläufen sind in der F i g. 17 gezeichnet. Der CHlD-Generatorzähler 900 bezeichnet die CHID-Zuordnung der für die Zeitablaufzählung als nächste auszuwählenden Anforderungen (Rx). Die acht Ausgangszustände dieses Zählers sind mit RO bis R7 bezeichnet (Rx bezeichnet irgendeinen dieser 8 möglichen Zustände). Jede Ausgabeposition Rx bereitet ein zugehöriges Paar UND-Glieder 902 und 904 vor. Wenn ein Zustand Rx anliegt und die zugehörige Kippschaltung »Anforderung aktiv« ist nicht verriegelt, überträgt das zu Rx gehörende UND-Glied 902 über das ODER-Glied 908 zur nächsten Takt-Zeit T3 einen Rückstellimpuls an die Vier-Stellen-Schiebeschaltung 906. Die Rückstellung der Schiebeschaltung beendet wirksam eine Zeitabiaufzählung für die zu Rx gehörende Anforderung. Wenn Rx eingeschaltet ist und die zugehörige Kippschaltung »Anforderung aktiv« ist nicht verriegelt, wird das zugehörige UND-Glied 904 beim nächsten Takt-Zeitpunkt T5 für die Übertragung eines Erregungsschrittes an den Zähler 900 in die nächste Position (Rx +1) fortgeschaltet. Wenn andererseits Rx aktiv ist, aber die zugehörige Kippschaltung »Anforderung aktiv« ist verriegelt, wird die Schiebeschaltung 906 nicht zurückgestellt und auch der Zähler 900 nicht fortgeschaltet.
Das UND-Glied 912, vorbereitet durch die Signale »T6« und »nicht T5«, prüft nach einem Zeitgeberimpuls von beispielsweise 13,2 Millisekunden. Dieser Zeitgeber-Impuls kommt von außerhalb des Systems, z. B. vom Prozessor oder von einer anderen Quelle. Die Operationen des UND-Gliedes 912 verriegeln die Kippschaltung 914 in Intervallen von 13,2 Millisekunden, die wesentlich langer sind, als die Intervalle von 120 nsec des Direktors und der SA-Zyklen. Die Zeit von 13,2 Millisekunden ist nur ein Beispiel und kein spezieller Wert, sondern nur ein relativ sehr langes Intervall, bezogen auf die Zykluszeit des Direktors. Der Schaltvorgang zum Setzen der Kippschaltung 914 überträgt einen Erregungsschritt auf die Schiebeschaltung 906 und gibt so ein Einer-Bit in die wertniedere Stufe der Schiebeschaltung ein. Die Kippschaltung 914 verbleibt nur kurzzeitig verriegelt, weil durch das Schalten des UND-Gliedes 916 das sofortige Rückstellen der Kippschaltung 914 kurz nach dem Verriegeln bewirkt Wenn die Schiebeschaltung 906 nicht in den Intervallen zwischen dem Empfang der externen Zeitgeberimpulse von 13,2 Millisekunden zurückgestellt wird, schiebt sie das durch die Kippschaltung 914 eingegebene Bit schließlich in die werthöchste Position und zeigt damit ein Festhängen der Abläufe im Speicheradapter an.
Die Anzahl der Stufen im Schieberegister ist nicht kritsich. Der wesentliche Punkt besteht darin, daß die Anzahl von Stufen im Schieberegister und die Zeitspanne des Millisekunden-Zeitgebers zusammen eine Zeitsperrverzög^rung ausreichender Länge erzeugen, so daß die Maximalzeitprüfung ein echtes Hängenbleiben und nicht eine nur vorübergehende Systemverzögerung anzeigt.
Fall 1 (Fi g. 17) zeigt, daß die Schiebeschaltung zur Takt-Zeit T3 zurückgestellt wird und daß der CHID-Generatorzähler zur Zeit T5 fortgeschaltet wird, wenn die zu Rx gehörende Anforderung zur Zeit T3 nicht aktiv ist.
Fall 2 zeigt, daß die Rückstellung der Schiobeschaltung 906 und das Fortschalten des CHID-Zählers 900 gesperrt wird, wenn die zu Rx gehörende Anforderung zur Zeit T3 aktiv ist Wenn dieselbe Anforderung danach jedoch durch Sc2 inaktiv wird (F i g. 8), wird die Schiebeschaltung danach zurückgestellt und der Zähler fortgeschaltet Fall 3 zeigt, daß der Status »Hängengeblieben« angezeigt wird, wenn die zu Rx gehörende Anforderung kontinuierlich übe; die volle Periode von 52,8 Millisekunden (4 χ 13,2) aktiv geblieben ist
Die beschriebene Schaltung sorgt für die gleichzeitige Ausbildung von Warteschlangen sowohl der Anforderungen als auch der Antworten in den Pufferspeichern 300 und 302, die Übertragung der Anforderungen an die Kanalbussteuerung, den Empfang der Antworten von der Kanalbussteuerung und die Übertragung der in der Warteschlange stehenden Antworten an den Direktor.
to Mit Hilfsoperationen wird geprüft, ob jede empfangene Antwort tatsächlich zu der Anforderung gehört, die in derselben Reihenfolge weitergeleitet wurde wie die Antwort Dabei dürfen diese Hilfsoperationen die Hauptoperationen der Antwortverarbeitung weder verzögern noch stören.
Andere Hilfsoperationen zeigen ein mögliches Hängenbleiben der Abläufe an, ohne daß spezielle gegenseitige Abhängigkeiten bezüglich der Anforderungsleitfunktionen im Spiel sind.
Die Zeitmultiplexreihenfolge der Zeitabschnitte a, b und c (in der die entsprechenden Folgesteuerschaltungen die Pufferspeicher 300 und 302 adressieren), bietet einmalige Möglichkeiten der zeitlichen Verknüpfung zwischen dem a-Zeitabschnitt, in dem eine Anforderung in die Warteschlange eingereiht wird, und dem b-Zeitabschnitt, in dem der beschriebene Adapter diese Anforderung weiterleitet Wenn der gerade erwähnte a-Zeitabschnitt der Einreihung auftritt, während die b-FoIgesteuerschaltung im Zustand SbI steht und keine anderen früheren Anforderungen in der Warteschlange der Pufferspeicher 300,302 stehen, geht die b-Folgesteuerschaltung direkt weiter in den Zustand Sb2 (siehe F i g. 7 und 14) und beginnt dadurch sofort die. Verarbeitung der zugehörigen, gerade eingereihten Anforderungen
Hierzu 11 Blatt Zeichnungen

Claims (4)

Patentansprüche:
1. Adapter, der in einer Datenverarbeitungsanlage zur Anpassung zwischen einem Prozessor, der eine Gruppe von E/A-Kanälen bedient, und einer Speicherzugriffseinheit für den gemeinsam benutzten Hauptspeicher angeordnet ist, und in welchem Adapter die zu übertragende Information zwischengespeichert wird dadurchgekennzeichnet, daßer einen ersten Pufferspeicher (300) zum Zwischenspeichern von zu übertragenden Datenwörtern und Markierungsbits für die jeweiligen Datenwörter enthält, daß er einen zweiten Pufferspeicher (302)_zum Zwischenspeichern von den Datsnwörtern zugeordneten Steuersignalen betreffend zumindestens die Übertragungsbreite (W), die Anforderungsart (S), die Übertragungsrichtung yß)
ίο die Identität (CHID) der anfordernden Quelle (Kanal oder E/A-Prozessor) und die Bezeichnung des wertniedersten Bits der von der anfordernden Quelle an den Adapter gelieferten Adreßinformation (29) enthält, und daß er zeitlich koordinierte Folgesteuerschaltungen (330,332) aufweist, die im Zeitmultiplex sowohl Anfragen des E/A-Prozessors (16.1) aus den Kanälen (16.1.1) über die Pufferspeicher (300,302) an den Hauptspeicher (12) als auch Antworten aus dem Hauptspeicher (12) über die Pufferspeicher (300,302) an den E/A-Pro-
zessor (16.1) asynchron verarbeiten.
2. Adapter nach Anspruch 1, dadurch gekennzeichnet, daß er
erste Register (340.1,340.2) zum Übertragen von Anforderungen vom Pufferspeicher (300) an die Speicherzugriffseinheit (14),
zweite Register (354.1,354.2) zum Übertragen von den Anforderungen zugeordneten Antworten des Hauptspeichere (1?) an den Pufferspeicher (300) und ein
drittes Register (324) zum Übertragen der Antworten vom Pufferspeicher (300) an den E/A-Prozessor (161) enthält. *
3. Adapter nach Anspruch K dadurch gekennzeichnet, daß er einen Vergleicher (356) für den Vergleich des in den zweiten Registern (354.1,354.2) enthaltenen Identitätskennzeichens (CHID), das die Antwort beglei-
tet, mit dem in einem vierten Register (350) zurückbehaltenen Bezugsidentitätskennzeichens der zugeordneten Anforderung enthält, wobei der Vergleicher (356) durch Ausgangssignale der Folgesteuerung (332) gesteuert wird.
4. Adapter nach Anspruch 1, dadurch gekennzeichnet, daß er eine Zeitablaufprüfschaltung (390) enthält, die nach vorbestimmter Vererbeitungszeit überfällige Antworten auf Anforderungen ermittelt und einem
überwachenden Konsol-Prozessor (18) mitteilt
DE2828731A 1977-07-05 1978-06-30 Adapter Expired DE2828731C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/813,408 US4110830A (en) 1977-07-05 1977-07-05 Channel storage adapter

Publications (2)

Publication Number Publication Date
DE2828731A1 DE2828731A1 (de) 1979-01-25
DE2828731C2 true DE2828731C2 (de) 1986-03-20

Family

ID=25212295

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2828731A Expired DE2828731C2 (de) 1977-07-05 1978-06-30 Adapter

Country Status (12)

Country Link
US (1) US4110830A (de)
JP (1) JPS5414646A (de)
AU (1) AU516791B2 (de)
BE (1) BE868111A (de)
BR (1) BR7804335A (de)
CA (1) CA1102005A (de)
CH (1) CH634671A5 (de)
DE (1) DE2828731C2 (de)
ES (1) ES471407A1 (de)
FR (1) FR2397014A1 (de)
GB (1) GB1591778A (de)
IT (1) IT1109961B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3048414A1 (de) * 1979-12-26 1981-09-17 Honeywell Information Systems Inc., 02154 Waltham, Mass. "schaltungsanordnung fuer eine datenverarbeitungsanlage"

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5466048A (en) * 1977-11-07 1979-05-28 Hitachi Ltd Information processor
JPS5533213A (en) * 1978-08-31 1980-03-08 Oki Electric Ind Co Ltd Information processing system
US4384327A (en) * 1978-10-31 1983-05-17 Honeywell Information Systems Inc. Intersystem cycle control logic
DE2849371A1 (de) * 1978-11-14 1980-05-29 Siemens Ag Verfahren zur uebertragung von informationen zwischen einrichtungen einer indirekt gesteuerten vermittlungsanlage, insbesondere fernsprechvermittlungsanlage
US4268906A (en) * 1978-12-22 1981-05-19 International Business Machines Corporation Data processor input/output controller
US4293908A (en) * 1979-01-31 1981-10-06 Honeywell Information Systems Inc. Data processing system having direct memory access bus cycle
US4334287A (en) * 1979-04-12 1982-06-08 Sperry Rand Corporation Buffer memory arrangement
US4237447A (en) * 1979-05-02 1980-12-02 Burroughs Corporation Speed independent selector switch for digital communication networks
US4287563A (en) * 1979-11-13 1981-09-01 Motorola, Inc. Versatile microprocessor bus interface
US4342081A (en) * 1979-12-12 1982-07-27 Honeywell Information Systems Inc. Tape device adapter
US4330844A (en) * 1979-12-12 1982-05-18 Honeywell Information Systems Inc. Logic timing system for tape device adapter
US4320456A (en) * 1980-01-18 1982-03-16 International Business Machines Corporation Control apparatus for virtual address translation unit
US4371929A (en) * 1980-05-05 1983-02-01 Ibm Corporation Multiprocessor system with high density memory set architecture including partitionable cache store interface to shared disk drive memory
CA1162315A (en) * 1980-07-11 1984-02-14 Venu Chari Message protocol module
US4426679A (en) 1980-09-29 1984-01-17 Honeywell Information Systems Inc. Communication multiplexer using a random access memory for storing an acknowledge response to an input/output command from a central processor
US4410942A (en) * 1981-03-06 1983-10-18 International Business Machines Corporation Synchronizing buffered peripheral subsystems to host operations
US4435762A (en) 1981-03-06 1984-03-06 International Business Machines Corporation Buffered peripheral subsystems
US4574349A (en) * 1981-03-30 1986-03-04 International Business Machines Corp. Apparatus for addressing a larger number of instruction addressable central processor registers than can be identified by a program instruction
US4484263A (en) * 1981-09-25 1984-11-20 Data General Corporation Communications controller
AU559558B2 (en) * 1982-06-30 1987-03-12 Elxsi I/o channel bus
US4564899A (en) * 1982-09-28 1986-01-14 Elxsi I/O Channel bus
US4805090A (en) * 1985-09-27 1989-02-14 Unisys Corporation Peripheral-controller for multiple disk drive modules having different protocols and operating conditions
US5010476A (en) * 1986-06-20 1991-04-23 International Business Machines Corporation Time multiplexed system for tightly coupling pipelined processors to separate shared instruction and data storage units
JPS63290733A (ja) * 1987-05-22 1988-11-28 Nippei Toyama Corp 包装用金属化フィルムの加工法
JPS6470858A (en) * 1987-09-11 1989-03-16 Hitachi Ltd Data transfer system
US5142670A (en) * 1988-07-26 1992-08-25 International Business Machines Corporation Method and apparatus for calculating disk-access footprints for use in selecting a storage management method
JP2743608B2 (ja) * 1991-03-27 1998-04-22 日本電気株式会社 共有レジスタ制御方式
US6044225A (en) * 1996-03-13 2000-03-28 Diamond Multimedia Systems, Inc. Multiple parallel digital data stream channel controller
US11947978B2 (en) 2017-02-23 2024-04-02 Ab Initio Technology Llc Dynamic execution of parameterized applications for the processing of keyed network data streams
US10831509B2 (en) 2017-02-23 2020-11-10 Ab Initio Technology Llc Dynamic execution of parameterized applications for the processing of keyed network data streams

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3623008A (en) * 1963-12-31 1971-11-23 Bell Telephone Labor Inc Program-controlled data-processing system
BE755034A (fr) * 1969-08-19 1971-02-19 Siemens Ag Installation de traitement d'informations a commande centrale programmepar memoire
US3699530A (en) * 1970-12-30 1972-10-17 Ibm Input/output system with dedicated channel buffering
US3804987A (en) * 1972-03-13 1974-04-16 Honeywell Inf Systems Multiplexing apparatus having interlaced and/or parallel data transfer with a data processor and communication lines
US3936803A (en) * 1973-11-19 1976-02-03 Amdahl Corporation Data processing system having a common channel unit with circulating fields
US3934232A (en) * 1974-04-25 1976-01-20 Honeywell Information Systems, Inc. Interprocessor communication apparatus for a data processing system
IT1027384B (it) * 1975-01-28 1978-11-20 Cselt Centro Studi Lab Telecom Dispositivo di indirizzamento per uno stadio di commutazione temporale di una centrale telefonica elettronica
IT1030280B (it) * 1975-03-06 1979-03-30 C Olivetti Ing Calcolatore elettronico con dispositivo per lo scambio di blocchi di carattere tra una memoria operativa ed un unita periferica
US4006466A (en) * 1975-03-26 1977-02-01 Honeywell Information Systems, Inc. Programmable interface apparatus and method
US4012719A (en) * 1975-04-11 1977-03-15 Sperry Rand Corporation Communication multiplexer module

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3048414A1 (de) * 1979-12-26 1981-09-17 Honeywell Information Systems Inc., 02154 Waltham, Mass. "schaltungsanordnung fuer eine datenverarbeitungsanlage"

Also Published As

Publication number Publication date
JPS5741733B2 (de) 1982-09-04
FR2397014A1 (fr) 1979-02-02
DE2828731A1 (de) 1979-01-25
CH634671A5 (de) 1983-02-15
ES471407A1 (es) 1979-01-16
IT7821592A0 (it) 1978-03-24
CA1102005A (en) 1981-05-26
FR2397014B1 (de) 1980-10-10
IT1109961B (it) 1985-12-23
BR7804335A (pt) 1979-04-10
US4110830A (en) 1978-08-29
AU3630478A (en) 1979-11-22
GB1591778A (en) 1981-06-24
AU516791B2 (en) 1981-06-25
BE868111A (fr) 1978-10-02
JPS5414646A (en) 1979-02-03

Similar Documents

Publication Publication Date Title
DE2828731C2 (de) Adapter
DE2162806C2 (de) Speichersteuereinheit zur vereinfachter Pufferung von Anforderungen der Ein- Ausgabekanäle
DE2719247C3 (de) Datenverarbeitungssystem
DE2241257C3 (de) Datenverarbeitende Anlage
DE3248215C2 (de)
DE2652303C2 (de) Datenverarbeitungssystem bestehend aus mehreren Subsystemen
DE3114961C2 (de)
EP0115609B1 (de) Schaltungsanordnung zur Adressierung der Speicher mehrerer datenverarbeitender Einrichtungen in einem Mehrprozesssorsystem
DE2646296C3 (de) Elektronische assoziative Mehrrechner Schaltungsanordnung mit einem modularen Aufbau
DE2635592A1 (de) Multiprozessor-abrufsystem
DE3137627C1 (de) Anordnung zur schnellen Nachrichtenuebertragung zwischen Rechnern
DE2421229C2 (de) Digitale Datenverarbeitungsanlage
DE2523372B2 (de) Eingabe-ZAusgabe-Anschlußsteuereinrichtung
DE2063195C2 (de) Verfahren und Einrichtung zur Operationssteuerung einer Anzahl von externen Datenspeichern
DE2454613C2 (de) Kanaleinheit für die Steuerung der Datenübertragung auf einer Vielzahl von Kanälen zwischen den peripheren Einrichtungen und dem Hauptspeicher einer digitalen Datenverarbeitungsanlage
DE1524111C3 (de) Elektronische Datenverarbeitungsanlage
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE1499206B2 (de) Rechenanlage
EP0306693B1 (de) Modular strukturiertes digitales Kommunikationssystem
CH634938A5 (de) Einrichtung fuer die weiterleitung von speicherzugriffsanforderungen.
DE3013064C2 (de) Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher
DE1954202B2 (de) Elektronische digitale Datenverarbeitungsanordnung
DE2749884C2 (de)
EP0447769A2 (de) Verfahren und Schaltungsanordnung zur Verwaltung gleicher Einheiten sowie Vermittlungselement
DE2517525A1 (de) Signalisierungsidentifizierer

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8128 New person/name/address of the agent

Representative=s name: RUDOLPH, W., PAT.-ASS., 7030 BOEBLINGEN

8125 Change of the main classification

Ipc: G06F 13/00

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee