DE2130299C3 - Eingabe-/Ausgabekanal für eine Datenverarbeitungsanlage - Google Patents

Eingabe-/Ausgabekanal für eine Datenverarbeitungsanlage

Info

Publication number
DE2130299C3
DE2130299C3 DE19712130299 DE2130299A DE2130299C3 DE 2130299 C3 DE2130299 C3 DE 2130299C3 DE 19712130299 DE19712130299 DE 19712130299 DE 2130299 A DE2130299 A DE 2130299A DE 2130299 C3 DE2130299 C3 DE 2130299C3
Authority
DE
Germany
Prior art keywords
memory
input
data
output
field
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
DE19712130299
Other languages
English (en)
Other versions
DE2130299A1 (de
DE2130299B2 (de
Inventor
John James Winchester Hampshire Holmes (Grossbritannien)
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 DE2130299A1 publication Critical patent/DE2130299A1/de
Publication of DE2130299B2 publication Critical patent/DE2130299B2/de
Application granted granted Critical
Publication of DE2130299C3 publication Critical patent/DE2130299C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • 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)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)

Description

3 4
Steuerspeicheraufwand unabhängig vom Prozessor ist als eine Gruppe von untereinander verbundenen seine Mikroprogrammoperationen durchführt und ein Assoziativspeichern ausgeführt, die die unabhängig überlapptes Arbeiten von Ein- und Ausgabegeräten und arbeitende Prozessor-Anschlußeinheit 15 und E/A-AnProzessoren, die mi! diesem Kanal verbunden sind. schluBeinheit 16 der Fig. 1 bilden. Die Speicher ermöglicht. S unterscheiden sich untereinander nicht in ihrem Aufbau.
Die erfindungsgemäße Lösung besteh; im Kennzei- sondern nur durch ihren Dateninhalt sowie durch ihre chen des Patentanspruchs 1. Verbindung mit den übrigen Teilen der Datenverarbei-
Der Vorteil für die mit dem Kynal verbundenen tungsanlage und mit den peripheren Einheiten.
Anschlußeinheiten besteht vor allem darin, daß sie jeder der Assoziativspeicher besteht aus zwei
gleichzeitig und unabhängig voneinander arbeiten io Eingabe/Ausgabe-Registern und mehreren Wortkönnen, den Kanal entlasten und sowohl die Proj esso- speicherstellen, deren jede außerdem zwei Merker ren als auch die Eingabe-/Ausgabeeinheiten völlig von (Binärelemente) hat, die erster und zweiler Merker langwierigen Anpassungsoperalionen und Synchroni- genannt werden. Ein Speicherzyklus besteht aus zwei sieren freistellen. Dies wird insbesondere technisch Phasen, in deren erster die Speicherstellen für den vorteilhaft bei Verwendung von Assoziativspeichern 15 Zugriff markiert und in deren zweiter bestimmte Teile erreicht. markierter Speicherstellen gleichzeitig in einer Lese-
Ein Ausführungsbeispiel der Erfindung ist in den oder Schreiboperalion auf ein ausgewähltes Eingabe/ Zeichnungen dargestellt und wird im folgenden näher Ausgabe-Register übertragen werden. Eine Speicherbeschrieben. Es zeigt stelle wird markiert, indem man einen der beiden Fig-1 ein Blockdiagramm einer digitalen Datenver- 20 Merker setzt. Dieses Setzen kann aus einer Suehoperaarbeilungsanlage mit einem E/A-Kanal, tion resultieren, in welcher ein Suchargument (der Inhalt F i g. 2 ein genaueres Blockdiagramm der Prozessor- bestimmter Teile eines ausgewählten Eingabe/Ausgabc-Anschlußeinheit, Registers) mit dem Inhalt derselben Teile aller Fig. 3 ein genaueres Blockdiagramm der E/A-An- Wortstellen verglichen wird. Wenn der Inhalt einer Schlußeinheit, 25 Wortstelle mit dem Suchargument übereinstimmt, wird Fig.4 eine Übersichtsdarstellung des Inhaltes des die Wortstelle markiert. Die ersten und zweiten Merker /4-Speichers aus F i g. 3, bilden außerdem miteinander je ein Schieberegister, so F i g. 5 ein Blockschaltbild eines Paares von bistabilen daß ihre Inhalte um eine Wortstelle verschoben werden Anordnungen zur Beschleunigung der Reaktion des können. Diese Operation (genannt »NAECIISTE«) E/A-Kanals auf Signale von E/A-Einheiten und 30 kann mit einer assoziativen Suche kombiniert werden. Fig. 6 ein Blockdiagramm einer anderen Ausführung In diesem Fall wird jeweils die Wortstelle hinter einer des Speichers in Fig. 3 zur Erhöhung der Üb^rtra- ;nii dem Suchargument übereinstimmenden Woristelle gungsgeschwindigkeit. markiert. Die »NAECHSTEw-Opcralion kann aber auch Fig. I zeigt eine digitale Datenverarbeitungsanlage in der ersten Phase eines Zyklus ohne eine begleitende mit einem Eingabe-/Ausgabekanal 10, im folgenden 35 Suchoperation ausgeführt werden. Die bei der Suehopekurz als E/A-Kanal 10 bezeichnet. Die Anlage enthält ration zu berücksichtigenden Teile der Wortstellen außerdem einen Hauptspeicher 11 und einen Prozessor werden durch eine Maske ausgewählt, die bestimmte (CPU 12). Der Hauptspeicher 11 wird durch den Inhalt Verbindungen zwischen den Eingabe/Ausgabc-Regieines Speicheradreßregisters (SAR 13) adressiert stern und den Speicherstellen während der ersten Phase zwecks Datenübertragung zwischen der adressierten 40 maskiert, während die Teile der Wortstellen, in denen Hauptspcicherstelle und einem Speicherdatenregister gelesen oder geschrieben wird, durch eine Maske (SDR 14). Der E/A-Kanal 10 besteht aus zwei gewählt werden, die in der zweiten Phase verwendet Funktionseinheiten, die unabhängig voneinander arbei- wird, jeder Assoziativspeicher verfügt über einen ten: einer Prozessor-Anschlußeinheit 15 und einer Maskenspeicher, der die Masken enthält und der am E/A-Anschlußcinheit 16. 45 Anfang der ersten und der zweiten Phase adressiert Die Prozessor-Anschlußcinheil 15 empfängt vom wird. Zum Steuern eines Assoziativspeichers muß daher Prozessor 12 Steuerdaten, welche die vom Kanal angegeben werden, welcher Merker (der erste oder der auszuführenden Operationen festlegen. Diese Steuerda- zweite) zu benutzen ist, ob eine Suchoperation ten werden vorzugsweise über das SDR 14 übertragen. auszuführen ist oder ob eine »NAECHSTE«-Operation Wo mehrere E/A-Kanüle 10 in einer Datenvcrarbci-50 auszuführen ist. Außerdem ist anzugeben: die Maske für tungsanlage vorgesehen sind, wie es allgemein üblich ist, die Suchoperation; ob eine Lese- oder Schreiboperation ist auch für jeden Kanal ein entsprechendes SDR 14 auszuführen ist; die Maske für die Lese- oder vorgesehen, um eine gute Verbindung mit dem Schreiboperation; und welches Eingabe/Ausgabe-Regi-Prozessor 12 zu schaffen. Es ist jedoch auch in diesem stcr in jeder Operationsphase zu benutzen ist.
Fall nur ein SAR 13 vorgesehen; gleich/eilige Anforde- 55 In dem zu beschreibenden Ausfjhrungsbeispid rimgcn für Zugriffe zum Hauptspeicher 11 durch besteht die Prozessor-Anschlußeinheit 15 aus /wci verschiedene Kanäle können dann mit bekannter Asso/iativspcichern, einem Sieuerspeicher und einem Prioritätstechnik gelöst werden. Datenspeicher, die als S-Speicher bzw. D-Speieher Die E/A-Anschlußcinheit 16 ist die Funktionseinheit. bezeichnet werden. Die E/A-Anschlußeinheil 16 besieht die einen Datenweg einschließlich Pufferspeicher60 aus vier Assoziativspeichern, einem Adreßspeichcr, zwischen den peripheren Einheiten und dem Hauplspci- einem Pufferspeicher, einem Zahlspeichcr und einem eher 11 herstellt. Die E/A-Anschlußeinheil 16 steuert Koordinationsspeicher, die als /\-Speicher, /'-Speicher, sich selbst, wenn sie einmal die Steuerinformation von Z-Speicher und Κ-Speicher bezeichnet werden. Alle der Prozessor-Anschlußeinheit 15 empfangen hat. Sie Assoziativspeicher arbeiten synchron tiiul werden durch kann erkennen, wann die angeforderte Operation 65 einen Taktgeber angesteuert.
ausgeführt werden kann und wann sie beendet ist. Gemäß der Darstellung in Fig. 2 besieh! die
Bei dem als Beispiel zu beschreibenden Ε/Λ-Kanal Prozessor-Anschlußeinheit 15 aus dem .S'-Speicher und
handelt es sich um einen Sclektorkanal. Der E/A-Kanal dem D-Speichcr. Hier werden nur die Teile eines
Lingabe/Ausgabe-Registers eines Speichers gezeigt, die talsächlich benutzt werden. In der Praxis ist der S-Speicher konstruktiv mit dem D-Speicher identisch. In I ι g. 2 hat er die gleiche Kapazität wie der D-Speicher; es wurde jedoch ein Eingabe/Ausgabe-Register vollständig und ungefähr eine Hallte des anderen Registers weggelassen, da die Teile nicht benutzt werden. Die Eingabe/Ausgabe-Register sind auf einander gegenüberliegenden Seiten des einen Speicher darstellenden Blockes wiedergegeben. Üblicherweise 'o wird das obere Register E/A-I und das untere E/A-2 genannt. Wenn Felder der Eingabe/Ausgabe-Register gemeinsam benutzt werden, sind sie durch eine gestrichelte Linie verbunden dargestellt, wofür die Fi g. 2 zwei Beispiele enthält. '5
Operationen im Kanal werden durch Absuchen von Funktionstabellen in den Assoziativspeichern ausgeführt. |ede dieser Tabellen ist durch einen eindeutigen Schlüssel bezeichnet, und bestimmte Zeilen der Tabelle werden durch den oder die Operanden gewählt, von denen die Funktion abzuleiten ist. Das Suchargumem einer Suchoperation besteht daher normalerweise aus einem Schlüssel, der die auszuführende Funktion bestimmt und als eine Adresse betrachtet werden kann, und aus einem veränderlichen Teil, der die Operanden festlegt, leder Assoziativspeicher umfaßt ein Schlüsselfeld, w elches die Tabellenschlüssel enthält.
Der S-Speicher hat nur das Register E/A-2. welches ein erstes Schlüsselfeld 21. ein Bedingungsfeld 22. ein Feld »Nächste«· Adresse 23. ein D-Speicherschlüssclfcld 24. ein D-Speichersteuerfeld 25 und ein D-Spcichermaskenfcld 26 enthält. Die einzige Funktion des S-Speichers ist die Steuerung des D-Speichers und der Felder 24 und 26. wobei die zum Steuern des D-Speiehers nötigen Steuerdaten aus den Feldern 24 und 26 genommen werden. F'cld 26 gibt die Maske oder das Maskenpaar an. welche in jedem D-Speicherzyklus zu verwenden sind. Feld 25 wird auf einen Decodierer übertragen und bestimmt die Operationen, wie Suchen. »Nächste«. Lesen. Primär, die durch den D-Speicher auszuführen sind: Feld 24 enthält den Schlüssel, der die im D-Speichcr auszuführende Funktion vorschreibt. Der S-Speicher hat eine eigene Folgesteuerung: Das Feld »Nächste«-Adresse 23 ist mit dem Schlüsselfeld 21 des Registers K/A-2 des S-Speichers verbunden. Zusätzliche Informationen über das nächste aus dem DS-Speicher zu lesende Stcuerwort werden vom D-Speicher selbst dadurch abgeleitet, daß zwei Bits auf das Bedingungsfeld 22 \om Bedingungsfeld 30 des D-Speichers gegeben werden können, welches beiden D-Speicher-Eingabe/Ausgabe-Registern gemeinsam ist. Der S-Spcicher hat einen festgelegten Operationszyklus: Suchen in den Feldern 21 und 22 und Lesen aus den Feldern 23 bis 26. Der D-Speicher hat die Funktion. Steuerdaten vom Prozessor, die sich auf auszuführende E/A-Operationen beziehen, zusammenzusetzen und diese an die E/A-Anschlußeinheit 16 ( F i g. 1) zu leiten.
Der D-Speicher empfängt aus dem Kanalsteuerwort die Datenadresse, die Längenangabe (Byteanzahl), die Kennzeichen und die Operationsangabe. Auch die Einheitensteuerwörter werden im D-Speicher festgehalten. Adreß-. Zähl- und Zustandsdaten werden von Zeit zu Zeit an die E/A-Anschlußeinheit 16 übertragen.
Register E/A-l des D-Speichers enthält das Bedingungsfeld 30. welches mit dem Bedingungsfeld 22 von E/A-2 des S-Speichers verbunden ist: das Daten vom Feld 24 des S-Speichers empfangende Schlüsselfeld 31: ein an die Sammelieitungs-Register 42 und 43 ( Fig. 3) und den /'-Speicher angeschlossenes Feld 32; sowie die leider 33 und 34. die beide an den /'-Speicher und das .VDW 14 ( I'ig I) angeschlossen sind.
Register L/A-2 des D-Speichers enthält auller dem Hedtngungsfeld 30 und dem Schliisselleld 31. welche es mit L/A-l teilt, eine Gruppe von Steuerfeldern, die als ein leid 35 dargestellt sind, zur Übertragung von Steuersignalen auf die F/A-Anschlußeinheit 16. ein an den .^-Speicher und das SAR angeschlossenes Feld 3d und ein an den /Speicher angeschlossenes Feld 37.
F i g. 3 zeigt die F./A-Anschlußeinheit 16. deren Aufgabe es ist. Steuersignale mit einer F./A-Einheit auszutauschen, einen Datenweg für die Datenübertragung zwischen der F./A-Finheit und dem Hauptspeicher herzustellen und offenzuhalten, die Zahl der übertragenen Datenbytes festzuhalten und für das SAR die Hauptspeichcradresse zu erzeugen, zu welcher oder von welcher Daten zu übertragen sind. Steuersignale werden zwischen der E/A-Atischlußeinhcit und einet E/A-Einheit über ein Kennzcichen-Eingabc-Register 4C und ein Kcnnzeichen-Ausgabe-Rcgister 41 übertragen Daten werden vom Hauptspeicher über Register 42 unc 43 für die abgehende und ankommende Sammelleitung übertragen. Die F./A-Anschlußeinheit 16 enthält viel Assoziativspeicher. Sie arbeitet als eine von dei Prozessor-Anschlußeinheit 15. dem Prozessor und den Hauptspeicher unabhängige Einheit mit eigener Ablauf steuerung, obwohl diese Anschlußeinheit mit den Hauptspeicher verbunden werden muß, wenn eint Datenübertragung erfolgt.
Der /C-Speichcr (Koordinations-Speicher) hat zwe Hauptfunktionen, nämlich erstens sich selbst und dit anderen Speicher der Anschlußeinheit zu steuern unc zweitens Steuersignale mit einer E/A-Einheit auszutau sehen. Der Klarheit halber sind die Decodierer it F i g. 3. die die Steuersignale interpretieren unc Trcibersignale für die entsprechenden Assozialivspci eher erzeugen, als ein Block dargestellt, nämlich al: Kanaldecodicrer 44. In der Praxis hat jeder Speichel seinen eigenen Decodierer. E/A-l des Koordinalions Speichers hat ein Schlüssclfeld 45 mit E/A-2 gemeinsan und ein Feld 46. weiches an den D-Speicher angeschios sen ist. Außer dem Schlüsselfeld 45 verfügt E/A-2 übe ein Bytezählfeld 47. welches an den Z-Speiche angeschlossen ist, ein Nächstc-Adrcsse-Feld 48, welche: an das Schlüsselfcld 45 angeschlossen ist. und du .Schlüsselfelder 49 und 50 für den /!-Speicher bzw. der Z-Speicher. Als nächstes kommt eine Gruppe vor Feldern, die an den Kanaldecodicrer 44 angeschlossei sind und zum mindesten teilweise die durch andere Teili der Anschlußeinheit und den Hauptspeicher ausz.ufüh renden Operationen bestimmen. Das Feld 51 steuert dei Hauptspeicher. Feld 52 den Pufferspeicher P und Fell 53 den Zählspeicher Z. den Adreßspeicher A und dei Koordinationsspeicher K. Feld 54 ist ein Bit groß um dient dazu, den Inhalt des Sammelleitungs-Registers 4. weiterzuleiten. Feld 55 ist an den Α-Speicher ange schlossen, und Feld 56 wird dazu benutzt, den Inhalt de Kennzeichen-Ausgabe-Registers 41 weiterzuleiter Feld 57 ist das Kennzeichen-Ausgabe-Feld, welches mi dem Kennzeichen-Ausgabe-Register 41 verbunden isi und Feld 58 ist das Kennzeichen-Eingabe-Feld; e empfängt Daten vom Kennzeichen-Eingabe-Registe 40. Feld 59 ist mit dem Z-Speicher verbunden.
Wie bereits gesagt, besteht eine Funktion de Ak-Speichers darin. Steuersignale mit einer E/A-Einhei auszutauschen. Zur Übernahme dieser Funktion enthäl der /(-Speicher eine Funktionstabelle, in welcher dii
Antworten des Kanals an die E/A-Einhcit gespeichert werden. Signale vom Kanal liefern ein Suchargument zur Adressierung der Tabelle in das Kennzeichen-Hingabe-Feld 58, nachdem sie im Kennzeichen-Eingabe-Register 40 festgehalten worden sind. Die auf Grund des .Suchargumentes aus der Tabelle in das Kennzeichen-Ausgabe-Feld 57 gelesenen Daten werden im Kennzeiclien-Ausgabc-Register 41 festgehalten und den peripheren Einheiten zur Verfügung gestellt, wenn ein Finerbit im Feld 56 steht. Eine dritte wichtige Funktion des K-Speichers besteht darin, eine Zählung der Datenbytes im /'-Speicher vorzunehmen. Der laufende Zählstand ist im Feld 47 des Registers E/A-2 des K-Speichers festgehalten.
Der Z-Speicher oder Zählspeicher hat die Funktion. die Anzahl der Datenbytes festzuhalten, die zwischen einer peripheren Einheit und dem Hauptspeicher übertragen wurden. Für eine Übertragungsoperation wird die Adresse des ersten zu übertragenden Datenbytes und die Anzahl der zu übertragenden Datenbytes angegeben. Diese Anzahl wird im Z-Speicher festgehalten und mit fortschreitender Übertragung heruntergezählt. Es wird ein Signal abgegeben, wenn der Zählerstand im Z-Speicher gleich Null ist, und auch wenn der Zählerstand in Zgleich der Pufferbytezahl im25 Feld 47 des AC-Speichers ist. Die beiden E/A-Register des Z-Speichers haben ein vom Feld 50 des K-Speichers gespeistes Schlüsselfeld 60 gemeinsam und ein Steuerfeld 61, welches dem Z-Speicher die Möglichkeit der eigenen Ablaufsteuerung gibt, indem es vorschreibt,3o welches der beiden Eingabe/Ausgabe-Register im nächsten Speicherzyklus zu benutzen ist. Feld 61 ist mit dem Kanaldccodierer44 verbunden. Die übrigen Felder des Registers E/A-1 mit den Bezeichnungen 62 bis 64 werden zum Herunterzählen benutzt und später beschrieben. Das Register E/A-2 des Z-Speichers weist außer den Feldern 60 und 61 ein Feld 65 auf. welches mit dem Feld 59 des /i-Speichers verbunden ist; ein Feld 66, welches an das Pufferbytezählfeld 47 des K-Speichers angeschlossen ist: und die Felder 67 bis 69 für das Herunterzählen. Die Felder 63 und 64 sind mit dem Feld 67 und die Felder 68 und 69 mit dem Feld 62 und außerdem mit dem D-Speicher verbunden. Ein Bit des Feldes 66 ist an den Kanaldecodierer 44 angeschlossen.
Der /4-Speicher oder Adreßspeicher dient zur Erstellung der im Hauptspeicher zu benutzenden Adresse. Die Anfangsadresse muß erhöht oder erniedrigt werden, abhängig davon, ob es sich um eine Vorwärts- oder Rückwärts-Leseoperation handelt. Der /t-Speicher ist ähnlich organisiert wie der Z-Speicher; sie unterscheiden sich lediglich in der Größe. Die Eingabe/Ausgabe-Register haben ein Schlüsselfeld 70 und ein Steuerfeld 71 gemeinsam. Das Schlüsselfeld wird vom K-Speicher gespeist. Das Steuerfeld teilt dem Decodierer 44 mit, welches E/A- Register im nächsten Speicherzyklus zu benutzen ist. E/A-l hat die Felder 72 bis 75 und E/A-2 die Felder 76 bis 79, die alle zum Herauf- oder Herunterzählen benutzt werden. Die Felder 73 bis 75 sind an das Feld 76, das SAR und den D-Speicher angeschlossen. Die Felder 77 bis 79 sind mit dem Feld 72 und dem SAR verbunden.
Der P-Speicher dient als Puffer zwischen der peripheren Einheit und dem Hauptspeicher, oder genauer gesagt, zwischen den Sammelleitungs-Registern 43 einerseits und dem SDR 14 andererseits. E/A-l hat die Felder 80 und 81, die an das SDR und den D-Speicher angeschlossen sind. E/A-2 hat die Felder 82 und 83, die an den D-Speicher und die Register 42 und 43 für die abgehende und die ankommende Sammelleitung angeschlossen sind. Außerdem weist E/A-2 ein Steuer feld 84 auf. mit welchem der Inhalt des Registers 42 aul die periphere Einheit weitergeleitet wird. Im P-Speichei werden die zwei Merker (der erste und der zweite), die jedem Wortregister zur Verfügung stehen, voll ausgenutzt. Datenbytes werden im ^-Speicher als eine Liste gespeichert, die aufeinanderfolgende Wortregister de; Speichers belegt. Ein gesetzter erster Merker markier das Ende der Liste, d. h. die nächste Position, die zun Speichern eines Datenbytes zur Verfügung steht, unc ein gesetzter zweiter Merker markiert den Anfang dei Liste, d. h. die nächste aus dem P-Speicher zu lesende Position. Um die Liste zusammenhängend zu machen wird der P-Speicher so modifiziert, daß erster unc zweiter Merker des unteren Wortregisters (bezogen aul F i g. 4) mit dem ersten und zweiten Merker des oberer Wortregisters verbunden sind, so daß die durch die Merker gebildeten Schieberegister zu zyklischer Schieberegistern werden.
Wenn Daten von einer E/A-Einheit zum Hauptspei eher übertragen werden, werden sie byteweise in da; Sammelleitungsregister 43 und von dort in die beider Felder 82 und 83 des Registers E/A-2 und an das End< der im P-Speicher gespeicherten Liste eingeschrieben Die Übertragung zum SDR 14 kann von einem dei beiden Felder 80 oder 81 des Registers E/A-l erfolgen Diese Anordnung erspart einen Überkreuzungswej zwischen dem SDR und dem P-Speicher, der sonst beirr Rückwärtslesen oder bei der Übertragung einzelne: Bytes nötig wäre, wenn ein Hauptspeicher-Halbwor zwei Bytes enthält.
Wenn Daten vom Hauptspeicher an die E/A-Einhei übertragen werden, wird ein Datenbyte vom SDR ir jedes Wortregister gespeichert. Aufeinanderfolgend« Bytes wechseln zwischen den Feldern 80 und 81 de; Registers E/A-1 ab, und die Maske wird bei dei Leseoperation nach E/A-2 so abgewechselt, daß dif Felder 82 und 83 abwechselnd nacheinander in da; Register 42 gelesen werden. Da unter bestimmter Umständen die Maske nicht abgewechselt werden soll wird ein zusätzliches Bit in jedem Datenbyte vorgese hen, welches auf den Operationsdecodierer de: P-Speichers geleitet wird, um festzustellen, welche Maske im nächsten Speicherzyklus zu verwenden ist Diese Einrichtung ist in F i g. 3 nicht gezeigt.
Die Kapazität des Puffers ist im vorliegender Ausführungsbeispiel 16 Bytes.
Eine wichtige Funktion der E/A-Anschlußeinheit is das Herauf- oder Herunterzählen von Zahlen. Es sine Verfahren bekannt, die hierfür mehrere Speicherzykler benötigen. Ein Selektorkanal erfordert jedoch eine solche Geschwindigkeit, daß das Herauf- oder Herun terzählen nur einen Zyklus belegen darf. Die Operatior des /*,-Speichers ist ähnlich wie die des Z-Speichers, unc der zuerst genannte wird jetzt als Beispiel für beide· Speicher beschrieben.
F i g. 4 zeigt den Inhalt des /4-Speichers. Leersteller bedeuten Speicherzellen im X-Zustand (weder NuI noch Eins, d. h. ohne Einfluß bei einem Assoziativ-Such-Vorgang). Um Platz zu sparen, ist nicht der gesamte Inhalt des Speichers dargestellt. Von der Tabelle zum Herauf- und Herunterzählen ist nur der Teil gezeigt, der zur Wiedergabe des Bitmusters der Tabelle ausreicht Die Register E/A-1 und E/A-2 sind in vereinfachter Form gezeigt wobei die Felder wie in Fig.3 bezeichnet sind. Die Felder 73 bis 75 sind mit Feld 76 und die Felder 77 bis 79 mit Feld 72 verbunden.
9 10
Der Aufbau der Inkrement/Dekremeni-Tabelle, auch niedrige Teil inkrementiert wird. Wenn die Übertrags-
Tabelle zum Herauf- und Herunterzählen genannt, geht Voraussageleitung mit einem Schlüssel 01 gewählt wird,
aus den vier mit der Nummer 100 bezeichneten Wörtern wird dadurch ein Übertrag in den hohen Teil
hervor. Feld 73 ist das Ergebnisfeld und erhält ein vorausgesagt, und das Feld 71 ist gleich 1, wodurch der
Ergebnisbit von »1« in der vierten Stelle eines neun Bit 5 Inhalt des verwendeten E/A-Registers verändert wird,
großen Resultates. Die übrigen Positionen des Feldes 73 101 Suchen über den Feldern 70 und 74.
werden mit Zellen im X-Zustand gefüllt, die als binäre Lesen über Feld 77.
Nullen gelesen werden. Feld 74 enthält die vier Der hohe Teil wird um »1« inkrementiert, da die
Bedingungen, unter denen bei einer Inkrementopera- Felder 76 und 74 miteinander verbunden sind,
tion ein Einerbit in die vierte Bitposition gesetzt werden io Die Byte-Anzahl und die Adresse sind in dem
soll. Sie besagen, daß Einsen in den ersten drei Kanalstcuerwort (CCW) enthalten, welches die vom
Bitpositionen und eine Null in der vierten Bitposition Kanal auszuführende Eingabe/Ausgabe-Operation
oder daß eine Eins in der vierten Bitposition und steuert. Sie werden am Anfang in den D-Speicher
mindestens eine Null in den niedrigeren Positionen übertragen, und von dort wird die Zahl in den
stehen müssen. Wenn keine dieser Bedingungen erfüllt 15 A-Speicher übertragen, wobei der hohe Teil in das
ist, wird keine der mit der Zahl 100 bezeichneten richtige Feld durch die Schiebetabelle verschoben wird,
Leitungen zum Auslesen gewählt, so daß die vierte während der niedrige Teil durch Suchen und Lesen in
Position des E/A-1-Feldes 73 (oder Feld 77) am Ende der Dekrementiertabelle festgehalten wird. Eine separa-
eines Speicherzyklus Suchen/Lesen eine Null enthält. te Leitung wird für die Übertragung der beiden Teile
Feld 75 enthält die Bedingungen für ein Einerbit in der 20 der 16 Bit großen Zahl in den Z-Speicher in derselben
vierten Position während einer Dekrementoperation. Art benutzt.
Wenn wiederum keine der Bedingungen erfüllt wird. Die E/A-Operation wird eingeleitet durch eine
erscheint eine Null in der vierten Position des Start-E/A-Instruktion (SIO), welche die betroffene
Ergebnisses. E/A-Einheit angibt und zur Wahl eines Kanalsteuerwor-
Der 4-Speicher dient dazu, eine 18 Bit lange 25 tes (CCW) vom Hauptspeicher führt, welches die
Hauptspeicheradresse zu erhöhen oder (bei einer auszuführende Operation und die zu verwendenden
Rückwärts-Leseoperation) zu vermindern. Jede Adresse Hauptspeicheradressen angibt.
wird in zwei Teile aus neun Bits geteilt, die in der Ein CCW umfaßt einen Operationsteil, der die
Beschreibung mit hoher und niedriger Teil bezeichnet auszuführende Operation — z. B. vorwärts oder
werden. Die Operation des /4-Speichers wird gesteuert 30 rückwärts Lesen oder Schreiben — angibt, eine
durch ein drei Bit großes Feld, von dem zwei Bits vom Datenadresse, die die Position des ersten gewünschten
/(-Speicher und das dritte Bit vom Feld 70 des Bytes im Hauptspeicher darstellt, das zu adressieren ist,
/4-Speichers selbst gespeist werden. Außer der Bestim- fünf Kennzeichen sowie eine Zahl, die die Anzahl von
mung des Schlüssels und der Operation wählt das Bytestellen im Hauptspeicherbereich angibt, die in der
Steuerfeld die in den beiden Phasen eines Speicherzy- 35 Operation zu benutzen sind. Die Kennzeichen sind unter
klus zu verwendenden Masken. Wenn das Feld 70 eine 1 anderem: ein Datenverkettungszeichen (CD), welches
enthält, wird E/A-1 für die Eingabe und die Ausgabe im Einerzus.and anzeigt, daß die durch dieses
verwendet, sonst E/A-2. Kanalkommandowort CCW definierte Operation mit
Die durch das Steuerfeld auswählbaren Operationen dem Datenbereich des Hauptspeichers weiterzuführen
sind folgende (das äußerste linke Bit kommt vom Feld 40 ist, der durch ein weiteres CClV definiert ist; ein
70): Kommandoverkettungszeichen (CC), welches im Einer-
000 Suchenüberden Feldern76,79und71. zustand und bei Null-Zustand des Datenverkettungs-Lesen über den Feldern 76,79 und 71. Kennzeichens die Einleitung einer durch ein weiteres
Im Feld 76 werden der hohe Teil und im Feld 79 der CCW angegebenen Operation auf derselben E/A-Einniedrige Teil der Adresse unverändert in E/A-2 erhalten. 45 heit veranlaßt. Die Datenverkettung wird für Operatio-
100 Suchen überden Feldern 72,75 und 71. nen mit nicht nebeneinanderliegenden Datenbereichen
Lesen über den Feldern 72,75 und 71. benutzt; die Kommandoverkettung erübrigt die Neu-
Im Feld 72 werden der hohe Teil und im Feld 75 der adressierung einer E/A-Einheit am Ende einer jeden
niedrige Teil der Adresse unverändert in E/A-1 erhalten. Operation, welche eine Reihe von Operationen auf
010 Suchen über den Feldern 70,76 und 79. 50 derselben Einheit auszuführen ist. Eine weitere Opera-Lesen über den Feldern 76,77 und 71. tion, die durch ein CCW vorgeschrieben sein kann, ist
Der hohe Teil wird im Feld 72 festgehalten, und der eine Steueroperation. Dazu gehört die Datenübertra-
niedrige Teil um »1« dekrementiert durch Suchen über gung von angegebenen Hauptspeicheradressen an die
dem Feld 70. periphere Einheit, die dann die Daten als Steuerinfor-
Wenn die Übertrags-Voraussageleitung mit dem 55 mationen interpretiert, die z. B. eine Platteneinheit
Schlüssel 10 gewählt wird, bedeutet das, daß der hohe beauftragen, einen Magnetkopf auf eine gegebene Spur
Teil dekrementiert werden muß, und eine »1« wird in zu setzen oder einer Magnetbandeinheit befehlen, das
das Feld 71 gegeben und dadurch der Inhalt des Band zurückzuspulen oder um einen bestimmten
E/A-Registers verändert Abstand zurückzusetzen. Der Kanal behandelt eine
110 Suchen über den Feldern 70,72 und 75. 60 Steueroperation wie eine Schreiboperation, so daß sich
Lesen über den Feldern 72,73 und 71. eine besondere Beschreibung erübrigt. Eine weitere
Dieser Vorgang resultiert aus der vorhergehenden möglicherweise angeforderte Operation ist eine Abfra-
Operation. Da die Felder 75 und 76 miteinander geoperation, durch die die CPU den momentanen
verbunden sind, wird der hohe Teil dekrementiert und Zustand einer E/A-Einheit erfährt. Der Kanal behandelt
das wertniedrigere Byte mit Einsen gefüllt. 65 eine Abfrageoperation wie eine Leseoperation, da das
001 Suchen über den Feldern 70,76 und 78. den Zustand der E/A-Einheit beschreibende Byte für Lesen über den Feldern 76,77 und 71. den Kanal wie ein Datenbyte aussieht.
Der hohe Teil wird aufrechterhalten, während der Jede Operation beginnt mit einem Austausch von
Steuersignalen, um eine Verbindung mit der angeforderten E/A-Einheit herzustellen. Diese Steuersignale benutzen die Kennzeichen-Eingabe- und Kennzeiehen-Ausgabe-Register 41 und 40. Die Antworten des Kanals sind bestimmt durch eine Funktionstabelle, die im /C-Speicher gespeichert ist und durch ein Suchargument adressiert wird, welches die im Kennzeichen-l.ingabe-Register 40 festgehaltenen Signale von der E/A-Einheit UmTaUt, die auf das Feld 58 des /(-Speichers gegeben werden. Adreß- und Kommandodaten werden in das Sammellcitungs-Register 42 vom D-Speicher über den P-Speicher übertragen. Abhängig vom jeweiligen Kommando führt der Kanal dann einen Lesevorgang oder einen Schreibvorgang oder einen Rückwärts-Lesevorgang aus. Die in den einzelnen Schritten beschriebenen Vorgänge unterscheiden sich etwas dadurch, daß jeweils entweder nur ein Byte oder aber zwei Bytes oder ein Halbwort zu und von dem Hauptspeicher übertragen werden. Eine normale Speicheroperation besteht in der Übertragung von zwei Bytes, was bedeutet, daß die Speicheradresse, die Adresse des· zu übertragenden wertniederen Bytes, normalerweise gerade ist. Wenn die Speicheradresse ungerade ist oder die Längenangabe »eins« beträgt, wird dadurch gesagt, daß nur ein Byte in den oder aus dem Hauptspeicher zu übertragen ist, und dadurch erkannt, daß die Verarbeitung für nur ein Datenbyte angefordert ist.
Lesevorgang
Schritt 1
/(-Speicher.
Die Pufferbytezahl (anfangs Null) wird beibehalten. Wenn ein Bedienungsanforderungssignal im Feld 58 festgestellt wird, wird das Antwortsignal »Bedienung aus« auf das Kennzeichen-Ausgabc-Register 41 gesendet und durch das Feld 56 auf die E/A-Einheit geleitet. Wenn die Daten von der pcripheren Einheit übertragen werden, ist das Signal »Bedienung ein« begleitet vom Signal »Operation ein«. Die Feststellung dieser Signalkombiration durch den /(-Speicher führt zur Abgabe einer Eins aus dem Feld 54, um die Daten im Sammelleitungs-Register 43 festzuhalten.
A-Speicher.
Die Datenadresse wird um 1 erhöht.
Z-Speicher.
Der Zählwert wird beibehalten und geprüft. Ist er Null, werden die Steuerdaten vom Feld 65 in den /(-Speicher und den D-Speicher übertragen, um die Operation zu beenden.
P-Speicher.
Keine Operation.
Die Durchführung des ersten Schrittes ist davon abhängig, ob der /(-Speicher das Signal »Bedienung ein« erhält. Bis es eintrifft, führen die Speicher keine Operation aus, wobei der /(-Speicher in Zyklen über ein Lesefeld läuft, welches das Feld 58 umTaßt.
Schritt 2
^-Speicher.
Die PuTferbytezahl wird um 1 erhöht und mit einer Prüfung festgestellt, ob die Verarbeitung von ein
oder zwei Datenbytes gefordert wird.
/4-Speicher.
Die Datenadresse wird beibehalten.
. Z-Speicher.
Der Zählwert wird beibehalten.
P-Speicher.
Mit der Operation Nächste/Schreiben/Primär wird der Inhalt des Sammelleitungs-Registers 43 in den Pufferspeicher geschrieben.
Wenn eine Übertragungsanforderung für zwei Dalenbytes festgestellt wird und die Pufferbytezahl kleiner als 2 ist, wird zum Schritt 1 zurückgegangen, um das andere Datenbyte zu erhalten. Nach einer Wiederholung des Schrittes 1 folgt eine Wiederholung des Schrittes 2 zur Übertragung des empfangenen Bytes
ίο in den P-Speicher.
Schritt 3 (Übertragung von zwei Datenbytes)
/(-Speicher.
Die Pufferbytezahl wird um 1 erhöht. Das Signal »Bedienung ein« wird überwacht, indem Feld 58 in
das Suchfeld eingeschlossen wird, so daß das Signal »Bedienung aus« beendet werden kann, sobald das Signal »Bedienung ein« aufhört. Dadurch wird die periphere Einheit zur Übertragung des nächsten Signals im Austausch freigegeben.
Λ-Speicher.
Die Adresse wird beibehalten.
Z-Speicher.
Der Zählwert wird um 1 heruntergesetzt.
P-Speicher.
Mit der Operation Nächste/Lesen/Sekundär wird ein Byte aus dem P-Speicher in das SDR gelesen.
Schritt 4 (Übertragung von zwei Datenbytes)
Schritt 3 wird wiederholt, jedoch teilt der /(-Speicher ^ dem Hauptspeicher zusätzlich mit, daß eine Schreiboperation mit dem Inhalt des SDR erfolgen kann, welches jetzt die beiden Datenbytes enthält. Die Schreiboperation des Hauptspeichers erfolgt jedoch während des Schrittes 1 des Lesevorgangs.
Schritt 3 (Übertragung von einem Datenbyte)
/(-Speicher.
Die Pufferbytezahl wird um 1 herabgesetzt. Das Signal »Bedienung ein« wird überwacht.
/4-Speicher.
Die Adresse wird beibehalten.
Z-Speicher.
Der Zählwert wird um 1 herabgesetzt.
P-Speicher.
Mit der Operation Nächste/Lesen/Sekundär wird ein Byte aus dem P-Speicher ir. das SDR gelesen.
Dem Hauptspeicher wird mitgeteilt, daß im SDR ein Byte zum Schreiben in den Hauptspeicher bereitsteht.
Ungeachtet dessen, ob ein oder zwei Datenbytes übertragen wurden, wird Schritt 1 jetzt wiederholt, und in den Hauptspeicher werden die Daten aus dem SDR eingeschrieben. Die Schleife wird erst nach Beendigung des Schrittes 1 verlassen. Bei Feststellung des Zählwertes 0 stoppt der Selektorkanal die Leseoperation. Wenn die Pufferbytezahl gleich der Längenangabc ist, wird ein Signal für das Ende der Datenübertragung von der E/A-Einheit abgegeben. Ohne Datenverkettung wird^durch Feststellung dieser Bedingung im Z-Speicher die Änderung des Suchargumentes für den /(-Speicher veranlaßt, so daß letzterer beim Beginn des Signals »Bedienung ein« antwortet mit »Kommando aus«. Wenn Datenverkettung vorgeschrieben wurde, gibt der Z-Speicher ein Signal an den D-Speicher, der dann das nächste CClV abruft. In der Zwischenzeit wurde das Signal »Bedienung ein« mit »Bedienung aus« beantwortet, so daß die E/A-Einheit weiter Daten an den Kanal übertragen kann.
13 14
enthält die UND-Glieder 102 und 103, deren Ausgangs
Schreibvorgang signale den Eingängen des ODER-Gliedes 104 züge
führt werden. Ein Signal auf der Leitung 105 füi »Bedienung ein« siellt je einen Eingang für di«
Der Schreibvorgaiig läuft ähnlich ab wie der s UND-Glieder 102 und 103 dar: auf dieser Leitung gib Lesevorgang und wird daher nicht im Detail beschrie- die periphere Einheit das Signal »Bedienung ein« ab ben. Wie bereits gesagt, arbeitet die Datenübertragung Der Ausgang 106 des ODER-Gliedes 104 gibt das Signa vom SDR auf den P-Speicher mit der Operation »Bedienung aus« an die periphere Einheit ab. Außerdem Nächste/Lesen/Sekundär. Auf Datenverkettung wird is, diese Leitung mit dem zweiten Eingang dewährend eines Schreibvorgangs geprüft, wenn der 10 UND-Gliedes 103 verbunden. Die zweite bistabil« Zählwert gleich oder kleiner ais 16 (Kapazität des Anordnung 107 enthält ein ODER-Glied 108, desser P-Speichers) ist. Wenn keine Datenverkettung erforder- Ausgang als ein Eingang an das UND-Glied 109 gefühn lieh ist. läuft die Operation weiter, bis der Z-Speicher die ist Die Inverter 110 und Ul sind in Reihe an der Bedingung »Zählwert = 0« feststellt. Wenn der Ausgang des ODER-Gliedes 108 angeschlossen. Dei P-Speicher leer ist. wird das Signal »Kommando aus« ,5 mitt|ere Verbindungspunkt der Inverter ist als Eingang durch den /(-Speicher abgegeben, und die Datenüber- M2 an das UND-Glied 102 angeschlossen. Der zweite tragung wird beendet. Wenn Datenverkettung gefor- Eingang 114 des UND-Gliedes 109 ist über einen den ist. wird das nächste CCW in den D-Speicher |nverter mii dem Feld 54 des K-Speichers (Fig.3] übertragen, während die gegenwärtig im Kanal verbunden, welches die Datenübertragung vom Sambefindlichen Daten an die periphere Einheit übertragen 20 melleitungs-Register43auf den /^-Speicher steuert,
werden. Wenn »Zählwert = 0« festgestellt wird, werden Zunächst ist das Signal auf der Leitung 112 aktiv und
die Daten auf die Speicher Z, A und K verteilt. Ein bereitet die bistabile Anordnung 101 so vor. daß sie Kennzeichen »Verkettungsgrenze« wird in die durch das Erscheinen des Signals »Bedienung ein« auf Speicherstelle des Puffers eingeschrieben, welche das der Leitung 105 gesetzt werden kann. Das Antwortsiletzte Datenbyte enthält, das Jurch das laufende CCW 25 gnal »Bedienung aus-< wird durch ein ODER-Glied 104 angegeben wurde. Es kann passieren, daß die Daten- auf die Leitung iO6 gegeben, wodurch außerdem die übertragung beendet wird, wenn zwar der Zählwert = 0 bistabile Anordnung 107 gesetzt wird. Das resultierende ist. jedoch bevor alle zu einem CCWgehörenden Daten Ausgangssignal auf der Leitung 113 wird dem aus dem Puffer übertragen wurden. Das Verkettungs- K-Speicher zugeführt, um den Empfang des Signals grenzzeichen gestattet es. die verbleibenden Bytes zu 30 »Bedienung ein« zu signalisieren. Wenn das Signal zählen. »Bedienung ein« aufhört, wird die bistabile Anordnung
Ein Rückwärts-Lesevorgang unterscheidet sich von 101 zurückgestellt, und das Signal »Bedienung aus« aul dem oben beschriebenen Lesevorgang dadurch, daß die der Leitung 106 fällt schnell ab. Die bistabile Anordnung Datenadresse herabgesetzt und nicht heraufgesetzt 107 bleibt gesetzt, bis der Eingang 114 zum UND-Glied wird. Die Bedingungen für die Übertragung von ein und 35 109 inaktiv wird auf Grund eines Bits im Feld 54 des zwei Ddtenbytes sind auch etwas anders. K-Registers, welches den Inhalt des Sammelleitungs-
Um die Geschwindigkeit der Datenübertragung zu Registers 43 in den P-Speicher leitet. Die bistabile erhöhen, kann der in den Fig. 2 und 3 gezeigte Anordnung 101 kann durch ein neues »Bedienung ein«- Selektorkanal etwas modifiziert werden. Eine erste Signal auf der Leitung 105 nur gesetzt werden, nachdem Modifikation betrifft den Austausch der Signale 40 die bistabile Anordnung 107 durch die Übertragung des »Bedienung ein« und »Bedienung aus« während eines empfangenen Byte auf den P-Speicher zurückgestellt Lesevorgangs. Der /C-Speicher überwacht nicht konti- wurde. Diese Anordnung ersetzt einen Teil der Tabelle nuierlich die Leitung mit dem Signal »Bedienung ein«, im /C-Speicher und schaltet die beiden Zyklen aus. die prüft jedoch die Leitung jedesmal am Anfang der ersten gemäß obiger Beschreibung durch die zyklische Prüfung Phase eines Speicherzyklus. Das Signal »Bedienung ein« 45 der Leitung, die das Signal »Bedienung ein« führt, wird nach der Übertragung eines jeden Datenbyte vergeudet wurden.
beendet, und anschließend muß auch das Signal Zur Leseoperation gehört die byteweise Datenüber-
»Bedienung aus« enden. In ähnlicher Weise muß das tragung von P-Speicher auf das SDR, da jedes Wort des Signal »Bedienung aus« beginnen, wenn das Signal P-Speichers nur ein Datenbyte enthält. Wenn die oben »Bedienung ein« beginnt, um die Übertragung eines 50 beschriebenen bistabilen Anordnungen benutzt werden, Datenbytes an den Kanal zu signalisieren. Das Signal ist eine andere Konstruktion des P-Speichers möglich, Bedienung ein« wird festgestellt am Anfang eines um die Übertragung von zwei Bytes in einem Zyklus 1 (normalerweise Schritt 1) eines Lesevorgangs, Speicherzyklus zu ermöglichen. Ohne die bistabilen und das Signal »Bedienung aus« wird am Ende des Anordnungen kann die zu beschreibende Speicher-Kon-Zyklus 1 übertragen. Derfrüheste Zeitpunkt an dem das 55 struktion auch benutzt werden. Man spart dann jedoch Ende des Signals »Bedienung ein« festgestellt werden keine Speicherzyklen im Gesamtlesevorgang, da die kann, ist der Beginn des Zyklus 3, da dieses Signal durch durch die Konstruktion einsparbaren Zyklen dazu die Verzögerungen infolge Übertragungs- und Schalt- benutzt werden, auf den Beginn und das Ende des vorgängen erst am Anfang des zweiten Zyklus nach Signals »Bedienung ein« zu warten.
Prüfen der Leitung aufhören kann. Am Ende des dritten 60 Die spezielle Speicherkonstruktion ist in Fig. 6 Zyklus endet das Signal »Bedienung aus«, und wiederum gezeigt. Der P-Speicher ist durch zwei Pufferspeicher kann der folgende Beginn des Signals »Bedienung ein« P\ und P2 ersetzt worden. Jedes Wort eines jeden erstam Anfang des fünften Zyklus festgestellt werden. Speichers enthält ein Datenbyte in doppelter Ausfüh-
Die Verzögerungen können ausgeschaltet werden. rung. Aufeinanderfolgende Bytes 1, 2. 3 ... werden indem man zwei bistabile Schaltungsanordnungen für 65 abwechselnd in den Speichern P\ und /'2 gespeichert, die kontinuierliche Überwachung der Leitung für das Aus jedem der beiden Speicher wird je ein ausgewähltes Signal »Bedienung ein« vorsieht. Ein Beispiel ist in Byte gleichzeitig gelesen, und/war ie ein Byte in je eine Fig. 5 gezeigt. Die erste bistabile Anordnung 101 liälftc des SDR: leder der Speicher Pi und /'2 111
Standardform hat seine eigenen Merker, so daß die in das SDR gelesenen Bytes nicht unbedingt voneinander entsprechenden Wortregistern der Speicher kommen müssen. Das Datenbyte 1 kann z. B. bei Übertragung eines einzelnen Datenbytes in die geforderte Hälfte des SDR gelesen werden. Wenn die Bytes 2 und 3 für eine Zwei-Byte-Übertragung gelesen werden, wird die Operation Nächste/Lesen gleichzeitig in den Speichern P\ und P2 ausgeführt, und es wird das Byte 3 vom Speicher Pl und das Byte 2 vom Speicher P2 gelesen. obwohl es sicli nicht um entsprechende Wortregister in den beiden Speichern handelt. F i g. 6 zeigt außerdem die Verbindung zwischen den Speichern P1 und P2. das Register 42 für die abgehende Sammelleitung und das Register43 für die ankommende Sammelleitung. '5
Die Benutzung der beschriebenen bistabilen Anordnungen zusammen mit dem aus zwei parallelen Tcilspeichern bestehenden Pufferspeicher kann die Anzahl von Speichcrzyklen für einen typischen l.esevorgang von acht auf fünf reduzieren. Es wurde ein K/A-Kanal beschrieben, der unabhängig voneinander
arbeitende Funktionseinheiten enthält, von denen eine eine Ansrhlußeinheit zwischen Kanal und Prozessor eines Datenverarbeitungssyslenis bildet, und die andere eine Anschlußeinheit zwischen Kanal und den E/A-Kinheiten. Die Prozessor-Anschlußcinheit setzt die Stcucrdatcn zusammen, während die E/A-Anschlußeinheil mit der Übertragung von Daten oder Steuerinformationen zwischen dem Hauptspeicher des Systems und einer angewählten E/A-Einheit beschäftigt ist. Der Kanal ist aus Assoziativspeichern aufgebaut, und Operationen werden durch Tabcllensuchvorgänge in Funktionstabellen ausgeführt.
In einer anderen Anordnung braucht es sich bei dem Steuerspeicher der Prozessor-Anschlußeinheit nicht um einen veränderlichen Assoziativspeicher zu handeln, es kann auch ein konventioneller assoziativ adressierter Festwertspeicher sein. Der P-Spcichcr kann außerdem ersetzt werden durch einen konventionell adressierten Pufferspeicher, wobei der K-Speicher so modifiziert wird, daß er die Adressen der ersten und letzten Datcnbyles im P-Spcichcr feslhäli und fortschreib).
Hierzu 4 Blatt Zeichnungen

Claims (7)

1 2 Patentansprüche: vom Prozessor gemacht wird, so daß während der Prozessor Daten verarbeitet, andere Daten von
1. Eingabe-/Ausgabekanal für eine Datenverar- Eingabegeräten hereingeholt oder an Ausgabegeräte beitungsanlage mit Prozessoren, Hauptspeicher und abgegeben werden können. So ist z. B. durch die Ein- und Ausgabeeinheiten, der eine Prozessor-An- 5 deutsche Auslegeschrift 12 32 374 eine Zusarumenschal- schlußeinheit und eine Eingabe-/Ausgabe-Anschluß- tung einer Mehrzahl dalenverarbeitender Maschinen einheit enthält, wobei beide sowohl eingangsseitig bekanntgeworden, die dadurch gekennzeichnet ist, daß als auch ausgangsseitig mit einem Speicherdaten- jede Eingangsschaltung Hilfsspeicher zur Aufnahme der register des Hauptspeichers verbunden sind und bei die Eingangsinformationen bildenden Worte und eine dem die Eingabe-ZAusgabe-Anschlußeinheit mit den io Adressen Vergleichs-Einrichtung hat und, abhängig vom peripheren Eingabe-/Ausgabeeinheiten zur Ober- Ergebnis des Adressenvergleichs, entweder die Durch- tragung von Daten zwischen dem Hauptspeicher schallung der Information zum Zwischenspeicher und den peripheren Eingabe-/Ausgabeeinheiten ver- steuert oder, bei negativem Vergleichsergebnis, die bunden ist, dadurch gekennzeichnet, Weilerleitung der ankommenden Information verhin- daß die Prozessor-Anschlußeinheit (15) und die Ein- 15 dert und die eigenen damit bereits angefüllten gabe-/Ausgabe-Anschlußeinheit (16) zur Obertra- Hilfsspeicher löscht und daß jede Ausgangsschaltung gung von Steuerdaten aus der Prozessor-Anschluß- Hilfsspeicher zur Aufnahme der die Ausgangsinformaeinheit und zur Übermittlung von Daten miteinander tionen bildenden Worte und eine Prüfvorrichtung für verbunden sind und daß in der Prozessor-Anschluß- die Prüfung der vollständigen Wortzahl und der einheit jeweils die Steuerdaten für den nächsten 20 Zulässigkeit der abgebenden Adresse hai und, abhängig Datenübertragungsvorgang zusammengestellt wer- von dem Prüfergebnis, die Durchschaltung der abzuge- den, während der laufende Datenübertragungsvor- benden Information an den Übertragungskanal steuert gang mit Hilfe der Eingabe-ZAusgabeanschlußein- oder, bei negativem Prüfergebnis, die Weiterleitung heit erfolgt verhindert und die eigenen mit der nicht weiterzuleiten-
2. Eingabe-/Ausgabekanal nach Palentanspruch I. 2S dcn information angefüllten Zwischenspeicher sowie dadurch gekennzeichnet, daß die Prozessor-An- den Hilfsspeicher löscht
Schlußeinheit einen Assoziativspeicher als Daten- Dicse Datenübertragungsstcuerung hat jedoch den
speicher ^enthalt, in welchem die vom Prozessor Nachteil, daß der Zcntralprozessor Tür die Einleitung gelieferten Steuerdatei zusammengestellt werden der Datenübertragung mitbenutzt wird, wodurch er Tür sowie einen Steuerspeicher (S) fur Mikroinstruklio- 30 dic eigentlichen internen Operationen blockiert wird.
nen zur Steuerung des Betriebs des Datenspeichers Außerdem besteht ein wesentlicher Nachteil der
' '· bekannten Übertragungskanüle darin, daß sowohl für
3. tingabe-/Ausgabekanal nach Patentanspruch ?. dic Prozessoroperationen als auch für die Kanalopcradadurch gekennzeichnet, daß der Steuerspeicher (S) lionen nur cin gemeinsamer Steuerspeicher, der dic ein Assoziativspeicher ist. 35 Mikroprogramme für alle Operationen enthält, zur
4. Eingabe-/Ausgabekanal nach den Patcntan- Verfügung steht.
sprächen I bis 3, dadurch gekennzeichnet, daß die Es wurde m.n gefunden, daß die Kanalmikroprogram-
Emgabe-Musgabe-Anschlußeinheit (16) einen Koor- mc re|aliv kurz sindt d h sie bestehen zum größten Teil
dinationsspeicher (K) m Form eines Assoziativspci- aus scchs Mikroinstruktionen, zu deren Durchführung
chers zur Speicherung von Funktionstabeilen ent- 4O jedesmal die Prozessoroperationen unterbrochen wer-
hält, die zur Abgabe von Kanal-Antwortsignalen auf den müssen
Grund von Steuersignalen aus Eingabe-ZAusgabege- Aus der DE-OS 15 24 102 ist eine elektronische, aus
raten dienen. Baueinheiten aufgebaute Datenverarbeitungsmaschine
5. Eingabe-/Ausgabekanal nach den Patentan- bekannt geworden, die einen Prozessor, einen Haupt-Sprüchen 1 bis 4, dadurch gekennzeichnet, daß die 45 speicher, Ein-/ und Ausgabeeinheiten sowie einen Ein-Eingabe-Musgabe-Anschlußeinheit (16) einen asso- " gabe-Ausgabekanal enthält, bei der der letztere eine ziativen Adreßspeicher (A) enthalt, durch den mit Prozessor-Anschlußeinheit und eine Eingabe-/Ausgabe-Hilfe gespeicherter Tabellen Hauptspcicheradrcs- anschlußeinheit enthält, wobei beide sowohl eingangssen modifiziert werden. sejtjg ais aucn ausgangsseitig mit dem Speicherdaten-
6. Eingabe-/Ausgabekanal nach den Patentan- so register des Hauptspeichers verbunden sind und bei der Sprüchen 1 bis 5, dadurch gekennzeichnet, daß die dje Eingabe-/Ausgabe-Anschlußeinheit mit dem Haupt-Eingabe-/Ausgabe-Anschlußcinheit (16) einen Asso- speicher über dessen Speicheradreßregister und mit den ziativspeicher als Pufferspeicher (/^enthalt, peripheren Eingabe-/Ausgabeeinheiten zur Übertra-
7. Eingabe/Ausgabckanal nach Patentanspruch 6, gung von Daten zwischen dem Hauptspeicher und den dadurch gekennzeichnet, daß zu jeder Wort- 55 peripheren Eingabe-ZAusgabeeinheiten verbunden ist. spcicherstelle des Pufferspeichers (P) ein erster und Obwohl hier beschrieben ist, daß das Verarbeitungsgeein zweiter Merker vorgesehen sind, derart, daß bei rat Deskriptoren bildet und in den örtlichen Speicher einer Wortspeichersielle. in die zuletzt geschrieben gjbt und daß das Datenbedienungsgerät Deskriptoren wurde, jeweils der erste Merker und bei einer aus dem örtlichen Speicher entnimmt und die Ein-Wortspeicherstellc, aus der zuletzt gelesen wurde, ()0 gabe-/Ausgabe damit steuert, fehlt hier ein zeitlicher jeweils der zweite Merker gesetzt wird. Zusammenhang zwischen der Erzeugung und der Ver arbeitung der Deskriptoren völlig. Da ein größerer Vor-
rat von abzuarbeitenden Deskriptoren im örtlichen
Speicher gespeichert ist, ist bei dieser Anlage noch ein
Die I'rfindung betriflt einen Iingabe/Ausgabekanal <>s zusätzlicher Speicher vorhanden.
gemäß Oberbegriff des Patentanspruchs 1. Der Ijfiiidung liegt deshalb die Aufgabe /iigmnde.
Heim Entwurf von Dateniibeitiagiiiigskaniilen achtet einen liingabe/Ausgaliekanal für Uatenverarbeitiings-
man darauf, daß iler Kanal so unabhan.u'i».· \Me nioj.'lii-h anlagen /11 schaffen, der mit einem Minimum an
DE19712130299 1970-06-27 1971-06-18 Eingabe-/Ausgabekanal für eine Datenverarbeitungsanlage Expired DE2130299C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB3127870 1970-06-27

Publications (3)

Publication Number Publication Date
DE2130299A1 DE2130299A1 (de) 1972-01-05
DE2130299B2 DE2130299B2 (de) 1975-10-23
DE2130299C3 true DE2130299C3 (de) 1978-09-21

Family

ID=10320731

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19712130299 Expired DE2130299C3 (de) 1970-06-27 1971-06-18 Eingabe-/Ausgabekanal für eine Datenverarbeitungsanlage

Country Status (10)

Country Link
JP (1) JPS5118296B1 (de)
BE (1) BE766468A (de)
CA (1) CA935935A (de)
CH (1) CH526166A (de)
DE (1) DE2130299C3 (de)
ES (1) ES392443A1 (de)
FR (1) FR2095551A5 (de)
GB (1) GB1264096A (de)
NL (1) NL7108868A (de)
SE (1) SE360759B (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2606295C3 (de) * 1976-02-17 1981-05-27 Siemens AG, 1000 Berlin und 8000 München Anordnung zur Übertragung von Zeichen zwischen über einen Multiplexkanal ansteuerbaren peripheren Einheiten und einem Arbeitsspeicher eines Zentralprozessors
GB2061577B (en) * 1977-08-04 1982-10-20 Honeywell Inf Systems Data transfer control in a peripheral controller
DE2845218C2 (de) * 1978-10-17 1986-03-27 Siemens Ag, 1000 Berlin Und 8000 Muenchen Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchführen von Ein-/Ausgabeoperationen
EP0021489A1 (de) * 1979-06-08 1981-01-07 Koninklijke Philips Electronics N.V. Ein-/Ausgabekanal für ein schnelles Datenverarbeitungssystem
CA1162314A (en) * 1979-12-07 1984-02-14 Hideo Ota Data input/output method and system
AU555632B2 (en) * 1982-03-12 1986-10-02 Honeywell Information Systems Incorp. Multiplexing central to peripheral control signals
US4523310A (en) * 1983-01-28 1985-06-11 Gould Computer Systems Inc. Synchronous communications multiplexer
US7502873B2 (en) 2006-10-10 2009-03-10 International Business Machines Corporation Facilitating access to status and measurement data associated with input/output processing
US7500023B2 (en) 2006-10-10 2009-03-03 International Business Machines Corporation Facilitating input/output processing by using transport control words to reduce input/output communications
US7941570B2 (en) 2008-02-14 2011-05-10 International Business Machines Corporation Bi-directional data transfer within a single I/O operation
US7908403B2 (en) 2008-02-14 2011-03-15 International Business Machines Corporation Reserved device access contention reduction
US7899944B2 (en) 2008-02-14 2011-03-01 International Business Machines Corporation Open exchange limiting in an I/O processing system
US8176222B2 (en) 2008-02-14 2012-05-08 International Business Machines Corporation Early termination of an I/O operation in an I/O processing system
US8108570B2 (en) 2008-02-14 2012-01-31 International Business Machines Corporation Determining the state of an I/O operation
US7917813B2 (en) 2008-02-14 2011-03-29 International Business Machines Corporation Exception condition determination at a control unit in an I/O processing system
US8312189B2 (en) 2008-02-14 2012-11-13 International Business Machines Corporation Processing of data to monitor input/output operations
US7937507B2 (en) 2008-02-14 2011-05-03 International Business Machines Corporation Extended measurement word determination at a channel subsystem of an I/O processing system
US8095847B2 (en) 2008-02-14 2012-01-10 International Business Machines Corporation Exception condition handling at a channel subsystem in an I/O processing system
US8214562B2 (en) 2008-02-14 2012-07-03 International Business Machines Corporation Processing of data to perform system changes in an input/output processing system
US8082481B2 (en) 2008-02-14 2011-12-20 International Business Machines Corporation Multiple CRC insertion in an output data stream
US7840718B2 (en) 2008-02-14 2010-11-23 International Business Machines Corporation Processing of data to suspend operations in an input/output processing log-out system
US8117347B2 (en) 2008-02-14 2012-02-14 International Business Machines Corporation Providing indirect data addressing for a control block at a channel subsystem of an I/O processing system
US8478915B2 (en) 2008-02-14 2013-07-02 International Business Machines Corporation Determining extended capability of a channel path
US9052837B2 (en) 2008-02-14 2015-06-09 International Business Machines Corporation Processing communication data in a ships passing condition
US8196149B2 (en) 2008-02-14 2012-06-05 International Business Machines Corporation Processing of data to determine compatability in an input/output processing system
US7840717B2 (en) 2008-02-14 2010-11-23 International Business Machines Corporation Processing a variable length device command word at a control unit in an I/O processing system
US8166206B2 (en) 2008-02-14 2012-04-24 International Business Machines Corporation Cancel instruction and command for determining the state of an I/O operation
US7904605B2 (en) 2008-02-14 2011-03-08 International Business Machines Corporation Computer command and response for determining the state of an I/O operation
US8001298B2 (en) 2008-02-14 2011-08-16 International Business Machines Corporation Providing extended measurement data in an I/O processing system
US7890668B2 (en) 2008-02-14 2011-02-15 International Business Machines Corporation Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous
US8055807B2 (en) 2008-07-31 2011-11-08 International Business Machines Corporation Transport control channel program chain linking including determining sequence order
US7904606B2 (en) 2008-07-31 2011-03-08 International Business Machines Corporation Transport control channel program chain linked branching
US7937504B2 (en) 2008-07-31 2011-05-03 International Business Machines Corporation Transport control channel program message pairing
US8332542B2 (en) 2009-11-12 2012-12-11 International Business Machines Corporation Communication with input/output system devices
RU2445675C1 (ru) * 2010-11-17 2012-03-20 Леонид Павлович Коршунов Система управления выводом данных
RU2445673C1 (ru) * 2010-11-17 2012-03-20 Леонид Павлович Коршунов Устройство управления выводом данных
US8364854B2 (en) 2011-06-01 2013-01-29 International Business Machines Corporation Fibre channel input/output data routing system and method
US8364853B2 (en) 2011-06-01 2013-01-29 International Business Machines Corporation Fibre channel input/output data routing system and method
US8677027B2 (en) 2011-06-01 2014-03-18 International Business Machines Corporation Fibre channel input/output data routing system and method
US8738811B2 (en) 2011-06-01 2014-05-27 International Business Machines Corporation Fibre channel input/output data routing system and method
US9021155B2 (en) 2011-06-01 2015-04-28 International Business Machines Corporation Fibre channel input/output data routing including discarding of data transfer requests in response to error detection
US8583988B2 (en) 2011-06-01 2013-11-12 International Business Machines Corporation Fibre channel input/output data routing system and method
US8549185B2 (en) 2011-06-30 2013-10-01 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
US8473641B2 (en) 2011-06-30 2013-06-25 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
US8312176B1 (en) 2011-06-30 2012-11-13 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
US8346978B1 (en) 2011-06-30 2013-01-01 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
RU2522025C1 (ru) * 2012-12-06 2014-07-10 Тимофей Леонидович Коршунов Система управления выводом данных
RU2551807C2 (ru) * 2012-12-18 2015-05-27 Леонид Павлович Коршунов Устройство управления выводом данных
US8918542B2 (en) 2013-03-15 2014-12-23 International Business Machines Corporation Facilitating transport mode data transfer between a channel subsystem and input/output devices
US8990439B2 (en) 2013-05-29 2015-03-24 International Business Machines Corporation Transport mode data transfer between a channel subsystem and input/output devices

Also Published As

Publication number Publication date
GB1264096A (de) 1972-02-16
DE2130299A1 (de) 1972-01-05
NL7108868A (de) 1971-12-29
DE2130299B2 (de) 1975-10-23
SE360759B (de) 1973-10-01
ES392443A1 (es) 1973-10-01
JPS5118296B1 (de) 1976-06-09
CA935935A (en) 1973-10-23
CH526166A (de) 1972-07-31
FR2095551A5 (de) 1972-02-11
BE766468A (fr) 1971-09-16

Similar Documents

Publication Publication Date Title
DE2130299C3 (de) Eingabe-/Ausgabekanal für eine Datenverarbeitungsanlage
DE2646296C3 (de) Elektronische assoziative Mehrrechner Schaltungsanordnung mit einem modularen Aufbau
DE3114961C2 (de)
DE1774296C2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE2455803C2 (de) Mehrprozessor-Datenverarbeitungsanlage
DE1299145B (de) Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen
DE1956604A1 (de) Datenverarbeitungsanlage mit einem Speichersystem
DE3638572C2 (de)
DE2806045A1 (de) Dv-system mit pufferspeicher
DE2350884A1 (de) Datenverarbeitungssystem
DE2415900A1 (de) Rechenautomat mit mehreren mit je einem vorratsspeicher versehenen rechenanlagen
EP0329005B1 (de) Verfahren zum Einrichten von über Koppelvielfache einer mehrstufigen Koppelanordnung verlaufenden virtuellen Verbindungen
DE1929010B2 (de) Modular aufgebaute datenverarbeitungsanlage
DE1524102B2 (de) Elektronische, aus baueinheiten aufgebaute datenverarbeitungsmaschine
DE3114921C2 (de) Mikroprogramm-Speicheranordnung
DE2054830A1 (de) Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
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
DE1909477A1 (de) Speichersteueranlage fuer ein Multiprogramm-Datenverarbeitungssystem
DE1499206B2 (de) Rechenanlage
DE2828741A1 (de) Einrichtung fuer die weiterleitung von speicherzugriffsanforderungen
DE2218630B2 (de) Schaltungsanordnung zur Steuerung von Unterbrechungssignalen in Datenverarbeitungsanlagen
DE1499191B2 (de) Elektronische einrichtung fuer eine datenverarbeitungsanlage
DE2610428A1 (de) Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden daten in einem pufferspeicher
DE2732068C3 (de) Schaltungsanordnung zur Steuerung des Informationsaustauschs zwischen den peripheren Einrichtungen und der zentralen Steuereinrichtung einer Fernmelde-, insbesondere Fernsprechvermittlungsanlage

Legal Events

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