[go: up one dir, main page]

DE2309029A1 - Elektronische digital-datenverarbeitungs-anlage der gattung mit parallelverarbeitung mehrerer binaerer signale - Google Patents

Elektronische digital-datenverarbeitungs-anlage der gattung mit parallelverarbeitung mehrerer binaerer signale

Info

Publication number
DE2309029A1
DE2309029A1 DE19732309029 DE2309029A DE2309029A1 DE 2309029 A1 DE2309029 A1 DE 2309029A1 DE 19732309029 DE19732309029 DE 19732309029 DE 2309029 A DE2309029 A DE 2309029A DE 2309029 A1 DE2309029 A1 DE 2309029A1
Authority
DE
Germany
Prior art keywords
memory
output
signals
group
inputs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19732309029
Other languages
English (en)
Other versions
DE2309029C2 (de
Inventor
Karl-Ludwig Dipl-Ing Paap
Helmut Rahm
Hans-Joachim Dipl-In Steinmetz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HOHNER AG MATTH
Matth Hohner AG
Original Assignee
HOHNER AG MATTH
Matth Hohner AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HOHNER AG MATTH, Matth Hohner AG filed Critical HOHNER AG MATTH
Priority to DE2309029A priority Critical patent/DE2309029C2/de
Priority to NL7402005A priority patent/NL7402005A/xx
Priority to CH249774A priority patent/CH589894A5/xx
Priority to JP49020492A priority patent/JPS50124543A/ja
Priority to AT146774A priority patent/AT335203B/de
Priority to FR7406093A priority patent/FR2219463B1/fr
Priority to CA193,353A priority patent/CA1009762A/en
Priority to US445134A priority patent/US3914746A/en
Publication of DE2309029A1 publication Critical patent/DE2309029A1/de
Application granted granted Critical
Publication of DE2309029C2 publication Critical patent/DE2309029C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions

Landscapes

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

Description

"Minicomputer"
19. Februar 1973 Dr.Bi/ML/KN
Matth. Hohner Aktiengesellschaft Trossingen
Elektronische Digital-Datenverarbeitungs-Anlage der Gattung mit Parallelverarbeitung mehrerer binärer Signale
Die Erfindung betrifft eine elektronische Digital-Datenverarbeitungs-Anlage der Gattung mit Parallelverarbeitung mehrerer binärer Signale, die aus einem Unterspeicherwerk, einem Rechenwerk mit zugehörigem Leitwerk und einem Netzgerät, sowie zugehörigen Stromquellen und Generatoren für Folgen von Taktsignalen besteht. .
-2-
409835/0518
Bei elektronischen Digital-Datenverarbeitungs-Anlagen der vorbeschriebenen Gattung enthält das Unterspeicherwerk üblicherweise einen ersten Speicher aus matrixförmig gruppierten Zellen, der bei zähleradressierbarer zeilenweiser Beaufschlagung mit Eingangstaktsignalen gemäß den Jeweiligen Zellenwerten Gruppen von binären Signalen an seine Ausgangsleitungen abgibt, und dem ersten Speicher ein Untersteuerwerk mit Adressierungsund Steuerungseinheiten zugeordnet ist. Ferner ist dabei das Rechenwerk - im Sinne der für die vorliegende Erfindung geltenden Definition - aus einem logischen Netzwerk mit Überlaufregister, einem Akkumulator, einer Zwischenspeichergruppe mit Registern für binäre Ein- und Ausgabesignale, einem Kanalwerk, gegebenenfalls einem Vorrangwerk, und einem Hauptspeicherwerk aufgebaut, das einen zweiten aus matrixförmig gruppierten Zellen aufgebauten Speicher enthält, der bei zeilenweise zähleradressierbarer Beaufschlagung mit Eingangstaktsignalen gemäß den Zellenwerten Gruppen von binären Signalen abgibt und von dessen Zellen mindestens eine Gruppe zusätzlich solche auf ihre Eingänge gelegte Gruppen von binären Signalen speichert. Ferner ist dem Rechenwerk ein Leitwerk zugeordnet, das ein Dekodierwerk für die Auswertung der Folgen von Taktsignalen als Steuersignale auf getrennten Ausgangsleitungen enthält, und schließlich sind an das Kanal werk des Rechenwerks Geräte für Ein- bzw. Ausgabe von Daten angeschlossen.
An elektronische Digital-Datenverarbeitungs-Anlagen der hler einschlägigen Art werden ganz allgemein die verschiedensten und sich teilweise bezüglich ihrer Realisierbarkeit widersprechenden Anforderungen ge-
409835/0518 ~3~
stellt. So sollen damit Organisationsprobleme bei Industriebetrieben, in Handelsbetrieben, in Dienstleistungsbetrieben, wie Speditionen usw., in öffentlichen Verwaltungen usw., möglichst aller Betriebsgrößen lösbar sein. Im kaufmännischen Bereich sollen diese Datenverarbeitungsanlagen für teilweise sehr verschiedene Anwendungsbereiche einsetzbar sein, wie Fakturieren, Buchen, Lohnabrechnen oder in etwas technischer ausgerichteten Bereichen, wie z.B. Handwerksbetrieben, für Aufmaßberechnungen, Amortisationspläne, usw.
Dieses heterogene Spektrum von Anwendungsmöglichkeiten setzt voraus, daß die Datenverarbeitungsanlagen mit teilweise sehr verschiedenen Programmen oder Standardprogrammen in Verbindung mit flexiblen Programmerweiterungen ausgestattet werden können, die Arbeitsanweisungen für die Anlage enthalten, eingegebene Werte zu verarbeiten, logische Entscheidungen zu fällen und die Ergebnisse in irgend einer Weise auszugeben.
Elektronische Digital-Datenverarbeitungs-Anlagen, die den aufgeführten Anforderungen in unterschiedlichem Grade entsprechen, haben sich bereits in der Praxis bewährt und in erheblichem Umfange durchgesetzt. Einer weiteren praktischen Anwendung stehen aber oft Schwierigkeiten der Bedienung, der Betriebszuverlässigkeit und vor allem der Programmierung entgegen· Dazu kommt, daß mit der zunehmenden Bedeutung dieses Wirtschaftszweiges der Wettbewerb immer schärfer wird und deswegen die Kostenfrage, d.h. die Frage des technischen Aufwandes, immer mehr an Bedeutung gewonnen hat. Diese Problematik ist auch bereits ohne Rücksicht auf den
409835/0518
Wettbewerb erforderlich, wenn Datenverarbeitungsanlagen so preisgünstig hergestellt werden sollen, daß sie auch für kleinere Betriebsgrößen in Frage kommen.
Der vorliegenden Erfindung liegt deshalb die Aufgabe zugrunde, eine elektronische Digital-Datenverarbeitungs-AnIage der eingangs beschriebenen Gattung so zu entwerfen und herzustellen, daß sie zunächst schon von der Technologie her gemäß einem Baukastensystem streng modular aufgebaut ist, so daß durch Verwendung modernster Mikrobausteine der Technik der integrierten Halbleiterschaltungen eine einfache, übersichtliche, raumsparende und damit kostensparende Herstellung gewährleistet ist. Eine wesentliche Teilaufgabe besteht dabei darin, die Netze solcher Mikrobausteine bzw. die Bausteingruppen so zusammenzustellen und auszuwählen, daß die von der Funktion her gegebenen Bedingungen für das Verhalten an den Schnittstellen erfüllt sind. Dies spielt vor allem dann eine wesentliche Rolle, wenn, wie es üblicherweise gefordert wird, die Speicher sowohl für Programme als auch für Daten ausbaufähig und durch eine besondere Aufteilung bezüglich Format der Daten und der Befehle optimal ausnützbar sein sollen.
Eine weitere Teilaufgabe stellt sich dadurch, daß von den neueren Entwicklungen auf dem Gebiet der elektronischen Digital-Datenverarbeitungs-Anlagen verlangt wird, daß sie ausbaufähig sind und neueren Bedienungsoder Programmierungsanforderungen angepaßt und trotzdem auch in Verbindung mit bereits bestehenden Dateien eingesetzt werden können; diese Forderung wird bekanntlich mit derjenigen nach einer Kompatibilität der neueren Technik mit der früheren beschrieben.
-5-A09835/0518
Die la vorstehenden ausführlich und nach den verschiedenen Gesichtspunkten beschriebene Aufgabe wird erfindungsgemäß dadurch gelöst, daß bei einer elektronischen Digital-Datenverarbeitungs-Anlage der eingangs beschriebenen Gattung die Ausgangsleitungen des ersten Speichers in vier Gruppen zusammengefaßt sind, von denen eine erste mit entsprechenden Eingängen sowohl des Unterspeicherwerks als auch des Akkumulators und/ oder der Zwischenspeichergruppe und/oder der Adressierungseinheit des Unterspeicherwerks, eine zweite mit entsprechenden Eingängen sowohl der Adressierungseinheit des UnterSpeicherwerks als auch der Zwischenspeichergruppe, eine dritte mit entsprechenden Eingängen sowohl einer Adressierungseinheit des Unterspeicherwerks als auch des Dekodierwerks und eine vierte mit entsprechenden Eingängen sowohl einer Steuerungseinheit des Unterspeicherwerks als auch des Dekodierwerks über Verknüpfungsglieder, insbesondere UND-Glieder, verbunden sind, von denen jeweils ein weiterer Eingang an einem ein Taktsignal führenden Ausgang des Dekodierwerks liegt. Es kann dabei vorteilhaft sein, eine Ausgangsleitung der vierten Gruppe mit einem Eingang einer Selektorschaltung zu verbinden, deren andere Eingänge von übrigen Signalen der dritten und der vierten Gruppe beaufschlagt werden. In einer anderen zweckmäßigen Ausführungsform der Erfindung sind die Steuerungseinheit des Unterspeicherwerks und das Dekodierwerk des Leitwerks zu einer Verknüpfungs-Dekodier-Schaltung, insbesondere in der Technik der integrierten Halbleiterschaltungen elektrisch und/oder baulich zusammengefaßt. Für solche integrierte Halbleiterschaltungen gibt es heute bereits mehrere Stufen des Integrationsgrades, wovon hier diejenigen der TTL-Technik (Tran-
409835/0518
sistor-Transistor-Logik), der MSI und LSI-Technik (medium scale integration bzw. large scale integration) und der MOS-Technik (Metall-Oxyd-Silizium) genannt seien.
Gegenüber den bekannten Rechnerstrukturen der hier einschlägigen Art vermittelt die ErfindungsgemäJie vor allem dadurch einen sprunghaften technischen Fortschritt, daß das Befehlswort des Unterspeicherwerks und damit die Speicherzellen und die nachfolgenden Verarbeitungsbausteine mehrfach und damit optimal ausgenützt sind. Bei bekannten Rechnerstrukturen, die über eine solche Verschachtelungsaöglichkeit nicht verfügen, sind entweder einige Speicherstellen und damit auch die nachfolgenden Leitungen- und Verarbeitungseinheiten nicht ausgenützt oder es wird nur ein Teil der an sich, d.h. aus der Stellenzahl des Befehlsworts sich ergebenden Zahl von Befehlen verwertet. In beiden Fällen ist ein Teil der Kapazität der Anlage, wie man ohne weiteres erkennt, mindestens unter gewissen Betriebsbedingungen überflüssig. Auch der einschlägigen technischen Literatur ist das erfindungsgemäße Verschachtelungsprinzip, wenigstens in der eigentlichen Art der Erfindung, nicht zu entnehmen, weil die betreffenden Darstellungen in aller Regel von klassischen Rechnerstrukturen ausgehen und deswegen für die verschiedenen Teilfunktionen auch streng gegeneinander abgegrenzte Teile von Speichern, Registern, Leitungen und Verarbeitungseinheiten aufweisen. Im übrigen enthalten solche Beschreibungen in aller Regel nicht alle wesentlichen technischen Einzelheiten, die zu einer lückenlosen technischen Offenbarung der Inneren Rechnerstruktur gehören.
-7-409835/0518
In besonders vorteilhafter Ausgestaltung der Erfindung sind Eingänge bzw. Ausgänge der Speiehergruppe, d.h. der Zwischenspeichergruppe, des Kanalwerks und des Hauptspeicherwerks, und des logischen Netzwerks mit Ausgängen bzw. Eingängen -des Akkumulators über getrennte Datensammelwege, die im täglichen Sprachgebrauch Bus-Leitungen genannt werden, verbunden, wobei die Eingänge und Ausgänge gegebenenfalls sowohl die direkten als auch die konjugierten Eingänge bzw. Ausgänge der betreffenden Bausteine sein können. In einer besonderen Ausführungsform ist das geschilderte Merkmal derart ausgewertet, daß die erste der vier Gruppen von Ausgangsleitungen des ersten Speichers mit den entsprechenden Eingängen des Akkumulators über eine getaktete nODER"-Verknüpfungsschaltung verbunden ist.
Die vorbeschriebenen Besonderheiten der Erfindung ermöglichen - über den Stand der Technik hinausgehend -einen Datenverkehr der Yerarbeitungsgruppen mit der Speichergruppe über getrennte Wege, wo es auf Einsparung von Verarbeitungszeit ankommt und über verschachtelte Wege, wo der Mehraufwand an Verarbeitungszeit nicht tragisch ist, aber die mehrfache Ausnützung von Leitungen und Baugruppen eine wesentliche Aufwandsersparnis bringt. Aus diesem Grunde kann die erfindungsgemäße elektronische Digital-Datenverarbeitungs-Anlage als eine Zwischenlösung zwischen der strengen Bus-Maschine und einer Maschine gemäß dem Verschachtelungsprinzip aufgefaßt werden, bei der praktisch alle Zwischenspeicher-, Verarbeitungs- und Leitungsbaugruppen mehrfach ausgenützt werden.
Der mit der Erfindung erzielbare technische Fortschritt
-8-409835/0518
23Ü9029
wird noch dadurch gesteigert, daß die Anzahl der Adressierungsleitungen des zweiten Speichers ein ganzzahliges Vielfaches der Anzahl der Eingangs- und Ausgangsleitungen des logischen Netzwerks und/oder des Akkumulators ist. Wenn dann zusätzlich hierzu eine Gruppe von Eingängen von Registern der Zwischenspeichergruppe über eine Weiche, z.B. einen Zwei-bit-Daten-Selektor, an die Ausgänge einer Addierer-Baugruppe und des Akkumulators angeschlossen sind, ergibt sich eine besonders einfache Art für die Erzeugung der Adresse des Hauptspeichers« Durch diese Möglichkeit kann unter anderem erreicht werden, daß innerhalb der Rechnerarchitektur die Funktionen derart geeignet aufgeteilt sind, z.B. das Leitwerk nicht dauernd durch Arbeiten für die Verwaltung der Daten belegt ist. Andererseits wäre für die Verarbeitung der Adresse dieses Hauptspeichers, der ja eine größere Zahl von Speicherstellen haben soll und damit ein größeres Adreß-Format benötigt, ein mehrfacher Aufwand für Akkumulator, Recheneinheiten, Register und Pufferspeicher erforderlich, wenn das Adreß-Format des Hauptspeichers nicht aufgeteilt verarbeitet werden würde. Auch in dieser Hinsicht vermittelt die Erfindung einen besonders zweckmäßigen Kompromiß zwischen Verarbeitungsgeschwindigkeit und technischem Aufwand.
Eine weitere Besonderheit der Erfindung, die einen zusätzlichen oder von den anderen Besonderheiten unabhängigen technischen Fortschritt zu vermitteln vermag, besteht darin, daß die Anzahl der mit entsprechenden Eingängen einer Adressierungseinheit des Unterspeicherwerks verbundenen Ausgangsleitungen der dritten Gruppe von Ausgangsleitungen des ersten Speichers kleiner ist
-9-409835/0518
23Ü9029
als die Zahl der zur Adressierung verwendbaren Eingänge des ersten Speichers und gegebenenfalls zusätzlich die derart überschüssigen Eingänge des ersten Speichers mit Steuersignale führenden Ausgängen der Steuerungseinheit des Unterspeicherwerks verbunden sind. Auch dann, wenn das an zweiter Stelle genannte Merkmal noch nicht vorliegt, ist vor allem in Verbindung mit den Merkmalen des Hauptanspruchs, bereits ein wesentlicher technischer Fortschritt dadurch begründet, daß mit einer verhältnismäßig kürzeren Länge des Adreßteils im Befehlswort, d.h. mit einer entsprechend kleineren Zahl von Leitungen, eine zeilenweise Adressierung von Zellengruppen des ersten Speichers möglich ist, indem von dem Kunstgriff Gebrauch gemacht wird, daß nicht jede Adresse des ersten Speichers eine Sprungadresse sein soll, sondern z.B. nur jede zweite. Auf diese Weise muß zwar in Kauf genommen werden, daß bei entsprechender Länge eines
Unterprogramms, d.h. z.B. einer ungeraden Zahl von Ein-
/Routine aes Mikroprogramms zelbefehlen für eine Teily im Anschluß daran erst die übernächste Zellengruppe adressiert werden kann und folglich eine Zeile unausgenützt bleiben muß, der damit erkaufte Vorteil der Aufwandsersparnis wegen der geringeren Zahl von Stellen im Befehlswort bzw. von Leitungen und Stellen in den Verarbeitungseinheiten überwiegt den erwähnten kleinen Nachteil jedoch um ein Vielfaches.
Im Falle der Verwertung des ganzen oben angeführten Doppelmerkmals kommt zu dem oben beschriebenen Vorteil der Ersparnis von Baugruppen noch ein weiterer, weil die sogenannte Adreßerweiterung für Sprünge in einen anderen Bereich des ersten Speichers lediglich durch Hllfs-Steüersignale verwirklicht wird, die aus nicht-
-10-409835/0518
verwerteten Operations-Code-Kombinationen von Ausgangsleitungen des ersten Speichers abgeleitet werden. Auch hierbei ist also wiederum der grundlegende Erfindungsgedanke der Verschachtelung von Ausgangsleitungen, Verbindungsleitungen und speichernden bzw. verarbeitenden Baugruppen verwertet.
In optimalem Grade werden die vorbeschriebenen technischen Vorzüge der Erfindung sowohl einzeln als auch in beliebiger Kombination dann zustande gebracht, wenn Folgen von Taktsignalen von solchen Generatoren geliefert werden, die einen Taktgenerator mit mehreren, vorzugsweise zwei verschiedenen Ausgangssignalen und ein Schieberegister, vorzugsweise ein Zwei-bit-Schieberegister enthalten, deren Ausgänge in mehrfacher und verschiedener Weise logisch gemäß der Bool*sehen "UND"- und "ODER"-Regeln verknüpft sind. In diesem Falle ergeben sich dann in der jeweils notwendigen Kombination Folgen von mehr oder weniger verschiedenen Impulsen zu verschiedenen Zeiten, mit denen die Verknüpfungsglieder zwischen den Bausteinen oder Bausteingruppen auf Durchgang oder Sperrzustand geschaltet werden. In dieser Hinsicht ist also der Funktionsablauf des Datentransports grundsätzlich ähnlich demjenigen der bekannten Datenverarbeitungsanlagen, wobei lediglich der Unterschied hervorzuheben ist, daß im Falle der erfindungsgemäßen Verschachtelung von Datensammelwegen die Impulsreihen untereinander eine entsprechend stärker verknüpfte Beziehung haben als sonst.
In besonders einfacher Weise lassen sich solche Beziehungen im Rahmen der Erfindung dadurch verwirklichen, daß die von den Generatoren gelieferten Folgen von Taktsig-
-11-
409835/0518
nalen Eingänge eines weiteren Schieberegisters mit Parallel-Ausgabe und/oder mindestens zweier Zwei-bit-Binär-Dekodierer beaufschlagen, deren Steuersignale führende Ausgangsleitungen mit den genannten weiteren Eingängen von Verknüpfungsgliedern verbunden sind. Weiterhin kann es in Verbindung mit der Erzeugung dieser Steuersignale vorteilhaft sein, wenn das Dekodierwerk mindestens zwei Baugruppen mit Schieberegister und/oder Binär-Dekodierer, vorzugsweise je eine für den ersten und den zweiten Speicher, die Einheiten des Kanalwerks für Ein- bzw. Ausgabe und das Rechenwerk enthält, wobei diese Baugruppen Taktsignale bzw. Steuersignale erzeugen, deren Beginn gegenseitig ausgelöst wird, deren Folgenstrukturen im übrigen aber voneinander unabhängig sind.
Weitere Einzelheiten der Erfindung lassen sich der nachfolgenden Übersichtsdarstellung und der sich daran anschließenden Beschreibung von Ausführungsbeispielen in Verbindung mit der Zeichnung entnehmen; es stellen dar:
Fig. 1: Formate und Aufteilung von Befehlsworten
a) für Mikrobefehle gemäß der Erfindung,
b) für Mikrobefehle bei üblicher Technik,
c) Zusammensetzung der Makrobefehle,
Fig. 2: Das Prinzip-Schaltbild des als Unterspeicherwerk verwendeten Mikroprogrammspeichers mit zugehörigen Baugruppen, nämlich UnterSteuerwerk, Adressierungs- und Steuerungs- Einheiten
Fig. 3; Das Prinzip-Schaltbild des als Rechnerwerk dienenden Rechnerkerns mit einem logischen Netzwerk mit Überlaufregister, Akkumulator, sowie einer Zwischenspeichergruppe und schließlich einem Hauptspeicherwerk, das eine Ein-/ Ausgabegruppe und eine Speichergruppe enthält.
409835/0518 _12_
Fig. 4: Detail-Blockschaltbilder des Rechnerkerns einschließlich Speichergruppe
a) der Zwischenspeicher-Gruppe,
b) der Ein-/Ausgabe- und Speicher-Gruppe,
c) der als logisches Netzwerk eingesetzten Rechenlogik- und Akkumulator-Einheit
Fig. 5; Detail-Blockschaltbilder der Steuerung
a) die Zeitzentralen als Generatoren für Folgen von Taktsignalen,
b) das zum Leitwerk des Rechenwerks gehörende Dekodierwerk,
c) die eine Untergruppe des Dekodierwerks bildende Adreß-Erzeugung
Fig. 6: Funktionssignale
Fig. 7: Block-Schaltbilder einiger der verwendeten integrierten Schaltkreise
a) Zwei-2-bit-Binär-Dekoder,
b) Acht-bit-Schieberegister mit Parallel-Ausgabe,
c) Vier-D-Flip-Flop,
d) Vier-bit-Volladdierer.
In Fig. 1 a) ist das Befehlswort 1 mit zwölf Stellen 2" bis 2 wiedergegeben, die in Gruppen 2 bis 5 zusammengefaßt sind, wobei die Gruppe 2 die Stellen 2° bis 23, die Gruppe 3 die Stelle 24, die Gruppe 4 die Stellen 25 bis 27 und die Gruppe 5 die Stellen 2 bis 211 umfassen. Ein grundlegender G danke der Erfindung besteht nun darin, daß diese vier Gruppen 2 bis 5 je nach der Bedeutung des Mikrobefehlsworts als Datenwort oder Adreßteil, als Adreßteil oder Operationsteil verwendet wird. Dementsprechend werden die zu den Stellen des Befehlsworts gehörenden Ausgangsleitungen des zum Unterspeicherwerk gehörenden Mikroprogrammspeichers je nach dem Operationsteil, d.h. genauer der Gruppe 5 des Befehlsworts dem Akkumulator und/oder einer Zwischenspeicher-Gruppe und/oder der Adressierungs-Einheit des Unterspeicherwerks und/oder einem Dekodierwerk verbunden.
409835/0518 -13~
Diese unterschiedliche Aufteilung des Befehlsworts bzw. der den Stellen zugeordneten Ausgangsleitungen des Mikroprogrammspeichers ist in Fig. 1 a) ausdrücklich wiedergegeben durch die Balkenfelder 6 und 7 für Transport- und Verknüpfungs-Befehle und die Balkenfelder 8 und 9 für Sprungbefehle, wobei bei dem letzteren, der einen Rücksprungbefehl wiedergibt, die Adresse entfallen kann. Die beiden Befehlsgruppen 6 und 7 bzw. 8 und 9 unterscheiden sich durch den Inhalt der höchsten Stellen 10.bzw. 11 mit einer "O" bzw. 12 und 13 mit einer "L". Auf diese Weise ergeben sich mit einer einheitlichen Länge des Befehlsworts drei Arten von Mikrobefehlen unterschiedlicher Funktionen. In einem besonders zweckmäßigen Fall wird dabei die erste Art mit Daten in der Gruppe 2 für Konstanten-Operationen, die zweite Art mit einer Adresse in den Gruppen 2 und 3 für Registerspeicher und Ein-/Ausgabe-Operationen und die dritte Art mit einem Operationsteil ausschließlich in der Gruppe 5 für Sprungoperationen verwendet.
Das vorstehend beschrieben Prinzip der Verschachtelung von Teilen des Mikrobefehlsworts vermittelt den besonderen Vorteil einer außergewöhnlicnsavRedundanz der Mikrobefehls-Speicherorganisation. Die Redundanz, der Anteil an nicht verwerteten Stellen des Befehlsworts, ist bekanntlich vorallem aus dem Grund möglichst niedrig anzustreben, weil nur so ein minimaler Aufwand an Speicherstellen und damit verbunden auch an zugehörigen Leitungen erzielbar ist. Wenn man berücksichtigt, daß es acht Befehle vom ersten Typ mit einem Anteil von nicht genutzten Stellen des Befehlsworts in Höhe von 8,33 %, 56 Befehle vom zweiten Typ und sieben Befehle vom dritten Typ gibt, bei welch beiden
409835/0518
die Redundanz "O" ist, sowie einen Befehl vom vierten Typ gibt mit einer Redundanz von 66,7 %, dann erkannt man, daß bei der der Erfindung zugrunde liegenden mehrfachen Verschachtelung des Mikrobefehlsworts eine Redundanz von insgesamt von nur ca. 2 % in Kauf genommen werden muß.
Vergleicht man damit die Verhältnisse bei einem Mikrobefehlswort 21 der Fig. 1 b), daß auf der gleichen Kombination von Daten-, Adreß- und Operationsteilen aufgebaut ist und somit 2O Stellen 2" bis 2*^ enthalten muß, dann erkennt man deutlich, daß im Falle der Konstanten-Operation mit dem Befehlswort 22 lediglich das Datenfeld 23 und die Operationsteil-Felder 24, 25 und 26 besetzt, dagegen das Adreßfeld 27 und das überhaupt nicht nutzbare Feld nicht ausgewertet werden. Ähnlich ist es im Falle einer Registeroperation mit dem Befehlswort 29, dessen Adreßteil 30 und dessen Operationsteile 31, und 33 genutzt, dessen Datenfeld 34 und Adreß-Restfeld 35 jedoch nicht genutzt werden. Im Falle des Sprungbefehls 36 ist zwar der Adreßteil 37 voll genutzt, von den Operationsteilen sind aber nur diejenigen 38 und 39 genutzt, während das Datenfeld 40 und das zu dem dritten Operationsteil gehörende Feld 41 nicht verwertet werden. Das Befehlswort 42 des RUcksprungbefehls wird zwar hur in seinen Operationsteilen 43 und 44 also noch weniger genutzt, da es aber unter Umständen nur einmal vorkommt, fällt diese hohe Redundanz nicht sehr stark ins Gewicht. Bei insgesamt 64 Befehlen der ersten Art mit neun nicht genutzten Stellen, 64 Befehlen mit acht nicht genutzten Stellen, acht Befehlen mit acht nicht genutzten und
-15-409835/0518
einem Befehl mit sechzehn genutzten Stellen muß somit eine Redundanz von 4O %, d.h. ein um 66,7 % zu aufwendiger Mikroprogrammspeicher in Kauf genommen werden.
Lediglich der Vollständigkeit halber sei anhand der Fig. 1 erwähnt, daß bei der vorliegenden Erfindung der Makrobefehl aus mehreren Worten zusammengesetzt sein soll, wobei der Operationsteil (Makro) ein oder zwei Worte und der Operantenteil zwei bis sechs oder acht Worte enthalten kann, von denen wiederum jeweils drei beispielsweise zu größeren Adressen zusammengefaßt sein können. Es ist entsprechend dem Schema 61 der Fig. Ic) der Makrobefehl "addiere den Inhalt der Feldadresse A zu der Feldadresse B und transportiere das Ergebnis nach Feldadresse A" mit Operationscode "2" und mnemotechnischer Bezeichnung "ADD" aus drei Worten zusammengesetzt. Das Befehlswort 63 mit der mnemotechnischen Bezeichnung "SGT" und dem Operationscode "E" ist aus fünf Worten zusammengesetzt, nämlich innerhalb des Operationsteils aus dem Wort "K" für den Kanal, d.h. die Auswahl des Ein-/ Ausgabegeräts und dem aus drei Worten zusammengesetzten Steuerwort "S" bis "S 3". In ähnlicher Weise lassen sich die Beispiele für den Befehl 64 "Ein-/ Ausgabe-Steuerung" mit der mnemotechnischen Bezeichnung "EAS" und dem Operationscode "D" und den Befehl 65 "Index-Befehl" mit der mnemotechnischen Bezeichnung "IND" dem Operationscode'B" und der Index-Adresse "IA" deuten. Das Beispiel für den Befehl 66 "Index-Register laden" mit der mnemotechnischen Bezeichnung "ILD" und dem Operationscode "FD" soll die
-16-
409835/0518
Verwendung des Operationsteils mit zwei Worten zeigen· Die in Fig. 1 c) wiedergegebenen Beispiele von Makrobefehlen gelten insbesonders für solche Ausführungsformen der Erfindung, bei denen die Speicheradresse die dreifache Länge eines Datenworts oder einer Feldadresse und der Datenbereich die doppelte Länge derselben besitzt.
zum Unterspeicherwerk gehörende In Fig. 2 ist derVMikroprogrammspeicher 101 (MIPSP) mit zwölf Ausgängen über die Ausgangsleitungen 102 bis 113 mit den ebenfalls zwölf Stellen des Pufferspeichers 114 verbunden. Die Ausgänge des Pufferspeichers 114 sind dabei - entsprechend der Aufteilung des Mikrobefehlsworts 1 in Fig. 1 a) in die Gruppen 2 bis 5 - in die Gruppen 115 bis 118 aufgeteilt. Die zu der Gruppe 115 gehörenden Ausgänge des Pufferspeichers 114 werden entsprechend dem grundlegenden Gedanken der Erfindung entweder über die Leitungen 119 mit den Eingängen des Akkumulators oder über die Leitungen 120 mit den Adreß-Eingängen einer Zwischenspeicher-Gruppe oder über die Leitungen 121 und 122 mit einer entsprechenden Anzahl von Eingängen eines als Weiche verwendeten Vierfach-zwei-bit-Datenselektors
123 verbunden. Die Leitung 116 führt über die Leitung
124 zu einem Adreß-Eingang des Unterspeicherwerks oder über die Leitungen 125 sowohl über die Leitung 126 zu einem weiteren Eingang des Vierfach-zwei-bit-Datenselektors 123 als auch über die Leitung 127 zu entsprechenden Eingängen einer Dekodierungs-Baugruppe. Die Leitungen 117 führen über die Leitung 128 entweder über die Leitung 129 zu weiteren Eingängen des Vierfach-zwei-bit-Datenselektors 123 oder über die Leitung 130 zu einer Dekodierungs-Baugruppe.
-17-409835/0518
Die Leitung 118 schließlich, die von den Ausgängen der immer zu einem Operationsteil gehörenden Stellen des Pufferspeichers 114 gehören, sind über die Leitung 131 und die Leitung 132 einerseits mit der Baugruppe 133 für die Steuerung der Sprungtechnik und andererseits über die Leitung 134 mit Eingängen einer Dekodierungs-Baugruppe verbunden. Durch die Funktionssignale A, B, C 135 (vergl. unter in Verbindung mit Fig. 6), sowie UE 136 (Rücklauf der Rechenlogik-Einheit), sowie 137 (AKKU = O).ausgelöst, liefert die Baugruppe 133 entsprechend der Zusammensetzung der Signale auf den Leitungen 132 - Stellen 8 bis 11 des Befehlsworts - Auswahl-Signale 138 für die Adressierung entweder in der unteren oder der oberen Hälfte einer Speichergruppe und 139 für die Adressierung innerhalb des Mikroprogrammspeichers mit Adressen bis 1 k oder zwischen 1 k und 2k. Außerdem werden aus den Taktsignalen A, B, C entsprechend dem Operationsteil über die Leitungen 139, 140, 141 und 142, Ladesignal 140, Taktsignal 141 und Auswahlsignal 142 abgeleitet.
Die bereits erwähnten Leitungen 122, 126, 129 führen zu der einen Gruppe von Eingängen 143, 144 und 145 des als Weiche arbeitenden Vierfach-zwei-bit-Datenselektors 123, während die andere Gruppe von Eingängen über die Leitungen 146, 147 und 148 mit den zugehörigen Ausgängen des Rücksprung-Registers 149 verbunden sind. Die Eingänge 150 des Rücksprung-Registers sind über die Leitung 151 mit den Ausgängen 152 des Adreßzähler-Puffers 153 verbunden, der über die Leitung 154 aus dem Vierfach-zwei-bit-Datenselektor mit den Adressen der Leitungen 122, 126, 129
-18-
409835/0518
geladen wird. Die Ausgänge des Adreßzählers und Puffers sind außerdem über die Leitungen 155, 156 und
- die ersten acht Bits auf den Stellen O bis 7 - über die Leitung 157 mit den Zeilen-Adreßeingängen 158 des Mikroprogrammspeichers 101 und über die Leitung 159
- drei Bits auf den Stellen 8 bis IO - und dem Dekodierer 160, dessen acht Ausgänge 161 und die Leitungen 162 mit Spalten-Adreßeingängen 163 des Mikroprogrammspeichers 101 verbunden.
Im Falle einer Konstanten-Operation werden die auf den Stellen O bis 3 des Pufferspeichers 114 gelesenen Daten über die Leitungen 115 und 119 dem Akkumulator zugeleitet, während die Inhalte der Stellen 5 bis 11 des Pufferspeichers über die Leitungen 117, 118 und die Leitungen 130, 134 der Dekodierungs-Baugruppe zugeleitet werden, die entsprechend dem Bit-Muster weitere Funktionssignale für Transport- und Verknüpfungs-Befehle für die Rechenlogik und Akkumulator-Einheit, sowie die Speicher- und Ein-/Ausgabe-Gruppe ableitet. Im Falle einer Register-Speicher- oder Ein-/Ausgabe-Operation werden die Inhalte der zu den Stellen 0 bis 4 des Pufferspeichers 114 gehörenden Stellen über die Leitungen 120 und 124 den Adreß-Eingängen 164 der Zwischenspeicher-Gruppe und die Inhalte der Stellen 5 bis 11 des Pufferspeichers 114 über die Leitungen 117, 118 bzw. die Leitungen 129, 126 den Eingängen 144, 145 des als Weiche dienenden Vierfach-zwei-bit-Datenselektors als Adresse zugeleitet. Im Falle einer Sprungoperation schließlich werden die Inhalte der Stellen 0 bis 7 des Pufferspeichers über die Leitungen 115, 116, 117 den Eingängen 143 bis des Vierfach-zwei-bit-Datenselektors als Adresse und
-19-
409835/0518
die Inhalte der Stellen 8 bis 11 über die Leitungen 118 und 132 der Baugruppe für die Steuerungs-Sprungtechnik zugeleitet. Dementsprechend wird bei einem Befehl der Gruppe Konstanten-Operationen entsprechend dem Operationscode - Stellen 5 bis 11 des Befehlsworts - die Dateninhalte der Stellen O bis 3 dem Rechnerkern mit Speichergruppe zugeleitet, bei einem Register-Speicher-Ein-/Ausgabe-Befehl die Inhalte der Stellen O bis 4 als Adresse den Adreß-Eingängen der Zwischenspeicher-Gruppe gemäß der Vorschrift des Operationsteils der Stellen 5 bis 11 zugeleitet und schließlich gemäß dem Befehlsinhalt der Stellen 8 bis 11 des Operationsteils die Adressen in den Stellen O bis 7 des Vierfach-zwei-bit-Datenselektors 123 und deren Inhalte über die Leitung 154 in den Adreß-Zähler und -Puffer,143 geladen, wobei also jeweils der Zählerstand, d.h. die Adresse des gerade abgearbeiteten Befehls des Mikroprogrammspeichers abgelegt wird. Im Falle eines Sprungbefehls wird dann die im Adreß-Zähler und -Puffer 143 enthaltene Adresse in das Rücksprung-Register 149 übernommen, von wo sie im Falle eines Rücksprung-Befehls über den Vierfach-zwei-bit-Datenselektor 123 wieder in den Adreß-Zähler und -Puffer 143 geladen wird. In ansich bekannter Weise werden dabei, d.h. jeweils beim Erreichen einer Adresse des Mikroprogramms mittels der Funktionssignale die Speicher-Inhalte in den Pufferspeicher 114 - mit Hilfe des Funktionssignals "Takt" im Mikroprogrammspeicher - übernommen.
In Fig. 3^ist die gelegentlich als Registerblock be zeichnete Zwischenspeicher-Gruppe 201 mit ihren Adreß-Eingängen 202 über den Zähler 203 mit den auf
■{die das Prinzipschaltbild des Rechenwerks zusammen mit dem Hauptspeicherwerk zeigt,
409835/0518
den vom Mikroprogrammspeicher und seinen zugehörigen Baugruppen (Fig. 2) kommenden Leitungen 204 ankommenden Signalen beaufschlagt. Die Inhalte der über die Adreß-Eingänge 202 adressierten Speicher-Stellen der Zwischenspeicher-Gruppe 201 werden über die Leitungen 205 ausgelesen und über die Leitungen 206 geladen. Die Ausgänge 205 sind dabei über die Leitungen 206 und einerseits 207 entweder über die Leitungen 208 mit einem Adreßregister 209 für die Ein-/Ausgabe-Gruppe 210 oder über die Leitung 211 mit der Sammelleitung 212 verbunden und andererseits Ober die Leitung 213 entweder über die Leitung 214 «it dem Adreßregister 215 oder über die Leitung 216 mit dem Vier-bit-Vollader 217. Der Ausgang des Vier-bit-Volladers 217 führt über das als Flip-Flop ausgebildete Schnellregister 218 und die Leitung 219 zu dem einen Eingang 220 des als Weiche dienenden Vierfach-zwei-bit-Datenselektors 221, dessen andere Eingänge 222 über dieLeitung 223 von Signalen auf der Sammelleitung 224 beaufschlagt werden. Die Ausgänge
225 des Adreßregisters 209 führen über die Leitungen
226 zu den Adreß-Eingängen 227 der Ein-/Ausgabe-Gruppe 210, deren Daten-Ausgänge 228 über die Leitung 229 mit der Signalleitung 212 und deren Daten-Eingänge Über die Leitung 231 mit der Sammelleitung 224 verbunden sind. Die Ein-/Ausgabe-Gruppe 210 besitzt zusätzliche Ausgänge 232, die über die Leitungen 233 mit Daten-Eingängen von Ausgabe-Geräten, und zusätzliche Daten-Eingänge 234, die über die Leitungen 235 ■it Daten-Ausgängen von Eingabe-Geräten verbunden sind, worüber im einzelnen noch in Verbindung mit Fig. 4 b) zu sprechen sein wird.
-21-
409835/0518
In ähnlicher Weise wie die Ein-/Ausgabe-Gruppe 210 wird die Speicher-G uppe 236 an ihren Adreß-Eingängen 237 über die Leitungen 238 von den Ausgängen 239 des Adreß-Registers 215 beaufschlagt; die Daten-Ausgänge
240 der Speicher-Gruppe 236 sind über die Leitungen
241 mit der Signalleitung 212 und die Daten-Eingänge
242 über die Leitungen 243 mit der Signalleitung 224 verbunden.
An die Sammelleitung 212 sind über die Leitungen 244 und die Leitungen 245 einerseits die Daten-Eingänge 246 der Weiche 247 und andererseits über die Leitungen 248 die Daten-Eingänge 249 des Puffer-Registers 250 angeschlossen, wobei die zweiten Daten-Eingänge 251 der Weiche 247 über die Leitungen 252, 253 und 254, sowie die Leitungen 255 mit den zu den Stellen O bis 3 des Befehlsworts gehörenden Signalen des Hikroprogrammspeichers und seiner zugehörigen Baugruppen beaufschlagt werden. Die Ausgänge 256 der Weiche 247 sind mit den Eingängen 257 des Akkumulators 258 verbunden, dessen Daten-Ausgänge über die Leitungen 260 zu der Sammelleitung 224 führen. Die Daten-Ausgänge 261 des Puffer-Registers 250 liegen über die Leitungen 262. an den einen Daten- Eingängen 263 der Rechenlogik-Einheit 264, deren andere Eingänge 265 über die Leitung 266 von Daten- Signalen der Sammelleitung 224 beaufschlagt werden. Die Daten-Ausgänge 267 der Rechenlogik-Einheit sind über die Leitungen 268 an die Sammelleitung 212 angeschlossen. Zu der Rechenlogik-Einheit gehört das Rücklaufregister 269, das an sich bekannterweise mit dieser zusammenarbe i te t.
-22-
409835/0518
Wie ansich bereits oben in Verbindung mit Fig. 2 erwähnt, werden die Signale der Stellen 5 bis 11 des Befehlsworts außer - wie im Falle eines Sprungbefehls - ' zur Adressierung bzw. als Operationsteil auch, nämlich im Falle der Transport- und Verknüpfungsbefehle gemeinsam als Operationsteil ausgewertet. Zu diesem Zweck sind die zugehörigen Ausgangsleitungen des Pufferspeichers in Fig. 2 in Fig. 3 durch die Leitungsenden 270 und 271 bezeichnet, die gruppenweise an die Ein gänge 272, 273 der Dekodierungs-Baugruppe 274 angeschlossen. Die Dekodierungs-Baugruppe 274 leitet aus den an ihren Eingängen 272 und 273 anliegenden Signalen bzw. dem daraus gebildeten Bit-Muster Funktionssignale entsprechend der Bedeutung des be treffenden Befehlsworts ab.
Dabei sind bei Jedem der Operationscodes gemäß dem Operationsteil mit den Stellen 8 bis 10 (die Stelle hat bei allen Transport- und Verknüpfungs-Befehlen den Inhalt 0) beispielsweise die Funktionen SPA abspeichern des AKKU-Inhalts LDA laden des AKKUs
ADD binäre Addition
ADU binäre Addition mit Übertrag UND logisch - UND
EXO exklusiv ODER
mehrere der durch den weiteren Operations- bzw. Steuerteil der Stellen 5 bis 7 des Befehlsworts defi nierten Steuerfunktionen
KO Konstanten-Operation
REG Register-Operation
SR Speicher-Operation, Adresse unverändert SR+1 Speicher-Operation, Adresse +1 SR-I Speicher-Operation, Adresse -1
—23—
409835/0518
EA Ein-/Ausgabe-Operation
möglich. An den Ausgängen der Dekodier-Baugruppe 274 treten die Funktionssignale
logisch UND
exklusiv ODER
Addition
übertrag addiert
auf, sowie Signale, die zu Speicher-Befehlen oder Ein-/Ausgabe-Befehlen, Register-Befehlen und Konstanten-Operationen gehören, sowie Signale für Kombinationen der Funktionen
abspeichern des AKKU-Inhalts laden des AKKUs und
binäre Addition mit einer der Steuer-Kennzeichnungen Konstante
Register
Speicher
Ein-/Ausgabe.
Die zu diesen Gruppen gehörenden Leitungs-Gruppen sind in Fig. 3 mit 275, 276, 277 bezeichnet.
Im Falle des Beispiels "LDAREG" werden auf den Leitungen der Gruppe 204 Signale entsprechend derjenigen Adresse über den Zäliler 203 auf den Eingang 202 der Zwischenspeicher-Gruppe 201 geleitet, deren Dateninhalt über die Ausgänge 205 und die Leitungen 206, 207, 211 auf die Signalleitung 212 und von da über die Leitungen 244, 245 auf den einen Eingang 246 der Weiche 247 und von deren Ausgang 256 auf den Eingang 257 des Akkumulators 258 geleitet. Dabei wird also der Akkumulator mit dem Inhalt der adressierten Zellen der Zwischenspeicher-Gruppe geladen. Umgekehrt werden bei dem Befehl SPAREG durch die zugehörigen Funktionssignale
409835/0518
-24-
im Leitungszuge liegenden Verknüpfungsglieder so aufgetaktet, daß das am Ausgang 259 des Akkumulators 258 liegende Signal über die Leitung 260, die Sammelleitung 224, die Leitung 223, dem Eingang 222, der Weiche 221 und von da über die Leitung 206 auf diejenigen Zellen der Zwischenspeicher-Gruppe 201 abgespeichert werden können, deren Adresse über die Leitungsgruppe 204, den Zähler 203 und die Eingangs-Leitung 202 durch entsprechende Signale des Makrobefehlsworts bzw. der zugehörigen Zellen des Pufferspeichers 114 in Fig. 2 eingestellt wird.
Bei Speicher- und unter Umständen bei Ein-/Ausgabe-Befehlen wird die Adresse z.B. der zu lesenden Speicherzellen im Adreßregister 215 abgelegt, in dem der Inhalt der durch den Adreßteil des Befehlsworts angesprochenen Zellen der Zwischenspeicher-Gruppe über die Leitung 206 in diesem Adreßregister geladen wird. Die Adreß-Erzeugung kann dabei in mehreren Schritten erfolgen, z.B. wenn die Adresse 12 bit lang ist und die Länge der in der Zwischenspeicher-Gruppe 201 durch die Adresse am Eingang 202 ausgewählten Worte 4 bit umfaßt, in drei Schritten nacheinander, wobei drei Befehle vor dem eigentlichen Ausführungs-Befehl abzuarbeiten sind, nämlich zuerst die Abspeicherung des Inhalts der unter der Adresse RX der Zwischenspeicher-Gruppe 201 angesprochenen Zelle, dann der Zähler mit einer um eins erhöhten Adresse RX +1 und schließlich der Inhalt der Zelle mit der um zwei erhöhten Adresse RX +2. Wenn also der Inhalt einer bestimmten Zelle der Speichergruppe 236 durch den Befehl AODSR zu dem Inhalt des Akkumulators 258 addiert werden soll, dann wird zunächst die Adresse der zu lesenden Zelle der Speichergruppe
409835/0518 "25~
236 im Adreßregister 215 abgelegt, indem sie entweder ganz oder teilweise, also auch z.B. in zwei S hritten,
c aus einer entsprechenden Zahl von hintereinander liegenden Zellen der Zwischenspeicher-Gruppe 201 mit ■it der Anfangsadresse RX und den Adreßeingang 237 der Speicher-Gruppe 236 zugeleitet wird, dann werden durch die zugehörigen Funktionssignale die Inhalte der so adressierten Zellen der Speicher-Gruppe 236 über die Leitung 241, die Sammelleitung 212 und die Leitungen 244, 248 in dem Puffer-Register 250 geladen und schließlich wird der Inhalt des Puffer-Registers über dessen Eingang 261, die Leitung 262 und den Eingang 263 der Rechenlogik-Einheit mit der aus dem Akkumulator 258 über die Leitung 260, die Sammelleitung 264, die Leitung 266 und den anderen Eingang 265 der Rechenlogik-Einheit in dieser durch eine binäre Addition verknüpft. Das Ergebnis wird dann am Ausgang 267 der Rechenlogik-Einheit 264 abgenommen und über die Leitungen 268, 244, 245 und die Sammelleitung 212, sowie die Weiche 247 und die Verbindungsleitung 256 im Akkumulator 258 abgespeichert. Wenn die Inhalte von zwei Speicherzellen miteinander verknüpft werden sollen, dann ist es mit der im Prinzip in Fig. 3 wiedergegebenen erfindungsgemäßen Einrichtung derart in einfacher Weise möglich, indem die Adressen der betreffenden Zellen der Speicher-Gruppe 236 nebeneinander, d.h. um eins erhöht oder erniedrigt gewählt werden, so daß in diesem Falle die Inhalte des Adreßregisters 215 bzw. seiner Abschnitte durch den Vier-bit-Volladdierer 217, auf dessen Eingangs- Leitung 216 die zugehörigen Signale ja gleichzeitig ankommen und das Schnellregister 218 auf den als Weiche dienenden Vierfach-zwei-bit-Datenselektor 221 und von hier über die Leitung 206 - aber nunmehr um
409835/0518 *"26~
eins erhöht bzw. um eins erniedrigt - in die Zelle mit der Adresse RX der Zwischenspeicher-Gruppe 201 zurückgeschrieb η und dann wieder ausgelesen und in dem Adreßregister 215 abgespeichert wird. Auf diese Art können, wie man ohne weiteres erkennt, sehr leicht die Inhalte von hintereinander liegenden Zellen miteinander verknüpft werden. Dabei ist lediglich zu beachten, daß die Adreßteile, falls die im Adreßregister 215 gespeicherte Adresse aus den Inhalten mehrer Zellen der Zwischenspeicher-Gruppe 201 zusammengesetzt ist, in ausreichend voneinander entfernten Abschnitten der Speicher-Gruppe 236 untergebracht sind, d.h. daß beispielsweise die Teile der Adresse um eine Blocklänge verschieden sind.
Ähnliche Abläufe wie die beschriebenen, gelten auch für Operationen mit der Ein-/Ausgabe-Gruppe 210, lediglich mit dem Unterschied, daß diese Gruppe in der Regel eine kleinere Adresse aufweisen dürfte, deren Länge der Zahl der Kanäle entspricht, die an die Leitungen 233 mit Dateneingängen von Ausgabe-Geräten und die Leitungen 235 mit Datenausgängen von Eingabe-Geräten verbunden sind. Anhand der vorstehenden Beschreibung von Operationen lassen sich auch ohne weiteres alle anderen möglichen Operationen erkennen und verstehen, wie beispielsweise der Datenfluß über die Leitungen 254, 253 und 252 bei Konstanten-Operationen oder die anderen logischen Verknüpfungs-Operationen.
Die Interpretation der Makrobefehle läßt sich bei dem Ausführungsbeispiel der Fig. 3 in folgender Weise durchführen:
409835/0518 ~27~
Im Mikroprogranunspe icher ist u.a. eine Routine "Makrobefehl lesen" abgespeichert, die aus einer größeren Zahl von Einzel-Mikrobefehlen zusammengesetzt ist. Unter diesen Einzelbefehlen befindet sich auch eine Teilroutine, zu deren Anfang der Inhalt derjenigen Zelle der Zwischenspeic'ier-Gruppe gelesen, d.h. in den Akkumulator abgespeichert wird, die gemäß einer bestimmten Vereinbarung grundsätzlich oder bestimmten Bedingungen die Makroprogramm-Adresse enthält. Im ersten Feld des unter dieser Adresse - im Abschnitt der Speichergruppe 236 für Makroprogramm - abgestellten Makro-Befehlsworts ist der Operationsteil enthalten. Bei der erwähnten Teilroutine wird zunächst der im ersten Feld des Makrobefehlsworts stehende Inhalt, d.h. also der Operationscode, in eine gemäß einer weiteren Vereinbarung oder programmtechnischen Festlegung gegebenenfalls hierfür dauernd reservierte Zelle der Zwischenspeicher-Gruppe 201 abgelegt; dies erfolgt in ansich bereits beschriebener Weise durch Laden des Akkumulators und Speichern des AKKU-Inhalts in die betreffende Registerzelle, letzteres also durch einen Registerbefehl der Zwischenspeicher-Gruppe. Zur Interpretation des Makrobefehls wird dann an einer späteren Stelle der Routine "Makrobefehl lesen" der Inhalt der für den Operationscode reservierten Zelle der Zwischenspeicher-Gruppe in den Akkumulator gelesen, so daß, wenn der Makrobefehl beispielsweise lautet "addieren des Inhalts von Feld B vorzeichengerecht auf den Inhalt von Feld A" und dieser Makrobefehl den Operationscode 2 hat, im Akkumulator dann der Operationscode 2 steht. Durch addieren der Konstante 14 zum Inhalt des Akkumulators wird der Inhalt des Akkumulators O. In diesem Fall
409835/0518 ~28~
ist dann der nachfolgende Mikrobefehl SAN, d.h. "Sprung wenn AKKU = O", mit derjenigen Sprungadresse verbunden, auf der die Befehlsroutine "addieren im Mikroprogrammspeicher" abgelegt ist. Vor der Teilroutine, innerhalb der der Operationsteil als Addier-, Suptrahier- oder anderer Befehl interpretiert wird, sind in der Routine "Makrobefehl lesen" andere Teilroutinen abgewickelt, bei denen das Makrobefehlswort hinsichtlich seines Aufbaus aus einer oder mehreren Feldadressen, Längenangaben, Adressen für Kanal oder Steuerung usw. enthalten sind und diese Wort-Bestandteile des Makrobefehls in vereinbarungsgemäß festgelegten Zellen der Zwischenspeicher-Gruppe abgelegt werden.
Die einzelnen Mikrobefehlsroutinen können auf diese Weise - unabhängig von den Adressen der angesprochenen Zellen der Speicher-Gruppe 236 oder der Ein-/Ausgabe-Gruppe - immer in gleicher Weise, d.h. mit einem entsprechend verminderten Aufwand an Mikrobefehlen bzw. Hikrobefehls-Adressen durchgeführt werden. Wenn man also einem derart fortschrittlich aufgebauten Betriebssystem ausgeht und somit sowohl Daten, als auch Adressen einer Zwischenspeicher-Gruppe, als auch Adressen einer Speicher-Gruppe und von Ein-/Ausgabegeräten und schließlich die Dateninhalte der Zellen mit diesen Adressen abwechselnd hintereinander und teilweise gleichzeitig verarbeiten will, dann zeigt sich der große Vorteil der Verschachtelung des Mikrobefehlsworts, wie sie einen grundlegenden Gedanken der Erfindung darstellt, in besonderem Maße. Unabhängig davon bilden aber auch andere Einzelheiten, beispielsweise der Adreß-Erzeugung oder der Adreß-Addition, nicht nur fördernde Einzelheiten, sondern
409835/0518 ~29~
auch weitere zusätzliche Bestandteile des grundlegenden Erfindungs-Gedankens.
In Fig. 4 a) ist die Zwischenspeicher-Gruppe (201 in Fig. 3) aus zwei Speicherblöcken 301, 302, in diesem Ausführungs-Beispiel mit einer Kapazität von 16 χ 16 Worten a 4 bit aufgebaut und wird durch die vom Puffer-Speicher (114 in Fig. 2) des Mikroprogrammspeichers (101 in Fig. 2) über die Leitungen 303 ankommenden und zu den Stellen O bis 3 des Mikrobefehlsworts gehörenden Signale über die Leitung 304 der binäre Umkehrzähler 305 angesteuert, der an seinem Ausgang über die Adreßleitungen 306, 307 und 308 die Adreßeingänge 309, 310 dieser Speicherblöcke 301, 302 beaufschlagt. Die Umschaltung zwischen den Speicherblöcken 301 und 302 erfolgt dabei durch das auf der Leitung 311 ankommende und zu der Stelle 4 des Befehlsworts gehörende Signal über das Flip-Flop-Bauelement 312, dessen Ausgangssignal über die Leitungen 313 und 314 jeweils ein Paar von UND-Gliedern 315, 316 bzw. 317, 318 beaufschlagen. Von den genannten Paaren von UND-Gliedern 315, 316 bzw. 317, 318 wird jeweils eines, nämlich 315, 317 durch das auf der Steuerleitung 319 ankommende Funktionssignal "schreiben in den Registerblock" und das andere 316, 318 durch das auf der Steuerleitung 320 ankommende Funktionssignal "lesen aus dem Registerblock" freigegeben. Je nachdem auf den Steuerleitungen 319 oder 320 ankommenden Funktionssignal wird also entweder die Information aus der Weiche 321 über die Registerblock-Eingangsleitungen 322, 323, 324 in einen der beiden Speicherblöcke 301, 3Ο2 geschrieben oder aus einem dieser beiden Registerblöcke 301, 302 über die Ausgangsleitungen 325, 326, 327 gelesen. Die Wahl zwischen den beiden Speicher
409835/0518
blöcken 301, 302 wird dabei durch den Betriebszustand des Flip-Flop-Bauelements 312 entschieden, d.h. je nachdem, ob die Leitung 314 oder die Leitung 313 das freigebende Steuersignal führt. Das auf der Leitung 311 ankommende Signal und die zu ihm gehörende Stelle des Mikrobefehlsworts bewirken also eine Adreß-ErWeiterung.
Die Weiche 321 wird durch das Funktionssignal SELT "Umschaltung des Registerblock-Eingangs" auf der Steuerleitung 328 von dem auf der vom Akkumulator (vergl. Fig. 3) kommenden Eingangsleitung 329 auf die ■vom Vierfach-Flip-Flop-Bauelement 330 kommende Eingangsleitung 331 umgeschaltet und umgekehrt. Dabei wird also einer der beiden Speicherblöcke 301, 302 mit einer Information entweder von der Eingängsleitung 329 oder von der Eingangsleitung 331 geladen. Ia letzteren Falle ist die Information, also auf der Eingangsleitung 331, gleich der aus dem betreffenden Speicherblock 301 oder 302 über die Leitungen 325, 326 oder 327, sowie die Leitungen 332, 333, 334 ausgelesenen Information, jedoch durch den Vier-bit-Volladdierer 335 um eins erhöht oder erniedrigt oder gleich und vom Ausgang 336 des Vier-bit-Volladdierers 335 über die Leitung 337 auf den Eingang 338 des mit gleicher Stellenzahl aufgebauten Vierfaeh-Flip-Flop-Bauelements 330 weitergeleitet· Dabei wird durch das Signal auf der Leitung 339 entsprechend dem Inhalt der Stelle 6 des Mikrobefehlsworts einerseits und durch das Ausgangssignal 340 des Flip-Flop-Bauelements 341 bestimmt, ob die Veränderung der Information auf der Leitung 334 zum Ausgang 336 hin stellenweise um eins erhöht, erniedrigt oder dieser gleich ist. Das Ausgangssignal 340 des Flip-Flop-Bauelements 341,
409835/0518 ~31~
das zwei Informations-Eingänge und einen Takt-Eingang besitzt, wird an den Setz- bzw. Rücksetz-Eingängen 342, 343 durch die Funktionssignale TUE "Übertrag dazuaddiert" bzw. TSUE "Übertrag Flip-Flop der Adreß-Arithmetik setzen" so geschaltet bzw. getaktet, daß das Ausgangssignal 340 zusammen mit dem Signal auf der Leitung 339 die beschriebene unterschiedliche Wirkung des Vier-bit-Volladdierers 335 hervorruft. Die Taktung erfolgt dabei sowohl bei dem Vierfach-Flip-Flop-Bauelement 330, als auch bei dem Flip-Flop-Bauelement 341 durch das Takt- und Funktionssignal TRU auf der Taktleitung 344.
Die Informationen auf den von den Ausgängen der Speicherblöcke 301, 302 kommenden Leitungen 327, 332, 333 werden über die Eingänge 345, 346, 347 der Vierfach-Flip-Flop-Bauelemente 348, 349, 350 in diese geladen, von wo sie über die Ausgangsleitungen 351, 352, 353, sowie die UND-Glieder 354, 355, 356 auf die zu den Adreß-Eingängen der Speichergruppe (236 in Fig. 3) führenden Sammelleitung 357 (SRADR) weitergegeben werden, wenn auf der zweiten Eingangsleitung der UND-Glieder 354, 355, 356 ein diese öffnendes Signal anliegt. Da die Speicherblöcke 301, 302 jeweils an ihrem Ausgang nur ein Wort abgeben, werden hintereinander die Vierfach-Flip-Flop-Bauelemente 348, 349, 350 mit den auf den Eingängen 345, 346, anstehenden Informationen der Zellen mit den Adressen RX, RX +1 und RX -1 stehenden Inhalte geladen, indem auf die Takteingänge 359, 360, 361 die Funktionssignale TA 1, TA 2 und TA 3 gegeben werden, die, wie weiter unten noch erläutert werden wird, innerhalb des Zyklus "Speicher-Adreß-Aufbereitung" in einem vorgegebenen zeitlichen Abstand einander
409835/0518 ~32"
folgen, wobei innerhalb des zwischen ihnen liegenden Zeitintervalls jeweils einmal der Inhalt einer Zelle der Speicherblöcke 301, 302 gelesen und in eines der Vierfach-Flip-Flop-Bauelemente 348, 349, 350 geladen wird. In ähnlicher Weise wird das Vierfach-Flip-Flop-Bauelement 362 über die Leitung 363 aus einem der Speicherblöcke 301, 302 geladen und die gespeicherte Information über die Ausgangsleitung 364, das UND-Glied 365, sowie die Leitung 366 (EAADR) den Adreßeingängen der Ein-/Ausgabe-Gruppe (210 in Fig. 3) zugeleitet. Die aus einem der beiden Speicherblöcke 301, 302 ausgelesene Information wird außerdem noch über die Sammelleitung 367 anderen in Fig. 4 a) nicht wiedergegebenen Baugruppen zugeführt. Von einer dieser Baugruppen, nämlich dem Akkumulator 258 in Fig. 3, kommt die Sammelleitung 368 zurück, deren Information jeweils komplementär zu der Information auf der Leitung ist.
In Fig. 4 a) ist weiterhin angedeutet, daß die auf den weiteren Leitungen 369 und 370 ankommenden Informationen der Stellen 5 bis 11 des Mikrobefehlsworts über die Gruppenleitungen 371, 372 der Dekodierungs-Baugruppe 373 zugeleitet werden und diese sowohl die Funktionssignale UND, EXO, ADD, ADU in der Gruppe 374, die Funktionssignale SPA, LAD, ADD in der Gruppe 375 und die Funktionssignale K, REG, SR, EA in der Gruppe 376, als auch die Funktionssignale STA (Start EA-Gruppe) auf der Leitung 377 und STSR (Start Speicher) auf der Leitung 378 liefert. Aus diesen Funktionssignalen werden, wie ebenfalls weiter unten noch zu erläutern sein wird, die weiteren Funktionssignale LOAD "laden der
409835/051 8 ~33"
Registerblock-Adresse" am Stelleingang 379 des binären Umkehrzählers 305 und das schon erwähnte Funktionssignal WE "schreiben in den Registerblock" am Takteingang 380 abgeleitet, die in bekannter Weise das Vorwärtszählen bzw. die Übernahme der auf der Leitung 304 ankommenden Information bewirken. Diese Information wird außerdem über die Übertragungs-Leitung 381 der zum Akkumulator gehörenden Weiche (258, 247 in Fig. 3) zugeführt.
In Fig. 4b), in der die Ein-/Ausgabe-Gruppe (210 in Fig. 3) mit der Teilgruppe 401 für die Ausgabe-Einheiten und der T ilgruppe 402 für die Eingabe-Einheiten, sowie die Speichergruppe 403 in etwas weitergehender Auflösung wiedergegeben sind, sind die Interface-Baugruppe 404 über deren Ausgangsleitung 405 und deren Eingangsleitung 406 zwischen der zum Akkumulator (258 in Fig. 3) führenden Sammelleitung
407 und der vom Akkumulator kommenden Sammelleitung
408 angeschlossen. Das gleiche gilt für die Informationsweiche 409 und deren Ausgangsleitung 410 bzw. den Schreib-/Lese-Speicher 411 und dessen Eingangsleitung 412. Von der Teilgruppe 402 für die Eingabe-Einheiten ist entsprechend die Informationsweiche 413 über deren Ausgangsleitung 414 an die Semmelleitung 407 zum Akkumulator angeschlossen.
Die Interface-Baugruppe 404 der Teilgruppe 401 für die Ausgabe-Einheiten ist mit ihren Adreß-Eingängen 415 an die vom einen Adreßregister (209 in Fig. 3) kommende Adreßleitung 416 und mit ihrem Ausgang 417 mit der Befehls-Dekodierungs-Baugruppe 418 verbunden. Diese liefert Funktionssignale für die einzelnen Teileinheiten des nicht wiedergegebenen Schreibwerks,
409835/0518 "34"
wozu die Funktionssignale für die Alpha-Ausgabe, Tabulations- und Leerschritt-Steuerung, Farbband-Umschaltung, Tastatursperre und direktes Ausschreiben, sowie Zeilenschaltung und Zeilenzähler gehören. Entsprechende Befehls-Dekodierungs-Baugruppen für andere Ausgabe-Einheiten sind mit den dafür geeigneten Funktionssignalen mit der Baugruppe 419 angedeutet. Die Interface-Baugruppe 404 gibt an die betreffenden Ausgabe-Einheiten das Taktsignal UTEA "Übernahme Takt Ein-/Ausgabe-Einheiten" ab und erhält von dort das Startsignal STEA "Start Ein-/ Ausgabe-Einheiten".
Die Informationsweiche 413 der Teilgruppe 402 für die Eingabe-Einheiten schaltet ihren Ausgang 414 durch die Funktionssignalgruppe UET "Übernahme Takt" - Funktionsleitung 420 - auf einen der drei Informations-Eingänge 421, 422, 423 um, von denen die beiden ersteren mit den Informations-Ausgängen 424, 425 des Informations-Puffers 426 verbunden sind. Der dritte Informations-Eingang 423 ist an den Ausgang 427 der Status-Baugruppe 428 angeschlossen, durch die der Informations-Zustand der Eingabe-Geräte abgefragt wird. Die Informations-Eingänge 429, des Informations-Puffers 426 sind mit den Informations-Leitungen 431 und 432 verbunden, die beispielsweise an die Ausgänge einer nicht gezeichneten alphanumerischen Tastatur angeschlossen sein können. Dabei können die Informations-Eingänge so aufgeteilt sein, daß für Zehnertasten nur der eine beispielsweise mit 4 bit Umfang und für Alphatasten beide zusammen mit 8 bit Umfang, entsprechend der Zahl der jeweils verfügbaren Zeichen, eingeteilt sind. Zu der Teilgruppe 402 Eingabe-Einheiten gehört
40983S/0518 ~35~
auch noch die Fehlererkennungs-Baugruppe 433, sowie die Steuerungs-Baugruppe 434, deren Informations-Eingänge 435 über die Leitung 436 von der vom Akkumulator kommenden Sammelleitung 408 gespeist und deren Informations-Ausgänge 437 Steuerungs-Funktionssignale abgeben
Der Informations-Puffer 426, die Status-Baugruppe 428, die Fehlererkennungs-Baugruppe 433, sowie die Steuerungs-Baugruppe 434 werden über die Taktleitungen
438 durch Taktsignale Tj· + E, Τχο» TALPHAi TSTAT und TgTE aufgetaktet, die von der Kanal- und Selektor-Erkennungs-Baugruppe 439 abgegeben werden, die ihrerseits über die Adreß-Eingänge 440 von den auf der Adreßleitung 416 ankommenden Signalen beaufschlagt sind. Die Kanal- und Selektor-Erkennungs-Baugruppe
439 liefert außerdem an ihrem Takt-Ausgang 441 das Signal UET, das oben erwähnt worden ist.
Zusammen mit den auf der Adreßleitung 416 ankommenden Signalen, die auch an den Adreß-Eingängen 442 der Adreß-Dekodierungs-Einheit 443 anliegen, kommen entsprechende Signale auf den Adreßleitungen 444 und 445 an, die zu den Adreß-Eingängen 446, 447 der Adreß-Dekodierungs-Einheit 443 gehören. Die Adreß-Dekodierungs-Einheit wertet 4 Bits der an den Adreß-Eingängen 442, 446, 447 ankommenden Signale gesondert aus, so daß eine Adreß-Ausgangs-Gruppe 448 mit sechzehn dekodierten Signalen neben der Adreß-Ausgangs-Gruppe 449 mit den restlichen 8 bit entsteht. Davon werden die letzteren zu der ansich üblichen Adressierung vonSpeicher-Bausteinen benützt, von denen insgesamt acht in der Programmspeicher-Gruppe 450, weitere sieben in der Programmspeicher-
409835/0518
-36-
— «Jo —
Gruppe 451 und einer in der Datenspeicher-Gruppe 452 eingebaut sind. Durch die dekodierten Signale der Adreß-Eingangsgruppe 448 werden die Speicher-Bausteine einzeln adressiert.
Die Informations-Eingänge 453 der Programmspeicher-Gruppe 450, 454, der Programmspeicher-Gruppe 451 und 455, der Datenspeicher-Gruppe 452 sind an die Informations-Eingänge 456, 457, 458 der Informationsweiche 409 angeschlossen, die ihre Ausgangsleitung 410 entsprechend der Funktionssignal-Gruppe UET an ihren Steuer-Eingang 459 schaltet. Die Funktion der Informationsweiche ist außerdem über die Wahlleitung 460 mit Programmwahltasten verbunden, durch deren Betätigung der Ablauf von Programm-Abschnitten bestimmt wird.
Die Programmspeicher-Gruppen können ansich in beliebiger und ansich bekannter Weise aus Speicher-Bausteinen aufgebaut sein. Besonders zweckmäßig sind für diesen Fall solche, die unter der Bezeichnung PROM1 d.h. Programmable read only memory, bzw. programmierbare Lesespeicher, im Handel sind, während im Falle des Datenspeichers, der ein Schreib-/Lese-Speicher sein muß, ähnliche Halbleiter-Speicher zu empfehlen sind, die die Bezeichnung RAM, d.h. Random access memory oder Schreib-/Lese-Speicher haben. Falls anstelle von solchen Halbleiter-Speicher-Bausteinen herkömmliche Kernspeicher-Gruppen Verwendung finden, sind diese in entsprechender Weise zu Gruppen zusammengefaßt und gruppenweise durch Adressen bzw. Gruppen-Wahlleitungen adressierbar.
-37-
409835/0518
In Fig. 4c) ist die Rechenlogik- und Akkumulator-Einheit (247, 250, 258, 264 und 269 in Fig. 3) ähnlich wie bei den anderen Gruppen der Fig. 4 a) und 4 b) mit mehr schaltungstechnischen Einzelheiten wiedergegeben. Der Akkumulator 501 ist sowohl mit seinem direkten Eingang 502, als auch mit seinem komplementären Eingang 503 an die in entsprechender Weise direkte* bzw. komplementären signalführenden Sammelleitungen 504 bzw. 505 angeschlossen. In gleicher Weise sind der direkte Ausgang 506 und der komplementäre Ausgang 507 an die direkte Signal-(5O8) und die komplementäre Signal- (509) Sammelleitung über die Leitungen 510 bzw. 511 angeschlossen. Der direkte und der komplementäre Eingang 5O2, 5O3 sind durch das Negationsglied 512 überbrückt.
An die zum komplementären Eingang 503 des Akkumulators 501 führende Leitung 513 ist das als Weiche 514 wirkende Verknüpfungsglied "verdrahtetes ODER" angeschlossen, dessen einer Eingang 516 über die Leitung 517 mit der Information der ersten vier Stellen des Hikrobefehlsworts "MISPINF" und dessen zweiter Eingang 518 über das Entkopplungsglied und die Leitung 520 durch das Taktsignal "TKON" beaufschlagt wird. Dies bedeutet, daß die Weiche freigegeben und die Mikrospeicher-Information **0...3" dann auf den komplementären Eingang 503 des Akkumulators weitergeleitet wird, wenn das Taktsignal "TKON" als Ergebnis der Dekodierung des Operationsteils der Stellen "5...11" für einen Konstanten-Befehl von der Dekodierungs-Baugruppe (274 in Fig. 3) abgegeben wird.
-38-409835/0518
Die komplementäre Signal-Sammelleitung 505 liegt über die Verbindungsleitung 521 außerdem an einem Eingang 522 des Pufferregisters 523, dessen Ausgang 524 über die Leitung 525 mit dem einen Eingang der Rechenlogik-Einheit "ALE" 527 liegt. Der andere Eingang 528 dieser Rechenlogik-Einheit 527 ist über die Zuführungsleitung 529 an die komplementäre Signal-Sammelleitung 509, die das komplementäre Ausgangssignal des Akkumulators 501 führt, angeschlossen. Das am Ausgang 52O der Rechenlogik-Einheit 527 auftretende Ergebnis-Signal wird über das Verknüpfungsglied 531 "verdrahtetes ODER" und die Leitung 532 auf die komplementäre Signal-Sammelleitung aufgetaktet. Dies erfolgt durch das Taktsignal TADD an der Taktleitung 533, die zu dem anderen Eingang 534 des Verknüpfungsglieds 531 führt.
Dieses Taktsignal TADD gibt in Verbindung mit dem anderen Taktsignal T+ an der zweiten Taktleitung über das UND-Glied 536 und dessen Ergebnis-Signal am Ausgang 537 zusammen mit dem Taktsignal TAKKU auf der Signalleitung 538 und das Verknüpfungsglied und schließlich über den Takteingang 540 die bistabile Kippstufe (Flip-Flop-Bauelement) 541 frei, so daß das am Übertrag-Ausgang 542 gegebenenfalls auftretende Übertrag-Signal über die Leitung 543 an seinem Informations-Eingang 544 direkt und an seinem Informations-Eingang 545 anliegt, über dessen Ausgang 546 die Leitung 547 und das UND-Glied 548 auf den Übertrag-Eingang 549 der Rechenlogik 527 übertragen wird. Das UND-Glied 548 wird durch das an dessen Eingang 550 über die Leitung 551 ankommende Taktsignal TUE freigetaktet, d.h. also,
409835/0518 ~39"
wenn die Dekodierungs-Baugruppe (274 in Fig. 3) aus dem Operationsteil (Signale der Leitungsgruppen 270 und 271 in Fig. 3), d.h. bei einem Mikrobefehl "addieren mit Übertrag" das Taktsignal TUE abgibt.
Die eigentliche Funktion der Rechenlogik-Einheit 527, die, wie der Name ausdrücken soll, sowohl arithmetische, als auch logische Funktionen einschließt, nämlich addieren, addieren mit Übertrag, logisch UND und logisch EXKLUSIV ODER, wird über die Wahlleitungen 552 bis 555 durch Wahlsignale, die an den Wahleingängen 556 bis 559 ankommen, bestimmt. Diese Signale entstehen durch Verknüpfung der Taktsignale T+, Τχ, T und L an den Eingangsleitungen 560 bis 563 der Verknüpfungsgruppe 564. Die Erläuterung weiterer Einzelheiten der Funktion der Rechenlogik-Einheit 527 erübrigen sich, da diese bereits zum allgemeinen Stand der T chnik gehört und hierfür sogar vollständige integrierte Halbleiter-Bausteine zur Verfügung stehen (vergl. Fig. 7 und Erläuterungen hierzu).
Das Pufferregister 523 wird durch das Taktsignal TPU auf der Taktleitung 565 aktiviert, d.h. dabei wird die über die Verbindungsleitung 521 am einen Eingang 522 ankoiiimende Signal in einem Pufferregister 523 gespeichert, wobei sie dann an dessen Ausgang 524 zur Übernahme in die Rechenlogik-Einheit 527 bereit steht. Bis auf die Taktleitungen und die Leitung 547 handelt es sich in Fig. 4 c) bei den dort vorkommenden Leitungen um Informationsleitungen, die je nach dem Ausbau der Baugruppen zweckmäßigerweise vierfach oder achtfach und somit für die Übertragung für 4 bit- oder 8 bit-Informationen eingerichtet sind.
-40-
409835/0518
Dementsprechend liegen an den vier Eingängen 566 des NAND-Verknüpfungsglieds 567 vier Einzelinformationen an, die, wenn alle den Wert L oder 1 bzw. H - HIGH nach der neueren Sprachregelung haben, an dessen Ausgang 568 und der zugehörigen Leitung ein Informations-Signal (1 bit) "AKKU = O" auftreten lassen. Dieses Signal wird, wie bereits oben in Verbindung mit der Erläuterung der Sprungtechnik des Mikroprogrammspeichers erwähnt, bei Sprungbefehlen mit der Bedingung "AKKU = 0" benötigt.
In Fig. 5 sind, wie bereits erwähnt, Detail-Block-Schaltbilder der S euerung, und zwar in Fig. 5 a) für den Taktgenerator oder gelegentlich Zeitzentrale genannt, in Fig. 5b) für die Dekodierung und in Fig. 5 c) für die Adreß-Erzeugung wiedergegeben. In Fig. 5 a) sind die Zeitzentrale "Rechnerkern" einerseits und die Zeitzentrale 602 "Mikroprogramm-Speicher", "Datenspeicher/Programmspeicher" 603 und "Ein-/Ausgabe-Gruppe" 604 andererseits über die Leitungen 605, 606, d.h. Start Mikroprogrammspeicher bzw. Start-Steuerwerk bzw. die Übernahme-Taktleitungen 607, 608, d.h. Übernahme-Taktspeicher bzw. tlbernahmetakt Ein-/Ausgabe verbunden. Außerdem werden die Zeitzentralen 603, 604 für Daten-ZProgrammspeicher bzw. Ein-/Ausgabe-Gruppen über die Startleitungen 609, 610 vom Dekodierer 611 gestartet, der über die Leitung 612 von der Zeitzentrale "Rechnerkern 601 aus beaufschlagt wird. Die Zeitzentrale "Rechnerkern" 601 besteht, wie die anderen Zeitzentralen 602 bis 604, aus Flip-Flop-Taktgeneratoren, die, wie noch anhand von Fig. 6 erläutert werden wird, in bestimmter Weise untereinander und mit anderen Signalen verknüpft werden und somit Impulse verschie-
409835/05 1 8
-41-
dener Dauer und verschiedener Anfangszeiten abgeben (A 1 bis A 3 und D 1 bis D 3) auf den Ausgangsleitungen 613. Die Taktsignale INFUEEA/SR "Übernahmetakt Ein-/Ausgabe oder Speicher"auf der Taktleitung 614 und FEMSRA "Fertigmeldung Speicher Adressen-Erzeugung" auf der Taktleitung 615 bestimmen ebenfalls die Art der bgabe von Start- und Übernahme-Taktsignalen und deren Verarbeitung. Die Zeitzentrale 6O2 "Mikroprogramm" liefert auf ihrer Ausgangsleitung 616 das Taktsignal TMISPU "Mikrospeicher-Information" in das "Mikrospeicher-Pufferregister", das also zu Beginn eines jeden Lesevorgangs von Mikrobefehlen auftritt. Jede der Hauptbaugruppen hat so ihren eigenen Zyklus von Start-, Takt- und Übernahme-Signalen und veranlaßt bei der funktionstechnisch nachfolgenden Hauptbaugruppe die dieser zugeordnete Folge von Start-, Takt- und Übernahme-Signalen. Bezüglich weiterer Einzelheiten kann, da diese inzwischen zum ständigen Rüstzeug des Durchschnitts-Fachmanns gehören, auf das einschlägige Schrifttum verwiesen werden.
In Fig. 5 b) sind die wesentlichen Baugruppen der bereits mehrfach erwähnten Dekodierungs-Baugruppe (z.B. 274 in Fig. 3) als zwei ZWEI-2-bit-Binär-Dekodierer 621 und 622, das Verknüpfungs-Netzwerk 623, die Verknüpfungsglieder-Gruppe 624 und das Verknüpfungsglied 625 wiedergegeben. An den Eingängen 626 bis 629 des ZWEI-2-bit-Binär-Dekodierers 621 sind die Leitungen 630 für die Signale der Stellen "8...1I" des Mikrobefehlsworts, d.h. des Operationsteils angeschlossen, an den Eingängen 631 bis 633 die Leitungen 634 für die Signale der Stellen fl5...7", also der zweiten Gruppe des Mikrobefehls-
409835/0518 ~42~
worts. Der Eingang 645 des ZWEI-2-bit-Dekodierers ist mit dem Eingang 626 des anderen ZWEI-2-bit-Dekodierers 621 verbunden. Das auf diesem Eingang ankommende Signal der Stelle 11 bestimmt dabei definitionsgemäß, wenn es als "L" oder "1" bzw. "H" (nach der neueren Festlegung) gegeben ist, die Sperrung dieser Dekodier-Baugruppe von Fig. 5 b), weil dann ein Sprungbefehl, und nicht ein Transport- oder Verknüpfungsbefehl vorliegt. Im anderen Falle - Inhalt der Stelle "11" des Mikrobefehlsworts "gleich Null" treten die durch die Festlegung des Mikrobefehls-Codes bestimmten Funktionssignale mit ADU, ADD, EXO und OMD entsprechend den vier Arten der logischen Verknüpfungsbefehle bzw. die Funktionssignale LAD und SPA entsprechend den Transport-Befehlen, sowie das gemeinsame Funktionssignal ADD an den Ausgängen 638, 639 auf. Beispielsweise sind die Inhalte der Stellen "8...1O" des Mikrobefehlsworts für den Transportbefehl SPA "0 0 0", während sie für den logischen Mikrobefehl EXO "L 0 O" sein mögen. Diese Festlegung ist natürlich völlig willkürlich und unabhängig vom wesentlichen Erfindungsgedanken.
Die Funktionssignale 636 werden in dem NAND-Glied 640 verknüpft, dessen Ausgang über das Negations-Glied 641 und die Funktions-Signalleitung 642 zusammen mit den Funktionssignalen LAD und SPA dem Verknüpfungs-Netzwerk 623 zugeführt werden. Das Funktionssignal ADU auf der Ausgangsleitung 642 wird, wie durch die Taktleitung 644 angedeutet ist, gegebenenfalls über weitere Entkopplungs- oder Verknüpfungs-Glieder als Taktsignal für "Addition des Übertrags*' verwendet und das Ausgangssignal des NAND-Glieds 640 mit dem Funktionssignal INFUEEA/SR
409835/0518 "43~
auf der Leitung 645, das schon im Zusammenhang mit Fig. 5 a) erwähnt ist, werden sowohl das Ausgangssignal des NAND-Glieds 640 über das UND-Glied 646 zu dem Taktsignal TPU "Übernahme-Takt in Puffer", als auch das Funktionssignal SPA auf der Leitung 647 über das UND-Glied 648 zu dem Taktsignal TAKKU "Übernahme in AKKU" verknüpft.
An den Ausgängen 649 des ZWEI-2-bit-Dekodierers 622 treten - bei entsprechend dem Mikrocode vereinbarter und vorliegender Kombination der Signale von den Stellen "5...7" des Mikrobefehlsworts - die Funktionssignale K, REG und EA auf, die also zu Mikrobefehlen gehören, bei denen eine Konstante, der Inhalt einer Stelle der Zwischenspeicher-Gruppe bzw. die Information eines Ein-/Ausgabe-Geräts verarbeitet wird. Entsprechend treten Funktionssignale an den Ausgängen 650 auf, die zu Speicherbefehlen gehören, und zwar je nachdem, ob die im Mikrobefehl angegebene Adresse unverändert oder um eins erhöht oder um eins erniedrigt für das Lesen einer Zelle der Zwischenspeicher-Gruppe verwendet wird. Da in allen drei Fällen eine Speicher-Operation ausgelöst wird, werden diese drei Funktionssignale an den Ausgängen 650 in dem Verknüpfungs-Glied 625 zu dem Funktionssignal SR auf dessen Ausgang 651 kombiniert und sowohl über die Leitung 652 dem Verknüpfungs-Netzwerk 623 zugeleitet, als auch über die Leitung 653 anderen Baugruppen zugeführt. In entsprechender Wise wird auch das Funktionssignal EA von der Leitung 654 über die Leitung 655 für andere Baugruppen abgezweigt.
Außer durch die bereits erwähnten Funktionssignale
409835/0518 ~44~
der Gruppen LAD, SPA, ADD und K, REG, EA, SR wird das Verknüpfungs-Netzwerk 623 auch durch die Taktsignale A 1, A 2, A 3 und D 1, D 2, D 3 der Signal-Gruppe 656 beaufschlagt. Das Verknüpfungs-Netzwerk 623 verknüpft nun, wie der Name ausdrücken soll, diese Funktionssignale untereinander und außerdem mit den Taktsignalen in vielfältiger Art, so daß an seinen Ausgangs-Gruppen 657, 658, 659 und 660 die für die Verarbeitung der Informationen zwischen und innerhalb der Baugruppen gemäß den bereits beschriebenen Figuren 3, 4a) und 4c) erforderlichen kombinierten Funktions- und Taktsignalen zur Verfügung stehen. So umfaßt die Ausgangs-Gruppe 657 Funktionssignale, die zu dem Teilzyklus "laden der Adresse" innerhalb der Zwischenspeicher-Gruppe (201 in Fig. 3) gehören und die Eingangs-Gruppe 658 Funktionssignale, die entweder das direkte Schreiben der Information in die adressierte Stelle der Zwischenspeicher-Gruppe oder das Lesen aus ihr (WE bzw. ME) betreffen. Die Ausgangs-Gruppe 659 umfaßt dagegen Funktionssignale für die Adreß-Aufbereitung, d.h. für das Laden der Bestandteile der Adresse in das Adreßregister (215 in Fig. 3) aus zwei oder mehreren Stellen der Zwischenspeicher-Gruppe. Dann schließen sich daran die Funktionssignale der vierten Ausgangsgruppe an, die die Übernahme der aus dem Speicher gelesenen Information in den AKKU bzw. das Schreiben des AKKU-Inhalts in den Speicher oder die Übernahme dieser Information in die Rechenlogik-Einheit auftakten. Die beschriebene Auswahl von kombinierten Funktionssignalen, für die mit den Kurzbezeichnungen 661 in Fig. 5b) auch die Zugehörigkeit der in den Ausgangsgruppen 657 bis enthaltenen Funktions- und Takt-Signale zu den Mikro-
409835/0518
-45-
speicher-Befehlen bzw. den entsprechenden Kombinationen aus Transport-Funktionen (SPA, LAD), Verarbeitungs-Funktionen (ADD) und Register-bzw. Speicherzellen (K, REG, EA, SR) angegeben ist, vermittelt eine deutliche Vorstellung davon, in welcher Vielfalt und gleichzeitig Zweckmäßigkeit die Verschachtelung der Stellen-Gruppen des Mikrobefehlsworts und die Verarbeitung der Informationen zwischen den Ein-/Ausgabe- und Speicher-Gruppen einerseits und der Verarbeitungs-Gruppe Akkumulator, Pufferregister und Rechenlogik über die Zwischenspeicher-Gruppe möglich ist. Dadurch wird der gemäß der Aufgabenstellung angestrebte technische Fortschritt nicht nur durch die offensichtlich erkennbaren Vorteile infolge von Einsparungen an Speicher-Elementen und Leitungen erreicht, sondern auch durch eine Anpassungsfähigkeit der Funktion einer gemäß der Erfindung aufgebauten Digital-Daten-Verarbeitungs-Anlage an die verschiedensten Aufgaben der reinen kommerziellen oder technischen Datenverarbeitung und der Datenerfassung, wenn wenigstens eine gewisse Datenvorverarbeitung in Form einer Erstellung von Prüfziffern oder einer Konzentration von Informationen oder Daten erforderlich ist. .
In Fig. 5c) ist in etwas weitergehender Auflösung das Prinzip-Blockschaltbild für die bereits erwähnte Adreß-Aufbereitung wiedergegeben, deren Kernstück das 8-bit-Schieberegister 671 mit Parallelausgabe der um die Taktzeit versetzten, über die Eingangsleitung 672 eingegebenen Taktinformation nacheinander auf den Leitungen 673 bis 680 ist. Diese zeitlich aufeinander folgenden Ausgangs-Taktimpulse werden über das Verknüpfungs-Netzwerk 681
409835/0518 "46~
zu den Taktsignalen TA 1, TA 2 und TA 3 der Gruppe .682 für die Übernahme der aus den Zellen der Zwischenspeicher-Gruppe hintereinander gelesenen Inhalte in das Adreß-Register (215 in Fig. 3) und das Taktsignal WE für das Schreiben der zugehörigen Informationen in das Adreß-Register auf der Ausgangsleitung 683 verarbeitet. Die Taktsignale TA 1, TA 2, TA 3 der Gruppe 682 werden über das UND-Glied 684 zu dem Taktsignal TRU an dessen Ausgang 685 kombiniert, das für die Übernahme des Übertrags der Adreß-Rechnung dient.
Weiterhin werden das zeitlich letzte der Ausgangs- Taktsignale am Ausgang 680 über die Leitung 686 vom weiteren Ausgang 687 des 8-bit-Schieberegisters 671 beaufschlagten Flip-Flop-Bauelement 688 über die Leitung 689 abgegebenes Signal, sowie das auf den ersten Parallel-Ausgang 673 des 8-bit-Schiebe- registers 671 abgegebene Taktsignal über das Flip- Flop-Bauelement 690 zu dem Funktionssignal ME (lesen aus der Zwischenspeicher-Gruppe) auf der Leitung und dem Taktsignal SELT (Umschaltung des Eingangs der Zwischenspeicher-Gruppe bzw. der zugeordneten Weiche (221 in Fig. 3)) auf der Leitung 692 abge arbeitet. Die beiden bereits genannten Signale auf den Leitungen 689 bzw. am Ausgang 673 des 8-bit-Schiebe- registers 671 werden zusammen mit dem auf der weiteren Eingangsleitung 693 ankommende Signal entsprechend dem Inhalt der Stelle "5" des Mikrobefehlsworts in der Verknüpfungs-Einheit 694 zu den Taktsignalen TUE (addieren des Übertrags) auf der Leitung 695 bzw. TRUE (Übertrags-Flip-Flop des Adreß-Addierers setzen) auf der Leitung 696 verknüpft. Das erwähnte Signal auf der Eingangsleitung 693 entspricht dabei der Bedingung, ob ein Übertrag vorhanden ist oder nicht.
409835/0518
-47-
Das zeitlich letzte der Ausgangs-Signale auf der Leitung 680 des 8-bit-Schieberegisters 671 wird in der Verknüpfungs-Einheit 697 mit dem in Fig. 5 b) erwähnten Ausgangs-Funktions-Signal EA und SR den Leitungen 698 zu den Start-Funktions-Signalen STEA und STSR auf den Leitungen 699 verarbeitet. Diese wiederum sind hinsichtlich ihrer weiteren Verwendung in Fig. 5 mit 609 und 610 erwähnt.
Die im Zusammenhang mit Fig. 5c) beschriebene Adreß-Erzeugung, die durch das Start-Signal STAAD am Eingang 665 des Flip-Flop-Bauelements 666 ausgelöst und durch das Fertigmeldungs-Signal FEMSRA an dessen Ausgang 667 gemeldet wird, ist, wie man ohne weiteres erkennt, nicht auf die Zusammensetzung von drei Bestandteilen beschränkt, wie sie in dem besonderen Ausführungs-Beispiel in Verbindung mit den Takt-Signalen der Gruppe 682 beschrieben ist, sondern zweckmäßig auch bei der Zusammensetzung aus zwei Bestandteilen z.B. von je 8 bit zu einer 16-bit-Adresse oder in anderer Weise geeignet.
Sowohl in dem Verknüpfungs-Netzwerk 623, als auch zum Teil in dem Verknüpfungs-Netzwerk 681 erfolgt die Verknüpfung in ansich bekannter Weise durch gleichzeitige Beaufschlagung von üblichen Verknüpfungs- Gliedern, wie z.B. UND-Glieder, ODER-Glieder, NAND-Glieder oder verdrahtetes ODER-Glieder. In beiden Fällen ist ein Teil der dabei verwendeten Signal-Spannungen zeitlich gegeneinander versetzt, während der andere Teil von logischen Bedingungen bestimmt wird, die in Form von Funktionssignalen, z.B. 637 bzw. 649 in Fig. 5 b) an entsprechenden Eingängen
409835/0518 -48-
anliegen. Damit kommen diejenigen Folgen von Funktions-, Start- und Takt-Signalen zustande, die für die erfindungsgemäße aufeinanderfolgende Abwicklung der logischen Verknüpfungen entsprechend den verschachtelten Teilen des Mikrobefehlsworts und deren Mehrzweck-Verwendung erforderlich sind.
Ein wesentlicher Teil der Funktions-, Start- und Takt-Signale, wie sie in Verbindung insbesondere mit Fig. 5 a) bis c) erwähnt sind, ist in Fig. 6 wiedergegeben. In deren oberen Teil zeigt das mit a) und b) bezeichnete Paar 801 von Rechtecksignalen den zeitlichen Verlauf und deren gegenseitiges Verhältnis von zwei Ausgangs-Spannungen eines als Mutter-Taktgenerator (in der Zeitzentrale Rechnerkern 601 der Fig. 5) verwendeten 2-bit-Schieberegisters. Diese Ausgangs-Spannungen werden ebenfalls in dieser Zeitzentrale logisch mit ODER (A) und UND (B), wobei die Ausgangs-Spannung (B) komplementär verknüpft wird, in anderer Weise mit UND, wobei die Ausgangs-Spannung (A) komplementär verwendet wird (C), verknüpft und diese Ausgangs-Spannung (A) wird unverändert als Signal-Spannung (D) verwendet. Diese durch logische Verknüpfung der Ausgangs-Spannungen 801 entstehenden Signal-Spannungen sind im oberen Teil der Fig. 6 in der G uppe 802 wiedergegeben. Die Signal-Spannungen ,A 1'803,^A 2*804,„A 3*805 und „D 1*806, AD 2*807, tD 3*808 sind in Fig. 5 b) in Verbindung mit dem Verknüpfungs-Netzwerk 633 erwähnt. Ähnlich wie dort ist durch die Kurzbezeichnungen 809, 810, 811, 812, 813, 814, angedeutet, für welche Kombination zu Funktions-Signalen diese Signal-Spannungen verwendet werden. Beispielsweise soll durch die Kurzbezeichnungen 814 erklärt sein, daß die Signal-Spannung A 1 für das
409835/0518
-49-
Laden der Adresse der adressierten Stelle der Zwischenspeicher-Gruppe (201 in Fig. 3) in den Zähler (305 in Fig. 4 a) über dessen Eingang (379 in Fig. 4 a) erfolgt und in Verbindung mit Konstanten-Befehlen benötigt wird, zu denen auch die Takt-Signale TKON und die Funktions-Signale LADK und ADK "AKKU laden mit Konstanten" und "Konstante addieren zum Inhalt des AKKU" gehören, die das Takt-Signal TKON "Auftakten Konstanten-Information" auslösen. In ähnlicher Weise wird die Signal-Sapnnung A 3 804, wie die Kurzbeschreibungen 810 andeuten, als Start-Signal für die Adreß-Erzeugung (STAAD) und für die Funktions-Signale Schreiben und Lesen in bzw. aus der Zwischenspeicher-Gruppe usw. verwendet. Die entsprechenden Verwendungen der anderen Signal-Sapnnungen für die Verknüpfungs-Funktionen ergibt sich ohne weiteres aus einem Vergleich der Signal-Spannungen im oberen Teil der Fig. 6 mit der Beschreibung in Verbindung mit den Blockschaltbildern der Fig. 2 bis 5.
Im unteren Teil der Fig. 6 sind Signal-Spannungen wiedergegeben, die bei dem Teilzyklus "Adreß-Erzeugung" (vergl. z.B. die obige Beschreibung in Verbindung mit Fig. 4 a) und Fig. 5 c), die ebenfalls von einem Taktgenerator abgeleitet werden, dessen Ausgangs-Spannung mit 831 bezeichnet ist und die von dem Start-Signal 832 des Start-Stop-Flip-Flop-Bauelements (666 in Fig. 5c) ausgelöst wird. Die zeitlich ersten dadurch ausgelösten Funktions-Signale, nämlich das Funktionssignal 833 ME "lesen aus der Zelle der Zwischenspeicher-Gruppe" und Takt-Signal für den Übertrag TUE bzw. TSUE 834 (entstehend aus der Verknüpfung in der Verknüpfungs-Einheit 694 der Fig. 5 c) bewirken also die mit diesen Bezeichnungen
409835/0518
angedeuteten Informations-Verarbeitungen. Zum zeitlich nächsten Zeitabschnitt gehören die Takt-Signale „TA 1*835 und TRÜ 836, die in Verbindung mit dem Verknüpfungs-Netzwerk 681 als dessen Ausgangs-Spannungen 682 und mittelbar auch 685 in Fig. 5c) beschrieben sind. Daran schließt sich das Paar 837 von Signal- Spannungen, nämlich das Takt-Signal 838 für die Umschaltung des Zwischenspeicher-Gruppe-Eingangs SELT in Verbindung mit dem Funktions-Signal WE 839 "schreiben in die adressierte Zelle der Zwischenspeicher-Gruppe".
In entsprechender Weise, lediglich um den Zeitabstand zwischen dem Takt-Signal „TA l" 835 und dem Takt-Signal ^TA 2 840 verschoben, wiederholen sich die in Verbindung mit dem ersten Teil der Speicher-Adresse beschriebenen Funktionen für den zweiten Teil als Folge des Takt-Signals /TA 2#/840 und in wiederum entsprechender Weise für den dritten Teil in Verbindung mit dem Takt-Signal ^TA 3 841. Den Abschluß der Signal-Folge der Adreß-Erzeugung bilden das Lösch-Taktsignal 842, das Signal STSR bzw. STEA 843 für den Start des Speichers oder des Ein-/Ausgabe-Geräts (609, 610 in Fig. 5a) und das Signal FEMSPA 844 (Fertigmeldung der Speicher-Adreß-Aufbereitung). An die eben beschriebenen Signal-Folgen für die Speicher-Adreß-Erzeugung schließen sich dann entweder Funktions-Signale des oberen T ils der Fig. 6 an oder andere Funktions- Signale, die dem übrigen Teil der Beschreibung ohne weiteres entnommen werden können.
In Fig. 7 sind der Vollständigkeit halber, d.h. um das Verständnis einiger Teile der Beschreibung, in
A0983S/0518 ~51~
denen Funktions-Baugruppen lediglich als Blöcke mit Ein- und Ausgängen ohne ausführliche Funktions-Beschreibung erwähnt sind, zu erleichtern, die Schaltbilder, Anschluß-Zeichnungen und Tabellen für das logische Verhalten von einigen ausgewählten Halbleiter-Bausteinen dargestellt, die Jedoch lediglich weitere Angaben über deren funktionelles Verhalten vermitteln sollen, dagegen keine bindende Bedeutung über deren ausschließliche Verwendung im Zusammenhang mit der Erfindung. Da diese Halbleiter-Bausteine, wie auch die Darstellungen im einzelnen zeigen, zu dem durch das industrielle Angebot von höher integrierten Halbleiter-Bausteinen gehören, dürfte sich eine ausdrückliche Beschreibung des Aufbaus und des funktioneilen Verhaltens dieser Bausteine erübrigen.
Mit Rücksicht hierauf sei lediglich gesagt, daß Fig. 7 a) die Anschluß-Zeichnung 901, das Block-Schaltbild 902 und die Tabelle 903 für das logische Verhalten eines 2-bit-Binär-Dekoders wiedergibt, wie er beispielsweise zweifach in der Gruppe für die Verknüpfung der Funktions-Signale von Fig. 5 b) Verwendung finden kann und mit dieser Fig. 5 b) beschrieben ist. Das 8-bit-Schieberegister (671 in Fig. 5 c) kann durch einen Halbleiter-Baustein besetzt sein, dessen Anschluß-Schaltung 904, Block-Schaltbild 905 und dessen Impuls-Diagramm 906 mit einem Beispiel der aufeinanderfolgenden Ausgangs-Spannungen bei einem durch die zeitliche Impuls-Folge 907 gegebenen Eingangs-Signale in Fig. 7 b) wiedergegeben sind. Als Beispiel für einen handelsüblichen Baustein entsprechend den Flip-Flop-Bausteinen (330 in Fig. 4 a bzw. 218 in Fig. 3) sind in Fig. 7 c) das Anschluß-Schaltbild 908, das Detail-Schaltbild 9O9
409835/0518 -52~
und die Tabelle 910 für das logische Verhalten eines 4-D-Flip-Flop wiedergegeben. Fig. 7 d schließlich zeigt das mit dem Anschluß-Schaltbild vereinigte Block-Schaltbild 911 und die Tabelle 912 für das logische Verhalten eines handelsüblichen 4-bit-Volladdierers (z.B. 217 in Fig. 3).
Die Wiedergabe von Einzelheiten handelsüblicher Bausteine für die übrigen Bauelemente und Baugruppen dürfte sich, da der auf dem Gebiet der Datenverarbeitung tätige Durchschnitts-Fachmann diese Dinge entweder ohne weiteres kennt oder den zahlreichen Tabellen und Druckschriften netnehmen kann, erübrigen. Überdies wäre eine ins einzelne gehende Darstellung der Funktionen einer Rechenlogik-Einheit, wofür es bereits handelsübliche 4-bit-arithmetische-Logik-Einheiten oder Rechenelemente gibt, eine Belastung der Beschreibung der vorliegenden Erfindung, weil hierbei viele allgemeine bekannte und geläufige Einzelheiten wiederholt werden müßten. Deswegen ist die Beschreibung insbesondere in Verbindung mit Fig. 4c) darauf beschränkt worden, daß die Funktionswahl entsprechend der gewünschten logischen Betriebsart durch die vier Wahlleitungen (556 bis 559 in Fig. 4 c) von den zugehörigen Takt-Signalen herbeigeführt wird. Es bedarf jedenfalls keiner ausführlichen Darlegung, daß für die dabei vorkommenden logischen Betriebsarten die zugehörigen Beschreibungen gemäß der Booleschen Algebra keiner weiteren Erläuterung bedarf. Auch bezüglich der weiteren Einzelheiten, z.B. Wahl der Funktion mit positiver oder negativer logischer Verwendung für Subtraktion, Verwendung des Komperator usw., kann auf das vorhandene Schrifttum verwiesen werden.
A09835/0B1 8

