[go: up one dir, main page]

DE2440390A1 - Elektronischer rechner - Google Patents

Elektronischer rechner

Info

Publication number
DE2440390A1
DE2440390A1 DE2440390A DE2440390A DE2440390A1 DE 2440390 A1 DE2440390 A1 DE 2440390A1 DE 2440390 A DE2440390 A DE 2440390A DE 2440390 A DE2440390 A DE 2440390A DE 2440390 A1 DE2440390 A1 DE 2440390A1
Authority
DE
Germany
Prior art keywords
data
microprogram
register
data source
computer according
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE2440390A
Other languages
English (en)
Other versions
DE2440390C3 (de
DE2440390B2 (de
Inventor
August Deis
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Patentverwaltung GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Patentverwaltung GmbH filed Critical Philips Patentverwaltung GmbH
Priority to DE19742440390 priority Critical patent/DE2440390B2/de
Priority to NL7509787A priority patent/NL7509787A/xx
Priority to CA233,795A priority patent/CA1023052A/en
Priority to SE7509282A priority patent/SE402655B/xx
Priority to IT26461/75A priority patent/IT1041895B/it
Priority to US05/606,162 priority patent/US4034345A/en
Priority to GB34602/75A priority patent/GB1508337A/en
Priority to BE159368A priority patent/BE832630A/xx
Priority to AT648975A priority patent/AT356423B/de
Priority to FR7526006A priority patent/FR2282673A1/fr
Priority to JP50102515A priority patent/JPS5146845A/ja
Publication of DE2440390A1 publication Critical patent/DE2440390A1/de
Publication of DE2440390B2 publication Critical patent/DE2440390B2/de
Application granted granted Critical
Publication of DE2440390C3 publication Critical patent/DE2440390C3/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/226Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements

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

PHILIPS PATENTVERWALTUNG GMBH, 2 Hamburg 1, Steindamm
Elektronischer Rechner
Die Erfindung betrifft einen Rechner mit einem Mikroprogrammspeicher mit vom Makroprogramm aufrufbaren Mikroprogrammabläufen.
Bei üblichen Rechnern erfolgt der Ablauf eines beliebigen Arbeitsprogrammes allgemein in mehreren Ebenen. Dabei sei nicht berücksichtigt, daß ein Programmierer ein Programm allgemein in einer symbolischen Programmiersprache schreibt, das von der Rechenmaschine vor
_ 2 60981 1/038
dem eingentlichen Programmablauf durch ein Umwandlungsprogramm in Maschinenbefehle umgewandelt wird, sondern es werden nur diese Maschinenbefehle betrachtet. Ein Rechnerprogramm ist also als eine Folge von Maschinenbefehlen vorzugsweise im Arbeitsspeicher enthalten, und diese Folge von Maschinenbefehlen wird nacheinander bzw. in vorgegebenen Sprüngen und Schleifen abgearbeitet. Dies ■sei hier als Makroprogramm bezeichnet.
Für jede Rechenan3qge ist ein bestimmter Satz von Maschinenbefehlen vorgegeben, und jeder Maschinenbefehl löst einen vorgegebenen Funktionsablauf in dem Rechner aus. Bei den meisten Rechenanlagen geschieht das in der Weise, daß ein Maschinenbefehl eine bestimmte Folge von in einem Mikroprogrammspeicher gespeicherten Mikroprogrammbefehlen aufruft. ■ Jeder Mikroprogrammbefehl steuert dann nur eine einfache Funktion bzw. eine einfache Funktionskombination im Rechner„Da für eine gute Programmierbarkeit eines Rechners, ein genügend umfangreicher Satz von Maschinenbefehlen, vorgesehen sein muß und jeder Maschinenbefehl eine Folge von teilweise vielen Mikrobefehlen auslöst, ist zu erkennen, daß ein sehr umfangreicher Mikroprogrammspeicher benötigt wird, wenn die einzelnen Mikrobefehle nicht zweckmäßig aufgebaut sind, und eine möglichst große Kombination von einzelnen Funktionen steuern können. Dadurch wird daru:. aber leicht
60981 1/0388
die Einrichtung zur Entschlüsselung der einzelnen Mikrobefehle sehr umfangreich und aufwendig.
Aufgabe der Erfindung ist es daher, einen Rechner· mit einem solchen Aufbau der Mikroprogrammbefehle abzugeben, daß jeder Mikroprogrammbefehl möglichst umfangreiche Funktionen in dem Rechner steuert, wobei dennoch nur eine einfache und übersichtliche Einrichtung zur Entschlüsselung der Mikroprogrammbefehle notvrendig ist. Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß jeder Mikroprogrammbefehl die in Kennzeichen des Anspruchs 1 angegebenen Merkmale besitzt. Dieser erfindungsgemäße Aufbau der Mikroprogrammbefehle beruht auf der Erkenntnis, daß ein wesentlicher Teil von Funktionen in einem Rechner die Übertragung von Daten ist. Eine weitere große Gruppe von Funktionen ist das Zählen und Entscheiden. Daher ist die Wahrscheinlichkeit groß, daß jeder Teil odervrenigstens die meisten Teile der einzelnen Mikroprogrammbefehle ausgenutzt werden, wenn die obengenannten Funktionen gleichzeitig darin enthalten sind. Da außerdem die Struktur, d. h. das Format der einzelnen Mikrobefehle so festgelegt ist, daß es bei allen Mikrobefehlen übereinstimmt, ergibt sich auch ei-ie ainfache Entschluss elungs schaltung für die Mikroprogrammbefehle. Die wenigen Mikroprogrammbefehle, bei denen die einzelnen Teile nicht ausgenutzt werden, stellen einen so geringen Aufwand dar, daß er durch die außerordentliche einfache Entschlüsselung mehr als aufgehoben wird.
6098 11/0388
Um beispielsweise einen Befehl zu erzeugen, der keine Übertragung auslöst, kann in den Bedingungsteil eine Bedingung aufgenommen werden, die mit Sicherheit nicht erfüllt ist. Es ist zweckmäßig, die Bedingung nicht beim Auslesen aus der Datenquelle, sondern nur beim Einschreiben in die Datensinke wirksam werden zu lassen, denn beispielsweise kann dann der ausgelesene Inhalt der Datenquelle eine Bedingung oder einen Teil einer Bedingung darstellen. Bei der Definition, was in einem Rechner alles als Datenquelle und als Datensinke angesprochen werden kann, besteht weitgehende Freizügigkeit. Beispielsweise kann der Mikroprogrammzähler als Datensinke bezeichnet werden, so daß spezielle Setzbefehle für Programmsprünge entfallen und das Setzen erfolgt als normale Datenübertragung.
Der erfindungsgemäße Aufbau der Mikroprogrammbefehle kann besonders günstig dadurch ausgenutzt werden, daß aus dem Mikroprogrammspeicher jeweils nur einzelne Abschnitte eines Mikroprogrammbefehls ausgelesen werden und diese v/erden in · einem in entsprechende Abschnitte eingeteilten Befehlsregister eingelesen. Dadurch ist es möglich, nur Teile eines Mikroprogrammbefehls zu verändern und andere Teile von dem vorhergehenden Mikroprogrammbefehl zu verwenden, so daß Speicherplatz und Zeit gespart wird.
609811/0388
Ein Ausführungsbeispiel der Erfindung wird anhand der Zeichnung erläutert. Diese-stellt die wesentlichen Teile der Zentraleinheit eines elektronischen. Rechners schematisch dar. Diese einzelnen Teile sind durch eine interne Datenleitung DI verbunden, die tatsächlich aus einer Anzahl paralleler Leitungen besteht, auf denen die Übertragung von Informationsworten erfolgt, und zwar allgemein in beiden Richtungen. Ferner sind noch eine Vielzahl von Steuerleitungen notwendig,von denen aber nur die für die Beschreibung dieses Ausführungsbeispiels erforderlichen dargestellt sind.
Der Arbeitsspeicher MEM, der häufig ein Magnetkernspeicher ist, jedoch neuerdings teilweise auch als Halbleiterspeicher ausgeführt ist, kann Informationsworte von der internen Datenleitung DI aufnehmen, um diese einzuschreiben, oder er kann ausgelesene Informationsworte an die Datenleitung abgeben. Dies wird über die Steuereingänge S2 und D2 bestimmt, wobei ein Signal auf dem Eingang S2 das Auslesen steuert, d. h. der Speicher MEM stellt eine Datenquelle dar, während ein Signal· auf dem Eingang D2 das Einschreiben steuert, so daß der Arbeitsspeicher eine Datensinke darstellt. Ferner muß dem Arbeitsspeicher MEM mitgeteilt werden, aus welcher Adresse er ein Wort auslesen soll bzw. in welche Adresse er ein Wort einschreiben soll. Diese Adresse sitzt ebenso wie
6098 11/0388
ein Informationswort auf der internen Datenleitung DI übertragen. Bei der Übernahme der Adresse wirkt der Ar- ' beitsspeicher MEM wieder als DatensLnke, wozu der Steuereingang S2 tatsächlich mehrere Leitungen enthält, die hier nur vereinfacht zu einem Eingang zusammengefaßt dargestellt sind. Das gleiche gilt für den Steuereingang D2, der ebenfalls mehrere Leitungen enthält, denn für manche Zwecke kann es auch notwendig sein, die in dem Arbeitsspeicher MEM enthaltene Adresse, die beispielsweise in einem Adressregister zwischengespeichert ist, auszulesen und weiterzuverarbeiten. Bei der Funktion der Steuereingänge S2 und D2 ist vorausgesetzt, daß in dem Arbeitsspeicher MEM ebenso wie auch bei den anderen Teilen des Rechners jedem Register, das ein Informationswort aufnehmen und abgeben kann, in den parallelen Eingangsleitungen Schalter vorgeschaltet und in den Ausgangsleitungen Schalter nachgeschaltet sind, wobei die Schalter in den Eingangsleitungen von einer Steuerleitung des Steuereinganges D2 und die Schalter in den Ausgangsleitungen von einer Steuerleitung des Steuereinganges S2 angesteuert werden.
Außerdem ist bei dem Arbeitsspeicher MEM eir.e Bedingungsleitung B2 vorgesehen, über die bestimmte vorgegebene Zustände gemeldet werden können.
60981 1 /0388
Ein zweiter Teil ist die Datenleitungsteuerung DBc, die im wesentlichen die interne Datentleitung DI auf eine externe Daten leitung DD durchschaltet, die ebenfalls aus einer Anzahl paralleler Leitungen besteht. An dieser externen Datenleitung DD sind Peripheriegeräte angeschlossen, beispielsweise Ein- oder Ausgabegeräte oder Massenspeicher. Diese externe Datenleitung DD überträgt daher auch Informationen in beiden Richtungen.
Wenn die auf der internen Datenleitung DI vorhandene Information über die externe Datenleitung DD an ein Ausgabegerät übertragen werden soll, wird die Leitung D3 erregt, so daß die Datenleitungssteuerung DBC als DatensLnke wirkt. In gleicher Weise wird die Leitung S3 erregt, wenn die Datenleitungsteuerung DBC als Datenquelle wirken soll, indem sie von einem Eingabegerät gelieferte Daten der internen Datenleitung DI zuführt. Auch die Datenleitungsteuerung DBC besitzt einen Bedingungsausgang B3»der zweckmäßig aus einer Mehrzahl von einzelnen Leitungen besteht, über die Zustände von den einzelnen Peripheriegeräten an die Steuerung gemeldet werden.
Ein weiterer Teil ist dia arithmetische und logische Einheit ALU, die das eigentliche Rechenwerk darstellt und in
- 8 -"
609811/0388
der die arithmetischen oder logischen Verknüpfungen durchgeführt werden. Die Einheit ALU enthält üblicherweise zwei Operanden-Register, in denen die zu verknüpfenden Operanden gespeichert sind, sowie ein Operationsregister, dessen Inhalt angibt, in welcher Weise die Operanden zu verknüpfen sind. Jedes dieser drei Register wird dadurch geladen, daß ein auf den internen Datenleitungen DI anstehendes Informationswort in das entsprechende Register übertragen wird, was durch ein entsprechendes Signal am Eingang D4 erfolgt, der wieder aus mehreren Leitungen besteht, und zwar für jedes Register eine Leitung. Der Operationscode wird also in das Operationsregister wie ein übliches Datenzeichen übertragen, es wird bei der Übertragung also nicht zwischen Datenzeichen und Befehlen unterschieden, sondern diese Unterscheidung entsteht erst dadurch, ob das Zeichen ins Operationsregister oder in ein Operanden-Register durch ein Signal auf der entsprechenden Leitung am Eingang D4 übertragen wird. In gleicher Weise kann das Auslesen aus einem Operanden-Register oder des Verknüpfungsergebnisses dir ch Signale auf den entsprechenden Leitungen des Einganges S4 erfolgen. Es ist zu bemerken, daß auch jeweils eine Leitung an den Eingängen S4 und D4 gleichzeitig erregt sein kann, d. h. eine Einheit kann gleichzeitig sowohl Datenquelle sowie auch Datensinke sein. Dies hat bei der Einheit ALU beispielsweise den Sinn, das Verknüpfungsergebnis in das eine Operanden-Register einzuschreiben. Auch andere Kombinationen sind möglich. Der Bedingungsaus-
609811/0388
- 9 -
gang B4 liefert beispielsweise ein Signal bei einem Übertrag bzw. bei einem Überlauf. Weitere Bedingungen, wie bestimmte Verknüpfungsergebnisse oder bestimmte Registerinhalte, sind möglich, so daß der Ausgang B4 ebenfalls aus mehreren Leitungen besteht.
Ein weiterer Teil ist der Zählregistersatz CRS, der aus einer Anzahl gleichaufgebauter Zählregister CA besteht. Auch dieser Zählregistersatz besitzt einen Eingang D1, der diese Einheit als Datensinke wirksam läßt und ein auf den internen Datenleitungen DI stehendes Informationswort in ein Zählregister einschreibt. In welches von den grundsätzlich untereinander gleichwertigen Zählregistern CA dieses Informationswort eingeschrieben wird, wird hier jedoch nicht durch eine entpsrechende Leitung am Eingang DI bestimmt, sondern durch eine am oberen Rand der Einheit CRS gezeichnete Adressierleitung.
Ferner kann in dem Zählregistersatz CRS bei dem adressierten Zählregister ein Zählvorgang oder genauer eine Verknüpfung durchgeführt werden. Die Art der Verknüpfung wird durch einen zusätzlichen Eingang bestimmt und erfolgt nach einer evtl. Übertragung eines Informationswortes in dieses Zählregister.
Durch ein Signal am Eirgang S1 kann der Inhalt eines Zählregisters, das über den zusätzlichen Adressiereingang adressiert worden ist, ausgelesen und auf die interne Datenleitung
60981 1 /0388
- 10 -
DI übertragen werden. Im übrigen kann auch der Zählregistersatz CRS gleichzeitig als Datenquelle und Datensinke angesprochen werden, indem beide Eingänge S1 und D1 ein Signal erhalten, was beispielsweise dann interessant ist, wenn der Verknüpfungs-Steuereingang eine Subtraktion angibt, denn dann subtrahiert das adressierte Zählregister seinen eigenen Inhalt und stellt sich somit auf Null. Auf die Yfeise wird ein zusätzlicher Befehl zum Löschen eines Zählregisters gespart.
Auch der Zählregistersatz CRS hat einen Bedingungsausgang B1, der beispielsweise angibt, ob das adressierte Zählregister einen Inhalt hat,, der in einem bestimmten.Bereich liegt. Diese Bedingung kann anders behandelt werden, als die Bedingungen der anderen Einheiten, wie später noch erläutert wird.
Der wichtigste Teil des Rechners ist die Mikroprogramm-Steuerung MPS mit einem Mikroprogrammspeicher, der von dem Mikroprogrammzähler MPZ adressiert wird und dessen ausgelesene Mikrobefehle von einem Mikroprogramm-Befehlsregister MBR gespeichert werden. Ferner enthält .'die Mikroprogramm-Steuerung MPS noch weitere Steuerkreise, wie beispielsweise eine Taktablauf-
- 11 609811 /0388
steuerung, die die zeitliche Aufeinanderfolge der einzelnen Funktionen bei einem Mikroprogrammbefehl steuert, jedoch sind diese hier nicht näher dargestellt, da sie für die hier erläuterte Funktion des Ausführungsbeispiels nicht notwendig sind. Anhand der in den einzelnen Teilen des Mikroprogramm-Befehlsregisters MBR eingetragenen Bezeichnungen soll das Format der Mikroprogrammbefehle .näher erläutert werden.
Etwa in der Mitte des Befehlsregisters liegen die mit S und D bezeichneten Teile die in codierter Form eine Datenquelle und eine Datensinke angeben. Dazu sind die zugehörigen Ausgänge des Befehlsregisters fest mit einem Decodierer DES verbunden, der die binär codierte Angabe in
einzelne Steuerleitungen S1, S2, decodiert. Aus der
Anzahl der Stellen dieser Angabe ergibt sich die maximale Anzahl von einzelnen Steuerleitungen, wobei zu berücksichtigen ist, daß beispielsweise die Ausgänge SZ und S4 ebenso, wie die entsprechenden Eingänge an den betreffenden Einheiten mehrere einzelne Leitungen enthalten. Diese Verbindung von dem Teil S des Befehlsregister zum Decodierer DES und von dort zu den eir.zeZnen Steuereingängen der Einheiten des Rechners sind unbedingt, d. h. bei jedem Mikroprogrammbefehl wird immer aus einer Datenquelle etwas ausgelesen. In ähnlicherweise ist in dem Teil D des Befehlsregisters die Daten-
- 12 - .
60981 1 /0388
sinke binär codiert angegeben, und diese Angabe wird in dem Decodierer DED auf einzelne Steuerleitungen D1,
D2, decodiert. Diese Decodierung erfolgt aber
nicht unbedingt, sondern wird von dem Bedingungscodierer COB gesteuert. Nur wenn dieser die Decodierung bzw. Weiterleitung freigibt, wird auch eine Daterisinke angesprochen, d. h. die aus der Datenquelle ausgelesene Information auf der internen Datenleitung DI wird nur bei Erfüllung der entsprechenden Bedingung in die Datensinke eingeschrieben.
Der Bedingungscodierer COB wird von zwei Teilen des Befehlsregisters gesteuert, nämlich dem Teil C am Anfang und dem Teil CO in der Mitte. Auf diese Weise können mindestens zwei Bedingungen gleichzeit% abgefragt werden. Der Teil C besteht hier nur aus einer einzigen binären Stelle und gibt an, ob die Bedingung B 1 geprüft werden soll oder nicht. Die Bedingung B1 wird im Zählregistersatζ CRS erzeugt und gibt beispielsweise an, ob das adressierte Zählregister CA nach einer evtl. Verknüpfungsoperation im unteren oder im oberen Zählbereich bzw. im negativen Zählbereich steht. Die Auswertung der anderen Bedingungsfeingänge B2, B3 und B4 werden durch die binär codierte Angabe in dem Teil CO angegeben. Dabei ist zu berücksichtigen, daß beispielsweise
- 13 - .
60981 1 /0388
der Bedingungseingang Bj5 von der Datenleitungssteuerung DBC aus einer Mehrzahl von einzelnen Leitungen besteht, vorzugsweise für jedes außen anschließbare Peripheriegerät mindestens eine Leitung.
Parallel zur Datenübertragung zwischen der angegebenen Datenquelle und Datensinke findet ein Funktionsablauf im Zählregistersatz CRS statt. Die Adresse des Zahlregisters, das in dem Zählregisteransatz angesprochen werden soll, wird in binär codierter Form durch den Teil CA angegeben, der beispielsweise im Zählregistersatζ CRS decodiert wird. Bei vier binären .Stellen für den Teil CA können also 16 Zählregister adressiert werden. Der Teil CC gibt an, welche Veränderung in dem durch den Teil CA adressierten Zählregister erfolgen soll. Typische Veränderungen bzw. Verknüpfungen sind außer keiner Veränderung (d.h. alten Zustand erhalten):
Mit diesen Verknüpfungen lassen sich die wichtigsten, beispielsweise für die Verwendung eines Zählregisters als Indexregister notwendigen Funktionen unmittelbar realisieren
Wie bereits beschrje ben, kann der Zählregistersatζ CRS auch als Datenquelle und/oder als Datensinke angesprochen werden, wobei sich dies jeweils auf das durch CA adressierte Zählre-
- 14 6 0 98 11/0388
gister bezieht. Insbesondere, wenn das Zählregister als Datensinke angesteuert wird, bewirken die durch den Teil CC ausgelöste Verknüpfung beispielsweise statt Addition einer 1 die Addition des auf auf den internen Datenleitungen stehenden Informationswortes zu dem alten Inhalt des Zählregisters oder die Subtraktion. Auf diese Weise ist eine Vielzahl von verschiedenen Operationen in Zählregistersatz CRS möglich,ohne daß an dem grundsätzlichen Aufbau und Ablauf eines Mikroprogrammbefehls etwas geändert werden müßte.
Der Teil ACP des Mikroprogrammbefehls bzw. des Befehlsregisters enthält ein Datenzeichen und kann wie jede andere Datenquelle über den Eingang 35 angesteuert werden, so daß die in dem Teil ACP enthaltenen Daten auf die internen Datenleitungen DI geschaltet werden. Je nach dem Inhalt des übrigen Teils des Mikroprogrammbefehls können diese Daten in verschiedenen Datensinken eingeschrieben werden und damit verschiedene Funktionen auslösen. Eine Möglichkeit ist, durch die im Teil ACP enthaltenen Daten direkt den Mikroprogrammzähler MPZ zu setzen, indem dieser Zähler als Datensinke über den Eingang D5 angesteuert wird, um so einen Sprung im Mikroprogramm auszulösen. Durch Ansteuerung einer entsprechenden anderen Datensinke können die im Teil ACP enthaltenen ^aten beispielsweise in ein Zählregister im Zählregistersatz CRS übernommen werden oder sie werden in das Operationsregister der Einheit ALU übertragen und besimmen dann die auszuführende Rechenoperation.
60981 -1/0388 - 15 -
P 24 40 390.5 Hamburg, den 9. Sept. 1974
Philips Patentverwaltung GmbH PHD 74-143 Po/Sa
Neue Beschreibungsseite 15
nachträglich geändert
In weiteren Anwendungen kann der ACP-Teil als Untermengenangabe für eine Datenquelle (5) oder Datensinke (D), zum Beispiel Arbeitsspeicheradresse, dienen. Außerdem besteht die Möglichkeit, für bestimmte Datenquellen (-5) und/oder Datensinken (D) eine zusätzliche Funktionsangabe in dem ACP-Teil zu machen (z.B. wie oft der Befehl wiederholt werden soll).
Aus dem dargestellten Aufbau des Mikroprogrammbefehls bzw. des Mikroprogramm-Befehlsregisters ist zu erkennen, daß der rechte Abschnitt mit den Teilen CO und ACP bei vielen aufeinanderfolgenden Mikroprogrammbefehlen nicht geändert werden muß, beispielsweise wenn der Teil ACP nicht als Datenquelle wirkt und immer die gleiche Bedingung ausgewertet werden soll. Es ist daher zweckmäßig, wenn der Mikroprogrammspeicher in der Mikroprogramm-Steuereinheit MPS so aufgebaut ist, daß er jeweils nur bei jeder durch den Mikroprogrammzähler MPZ angegebenen Adresse einen Abschnitt eines gesamten Mikroprogrammbefehls ausliest, und daß dieser Abschnitt wahlweise in einen Abschnitt des in gleiche Abschnitte unterteilten Befehlsregisters MBR eingeschrieben wird. Auf diese Weise kann ein gesamter Mikroprogrammbefehl aus einzelnen Teilen zusammengesetzt werden, und vor allem brauchen die Teile, die erhalten bleiben können, nicht ausgelesen werden, sondern es wird nur der zu ändernde Abschnitt ausgelesen. Auf diese Weise kann der Mikroprogrammspeicher wesentlich effektiver ausgenutzt werden. Eine besonders einfache
- 16 -
609811/0 388
Steuerung ergibt sich, wenn ein neu aufgerufener Befehlsabschnitt grundsätzlich in den ersten Abschnitt des MiKroprogramm-Befehlsregisters eingeschrieben wird, und anhand der der ersten Stelle F erkannt wird, ob der nächste Mikroprogramm-Speicherplatz ausgelesen und in den rechten Abschnitt des Mikroprogramm-Befehlsregisters eingeschrieben werden muß oder ob dies nicht notwendig ist und der alte Inhalt erhalten bleiben kann. Auch eine Unterteilung in noch mehr Abschnitte bei Verwendung mehrerer Stellen für den Abschnitt F ist möglich. Es ist auch denkbar, daß Abschnitte des Mikroprogramm-Befehlsregisters selbst Datensinken sind. Obwohl also der Mikroprogrammbefehl einen sehr starren Aufbau besitzt, ist durch entsprechend zweckmäßige Wahl der einzelnen Teile dieses Aufbaues eine äußerst flexible Steuerung möglich , ohne die Entschlüsselung eines Mikroprogrammbefehls besonders aufwendig oder unübersichtlich werden zu lassen.
PatentansOrüche:
609811 /0388

Claims (1)

  1. Patentansprüche;
    1. Rechner mit einem Mikroprogrammspeicher mit vom Makroprogramm aufrufbaren Mikroprogrammabläufen, dadurch gekennzeichnet, daß jeder Mikroprogrammbefehl das gleiche Format hat und immer eine Übertragung eines Inforraationswortes von einer Datenquelle (S) zu einer Datensinke (D) auslöst, wobei das Format in einem ersten Teil aus der. Angabe der Datenquelle (S) und der Datensinke (D) besteht, in einem zweiten Teil aus der Angabe einer oder mehrerer Bedingungen (B), unter denen die Übertragung tatsächlich ausgeführt wird, in einem dritten Teil aus der Angabe für die gleichzeitig zur übertragung auszuführende Veränderung eines Zählregisters (CA) in einem Zählregistersatz (CRS) sowie der Angabe dieses Zählregisters (CA),und in einem vierten Teil aus einem Datenteil bzw. Adressteil (ACP) be-
    . steht. -· ■
    2. Rechner nach Anspruch 1, dadurch gekennzeichnet, daß jeder Mikroprogrammbefehl den Dateninhalt der angegebenen Datenquelle (S) unbedingt ausliest und die Bedingung (B) nur beim Einlesen in die Datensinke (D) wirksam ist.
    3. Rechner nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Wert des aus der Datenquelle (S) ausgelesene Inhalis zumindest einen Teil einer Bedingung (B) darstellt.
    - 18 - .
    60 98 11/0388 -
    4. Rechner nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, f daß eine Bedingung (B) ein vorbestimmter Stellungsbereich, des im dritten Teil angegebenen Zählregisters (CA) ist, und diese Bedingung abhängig von dem Inhalt des Bedingungsteils des Mikropro—
    \ grammbefehls gleichzeitig mit jeder anderen Bedingung wirksam ist.
    ■5. Rechner nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß bei Angabe des Zählregistersatzes (CRS) als Datenquelle (S) und /oder Datensinke (D) das im dritten Teil angegebene Zählregister (CA) angesprochen wird.
    6. Rechner nach Anspruch 1 oder einem der folgenden, · dadurch gekennzeichnet, daß die Datenquelle so angeb-
    . bar ist, daß die Übertragung nur einen Teil des Inhalts der Datenquelle betrifft.
    7. Rechner nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet. daß der Mikroprogrammspeicher (MPS) je . Adresse nur einen Abschnitt fester Länge eines Mikroprogrammbefehls enthält und daß ein ausgelesener Abschnitt
    . wahlweise in einen Abschnitt des in gleiche Abschnitte unterteilten Befehlsregisters <HBR) eingeschrieben wird.
    8. Rechner nach Anspruch 7, dadurch gekennzeichnet, daß der erste Abschnitt eines ausgelesenen Befehls eine Angabe (F)
    609811/0388
    darüber enthält, ob der zweite oder weitere Abschnitte des Befehlsregisters (MBR) neu zu füllen sind oder ob der alte Inhalt zu erhalten ist.
    9. Rechner nach 7 oder 8, dadurch gekennzeichnet, daß der die Daten (ACP ) im vierten Teil des Mikroprogrammbefehlformates enthaltende Teil des Befehlsregisters (MBR) eine Datenquelle (S) darstellt.
    10. Rechner nach Anspruch 7 oder 'einem der folgenden, dadurch gekennzeichnet, daß der die Daten (ACP) im vierten Teil des Mikrobefehlsformats enthaltene' Teil des Befehlsregisters (MBR) eine Untermenge einer Datenquelle (5) oder Datensinke (D) angibt. ' .
    11. Rechner nach einem der Ansprüche 7 bis 9, dadurch gekennzeichnet, daß der die Daten (ACP) im vierten Teil des Mikrobefehlsformates enthaltene Teil des Befehlsregisters (MBR) abhängig von der angegebenen Datenquelle (S) und/ oder Datensinke (D) weitere Funktionen des Rechners auslöst. . .
    12. Rechner nach Anspruch.7 oder einem der folgenden, dadurch gekennzeichnet, daft-das Befehlsregister (MBR) eine Datenquelle (S) und /oder eine Datensinke (D) ist.
    60 9 811/0388
    Leerseite
DE19742440390 1974-08-23 1974-08-23 Elektronischer rechner Granted DE2440390B2 (de)

Priority Applications (11)

Application Number Priority Date Filing Date Title
DE19742440390 DE2440390B2 (de) 1974-08-23 1974-08-23 Elektronischer rechner
NL7509787A NL7509787A (nl) 1974-08-23 1975-08-18 Electronische rekenmachine.
SE7509282A SE402655B (sv) 1974-08-23 1975-08-20 Elektronisk dator
IT26461/75A IT1041895B (it) 1974-08-23 1975-08-20 Calcolatore elettronico
US05/606,162 US4034345A (en) 1974-08-23 1975-08-20 Microprogrammable computer data transfer architecture
GB34602/75A GB1508337A (en) 1974-08-23 1975-08-20 Computer
CA233,795A CA1023052A (en) 1974-08-23 1975-08-20 Microinstruction decoder
AT648975A AT356423B (de) 1974-08-23 1975-08-21 Elektronischer rechner
BE159368A BE832630A (fr) 1974-08-23 1975-08-21 Machine a calculer electronique
FR7526006A FR2282673A1 (fr) 1974-08-23 1975-08-22 Machine a calculer electronique
JP50102515A JPS5146845A (de) 1974-08-23 1975-08-23

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19742440390 DE2440390B2 (de) 1974-08-23 1974-08-23 Elektronischer rechner

Publications (3)

Publication Number Publication Date
DE2440390A1 true DE2440390A1 (de) 1976-03-11
DE2440390B2 DE2440390B2 (de) 1976-10-07
DE2440390C3 DE2440390C3 (de) 1977-05-18

Family

ID=5923881

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19742440390 Granted DE2440390B2 (de) 1974-08-23 1974-08-23 Elektronischer rechner

Country Status (11)

Country Link
US (1) US4034345A (de)
JP (1) JPS5146845A (de)
AT (1) AT356423B (de)
BE (1) BE832630A (de)
CA (1) CA1023052A (de)
DE (1) DE2440390B2 (de)
FR (1) FR2282673A1 (de)
GB (1) GB1508337A (de)
IT (1) IT1041895B (de)
NL (1) NL7509787A (de)
SE (1) SE402655B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014000168A1 (de) 2014-01-02 2015-07-02 Benedikt Burchard Verfahren zur Abrechnung einer Internetdienstleistung

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2747304C3 (de) * 1977-10-21 1981-03-26 IBM Deutschland GmbH, 70569 Stuttgart Einrichtung zur Mikrobefehlssteuerung
US4290102A (en) * 1977-10-25 1981-09-15 Digital Equipment Corporation Data processing system with read operation splitting
US4262330A (en) * 1978-10-23 1981-04-14 International Business Machines Corporation I-phase controls for a computer
US4724517A (en) * 1982-11-26 1988-02-09 Inmos Limited Microcomputer with prefixing functions
WO1988006758A2 (en) * 1987-02-24 1988-09-07 Digital Equipment Corporation Destination control logic for arithmetic and logic unit for digital data processor
US5276892A (en) * 1987-02-24 1994-01-04 Digital Equipment Corporation Destination control logic for arithmetic and logic unit for digital data processor
CN110002694A (zh) * 2019-05-13 2019-07-12 浙江嘉化新材料有限公司 一种废水除盐处理系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB719066A (en) * 1951-06-02 1954-11-24 Nat Res Dev Electrical digital computing engines
US3134092A (en) * 1954-02-05 1964-05-19 Ibm Electronic digital computers
US3434112A (en) * 1966-08-01 1969-03-18 Rca Corp Computer system employing elementary operation memory
US3939455A (en) * 1971-10-01 1976-02-17 Hitachi, Ltd. Microprocessor having an interface for connection of external devices
US3970998A (en) * 1974-10-15 1976-07-20 Rca Corporation Microprocessor architecture

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014000168A1 (de) 2014-01-02 2015-07-02 Benedikt Burchard Verfahren zur Abrechnung einer Internetdienstleistung

Also Published As

Publication number Publication date
SE7509282L (sv) 1976-02-24
AT356423B (de) 1980-04-25
IT1041895B (it) 1980-01-10
ATA648975A (de) 1979-09-15
CA1023052A (en) 1977-12-20
NL7509787A (nl) 1976-02-25
FR2282673A1 (fr) 1976-03-19
BE832630A (fr) 1976-02-23
GB1508337A (en) 1978-04-19
US4034345A (en) 1977-07-05
DE2440390B2 (de) 1976-10-07
FR2282673B1 (de) 1980-04-30
SE402655B (sv) 1978-07-10
JPS5146845A (de) 1976-04-21

Similar Documents

Publication Publication Date Title
DE1499722C2 (de) Einrichtung zur Modifizierung von Informationswörtern
DE2755273C2 (de)
DE3687724T2 (de) Digitalprozessorsteuerung.
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE2555963A1 (de) Einrichtung zur funktionsmodifizierung
DE1928202B2 (de) Einrichtung zur Erstellung statistischer Daten über den Operationsablauf programmgesteuerter Datenverarbeitungsanlagen
DE1275800B (de) Steuerwerk fuer datenverarbeitende Maschinen
DE2712224A1 (de) Datenverarbeitungsanlage
DE1499193B2 (de) Speicher-adressierschaltung
DE2318069A1 (de) Rechnersteuersystem unter verwendung von mikroprogrammierung und statisch/dynamischer erweiterung von steuerfunktionen mittels festverdrahteter logischer matrix
DE2746505C2 (de)
DE2718110A1 (de) Datenverarbeitungseinheit
DE1499203B1 (de) Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb
DE2023354A1 (de) Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE69231237T2 (de) Datenverarbeitungsvorrichtung
DE2440390A1 (de) Elektronischer rechner
DE3501903A1 (de) Im pipelinebetrieb arbeitende datenverarbeitungseinrichtung
DE2245284A1 (de) Datenverarbeitungsanlage
DE2440390C3 (de)
DE2609698C2 (de) Elektronischer Rechner
DE2702722A1 (de) Instruktionsinterpretation in elektronischen datenverarbeitungsanlagen
DE2710436C2 (de) Datenverarbeitungseinrichtung
DE1549381B2 (de) Datenverarbeitungsanlage
EP0525214A1 (de) Verfahren zum Betreiben eines Automatisierungsgeräts

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
8339 Ceased/non-payment of the annual fee