DE4308516C2 - Zentraleinheit - Google Patents

Zentraleinheit

Info

Publication number
DE4308516C2
DE4308516C2 DE4308516A DE4308516A DE4308516C2 DE 4308516 C2 DE4308516 C2 DE 4308516C2 DE 4308516 A DE4308516 A DE 4308516A DE 4308516 A DE4308516 A DE 4308516A DE 4308516 C2 DE4308516 C2 DE 4308516C2
Authority
DE
Germany
Prior art keywords
arithmetic
switching
central unit
stage
control signal
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 - Fee Related
Application number
DE4308516A
Other languages
English (en)
Other versions
DE4308516A1 (de
Inventor
Kenji Oonishi
Tsunenori Umeki
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4308516A1 publication Critical patent/DE4308516A1/de
Application granted granted Critical
Publication of DE4308516C2 publication Critical patent/DE4308516C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Executing Machine-Instructions (AREA)

Description

Die Erfindung bezieht sich auf eine Zentraleinheit in einem Mikrocomputer oder Mikroprozessor.
Fig. 7 ist ein Blockschaltbild eines Mikrocomputers, der mit einer herkömmlichen Zentraleinheit versehen ist. In Fig. 7 ist mit 11 eine Zentraleinheit CPU und mit 12 ein Speicher bezeichnet. Die Zentraleinheit 11 enthält einen Datenzwischenspeicher 5 zur Zwischenspeicherung von Daten für einen Rechenvorgang aus dem Speicher 12, ein Rechenregister 4 zum Speichern von Daten für Rechenvorgänge und Rechenergebnisse, eine Übertrag/Borgen-Kennungsstufe 2 zum Speichern eines Übertragbits, das anzeigt, daß das in dem Rechenregister 4 einzuspeichernde Rechenergebnis eine vorbestimmte Bitanzahl übersteigt, sowie zum Speichern eines Borgenbits, das einen Borgübertrag (eine geborgte Zahl) anzeigt, wenn der Inhalt des Datenzwischenspeichers 5 nicht von dem Inhalt des Rechenregisters 4 subtrahiert werden kann, und ein nachfolgend als Rechenwerk bezeichnetes Rechen- und Leitwerk (ALU) 3, das Operationen gemäß den Inhalten des Datenzwischenspeichers 5, des Rechenregisters 4 und der Kennungsstufe 2 ausführt, um die Rechenergebnisse in dem Rechenregister 4 und der Übertrag/Borgen-Kennungsstufe 2 zu speichern. Die Zentraleinheit 11 führt die Operationen entsprechend Programmen aus, die in den Speicher 12 eingeschrieben sind. Der Speicher 12 enthält einen Festspeicher ROM 12b zum Speichern von Daten und Programmen und einen Schreib/Lesespeicher 12a zum vorübergehenden Speichern von Daten, die für die Operationen erforderlich sind. Die Programme können zwar hierbei entweder in den Festspeicher 12b oder in den Schreib/Lesespeicher 12a eingeschrieben werden, jedoch werden sie im allgemeinen in den Festspeicher 12b eingeschrieben. Infolgedessen wird in der folgenden Beschreibung vorausgesetzt, daß die Programme in dem Festspeicher 12b gespeichert sind.
Als nächstes wird nachstehend die Funktion der Zentraleinheit unter Bezugnahme auf die Fig. 7 beschrieben. Die Zentraleinheit 11 arbeitet entsprechend einem Programm, das in den Festspeicher 12b des Speichers 12 eingeschrieben ist. In der Zentraleinheit 11, die Operationscodes bzw. Befehlscodes für das Programm ausliest, werden die Operationscodes in eine nicht dargestellte Steuereinheit der Zentraleinheit 11 eingegeben und die Steuereinheit betreibt die Zentraleinheit 11 entsprechend einer Prozedur, die durch die jeweiligen Operationscodes bzw. Befehlscodes bestimmt ist.
Fig. 8 ist eine Darstellung zur Beschreibung einer Anweisung ADC. Die Anweisung ADC als ein Rechenbefehl ist ein Befehl zum Addieren der Inhalte des Rechenregisters 4, des Speichers 12 und der Übertrag/Borgen-Kennungsstufe 2. Hierbei besteht der Inhalt des Speichers 12 aus Daten, die als Operanden für ein Programm in dem Speicher 12 festgelegt sind, aus Daten, die in den Festspeicher 12b eingeschrieben sind oder aus Daten, die vorübergehend in dem Schreib/Lesespeicher 12a gespeichert sind. Der Inhalt "1" der Kennungsstufe 2 vor dem Rechenvorgang zeigt an, daß die Rechendaten einen Übertrag aus einer Stelle niedrigerer Wertigkeit aufnehmen, nämlich eine Zahl um eine Stelle höhergesetzt wird, während der Inhalt "0" der Kennungsstufe 2 vor dem Rechenvorgang anzeigt, daß die Rechendaten keinen Übertrag aus der Stelle niedrigerer Wertigkeit aufnehmen. Das Rechenergebnis wird in das Rechenregister 4 eingespeichert. Falls das Rechenergebnis die Bitanzahl des Rechenregisters 4 übersteigt, wird zum Zeitpunkt des Beendens des Rechenvorgangs der Inhalt der Übertrag/Borgen-Kennungsstufe 2 zu "1". Falls andererseits das Rechenergebnis weniger Bits hat als das Rechenregister 4, wird zum Zeitpunkt des Beendens der Operation der Inhalt der Kennungsstufe 2 zu "0".
Die Fig. 9 ist eine Darstellung zum Beschreiben einer Anweisung ADD. Die Anweisung ADD als ein Rechenbefehl ist ein Befehl zum Addieren der Inhalte des Rechenregisters 4 und des Speichers 12. Das Rechenergebnis wird in das Rechenregister 4 eingespeichert. Falls das Rechenergebnis die Bitanzahl des Rechenregisters 4 übersteigt, wird bei dem Beenden des Rechenvorgangs der Inhalt der Übertrag/Borgen-Kennungsstufe 2 zu "1". Falls das Rechenergebnis unter der Bitanzahl des Rechenregisters 4 liegt, wird zum Zeitpunkt des Beendens des Rechenvorgangs der Inhalt der Kennungsstufe 2 zu "0".
Die Fig. 10 ist eine Darstellung zum Beschreiben einer Anweisung SBC. Die Anweisung bzw. der Befehlscode SBC ist ein Befehl zum Subtrahieren des Inhalts des Speichers 12 und des Inhalts der Übertrag/Borgen-Kennungsstufe 2 von dem Inhalt des Rechenregisters 4. Der Inhalt "0" der Kennungsstufe 2 vor dem Rechenvorgang zeigt an, daß die Rechendaten einen Stellen-Borgübertrag aus einer Stelle niedrigerer Wertigkeit aufnehmen, während der Inhalt "1" der Kennungsstufe 2 vor dem Rechenvorgang anzeigt, daß die Rechendaten kein Borgausgangssignal aus der Stelle niedrigerer Wertigkeit aufnehmen. Das Rechenergebnis wird in das Rechenregister 4 eingespeichert. Falls der Inhalt des Speichers 12 und der Inhalt der Kennungsstufe 2 nicht von dem Inhalt des Rechenregisters 4 subtrahiert werden können, d. h., wenn bei dem Rechenergebnis ein Borgübertrag auftritt, wird nach beendetem Rechenvorgang der Inhalt der Kennungsstufe 2 zu "0". Falls andererseits bei dem Rechenergebnis kein Borgübertrag auftritt, wird zum Zeitpunkt der Beendigung des Rechenvorgangs der Inhalt der Kennungsstufe 2 zu "1".
Fig. 11 ist eine Darstellung zum Beschreiben einer Anweisung SUB. Die Anweisung SUB ist ein Befehl zum Subtrahieren des Inhalts des Speichers 12 von dem Inhalt des Rechenregisters 4. Das Rechenergebnis wird in das Rechenregister 4 eingespeichert. Falls der Inhalt des Speichers 12 nicht von dem Inhalt des Rechenregisters subtrahiert werden kann, d. h., bei dem Rechenergebnis ein Borgübertrag auftritt, wird bei der Beendigung des Rechenvorgangs der Inhalt der Übertrag/Borgen-Kennungsstufe 2 zu "0". Wenn bei dem Rechenergebnis kein Borgübertrag auftritt, wird der Inhalt der Kennungsstufe 2 bei der Beendigung des Rechenvorgangs zu "1".
Falls beispielsweise die Anweisung ADC in einer Direktadressierungsbetriebsart ausgeführt wird, bei der ein Operand (Operator) in einem Programm festgelegt ist, und ein Operationscode (Befehlscode) für das Programm gelesen und in die Zentraleinheit 11 eingegeben wird, bewirkt diese, daß der Operand in dem Datenzwischenspeicher 5 als direkter Operationsdatenwert, z. B. DATA1 zwischengespeichert wird. Der Wert DATA1 aus dem Datenzwischenspeicher 5 durchläuft einen internen Bus 6a der Zentraleinheit 11 und wird in das Rechenwerk 3 eingegeben, während ein Datenwert, z. B. DATA2 aus dem Rechenregister 4 über einen internen Bus 6b der Zentraleinheit 11 in das Rechenwerk 3 eingegeben wird und ein Datenwert, z. B. C1 aus der Übertrag/Borgen-Kennungsstufe 2 über einen Datenbus 7 in das Rechenwerk 3 eingegeben wird. In dem Rechenwerk 3 werden die Datenwerte DATA1, DATA2 und C1 addiert und das Rechenergebnis SUM wird über den internen Bus 6a der Zentraleinheit 11 in das Rechenregister 4 eingegeben. Zu diesem Zeitpunkt wird das Ausgangssignal des Datenzwischenspeichers 5 ausgeschaltet. Ferner wird über eine Datenleitung 9 in die Kennungsstufe 2 ein Übertrag des Rechenergebnisses, z. B. C2 eingegeben. Durch diesen Prozeß ist die Anweisung ADC fertig ausgeführt.
Auf ähnliche Weise bewirkt im Falle des Ausführens der Anweisung ADD in der Direktadressier-Betriebsart die Zentraleinheit 11 im Ansprechen auf den Operationscode für das von der Zentraleinheit gelesene Programm, daß der Operand in dem Zwischenspeicher 5 als unmittelbarer Operationsdatenwert DATA1 gespeichert wird. Der Wert DATA1 aus dem Datenzwischenspeicher 5 wird über den internen Bus 6a der Zentraleinheit 11 in das Rechenwerk 3 eingegeben, während der Datenwert DATA2 aus dem Rechenregister 4 über den internen Bus 6b der Zentraleinheit 11 in das Rechenwerk 3 eingegeben wird. Dabei ist das Übertrageingangssignal des wertniedrigsten Bits für das Rechenwerk 3 auf "0" festgelegt. In dem Rechenwerk 3 werden die Werte DATA1 und DATA2 miteinander addiert und das Rechenergebnis SUM wird über den internen Bus 6a der Zentraleinheit 11 in das Rechenregister 4 eingegeben. Zu diesem Zeitpunkt ist die Ausgabe aus dem Datenzwischenspeicher 5 abgeschaltet. Ferner wird ein Übertrag C2 des Rechenergebnisses über die Datenleitung 9 in die Übertrag/Borgen-Kennungsstufe 2 eingegeben. Damit ist die Ausführung der Anweisung ADD abgeschlossen.
Wenn ferner im Falle des Ausführens der Anweisung SBC bei der Direktadressier-Betriebsart in die Zentraleinheit 11 ein Operationscode für das Programm eingelesen wird, bewirkt die Zentraleinheit 11, daß in dem Zwischenspeicher 5 der Operand DATA1 als unmittelbarer Wert gespeichert wird. Der Wert DATA1 aus dem Datenzwischenspeicher 5 wird über den internen Bus 6a der Zentraleinheit 11 derart in das Rechenwerk 3 eingegeben, daß er in diesem durch Bit-Inversion zu einem Wert DATA1B wird. Der Datenwert DATA2 aus dem Rechenregister 4 wird über den internen Bus 6b der Zentraleinheit 11 in das Rechenwerk 3 eingegeben, während über die Datenleitung 7 in das Rechenwerk 3 ein Datenwert B1 aus der Übertrag/Borgen- Kennungsstufe 2 eingegeben wird. Die Werte DATA1B, DATA2 und B1 werden in dem Rechenwerk 3 miteinander addiert und das Rechenergebnis SUM wird über den internen Bus 6a der Zentraleinheit 11 in das Rechenregister 4 eingegeben. Zu diesem Zeitpunkt ist die Ausgabe aus dem Datenzwischenspeicher 5 abgeschaltet. Durch diese Prozedur ist die Anweisung SBC fertig ausgeführt.
Wenn weiterhin im Falle des Ausführens der Anweisung SUB in der Direktadressier-Betriebsart ein Operationscode für das Programm in die Zentraleinheit 11 ausgelesen wird, bewirkt die Zentraleinheit 11, daß der Operand DATA1 als Direktwert in den Datenzwischenspeicher 5 eingespeichert wird. Der Wert DATA1 aus dem Datenzwischenspeicher 5 wird über den internen Bus 6a der Zentraleinheit 11 derart in das Rechenwerk 3 eingegeben, daß er in diesem durch Bit-Inversion zu einem Wert DATA1B wird. Der Wert DATA2 aus dem Rechenregister 4 wird über den internen Bus 6b der Zentraleinheit 11 in das Rechenwerk 3 eingegeben. Der Datenwert C1 aus der Übertrag/Borgen-Kennungsstufe 2 wird über die Datenleitung 7 in das Rechenwerk 3 eingegeben. Zu diesem Zeitpunkt ist das Borgen-Eingangssignal des wertniedrigsten Bits für das Rechenwerk 3 auf "1" festgelegt. In dem Rechenwerk 3 werden die Werte DATA1B und DATA2 addiert und das Rechenergebnis SUM wird über den internen Bus 6a in das Rechenregister 4 eingegeben. Zu diesem Zeitpunkt ist die Ausgabe aus dem Datenzwischenspeicher 5 abgeschaltet. Ferner wird ein Borgübertrag B2 des Rechenergebnisses über die Datenleitung 9 in die Übertrag/Borgen-Kennungsstufe 2 eingegeben. Damit ist das Ausführen der Anweisung SUB beendet.
Gemäß der vorstehenden Beschreibung besteht der Unterschied zwischen den Anweisungen ADC und ADD bzw. zwischen den Anweisungen SBC und SUB in der Gültigkeit oder Ungültigkeit des in das Rechenwerk 3 einzugebenden Inhalts der Übertrag/Borgen-Kennungsstufe 2, während der Mikrocomputer gemäß dem herkömmlichen Betriebssystem einen einzelnen Rechenvorgang ausführt, der durch einen einzelnen Operationscode bestimmt ist. Daher sind für das Ausführen der Anweisungen ADC und ADD voneinander verschiedene Operationscodes erforderlich. Das gleiche gilt für das Ausführen der Anweisungen SBC und SUB. Infolgedessen besteht ein Problem darin, daß für das Ausführen der Operation mit gültiger Übertrag- oder Borgübertrag-Eingabe und der Operation mit ungültiger Übertrag- oder Borgübertrag-Eingabe bei mehreren Adressierungsarten die Anzahl der Operationscodes im Vergleich zu dem Fall des Ausführens einer der Operationen verdoppelt werden muß.
Aus der US-A-4 839 846 ist eine Fließkomma-Rechenvor­ richtung bekannt, mit der eine beschleunigte Rundungsver­ arbeitung möglich ist. Abhängig von einem im Verlauf eines Rechenvorgangs erfaßten Übertrag wird dabei durch Setzen von Ergebnisbits auf bestimmte Werte das erzielte Ergebnis beeinflußt.
Ferner beschreibt die EP-A-0 206 346 eine Vorrichtung, mit der auf die Erfassung eines bei einem Rechenvorgang hin auftretenden Übertrags hin die Ausführung weiterer Rechen­ vorgänge durch eine Unterbrechungssteuerung unterbunden wird, um die Ausgabe fehlerhafter Ergebnisse zu verhindern.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, die in Verbindung mit der herkömmlichen Zentraleinheit beschriebenen Probleme zu beseitigen. Genauer heißt das, daß die Aufgabe der vorliegenden Erfindung darin besteht, eine Zentraleinheit mit vermindertem Rechenbefehlssatz bei unverändertem Funktionsvorrat zu schaffen.
Die Aufgabe wird erfindungsgemäß mit einer Zentraleinheit gemäß Patentanspruch 1 gelöst. Vorteilhafte Weiterbildungen der Er­ findung sind in den Unteransprüchen angegeben.
Demnach ist die erfindungsgemäße Zentraleinheit mit einer Schalteinrichtung bzw. Schaltstufe zum Ändern des in ein Rechenwerk einzugebenden Inhalts einer Kennungsstufe ausgestattet. Entsprechend einem in die Schaltstufe eingegebenen Steuersignal wird zwischen der Operation bzw. dem Rechenvorgang, bei der bzw. dem das in das Rechenwerk eingegebene Übertrag- oder Borgübertrag-Eingangssignal gültig ist, und der Operation umgeschaltet, bei der die Übertrag- oder Borgübertrag-Eingabe ungültig ist, wodurch die Operationen mit der gleichen Anweisung ausgeführt werden.
Erfindungsgemäß wird der Inhalt der Kennungsstufe entsprechend dem in die Schaltstufe eingegebenen Steuersignal derart geändert, daß zwischen den Operationen mit gültiger und mit ungültiger Übertrag- oder Borgübertrag-Eingabe in das Rechenwerk umgeschaltet wird.
Die Erfindung wird nachstehend anhand von Ausführungsbei­ spielen unter Bezugnahme auf die Zeichnung näher erläutert.
Fig. 1 ist ein Blockschaltbild, das eine Gestaltung eines Mikrocomputers aufgrund einer Zentraleinheit gemäß einem ersten Ausführungsbeispiel zeigt.
Fig. 2 ist ein Schaltbild, das ein Beispiel für eine Schaltstufe bei diesem Ausführungsbeispiel zeigt.
Fig. 3 ist ein Blockschaltbild, das eine Gestaltung eines Mikrocomputers aufgrund einer Zentraleinheit gemäß einem zweiten Ausführungsbeispiel zeigt.
Fig. 4 ist ein Blockschaltbild, das eine Gestaltung eines Mikrocomputers aufgrund einer Zentraleinheit gemäß einem dritten Ausführungsbeispiel zeigt.
Fig. 5 ist ein Blockschaltbild, das eine Gestaltung eines Mikrocomputers aufgrund einer Zentraleinheit gemäß einem vierten Ausführungsbeispiel zeigt.
Fig. 6 ist ein Blockschaltbild, das eine Gestaltung deines Mikrocomputers aufgrund einer Zentraleinheit gemäß einem fünften Ausführungsbeispiel zeigt.
Fig. 7 ist ein Blockschaltbild eines Mikrocomputers mit einer herkömmlichen Zentraleinheit.
Fig. 8 ist eine Darstellung zum Beschreiben einer Anweisung ADC.
Fig. 9 ist eine Darstellung zum Beschreiben einer Anweisung ADD.
Fig. 10 ist eine Darstellung zum Beschreiben einer Anweisung SBC.
Fig. 11 ist eine Darstellung zum Beschreiben einer Anweisung SUB.
Die Fig. 1 ist ein Blockschaltbild eines Mikrocomputers mit einer Zentraleinheit gemäß einem ersten Ausführungsbeispiel, wobei Teile, die denjenigen in Fig. 7 entsprechen, mit den gleichen Bezugszeichen bezeichnet sind und deren Beschreibung weggelassen ist. In der Fig. 1 ist mit 1 eine Schaltstufe bezeichnet, die als eine Schalteinrichtung zum Ändern des in ein Rechen- und Leitwerk bzw. Rechenwerk (ALU) 3 einzugebenden Inhalts einer Übertrag/Borgen-Kennungsstufe bzw. Kennungsstufe 2 wirkt. Die Schaltungsanord­ nung dieser Schaltstufe 1 ist in Fig. 2 dargestellt. In Fig. 2 sind mit A ein Steuersignal für die Schaltstufe 1, mit B ein Eingangssignal aus der Übertrag/Borgen-Kennungsstufe 2, mit C ein Übertrag/Borgen-Eingangssignal für das Rechenwerk 3 und mit SBC ein Steuersignal einer Zentraleinheit 11 bezeichnet, das bei dem Ausführen der Anweisung bzw. des Befehlscodes SBC zu "1" wird. Ein ODER-Glied 17 gibt "1" ab, wenn entweder das Ausgangssignal eines zusammengesetzten Schaltglieds 15 oder das Ausgangssignal eines UND-Glieds 16 "1" ist. Wenn das Steuersignal A "0" ist, wird das Ausgangssignal des UND- Glieds 16 immer zu "0". Das zusammengesetzte Schaltglied 15 gibt "0" ab, wenn das Eingangssignal B "0" ist, bzw. "1", wenn das Eingangssignal B "1" ist. Somit wird dann, wenn das Steuersignal A "0" ist, der Wert des Ausgangssignals C gleich dem Wert des Eingangssignals B. Wenn das Steuersignal A "1" ist, wird das Ausgangssignal des zusammengesetzten Schaltglieds 15 immer zu "0", während das UND-Glied 16 bei dem Ausführen der Anweisung ADC "0" abgibt, da das Signal SBC zu "0" wird, bzw. bei dem Ausführen der Anweisung SBC "1" abgibt, da das Signal SBC zu "1" wird. Infolgedessen wird in dem Fall, daß das Steuersignal A "1" ist, das Ausgangssignal C bei dem Ausführen der Anweisung ADC zu "0" und bei dem Ausführen der Anweisung SBC zu "1".
Da in dem Mikrocomputer mit der in Fig. 1 dargestellten Gestaltung bei dem Ausführen der Anweisung ADC oder SBC, bei dem das Steuersignal 10 "0" ist, das Ausgangssignal 8 der Schaltstufe 1 gleich dem Ausgangssignal 7 der Übertrag/Borgen-Kennungsstufe 2 wird, werden wie bei dem herkömmlichen Mikrocomputer in dem Rechenwerk 3 die Daten aus einem Rechenregister 4, die Daten aus einem Datenzwischenspeicher 5 und der Inhalt der Kennungsstufe 2 addiert. Da im Falle des Ausführens der Anweisung ADC bei dem Zustand, bei dem das Steuersignal 10 "1" ist, das Ausgangssignal 8 der Schaltstufe 1 zu "0" wird, wird das Rechenergebnis zu dem Ergebnis der Addition bzw. zu der Summe aus den Daten aus dem Rechenregister 4 und den Daten aus dem Datenzwischenspeicher 5 und damit gleich dem Rechenergebnis für die Anweisung ADD. Da ferner bei dem Ausführen der Anweisung SBC bei dem Zustand, bei dem das Steuersignal 10 "1" ist, das Ausgangssignal der Schaltstufe 1 zu "1" wird, wird das Rechenergebnis zu einem Wert, der durch Subtrahieren der Daten aus dem Datenzwischenspeicher 5 von den Daten aus dem Rechenregister 4 erhalten wird, und damit gleich dem Rechenergebnis für die Anweisung SUB.
Bei einem zweiten Ausführungsbeispiel wird gemäß der Darstellung in Fig. 3 das Steuersignal 10 aus einer Schaltkennungsstufe bzw. Schaltkennung 13a eingegeben, der eine Adresse zugeordnet ist. Wenn entsprechend einem Programm aus einem Speicher 12 die Anweisung ADC oder SBC ausgeführt wird, wird von der Zentraleinheit 11 vor dem Ausführen der Anweisung ein Befehl für das Einschreiben von "0" in die Schaltkennungsstufe 13a ausgeführt und damit das Steuersignal 10 für die Schaltstufe 1 auf "0" geschaltet, während andererseits die Zentraleinheit 11 bei dem Ausführen der Anweisung bzw. des Rechenbefehls ADD oder SUB einen Befehl für das Einschreiben von "1" in die Schaltkennungsstufe 13a ausführt, wodurch ein Rechenvorgang wie bei dem ersten Ausführungsbeispiel ermöglicht ist.
Bei einem dritten Ausführungsbeispiel wird das Steuersignal 10 für den Schaltvorgang der Schaltstufe 1 aus einer Schaltkennungsstufe 13b eingegeben, die zum Zeitpunkt des Rücksetzens ein Eingangssignal an einem externen Anschluß bzw. Außenanschluß 14 zwischenspeichert. Daher wird dann, wenn zum Zeitpunkt des Rücksetzens das Eingangssignal an den Außenanschluß 14 auf "0" geschaltet ist, nach dem beendeten Rücksetzen der Rechenvorgang gleich dem Rechenvorgang bei der Anweisung ADC oder SBC. Wenn zum Rücksetzzeitpunkt das Eingangssignal an dem Außenanschluß 14 auf "1" geschaltet ist, wird nach dem beendeten Rücksetzen der Rechenvorgang gleich dem Rechenvorgang bei der Anweisung ADD oder SUB.
Bei einem vierten Ausführungsbeispiel wird gemäß Fig. 5 das Steuersignal 10 für den Schaltvorgang der Schaltstufe 1 aus einer Schaltkennungsstufe 13c eingegeben, die in der Zentraleinheit 11 enthalten ist. Die Kennung der Schaltkennungsstufe 13c wird im Ansprechen auf einen bestimmten Setzbefehl zu "1" und im Ansprechen auf einen Löschbefehl zu "0". Bei diesem Ausführungsbeispiel ergibt sich ein Rechenvorgang, der dem Rechenvorgang bei dem vorangehend beschriebenen zweiten Ausführungsbeispiel gleichartig ist.
Weiterhin wird bei einem fünften Ausführungsbeispiel gemäß Fig. 6 das Steuersignal 10 für die Schaltfunktion der Schaltstufe 1 über den Außenanschluß 14 eingegeben.
Obgleich bei den vorstehend beschriebenen Ausführungsbei­ spielen das Umschalten zwischen den Anweisungen ADC und ADD und zwischen den Anweisungen SBC und SUB mittels des gleichen Steuersignals erfolgt, ist es möglich, die Schaltfunktion jeweils mit voneinander verschiedenen Steuersignalen herbeizuführen. Außerdem können verschiedenerlei konstruktive Änderungen vorgenommen werden, ohne von der Erfindung abzuweichen. Darüberhinaus ist es bei den vorstehend beschriebenen Ausführungsbeispie­ len möglich, als Rechenregister zum Speichern der Operationsdaten und der Rechenergebnisse einen Akkumulator, ein Mehrzweckregister oder dergleichen zu benutzen.
Gemäß der vorstehenden Beschreibung ist erfindungsgemäß eine Schalteinrichtung vorgesehen, die den in das Rechenwerk einzugebenden Inhalt der Übertrag/Borgen-Kennungsstufe ändert, um entsprechend dem in die Schalteinrichtung eingegebenen Steuersignal zwischen dem Rechenvorgang mit gültiger Übertrag- oder Borgübertrag-Eingabe in das Rechenwerk und dem Rechenvorgang mit ungültiger Übertrag- oder Borgübertrag-Eingabe umzuschalten, wodurch es möglich wird, diese Rechenvorgänge mit der gleichen Anweisung auszuführen. Infolgedessen ist es möglich, mit dem gleichen Operationscode unter Ändern des Steuersignals die Operation, bei dem die Übertrag- oder Borgübertrag-Eingabe wirksam ist, und die Operation auszuführen, bei der die Übertrag- oder Borgübertrag-Eingabe ungültig ist. D.h., es ist möglich, mit einem einzigen Operationscode bzw. Befehlscode verschiedene Operationen bzw. Rechenbefehle auszuführen und daher die Anzahl der Operationscodes zu verringern. Da es außerdem nicht erforderlich ist, die Operationscodes zu erweitern, kann in einem Mikrocomputer oder dergleichen, bei dem die Operation mit Übertrag oder die Operation mit Borgübertrag vorgesehen ist, durch geringfügige logische Änderungen die Anzahl der Operationen vergrößert werden.
Um eine Zentraleinheit zu erhalten, die mit dem gleichen Operationscode einen Rechenvorgang, bei dem eine Übertrageingabe wirksam ist, und einen Rechenvorgang, bei dem die Übertrageingabe ungültig ist, oder einen Rechenvorgang, bei dem eine Borgübertrageingabe wirksam ist, und einen Rechenvorgang ausführt, bei dem die Borgübertrageingabe ungültig ist, wird zwischen den Ausgang einer Übertrag/Borgen-Kennungsstufe und einen Übertrag/Borgen-Eingang eines Rechen- und Leitwerkes eine Schaltstufe eingefügt, die die Eingabe in das Rechen- und Leitwerk durch ein Steuersignal umschaltet, welches von einem auf einem Operationscode beruhenden Steuersignal der Zentraleinheit verschieden ist.

Claims (10)

1. Zentraleinheit mit
einem Datenzwischenspeicher (5) zur Zwischenspeiche­ rung von Daten aus einem Speicher (12),
einem Rechenregister (4) zur Speicherung von Daten für Rechenvorgänge und von Rechenergebnissen,
einer Kennungsstufe (2) zur Speicherung eines bei ei­ nem Rechenvorgang auftretenden Übertrags (9), und
einem Rechenwerk (3), das mit dem Datenzwischenspei­ cher (5), dem Rechenregister (4) und der Kennungsstufe (2) verbunden ist und zum Ausführen eines Rechenvorgangs mit den dem Rechenwerk zugeführten Inhalten des Datenzwischen­ speichers (5), des Rechenregisters (4) und der Kennungs­ stufe (2) dient,
wobei die Zentraleinheit (11) entsprechend einem von mehreren in dem Speicher (12) abgelegten und voneinander verschiedenen Befehlscodes (ADC, SBC) dem Rechenwerk (3) die Inhalte des Datenzwischenspeichers (5), des Rechenregisters (4) und der Kennungsstufe (2) zuführt und das Rechenwerk (3) dann zur Ausführung des Rechenvorgangs anweist, gekennzeichnet durch
eine Schaltstufe (1), über die ein Ausgangssignal (7) der Kennungsstufe (2) dem Rechenwerk (3) als Datenwert (8) zuführbar ist,
wobei in Abhängigkeit eines der Schaltstufe (1) zugeführten Steuersignals (10)
das Ausgangssignal (7) der Kennungsstufe (2) dem Rechenwerk (3) unverändert als der Datenwert (8) zugeführt wird und das Rechenwerk (3) einen Rechenvorgang entsprechend dem jeweils zugeführten Befehlscode (ADC, SBC) ausführt, oder durch Umschaltung des Steuersignals (10)
der dem Rechenwerk (3) zugeführte Datenwert (8) derart eingestellt wird, daß das Rechenwerk (3) bei dem jeweils zugeführten Befehlscode (ADC, SBC) einen Rechenvorgang ausführt, der jeweils einem modifi­ zierten Rechenbefehl (ADD, SUB) des in dem Speicher (12) abgelegten Rechenbefehls (ADC, SBC) entspricht.
2. Zentraleinheit nach Anspruch 1, bei der das Umschalten zwischen den Rechenvorgängen mittels einer Schaltkennung (13) erfolgt.
3. Zentraleinheit nach Anspruch 2, dadurch gekennzeichnet, daß die Schaltkennung (13a) durch ein Programm gesetzt ist.
4. Zentraleinheit nach Anspruch 2, dadurch gekennzeichnet, daß die Schaltkennung (13b) durch einen Eingangssignalwert an einem externen Anschluß (14) zum Zeitpunkt eines Rücksetzens gesetzt ist.
5. Zentraleinheit nach Anspruch 2, dadurch gekennzeichnet, daß die Schaltkennung (13c) eine interne Nennung der Zentraleinheit (11) mit einem besonderen Setzbefehl und einem besonderen Rücksetzbefehl ist.
6. Zentraleinheit nach Anspruch 1, dadurch gekennzeichnet, daß das Umschalten zwischen den Rechenvorgängen mittels eines Schaltsignals aus einem externen Anschluß (14) erfolgt.
7. Zentraleinheit nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß die Schaltstufe (1) aus mehreren logischen Schaltgliedern (15, 16, 17) aufgebaut ist, um den in das Rechenwerk (3) einzugebenden Datenwert (8) entsprechend einem Steuersignal (10; A) zu ändern, das von dem Steuersignal (SBC) der Zentraleinheit (11) verschieden ist.
8. Zentraleinheit nach einem der Ansprüche 2, 3, 4 oder 7, dadurch gekennzeichnet, daß die Schaltkennung (13) als Steuersignal (10) für die Schaltfunktion der Schalstufe (1) eingesetzt ist.
9. Zentraleinheit nach Anspruch 7, dadurch gekennzeichnet, daß als Steuersignal (10) für die Schaltfunktion der Schaltstufe (1) ein internes Ausgangssignal der Zentraleinheit (11) verwendet ist.
10. Zentraleinheit nach Anspruch 7, dadurch gekennzeichnet, daß als Steuersignal (10) für die Schaltfunktion der Schaltstufe (1) das Schaltsignal aus dem externen Anschluß (14) verwendet ist.
DE4308516A 1992-04-01 1993-03-17 Zentraleinheit Expired - Fee Related DE4308516C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4108825A JPH05282133A (ja) 1992-04-01 1992-04-01 演算方式

Publications (2)

Publication Number Publication Date
DE4308516A1 DE4308516A1 (de) 1993-10-07
DE4308516C2 true DE4308516C2 (de) 1997-12-04

Family

ID=14494494

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4308516A Expired - Fee Related DE4308516C2 (de) 1992-04-01 1993-03-17 Zentraleinheit

Country Status (3)

Country Link
US (1) US5423052A (de)
JP (1) JPH05282133A (de)
DE (1) DE4308516C2 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2718866B1 (fr) * 1994-04-19 1996-05-15 Sgs Thomson Microelectronics Dispositif de calcul arithmétique et logique et procédé de commande.
US20100023733A1 (en) * 2008-04-15 2010-01-28 Vns Portfolio Llc Microprocessor Extended Instruction Set Precision Mode
US11080045B2 (en) * 2011-12-22 2021-08-03 Intel Corporation Addition instructions with independent carry chains

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5833572B2 (ja) * 1977-10-21 1983-07-20 株式会社東芝 情報処理方式
JPS61122747A (ja) * 1984-11-14 1986-06-10 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ処理装置
JPS61213927A (ja) * 1985-03-18 1986-09-22 Hitachi Ltd 浮動小数点演算処理装置
US4649478A (en) * 1985-06-28 1987-03-10 Hewlett-Packard Company Operation code selected overflow interrupts
US4811266A (en) * 1986-11-05 1989-03-07 Honeywell Bull Inc. Multifunction arithmetic indicator
JPH07113886B2 (ja) * 1987-05-11 1995-12-06 株式会社日立製作所 演算回路
US5047975A (en) * 1987-11-16 1991-09-10 Intel Corporation Dual mode adder circuitry with overflow detection and substitution enabled for a particular mode
US4901268A (en) * 1988-08-19 1990-02-13 General Electric Company Multiple function data processor

Also Published As

Publication number Publication date
DE4308516A1 (de) 1993-10-07
JPH05282133A (ja) 1993-10-29
US5423052A (en) 1995-06-06

Similar Documents

Publication Publication Date Title
DE2715073C3 (de) Mikroprogrammierte Rechner-Steuervorrichtung
DE2230102C2 (de) Mikroprogrammierter Prozessor mit bitparalleler Datenübertragung
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE2411963A1 (de) Datenverarbeitungsanlage
DE1499200A1 (de) Datenverarbeitungsanlage mit vorranggesteuerter Programmunterbrechung
DE2533403A1 (de) Datenverarbeitungssystem
DE2907181A1 (de) Befehlssatz-modifizierregister fuer einen datenprozessor
DE2910839A1 (de) Einrichtung zur ausfuehrung einer speziellen verzweigungsinstruktion
DE2719635A1 (de) Anordnung fuer eine erweiterung einer mikroprogrammsteuerung einer datenverarbeitungsanlage
DE2756762A1 (de) Verfahren und anordnung zum zugriff zu beliebigen bitfeldern im hauptspeicher einer datenverarbeitungsanlage
DE1931966B2 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE1549480A1 (de) Datenverarbeitungsanlage
DE1285219B (de) Steuerwerk zur Ausfuehrung von Unterprogrammen
DE2145709A1 (de) Datenverarbeitungsanlage
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE3043653A1 (de) Datenverarbeitungsanlage
EP0722583A1 (de) Prozessor für zeichenketten variabler länge
DE1774543A1 (de) Steuereinrichtung fuer Digitalrechner zur Unterbrechung und Verzweigung von Programmen
DE2935101C2 (de)
DE4308516C2 (de) Zentraleinheit
DE2108157A1 (de) Datenverarbeitungsanlage mit über lagertem Speicherverkehr
DE2403039C2 (de) Einrichtung zur Befehlsausführung in einer adressenerweiterten elektronischen Datenverarbeitungsanlage
DE2245284A1 (de) Datenverarbeitungsanlage
DE2747304A1 (de) Einrichtung zur mikrobefehlssteuerung
DE2710436C2 (de) Datenverarbeitungseinrichtung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee