DE2533403A1 - Datenverarbeitungssystem - Google Patents

Datenverarbeitungssystem

Info

Publication number
DE2533403A1
DE2533403A1 DE19752533403 DE2533403A DE2533403A1 DE 2533403 A1 DE2533403 A1 DE 2533403A1 DE 19752533403 DE19752533403 DE 19752533403 DE 2533403 A DE2533403 A DE 2533403A DE 2533403 A1 DE2533403 A1 DE 2533403A1
Authority
DE
Germany
Prior art keywords
output
input
command
line
control
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.)
Pending
Application number
DE19752533403
Other languages
English (en)
Inventor
Shelton Albert Foster
Allen Lee Shapiro
Douglas Tudor Sherwood
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.)
OMNUS COMPUTER CORP
Original Assignee
OMNUS COMPUTER 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 OMNUS COMPUTER CORP filed Critical OMNUS COMPUTER CORP
Publication of DE2533403A1 publication Critical patent/DE2533403A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • 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/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Bus Control (AREA)

Description

f Al lNTAIJWAlTE
HELMUT SCHROETER KLAUS LEHMANN
DIPL.-PHYS. DIPL.-ING.
OMNUS COMPUTER CORPORATION nil-oe-lO
BB/Bi.
1975
Datenverarbeitungssystem
Die Erfindung betrifft eine elektrische Informationsaustauschvorrichtung, insbesondere ein Datenverarbeitungssystem, welches mit einer Vielzahl von Eingabe-Ausgabe-Vorrichtungen verbunden ist.
Zu dem erfindungsgemäßen Datenverarbeitungssystem gehört ein Kleinrechner. Viele verschiedene Definitionen sind für den Ausdruck Kleinrechner aufgestellt worden. Im allgemeinen gehen diese Definitionen von dem Preis und nicht so sehr von der Leistung oder einer Beschreibung aus. Heutzutage geht die Definition für einen Kleinrechner von einem Durchschnittspreis aus, so daß Rechner als Kleinrechner bezeichnet werden, wenn die Kosten für ein minimales System bei ungefähr DM 501OOO,— oder darunter liegen. Obgleich einige allgemeine Unterschiede zwischen den meisten großen EDV-Anlagen und den meisten Kleinrechnern festgestellt werden können, so sind beide in Bezug auf den Aufbau, die Arbeitsweise und Verwendung sehr ähnlich. Der im folgenden verwendete Ausdruck Kleinrechner hat eher eine beschreibende Bedeutung, als daß er für eine Abgrenzung: verwendet wird. Die vorliegende Erfindung kann auch bei Systemen verwandt werden, zu denen Rechner jeder belieb: sei- Größt ge; ir en.
60Ö886/0971 ORJQiNAL INSPECTED
D-707 SCHWÄBISCH GMt!.1- O OEMEiNSAME KOKTEM: D-8 MlV-JCHSN
Telefon: (07171) 56 90 Deuticfce Bank München 70/37369 (BLZ 700 70U V) Tdefo.:: '0 89) 77 «<»
H. SCHROETER Telegramme: Schroepat Sdiwübbch Gmiind 02/00 535 (BLZ 6Π 700 Si) K. LEHMANN Telegram me: Schrjcpct Bodugaae 49 Tel«: 724« 16t p«g·; ■} P<w*fc*üi>nto Münchtn 16794 i-SO-» Upavu.yr.nU 10 IeUx: >-12 24S ptwe d
- 2 - nil-oc-lO
Bei den meisten Kleinrechnern wird eine von zwei Systemausbildungen verwandt. Bei dem ersten System verbindet eine Vielzahl von Datenübertragungswegen die Speicher, Register, Recheneinheiten und andere Grundelemente miteinander. Ein solches System wird als ein Vielwegsystem bezeichnet. Bei dem zweiten System, auch Einzelwegsystem genannt, sind die Grundeinheiten oder -elemente mit einem, nur in einer Richtung arbeitenden Eingabe-Datenübertragungsweg und einem einzigen, nur in einer Richtung arbeitenden Ausgabe-Datenübertragungsweg oder mit einem einzigen, in zwei Richtungen arbeitenden Eingabe-Ausgabe-Datenübertragungsweg verbunden. Der erfindungsgemäße Kleinrechner oder das erfindungsgemäße Datenverarbeitungssystem gehört zu der zweiten Art von Systemen, nämlich dem mit einem Einzeldatenübertragungsweg. Die Erfindung wird in Bezug auf ein System mit einem Einzeldatenübertragungsweg als bevorzugte Ausführungsform beschrieben, kann jedoch bei beiden Systemen von Kleinrechnern, wie es oben ausgeführt worden ist, eingesetzt werden.
1. Programmierte
Bei jedem Datenverarbeitungssystem mit einem Rechner wird im allgemeinen für die Datenübertragung zwischen dem Rechner und Eingabe-Ausgabe-Vorrichtungen eine von zwei verschiedenen Arten verwandt. Bei Anlagen mit einem großen Rechner verwendet man eine automatische Datenübertragung. Die automatische Datenübertragung wird durch einen Eingabe-Ausgabe-Befehl eingeleitet und durch einen besonderen Eingabe-Ausgabe-Processor gesteuert, der ein Teil des Hardware-Systems ist. Bei Klein-
609886/0971
- 3 - nil-oc-lO
rechnern geschieht andererseits die Datenübertragung zwischen dem Rechner und den Eingabe-Ausgabe-Vorrichtungen mittels einer programmierten Datenübertragung. Bei einer programmierten Datenübertragung wird jeder Eingabe-Ausgabe-Vorgang durch das Zeitgeber- und Steuersystem des Rechners gesteuert, nachdem ein Eingabe-Ausgabe-Befehl ausgeführt worden ist. Demzufolge geschieht bei einer programmierten Datenübertragung jeder Eingabe-Ausgabe-Vorgang aufgrund eines besonderen Eingabe-Ausgabe-Befehls und nicht als Teil einer Reihe von automatisch durch eine Hardware-Steuerung gesteuerter Befehle. Auch kann bei einer automatischen Datenübertragung eine solche zur gleichen Zeit vorgenommen werden, zu der andere Befehle durch den Rechner ausgeführt werden. Bei einer programmierten Datenübertragung kann natürlich kein anderer Befehl gleichzeitig mit der Ausführung der befehlgesteuerten Datenübertragung verarbeitet werden.
Die Erfindung wird im Zusammenhang mit einer bevorzugten Ausführungsform beschrieben, bei der ein Kleinrechner mit einem Einzeldatenübertragungsweg in einer Anlage verwendet wird, zu der eine Vielzahl von Eingabe-Ausgabe-Vorrichtungen gehört. Die gesamten Datenübertragungen zwischen einer Eingabe-Ausgabe-Vorrichtung der Anlage und dem Kleinrechner sind programmierte Datenübertragungen. Die Erfindung kann bei anderen Ausführungsformen von Rechnern verwendet werden, wie z.B. bei einem Großrechner, der mit einer Vielzahl von Eingabe-Ausgabe-Vorrichtungen verbunden ist.
Bei Kleinrechnern mit Mehrfach- und Einfachdatenübertragungswegen setzt sich ein Befehl zur Datenübertragung zwischen dem Rechner und einer Eingabe-Ausgabe-Vorrichtung aus mindestens
609886/0971
- 4 - nil-oc-10
drei Teilen zusammen: Einem ersten Teil zur Kennzeichnung der Art der übertragung; einem zweiten Teil, durch den die zu verwendende Eingabe-Ausgabe-Vorrichtung bezeichnet wird; einem dritten Teil, durch den die Speicherstelle in dem Speicher des Rechners beschrieben wird, an die Daten übertragen oder von der Daten abgerufen werden sollen.
Diese dreiteilige Wortstruktur, die normalerweise zur Datenübertragung bei einer programmierten Datenübertragung verwendet wird, hat zwei beträchtliche Nachteile. Zum ersten wird jedes zu oder von einer einzigen Eingabe-Ausgabe-Vorrichtung übertragene Wort durch einen getrennten Befehl übertragen, der einen identischen Teil enthält, nämlich die Kennzeichnung der verwendeten Eingabe-Ausgäbe-Vorrichtung. Infolgedessen müssen bei einem Eingabe-Ausgabe-Befehl mehr Bits verwendet werden, die Speicherplatz benötigen und die Gruppe der möglichen Eingabe-Ausgabe-Befehle verringert. Wenn ein einzelnes Wort an einer Stelle in einem Programm übertragen wird, ist der Nachteil gering. Wenn jedoch viele verschiedene Übertragungen zu oder von einer einzigen Eingabe-Ausgabe-Vorrichtung nacheinander gesteuert werden müssen, wird der Nachteil ganz beträchtlich. Wenn beispielsweise Hunderte von Datenworten zu einem Fernschreiber übertragen werden, ist es notwendig, den Zustand der Vorrichtung zu überprüfen, Datenworte und Kontrollworte zu übertragen, auf Übertragungsfehler zu überprüfen usw. Jeder solcher Vorgang benötigt einen besonderen Eingabe-Ausgabe-Befehl. Bei den im allgemeinen verwendeten Verfahren enthält jeder Befehl einen überflüssigen Teil, die Identifizierung des Fernschreibers. Der überflüssige Teil benötigt nicht nur Speicherraum, sondern er verringert die Anzahl der Eingabe-Ausgabe-Befehle für den Fernschreiber und andere Eingabe-Ausgabe -Vorrichtungen .
609866/0971
- 5 - nil-oc-10
253340:
Der zweite Nachteil liegt in dem Programmieraufwand, der bei den verwendeten Kleinrechnern, die mit einer programmierten Datenübertragung arbeiten, notwendig ist. Da jeder Datenübertragungsbefehl bei einer programmierten Datenübertragung die benutzte Eingabe-Ausgabe-Vorrichtung kennzeichnen muß, muß das Programm entweder einen verschiedenen Übertragungsbefehl für jede Eingabe-Ausgabe-Vorrichtung, die bei der Datenübertragung benutzt wird, haben, oder es muß ein zweites Programm zur Änderung des Eingabe-Ausgabe-Befehls im ersten Programm vorhanden sein. Bei einem System mit Hunderten von Eingabe-Ausgabe-Vorrichtungen müßten Hunderte von verschiedenen Befehlen in dem Programm vorhanden sein, um die gleiche Datenübertragung bei jeder Vorrichtung zu erhalten oder ein vollkommen verschiedenes, zweites Programm müßte im Speicher vorhanden sein. Auf alle Fälle wird die Programmierzeit erhöht und zusätzlicher Speicherplatz muß verwendet werden.
2. Programmunterbrechung bei Rechnern
Die Programmunterbrechungssysteme bei den gewöhnlichen Rechnern ermöglichen, daß ein gerade von dem Rechner ausgeführtes Programm durch äußere Ereignisse oder Vorrichtungen unterbrochen werden kann, wobei die Kontrolle an ein Dienstprogramm für die unterbrecnende Vorrichtung abgegeben wird. Beispielsweise kann ein Processrechner in einem System verwendet werden, in dem er mathematische Rechnungen ausführt und auch korrigierende Daten an eine äußere Vorrichtung ausgibt, wie z.B. an ein Steuerventil, wenn eine Abweichung von den Normaiwerten dur«h eine äußere Vorrichtung festgestellt worden ist. Wenn die äußere Vorrichtung ein» solche Abweichung f«stK«3llt,.
609838/097 1
- 6 - nil-oc-10
der Rechner unter der Steuerung eines arithmetischen Programmes Rechnungen ausführt, kann die Ausführung dieses Programmes unterbrochen und mit der Ausführung eines Unterbrechungsdienst programmes begonnen werden.
Normalerweise speichert der Rechner für eine spätere Verwendung die genaue Stelle im Rechenablauf weg und überträgt die Steuerung einem speziellen Programm zur Steuerung der Unterbrechungsvorrichtung. Wenn die Unterbrechungsvorrichtung bedient worden ist, wird die Steuerung an das arithmetische Programm zurückgegeben, welches an der Stelle fortsetzt, an der es unterbrochen worden ist.
Bei bekannten Unterbrechungssystemen wird die laufende Ausführungsstelle des Programmes aufgehoben und mit der Ausführung eines Unterbrechungsprogrammes begonnen. Durch andere, häufig verwendete Maßnahmen kann der Status, der dem Rechenprogramm zugeordnet ist, weggespeichert und eine Priorität, normalerweise mit einem Hardware-System, unter den verschiedenen Unterbrechungsvorrichtungen festgestellt werden.
Eine der wesentlichsten Eigenschaften aller bekannter Unterbrechungssysteme besteht darin, daß die gesamten Unterbrechungsprogramme in dem Rechenspeicher enthalten sind und infolgedessen alle durch den Zentralprocessor des Rechners ausgeführten Befehle dem Rechenspeicher entnommen werden. Durch eine Unterbrechung wird einfach die Speicheradresse geändert, von der die Rechenbefehle erhalten worden sind. Anschließend an eine Unterbrechung fährt der Rechner fort die Programmbefehle auszuführen, jedoch von einer verschiedenen Speicherstelle aus.
609886/0971
- 7 - nil-oc-lO
Der Nachteil der gebräuchlichen Unterbrechungssysteme besteht darin, daß die gespeicherten Befehle bewirken müssen, daß ein äußeres Ereignis oder eine Vorrichtung überprüft wird und ein unterschiedlicher Satz von Befehlen als Ergebnis der Überprüfung ausgeführt wird. Ferner, wenn die Überprüfung ergibt, daß ein anderer Satz von Befehlen ausgeführt werden muß, wie es oben beschrieben wurde, müssen der gerade vorliegende Status des Rechners, die Adresse des nächsten Befehles usw. weggespeichert werden. Anschließend an die Bedienung der Unterbrechung muß die vorhergehende Statusinformation in das Progranm register, das Statusregister, das Befehlsregister usw. überführt werden, bevor das ursprüngliche Programm wieder beginnen kann. Das Ergebnis dieser vielen Übertragungen und Zurückübertragungen der Programminformation und der wiederholten Überprüfungen der Unterbrechungen ist, daß die Arbeitsweise in Realzeit des Systems beeinträchtigt wird. Ein großer Teil der Zeit wird zum Überprüfen und für die innere Organisation verwandt, also fir Vorgänge, die nicht für eine Realzeit-Arbeitsweise zur Verfugen,-stehen.
Eine Aufgabe der Erfindung besteht darin, ein Datenverarbeit·^'-»'■-?- system mit einer programmierten Datenübertragung anzugeben, bei dem die Kennzeichnung der Eingabe-Ausgäbe-Vorrichtung nicht in jedem übertragenen Wort angegeben zu werden braucht. Ferner wird ein Unterbrechungssystem für ein Datenverarbeitungssystem angegeben, bei dem Befehle von einer äußeren Vorrichtung direkt in den Rechner übertragen werden können.
Eine Lösung dieser Aufgabe wird durch den Anspruch 1 angegeben.
609886/0971
- 8 - nil-oc-lO
Ein Vorteil der Erfindung besteht darin, daß ein besonderer Befehl, der als Verbindungsbefehl bezeichnet wird, bewirkt, daß eine gewählte Eingabe-Ausgabe-Vorrichtung mit dem Datenverarbeitungssystem verbunden und freigegeben wird. Gleichzeitig werden alle anderen Eingabe-Ausgabe-Vorrichtungen von dem System getrennt und gesperrt. Alle folgenden Datenübertragungen erfolgen zwischen dem Rechner und der gewählten Eingabe-Ausgabe-Vorrichtung bis ein weiterer Verbindungsbefehl ausgeführt worden ist, der eine andere Eingabe-Ausgabe7Vorrichtung freigibt.
Daraus ergibt sich, daß die oben beschriebenen Nachteile bei Systemen mit programmierter Datenübertragung bei der Erfindung nicht vorliegen. Nachdem durch einen Verbindungsbefehl eine Eingabe-Ausgäbe-Vorrichtung gewählt worden ist, ist kein weiterer Übertragungsbefehl notwendig, um die Eingabe-Ausgabe-Vorrichtung zu kennzeichnen. Entsprechend wird der zweite Befehlsteil, wie er oben beschrieben worden ist, bei allen folgenden Befehlen weggelassen. Dieser freie Teil kann vollkommen aus dem Befehlswort entfernt werden, wodurch die Befehlslänge verringert und Speicherplatz gespart wird. Der freie Teil kann auch dazu verwendet werden, um einen größeren Eingabe-Ausgabe-Befehlssatz zu bilden. Diese Möglichkeit wird als besonders vorteilhaft betrachtet und ergibt sich bei der bevorzugten AusfUhrungsform der Erfindung.
Ferner ist das Programm in Bezug auf die benutzte Eingabe-Ausgabe -Vorrichtung bei einer programmierten Datenübertragung übersichtlicher. D.h., die Eingabe-Ausgabe-Befehle des Programmes sind allgemein für alle Eingabe-Ausgabe-Vorrichtungen gültig, da keine besondere Vorrichtung gekennzeichnet werden muß. Infolgedessen kann der gleiche Datenübertragungsbefehl
609886/097 1
- 9 - nil-oc-10
verwendet werden, um Daten zwischen dem Rechner und allen ähnlichen Eingabe-Ausgabe-Vorrichtungen zu übertragen.
Als Folge des erfindungsgemäßen Unterbrechungssystems können Befehle, die ein Unterbrechungsprogramm darstellen, unmittelbar von der Unterbrechungsvorrichtung eingegeben werden.
Dadurch sind die für ein äußeres Ergeignis oder eine Vorrichtung oben beschriebenen Überprüfungsschritte nicht notwendig. Auch wird die Übertragung des laufenden Inhaltes des Programmregisters und der Rechenregister nicht notwendig. Man erhält dadurch eine weitere bedeutende Verbesserung des Realzeit-Arbeitsablaufes .
Ein Ausführungsbeispiel der Erfindung wird im folgenden anhand der Zeichnungen beschrieben.
Pig. 1 zeigt ein Blockdiagramm des gesamten erfindungsgemäßen Kleinrechnersystemes mit einem Einfachdatenübertragungsweg, wobei das Speicheruntersystem und zwei von mehreren Eingabe-Ausgabe-Untersystemen dargestellt sind, die durch die Erfindung gesteuert werden können.
Fig. 2 zeigt ein Blockdiagramm des Zentralprocessors des Kleinrechners mit gewissen, zum Verständnis der Erfindung notwendigen Registern.
Fig. 3 zeigt ein Blockdiagramm im einzelnen des Speicheruntersystems gemäß Figur 1.
6D988S/0971
- 10 - nil-oc-10
Pig. 4 zeigt ein Blockdiagramm des Eingabe-Ausgabe-Untersystems gemäß Figur 1, wobei die Steuereinheiten für die äußere Vorrichtung, die gesteuerten äußeren Vorrichtungen, die Beziehung zwischen den Steuereinheiten für die äußere Vorrichtung und dem Eingabe-, Ausgabe- und Steuerübertragungsweg dargestellt sind.
Fig. 5 zeigt ein Blockdiagramm im einzelnen einer der Steuereinheiten gemäß Figur 4 für die äußere Vorrichtung.
Fig. 6 zeigt ein Blockdiagramm im einzelnen der Dekodier- und Zeittore, die das Verbindungs-Flip-Flop der Figur 5 steuern.
Fig. 7 zeigt ein Blockdiagramm im einzelnen der Kodier- und Befehlseingabe in dem Systemblock gemäß Figur 5.
Fig. 8 zeigt ein Zeitdiagramm der Steuer- und Datenwegsignale zum Lesen eines Befehls oder Datenwortes aus dem Speicher des Untersystems der Figur 3·
Fig. 9 zeigt ein Zeitdiagramm der Steuerweg- und Verbindungswegsignale der Figur
Fig. 10 zeigt ein Zeitdiagramm der Unterbrechungssteuerweg- und Datenwegsignale, die bei einer Unterbrechung einer äußeren Vorrichtung gemäß der Erfindung vorliegen.
Wie bereits erwähnt, wurde diese Erfindung bei einer bevorzugten Ausführungsform mit einem Kleinrechner mit einem Einzeldatenübertragungsweg verwendet. Gemäß Figur 1 werden von einem Zentralprocessor 20 Daten an einen Ausgabeweg 21 abgegeben
609886/0971
- 11 - nil-oc-10
und von einem Eingabeweg 22 aufgenommen. Der Zentralprocessor ist mit Ausnahme der im folgenden erläuterten Einzelheiten von bekannter Bauart. Er hat allgemeine Register, eine arithmetische Einheit, einen Programmzähler und ein Befehlsregister. Über eine Zeit- und Steuereinheit 24 wird der Arbeitsablauf des Zentralprocessors und der übrige Teil des Systems über einen Satz von Steuerleitungen eines Steuerweges 25 gesteuert, wie dieses im allgemeinen bekannt ist.
Alle Elemente in dem Datenverarbeitungssystem sind mit dem Eingabe-, dem Ausgabe- und dem Steuerweg verbunden. Infolgedessen wird jedes von dem Zentralprocessor abgegebene Datenwort gleichzeitig an alle anderen Elemente des Systems gegeben, die mit dem Ausgabeweg verbunden sind. Im allgemeinen Fall werden Daten an ein einziges Element mittels der Zeit- und Steuereinheit 2h gegeben. Beispielsweise, wie es im Zusammenhang mit der Figur 3 beschrieben werden wird, wird ein Wort in dem Speicheruntersystem 27 dadurch gespeichert, daß es an den Ausgabeweg 21 gegeben wird und die geeigneten Steuerleitungen in dem Steuerweg 25 angeschaltet werden. Zusammengenommen bilden der Eingabe-, der Ausgabe- und der Steuerweg den Einzeldatenübertragungsweg, von dem bereits oben die Rede war.
609886/0971
- 12 - nil-oc-10
Bei der bevorzugten Ausführungsform beträgt die Wortlänge 16 Bits. Es gibt dann mithin 16 Leitungen In dem Eingabe- und dem Ausgabeweg. Bei der bevorzugten AusfUhrungsform sind 32 Steuerleitungen und eine Zeit- bzw. Taktleitung im Steuerweg vorhanden, somit insgesamt 33 Leitungen. Infolgedessen besteht der Einzeldatenübertragungsweg aus 65 Leitungen.
In Pig.l sind zwei Eingabe-Ausgabe-Untersysteme dargestellt. Es wird darauf hingewiesen, daß viele Hunderte von solchen Eingabe-Ausgabe-Untersystemen bei einem Datenverarbeitungssystem gemäß der Erfindung vorhanden sein können.
Bei den mit dem System verbundenen Eingabe-Ausgabe-Untersystemen kann es sich um voneinander verschiedene handeln. Beispielsweise kann eine einzelne Eingabe-Ausgabe-Vorrichtung ein Fernschreiber, eine Sichtstation, ein Kartenleser, ein Drucker, eine Processteuervorrichtung, ein anderer Rechner usw, sein.
Ein Teil des Zentralprocessors der bevorzugten Ausführungsform ist in Pig.2 dargestellt. Die Konstruktion des Zentralprocessors entspricht der eines typischen Kleinrechners mit einem Einzeldatenübertragungsweg. Ein Programmzähler 30 enthält wie in gewöhnlicher Weise bei einem Rechner mit einem gespeicherten Programm die Speicheradresse, an der der nächste Befehl gefunden wird. Um mit dem nächsten Befehlszyklus zu beginnen, wird der Inhalt des Programmzählers an den Ausgabeweg 21 des Zentralprocessors über das UND-Tor 32 gegeben und dazu verwendet, die Stelle In der Speichereinheit mit dem erwünschten Befehl zu adressieren. Der Programmzähler wird dann zu der Adresse des folgenden Befehls weitergeschaltet.
609886/0971
- 13 - nil-oc-10
Ein Befehlsregister 35 enthält zu jedem Zeitpunkt den gerade von dem Kleinrechner ausgeführten Befehl. Der in dem Befehlsregister 35 enthaltene Befehl wird in bekannter Weise durch die Zeit- und Steuereinheit 24 (Pig.l) interpretiert, die die von dem Befehl verlangten Schritte dadurch steuert, daß die geeigneten Leitungen in dem Steuerweg 25 angeschaltet werden.
Wie bei den meisten Rechnern mit einem gespeicherten Programm besteht jedes durch den Zentralprocessor gesteuerte Befehls-Intervall aus zwei Zyklen. Der erste wird als Befehl-Hohlzyklus bezeichnet und wird durch das erste Taktintervall begonnen, welches der Vollendung der Ausführung des vorhergehenden Befehls folgt. Ein Beispiel eines Befehlsintervalls mit zwei Zyklen wird im Zusammenhang mit der Übertragung von der Speichereinheit des nächsten auszuführenden Befehls erläutert. Um einen Speicher-Hohlzyklus zu veranlassen, wird der Inhalt des Programmzählers 30, der die Adresse des nächsten Befehles ist, über ein Tor an dem Zentralprocessor-Ausgabeweg 21 gegeben. Zu der gleichen Zeit,zu der die Adresse an den Ausgabeweg gegeben worden ist, wird eine Steuerleitung in dem Steuerweg angeschaltet, wodurch der Speicher an der Adresse zugängig ist, die an dem Ausgabeweg erscheint.
Der Speicherinhalt an der spezifizierten Adresse wird auf den Eingabeweg 22 ausgelesen, wo er in einem Zwischenspeicherregister 37 gespeichert wird. Die Speichern ng des neuen Befehles in dem Zwischenregister 37 stellt das Ende des Befehl-Hohlzyklus des Befehlsintervalls dar.
609886/0971
- 14 - nil-oc-10
Der zweite Zyklus eines BefehlsIntervalls wird als Befehlsausführungszyklus bezeichnet. Während des nächsten Taktintervalls nach dem Ende des Befehls-Hohlzyklus, wird der Inhalt des Zwischenspeichers yj in das Befehlsregister 35 geladen, wodurch der Befehlsausführungszyklus beginnt. Um den Befehlsausführungszyklus durchzuführen interpretiert die Takt- und Steuereinheit den Inhalt des Befehlsregisters und schaltet die geeigneten Steuerleitungen des Steuerweges 25 an.
Die Arbeisweise des Speicheruntersystems 27 (Pig.l) und die Schritte eines BefehlsIntervalls können besser unter Bezugnahme auf Fig. 3 verstanden werden, in der ein Hockdiagramm des Speicheruntersystems im einzelnen dargestellt ist. Wie es oben beschrieben wurde, wird die Adresse der zu ergreifenden Speicherstelle über ein Tor auf den Ausgabeweg des Zentralprocessors gegeben. Zur gleichen Zeit schaltet die Takt- und Steuereinheit die LSRD (Low Speed Read)Leitung 40 an. Dadurch wird der Inhalt des Ausgabeweges (die Adresse) in ein Speicheradressenregister 41 geladen. Wenn das Speicheradressenregister 41 gelagen worden ist, wird ein Satz von Registerausgabeleitungen 43 angeschaltet, der die zugeordneten Kerne in einer Kernspeichereinheit 44 adressiert.
Im folgenden Taktzyklus schaltet die Takt- und Steuereinheit zwei weitere Steuerleitungen an, die LSWR (Low Speed Write) Leitung 45 und die CNCT (Connect Memory to Buss) Leitung 46. Die LSWR-Leitung 45 bewirkt, daß die Inhalte eines Teiles der Kernspeichereinheit 44, die durch die Ausgäbeleitungen Ky des Speicheradressregisters adressiert worden sind, über ein Datenleserregister 47 zu einem Registertor 48 ausgelesen werden. Die CNCT-Leitung
609886/0971
- 15 - nil-co-10
steuert das Registertor 48 auf, so daß die adressierten Daten an den Zentralprocessor-Eingabeweg 22 gelangen.
In ähnlicher Weise wird ein Datenwort in den Kernspeicher 44 dadurch geladen, daß es an den Zentralprocessor-Ausgabeweg 21 gegeben wird. Die Takt- und Steuereinheit schaltet zuerst die LDLO (Load Lower Byte) Leitung 50 an, wodurch die am wenigsten signifikanten acht Bits des Datenwortes in das Datensehreiberegister 53 geladen werden. Durch die LDUP ("Load Upper Byte) Leitung 51 werden in ähnlicher Weise die am signifikantesten acht Bits in das Datenschreibregister 53 geladen. Der Inhalt des Datenschreiberegisters wird in den Teil des Kernspeichers gegeben, der durch die Adresse des Speicheradressenregisters spezifiziert worden ist, wenn die Takt- und Steuereinheit die LSWR-Leitung 45 anschaltet.
Die genaue zeitliche Abstimmung eines Speicherlesezyklus kann aus Fig.8 ersehen werden. Auf der Linie 54 sind die Taktsignale angegeben, deren Frequenz 5 HHz beträgt. Wie es bereits in Zusammenhang mit der Fig.3 beschrieben wurde,schaltet die Takt- und Zeiteinheit das LSRD-Steuersignal 55 an, wenn die Adresse 5t> des nächsten Befehls (oder Daten) auf den Ausgabewegleitungen 03XX (OBOO bis OB]5) erscheint. Nach einem Taktintervall schaltet die CNCT-Leitung 57 und die LSWR-Leitung 59 an» wodurch das Datenwort 58 in die Eingabewegleitung IBXX (IBOO bis IBl5) während des nächsten Taktintervalls gelesen wird.
Die Arbeitsweise des Speicheruntersystems 27 gemäß Fig.l wurde im Zusammenhang mit,der Zugänglichmachung eines Programmbefehles
609886/0971
- 16 - nil-co-10
beschrieben. Es wird darauf hingewiesen, daß gewöhnliche Datenworte in der gleichen Weise adressiert und von der Kernspeichereinheit zugängig gemacht werden.
Programmierte Datenübertragung
Im Zusammenhang mit der Pig.l wurde darauf hingewiesen, daß ein Datenverarbeitungssystem, bei dem die Erfindung verwendet wird, viele Hunderte von Eingabe-Ausgabe-Untersystemen haben kann, die an den Eingabe-, Ausgabe- und Steuerweg angeschlossen werden können. In Fig.4 sind zwei solche Eingabe-Ausgäbe-Untersysteme dargestellt. Erfindungsgemäß ist jede Eingabe-Ausgabe-Vorrichtung 60, oder äußere Vorrichtung mit dem System über Steuereinheiten für eine äußere Vorrichtung mit den einzelnen Wegen verbunden. Jede einzelne Steuereinrichtung 61 für jede äußere Vorrichtung dient als Interface zwischen dem System und der verbundenen äußeren Vorrichtung 60, damit die äußeren Vorrichtungen befähigt werden, Daten zu übertragen, wie es durch die Takt- und Steuereinheit bestimmt wird, und eine Verbindung für Unterbrechungssignale, Daten und Befehle von den äußeren Vorrichtungen zu dem Zentralprocessor-Eingabeweg herzustellen.
In Fig.5 ist ein Blockdiagramm der Steuereinheiten gemäß Fig.4 für die äußere Vorrichtung im einzelnen dargestellt. Die Arbeitsweise eines Verbindungsbefehls wird zuerst im einzelnen erklärt, worauf sich die Erklärung des Unterbrechungssystems anschließen.
Es wurde bereits erklärt, auf welche Weise das erfindungsgemäße System gesuchte Befehle von der Systemspeichereinheit herholt. Bei bekannten Kleinrechnersystemen, wenn der wjbderherzuholende Befehl die Datenübertragung zu oder von einer Eingabe -Aus gabe-Vor-
609886/0971
- 17 - nil-CQ-lo
2533A03
richtung verlangt, hätte dieser Befehl die bereits beschriebene dreiteilige Struktur, wobei ein Teil der Kennzeichnung der Eingabe-Aus gäbe -Vorrichtung dient. Bei der Erfindung wird eine Eingabe-Aus gäbe -Vorrichtung durch einen einzigen, speziellen Befehl gekennzeichnet und beigegeben, der als Verbindungsbefehl bezeichnet wird.
Es ist offensichtlich, daß die Struktur der Befehle variieren kann. Bei der bevorzugten Ausführungsform ist die Struktur des Verbindungsbefehls ein Wort mit 16 Bits: Bit Null ist Null; Bit 1 ist 1; Bit 3-10 enthalten einen Code durch den in eindeutiger Weise eine Eingabe-Ausgabe-Vorrichtung gekennzeichnet wird; Bit 12 - 15 sind Null. Wenn die Takt- und Steuereinheit den Befehl in dem Befehlsregister 35 gemäß Fig.2 decodiert und obige Bitstruktur vorfindet, wird ein Verbindungsbefehl während des Ausführungszyklus des BefehlsIntervalls ausgeführt.
Bei der Ausführung des Verbindungsbefehls wird der Befehl selbst an den Ausgabeweg 21 gegeben und dadurch an alle Eingabe-Ausgäbe-Vorrichtungen geführt. Gemäß Fig.5 hat jede Steuereinrichtung für eine äußere Vorrichtung ein UND-Tor 65 zum Dekodieren, an dem die Ausgabewegleitungen 2-10 als Eingänge angeschlossen sind.
Jedes UND-Tor 65 zum Dekodieren in jeder Steuereinheit für eine äußere Vorrichtung ist so geschaltet, daß seine Ausgangsleitung'· 66 nur dann eingeschaltet wird, wenn der an den Ausgabeleitungen auftretende Code mit dem Kennzeichnungscode übereinstimmt der der äußeren Vorrichtung, die mit der Steuereinheit verbunden ist, zugeordnet ist.
609886/0971
- 18 - nil-GO-10
Ein zweiter Teil der Vorrichtung zum Peststellen des Codes wird durch ein Takt-UND-Tor 67 vorgenommen. Das Takt-UND-Tor 67 hat drei Eingänge: Die Null Bit Leitung 68 von dem Ausgabeweg (OBOO)j die Leitung 69 für das Taktsignal des Systems; eine Strobe-Leitung JQ (IOSC) (Input-Output Connect Strobe). Wenn die richtigen Signale an den drei Eingangsleitungen des Takt-UND-Tores auftreten, wird die Ausgangsleitung 72 des Tores angeschaltet.
Die Ausgangs leitungen 66 und 72 von den beiden Erkennungstoren 65 und 67 werden an ein Verbindungs-Flip-Flop "Jk gegeben. Das Verbindungs-Flip-Flop ist vom "D" Typ, das heißt, sein Ausgang wird auf den Zustand der Eingangs leitung 66 gesetzt, wenn immer die Eingangsleitung 72 angeschaltet wird. Das Verbindungs-Flip-Flop und seine Eingänge werden näher im Zusammenhang mit der Erläuterung der Fig.6 beschrieben. Für eine Erklärung der Fig.5 jedoch reicht es aus, zu wissen, daß die Ausgangs leitung 75 des Verbindungs-Flip-Flop nur dann anschaltet, wenn eine Koinzidenz zwischen dem einzigen Vorrichtungscode auf den Leitungen 3 - 10 des Ausgangsweges, einer Null auf der Ausgangsweg Null-Linie, einem Taktzyklus und der angeschalteten IOSC-Leitung 70 vorliegt.
Das Takt-UND-Tor 67 von jeder Steuereinheit für eine äußere Vorrichtung schaltet natürlich ihre Ausgangsleitung 72 zur gleichen Zeit an, da sie alle die gleichen Eingänge haben. Für die eine spezifische Steuereinheit für die spezifische äußere Vorrichtung jedoch, deren einmaliger Code auf den Linien 3 - 10 des Ausgabeweges vorliegt, nimmt die Verbindungs-Flip-Flop Ausgangsleitung 75 den Zustand seiner Eingangs leitung 66 an und schaltet an. Alle anderen Verbindungs-Flip-Flops und die anderen Steuereinheiten für die äußeren Vorrichtungen nehmen den Zustand ihrer Eingangsleitung- 66 an und-schalten ab. Solange, bis ein anschließender Verbindungsbefehl ausgeführt wird, verbleiben die Verbindungs-Flip-
609886/0971
- 19 - nil-oc-10
Plop in dem Zustand, in den sie gesetzt worden sind.
Als Ergebnis der Ausführung eines Verbindungsbefehls wird die bezeichnete, äußere Vorrichtungssteuereinheit mit ihrer Verbindungs-Flip-Flop-Leitung 75 angeschaltet, wodurch der Verbindungsvorgang vollendet ist. Jeder folgende Eingabe-Ausgabe-Befehl von der Speichervorrichtung bewirkt unter anderem, daß ein Wort mit einem Bit auf den Leitungen 3-8 des Ausgabeweges erscheint und daß die IOST-Leitung (Input-Output Transfer Strobe) gleichzeitig angeschaltet wird. Die Leitungen 3-8 führen zu einem Strobe-Register 80 in jeder der äußeren Vorrichtungssteuereinheiten Über Leitungen 81. Bei der bevorzugten Ausführungsform der Erfindung kann der einzelne Eingabe-Ausgabe-Befehl «ehr als eine Operation enthalten, wodurch bewirkt wird, daß der obige Vorgang während der Ausführung des einzelnen Befehls wiederholt wird.
Das Strobe-Register 8O schaltet eine seiner Ausgangsleitungen an, wenn sein Eingangs-Verbindungs-Flip-Flop 75 und die IOST-Leltung 90 anschalten. Die Ausgangs-Leitung, die durch das Strobe-Register 80 angeschaltet wird, wird durch diejenige der Ausgabewegleitungen 3-8 bestimmt,, die ar.gschalt£t ist, wenn die IOST-Leitung 9 anschaltet. Die IOST-Leitung ist eine der Steuerwegleitungen, die durch die Zeit- und Steuereinheit betätigt wird.
Das aus einem Bit bestehende Wort auf den Ausgabewegleitungen 3-8 dient dazu, die richtigen, logischen Leitungen in der äußeren Vorrichtungssteuerung in Abhängigkeit davon welches Bit vorliegt, anzuschalten gemäß dem folgenden Plans
609886/0971
nil-oc -10
1. Leitung 3 an:
Die logische Leitung (EI) der äußeren Vorrichtungs-Steuereinheit wird angeschaltet, damit ein Befehl auf den Eingabeweg zu dem Hauptprocessor von der äußeren Vorrichtung gegeben werden kann.
Leitung 4 an: Die logische Leitung (DI) der äußeren Vorrichtungs-Steuereinheit wird angeschaltet, damit Daten auf den Eingabeweg 22 durch die äußere Vorrichtung gegeben werden können.
Leitung 5 an:
Die logische Leitung (DO) der äußeren Vorrichtungs-Steuereinheit wird angeschaltet, damit Daten von dem Ausgabeweg 21 zu der verbundenen äußeren Vorrichtung geführt werden können.
Leitung 6 an: Die logische Leitung (CO) der äußeren Vor-
richtungs-Steuereinheit wird angeschaltet, damit Prüfdaten von dem Ausgabeweg 21 an die verbundene äußere Vorrichtung geführt werden können
5. Leitung 7 an:
Die logische Leitung (SI) der äußeren Vorrichtungs-Steuereinheit wird angeschaltet, damit Daten, die den Status der äußeren Vorrichtung enthalten, an den Eingabeweg 22 gegeben werden können.
6. Leitung 8 an: Die logische Leitung (CI) der äußeren Vor-
richtungs-Steuereinheit wird angeschaltet, damit der Verbindungscode durch die äußere Vorrichtung an den Eingabeweg 22 gegeben werden kann.
609886/0971
- 21 - nil-oc -10
Ein wesentlicher Teil dieser Erfindung besteht darin, daß, wenn die Verbindungs-Flip-Flop-Leitung für die äußere Vorrichtungs-Steuereinheit gesetzt ist, diese gesetzt bleibt, bis ein weiterer Verbindungsbefehl ausgeführt wird. Die Ausgangsleitungen des Strobe-Registers 8o bleiben während eines einzigen Zeittaktes gesetzt, um die Art der vorzunehmenden Eingabe-Ausgabe-Überführung zu bestimmen. Wenn die logische Leitung, um Daten an den Eingabeweg (Dl) zu geben, beispielsweise gesetzt ist, gelangen alle Datenworte, die von der äußeren Vorrichtung herkommen, an den Eingabeweg und werden zu dem Hauptprocessor geführt. Auf diese Art, wie es bereits erläutert worden ist, können programmierte Datenübertragungen ausgeführt werden, ohne die die Wirksamkeit beeinträchtigende Forderung die äußere Vorrichtung bei jedem Übertragungsbefehl identifizieren zu müssen.
In den Fällen,in denen es erwünscht ist, Daten an eine äußere Vorrichtung von dem Hauptprocessor her oder von dem Hauptspeicher her zu liefern, wird ein Verbindungsbefehl ausgeführt, wie es bereits erklärt worden ist. Die logische Leitung 82 (DO) der Steuereinheit für die äußere Vorrichtung, die mit einem Datenregister 85 verbunden ist, wird angeschaltet. Das erhaltene Datenwort wird in das Datenregister 85 für die äußere Vorrichtung geladen. Beim nächsten Taktsignal wird der Inhalt des Datenregisters 85 über die Eingabeleitungen 89 für die äußere Vorrichtung dieser zugeführt. Wenn es erwünscht ist, von Datenworten auf ein Steuerwot für die äußere Vorrichtung umzuschalten, schaltet die Zeit- und Steuereinheit die Steuerweg-IOST-Leitung 90 zum Strobe-Register 80 an. Das nächste erhaltene Wort aus einem Bit (Leitung β an) würde die logische Leitung (CO) der äußeren Vorrichtungssteuereinheit während eines Zeittaktes anschalten. Das nächste an die äußere Vorrichtungs-Steuereinheit übertragene Wort würde den erwünschten Steuerschritt ausführen.
609886/0971
nil-oc-10
Auf diese Weise können verschieden Punktionen einer äußeren Vorrichtung gesteuert werden, ohne daß weitere Verbindungsbefehle ausgeführt werden müssen. Ein Beispiel hierfür ist das Zuführen von Daten an einen Fernschreiber. Um Daten entweder aus dem Hauptprocessor oder der Speichereinheit auszugeben, wird durch einen Verbindungsbefehl der Verbindungs-Flip-Flop der äußeren Verbindungs-Steuereinheit des bezeichneten Fernschreibers angeschaltet. Eine Vielzahl von Datenworten könnten dann auf den Ausgabeweg gegeben werden, mit dem Ergebnis, daß alphanumerische Zeichen durch den Fernschreiber gedruckt werden. Wenn eine "Rand" oder "Tabulator" Funktion zum Schreiben von Titellinien beispielsweise erwünscht ist, würde die Zeit- und Steuereinheit dann die IOST-Leitung 90 zu dem Strobe-Register und die Leitung 6 des Ausgabeweges anschalten. Die Leitung 92 (CO) wird für einen Taktzyklus angeschaltet und das Steuerwort wird durch das Register 93 der äußeren Vorrichtungssteuereinheit weitergegeben. Auf diese Weise können viele Seiten von einem Drucker oder Fernschreiber gedruckt werden, ohne daß nach der Ausführung eines einzigen Verbindungsbefehle angegeben werden muß, welche äußere Vorrichtung verwendet werden soll.
Man kann aus dem bisher gesagten leicht entnehmen , wie Daten und Steuerworte von dem Hauptprocessor oder Speicher eines Kleinrechners einer äußeren Vorrichtung zugeführt werden. Zusätzlich kann eine äußere Vorrichtung Datenworte an den Hauptprocessor liefern oder diesem seinen Status mitteilen.
Wenn die Leitung 4 des Ausgabeweges angeschaltet ist, wenn die IOST-Leitung 90 durch die Zeit- und Steuereinheit angeschaltet wird, schaltet die äußere Vorrichtungs-Steuereinheit die logische Leitung 95 (Dl) an, -um Daten von der äußeren Vorrichtung zu empfangen. Datenworte werden durch ein Ausgabedatenregister 97 für die äußere Vorrichtung von den Leitungen 98 einem Daten- und Statusmultiplexer 100 zugeführt.
609886/0971
- 23 - nil-oc-10
Ih ähnlicher Weise werden Statusworte von der äußeren Vorrichtung , die sich auf ihren Status beziehen, durch ein Statusregister 101 für die äußere Vorrichtung dem Daten- und Statusmultiplexer 100 zugeführt. Wenn das Strobe-Register 8o die logische Leitung 95 (DI) angeschaltet hat, würde der Daten- und Statusmultiplexer die Datenworte in ein Datenwegregister 104 laden. Wenn das Strobe-Register 80 die logische Leitung 105 (SI) angeschaltet hat, würde der Daten- und Statusmultiplexer die Statusworte in das Eingabewegregister 104 laden. In jedem Fall wird der Registerinhalt dem Eingabeweg über ein UND-Tor 106 mittels der logischen Leitungen (DI) oder (SI) zugeführt. Man kann ohne weiteres aus dem bisher gesagten die Schritte der programmierten Datenübertragung gemäß der Erfindung verstehen. Nachdem ein Verbindungsbefehl durch die Zeit- und Steuereinheit ausgeführt worden ist, wird die bezeichnete äußere Vorrichtung mit dem System verbunden, bis ein weiterer Verbindungsbefehl erhalten wird. Bei der bevorzugten Ausführungsform ist besonders wesentlich« daß ein viel größerer Satz von Eingabe- Ausgabe-Befehlen mit aer Beschränkung auf ein 16-Bit-Wort vorgesehen werden kann, da jeder Eingabe-Ausgabe-Befehl die äußere, bei der Ausführung des Befehls zu verwendende Vorrichtung nicht kennzeichnen muß.
Die genaue Schaltung des Verbindungs-Flip-Flop-Kreises und das dazugehörige Zeitdiagramm werden im folgenden besprochen. Gemäß Fig.6 hat das Dekodier-UND-Tor 65 acht Eingänge und zwar die Leitungen 5 - 10 des Ausgabeweges. Das UND-Tor schaltet seine Ausgangsleitung 66 nur dann an, wenn alle seine unmittelbaren Eingänge eine binäre 1 haben. Durch das wahlweise Einschalten von Invertern, wie z.B. der Inverter 110, wird die notwendige Bit-Konfiguration auf den Leitungen 5 - 10 des Ausgabeweges, um das Tor
609886/0971
- 24 - nil-oc-10
zu betätigen, bestimmt. Beim Beispiel gemäß Fig.6 würde das UND-Tor 65 seine Ausgangsleitung 66 nur dann ansehalten,wenn ein Binärwort mit der Struktur 11001 Oll (2Oj5) auf der Leitung des Ausgabeweges erscheint. Der der äußeren Vorrichtung dadurch zugeordnete Code entspricht der Dezimalzahl 20J>.
Das Verbindungs-Flip-Flop 74 ist vom "D" Typ, so daß seine Ausgangsleitung den Zustand der Eingangsleitung 66 annimmt und in diesem bleibt, wenn immer das Takt-UND-Tor 27 seine Ausgangsleitung 72 anschaltet. Wenn der richtige Code auf den Leitungen J)-IO des Ausgabeweges erschienen ist, würde die Ausgangsieitung 75 des Verbindungs-Flip-Flop angeschaltet, wenn die Ausgangsleitung 72 des Takt-UND-Tores angeschaltet wird.
Das Zeitdiagramm für die Ausführung eines Verbindungsbefehls ist in Fig.9 dargestellt. Das Taktsignal mit einer Frequenz von 5 MHz bei der bevorzugten Ausführungsform ist in der Linie 111 dargestellt. Das Signal 112 der IOSC-Steuerleitung und die Null-Leitung (OBOO) II5 des Ausgabeweges werden mit dem Taktsignal über eine UND-Funktion verknüpft, um das Verbindungs-Takt-Signal 114 auf der AusgangsIeitung 75 des Verbindungs-Flip-Flop (Fig. 5 und 6} zu erzeugen. Wie bei allen UND-Toren ist das Verbindungs-Takt-Signal 114 für eine Zeitdauer angeschaltet, die durch den kürzesten Eingangsimpuls, der im vorliegenden Fall das Taktsignal ist, gegeben ist. Die Kodier-Bits für die äußere Vorrichtung, die auf den Leitungen 3 - 10 des Ausgabeweges erscheinen würden, sind auf der Signalleitung II5 (OBO3 - OBlO) dargestellt. Wenn die richtigen Leitungen des Ausgabeweges mit dem Verbindungs-Takt koinzidieren, wird das Flip-Flop gesetzt, wie es die Leitung 116
609886/0971
- 25 - nil-OG-IG
zeigt und die zugeordnete, äußere Vorrichtung wird mit dem System verbunden. Alle anderen Verbindungs-Flip-Flop sind zurückgesetzt, ebenso wie das vorhergehend gesetzte Verbindungs-Flip-Flop, wie es die Signalleitung II7 zeigt.
Aus der obigen Beschreibung kann ohne weiteres verstanden werden, auf welche Weise programmierte Datenüberführungen durch diese Erfindung vollzogen werden können ohne Zuhilfenahme der bekannten Kennzeichnung der verwendeten Eingabe-Ausgabe-Vorrichtung bei jedem Eingabe-Ausgabe-Befehl. Infolgedessen wird ein vergrößerter Eingabe-Ausgabe-Befehlsatz möglich gemacht, Speicherplatz gespart, und die Programmierung verkürzt und erleichtert.
2. Unterbrechungssystem
Im folgenden wird der Teil der Erfindung beschrieben, der das Unterbrechungssystem betrifft. Jede unterbrechende Vorrichtung gibt während der Ausführung einer Unterbrechungssequenz einen Befehl an den Rechner. Die Ausführung einer Unterbrechungssequenz besteht aus einem dreiphasigen Zyklus, der während drei aufeinanderfolgender BefehlsIntervalle auftritt.
Gemäß Fig.5 schaltet die Zeit- und Steuereinheit die INTE-Steuerleitung 125 an, wenn Unterbrechungen von den Eingabe-Ausgabe-Vorrichtungen zugelassen werden sollen. Wenn die Leitung 125 abgeschaltet ist, nimmt das System Unterbrechungsanforderungen von den verschiedenen Eingabe-Ausgäbe-Vorrichtungen in dem System nicht war. Wenn irgendeine äußere Vorrichtung einer Unterbrechung erzeugt, schaltet die Vorrichtung die Unterbrechungeleitung 126
6 0 9 8 8 6/0971
- 26 - nil-oc-10
in bekannter Weise an und setzt ein Unterbrechungs-Flip-Flop 127.
Bei angeschalteter INTE-Steuerleitung 125 und dadurch geöffnetem Unterbrechungstor 129 wird durch die Prioritätsabfrage logik I35O eine Abfrage veranlaßt. Der Zweck dieser Abfrage ist festzustellen, welche unterbrechende Vorrichtung die höchste Unterbrechungspriorität hat, wenn Unterbrechungsanforderungen von zwei oder mehr Eingabe-Ausgäbe-Vorrichtungen gleichzeitig auftreten. Da die Schaltung der Unterbrechungsprioritätsabfrage und deren Arbeitsweise allgemein bekannt sind, wird diese nicht näher erläutert werden. Es reicht aus zu wissen, daß eine einzelne, äußere Vorrichtung als eine solche identifiziert wird, die im Augenblick nach einer Unterbrechungsanforderung die höchste Priorität hat. Das Ende dieser Abfrage entspricht dem Ende der ersten Phase der Ausführung der Unterbrechungssequenz.
Zu Beginn der nächsten Phase setzt die Steuereinheit (Fig.5) für di< äußere Vorrichtung, die die höchste Priorität hat, die INT-Steuerleitung I32. Die Leitung I32 ist sowohl mit dem Steuerweg 25 als auch mit dem Strobe-Register 80 verbunden. Wenn die INT-Leitung I32 durch die Prioritätsabfragelogik gesetzt wird, wird das Strobe-Register 80 dadurch so gesteuert, daß es seine erste Steuerausgangsleitung anschließt, die mit "Befehlseingabe" (El) in Fig.5 bezeichnet ist. Nachdem die INT-Leitung wahrgenommen worden ist, erzeugt die Code- und Befehlseingabe in die Systemeinheit I34 einen Befehl und gibt ihn an den Eingabeweg 22, über den er dem Rechner zugeführt wird. Der eode-und die Befehlseingabe in die Systemeinheit 1^4 wird im einzelnen im Zusammenhang mit Fig.7 beschrieben werden. Dieser Befehl wird in einer von vier verschiedenen Weisen gebildet.
609886/0971
- 27 - nil-oc-10
Bei der ersten wird in den Rechner von der unterbrechenden Vorrichtung ein Sprung-und-Aufhebe Bereichsbefehl von der unterbrechenden Vorrichtung eingegeben. Bei dem System der bevorzugten Ausführungsform ist ein Sprung-und-Aufhebe Bereichsbefehl ein Befehl , der wie der Name andeutet die Steuerung zu einem anderen Programm überführt und den gesamten Rechnerbereich aufhebt bzw. unbeeinflußt läßt, damit eine Rückkehr zu dem ursprünglichen Programm möglich ist. Die zweite Phase der Ausführung der Unterbrechungssequenz endet mit dem Sprung-und-Bewahr Bereichsbefehl, der in dem Zwischenspeicherregister 37 (Fig.2) der Hauptprocessoreinheit gespeichert ist.
Während der dritten und letzten Phase der Ausführung der Unterbrechungssequenz wird der Befehl von dem Zwischenspeicherregister 37 in das Befehlsregister 35 der Hauptprocessoreinheit übergeführt. Dort wird der Befehl durch die Zeit- und Steuereinheit in bekannter Weise ausgeführt.
Die Ausführung des Sprung-und-Bewahr Bereichsbefehls bewirkt, daß ein Block aus vier Worten in der Kernspeichereinheit 44 (Fi^ * zum Speichern von Registerwerten in der Hauptprocessoreinheit zur Verfügung gestellt wird. Der Inhalt des Statusregisters der Hauptprocessoreinheit wird in das erste Speicherwort geschrieben. Der Inhalt des Programmzählers wird in das dritte Speicherwort eingegeben.
Während des ersten Taktiritervalls der Befehlsausführung sind die IOST-Steuerleitung 90 (Fig.5) und die Leitung 8 des Ausgabeweges
609886/0971
- 28 - nil-oc-10
angeschaltet· Wenn irgendein Verbindungs-Flip-Flop des Systems gesetzt worden ist, als die Unterbrechung festgestellt worden war, schaltet das Strobe-Register 8O der zugeordneten Steuereinheit für die äußere Vorrichtung seinen Verbindungscode auf der logischen Leitung Ij55 (CI) an. Der Verbindungscode ist ein Datenwort welches die Nummer der Vorrichtung dieser Eingabe-Ausgäbe-Vorrichtung angibt. Die Verbindungscodeeinheit I38 ist eine Hardware-Vorrichtung, die wenn die logische Leitung (CI) 1^5 angeschaltet ist, den Vorrichtungscode an den Eingabeweg, 22 ausgibt. Der Verbindungscode wird in ein besonderes Register (dieses ist nicht dargestellt) in der Hauptprocessoreinheit geladen.
Zu diesem Zeitpunkt sind in der Hauptprocessoreinheit sowohl der Verbindungscode in einem besonderen Register und der Sprung-und-Bewahr Bereichsbefehl in dem Befehlsregister enthalten. Aus ersteren kann der Vorrichtungscode der vorhergehend verbundenen Vorrichtung erhalten werden. Er wird im zweiten Wort des aus vier Worten gebildeten Blockes gespeichert. Aus letzterem kann der Vorrichtungscode der unterbrechenden Vorrichtung erhalten werden.
Das vierte Wort des aus vier Worten gebildeten Blockes enthält die Speicheradresse des ersten Befehls des Unterbrechungsprogramms. Dieses Wort wird in das Befehlsregister zu Beginn des Unterbrechungsprogramm geladen.
Der Verbindungs-Flip-Flop der Steuereinheit für die äußere Vorrichtung, der die Unterbrechung erzeugt hat, wird in ähnlicher Weise gesetzt wie bei dem Vorgang des Verbindungsbefehls. Von dem Sprung-und-Bewahr Bereichsbefehl kann der Vorrichtungscode der Vorrichtung erhalten werden, die die Unterbrechung erzeugte. Die Zeit-und-Steuere'inheit füllt dann den Rest des Verbindungsbefehls ein und die Sequenz läuft wie es vorhergehend beschrieben worden ist und in dem Zeitdiagramm gemäß Fig.9 dargestellt ist,ab,
609886/0971
- 29 - nil-oc-10
In Fig.7 ist im einzelnen ein Blockdiagramm der Code- und Befehlseingabe in die Systemeinheit 134 der Fig.5 dargestellt. Wie bereits beschrieben, erzeugt eine unterbrechende Eingabe-Ausgäbe-Vorrichtung durch die Hardware-E inhe it 14O einen Sprunp;-und-Bewahr Bereichsbefehl. Wenn während der Unterbrechungssequenz die Zeit- und Steuereinheit die IOST-Steuerleitung 90 (Fig.5) und die dritte Leitung des Ausgabeweges anschaltet, schaltet das Strobe-Register der Steuereinheit der Eingabe-Ausgabe-Vorrichtung, welches mit dem System verbunden war, als die Unterbrechung festgestellt wurde, die logische Leitung (EI) für die Befehlseingabe während eines Taktzyklus an. Die Leitung 141 (EI) bewirkt, daß die Sprung-und-Bewahr Bereichsbefehleinheit 140 ihren Befehl über den Multiplexer 14;5 an den Eingabeweg 22 ausgibt. Wie bereits beschrieben, wird der Befehl in das Befehlsregister der Hauptprocessoreinheit geladen und durch die Zeit- und Steuereinheit während des dritten Zyklus der Unterbrechungssequenz ausgeführt.
Wenn dann von dem System eine Unterbrechung festgestellt wird, schaltet die Zeit- und Steuereinheit die IOST-Steuerleitung und die Leitung 3 des Ausgabeweges an. Nur die verbundene Eingabe-Ausgabe-Vorrichtung wird auf den Sprung-und-Bewahr Bereichsbefehl ansprechen. Die Unterbrechungssequenz wurde durch eine unterbrechende Eingabe-Ausgäbe-Vorrichtung begonnen, jedoch wurde der Anfangsbefehl für die Sequenz durch die unterbrochene Eingabe-Ausgabe-Vorrichtung erzeugt.
Wenn der Sprung-und-Bewahr Befehl in die Hauptprocessoreinheit eingegeben worden ist, bewirkt die Ausführung dieses Befehls, daß die unterbrechende Eingabe-Ausgabe-Vorrichtung festgestellt und mit dem System Über den Verbindungscode,, wie es beschrieben worden ist verbunden wird·
609886/0971
- nil-oc-10
Der Befehl bewirkt auch den Beginn eines Unterbrechungsprogramms, welches der unterbrechenden Eingabe-Ausgabe-Vorrichtung dient.
Das Unterbrechungsprogrämm kann Daten zu und von der verbundenen Eingabe-Ausgabe-Vorrichtung überführen, wie es in Bezug auf den Verbindungsbefehl beschrieben worden ist, da diese Vorrichtung verbunden ist.
Bei der zweigen Art der Eingabe eines Befehls in den Rechner von einer äußeren Vorrichtung her, werden ein oder mehrere Befehle bei jeder Unterbrechung über einen Nurlesespeicher 146 geliefert. Beispielsweise kann jeder der gelieferten oder abgegebenen Befehle von verschiedenen äußeren Ereignissen herstammen. Ereignisse von der äußeren Vorrichtung könnten mittels eines Ereignisregisters 148 festlegen, welche der in dem Nurlesespeicher 146 gespeicherten Programme ausgeführt werden sollen. Dadurch erübrigt sich ein langes Prüfprogramm, welches an der Eingabe-Ausgabe-Vorrichtung durchgeführt werden müßte.
Bei einer dritten Möglichkeit könnte eine Kombination der Befehle in einem Nurlesespeicher 150 und der über die Leitungen 153 in der äußeren Vorrichtung festgestellten Ereignisse verwendet werden, um die zugeführten Befehle zu variieren. Eine sequenzielle, logische Schaltung 152 arbeitet mit der Kombination der äußeren Eingabe, der gerade vorhandenen Adresse im Adressenregister I5I und der augenblicklichen Ausgabe des Nurlesespeichers I5I* um sich ändernde Befehlssequenzen zu bilden.
Schließlich könnten Befehle durch eine äußere Vorrichtung erzeugt und über die Leitungen 155 dem zentralen Rechner zugeführt werden.
609886/0971-
- 31 - nil-co-10
Die äußere Vorrichtung könnte beispielsweise ein Rechner sein, der mit seinem eigenen, gespeicherten Programm arbeitet. Er kann Befehle empfangen, beispielsweise um eine arithmetische Rechnung auszuführen, die gemäß vorgegebenen Kriterien zu kompliziert ist und deshalb von einem zentralen Rechner ausgeführt werden soll. Mittels der Steuerung seines eigenen Programmes kann er Befehle zur direkten Überführung zu dem zentralen Rechner Über Leitungen 155 und den Eingabeweg 22 bilden.
Bei diesen verschiedenen Beispielen wurden die Befehle direkt in das Befehlsregister des zentralen Rechners durch die unterbrechende Eingabe-Ausgabe-Vorrichtung überführt. Diese direkte Überführung ermöglicht die hier beschriebene sehr bedeutende Fähigkeit der Überführung von Befehlen von einer Eingabe-Ausgäbe-Vorrichtung.
In Fig.10 ist ein Zeitdiagramm der Zeitsequenz beim Speichern des Verbindungscodes dargestellt. Wie bei den vorhergehenden Zeitdiagrammen stellt die Signalleitung l60 das 5 MHz Taktsignal dar. Vor dem ersten Taktintervall, wie es vorhergehend beschrieben worden ist, wurde eine Unterbrechung von einer der augenblicklich verbundenen Vorrichtung verschiedenen Eingabe-Ausgabe-Vorrichtungen festgestellt. Dadurch schaltet während des ersten TaktIntervalls die Zeit- und Steuereinheit die IOST-Steuerleitung 161 und die Leitung 8 des Ausgabeweges 162 während eines Taktzyklus an. Das Strobe-Register der gerade verbundenen Eingabe-Ausgabe-Vorrichtung schaltet dann seinen Verbindungscode auf der logischen Leitung an. Wie bereits erklärt, wird durch die logische Leitung mittels einer Torschaltung der Verbindungscode an die Leitungen IBXX des Eingabeweges für die Hauptprocessoreinheit gegeben. Der Verbindungscode, durch den die gerade verbundene Eingabe-Ausgabe- Vorrichtung identifiziert ist, wird in ein Zwischenspeicherregister
609886/0971
- 32 - nil-co-10
geladen, welches für diesen Zweck in der Hauptprocessoreinheit vorgesehen ist. Die Zeit- und Steuereinheit veranlaßt einen Vorgang um die Kernspeichereinheit dadurch zu laden, daß ein Signal auf der LSRD-Steuerleitung 165 entsteht. Es werden Signale auf den LDLO-und LDUP-Steuerleitungen 167 und 168 erzeugt, wodurch der Verbindungscode in das Schreibdatenregister geladen wird. Während des nächsten Taktzyklus wird die LSWR-Steuerleitung 169 angeschaltet, wodurch der Verbindungscode in den Kernspeichergeladen wird.
Aus der Beschreibung der Erfindung ergibt sich unmittelbar, daß eine wesentliche Verbesserung der Realzeitarbeitsweise von Kleinrechnern erzielt worden ist.
609886/0971

Claims (4)

  1. H. 50Η"0 :Τ ■■- - K. LEHMANN
    8 München 70 ι ν ·.- ■.·:·,.- :r υ) - Tel. 77G956
    - 33 - nil-oc-10
    Omnus Computer Corporation 3B/P
    PATENTANS PRÜCHE
    Datenverarbeitungssystem bei dem Informationseinheiten zwischen einem zu dem System gehörenden Rechner und mehreren Eingabe-Aus gäbe -Vorrichtungen überführt werden, gekennzeichnet durch eine Übertragungseinrichtung (21,22,25), durch die die Informationseinheiten zu und von dem Rechner (20) überführbar sind, durch mehrere Steuereinrichtungen (61) von denen jede mit der Übertragungseinrichtung und einer der Eingabe-AusHebevorrichtungen (28) verbunden ist, wobei die Steuereinrichtung eine Einrichtung (65, 67, 71O enthält, die mit der Übertragungseinrichtung verbunden ist und von ihr übertragene Informationseinheiten dekodiert und ein Preigebesignal erzeugt, wenn eine Informationseinheit mit einem vorbestimmten Inhalt dekodiert ist, und durch eine Registereinrichtung (8o),die zur Aufnahme de Preigebesignals und mit der Übertragungseinrichtung verbunden ist , wodurch eine Vielzahl von Steuerausgängen oder Steuerausgangssignalen erzeugbar ist, wobei einer der Steuerausgänge durcl Ansprechen auf eine über die Übertragungseinrichtung übertragene Informationseinheit angeschaltet ist, die in Anschluß auf die Informationseinheit mit einem vorgegebenen Inhalt erfolgt, wenn die Registereinrichtung durch das Preigebesignal freigegeben ist; und durch eine Anzahl von EirrLchtungen (85, 93, 97,100, IqI, I06. I38) zum wahlweisen Übertragen von Informationseinheiten zwischei der Übertragungseinrichtung und der Eingabe-Ausgabe-Vorrichtung, die mit der Steuereinrichtung (61) verbunden ist, und durch eine Einrichtung , die jeden der Registersteuerausgänge mit eine]
    609886/0971
    - 34 - nil-oc-10
    der Übertragungseinrichtung verbindet, wodurch diese Einrichtung zum Übertragen oder Nichtübertragen von Informationseinheiten steuerbar ist.
  2. 2. Datenverarbeitungssystem nach Anspruch 1, dadurch g e k e η η ■ zeichnet, daß die Einrichtung zum Übertragen von Informationseinheiten einen Zweirichtungsübertragungsweg zum Übertragen von Daten, Steuer- und Befehlsworten zu und von dem Rechner (2Q) aufweist,
  3. 3. Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß die Einrichtung zum Dekodieren einen logischen Schaltkreis (65) enthält, durch den das Vorhandensein einer Informationseinheit auf der Übertragungseinrichtung, die einen vorgegebenen Inhalt hat, feststellbar ist, und durch die beim Ansprechen auf den vorgegebenen Inhalt ein Ausgangssignal (66) erzeugbar ist, und daß durch einen bistabilen Schaltkreis (74) ein Freigebesignal (75) aufgrund dieses Ausgangssignals (66) erzeugbar ist.
  4. 4. Datenverarbeitungssystem nach Anspruch 1, dadurch g e k e η η · zeichnet, daß die Registereinrichtung (80) eine Vielzahl von Ausgangssignalen erzeugt, durch die bestimmbar ist, ob Informationseinheiten von dem Rechner (20) zu der Eingabe-Ausgabe-Vorrichtung (28) oder von dieser zu dem Rechner zu überführen sind.
    609886/0971
    Leerseite
