DE2821941C3 - Prozessor mit einer Zentraleinheit zur Durchführung eines Informationsvergleiches - Google Patents
Prozessor mit einer Zentraleinheit zur Durchführung eines InformationsvergleichesInfo
- Publication number
- DE2821941C3 DE2821941C3 DE19782821941 DE2821941A DE2821941C3 DE 2821941 C3 DE2821941 C3 DE 2821941C3 DE 19782821941 DE19782821941 DE 19782821941 DE 2821941 A DE2821941 A DE 2821941A DE 2821941 C3 DE2821941 C3 DE 2821941C3
- Authority
- DE
- Germany
- Prior art keywords
- input
- output
- register
- information
- central unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
- G06F12/063—Address space extension for I/O modules, e.g. memory mapped I/O
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7828—Architectures of general purpose stored program computers comprising a single central processing unit without memory
- G06F15/7832—Architectures of general purpose stored program computers comprising a single central processing unit without memory on one IC chip (single chip microprocessors)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Executing Machine-Instructions (AREA)
- Microcomputers (AREA)
Description
folgenden ein typisches Schaltbild eines Mikrorechners an Hand der F i g. 1 und 2 kurz erläutert
Gemäß Fig. 1 besteht eine Zentraleinheit (CPU) 10,
sozusagen das »Herz« des Rechners, aus ein<sr logischen
Recheneinheit (ALU), einer Steuerschaltung, Registern usw. Üblicherweise wird die Zentraleinheit 10 nach
fortschrittlichen Großgruppenintegrationstechniken auf einem oder zwei Chips ausgebildet Die Zentraleinheit
10 holt die Befehle von einem Speicher ein, entschlüsselt die Befehle, liest die durch den jeweiligen ι ο
Befehl bestimmten Befehle aus dem Speicher 11 aus, führt eine Rechenoperation an den Daten aus, schreibt
das Ergebnis dieser Operation in den Speicher 11 ein, steuert das Einschreiben eines Programms und der
Daten in den Speicher 11 von einer Eingabe/Ausgabe-Vorrichtung
12 aus und steuert die Datenübertragung vom Speicher 11 in die Eingabe/Ausgabe- bzw.
E/A-VoiTichtung 12. Darüber hinaus steuert die
Zentraleinheit die Adressen des auszulesenden Programms zur Steuerung des Programmflusses in
Abhängigkeit von einem in der Zentraleinheit vorherrschenden Zustand. Der Speicher empfängt ein Adressen-
und ein Steuersignal zur Angabe des Auslesens oder Einschreibens, um die Daten aus den angegebenen
Adressen auszulesen und diese Daten zur Zentraleinheit zu liefern, und er schreibt die Daten von der
Zentraleinheit in die vorgeschriebene Adresse ein.
Der Speicher 11 unterteilt sich allgemein in einen Direktzugriffsspeicher und einen Speicher mit sequentiellem
Zugriff. Der Direktzugriffspeicher (RAM) läßt sich weiterhin in einen Lese/Einschreibspeicher, welcher
Lese- und Einschreiboperationen zuläßt, und in einen Nur-Lese- bzw. Festwertspeicher (ROM) klassifizieren,
der nur Leseoperationen zuläßt Der Festspeicher speichert ein festes vorgegebenes Programm, z. B.
ein Anwenderprogramm, sowie Daten, und er wird für die Verarbeitung oder Durchführung einer Routineaufgabe
benutzt Die Datenübertragung zwischen der E/A-Vorrichtung 12 und der bestimmten Adresse des
Speichers 11 erfolgt in Abhängigkeit von einem von der *o
Zentraleinheit 10 gelieferten Befehl. Zusammen mit der E/A-Vorrichtung wird manchmal ein HilfsSpeicher als
periphere Vorrichtung benutzt. Hierbei kann eine Datenübertragung zwischen dem Haupt- und dem
HilfsSpeicher stattfinden. Eine Sammelschiene 14 dient zur Verbindung dieser Teile, nämlich Zentraleinheit,
Speicher und E/A-Vorrichtung. Die Sammelschiene 14 besteht dabei aus zweiseitig übertragenen bzw.
bidirektionalen Übertragungsleitungen, die eine Übertragung eines Worts in bitparalleler Form ermöglicht,
doch können für die Sammelschiene 14 auch zwei einseitig übertragende bzw. unidirektionale Sammelschienen
benutzt werden. Eine Steuersignalhitung 15 umfaßt eine Synchronisiertaktleitung, eine Unterbrechungsleitung,
eine Befehlsleitung u. dgl., und sie dient zur Übertragung von Befehlen von der Zentraleinheit,
von Antwortsignalen vom Speicher oder von den peripheren Vorrichtungen und von Unterbrechungssignalen.
Diese Elemente sind jeweils auf einem getrennten Chip ausgebildet, die als CPU-Chip, &°
Speicherchip, E/A-Interfaceship usw. bezeichnet werden.
Grundsätzlich umfaßt die Zentraleinheit drei Systeme: Ein logisches Rechensystem, ein Steuersystem und
ein Schnittstellensystem. Das logische Rechensystem enthält hauptsächlich arithmetische Rechenschaltungen
und Register. Die für die Rechenoperation benutzten Register umfassen hauptsächlich einen (Daten-)Akkumulator
16 und allgemeine oder SammelregiEter 17. Der
Akkumulator 16 wird mit einer vorgegebenen Funktion unmittelbar für die Rechenoperation benutzt Die
allgemeinen Register 17 sind an das Rechenregister, das Datenregister, das Indexregister und dgL anpaßbar. Bei
der beschriebenen Anordnung ist ein als Programmzähler (PC) oder als Programmstatuswort (PSW) benutztes
Register im Satz der allgemeinen Register vorgesehen, doch ist dies nicht unbedingt notwendig. Der Akkumulator
und die allgemeinen Register können durch ein Programm bestimmt werden. Ein zusätzlich vorgesehenes,
als Arbeitsregister 18 bezeichnetes Register wird vorübergehend zur Verbesserung der Leistung des
Systems während der Rechenoperation und Steuerung eingesetzt Die logische Rechenschaltung 19 führt eine
binäre Rechenoperation sowie logische Operationen (UND, ODER, Exklusiv-ODER usw.) in bitparalleler
Arbeitsweise durch. Multiplikation und Division werden durch entsprechende Kombination von Additions-,
Subtraktions- und Schiebefunktionen durchgeführt Zur Durchführung der Schiebefunktion kann der Akkumulator
mit der logischen Recheneinheit (ALU) benutzt werden. Hierbei werden die Daten bei jedem Durchlauf
durch diese Einheit um jeweils ein Bit verschoben, und die Zahl der zu verschiebenden Bits wird mittels eines
Zählers gezählt Bei Anwendung einer ausschließlich für diesen Zweck eingesetzten, als Schiebeschaltung (shifter)
bezeichneten logischen Schaltung wird jeweils eine Anzahl von Bits parallel verschoben. Ein Zähler 20 dient
zum Zählen der Schiebe- oder Versatzstellen und der Zahl der Wiederholungen der Multiplikation und
Division.
Das Steuersystem steuert hauptsächlich die Adressen im Speicher, das Dekodieren und die Ausführung der
Befehle sowie den Zustand des Rechners.
Die Adresse des Speichers wird in einem Adressenregister eingestellt, und die Adresse des durchzuführenden
Programms wird im Register (als Programmzähler bezeichnet) gespeichert Der Programmzähler (PC)
besitzt bekanntlich die sog. +1- bzw. Adresseninkrementfunktion zur Angabe der nächsten Adresse, und er
hält oder speichert die Adresse für die Durchführung des Programms. Zusätzlich können die Inhalte der
anderen Register sowie ein Teil der Anweisungen oder Befehle (sowie Direktdaten) in den Programmzähler
geladen werden, was zu einem Programmsprung führt. Für die Rücksprungadresse kann ein Stapelspeicher
benutzt werden, wenn eine Unterbrechung auftritt oder ein Unterprogramm durchgeführt wird. Der Stapelspeicher
ist ein Speicher mit 4—16 Schichten und mit Rückstell- und Sprungfunktion. Mit anderen Worten:
die zuletzt in den Stapelspeicher eingegebenen Daten werden aus diesem zuerst herausgegriffen. Der Stapelspeicher
wird in Verbindung mit einem als Stapelzeiger bezeichneten Adressenregister benutzt. Bei einigen
Datenprozessoren wird der Hauptspeicher zur Durchführung der Stapelfunktion benutzt, ohne den Stapelspeicher
zu verwenden. In diesem Fall gibt der Stapelzeiger die Adresse des Hauptspeichers nur
während der Stapeloperation an. Die im Programmzähler gespeicherten oder zu speichernden Daten werden
dabei zwischen der bezeichneter· Speicherstelle und den. Programmzähler übertragen.
Der aus der Adresse, die durch den Programmzähler 21 bezeichnet wird, herausgegriffene Befehl wird in ein
Befehlsregister 24 geladen, dessen Inhalt durch einen Befehlsdekodierer 25 entschlüsselt bzw. dekodiert wird,
wodurch die Durchführung verschiedener Operationen
eingeleitet wird. Das Ausgangssignal des Dekodierers 25 wird in eine Steuerschaltung 26 eingegeben, in
welcher die Steuersignale mit den Taktsignalen synchronisiert und an die erforderlichen Abschnitte des
Mikrorechners ausgegeben werden. Das Steuerverfahren läßt sich in zwei Kategorien einteilen: Einmal in ein
logisches Verknüpfungsverfahren und zum anderen in ein Mikroprogrammverfahren. Beim erstgenannten
Verfahren werden alle durch den Befehl bzw. die Anweisung bezeichneten Operationen durch in der
Steuerschaltung enthaltene logische Schaltkreise durchgeführt. Wenn nämlich der Befehl dekodiert wird,
arbeiten die logischen Schaltkreise augenblicklich zur Lieferung zugeordneter Steuersignale.
Beim Mikroprogrammverfahren werden einfache, eng auf die grundsätzlichen Anweisungen der Hardware
(als Mikrobefehle bezeichnet) bezogenen Befehle benutzt. Die Operation eines Befehls wird in eine
Kombination der Mikrobefehle umgewandelt, worauf die umgewandelten Mikrobefehle sequentiell ausgeführt
werden. Dieses Verfahren bietet den Vorteil, daß die Steuerschaltung einfach und systematisch ist und
somit ohne weiteres einer Änderung und Erweiterung zugänglich ist. Die Arbeitsgeschwindigkeit ist jedoch
geringer, weil die komplexe logische Schaltungsanordnung durch ein Programm (Mikrobefehle) ersetzt ist. Bei
diesem Verfahren wird das Mikroprogramm in einem Festwertspeicher gespeichert, und wenn das Mikroprogramm
ausgeführt wird, wird die Adresse des Festwertspeichers bestimmt. Der ausgelesene Mikrobefehl
wird in das Mikrobefehlsregister eingegeben und zur Lieferung des Steuersignals dekodiert.
In der Zustandssteuerung wird die für einen Status im
Inneren des Mikrorechners oder einen vom Programm bestimmten Zustand geltende Information an einer
vorgegebenen Stelle gespeichert. Erforderlichenfalls wird die Information zur Entscheidung über die Art der
Steuerung aus dieser Stelle herausgegriffen. Bei einer einfachen Konstruktion wird der Zustand durch
Zustands-Flip-Flops festgehalten oder gespeichert. Das
Hilfssystem verwendet ein Statusregister ausschließlich für diesen Zweck, nämlich für die Speicherung der
Zustandsinformation. Bestimmte oder angewiesene Funktionen werden jeweils entsprechenden Bits im
Zustandsregister zugewiesen. Letzteres ist so ausgebildet, daß das Auslesen und Einschreiben Bit für Bit
möglich ist. Der Inhalt des Zustandsregisters in typischer Aufzählung wird in der Rechen- und
Logikschaltung bei jeder 0 oder jeder 1 in den Akkumulator (zur Vermeidung einer Division durch 0),
in den Betriebsartbezeichner. die Unterbrechungsmaske, die Störungsanzeige usw. zum Überfließen gebracht
Für das Interface-System lassen sich eine Pufferfunktion,
eine Unterbrechungsverarbeitung, eine Synchronisiersteuerung und dgl. aufzählen. Der Mikroprozessor
steht über die Kopplungselektronik mit äußeren Vorrichtungen in Verbindung. Die Datenübertragung
erfolgt über ein Eingabe/ Ausgabe-Puff erregtster 28, das einen Arbeitsgeschwindigkeitsunterschied zwischen
Außen- und Innenabschnitten des Rechners ausgleicht Das Pufferregister 28 wird üblicherweise als Eingabe/
Ausgabe- bzw. E/A-Stelle bezeichnet In der folgenden Beschreibung bezieht sich der Ausdruck »Eingabe/Ausgabe-Stelle«
ausschließlich auf eine Eingabestelle zur Steuerung der Dateneingabe, eine Ausgabestelle zur
Steuerung der Datenausgabe, sowie eine Eingabe- und Ausgabestelle zur Steuerung der Eingabe und der
Ausgabe von Daten.
Das Problem bei diesem bemerkenswerten Mikrorechner, der nach wie vor technisch weiterentwickelt
wird, besteht in erster Linie in der Erhöhung der Verarbeitungsgeschwindigkeit und in der Verringerung
von Größe und Fertigungskosten. Eine diesbezügliche Möglichkeit besteht in der Anordnung der Zentraleinheit,
des Festwertspeichers, des Randomspeichers und der E/A-Abschnitte auf einem einzigen Chip, obgleich
diese Abschnitte derzeit noch jeweils aus einem oder
ίο mehreren Chips bestehen. Wenn der Speicherchip so
ausgebildet wird, daß er die E/A-Funktion einschließt, wird ein spezieller Chip erhalten, dessen Verwendungsvielseitigkeit nicht mehr gegeben ist. Wenn ein
integrierter Schaltkreis- bzw. IC-Chip so ausgelegt wird, daß die E/A-Funktion im Randomspeicherbereich des
Zentraleinheit-Chips enthalten ist, ist ein Adressenkodierer für die E/A-Funktion zusätzlich zum üblichen
Adressenkodierer für die gewöhnlichen Speicherstellen erforderlich. Dies führt zu einer Vergrößerung der Zahl
der Bauteile. Wenn die Adressenkodierung für die Speicherstelle und die E/A-Vorrichtung gemeinsam
erfolgt, wird das Problem bezüglich der Bauteilezahl gelöst. Im Hinblick auf die Programmausstattung ist
dabei jedpch der Arbeitsschritt der Datenübertragung
von der E/A-Stelle zum allgemeinen Register, wie im bisherigen Fall, erforderlich. Aus diesem Grund ist eine
Erhöhung der Arbeitsgeschwindigkeit unmöglich.
Aufgabe der Erfindung ist es, einen Prozessor der eingangs genannten Art so weiterzubilden, daß die
Dateneingabe/Ausgabe nicht mehr über die systeminterne
Sammelschiene abgewickelt wird.
Ausgehend von dem Mikroprozessor der eingangs definierten Art wird diese Aufgabe erfindungsgemäß
dadurch gelöst, daß die Zentraleinheit mit einem allgemeinen Registersatz versehen ist, der zwei oder
mehr allgemeine Register umfaßt, wobei mindestens eines dieser Register als unmittelbare Eingabe-
und/oder Ausgabestelle zur Eingabe/Ausgabevorrichtung dient
Ein allgemeines Register kennzeichnet hier ein Register, welches vom Gesichtspunkt der Verwendungsprogramme
sowohl als Akkumulator und/oder als Indexregister und/oder als automatisches Inkrementierregister
und/oder als automatisches Dekrementierregister usw. verwendet werden kann und auch nebenbei als
reiner Datenspeicher dienen kann.
Dieses allgemeine Register ist direkt mit Eingangs/ Ausgangsleitungen oder Eingangs/Ausgangsempfängern
bzw. Treiberstufen verbunden, wobei diese direkte
Verbindung nicht über Sammelschienen erfolgt, so daß
es als Eingabe/Ausgaberegister verwendet werden kann.
Besonders vorteilhafte Weiterbildungen und Ausgestaltungen der Erfindung ergeben sich aus den
Patentansprüchen 2 bis 10.
Im folgenden sind bevorzugte Ausführungsformen der Erfindung im Vergleich zum Stand der Technik an
Hand der Zeichnungen näher erläutert Es zeigt
Fig.] ein Blockschaltbild eines Prozessors üblicher
Fig.] ein Blockschaltbild eines Prozessors üblicher
Art,
Fig.2 ein Blockschaltbild einer bisherigen Zentraleinheit,
Fig.3 ein Blockschaltbild einer Ausführungsform
einer Zentraleinheit mit Merkmalen nach der Erfindung, Fig.4 ein Blockschaltbild eines allgemeinen Registers,
F i g. 5 eine schematische Darstellung der Bitmuster eines Frogrammzustandsworts,
F i g. 6 einen bei der Vorrichtung angewandten Speicherplan,
F i g. 7 eine schematische Darstellung der Bitmuster von Ausgabedaten und
F i g. 8 ein Blockschaltbild einer anderen Ausführungsform
mit Merkmalen nach der Erfindung.
Die F i g. 1 und 2 sind eingangs bereits beschrieben worden.
In Fig.3 ist eine Zentraleinheit gemäß einer
Ausführungsform der Erfindung dargestellt, die auf einem einzigen Chip ausgebildet ist. Die Einheit 30 ist
mit einem Funktionsregister 31 zur Speicherung einer Anweisung bzw. eines Befehls versehen. Die Folge der
Befehlsdekodierung wird durch den im Funktionsregister 31 enthaltenen Befehl gesteuert. Ein Zwischenregister
(A, T, B und M Register) 32 dient zur vorübergehenden Speicherung der verschiedenen Informationen
im Verlauf der Befehlsdekodierung. Die Information wird von diesem Register 32 zu einer
Rechen- und Logikeinheit 33 übermittelt, welche arithmetische und logische Funktionen durchführt, etwa
Addition, Subtraktion, logische UND/ODER-Operationen, Schiebeoperationen und dgl. Die Verfahrens(reihen)folgen
für die arithmetische und logische Verarbeitung in der Einheit 33 und für die Zentraleinheit 30 sind
in einem Festwertspeicher 34 gespeichert, der zusätzlich ein Mikroprogramm speichert und die Verfahrensfolge
durch Ausführung einer Anzahl von Mikrobefehlen steuert Die Sprungsteuerung des Mikroprogramms
wird durch eine Mikrosprungsteuereinheit 35 durchgeführt. Die Zentraleinheit 30 umfaßt einen allgemeinen
Registersatz 36 mit einem Programmzähler als Steuerregister für die Speicherung der Adresse eines als
nächstes auszuführenden Befehls. Neben dem Programmzähler enthält der Registersatz 36 ein Programmzustandswort,
und er ist als Daten- und Indexregister betreibbar. Die einzelnen Register des Registersatzes 36 werden durch einen Adressendekodierer
37 gewählt. Der geltende Zustand der Zentraleinheit wird in Flip-Flop-Registern gespeichert, die to
ihrerseits durch eine Zustandssteuereinheit 38 gesteuert werden. Eine Unterbrechungssteuereinheit 39 dient zur
Bewertung der Prioritätswerte für die Maskierung der Unterbrechungs-Anforderungsinformation und gleichzeitiger
Unterbrechungsanforderungen. Die Daten- *5 übertragung zwischen der Speichervorrichtung und
dem Eingabe/Ausgabe-Abschnitt wird durch eine Sammelschienen-Steuereinheit 40 gesteuert Die Dateneingabe
in die verschiedenen Register, wie das Funktionsregister 31, das Zwischenregister 32 und den
allgemeinen Registersatz 36, erfolgt unter der Steuerung eines Taktgenerators 41. Bitverlängerung und dgl.
werden mit Hilfe einer speziellen Funktionseinheit 42 durchgeführt
Der allgemeine Registersatz und der Adressendekodierer, die für die Erfindung wesentlich sind, sind
nachstehend an Hand von F i g. 4 näher beschrieben.
Der allgemeine Registersatz 36 besteht beispielsweise aus acht allgemeinen Registern GR 0(50) bis
GR 7(57). Das Register GR 0(50) dient als Programmzähler PC zum Zählen der Adresse des augenblicklich
durchgeführten Programms. Das Register GR\{5\)
dient als Programmzustandswort PSW, welches Unterbrechungszustandsinformationen
der Unterbrechungsprogramme bei der Unterbrechung enthält In F i g. 5 ist das Format der in diesem Register GR1 gespeicherten
Programmzustandsinformationen dargestellt Dabei wird das Programmzustandswort durch 12 Bits in der
Reihenfolge von 0 bis 11 gebildet. Bits 0 bis 7 sind Maskenbits zum Maskieren des Unterbrechungsprogramms
zugeordnet, während Bit 8 einer Hauptmaske zur vollständigen Verhinderung der Unterbrechung, Bit
9 einem Übertragkennzeichen, Bit 10 einem negativen Kennzeichen und Bit 11 einem Nullkennzeichen
zugeordnet sind. Die allgemeinen Register GR 2(52) bis GR 6(56) sind dem Indexregister, dem Datenregister
und dgl. zugeordnet. Das Register GR 7(57) arbeitet als Ausgabestelle. Diese allgemeinen Register 50—57 sind
an den Steuerklemmen mit den Ausgangsklemmen eines Adressendekodierers 45 verbunden. Durch die an
den Adressendekodierer 45 angelegten Daten wird jedes einzelne der allgemeinen Register GRO-GRl
angewählt. Wenn die Eingabedateneinheit am Adressendekodierer 45 die Größe 000 besitzt, wird das
allgemeine Register GR 0 gewählt, während im Fall von 001 das Register GR 1 und im Fall von 111 das Register
GT? 7 gewählt werden. Die Ausgangsklemmen der allgemeinen Register GR0—GR7 sind über eine
Verknüpfungsschaltung 46 mit einer inneren Sammelschiene 47 (bidirektionale Datensammelschiene) verbunden.
Die Verknüpfungsschaltung 46, die über eine von der Zustandssteuereinheit abgehende Steuerleitung
48 angesteuert wird, steuert die Datenübertragung zwischen dem allgemeinen Registersatz 36 und der
inneren Sammelschiene 47. Das allgemeine Register GR 7 mit Eingabe/Ausgabe-Stelle ist an einen nicht
dargestellten Eingabe/Ausgabe-Abschnitt angeschlossen.
Fig.6 zeigt einen Speicherplan des allgemeinen Registersatzes 36. Der dargestellte Speicherplan umfaßt
Adressen 0 bis FFF (hexadezimal). Dabei ist das
allgemeine Register GRO der Adresse 0 zugeteilt, während das Register GR 1 für die Adresse 1 gilt. Auf
entsprechende Weise sind die restlichen allgemeinen Register GR 2 — GR 7 jeweils den restlichen Adressen
zugeordnet. Die Adresse FFF speichert die Startadresse.
Bei dieser Anordnung werden die Speicheradresse und die Adresse der Eingabe/Ausgabe- bzw. E/A-Vorrichtung
durch einen einzigen Adressendekodierer gemeinsam dekodiert Dadurch wird die Hardware am
Zentraleinheit-Chip vereinfacht Außerdem besitzt das allgemeine Register die Eingabe/Ausgabe-Stellenfunktion,
so daß die Notwendigkeit für eine Datenübertragung zwischen dem allgemeinen Register und dem
Sicherstellungsbereich im Randomspeicher- oder E/A-Stellenbereich entfällt. Hieraus ergibt sich eine
Verkürzung der Verarbeitungszeit Zudem wird das Ansprechen auf die Unterbrechungsverarbeitung verbessert,
so daß die Leistung der Vorrichtung mit
maximalem Datendurchsatz und minimaler Ansprechzeit verbessert wird.
Die folgende Beschreibung bezieht sich auf die bei der vorstehend beschriebenen Zentraleinheit verwendeten
Software.
Fig.7 veranschaulicht eine Kette von Ausgangsbzw.
Ausgabedaten, die aus 12 Bits von 0 bis 11 bestehen. Hierbei sind die Bits 0 bis 2 der Steuerinformation
1, die Bits 3 bis 8 der Steuerinformation 2 und die Bits 9 bis 11 der Steuerinformation 3 zugeordnet Es sei
angenommen, daß jede Steuerinformation unabhängig nach einer bestimmten, an Hand der Eingabeinformation
berechneten Funktionsgröße bestimmt werden solL Wenn beispielsweise das Übertragkennzeichen als
Folge der Informationsverarbeitung anliegt (is ON) wird nur die Steuerinformation 1 zu einer Größe, wie
111, in Binärform geändert. Die Ausgabedaten werden
im allgemeinen Register GR 7 gespeichert. Infolgedessen wird diesem Fall durch Maskierung bzw. Verdekkung
des Inhalts des allgemeinen Registers GRl entsprochen. Die Maskierung erfolgt durch logischen
O-Ring (logical-0 ring) der Ausgabedaten mit der
hexadezimalen Zahl £00. Die logische Operation kann durch einen Befehl durchgeführt werden. Bei der
bisherigen Datenausgabe besitzt d;e Ausgabestelle keine Eingabefunktion, so daß es unmöglich ist, Daten
von der Ausgabestelle abzurufen. Aus diesem Grund ist ein Sicherstellungsbereich im Sicherstellungsbereich
des Speichers vorgesehen, wobei der Inhalt der Ausgabestelle, d. h. die Ausgabedaten, im Fall einer
teilweisen Datenänderung der beschriebenen Art im Sicherstellungsbereich gespeichert werden müssen.
Wenn daher die Ausgabedaten geändert werden, werden die vom Sicherstellungsbereich abgenommenen
Ausgabedaten in das allgemeine Register eingegeben und dann geändert. Die geänderten Ausgabedaten
werden wiederum in die Ausgabestelle eingegeben und dann im Sicherstellungsbereich gespeichert.
Dagegen ist bei der erfindungsgemäßen Vorrichtung der allgemeine Registersatz als Ausgabestelle betreibbar,
so daß der Sicherstellungsbereich für die Aktualisierung der Daten unnötig ist. Folglich wird die Zahl der für
die Datenübertragung zwischen dem Sicherstellungsbereich und dem allgemeinen Register erforderlichen
Programmschritte verkleinert. Hierdurch entfällt zusätzlich die Notwendigkeit für Schritte, die für die
Datenübertragung vom allgemeinen Register zur Ausgabestelle erforderlich wären.
Infolgedessen wird die Steuerung durch die Software erheblich vereinfacht, wodurch eine erhebliche Verkürzung
der Verarbeitungszeit erreicht wird.
Wie aus den obigen Ausführungen hervorgeht, ist es auch möglich, nur einen Teil des allgemeinen Registers
als E/A-Stelle zu benutzen oder einen Teil davon als Eingabestelle und einen anderen Teil als Ausgabestelle
zu belegen usw. Beispielsweise kann das allgemeine Register GR 7 gemäß F i g. 7 so aufgebaut sein, daß der
Teil der Steuerinformation 1 als Ausgabestelle wirkt, derjenige der Steuerinformation 2 als Eingabestelle
dient und derjenige der Steuerinformation 3 als Programmkennzeichen (software flag) benutzt wird, das
— im Gegensatz zu den genannten E/A-Stellen — nicht mit den E/A-Vorrichtungen außerhalb der Zentraleinheit
verbunden ist.
F i g. 8 zeigt eine Ausführungsform der Zentraleinheit,
bei der Eingabe- und Ausgabestellen dem allgemeinen Register zugewiesen sind.
Gemäß F j g. 8 besteht der allgemeine Registersatz 35
aus acht allgemeinen Registern GR 0(50) bis GR 8(57).
Dabei sind der Programmzähler dem Register GR 0(50) und das Programmzustandswortregister dem Register
GR 1(51) zugewiesen. Jedes einzelne Register GR2(52)
bis GK 5(55) kann als Datenregister, als Indexregister
und als Rechenregister arbeiten. Das Register GRG(SO) dient als Eingabestelle und das Register GR 7(57) als
Ausgabestelle.
Die Daten von der E/A-Vorrichtung werden dem
allgemeinen Register GR 6(80) eingegeben. Dies bedeutet, daß der Status oder Zustand der E/A-Vorrichtung
überprüft wird, und wenn sich diese Vorrichtung in Auslesebereitschaft befindet, werden ihre Daten, d. h.
die Eingabedaten, dem allgemeinen Register GR 6(80) eingegeben. Zum Löschen des Zustands der E/A-Vorrichtung
wird über die Eingabestelle ein Rückführsignal an diese Vorrichtung angelegt.
Mit dieser Konstruktion wird die Software-Steuerung vereinfacht, während auch die Verarbeitungszeit in
Verbindung mit einer Verkleinerung der Schrittzahl der Software bei der Dateneingabe verkürzt wird.
ίο Bei dem Prozessor mit den Merkmalen nach der
Erfindung entfällt die Notwendigkeit für die Datenübertragung von der Eingabestelle zum allgemeinen
Register. Hierdurch wird der Datendurchsatz durch das System bei Verkürzung der Ansprechzeit verbessert. Es
wird ein Rückführsignal zum Löschen der Zustandsinformation über die Ausgabestelle an die E/A-Vorrichtung
angelegt. Infolgedessen wird Komplexität der Eingabestelle vermieden, und die Vorrichtung ist daher
einfach aufgebaut, im Gebrauch vielseitig und zudem wirtschaftlich.
Es besteht noch eine andere Möglichkeit zum Rückführen des Zustands der E/A-Vorrichtung, in
welcher ein Steuer-Flip-Flop enthalten ist, wobei der Zustand automatisch gelöscht (rückgeführt) wird, wenn
die Zentraleinheit den Zustand der E/A-Vorrichtung ausliest. Bei dieser Möglichkeit wird jedoch die
Eingabestelle komplex- und die Vielseitigkeit wird hierbei beeinträchtigt. Andererseits besitzt die
E/A-Stelle bei dem Prozessor mit den Merkmalen nach der Erfindung eine Sperrfunktion, wobei der
E/A-Zustand durch das über die Ausgabestelle angelegte Rückführsignal rückgeführt wird. Hierdurch werden
die erwähnten Nachteile ausgeschaltet.
Bei den vorstehend beschriebenen Ausführungsformen dient das allgemeine Register GR7 als Ausgabestelle, doch kann dafür jedes beliebige der allgemeinen Register GR 0 bis GR 7 benutzt werden. Ebenso kann jedes beliebige allgemeine Register GR 0 bis GR 7 als Eingabestelle dienen. Obgleich vorstehend verschiede-
Bei den vorstehend beschriebenen Ausführungsformen dient das allgemeine Register GR7 als Ausgabestelle, doch kann dafür jedes beliebige der allgemeinen Register GR 0 bis GR 7 benutzt werden. Ebenso kann jedes beliebige allgemeine Register GR 0 bis GR 7 als Eingabestelle dienen. Obgleich vorstehend verschiede-
ne Register als Eingabe- und Ausgabestelle vorgesehen sind, können diese Eingabe- und Ausgabestellen ein und
demselben Register zugeordnet werden.
Es braucht nicht notwendigerweise je eine Eingabe-, Ausgabe- und Eingabe/Ausgabe-Stelle vorgesehen zu
sein, vielmehr kann erforderlichenfalls jede beliebige Zahl dieser Stellen vorhanden sein. Weiterhin sind die
Eingabe- und Ausgabe-Stellen nicht notwendigerweise
auf eine jeweils gleich große Zahl beschränkt.
Wenn das die Eingabe/Ausgabe-Stelle aufweisende allgemeine Register zusätzlich die Funktion des
Sperrens des Zustands der E/A-Vorrichtung besitzt, ist
die Information für die Eingabe der Zustandsinformation unnötig, wodurch wiederum Einsparungen bezüglich
der Zahl von Arbeitsschritten und Verarbeitungszeit realisiert werden.
Die Erfindung ermöglicht die Verkürzung der Verarbeitungszeit und die effektive Unterbrechung mit
minimaler Wartezeit in den Fällen, in denen hohe Geschwindigkeit und Echtzeitverarbeitung erforderlich
sind, beispielsweise bei Mehrfachoperationen oder -Verarbeitungen oder bei der Unterbrechungsverarbeitung,
die in Abständen von mehreren Sekunden stattfindet
Hierzu 4 Blatt Zeichnungen
Claims (1)
- Patentansprüche:1. Prozessor, mit einer Zentraleinheit zur Durchführung eines Informationsvergleichs, einer Rechenoperation, einer Sprungoperation und dgL, einer Speichereinrichtung zur Speicherung der für die Durchführung dieser Operationen durch die Zentraleinheit benötigten Informationen und einer Eingabe/Ausgabevorrichtung zum Eingeben der zu verarbeitenden Informationen in die Zentraleinheit und zum Ausgeben der verarbeiteten Informationen, dadurch gekennzeichnet, daß die Zentraleinheit (10) mit einem allgemeinen Registersatz (36) versehen ist, der zwei oder mehr allgemeine Register umfaßt, wobei mindestens eines dieser Register als unmittelbare Eingabe- und/oder Ausgabestelle zur Eingabe/Ausgabevorrichtung dient7. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß die allgemeinen Register (36) mittels eines Adressendekodierers (37,45) anwählbar sind.3. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß mindestens ein allgemeines Register als Eingabestelle dient und daß mindestens ein anderes allgemeines Register eine Funktion zum Sperren eines Zustands in der Eingabe/Ausgabevorrichtung besitzt4. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß mindestens ein allgemeines Register als Ausgabestelle dient und mindestens ein anderes allgemeines Register eine Funktion zum Sperren eines Zustands in der Eingabe/Ausgabevorrichtung besitzt.5. Prozessor nach Anspruch 4, dadurch gekennzeichnet, daß die Ausgabestelle ein Pufferregister zur Ausgabe eines Steuersignals für die Eingabe/ Ausgabevorrichtung ist.6. Prozessor nach Anspruch 3, dadurch gekennzeichnet, daß die Eingabestelle ein Pufferregister zur Eingabe von Zustandsinformationen der Eingabe/ Ausgabevorrichtung ist.7. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß eines der allgemeinen Register des allgemeinen Registersatzes ein Programmzähler ist.8. Prozessor nach Anspruch 2, dadurch gekennzeichnet, daß der Adressendekodierer (37,45) an der Ausgangsklemme mit den Steuerklemmen der betreffenden allgemeinen Register des allgemeinen Registersatzes (36) verbunden ist, daß die allgemeinen Register an Eingangs- und Ausgangsklemmen über eine Verknüpfungsschaltung (46) zur Steuerung der Datenübertragung zu den und von den allgemeinen Registern an eine innere Sammelschiene (47) angeschlossen sind und daß eines der allgemeinen Register als Eingabestelle dient, die mit der Ausgangsleitung des Eingabeteils der Eingabe/ Ausgabevorrichtung (12) verbunden ist.9. Prozessor nach Anspruch 8, dadurch gekennzeichnet, daß ein allgemeines Register als Ausgabestelle dient, die an die Eingangsleitung des Ausgabeteils der Eingabe/Ausgabevorrichtung (12) angeschlossen ist.10. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß mindestens eine Bitstelle des allgemeinen Registers eine Funktion als Eingabe/Ausgabe-Stelle besitzt.Die Erfindung betrifft einen Prozessor mit einer Zentraleinheit zur Durchführung eines Informationsvergleichs, einer Rechenoperation, einer Sprungoperation und dgL, einer Speichereinrichtung zur Speicherung der für die Durchführung dieser Operationen durch die Zentraleinheit benötigten Informationen und einer Eingabe/Ausgabevorrichtung zum Eingeben der zu verarbeitenden Informationen in die Zentraleinheit und zum Ausgeben der verarbeiteten Informationen,
ίο In der Rechnertechnologie hat der Mikrorechner in jüngster Zeit eine bemerkenswerte Entwicklung erfahren. Der Mikrorechner besitzt im wesentlichen dieselben Funktionen wie der Mini- oder Kleinrechner, ist jedoch erheblich kleiner als dieser. Aufgrund dieser Eigenart besitzt der Mikrorechner ein nahezu unbegrenztes Anwendungsgebiet auf dem derzeit eine schnelle Entwicklung stattfindet Einige Anwendungszwecke liegen auf dem Gebiet der Steuerung bzw. Regelung, wie Verfahrensregelung und Folgeregelung, bei Meßgeräten, Informationsverarbeitungssystemen, auf dem kommerziellen Gebiet, etwa für Automobile, elektrische Haushaltsgeräte usw.Ähnlich wie andere Digitalrechner enthält der Mikrorechner drei Abschnitte, nämlich eine Zentraleinheit (CPU), einen Speicher und einen Eingabe/Ausgabebzw. E/A-Abschnitt Diese Grundabschnittc sind durch eine als Sammelschiene bezeichnete Leitung und eine Steuersignalleitung verbunden.Aus der Zeitschrift »Elektronik«, 1976, Heft 11, Seiten 62—68 ist ein EinAAusgabestein für Mikroprozessorenbekannt, wobei gemäß einem Ausführungsbeispiel einprogrammierbarer Interface-Baustein vorhanden ist, der einen Peripherie-Anschluß über drei 1/O-Ports ermöglicht. Die Eingabe/Ausgabe- Register bestehen bei diesem bekannten Baustein aus einem reinen Speicher.Aus der Zeitschrift »Funkschau«, 1975, Heft 26, Seiten53—56 ist ein Blockschaltbild eines Mikroprozessors, speziell einer arithmetischen logischen Einheit bekannt.Der Mikroprozessor benötigt Speicher und Schaltungen für den Anschluß von Ein- und Ausgabegeräten.Aus der Zeitschrift »Funktechnik«, 30. Jahrgang, Nr. 14/1975, Seite 417 ist ein monolithischer Mikroprozessor bekannt, der in der üblichen herkömmlichen Weise aufgebaut ist, Das Problem bei derartigen Prozessoren besteht darin, daß zum Erneuern der Inhalte von Ausgangs-Ports oder zum Lesen der Inhalte von Eingangs-Ports die Daten zwischen Registern und Eingabe/Ausgabe-Ports unter Verwendung der Sammelschienen übertragen werden müssen.Aus der Firmendruckschrift der Nixdorf Computer AG: »NCF 1 N-K.anal Mikroprozessor«, vom 20. Januar 1975 ist ein Prozessor bekannt, der eine Zentraleinheit zur Durchführung eines Informations-Vergleiches, einer Rechenoperation, einer Sprungoperation u.dgl., eine Speichereinrichtung zur Speicherung der für die Durchführung dieser Operationen durch die Zentraleinheit benötigten Informationen und eine Eingabe/Ausgabevorrichtung zum Eingeben der zu verarbeitenden Informationen in die Zentraleinheit und zum Ausgeben der verarbeiteten Informationen aufweist. Die Zentraleinheit ist zwar mit mehrere;] Registern verbunden, von denen wenigstens eines als Eingaberegister dient, doch sind diese Register mit systeminternen Sammelschienen verbunden, so daß also die Datenausgabe zwangsläufig über diese system-internen Sammelschienen abgewickelt werden muß.
Zum-besseren Verständnis der Erfindung ist im
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP52057103A JPS5833584B2 (ja) | 1977-05-19 | 1977-05-19 | 情報処理装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2821941A1 DE2821941A1 (de) | 1978-11-23 |
DE2821941B2 DE2821941B2 (de) | 1981-01-22 |
DE2821941C3 true DE2821941C3 (de) | 1983-12-01 |
Family
ID=13046164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19782821941 Expired DE2821941C3 (de) | 1977-05-19 | 1978-05-19 | Prozessor mit einer Zentraleinheit zur Durchführung eines Informationsvergleiches |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPS5833584B2 (de) |
DE (1) | DE2821941C3 (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5743258A (en) * | 1980-08-28 | 1982-03-11 | Mitsubishi Electric Corp | One-chip micro-computer |
JPH081596B2 (ja) * | 1983-05-11 | 1996-01-10 | 株式会社日立製作所 | マイクロプロセッサ |
JP4859176B2 (ja) * | 2005-08-22 | 2012-01-25 | キヤノン株式会社 | マイクロプロセッサ及びi/oポート置換方法 |
-
1977
- 1977-05-19 JP JP52057103A patent/JPS5833584B2/ja not_active Expired
-
1978
- 1978-05-19 DE DE19782821941 patent/DE2821941C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2821941B2 (de) | 1981-01-22 |
JPS5833584B2 (ja) | 1983-07-20 |
DE2821941A1 (de) | 1978-11-23 |
JPS53142844A (en) | 1978-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2521289C2 (de) | Datenverarbeitungsanordnung mit Datenfeld-Hilfsprozessor | |
DE2756768A1 (de) | Mikroprozessor-architektur | |
DE2230102A1 (de) | Rechenwerk fuer variable wortlaengen | |
DE2714805A1 (de) | Datenverarbeitungssystem | |
DE2524046C2 (de) | Elektronische Datenverarbeitungsanlage | |
DE2907181A1 (de) | Befehlssatz-modifizierregister fuer einen datenprozessor | |
DE2756762A1 (de) | Verfahren und anordnung zum zugriff zu beliebigen bitfeldern im hauptspeicher einer datenverarbeitungsanlage | |
DE1275800B (de) | Steuerwerk fuer datenverarbeitende Maschinen | |
DE2054830C3 (de) | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge | |
EP0010185A1 (de) | Virtuell-Adressiervorrichtung für einen Computer | |
DE2533737C2 (de) | Mikroprozessor mit aufteilbarer Adressenschiene | |
DE3545937A1 (de) | Mikroprozessor | |
DE2821941C3 (de) | Prozessor mit einer Zentraleinheit zur Durchführung eines Informationsvergleiches | |
DE1956460C3 (de) | Datenverarbeitungsanlage mit Assoziativspeichern | |
DE2658950A1 (de) | Mikroprogrammierte verarbeitungseinheit sowie verfahren zur organisation derselben | |
EP0111161B1 (de) | Vorrichtung zur Mikrobefehls-Bereitstellung für mindestens zwei unabhängig arbeitende Funktionseinheiten in einem integrierten, mikroprogrammierten elektronischen Baustein und Verfahren zu ihrem Betrieb | |
DE3101270C2 (de) | Rechneranordnung zur Wortverarbeitung mit einer Einrichtung zur Funktionserweiterung | |
CH623946A5 (en) | Microprocessor arrangement. | |
DE2150292C2 (de) | Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen | |
DE2846521C2 (de) | ||
DE1195972B (de) | Anordnung zum Durchfuehren einer Verzweigung bei einer programmgesteuerten Rechenmaschine | |
DE2535924C2 (de) | Verfahren für den Betrieb der Steuereinrichtung einer Vermittlungsanlage, insbesondere Fernsprechvermittlungsanlage | |
DE3340078A1 (de) | Prozessor-zelle zur verwendung in einer aus derartigen zellen gebildeten anordnung | |
DE2760416C2 (de) | Verzweigungssteueranordnung für eine elektronische Datenverarbeitungsanordnung | |
DE2234192C2 (de) | Datenverarbeitungsanlage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
8263 | Opposition against grant of a patent | ||
8228 | New agent |
Free format text: HENKEL, G., DR.PHIL. FEILER, L., DR.RER.NAT. HAENZEL, W., DIPL.-ING., PAT.-ANW., 8000 MUENCHEN |
|
8226 | Change of the secondary classification |
Ipc: ENTFAELLT |
|
8281 | Inventor (new situation) |
Free format text: MURAO, YUTAKA, TOKYO, JP NAMIMOTO, KEIJI, YOKOHAMA, JP EGUCHI, SEIJI, KAWASAKI, JP |
|
C3 | Grant after two publication steps (3rd publication) | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: KABUSHIKI KAISHA TOSHIBA, KAWASAKI, KANAGAWA, JP |
|
8339 | Ceased/non-payment of the annual fee |