Claims (1)

  1. "Minicomputer"
    19. Februar 1973 Dr.Bi/ML/KN
    5. Fassung
    Patentansprüche
    ' Elektronische Digital-Datenverarbeitungs-Anlage der Gattung mit Parallelverarbeitung mehrerer binärer Signale,
    bestehend aus einem Unterspeicherwerk, einem Rechenwerk mit zugehörigem Leitwerk und einem Netzgerät, sowie zugehörigen Stromquellen und Generatoren für Folgen von Taktsignalen,
    wobei das Unterspeicherwerk einen ersten Speicher aus .matrixförmig gruppierten Zellen enthält, der bei zähleradressierbarer zeilenweiser Beaufschlagung mit Eingangstaktsignalen gemäß den jeweiligen Zellenwerten Gruppen von binären Signalen an seine Ausgangsleitungen abgibt, und dem ersten Speicher ein Untersteuerwerk mit Adressierungs- und Steuerungseinheiten zugeordnet ist,
    wobei ferner das Rechenwerk aus einem logischen Netzwerk rait Überlaufregister, einem Akkumulator, einer Zwischenspeichergruppe mit Registern für binäre Ein- und Ausgabesignale, einem Kanalwerk, gegebenenfalls einem Vorrangwerk, und einem Hauptspeicherwerk aufgebaut ist, das einen zweiten aus matrixförmig gruppierten Zellen aufgebauten Speicher enthält, der bei zeilenweise zähleradressierbarer Beaufschlagung mit Eingangstaktsignalen gemäß den Zellenwerten Gruppen von binären
    409835/0518
    Signalen abgibt und von dessen Zellen mindestens eine Gruppe zusätzlich solche auf ihre Eingänge gelegte Gruppen von binären Signalen speichert,
    wobei ferner das dem Rechenwerk zugeordnete Leitwerk ein Dekodierwerk für die Auswertung der Folgen von Taktsignalen als Steuersignale auf getrennten Ausgangsleitungen enthält,
    und schließlich Geräte für Ein- bzw. Ausgabe von Daten an das Kanalwerk des Rechenwerks angeschlossen sind,
    dadurch gekennzeichnet, daß die Ausgangsleitungen des ersten Speichers (101 in Fig. 2) in vier Gruppen (115 bis 118) zusammengefaßt sind, von denen eine erste (115) mit entsprechenden Eingängen sowohl der Adressierungs- Einheit (143 bzw. 123) des Unterspeicherwerks (Fig.2) als auch des Akkumulators (258 bzw. 247 in Fig. 3) und/oder der Zwischenspeichergruppe (201), eine zweite
    (116) mit entsprechenden Eingängen sowohl der Adressierungseinheit (123) des Unterspeicherwerks (Fig. 2) als auch der Zwischenspeichergruppe (201, 203), eine dritte
    (117) mit entsprechenden Eingängen sowohl einer Adressierungseinheit (123) des UnterSpeicherwerks (Fig. 2) als auch des Dekodierwerks (274) und eine vierte (118) mit entsprechenden Eingängen sowohl einer Steuerungseinheit (133) des Unterspeicherwerks (Fig. 2) als auch des Dekodierwerks (274) über Verknüpfungsglieder (z.B. 531 in Fig. 4c), insbesondere UND-Glieder, verbunden sind, von denen jeweils ein weiterer Eingang (534) an einem ein Taktsignal führenden Ausgang des Dekodierwerks (274) liegt.
    -3-
    409835/0518
    -•-
    -ST-
    2. Elektronische Digital-Datenverarbeitungs-Anlage nach Anspruch 1,
    dadurch gekennzeichnet, daß eine Ausgangsleitung der vierten Gruppe mit einem Eingang einer Selektorschaltung verbunden ist, deren andere Eingänge von übrigen Signalen der dritten und der vierten Gruppe beaufschlagt werden.
    3. Elektronische Digital-Datenverarbeitungs-Anlage nach Anspruch 1,
    dadurch gekennzeichnet, daß die Steuerungseinheit des Unterspeicherwerks und das Dekodierwerk des Leitwerks zu einer Verknüpfungs-Dekodier-Schaltung, insbesondere inÜer Technik der integrierten Halbleiterschaltungen (TTL, MSI, LSI, MOS) elektrisch und/oder baulich zusammengefaßt sind.
    4. Elektronische Digital-Datenverarbeitungs-Anlage nach einem der Ansprüche 1 bis 3,
    dadurch gekennzeichnet, daß Eingänge bzw. Ausgänge der Speichergruppe und des logischen Netzwerks mit Ausgängen bzw. Eingängen des Akkumulators über getrennte Datensammelwege (sogenannte Bus-Leitungen) verbunden sind.
    5. Elektronische Digital-Datenverarbeitungs-Anlage nach Anspruch 4,
    dadurch gekennzeichnet, daß Jeweils direkte und konju-
    409835/061 8
    230S029
    gierte Eingänge bzw. Ausgänge der Speichergruppe und des Akkumulators über getrennte Doppel-Datensammelwege verbunden sind.
    6. Elektronische Digital-Datenverarbeitungs-Anlage nach einen der Ansprüche 1 bis 5,
    dadurch gekennzeichnet, daß die erste der vier Gruppen von Ausgangsleitungen des ersten Speichers mit den entsprechenden Eingängen des Akkumulators über eine getaktete "ODER"-Verknüpfungsschaltung verbunden ist.
    7· Elektronische Digital-Datenverarbeitungs-Anlage nach Anspruch 6,
    dadurch gekennzeichnet, daß die Anzahl der Adressierungsleitungen des zweiten Speichers ein ganzzahliges Vielfaches der Anzahl der Eingangs- und Ausgangsleitungen des logischen Netzwerks und/oder des Akkumulators ist.
    8· Elektronische Digital-Datenverarbeitungs-Anlage nach Anspruch 7,
    dadurch gekennzeichnet, daß eine Gruppe von Eingängen von Registern der Zwischenspeichergruppe über eine Weiche, z.B. einen Zwei-bit-Daten-Selektor, an die Ausgänge einer Addierer-Baugruppe und des Akkumulators angeschlossen sind.
    -5-
    /»09835/0518
    -n-
    9· Elektronische Digital-Datenverarbeitungs-Anlage nach einem der Ansprüche 1 bis 8,
    dadurch gekennzeichnet, daß die Anzahl der mit entsprechenden Eingängen einer Adressierungseinheit des Unterspeicherwerks verbundenen Ausgangsleitungen der dritten Gruppe von Ausgangsleitungen des ersten Speichers kleiner ist als die Zahl der zur Adressierung verwendbaren Eingänge des ersten Speichers und gegebenenfalls zusätzlich die derart überschüssigen Eingänge des ersten Speichers mit Steuersignale führenden Ausgängen der Steuerungseinheit des Unterspeicherwerks verbunden sind.
    10. Elektronische Digital-Datenverarbeitungs-Anlage nach Anspruch 9,
    dadurch gekennzeichnet, daß im Zuge der an die Ausgänge der Steuerungseinheit des Untersteuerwerks führenden mit Steuersignalen beaufschlagten Leitungen Verknüpfungsglieder eingeschaltet sind, deren zweiter Eingang mit einem Ausgang des logischen Netzwerks des Rechenwerks bzw. dessen Überlaufregister verbunden ist·
    11. Elektronische Digital-Datenverarbeitungs-Anlage nach einem der Ansprüche 1 bis 10,
    dadurch gekennzeichnet, daß Folgen von Taktsignalen von Generatoren geliefert werden, die einen Taktgenerator mit mehreren, vorzugsweise zwei verschiedenen Ausgangssignalen und ein Schieberegister, vorzugsweise
    -6-
    409835/0518
    ein Zwei-bit-Schieberegister, enthalten, deren Ausgänge in Mehrfacher und verschiedener Weise logisch (UND, ODER) verknüpft sind und an Eingängen eines weiteren Schiebe- ' registers mit Parallel-Ausgabe und/oder mindestens zweier Zwei-bit-Binär-Dekodierer liegen, deren Steuersignale führende Ausgangsleitungen mit den genannten weiteren Eingängen von Verknüpfungsgliedern verbunden sind.
    12· Elektronische Digital-Datenverarbeitungs-Anlage nach Anspruch 11,
    dadurch gekennzeichnet, daß das Dekodierwerk mindestens zwei Baugruppen mit Schieberegister und/oder Binär-Dekodierer, vorzugsweise je eine für den ersten und den zweiten Speicher, die Einheiten des Kanalwerks für Ein-/ bzw· Ausgabe und das Rechenwerk, enthält, die Taktsignale bzw. Steuersignale erzeugen, deren Beginn gegenseitig ausgelöst wird, deren Folgenstrukturen im übrigen aber voneinander unabhängig sind.
    409835/0518
    are..
    Leerseite
