DE1499175B2 - Steuereinrichtung in einem mehrspezies rechner - Google Patents
Steuereinrichtung in einem mehrspezies rechnerInfo
- Publication number
- DE1499175B2 DE1499175B2 DE1965C0036318 DEC0036318A DE1499175B2 DE 1499175 B2 DE1499175 B2 DE 1499175B2 DE 1965C0036318 DE1965C0036318 DE 1965C0036318 DE C0036318 A DEC0036318 A DE C0036318A DE 1499175 B2 DE1499175 B2 DE 1499175B2
- Authority
- DE
- Germany
- Prior art keywords
- register
- functional unit
- registers
- input
- data
- 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
Links
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000000034 method Methods 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000007792 addition Methods 0.000 description 9
- 239000003550 marker Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000005352 clarification Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
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)
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
Description
Die Erfindung betrifft eine Steuereinrichtung in einem Mehrspeziesrechner, welcher eine Datenregistergruppe
zur Aufnahme von Eingabe- und Resultatoperanden, zumindest einen arithmetisch/logischen
Steuerteil zur Durchführung von verschiedenen Rechnungsarten, z. B. Grundrechnungsarten, sowie einen
mit der Datenregistergruppe zusammenwirkenden zentralen Speicher umfaßt, mit einem Taktgeber zur
aufeinanderfolgenden Einspeisung von Befehlen in ein Befehlsregister bzw. Aufbereitung eines in diesem
enthaltenen Befehls, wobei jeder Befehl in kodierter Form die durchzuführende Rechnungsart sowie die
Adressen der Register für die Eingabe- und den Resultatoperanden enthält.
Bei bekannten Steuereinrichtungen der erwähnten Art nimmt der arithmetisch/logische Steuerteil von
der Datenregistergruppe Befehle in einem zeitlichen Abstand auf, welcher der erforderlichen Zeit zur
Durchführung einer Rechenoperation in dem arithmetisch/logischen Steuerteil entspricht. Obgleich diese
letztgenannte Baueinheit alle vorgesehenen Rechenoperationen durchzuführen vermag, beispielsweise die
vier Grundrechnungsarten, wird zu jedem Zeitpunkt in der Baueinheit lediglich eine einzige Rechenoperation
durchgeführt, wobei der zeitliche Mindestabstand zwischen zwei eingehenden Befehlen durch
die von dem arithmetisch/logischen Steuerteil beanspruchte Zeit zur Durchführung der betreffenden
Rechenoperation festgelegt ist. Da der arithmetisch/ logische Steuerteil jedoch alle vorgesehenen Rechen-
3 4
operationen durchzuführen vermag, ist zu jedem operationen unter Verwendung jeweils gleicher Daten-Zeitpunkt
lediglich ein bestimmter Teil innerhalb des register für die Eingangs- und den Ausgangsoperanden
arithmetisch/logischen Steuerteils in Betrieb, während in zwei unmittelbar aufeinanderfolgenden Befehlen
andere zur Durchführung anderer Rechenoperationen vorgeschrieben sind, entspricht der zeitliche Abstand
vorgesehene Teile im Ruhezustand verbleiben. Häufig 5 zwischen der Abgabe des Resultates aus der ersten
sind jedoch Rechenoperationen entsprechend einer Rechenoperation und des Resultates aus der zweiten
Aufeinanderfolge von Befehlen durchzuführen, welche Rechenoperation der von der betreffenden Funktionsunterschiedlichen
Arten von Rechenoperationen zu- einheit beanspruchten Zeit zur Durchführung eines
geordnet sind; beispielsweise kann ein erster Befehl Rechenvorganges, so daß in diesem ungünstigsten
eine Addition, ein zweiter Befehl eine Multiplikation io Fall die beanspruchte Zeit derjenigen bei einer be-
und ein dritter Befehl eine Division enthalten, wenn kannten Steuereinrichtung nach dem Stand der
der Rechner zur Durchführung von Grundrechnungs- Technik entspricht. Da dieser ungünstigste Fall
arten ausgebildet ist. Vom Aufbau des arithmetisch/ indessen statistisch betrachtet in vielen Fällen nur
logischen Steuerteils her wäre ein solcher Rechner bei einem bestimmten prozentualen Anteil aller
durchaus in der Lage, die drei genannten Rechen- 15 Befehle auftritt, ergibt sich im Durchschnitt eine
operationen gleichzeitig oder in einer sehr kurzen bessere Ausnutzung des die Funktionseinheiten entAufeinanderfolge
auszuführen, deren Intervalle ledig- haltenden arithmetisch/logischen Steuerteils sowie inslich
dem zeitlichen Mindestabstand zwischen zwei besondere auch eine schnellere Verarbeitung der
Befehlen entsprechen, nicht jedoch der zur Durch- Befehle, so daß diese im Durchschnitt gegenüber
führung einer Rechenoperation in dem arithmetisch/ 20 dem Stand der Technik weniger lang in einem dem
logischen Steuerteil beanspruchten Zeit. Sofern man Rechner vorgeordneten Pufferregister gespeichert weres
in einem solchen Fall bei den bekannten Rechnern den müssen.
nicht vorzieht, mehrere arithmetisch/logische Steuer- Ausführungsbeispiele der Erfindung sind nach-
teile vorzusehen, von denen jeder sämtliche Rechen- stehend an Hand der Zeichnungen näher erläutert,
operationen durchführen kann, wobei ein Parallel- 25 Es zeigt
betrieb der Steuerteile möglich ist, allerdings mit F i g. 1 ein Ausführungsbeispiel eines Teils einer
beträchtlichem baumäßigem Mehraufwand für die erfindurigsgemäßen Steuereinrichtung in Blockschaltmehrfach
vorzusehenden Steuerteile, läßt sich die bilddarstellung,
vorangehend entwickelte Problemstellung mit be- F i g. 2 ein Beispiel eines Befehls zur Betätigung
kannten Mehrspeziesrechnern nicht lösen. 30 einer erfindungsgemäßen Steuereinrichtung in sche-
Aufgabe der Erfindung ist die Schaffung eines matischer Darstellung,
gegenüber dem Stand der Technik verbesserten Mehr- F i g. 3 den Hauptteil einer erfindungsgemäßen
Speziesrechners, welcher, bezogen auf einen einzigen Steuereinrichtung, welcher zur Zusammenwirkung
arithmetisch/logischen Steuerteil, der zur Durchfüh- mit der Anordnung gemäß F i g. 1 bestimmt ist, in
rung aller gewünschten Rechenoperationen ausgelegt 35 Blockschaltbilddarstellung.
ist, eine bessere Ausnutzung dieses Steuerteils und Wie sich aus F i g. 2 ergibt, ist die in den Zeichgleichzeitig
eine im Durchschnitt schnellere Ver- nungen veranschaulichte Steuereinrichtung zur Verarbeitung
der aufeinanderfolgenden Befehle ermög- arbeitung von Befehlen bestimmt, welche aus fünf
licht. Erreicht wird dies durch je eine Funktionseinheit Bitgruppen k, j, i, m, /bestehen. Hierbei enthalten
für jede Rechnungsart, eine auf jeden neuen Befehl 40 die Bitgruppe /c die Adresse eines zur Aufnahme
ansprechende Übertragungseinrichtung zur eventuellen eines ersten Eingangsoperanden bestimmten Daten-Abgabe
einer oder zweier Belegungsadressen, welche registers, die Bitgruppe./ die Adresse eines zur Aufeinem
oder zwei gemäß dem Befehl für einen oder nähme eines zweiten Eingangsoperanden bestimmten
beide Eingangsoperanden angerufenen, jedoch vor- Datenregisters, die Bitgruppe i die Adresse eines
angehend bereits von einer anderen Funktionseinheit 45 zur Aufnahme eines Resultates bestimmten Datenbelegten Datenregistern entsprechen, an zumindest registers und die Bitgruppen m, f die Adresse einer
eines von zwei jeder Funktionseinheit zugeordneten, zur Verarbeitung der beiden Eingangsoperanden vorseitens
der Übertragungseinrichtung zu beaufschla- gesehenen Funktionseinheit.
genden Reservierregistern zur Sperrung der zugeord- Gemäß F i g. 1 handelt es sich bei dem beispielsneten
Funktionseinheit beim Vorliegen einer Be- 50 weisen Mehrspeziesrechner, mit dem die Steuereinlegungsadresse
in zumindest einem der Reservier- richtung zusammenwirken soll, um einen Dreispeziesregister
und eine jedem Reservierregister zugeordnete rechner für Addition, Multiplikation und Division,
Gruppe von in ihrer Anzahl der Anzahl der Funk- wobei eine Funktionseinheit 138/A zur Durchführung
tionseinheiten entsprechenden Freigabetaststufen, de- von Additionen, Funktionseinheiten 140/M, 142/M
ren jede über einen je einer Funktionseinheit oder 55 zur Durchführung von Multiplikationen und eine
einem zur Aufnahme von Eingangsoperanden be- Funktionseinheit 144/D zur Durchführung von Divistimmten
Datenregister zugeordneten, auf das Ende sionen vorgesehen sind. Den vier Funktionseinheiten
der Belegung der entsprechenden Funktionseinheit 138, 140, 142, 144 ist eine Datenregistergruppe,
bzw. des entsprechenden Datenregisters ansprechenden umfassend Datenregister XO, Xl, X2, X3, X4, X5,
Tasteingang zu öffnen ist. 60 X6, Xl, zugeordnet. Strenggenommen handelt es sich
Die erfindungsgemäße Steuereinrichtung ermöglicht bei diesen letztgenannten Baueinheiten lediglich um
im günstigsten Fall, wenn nämlich die zwei durch- Datenregister-Markierer, um die Einspeicherung in
zuführenden Rechenoperationen entsprechenden Be- ein zugeordnetes Datenregister bzw. die Ausspeichefehle unterschiedliche Funktionseinheiten und Adres- rung aus einem zugeordneten Datenregister zu
sen unterschiedlicher Datenregister für die Eingangs- 65 steuern, jedoch ist dies für die folgenden Erläute-
und Ausgangsoperanden enthalten, die praktisch rungen unerheblich, weil jedes Datenregister mit dem
gleichzeitige Durchführung zweier Rechenoperationen. zugehörigen Datenregister-Markierer zu einer Bau-Im
ungünstigsten Fall, wenn zwei gleiche Rechen- einheit vereinigt gedacht werden kann. Es ist daher
5 6
nachfolgend immer der Begriff »Datenregister« ver- Über einen ersten Ausgang« der Befchlsdurchlaß-
wendet. Und-Stufe 630 wird ein Wähler 642 angesteuert,
Die Datenregister ZO bis Xl sind sämtlichen welcher in einem ersten (in F i g. 1 oben) dargestell-Funktionseinheiten
138, 140, 142, 144 zugeordnet ten Teil die zur Durchführung der Rechenoperation und dienen sowohl zur Aufnahme von Eingangs- 5 bestimmte Funktionseinheit mittels eines ausgangsals
auch Resultatoperanden, wobei keinerlei Speziali- seitig abgegebenen Wählsignals fest einstellt und
sierung irgendeines Datenregisters auf irgendeine Art belegt. In einem zweiten (unteren) Teil prüft der
von Operanden und irgendeine der Funktionsein- Wähler 642, ob der betreffenden Funktionseinheit
heiten vorliegt. Die Datenregister ZO bis Xl stehen zugeordnete nachfolgend zu erläuternde Operandenmit
einem (nicht veranschaulichten) zentralen Speicher io Wählregister unbelegt sind oder nicht. Unter Bezugin
Verbindung, welcher einerseits Befehle (ent- nähme auf F i g. 3 sei angenommen, daß die Funksprechend F i g. 2) in schneller Aufeinanderfolge aus- tionseinheit 138 fest eingestellt und belegt worden
gibt und Resultatoperanden aus den Datenregistern sei. Dieser Funktionseinheit ist ein für die Aufnahme
(unter Mitwirkung nicht veranschaulichter Steuer- der Bitgruppe j bestimmtes Operandenwählregister
einrichtungen) auszuspeichern vermag. 15 508/F3-, ein zur Aufnahme der Bitgruppe k bestimmtes
Von dem erwähnten zentralen Speicher gelangt ein Operandenwählregister 510/Fj,- und ein zur Aufnahme
Befehl an einen Bitgruppenverteiler 598/E/', welcher der Bitgruppe i bestimmtes Resultatwählregister512/Fi
alle in Aufeinanderfolge eingehenden Befehle in Bit- zugeordnet. Wenn für die beiden der Funktionseinheit
gruppen ausspaltet, wobei an einem ersten Ausgang 138 zuzuführenden Eingangsoperanden je ein Datendie
Bitgruppen /, m, /, k, an einem zweiten Ausgang 20 register aus der Datenregistergruppe XO bis Xl zur
lediglich die Bitgruppe ζ und an einem dritten Aus- Verfügung steht, so werden die Bitgruppen j, k von
gang lediglich die Bitgruppen /, m erscheinen. Der dem Wähler 642 auf das Operandenwählregister 508/F/
genannte zweite Ausgang des Bitgruppenverteilers 598 bzw. 51OjFk übertragen. Trifft diese Voraussetzung
liegt an einem Resultatregisterprüfer 602/1/2, welcher jedoch für einen oder beide Eingangsoperanden nicht
sämtliche Datenregister JSfO bis Xl im Hinblick auf 25 zu, ist also das für zumindest einen der Eingangsdas
Vorliegen eines unbelegten und zur Einspeiche- Operanden vorgesehene Datenregister gerade belegt,
rung eines Resultates geeigneten Datenregisters prüft. was der Wähler 642 durch Aufprüfen feststellt, so
Der dritte erwähnte Ausgang des Bitgruppenver- geht ein Belegtsignal über eine in F i g. 1 mit Doppelteilers
598 liegt an einem Funktionseinheitsprüfer 612, pfeil veranschaulichte Leitung zurück zu der Befehlswelcher
prüft, ob die in den Bitgruppen /, m des 30 durchlaß-Und-Stufe 630. Diese gibt über einen dritten
Befehls angesprochene Funktionseinheit unbelegt ist Ausgang c ein Ubertragungssignal an eine Über-
und damit für die auszuführende Rechenoperation tragungseinrichtung 640 (bzw. deren oberen Teil in
zur Verfügung steht. Der erstgenannte Ausgang des F i g. 1) ab, wobei die Übertragungseinrichtung 640
Bitgruppenverteilers 598 liegt am ersten Eingang gleichzeitig durch einen zweiten Ausgang b der Beeiner
Einordnungsstufe 624, welche über einen zweiten 35 fehlsdurchlaß-Und-Stufe 630 beaufschlagt ist, sofern
Eingang mit der Bitgruppe ζ beaufschlagt ist. Der diese letztgenannte Stufe geöffnet ist (diese letztere
Ausgang der Einordnungsstufe 624 liegt an einem Voraussetzung soll gemäß den vorangehenden Er-Signaleingang
einer Befehlsdurchlaß-Und-Stufe 630. läuterungen zutreffen, weil ja bereits bei dem ersten
Steht das in dem Befehl durch die Bitgruppe i Ausgang α ein Ausgangssignal als vorliegend angebezeichnete,
für das Resultat vorgesehene Register 40 nommen wurde). Die Übertragungseinrichtung 640
in der Gruppe der Datenregister XO bis Xl zur Ver- (oberer Teil in Fig. 1) steht mit je zwei Reservierfügung,
so gelangt ein Freigabesignal über eine registern Qj, Qk jeder Funktionseinheit in Verbindung.
Oderstufe 20 zu einem ersten Tasteingang der Befehls- Insbesondere besteht also gemäß F i g. 3 eine Verdurchlaß-Und-Stufe
630. Ist ferner die durch die Bit- bindung zu Reservierregistern 514/ζλ; und 516/Qic.
gruppen /, m des Befehls angerufene Funktions- 45 Wenn demnach für einen oder beide Eingangsopeeinheit
unbelegt, so gelangt über eine Oderstufe 21 randen kein Datenregister aus der Datenregisterein
Tastsignal zu einem zweiten Tasteingang der gruppe XO bis Xl zur Verfügung steht, beispiels-Befehlsdurchlaß-Und-Stufe
630. Die Befehlsdurchlaß- weise für den Eingangsoperanden entsprechend der Und-Stufe 630 kann demgemäß ausgangsseitig nur Bitgruppe 7 des Befehls, so wird diese Bitgruppe bei
dann den von der Einordnungsstufe 624 abgegebenen 50 dem gewählten Beispiel in das Reservierregister 514/ßi
Gesamtbefehl, bestehend aus den Bitgruppen /, m, i, übertragen. Die Übertragungseinrichtung 640 (untere
j, k, durchlassen, wenn sowohl das zur Speicherung Hälfte derselben in F i g. 1) bewirkt ferner die Uberdes
Resultates in den Befehl in Aussicht genommene tragung der Bitgruppe i auf ein der betreffenden ein-Datenregister
aus der Datenregistergruppe XO bis gestellten Funktionseinheit zugeordnetes Resultat-ZT
als auch die in dem Befehl in Aussicht genom- 55 wählregister Fi, im Falle der als eingestellt angenommene
Funktionseinheit aus der Gruppe der Funk- menen Funktionseinheit 138 also auf ein Resultattionseinheiten
138, 140, 142, 144 frei ist. Wenn eine wählregister 512/Fi (F i g. 3). Im Gegensatz zu den
dieser beiden Bedingungen nicht erfüllt ist, kann ein beiden Operandenwählregistern 514/Qj und 516IQk
weiterer Befehl in den Bitgruppenverteiler 598 so ist bezüglich des Resultatwählregisters 512/Fi bereits
lange nicht eingespeist werden, bis für den vorliegend 60 das Vorliegen eines zur Aufnahme des Resultates
betrachteten Befehl bzw. die vorliegend betrachtete bestimmten freien Datenregisters aus der Daten-Rechenoperation
ein freies Resultatregister und eine registergruppe ZO bis Xl gesichert, da andernfalls
freie Funktionseinheit vorliegen. Wenn diese beiden die Befehlsdurchlaß-Und-Stufe 630 nicht geöffnet
Bedingungen erfüllt sind, wird andererseits die Be- worden wäre.
fehlsdurchlaß-Und-Stufe 630 geöffnet, ohne Rücksicht 65 Unter Bezugnahme auf F i g. 3 sei zuerst angenom-
darauf, ob auch für die beiden der betreffenden men, daß für beide Eingangsoperanden entsprechende
Funktionseinheit zugeführten Eingangsoperanden ein freie Datenregister aus der Datenregistergruppe ZO bis
freies Datenregister vorliegt oder nicht. Xl zur Verfügung stehen. Unter dieser Voraussetzung
wurden durch die Übertragungseinrichtung 640 auf die Reservierregister 514/Qj und 5\6IQk- keine Bitgruppen
übertragen, so daß diese Reservierregister der Funktionseinheit 138 leer sind. Wenn dies der
Fall ist, so überträgt jedes der beiden Reservierregister über einen O-Ausgang sowie eine nachgeordnete
Oder-Stufe, beispielsweise eine Oder-Stufe 722, ein Signal auf einen Lesemarkierer 728 bzw. 806.
Die Ausgänge beider Lesemarkierer stehen über eine Und-Stufe 734 mit einem Starteingang der Funktionseinheit 138 in Verbindung, welcher den Beginn einer
Rechenoperation in der Funktionseinheit 138 auslöst. Die Funktionseinheit 138 kann also nur in Betrieb
gesetzt werden, wenn die Reservierregister 514/0 und
516/Qic beide leer sind, wenn also mit anderen Worten
für beide Eingangsoperanden ein Datenregister aus der Datenregistergruppe XO bis Xl vorliegt, was annahmegemäß
ja der Fall sein soll.
Jeder der Lesemarkierer 728, 806 weist eine der Anzahl der Datenregister XO bis Xl entsprechende
Anzahl von Ausgängen auf, im vorliegenden Fall acht Ausgänge, was durch eine eingeringelte Ziffer »8«
in F i g. 3 veranschaulicht ist. Jedem der acht Ausgänge jedes Lesemarkierers 728 bzw. 806 ist je eine
Und-Stufe zugeordnet, beispielsweise eine Und-Stufe 738, deren jeweils zweiter Eingang von einem von
acht Ausgängen des Operandenwählregisters 508/Fj bzw. 510/Fk beaufschlagt ist. Je nach der in dem
betreffendenJOperandenwählregiser508/.F;/ bzw. 510/Fk
enthaltenen Bitgruppe j bzw. k wird je eine der Und-Stufen, d. h. insgesamt zwei Und-Stufen, aktiviert.
Jede der Und-Stufen ist ausgangsseitig mit je einem von acht Eingängen eines der Datenregister AO bis Xl
verbunden. Es ist also gemäß F i g. 3 die erste Und-Stufe 738 des Operandenwählregisters 508//} mit einem
Eingang Bj0 des Datenregisters XO verbunden; die
achte Und-Stufe des Operandenwählregisters 508//} ist mit einem Eingang Bj7 des Datenregisters Xl verbunden;
die erste Und-Stufe des Operandenwählregisters 510/Fk ist mit einem Eingang Bk0 des Datenregisters
XO verbunden; die achte Und-Stufe des Operandenwählregisters 510/Fk ist mit einem Eingang
Bk7 des Datenregisters Xl verbunden. Dies gilt
in analoger Weise auch für die (nicht veranschaulichten) Operandenwählregister Fj, Fk aller anderen drei
Funktionseinheiten 140, 142, 144, von denen in F i g. 3 lediglich der besseren Übersicht halber noch
die Funktionseinheit 140 veranschaulicht ist. Diese Funktionseinheit 140 weist ebenfalls Und-Stufen entsprechend
der Und-Stufe 738 auf, wobei die erste dem Operandenwählregister Fj (in F i g. 3 nicht veranschaulicht)
zugeordnete Und-Stufe mit einem Eingang Dj0 des Datenregisters XO verbunden ist; die
achte Und-Stufe des Operandenwählregisters /} mit dem Eingang Dj7 des Datenregisters Xl; die erste
Und-Stufe des Operandenwählregisters Fu (in F i g. 3
nicht veranschaulicht) mit einem Eingang Dk0 des
Datenregisters ZO; die achte Und-Stufe des Operandenwählregisters Fk mit einem Eingang Dk -, des Datenregisters
Xl. Jedes der Datenregister XO bis Xl weist insgesamt acht Eingänge bzw. vier Paare von Eingängen
auf, wobei jedes Paar von Eingängen von je zwei Und-Stufen beaufschlagt ist, die einem Paar von
Operandenwählregistern Fj, Fk einer bestimmten Funktionseinheit zugeordnet sind.
Aus den vorangehenden Ausführungen ergibt sich demnach, daß jeder der acht Ausgänge jedes der
Operandenwählregister Fj bzw. Fk irgendeiner der
Funktionseinheiten 138, 140, 142, 144 mit irgendeinem der acht Eingänge eines der Datenregister XO bis Xl
in Verbindung treten kann, und zwar in Abhängigkeit von der Bitgruppe / bzw. k die in dem betreffenden
Operandenwählregister Fj bzw. Fk eingespeichert
wurde.
Wenn also beispielsweise ein Additionsbefehl für die Funktionseinheit 138 vorliegt und für die beiden
ίο Eingangsoperanden durch die Bitgruppen j, k die
Datenregister XO und Xl bestimmt wurden, so wird von dem Operandenwählregister 508//}· über die Und-Stufe
738 ein Tastsignal auf den Eingang Bj0 des Datenregisters 1 übertragen und von der zweiten Und-Stufe
des Operandenwählregisters 510/Fk ein Tastsignal auf den zweiten Eingang des Datenregisters Xl.
Damit können diese beiden Datenregister Eingangsoperanden von dem (nicht gezeigten) zentralen
Speicher aufnehmen und auf die bereits in Betrieb gesetzte Funktionseinheit 138 übertragen.
Jedes Datenregister XO bis Xl weist eine Anzahl von vier Ausgängen entsprechend · vier Funktionseinheiten 138, 140, 142, 144 auf. Jeder erste Ausgang
jedes Datenregisters AO, A"7 ist hierbei mit einer Gruppe von acht Und-Stufen 812 verbunden, deren
jeweils zweiter Eingang durch je einen von acht Ausgängen des Resultatwählregisters 511/Fj beaufschlagt
ist. In analoger Weise sind die drei anderen Resultatwählregister Fi, die in F i g. 3 nicht veranschaulicht
sind und in Zuordnung zu den Funktionseinheiten 140, 142, 144 stehen, dem jeweils zweiten, jeweils dritten
bzw. jeweils vierten Ausgang jedes der Datenregister AO bis Xl zugeordnet. Im vorliegenden Beispiel gemäß
F i g. 3 ist jedoch nur eine der Und-Stufen 812 geöffnet, und zwar diejenige, welche gemäß der Bitgruppe
i dem zur Aufnahme des Resultates bestimmten Datenregister zugeordnet ist. Wenn also beispielsweise
das Datenregister A"2 zur Aufnahme des Resultates
der Funktionseinheit 138 bestimmt ist (die Tatsache, daß das Datenregister Xl unbelegt ist, wurde
gemäß den vorangehenden Ausführungen bereits durch die Befehlsdurchlaß-Und-Stufe 630 von F i g. 1
sichergestellt), so gelangt über die dritte Und-Stufe 812 ein Ausgangssignal zu einer Oder-Stufe 820 und weiter
zu einem Inverter 824, welcher eine Resultatübertragung auf das Datenregister Xl auslöst. Von dem
Datenregister Xl kann danach eine Rückübertragung
in den zentralen Datenspeicher erfolgen.
Vorangehend war von der Ausnahme ausgegangen worden, daß die Reservierregister 514/Qj, 516/Qk der Funktionseinheit 138 leer seien. Trifft diese Voraussetzung indessen nicht zu (liegt also für einen oder beide Eingangsoperanden kein freies Datenregister innerhalb der Datenregistergruppe AO bis A"7 vor), so wird über den 0-Ausgang einer oder beider Reservierregister 514/Qj, 516/Qk kein Ausgangssignal an die Oder-Stufe 722 abgegeben. Einer oder beide der Lesemarkierer 728 geben daher kein Ausgangssignal an die Und-Stufe 734 ab, so daß infolgedessen die Funktionseinheit 138 vorläufig nicht mit der Rechenoperation beginnen kann. Jedem Reservierregister Qj, Qic aller Funktionseinheiten 138, 140, 142, 144, im betrachteten Fall von F i g. 3 den Reservierregistern 514/0,- und 516/öjfc, sind je zwölf Und-Stufen 720 zugeordnet, von denen in F i g. 3 lediglich eine erste Und-Stufe 720 und eine zwölfte Und-Stufe 800 veranschaulicht sind. Jede der genannten Und-Stufen ist an je einem Eingang durch einen von zwölf Ausgängen
Vorangehend war von der Ausnahme ausgegangen worden, daß die Reservierregister 514/Qj, 516/Qk der Funktionseinheit 138 leer seien. Trifft diese Voraussetzung indessen nicht zu (liegt also für einen oder beide Eingangsoperanden kein freies Datenregister innerhalb der Datenregistergruppe AO bis A"7 vor), so wird über den 0-Ausgang einer oder beider Reservierregister 514/Qj, 516/Qk kein Ausgangssignal an die Oder-Stufe 722 abgegeben. Einer oder beide der Lesemarkierer 728 geben daher kein Ausgangssignal an die Und-Stufe 734 ab, so daß infolgedessen die Funktionseinheit 138 vorläufig nicht mit der Rechenoperation beginnen kann. Jedem Reservierregister Qj, Qic aller Funktionseinheiten 138, 140, 142, 144, im betrachteten Fall von F i g. 3 den Reservierregistern 514/0,- und 516/öjfc, sind je zwölf Und-Stufen 720 zugeordnet, von denen in F i g. 3 lediglich eine erste Und-Stufe 720 und eine zwölfte Und-Stufe 800 veranschaulicht sind. Jede der genannten Und-Stufen ist an je einem Eingang durch einen von zwölf Ausgängen
des betreffenden Reservierregisters 514/^;- bzw. 516jQ^
beaufschlagt. Der jeweils zweite Eingang jeder der genannten Und-Stufen liegt an einer von vier Quittierungs-Sammelleitungen
der Funktionseinheiten 138, 140, 142, 144 bzw. an acht Quittierungs-Sammelleitungen
der Datenregister AO bis Xl. Jedes der Reservierregister, im Falle von F i g. 3 jedes der Reservierregister
514/2,- bzw. 516/Qk, beaufschlagt über lediglich
einen einzigen Ausgang eine der zugeordneten Und-Stufen, und zwar entsprechend einem bestimmten
angerufenen, jedoch belegten Datenregister aus der Gruppe der Datenregister AO bis Xl bzw. entsprechend
einer angerufenen Funktionseinheit, wenn der betreffende Eingangsoperand nicht aus einem der Datenregister,
sondern aus einer Funktionseinheit als Zwischenergebnis einer Rechenoperation eingespeist
werden soll. Erst dann, wenn von dem betreffenden Datenregister oder der betreffenden, bisher tätigen
Funktionseinheit auf einer der Quittierungs-Sammelleitungen ein Quittierungssignal zu der betrachteten
Und-Stufe verläuft, beispielsweise aus einem der Datenregister ZO bis Xl zu der Und-Stufe 800, wird
ein Signal über die Oder-Stufe 722 sowie den Lesemarkierer 728 auf die Und-Stufe 734 abgegeben, die alsdann
öffnet, sofern vorausgesetzt wird, daß bereits vorher der Reserviermarkierer 516JQk leer war
und über seinen 0-Ausgang über den Lesemarkierer 806 den anderen Eingang der Und-Stufe 734 beaufschlagt
hatte.
Um die vorangehenden Erläuterungen zu vertiefen, sei angenommen, daß in die Steuereinrichtung aufeinanderfolgend
vier Befehle eingegeben werden, wobei ein erster Befehl eine Addition, ein zweiter
und dritter Befehl eine Multiplikation und ein vierter Befehl eine Division fordern. In der nachfolgenden
Tabelle sind in der ersten Spalte die durch den betreffenden Befehl angerufene Funktionseinheit, in der
zweiten Spalte das durch die Bitgruppe/ angerufene Datenregister, in der dritten Spalte das durch die
Bitgruppe k angerufene Datenregister und in der vierten Spalte das durch die Bitgruppe / angerufene
Datenregister angegeben.
Funktionseinheit Additionseinheit |
AO | Register Xl Xl |
XA |
Multiplikationseinheit 140 | Xl | XO | |
Multiplikationseinheit 142 | X3 | Xl | X5 |
Divisionseinheit | XO | X6 | |
XA |
Gemäß einem ersten Befehl sind demgemäß für die Eingangsoperanden die Register AO, Xl und als Resultatregister
das Datenregister Xl vorgesehen. Da es sich hier annahmegemäß um den ersten Befehl handelt
und demgemäß keines der Register belegt ist, kann die Funktionseinheit 138 die gewünschte Rechenoperation
(Addition) ohne weitere Schwierigkeiten durchführen. Eine Dateneinspeicherung in die Reservierregister
SiAIQj und 516/0* erfolgt nicht.
Nach einer gewissen Zeit wird ein Multiplikationsbefehl für die Multiplikationseinheit 140 abgegeben,
wobei als Eingangsoperandenregister die Datenregister Xl, Xl und als Resultatregister das Datenregister
A"4 vorgesehen sind. Da der zweite Befehl einen gewissen zeitlichen Abstand zu dem ersten
Befehl aufweist, ist von der Additionseinheit 138 annahmegemäß das Datenregister Xl bereits wieder
freigegeben, so daß der Eingangsoperand entsprechend der Bitgruppe / in das Datenregister Xl eingespeist
werden kann. Jedoch ist der zeitliche Abstand des zweiten Befehls von dem ersten Befehl doch so gering,
daß die Additionseinheit 138 ihre Rechenoperation noch nicht beendet hac, so daß der zweite Eingangsoperand für die Multiplikation vorläufig nicht in das
Datenregister A"2 eingespeist werden kann, weil dieses
ίο letztgenannte Datenregister für das Resultat der
Additionseinheit 138 vorgesehen ist. In der obigen Tabelle ist daher in der zweiten Zeile das Datenregister
Xl von einem Rechteck umgeben. Sobald indessen das Datenregister Xl durch Ausspeicherung
des Resultates in dem zentralen Speicher frei wird, kann der Eingangsopsrand für die Multiplikation für
das Datenregister Xl eingespeist werden, wonach einer weiteren Durchführung des Mukiplikationsvorganges
nichts im Wege steht Die Freigabe des Multiplikationsvorganges erfolgt hierbei, wie ausführlich
in Verbindung mit F i g 3 erläutert wurde, indem über die dem Datenregister A^2 zugeordnete
Quittier-Sammelleitung ein Tastsignal auf eine der Und-Stufen eines der beiden Reservierregister der
Multiplikationseinheit 140 übertragen wurde.
Als nächstes folgt ein Befehl für die Multiplikationseinheit 142, in welchem für die beiden Eingangsoperanden die Datenregister A"3, X6 und für das
Resultatregister das Datenregister AO angerufen werden. Dieser Multiplikationsvorgang kann sofort ausgeführt
werden, da die drei angerufenen Datenregister von vorangehenden Rechenoperationen nicht mehr
belegt und daher frei sind.
Gemäß dem vierten Befehl soll eine Division durchgeführt werden, wobei den beiden Eingangsoperanden die Datenregister AO, A"4 und dem Resultat das Datenregister C5 zugeordnet sind. Wenn dieser betrachtete vierte Befehl sehr schnell auf den dritten Befehl folgt, so können unter Umständen das Datenregister AO noch von dem Resultat des zweiten Multiplikationsvorganges und das Datenregister A"4 von dem Resultat des ersten Multiplikationsvorganges belegt sein. Demgemäß sind die Datenregister AO, XA in der vierten Zeile der obigen Tabelle jeweils von einem rechteckigen Kasten umgeben, um deren Belegung anzuzeigen. Erst dann, wenn beide Register XO, XA frei sind, kann die Division durchgeführt werden. Bei diesem letztgenannten Beispiel der Durchführung der Division wurden anfangs in der Divisionseinheit .144 beide Reservierregiscer Qj und Qu eingespeiste Daten entsprechend der Bitgruppe j bzw. k enthalten, so daß beide Lesemarkierer entsprechend den Lesemarkierern 728, 806 der Funktionseinheit 138 kein Tastsignal an die zugeordnete Und-Stufe 734 abgäben.
Gemäß dem vierten Befehl soll eine Division durchgeführt werden, wobei den beiden Eingangsoperanden die Datenregister AO, A"4 und dem Resultat das Datenregister C5 zugeordnet sind. Wenn dieser betrachtete vierte Befehl sehr schnell auf den dritten Befehl folgt, so können unter Umständen das Datenregister AO noch von dem Resultat des zweiten Multiplikationsvorganges und das Datenregister A"4 von dem Resultat des ersten Multiplikationsvorganges belegt sein. Demgemäß sind die Datenregister AO, XA in der vierten Zeile der obigen Tabelle jeweils von einem rechteckigen Kasten umgeben, um deren Belegung anzuzeigen. Erst dann, wenn beide Register XO, XA frei sind, kann die Division durchgeführt werden. Bei diesem letztgenannten Beispiel der Durchführung der Division wurden anfangs in der Divisionseinheit .144 beide Reservierregiscer Qj und Qu eingespeiste Daten entsprechend der Bitgruppe j bzw. k enthalten, so daß beide Lesemarkierer entsprechend den Lesemarkierern 728, 806 der Funktionseinheit 138 kein Tastsignal an die zugeordnete Und-Stufe 734 abgäben.
Aus der obigen Tabelle läßt sich jedoch entnehmen, daß die erste und dritte Rechenoperation ohne jede
Verzögerung praktisch nebeneinander ablaufen können, so daß sich trotz Verzögerung bei der zweiten
und vierten Rechenoperation insgesamt eine Zeitersparnis ergibt. Auch bezüglich der an sich verzögerten
zweiten und vierten Rechenoperation ergibt sich eine Zeitersparnis, weil die jeweilige Rechenoperation
unmittelbar nach Abgabe des Quittiersignals seitens des bisher belegten Datenregisters begonnen werden
kann, die Vorbereitungsvorgänge zur Durchführung der Rechenoperation also zum Teil schon abgelaufen
sind.
Claims (4)
1. Steuereinrichtung in einem Mehrspeziesrechner, welcher eine Datenregistergruppe zur
Aufnahme von Eingabe- und Resultatoperanden, einen arithmetischen Steuerteil zur Durchführung
von verschiedenen Rechnungsarten, z. B. Grundrechnungsarten, sowie einen mit der Datenregistergruppe
zusammenwirkenden zentralen Speicher umfaßt, mit einer Befehlsteuereinrichtung zur
aufeinanderfolgenden Einspeisung von Befehlen in ein Befehlsregister und Dekodierung dieser
Befehle, wobei jeder Befehl in kodierter Form die durchzuführende Rechnungsart sowie die
Adressen der Register für die Eingabe- und den Resultatoperanden enthält, dadurch gekennzeichnet,
daß in dem arithmetischen Steuerteil je eine Funktionseinheit (138, 140, 142, 144) füreine
Rechnungsart enthalten ist, daß eine auf jeden neuen Befehl ansprechende Übertragungseinrichtung
(640) vorgesehen ist, welche eine oder zwei einem oder zwei gemäß dem Befehl für einen
oder beide Eingangsoperanden angerufenen Datenregistern entsprechende Belegungsadressen abgibt,
falls eines oder beide dieser Datenregister vorangehend bereits von einer anderen Funktionseinheit
belegt wurden, daß die von der Übertragungseinrichtung (640) abgegebene bzw. abgegebenen
Belegungsadressen zumindest einem von zwei jeder Funktionseinheit zugeordneten Reservierregistern
(Qj, Qk) zur Sperrung der zugeordneten
Funktionseinheit zugeführt werden und daß jedem Reservierungsregister eine Gruppe von in ihrer
Anzahl der Anzahl der Funktionseinheiten zuzüglieh der Anzahl der Datenregister (AO bis Xl)
entsprechenden Freigabetaststufen (720 bis 800) zugeordnet ist, deren jede über einen je einer
Funktionseinheit oder einem zur Aufnahme von Eingangsoperanden bestimmten Datenregister zugeordneten,
auf das Ende der Belegung der entsprechenden Funktionseinheit bzw. des entsprechenden
Datenregisters ansprechenden Tasteingang zu öffnen ist.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet,
daß jeder Befehl fünf aufeinanderfolgende Bitgruppen (k, j, i, m, f) umfaßt, von
denen die beiden ersten (k,j) die Adressen zweier zur Aufnahme je eines Eingangsoperanden bestimmter
Datenregister, die dritte Bitgruppe (i) die Adresse eines weiteren, zur Aufnahme des
Resultatoperanden bestimmten Datenregisters und die vierte und fünfte Bitgruppe die Funktionseinheit
(138 bis 144) angeben, in welcher ein Rechnungsvorgang durchgeführt werden soll.
3. Einrichtung nach einem der Ansprüche 1 oder 2, gekennzeichnet durch einen in der Befehlsteuereinrichtung
enthaltenen Bitgruppenverteiler (598) mit drei Ausgängen, von denen ein erster Ausgang zur Abgabe bestimmter Bitgruppen (/,
m, j, k), ein zweiter Ausgang zur Abgabe der das Datenregister für den Resultatoperanden bezeichnenden
dritten Bitgruppe (i) und ein dritter Ausgang zur Abgabe der die Funktionseinheit
bezeichnenden vierten und fünften Bitgruppe (m, f) eingerichtet sind, und durch eine drei Eingänge
aufweisende, an einem Eingang mit allen Bitgruppen des Befehls beaufschlagte Befehlsdurchlaß-Und-Slufe
(630), welche beim Auftreten von Freisignalen seitens des durch den Befehl adressierten
Resultatregisters (eines der Register XQ bis Xl) und der Funktionseinheit (z. B. 138) an
den beiden weiteren Eingängen zu öffnen ist und ausgangsseitig sowohl an einem Funktionseinheitsund
Registerwähler (642) als auch an der Übertragungseinrichtung (640) liegt.
4. Einrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß jeder Funktionseinheit
zwei Operandenwählregister (z. B. 508/Fj·; 510/Fa) und ein Resultatw.ählregister
(z. B. 512/Fj) zugeordnet sind, daß jedes der
beiden Operandenwählregister einer Funktionseinheit über eine der Anzahl der Datenregister
(XO bis Xl) entsprechende Anzahl von Ausgängen nebst zugeordneten Und-Stufen (ζ. Β. 738/#,·0 bis
138/Bji), die am anderen Eingang jeweils von
einem den betreffenden Operandenwählregistern in der Funktionseinheit zugeordneten Reservierregister
(z. B. 514/Oi) getastet sind, an je einem
Tasteingangspaar (z. B. Bj0, Bk0) jedes Datenregisters
(AO bis Xl) liegt, von denen jedes eine der Anzahl der Funktionseinheiten entsprechende
Anzahl von Tasteingangspaaren aufweist, und daß jedes Datenregister eine der Anzahl der
Funktionseinheiten entsprechende Anzahl von Steuerausgängen aufweist, von denen jeweils jeder
77. Ausgang (n — 1 bis 4) zusammen mit einem zugeordneten Resultatwählregister (z. B. 512/FO
einer n. Funktionseinheit an einer Gruppe von Resultatsperrstufen (z. B. 812) liegt, deren Anzahl
innerhalb einer Gruppe der Anzahl von Datenregistern entspricht.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US381076A US3346851A (en) | 1964-07-08 | 1964-07-08 | Simultaneous multiprocessing computer system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE1499175A1 DE1499175A1 (de) | 1972-04-20 |
DE1499175B2 true DE1499175B2 (de) | 1973-01-25 |
Family
ID=23503559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1965C0036318 Granted DE1499175B2 (de) | 1964-07-08 | 1965-07-06 | Steuereinrichtung in einem mehrspezies rechner |
Country Status (6)
Country | Link |
---|---|
US (1) | US3346851A (de) |
BE (1) | BE666581A (de) |
DE (1) | DE1499175B2 (de) |
GB (1) | GB1108750A (de) |
NL (1) | NL160407C (de) |
SE (1) | SE366131B (de) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4374412A (en) * | 1965-05-25 | 1983-02-15 | Schaffner Mario R | Circulating page loose system |
US3469239A (en) * | 1965-12-02 | 1969-09-23 | Hughes Aircraft Co | Interlocking means for a multi-processor system |
US3449722A (en) * | 1966-05-02 | 1969-06-10 | Honeywell Inc | Electronic multiprocessing apparatus including common queueing technique |
US3483521A (en) * | 1966-05-13 | 1969-12-09 | Gen Electric | Program request storage and control apparatus in a multiprogrammed data processing system |
US3510845A (en) * | 1966-09-06 | 1970-05-05 | Gen Electric | Data processing system including program transfer means |
US3626427A (en) * | 1967-01-13 | 1971-12-07 | Ibm | Large-scale data processing system |
US3470540A (en) * | 1967-04-24 | 1969-09-30 | Rca Corp | Multiprocessing computer system with special instruction sequencing |
US3496551A (en) * | 1967-07-13 | 1970-02-17 | Ibm | Task selection in a multi-processor computing system |
US3544969A (en) * | 1967-11-27 | 1970-12-01 | Standard Computer Corp | Language independent computer |
US3541520A (en) * | 1967-12-18 | 1970-11-17 | Ibm | Time-sharing arrangement |
US3611306A (en) * | 1969-02-05 | 1971-10-05 | Burroughs Corp | Mechanism to control the sequencing of partially ordered instructions in a parallel data processing system |
US3611307A (en) * | 1969-04-03 | 1971-10-05 | Ibm | Execution unit shared by plurality of arrays of virtual processors |
DE2028345C3 (de) * | 1970-06-09 | 1981-04-09 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Verfahren zur Verteilung von Ablaufanforderungen in einer programmgesteuerten Datenvermittlungsanlage |
US3718912A (en) * | 1970-12-22 | 1973-02-27 | Ibm | Instruction execution unit |
US3787673A (en) * | 1972-04-28 | 1974-01-22 | Texas Instruments Inc | Pipelined high speed arithmetic unit |
US3860808A (en) * | 1972-05-09 | 1975-01-14 | Sony Corp | Electronic computer system |
US3833889A (en) * | 1973-03-08 | 1974-09-03 | Control Data Corp | Multi-mode data processing system |
US3875391A (en) * | 1973-11-02 | 1975-04-01 | Raytheon Co | Pipeline signal processor |
US4107773A (en) * | 1974-05-13 | 1978-08-15 | Texas Instruments Incorporated | Advanced array transform processor with fixed/floating point formats |
GB1529325A (en) * | 1974-11-29 | 1978-10-18 | Babcock & Wilcox Co | Apparatus control circuit |
JPS5440537A (en) * | 1977-09-07 | 1979-03-30 | Hitachi Ltd | Pipeline control system |
JPS5466048A (en) * | 1977-11-07 | 1979-05-28 | Hitachi Ltd | Information processor |
US4295193A (en) * | 1979-06-29 | 1981-10-13 | International Business Machines Corporation | Machine for multiple instruction execution |
DE3221819A1 (de) * | 1982-06-09 | 1984-02-23 | Siemens AG, 1000 Berlin und 8000 München | Vorrichtung zur simulation eines schaltwerks mit hilfe eines rechners |
US4594660A (en) * | 1982-10-13 | 1986-06-10 | Honeywell Information Systems Inc. | Collector |
US4636942A (en) * | 1983-04-25 | 1987-01-13 | Cray Research, Inc. | Computer vector multiprocessing control |
US4661900A (en) * | 1983-04-25 | 1987-04-28 | Cray Research, Inc. | Flexible chaining in vector processor with selective use of vector registers as operand and result registers |
US4807115A (en) * | 1983-10-07 | 1989-02-21 | Cornell Research Foundation, Inc. | Instruction issuing mechanism for processors with multiple functional units |
US4903196A (en) * | 1986-05-02 | 1990-02-20 | International Business Machines Corporation | Method and apparatus for guaranteeing the logical integrity of data in the general purpose registers of a complex multi-execution unit uniprocessor |
US5010476A (en) * | 1986-06-20 | 1991-04-23 | International Business Machines Corporation | Time multiplexed system for tightly coupling pipelined processors to separate shared instruction and data storage units |
US4837678A (en) * | 1987-04-07 | 1989-06-06 | Culler Glen J | Instruction sequencer for parallel operation of functional units |
EP0312764A3 (de) * | 1987-10-19 | 1991-04-10 | International Business Machines Corporation | Datenprozessor mit mehrfachen Ausführungseinheiten zur parallelen Ausführung von mehreren Befehlsklassen |
US5159686A (en) * | 1988-02-29 | 1992-10-27 | Convex Computer Corporation | Multi-processor computer system having process-independent communication register addressing |
US5050070A (en) * | 1988-02-29 | 1991-09-17 | Convex Computer Corporation | Multi-processor computer system having self-allocating processors |
EP0378415A3 (de) * | 1989-01-13 | 1991-09-25 | International Business Machines Corporation | Verteilungsmechanismus für mehrere Befehle |
US5142638A (en) * | 1989-02-07 | 1992-08-25 | Cray Research, Inc. | Apparatus for sharing memory in a multiprocessor system |
US5202970A (en) * | 1989-02-07 | 1993-04-13 | Cray Research, Inc. | Method for sharing memory in a multiprocessor system |
US5073855A (en) * | 1989-06-30 | 1991-12-17 | Bull Hn Information Systems Inc. | Resource conflict detection method and apparatus included in a pipelined processing unit |
DE69123629T2 (de) * | 1990-05-04 | 1997-06-12 | International Business Machines Corp., Armonk, N.Y. | Maschinenarchitektur für skalaren Verbundbefehlssatz |
US5655096A (en) * | 1990-10-12 | 1997-08-05 | Branigin; Michael H. | Method and apparatus for dynamic scheduling of instructions to ensure sequentially coherent data in a processor employing out-of-order execution |
JPH04367963A (ja) * | 1991-06-15 | 1992-12-21 | Hitachi Ltd | 共有記憶通信方法 |
ATE291755T1 (de) * | 1991-07-08 | 2005-04-15 | Seiko Epson Corp | Risc-prozessor mit erweiterbarer architektur |
KR100294276B1 (ko) * | 1991-07-08 | 2001-09-17 | 야스카와 히데아키 | 고속트랩및예외상태를구현한알아이에스씨마이크로프로세서구조 |
US5961629A (en) * | 1991-07-08 | 1999-10-05 | Seiko Epson Corporation | High performance, superscalar-based computer system with out-of-order instruction execution |
US5493687A (en) | 1991-07-08 | 1996-02-20 | Seiko Epson Corporation | RISC microprocessor architecture implementing multiple typed register sets |
US5539911A (en) * | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
JPH0575628A (ja) * | 1991-09-13 | 1993-03-26 | Fuji Xerox Co Ltd | ネツトワーク資源監視システム |
EP0636256B1 (de) | 1992-03-31 | 1997-06-04 | Seiko Epson Corporation | Befehlsablauffolgeplanung von einem risc-superskalarprozessor |
US5438668A (en) * | 1992-03-31 | 1995-08-01 | Seiko Epson Corporation | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
DE69308548T2 (de) | 1992-05-01 | 1997-06-12 | Seiko Epson Corp | Vorrichtung und verfahren zum befehlsabschluss in einem superskalaren prozessor. |
WO1994008287A1 (en) | 1992-09-29 | 1994-04-14 | Seiko Epson Corporation | System and method for handling load and/or store operations in a superscalar microprocessor |
US6735685B1 (en) * | 1992-09-29 | 2004-05-11 | Seiko Epson Corporation | System and method for handling load and/or store operations in a superscalar microprocessor |
US5481683A (en) * | 1992-10-30 | 1996-01-02 | International Business Machines Corporation | Super scalar computer architecture using remand and recycled general purpose register to manage out-of-order execution of instructions |
EP1107111A3 (de) | 1992-12-31 | 2002-02-06 | Seiko Epson Corporation | System und Verfahren zur Änderung der Namen von Registern |
US5628021A (en) | 1992-12-31 | 1997-05-06 | Seiko Epson Corporation | System and method for assigning tags to control instruction processing in a superscalar processor |
US5590368A (en) * | 1993-03-31 | 1996-12-31 | Intel Corporation | Method and apparatus for dynamically expanding the pipeline of a microprocessor |
US10496409B2 (en) | 2016-11-22 | 2019-12-03 | The Arizona Board Of Regents | Method and system for managing control of instruction and process execution in a programmable computing system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3242467A (en) * | 1960-06-07 | 1966-03-22 | Ibm | Temporary storage register |
US3274554A (en) * | 1961-02-15 | 1966-09-20 | Burroughs Corp | Computer system |
US3200380A (en) * | 1961-02-16 | 1965-08-10 | Burroughs Corp | Data processing system |
NL276308A (de) * | 1961-03-24 | |||
US3226692A (en) * | 1962-03-01 | 1965-12-28 | Bunker Ramo | Modular computer system |
US3229260A (en) * | 1962-03-02 | 1966-01-11 | Ibm | Multiprocessing computer system |
US3274561A (en) * | 1962-11-30 | 1966-09-20 | Burroughs Corp | Data processor input/output control system |
US3273131A (en) * | 1963-12-31 | 1966-09-13 | Ibm | Queue reducing memory |
-
1964
- 1964-07-08 US US381076A patent/US3346851A/en not_active Expired - Lifetime
-
1965
- 1965-07-06 DE DE1965C0036318 patent/DE1499175B2/de active Granted
- 1965-07-06 GB GB28546/65A patent/GB1108750A/en not_active Expired
- 1965-07-07 SE SE08975/65A patent/SE366131B/xx unknown
- 1965-07-08 NL NL6508828.A patent/NL160407C/xx not_active IP Right Cessation
- 1965-07-08 BE BE666581D patent/BE666581A/xx unknown
Also Published As
Publication number | Publication date |
---|---|
NL6508828A (de) | 1966-01-10 |
GB1108750A (en) | 1968-04-03 |
NL160407C (nl) | 1979-10-15 |
NL160407B (nl) | 1979-05-15 |
SE366131B (de) | 1974-04-08 |
DE1499175A1 (de) | 1972-04-20 |
BE666581A (de) | 1965-11-03 |
US3346851A (en) | 1967-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1499175B2 (de) | Steuereinrichtung in einem mehrspezies rechner | |
DE2457312C3 (de) | Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung | |
DE3004827C2 (de) | Datenverarbeitungsanlage | |
DE1299145B (de) | Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE2718849A1 (de) | Rechenspeicher mit mehrdimensionalem, parallelem zugriff | |
EP0048767A1 (de) | Prioritätsstufengesteuerte Unterbrechungseinrichtung | |
DE1424762B2 (de) | Datenverarbeitungsanlage | |
DE2912287A1 (de) | Datenverarbeitungsgeraet | |
DE2019444A1 (de) | Datenverarbeitungsanlage | |
DE1774052B1 (de) | Rechner | |
DE2210426C2 (de) | Verfahren zur vorranggesteuerten Auswahl einer von mehreren Funktions einheiten zur Anschaltung an eine ihnen gemeinsam zugeordnete Einrichtung in Datenverarbeitungsanlagen und Schaltung zur Durchführung des Verfahrens | |
DE2625113A1 (de) | Speicherschutzeinrichtung | |
DE2846054C2 (de) | Schaltungsanordnung zur Erweiterung des Adressierungsvolumens einer Zentraleinheit, insbesondere eines Mikroprozessors | |
DE2506671C3 (de) | Binärdaten-Handhabungsnetzwerk | |
DE2617485A1 (de) | Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen | |
DE19628039B4 (de) | Speicheradressen-Steuerschaltung | |
DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
DE1806172A1 (de) | Prioritaetsschaltung | |
DE2164718A1 (de) | Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/Ausgabe-Einheiten mittels einer Zentraleinheit | |
DE1296427B (de) | Datenbearbeitungssystem | |
DE2607687C2 (de) | Verfahren zum Steuern von Gruppen von Geräten in einer mit elektronischer Datenverarbeitung arbeitenden Fernsprechvermittlungsanlage und deren Ausbildung | |
DE1499175C3 (de) | Steuereinrichtung in einem Mehrspeziesrechner | |
DE2025672C3 (de) | Datenverarbeitungsanlage mit Übertragungsweg-Anzeige für anschließbare E/A-Einheiten | |
DE2004934B2 (de) | Speicheranordnung mit schaltungen zur fehlererkennung und fehlerkorrektur |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 |