CH526167A - Datenverarbeitungseinrichtung und Verfahren zum Betrieb der Datenverarbeitungseinrichtung - Google Patents

Datenverarbeitungseinrichtung und Verfahren zum Betrieb der Datenverarbeitungseinrichtung

Info

Publication number
CH526167A
CH526167A CH1474371A CH1474371A CH526167A CH 526167 A CH526167 A CH 526167A CH 1474371 A CH1474371 A CH 1474371A CH 1474371 A CH1474371 A CH 1474371A CH 526167 A CH526167 A CH 526167A
Authority
CH
Switzerland
Prior art keywords
register
command
data processing
data
memory
Prior art date
Application number
CH1474371A
Other languages
English (en)
Inventor
Faber Ulbe
A Fisher David
L Davis Robert
D Mcgonagle Joseph
Original Assignee
Burroughs 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
Priority claimed from US04/825,569 external-priority patent/US4558411A/en
Application filed by Burroughs Corp filed Critical Burroughs Corp
Publication of CH526167A publication Critical patent/CH526167A/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7896Modular architectures, e.g. assembled from a number of identical packages
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/226Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Executing Machine-Instructions (AREA)

Description


      Datenverarbeitungseinrichtung    und     Verfahren    zum     Betrieb    der     Datenverarbeitungseinrichtung            Die        Erfindung    betrifft eine     Datenverarbeitungsein-          richtung        mit    mehreren Registern zur Verschiebung von  Daten mit einem ersten Speicher für Rechenablaufbefeh  le und mit einem zweiten Speicher für Gruppen von       Operationsbefehlen        und        ein    Verfahren zum Betrieb der       Datenverarbeitungseinrichtung.     



  Eine derartige     Datenverarbeitungseinrichtung    kann  für     verschiedene    Aufgaben verwendet werden, z. B. für  Rechen- und ,andere     Datenverarbeitungszwecke,    und  auch zur Eingabe/Ausgabe-Steuerung. Dabei werden  mehrere Stufen oder Ebenen von Unterbefehlsgruppen  verwendet.  



  Das     Anwendungsgebiet        elektronischer    Rechner hat  sich so stark erweitert,     dass    zur Zeit ein Bedürfnis für       ein    vollständiges Spektrum von Rechnern zur Durchfüh  rung einer Vielfalt von Rechenaufgaben und anderer       Datenverarbeitungsarbeiten    besteht.

       Zeitweilig    hat man  sogenannte Grossrechenanlagen,     hauptsächlich    für kom  plizierte     mathematische    Aufgaben und kleine Datenver  arbeitungsanlagen hauptsächlich für Onganisations- und       Buchungsaufgaben,    bei denen     verhältnismässig        einfache     Rechenoperationen mit einer grossen     Anzahl    von Daten  durchzuführen sind, für geeignet gehalten.

   In letzter Zeit  sind die     organisatorischen        Arbeiten    derart     angewachsen,     dass der Einsatz grosser     Datenverarbeitungsanlagen     zweckmässig ist,     und    andererseits     wurden    Anwendungs  gebiete für mittlere und kleine     Datenverarbeitungsanla-          gen        erschlossen,    die in der Lage sind, sowohl wissen  schaftliche Aufgaben als auch das     Aufzeichnen    von  Daten durchzuführen.

   Es besteht daher ein Bedürfnis  nach einer Vielfalt- von Datenverarbeitungsanlagen,     die     von sehr kleinen     bis    zu sehr grossen Anlagen reicht, von  denen jede     nicht    nur     organisatorische    und wissenschaft  liche Aufgaben durchführen, sondern     auch    Datenüber  tragungen, Datenerfassungen und dergleichen steuern       ikann.       Je     ,grösser        das        Anwendungsgebiet,    d.

       h.    die     Zahl    der  unterschiedlichen Anwendungsfälle wurde, um so mehr  ist man dazu     übergegangen,,        unterschiedliche,    auf den  einzelnen Anwendungsfall zugeschnittene     Rechenanla-          gen    herzustellen.

   So legt man in     denjenigen        Fällen,    in  denen     einte    grosse     Anzahl    von Rechenaufgaben zu lösen  ist, bei denen     einige    hundert oder tausend sich wiederho  lende Rechenschritte     vorkommen,    besonderen Wert auf  eine hohe     Betriebsgeschwindigkeit    und auf die     Anzahl     von Datenbits, die pro     Zeiteinheit    bei der     Durchführung     eines Befehls     verarbeitet        werden    kann.

   Daher pflegt man  eine Rechenanlage für     diesen    Fall .auf     Parallelbetrieb     und     eine    grosse Stellenzahl auszulegen     und        algorit'hmi-          sche        Rechenprogramme,    die mit den Daten     durchzufüh-          ren    sind,     fest    zu     verdrahten,    um     eine    höhere Betriebs  geschwindigkeit zu erzielen.

   Dies ist ein     wesentlicher     Grund dafür, dass     Grossrechner    oder     wissenschaftliche     Rechner so kostspielig sind. Wenn ein billiger     Rechner     verlangt wird, pflegt man diesen nach Kostengesichts  punkten     auszulegen,    so     dass    die     Schaltungsanordnungen     und Einrichtungen dieser Rechner     verhältnismässig    ein  fach sind und die     verschiedenen    Algorithmen vom  Programmierer. programmiert     werden    müssen.

       Infolge-          dessen    dauert die Durchführung des Programms     verhält-          nismässig    lange, nicht nur, weil die Anlage jeden       einzelnen    Schritt des     Programms    ausführen     muss,    son  dern auch, weil die Anlage auf die Verarbeitung von  Daten mit     verhäln.ismässig        geringer    Breite (Stellenzahl)  ausgelegt ist,

   um den Schaltungsaufwand gering zu       halten.    Da der Hersteller beider Arten von Anlagen zwei  verschiedene Rechenwerke für die getrennten     Anlagen     entwickeln und     herstellen        muss,    verliert er den     wirt-          schaftlichen        Vorteil,    der sich     durch    die Serienproduktion  nur eines Typs ergibt.  



  Diesen Nachteil haben auch Rechenanlagen, die so  gross sind, dass bei ihnen die Eingabe-     und    Ausgabeope-      rationen gleichzeitig mit Rechenoperationen und ande  ren Verknüpfungsoperationen gesteuert werden müssen.  Diese getrennten E/A-Steuerwerke können selbst digita  len Allzweck-Rechenanlagen gleichen, so dass sie ein       eigenes    Rechenwerk und     manchmal    sogar einen eigenen       Speicher        enthalten.    Die Funktion und der Aufbau     eines     derartigen E/A-Steuerwerks unterscheidet sich dennoch  von der Allzweck-Rechenanlage; mit der es in     Verbin-          dung    steht.  



       Ein    weiterer Nachteil unterschiedlich aufgebauter  Anlagen besteht darin, dass sie verschieden program  miert werden müssen. Da bei grösseren Anlagen einige  Rechenabläufe fest verdrahtet sind; ist nur ein     Befehl    zu  deren     Durchführung    erforderlich. Bei einer kleineren       Anlage    müssen dagegen     mehrere        dieser    Befehle zur       Durchführung    des gleichen Rechenablaufs eingegeben  werden.

   Diese     Programmierschwierigkeiten    treten noch  stärker     in    Erscheinung, wenn die Anlagen von verschie  denen Herstellern gebaut werden, da verschiedene Her  steller auch     verschiedene    Befehlsformate verwenden, die  sich     in    der Länge und ,auch in der     Grösse    der Felder, in  die sie     aufgeteilt    sind, unterscheiden. Um diese -Unter  schiede     in    den  Maschinensprachen  auszugleichen,  wurde eine Vielzahl     verschiedener    Programmierspra  chen entwickelt, wie Fortran, Cobol und Algol.

   In diesen       Programmiersprachen    abgefasste Programme     körnen    in  verschiedenen     Rechenanlagen    umgesetzt und verwendet  werden, doch müssen diese     Programme    zunächst in die  Maschinensprache der betreffenden Anlage- übersetzt  werden; was durch ein Steuerprogramm, auch Kompiler       genannt,        -durchgeführt    wird.

   Wenn für eine     :bestimmte          Programmiersprache    kein     derartiges        Steuerprogramm          vorgesehen    ist, dann     muss    der Programmierer sein       Programm    in eine Sprache umschreiben, für die die  Anlage einen Kompiler enthält.  



  Es     wurden    daher schon die     verschiedensten    Bauar  ten entwickelt, um     Anpassungsschwierigkeiten    sowohl  beim     Schaltungsaufbau,    auch Hardware genannt" als  auch bei der Programmierung, auch     Software    genannt,  zu     verringern.        Während    bei     bestimmten        Fertigungspro-          grammen    bereits eine     Verringerung    erreicht worden ist,  haben Versuche, die     Anpassungsschwierigkeiten    zwi  schen verschiedenen     Programmiersprachen    zu beseiti  gen,

       in    Wirklichkeit nur zu noch mehr Programmier  sprachen     geführt.        Bestimmte    Bauweisen, die man bis  lang angewandt hat, umfassen die Ausbildung modulgarer  (bausteinartiger) Verarbeitungseinheiten und Speicher  einheiter, die es gestatten, die Fähigkeiten der Anlage  durch     Hinzufügen    weiterer Verarbeitungseinheiten und  die Kapazität der Anlage durch     Hinzufügen    weiterer  Speichereinheiten zu     erweitern.    Bei     anderen    Bauweisen  wird ,

  die Datenflussbreite verschiedener Bauteile eines       Fertigungsprogramms    gleich einem Vielfachen eines  Grundeinheitssegmentes gewählt und das Befehlsformat  für dieses     Fertigungsprogramm    so angepasst,     dass    es       ebenfalls    gleich einem Vielfachen dieses Grundsegments  ist.  



  Um sowohl den Aufbau als auch das Programmieren  von Rechenanlagen     flexibler    zu machen, ist es auch  bekannt, Mikroprogramme oder Mikrobefehle zu ver  wenden. Ursprünglich war ein Mikrobefehl lediglich eine       Gruppe    von Steuerbits innerhalb eines Makrobefehls.  Diese Steuerbits wurden zur     Durchführung    von Korrek  turen während der Ausführung eines Multiplizierbefehls       oder    eines Schiebebefehls und     dergleichen    verwendet.

         Dieses        Verfahren    wurde dann     dahingehend    weiterent  wickelt- dass man einen Makrobefehl die Ausführung    einer     bestimmten    Routine vorschreiben lässt, z. B. die  Addition zweier Operanden, während die Makrobefehle  in Form der Ausführung einer Folge von     Mikrobefehlen          durchgeführt    werden, von denen jeder die Verknüpfungs  glieder (oder     Tore)    bestimmt,     die    in den verschiedenen  Programmablaufzeiten durchgeschaltet werden müssen.

    Dia     mehrere        Makrobefehle    durch eine     endliche        Anzahl     von Mikrobefehlen verwirklicht     werden        können,    hat  man erkannt, dass diese Mikrobefehle in einem getrenn  ten Speicher gespeichert     werden    können, um in einer  bestimmten Phase nach der     Ausführung    verschiedener  Makrobefehle aufgerufen werden zu können.     Man    hat  weiter     erkannt;

      dass verschiedene Folgen von Mikrobe  fehlen so formuliert werden können, dass sie     bestimmte     Operationen ausführen, und     in    irgendeinem Arbeitsspei  cher     getrennt    gespeichert werden können.

   Auf     diese     Weise     kann    eine grosse     Vielfalt    von Mikrobefehlen zur  Aus- führung einer grossen Vielfalt von Rechenabläufen  erzeugt werden, ,und wenn     eine    Rechenanlage so ausge  bildet ist,     dass    sie     bestimmte        Rechenabläufe    ausführt,  brauchen nur     diejenigen    Befehlsfolgen     gespeichert    zu  wenden, die nach der Ausführung spezieller, einzelner  Makrobefehle     zur        Ausführung        aufgerufen    werden<B>sol-</B>  len.  



  Das     Verfahren    -der Anwendung von     Mikrobefehlen     oder Mikroprogrammen     ging        dann    über in die Verwen  dung von Unterbefehlsgruppen, die für den Program  mierer nicht in Erscheinung treten, wodurch das Erstel  len -bestimmter Programme durch die     Verringerung        der-          Anzahl    der einzelnen Schritte, die vom Programmierer  programmiert werden müssen, vereinfacht wird.

   Das  Verfahren der Mikroprogrammierung gestattet die     Her-          tellung    weniger     kostspieliger    Rechenanlagen, die den  noch eine     Vielzahl    verschiedener Routinen durchführen  können,     ahne        dass    einzelne Funktionen verdrahtet zu  werden brauchen.  



  Obwohl die Anwendung von Mikrobefehlsfolgen  oder Unterbefehlsfolgen die- Arbeit des Programmierers  erheblich vereinfacht und dem Rechenanlagenhersteller  mehr     Möglichkeiten    zur Lösung -bestimmter baulicher  Probleme einräumt, ist     bislang    das Problem der Schal  tungskompatibilität zwischen verschiedenen Baugrup  pensystemen eines Fertigungsprogramms und das Pro  blem der     Programmkompatibilität        zwischen    verschiede  nen Programmiersprachen und zwischen den Maschi  nensprachen der verschiedenen Systeme noch nicht  gelöst worden.  



  Der Erfindung liegt daher die Aufgabe zugrunde;  eine Datenverarbeitungseinrichtung zu schaffen, deren  funktionelle Fähigkeiten     während    des Betriebs der     Ein-          richtung    veränderbar sind. Im einzelnen soll sie dabei  während des Betriebs derart veränderbar sein, dass sie in  verschiedenen Programmsprachen aufgestellte Program  me     durchführt.    Gleichzeitig soll sie während des Betriebs  derart     veränderbar    sein,

       -dass    sie     Rechenbefehlsfolgen     oder     Steuerbefehlsfolgen    für     Eingabe/Ausgabe-Daten-          Übertragungen        ausführt.    Dabei soll sie vom     Rechenbe-          trieb        auf        den     umschalt  bar sein, ohne dass für jede     Betriebsart        eine    eigene  Schaltungsanordnung erforderlich ist.  



  Mehrere dieser     Datenverarbeitungseinrichtungen     sollen ferner zu einer grösseren     Rechenanordnung        zu-          sammengesehaltet    werden können, um     verschiedene     Rechen- und Datenverarbeitungsoperationen: durchzu  führen, ohne dass irgendeine     Einrichtung    dieser     Anord-          nung    in irgendeiner speziellen Weise angepasst zu  werden braucht.

   Die     Datenverarbeitungseinrichtung    soll      gleichzeitig eine erweiterbare Anzahl funktioneller     Ver-          knüpfungseinheiten    zur Durchführung verschiedener lo  gischer Verknüpfungsoperationen, gesteuert durch Un  terbefehlsgruppen, aufweisen. Dabei gehört es zur Auf  gabe der     Erfindung,    die Datenverarbeitungseinrichtung  so     auszubilden,        dass    mehrere dieser     Einheiten    zusam  mengeschaltet verschiedene Rechenkapazitäten und     -          fähigkeiten    aufweisen.  



  Die     erfindungsgemässe        Datenverarbeitungseinrich-          tung    ist dadurch 'gekennzeichnet,     dass    sie eine     mit    dem  ersten     Speicher    verbundene und zum Empfang von  Rechenablaufbefehlen geeignete, erste Vorrichtung und  Eintreffen eines Rechenablaufbefehles ansprechende,  eine mit dieser     ersten        Vorrichtung    verbundene und beim  zweite Vorrichtung zur Adressierung des zweiten     Spei-          ohers    und     zum        Empfang    von Operationsbefehlen auf  weist.  



  Das Verfahren zum     Betrieb    der     Datenverarbeitungs-          einrichtung    ist dadurch     gekennzeichnet,    dass eine erste       Gruppe    von Signalen, die einen ersten     Operationsbefehl          darstellt,    im     zweiten    Speicher gespeichert wird, und die,  wenn sie vom Befehlsdecoder -aufgerufen     wird,    die  Ausführung einer Operation durch die Datenverarbei  tungseinrichtung bewirkt, und dass eine zweite Gruppe  von     Signalen,

      die einen     zweiten        Operationsbefehl        dar-          stellt,    im     zweiten    Speicher gespeichert wird,     und    die,  wenn .sie vom Befehlsdecoder     aufgerufen        wird,    die  Verzögerung der     Operation    um mindestens ein     Taktin-          tervall        zur    Folge hat.  



  Die     Erfindung    und ihre Weiterbildungen werden im  folgenden anhand von Zeichnungen     beispielsweise    näher       beschrieben:     Fig. 1A stellt eine Datenverarbeitunseinrichtung  dar.  



  Fig. 1B stellt eine Anordnung von     Datenverarbei-          tungseinrichtungen    dar.  



  Fig. 2 ist eine schematische Darstellung des Steuer  werks     und    des     Rechenwerks.     



  Fig. 3 stellt das Rechenwerk ausführlicher dar.  



  Fig. 4 stellt eine andere Ausführung des Rechen  werks dar.  



  Die Fig. 5-11 stellen verschiedene Verknüpfungs  schaltungen der     Datenverarbeitungseinrichtung    dar.  



  Fig. 12 ist eine schematische Darstellung der Ar  beitsspeicher-Koppelelektronik.  Die Fig. 13-16 stellen Formate verschiedener  Befehle dar, die in der Einrichtung     verwendet    werden.  Fig. 17 ist eine schematische Darstellung des     Deko-          dierers    für Subbefehle der zweiten Ebene.  



  Fig. 18 ist eine schematische Darstellung des     Deko-          dierers    für Subbefehle der ersten Ebene.  



  Fig. 19 ist eine Tabelle der N-Steuersignale der  Steuerfelder der Phase 2  &  3 des N-Befehls.  



  Fig. 20 ist eine Tabelle der N-Steuersignale des  Steuerfelds der Phase 3 des N-Befehls.    Die Fig. 21-23 sind Zeitdiagramme, die die Über  lappung der     Ausführung    von Befehlen darstellen,     und     die Fig. 24 und 25 stellen N -Befehlsfolgen -dar, die  in der     Einrichtung    nach der Erfindung verwendet  werden     können.     



  Ausführliche Beschreibung der Einrichtung  <I>Definitionen</I>    Einige Begriffen, die in der folgenden Beschreibung       häufiger    vorkommen, werden wie folgt definiert:       Programmsprache    ist eine     Ausdrucksform,    die in  binäre     Signale    umgesetzt, und die von einem Program  mierer oder einem Benutzer eines Rechners ohne Kennt  nis des     Schaltungsaufbaus    einer speziellen Verarbei  tungsanlage     verwendet    werden kann.  



  S-Befehl ist ein Befehl, der eine Information enthält,  die einen Rechenablauf oder einen Prozess vorschreibt,  der mit einer Gruppe von Daten durchgeführt werden  soll. Ein S -Befehl ist mit     einem    an sich bekannten  Makrobefehl oder Befahl in Maschinensprache ver  gleichbar.  



  M-Befehl ist ein Befehl, der eine Information ent  hält, die     eine    Operation     vorschreibt,    die in einer Verar  beitungsanlage ausgeführt werden soll, bei der eine oder  mehrere dieser     Operationen    zur     Durchführung        eines     Prozesses erforderlich sind, der vom S-Befehl vorge  schrieben wird. Ein M-Befehl ist mit einem Mikrobefehl       vergleichbar,    wie er bislang verwendet     wird.     



  N-Befehl ist ein Befehl, der eine Information enthält,       die        Steuersignale    vorschreibt, die in der     Verarbeitungs-          anlage        verwendet    werden sollen, um die     Ausführung     einenes -M-Befehls auszulösen. Zur Durchführung eines  M -Befehls können ein     oder    mehrere N -Befehle erforder  lich sein.  



  Die bislang angewandte     Mikroprogrammierung    hat       zwei        wesentliche    Vorteile. Zum einen braucht der  Programmierer .nicht die einzelnen Schritt vorzuschrei  ben, die zur Durchführung einer bestimmten Operation       erforderlich    sind;

   diese Schritte werden durch die Folge  von     Mikrobefehlen    vorgeschrieben, die der Makrobefehl       aufruft.        Zum    anderen braucht in der Rechenanlage nicht  für jede spezielle Funktion, die die Rechenanlage ausfüh  ren soll, eine spezielle Schaltungsanordnung vorgesehen  zu sein.     Ferner        kann    die     Anlage    eins grössere     Anzahl     von Rechenoperationen .bei einem bestimmten Befehls  format     .ausführen,    da der Operationsteil des Befehls       nicht    mehr die speziellen Maschinenoperationen     vorzu-          schreiben    braucht.

    



  Nach     der        Erfindung    werden drei     getrennte    Anlagen  zu einer     Einrichtung        zusammengefasst:        Nämlich    die     S-          Anlage,    die M-Anlage und die N-Andlage. Jede Anlage  enthält ihren eigenen     Arbeitsspeicher    und ihren eigenen  Befehlsdekidierer. Die Liste der N-Befehle liegt norma  lerweise fest, kann jedoch veränderbar sein.

   Die Liste  der     M-Befehle    .lässt sich während des     Normalbetriebs     der Anlage dynamisch     ändern.    Jede einzelne Gruppe von       M-Befehlen    kann einer bestimmten Gruppe von     S-          Befehlen    eine     bestinnnte    Bedeutung zuschreiben. Jeder       S-Befehl    kann einen vollständigen     Algorithmus    vor  schreiben, dessen Schritte durch eine Folge von     M-          Befehlen    festgelegt werden.

   Ein     S-Befehl        entspricht     einem     Makrobefehl    oder     Maschinensprachebefehl    an  sich bekannter Art. Nach der Erfindung ist jedoch keine      bestimmte Gruppe von S-Befehlen erforderlich, es -kön  nen     vielmehr    mehrere verschiedene -Gruppen von     S-          Befehlen,        einschliesslich    solcher Gruppen von S -Befehlen  verwendet werden, die in verschiedenen Programmspra  chen aufgezeichnet sind.

   Ferner ist die Gruppe von       Befehlsteilen,    die     die        Eingabe        und    Ausgabe von Daten  steuert, nach der     Erfindung    durch eine     bestimmte     Gruppe von S-Befehlen verwirklicht. Jede Gruppe von     S-          Befehlen    wird bei der Anlage nach der     Erfindung    durch  jeweils eine getrennte Gruppe von M-Befehlen interpre  tiert, von denen jeder wiederum durch die Liste von     -N-          Befehlen    verwirklicht wird.

     Die Art und     Weise,    wie die Erfindung     verwirklicht          wird,        wird        anhand    der     Zeichnungen    näher beschrieben.  Fig. 1A stellt den- grundsätzlichen Aufbau einer Daten  verarbeitungseinrichtung nach der     Erfindung    dar. Die       Datenverarbeitungseinrichtung.        enthält    zwei Hauptteile,  nämlich* ein Rechenwerk ALU und ein Steuerwerk. Der  Arbeitsspeicher 20 ist in drei Teile unterteilt , nämlich in  einen Hauptspeicher 20A, einen Mikroprogramm-Ar  beitsspeicher 20B und einen N-Arbeitsspeicher 20C.

   Bei  dem Hauptspeicher 20A handelt     es    sich um     einen          normalen        destruktiv    lesbaren Speicher, wie er     normaler-          Waise    in     Datenverarbeitungsanlagen    verwendet     wird.    Bei  dem MP-Arbeitsspeicher 20B handelt es sich normaler  weise um einen nicht destruktiv lesbaren Speicher.

   Bei  dem N-Arbeitsspeicher 20C handelt es sich vorzugsweise       um        einen        nicht    destruktiv .lesbaren     Speicher,    doch     kann          es    sich auch     um    einen     Lesespeicher    auch Festwertspei  cher genannt handeln. Bei allen drei Arbeitspeichern       kann:    es-     sich    um     magnetische        Dünnschicht    oder Fest  körperspeicher handeln. Als N -Arbeitsspeicher 20C  wird jedoch ein Speicher     gewählt,    der den kürzesten  Speicherzyklus aufweist.

   Die Anlage nach Fig. 1A wird  durch mehrere Eingabe/Ausgabe-Geräte 9 vervollstän  digt,     die    über     eine    durch     die        Datenverarbeitungseinrich-          tung    10     gesteuerte    Schalteinheit 8 mit dem Hauptar  beitsspeicher 20A verbunden .sind.  



  Bevor die     Datenverarbeitungseinrichtung    10 aus  führlicher bechrieben wird, wird ein spezieller Anwen  dungsfall     einer        derartigen        Datenverarbeitungseinrich-          tung    anhand von Fig. 1B beschrieben, um ihre Vielsei  tigkeit zu veranschaulichen.

   Nach Fig. 1B sind mehrere       Datenverarbeitungseinrichtungen   <B>11....</B> 14 zu einer  Anordnung oder     Matrix    miteinander verbunden, und  zwar über eine Schaltersynchronisier- oder Schaltervers  riegellungsvorrichtung 15, die auch an Arbeitsspeicher  einheiten 21, 22 und 3     und    über     Schalteinheiten    8 an  mehrere Eingabe/Ausgabe-Geräte 9 -angeschlossen ist.       Die        Datenverarbeitungseinrichtungen    Il, . . . , 14     sind     ebenso ausgebildet wie jene nach Fig. 1A und können  nach der     Erfindung    auf verschiedene Betriebsarten       eingestellt    werden.

   Die     Einrichtungen    11 und 12 können  also; wie es in der Tabelle nach Fig. 1B dargestellt ist; so  eingestellt werden,     dass    sie während eines     bestimmten          Arbeitstaktes    die     Ein-    und Ausgäbe     steuern,        während     die     Einrichtungen    13 .und 14 im Verarbeitungsbetrieb       arbeiten.    In     einem    späteren Arbeitstakt, wenn keine  Eingabe/Ausgalbe-Operationen erforderlich sind, werden  alle vier Einrichtungen auf     Verarbeitungsbetrieb    einge  stellt.

   In einem noch späteren     Arbeitstakt,    wenn weitere  Eingabe/Ausgabe-Operationen erforderlich sind, wird       eine    der Einrichtungen, z-     B.    die Einrichtung 13;     --auf     Eingabe/Ausgabe-Steuerbetrieb eingestellt. Die in Fig.  1B     dargestellte    Tabelle dient lediglich zur Erläuterung  der Tatsache,     dass        irgendeine        Datenverarbeitungsein-          richtung    oder alle zusammen in Abhängigkeit vom    Anwendungsfall entweder auf Eingabe/Ausgabe-Steuer  betrieb oder auf Verarbeitungsbetrieb einstellbar ist bzw.       sind.     



       Rechen-   <I>und Steuerregister</I>  Fig. 2 stellt die Hauptregister und Hauptdatenüber  tragungskanäle des Steuerwerks und des Rechenwerks       ALU    der     programmierbaren    Einheit dar. Das Rechen  werk ALU enthält eine     Verknüpfungseinheit    30;     die     unter anderem als Addierer wirkt, sowie einen Walzen  schalter 31, A -Register 32; B-Register 33 und =NICHT  Tore     =34.     



  Das B-Register 33 ist das Hauptverbindungsglied       zwischen    der     Datenverarbeitungseinrichtung    und dem  Hauptanbetsspeicher. Das Register dient auch als se  kundärer Eingang des Addierers 30 und dient bestimm  ten sekundären     Funktionen,    die bei den Rechenopera  tionen auftreten. Die     NICHT-Tore    34 dienen zur Bil  dung des wahren Inhalts des B-Registers 33 oder des  Einer-Komplements des     Inhalts    des Registers 33.  



  Die A-Register 32 sind drei funktionell gleiche  Register. Jedes der A-Register dient als Datenzwischen  speicher in einem Rechenwerk ALU und als des .als  Haupteingang Addierers 30. Alle A-Register werden  durch die Ausgangssignale der     Walzenschalter    31 gela  den.  



  Das     Steuerwerk'    der     Datenverarbeitungseinrichtung     enthält drei Hauptteile:     Nämlich        einen    Teil, - der als  Verbindungsglied     zwischen    dem Rechenwerk ALU und  dem     Arbeitsspeicher    und Peripheriegeräten dient,     einen     Teil, der die Dekodierung der M-Befehle bewirkt, und  einen Teil, der die N Befehlssteuersignale empfängt und  weiterleitet.  



  Die Ausgangssignale des Rechenwerks ALU sind die  Ausgangssignale -der     Walzenschalter    31 und können       Verbindungstoren    8, Adressenregistern 45 und 46,  einem Arbeitsspeicherinformationsregister 47 und einem  Sprung-Mikrobefehlszählregister 41 zugeführt werden.  Die Ausgangssignale der Walzenschalter 31     können     auch einem Verschiebungsbetragregister 44 zugeführt  wenden:     -Über    die Verbindungstore 48 werden Adressen  und andere Informationen entweder in-ein Arbeitsspei  cheradressenregister 49 oder einen Zähler 50 übertra  gen.

   Das Adressenregister 45 enthält die Basisadresse  eines 256-Wortblocks des Hauptarbeitsspeichers: Der  Inhalt dieses Registers wird mit dem Inhalt des     Arbeits-          speicheradressenregisters    49 zur Bildung einer absoluten   Arbeitsspeicheradresse verknüpft. An das Adressenregi  ster 45- ist ein zweites Adressenregister 46 angeschlos  sen, das die Basisadresse eines 246-Wortblocks des  Hauptarbeitsspeichers oder die höchsten Stellen einer Ge  räteadresse enthalten kann.

   Auch der Inhalt des zwei  ten     Adressenregisters    46     wird        mit    dem Inhalt des:     Ar-          beitsspeicheradressenregisters    49 zur     Bildung    einer abso  luten Arbeibsspeicheradresse oder einer Geräteadresse  verknüpft. Das Arbesitsspeicherinformationsregister 47  dient als Zwischenspeicher für Informationen, die in den  Hauptarbeitsspeicher oder ein Gerät übertragen werden  sollen. Dieses Register wird durch die Ausgangssignale  der     Walzenschalter   <B>31</B>     geladen.     



  Die Mikrobefehle werden     zunächst    einem     Mikrobe-          fehlsdekoderer    40 zugeführt, um den     N-Arbeitsspeicher     zu :adressieren,     und    dann in ein Variablenregister 51,  das     Verschiebungsbetragregster    44 und das     Sprüng-          Mikroprogrammzählregister    41 übertragen.

   Das     Variab-          lenregister   <B>51</B>     wird        als    Zwischenspeicher für beliebige           Variable    (und deren Komplement), die in den     M-          Befehlen    enthalten sind und dem Addierer 30, dem  Zählregister 50 oder dem Arbeitsspeicheradressenregi  ster 49 zugeführt werden sollen, verwendet. Das Ver  schiebungsbetragregister 44 speichert entweder die Ver  schiebungsbetragzahl oder dessen Wortlängenkomple  ment, die bzw. das zur Steuerung der Anzahl von Bits       verwendet    werden soll, um die Daten in den     Walzen-          schaltern    31 verschoben werden.

   Das     Register    .41  enthält die Sprung- oder Rückkehradresse für Pro  grammsprünge und Unterprogrammrückläufe in M  Programmen. Die in diesem Register gespeicherte Ad  resse ist gewöhnlich um 1 kleiner     als    diejenige     Stelle,    an  die zurückgekehrt werden soll. Dieses Register kann aus  dem Mikroprogrammzählregister 42, durch Walzen  schalterausgangssignale oder vom M-Befehlsdekodierer  40 geladen werden.

   An dieses Register ist das Mikropro  grammzählregister 42 angeschlossen, bei dem es sich um  den Befehlsadressenzähler für den M-Arbeitsspeicher       handelt.    Es     enthält        gewöhnlich    die laufende     Mikrobe-          fehJsadresse.     



  Die Dekodierung der N-Befehle geschieht durch ein  Prüfschaltwerk 53 und das Operationsbefehlsregister 52.  Die Wirkungsweise dieser Schaltungen wird später noch       ausführlicher    beschrieben. An dieser Stelle sei nur soviel  erwähnt, dass das Prüfschaltwerk 53 Informationen von       einem        Bedingungsregister    54 erhält, dessen Inhalt eine  Gruppe von Prüfbits ist, die als Fehlerindikatoren,  Unterbrechungsbefehle, örtliche und globale Boolesche  Schaltvariable sowie Asynchronitäts- oder     Entriege-          lungsindikatoren    wirken. Diese verschiedenen Bedin  gungsregisterbits werden noch ausführlicher beschrie  ben.  



  Durch M-Befehle gesteuerte Operationen  Bevor der Aufbau der M- und N-Befehle beschrie  ben     wind,    werden zunächst die Hauptoperationen, die in  der     programmierbaren    Einheit ausgeführt werden be  schrieben. Diese Operationen werden durch M-Befehle  ausgelöst.  



  <I>Arbeitsspeicher- und Geräteoperationen</I>    Die Arbeitsspeicher- und Geräteoperationen dienen  zur     Übertragung    von: Daten zwischen der     Datenverarbei-          tungseinrichtung    und dem     Arbeitsspeicher    oder irgendei  nem Peripheriegerät. Die Datenverarbeitungseinrichtung  ist mit den Arbeitsspeichereinheiten und Geräten über  eine Schaltersynchronisier- oder     Schalterverriegelungs-          vorrichtung    durch bidirektionale Mehrfachleitungen ver  bunden.

   Die Arbeitsspeicher- und Geräteadressen wer  den aus :dem Arbeitsspeicheradressenregister 49 zur  Schalterverriegelungsvorrichtung und nach Herstellung  der Verindung zum ausgewählten Arbeitsspeicher oder       Gerät    weitergeleitet. Aus einem Arbeitsspeicher oder  Gerät empfangene Daten werden 'durch     Verbinden    des  B-Registers mit der äusseren Datenmehrfachleitung ins  B-Register übertragen. Die in den Arbeitsspeicher oder  das Gerät     zu    übertragenden Daten werden über das  Arbeitsspeicherinformationsregister 47 geleitet. Jede Ar  beitsspeicher- oder Geräteoperation wird im ersten Takt  des M-Befehls ausgelöst und parallel oder gleichzeitig  mit der Ausführung eines nachfolgenden M-Befehls  fortgesetzt.

   Die Arbeitsspeicher- und     Geräteoperationen     können also vollständig durch logische     Verknüpfungs-          operationen    überlappt werden. Die Arbeitsspeicher-,    Geräte- und Einstelloperationen können in jedem M  Befehl als bedingte oder     unbedingte    Gruppe vorgeschrie  ben sein. Die speziellen Arbeitsspeicher- und Geräteope  rationen werden nachstehend ausfühlicher beschrie  ben.  



  <I>Verknüpfungsoperationen</I>    Jeder M-Befehl kann genau eine logische Verknüp  fungsoperation vorschreiben. Diese Operationen umfas  sen binäre Boolesche Verknüpfungsoperationen, auch  Schaltfunktionen genannt, zwischen den Eingangssigna  len A und B und zwischen den Eingangssignalen B und  Z des Rechenwerks ALU und die     meisten    Verknüp  fungsoperationen zwischen Z und A. Es kommen auch  einige ternäre Boolesche Verknüpfungsoperationen zwi  schen allen     drei    Eingangssignalen und echte Additions  operationen zwischen jeweils zwei Eingangssignalen vor.  Die Schaltfunktionen der verchiedenen Booleschen Ver  knüpfungsoperationen sind in Fig. 19 als Tabelle darge  stellt.  



  :Bei den echten     Additionsoperationen    erfolgt eine  Zweierkomplementaddition der Eingangssignale A und  B des Rechenwerks ALU. Die gleichen     Verknüpfungen     können zwischen den Eingangssignalen B und Z und  zwischen den Eingangssignalen Z und A     durchgeführt     werden, wenn dies erforderlich ist. Das     Endübertragaus-          gangssignal    der höchsten Stelle des Rechenwerks ALU       wird    zur     Überprüfung    des nächsten M -Befehls verwen  det, und im Überlaufbit des Bedingungsregisters für eine  spätere Prüfung gespeichert.  



  Das Rechenwerk ALU besteht aus mehreren logi  schen Grundeinheiten entsprechend der Datenkanalbrei  te, die für eine bestimmte Datenverarbeitungseinrichtung  gewählt ist. Die Anzahl der Bits bei einer     Grundeinheit     ist gleich 8 gewählt. Die     Variationsmöglichkeiten        frei          Additionsoperationen    hängen von der Wahl der     jeder        8-          Bit-Gruppe    zugeführten Überträge     bzw.    davon ab, ob  der Übertragausgang einer vorhergehenden Stufe mit  dem Übertrageingang einer folgenden Stufe verbunden  ist.

   Bei jeder 8-Bit-Gruppe kann -die logische Einheit so  verdrahtet sein, dass .das Übertrageingangssignal entwe  der gleich dem Übertragausgangssignal der unmittelbar  vorhergehenden (rechts benachbarten) Gruppe oder  konstant ist. Diese Wahl lässt sich nicht durch das  Programm ändern. Der Übertrageingang bzw. das     über-          trageingangssignal    kann jedoch     durch    das     Programm     entweder freigegeben bzw. durchgeschaltet oder     gesperrt     werden.

   Bei herkömmlichen Anordnungen erhalten     olle,     bis auf die niedrigste 8-Bit-Gruppe, ein Übertragsignal  von der vorhergehenden     Gruppe.    Der     niedrigsten:    (am  weitesten rechts liegenden) Gruppe wird ständig eine  Eins als     Übertrag    zugeführt. Für     :alle    Gruppen,     mit     Ausnahme für die Gruppe der niedrigsten Stelle, werden  alle Übertragdurchschaltsignale zusammen gebildet,  während der der niedrigsten Stelle zugeführte     1-Über-          trag    getrennt gebildet wird.

      Walzenschalteroperation  Es gibt vier Walzenschalteroperationen, die vorge  schrieben werden können, und eine     muss        vorgeschrieben          werden.        Diese    Operationen sind:     Verschiebe    nicht,  verschiebe nach rechts zirkular den Betrag im     Verschie-          bungsbetragregister    44, verschiebe nach rechts hinaus  den Betrag im     Verschiebungsbetragregister    und ver-      schiebe nach links hinaus das Zweierkomplement des  Betrags im Verschiebungsbetragregister 44.  



  Eine andere Operationsart; die durch die M-Befehle       gesteuert    wird, sind die     Setz-Operationen,        die:        zur          Unterbrechung        anderer        Programmeinheiten    bei einer       Zusammenschaltung    mehrerer dieser Einheiten     zu    einer  Anordnung,     zum    Aussperren und Entriegeln kritischer  Teile einer 'derartigen     Anordnung    und zum     Einstellen     bzw. Setzen örtlicher Bedingungsbits verwendet werden.

    Ausserdem enthalten die M-Befehle verschiedene Arten  von     Informationen,    die     in    Verbindung     mit    dem Format  des M -Befehls und anderer Befehle ausführlicher be  schrieben     wird.     



  <I>Befehlsformat und Bedingungsregister</I>  Die     programmierbare    Einheit     enthält    vier     Steuerin-          formationsquellen.    Diese umfassen die drei Befehlsebe  nen oder Befehlsstufen, nämlich den S-Befehl, den M   Befehl und den N -Befehl sowie eine     Gruppe    von       Bedingungsbits,        die    im     Bedingungsregister    54 gespei  chert sind, wie es in Fig. 13 dargestellt ist. Diese  Informationsquellen werden nachstehend     beschrie-          ben.     



  S-Befehlsformat    Anhand -von Fig. 13 wird ein S-Befehlsformat       beschrieben.    Es sei darauf hingewiesen, dass     nicht    nur  ein     bestimmtes    S -Befehlsformat verwendet werden     kann.     Nach der Erfindung ist es     vielmehr    möglich; verschiede  ne     Befehlsformate    zu verwenden.. Es     muss    -     lediglich          dafür    gesorgt sein, dass -bestimmte Folgen von     M-          B:efehlen    im M-Arbeitsspeicher vorhanden sind; die jede  spezielle Gruppe von S-Befehlen dekodiert oder inter  pretiert.

   Es ist ferner möglich, mehrere dieser     M-          Befehlsfolgen    im M-Arbeitsspeicher zu speichern.  



  Die in den Fig. 13A, 13B und 13C dargestellten  Befehlsformate dienen zur Steuerung von Eingabe/Aus  gabe-Datenübertragungen, doch .können diese     Befehls-          formate    auch     zum    Aufrufen von Rechenabläufen ver  wendet werden, die in der Datenverarbeitungseinrich  tung ausgeführt     werden    sollen.  



  Der Eingabe/Ausgabe-Deskriptor nach Fig. 13 ent  hält 96 Bits. Er ist in drei Teile unterteilt. -Der  Operationsteil nach Fig. 13A ist in zwei Felder unter  teilt. Das Feld I schreibt die .auszuführende Operation  vor, während das Feld II zum Eintragen der Adresse des  Peripheriegeräts oder der Arbeitsspeichereinheit, in die  oder aus der Daten übertragen werden sollen,     verwendet     werden kann. Das Feld III nach Fig. 13B ist ein Zeichen  aus 8 Bits, das als Vergleichzeichen zum Beenden einer       Datenübertragung        verwendet        werden    kann.

   Das Feld     IV     stellt einen Zähler dar; der die     Anzahl    von Datengrup  pen vorschreibt, die     übertragen        werden    sollen, und  dessen Zählerstand bei jeder Datenübertragung um eins  verringert und auf das Auftreten des Zählerstands null       überprüft        wird.    Das Feld V stellt eine Gruppe von  Steuerbits dar, z. B.     Kennzeichen    oder  Fahnen , die       zur        Modifizierung    der     Datenübertragung    oder zum  Vorschreiben verschiedener Bedingungen     verwendet     werden können.

   Das Feld VI ist ein Befehlszähler, der  die absolut--     Adresse    vorschreibt, unter der die :nächste  Deskriptoroperatüon aufzusuchen ist. Das Feld VII des  Steuerteils II nach Fig. 13C wird zum Vorschreiben der  Arbeitsspeicheradresse verwendet, unter der Daten ein  gegeben oder ausgelesen werden - sollen. Das Feld VII    kann     in        zwei    Unterfelder :unterteilt sein, um     -beispiels-          weise    eine     Basisadresse    und eine     relative    Adressenstelle  vorzuschreiben.

   Das Bit 64 des Steuerteils II wird zum  Anzeigen der Tatsache     verwendet,    dass der Kanal,  dessen     Betrieb        gerade    vom Deskriptor überwacht wird  belegt ist, während das Bit 65 dazu verwendet wird,     zu     verhindern, dass der gerade verarbeitete Deskriptor eine  neue E/A-Folge auf einem anderen Kanal auslöst, und  das Bit 95 ist ein Paritätsbit.  



  Die Befehlsformate nach Fig. 13 können Informatio  nen enthalten, die- für     eine    bestimmte     Kanaloperation     erforderlich sind, zu der die Adressierung einer neuen  Gruppe von Deskriptor-Befehlen gehört, die eine neue  Operation in diesem Kanal auslösen, wenn die     augen-          blickliche        -Operation    ausgeführt ist.     Das    Befehlsformat  nach Fig. 13 wurde zwar für einen E/A-Deskriptor       beschrieben,    kann jedoch auch für Rechenabläufe ver  wendet werden.

   In jedem Falle wird dieses     Deskriptor-          format    durch     die    programmierbare     Einheit    dadurch  realisiert, dass das B-Register 33 der Rechenverknüp  fungseinheit nach Fig. 2 das Feld I aufnimmt. Dieses       Feld        wird    dann über den Addieret 30     und    die Walzen  schalter 31 ins Sprung-Mikroprogrammzählregister  (SMPZR) 41 übertragen; um den M-Arbeitsspeicher zu       adressieren.    Unter dieser Adresse wird eine -neue Adres  se ausgelesen und dem Mikrobefehlsdekodierer 40 nach  Fig. 2 zugeführt.

   Diese Adresse schreibt die     Anfangs-          spoicherzelle    der Folge von M-Befehlen vor, die zur  Durchführung des auf diese Weise dekodierten S-Befehls  erforderlich ist.    M-Befehlsformat       Nachdem    beschrieben wurde, wie ein S -Befehl zur  Gewinnung einer Folge von M-Befehlen, die den     S-          Befehlausführen,        dekodiert    wird,     werden    nachstehend  die M-Befehlsformate anhand von Fig. 14 beschrie  ben.  



  Jeder M-Befehl benötigt einen     16-Bit-Wort-Spei-          cherplatz    in dem Mikroprogramm-Arbeitsspeicher;  auch M-Arbeitsspeicher genannt. Es gibt zwei Arten von  M -Befehlen, von denen jede durch die N-Befehle ver  schieden dekodiert wird. Die erste Art von M-Befehlen  schreibt     mindestens    eine von sechs Funktionen vor: Eine  Bedingung, eine Verknüpfungseinheitsoperation, eine       Arbeitsspeicher-    oder Geräteoperation, einen     wahren-          Nachfolger,    einen     falschen    Nachfolger und Variable in  dem Befehl. Die Bedingung und Nachfolger müssen in  jedem M -Befehl vorhanden sein.

   Die anderen Funktio  nen sind jedoch frei wählbar. doch können alle frei       wählbaren    Angaben in demselben Befehl     enthalten    sein.  Eine zweite Art von M-Befehl enthält nur Befehlsvaria  ble.  



  Der Aufbau der ersten Art von M-Befehlen ist in  Fig. 14a dargestellt. In diesem Befehl ist das nullte Bit  eine 1,     während    die übrigen Bits die     Adresse        eines    N  Arbeitsspeichers darstellen, unter der der N -Befehl  .aufgesucht werden kann, der -die Operations- und       Bedingungssteuerbits    enthält, die durch die erste Art von       M-Befehl    vorgeschrieben werden.  



  Der Aufbau der     zweiten        Art    von     M-Befehlen    ist in  den     Fig.    14b und     14c    dargestellt. Nach     Fig.    14b     -stellen     die ersten drei Bits Nullen dar, wodurch sie anzeigen,  dass die übrigen Bits 3 bis 15 eine     M-Arbeitsspeicherad-          resse    darstellen, die ins     Register    41 nach     Fg.    2       übertragen    werden muss.

   Wenn mindestens eines der  Bits 1 und 2 ,eine 1 und das nullte Bit eine 0 ist, dann      hat der Aufbau das in Fig. 14c dargestellte Format, bei  dem die Bits 3-7 ein Schiebebetrag-register-Inhaltsfeld       darstellen,        wenn    das Bit 3 eine 1 ist, und     die    Bits 9-15  ein     Variablenfeld    darstellen, wenn das Bit 2 eine 1 ist.

    Das Bit 8 kann sich entweder im     Schiebebetragregister-          Inhaltsfeld    oder dem Variablenfeld befinden, wenn       beide    nicht     spezifiziert    (vorgeschrieben)     sind.    Wenn  jedoch     die        Bits    2 und 3 beide eine 1     darstellen,    dann  wird das Bit 8 als Teil des Schiebebetrag-Register  Inhaltsfeldes betrachtet.  



  Es gibt 16     prüfbare    Bedingungen, von denen     genau     eine bei jedem M-Befehl geprüft werden muss. Wenn die       Prüfung    positiv ausfällt, wird der     ,gesamte    Befehl     ausge-          führt    und der     wahre        Nachfolger    als     nächste        Befehlsad-          resse        gewählt.    Wenn die Prüfung negativ     ausfällt,

      wer  den     nur    die     unbedingten        Teile        des    Befehls     ausgeführt     und der falsche Nachfolger (d.h. die Negation des       Nachfolgers)        als    nächste Befehlsadresse     gewählt.    Die 16       Bedingungen,    die     überprüft    werden     können,    umfassen  die 12 Bedingungsregisterbits und vier andere Bedingun  gen, bei denen es sich um Überlauf,

       exklusives    ODER  und um die     Ausgangssignale    der     niedrigsten    und höch  sten Binärstelle des Addierers handelt, die sich bei dem  vorhergehenden M-Befehl ergeben.  



  Die durch die M-Befehle vorgeschriebenen logischen       Verknüpfungsoperationen    umfassen     die        Auswahl    der  Addierer-Eingangssignale, die Addiereroperation, die  Walzenschalteroperation und die Festlegung des Bestim  mungsortes der Ausgangssignale des Addierers und der  Walzenschalter, wobei es sich bei diesem     Bestimmmungs-          ort    entweder um das Rechenwerk ALU oder das  Steuerwerk     handeln        kann.    Die     Steuerungen        für    die  Variablen-, Zähler- und Schiebebetragregister und die  Steuerungen zur     Änderung    von     Befehlen,

      die bereits       verarbeitet    werden, sind ebenfalls in     dieser        Gruppe          enthalten.     



  Die     speziellen    Rechen- und     Verknüpfungsoperatio-          nen    sowie Arbeitsspeicher-, Geräte- und Einstellopera  tionen     wurden    bereits in dem Abschnitt  Durch     M-          Befehle    gesteuerte     Operationen     erwähnt. Diese allge  meinen Operationen sollen hier nicht wiederholt werden,  doch müssen noch bestimmte spezielle     Funktionen    be  schrieben werden, die ebenfalls durch die M-Befehle       gesteuert    werden.

   Zu diesen gehört nicht nur das  Weiterleiten von Datenteilen in das A- und     das        B-          Register    des Rechenwerks ALU,     sondern    auch in     die     Register 41, 45, 47, 49 und 50, wie es in Fig. 3  dargestellt ist. Die M-Befehle steuern auch die Übertra  gung des     Inhalts    des     Variablenregisters    51     in    das  Zählerregister 50 und die Weiterschaltung des Zählerre  gisters 51.

   Wenn der Zähler 50 beim Weiterschelten  überläuft und     auf    null     zurückgesetzt        wird,    dann     wird        das     Zählernüberlaufbit des Bedingungsregisters 54 gesetzt.  Diese Übertragungssteuerfunktionen werden durch Ad  ressieren entsprechender N -Befehle     durchgeführt,    die  die erforderlichen Steuersignale enthalten.  



  Bei jedem M-Befehl muss der Inhalt des Schiebebe  tragregisters 44 wie folgt gewählt werden: Entweder  gleich dem Inhalt, den es bei dem vorhergehenden  Befehl hatte, oder gleich dem Wortlängenkomplement       des        Inhalts,    den es bei dem vorhergehenden Befehl  hatte,     oder        gleich    dem Wert der sechs binären Ausgangs  signale der     niedrigsten    Stelle der     Walzenschalter    31 bei  dem vorhergehenden Befehl odergleich einem Variab-    lenwert aus dem M -Befehl.

   Diese Wahl wird vor und       nicht        nach    der Verschiebung in den     Walzenschaltern    31       getroffen.     



  Der M-Befehl ermöglicht auch die Durchführung  zweier Austauschoperationen, die     es        ermöglichen,        teil-          weise        ausgeführte    Befehle zu ändern.     Diese        Operationen     hängen vom     Ergebnis    der     Bedingungsprüfung    ab     und          umfassen    das Austauschen     des        Bestimmungsortes    oder  des Befehls.

   Bei einer     Bestimmungsortaustauschopena-          tion    gestattet eine positive Bedingungsprüfung das     Ab-          schliessen    des vorhergehenden Befehls, und     wenn        die          Bedingungsprüfung    negativ ausfällt,     dann    wirkt der  gerade in der Durchführung     befindliche    Befehl als       Löschoperation.    Wenn die Bedingungsprüfung bei einer  Befehlsaustauschoperation positiv ausfällt, dann wird  der     vorhergehende    Befehl nach einem Takt unterbro  chen und die laufende Operation     ausgeführt,

          wenn     jedoch die     Bedingungsprüfung        negativ    ausfällt, dann  wirkt der     laufende    Befehl als Löschoperation.  



  Es gibt 12 Arbeitsspeicher- und     Geräteoperationen,     von denen jede durch einen bestimmten M-Befehl       ausgelöst        werden    kann. Diese Operationen sind:     Verrie-          gele        .mit    Gerät zum Lesen, verriegele mit Gerät zum  Schreiben,     entriegele    Arbeitsspeicher oder Gerät, der  oder das zum     Lesen    reserviert ist, entriegele     Arbeitsspei-          cher    oder Gerät, der oder .das zum Lesen reserviert ist,  lies     (wenn    ein Gerät bereits zum Lesen verriegelt ist),

    schreibe (wenn ein Gerät bereits zum Schreiben     verrie-          gelt        ist),    lies Register, schreib Register und bringe Inhalt  des Mikroprogrammzählregisters 41 in den     M-Arbeits-          speicher.     



  Wie bereits angedeutet, muss jeder     M-Befehl    die  nächste M -Befehlsadresse oder den Nachfolger     im        M-          Arbeitsspeicher        in    einer von zwei Arten vorschreiben,       eine    für den     positiven    Ausgang der     Bedingungsprüfung     und     eine    für den negativen Ausgang der     Bedingungsprü-          fung.    Wenn beide     Vorschriften    gleich sind, dann     ,ist    der  Nachfolger nicht bedingt.

   Das     Register    42 nach     Fig.    2  enthält     normalerweise    die Adresse des laufenden (gerade  in der Ausführung befindlichen) Befehls. Das Register  41     nach        Fig.    2 enthält gewöhnlich     die    um eins     vermin-          derte    Adresse des Alternativbefehls.     Es    gibt sieben       Wahlmöglichkeiten    für jeden Nachfolger:

       Schalt,--    zum  nächsten Befehl der Folge weiter (die nächste     Befehlsad-          resse    ist der Inhalt des Registers 42 um 1 erhöht, und  der Inhalt des Registers 42 wird     anschliessend    durch die       nächste    Befehlsadresse     ersetzt),    überspringe den näch  sten Befehl (diese Operation gestattet bedingte Verzwei  gungen     innerhalb    einer expliziten Additionsvorschrift       aufgrund    eines Befehls;

   die     nächste    Befehlsadresse ist  der um zwei vermehrte Inhalt des Registers 42, und der       Inhalt    ,des Registers 42 wird durch die nächste     Befehls-          adresse    ersetzt), wiederhole den     Befehl    noch     einmal     (diese Operation gestattet     die    Wiederholung der Ausfüh  rung eines Befehls so lange, bis sich der Wert einer       Bedingung        ändert;

      die nächste Befehlsadresse ist der  Inhalt des     Registers    42, der     unverändert    bleibt), speiche  re     Programmschleifenadresse    (dadurch wird die     Speiche-          rang    der     Adresse    des laufenden Befehls im     Register    41       veranlasst,    so dass später zu der um eins vermehrten       Adresse    des laufenden Befehls gesprungen werden  kann),

   führe einen Befehl     ausserhalb    der     Reihenfolge     aus     (diese        Operation    gestattet die     Ausführung        des        im     Register 41 gespeicherten Befehls und     eine        unmittelbare          Rückkehr    zur     normalen    Reihenfolge), rufe eine Ver  zweigungsanweisung     auf    (diese Operation bewirkt einen  Sprung in eine Routine, die im Register 41 vongeschrie-      Register 41 gespeicherten Befehls).  



       In    den M -Befehlen können drei Variable auftreten:  M-Befehlsadressen, Datenvariable und Verschiebebeträ  ge. -Bei Befehlen des ersten Typs wird über die Verknüp  fungseinheitszeit hinaus keine zusätzliche Zeit zur     Ver-          arbeitung    der     Variablen        benötigt.    Bei Befehlen des       zweiten        Typs,        die    nur Variable     enthalten,        wird    nicht  mehr als ein Takt benötigt.

   Bei den     M-Befehlsadressen-          variablen    handelt es sich um diejenigen Adressen, die  ein vollständiges M-Befehlswort benötigen, das daher  nicht bei Befehlen des ersten Typs oder     .bei    anderen       Variablen        verwendet    werden kann. Datenvariable -kön  nen     bei        Befehlendes    zweiten Typs entweder     allein        oder          zusammen        mit    einem     Schiebebetrag    verwendet werden.

    Die     Datenvariable    wird im Variablenregister 51 nach  Fig. 2 gespeichert, bevor die Verknüpfungseinheit bei  diesem     Befehl        irgendeine    Operation     durchführt.    Die  Verschiebebetragvariablen werden- ins Register 44 nach  Fig. 2 übertragen, bevor die Verknüpfungseinheit bei  diesem Befehl irgendeine Opration durchführt.    <I>Bedingungsbits</I>  Wie     bereits    erwähnt, sind die     äusseren    Bedingungssi  gnale, die dem Bedingungsregister 54 nach Fig. 2       zugeführt    werden,     eine    der vier     Informationsquellen    in  der Datenverarbeitungseinrichtung.

   Da diese Bedin  gungsbits die Durchführung der M-Befehle durch die     N-          Befehle        beeinflussen,    werden die durch diese Bits jeweils  dargestellten     Bedingungen    vorgeschrieben, bevor das  Format der N -Befehle vorgeschrieben wird:  Wie bereits erwähnt wurde, speichert das     Bedin-          gungsregister    12     prüfbare    Bits, die als Fehlerindikato  ren, Unterbrechungsbits, örtliche und globale Boolesche   Variable und .als Asynchronitäts- oder     Entriegelungsin-          dikatoren    wirken. Das Format des Bedingungsregisters  ist in Fig. 16 dargestellt.  



  Das Überlaufbit (COV) wird gesetzt, wenn im  Zählregister 50 nach Fig. 2 ein Überlauf auftritt, wenn  also der Zähler beim     Weiterschalter    auf null zurückge  setzt     wird.    Das Bit wird     zurückgesetzt,    wenn es über  prüft (abgetastet) - wird. Es wird auch     immer        dann          zurückgesetzt,    wenn die Ausgangssignale des     Walzen-          schalters    oder der Inhalt des     Variablenregisters    51 nach  Fg. 2 in das Zählerregister übertragen werden.

   Wenn es  im gleichen     Takt        gesetzt        und    zurückgesetzt     wird,        domi-          niert    die     Rücksetzung.    Bei     einer        Überprüfung        dieses    Bits  wird in Wirklichkeit die ODER-Verknüpfung dieses Bits  mit dem     wahren        Überlauf    des     Zählers    überprüft.  



  Das Lesebereitbit (RDC) ist ein Bit, das anzeigt;  dass Daten bereitstehen, die taktweise ins B-Register       übertragen        werden    sollen. Dieses Bit wird von demjeni  gen Arbeitspeicher-Modul oder Gerät gesetzt, mit dem       die        Datenverarbeitungseinrichtung    in     Leseverbindung     steht. Alle Geräte setzen dieses Bit. Das Lesebereitbit  wird durch Überprüfung zurückgesetzt.  



  Das Arbeitsspeicheradressenregisterbereitbit (MAR)  ist ein Bit, das     zum    Anzeigen der Tatsache verwendet  wird, dass das Arbeitsspeicheradressenregister 49 erneut  geladen werden kann. Es wird durch die     Schalterverrie-          gelungvorrichtung    oder ein Gerät während einer     Verrie-          gelungs-,    Lese- oder Schreiboperation gesetzt. Beim  Prüfen wird das Bit zurückgesetzt. Solange wie     !das    Bit    gesetzt ist, nachdem die erwähnten Operationen ausge  löst wurden,     zeigt        es    an, -     dass    das Gerät     oder    - der  Arbeitsspeicher-Modul belegt ist.

    



  Das Bit ERR zeigt an, dass im     Arbeitsspeicher-          Modul    oder Gerät, der bzw. das mit der     Datenverarbei-          tungseinrichtung        für        eine        Leseoperation    in     Verbindung     steht, ein     Fehler        aufgetreten    ist. -Das Bit wird durch das  Gerät oder die Schalterverriegelungsvorrichtung gesetzt  und beim     überprüfen    zurückgesetzt. Das Bit stellt die  ODER Verknüpfung     aller    Fehlersignale dar; die ein  sofortiges Eingreifen erfordern.

   Dazu gehören Arbeits  speicher-Paritätsfehler, ungültige Adressen bei     Periphe-          rieArbeitsspeichern,    Gerät oder     Arbeitsspeicher    nicht  ;angeschlossen (ein Signal von der     Schalterverriegelungs-          Vorrichtung)    und Netzausfall im Gerät. Warnsignale wie   Papier des Schnelldruckers ausgegangen  gehören  nicht dazu (einige Geräte-Fehlerarten werden nur op  tisch     angezeigt).     



  Das Bit ERW, das ähnlich wie das Bit ERR winkt,  zeigt Fehler an, die bei einem Gerät oder Arbeitsspe  cher-Modul, das bzw. der mit der Datenverarbeitungs  einrichtung zum- Lesen in Vebindung steht, auftreten.  Ein Bit  Erster externer Anruf  (EX1) zeigt an, dass ein  neuer     Anruf'    von einem externen Gerät oder     einer     weiteren     Datenverarbeitungseinrichtung    aufgetreten ist.

         Derartige    Anrufe oder Anforderungen können norma  lerweise durch irgendeine Datenverarbeitungseinrich  tung 'bedient werden: Das Bit wird durch das Gerät       gleichzeitig    bei     allen        Datenverarbeitungseinrichtungen          gesetzt.    Beim     überprüfen    wird es     (örtlich)    in jeder  Datenverarbeitungseinrichtung     zurückgesetzt.     



  Ein Bit  Zweiter externer Anruf  (EX2) ist ein Bit,  das einen Anruf von einem Gerät anzeigt, das belegt;  jedoch nicht mit     irgendeiner        Datenverarbeitungseinrich-          tung        verriegelt    ist (in     Verbindung    steht): Angezeigt  würden solche Ereignisse, wie das     Einschalten    eines  Magnetbandgerätes. In diesem Falle würde nur diejenige  Datenverarbeitungseinrichtung, die das Einschalten des  Bandgerätes ausgelöst hat; eine Antwort erwarten.  



  Ein Bit  Arbeitsspeicherinformationsregister bereit        {MIR)        zeigt    an,     dass    der Arbeitsspeicher oder ein Gerät  nach einer     Schreiboperation    Daten erhalten hat. Dieses  Bit wird beim     Überprüfen    in jeder     Datenverarbeitungs-          einrichtung        zurückgesetzt.     



  Ein Bit  Erster globaler Zustand  (GC1) zeigt im  gesetzten Zustand an, dass eine Entriegelung (Trennung)       erfolgreich    durchgeführt wurde. Das Bit kann in höch  stens einer     Datenverarbeitungseinrichtung    gesetzt wer  den. -Es wird in jeder     Datenverarbeitungseinrichtung      örtlich gesetzt und zurückgesetzt. Wenn das Bit über  prÜft wird, wird es nicht dabei zurückgesetzt.  



  Ein Bit  Zweiter globaler Zustand      (GC2)    hat eine  ähnliche Funktion wie das Bit     GCl.     



  Ein Bit  Erster lokaler Zustand      (LCl)    wird     bei     kurzzeitiger Speicherung     Boolescher    - Bedingungen in       einer.Datenverarbeitungseinrichtung    verwendet: Es- wird       örtlich    durch die Datenverarbeitungseinrichtung gesetzt  und örtlich durch     Überprüfung    zurückgesetzt.  



  Ein Bit  Zweiter lokaler Zustand      (LC2)    ist dem Bit       LCI    ähnlich. Welche Bedeutung einem Zustands- oder  Bedienungsbit     zugeordnet        wird,    hängt vom speziellen       Anwendungsfall    ab: Mit Ausnahme der globalen     Zu-          standsbits    sind     alle    Bits bis auf ihre     äusseren    Verbindun  gen     identisch.    Es können jedoch nur drei Bits     (MIR,          LCl,        LC2)    örtlich gesetzt werden.

        N-Befehlsformat  Das N-Befehlsformat wird anhand von Fig. 15  beschrieben. Dieses Format besteht aus Steuersignalen,  die zur Durchführung der M-Befehle erforderlich sind.  Das N-Befehlsformaat umfasst Steuersignale, die nicht  unmittelbar durch eine     Schaltungsanordnung    erzeugt  werden, sondern in Befehlsform in dem     N-Arbeitsspei-          cher    gespeichert sind und aus diesem unter einer     N-          Arbeitsspeicheredresse    ausgelesen werden, die in einem  M-Befehl enthalten ist.

   Bei dem bevorzugten     Aus-          führungsbeispiel    der Erfindung werden die verschiede  nen Bits des N-Befehls zwar direkt als Steuersignale  verwendet, doch liegt es auch im     Rahmen    der Erfin  dung, die verschiedenen Bits des N-Befehls zu verschlüs  seln und     verschlüsselte    Kombinationen der Bits die       Erzeugung    der gewünschten Steuersignale bestimmen zu  lassen.  



  Wie in Fig. 15 angedeutet ist, erfolgt die Durch  führung eines M-Befehls in drei Phasen. Daher sind  auch die Steuersignale, die durch den N-Befehl ausgelöst  werden,     in    drei     Gruppen    unterteilt: Nämlich diejenigen,  die während der ersten Phase verwendet werden müssen,       diejenigen,    die während der Phasen 2 und 3 verwendet  werden .müssen, und diejenigen, die während der Phase  3 verwendet werden müssen.  



  Die zeitlichen Verhältnisse in den verschiedenen       Phasen    werden später noch anhand von Taktdiagram  men ausführlicher beschrieben; sie werden     jedoch    jetzt  schon ,grob beschrieben, um     das        Verständnis    der ver  schiedenen Steuersignale, die in dem N-Befehlsformat  nach Fig. 15 enthalten sind, zu erleichtern. Wie bereits  erwähnt, gibt es drei Zeitphasen, und es gibt auch zwei  Arten von M-Befehlen. Die eine Art von Befehl löst  stets Steuersignale der Phase 1 und Phase 3 aus und  kann in einigen Fällen Steuersignale der Phase 2  auslösen. Befehle der zweiten     Art    enthalten oder bewir  ken nur Steuersignale der Phase 1.

   Durch     Befehle    der  zweiten Art ausgelöste Steuersignale der Phase 1 werden  zum Einspeichern der Variablen in die Register 41, 44  oder 51 verwendet. M-Befehle der zweiten Art benöti  gen stets eine Taktzeit und überlappen stets die Phase 2  der vorhergehenden Befehle der ersten Art.  



  Die Phase 1 tritt bei jedem Befehl der ersten Art auf  und benötigt eine Taktzeit. Sie überlappt stets die Phase  3 des vorhergehenden Befehls der ersten Art (dazwischen  können Befehle der zweiten Art auftreten). Die Phase 1  wird zur Zustands- bzw. Bedingungsüberprüfung, zur  Berechnung der nächsten Befehlsadresse, zur Auslösung  von Arbeitsspeicher- und Geräteoperationen, zum Ein  geben von Befehlsvariablen in das Variablenregister 51  oder das Verschiebungsbetragregister 44 und zum Ein  stellen einer Operation der Verknüpfungseinheit verwen  det.  



  Die Phase 2 tritt bei einigen M-Befehlen der ersten  Art auf und benötigt eine variable Anzahl von Takt  zeiten. Sie dient zur Verzögerung der Phase 3 zur  Übertragweiterleitung, Befehlszwischenspeicherung, Be  fehlsmodifikation und Durchführung eines M-Befehls  der zweiten Art. Wenn es sich bei dem nächsten     M-          Befehl    um einen Befehl der zweiten Art handelt, wird  -der -augenblickliche M-Befehl der ersten Art in der  Phase 2     .angehalten,    und zwar für die Dauer einer  Taktzeit, während der M-Befehl der zweiten Art ausge  führt wird. Die Phase 3 tritt bei jedem M-Befehl der  ersten Art auf und benötigt eine Taktzeit. Sie ist stets die  Phase 1 des nächsten M-Befehls der ersten Art (dazwi-    scheu können Befehle der zweiten Art auftreten).

   Wäh  rend der Phase 3 werden Verknüpfungsoperationen und  Zielortbestimmungen durchgeführt.  



  Die verschiedenen Steuersignale der N-Befehle kön  nen     in    fünf Gruppen unterteilt werden, je nach der  Phase, in der sie ausgeführt werden.  



  <I>Nur in Phase 1 verwendete Steuersignale</I>       Diese        Steuersignale    werden direkt aus den     M-          Befehlen    heraus ausgeführt. Die Bedingungs- oder     Zu-          standsüberprüfung,    das Vorschreiben bedingter und  nicht bedingter     Operationen,    das Ersetzen von Operatio  nen, die Nachfolger-Operationen, das Auslösen von Ar  beitsspeicher- oder Geräteoperationen und Zustands  oder Bedingungsbiteinstell-     Schiebebetragregistervor-          schreibungen    gehören zu dieser Gruppe.  



  <I>In der Phase 2 verwendete Steuersignale</I>    Nur die Verknüpfungsoperationen (mit Ausnahme  der Zielortbestimmung) werden in der Phase 2 durchge  führt. In Abhängigkeit von der Breite (Stellenzahl)     einer     wahren Additionsoperation, der Taktfrequenz der  Datenverarbeitungseinrichtung und davon, ob die Wal  zenschalterausgangssignale benötigt werden, können  zwei anstelle einer     Taktzeit    erforderlich sein, um die  Verknüpfungsoperation vollständig durchzuführen. In  diesen Fällen wird     -eine    Phase 2 mit einer Dauer von  einer Taktzeit eingeschaltet.

   Die     Tatsache,    dass eine  zusätzliche     Zeit        benötigt    wird, wird explizit im Befahl  während der Dauersteuerung angezeigt.  



  Wenn das Auslesen des     nächsten    Befehls aus dem  M -Arbeitsspeicher verzögert wird, bleibt der Befehl der  ersten Art, der gerade ausgeführt     wird,    (und es wird       ständig    einer ausgeführt) so lange in der Phase 2,     bis    das  Auslesen durchgeführt werden kann. Die Länge dieser  Verzögerungszeit lässt sich nicht vom     Programmierer     bestimmen und wird dynamisch durch den Mikro  programmzwischenspeicher oder den M-Arbeitsspeicher       angezeigt.     



  Wenn der nächste M-Befehl eine Ersetzungs- oder  Austauschoperation enthält, wird der Befehl der ersten  Art, der gerade ausgeführt wird, für die Dauer einer  Taktzeit in der Phase 2 angehalten, um die Durch  führung der Phase 1 der Austauschoperation     zu    gestat  ten. Das Bedürfnis nach dieser     Verzögerung        wird    durch  die Austauschsteuersignale des nächsten Befehls be  stimmt.  



  <I>In Phase 2 und Phase 3 verwendete Steuersignale</I>  Diese Steuersignale werden aus dem Befehlsregister  52 heraus ausgeführt. Diese Gruppe steuert nur die  Verknüpfungsoperation, und zwar die A-Register  auswahl, .die B-Registerauswahl, die     C-Eingabeaus-          wahl,    die Addieroperation und die Walzenschalter  operation.    <I>Nur in Phase 3 verwendete Steuersignale</I>  Diese Steuersignale kommen aus dem     Befehlsregister     52.

   Sie steuern die A-Register-Zielortbestimmung, die       B-Register-        Zielortbestimmung    die     Fern-ZielOItbestim-          mung    und     die        Variablenübertragung    sowie     Zähler-          openationen.     



  Die Variablen in den     M-Befehlen        werden    während  des ersten Taktes     des    Befehls in das vorgeschriebene Re  gister (41, 44 oder 51) übertragen. Bei Befehlen der er-      sten Art ist dies die Phase 1; bei Befehlen der zweiten  Art ist     dies    die Phase 2 des Befehls der ersten Art, der  dann gerade ausgeführt wird.  



  Eine Tabelle der     wichtigeren    Steuerbits (oder Steuer  signale), die indem N -Befehlsformat enthalten sind, sind  in Fig. 20 zusammen mit einer Liste ihrer Funktionen       dargestellt.     



  Äussere Steuersignale setzen die Zustands- bzw.  Bedingungsregisterbits und werden durch äussere Gerä  te,     Arbeitsspeicher    und     andere    Datenverarbeitungsein  richtungen ausgelöst.  



  Die     speziellen    Steuersignale werden im einzelnen  noch anhand der verschiedenen Schaltungen näher       beschrieben,    denen diese Steuersignale     zugeführt    wer  den.    Ausführliche Beschreibung spezieller Schaltungen,   In Fig. 3 ist ein ausführlicheres Blockschaltbild des  Rechenwerks ALU als in Fig. 2 dargestellt. Es sei daran       erinnert,        dass    ein Merkmal der Erfindung in der       Schaffung    einer Rechen- und     Verknüpfungsschaltung          besteht,    die aus mehreren     modularen    Verknüpfungsein  heiten aufgebaut ist. Die Schaltungsanordnung nach Fig.

    3 enthält eine Verknüpfungseinrichtung in Form zweier       Halbglieder,60    und 61. Jedem Halbglied sind Datenteile  oder Datensegmente aus acht Bits zuführbar. Die Ver  knüpfungseinrichtung nach Fig. 3 kann daher aus 16  Bits bestehende Datensegmente aufnehmen. Die Ver  knüpfungshalbglieder 60 und 61 werden jeweils durch  binäre     Steuervorrichtungen    68 und 69     gesteuert,    die  ihrerseits durch Steuersignale des N-Dekodierers 55 des  Steuerwerks der Datenverarbeitungseinrichtung nach  Fig. 2 gesteuert werden.  



  Das Verknüpfungshalbglied 60 enthält Ver  knüpfungsgruppen- 64 und 65 sowie Übertragungsein  heiten 74 und 75. In ähnlicher Weise enthält das  Verknüpfungshalbglied 61 Verknüpfungsgruppen 66  und 67 sowie Übertragungseinheiten 76 -und 77. Jede       Verknüpfungsgruppe    kann Datensegmente aus vier Bits  aufnehmen. Wie die Darstellung nach Fig. 3 zeigt,  besteht die Funktion jeder Übertrageinheit in einer  Übertragvorausschau für ihre zugeordnete     Ver-          knüpfuungsgruppe.    Ausserdem wird die Übertragvoraus  schau für jedes Halbglied 60 und 61 auch jeweils durch  Übertragvorausschau-Halbglieder 80 und 81 durchge  führt.  



  Der übrige Teildes Rechenwerks ALU der in Fig. 3  dargestellt ist, enthält A -Register 32 und das B-Register  (und Nicht-Tore) 33. Das Setzen     :der    A-Register 32  kann durch A-Register- Steuervorrichtungen 70 und 71  und das B -Register durch eine     B-Register-Steuervorrich-          tung    72 gesteuert werden. Die NICHT Tore, die noch  ausführlicher beschrieben werden, werden durch Signale       gesteuert,    die sie vom Steuerwerk über Steuerleitungen  73 erhalten.  



  In den Fig. 2 und 3 sind gleiche Bezugszahlen für  gleiche Bauteile verwendet.  



  In Fig. 4 ist eine andere Ausführungsform eines  Rechenwerks ALU     dargestellt,    die aus zwei     Ver-          knüpfungseinrichtungen    oder     vier    Verknüpfungshalb  gliedern besteht. Bei diesem Aufbau kann das Rechen  werk ALU-Datensegmente zu 32 Bits aufnehmen. Wie  beidem Ausführungsbeispiel nach Fig. 3, ist an jedes  der Verknüpfungshalbglieder 60, . . .,63 jeweils ein    Übertragvörausschau-Halbglied 90, . . .,93 angeschlos  sen. Die     Verbindungen    zwischen den verschiedenen  Vorausschau-Halbgliedern unterscheiden sich von denen  des Ausführungsbeispiels nach Fig. 3 in folgender  Weise.

   Jedes Übertragvorausschau-Halbglied erhält  Gruppensignale von den beiden Übertrageinheiten in  dem entsprechenden Verknüpfungshalbglied, wie es in  Fig. 3 dargestellt ist, und führt zu diesen Übertragein  heiten Gruppenübertragsignale zurück. Ausserdem er  zeugt jedes Übertragvorausschau-Halbglied     Halbglied-          Überträgungs-    und Halbglied-Erzeugungssignale, die je  dem Übertragvorausschau-Halbglied in der Einrichtung,  beidem es sich um dasjenige von jeweils zwei Übertrag  vorausschau- Halbgliedern handelt, das der höheren  Stelle zugeordnet ist, zugeführt werden.

   Nach Fig. 4   stellen also die Übertragvörausschau- Halbglieder 90  und 92 die höchststelligen Übertragvorausschau- Halb  glieder .der Paare 90, 91- und 92, 93 dar, während die  Übertragvorausschau- Halbglieder 91 und 93 jeweils das  niedrigststellige Halbglied der Paare ,darstellen. Umge  kehrt erzeugt das niedrigststellige Halbglied jedes Paares  Gruppensignale, die dem höchststelligen Glied dieses  Paares zugeführt werden.

   Wie ferner aus Fig. 4 zu  ,ersehen ist,     werden    die vom höchststelligen Glied     eines     Paares erzeugten Halbgliedsignale den anderen     höchst-          stelligen    Gliedern der Paare über Verbindungen 94 und  95     zugeführt,        während    die Gruppenüberträge zwischen  Halbgliedern von den niedrigststelligen des Paares zu  den höchststelligen des Paares über     Verbindungen    96  übertragen werden.

   Beidem Ausführungsbeispiel nach  Fig. 3, -bei dem nur ein Paar von Halbgliedern verwen  det wird, werden die zwischen Halbgliedern über  tragenen Gruppensignale     erneut    über eine Verbindung  82 vom niedrigststebligen Glied des Paares zum     höchst-          stelligen    übertragen. Wie ferner aus Fig. 3 zu ersehen ist,  werden die Halbgliedübertragsignale auch von dem  jenigen Übertragvoraussehau-Halbglied verwendet, das  diese Signale erzeugt.  



  Es .bestehen noch weitere Unterschiede zwischen den  Ausführungsbeispielen nach den Fig. 3 und 4. Ein  Unterschied ist die Art und Weise, in der die verschiede  nen -Steuersignale zur Betätigung verschiedener Ver  knüpfungshalbglieder verwendet werden. Bei dem Aus  führungsbeispiel nach Fig. 3 ist jedes Verknüpfungs  halbglied mit seiner eigenen Verknüpfungssteuereinheit  versehen, so dass jedes Verknüpfungshalbglied getrennt       verwendet    werden kann. Bei dem     Ausführungsbeispiel     nach Fig. 4 sind das höchststellige Halbglied 60 und das  niedrigstellige Verlnüpfungshalbglied 63 jeweils  mit getrennten (eigenen) Steuereinheiten 98     und    99  versehen.

   Den .dazwischen liegenden Verknüp  fungshalbgliedern 61 und 62 werden die gleichen  Steuersignale von der Zwischen-Steuereinheit 97 zuge  führt: Jede der Steuereinheiten wird durch Steuersignale  des Steuerwerks der Anlage in Abhängigkeit vom  Format der jeweiligen N-Befehle gesteuert, wie nach  stehend noch     ausführlicher    beschrieben wird.  



  Wie aus Fig. 2: zu ersehen ist, ist der Addieren 30  auch mit einem dritten Eingang, dem Z-Eingang, verse  hen. Wie aus -den Fig. 3 und 4 zu ersehen ist, stellen die  X-Eingangssignale den Inhalt des Zählerregisters 50  nach     Fig.    2, der dem     höchststelligen        Verknüpfungs-          halbglied    zugeführt wird, und den Inhalt aus dem  Variablenregister 51 nach     Fig.    2 dar, der dem     niedrigst-          stelligen        Verknüpfungshalbglied    zugeführt wird.  



  Die -in     Fig:    3     dargestellten    und auch -bei dem  Ausführungsbeispiel nach     Fig.    4 realisierten Ver-      knüpfungsgruppen sind gleich ausgebildet. Der     Schal-          tungseufbau    einer Verknüpfungsgruppe ist in Fig. 5       dargestellt    und     wird    jetzt     beschrieben.    Es handelt sieh  um     ein        Schaltnetz,    das im wesentlichen aus     mehreren     UND-Gliedern und NOR-Gliedern besteht.

   Das Schalt  netz nach Fig. 5 kann in vier Schaltungsgruppen       unterteilt    werden, von denen jeder Datenbits mit ver  schiedener Stellenwertigkeit in Form von     Signalen    und  auch Steuersignalen Cl,. . .,C7 zuführbar sind. Eine  erste Ebene von     Verknüpfungsgliedern        erzeugt    Zwi  schensignale X, Y, K' und deren     Komplemente    und  führt sie     einer        zweiten    Ebene von     Verknüpfungsgliedern     zu, um ein     Erzeugungssignal,        Übertragungssignal    und  ein Summensignal für jedes der vier Kennbit-Teile zu  erzeugen.

   Die durch. das Schaltnetz nach Fig. 5 verwirk  lichten Schaltfunktionen sind in Fig. 5 in Form schaltal  gebraischer Gleichungen dargestellt.  



  Die A-Eingangssignale kommen aus den A-Regi  stern. Die B -Eingangssignale kommen aus dem     B-          Register    und stellen den  wahren      Inhalt    dieses Regi  sters oder dessen Komplement dar. Die Z-Eingangssi  gnale kommen entweder vom Zähler 50 oder aus dem  Variablenregister 51     des    Steuerwerks der Datenverar  beitungseinrichtung, die in Fig. 2 dargestellt ist. Die  negierten Übertragssignale K kommen von den jeweili  gen Übertragvorrausschau- Schaltungen, die noch aus  führlicher beschrieben werden. Die S-Signale stellen die  Verknüpfungsergebnisse dar und werden     entweder    den  Walzenschaltern 31 oder dem B-Register 33 zugeführt.

    Die G-Signale und T-Signale werden den jeweiligen  Übertragvorausschau- Schaltungen zugeführt, die  daraufhin die erwähnten negierten Übertragssignale K       erzeugen.     



  Die S-Ausgangssignale stellen Verknüpfungser  gebnisse in Abhängigkeit von der     Wahl    der     Steuer-          signale        Cl,.    .     .,C7    .dar, die dem     Schaltnetz        bzw.    der  Verknüpfungsgruppe nach Fig. 5 in Abhängigkeit von  den Steuereinheiten 68 und 69 nach Fig. 3 zugeführten  N-Signalen zugeführt werden. Die N-Signale kommen  vom N-Dekodierer 55 Mg. 2) und stellen einen vorbe  stimmten N-Befehl dar.  



  Wie aus Fig. 5 zu ersehen .ist, muss jedes     Stellenbit-          Glied    der in dieser Figur dargestellten Verknüpfungs  gruppe ein Übertragsignal vom vorhergehenden Glied  erhalten und dem in der     Reihenfolge    nächsten     Glied    das  Übertragsignal zuführen. Die Gruppen-Übertragvoraus  schau- Schaltung, die diese Signale erzeugt, ist in Fig. 6       damgestellt    und wird jetzt beschrieben. Die     Schaltung    ist  so ausgelegt, dass sie über die Halbglied-Übertragvor  ausschau- Schaltung, die nachstehend beschrieben wird,  ein Übertragsignal GCin von der nächstniedriger stelligen  Verknüpfungsgruppe erhält.

   Diese Schaltung     erhält    auch  die verschiedenen Bitübertragungssignale BT und Bit  erzeugngssignale BG von den     jeweiligen        Gliedern        ihrer     zugehörigen Verknüpfungsgruppe. Die     Erzeugung    dieser  Signale wurde anhand von Fig. 5 beschrieben. Nach  Erhalt dieser Signale erzeugt die Schaltung nach Fig. 6  ihrerseits die entsprechenden negierten Übertragsignale  BC, die den verschiedenen Gliedern der zugehörigen  Verknüpfungsgruppe als Übertragsignale K (.siehe Fig.  5) zugeführt werden.

   Wie weiter in Fig. 6 dargestellt ist,  erzeugt diese Schaltung auch das negierte Gruppenüber  tragungssignal GT und das negierte Gruppen  erzeugungssignal, GG die den     Übertragvorausschau-          Halbgliedern    zugeführt werden, wie es in Fig. 3     dar-          -gestellt        ist,    und die noch ausführlicher     beschrieben    wer  den. Die durch die Schaltung nach Fig. 6 verwirklichten    algebraischen Schaltfunktionen sind ebenfalls in .Fig. 6  dargestellt. Die Schaltung nach Fig. 6 ist die Schaltung  der jeweiligen Übertrageinheiten 74, . . .,77, die in Fig. 3       dargestellt        sind.     



  Die Übertragvorausschau-Halbglieder 80 und 81,  die in Fig. 3 dargestellt sind, und 90, . . .,93, die in Fig.  4 dargestellt sind, sind in Fig. 7 ausführlicher dargestellt  und werden jetzt beschrieben. Wie in den Fig. 3 und 4  dargestellt ist, erhält jedes Übertragvorausschau- Halb  glied in     Abhängigkeit    davon Signale oder keine     Signale     vom nächstniedriger stelligen     Übertragvorausschau-          Halbglied,    ab es sich um das höchststellige oder  niedrigststellige Übertragvorausschau- Halbglied des  Verknüpfungsteils handelt, von dem es ein Teil bildet.

    Umgekehrt führt jedes Übertragvorausschau-Halbglied  den anderen Übertragvorausschau-Halbgliedern ver  schiedene Arten von Signalen in     Abhängigkeit    von  seinem Platz in der hierarchischen Reihenfolge zu.     Die     Schaltung nach Fig. 7 ist so ausgelegt, dass sie die  verschiedenen gewünschten Signale     unabhängig    von ih  rer Reihenfolge in der Hierachie erhält und erzeugt.  Daher sind bestimmte Verbindungsleitungen, die in Fig.

    7 dargestellt     sind,        erforderlich    oder nicht     erforderlich.     Die Schaltung nach Fig. 7 ist daher so ausgelegt, dass sie  negierte Gruppenerzeugungssignale GG erhält, die  durch Zeichen mit ungeradzahligen Indizes dargestellt  sind, wenn sie von einer niedriger stelligen Gruppe von  Übertrageinheiten kommen, und mit geradzahligen Indi  zes versehen sind, wenn sie von einer höher stelligen  Gruppenübertragseinheit kommen. Die Schaltung kann  auch negierte Gruppenübertragungssignale GT erhalten,  die     ebenfalls    nach der eben angegebenen Definition mit  geradzahligen und ungeradzahligen Indizes versehen  sind.

   Ferner erzeugt die Schaltung nach Fig. 7 Gruppen  übertragsignale GC, die ebenfalls mit geradzahligen oder  ungeradzahligen Indizes in Abhängigkeit von ihrer     Stel-          lenwertigkeit        versehen    sind und den jeweiligen Gruppen  übertragseinheiten zugeführt werden, wie es in Fig. 3  dargestellt ist. Wenn das Übertragvorausschau-Halb  glied ein niedriger stelliges ist, ist es so ausgebildet, dass  es dem nächsthöher stelligen die Gruppenübertragungs  signale GT und Gruppenerzeugungssignale GG zu  führt.  



  Wenn die Schaltung ein höchststelliges Übertragvor  ausschau- Halbglied ist, erzeugt es die jeweiligen     Halb-          glied-übertragungssignale    ST und Halbglied- Erzeu  gungssignale SG und führt sie allen höher stelligen  Übertragvorausschau- Halbgliedern des Rechenwerks  ALU zu, wie es in Fig. 4 dargestellt ist. Die Schaltung  nach Fig. 7 ist daher auch so ausgebildet und ange  schlossen, dass sie diese Halbgliederzeugungs- und     Halb-          glied-Übertragungssignale    von den anderen     höchst-          stelligen    Übertragvorausschau-Halbgliedern erhält und  daraus ein negiertes Übertrageingangssignal SC;" er  zeugt.

   Diese Funktion ist jedoch nicht vorgesehen, wenn  es sich bei dieser Schaltung um ein niedriger stelliges  Übertragvorausschau-Halbglied handelt. In ähnlicher  Weise spricht die Schaltung nicht auf     Gruppenüber-          tragungs-    und Gruppenerzeugungssignale des nächst  niedriger stelligen Übertragvorausschau-Halbgliedes an,       und        in        diesem    Falle werden den Eingangsleitungen für  diese     Funktion        zwangsläufig    auf null oder eines     gehelte-          ne    binäre Signale     zugeführt,

      wie es in     Fig.    7     dargestellt     ist.  



  Es sei darauf hingewiesen, das die Erzeugung von       Gruppenübertragsignalen    und deren Weiterleitung     in        die          niedrigststelligen    Bitstellen jedes Verknüpfungshalb-      gliedes durch ein Steuersignal N15 gesperrt werden       kann,    das.     durch    eine     Steuereinheit    68 oder 69 (siehe  Fig. 2) erzeugt werden kann.  



  Die durch die Schaltung nach Fig. 7 verwirklichten  algebraischen Schaltfunktionen sind ebenfalls in Fig. 7  dargestellt.  



  Die     verschiedenen        binären    Steuereinheiten     -68    und  69 nach Fig. 3 und 97, 98 und 99 nach Fig. 4 werden  jetzt ;anhand von Fig. 8 näher beschrieben. Bei diesen  Steuereinheiten handelt es sich um herkömmliche     Deko-          dierer,    die aus mehreren UND- und NOR-Gliedern  bestehen. Der Schaltungsaufbau ist     dennoch    dargestellt,  um das Verständnis der verschiedenen N-Steuersignale  zu erleichtern, die aus den N-Befehlen gewonnen wer  den. Die zur Steuerung der jeweiligen Verknüpfungs  gruppen nach Fig. 3 verwendeten Steuersignale umfas  sen fünf N-Signale, von denen ein Signal ein Sperrsignal  ist.

   Durch die Dekodierung der Signale N9, N10, Nil und  N12 werden sieben Untersteuersignale C1, . . .,C7 erzeugt  und den     'betreffenden        Verknüpfungsgruppen        zugeführt,     wie es in Fig. 5 dargestellt ist und anhand dieser Figur       beschrieben        wurde.        Ein    achtes Signal N15 wird ebenfalls  durch das Steuerwerk nach Fig. 2 erzeugt und dem  Übertrag-Halbglied zugeführt, das dem Verknüpfungs  halbglied entspricht, um die Erzeugung des     niedrigst-          stelligen    Gruppenübertragsignals für dieses Ver  knüpfungshalbglied zu sperren, wie es anhand von Fig. 7  beschrieben wurde:

       Ein    weiteres Sperrsignal dient zum  Sperren der Signale C" und C,;. Kurz auf Fig. 5 Bezug  nehmend, sei darauf hingewiesen, dass die Signale C5  und Co zur Einschaltung der Z-Eingangssignale der       Verknüpfungsgruppe    dienen. Das der Steuerschaltung  nach Fig. 8 zugeführte Sperrsignal dient also zum  Sperren des Z-Eingangs der entsprechenden Ver  knüpfungsgruppen. Die durch die verschiedenen Ver  knüpfungsgruppen unter der Leitung des     N-Steuersigna-          le    durchgeführten Funktionen sind in Fig. 20 unter der  Überschrift  Addiereroperation  aufgeführt.  



  Andere Beispiele, wie die N-Steuersignale des     N-          Befehlsformats    zur Steuerung der Rechenwerk-Opera  tionen verwendet werden, sind in den Fig. 9, 10 und 11  dargestellt, die jeweils den     Schaltungsaufbau    der     A-          Register,    des B-Registers und der Walzenschalter zei  gen.  



  Wie in Fig. 9 dargestellt .ist, bestehen die drei     A-          Register    Al, A2 und A3 jeweils aus drei Gruppen von  Flipflops All,. . . ,A18; A2". . .,A28; Aal, . . .,A38. Wie aus  der Tabelle nach Fig. 21 zu ersehen ist; werden die       Eingänge    der A Register durch zwei N -Signale, N2,     und     N22 .gesteuert, deren Aufgabe darin besteht, den In  halt der A-Register unverändert zu halten und einen  Eingang des A1-Registers, .des A2 Registers und des  A3-Registers zu bilden.

   Nach Fig. 9 werden die Steuer  signale N21 und N22 dem N-Dekodierer 110 zugeführt,  der diese in drei     Signale        C13,        C,:4    und     Cis    umsetzt, die  jeweils den Flipflops des A1-Registers, des A2-Registers  und des A3-Registers zugeführt werden.

   Bei diesen       Signalen    kann es sich um solche Signale handeln,     die    die  betreffenden Flipflops während einer Taktzeit zurückge  setzt halten und dadurch verhindern, dass die Flipflops       gesetzt    werden, so dass die     Funktion    der Steuersignale  N21 und N22 darin besteht;

   irgendeines der C-Signale zu  sperren und somit zu     gestatten,    dass     Datensegmente,    die  über die Datenleitungen 88     zugeführt        werden,    in irgend  einem der Reg  einem der Register-Flipflop-Gruppen gespeichert wer-    Wie aus der Tabelle nach Fig. 19 zu ersehen ist,  werden die A-Register-Ausgänge durch die Steuer  signale     Ni        und    N2 gesteuert, um das Auslesen der       Register        Al,    A2 und A3 zu bewirken oder alle -auf null  zurückzusetzen.

   Wie diese Operationen erwirklicht wer  den; ist ebenfalls in Fig. 9 dargestellt, wonach die  Steuersignale Ni und N2 einem N-Dekodierer 111  zugeführt werden, der     seinerseits    vier Ausgangssignale  Co, . . ,C12 erzeugt. Die Signale C9, C10 und C" werden  UND-Gliedern zugeführt, um das Auslesen der Flipflops  der Register     Al,        A2    und A3 zu steuern.

   Das Signal     C12     wird jedoch     .mehreren    nur mit einem Eingang     ver-          sehenen        UND-Gliedern        zugeführt,    deren Ausgangs  signale durch NOR-Glieder, wie es in Fig. 9 dargestellt  ist, negiert werden, um O -Ausgangssignale zu erzeugen:  Die Ausgangssignale der NOR-Glieder werden über  Leitungen 84 den jeweiligen     Verknüpfungsgruppen    zu  geführt, wie es in den Fig. 3 und 4 dargestellt ist.  



  Anhand von Fig. 10 wird beschrieben, wie die  Steuersignale den Betrieb des B-Registers steuern. Wie  aus der Tabelle nach Fig. 20 zu ersehen ist, werden die  Eingänge des B-Registers durch drei N-Signale, N,8, N,19  und N20 gesteuert. Diese Signale werden (siehe Fig. 10)  einem N-Dekodierer 112 zugeführt, der sie in Signale  C16, . . .,C21 umsetzt. Es sei daran erinnert, dass das     B-          gister    .aus dem Haupt-Arbeitsspeicher, vom Addierer  Register aus dem Haupt-Arbeitsspeicher, vom Addierer  und von den Walzenschaltern Daten und     4-Bit-Überträ-          ge    -und 8-Bit-Überträge erhalten kann.

   So dient das  Signal C16 zum Durchschalten eines UND-Gliedes zur       Übertragung    eines über eine Eingangsleitung 107 Zuge  führten Signals, das einen 8-Bit-Übertrag darstellt, das  Steuersignal     C17    zum     Durchschalten    eines UND-Gliedes  zur Übertragung eines über eine     Eingangsleitung    108  zugeführten Signals,' das einen 4-Bit-Übertrag darstellt,  das Signal C18 zum Durchschalten eines UND-Gliedes  zur     Übertragung    von über     Eingangsleitungen    106 Zuge  führten Datenbits, das Signal     Cis    zum Durchschalten von  UND-Gliedern zur Übertragung von     8-Bit-Datenseg-          menten,

      die über Leitungen _105 zugeführt werden, und  das Signal C20 zum Durchschalten von UND-Gliedern,  um     die        Übertragung    von Datenbits über Leitungen 104  in B -Register     zu        ermöglichen.    Die Leitungen 104 gehö  ren zu den     Datenleitungen    88, die von den Walzen  schalternkommen und     auch    die     Leitungen    106 von den  Addiererausgängen umfassen.

   Die verschiedenen     C-          Signale    dienen     -also    zum     Durchschalten    der verschiede  nen zugeführten Datenbits in die jeweiligen Flipflops       Bi,.    .     .,Bs,    die das     B-Register    bilden. Wie aus     Fig.    10  zu ersehen ist, dient das Steuersignal     C2,    zum Setzen der  jeweiligen     Flipflops        mit    Beginn eines Taktes.  



  Die     Schaltfunktionen    der Steuersignale Na,. .     .,NB;     die diese Operationen steuern, sind .in der Tabelle nach       Fig.    19 unter der Überschrift      B-Register-Ausgänge      angegeben.

   Diese     Steuersignale    werden vom     Steuerwerk     der     Datenverarbeitungseinrichtung    den     entsprechenden          Verknüpfungsgliedern    nach     Fig.   <B>10</B> zugeführt, deren       Augangsleibungen    die Datenleitungen 85 bilden, die das       B-Register    mit den     jeweiligen    Verknüpfungseinheiten       verbinden.    Die     in    den     Fig.    9 und 10 dargestellten       Register    sind nur     :

  auf    eine     Stellenzahl    von 8 Bits  ausgelegt. Die     Register    können jedoch auf jede     beliebige          Stellenzahl    erweitert     werden.    Die     einzige        Änderung,    die       .unter    Umständen     erforderlich    würde, wäre     das        Zwi-          schenschalten    zusätzlicher Treiberstufen, um die erfor  derliche     Steuerleistung    zu erzielen.

   Aber auch     die    Trei  berstufen würden durch die     jeweiligen    X -Signale in der  beschriebenen Weise     gesteuert    werden.      Fig. 11 stellt ein schematisches Schaltbild der       Walzenschalter    dar, von denen zwei bei     diesem    Aus  führungsbeispiel der Erfindung verwendet werden. Die  Schaltung nach Fig. 11 kann 8-Bit-Datensegmente über       die    Datenleitungen 88 aufnehmen und nach rechts oder  links um irgendeinen Betrag verschieben, der im  Schiebebetragregister 44 nach Fig. 2 angegeben ist.

   Die       Ausgangssignale    des Registers 44 werden     einem    (nicht  dargestellten) Dekodierer zugeführt, der durch Signale  N16 und N17 des Befehls gesteuert wird und die passen  den Steuerleitungen     C22,    . .     .,C29    auswählt, die zur Durch  führung der gewünschten Verschiebung     erforderlich     sind. Wenn also der Inhalt des Schiebebetragregisters 44  eine Verschiebung von drei Bits vorschreibt und der     N-          Befehl    eine Rechtsverschiebung     bestimmt,    führt der  Dekodierer der Leitung C25 ein entsprechendes Signal zu.

    Wenn der N -Befehl eine     Linksverschiebung    (von drei  Bits) vorschreibt, dann führt der Dekodierer der Leitung       C27    ein Signal zu. Das     resultierende,    verschobene Daten  segment wird dann wieder den Datenleitungen 88  zugeführt. Die durch die Signale N16 und N17 vorgeschrie  benen Operationen sind in der Tabelle nach Fig.19 unter  der Überschrift  Schiebeoperationen  angegeben.  



  Der Schalter nach Fig. 18 kann auch auf die  Aufnahme von Datensegmenten mit einer     grösseren     Anzahl von Bits erweitert werden, wenn die Datenkanal  breite der Datenverarbeitungseinrichtung entsprechend       erweitert        ist.     



  Im folgenden werden die Fig. 19 und 20 kurz       beschrieben.    Wie bereits in bezug auf das Format des     N-          Befehls    nach Fig. 15 beschrieben wurde, besteht dieser  Befehl hauptsächlich aus     Steuersignalen,    die während       verschiedener    Betriebsphasen der     Datenverarbeitungs-          einrichtung    verwendet werden müssen und jetzt aus  führlicher beschrieben werden. Die drei Gruppen von  Halbglied-Steuersignalen oder N-Signalen werden in den  Phasen 2 und 3, in der Phase 3 und in der Phase 1  verwendet. Fig. 19 ist eine Liste der N-Steuersignale, die  während der Phase 2 und 3 verwendet werden.

   Fig. 20  ist eine Liste der übergeordneten N-Steuersignale, die  während der Phase 3     verwendet    werden.  



  Wie bereits erwähnt wurde, werden die N-Befehle  aus dem N-Arbeitsspeicher geholt und vom     N-Dekodie-          rer    55 (siehe Fig. 2) dekodiert oder realisiert. Diese  Schaltung ist ausführlicher in Fig. 17 dargestellt und  wird jetzt beschrieben.  



  Der N -Befehl mit dem in Fig. 16 dargestellten  Format wird über das N-Arbeitsspeicher- Ausgaberegi  ster 115 in die verschiedenen Register übertragen, die  .die Prüfschaltung 53 nach Fig. 2 bilden. Wie aus dem  Befehlsformat nach Fig. 16 zu ersehen ist, enthält der     N-          Befehl    Phase-1-Steuersignale, Phase-2/3-Steuersignale  und zwei weitere Bits, die eine Verknüpfungsoperations  bedingung und eine 2-Taktzeiten-Bit- Bedingung dar  stellen. Die speziellen Steuersignale der Phase 3 und die  Steuersignale der Phase 2 und 3     wurden    bereits ausführ  licher     beschrieben.    Die Steuersignale der Phase 1 wur  den jedoch noch nicht ausführlich beschrieben.

   Bei den  Steuersignalen der Phase 1 handelt     es    sich     um    diejenigen  Signale, die während der ersten Phase einer Befehlsaus  führung erforderlich sind .und zur     Steuerung    der ver  schiedenen Bedingungsregister nach Fig. 17 verwendet  werden. Ein Bit des Steuerfeldes der Phase 1     bestimmt     also, ob der wahre oder der negierte Zustand der  verschiedenen Bedingungsbits des Bedingungsregisters  54 geprüft werden sollen oder nicht. Dieses Signal wird    einem     Bedingungswähler    118 über eine     Leitung    142  zugeführt.

   Vier andere Bits des Phase-1 Feldes schrei  ben     eine    spezielle Bedingung vor, auf die die verschiede  nen Bedingungsbits des Bedingungsregisters 54 über  prüft     werden    müssen, und diese vier Signale werden  einem Bedingungswählerdekodierer 119 über Leitungen  141     zugeführt.     



  Eine weitere Gruppe von Steuerbits des Feldes der  Phase 1 schreibt eine neue M-Befehls-Adresse vor, und       diese    Bits werden über Leitungen 139 und 140 einem  Arbeitsspeicher-Register-Steuerwähler 128 zugeführt,  der bewirkt wenn er durch den Bedingungswähler 118  vorbereitet ist, dass das M-Programm-Adressenregister  (MPAD) 129 die Übertragung einer neuen Adresse  durch das Register 42 oder das Register 41 nach Fig. 2  in den M-Arbeitsspeicher auslöst.  



  Das Steuerfeld der Phase 1 enthält ferner Bits, die  eine Arbeitsspeicher- oder eine Geräte-Operation oder       eine    Setz-Operation vorschreiben, wie es bereits     be-          schrieben    wurde, und diese Bits werden über Leitungen  136 und 137 in ein Vorbereitungsregister 127 über  tragen, das, wenn eine .geeignete Bedingung durch den  Bedingungswähler 118 überprüft wird, diese Bedingung  der Schalterverriegelungsvorrichtung und auch einem  Setzbedingungsdekodierer 120 zuführt, m das entspre  chende Bedingungsbit im     Bedingungsregister    54 zu  setzen. Ein weiteres Bit des Steuerfeldes der Phase 1  dient zum Anzeigen eines Wortkomplements des Inhalts  des Registers 44 nach Fig. 2.

   Dieses Bit wird über eine  Leitung 135 in ein Vorbereitungsregister 126 übertragen,  um das Komplement im Schiebebetragregister 44 auszu  bilden. Wenn eine Verknüpfungsoperation durchgeführt  werden soll, wird das entsprechende Bit des     N-Befehls-          formates    über eine Leitung 132 in Setzbedingungs  register 123 und 124 übertragen, um die Steuersignale  der Phase 2 und 3 und der Phase 3 ins     Befehlsregister     52 zu übertragen. Wenn ein 2-Taktzeiten-Befehl ausge  führt werden soll,     wird    dieser durch das erste Bit des     N-          Befehlsformates    angezeigt und über UND-Glieder 125'       taktweise    ins Befehlsregister 52 übertragen.

   Dias Befehls  register enthält dann die passenden Steuersignale der  Phase 2 und 3 und der Phase 3, die bereits     .beschrieben     wurden und zur Steuerung der Verknüpfungs- und  Zielortbestimmungs- Operationen erforderlich sind. Die       anderen,        zum    Setzen der jeweiligen Bedingungsbits     des     Bedingungsregisters 54 erforderlichen Signale enthalten  ein Signal, das aus der Schalterverriegelungsvorrichtung  zum Globalbedingungsbit 121 übertragen wird, um die  geeigneten Globalbedingungsbits im Bedingungsregister  54 zu setzen. Die anderen Bedingungsbits, die gesetzt  werden müssen, werden durch Signale des Rechenwerks  ALU oder der Schalterverriegelungsvorrichtung .gesetzt,  wie es bereits     beschrieben    wurde.  



  Der M-Befehls-Dekodierer 40 wird jetzt anhand von  Fig. 18 beschrieben. Es sei daran erinnert, (vgl. die  Beschreibung des     M-Befehlsformates    anhand von     Fig.     14), dass eine 1 in der nullten Bitstelle einen Befehl der  ersten Art anzeigt, der eine     N-Adresse    enthält, und     dass     eine 0 in der nullten Bitstelle einen Variablenbefehl oder  einen Befehl der zweiten Art anzeigt, bei dem die  Bitstellen 1 und 2 verschiedene Variablenoperationen  vorschreiben.

   Nach     Fig.    18 werden diese ersten drei Bits  durch     einen        Dekodierer    151     überprüft.    Wenn die nullte  Bitstelle eine 1 enthält, dann wird der Inhalt des     WM-          Registers    150 zur     Adressierung    des     N-Arbeitsspeichers     ausgelesen. Wenn das nullte Bit eine Null und das erste  Bit eine Eins ist, dann wird das Variablenfeld des M-      Befehls ins Variablenregister 51 nach Fig. 2 übertragen.

         Wenn    die     zweite    Bitstelle. eine Eins     enthält,    dann     wird     der Inhalt des Schiebebetragregisterfeldes (vgl. Fig. 14)  zum Schiebebetragregistereingabewähler 153 über  tragen.     Wenn    die     ersten    drei     Bitstellen        eine        Null    enthal  ten, dann ist der verbleibende Teil des M-Befehls eine  neue M -Adresse, -die ins Register 41 (Fig. 2) übertragen  wird.

       Wenn    sowohl die erste als auch die     zweite    Bit  stelle eine Eins enthält, betätigt der Dekodierer 151 ein  Steuertor 152,     um    das Variablenregister 51 so einzustel  len, dass es ein Datensegment mit verschiedenen Anzah  len von Datenbits     aufnimmt,    wie es bereits bei der  Beschreibung des M-Befehlsformates erwähnt wurde:

    Wie     ebenfalls    bereits erwähnt, wurde,     enthält    das N  Befehls:format in dem Feld der Phase 1     bestimmte    Bits,  die zum Vorschreiben von     Datenübertragungen    in die  oder aus der Datenverarbeitungseinrichtung     verwendet          werden.    Um die Art und Weise besser zu verstehen, in  der die Datenübertragungen stattfinden; und     um    zu  erläutern, wie Daten und die verschiedenen Befehle in  ihren zugehörigen Arbeitsspeichern abgespeichert wer  den, wird auf Fig. 12 Bezug genommen, in der die  Schalterverriegelungsvorrichtung (SW) ausführlicher  dargestellt ist, die in Fig. 1A nur durch gestrichelte  Linien- angedeutet ist.

   Wie aus Fig. 12 zu ersehen ist,  können Daten und/oder Befehle in irgendeinen der drei  Arbeitsspeicher 20a, 20b und 20c über das Arbeits  speicher-Befehlsregister 47 oder das SMPZR 41, bei  denen es sich um Register der Datenverarbeitungsein  richtung handelt, aus einem     Peripheriegerät    über die  Schalteinheit 8 (siehe Fig. 12 und auch die Fig. 1A und  1B) übertragen werden können. -Welches Register     mit          welchem    Arbeitsspeicher verbunden wird,     wird    durch  das Phase-1-Feld des N-Befehls - bestimmt, der - die  Datenübertragung steuert.

   Wie ferner in Fig. 2 dargestellt  ist und 'bereits beschrieben wurde, wird der     N-Arbeits-          speicher    20C vom M Dekodierer 40; der M Arbeitsspei  cher 20b vom     Register    42 oder 41 über einen Adressen  fortschalter 43 -und der Hauptarbeitsspeicher oder der-     S-          Arbeitsspeicher    über das Arbeitsspeicheradressenregister  49 adressiert, wenn er mit dem Register-Adressenregi  ster 45 oder dem Adressenregister 46 in Reihe geschal  tet ist.

   Die Ausgangssignale des Haupt-Arbeitsspeichers  20a werden dem B Register 33 zugeführt.- Die     Ausgangs-          signale    des M -Arbeitsspeichers 20b     werden    dem     M-          Dekodierer    40 über den MP-Zwischenspeicher 25 zuge  führt.  



  Obwohl der MP-Zwischenspeicher 25 noch nicht  beschrieben wurde, dient er einer wichtigen Funktion,  nämlich dem Auslesen einer Folge von M-Befehlen nach  dem Dekodieren eines S-Befehls, wodurch er die Verzö  gerung     eliminiert,    die auftreten würde, wenn die einzel  nen M -Befehle getrennt adressiert würden.  



  Obwohl dies in Fig. 12 nicht explizit dargestellt ist,  sei darauf hingewiesen,     dass    auch ein anderer     Daten-          übertragungsweg    vom Register 47, vom Register 41 und  der SE 8 direkt ins B-Register 33 vorgesehen sein  kann.    Phasenelationen bei M-Befehl-Ausführung  Wie bereits erwähnt wurde,     :gibt    es zwei Arten von  M -Befehlen- Befehle der ersten Art, die Verknüpfungs  und Datenübertragungsoperationen bewirken, und Be  fehle der     zweiten    Art, die Variable mit     einer    neuen M  <B>Befehl-AdresSe</B> und Schiebebeträge enthalten.

   Ein Be  fehl     ,der    ersten Art wird in drei Phasen ausgeführt, von    denen die erste und dritte eine Taktzeit     und    die     zweite     Phase eine variable Anzahl von     Taktzeiten    benötigen.  Ein     Befehl    der zweiten Art hat nur die erste Phase, die  nur eine     Taktzeit    benötigt.  



  Die Ausführung aufeinanderfolgender M-Befehle  überlappt sich, und diese Überlappung und andere       Verhältnisse    bei der     Ausführung    werden jetzt anhand  der Fig. 21; 22 und 23 beschrieben.  



  Fig. 21 zeigt -die Überlappung zweier aufeinander  folgender M-Befehle, die Befehl A und Befehl B       genannt    werden. Es sei daran erinnert,     dass;    wenn es  sich bei dem M-Befehl um einen Befehl der ersten Art  handelt, dann ein entsprechender N-Befehl zur     Durch-          führung    der     verschiedenen    erforderlichen Operationen  vorliegt. Wie aus der Kurve b nach Fig. 21 zu ersehen  ist, wird die Adresse für den N-Befehl A zu Beginn des  Taktes T1 in den M-Arbeitsspeicher gebracht.

   Der     N-          Befehl    A wird gegen     :Ende    dieses Taktes TI -aus dem     N-          Arbeitsspeicher    -geholt wie es in der Kurve c dargestellt  -ist. -Die ausgewählten     Bedingungen    werden überprüft  (Kurve d) und die Eingangssignale dem MPAD-Register  (Kurve e) zugeführt. Die Ausgangssignale vom     MPAD-          Register    (Kurve e) und. die Ausgangssignale des Befehls  registers (Kurve     g)    werden zu Beginn des Taktes T2  erzeugt.

   Das Befehlsregister ist jetzt frei, so dass es  einen neuen Befehl -aufnehmen kann, und daher wird  während des gleichen Taktes eine neue Adresse für den  nächsten Befehl B erzeugt, wie es     durch    die Kurve - h       dargestellt    ist. Der Befehl B wird kurz vor dem Ende des  Taktes T2 (siehe Kurve j) aus dem N-Arbeitsspeicher  geholt. Die anderen Kurven nach Fig. 21, die das Setzen  von zwei Taktflipflops und verschiedene Sperrsignale       darstellen,    kommen bei dieser Operation nicht vor.

   Wie  noch aus Fig.21 zu ersehen ist, erfolgt die Ausführung  der Phase-1-Steuerungen des Befehls B am Ende des  Taktes T2, 5o dass die Phase-1-Steuerungen des Befehls  B     während    -der Phase 3     des    Befehls A     ausgeführt     werden.  



  Im folgenden wird anhand von Fig. 22 die Aus  führung eines Befehls der ersten Art beschrieben, :bei  dem die Phase 2 zwei Takte benötigt. Die in Fig. 22  dargestellten Kurven b, . . .,e sind die gleichen wie in  Fig. 21, da sie das Auslesen des ersten Befehls A  darstellen. In diesem Falle enthält der ausgelesene     N-          Befehl    jedoch ein Bit, das eine 2-Takt-Operation an  zeigt, wie es bereits bei Fig. 17 erwähnt wurde.

   Dies  bewirkt, dass ein 2-Takt-Flipflop gesetzt wird, wie es   durch - die Kurve g in Fig. 22 dargestellt ist, und  infolgedessen werden die Ausgangssignale des     MPAD-          Registers    und das Befehlsregisters, wie es in den Kurven  f .und h     dargestellt    ist, um einen Takt verzögert; wie es  für die     2-Takt-Operation    erforderlich ist.

   In     ähnlicher     Weise wird auch das Adressieren und Auslesen- des  Befehls     B-    aus dem     M-Arbeitsspeicher    für die Dauer  eines     Taktes    so lange verzögert, bis die     2-Takt-Opera-          tion    des Befehls A ausgeführt worden ist. Während  der Takte     TZ    und     Ts    (siehe Kurve j) wird ausgeführt, da  die verschiedenen     Taktimpulse    am Ende daher die Phase  1 des Befehls B am Ende des Taktes     T3    des Taktes     T2     gesperrt- wurden.

   Phase 2 und/oder 3 wird     währenddes     Taktes     T4    ausgeführt.  



  *- Anhand von     Fig.    23 werden jetzt die Zeitverhältnis  se zwischen zwei aufeinanderfolgenden Befehlen be  schrieben; wobei der zweite     M-Befehl    B eine     Variable     enthält und daher keinen     N-Befehl    benötigt. Wie aus       Fig:    23 zu ersehen ist, sind die ersten fünf Kurven  (b, . . . ,f) sie gleichen wie in     Fig.    2 1, und sie stellen das      Auslesen und die Ausführurng der ersten Phase des  Befehls A dar. Ferner     wird    das Auslesen des     Befehlsre-          gisters    (Kurve h in Fig. 21 und Kurve g in Fig. 23) beide  Male zu Beginn des Taktes     T2    ausgelöst.

   Ferner erfolgt  auch das Adressieren des M-Arbeitsspeichers zum Aus  lesen des     Befehls    B bei beiden Figuren     zur    gleichen Zeit.  Das Auslesen des M-Befehle (Kurve i .in Fig. 23) erfolgt  jedoch früher als das Auslesen des N-Befehls nach Fig.

    21 (Kurve j), und da der Befehl B bei Fig. 23 eine       Variable    ist, ist kein N Befehl     erforderlich.        Dadurch     wird bewirkt, dass der M Dekodieren 40 nach Fig. 2 ein  Haltesignal erzeugt, wie es die Kurve m in Fig. 23       darstellt.    Als Folge davon wird     die    Ausgabe des Befehls  registers (Kurve g in Fig. 23) beibehalten, während die  Variablen des M-Befehls B jeweils in ein Register  übertragen werden, wie es durch die Kurve i in Fig. 23       angedeutet    ist.

   Scheinbar gleichzeitig     mit    dem Haltsignal  nach Kurve m werden die     verschiedenen        Phasentakt-          impulse        gesperrt    (siehe Kurve n), um die     Übertragungen     der     Variablen    am Ende des     Taktes    T2 zu ermöglichen.  Nachdem die Übertragungen der Variablen erfolgt     ist,     bleibt die Ausgabe des Befehlsregisters bis zum Ende       des    Taktes     T3    gültig, wie es durch die Kurve g  dargestellt ist.

   Auf diese Weise wird die     Ausführung     eines M-Befehls der ersten Art verzögert, um Variablen  übertragungen durch den nächsten Befehl, der zweiten  Art zu gestatten. Die Variable des B-Befehls schreibt  stets eine neue M-Adresse vor. Dann wird das     MPAD-          Register    gezwungen, wie es durch die Kurve j angedeu  tet ist, den M-Arbeitsspeicher (Kurve k) erneut zu  adressieren, um einen neuen Befehl aus dem     M-          Arbeitspeicher    und dann dessen N-Gegenstück aus dem  N-Arbeitsspeicher zu holen, wie es die Kurve e zeigt.

    Der     Befe=hl    wird     am    Ende des Taktes T8 aus dem     N-          Arbeitspeicher    und dann :dessen N-Gegenstück aus dem  nicht mehr anstehen.  



  Obwohl die soweit beschriebenen     Zeitdiagramme     nur einige verschiedene Situationen     darstellen,    die wäh  rend der     Ausführung    aufeinanderfolgender     Befehle    in       überlappter    Weise auftreten können, wird dennoch       angenommen,    dass die obige Beschreibung     hinreichend     klar macht, wie die überlappte Befehlsausführung     statt-          findet    und wie z.

   B. verschiedene     Variableninforma-          tionen    in die jeweiligen Register übertragen werden  können, wenn dies bei der Ausführung eines bedingten  M-Befehls erforderlich ist.    M-Befehlsfolgen  Fig. 24 stellt eine Folge von M-Befehlen dar, die bei  einer -bestimmten Eingabe/Ausgabe-Operation verwen  det werden, die durch einen E/A-Deskriptor der in Fig.  13 dargestellten Art     vorgeschrieben        wird.    Bei jedem  Schritt der Folge ist die Ausführung eines M-Befehls  erforderlich.

   Diese Schritte sind:     Bringe    Inhalt des  Arbeitsspeicher-Adressenregisters (AAR) ins     A2-Regi-          ster;    übertrage  Gerät-Schreib-Signal  und bringe Inhalt  des A1-Registers und das niedrigststellige Zeichen des  B-Registers +1 ins A-Register; übertrage Signal  Tren  ne lesendes Gerät ; lies Gerät und     verschiebe    Inhalt des  B-Registers um vier Bits nach links und bringe irr ins  A3-Register; wenn AAR bereit ist, bringe Inhalt von  Al-Register +1 ins AI-Register und ins AAR; wenn     B-          Register    bereit ist, bringe Inhalt des B-Registers ins     A2-          Register    und lies Gerät;

   wenn AAR bereit     ist,    bringe  Inhalt des A2-Registers ins AAR; wenn B-Register  bereit ist, bringe dessen Inhalt ins Arbeitsspeicherinfor-    mationsregister (AIR); bringe Inhalt von AIR in den  Arbeitsspeicher und verschiebe Inhalt von A3-Register  um acht Bits nach rechts.  



  Eine weitere M-Folge ist in Fig. 25 dargestellt, die  zur Durchführung einer  Zeichenfolgeabtast -     Rechen-          anweisung    geeignet ist, wie sie     durch        einen    S -Befehl       vorgeschrieben    wird.     Diese    Rechenanweisung     dient        zum     Aufsuchen aller Anfangsstellen aller gleichen (matches)  Zeichen einer Zeichenfolge in einer     Ursprungs-    oder  Quellenfolge.

   Die Inschriften in Fig. 25 geben an,  welche Register die jeweiligen Datensegmente     enthalten,     die den Ursprungs- oder Quellenort S (source location),  Zeichenort P (pattern location), Quelleninhalt SC     (sour-          ce    contents), Zeicheninhalt PC (pattern contents),  Gleichheitsanzeige M (match indication), Zeiger     (Poin-          ters)    SP, PP und MP und die Register-Adressenregister  (RAR)     darstellen.  