DE19752533403 1972-08-25 1975-07-25 Datenverarbeitungssystem Pending DE2533403A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US283640A US3909790A (en) 1972-08-25 1972-08-25 Minicomputer with selector channel input-output system and interrupt system

Publications (1)

Publication Number Publication Date
DE2533403A1 true DE2533403A1 (de) 1977-02-10

Family

ID=23086951

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19752533403 Pending DE2533403A1 (de) 1972-08-25 1975-07-25 Datenverarbeitungssystem

Country Status (3)

Country Link
US (1) US3909790A (de)
DE (1) DE2533403A1 (de)
FR (1) FR2318459A1 (de)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4050058A (en) * 1973-12-26 1977-09-20 Xerox Corporation Microprocessor with parallel operation
NL7411989A (nl) * 1974-09-10 1976-03-12 Philips Nv Computersysteem met busstruktuur.
US4010448A (en) * 1974-10-30 1977-03-01 Motorola, Inc. Interrupt circuitry for microprocessor chip
US4263650B1 (en) * 1974-10-30 1994-11-29 Motorola Inc Digital data processing system with interface adaptor having programmable monitorable control register therein
US4037204A (en) * 1974-10-30 1977-07-19 Motorola, Inc. Microprocessor interrupt logic
GB1505535A (en) * 1974-10-30 1978-03-30 Motorola Inc Microprocessor system
US4106091A (en) * 1975-02-18 1978-08-08 Motorola, Inc. Interrupt status indication logic for polled interrupt digital system
US4271466A (en) * 1975-02-20 1981-06-02 Panafacom Limited Direct memory access control system with byte/word control of data bus
US4020471A (en) * 1975-06-30 1977-04-26 Honeywell Information Systems, Inc. Interrupt scan and processing system for a data processing system
US3983540A (en) * 1975-09-08 1976-09-28 Honeywell Inc. Rapid bus priority resolution
US4030073A (en) * 1975-11-05 1977-06-14 Digital Equipment Corporation Initialization circuit for establishing initial operation of a digital computer
US4067059A (en) * 1976-01-29 1978-01-03 Sperry Rand Corporation Shared direct memory access controller
US4034349A (en) * 1976-01-29 1977-07-05 Sperry Rand Corporation Apparatus for processing interrupts in microprocessing systems
US4040032A (en) * 1976-02-27 1977-08-02 Data General Corporation Peripheral device controller for a data processing system
US4156866A (en) * 1976-10-07 1979-05-29 Systems Technology Corporation Multiple remote terminal digital control system
US4213176A (en) * 1976-12-22 1980-07-15 Ncr Corporation System and method for increasing the output data throughput of a computer
US4339793A (en) * 1976-12-27 1982-07-13 International Business Machines Corporation Function integrated, shared ALU processor apparatus and method
US4181934A (en) * 1976-12-27 1980-01-01 International Business Machines Corporation Microprocessor architecture with integrated interrupts and cycle steals prioritized channel
US4181941A (en) * 1978-03-27 1980-01-01 Godsey Ernest E Interrupt system and method
US4355354A (en) * 1978-06-29 1982-10-19 Standard Oil Company (Indiana) Interface apparatus for coupling a minicomputer to a microcomputer for the transfer of data between them and method for using same
US4263649A (en) * 1979-01-05 1981-04-21 Mohawk Data Sciences Corp. Computer system with two busses
US4300194A (en) * 1979-01-31 1981-11-10 Honeywell Information Systems Inc. Data processing system having multiple common buses
US4342081A (en) * 1979-12-12 1982-07-27 Honeywell Information Systems Inc. Tape device adapter
US4320467A (en) * 1980-02-25 1982-03-16 Raytheon Company Method and apparatus of bus arbitration using comparison of composite signals with device signals to determine device priority
US4332011A (en) * 1980-03-17 1982-05-25 Cambridge Telecommunications, Inc. Data processing arrangement including multiple groups of I/O devices with priority between groups and within each group
US4385350A (en) * 1980-07-16 1983-05-24 Ford Aerospace & Communications Corporation Multiprocessor system having distributed priority resolution circuitry
US4360870A (en) * 1980-07-30 1982-11-23 International Business Machines Corporation Programmable I/O device identification
GB2112186B (en) * 1981-12-22 1985-09-11 Intersil Inc Improved distributed processing system
USRE33705E (en) * 1982-02-24 1991-10-01 Digital Equipment Corporation Interchangeable interface circuit structure
EP0132161B1 (de) * 1983-07-19 1988-06-15 Nec Corporation Anordnung zur Steuerung der Verarbeitung mehrerer Unterbrechungen
US4644547A (en) * 1984-06-28 1987-02-17 Westinghouse Electric Corp. Digital message format for two-way communication and control network
US4912723A (en) * 1984-06-28 1990-03-27 Westinghouse Electric Corp. Multipurpose digital IC for communication and control network
US5007013A (en) * 1986-04-01 1991-04-09 Westinghouse Electric Corp. Bidirectional communication and control network with programmable microcontroller interfacing digital ICS and controlled product
JPH07105175A (ja) * 1993-10-08 1995-04-21 Nec Corp マイクロコンピュータ
US6643745B1 (en) * 1998-03-31 2003-11-04 Intel Corporation Method and apparatus for prefetching data into cache

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3425037A (en) * 1966-03-29 1969-01-28 Computing Devices Canada Interrupt computer system
GB1168476A (en) * 1966-05-17 1969-10-29 British Telecomm Res Ltd Improvements in or relating to data transmission systems
US3512136A (en) * 1967-06-21 1970-05-12 Gen Electric Input/output control apparatus in a computer system
US3573741A (en) * 1968-07-11 1971-04-06 Ibm Control unit for input/output devices
US3680054A (en) * 1970-07-06 1972-07-25 Ibm Input/output channel
US3693161A (en) * 1970-07-09 1972-09-19 Burroughs Corp Apparatus for interrogating the availability of a communication path to a peripheral device
US3673576A (en) * 1970-07-13 1972-06-27 Eg & G Inc Programmable computer-peripheral interface
US3688271A (en) * 1970-08-10 1972-08-29 Readex Electronics Inc Method and apparatus for transmitting utility meter data to a remote mobile command unit

