DE2530599A1 - Steuerung von ein/ausgabe-geraeten - Google Patents

Steuerung von ein/ausgabe-geraeten

Info

Publication number
DE2530599A1
DE2530599A1 DE19752530599 DE2530599A DE2530599A1 DE 2530599 A1 DE2530599 A1 DE 2530599A1 DE 19752530599 DE19752530599 DE 19752530599 DE 2530599 A DE2530599 A DE 2530599A DE 2530599 A1 DE2530599 A1 DE 2530599A1
Authority
DE
Germany
Prior art keywords
signal
gate
memory
cycle
trigger
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19752530599
Other languages
English (en)
Other versions
DE2530599C2 (de
Inventor
Ronald Eugene Bodner
Thomas Lee Crooks
John Edward Guest
Israel Ben Magrisso
Minn Rochester
Keith Kenneth Slack
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 DE2530599A1 publication Critical patent/DE2530599A1/de
Application granted granted Critical
Publication of DE2530599C2 publication Critical patent/DE2530599C2/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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/282Cycle stealing DMA

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)

Description

Böblingen, den 2. Juli 1975
Anmelderin: International Business Machines
Corporation, Armonk, N. Y. 10504
Amtliches Aktenzeichen: Neuanmeldung Aktenzeichen der Anmelderin: RO 974 008
Steuerung von Ein/Ausgabe-Geräten
Die Erfindung betrifft eine Steuerung gemäß Oberbegriff des Anspruchs 1.
E/A-Geräte, die auf der Basis der prioritätsgesteuerten Zykluszuordnung im zugeordneten Betrieb arbeiten, haben oft eine andere Datenrate als die Datenspeicher-Zugriffszyklen. Vom Speicher zum E/A-Gerät über die ZE übertragene Daten können daher verlorengehen, wenn das E/A-Gerät sie nicht schnell genug benutzen kann. Die bisherigen Lösung dieses Problemes bestand in der Pufferung der Daten in der das E/A-Gerät steuernden Steuereinheit. Es kann jedoch eine beträchtliche Pufferung erforderlich werden, so bald der Unterschied zwischen den Datenraten groß ganug wird.
Die Pufferung kann kostspielig werden und auf Kosten der Systemelemente gehen.
Die Aufgabe der Erfindung besteht in der Erstellung eines verbesserten Steuergerätes in einem Computersystern und eines Verfahrens zur Steuerung von E/A-Geräten, von denen einige im zugeordneten Betrieb und andere im nicht zugeordneten Betrieb und prioritätsgesteuert arbeiten.
509885/0924
Die Aufgabe der Erfindung wird gemäß der Kennzeichen der Patentansprüche gelöst. In der vorliegenden Erfindung gibt es eine Pufferung nur im begrenzten Ausmaß von einer Stufe und die Steuereinheit für das E/A-Gerät ist so gebaut, daß sie prioritätsgesteuerte Zyklusanforderungen gruppiert und einen piroritätsgesteuerten Zyklus zwischen Gruppen freigibt, wodurch Steuerungen so geschaltet werden, daß dieser freigegebene prioritätsgesteuerte Zyklus einem anderen E/A-Gerät zugeteilt werden kann. Dadurch wird das Ausmaß der Pufferung reduziert, die sonst erforderlich wäre und es v/erden Systemelemente für ein anderes E/A-Gerät freigesetzt, welches auf Bedienung v/artet, und dadurch die Gesamtleitung des Computersystems verbessert.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher beschrieben.
Es zeigen:
Fig. 1 - in einem Blockdiagramm ein die Erfindung enthaltendes Computersystem,
Fign. 2A, 2B zusammen gemäß Fig. 11 in einem Schemadiagraram und 2C die Steuerschaltung für den Einzelpunktbetrieb
und die prioritätsgesteuerte ZyklusZuordnung,
Fign.3a u. 3b, in einem Schemadiagramm die Steuerschaltung des
wobei Fig.3a „. , , , .,
links von Fig.3b Exnzelpunktadapters ,
Fig.4a u. 4b, schematisch die Steuerschaltung im Erweiterungswobei Fig.4a . ,
links von Fig.4b teix'
liegt .
Fig. 6 in einem Diagramm die zeitlichen Beziehungen
bei der Anforderung eines im Einzelpunktbetrieb laufenden Gerätes und dem Empfang von Speicherzyklen mit maximaler Datenrate,
RO 974 008
609885/Ö924
Fig. 7 in einem. Diagramm die zeitlichen Bedingungen für
die Datenübertragung zum Speicher durch die Anschlußeinheit für das Einzelpunktgerät,
Fig. 8 in einem Diagramm die zeitlichen Beziehungen
für die Datenübertragung vom Speicher in der Anschlußeinheit für das Einzelpunktgerät,
Fig. 9 in einem Diagramm die zeitlichen Beziehungen
für den Fall, daß der überlassene Speicherzyklus nicht benutzt wird,
Fig. IO in einem Diagramm die zeitlichen Beziehungen
für den Fall, daß der Anschluß für das im Einzelpunktbetrieb laufende Gerät die Speicherzyklusanforderungen nicht gruppiert und
Fig. 11 die relative Lage der Fign. 2a, 2b und 2c.
Fig. 1 zeigt ein Computersystern mit einem Speicher 10, einer zentralen Verarbeitungseinheit 20 nachfolgend ZE 20 genannt, zur Datenübertragung won und zum Speicher 10, zwischen der ZE 20 und dem Einzelpunktgeräteanschluß 75 einen Zwischenspeicher 40 und zwischen der ZE 20 und dem E/A-Gerät und der Anschlußeinheit 180 einen Erweiterungszwischenspeicher 130. Daten werden von der ZE 20 an die Zwischenspeicher 40 und 10 über die SystemausgangsSammelleitung 11 gesendet. In ähnlicher Weise werden Daten von den Zwischenspeichern 40 und 130 über die Systemeingangssammelleitung 12 an die ZE 20 übertragen. Die Sammelleitungen 11 und 12 bestehen aus Leitungen für 8 Informationsbit in Byteform plus einem Paritätsbit. Außer den Sammelleitungen 11 und 12 sind noch verschiedene Steuerleitungen zwischen der ZE 20 und den Zwischenspeichern 40 und 13O vorgesehen, die im einzelnen im Zusammenhang mit Fig. 2 beschrieben werden. Der Einzelpunktbetrieb ist
RO 974 OO8
5 0 9 8 8 5/092 /♦
definiert als die Art, in der Datenübertragungen zwischen dem Hauptspeicher und einem E/A-Gerät erfolgen. Im Einzelpunktbetrieb benutzt das E/A-Gerät ausschließlich die E/A-Interface und kein anderes E/A-Gerät kann Information über diese Interface übertragen oder empfangen.
Der Zwischenspeicher 40 in Fig. 2 besteht aus dem Datenpuffer 41 zum Puffern von jeweils einem Datenbyte und einer Steuerlogik 42 für den Einzelpunktbetrieb und die prioritätsgesteuerte Zykluszuordnung.
Der Datenpuffer 41 speichert vorübergehend ein vom Speicher 10 übor die durch das UND-Glied 32 dargestellten UND-Glieder übertragenes Datenbyte. Das UND-Glied 32 wird vorbereitet durch die Ausgabe : des UND-Gliedes 33, welches ein Ausgangssignal jedes Mal liefert, so bald Daten an die System-Ausgangssammelleitung 11 zu übertragen sind. Das UND-Glied 33 empfängt einen Eingang vom Inverter 34^ der ein Ausgangssignal liefert, wenn ein später zu beschreibendes Signal CSY TRG fehlt. In diesem Fall wird das Datenbyte in den Puffer 41 geladen unter Steuerung der Steuerlogik 42 und insbesondere des UND-Gliedes 67 über das ODER-Glied 69. Das Datenbyte ; im Puffer 41 kann dann an den Einzelpunkt-Geräteanschluß 75 übertragen werden. Dasselbe Datenbyte kann auch von der ZE 20 an den ; Erweiterungs-Zwischenspeicher 130 übertragen werden. Die Steuerun-f
gen im Erweiterungsspeicher 130 bestimmen, ob das Byte zu laden ist oder nicht.
Der Datenpuffer 41 speichert auch vorübergehend ein Datenbyte, ; das vom Einzelpunkt-Geräteanschluß 75 kommt. In diesem Fall wird der Puffer 41 unter Steuerung des Inverters 70 und des UND-Gliedes 68 über das ODER-Glied 69 geladen. Die Daten im Puffer 41 werden an den Speicher 10 über UND-Glieder, die durch das UND-Glied 35 dargestellt sind, in die ZE 20 übertragen. Das UND-
RO 974 008
509805/0924
Glied 35 wird vorbereitet durch das Ausgangssignal des UND- \ Gliedes 36, welches mit anderen Eingängen Eingangssignale von
den Invertern 37 und 38 empfängt. \
Die in den Puffer 41 vom Datenspeicher 10 eingegebenen Datenbytes !können Befehle vom Betrieb der Einzelpunkteinheit 125 oder Daten < [sein, die von dieser Einheit zu benutzen sind. Die Einzelpunkt-ίeinheit 125 kann jede E/A-Einheit sein, die mit einer hohen ; Datengeschwindigkeit arbeiten kann, wie beispielsweise ein ;Plattenspeicherantrieb. Die Lese-, Schreib- und Abfragekommandos, 'die in der ZE 20 unter Programmsteuerung erzeugt werden, werden über den Zwischenspeicher 40 an den Einzelpunkt-Geräteanschluß 75 übertragen. Die Einzelpunkteinheit 125 oder der Plattenspeicherantrieb ist von allgemein bekannter Bauart. Wenn das Programm ,einmal bekannte Lese-, Schreib- oder Abfragekommandos gibt, betätigt der Einzelpunkt-Geräteanschluß 75 den Plattenspeicherantrieb 125 in der zugeordneten Art und Weise, außer wenn er Speicherzyklen freigibt, die er nicht gebrauchen kann. Dadurch können andere E/A-Geräte, wie beispielsweise das E/A-Gerät 140, die ebenfalls mit prioritätsgesteuerter ZyklusZuordnung arbeiten können, den freigegebenen Speicherzyklus belegen. Das E/A-Gerät 140 ist darstellungsgemäß an den Erweiterungs-Zwischenspeicher 130 angeschlossen, es hätte jedoch auch an den Zwischenspeicher 40 angeschlossen werden können.
Die vom Einzelpunkt-Geräteanschluß 75 über den Zwischenspeicher 40 empfangenen Befehle werden in das Befehlsregister 105 unter Steuerung eines Befehlsregister-Ladesignales auf der Leitung eingegeben. Der Befehl wird vom Befehlsdecodierregister 107 als Lese-, Schreib- oder Abfragebefehl decodiert. Der decodierte Befehl wird an das UND-Glied 108 weitergeleitet, welches bei Empfang eines Signales vom ODER-Glied 109 den Trigger 110 setzt. Das Einschalt-Ausgangssignals des Triggers 110 ist ein Blockprozessor-
RO 974 008
509885/0924
253Ü599 — — 6 —
! Taktsignal. Der Einzelpunkt-Geräteanschluß 75 reagiert also auf j ! den Befehl durch Erzeugung eines Blockprozessor-Taktsignales auf ! i der Leitung 71 in den Fign. 2 und 3, welches an das ODER-Glied i
ι " -ι
! 43, das UND-Glied 44 und den Inverter 45 der Steuerlogik 42 in i ! Fig. 2 angelegt wird. j
1 Das Blockprozessor-Taktsignal wird durch das ODER-Glied 43 an die ZE- Takt- Sperr- und Vorschaltlogik 21 und an den T8-Trigger 22 in der ZE 20 weitergeleitet. Die Logik 21 besteht aus konventionellen UND/ODER-Gliedern zur Ausführung logischer Funktionen, mit denen bestimmt wird, wann die ZE-Taktsteuerungen 23 gestoppt und gestartet werden können. Die ZE-Taktsteuerungen 23 enthalten Trigger zur Erzeugung der Zeitabschnitte TO bis T6. Diese Zeitabschnitte werden in der ZE für verschiedene Funktionen, einschließlich des Abrufes und Ausführens von Befehlen benutzt. Einzelheiten der ZE sind der Einfachheit halber nicht dargestellt, die ZE 20 enthält jedoch die konventionelle maschinelle Ausrüstung zum Betreiben eines Computersystems unter Programmsteuerung. Die Logikschaltung 21 liefert also ein Signal auf die Leitung 24, um den ZE-Takt 23 nach Abschluß eines Befehls zu sperren und so einen zugeordneten Betriebszustand herbeizuführen.
Der Taktgeber 23 liefert ein Zeitsignal T6 über die Leitung 25 und ein Taktvorschaltsignal über die Leitung 26 an die Logikschaltung 21, um dieser anzuzeigen, wann sie den Taktgeber stoppen und startenkann. Diese beiden Signale werden an die Logikschaltung 21 gegeben, weil bei der Ausführung einiger Befehle der Taktgeber durch die Zustände TO bis T6 vorschaltet und bei der Ausführung anderer Befehle nicht, und in diesem Fall wird das Taktvorschaltsignal an die Logikschaltung 21 gesendet. Wenn der ZE-Taktgeber 23 gestoppt ist, liefert er ein Takt-Ausschaltsignal an das UND-Glied 27, welches außerdem ein Signal von der Logikschaltung 21 empfängt und auf diese Signale durch Weiterleiten
RO 974 008
509885/0924
eines Zeitsignales T7 auf der Leitung 28 einen Trigger 22 in ; der ZE 20, an die UND-Glieder 44 und 46 in der Steuerlogik 42, an den Einzelpunkt-Geräteanschluß 75 und an den Erweiterungszwischenspeicher 130 reagiert.
Der Trigger 22 wird nicht direkt durchgeschaltet, sondern das vom UND-Glied 27 weitergeleitete Signal T7 ist ein Vorbereitungssignal. Die Steuerlogik 42 spricht auf das Signal T7 an und
- dadurch wird die Verriegelung 47 über das UND-Glied 44 verriegelt. Das UND-Glied 44 war durch das Blockprozessor-Taktsignal vom Einzelpunkt-Geräteanschluß 75 und durch Fehlen eines erweiterten Zyklustriggersignales auf der Leitung 31 vom erweiterten Zyklustrigger 48 vorbereitet worden. Der Inverter 49 spricht auf das Fehlen des erweiterten Zyklustriggersignales an und liefert ein Vorbereitungssignal an das UND-Glied 44. Das Signal von der Plattenverriegelung 47 wird auf der Leitung 50 an den Einzelpunkt-Geräteanschluß 75 gesendet, um anzuzeigen, daß er Speicherzyklen anfordern kann. Ob der Einzelpunkt-Geräteanschluß 75 zu dieser Zeit einen Speicherzyklus anfordert, hängt davon ab, ob er gerade in einem Betriebszustand arbeitet, in dem er die Speicherzyklen sofort benutzen könnte.
Das Zeitdiagramm in Fig. 5 zeigt einen Zustand des Einzelpunkt-Geräteanschlusses 75, in dem er die Speicherzyklen nicht benutzen kann. Die Speicherzyklen werden durch Erzeugen von Zykluszuordnungs-Genehmigungssignalen über das UND-Glied 101 und das ODER-Glied 102 in Fig. 3 freigegeben, um Speicherzyklen für den Erweiterungs-Zwischenspeicher 130 zu liefern.
Die Zykluszuordnungs-Genehmigungssignale werden vom Einzelpunkt-Geräteanschluß 75 an das ODER-Glied 58 in der Steuerlogik 42 geleitet. Der Ausgang des ODER-Gliedes 58 ist mit dem Takteingang des Triggers 48 verbunden. Der Dateneingang zum Trigger wird vorbereitet durch die Ausgabe des UND-Gliedes 49 vor dem Ende des Zykluszuordnungs-Genehmigungssignales. Das UND-Glied
RO 974 008
5 09885/0924
leitet aufgrund des erweiterten Zyklusanforderungssignales auf der Leitung 132 und des Plattenbetriebsignales auf der Leitung 50 ein Signal weiter. Wenn der Trigger 48 eingeschaltet ist,
liefert er ein erweitertes Zyklus-Triggersignal auf der Leitung 131 an den Erweiterungs-Zwischenspeicher 130. Wenn der Trigger 48 aufgrund eines erweiterten Zyklus-Anforderungssignales auf der Leitung 132 vom Erweiterungs-Zwischenspeicher 130 eingeschaltet ist, wird der Speicherzyklus-Anforderungstrigger 52 über das UND-Glied 60 und das ODER-Glied 51 eingeschaltet, wodurch das Speicherzyklus-Anforderungssignal an die ZE 20 gesendet wird. j
Das Speicherzyklus-Anforderungssignal schaltet den T8-Trigger ; 22 ein zur Einleitung eines Speicherzyklus über die Speicher- j taktsteuerung 30, Der Speicherzyklus wird vom Erweiterungs- ; Zwischenspeicher 130 belegt. Während dieser Zeit wird die Verriegelung 67 durch die Ausgangssignale des Triggers 48 und des Inverters 62 zurückgestellt, die über das UND-Glied 61 und das ODER-Glied 63 laufen. Somit geht der Betrieb vom Einzelpunkt- i Betrieb in den erweiterten Zyklusbetrieb über, und nachdem der Speicherzyklus abgeschlossen ist, kehrt der Betrieb in den Einzelpunktbetrieb zurück, in dem die Verriegelung 47 über das UND-Glied 44 verriegelt wird. Der Trigger 48 wird am Ende des Speicherzyklus zurückgestellt, weil sein Dateneingang vom UND- , Glied 59 nicht erfüllt ist und der nächste Taktimpuls durch das ODER-Glied 58 über das UND-Glied 64 veranlaßt die Rückstellung. Obwohl in diesem speziellen Ausführungsbeispiel nur ein Speicher- ; zyklus freigegeben wird, können natürlich auch mehrere Zyklen ; freigegeben werden, wenn der Geschwindigkeitsunterschied zwischen dem Datenspeicher 10 und dem Einzelpunkt-Gerät 125 so ist, daß der Einzelpunkt-Geräteanschluß 75 so ausgelegt werden kann, daß mehr als ein Speicherzyklus freigegeben wird. Wenn der Speicherzyklus beispielsweise doppelt so schnell ist und die Geschwindigkeit des Einzelpunktgerätes 125 dieselbe bleibt, dann könnten mindestens zwei Speicherzyklen freigegeben werden.
RO 974 008
509885/09 24
[> Wenn der Einzelpunkt-Geräteanschluß 75 immer noch nicht zur j Benutzung des nächsten Speicherzyklus bereit ist, wird die I Operation in der beschiebenen Weise wiederholt. Wenn der j Einzelpunkt-Geräteanschluß 75 jedoch den nächsten Speicher- ; zyklus benuten kann, schaltet er den Zyklus-Anforderungstrigger '72, in Fig. 3, im Einzelpunkt-Geräteanschluß 75 ein. Das Zyklus- ; Anforderungssignal auf der Leitung 73 wird durch das ODER-Glied 51 auf den Dateneingang des Speicherzyklus-Anforderungstriggers ■ 52 geleitet, der dann eingeschaltet wird, wenn das A-Phasensignal von den Phasentaktgebern 29 an den Takteingang des Triggers gelegt wird. Die Ausgangssignale vom Trigger 52 werden an den T8-Trigger und die Logikschaltung 22 angelegt, um deren Triggerteil einzuschalten. Der T8-Trigger und die Logikschaltung : liefern darstellungsgemäß ein T8-Zeitsignal an die Speichertaktsteuerungen 30, zusammen mit einem durch die UÜD-Verknüpfung des Blockprozessor-Taktsignales und des T7-Zeitsignales gebildeten logischen Signal.
Die Speichertaktsteuerung 30 gibt Adreßwahlsignale über die Sammelleitung 14 an den Speicher 10 und ein CSY-Triggersignal auf die Leitung 31 zum Rückstellen des Speicherzyklus-Anforderungstriggers 52 über das ODER-Glied 53. Dieses Signal bildet auch den DAteneingang zum Speicher-Abfragetrigger 54, der durch das A-Phasensignal von den Phasentaktgebern 29 getaktet wird. Das CSY-Triggersignal auf der Leitung 31 wird ebenfalls an den Einzelpunkt-Geräteanschluß 75 und den Erweiterungs-Zwischenspeicher 130 gesendet,.um einen ablaufenden Speicherzyklus anzuzeigen. Der jetzt eingeschaltete Speicher-Abfragetrigger liefert ein Signal an das UND-Glied 55, welches zu dieser Zeit durch ein Signal von der Plattenverriegelung 47 vorbereitet ist und wenn das CSY-Triggersignal inaktiv wird, iliefert der Inverter 57 ein Signal, wodurch das UND-Glied 55 ein Abfragesignal auf der Leitung 56 an den Einzelpunkt-Geräteanschluß 75 weiterleitet. Das Abfragesignal ist ein durch den Einzelpunkt-Geräteanschluß 75 zum Laden von Daten in das Datenpufferregister 74 benutztes Taktsignal, wenn eine Schreib- oder Abfrage-
RO 974 008
50988S/0924
operation stattfindet. Das Schreib- oder Abfrage-Befehlsignal wird zusammen mit dem Abfragesignal auf der Leitung 56 an das UND-Glied 76 angelegt, dessen Ausgabe durch das ODER-Glied 77 ;weitergeleitet wird, um das Laden des Daten-Pufferregisters 74 ,zu steuern.
,Wenn das Abfragesignal auf das Leitung 56 endet, wird über den Inverter 78 ein Signal an den Takteingang des Triggers 79 gegeben, um diesen Trigger zurückzustellen, der über das UND-Glied 80 eingeschaltet wurde. Das UND-Glied 80 hat einen Eingang zum Empfang eines Schreib- oder Abfragebefehles und einen Eingang von der Position 5 des Bitringes 81. Die Übertragung vom Speichertrigger 79 kann jedoch erst zurückgestellt v/erden, wenn das UND-Glied 82 ein Taktdatensignal liefert. Das UND-Glied 82 liefert das Taktdatensignal nur, wenn der Bytezähler 83 anzeigt, daß die notwendigen Speicherzyklen belegt wurden.
Speicherzyklen können natürlich auch während des Lesebetriebes genommen v/erden, in diesem Fall werden jedoch Daten vom Einzelpunkt-Geräteanschluß 75 zum Speicher übertragen. Ein Lesebefehl wird auf die Leitung 84 gegeben, zur Vorbereitung des UND-Gliedes 85, welches auch ein Signal von der Position 3 des Bitringes 81 empfängt, so daß es ein Ausgangssignal liefert, um die Übertragung vom Speichertrigger 87 einzuschalten. Der Einschaltausgang des Triggers 87 bereitet die UND-Glieder 88 bzw. 89 vor.
Das UND-Glied 88 wird vorbereitet durch ein Einzelpunkt-Betriebsignal auf der Leitung 50 und durch ein Signal von der Position des Bitringes 81. Somit leitet das UND-Glied 88 ein Signal über das ODER-Glied 90 zum Einschalten des Triggers 72. Das UND-Glied 89 wird zu dieser Zeit nicht vorbereitet, weil hierzu ein negiertes Einzelpunkt-Betriebsignal vom Inverter 91 und ein Signal von der Position 6 des Bitringes 81 erforderlich ist. Das negierte Einzelpunkt-Betriebsignal vom Inverter 91 liegt natürlich nicht an, wenn ein Einzelpunkt-Betriebssignal auf die Leitung 50 gege-
RO 974 008
509885/0924
,ben wird. Solange also der Trigger 72 eingeschaltet ist, steht i auf der Leitung 73 ein Einzelpunkt-Zyklusanforderungssxgnal zur Verfügung. Der Einzelpunkt-Gerätesanschluß 75 ist so konstruiert, 'daß Speicherzyklus-Anforderungen gruppiert werden, wodurch jeder !vierte Speicherzyklus freigegeben wird, und das geschieht durch : Rückstellen des Triggers 72 zum entsprechenden Zeitpunkt.
Wenn der vom Einzelpunkt-Geräteanschluß 75 genommene Speicherzyklus während der Bitringzeit 6, 7 oder O auftritt, ist genügend Zeit für die nächsten Speicherzyklus und für eine Speicherzyklus-Anforderung für den nachfolgenden Speicherzyklus, ohne daß Daten verloren gehen. Die Positionen O, 6 und 7 vom Bitring 81 werden somit auf das ODER-Gleid 92 geleitet und seine Ausgabe an das UND-Glied 93 angelegt. Die Ausgabe des UND-Gliedes 93 wird über das ODER-Glied 94 an den Taktdateneingang des Triggers 72 angelegt, wodurch dieser durch das Triggersignal CSY auf dem Leiter 31 zurückgestellt wird. Wenn der Trigger 72 zurückgestellt ist, liefert er ein vorbereitendes Einschaltsignal an das UND-Glied 95, welches außerdem das Triggersignal CSY auf dem Leiter 31 empfängt. Die Ausgabe des UND-Gliedes 95 ist ein Genehmigungssignal für die prioritätsgesteuerte ZyklusZuordnung, welches durch das ODER-Glied 102 über die Leitung 96 an die Steuerlogik 42 angelegt wird.
Wenn der Speicherzyklus für die übertragung von Daten zum Speicher angefordert wurde, wurde der Trigger 72 unter Steuerung des ODER-Gliedes 97 zurückgestellt, das Eingänge von den Positionen 0, 1 und 2 des Bitringes 81 empfängt. Der Ausgang des ODER-Gliedes 97 ist mit einem Eingang des UND-Gliedes 98 verbunden, das auch einen Eingang vom Einschaltausgang des Triggers 87 empfängt. Der Ausgang des UND-Gliedes 98 wird an den Takt-Dateneingang des Triggers 72 über das ODER-Gleid 94 angelegt.
Wenn der erzeugte Zyklus durch den Erweiterungszwischenspeicher 130 benutzt wird, wird das Einzelpunkt-Betriebssignal auf der
RO 974 008
B 0 9 8 8 S / 0 9 2 A
Leitung 50 fallengelassen und somit bereitet der Inverter 91 ; die UND-Glieder 98 und 99 vor. Wie bereits gesagt, wird das ; UND-Glied 89 vorbereitet durch den Einschaltausgang der Übertragung zum Speicherträger 87 und das UND-Glied 89 durch den Einschaltausgang der übertragung vom Speichertrigger 79. Abhängig von der Richtung der Datenübertragung wird also entweder das UND-Glied 89 oder das UND-Glied 99 vorbereitet. Das UND-Glied
j 89 leitet jedoch ein Signal zum Einschalten des Triggers 72
erst zur Bitringzeit 6. Das UND-Glied 99 leitet ein Signal zur ■ Bitringzeit 5. Wenn der erweiterte Zyklus nicht genommen wurde, liegt das Einzelpunkt-Betriebssignal weiter auf der Leitung 50 : und der Träger 72 wird entweder über das UND-Glied 88 oder über das UND-Glied 100 eingeschaltet, abhängig davon, ob der Trigger 87 oder der Trigger 79 eingeschaltet ist. Das UND-Glied 88 wird zur Bitringzeit 7 vorbereitet, das UND-Glied 100 zur Bitringzeit 6. Abhängig davon, ob der genehmigte Zyklus von dem Erweiterungs- | Zwischenspeicher 130 benutzt wird oder nicht, besteht ein zeit- ! licher Unterschied in der Anforderung des nächsten Speicherzyklus .j
Es gibt Zeiten, zu denen der Einzelpunkt-Geräteanschluß 75 die Speicherzyklen nicht benutzen kann und das ist primär der Fall, wenn die Taktgeber des Plattenspeicherantriebs synchronisiert | werden. Während dieser Zeit erzeugt der Einzelpunkt-Geräteanschluß 75 ein Wartesignal, das an das UND-Glied 101 angelegt wird. Der Plattenspeicherantrieb 125 liefert ein Dateischreibtaktsignal j an das UND-Glied 101, welches dann als Ausgangssignal über das i ODER-Glied 102 das Genehmigungssignal für die prioritätsgesteuer-: te ZyklusZuordnung liefert.
Der Einzelpunkt-Geräteanschluß 75 gestattet also, prioritäts- ; gesteuerte ZyklusZuordnungen zu anderen E/A-Geräten, wenn er den nächsten verfügbaren Speicherzyklus nicht benutzen kann. Die Reihenfolge zur Anforderung von Speicherzyklen beginnt, so bald ein Lese-, Schreib- oder Abfragebefehl vorliegt. Diese Befehle stammen aus der Ausführung des Programmes in der ZE 20. .
RO 97-4 008
509885/0924
_ ι Ο _
Die ZE 20 sendet einen Befehl auf der System-Sammelausgangsleitung 11 an den Zwischenspeicher 40 aus. Der Befehl wird im Datenpuffer 41 festgehalten und von dort über die MPXPO-Datenausgangs-Sammelleitung 16 an das Datenpufferregister 74 und ein Befehlsregister 105 angelegt. Das Datenpufferregister 74 wird zu dieser Zeit nicht geladen, weil kein Puffer-Ladebefehl vom ODEPv-Glied 77 vorliegt. Das Befehlsregister 105 wird geladen, weil der Einzelpunkt-Geräteanschluß 75 ein Register-Ladebefehlssignal auf die Leitung 106 gibt. Der Inhalt des Befehlsregister 105 wird durch die Befehlsregister-Decodierschaltung 107 decodiert. Die Decodierschaltung 107 liefert eigentlich mehrere verschiedene Kommandos, der Einfachheit halber ist hier jedoch nur gezeigt, daß sie ein Lese-, Schreib- oder Abfragekommando liefert. Jeder dieser Befehle wird dann an das UND-Glied 108 angelegt, das einen Eingang vom ODER-Glied 109 empfängt und mit seinem Ausgangssignal den Trigger 110 einschaltet, um ein Blockprozessor-Taktsignal auf die Leitung 71 zu geben. Das ODER-Glied 109 empfängt einen Sektorimpuls und einen Indeximpuls vom Plattenspeicherantrieb 125.
Wenn beispielsweise ein Lesebefehl vorliegt, werden Daten vom Plattenspeicherantrieb gelesen und in einen Serien/Parallel-Wandler 111, kurz SERDES 111 genannt, über die Leitung 112 eingegeben. Die Daten gelangen bitweise in den SERDES 111. Wenn ein Bit im SERDES 111 steht, wird es unter Steuerung des ODER-Gliedes 113 verschoben, das Eingänge von den UND-Gliedern 114 und 115 empfängt. Das UND-Glied 114 liefert zu dieser Zeit das Schiebesignal, weil es ein Lesebefehlssignal und ein Datei-Lesetaktsignal vom Plattenspeicher 125 empfängt. Wenn ein Schreibbefehl vorliegt, liefert das UND-Glied 115 das Schiebesignal zum bitweisen Ausschieben der Daten aus dem SERDES 111.
Nachdem in einer Leseoperation im SERDES 111 ein Datenbyte zusammengesetzt worden ist, wird es unter Steuerung des Pufferladesignales , das vom UND-Glied 116 über das ODER-Glied 77 kommt,
RO 974 008
509885/0924
in das Datenpufferregister übertragen. Das UND-Glied 116 empfängt ein Signal von der Position 7 des Bitringes 81 und ein Lesebefehlsr signal. Das Datenbyte im Pufferregister 74 wird dann über die j Leitschaltung 117, die durch das UND-Glied 118 vorbereitet wird, in das Register 41 übertragen. Das Register 41 wird unter Steuerung des ODER-Gliedes 69 in der Steuerlogik 42, in Fig. 2, geladen. Das UND-Glied 118 in Fig. 3, empfängt Lesebefehle und ein Einzelpunkt-Betriebssignal auf der Leitung 50. Der ZE 20 und dem Zwischenspeicher 40 wird die Richtung der Datenübertragung vom UND-Glied 119 mitgeteilt, welches ein Einzelpunkt-Betriebssignal auf der Leitung 50 und ein Signal vom Ausgang der Übertragung vom Speichertrigger 79 empfängt. Wenn also das UND-Glied 119 ein Lese/Schreib-Auswahlsignal auf die Leitung 120 gibt, wissen die ZE 20 und der Zwischenspeicher 40, daß die Daten von der ZE 20 zu den Einzelpunkt-Geräteanschluß 75 übertragen werden. Wenn auf der Leitung 120 kein Lese/Schreib-Auswahlsignal liegt, wissen die ZE 20 und der Zwischenspeicher 40, daß Daten vom Einzelpunkt-Geräteanschluß 75 an die ZE 20 übertragen werden.
Die Speicheradresse sind in nicht dargestellten Arbeitsregistern in der ZE 20 enthalten. Die die Speicheradressen enthaltenden Arbeitsregister werden durch das UND-Glied 121 ausgewählt, das ein Einzelpunkt-Betriebssignal auf der Leitung 50 und ein Datei-Identifizierungszeitsignal aus dem Einzelpunkt-Geräteanschluß 75 empfängt. Die Ausgabe des UND-Gliedes 121 ist ein Arbeitsregister-Wahlsignal, das direkt an die ZE 20 gesendet wird, um das die gewünschte Speicheradresse enthaltende richtige Arbeitsregister auszuwählen. Das Datenbyte im Register 41 wird dann über die Systeseingangs-Sammelleitung 12 an die ZE 20 übertragen und in den Speicher 10 an der durch die Adresse im ausgewählten Asrbeitsregister angegebenen Stelle eingesetzt. Die Adressierung erfolgt eigentlich durch übertragung der Adresse vom ausgewählten Arbeitsregister in ein nicht dargestelltes Speicheradreßregister.
RO 974 008
509885/0924
War der vorliegende Befehl ein Schreibbefehl, so werden die durch den Plattenspeicherantrieb 125 zu schreibenden Datenbytes im Speicher 10 adressiert und über die ZE 20 zum Zwischenspeicher 40 in das Register 41 über die Systemausgangssammenlleitung 11 übertragen. Das Datenbyte im Register 41 wird über die Sammelleitung 16 übertragen und in das Datenpuffer-Register 74 unter Steuerung des UND-Gliedes 76 durch das ODER-Glied 77 eingegeben, das ein Signal zum Laden des Puffers liefert, wenn die Schreiboperation ablaufen soll. Das Datenbyte im Pufferregister 74 wird an den Serdes 111 unter Steuerung des UND-Gliedes 122 übertragen, welches ein Schreib- oder Abfragebefehlssignal und ein Signal von der Position 7 des Bitringes 81 empfängt. Die Daten werden dann bitweise unter Steuerung des UND-Gliedes 115 durch das ODER-Glied 113 aus dem Serdes 111 ausgeschoben. Jedes aus dem Serdes 111 ausgeschobene Datenbit wird an das UND-Glied 123 angelegt, das durch ein Schreibleitsignal aus dem Einzelpunkt-Geräteanschluß 75 vorbereitet ist. Das durch das UND-Glied 123 geleitete Datenbit wird dann an die Schreibschaltung des Plattenspeicherantriebes 125 angelegt.
Der Bytezähler 80 verfolgt die Anzahl von Bytes, die während einer Lese- oder Schreiboperation gelesen, bzw. geschrieben werden sollten. Wenn der Plattenspeicherantrieb 125 die richtige Anzahl von Bytes geschrieben hat, gibt der Bytezähler 83 ein Signal an das UND-Glied 82, welches den Trigger 79 zur Rückstellung vorbereitet. Die Übertragung vom Speichertrigger 79 wird dann zurückgestellt, wenn der Inverter 78 ein Signal an den Takteingang des Triggers 79 gibt. Bei einer Leseoperation liefert der Bytezähler 83 in ähnlicher Weise ein Signal an das UND-Glied 86, das die Übertragung zum Speichertrigger 87 zur Rückstellung vorbereitet, nachdem die richtige Anzahl von Bytes von der Platte auf dem Plattenspeicherantrieb 125 gelesen worden ist. Der Trigger 87 wird dann zurückgestellt, wenn das Triggersignal CSY auf der Leitung 31 nicht mehr anliegt. Der Inverter 124 spricht auf das Fehlen dieses Signales an, indem er ein Signal zur Rückstellung
RO 974 008
5 09885/09? /,
des Triggers 87 liefert.
! Nimmt man jetzt an, daß entweder das UND-Glied 95 oder das UND-Glied 102 ein Ausgangssignal an das ODER-Glied 102 gibt, dann steht auf der Leitung 96 das Genehmigungssignal zur prioritätsgesteuerten Zykluszuordnung zur Verfügung, welches an das ODER-■ Glied 58 in Fig. 2 angelegt wird. Dessen Ausgabe ist ein Takt- ! signal zum Einschalten des erweiterten Zyklustriggers 48, der zum Einschalten durch ein Signal vom UND-Glied 59 vorbereitet ist. Das UND-Glied 59 hat einen Eingang zum Empfang des erweiterten Zyklusanforderungssignales vom Erweiterungs-Zwischenspeicher 130 über die Leitung 132 und einen Eingang von der Plattenverriegelung 47. Der erweiterte Zyklustrigger 48 kann auch über das UND-Glied 46 eingeschaltet werden, wenn der Erweiterungs-Zwischenspeicher 130 im prioritätsgesteuerten Zyklus-Zuordnungsbetrieb läuft und der Einzelpunkt-Geräteanschluß 75 nicht im Einzelpunktbetrieb läuft. Der Erweiterungs-Zwischenspeicher liefert ein erweitertes Blockprozessor-Taktsignal über die Leitung 133 zum UND-Glied 46 und zum ODER-Glied 43. Das UND-Glied 56 empfängt außerdem ein Signal T7 vom UND-Glied 27 und ein Signal vom Inverter 45.
Der Einzelpunkt-Geräteanschluß 75 liefert zu diesem Zeitpunkt kein Blockprozessor-Taktsignal. Mit dem Ausgangssignal des erweiterten Zyklustriggers 48 wird die Plattenverriegelung 47 zurückgestellt, und zwar über das UND-Glied 61, das ein Eingangssignal vom erweiterten Zyklustrigger 48 und einem Eingang vom Inverter 62 empfängt, der mit dem Ausgang des Speicherabfragetriggers 54 verbunden ist. Die Ausgabe des UND-Gliedes 61 wird an das ODER-Glied 63 angelegt, um die Plattenverriegelung 47 zurückzustellen. Der Speicherzyklus-Anforderungstrigger 42 wird
in diesem Fall unter Steuerung des UND-Gliedes 60 eingeschaltet, das einen Eingang zum. Empfang des erweiterten Zyklus-Anforderungssignales und einen Eingang zum Empfang des erweiterten Zyklus-Triggersignales auf der Leitung 131 hat. Wenn der Speicherzyklus-
RO 974 008
509885/0924
Anforderungstrigger 52 gesetzt ist, werden der Trigger TS und die Schaltung 22 eingeschaltet und ein Speicherzyklus in der vorher beschriebenen Art belegt. Das Triggersignal CSY liefert die Dateneingabe für den Speicherabfragetrigger 54, der von der Hinterflanke des Taktimpulses der Phase A eingeschaltet wird. Wenn das Triggersignal CSY nicht mehr anliegt, wird der Trigger 54 durch den Taktimpuls Phase A zurückgestellt.
Der Inverter spricht auf das Fehlen des Triggersignales CSY an, indem er ein Signal an das UND-Glied 64 liefert, das auch ein Signal vom Trigger 54 und das erweiterte Zyklustriggersignal vom Erweiterungs-Zwischenspeicher 130 empfängt. Der Ausgang des UND-Gliedes 64 bildet einen Takteingang zum erweiterten Zyklustrigger 48 über das ODER-Glied 58. Die Dateneingabe des Triggers 48 ist zu dieser Zeit nicht vorhanden, weil die Plattenverriegelung 47 zurückgestellt wurde und daher die Leitbedingungen des UND-Gliedes 59 nicht erfüllt sind. Somit wird der erweiterte Zyklustrigger 48 durch das Taktsignal vom UND-Glied 64 zurückgestellt. Wenn der erweiterte Zyklustrigger 48 zurückgestellt ist, wird das UND-Glied 44 über den Inverter 49 vorbereitet und der Einzelpunkt-Geräteanschluß 75 kann die Plattenverriegelung 47 direkt verriegeln, so daß der nächste Speicherzyklus belegt wird. Wenn der Einzelpunkt-Geräteanschluß 75 den Einzelpunktbetrieb nicht wieder aufgenommen hätte, würde der erweiterte Zyklustrigger 48 über das ODER-Glied 65 zurückgestellt, wenn der Erweiterungs-Zwischenspeicher 130 kein erweitertes Blockprozessor-Taktsignal auf die Leitung 133 mehr liefert. Unter diesen Umständen liefert der Inverter 66 das Signal zur Rückstellung des erweiterten Zyklustriggers 48.
Die vorliegende Erfindung gestattet also dem E/A-Gerät und dem Anschluß 140 über den Erweiterungs-Zwischenspeicher 130 die Belegung von Speicherzyklen sowohl im Einzelpunktbetrieb als auch in anderen Betriebsarten. Wenn der Einzelpunkt-Geräteanschluß 75 im Einzelpunktbetrieb arbeitet, wird dem E/A-Gerät und Anschluß 140 ein Speieherzyklus jedes Mal genehmigt, wenn
RO 974 008
509885/0924
der Einzelpunkt-Geräteanschluß 75 ein Genehmigungssignal für die prioritStsgesteuerte ZyklusZuordnung gibt. Wenn der Anschluß 75 nicht im Einzelpunktbetrieb läuft, kann das E/A-Gerät unter Anschluß 140 Speicherzyklen über die Zwischenspeicher 130 und 140 selbständig anfordern und empfangen.
Zum Erweiterungs-Zwischenspeicher 130 gehört eine Steuerschaltung, die für die Anforderung und Verarbeitung von prioritätsgesteuerten Speicherzyklus-Zuordnungsoperationen für das E/A-Gerät und den Anschluß 180, gemäß Darstellung in Fig. 4, erforderlich ist. Ein an den Erweiterungs-Zwischenspeicher 130 über die System-Ausgangssammelleitung 11 angelegter Lese- oder Schreibbefehl wird in der Befehlsdecodierschaltung 134 decodiert, nachdem er unter Steuerung eines Ladebefehlssignales auf der Leitung 168 geladen wurde. Die Befehlsdecodierschaltung 134 erzeugt ein E/A-Anschluß-Auswahlsignal auf der Leitung 135, welches zusammen mit einem entsprechenden Signal zur Bezeichnung der Richtung der Datenübertragung (Schreibanforderungssignal auf der Leitung 136 zum Leiten von Daten zum E/A-Gerät; Leseanforderungssignal auf der Leitung 137 zum Leiten von Daten vom E/AGerät zum Speicher) an das E/A-Gerät 180 weitergeleitet wird.
Wenn das E/A-Gerät für die Datenübertragungsoperation bereit ist, leitet es ein E/A-Wahlsignal auf der Leitung 138, das durch das UND-Glied 140 mit dem Schreibanforderungssignal auf der Leitung 136 oder dem Leseanforderungssignal auf der Leitung 137 über das ODER-Glied 139 verknüpft wird. Der Ausgang des UIJD-Gliedes ist ein erweitertes BPC-Signal auf das Leitung 131. Wenn der Einzelpunkt-Geräteanschluß 75 nicht im Einzelpunktbetrieb läuft, wird das BPC-Signal auf der Leitung 133 als Blockprozessor-Taktsignal, durch das in Fig. 2 gezeigte ODER-Glied 43 weitergeleitet, um die ZE-Taktgeber 21 zu stoppen. Wenn die ZE-Taktgeber 21 gestoppt haben, wird in der ZE 20 das Signal T7 auf der Leitung 28 erzeugt, um anzuzeigen, daß sie zur Ausführung von prioritätsgesteuerten Speicherzyklus-Zuordnungsoperationen bereit ist.
RO 974 008
50988-5/0924
Wenn der Einzelpunkt-Geräteanschluß 75 der Pig. I bereits im Einzelpunktbetrieb läuft, ist T7 schon aktiv und die Anforderungen des E/A-Gerätes und Anschlusses 180 werden durch die bereits beschriebene Genehmigungsfunktion honoriert.
Das UND-Glied 140 bereit auch das UND-Glied 114 vor. Das UND-Glied 144 empfängt auch das Signal T7, ein Signal vom Inverter 169 und ein Bedienungsanforderungssignal auf der Leitung 143. Der Inverter 163 empfängt seinen Eingang von der Verriegelung 158, die vor dem Beginn der prioritätsgesteuerten Speicherzyklus-Zuordnungsoperation über den Inverter 156 zurückgestellt wurde, als das E/A-Auswahlanschlußsignal auf der Leitung 135 inaktiv war. Wenn E/A-Gerät und Anschluß 180 für die prioritätsgesteuerte Speicherzyklus-Zuordnungsoperation bereit sind, wird das Bedienungs-Anforderungssignal auf der Leitung 143 zum UND-Glied 144 aktiviert, das dann das erweiterte CSR-Signal auf der Leitung 132 zum Zwischenspeicher 40 erzeugt. Das erweiterte Zyklustriggersignal auf der Leitung 131 vom Zwischenspeicher 40 zeigt an, daß die ablaufende Operation zum Erweiterungs-Zwischenspeicher gehört. Das erweiterte Zyklus-Triggersignal speist die UND-Glieder 141 und 142, mit denen die Signale Lese/Schreibauswahl bzw. LSR-Auswahl erzeugt werden. Diese UND-Glieder empfangen auch Leitsignale vom UND-Glied 140 und vom Inverter 145, der aktiv ist, wenn das Einzelpunkt-Betriebssignal auf der Leitung 50 fehlt. Das UND-Glied 142 ist daher aktiv, wenn das erweiterte Zyklus-Triggersignal auf der Leitung 131 aktiv ist. Das UND-Glied 141 empfängt ein Lese-Anforderungssignal über die Leitung 137. Das Lese/Schreib-Auswahlsignal wird daher nur während der erweiterten Zyklus-Triggerzeit aktiviert, wenn es sich um eine Leseoperation handelt.
Wenn eine Daten-Leseoperation vorliegt, setzen das E/A-Gerät und der Anschluß 180 ein zu übertragendes Datenbyte auf die Dateneingangssammelleitung 167, bevor das Bedienungs-Anforderungssignal auf der Leitung 143 erzeugt wird. Der Erweiterungs-Zwischenspeicher
RO 974 008
509885/n <),/ /,
130 erzeugt dann ein Lese-Abfragesignal über das UND-Glied 155, das ein Bedienungs-Anforderungssignal auf der Leitung 143, ein Phasensignal A, ein Lese-Anforderungssignal auf der Leitung 137 und ein Signal vom Inverter 152 empfängt, der aktiv ist, sobald das Triggersignal CSY auf der Leitung 31 nicht aktiv ist. Das Lese-Abfragesignal leitet dann das Datenbyte durch das UND-Glied 147 in ein Datenübertragungsregister 148. Die Daten v/erden anschließend auf die System-EingangsSammelleitung 12 über das UHD-
Glied 170 geleitet, welches durch das erweiterte Zyklustrigger- ' signal auf der Leitung 131 gesteuert wird. Ein Bedienungs-Ant- I wortsignal auf der Leitung 162 wird dann zum E/A-Gerät und An- j Schluß 180 über das ODER-Glied 159 vom UITD-Glied 160 geleitet, | welches das Lese-Anforderungssignal auf der Leitung 137, das ; Triggersignal CSY auf der Leitung 31 und das erweiterte Zyklus- ! Triggersignal auf der Leitung 131 empfängt. Das Bedienungs-Antwortsignal zeigt dem E/A-Gerät und Anschluß 180 an, daß das Datenbyte empfangen wurde und das nächste Datenbyte auf die Dateneingangssammelleitung 167 gesetzt werden kann. Das auf die System-: Eingangssamme!leitung 12 gesetzte Datenbyte wird während der Triggerzeit CSY in den Speicher geschrieben.
Der beschriebene Prozeß läuft weiter, bis das E/A-Gerät und Anschluß 180 feststellen, daß der belegte Speicherzyklus für das ; letzte Byte der Operation gilt. Dann wird das letzte Zyklussignal auf die Leitung 163 gegeben, die das UND-Glied 157 zum Verriegeln der Verriegelung 158 speist. Das UND-Glied 157 empfängt auch das Triggersignal CSY auf der Leitung 31 und das erweiterte Zyklustriggersignal auf der Leitung 131. Der Einschaltausgang der Verriegelung 158 schaltet das UND-Glied 144 über dem Inverter 169 ab, um den Erweiterungs-Zwischenspeicher daran zu hindern, weitere Zyklen anzufordern, weil das erweiterte CSR-Signal auf der Leitung 132 nicht zur Verfügung steht.
Eine ähnliche Folge läuft bei einer Schreiboperation ab. In diesem Fall wird ein Speicher-Abfragetrigger 151 über (jen Inverter
RO 974 008
5 0 9 6 8 5/0924
150 getaktet, wenn das Triggersignal CSY aktiv ist. Der Inverter 150 empfängt ein Phasensignal A. Der Ausgang des Triggers 151 speist das UND-Glied 153, welches die Dateneingabe des Triggers 154 steuert und das erweiterte Zyklus-Triggersignal, das Schreibanforderungssignal und ein Signal vom Inverter 152 empfängt. Das UND-Glied 141 ist zu dieser Zeit inaktiv, da es sich um eine Schreiboperation handelt und somit wird der zu dieser Zeit auftretende Sp^icherzyklus von der ZE 20 dazu benutzt, ein Datenbyte auf die System-Ausgangssammelleitung 11 am Ende der Triggerzeit CSY zu setzen. Wenn der CSY-Trigger abschaltet, ist der Inverter 152 aktiv. Das UND-Glied 153 spricht an und erzeugt ein Schreibabfragesignal auf der Leitung 165.
Das Schreib-Abfragesignal leitet das auf der Sy stern--Aus gangs-Sammelleitung 11 liegende Datenbyte durch das UND-Glied 149 in das Daten-Übertragungsregister 148, um es auf der Daten-Ausgangssammelleitung 166 zur Verfügung zu stellen. Das Schreib-Abfragesignal bereitet auch die Dateneingabe zum Trigger 154 vor, der das UND-Glied 161 speist. Da eine Schreiboperation abläuft, wurde das UND-Glied 160 abgeschaltet und es wurde kein Bedienungs-Antwortsignal als Antwort auf das Bedienungs-Anforderungssignal auf der Leitung 143 erzeugt. Am Ende des ersten Impulses der Phase A nach Beendigung des CSY-Triggersignales wird der Trigger
151 zurückgestellt und der Trigger 154 eingeschaltet. Das Schreib-Abfragesignal ist daher nicht mehr vorhanden und das UND-Glied 161 wird über den Inverter 146 vorbereitet. Das UND-Glied 161 empfängt außerdem ein Schreib-Anforderungssignal auf der Leitung 136, ein Signal vom Trigger 154 und ein erweitertes Zyklus-Triggersignal auf der Leitung 131. Das UND-Glied 161 leitet ein Bedienungs-Antwortsignal auf der Leitung 162 durch das ODER-Glied 159. Dieses Signal bleibt bestehen, bis entweder das erweiterte Zyklus-Triggersignal durch den Zwischenspeicher 40 beendet oder der Trigger 154 zurückgestellt wird. Der Trigger 154 wird zurückgestellt durch den nächsten Taktimpuls der Phase A, da der Dateneingang zum Trigger 154 vom UND-Glied 153 nicht
RO 974 008
509885/092 4
länger mehr vorhanden ist.
Die beschriebene Operation läuft weiter, bis das E/A-Gerät und der Anschluß 180 feststellt, daß der letzte Zyklus erreicht wurde. Die Operation wird dann wie vorher bei der Leseoperation gestoppt.
Wenn die Operation abgeschlossen ist, erzeugt das E/A-Gerät und Anschluß 180 ein Signal, "Ende auf der Leitung 171", um einen Befehl an die Decodierschaltung 134 zu geben, die wiederum das E/A-Anschlußwahlsignal auf der Leitung 13 5 und das Schreib-Anforderungssignal bzw. Lese-Anforderungssignal auf den Leitungen 136 und 137 beendet. Dadurch endet auch das erweiterte PBC-Signal auf der Leitung 133. Das erweiterte Zyklus-Trigger-signal auf der Leitung 131 wurde wie beschrieben, beendet. Die ZE 20 beendet dann das Signal T7 und nimmt die Verarbeitung von Befehlen wieder auf, natürlich unter der Voraussetzung, daß der Einzelpunkt-Geräteanschluß 75 nicht immer noch im Einzelpunkt-Betrieb läuft. Wenn das der Fall ist, bleibt das Signal T7 aktiv und die ZE 20 bleibt dem Einzelpunkt-Geräteanschluß 75 zugeordnet.
Das Zeitdiagramm in Fig. 6 zeigt den Einzelpunktbetrieb des Plattenspeicherantriebs 125 und die Anforderung und den Empfang von Speicherzyklen mit einer maximalen Datenrate. Es ist zu beachten, daß das Blockprozessor-Taktsignal während der ganzen Operation vorhanden ist. Die Taktgeber und Steuerungen 23 in der ZE sind inaktiv, das Signal T7 liegt jedoch an. Genehmigungssignale für die prioritätsgesteuerte ZyklusZuordnung werden zur Verfügung gestellt, bevor das Einzelpunktzyklus-Anforderungssignal anliegt. In diesem Fall erfolgt eine erweiterte Zykluszuordnungs-Anforderung, nachdem die ersten beiden Genehmigungssignale für die prioritätsgesteuerte Zyklus-Zuordnung erzeugt wurden. Das erweiterte Zykluszuordnungs-Anforderungssignal bleibt bestehen, ein Speicherzyklus wird jedoch erst erzeugt, wenn das Zuordnungs-Genehmigungssignal wieder erzeugt wird. In der Zwischenzeit werden RO 974 008
509805/0924
Speicherzyklen genommen, um den Plattenspeicherantrieb 125 zu bedienen. Das E/A-Gerät und der Anschluß 140 bekommen dann einen Speicherzyklus und der nächstfolgende Speicherzyklus wird wieder vom Plattenspeicherantrieb 125 belegt.
Das Zeitdiagramm in Fig. 7 zeigt den Zustand, wenn der Platten-Speicherantrieb 125 im Einzelpunktbetrieb läuft und Daten liest und sie in den Speicher 10 überträgt. Das Blockprozessor-Taktsignal ist während der ganzen Leseoperation vorhanden. Das Platten-Einzelpunktbetriebssignal ist ebenfalls während der ganzen Operation vorhanden, wenn nicht das E/A-Gerät und der Anschluß 140 den freigegebenen Speicherzyklus benutzt. Die Übertragungsdaten zum Speichertrigger 87 werden auf die Zeitposition 3 des Bitringes gesetzt. Der Einzelpunktzyklus-Anforderungstrigger wird und bleibt eingeschaltet, wodurch nachfolgende Speicherzyklen angefordert und belegt werden. Es ist zu beachten, daß der Einzelpunktzyklus-Anforderungstrigger zurückgestellt wird, um einen Speieherzyklus freizugeben. Damit der freigegebene Speicherzyklus benutzt werden kann, muß das Triggersignal CSY während der Zeit auftreten, in der ein Ausgangssignal vom ODER-Glied 94 kommt. Die vom Plattenspeicherantrieb 125 seriell gelesenen Daten werden in den Serdes 111 eingegeben und dann in den Datenpuffer 74 geladen. Das Datenbyte im Puffer 74 wird auf den Puffer 41 im Zwischenspeicher 40 übertragen. Das Datenbyte ist gültig auf der MPXPO-Dateneingangssammelleitung 17, zwischen den Zeiten, in denen die Puffer 74 und 41 geladen werden. Das Zeitdiagramm in Fig. 9 unterscheidet sich von dem der Fig. 7 dadurch, daß der freigegebene Zyklus nicht vom E/A-Gerät und Anschluß 140 benutzt wird.
Das Zeitdiagramm in Fig. 8 zeigt den Zustand, in dem Daten vom Speicher zum Plattenspeicherantrieb 125 übertragen werden, während Daten im Einzelpunktbetrieb geschrieben werden. In diesem Fall ist das Einzelpunktzyklus-Anforderungssignal vorhanden, so daß nacheinanderfolgende Speicherzyklen angefordert werden, und es wird dann zurückgestellt, um den nächsten Speicherzyklus freizugeben. Nachdem der freigegebene Speicherzyklus abgelaufen ist, ist das
RO 974 0Oo
^09885/09'/ /.
Einzelpunktzyklus-Anforderungssignal wieder vorhanden, so daß der nächste Speicherzyklus zur Übertragung von Daten von den jPlattenspeicherantrieb 125 angefordert wird.
l'Das Zeitdiagramm der Fig. 10 zeigt den Einzelpunktbetrieb, wenn •die Einzelpunkt-Zyklusanforderungen nicht wie in der vorliegeniden Erfindung gruppiert sind, so daß kein anderes E/A-Gerät jprioritätsgesteuert einen Zyklus zugeordnet bekommen kann. Dadurch werden die großen Vorteile der vorliegenden Erfindung jnoch klarer herausgestellt.
RO 974 008
509885/0974

Claims (1)

  1. PATENTANSPRÜCHE
    Verfahren zur Steuerung von Ein/Ausgaba-Geräten auf der Basis prioritätsgesteuerter ZyklusZuordnung zu einem gemeinsamen Datenspeicher, v/obei die Ein/Ausgabe-Geräte entweder im zugeordneten Betrieb oder im Einzelpunktbetrieb arbeiten, dadurch gekennzeichnet, daß die von den Ein/Ausgabe-Geräten abgegebenen Speicherzugriffsanforderungen oder die prioritätsgesteuerten Zykluszuordnungen so gruppiert werden, daß ein Zeitabschnitt für eine Speicherzugriffsanforderung für dasjenige Ein/Ausgabe-Gerät zur Verfügung gestellt wird, das den nächstfolgenden Speicherzyklus belegen kann, jedoch keine weiteren nachfolgenden Speicherzyklen anfordert.
    Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Steuerung am Ende eines Zyklus zum zugeordneten Betrieb zurückkehrt und eine andere Gruppe von Speicherzyklen von dem im zugeordneten Betrieb arbeitenden Ein/ Ausgabe-Gerät verarbeitet wird.
    Verfahren nach den Ansprüchen 1 und 2, dadurch gekennzeichnet, daß die Steuerung für ein Ein/Ausgabe-Gerät im zugeordneten Betrieb Speicherzyklen freigibt, sobald das genannte Ein/Ausgabe-Gerät diese nicht mehr benötigt, insbesondere während der Zeit, in der die Steuerung mit dem angeschlossenen Ein/Ausgabegerät synchronisiert wird.
    Schaltungsanordnung zur Durchführung des Verfahrens nach den Ansprüchen 1 bis 3, dadurch gekennzeichnet, daß der gemeinsame Speicher (10) über eine zentrale Verarbeitungseinheit (20), die ihrerseits mit zwei Steuereinheiten (4O und 130) verbunden ist, von denen die eine (40) mit einer nachgeschalteten Anpassungsschaltung (75) verbunden ist,
    RO 974 008
    50988G/0924
    mit den im Einzelpunktbetrieb oder zugeordneten Betrieb arbeitenden Ein/Ausgabe-Einheiten (125 und 180) verbunden ist.
    5. Schaltungsanordnung nach Anspruch 4, dadurch gekennzeichnet, daß die beiden Steuereinheiten (40 und 130) über Steuerleitungen (131 bis 133 und 50) zur Steuerung der Zuordnung der Zyklen zu den einzelnen Ein/Ausgabe-Geräten (125 und 180) gegenseitig verbunden sind und außerdem mit der genannten Anpassungsschaltung (75).
    RO 974 008
    5 0 9 8 8 5/0924
    Leerseite
DE2530599A 1974-07-15 1975-07-09 Verfahren und Schaltungsanordnung zur Steuerung von Ein-/Ausgabe-Geräten Expired DE2530599C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/488,349 US3961312A (en) 1974-07-15 1974-07-15 Cycle interleaving during burst mode operation

Publications (2)

Publication Number Publication Date
DE2530599A1 true DE2530599A1 (de) 1976-01-29
DE2530599C2 DE2530599C2 (de) 1982-08-26

Family

ID=23939386

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2530599A Expired DE2530599C2 (de) 1974-07-15 1975-07-09 Verfahren und Schaltungsanordnung zur Steuerung von Ein-/Ausgabe-Geräten

Country Status (5)

Country Link
US (1) US3961312A (de)
JP (1) JPS5846728B2 (de)
DE (1) DE2530599C2 (de)
FR (1) FR2279153A1 (de)
GB (1) GB1471392A (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4145751A (en) * 1974-10-30 1979-03-20 Motorola, Inc. Data direction register for interface adaptor chip
JPS5427344A (en) * 1977-08-02 1979-03-01 Nippon Telegr & Teleph Corp <Ntt> Slot line rat race type directional coupler
US4276594A (en) * 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
US4275440A (en) * 1978-10-02 1981-06-23 International Business Machines Corporation I/O Interrupt sequencing for real time and burst mode devices
US4224667A (en) * 1978-10-23 1980-09-23 International Business Machines Corporation Command queuing for I/O adapters
CA1132265A (en) * 1978-12-26 1982-09-21 Minoru Inoshita Direct memory access revolving priority apparatus
DE3069249D1 (en) * 1979-02-13 1984-10-31 Secr Defence Brit Data processing unit and data processing system comprising a plurality of such data processing units
US4417304A (en) * 1979-07-30 1983-11-22 International Business Machines Corporation Synchronous cycle steal mechanism for transferring data between a processor storage unit and a separate data handling unit
US4479179A (en) * 1979-07-30 1984-10-23 International Business Machines Corporation Synchronous cycle steal mechanism for transferring data between a processor storage unit and a separate data handling unit
US4451880A (en) * 1980-10-31 1984-05-29 Honeywell Information Systems Inc. Memory controller with interleaved queuing apparatus
DE68913695T2 (de) * 1988-12-27 1994-10-20 Nec Corp Mikrorechner mit einem elektrisch löschbaren und programmierbaren nichtflüchtigen Speicher.
US5255378A (en) * 1989-04-05 1993-10-19 Intel Corporation Method of transferring burst data in a microprocessor
US9489326B1 (en) * 2009-03-09 2016-11-08 Cypress Semiconductor Corporation Multi-port integrated circuit devices and methods

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3500466A (en) * 1967-09-11 1970-03-10 Honeywell Inc Communication multiplexing apparatus
US3599176A (en) * 1968-01-02 1971-08-10 Ibm Microprogrammed data processing system utilizing improved storage addressing means
US3680054A (en) * 1970-07-06 1972-07-25 Ibm Input/output channel
US3735357A (en) * 1970-09-18 1973-05-22 Ibm Priority system for a communication control unit
US3668651A (en) * 1970-12-30 1972-06-06 Ibm Working device code method of i/o control
US3749845A (en) * 1971-08-27 1973-07-31 Bell Telephone Labor Inc Digital data communication system
US3810114A (en) * 1971-12-29 1974-05-07 Tokyo Shibaura Electric Co Data processing system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Schecher, H.: Funktioneller Aufbau digitaler Rechenanlagen, Berlin-Heidelberg-New York, 1973, S. 122-132 *

Also Published As

Publication number Publication date
DE2530599C2 (de) 1982-08-26
FR2279153A1 (fr) 1976-02-13
JPS5119947A (de) 1976-02-17
US3961312A (en) 1976-06-01
FR2279153B1 (de) 1977-07-08
GB1471392A (en) 1977-04-27
JPS5846728B2 (ja) 1983-10-18

Similar Documents

Publication Publication Date Title
DE3204905C2 (de)
DE1966633C3 (de) Datenverarbeitungsanlage mit überlappter Arbeitsweise bei Verwendung eines Haupt- und Pufferspeichers
DE3114961C2 (de)
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE1915818C3 (de) Steuerschaltung für ein elektronisches Datenverarbeitungssystem
DE2953861C2 (de)
DE1285220C2 (de) Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten
DE2556624C2 (de) Verfahren und Schaltungsanordnung zur asynchronen Datenübertragung
DE2641741A1 (de) Rechnersystem aus mehreren miteinander verbundenen und zusammenwirkenden einzelrechnern
DE1299145B (de) Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen
DE1803767A1 (de) Elektronisches Datenverarbeitungssystem
DE2530599A1 (de) Steuerung von ein/ausgabe-geraeten
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
DE2432608B2 (de) Speicheranordnung für eine Datenverarbeitungseinrichtung
DE2755611A1 (de) Steuereinheit fuer datenverarbeitungsanlagen
DE2844295C2 (de) Verfahren und Vorrichtung zur Steuerung des Datentransfers auf einem Datenbus
DE3123382A1 (de) &#34;verfahren und einrichtung zum uebertragen von daten zwischen zentraleinheiten oder prozessoren von mehrprozessorsystemen&#34;
DE1922304A1 (de) Datenspeichersteuergeraet
DE1237812B (de) Datenverarbeitungsgeraet mit mehreren Speichern
DE4114053A1 (de) Computersystem mit cachespeicher
DE2609698C2 (de) Elektronischer Rechner
EP0409330B1 (de) Schaltungsanordnung zum Steuern des Zugriffs auf einen Speicher
DE2720842B2 (de) Datenübertragungssystem
DE2316321C2 (de) Schaltungsanordnung an der Schnittstelle zwischen einer Steuerung eines Rechenwerkes und einem Hauptspeichers einer Rechenanlage
DE2704560C2 (de) Datenverarbeitende Anlage mit paralleler Bereitstellung und Ausführung von Maschinenbefehlen

Legal Events

Date Code Title Description
OD Request for examination
D2 Grant after examination
8339 Ceased/non-payment of the annual fee