DE2309029A 1973-02-23 1973-02-23 Elektronische Digital-Datenverarbeitungs-Anlage mit Mikroprogrammsteuerung Expired DE2309029C2 (de)

Priority Applications (8)

Application Number Priority Date Filing Date Title
DE2309029A DE2309029C2 (de) 1973-02-23 1973-02-23 Elektronische Digital-Datenverarbeitungs-Anlage mit Mikroprogrammsteuerung
NL7402005A NL7402005A (de) 1973-02-23 1974-02-14
JP49020492A JPS50124543A (de) 1973-02-23 1974-02-22
AT146774A AT335203B (de) 1973-02-23 1974-02-22 Elektronische digital-datenverarbeitungs-anlage der gattung mit parallelverarbeitung mehrerer binarer signale
CH249774A CH589894A5 (de) 1973-02-23 1974-02-22
FR7406093A FR2219463B1 (de) 1973-02-23 1974-02-22
CA193,353A CA1009762A (en) 1973-02-23 1974-02-25 Data processing system using plural category instructions
US445134A US3914746A (en) 1973-02-23 1974-02-25 Electronic data-processing system and method of operating same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2309029A DE2309029C2 (de) 1973-02-23 1973-02-23 Elektronische Digital-Datenverarbeitungs-Anlage mit Mikroprogrammsteuerung