Also Published As

Publication number Publication date
FR2318459A1 (fr) 1977-02-11
US3909790A (en) 1975-09-30
FR2318459B1 (de) 1980-05-23

Similar Documents

Publication Publication Date Title
DE2533403A1 (de) Datenverarbeitungssystem
DE1774296C2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE2411963C3 (de) Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken
DE2847216C2 (de) Datenverarbeitungsanlage mit Mehrprogrammbetrieb
DE1931966C3 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE3844033C2 (de) Speicherschaltung für ein Mikroprozessorsystem
DE2635592A1 (de) Multiprozessor-abrufsystem
DE2360505A1 (de) Datenverarbeitungsanlage mit einer anordnung zur uebertragung von daten zwischen zwei funktionseinheiten
DE2145709C3 (de) Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender Programme zur Folge haben können
DE2719635A1 (de) Anordnung fuer eine erweiterung einer mikroprogrammsteuerung einer datenverarbeitungsanlage
DE2036729A1 (de) Digital Datenverarbeiter
DE1929010B2 (de) Modular aufgebaute datenverarbeitungsanlage
DE1774870C3 (de) Einrichtung zur Adressierung einer Speicherzelle eines Speichers in einer Datenverarbeitungsanlage
DE2353635A1 (de) Datenverarbeitungssystem und verfahren zur datenverarbeitung
DE3043653A1 (de) Datenverarbeitungsanlage
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
DE2719278B2 (de) Schaltungsanordnung für hintereinander geschaltete Steuereinheiten zum Anschluß von Ein/Ausgabegeraten an eine Datenverarbeitungsanlage
DE2935101C2 (de)
DE2829972A1 (de) Schnittstelle einer datenverarbeitungsanlage
DE2657897A1 (de) Externes geraet, das die ureingabe fest gespeichert enthaelt, fuer elektronische datenverarbeitungsanlagen mit einem zentralen speicher
DE2720842B2 (de) Datenübertragungssystem
DE1549486A1 (de) Verfahren zur Datenuebertragung zwischen mindestens einer zentralen Recheneinheit und mehreren externen Speichern
DE2747304B2 (de) Einrichtung zur Mikrobefehlssteuerung
DE1808678B2 (de) Verfahren und schaltungsanordnung fuer elektronische daten waehlvermittlungsanlagen mit einem zentralen speicher

Legal Events

Date Code Title Description
OD Request for examination
OHW Rejection