Claims (1)

  1. PATENTANSPRUCH I Datenverarbeitungseinrichtung mit mehreren Regi stern zur Verschiebung von Daten, mit einem ersten Speicher für Rechenablaufbefehle und mit einem zwei ten Speicher für Gruppen von Operationsbefehlen, dadurch gekennzeichnet, dass sie eine mit dem ersten Speicher (20a) verbundene und zum Empfang von Rechenablaufbefehlen geeignete, erste Vorrichtung (33;
    und eine mit dieser ersten Vorrichtung (33) verbundene und beim Eintreffen eines Rechenxblaufbefehls anspre chende, zweite Vorrichtung (40, 43) zur Adressierunl des zweiten Speichers (20b) und zum Empfang vor Operationsbefehlen aufweist. UNTERANSPRÜCHE 1.
    Datenverarbeitungseinrichtung nach Patentan spruch, dadurch gekennzeichnet, dass sie eine mit des zweiten Vorrichtung verbundene Rechnereinheit (30; aufweist, welche aus mehreren parallelgescholtenen Mo- dulbausteinen (60, 61) besteht, deren Eigenschaften vor einem Operationsbefehl abhängig sind und welche Schaltkreise (64, 65, 66, 67) enthalten,
    die paralle mindestens zwei Gruppen von Informationsbit empfan gen und ein die logische Verknüpfung dieser beides Gruppen darstellendes Ausgangssignal erzeugen kör nen. 2.
    Datenverarbeitungseinrichtung nach Unteraa spruch 1, dadurch gekennzeichnet, dass andere Modul bausteine (62, 63) mit der zweiten Vorrichtung (40, 43, verbunden sind, um je nach Operationsbefehl einzeln verschiedene Steuerbefehle empfangen zu können. 3. Datenverarbeitungseinrichtung nach Untenan.
    Spruch 1 oder 2, dadurch gekennzeichnet, dass jede Modulbaustein (60, 61) mit einigen der Register (32 33) verbunden ist, um Datenblöcke zur Durchführen logischer Verknüpfungsoperationen zu erhalten. 4. Datenverarbeitungseinrichtung nach Untenan. Spruch 3, dadurch gekennzeichnet, dass jene Modul bausteine, welche die erste (60, 62) und die letzte (61 63) Stelle eines Datenblocks verarbeiten, zum Empfang weiterer Daten mit einem dritten Register (50, 51 verbunden sind. 5.
    Datenverarbeitungseinrichtung nach - Unteran spruch 1, dadurch gekennzeichnet, dass die Modulbau steine (60, 61) mit drei der Register (32, 33, 50, 51) verbunden sind, um Daten zur Durchführung logischer Verknüpfungsoperationen aus drei verschiedenen Datenquellen zu erhalten. 6.
    Datenverarbeitungseinrichtung nach Unteran spruch 5, dadurch gekennzeichnet, dass sie eine Vor- richtung (40, 20c, 55) aufweist, welche mit einem der Register verbunden ist und welche den Empfang von Daten aus einer der Datenquellen sperrt..
    7. Datenverarbeitungseinrichtung nach Patentan spruch, dadurch gekennzeichnet, dass die zweite Vor richtung (40) mit dem zweiten Speicher (20b) verbunden ist und auf einen Rechenablaufbefehl anspricht, um einen Operationsbefehl aus dem zweiten Speicher zu holen, und dass die Datenverarbeitungseinrichtung eine Adressiervorrichtung (43) zum Auslesen eines Opera- tionsbefehls während der Ausführung des vorherigen Operationsbefehls,
    einen mit der zweiten Vorrichtung verbundenen Taktimpulsgenerator zur Erzeugung von Phasenabschnitten, während denen die Operationsbefeh le ausgeführt werden, und eine Verzögerungseinrichtung (20c; 55, 40) aufweist, die mit dem Taktimpulsgenerator verbunden ist, um gewisse, die Durchführung eines Operationsbefehls bewirkende Taktimpulse zu unter- drücken. B.
    Datenverarbeitungseinrichtung, nach Unteran spruch 7, dadurch gekennzeichnet, dass sie einen mit dem zweiten Speicher und der- Mehrzahl der Register verbundenen Befehlsdecoder (40), welcher Operations- befehle aus dem zweiten Speicher empfängt, um Daten verschiebungen zwischen bestimmten Registern auszu führen, aufweist. 9.
    Datenverarbeitungseinrichtung nach Unteran spruch 1, dadurch gekennzeichnet dass sie ein mit dem zweiten Speicher verbundenes Variabelnregister (51) aufweist das zum Empfang von Datenvariabeln aus dem zweiten Speicher geeignet ist. 10.
    Datenverarbeitungseinrichtung nach Unteran spruch 8, dadurch gekennzeichnet, dass sie ein An schlussgerät (9) und eine Vielfachleitung, durch die mindestens eines der Register (47) zur Datenverschie bung von und nach dem Anschlussgerät (9) mit diesem verbunden ist, aufweist, und dass der Befehlsdecoder (40) geeignet ist, vom zweiten Speicher Folgen von Operationsbefehlen; die logische Operationen und Datenverschiebungen von und nach dem Anschlussgerät (9) bestimmen, zu empfangen.
    11. Datenverarbeitungseinrichtung nach Unteran spruch 7, dadurch gekennzeichnet, dass die erste Vor richtung (33) ein Register zur Aufnahme von Rechenab- Laufbefehlen, die von der zweiten Vorrichtung (40) als Anwort beim Eintreffen von Operationsbefehlen ausge sendet werden, aufweist. 12.
    Datenverarbeitungseinrichtung nach Unteran spruch 7, dadurch gekennzeichnet, dass sie zur Speiche rung der, die Operationsbefehle ausführenden Steuer befehle einen dritten Speicher (20c), einen mit dem zweiten und dritten Speicher verbundenen Befehlsdeco- der (40) und eine damit verbundene Taktunter- drückungsvorrichtung (45), ein Bedingungsregister (54) und ein Datenübertragungsnetzwerk (44; 31) auf weist.
    PATENTANSPRUCH II Verfahren zum Betrieb der Datenverarbeitungsein- richtung nach Unteranspruch 12, dadurch gekennzeich net, dass eine erste Gruppen von Signalen, die einen ersten Operationsbefehl darstellt, im zweiten Speicher (20b) gespeichert wird, und die, wenn sie vom Befehls decoder (40) aufgerufen wird, die Ausführung einer Operation durch die Datenverarbeitungseinrichtung be wirkt,
    und dass eine zweite Gruppe von Signalen, die einen zweiten Operationsbefehl darstellt, im zweiten Speicher (20b) gespeichert wird, und die, wenn sie vom Befehlsdecoder (40) aufgerufen wird, -die Verzögerung der Operation um mindestens ein Taktintervall zur Folge hat. UNTERANSPRüCHE .
    13. Verfahren nach Patentanspruch 1f, dadurch gekennzeichnet dass die zweite Signalgruppe eine Prü fung des Zustandes des Bedingungsregisters (54) zur Folge.hat. 14.
    Verfahren nach - Unteranspruch 13, dadurch gekennzeichnet, dass die erste Signalgruppe eine Ver schiebung im Datenübertragungsnetzwerk (44, 31) zur Folge hat, und dass die zweite Signalgruppe- Signale enthält, welche die Anzahl Bit angeben, um die die Daten geschoben werden.
CH1474371A 1969-05-19 1970-05-13 Datenverarbeitungseinrichtung und Verfahren zum Betrieb der Datenverarbeitungseinrichtung CH526167A (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US04/825,569 US4558411A (en) 1969-05-19 1969-05-19 Polymorphic programmable units employing plural levels of sub-instruction sets
CH715770A CH522919A (de) 1969-05-19 1970-05-13 Datenverarbeitungseinrichtung und Verfahren zum Betrieb der Datenverarbeitungseinrichtung

Publications (1)

Publication Number Publication Date
CH526167A true CH526167A (de) 1972-07-31

Family

ID=25700859

Family Applications (1)

Application Number Title Priority Date Filing Date
CH1474371A CH526167A (de) 1969-05-19 1970-05-13 Datenverarbeitungseinrichtung und Verfahren zum Betrieb der Datenverarbeitungseinrichtung

Country Status (1)

Country Link
CH (1) CH526167A (de)

Similar Documents

Publication Publication Date Title
DE2023354C2 (de) Datenverarbeitungsanlage mit einem Mikrobefehlsspeicher
DE2357003C2 (de) Prozessor für eine Mehrprogramm-Datenverarbeitungsanlage
DE2714805C2 (de)
DE3424962C2 (de)
DE68925397T2 (de) Pipelineprozessor
DE2611892C2 (de) Mikroprogramm-Steueranordnung
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE2847934A1 (de) Datenverarbeitungseinrichtung mit einem mikrobefehlsspeicher
DE2555963A1 (de) Einrichtung zur funktionsmodifizierung
DE2712224A1 (de) Datenverarbeitungsanlage
DE3689389T2 (de) Datenverarbeitungsprozessor.
DE2318069A1 (de) Rechnersteuersystem unter verwendung von mikroprogrammierung und statisch/dynamischer erweiterung von steuerfunktionen mittels festverdrahteter logischer matrix
DE1285220B (de) Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten
DE2524046A1 (de) Elektronische datenverarbeitungsanlage
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE2054947A1 (de) Adressenvorbereitungseinnchtung und verfahren und Speicherzugnffan forderungseinnchtung fur ein Infor mationsver arbeitungssystem
DE2548720C2 (de) Mikroprogramm-Steuerwerk
DE3121046C2 (de)
DE2702722C2 (de) Einrichtung zur Verarbeitung nicht direkt ausführbarer Instruktionen
DE2245284A1 (de) Datenverarbeitungsanlage
DE68903280T2 (de) Vektorschlange in computern mit vektorregister.
DE2136210A1 (de) Zentraleinheit fur eine EDV-Anlage
DE2336676A1 (de) Einrichtung zur modifizierung von mikroprogrammbefehlen
DE2906685A1 (de) Instruktionsdecodierer
DE1499224C3 (de) Datenverarbeitungsanlage mit Kellerspeichereinrichtungen

Legal Events

Date Code Title Description
PFA Name/firm changed

Owner name: BURROUGHS CORPORATION (A DELAWARE CORPORATION)

PUE Assignment

Owner name: BURROUGHS DELAWARE INCORPORATED (A DELAWARE CORPOR

PL Patent ceased