DE2318069C2 - Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix - Google Patents
Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer MatrixInfo
- Publication number
- DE2318069C2 DE2318069C2 DE2318069A DE2318069A DE2318069C2 DE 2318069 C2 DE2318069 C2 DE 2318069C2 DE 2318069 A DE2318069 A DE 2318069A DE 2318069 A DE2318069 A DE 2318069A DE 2318069 C2 DE2318069 C2 DE 2318069C2
- Authority
- DE
- Germany
- Prior art keywords
- micro
- commands
- register
- address
- sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
- G06F9/223—Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
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
Die vorliegende Erfindung betrifft eine Rechenanlage nach dem Oberbegriff des Patentanspruchs 1.
Bekanntlich werden binäre elektronische Rechner entworfen und gebaut, um eine vorbestiinmte Gruppe
von Befehlen auszuführen, zum Beispiel:
Binäre Summe, binäre Subtraktion, Dezimalsumme. Dezimalsubtraktion, Einschreiben in ein Register aus einer
Speicherzelle, Verschieben, Vergleichen usw.
Dem Programmierer stehen nur diese Befehle zur Verfugung, der beim Aufstellen des Arbeitsprogramms
für den Rechner diese Befehle verwenden muß, ohne die Weise in Betracht zu ziehen, in welcher sie durch den
Rechner ausgeführt werden.
Praktisch umfassen die Befehle, was den Rechner betrifft, eirc Folge von Gruppen aus Grundoperationen,
wie beispielsweise das Bilden vorbestimmten Schaltungen eines logischen Nct/.wcrks oder die Übertragung
von geeigneten elektrischen Signalen durch das elektrische Netzwerk.
Diese Grundoperationen werden als »Mikrooperationcn« bezeichnet, wobei die Gruppe aus gleichzeitig,
d. h. in einem einzigen Grundtaktintervall ausgeführten Mikrooperationcn als »Mikrobefehl« bezeichnet wird.
Die Folge von zum Ausführen eines einzigen Programmbcfehls benötigten Mikrobefehlen ist ein »Mikroprogramm«.
Bis vor einigen Jahren war das Verfahren der Ausführung solcher MikroOperationen, Mikrobefehle und Mikroprogramme von der Art abhängig, in welcher der
Rechner konstruiert und gebaut war, d. h. sie war von den Bauelementen, der sogenannten »Hardware« des
Rechners abhängig. Mit anderen Worten wurde die zwischen den Programmbefchlen und den Mikrooperationen zu ihrem Ausführen notwendige Wechselbeziehung
durch den räumlichen Aufbau der Steuereinheit des Rechners bestimmt und konnte deshalb nicht verändert
werden, ohne diesen räumlichen Aufbau d. h. die Beschallung und die Bestandteile der Steuereinheit des
Rechners zu verändern.
Praktisch wurde diese Wechselbeziehung durch die sogenannte »Logische Folgematrix« d. h. durch ein Decodiernetzwerk hergestellt, das als Eingang einen den
auszuführenden Befehl verkörpernden Binärcode aufnimmt und an seinem Ausgang ein Schema aus die
Gruppe von auszuführenden MikroOperationen verkörpernden Binärwerten liefert
Dieses Decodiernetzwerk kann zusätzlich eine Gruppe
von besondere Zustände des Geräts verkörpernden Signalen aufnehmen, die die Binärsignale am Ausgang
der logischen Folgematrix bedingen und ändern können. Somit kann ein Befehl die Ausführung einer Vielzahl
von Mikrobefehlen in aufeinanderfolgenden Zeiträumen, d. h. in einer Mikrofolge mit Hilfe der logischen
Folgematrix durchführen.
jedoch sind im Verlaufe der letzten Jahre Versuche unternommen worden, den Rechner anpassungsfähiger
als zuvor und ihn geeignet zu machen, verschiedene Gruppen von Maschinenbefehlen nach den Wünschen
verschiedener Benutzer auszufahren, wobei man selbstverständlich innerhalb der Grenzen der durch die verfügbare
Gruppe von MikroOperationen zulässigen materialeigenen Leistungsfähigkeiten blieb. Zum Erreichen
dieses Zieles war es ohne Änderung aer Hardware der Maschine notwendig, die durch den Aufbau der Maschine
bedingte Eins-zu-Eins-Korrelation zwischen Befehlen
und Mikrooperationcn aufzugeben und diese Korrelation auf mittelbare Weise durch Verwendung
einer Speichereinrichtung herzustellen, die in der Lage ist, als Antwort auf einen Befehl eine Gruppe von je
einer Mikroopcration entsprechenden Signalen zu liefern, wobei die Information den in der Speichereinrichtung
gespeicherten Signalen entspricht.
Durch Modifizieren des Inhalts dieser Speichereinrichtung
ist es möglich, die Gruppe von Mikrooperpiionen
unterschiedlich zu gestalten und als Ergebnis die Ausführung der Gruppe von Befehlen verschiedener
Maschinensprachen ohne Veränderung der Schaltungsanordnung des Rechners zu erzielen.
Deswegen sind moderne Rechner nach diesen Kriterien gebaut und umfassen zerstörungsfreie modifizierbare,
als ROS (Read Only Storage) bezeichnete Speicher, die die zum Steuern der Mikrooperationen geeignete
Information enthalten. Der Festwertspeicher speichert eine Vielzahl von Wörtern, die je eine Vielzahl von
Bits umfassen, wobei für den Festwertspeicher jeder Maschinenbefehl eine Adresse ist. der das Auslesen eines
oder mehrerer Wörter des Festwertspeichers der Reihenfolge nach bewirkt.
jedes ausgelesene Wort aus dem Festwertspeicher bestimmt eine Gruppe von auszuführenden Mikrooperalionen
d. h. einen Mikrobefehl. Der einfuchste Weg der Verwendung dieser Information besteht darin, jedes
Bit zum Steuern einer einzigen Mikrooperalion zu bestimmen. So ist als Beispiel der Binärwert eines Bits,
wenn die entsprechende Mikrooperatior. ausgeführt werden soll, EINS und im gegenteiligen Fall NULL. Da
die Anzahl der Mikrooperationen, die in einen. Rechner ausgeführt werden können, in der Größenordnung von
mehreren hundert liegen kann, würde eine Eins-zu-Eins-Übereinstimmung zwischen Bits und Mikrooperationen
Wörter von übertriebener Länge und demzufolge Festwertspeicher von sehr hohem Speichervermögen und
hohen Kosten erfordern.
Die Konstrukteure haben sich deshalb bemüht, die zum Enthalten der benötigten Mikrobefehle erforderliche
Speicherkapazität des Festwertspeichers erheblich zu verringern. Zum Erreichen dieses Zieles wurden verschiedene
Wege beschritten, von welchen einer beispielsweise darin besteht, die Mikrooperalionen in
Gruppen aus wechselseitig internexklusiven Mikrooperationen anzuordnen und jede Mikrooperation einer
Gruppe in codierter Form da/ustellen. Zur wechselseitigen
internexklusiven Mikrooperation sind die Mikrooperationen so bestimmt, daß keine zwei von ihnen in
einem und demselben Taktintervall ausgeführt werden können.
Ein als »anpassungsfähiges Decodieren« bezeichnetes anderes Verfahren besteht in der Verwendung einer
bestimmten Bitanzahl jedes Mikrobefehls als »Funktionscode« zum Auswerten der übrigen Bits des Mikrobefehls.
ίο Ein weiteres Verfahren besteht in einem einen Funktionscode
von veränderbarer Länge verwendenden anpassungsfähigen Decodierverfahren wie es in der Patentanmeldung
P 22 64 346.5 von der Anmelderin vorgeschlagen wurde.
Aufgabe der vorliegenden Erfindung ist, ausgehend von einer Rcchcnanlage nach dem Oberbegriff des Patentanspruches
1, die Verringerung der Länge der Mikrobefehle, ohne die durch ein Mikrobefehlssteuerungssystem
gewährleistete Anpassungsfähigkeit wesentlich zu verringern.
Diese Aufgabe wird durch die im kennzeichnenden Teil der Patentansprüche 1 oder 2 genannten Maßnahmen
gelöst.
Mit anderen Worten wird ein digitales elektronisches Datenverarbeitungssystem mit einer zentralen Verarbeitungseinheit,
einem Taktwerk, einer Mikroprograminiereinheit zum Liefern einer Folge von Gruppen aus
Hauptmikrokommandos zum Steuern der Folge der Operationen der zentralen Verarbeitungseinheit in Auswirkung
einer Folge von in der Mikroprogrammiereinhcit gespeicherten Mikrobefehlen und zum aufeinanderfolgenden
Auslesen in Auswirkung von dazu in Beziehung stehenden Mikrobefehlsadressen vorgeschlagen,
bei dem eine durch die Mikroprogrammiereinheit
J5 gesteuerte zusätzliche logische Einheit eine Folge von
Gruppen aus zusätzlichen Mikrokommandos liefert, die mit den Gruppen aus Hauptmikrokommandos zum
Steuern der zentralen Verarbeitungseinheit zusammenwirken.
Auf diese Weise wird ohne Bcnötigung einer größeren Länge des ursprünglichen Mikrobefehls eine statische
Erweiterung der durch den Mikrobefehl ausgeführten Steuerfiinktioncn erzielt.
Dies ist nur einer der Vorteile der Erfindung, da die
4r> festverdrahtete Folgesteuerung die Kommandos in
Auswirkung vorbestimmter Bedingungen während der Ausführung eines einzigen Mikrobefehls genauso ändern
kann, wie sich der Mikrobefehl den Umständen entsprechend selbst ändern könnte.
Auf diese Weise wird eine dynamische Erweiterung des Mikrobefehls erreicht, durch die Mikrokommandos
eines Mikrobefehls an einer vorher festgesetzten Adresse verändert werden können. Dies bedeutet außerdem,
daß an die Stelle einer Vielzahl von Mikrobefehlen, die einen gemeinsamen ersten Teil haben und durch einen
zweiten Teil voneinander abweichen, ein einzelner, dem gemeinsamen Teil entsprechender Mikrobefehl von reduzierter
Länge und eine durch die festverdrahtete Folgesteuerung gemäß den Zuständen erzeugte veränder-
W) bare Erweiterung treten können. Es ist offensichtlich,
daß die Speicherkapazität des Festwertspeichers beachtlich verringert wird.
Außerdem ist ein weilerer Vorteil der Erfindung zu erwähnen, der als Ergebnis der kombinierten Verwendung
eines Festwertspeichers und einer festverdrahteten Folgesteuerung die Bezeichnung einer dynamischen
Erweiterung rechtfertigt.
Die Ausführung eines Befehls erfnrHr>n im allopmoi.
nen die Ausführung einer Anzahl von aufeinanderfolgenden, ein Mikroprogramm bildenden Mikrobefehlen.
Nun läßt sich eine Verringerung der Speicherkapazität des Festwertspeichers durch Mittel erzielen, die das
Ausführen des gleichen Befehls durch eine geringere r>
Anzahl von in dem Festwertspeicher gespeicherten Mikrobefehlen, d. h. durch ein kürzeres Mikroprogramm
ermöglichen, und zwar läßt sich dies durch Verwendung der festverdrahteten Folgesteuerung erzielen. Während
nämlich die festverdrahtete Folgesteuerung tiIs Antwort
auf gegebene Zustände des Rechners und gemäß einer geeigneten Taktsteuerung entlang einer Folge von Mikrokommandogruppen fortschreitet, im Verlaufe dessen der Festwertspeichermikrobefehl unverändert
bleibt, wird eine Gruppe von aufeinanderfolgenden Mikrobefehlen mit einem gemeinsamen feststehenden und
einem veränderbaren Teil verfügbar gemacht. Auf diese Weise wird eine dynamisch veränderbare Erweiterung
des Mikrobefehls erzielt und somit die Länge des gespeicherten Mikroprogramms reduziert.
Einen weiteren Vorteil bietet die Tatsache, daß beim vorliegenden Stand der Technik die Ansprechzeit der
Festwertspeicher, wie sie bei der gewöhnlich durch MOS-Technologie erzielten Mikroprogrammspeichcrung verwendet werden, erheblich größer ist als die An-
Sprechzeit der logischen Schaltungen nach den bipolaren Technologien. Demzufolge ermöglicht die Verwendung der festverdrahteten Folgesteuerung das Erreichen höherer Leistungen in Form von Ansprechgeschwindigkeit. JO
Hinzuzufügen ist, daß eine festverdrahtete Folgesteuerung konstruktiv einfach und robust ist, da sie eine
verhältnismäßig kleine Anzahl von gedruckten Leiterplatten enthält, wobei ihre Aufgabe eine Hilfsaufgabc
ist, da die Hauptsteueroperationen durch den Festwert-Speicher ausgeführt werden. Sie kann aus einer leicht
austauschbaren Funktionseinheit bestehen, und dadurch ist es möglich, eine Anzahl von festverdrahteten Folgesteuerungen zur Verfügung zu haben, die je auf ein
spezifisches Erfordernis eingestellt sind.
Weitere Ausführungsbeispiele der Erfindung sind nachstehend anhand von zwei in der Zeichnung dargestellten bevorzugten Ausführungsbeispielen näher beschrieben. Es zeigt
Fig. 1 ein Blockdiagramm einer ersten Ausführungsform der Erfindung;
Fig. 2 ein Blockdiagramm einer zweiten Ausführungsform der Erfindung;
Fig.3 ein logisches Blockdiagramm der zentralen Verarbeitungseinheit eines erfindungsgemäß gesteuerten Rechners;
Fig.4 ein logisches Diagramm eines als festverdrahtete Folgesteuerung verwendeten Netzwerks und
F i g. 1 zeigt das schematische Blockdiagramm einer ersten bevorzugten Ausführungsform der Erfindung.
Das Bezugszeichen 1 bezeichnet einen Programmier-Festwertspeicher ROS. Er ist mit einem als ROSAR
(»Read Only Storage Acces Register«) bezeichneten Adressenregister 2 versehen, das mit der Adressenfolge m>
der den Rechner steuernden Mikrobefehle geladen wird.
Das Register 2 wird mit Hilfe von dem Bedarf entsprechend aktivierten Eingangskanälen 3, 4, 5, 6 geladen. Beispielsweise kann der Kanal 3 benutzt werden, t>5
um das Register 2 in einen, einer vorher festgelegten Festwertspeicheradresse entsprechenden Aufgangszustand zu setzen d. h. zur Initialisierung des Rechners.
Der Kanal 4 kann benutzt werden, um das Register auf einen der um eins vermehrten vorangehenden
Adresse entsprechenden Zustand zu stellen. Es zeigt sich, daß der Inhalt des Adressenregisters 2 über den
Kanal 7 einer Zählschaltung 8 zugeführt wird, die die Adresse um eins erhöht und sie unter Steuerung durch
eine Einheit 9 mit beispielsweise einer Vielzahl von UND-Gattern dem Eingangskanal 4 zuführt. Auf diese
Weise kann die auf den neusten Stand gebrachte Adresse nur unter bestimmten Bedingungen in das Adressenregistcr 2 eingegeben werden.
Eine solche Bedingung ist dargestellt durch das Vorhandensein eines Mikrokommandos D, das sich aus dem
Decodieren des sich in Ausführung befindenden Mikrobefehls ergibt, und durch das Fehlen eines Sperrmikrokommandos h (d. h. durch das Vorhandensein eines
Komplements h) an den Eingangsleitungen des UND-Gatters 10.
Der Kanal 5 kann benutzt werden, um das Einstellregistcr 2 durch einen unbedingten Sprungbefehl oder
einen relativen Adressiermikrobefehl in einen einer neuen, vorher festgelegten Adresse entsprechenden Zustand zu setzen. Es zeigt sich, daß der Inhalt des Adressenregisters 2 über den Kanal 7 einer Übertragungs-Zählcinheit U zugeführt wird, die diesen Inhalt um den
Betrag ± KK ändern und die auf den neuesten Stand gebrachte Adresse dem Eingangskanal 5 zuführen kann.
Die Einheit Il kann dem Eingangskanal auch nur den Betrag KK zuführen. Dieser Betrag KK, der addiert,
subtrahiert oder übertragen werden kann, wird der Einheit Il über den Kanal 14 zugeführt und wird wie nachstehend noch näher erläutert durch einen unbedingten
Sprungmikrobefehl oder durch einen relativen Adressiermikrobefehl erzeugt.
Auch in diesem Falle ist an dem Kanal 5 eine Steuereinheit 30 vorhanden, wobei die auf den neuesten Stand
gebrachte Adresse in das Register 2 nur unter vorbestimmten Bedingungen (auf das UND-Gatter 31 gegebene Mikrokommandos fund /^eingegeben wird.
F.inc entsprechende Adressierfunktion kann unter Umständen durch den Kanal 6 ausgeübt werden.
Außer zur Inilialisicrungsoperation erfolgt in allen
übrigen Fällen die Abänderung der Adresse in dem Adressen-Register 2 zu bestimmten, durch ein nicht dargestelltes Taktwerk gesteuerten Zeiten.
Der Inhalt des Adressenregisters 2 adressiert über
den Kanal 7 den Festwertspeicher 1, der den spezifischen Mikrobefehl ausliest und ihn über den Kanal 12 in
das Register 13 (ROR) eingibt. Der Mikrobefehl kann einige Bits enthalten, die den Betrag ±KK um den die
nachfolgende Festwertspeicheradresse abgeändert werden soll, und bestimmen, ob er addiert, subtrahiert
oder übertragen werden soll. Der übrige Teil des Mikrobefehls im Register 13 wird durch den Decodierer 15 (zu
dessen Beschreibung auf die vorerwähnte Patentanmeldung hingewiesen wird) decodiert, der eine Gruppe von
mit A. B.C. Zbezeichneten elementaren Mikrooperationskommandos liefert Die elementaren Mikrooperationskommandos steuern die Operationen des Rechners
und die Abwicklung des Programms: Beispielsweise ermöglicht das Mikrokommando D das Erhöhen der
Adresse um eins über den Kanal 4 und das Mikrokommando F. die Adresse über den Kanal 5 auf den neuesten Stand zu bringen. Der bis hierher beschriebene
Aufbau entspricht dem heutigen Stand der Technik.
Dieser logische Aufbau wird durch zusStzliche Elemente erweitert, die sowohl die statische als auch die
dynamische Erweiterung der durch sie ausgeübten
Steuerfunktionen ermöglichen.
Fig. 1 zeigt, daß der Inhalt des Adressenregisters 2
außerdem auf dem Kanal 7 einem Decodier- und Bedingungsnetzwerk 16 über eine beispielsweise eine Gruppe
von UND-Gattern enthaltende Freigabeeinheit 17 zugeführt wird, die das Übertragen des Inhalts des Adressenregisters
2 nur zuläßt, wenn an der Leitung 18 ein Freigabcsignal vorhanden ist. Dieses Freigabesignal
kann in dem Register 13 aus dem Mikrobefehl entstehen
oder durch den Decodierer 15 erzeugt werden oder auch stets vorhanden sein.
Die aus dem Adressenregister 2 übertragene Adresse wird durch einen Decodierer 19 decodiert, der eine
Gruppe von Signalen liefert, die über ein Bedingungsnctzwcrk 34 in den Ausgang der Einheil 16 übertragen
werden, die eine Gruppe von mit a, b, c...../. bezeichneten
zusätzlichen Mikrokommandos erzeugt. Das Bedingungsnetzwerk
34 kann eine Gruppe von UND-Gattern entsprechend dem Gatter 20 enthalten, die je mit einem
oder mehreren Bedingungseingängen verschen sind, die vorher festgelegte Zustände der zentralen Verarbeilungscinheit
des Rechners verkörpernde Signale führen. Diese Signale sind als Ganzes durch den Pfeil 21 dargestellt.
Während der Ausführung eines Programms kann die gleiche Mikroprogrammadresse mehr als einmal vorkommen,
wobei jedesmal die Zustände der zentralen Verarbeitungseinheit unterschiedlich sein können und
folglich das zusätzliche Mikrokommando ebenfalls unterschiedlich sein kann.
Somit erzeugt das Auslesen eines Mikrobefehls aus dem Festwertspeicher 1 an einer vorher festgelegten
Adresse eine Gruppe von feststehenden Mikrokommandos A, B, C,.., Zund eine Gruppe von zusätzlichen
Mikrokommandos a. b, c, .... /, die sich entsprechend den Bedingungen verändern können. Dies bedeutet, daß
im Verlaufe des betreffenden Zeitraumes alles so abläuft, als wenn eine Folge von Mikrobefehlen ausgelesen
und ausgeführt wird. Im Verlaufe des gleichen Zeitraumes
verhindert ein zusätzliches Mikrokommando h über die Kanäle 4 und 5 jegliche Änderung der Adresse
in dem Adressenregister 2. Das gleiche zusätzliche Mikrokommando h oder ein passendes anderes kann den
Kanal 6 freigeben, über den passende zusätzliche Mikrokommandos als neue Adressen in das Adressenregister
2 übertragen werden können. Auf diese Weise wirken das Mikroprogrammicrnet/.werk und das statischdynamische Erweiterungsnetzwerk 16 wechselseitig ein,
da jedes von ihnen die Arbeitsweise des anderen über vorbeslimmte Bedingungssignale oder Adressencode
bedingen kann. Außerdem sei bemerkt, daß die Gruppe von zusätzlichen Mikrokommandos nicht zu dem die
Mikrokommandos A. B.C..., Zerzeugenden Mikrobefehl,
sondern zu der Adresse des Mikrobefehls in Wechselbeziehung steht Dies erhöht die Anpassungsfähigkeit
des dynamischen Erweiterungssystems 16 nach der Erfindung. Wenn die durch das Netzwerk 16 erzeugten
zusätzlichen Mikrokommandos durch Decodieren des aus dem Festwertspeicher 1 ausgclesenen und in das
Register 13 eingegebenen Mikrobefehls erzielt würden, wurden alle übereinstimmenden Mikrobefehle, selbst
wenn sie in verschiedenen Mikroprogrammen enthalten wären, durch die gleichen Bedingungen der zentralen
Verarbeitungseinheit die gleiche dynamische Erweiterung, d. h. die gleiche Folge von zusätzlichen Mikrokommandos
erzeugen. Dagegen macht die Verwendung der in dem Adressenregister 2 enthaltenen Festwertspeicheradresse
zum Erzeugen der zusätzlichen Mikrokommandos d;is Programm von solchen Begrenzungen
frei, und können für jeden Mikrobefehl in bezug auf seine Lage im Programm der meistgeeignete Aufbau
und die meistgeeignete Folge der zusätzlichen Mikro-
ri kommandos vorgesehen werden. Selbstverständlich findet
das hinwirken des Netzwerks 16 nur statt, wenn an der Leitung ein l'rtigabesignal vorhanden ist und die
durch den Decodierer 19 erkennbare vorbestimmte Adresse anliegt.
ίο Wenn auch vielseitig, so hat dieser logische Aufbau
doch einige Einschränkungen: Beispielsweise läßt er ein erneutes Zuordnen der Mikroprogramme in dem Festwertspeicher
i nicht zu, da dies eine einem vorher festgelegten Mikroprogramm entsprechende Änderung der
Adressen und des Netzwerks 16 erfordern würde.
Innerhalb des F.rfindungsbereiches kann eine andere
Ausfühiungsform der kombinierten Steuerung mit Hilfe eines Mikroprogrammspeichers und eines logischen statischen
und dynamischen Erweiterungsnetzwerks bevorzugt werden, die in F i g. 2 dargestellt ist.
Das den Festwertspeicher 1 verwendende Programmiersystem ist das gleiche wie das anhand von Fig. 1
beschriebene, wobei die gemeinsamen Bestandteile mit den gleichen Bezugszeichen versehen sind.
2r> Die Art des Anschlusses der Mikroprogrammier-Steuereinheit
und der festverdrahteten Folgesteuerung ist anders.
Das Decodier- und Bedingungsnetzwerk 16 enthält in diesem Falle ein Zustandsrcgister 22 und ein Freigabe-
jo Flip-Mop 23.
F.in bestimmter Mikrobefehl muß zum Laden des Zustandsregistcrs
22 mittels einer Freigabeeinheit 24 geschaffen werden, wobei Information aus einer Quelle
kommt, die von dem gleichen Mikrobefehl ausgewählt
r> worden ist.
Mit anderen Worten kann dieser Mikrobefehl aus drei Abschnitten gebildet werden: Einem Funktionscode,
der angibt, daß die auszuführende Operation eine Übertragung ist, einem Adressencode, der anzeigt, in
welches Register die Größe übertragen werden soll, und einem dritten Teil, der die Große oder die Adresse des
Registers oder die diese Größe enthaltende Speicherstelle in binärer Form ausdrückt.
Bei in dem Register 13 enthaltenem Mikrobefehl die-
4r) scr Art zerlegt das Decodiernetzwerk 15 den Befehl in
diese drei Abschnitte und liefert ein mit V bezeichnetes Kommando, das das Eingeben der durch den dritten
Abschnitt des Mikrobefehls angegebenen Größe durch Freigeben der beispielsweise eine Gruppe von UND-Gattern
enthaltenden Einheit 24 in das Zustandsregister 22 ermöglicht Der Mikrobefehl, der auf den vorerwähnten
Transfer-Mikrobefehl folgt, muß, wenn er in Dekaden aufgeteilt ist, ein Signal Y1 erzeugen, das das Flip-Flop
23 setzt. Ein solches Flip-Flop steuert eine Freigabeeinheit 26. die es ermöglicht, auf den Eingang des
Decoders 19 den Ausgangskanal 25 des Registers 22 zu geben. Die decodicrtcn Signale im Ausgang aus dem
Decoder 19 erzeugen unter den von der zentralen Bearbcitungscinhcit
eingestellten und durch Kanäle 21 ange-
bo legten Bedingungen auch in diesem Fall die Folge zusätzlicher
Mikrokommandos a, b.c.. ^z, die sich mit der
Veränderung dieser Bedingungen verändern können.
Auf diese Weise wird auch in diesem Falle sowohl eine statische als auch eine dynamische Erweiterung der
b5 Mikroopcrationsgruppe erzielt, jedoch unterliegen die
Mikroprogramme keinem Zwang mehr und können in dem Festwertspeicher 1 nach Belieben erneut zugeordnet
werden, da das Netzwerk 16 in Auswirkung eines
spezifischen Mikrobefehls, der an einer beliebigen Adresse des Festwertspeichers liegen kann, aktiviert
und nicht mehr durch die Fortdauer eines Mikrobefehls in dem Register 13, sondern durch den Zustand des
Zustandsrcgistcrs 22 bedingt ist. das diesen Zustand so r>
lange wie nötig hält. Es sei bemerkt, daß die gleichen zusätzlichen Mikrokommandos oder ein Teil von ihnen
zum Modifizieren des Inhalts des Zustandsregisters 22 verwendet werden können.
Bei dieser Wirkung kann ein Eingangskanal 27 durch in
eine mittels eines zusätzlichen Mikrokoinmandos wie beispielsweise w gesteuerte Freigabeeinheit .33 freigegeben
werden und eine einer passenden Untergruppe von zusätzlichen Mikrokommandos entsprechende
Gruppe von Signalen übertragen. Auf diese Weise kann r> die festverdrahtetc Folgesteuerung unter der kombinierten
Steuerung sowohl durch die über den Kanal 21 angelegten Bedingungen als auch durch die zusätzlichen
Mikrokommandos fortschalten.
Das Abschalten der fesiverdrahtclen Folgesteuerung
wird durch eines der zusätzlichen Mikrokoinmandos gesteuert. Wie in F i g. 2 gezeigt, setzt das zusätzliche Mikrokommando
χ das Flip-Flop 23 zurück und sperrt somit die Einheit 26, was die Übertragung von Information
über den Kanal 25 verhindert. Die in dem Adressenregister 2 enthaltene Adresse kann durch das Mikrokommando
h erneut geändert werden.
Die Ausführung des Mikroprogramms kann demzufolge gemäß der nachstehenden Operationsfolge stattfinden.
JO
Aus dem Festwertspeicher 1 wird eine Folge von Mikrobefehlen ausgelesen und der Reihe nach in das Register
13 eingegeben und ausgeführt. Der letzte Mikrobefehl der Folge befiehlt die Übertragung einer Größe in
das Zustandsregistcr 22. Diese Operation wird ausge- η
führt, wobei zugleich ein neuer Mikrobefehl in das Register 13 eingegeben wird. An dieser Stelle wird die festverdrahtete
Folgesteuerung aktiviert, wobei die zentrale Verarbeitungseinheit durch die Gruppe von aus dem
Register 13 zugeführten Mikrokommandos und durch die zusätzlichen, aus der festvcrdrahicten Folgesteuerung
zugeführten Mikrokommandos gesteuert wird, so daß auf diese Weise eine statische Erweiterung des Mikrobefehls
erzielt wird. Die festverdrahtete Folgesteuerung schaltet in Übereinstimmung mit ihrem inneren -Ti
Aufbau und den über den Kanal 21 empfangenen externen Bedingungen eine Folge von Zustanden fort. Zur
gleichen Zeit bleibt der in dem Register 13 enthaltene Mikrobefehl unverändert oder er kann sich mit dem
Verändern der zusätzlichen Mikrokommandos schritt- ta gleich verändern.
Auf diese Weise ist eine dynamische Erweiterung erzielt worden, als wenn eine Folge von fiktiven Mikrobefehlen
in das Register 13 eingegeben würde, um eine Folge von Mikrokommandos zu erzeugen.
Es sei bemerkt, daß die Geschwindigkeit, mit welcher
die zusätzlichen Mikrokommandos durch die festverdrahtete
Folgesteuerung geliefert werden, durch die Arbeitsgeschwindigkeit des Netzwerks 16 begrenzt ist. das
im allgemeinen nach Technologien hergestellt wird, die w>
höhere Geschwindigkeit zulassen als die des Mikroprogrammspeichers,
wobei demzufolge die dynamische Erweiterung des Mikrobefehls mit Hilfe der festverdrahteten
Folgesteuerung nicht nur das Einsparen eines beachtenswerten Teiles der Speicherkapazität des Fest- «
wertspeichers I zuläßt, sondern außerdem eine hohe Arbeitsgeschwindigkeit vorsieht |cdoch können wie
gesagt die festverdrahtetc Folgesteuerung und der Fcstwertspeicher
1 schriltgleich arbeiten.
Zur besseren Erläuterung der vorstehenden Gedanken wird nunmehr ein Beispiel eines mit Hilfe der fcstverdrahteten
Folgesteuerung erweiterten Mikroprogramms im einzelnen beschrieben.
!·" i g. 3 zeigt als Beispiel ein schematisches Blockdiagramm
eines Teiles des Aufbaus eines elektronischen Rechners.
Der Rechner enthält eine Gruppe von Arbeitsregistern 50. von welchen jedes ein Fassungsvermögen von
8 Bits hat, eine Zähl- und Übertragungseinheit 51, eine arithmetische Einheit 52. ein 8-Bit-Rcchenwerksregister
53. eine Anzahl Flip-Flops 54, 55, 56. ..„ 61 zum Speichern
besonderer Zuslandsbcdingungcn und passende Verbindiingskanäle zwischen den Einheiten, die durch
Gruppen von Gattern in einem bestimmten Zustand gebracht werden, durch die sie zum Übertragen der
Daten freigegeben oder gesperrt werden können. Die mit einem Symbol und einer Bezugsziffer bezeichneten
logischen Gatter sollen in den meisten Fällen eine Gruppe von durch das gleiche Signal gesteuerten und auf
allen in dem Kanal enthaltenen Leitungen arbeitenden Gattern darstellen.
Es sind nur die wichtigsten Verbindungskanäle dargestellt.
Der Rechner gemäß dem dargestellten Beispiel hat eine Parallelität von 8 Bits, jedoch kann er mit gepackten
Ziffern, d.h. mit durch 4-Bit-Codes ausgedrückte und in jedem 8-Bit-Wort paarweise enthaltene Dezimalziffern
betrieben werden.
Der Aufbau des Rechners ist besser verständlich durch ein Beispiel seiner mit Hilfe eines durch die feslverdrahtete
Folgesteuerung erweiterten Mikroprogramms gesteuerten Arbeitsweise.
Es sei angenommen, daß die auszuführende Operation die Dezimalsumme aus einem ersten Operanden
und einem zweiten Operanden ist. Das Ergebnis soll in dem durch den ersten Operanden belegten Speichcrfeld
gespeichert werden. Die Operanden sind aus einer Vielzahl von Bits gebildet, die eine Vielzahl von Dezimalziffcrn
und ein Vorzeichen verkörpern. Ihr Aufbau ist wie folgt:
D. I) D. D D, D D, S
D. D D. D D. D D.S
erster Operand zweiter Operand
lcder Buchstabe D stellt eine eine Dezimalziffer bedeutende
Gruppe aus vier Bits dar, während der Buchslabe S eine ein Vorzeichen bedeutende Gruppe aus
vier Bits darstellt.
Die Operanden sind in Spcicherstellen mit einer Anzahl
von 8-Bit-Gruppen (Oktette) gespeichert, die durch eine Adresse und eine in Anzahl von Oktetlen ausgedrückte
Länge gekennzeichnet sind. Die den Operanden kennzeichnende Adresse ist die Adresse des das Vorzeichen
enthaltenden Oktetts.
Der Dezimalsummcnbcfehl umfaßt eine Folge von Bits, die der Reihe nach bestimmen:
Die auszuführende Operation; die Speicheradresse des ersten Operanden:
die Speicheradresse des zweiten Operanden; die 1-änge des ersten Operanden in Anzahl von
Oktetten.
Wenn dieser Befehl durch den Rechner ausgewertet wird, findet eine als »Heranholen« bezeichnete Vorbcrcitungsphasc
unter Steuerung durch ein Mikropro-
gramm statt, die den Rechner zum Ausführen des Befehls voreinstellt sowie die Adressen und Länge der
Operanden in vorbestimmtc Register 50 eingibt. Die Beschreibung und Erörterung dieser Heranholphase
sind zur Verständlichmachung der Erfindung unnötig und werden daher fortgelassen. Danach wird die Ausführungsphase
eingeleitet, die unter Annahme, dall sie durch ein in dem Festwertspeicher 1 enthaltenes Mikroprogramm
und durch die festverdrahtete Folgesteuerung gesteuert wird, nachstehend im einzelnen beschrieben
ist.
Wie bisher bedeuten große Buchstaben (Versalien) die durch den Festwertspeicher 1 erzeugten Mikrokommandos
und kleine unterstrichene Buchstaben die durch die festverdrahtete Folgesteuerung erzeugten Mikrokommandos.
Rechnerzustände anzeigende alphanumerische Signale sind durch ein oder mehrere Schriftzeichen
dargestellt, dem der Buchstabe C vorangeht.
In dem veranschaulichten Beispiel hat die festverdrahtete Folgesteuerung den in Fig.4 dargestellten
Aufbau, wobei sie dem Festwertspeicher 1 wie in F i g. I gezeigt zugeordnet ist.
Die Mikroprogrammadressen werden aus dem Adressenregister 2 durch ein das UND-Gatter 17 steuerndes
Freigabesignal an der Leitung 18 in den Decodierer 100 übertragen. Es sei angenommen, daß dieses
Signal ein Mikrokommando A ist.
Die Ausgänge 101 bis 107 dieses Decodieren liefern die zusätzlichen Mikrokommandos entweder unmittelbar
oder über geeignete Gatter, die durch Zustände der jo zentralen Verarbeitungseinheit verkörpernde Signale
gesteuert werden.
Die Leitung 101 liefert am Ausgang der festverdrahteten Folgesteuerung ein unbedingtes Mikrokommando
a.
Die Leitung 102 ist an ein UND-Gatter 108 angeschlossen,
das durch ein Signal CFFI gesteuert wird, das
durch ein als »Erstes Mal-Flip-Flop« bezeichnetes Bedingungs-Flip-Flop 90 (F i g. 3) geliefert wird. Der Ausgang
des UND-Gatters 108 liefert ein Mikrokommando 4(1 L und außerdem über das ODER-Gatter 109 ein Mikrokommando
c
Die Leitung 103 liefert unmittelbar ein Mikrokommando/und
ist außerdem an ein UND-Gatter 110 angeschlossen,
das durch ein Signal CFL Il gesteuert wird, 4r>
das von einem in F i g. 3 mit 61 und als »Ende der Länge des zweiten Operanden-Flip-Flop« bezeichneten Bcdingungs-Flip-Flop
erzeugt wird. Der Ausgang des UND-Gatters 110 liefert das Mikrokommando dund zusätzlich
über das ODER-Gatler 111 das Mikrokommando h. v>
Die Leitung 104 ist an das durch das vorerwähnte Signal CFFI gesteuerte UND-Gatter 112 angeschlossen.
Der Ausgang dieses Gatters liefert das Mikrokommando e und über das ODER-Gatter 109 das Mikrokommando
C r)5
Die Leitung 105 liefert ein unbedingtes Mikrokommando m und ist außerdem an ein UND-Gatter 113
angeschlossen, das durch ein Signal CDI gesteuert wird, das von dem als »Ungültige Ziffer-Flip-Flop« bezeichneten
Bedingungs-Flip-Flop 57 (Fig.3) erzeugt wird, w)
Der Ausgang des UND-Gatters 113 liefert ein Mikrokommando /"und über das ODER-Gatter 111 außerdem
das Mikrokommando Λ.
Die Leitung 106 liefert über ein durch das Signal CFFI gesteuertes UND-Gatter ein Mikrokommandog. b5
Die Leitung 107 liefert ein direktes Mikrokommando Iund ist außerdem an ein UND-Gatter 115 angeschlossen,
das durch ein Signal CFL I gesteuert wird, das von dem nls »hmlc der Länge des ersten Operanden-Flip-Flop«
bezeichneten Bedingungs-Flip-Flop 60 (Fig.3)
erzeugt wird. Der Ausgang des UND-Gatters 115 liefert
ein Mikrokommando /und über das ODER-Gatter 111
außerdem das Mikrokommando Λ.
Zusammenfassend wird, wenn das Mikrokommando A vorliegt und die Adresse im Register 2 in dem Festwertspeicher
1 einen Mikrobefehl ausliest, der zum Arbeiten der fesiverdrahteten Folgesteuerung aufruft, die
Adresse in dem Register 2 durch den Decodierer 100 (F i g. 4), der eine Vielzahl von zusätzlichen Mikrokommandos
a. b, c,..., i liefert, decodiert. Die Gruppen von
Mikrokommandos A bis Z und die zusätzlichen Mikrokommandos a bis I werden auf die logischen Elemente
der zentralen Verarbeitungseinheit gegeben und steuern auf diese Weise die Ausführung des Mikroprogramms.
Die nachfolgenden Schritte des Mikroprogramms sind nachstehend im einzelnen beschrieben: Die aufeinanderfolgend
ausgelesenen Mikrobefehle werden durch eingeklammerte Ziffern (151), (152) ... bezeichnet, die
als Adressen des zugeordneten Mikrobefehls im Festwertspeicher angesehen werden können.
(151) Und
Der erste Mikrobefehl bestimmt, daß die auszuführende Operation eine algebraische Addition mit Dezimalziffcrn
ist. Er liefert ein Mikrokommando B, das das Flip-Flop 56 (Fig.3) setzt, das seinerseits ein Bedingungssignal
CADD (zusätzliches Kommando) liefert, das auf die arithmetische Einheit gegeben wird, so daß
sie festgesetzte Addition ausführt.
Der Mikrobefehl ruft außerdem zum Arbeiten der festverdrahteien Folgesteuerung auf und erzeugt deshalb
das Mikrokommando A, sofern dies nicht ein feststehendes
Mikrokommando ist. Die Adresse (151) wird durch den Decodierer 100 decodiert, der auf der Leitung
101 ein Rückseizmikrokommando a liefert. Dieses Mikrokommando
setzt alle Bedingungs-Flip-Flops der zentralen Verarbeitungseinheit mit Ausnahme der Flip-Flops
56 und 59 zurück.
Wie in Fig. 3 gezeigt, werden die Flip-Flops 54, 55,
57, 58, 59, 60, 61 durch das Mikrokommando a rückgesetzt,
das außerdem das Flip-Flop 90 setzt und so das Bedingungssignal CFFI erzeugt.
(152) Auslesen ersten Operanden
Dieser Mikrobefehl bestimmt, daß der im Hauptspeicher gespeicherte erste Operand ausgelesen werden
soll. Es werden die Mikrokommandokombination Q R Sund die Mikrokommandos Mund Nerzeugt.
Die Mikrokommandokombination Q R S wählt von den Registern 50 dasjenige aus, welches die Adresse des
ersten Oktetts des ersten Operanden enthält, wobei das Mikrokommando M das UND-Gatter 40 freigibt, das
zuläßt, daß diese Adresse über die Kanäle 62 und 63 in das Adressenregister 80 des Hauptspeichers 81 übertragen
wird.
Das Mikrokommando Nermöglicht das Auslesen aus
dem Hauptspeicher, weshalb nach dieser Operation das Eingabe-Ausgabe-Register 82 des Hauptspeichers die
verlangten Daten speichert. Es sei bemerkt, daß im Verlaufe
dieser Operation das Eingreifen der festverdrahteten Folgesteuerung nicht erforderlich ist und demzufolge
der Decodierer 100 in Auswirkung der Befehlsadresse (152) kein Kommando erzeuet.
(153) Übertragen ersten Operanden in das
Sammelregister usd Register
sowie Prüfen de- Übereinstimmung
sowie Prüfen de- Übereinstimmung
Dieser Mikrobefehl erzeugt die Mikrokommandos C.
Q. R, S. T. U, V und erfordert das Arbeiten der festverdrahteten
Folgesteuerung 16, die ihrerseits die Adresse (153) decodiert und die zusätzlichen Mikrokommandos
b und c erzeugt Das Flip-Flop 90ß ist durch den Mikrobefehl
(151) gesetzt worden, und die festverdrahtetc
Folgesteuerung nimmt das Bedingungssignal CFF \ auf. Die Mikrokommandos Q, R, S geben an, welches der
Register 50 mit dem ersten Oktett des Operanden geladen werden soll. Die Mikrokommandos 7; U. V gestatten
durch Freigabe der UND-Gatter 91, 92, 93 die Übertragung der Daten aus dem Hauptspcicherregisler
82 über die Hauptkanäle 70 und 71 in das ausgewählte Register und in das Sammelregister 53. Gleichzeitig erscheinen
diese Daten am Ausgang der Decodierer 72 und 73, die die Übereinstimmung der numerischen Daten
prüfen.
Sofern der den numerischen Wert der Daten verkörpernde Binärcode nicht in denjenigen enthalten ist, die
Dezimalziffern darstellen, wird das Flip-Flop 57 gesetzt, so daß es ein Fehlersignal liefert, das später die Ausführung
des Programms stoppt.
Da angenommen wird, daß der numerische Wert in gepackter Form dargestellt ist, werden die beiden Hälften
des Oktetts durch die Decodierer 72 und 73 gesondert geprüft. Da dies das erste Oktett des Operanden ist,
in welchem die Bits 4 bis 7 das Vorzeichen bestimmen, wird nur der Ausgang des Decodieren 72 durch ein das
UND-Gatter 24 freigebendes Mikrokommando Cin das Flip-Flop 57 übertragen. Das umgekehrte zusätzliche
Mikrokommando everhindert durch Sperren der UND-Gatter 39 und 95 die Übertragung des decodierten Ausgangs
des Decodieren 73 in das Flip-Flop 57. Dadurch wird die Übereinstimmungsprüfung nur an den Bits 0
bis 3 und nicht an den Vorzeichenbits ausgeführt. Die Vorzeichenbits werden außerdem auf den Decodierer
74 gegeben, der über das durch das Mikrokommando b freigegebene UND-Gatter 96 auf das Flip-Flop 54 einwirkt
und es in einen das Vorzeichen verkörpernden Zustand setzt. Das auf diese Weise durch das Flip-Flop
54 gelieferte Bedingungssignal CSI wird auf die arithmetische Einheit 52 gegeben.
(154) Länge des ersten Operanden kürzen —
Sprung auf Bedingung
Dieser Mikrobefehl sieht vor, die Länge des in einem
der Register 50 enthaltenen Operanden um eins zu kürzen. Er erzeugt die Mikrokommandos A, Q, R. S, F. G. U.
die das Register 50 angeben (Q. R. S). welches die Länge des ersten Operanden speichert, und diese Länge über
die Kanäle 62 und 63 mit Hilfe von auf die UND-Gatter
97 und 98 einwirkenden Mikrokommandos Fund C in
die Zähleinheit 51 übertragen. Die Länge des ersten Operanden wird um eins gekürzt, auf die Kanäle 64 und
65 gegeben, von wo sie mit Hilfe von die UND-Gatter 99,100 und 92 freigebenden Mikrokommandos F. C und
U in die Hauptkanäle 70 und 71 und wieder in das Register übertragen wird, aus dem sie ausgelesen worden ist.
Der Ausgang der Zählcinheil 51 wird durch den Decodierer 75 decodiert, wobei, sofern der tatsächliche Wert
der Operandenlänge Null ist, ein Signal DEC ausgesandt wird. Dieses Signal setzt über das durch das zusätzliche
Mikrokommando /freigegebene UND-Gatter
83 das Flip-Hop 60. Auf diese Weise wird das Bedingungssignal
CFLI ausgesandt, das durch den nächstfolgenden
Befehl mit der Bedeutung »Ende der Länge des ersten Operanden« benutzt wird.
s Die festverdrahtete Folgesteuerung spricht auf die
Adresse (154) durch Liefern eines Signals auf der Leitung 103, d. h. des vorgenannten Mikrokommandos /an.
Sofern die Bedingung CFL Il vorhanden ist, werden durch die Folgesteuerung weitere Kommandos geliefen,
und zwar werden in diesem Falle die Mikrokommandos d und h erzeugt. Das Mikrokommando d gibt
eine vorbestimmte Mikroprogrammadresse an, wobei das Mikrokommando h verhindert, daß die Festwertspeichcradresse
in dem Adressenregister 2 wie üblich auf den neuesten Stand gebracht wird, und den Kanal 6
freigibt, um die Adresse g. q.r wie durch das Mikrokommando
d bestimmt in das Adressenregister 2 einzugeben.
Wenn die Bedingung CFLII nicht vorhanden ist, Hefert die festverdrahtete Folgesteuerung außer/kein Mikrokommando, wobei das Mikroprogramm auf den nächsten Mikrobefehl übergeht.
Wenn die Bedingung CFLII nicht vorhanden ist, Hefert die festverdrahtete Folgesteuerung außer/kein Mikrokommando, wobei das Mikroprogramm auf den nächsten Mikrobefehl übergeht.
(155) Ausler ?n zweiten Operanden und Adresse
auf den neuesten Stand bringen
Dieser Mikrobefehl entspricht, was die Ausleseoperation angeht, dem anhand des ersten Operanden (152)
beschriebenen. Der einzige Unterschied besteht darin, daß die Mikrokommandos Q, R, S jetzt das Register
angeben, in welchem die Adresse des zweiten Operanden gespeichert ist. Außerdem gibt der Mikrobefehl an,
daß die Adresse des zweiten Operanden zur weiteren Verwendung durch Vermehren um eins auf den neuesten
Stand gebracht werden soll.
Außerdem werden die Mikrokommandos L, F, G erzeugt.
Das Mikrokommando L bewirkt, daß die Zähleinheit 51 den auf ihren Eingang gegebenen Wert um eins erhöht.
Die Mikrokommandos Fund G geben die UND-Gatter 97,98,99,100 frei, wobei demzufolge die Adresse
des zweiten Operanden über die Kanäle 62 und 63 in die Zähleinheit 51 übertragen, um eins erhöht, dann
über die Kanäle 64 und 65 auf die Hauptkanälc 70 und 7t übertragen und schließlich in das gleiche Register
wie vorher eingegeben wird. Dieser Mikrobefehl erfordert nicht das Arbeiten der festverdrahteten Folgesteuerung,
so daß demzufolge der Decodierer 100 auf die Adresse (155) nicht anspricht.
r>0
(156) Zweiter Operand in Akkumulator
Dieser Mikrobefehl erzeugt Mikrokommandos C T K Zusätzlich spricht der Decodierer 100 der festverdrahteten
Folgesteuerung auf diese Adresse an und liefert auf der Leitung 104 ein Signal.
Das Bcdingungssignal CFFI, das vorhanden ist, gibt das UND-Gatter 112 frei und erzeugt die Mikrokommandos
c und e.
bo Die Mikrokommandos Vund Kgeben die UND-Gatter
91 und 93 frei, um Daten aus dem Hauptspeicher über die Hauptkanälc 70 und 71 in den Akkumulator
zu übertragen. Gleichzeitig erscheinen die Daten am Ausgang des Akkumulators und werden auf die Deco-
br> diercr 72 und 73 gegeben, die sie auf Übereinstimmung
prüfen.
Sofern der die Daten darstellende Binärcode nicht in den die Dezimulziffern darstellenden enthalten ist, wird
das Flip-Flop 57 gesetzt, das ein Fehlersignal liefert,
welches später das Programm stoppt.
Da angenommen wird, daß die numerischen Werte in gepackter Form gespeichert sind, werden die beiden
Hälften des Oktetts gesondert durch die Decodierer 72 und 73 überprüft und, da es das erste Oklett des zweiten
Operanden ist, in welchem die Bits 4 bis 7 das Vorzeichen angeben, wird nur der Ausgang des Decodierer« 72
durch das Mikrokommando C in das Flip-Flop 57 übertragen, während das umgekehrte zusätzliche Mikrokommando
Cdie UND-Gatter 39 und 95 sperrt und das Übertragen des Ausgangs des Decodierers 73 verhindert
Die Übereinstimmungsprüfung wird demzufolge nur an den Bits 0 bis 3 ausgeführt und nicht an den
Vorzeichenbits.
Die Vorzeichenbits 4 bis 7 werden außerdem auf den Decodierer 74 gegeben, wobei sein durch das auf das
UND-Gatter38 einwirkende Mikrokommando e freigegebener
Ausgang das Flip-Flop 55 in einen das Vorzcichen verkörpernden Zustand setzt. Das durch dieses
Flip-Flop 55 gelieferte Signal CSU wird auf die arithmetische Einheit 52 gegeben und steuert ihr Arbeiten
beim nächsten Schritt des Mikroprogramms.
(157) Länge des zweiten Operanden kürzen —
Sprung auf Bedingung
Sprung auf Bedingung
Wie der Mikrobefehl (154) bewirkt dieser Befehl das Kürzen der Länge des in einem der Register 50 enthaltenen
Operanden um eins. Dieser Mikrobefehl erzeugt die Mikrokommandos A, Q, R, S, F, G, U, die das Kürzen
der Länge des zweiten Operanden und sein Übertragen über die geeigneten Kanäle steuern. Gleichzeitig wird
der Ausgang der Zähleinheil 51 durch den Decodierer 75 decodiert, wobei, wenn die Länge des zweiten Operanden
auf Null reduziert ist, dieser Ausgang das Flip-Flop 61 setzt, das die Bedingung CFL Il erzeugt.
Andererseits decodiert die festverdrahtcle Folgesteuerung
die Mikrobefehlsadresse und erzeug! auf der
Leitung 105 ein Signal, welches das Mikrokommando rn zum Setzen des Flip-Flops 61 über das UND-Gatter 84
liefert, sofern das Signal DECvorhanden ist.
Außerdem nimmt die fcstvcrdrahtctc Folgesteuerung, sofern die Übereinstimmungsbedingung nicht bestätigt
wird, d. h. wenn das Flip-Flop 57 gesetzt wird, das Bcdingungssignal CDI auf: Das Signal der Leitung 103
wird über das UND-Gatter 113 übertragen und erzeugt die Mikrokommandos fund h. Das Mikrokommando h
(Fig. 1) verhindert, daß die in dem Adressenregister 2
enthaltene Adresse auf den neuesten Stand gebracht wird und gibt den Kanal 6 frei, um eine durch das Mikrokommando
f angegebene Adresse q, g, r in den Festwertspeicher
1 einzugeben. Der an dieser Adresse ausgelesene Mikrobefehl stoppt das Programm.
Wenn dagegen dus Bedingungssignal CDI nicht vorhanden
ist, erzeugt die festverdrahtete Folgesteuerung kein Mikrokommando, und das Mikroprogramm schaltet
auf den nächsten Mikrobefehl weiter.
(158) Auf Akkumulator und Register arbeiten
und in Akkumulator einschreiben
und in Akkumulator einschreiben
Dieser Mikrobefehl führt die algebraische Addition effektiv aus. Er erzeugt die Mikrokommandos A1 Q, R, S.
H, I, J, K. V. Die durch den Decodierer 100 decodicrtc
Adresse (158) liefert auf der Leitung 106 ein Signal, das seinerseits, sofern das Signal CZ-FI vorhanden ist, das
Mikrokommando g erzeugt. Das Mikrokommando g
bestimmt, daß die Addition nur an den Bits 0 bis 3 und nicht an den das Vorzeichen verkörpernden Bits 4 bis 7
ausgeführt werden soll. Das Mikrokommando H gibt die Übertragung der Bits 0 bis 3 aus dem durch die
s Mikrokommandos Q, R, S benannten Register in die arithmetische Einheit 52 über den Kanal 62 durch Einwirken
auf das UND-Gatter 43 frei. Die Bits 4 bis 7 werden nicht übertragen, da das UND-Gatter 42 durch
das auf das UND-Gatter 43 einwirkende Mikrokommando ^gesperrt ist.
Entsprechend gibt das Mikrokommando / die Übertragung der Bits 0 bis 3 aus dem Akkumulator 53 in die
arithmetische Einheit 52 durch Freigabe des UND-Gatters 44 frei, während die Übertragung der Bits 4 bis 7
durch das das Gatter 37 über das Gatter 48 sperrende Mikrokommando g unterbunden wird. Jedoch werden
die im Akkumulator 53 vorhandenen Bits 4 bis 7 über den durch das über das ODER-Gatter 49 und das UND-Gatter
88 einwirkende Mikrokommando g freigegebe-
ncn Überbrückungskanal 76 in den Hauptkanal 71 übertragen
und erneut in den Akkumulator 53 eingegeben.
Es sei bemerkt, daß die arithmetische Einheit 52 einen möglichen Übertrag aus einer vorangehenden Operation
durch ein durch das Flip-Flop 59 erzeugtes Signal.
das über die-Leitung 85 und das durch das Mikrokommando
/freigegebene UND-Gatter 86 angelegt werden
kann, berücksichtigt, ledoch ist dieses Flip-Flop 59
durch das Mikrokommando a rückgesetzt worden, so daß demzufolge bei diesem Schritt der Übertrag gleich
jo Null ist. Der Übertrag, der sich aus der soeben ausgeführten
Operation ergeben kann, wird durch den Ausgang der arithmetischen Einheit 52 auf das Flip-Flop 58
gegeben, so daß es gesetzt wird. Das beim nächsten Schritt des Mikroprogramms durch das Flip-Flop 58
erzeugte Signal COsetzt seinerseits das Flip-Flop 59.
(159) Inhalt des Akkumulators in Hauptspeicher einschreiben
Dieser Mikrobefehl cr/.cugt die Mikrokommandos A,
Q, R, S, M. O. R V.
Die Mikrokommandos Q. R. S geben das die Speicheradresse
des ersten Operanden enthaltende Register an d. h. die Adresse der Speicherstelle, in welcher das
Ergebnis der sich in Ausführung befindenden Teiladdition gespeichert werden soll.
Diese Adresse wird über das durch den Mikrobefehl M freigelassene UND-Gatter 40 in das Adressenregister
80 des Hauptspeichers übertragen. Ein weiteres Miso krokommando W befiehlt das Ausführen einer Einschreibeoperation
durch den Hauptspeicher.
Die festverdrahtete Folgesteuerung decodiert ihrerseits die Adresse (159), wobei an der Leitung 107 ein
Signal erzeugt wird, das ein Mikrokommando ± zum Rücksetzen des Flip-Flops 90 und gegebenenfalls zum
Eingeben der einen Übertrag über das UND-Gatter 37 verkörpernden Bedingung CO in das Flip-Flop 59 liefert.
Nunmehr ist der erste Schritt der Addition ausgeführt worden. Wenn das Flip-Flop 60 gesetzt wird, was bedeutet,
daß die· Länge des ersten Operanden durch die Kürzungsoperution auf Null reduziert worden ist, werden
die Mikrokommandos / und h erzeugt. Wie vorstehend erörtert, gibt das Mikrokommando h das Eingeben
b5 einer durch das Mikrokommando / benannten Adresse
£. g, rin das Adressenregister 2 frei und sperrt die übrigen
Kanäle zum auf-den-neucsten-Stand-bringen der Mikroprogrammadressc. Das Mikroprogramm springt
auf die angegebene Adresse.
Sofern die Linge des ersten Operanden nicht Null ist,
schaltet das Mikroprogramm auf den nächsten Mikrobefehl fort
(160) Adresse des ersten Operanden
auf den neuesten Stand bringen
und Folge wiederholen
Dieser Mikrobefehl erzeugt die Mikrokommandos R,
Q.S.F.G.U.L Wie gewöhnlich geben die Mikrokommandos
& Q, S das die Adresse des ersten Operanden enthaltende Register 50 an.
Die Mikrokommandos F, G, U geben die Übertragung dieser Adresse Ober die Kanäle 62 und 63 in die
Zahleinheit Sf frei, die sie (unter Steuerung durch das
Mikrokommando L) um eins vermehrt, worauf sie von dort über die Kanäle 64 und 65 in die Hauptkanäle 70,71
und wieder in das adressierte Register übertragen wird.
Gleichzeitig gibt das Mikrokommando E an, daß die Adresse des nächsten Mikrobefehls im Festwertspeicher
die Adresse (152) ist, worauf das Eingeben dieser Adresse in das Adressenregister 2 freigegeben wird.
Das Mikroprogramm läuft ab bei Wiederholung des bereits ausgeführten Mikrobefehls mit dem Unterschied,
daß jetzt auf Grund des Mikrobefehls 159 das Flip-Flop 90 rückgesetzt wird. Dadurch wird das Bedingungssignal
CFFI nicht mehr auf die festverdrahtete Folgesteuerschaltung gegeben. Die durch die Folgesteuerung
in dieser Phase erzeugten Mikrokommandos sind andere als die vorherigen, d. h. die Mikrokommandos b,ce
und g werden nicht geliefert, so daß demzufolge auch die Bits 4 bis 7 beider Operanden auf Übereinstimmung
geprüft und aus dem Register 50 und dem Akkumulator 53 in die arithmetische Einheit 52 übertragen werden.
Dieses einfache Beispiel der Tcilausführung eines Befehls
mit Hilfe eines Mikroprogrammierspcicherung und festverdrahtete Folgesteuerung verwendenden
kombinierten Steuersystems erlaubt es, Merkmale der Erfindung zu erläutern.
I. Die festverdrahtete Folgesteuerung liefert ein Mittel
zum Erweitern der Anzahl von Mikrokommandos, die sich aus einem Mikrobefehl erzielen lassen,
ohne eine Erweiterung der Länge des Mikrobefehls zu erfordern. Dies geht beispielsweise aus den Befehlen
(151),(153),(154),(156) usw. klar hervor. In all diesen Fällen genügt es, die Adressen der Mikrobefehle
zu decodieren (und gegebenenfalls nur das Mikrokommando A zu benutzen), um jedesmal mit
Hilfe der festverdrahteten Folgesteuerung eine Gruppe von zusätzlichen Mikrokommandos a. b, c,
d, e, f, g. h, j, J1I1 m in jeder beliebigen benötigten
Kombination zu erzeugen.
II. Der Betrieb der festverdrahteten Folgesteuerung ist an den Betrieb des Mikroprogrammierspeichcrs
nicht gebunden: sie wird nur bei Bedarf in Betrieb gesetzt. Beispielsweise machen die Mikrobefehle
(152) und (153) ihr Arbeiten nicht erforderlich.
III. Die zusätzlichen Mikrokommandos der festverdrahteten
Folgesteuerung sind an den Inhalt der Mikrobefehle nicht fest gebunden, sondern stehen
nur mit deren Adressen in loser Beziehung. Bei Betrachtung der Mikrobefehle (154) und (157) zeigt
sich, daß diese Mikrobefehle außer der Adresse des den Operanden enthaltenden (durch verschiedene
Kombinationen von P. Q, /ty adressierten Registers
miteinander übereinstimmen. In Auswirkung der beiden verschiedenen Adressen (154) und (157) erzeugen
sie jedoch verschiedene Mikrokommandos.
IV. Die zusätzlichen Mikrokommandos der festverdrahteten Folgesteuerung sind nicht nur von den
s Adressen des Mikrobefehls, sondern außerdem von den Bedingungssignalen abhängig. Wie gezeigt erzeugt
der Mikrobefehl (153) eine Gruppe von zusätzlichen Mikrokommandos, wenn er im Verlaufe
eines Mikroprogramms zum ersten Mal ausgeführt
ίο wird, und eine andere Gruppe bei den nachfolgenden
Ausführungen.
V. Die zusätzlichen Mikrokommandos aus der festverdrahteten
Folgesteuerung werden nicht gezwungen, sich schrittgleich mit dem Fortschreiten
is des Auslesens der Mikrobefehle im Festwertspeicher
zu verändern.: Sie können bei unterschiedlicher, gewöhnlich höherer Geschwindigkeit erzeugt
werden und bieten deshalb die Möglichkeit, aus einem einzigen Festwertspeicher-Mikrobefehl eine
Folge von Mikrobefehlen zu erhalten.
Es sei hier das Beispiel der Mikrobefehle (153) und (154) betrachtet
Der erste (153) erzeugt eine Gruppe von Mikrokommandos:
A. Q. R. S. T. U, V, C
und der zweite (154) die Gruppe:
A.Q.R.S.F.G.U.
und der zweite (154) die Gruppe:
A.Q.R.S.F.G.U.
Die Operandenadresse ist für beide Befehle dieselbe: Sie weichen nur durch die lediglich im ersten Mikrobeis
fehl vorhandenen Mikrokommandos T, V, C und durch die nur in dem zweiten Mikrobefehl vorhandenen Mikrokommandos
F, G voneinander ab.
Ein einziger sämtliche Mikrokommandos A. Q, R, S, T,
U. V.C.F.G erzeugender Mikrobefehl kann beide Mikrobefehle
ersetzen, sofern eine geeignete Einrichtung vorgesehen ist, um die dem Mikrobefehl zugestandene
Zeit aufzuteilen. Diese Einrichtung ist als Beispiel in F i g. 5 gezeigt, die nur die zur Verständlichmachung der
Arbeitsweise der für die Erfordernisse der nachstehend beschriebenen Arbeitsweise abgeänderten festverdrahteten
Folgesteuerung nach Fig.4 notwendigen Bestandteile zeigt.
Wenn die durch den Decodierer 100 decodierte Adresse die Befehlsadresse (153) ist, wird an der Leitung
102 ein Signal erzeugt und auf die Takteinheit 120 gegeben, die die Taktsteuerung der Mikrokommandos der
zentralen Verarbeitungseinheit regelt Dieses Signal befiehlt der Takteinheit, daß der laufende Mikrobefehl in
zwei daraus entstehende, in einem einzigen Mikrobefehlszyklus auszuführende Mikrobefehle aufgeteilt werden
soll.
In Auswirkung dieses Signals unterteilt die Takteinheit
den Mikrobefehlszyklus in zwei Phasen. Während der ersten Phase liefert die Takteinheit ein
u) umgekehrtes Signal 777 und während der zweiten Phase
ein direktes Signal TII. Diese Signale geben über die UND-Gatter 121 und 122 die Verbindung der Leitung
102 mit der Leitung 102/4 bzw. mit der Leitung 103 frei.
Das Signal an der Leitung 102/4 erzeugt über das
b5 UND-Gatter 108 und das ODER-Gatter 109 die bereits
bekannten Mikrokommandos b und cund zusätzlich ein
Mikrokommando k. Das Signal an der Leitung 103 liefert das bereits bekannte Mikrokommando /und unter
19
vorbestimmten Bedingungen außerdem die Mikrokommandos d und h. Auf diese Weise kann das nur in der
ersten Phase vorhandene Mikrokommando k dazu benutzt werden, mit Hilfe von nicht dargestellten UND-Gattern das Einwirken der Mikrokomnandos Fund G
während der ersten Phase zu unterbinden, während das nur in der zweiten Phase vorhandene Mikrokommando
/dazu benutzt werden kann, um in dieser zweiten Phuse
ti das Einwirken der Mikrokoniinandos T, V, C zu unterbinden. Auf oiese Weise wird der die Mikrokommandos iu
A, Q. R. S, T, U. V, C F, G erzeugende Mikrobefehl im
*_,. Verlaufe eines Mikrobefehlszyklus in zwei Mikrobefeh-Vj Ie aufgeteilt, von welchen der erste die Mikrokommandos A Q, R, S. T, U, V. Cund der zweite Mikrokomman- J" dos A, Q, R, S. F, G, U erzeugt, die dem Mikrobefehl is
(153) bzw. dem Mikrobefehl (154) entsprechen. ·.'* Es leuchtet ein, daß die gleiche Kombination und sta-
r* tisch-dynamische Erweiterung von Mikrobefehlen nach
: ί den gleichen Kriterien und bei den passenden Abänderungen selbst dann durchgeführt werden können, wenn
die festverdrahtete Folgesteuerung einem Mikroprogrammiersystem mit Hilfe der in Fig.2 dargestellten
Einrichtung zugeordnet ist, bei welcher das Eingreifen der festverdrahteten Folgesteuerung mit Hilfe eines besonderen Mikrobefehls erzielt wird.
30
35
40
45
50
55
60
h5
Claims (5)
1. Rechenanlagc mit
einer zentralen Verarbeitungscinhcit
mit einer Taktgebungsvorrichtung.
mit einer Mikroprogrammicr-Steucreinhcit mit einem Mikroprogrammspeicher zum Speichern einer
Folge von Mikrobefehlen,
mit einem Mikroadrcssenrcgister zum Speichern eines Mikrobefehlsadressen-Codes und
Adressieren des Mikroprogrammspeichers,
mit einem Mikrobcfchlsrcgistcr zum jeweils gleichzeitigen Speichern der Mikrobefehle, die aus dem
Mikroprogrammspeicher gelesen werden, und
mit einem ersten Decoder zum Decodieren des Inhalts des Mikrobefehlsregisicr.i in einer Fo:ge von
Mikrokommandos,
dadurch gekennzeichnet, daß er eine festverdrahtete Folgesteuerung (16) mit einem /weilen
Decoder (19) und einer Toreinrichtung (17) aufweist, um den Inhalt des Mikroadresscnrcgisters mit dem
Eingang des zweiten Decoders zu koppeln, wobei die Toreinrichtung (17) auf eines der Mikrokommandos anspricht, das infolge der Decodierung vorher-
bestimmter der Mikrobefehle aktiviert ist, und wobei der zweite Decoder am Ausgang eine Folge zusätzlicher Mikrokommandos liefert, die gemeinsam
mit den Mikrokommandos am Ausgang aus dem ersten Decoder die Arbeit der Rechcnanlage steuern.
2. Rechenanlage mit
einer zentralen Verarbeitungseinheit,
mit einer Taktgebungsvorrichtung,
mit einer Mikroprogrammier-Steuereinhcit mit einem Mikroprogrammspeicher zum Speichern einer js
Folge von Mikrobefehlen,
mit einem Mikroadresscnrcgistcr zum Speichern eines Mikrobefehlsadressen-Corlcs und
Adressieren des Mikroprogrammspeichers,
mit einem Mikrobcfchlsregister zum jeweils gleichzeitigen Speichern der Mikrobefehle, die aus dem
Mikroprogrammspeicher gelesen werden, und
mit einem ersten Decoder zum Decodieren des Inhalts des Mikrobefehlsrcgisters in einer Folge von
Mikrokommandos,
dadurch gekennzeichnet, daß er eine fest verdrahtete
Folgesteuerung (16) aufweist mit einem zusätzlichen Register (22) zum Speichern zumindest eines Teils
des Inhalts des Mikrobcfehlsregistcrs und einem zweiten Decoder (19) und mit einer Toreinrichlung
(26) zum Koppeln des Inhalts des zusätzlichen Registers an den Eingang des zweiten Decoders, wobei
die Toreinrichtung auf eines der Mikrokommandos anspricht, das infolge der Decodierung von vorherbestimmten dieser Mikrobefehle aktiviert ist,
wobei der zweite Decoder am Ausgang eine Folge zusätzlicher Mikrobefehle liefert, die zumindest mit
einem Teil der Mikrobefehle verbunden sind, die einem der Mikrobefehle vorangehen, und
wobei die zusätzlichen Mikrokommandos die Arbeil bo der Rechenanlagc zusammen mit den Mikrokommandos am Ausgang des ersten Decoders urul verbunden mit einem der vorherbestimmten Mikrobefehle steuern.
3. Rechenanlage nach Anspruch 1 oder 2. dadurch t>5
gekennzeichnet, daß die festverdrahtete Folgesteuerung ein Bedingungsnetzwerk (34) umfaßt, das im
Eingang mindestens einen Teil der zusätzlichen Mikrokommandos und Bedingungssignale (21) empfängt, die in der Rechenanlage bestehende Bedingungen darstellen, wobei dieses Bedingungsnetzwerk im Ausgang eine Foige von konditionierten
Mikrokommandos abgibt
4. Rechenanlage nach Anspruch 1 oder Z dadurch gekennzeichnet, daß die festverdrahtete Folgesteuerung zusätzliche Schaltungseinrichtungen (121,122)
umfaßt, die im Eingang zumindest einen Teil der zusätzlichen Mikrokommandos empfangen und
Taktgcbersignalc, die aus der Taktgebereinheit (120) kommen.
wobei die zusätzliche Sleuerschaltungseinrichtung im Ausgang eine Folge zeillich bestimmter Mikrokommandos abgibt
5. Rechenanlage nach Anspruch 1 oder 2, gekennzeichnet durch weitere Toreinrichtungen (9,10), die
von ausgewählten der zusätzlichen Mikrokommandos zum Steuern des Ladens des Mikroadressenregisters gesteuert werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT22889/72A IT951233B (it) | 1972-04-07 | 1972-04-07 | Sistema di comando di un calcola tore mediante microprogrammazione ed estensione dinamica delle fun zioni di controllo ottenuta da reti logiche |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2318069A1 DE2318069A1 (de) | 1973-10-31 |
DE2318069C2 true DE2318069C2 (de) | 1984-12-06 |
Family
ID=11201567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2318069A Expired DE2318069C2 (de) | 1972-04-07 | 1973-04-06 | Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix |
Country Status (7)
Country | Link |
---|---|
US (1) | US3872447A (de) |
JP (1) | JPS5547418B2 (de) |
CA (1) | CA991753A (de) |
DE (1) | DE2318069C2 (de) |
FR (1) | FR2182452A5 (de) |
GB (1) | GB1421017A (de) |
IT (1) | IT951233B (de) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5044752A (de) * | 1973-08-23 | 1975-04-22 | ||
US3949370A (en) * | 1974-06-06 | 1976-04-06 | National Semiconductor Corporation | Programmable logic array control section for data processing system |
US3972029A (en) * | 1974-12-24 | 1976-07-27 | Honeywell Information Systems, Inc. | Concurrent microprocessing control method and apparatus |
JPS51127015A (en) * | 1975-04-25 | 1976-11-05 | Kohjin Co Ltd | Polymerization inhibition of n,n'- disubstituted acryl amides accompan ifd with less discoloration |
DE2555963C2 (de) * | 1975-12-12 | 1982-10-28 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur Funktionsmodifizierung |
US4084229A (en) * | 1975-12-29 | 1978-04-11 | Honeywell Information Systems Inc. | Control store system and method for storing selectively microinstructions and scratchpad information |
US4124893A (en) * | 1976-10-18 | 1978-11-07 | Honeywell Information Systems Inc. | Microword address branching bit arrangement |
SE413707B (sv) * | 1977-02-28 | 1980-06-16 | Ellemtel Utvecklings Ab | Anordning hos en programminnesstyrd telekommunikationsanleggning |
US4118773A (en) * | 1977-04-01 | 1978-10-03 | Honeywell Information Systems Inc. | Microprogram memory bank addressing system |
US4179736A (en) * | 1977-11-22 | 1979-12-18 | Honeywell Information Systems Inc. | Microprogrammed computer control unit capable of efficiently executing a large repertoire of instructions for a high performance data processing unit |
US4161026A (en) * | 1977-11-22 | 1979-07-10 | Honeywell Information Systems Inc. | Hardware controlled transfers to microprogram control apparatus and return via microinstruction restart codes |
US4156278A (en) * | 1977-11-22 | 1979-05-22 | Honeywell Information Systems Inc. | Multiple control store microprogrammable control unit including multiple function register control field |
US4450525A (en) * | 1981-12-07 | 1984-05-22 | Ibm Corporation | Control unit for a functional processor |
DE3271123D1 (en) * | 1982-06-08 | 1986-06-19 | Ibm Deutschland | Circuits in the control part of a microprogrammable processor for direct hardware execution of selected instructions |
US4604691A (en) * | 1982-09-07 | 1986-08-05 | Nippon Electric Co., Ltd. | Data processing system having branch instruction prefetching performance |
DE3241396A1 (de) * | 1982-11-09 | 1984-05-10 | Siemens AG, 1000 Berlin und 8000 München | Vorrichtung zur bereitstellung einer 'continue'-adresse fuer einen mikroprogramm-gesteuerten sequenzer und verfahren zu seinem betrieb |
US5218712A (en) * | 1987-07-01 | 1993-06-08 | Digital Equipment Corporation | Providing a data processor with a user-mode accessible mode of operations in which the processor performs processing operations without interruption |
US5155817A (en) * | 1988-04-01 | 1992-10-13 | Kabushiki Kaisha Toshiba | Microprocessor |
JPH02183830A (ja) * | 1988-12-21 | 1990-07-18 | Internatl Business Mach Corp <Ibm> | マイクロプログラム変換機構を有するコンピュータ |
US5333287A (en) * | 1988-12-21 | 1994-07-26 | International Business Machines Corporation | System for executing microinstruction routines by using hardware to calculate initialization parameters required therefore based upon processor status and control parameters |
DE69425377T2 (de) * | 1994-11-29 | 2001-02-15 | Ibm | Einzel-Zyklus-Prozessor zur Echtzeitsverarbeitung |
US5717942A (en) * | 1994-12-27 | 1998-02-10 | Unisys Corporation | Reset for independent partitions within a computer system |
US5603005A (en) * | 1994-12-27 | 1997-02-11 | Unisys Corporation | Cache coherency scheme for XBAR storage structure with delayed invalidates until associated write request is executed |
US6279098B1 (en) | 1996-12-16 | 2001-08-21 | Unisys Corporation | Method of and apparatus for serial dynamic system partitioning |
US5960455A (en) * | 1996-12-30 | 1999-09-28 | Unisys Corporation | Scalable cross bar type storage controller |
US5822766A (en) * | 1997-01-09 | 1998-10-13 | Unisys Corporation | Main memory interface for high speed data transfer |
US5970253A (en) * | 1997-01-09 | 1999-10-19 | Unisys Corporation | Priority logic for selecting and stacking data |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1020924A (de) * | 1961-08-25 | |||
US3579192A (en) * | 1967-11-02 | 1971-05-18 | Burroughs Corp | Data processing machine |
US3646522A (en) * | 1969-08-15 | 1972-02-29 | Interdata Inc | General purpose optimized microprogrammed miniprocessor |
US3631405A (en) * | 1969-11-12 | 1971-12-28 | Honeywell Inc | Sharing of microprograms between processors |
US3725868A (en) * | 1970-10-19 | 1973-04-03 | Burroughs Corp | Small reconfigurable processor for a variety of data processing applications |
US3736567A (en) * | 1971-09-08 | 1973-05-29 | Bunker Ramo | Program sequence control |
-
1972
- 1972-04-07 IT IT22889/72A patent/IT951233B/it active
-
1973
- 1973-04-02 US US347316A patent/US3872447A/en not_active Expired - Lifetime
- 1973-04-03 CA CA168,308A patent/CA991753A/en not_active Expired
- 1973-04-06 DE DE2318069A patent/DE2318069C2/de not_active Expired
- 1973-04-06 FR FR7312548A patent/FR2182452A5/fr not_active Expired
- 1973-04-07 JP JP3996473A patent/JPS5547418B2/ja not_active Expired
- 1973-04-09 GB GB1699473A patent/GB1421017A/en not_active Expired
Non-Patent Citations (1)
Title |
---|
NICHTS-ERMITTELT |
Also Published As
Publication number | Publication date |
---|---|
DE2318069A1 (de) | 1973-10-31 |
JPS4911043A (de) | 1974-01-31 |
GB1421017A (en) | 1976-01-14 |
JPS5547418B2 (de) | 1980-11-29 |
FR2182452A5 (de) | 1973-12-07 |
US3872447A (en) | 1975-03-18 |
IT951233B (it) | 1973-06-30 |
CA991753A (en) | 1976-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2318069C2 (de) | Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix | |
DE2555963C2 (de) | Einrichtung zur Funktionsmodifizierung | |
DE1449531C3 (de) | Prozessor, vorzugsweise für ein modul ares Mehrprozessorsystem | |
DE1774296C2 (de) | Restruktuierbare Steuereinheit für elektronische Digitalrechner | |
DE2113890C2 (de) | Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen | |
DE2322674C3 (de) | Mikroprogramm-Steuereinrichtung | |
DE2715073C3 (de) | Mikroprogrammierte Rechner-Steuervorrichtung | |
DE2847934A1 (de) | Datenverarbeitungseinrichtung mit einem mikrobefehlsspeicher | |
DE1931966C3 (de) | Datenverarbeitungsanlage mit Assoziativspeichern | |
EP0097725B1 (de) | Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen | |
DE1499200B2 (de) | Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung | |
CH650600A5 (de) | Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister. | |
DE2813128A1 (de) | Mikroprogrammspeicher | |
DE2746505C2 (de) | ||
DE1275800B (de) | Steuerwerk fuer datenverarbeitende Maschinen | |
DE3043653C2 (de) | Datenverarbeitungsanlage | |
DE1269393B (de) | Mikroprogramm-Steuerwerk | |
EP0010185A1 (de) | Virtuell-Adressiervorrichtung für einen Computer | |
DE1806535A1 (de) | Digitale Rechenanlage | |
DE1499191B2 (de) | Elektronische einrichtung fuer eine datenverarbeitungsanlage | |
DE2245284A1 (de) | Datenverarbeitungsanlage | |
DE2336676B2 (de) | Einrichtung zur Modifizierung von Mikroprogrammbefehlen | |
DE1499224C3 (de) | Datenverarbeitungsanlage mit Kellerspeichereinrichtungen | |
DE2744252C2 (de) | ||
DE1222289B (de) | Datenverarbeitungseinrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
8120 | Willingness to grant licences paragraph 23 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |