DE2221926C3 - Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor - Google Patents

Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor

Info

Publication number
DE2221926C3
DE2221926C3 DE2221926A DE2221926A DE2221926C3 DE 2221926 C3 DE2221926 C3 DE 2221926C3 DE 2221926 A DE2221926 A DE 2221926A DE 2221926 A DE2221926 A DE 2221926A DE 2221926 C3 DE2221926 C3 DE 2221926C3
Authority
DE
Germany
Prior art keywords
processor
coupler
memory
microprogram
address
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
DE2221926A
Other languages
English (en)
Other versions
DE2221926A1 (de
DE2221926B2 (de
Inventor
Alice Maria Chatenetmalabry Recoque (Frankreich)
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.)
INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie
Original Assignee
INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie
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 INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie filed Critical INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie
Publication of DE2221926A1 publication Critical patent/DE2221926A1/de
Publication of DE2221926B2 publication Critical patent/DE2221926B2/de
Application granted granted Critical
Publication of DE2221926C3 publication Critical patent/DE2221926C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Advance Control (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

Die Erfindung bezieht sich auf eine Datenverarbeitungsanlage mit einem Zentralspeicher, wenigstens einem mit dem Zentralspeicher für den Austausch von Befehlswörtern und Operanden in zweiseitiger Verbindung stehenden Prozessor, der in Multi-Mikroprogrammierung organisiert ist und einen Mikroprogrammspeicher mit zugehörigem Mikroprogrammadressenregister sowie einen Arbeitsspeicher mit zugehörigem Arbeitszonenadressenregister enthält, wobei die beiden Speicher über ihre jeweiligen Schreib-Lese-Register in zweiseitiger Austauschverbindung stehen, und mit mehreren Peripheriegeräten, von denen jedes über einen zugehörigen Koppler in zweiseitiger Austauschverbindung mit dem Schreib-Lese-Register des Arbeitsspeichers des Prozessors steht, wobei jeder Koppler einen Bereitschaftsausgang aufweist, «n dem er ein den Zustand »austauschbereit« des entsprechenden Peripheriegeräts anzeigendes Signal abgiöt.
Bei Datenverarbeitungsanlagen dieser Art führt jeder Prozessor auf Grund der in seinem Mikroprogrammspeicher gespeicherten Mikroprogramme Aufgaben durch, die ihm voi einem zentralen Leitwerk zugeteilt werden. Im Zentralspeicher brauchen dann außer den für die Durchführung der Aufgaben erforderlichen Operanden nur die Befehle für das Aufrufen der Mikroprogramme zu stehen. Ferner ist es im allgemeinen vorgesehen, daß jede laufende Aufgabe an einer geeigneten Stelle unterbrochen werden kann, damit eine vorrangige Aufgabe durchgeführt wird; die Informationen der unterbrochenen Aufgabe werden vorübergehend festgehalten, damit diese nach Beendigung der vorrangigen Aufgabe an der Unterbrechungsstelle unverzüglich fortgesetzt werden kann. Dadurch wird die Arbeitskapazität der Prozessoren gut ausgenutzt.
Ferner muß natürlich die Möglichkeit eines Informationsaustausches zwischen dem Zentralspeicher und einer beliebigen Anzahl von Peripheriegeräten (Magnetbandspeichern, Magnetplattenspeichern, Lochstreifen^ oder Lochkartengeräten, Drückern, Datenendstellen usw.) bestehen. Dieser Informationsaustausch erfolgt über die Koppler, von denen jedem Peripheriegerät einer zugeordnet ist.
Bei den beispielsweise aus der US-PS 35 59 187 bekannten Datenverarbeitungsanlagen mit Zentralspeicher, Prozessor und Peripheriegeräten mit Kopplern
steht der Zentralspeicher über ein Speicherleitwerk einerseits mit dem Prozessor und andererseits mit den Peripheriegeräten in Verbindung. Ein ähnliches System ist in der FR-PS 15 75 939 beschrieben, wo der Hauptspeicher einerseits mit dem Rechenwerk und andererseits über ein Ein- .und Ausgabesteuerwerk mit mehreren Datenendstellen verbunden ist.
Bei diesen uud ähnlichen Datenverarbeitungsanlagen muß der jedem Peripheriegerät zugeordnete Koppler (wie auch in der I. E. E. Conference Publication Nr. 55 ίο »Conference in Computer Science and Technology: 30 June—3 July 1969«, London 1969, erläutert ist), nach Art eines kleinen Computers ausgebildet sein, der in der Lage ist, selbständig gewisse Operationen durchzuführen, die für den Informationsaustausch zwischen π Peripheriegerät und Zentralspeicher notwendig oder zweckmäßig sind. Dies erfordert jedoch einen beträchtlichen Aufwand, der schlecht genutzt wird. Einerseits multipliziert sich jeder bei einem Koppler getroffene Aufwand mit der Anzahl der Koppler, die entsprechend der Anzahl der Peripheriegeräte sehr groß sein kann, und andererseits steht jeder Koppler für eine.i großen Teil der Zeit still, da er nur während eines Informationsaustausches mit dem betreffenden Peripheriegerät arbeitet und auch während dieser Arbeitszeit seine volle Arbeitskapazität nur selten eingesetzt wird. Dieser Sachverhalt steht auch im Widerspruch zu dem Bestreben, insbesondere bei entfernten Datenendstellen den Aufbau möglichst einfach und billig zu halten, selbst wenn dies auf Kosten eines beträchtlichen Mehrauf- fo wands in der zentralen Anlage geschieht.
Der Erfindung liegt die Aufgabe zugrunde, eine Datenverarbeitungsanlage cer eingangs angegebenen Art so auszubilden, daß die jedem Peripheriegerät zugeordneten Koppler einen einfachen und billigen Aufbau haben können, ohne daß dafür ein merklicher Mehraufwand in der zentralen Anlage entsteht.
Diese Aufgabe wird durch den Gegenstand des Anspruchs 1 gelöst.
Die Erfindung beruht auf dem Gedanken, die bei <to jedem Informationsaustausch zwischen Peripheriegerät und Zentralspeicher erforderliche Datenverarbeitung soweit wie möglich einem Prozessor zu übertragen, so daß der beim Peripheriegerät befindliche Koppler nur noch die Einrichtungen zu enthalten braucht, die für die örtliche Steuerung des Peripheriegeräts benötigt werden. Da der Prozessor ohnehin alle für diese Datenverarbeitung erforderlichen Einrichtungen enthält, können die Koppler onne Mehraufwand an anderer Stelle beträchtlich vereinfacht werden. Es >st lediglich erforderlich, in dem Prozessor für jede Art der mit ihm verbundenen Peripheriegeräte ein zusätzliches Kopplungs-Mikroprogramm zu speichern, das aufgerufen wird, wenn ein Informationsaustausch mit einem Peripheriegerät der betreffenden Art stattfinden soll.
Die Einfügung des Informationsaustausches mit den Peripheriegeräten in die allgemeine Unterbrechungssteuerung des Prozessors auf Grund der von den Kopplern gelieferten Bereitschaftssignale ergibt einen reibungs- und lückenlosen Betrieb ohne Wartezeiten und zugleich eine noch bessere Ausnutzung der kapazität jedes Prozessors.
Eine vorteilhafte Ausgestaltung der Erfindung besteht darin, daß der Prozessor eine Gruppe von Doppelcodierern enthält, von denen jeder durch das Aüsgängssigrial des Bercitschaffsausgangs eines der Koppler erregt wird und daraufhin zwei Adressencode' gruppen für den Mikroorogrammspeicher bzw. den Arbeitsspeicher erzeugt und daß eine Erzwingungs schaltung für die Eingabe der von den Doppelcodieireni gebildeten Codegruppen in die Adressenregister des Mikroprogrammspeichers bzw. des Arbeitsspeichers des Prozessors vorgesehen ist
In diesem Fall ist die Datenverarbeitungsaninge vorzugsweise so ausgebildet, daß die Erzwingungssc haltung nur beim Vorhandensein eines in dem Prozessor gebildeten, die Zulässigkeit einer Unterbrechung des laufenden Programms anzeigenden Freigabesignials entsperrt wird.
Eine zweckmäßige Weiterbildung der Erfindung besteht darin, daß jede Verbindung zwischen dem Bereitschaftsausgang eines Kopplers und dem entsprechenden Eingang des Doppelcodierers über eine Torschaltung geführt ist und daß eine Prioritätsbestimmungsschaltung alle von den Bereitschaftsausgängen abgegebenen Signale empfängt und an ihren Ausgängen selektiv mit den Steuereingängen c ' Torschaltun gen verbunden ist.
Eine weitere vorteilhafte Ausgestaltung der Datenverarbeitungsanlage nach der Erfindung besteht darin, daß die Bereitschaftsausgänge der Koppler direkt cder über dv Prioritätsbestimmungsschaltung mit einer Oder-Schaltung verbunden sind, deren Ausgang mit einem zusätzlichen Entsperrungssteuereingang der Erzwingungsschaltung verbunden ist, sowie mit e.ner Schaltung welche bewirkt, daß unmittelbar vor der Eingabe der von den Doppelcodierern erzeugten Adrcssencodegruppen in die Adressenregister wenigstens die in den Adressenregistern stehenden Codegruppen des unterbrochenen Programms an definierten Stellen der Speicher gespeichert werden.
Ein Ausführungsbeispie! der Erfindung wird nachstehend an Hand der Zeichnung erläutert, die ein Blockschaltbild eines Teils einer Datenverarbeitungsanlage nach der Erfindung zeigt.
In der Zeichnung ist ein Prozessor UT1 dargestellt der einen Teil einer Datenverarbeitungsanlage bildet, die mel.rere Prozessoren ..., UTh UT1, UTk,... enthält Zu der Datenverarbeitungsanlage gehört ferner ein Zentralspeicher MC, der mit den Prozessoren in zweiseitiger Verbindung für den Austausch von Befehlswön<;rn und Operandenwörtern entsprechend den Erfordernissen der jeweils durchgeführten Programme steht.
Dem Prozessor UT1 sind mehrere Peripheriegenäte Po, Pi... Pn zugeordnet, die jeweils über einen zugehörigen Koppler C0, C\... Cn in zweiseitiger Verbindung für den Austausch von Informationen mit dem Prozessor stehen. Der Prozessor enthält einen Mikroprogramm-Speicher MD, der Mik'oprogramme MP/ bis MPq enthä1'.. die in Zonen in diesem Speicher verteilt und durch ein Mikroprogrammadressenregister Γ wählbar sind. Dem Mikrt Programmspeicher MD ist ein Schreib-Lese-Register V zugeordnet. Der Prozessor enthält ferner einen Arbeitsspeicher MT, der in Arbeitszonen Zi bis Zn, organisiert ist, die durch ein Arbeitszonenadressenregister / wählbar sind; er ist ferner mit einem Schreib-Lese-Register Uausgestattet, Mit dem Arbeitsspeicher MT ist ein Rechenwerk OP verbünden, z. B. elfl Addier-Subtrahier-Recfienwerk Unit Prüfeinrichtungen für Parltäts-, Überlauf- und sonstige Prüfungen.
Dieses Rechenwerk OP kann auch außerhalb des Arbeitsspeichers MTangeo- 'net sein. Der Arbeitsspeicher MT besteht aus allgemeinen Registern, d.h., (laß die Register in seinen verschiedenen Zonen keine festen Zuordnungen haben. Diese Zuordnungen erhalten sie
entsprechend dem im Mikrdprogrammspeicher MD gewählten Mikroprogramm, wodurch in einer Afbeitszone Z des Arbeitsspeichers Abgearbeitet wird, deren Adresse bei dieser Wahl bezeichnet wird. Entsprechend diesen Zuordnungen können Register des Arbeitsspeichers auch als Befehlsspeicher oder als Befehlszähler in jeder Speicherzöne Z verwendet werden. Es ist jedoch auch möglich, in dem Arbeitsspeicher Mf zwei Register MO und CO von vornherein für diese Funktionen Vorzusehen, die sie dann für jede Arbeit wenigstens in einem Teil der Zonen des Arbeitsspeichers /WTerfüllen.
Ein Register GT dient dazu, wenn nötig, den Inhalt des Mikroprogrammadressenregisters T vorübergehend aufzunehmen, und in gleicher Weise hüll ein Register GJ vorübergehend den Inhalt des Arbeitszonenadressenregisters / fest. Natürlich können hierfür zwei Register des Arbeitsspeichers MT verwendet werden, und weiteren Registern des Arbeitsspeichers kann die Speicherung weiterer Informationen einer Aufgabe zugeteilt werden, die in dem Prozessor zugunsten einer vorrangigen Aufgabe unterbrochen wurde; zu diesen festzuhaltenden Informationen der unterbrochenen Aufgabe gehört insbesondere der Inhalt des Schreib-Lese-Registers U des Arbeitsspeichers MT\m Augenblick der Unterbrechung.
Die Befehlswörter und Operanden werden einzeln in ein Pufferregister M eingegeben, das für den Zentralspeicher MC zugänglich ist. Das Pufferregister /Vf ist ein Schreib-Lese-Register des Zentralspeichers MC, das besonders für den Prozessor UT1 vorgesehen ist. Jeder weitere Prozessor der Datenverarbeitungsanlage enthält ein Pufferregister gleicher Art. Um die Ergebnisse einer durch den Prozessor durchgeführten Arbeit in den Zentralspeicher MCeinzuschreiben, erhält das Pufferregister M einzeln die diese Ergebnisse darstellenden Informationswörter, die in Stellen des Zentralspeichers MC übertragen werden, deren Adressen in einem Zentralspeicheradressenregister S enthalten sind. In einem System mit mehreren Prozessoren und einem Zentralspeicher ist es sonst üblich, nur ein Schreib-Lese-Register nach Art des Registers M und nur ein AJicaseincgistci nach Alt des Registers S für den Zentralspeicher vorzusehen. Je nach den in dem System laufenden Aufgaben führt diese Maßnahme zu Wartezeiten für die Durchführung von Arbeiten in den Prozessoren, die sich nachteilig auf die Funktion und den Wirkungsgrad der Anlage auswirken. Ein in das Schreib-Lese-Register des Zentralspeichers eingegebener, für einen Prozessor, z. B. den Prozessor LfT1 bestimmter Befehl muß in diesem Register den Abruf durch den Prozessor für seine Übernahme ubwarten, und während dieser Wartezeit kann der Zentralspeicher keinen anderen Prozessor bedienen. Andererseits muß für die Eingabe eines Arbeitsergebnisses eines Prozessors in den Zentralspeicher die gleichzeitige Verfügbarkeit des Schreib-Lese-Registers und des Adressenregisters des Zentralspeichers abgewartet werden. Die Anordnung der Register M und S in jedem Prozessor macht es möglich, daß das System ohne Warten auf die Verfügbarkeit des Zentnalspeichers weiterarbeiten kann und auch der Betrieb der Prozessoren optimal vergleichmäßigt wird. Wenn im Laufe der Durchführung einer Aufgabe ein Befehlswort oder ein Operandenwort in das Pufferregister M eines Prozessors eingegeben wird, kann, dieses Wort, ohne den Zentralspeicher zu blockieren warten, bis der Prozessor eine laufende Arbeit beendet hat, wenn die sofortige Auswertung dieses Wortes nicht notwendig ist Wenn die laufende Arbeit den Operanden benötigt, ruft ihn ein Mikrobefehl aus dem Pufferregister M ab. Wenn die laufende Arbeit beendet ist und der Prozessor die Freigabe dieser Aufgabe durchführt prüft ein Mikroprogramm den Inhalt des Pufferregistefs M, und wenn es sich nun um ein Befehlswort handelt, was normalerweise der Fall ist, wird die Durchführung dieses Befehls dadurch eingeleitet, daß er in der üblichen Weise zerlegt Wird. In diesem Befehl kann z. B. eine Adresse für Einordnung des Ergebnisses der Durchführung des Befehls in den Zentralspeicher MC enthalten sein, und diese Adresse wird für die Übertragung dieses Ergebnisses in den Zentralspeicher MC in das Register S eingegeben. Ganz allgemein ermöglicht die Anordnung der Register M und S in jedem Prozessor einen parallelen Betrieb der Prozessoren sowohl gegenüber dem Zentralspeicher MC als auch gegenüber der das System leitenden Zentraleinheit.
In der Zeichnung sind außerdem verschiedene Verbindungen angedeutet, die in üblicher Weise zwischen dem Mikroprogrammspeicher MD und dem Arbeitsspeicher MTzu deren funktioneller Zusammenarbeit bei der Durchführung der Mikrobefehle und der Mikroprogramme vor allem durch Übertragungen zwischen den Schreib-Lese-Registern V und /7 hergestellt werden können. Außerdem ist angedeutet, daß das Schreib-l.ese-Register U des Arbeitsspeichers MT mn den Kopplern Gj bis Cn der Peripheriegeräte Po bis Pn verbunden ist.
Jeder Koppler eines Peripheriegeräts enthält nur die Organisation, die für die Steuerung des Auslesens und Eingehens von Daten in dem zugeordneten Peripheriegerät nötig ist; im Prozessor gespeicherte Kopplungsmikroprogramme erübrigen das Vorhandensein jeglicher Organisation zur Interpretation der Befehle in diesen Kopplern. Diese reduzierte Organisation umfaßt für Peripheriegeräte jeder Art die üblichen Anordnungen für die Synchronisation zwischen den Peripheriegeräten und den Prozessor und die normale Unterbrechungslogik. Bei Magnetband- und Lochstreifengeräten gehören dazu ferner die üblichen Pufferregister und im Faiie schneller Feripheriegerate, wie z. 5. rviagneipiatten- und Magnettrommelspeichern, die Operationen erfordern deren Durchführung so schnell erfolgen muß, daß sie nicht vom Prozessor übernommen werden kann, die für diese Operationen geeigneten Anordnungen, z. B. die Anordnungen zur Parallel-Serien-Umsetzung und Serien-Parallel-Umsetzung der in den Peripheriegeräten zu lesenden bzw. zu schreibenden Codegruppen. Die Wählschaltungen für die Stellen d^- zu schreibenden oder zu lesenden Wörter können ebenfalls in den Kopplern für Magnetplatten- und Magnettrommelspeicher enthalten sein, jedoch kann diese Wahl in den meisten Fällen durch ein Mikroprogramm und die direkte Steuerung des Kopplers des Peripheriegeräts vom Arbeitsspeicher MT aus erfolgen. Es ist hier nicht erforderlich, im einzelnen jeden Koppler für jede Art von Peripheriegerät zu beschreiben; es ist jedoch zu beachten, daß in üblicher Weise, wenn ein Peripheriegerät durch den Arbeitsspeicher MT aufgerufen worden ist und sein Koppler von diesem Arbeitsspeicher die erforderlichen Informationen erhalten hat und das Peripheriegerät in den Bereitschaftszustand für die Abgabe oder Aufnahme von Daten versetzt hat, dieser Koppler ein Signal abgibt, das einen derartigen Bereitschaftszustand anzeigt um dem Prozessor zu signalisieren, daß der gewünschte Austausch stattfinden kann. Diese Bereitschaftssignaie So bis Sn werden bei dem
dargestellten Beispiel jeweils an einem Bereitschaftsäusgang So, S\...S„ jedes Kopplers C0, C\... Cn abgegeben. Solche Bereitschaftssignale sind üblich, doch werden sie in dem hier beschriebenen Prozessor in besonderer Weise verarbeitet, und sie ergeben eine spezifische Wirkung. Zu diesem Zweck Werden die Bercjtfjchaftssignale äo, s\...s„ einer besonderen, im folgenden erläuterten Einrichtung zugeführt.
Jedes der Bereitschaftssignale Sa bis s„ wird einem Öoppelcodierer K0. K\ ... Kn zugeführt. Jeder· Doppelcodierer gibt, wenn er erregt wird, zwei Codegruppen /; und j, (7=1, 2 ... n) für die Vorbereitung der Adressenregister Tund /der Speicher MDund MTdes Prozessors ab. Da die Eingabe dieser Codegruppen in das Mikroprogrammadressenregister T bzw. in das Arbeitszonenadressenregister /eine laufende Arbeit im Prozessor aufschiebend unterbricht, werden sie diesen
A rlroDoonroniolorn itWör- ai η a T* i"7\uir%ctiinctccr*\ia\tttna
zugeführt, die durch Torschaltungen Γ/Und/i gebildet ist, die nur offen sind, wenn sie ein Freigabesignal ACQ erhalten, das das Ende der Durchführung eines Mikrobefehls in einem laufenden Mikroprogramm anzeigt und bei dem betrachteten Beispiel von dem Schreib-Lese-Register U des Arbeitsspeichers kommt Ein derartiges Freigabesignal steuert auch zugleich die vorübergehende Speicherung der Informationen der im Prozessor laufenden Aufgabe, d. h. in erster Linie die Eingabe der im Mikroprogrammadressenregister T stehenden Adresse in das Register GT über die Tor .'haltung B, und der im Arbeitszonenadressenregister / stehenden Adresse in das Register GJ über die Torschaltung Bt Außerdem wird durch das Freigabesignal die Aufbewahrung des Inhalts des Schreib-Lese-Registers U veranlaßt, beispielsweise in einem Register des Arbeitsspeichers MT, gegebenenfalls mit der Speicherung weiterer Informationen der unterbrochenen Aufgabe in solchen Registern. Für die Übertragung der von dem Doppelcodierer K, abgegebenen Codegruppen i,und j, wird an die Torschaltungen 7/und//das Bereitschaftssignal s/ des erregten Kopplers Q über eine Oder-Schaltung OU angelegt, deren Eingänge mit den Bereitschaftsausgängen So, Si ...Sn aller Koppler verbunden sind.
Diese Einrichtung bewirkt daher eine Unterbrechung bzw. einen Aufschub des Ablaufs des im Prozessor laufenden Mikroprogramms. Es kann aber vorkommen, daß eine derartige Unterbrechung beim Auftreten eines Bereitschaftssignals s am Ausgang eines Kopplers C selbst bei Freigabe eines Mikrobefehls unpassend ist Bei bestimmten Peripheriegeräten umfaßt der Informationsaustausch nämlich zwingend mehrere wiederholte Arbeitszyklen, die nicht unterbrochen werden können, (z.B. beim Austausch des Inhalts einer ganzen Speicherzone). Deshalb ist es zweckmäßig, daß in einem Prozessor mit Mehrfachkopplung von Peripheriegeräten eine Rangordnung für den Zugang der Peripheriegeräte zum Prozessor eingerichtet wird. Zu diesem Zweck sind die Bereitschaftsausgänge So bis Sn der Koppler Co bis Cn mit einer Prioritätsbestimmungsschaltung CH verbunden, deren Ausgänge Torschaltungen Ho bis Hn steuern, die zwischen die Bereitschaftsausgänge So bis Sn der Koppler und die entsprechenden Eingänge der Doppelcodierer K0 bis Kn geschaltet sind. Die Ausgänge der Prioritätsbestimmungsschaltung CH sind dann mit den Eingängen der Oder-Schaltung OU verbunden. Die Prioritätsbestimmungsschaltung CH ist so ausgeführt, daß sie beim Auftreten von mehreren Bereitschaftssignalen 5 (von denen jedes nur dann verschwindet, wenn der Informationsaustausch mit dem zugehörigen Perl· pheriegerät beendet ist) jeweils nur einen einzigen ihrer Ausgänge erregt, und zwar den Ausgang der demjenigen Peripheriegerät zugeordnet istj das Von den ein Bereitschaftssignal s abgebenden Periphefiegeräten die höchste Priorität in der festgelegten Rangordnung hat. Die Prioritätsbestimmungsschaltung CH kann folgenden Aufbau haben: Für jeden Koppler mit Ausnahme des Kopplers mit der höchsten Priorität in der Rangordnung ist eine Torschaltung vorgesehen, und jede dieser Torschallungen wird durch die Erregung der Bereitschaftsausgänge der Koppler mit höherer Priorität in der Rangordnung gesperrt. Nimmt man beispielsweise an, daß die Rangordnung die der Indizes η bis 0 ist, dann sperrt das Bereitschaftssignal Sn sämtliche Torschaltungen, das Bereitschaftssignal sn-\ sperrt die den Kopplern Cn-I bis Co zugeordneten Tnrcrhaltilnapn neu/ - >.. ·. — .._.. — .-ο - - · — — - - -
Zum besseren Verständnis des Aufbaus und der Funktion des beschriebenen Prozessors mit Mehrfachkopplung von Peripheriegeräten soll der Fall eines Informationsaustausches zwischen einem Peripheriegerät und dem Zentralspeicher /UCbetrachtet werden. Es sei angenommen, daß der Inhalt eines Sektors einer Magnetplatte in den Zentralspeicher MC eingegeben werden soll.
Für eine derartige Operation wird ein Befehl der vom Zentralspeicher MC kommt, in das Pufferregister M eingegeben, um in einer Speicherzone des Arbeitsspeichers MT zwei Übertragungsregister vorzubereiten, von denen eines einen Zählerstand erhält, welcher der Anzahl der Wörter entspricht, die von der Magnetplatte in den Zentralspeicher MC bei der in das andere Übertragungsregister eingegebenen Zentralspeicheradresse einzugeben sind. Diese beiden Daten sind in dem Befehl enthalten.
Wenn in dem Prozessor eine Arbeit läuft, wie dies normalerweise der Fall ist, wenn der Prozessor gut ausgenutzt ist, wartet der Befehl im Pufferregister M den Augenblick ab, in dem der Mikroprogrammspeicher MS ein Mikroprogramm oder einen Mikroprogrammabschnitt beendet, der eine Unterbrechung der laufenden Aufgabe ermöglicht. Der Befehl im Pufferregister M wird nun berücksichtigt, und im Mikroprogrammspeicher MD läuft ein Mikroprogramm zur Zerlegung dieses Befehls ab, das in einer Speicherzone Z des Arbeitsspeichers MT, die dem in dem Befehl bezeichneten Peripheriegerät zugeordnet ist, die beiden erwähnten Übertragungsregister einstellt Außerdem wird durch dieses Mikroprogramm z. B. die Adresse des von aem Informationsaustausch betroffenen Magnetplattensektor zu dem Register U und von da zu dem Koppler C dieses Peripheriegeräts übertragen. Diese Adresse könnte in dem im Pufferregister M gelesenen Befehl angegeben sein, doch ist sie in den meisten Fällen in einem zweiten Befehl enthalten, der vom Zentralspeicher MC kommt und von dem Prozessor nach der Vorbereitung abgerufen wird. Der Koppler, der diese Adresse erhalten hat, fährt mit der Vorbereitung der Übertragung fort, indem er die Adresse decodiert, den Sektor wählt und die Übertragung der abzulesenden Wörter in das Schreib-Lese-Register U vorbereitet Dabei wird angenommen, daß in dem Koppler die Einrichtung zur Decodierung der örtlichen Adresse und außerdem die Einrichtung zur Richtungssteuerung der Wörter des geforderten Informationsaustauschs beibehalten worden sind. Das am Bereitschaftsausgang S des Kopplers abgegebene Bereitschaftssignal s wird von
ίο
einem Komparator geliefert, der die dem Koppler zugeführte örtliche Adresse mit der Leseadresse der Magnetplatte vergleicht, Man könnte andererseits in Betracht ziehen, daß die Wahl des Sektors von eitlem durch die Mikrornaschine ausgeführten Mikroprogramm abhängt und daß das Bereitschaftssignal s abgegeben wird, \venn der Koppler für den Austausch bereit ist.
Wenn der Koppler demnach sein Bereitschaftssignal 5 abgibt und beispielsweise gegenüber einem anderen Koppler vorrangig ist, dessen Bereitschaftssignal s für eine laufende Arbeit an der Prioritätsbestimmungssclialtung CH anliegt, werden bei Freigabe von dem im Prozessor laufenden Mikrobefehl die Codegruppen t-, und ji, die von dem dem Koppler zugeordneten Doppelcodierer K angegeben werden, in die Adressenregister Tbzw. /gegeben, nachdem der vorherige Inhalt rl'tacar A Γΐι·ΛΡί·ο«ι"Λ#τί<·ίΛΐ" t*r\A siai* D ac F Anf I r>frt*»r«o ti«««*"·
K1M j ^^^9^ι f \ ^j [ WtJt^ ^* III ^* ti I*J (W I LJ t f *i T ^J ^rf I 1 ^ W^ % ^^ ^* ( IfII ^Jf I I MlA If ^^f t\j 1>
der unterbrochenen Aufgabe gespeichert worden sind; zu diesem Zweck wird das von der Oder-Schaltung OU abgegebene Bereitschaftssignal s an eine weitere Torschaltung R angelegt, die durch das Freigabesignal ACQ geöffnet wird. In Abwandlung hiervon könnte die Speicherung dieser vorherigen Adressen und des Restes der Informationen durch einen besonderen Mikrobefehl sichergestellt werden, den das Bereitschaftssignal 5 durch einen zusätzlichen Codierer im Mikroprogrammspeicher MD abruft, wobei die Torschaltungen 7} und /,· dann nicht mehr von dem Bereitschaftssignal s selbst gesteuert werden, sondern von dem das Ende der Durchführung dieses Mikrobefehls anzeigenden Signal. Diese zusätzliche Torschaltung könnte die Torschaltung R sein, deren Ausgangssignal das Abrufen des genannten Mikrobefehls verursachen würde.
Wenn das Bereitschaftssignal s auf diese Weise vom Prozessor berücksichtigt worden ist, befindet sich die Adresse des Mikroprogramms im Mikroprogrammadressenregister T1 und die Adresse der Arbeitszone Z befindet sich im Arbeitszonenadressenregister /. Das so abgerufene Mikroprogramm läuft nun entsprechend einem internen Prozeß, der nicht näher erläutert zu werden braucht, z. B. wie folgt ab: Lesen eines Wortes in dem Koppler, Eingabe dieses Wortes in den Zentralspeicher MC an der im Adressenregister S stehenden Adresse, Erhöhung dieser Adresse um eine Einheit und Verminderung des die Wortzahl angebenden Zähler^ Standes in dem durch den Anfangsbefehl Vorbereiteten Register, Lesen des nächsten Wortes in dem Koppler, Eingabe in den Zentralspeicher MC usw., bis zu der u j:~ λ _<■„
Am Ende der Durchführung sendet das Mikropro-2ö gramm über das Register U zu dem Koppler ein die Beendigung des Informationsaustausches anzeigendes Freigabesignal, und da dieser Koppler nun entaktiviert wird, verschwindet sein Bereitschaftssignal s. Das zuvor unterbrochene Kopplungsprogramm kann nun beispielsweise in dem Prozessor seine vorübergehend gespeicherten Informationen wieder übernehmen, die durch den letzten Befehl des durchgeführten Mikroprogramms automatisch wieder abgerufen werden: Die in den Registern GT und G/gespeicherten Codegruppen werden in die Adressenregister Tund / zurückgebracht usw.
Hierzu 1 Blatt Zeichnungen

Claims (5)

Patentansprüche:
1. Datenverarbeitungsanlage mit einem Zentralspeicher, wenigstens einem mit dem Zentralspeicher für den Austausch von Befehlswörtern und Operanden in zweiseitiger Verbindung stehenden Prozessor, der in Multi-Mikroprogrammierung organisiert ist und einen Mikroprogrammspeicher mit zugehörigem Mikroprogrammadressenregister sowie einen Arbeitsspeicher mit zugehörigem Arbeitszonenadressenregister enthält, wobei die beiden Speicher über ihre jeweiligen Schreib-Lese-Register in zweiseitiger Austauschverbindung stehen, und mit mehreren Peripheriegeräten, von denen jedes über einen zugehörigen Koppler in zweiseitiger Austauschverbindung mit dem Schreib-Lese-Register des Arbeitsspeichers des Prozessors steht, wobei jeder Κορμί .r einen Bereitschaftsausgang aufweist, an dem er ein den Zustand »austauschbereit« des entsprechenden Peripheriegeräts anzeigendes Signal abgibt, dadurch gekennzeichnet, daß der Mikroprogrammspeicher (MD) des Prozessors (UTj) Kopplungs-Mikroprcgramme enthält, welche die Befehle für die Vorbereitung und Durchführung des Datenaustauschs zwischen jedem Peripheriegerät und dem Prozessor ausführen, und jeder Koppler (C0 bis Cn) nur die für die Steuerung der Entnahme und Eingabe der Daten bei dem zugehörigen Peripheriegerät (Po bis Pn) erforderliche Organisation enthält, und daß ferner durch die Erregung des Bereitschaftsausgangs {So bis l,„) eines Kopplers (G> bis Cn) eine Unterbrecnu.ig des laufenden Programms und die Durchführung t.nes für die Art des diesem Koppler zugeordneten Peripheriegeräts (P0 bis Pn) spezifischen Kopplungs-Mikroprogramms ausgelöst wird.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß der Prozessor [LJT1) eine Gruppe von Doppelcodierern (Kn bis Kn) enthält, von denen jeder durch das Ausgangssignal (5ό bis Sn) des Bereitschaftsausgangs (5b bis Sn) eines der Koppler (G bis Cn) erregt wird und daraufhin zwei Adressencodegruppen (t*j) für den Mikroprogrammspeicher (MD) bzw. den Arbeitsspeicher (MT) erzeugt, und daß eine Erzwingungsschaltung (T„ I,)tür die Eingabe der von den Doppelcodierern gebildeten Codegruppen (f. j) in die Adressenregister (T. J) des Mikroprogrammspeichers (MD) bzw. des Arbeitsspeichers (MT) des Prozessors vorgesehen ist.
3. Datenverarbeitungsanlage nach Anspruch 2, dadurch gekennzeichnet, daß die Erzwingungsschaltung (Γ, /,) nur beim Vorhandensein eines in dem Prozessor gebildeten, die Zulässigkeit einer Unterbrechung des laufenden Programms anzeigenden Freigabesignals (ACQ)entsperrt wird.
4. Datenverarbeitungsanlage nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß jede Verbindung zwischen dem Bereitschaftsausgang (So bis Sn) eines Kopplers (Ca bis Cn) und dem entsprechenden Eingang des Doppelcodierefs (K0 bis Kn) über eine Torschaltung (M0 bis Hn) geführt ist und daß eine Prioritätsbestimmungsschaltung (CH) alle von den Bereitschaftsausgängen (S0 bis Sn) abgegebenen Signale empfängt und an ihren Ausgängen selektiv mit den Steuer eingängen der Torschältungen (H0 bis Hn) verbunden ist
5. Datenverarbeitungsanlage nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, daß die Bereitschaftsausgänge (So bis Sn) der Koppler (Qj bis C1J direkt oder über die Prioritätsbestimmungsschaltung (CH)mh einer Oder-Schaltung (OLJ) verbunden sind, deren Ausgang mit einem zusätzlichen Entsperrungssteuereingang der Erzwingunqsschaltung (Ti, J1) verbunden ist, sov/ie mit einer Schaltung (R), weiche bewirkt, daß unmittelbar vor der Eingabe der von den Doppelcodierern (Ka bis Kn) erzeugten Adressencodegruppen in die Adressenregister (T, J) wenigstens die in den Adressenregistern (T, J) stehenden Codegruppen des unterbrochenen Programms an definierten Stellen (GT, JT) der Speicher (MD, MT) gespeichert werden.
DE2221926A 1971-05-07 1972-05-04 Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor Expired DE2221926C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR717116498A FR2136845B1 (de) 1971-05-07 1971-05-07

Publications (3)

Publication Number Publication Date
DE2221926A1 DE2221926A1 (de) 1972-11-16
DE2221926B2 DE2221926B2 (de) 1974-09-05
DE2221926C3 true DE2221926C3 (de) 1981-01-15

Family

ID=9076592

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2221926A Expired DE2221926C3 (de) 1971-05-07 1972-05-04 Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor

Country Status (10)

Country Link
US (1) US3768076A (de)
JP (1) JPS536824B1 (de)
BE (1) BE781607A (de)
BR (1) BR7202822D0 (de)
DE (1) DE2221926C3 (de)
ES (1) ES402499A1 (de)
FR (1) FR2136845B1 (de)
GB (1) GB1391996A (de)
IT (1) IT958804B (de)
NL (1) NL160406C (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3878514A (en) * 1972-11-20 1975-04-15 Burroughs Corp LSI programmable processor
US3996564A (en) * 1974-06-26 1976-12-07 International Business Machines Corporation Input/output port control
US4058850A (en) * 1974-08-12 1977-11-15 Xerox Corporation Programmable controller
DE2554425C3 (de) * 1975-12-03 1984-01-12 Siemens AG, 1000 Berlin und 8000 München Anordnung zum gegenseitigen Anpassen von Steuersignale austauschenden Geräten
US4093981A (en) * 1976-01-28 1978-06-06 Burroughs Corporation Data communications preprocessor
JPS5299034A (en) * 1976-02-17 1977-08-19 Nippon Telegr & Teleph Corp <Ntt> Control system for micro program
US4261033A (en) * 1977-01-19 1981-04-07 Honeywell Information Systems Inc. Communications processor employing line-dedicated memory tables for supervising data transfers
US4199811A (en) * 1977-09-02 1980-04-22 Sperry Corporation Microprogrammable computer utilizing concurrently operating processors
US4281315A (en) * 1979-08-27 1981-07-28 Bell Telephone Laboratories, Incorporated Collection of messages from data terminals using different protocols and formats
JPS5865838U (ja) * 1981-10-26 1983-05-04 株式会社クボタ 茎稈刈取機の分草具取付構造

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3651482A (en) * 1968-04-03 1972-03-21 Honeywell Inc Interlocking data subprocessors

Also Published As

Publication number Publication date
US3768076A (en) 1973-10-23
NL160406B (nl) 1979-05-15
DE2221926A1 (de) 1972-11-16
FR2136845B1 (de) 1973-05-11
NL7206142A (de) 1972-11-09
IT958804B (it) 1973-10-30
GB1391996A (en) 1975-04-23
NL160406C (nl) 1979-10-15
FR2136845A1 (de) 1972-12-29
DE2221926B2 (de) 1974-09-05
ES402499A1 (es) 1975-03-16
BR7202822D0 (pt) 1973-06-14
BE781607A (fr) 1972-07-17
JPS536824B1 (de) 1978-03-11

Similar Documents

Publication Publication Date Title
DE2161886C2 (de) Befehlsausführungseinheit in einer elektronischen Datenverarbeitungszentrale für die gleichzeitige Verarbeitung mehrerer Befehle
DE1774296C2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE2523372C3 (de) Eingabe-/Ausgabe-Anschlußsteuereinrichtung
DE2317870C2 (de) Schaltungsanordnung zur Steuerung der Datenübertragung zwischen dem Hauptspeicher und mindestens einem E/A-Gerät in einer digitalen Datenverarbeitungsanlage
DE1524102C3 (de) Elektronische, aus Baueinheiten aufgebaute Datenverarbeitungsmaschine
DE2635592A1 (de) Multiprozessor-abrufsystem
DE2714805A1 (de) Datenverarbeitungssystem
DE2243956A1 (de) Speicherprogrammierte datenverarbeitungsanlage
DE1424762B2 (de) Datenverarbeitungsanlage
DE2533403A1 (de) Datenverarbeitungssystem
DE1774870C3 (de) Einrichtung zur Adressierung einer Speicherzelle eines Speichers in einer Datenverarbeitungsanlage
DE2148847A1 (de) Schaltungsanordnung zum Steueren peripherer Ein- und Ausgabegeraete von Datenverarbeitungssystem
DE1499206C3 (de) Rechenanlage
DE2036729A1 (de) Digital Datenverarbeiter
DE2221926C3 (de) Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
DE2218630C3 (de) Schaltungsanordnung zur Steuerung von Unterbrechungssignalen in Datenverarbeitungsanlagen
DE1524111B2 (de) Elektronische Datenverarbeitungsanlage
DE1949916B2 (de) Verfahren zum betrieb einer programmgesteuerten datenverarbeitungsanlage und anordnung zur durchfuehrung des verfahrens
DE2829972A1 (de) Schnittstelle einer datenverarbeitungsanlage
DE2747304C3 (de) Einrichtung zur Mikrobefehlssteuerung
DE2316321C2 (de) Schaltungsanordnung an der Schnittstelle zwischen einer Steuerung eines Rechenwerkes und einem Hauptspeichers einer Rechenanlage
DE2226669A1 (de) Verfahren und vorrichtungen fuer programmverzweigung und registeradressierung
DE2217565A1 (de) Steuerteil eines Rechenautomaten, der die relative Basisadresse von Befehlen bildet
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen

Legal Events

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