Publications (2)

Publication Number Publication Date
DE2309029A1 true DE2309029A1 (de) 1974-08-29
DE2309029C2 DE2309029C2 (de) 1985-10-03

Family

ID=5872889

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2309029A Expired DE2309029C2 (de) 1973-02-23 1973-02-23 Elektronische Digital-Datenverarbeitungs-Anlage mit Mikroprogrammsteuerung

Country Status (8)

Country Link
US (1) US3914746A (de)
JP (1) JPS50124543A (de)
AT (1) AT335203B (de)
CA (1) CA1009762A (de)
CH (1) CH589894A5 (de)
DE (1) DE2309029C2 (de)
FR (1) FR2219463B1 (de)
NL (1) NL7402005A (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2631590B1 (de) * 1976-07-14 1977-10-20 Diehl Fa Elektronisches geraet mit laufender digitaler anzeige der zeit
DE2846686C2 (de) * 1978-10-26 1984-07-19 Siemens AG, 1000 Berlin und 8000 München Programmierbares Schaltwerk

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4020472A (en) * 1974-10-30 1977-04-26 Motorola, Inc. Master slave registers for interface adaptor
JPS5193138A (en) * 1975-02-12 1976-08-16 Johoshorisochini okeru kyotsujohono densohoshiki
US4037213A (en) * 1976-04-23 1977-07-19 International Business Machines Corporation Data processor using a four section instruction format for control of multi-operation functions by a single instruction
JPS5846734B2 (ja) * 1976-04-30 1983-10-18 富士通株式会社 デ−タ読み書き方式
US4064554A (en) * 1976-08-16 1977-12-20 Texas Instruments Incorporated Microcomputer with code conversion
JPH01204147A (ja) * 1988-02-09 1989-08-16 Toshiba Corp アドレス修飾回路
JPH03186928A (ja) * 1989-12-16 1991-08-14 Mitsubishi Electric Corp データ処理装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3629853A (en) * 1959-06-30 1971-12-21 Ibm Data-processing element
FR1389413A (fr) * 1962-12-05 1965-02-19 Bull Sa Machines Procédé d'exploitation séquentielle de données enregistrées dans une mémoire, ou partie de mémoire et représentant à la fois des tables d'adresses, de résultats de calculs et de commande de fonctions
US3644900A (en) * 1968-11-30 1972-02-22 Tokyo Shibaura Electric Co Data-processing device
DE1914578B2 (de) * 1969-03-21 1972-05-10 Siemens AG, 1000 Berlin u. 8000 München Programmgesteuerte datenverarbeitungsanlage, insbesondere fuer die abwicklung von vermittlungsvorgaengen in einer fernsprechvermittlung
US3657705A (en) * 1969-11-12 1972-04-18 Honeywell Inc Instruction translation control with extended address prefix decoding
US3700873A (en) * 1970-04-06 1972-10-24 Ibm Structured computer notation and system architecture utilizing same
US3718912A (en) * 1970-12-22 1973-02-27 Ibm Instruction execution unit
US3764988A (en) * 1971-03-01 1973-10-09 Hitachi Ltd Instruction processing device using advanced control system
US3909789A (en) * 1972-11-24 1975-09-30 Honeywell Inf Systems Data processing apparatus incorporating a microprogrammed multifunctioned serial arithmetic unit

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US-Buch Microprogramming S. Husson, Prentice Hall Inc. 1970 S. 321-328 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2631590B1 (de) * 1976-07-14 1977-10-20 Diehl Fa Elektronisches geraet mit laufender digitaler anzeige der zeit
DE2846686C2 (de) * 1978-10-26 1984-07-19 Siemens AG, 1000 Berlin und 8000 München Programmierbares Schaltwerk

Also Published As

Publication number Publication date
CH589894A5 (de) 1977-07-29
JPS50124543A (de) 1975-09-30
AT335203B (de) 1977-02-25
DE2309029C2 (de) 1985-10-03
FR2219463B1 (de) 1977-09-16
ATA146774A (de) 1976-06-15
US3914746A (en) 1975-10-21
FR2219463A1 (de) 1974-09-20
NL7402005A (de) 1974-08-27
CA1009762A (en) 1977-05-03

Similar Documents

Publication Publication Date Title
DE2259725C3 (de) Funktionsspeicher aus assoziativen Zellen mit mindestens vier Zuständen
DE2536622C2 (de) Verzweigungssteuerung mit flexibler Auswahl von Steuerworten
DE2829668B2 (de) Kanaldatenpufferspeicher
DE2457612A1 (de) Mikroprogrammier-steuersystem
DE3689006T2 (de) Mikroprogrammsteuersystem.
DE2926322C2 (de) Speicher-Subsystem
DE3232600A1 (de) Zeitmultiplexschaltmatrix
DE1474095B1 (de) Programmgesteuerte Datenverarbeitungsanlage
DE2744434A1 (de) Prozessteuersystem und verfahren zur prozessteuerung
DE2423265C3 (de) Optimierende Rechenmaschine
DE1190706B (de) In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine
DE1449544A1 (de) Datenverarbeitende Maschine mit ueberlappend abrufbarem Speicherwerk
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE2309029A1 (de) Elektronische digital-datenverarbeitungs-anlage der gattung mit parallelverarbeitung mehrerer binaerer signale
DE1524898C3 (de) Datenspeicher mit direktem mehrdimensionalen Zugriff zur gleichzeitigen Entnahme mehrerer Wörter
DE2415600A1 (de) Speicher fuer datenverarbeitungssystem und verfahren zur datenverarbeitung
DE2513063A1 (de) Integrierter rechner oder rechenwerk fuer wahlweise acht oder zwoelf ziffern mit einer bedingten verknuepfungs- aenderungsschaltung
DE2136210A1 (de) Zentraleinheit fur eine EDV-Anlage
DE2459476C3 (de)
DE2828761C2 (de) Anordnung zum Kodieren von Datenbits
DE2233164C3 (de) Schaltungsanordnung zur Übertragung von aufeinanderfolgenden Bitstellen zwischen zwei Registern
DE69206604T2 (de) Schnelle Addierkette.
DE2163435A1 (de) Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik
DE2459476A1 (de) Schaltungsanordnung fuer nichtzyklische datenpermutationen
DE2265696C2 (de) Rechenanordnung

Legal Events

Date Code Title Description
OD Request for examination
OGA New person/name/address of the applicant
8125 Change of the main classification

Ipc: G06F 9/22

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee