DE2739525A1 - Prozessor - Google Patents

Prozessor

Info

Publication number
DE2739525A1
DE2739525A1 DE19772739525 DE2739525A DE2739525A1 DE 2739525 A1 DE2739525 A1 DE 2739525A1 DE 19772739525 DE19772739525 DE 19772739525 DE 2739525 A DE2739525 A DE 2739525A DE 2739525 A1 DE2739525 A1 DE 2739525A1
Authority
DE
Germany
Prior art keywords
bits
word
address
register
memory
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
DE19772739525
Other languages
English (en)
Other versions
DE2739525C2 (de
Inventor
James Owen Dimmick
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.)
AT&T Corp
Original Assignee
Western Electric Co Inc
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 Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of DE2739525A1 publication Critical patent/DE2739525A1/de
Application granted granted Critical
Publication of DE2739525C2 publication Critical patent/DE2739525C2/de
Expired 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
    • G06F9/342Extension of operand address space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0407Selecting arrangements for multiplex systems for time-division multiplexing using a stored programme control

Description

BLUIViBACH · WESER · BERGD:.M · KftAtaER'·
PATENTANWÄLTE IN MUNCHtN UNDWILiIBADEN
- 5-
Poter.tconsult Radeckestroße 43 BOCO MuncJien AO Telefon (059) BH3403/88Jo04 Telox G5-712313 Telegramme PaienlconMill Pater.tcoMSiiil Sonnenbergcr Straße 4.Ϊ 6700WiULbUdCa Telefon («·1?1) W?943/561973 Telex 04-1867.17 Telegramme Patcntconsult Western Electric Company, Incorporated Dimmick, J.O. 6
Broadway
New York, N.Y. 10007, USA
Prozessor
Die Erfindung betrifft einen Prozessor zur Erzeugung eines Adressenwortes mit m+n-Bits aus Datenwörtern mit ω-Bits und zur Umwandlung eines Adressenwortes mit m+n-Bit3 in ein Wortformat mit m-Bits, wobei der Prozessor ein erstes Zentralprozessorelement zur Aufnahme von Wörtern mit m-Bits enthält.
Speicherprogrammgesteuerte Anlage weisen häufig einen Prozessor, einen außerhalb des Prozessors angeordneten Speicher mit wahlfreiem Zugriff, periphere Ausrüstungen, die die von der Anlage durchzuführenden Arbeiten ausführen, sowie einen Datenbus und einen Adressenbus auf. Der Datenbus wird zum doppelt gerichteter Austausch von Informationen zwischen dem Prozessor und dem Speicher sowie zwischen dem Prozessor und den peripheren Ausrüstungen benutzt. Der Adressenbus dient der einseitig gerichteten übertragung von Adressenwörtern aus dem Prozessor zum Speicher und zu den peripheren Ausrüstungen. Die Adressenwörter steuern das Lesen oder Schreiben des Speichers sowie die Übertragung von Steuersignalen zwischen dem Prozessor und den
München: R. Kramer Dipl.-Ing. . W. Weser Oipl.-Wi/f. Df. Wr. hat: /P. WrWi bipVlng. . H. P. Brehm Dipl.-Chem. Dr. phil. nal Wiesbaden: P. G. Blumbach Dipl. Ing. . P.Bergen Dipl.-Ing Dr. jur. . G. Zwirner Dipl.-Ing. Dlpl.-W.-Ing.
periphercn .Ausrüstungen.
Speicheradressenwöi'ter werden normalerweise durch Weiterschalten eines Programmzählers im Prozessor erzeugt, derart, daß ein Zugriff zu derjenigen Speicherstelle durchgeführt wird, welche der einem gerade ausgeführten Befehl zugeordneten Speicherstelle folgt. In anderen Fällen, beispielsweise bei einer Programmverzweigung oder einem Sprungbefehl nimmt der Prozessor Informationen aus dem Speicher über den Datenbus auf, welche die Adresse desjenigen Befehls angeben, der als nächster auszuführen ist. Die Übertragung von Adresseninformationen zum Prozessor ist dann problemlos, wenn die Bit-Kapazität des Datenbusses gleich oder größer als die des Adressenbusses ist. Die übertragung von Adresseninformationen ist dann jedoch komplizierter, wenn die Bit-Kapazität des Datenbusses kleiner ist als die des Adressenbusses. Es sei beispielsweise angenommen, daß der Datenbus 16 Adern und der Adressenbus 20 Adern besitzt, und daß die Adressen eine Länge von 20 Bits haben. In diesem Fall kann ein einzelnes, über den Datenbus ankommendes Wort offensichtlich keine Adresse mit 20 Bits angeben. In einem solchen Fall muß die Adresseninformation zum Prozessor in Form von zwei Datenwörtern übertragen werden, die zusammen die erforderlichen 20 Adressenbits enthalten.
Das oben beschriebene Verfahren zur Erzeugung von Adressenwörtern hat den Aufwand und die Kompliziertheit für den Prozessor erhöht, da spezielle Schaltungen erforderlich sind, um die Bits jedes ankommenden Datenwortes so zu den entsprechenden Prozessorelementen zu führen, daß die ankommenden Bits zusammen
§09810/0917
die gewünschte Adresse mit 20 Bits bilden. Es sei angenommen, daß vier Bits eines ersten Datenwortes mit 16 Bits die vier höchststelligen Bits einer Adresse mit 20 Bits darstellen. Ferner sei angenommen, daß diese vier Bits sich in den vier niedrigststelligen Bitpositionen des ersten Datenwortes befinden. Schließlich sei angenommen, daß alle 16 Bits eines zweiten Datenwortes die 16 niedriststelligen Bits der Adresse mit 20 Bits darstellen. Mit diesen Annahmen muß der Prozessor Einrichtungen besitzen, um die vier Adressenbits im ersten Datenwort aufzunehmen und in diejenigen Prozessorelemente zu führen, welche die vier höchststelligen Adressenbits speichern. Diese Einrichtungen müssen außerdem die 16 Bits des zweiten Datenwortes in diejenigen Prozessorelemente führen, welche die 16 niedrigststelligen Adressenbits speichern.
Es gibt viele Möglichkeiten zur Durchführung der vorgenannten Operation. Naheliegend ist die Verwendung von Gattern, Steuerschaltungen, Multiplexcrn und so weiter. Damit könnte zwar der Prozessor die gewünschten Adressenwörter erzeugen, die Verwendung solcher speziellen Schaltungen würde aber den Aufwand für den Prozessor und seine Kompliziertheit erhöhen.
Der Erfindung liegt demgemäß die Aufgabe zugrunde, einen Prozessor mit Einrichtungen zur Erzeugung von Adressenwörtern aus Datenwörtern kleinerer Bitkapazität zu erzeugen, ohne den Aufwand für den Prozessor und seine Kompliziertheit zu erhöhen.
809810/0917
Zur Lösung der Aufgabe geht die Erfindung aus von einem Prozessor der eingangs genannten Art und ist dadurch gekennzeichnet, daß der Prozessor ein zweites Zentralprozessorelement zur Aufnahme von Daten mit η-Bits aufweist, ferner einen ersten Bus zur Aufnahme eines ersten Wortes mit m-Bits in das erste Zentralprozessorelement, und Schaltungen zur Übertragung von n-Bits in η vorbestimmten Bitpositionen des eingegebenen Wortes aus dem ersten Zentralprozessor zum zweiten Zentralprozessor, daß der erste Bus ein zweites Wort mit m-Bits in das erste Zentralprozessorelement eingibt, und daß ein zweiter Bus vorgesehen ist, um nachfolgend gleichzeitig die η-Bits aus dem zweiten Zentralprozessorelement und das zweite Wort mit m-Bits aus dem ersten Zentralprozessorelement zwecks Bildung eines Wortes mit m+n-Bits zu lesen.
Entsprechend der Erfindung ist also ein durch ein Speicherprogramm gesteuerter Prozessor vorgesehen, der verbesserte Schaltungen aufweist, um 1) Adressenwörter m+n-Bits aufgrund von aufgenommenen Datenwörtern mit m-Bits zu erzeugen und 2) Adressenwörter mit m+n-Bits zurück in Datenwörter mit m-Bits umzuwandeln. Die Werte m und m+n geben an, daß der Adressenbus eine größere Bitkapazität als der Datenbus hat. Der genaue Wert für m und η ist für die vorliegende Erfindung nicht kritisch. Ein typischer Rechner kann beispielsweise einen Datenbus mit 16 Bits und einen Adressenbus mit 20 Bits besitzen. In einem solchen Rechner wäre dann m gleich 16 und η gleich 4. In der vorliegenden Beschrei-
809810/0917
bung wird der Prozessor nach der Erfindung unter Bezugnahme auf einen doppelt gerichteten Datenbus mit 16 Bits und einen einseitig gerichteten Adressenbus mit 20 Bits erläutert. Falls gewünscht, können andere Werte für m und η gewählt werden.
Der Prozessor nach der Erfindung weist eine in Abschnitte unterteilte arithmetische Einheit (AiW) auf. Ein erster AMU-Abschnitt, der auch Zentralprozessorelement genannt wird, besitzt eine Kapazität von 16 Bits und kann Wörter mit 16 Bits vom Datenbus aufnehmen bzw. an diesen abgeben. Der erste Abschnitt kann außerdem 16 Bits an die 16 niedrigststelligen Adern des Adressenbus mit 20 Bit anlegen. Der Prozessor enthält weiterhin einen zweiten AMU-Abschnitt, der ebenfalls auch Zentralprozessorelement genannt wird, eine Kapazität von 4 Bits besitzt und die 4 niedrigststelligen Bits eines Worts mit 16 Bits im ersten AMU-Abschnitt aufnehmen kann. Der zweite AMlJ-Abschnitt kann außerdem 4 Bits an die 4 höchststelligen Adern des Adressenbus abgeben. Die beiden AMU-Abschnitte arbeiten zusammen, um ein Wort mit 20 Bits an den Adressenbus anzulegen. Ein Eingang des zweiten AMU-Abschnittes ist dauernd mit den Ausgangsadern für die 4 niedrigststelligen Bits des ersten AMU-Abschnittes verbunden. Dies gibt die Möglichkeit, die 4 niedriststelligen Bits Jedes Wortes im ersten AMU-Abschnitt ohne Verwendung irgendwelcher speziell vorgesehenen Gatter- oder Steuerschaltungen zum zweiten AMU-Abschnitt zu übertragen.
809810/0917
Ein Adressenwort mit 20 Bits kann aus Wörtern, die über den Datenbus ankommen, dadurch gebildet v/erden, daß 1) ein erstes Datenwort mit 16 Bits im ersten AMU-Abschnitt gespeichert v/ird, wobei die 4 höchststelligen Bits des zu erzeugenden Adrosoenwortes die 4 niedrigststelligen Bits dieses ersten Datenwortes umfassen, 2) diese 4 niedriststelligen Bits vom ersten zum zweiten AMU-Abschnitt übertragen und gleichzeitig im ersten AMU-Abschnitt ein zweites, vom Datenbus empfangenes und. die 1G niedriststelligen Bits des zu erzeugenden Adrescenwortes darstellendes Wort mit 16 Bits gespeichert wird, und 3) gleichzeitig die beiden AMU-Abschnitte zur Abgabe eines Adrecsenv/ortes mit 20 Bits an den Adressenbus gelesen werden.
Ein in den beiden AMU-Abschnitten gespeichertes \lort mit 20 Bits braucht nicht unmittelbar an den Adressenbus gegeben werden. Falls gewünscht, kann das Wort durch nachfolgende logische oder arithmetische Operationen abgeändert und dann an den Adressenbus gegeben werden. Alternativ kann ein Adressenwort zurück in die beiden Datenwörter mit 16 Bits zwecks Rückübertragung in den Speicher über den Datenbus umgewandelt werden.
Der Prozessor enthält weiterhin einen internen Speicher mit wahlfreiem Zugriff (RAM) und einer Bitkapazität gleich der der AMU-Einheit. Der Eingang und Ausgang des RAM-Speichers sind mit einem Ausgang und einem Eingang der AMU-Einheit verbunden, so daß der Prozessor ein Wort, das sich in der AMU-Einheit befindet, zu einer angegebenen Speicherstelle im RAM-Speicher
809810/0917
zwecks zeitweiliger Speicherung übertragen kann und außerdem nachfolgend den Inhalt irgendeiner angegebenen RAM-Speicherstelle lesen und zur AMU-Einheit geben kann. Damit kann jedes Wort, das sich in der AMU-Einheit befindet, beispielsweise ein Adressenwort mit 20 Bits, zwecks zeitweiliger Speicherung zum RAM-Speicher übertragen werden. Die AMU-Einheit kann dann andere Operationen ausführen und zu einem späteren Zeitpunkt das gespeicherte Wort aus dem RAM-Speicher wiedergewinnen und je nach Bedarf für weitere logische oder arithmetische Operationen verwenden.
Die vorstehend beschriebene Verbindung zwischen den beiden AMU-Abschnitten, die auch Zentralprozessorelemente genannt werden, ermöglicht ein wirksames und wirtschaftliches Verfahren zur Erzeugung von Adressenwörtern mit 20 Bits aus Datenwörtern mit 16 Bits und umgekehrt. Die Verbindung macht die Verwendung von Gattern, Multiplexern, Steuereinrichtungen usw. unnötig, die im anderen Falle erforderlich wären, wenn beide AMU-Abschnitte direkten Zugriff zu dem Datenbus mit 16 Bits hätten.
Ein Merkmal der Erfindung ist die Schaffung eines Prozessors, der ein Adressenwort mit m+n-Bits aus Datenwörtern mit m-Bits dadurch bildet, daß er ein erstes Wort mit m-Bits, das n-Bits des zu erzeugenden Adressenwortes enthält, aufnimmt, das erste aufgenommene Wort in einem ersten AMU-Abschnitt speichert, ein zweites Wort mit m-Bits, das die restlichen m-Bite des zu erzeugenden Adressenwortes enthält, aufnimmt, die Bits des zweiten Wortes im ersten AMU-Abschnitt speichert und gleichzeitig die
809810/0917
^ Jj
gespeicherten η-Bits des ersten Viertes aus dem ersten zu einem zweiton AMU-Abschnitt überträgt und nachfolgend gür; ichzeitig die Bits in beiden AMU-Abschnitten an einen Adresrenbus m.i. fc m+n-Bits anlegt.
Ein weiteres Merkmal sind Schaltungen zur Verbindung eineo Eingangs des zweiten AMU-Abschnittes mit den n-niedrigststelligen Ausgangsadern des ersten AMU-Abschnittes, so daß die n-niedriststelligen, im ersten Abschnitt gespeicherten Bits immer für den zweiten Abschnitt verfügbar sind.
Ein zusätzliches Merkmal der Erfindung sind Prozessor-Schaltungen zur Umwandlung eines Adressenwortes mit m+n-Bits in zwei getrennte Wörter eines Formates mit ra-Bits, wobei diese Schaltungen Einrichtungen zur Speicherung des Adressenwortes mit m+n-Bits in einem zweiten Register mit η-Bits im zweiten AMU-Abschnitt und m-Bits im ersten AMU-Abschnitt aufweisen, ferner Einrichtungen zur Übertragung der η-Bits des im zweiten AMU-Abschnitt gespeicherten Adressenwortes zum ersten AMU-Abschnitt zwecks Speicherung in den n-niedriststelligen Bitpositionen eines ersten Registers im ersten AMU-Abschnitt, Einrichtungen zur Abgabe eines Wortes mit m-Bits an den Datenbus aus dem ersten Register im ersten AMU-Abschnitt, wobei die n-niedriststelligen Bits dieses Wortes die vom zweiten AMU-Abschnitt übertragenen η-Bits umfassen, und Einrichtungen zur nachfolgenden übertragung der im zweiten Register des ersten
609810/0917
AMU-Abschnittes gespeicherten m-Dits an den Datenbus mit m-Bits. Ein weiteres Merkmal der Erfindung sind Schaltungen zur Verbindung eines Ausgangs des zweiten AMU-Aboclmittes mit den n-niedrictstelligen Eingangsadern dos ersten AMU-Abscbnittes, so daß die n-höchststelligen Bits eines Adressem/ortes mit m>n-Bits in der AMU-Einheit zu den n-niedriststelligen Bitpositionen des ersten Abschnittes übertragen werden können.
Schließlich sieht ein Merkmal den Einsatz eines dem zweiten AMU-Abschnitt zugeordneten Speichers (RAM) mit wahlfreiem Zugang und η-Bits und eines dem ersten AMU-Abschnitt zugeordneten RAM-Speichers mit m-Bits vor, sowie Verbindungen zwischen der Ausgangs- und Eingangsschaltung jedes AMU-Abschnittes und seines zugeordneten RAM-Speichers, wodurch ein im Augenblick In den beiden Abschnitten gespeichertes Wort mit m+n-Bits in eine gewählte RAM-Speicherstelle eingegeben und jedes gewählte Wort in den RAM-Speichern zum Eingang der beiden Abschnitte geführt werden kann.
Nachfolgend wird die Erfindung anhand eines Ausführungsbeispiels in Verbindung mit den Zeichnungen näher beschrieben. Es zeigen:
Fig. 1 eine Anlage, die einen Prozessor nach der Erfindung enthält;
Fig. 2 den Prozessor nach Fig. 1; Fig. 3, 4 und 5 weitere Einzelheiten der arithmetischen
Einheit (AMU) des Prozessors;
809810/0917 '/&.
Fig. 6, 7 und 8 Programmbefehle, die der Pro2essor ausführen kann;
Fig. 9 und 10 die verschiedenen arithmetischen und logischen Funktionen, die die arithmetische Einheit AMU bei Zuführen der verschiedenen Kombinationen von Steuer- und Eingangssignalen ausführen kann.
In Fig. 1 ist schematisch eine Anlage dargestellt, die einen Prozessor nach der Erfindung enthält. Die Anlage umfasst einen Prozessor 101, ein Speichersystem 102, Teilnehmerleitungsschalter 105 und einen Verbindungsleitungsschalter 106. Die Teilnehraerleitungsschalter sind mit Fernsprechapparaten 109 und der Verbindungsleitungsschalter ist mit einem Vermittlungsamt 107 verbunden. Die Teilnehmerleitungsschalter und der Verbindungsleitungsschalter sind außerdem über individuelle Adern 114 an eine Netzwerksteuerung 103 angeschaltet. Die Anlage enthält außerdem einen Datenbus 110, einen Adressenbus 111, einen Speichersteuerbus 112 und einen Eingangs-Ausgangssteuerbus (I/O) 113.
Der Prozessor 101 arbeitet unter Steuerung der im Speichersystem 102 gespeicherten Programmbefehle und Daten. Er steuert mit Unterstützung des Speichersystems das Zeitraultiplex-Koppelfeld 108. Dies geschieht durch Überwachung des Zustandes jedes Teilnehmerleitungs- und Verbindungsleitungsschalters und durch selektives Ändern des Zustandes verschiedener Bauteile im Koppelfeld-Steuergerät sowie in den Teilnehmerleitungs- und Verbindungsleitungsschaltern. Der Koppelfeld-Steuerung werden Be-
809810/0917
-γ-
fehle vom Prozessor über den Datenbus 110 zugeführt. Außerdem werden Abtastantworten und andere Zustandsinformationen vom Koppelfeld-Steuergerät über den Datenbus 110 zurück zum Prozessor übertragen. Das Koppelfeld-Steuergerät wird durch Signale auf dem Adressenbus 111 gewählt.
Zwei Teilnelunerleitungsschalter oder ein TeilnehmerIeitungsschalter und ein Verbindungsieitungsschalter werden bei einem Anruf dadurch verbunden, daß die Verfügbarkeit eines freien : Zeitkanals festgestellt, die beiden zu verbindenden Schaltungen dem freien Zeitkanal zugeordnet und dann die Zeitmultiplex-Schalter in den beiden Schaltungen bei jedem Auftreten des zugeordneten Zeitkanals geschlossen werden· Ein Teilnehmerleitungsschalter oder ein Verbindungsleitungsschalter wird durch Löschen seiner Zeitkanalzuordnung aus einer Gesprächsverbindung herausgenommen. Dadurch wird der Schalter deaktiviert, so daß er nicht mehr während des nachfolgenden Auftretens des Zeitkanals, dem er zugeordnet war, schließt.
Der Prozessor kann selektiv Speicherstellen des Speichers 102 für Lese- und Schreiboperationen dadurch adressieren, daß er Adresseninformationen über den Bus 111 zum Speicher überträgt. Der Inhalt einer adressierten Speicherstelle wird bei Leseoperationen dem Prozessor über den Datenbus 110 zurückgegeben. Bei Schreiboperationen werden die Informationen auf dem Daten- ~ bus in die durch Signale auf dem Adressenbus angegebene Speicherstelle eingeschrieben. Ein Signal auf dem Bus 112 gibt an, ob
809810/0917
der Speicher bei einer Operation gelesen oder geschrieben werden soll. Der Prozessor steht mit dem Koppelfeld-Steuergerät auf ähnliche Weise in Verbindung, wobei Antworten von adressierten Abschnitten der Anlage über den Bus 110 zurückgegeben werden. Die Steuerbusse enthalten eine Vielzahl von getrennten Adern, von denen jede Ader für eine bestimmte Funktion benutzt wird, beispielsweise für Speicherschreib-, Speicherlese- und Speicherdurchführanzeigen. Die verschiedenen Adern des Bus 113 dienen ähnlichen Funktionen. Die Busse 110, 111 und 113 führen außerdem zu weiteren Eingangs-Ausgangsgeräten I/O, beispeilsweise Datenverbindungen und ähnlichen Elementen.
Fig. 2 zeigt die Einzelheiten eines Prozessors nach der Erfindung. Es handelt sich um einen Mikroprogramm-Prozessor, der eine arithmetische Einheit (AMU) 203, einen ROM-Mikrospeicher 209, eine Mikrospeicher-Steuereinheit (MCU) 208, einen Permanentspeicher (CM) 205, einen Speicher (RM) 204 mit wahlfreiem Zugriff sowie Sendeempfänger (Transceiver) 201 und 202 enthält. Die AMU-Eingänge M, I und K nehmen die Daten und Informationen auf, die zu bearbeiten sind. Die AMU-Ausgänge sind mit A und D bezeichnet. Der Eingang F nimmt Steuersignale auf, die die bei jeder Operation auszuführende AMU-Funktion angeben.
Der Ausgang A liefert Adressenwörter mit 20 Bits über den Sendeempfänger 202 zum Adressenbus 111. Die Daten am Ausgang A können außerdem über den Sendeempfänger 202 und den Weg 221 zurück
809810/0917
zum Eingang K gegeben werden. Der Ausgang D gibt Wörter mit 16 Bits über den Sendeeropfanger 201 zum Datenbus 110. Der Eingang M nimmt Datenwörter vom Datenbus über den Sendeempfänger 201 auf. Der Eingang I empfängt Daten vom WM-Speicher 204, der durch gewählte Eingangssignal vom Multiplexer 206 adressiert wird. Dem Eingang K der AMU-Einheit werden die Ausgangssignale des CM-Speichers 205 zugeführt, der durch die Eingangssignale des Multiplexers 207 adressiert wird.
Der RM-Speicher 204 ist ein kleiner Schreib-Lese-Speicher, der den Programmierer der Anlage mit 16 außerhalb der AMU-Einheit gelegenen Allzweckregistern versorgt. Die für den Zugriff zum RM-Speicher erforderlichen Adresseninformationen können von einem der vier Eingänge des Multiplexers 206 unter Steuerung des Steueradern RSO und RS1 geliefert werden.
Der CM-Speicher 205 ist ein Festwertspeicher mit einer Kapazität von 32 Wörtern. Dieser Speicher versorgt die AMU-Einheit mit bestimmten Konstantwerten, die für das Mikroprogramm erforderlich sind. Eine häufig benutzte Konstante ist beispielsweise ein Wort, das nur Null-Werte enthält. Die Ader KA4 führt dem CM-Speicher ein Bit der Adresseninformation zu. Die übrigen vier Adressenbits werden von e inem der vier Eingänge des Multiplexers 207 unter Steuerung der Steueradern KSO und KS1 des Multiplexers geliefert.
Der PL-Bus 225 gibt Signale an den Eingang F, um die Operation
809810/0917
Γ COPY ί
der AMU-Einheit zu steuern. Die Signale geben die durchzuführenden logischen und/oder arithmetischen Funktionen an. Sie geben außerdem die Eingänge (M, I und K) der AMU-Einheit an, die zur Zuführung der Daten zu aktivieren sind, welche bei jeder Operation benutzt werden sollen. Außerdem geben sie den Ausgang (D, A) der AMU-Einheit an, der bei jeder Operation Ausgangsinformationen liefern soll. Die Signale auf dem PL-Bus 225 kommen vom Mikrospeicher 209, der von der MCU-Einheit 208 adressiert wird.
Die Informationen am D-Ausgang der AMU-Einheit können über den Sendeempfänger 201 zum Datenbus 110 gegeben werden. Außerdem können sie über den D-Bus 214 zur MCU-Einheit 208 sowie über einen Inverter 220 zum ID-Bus 2t5 übertragen werden. Die Informationen auf dem ID-Bus können in den RM-Speicher an einer Adresse eingeschrieben werden, die durch Eingangsinformationen des Multiplexers 206 definiert wird. Zu anderen Zeiten können die Informationen auf dem ID-Bus 215 als Adresseninformationen für die Multiplexer 206 und 207 benutzt werden.
Die aus dem Mikrospeicher 209 gelesenen und über das Register 210 dem PL-Bus 225 zugeführten Informationen werden 1) dem Eingang F der AMU-Einheit zugeführt um die von dieser Einheit durchzuführende Funktion anzugeben, 2) dem logischen Steuerelement 226 zugeführt, um dieses Element zu veranlassen, Gattersignale zu erzeugen und an seine Ausgangsadern anzulegen, und
809810/0917
3) werden den unteren Eingängen der Multiplexer 206 und 207 zugeführt, um Adresseneingangsinformationen für die Speicher RM und CM bei bestimmten Informationen zu liefern. Das Steuerelement 226 wexst Schaltungen auf, die die Ausgangssignale des Mikrospeichers 209 auf dem PL-Bus aufnehmen und decodieren, um Gatter-, Synchron- und weitere Signale zu erzeugen, die für die Steuerung des Prozessors sowie die Steuerung weiterer Bauteile der Anlage erforderlich sind.
Die Adresseninformationen des Mikrospeichers 209 können durch die MCU-Einheit vom Bus 214 aufgenommen werden, können der MCU-Einheit durch die MRS-Einheit 216 zugeführt werden oder können durch Informationen bestimmt sein, die aus einem bestimmten Feld des Mikrospeichers gelesen und über den Weg 219 zum AC-Eingang der MCU-Einheit geführt werden. Die von der MCU-Einheit aufgenommene Adresseninformation auf dem Bus 214 weist einen Programm-Operationscode auf und kann jedes Wort im Mikrospeicher adressieren. Das MRS-Register 216 wird zur Speicherung einer Mikrounterprogramm-RUckkehradresseninformation benutzt, die am Ende eines MikroUnterprogramms die MikroSteuereinheit 208 auf die richtige Rückkehradresse zurückstellt· Die AC-Eingangsanschlußinformation wird normalerweise verwendet, um die MCU-Einheit von Wort zu Wort eines MikroUnterprogramms weiterzuschalten.
Der Prozessor läßt sich besser anhand der Beschreibung einiger
809810/0917
SO
typischer Operationen vorstehen, die er durchfühlen kann. Fig. 6 stellt einen Befehl dar, mit dem der Inhalt eines Wortes R2 des RM-Speichers 204 zum Inhalt des Wortes R1 addiert uirl das Ergebnis in R1 gespeichert wird. R1 und R2 sind nicht das erste und zweite Wort des RM-Speichers. Sie sind diejenigen Wörter, deren Adresse durch den Inhalt der Felder R1 und R2 des Befehls angegeben wird. Das Feld R2 umfaßet die Bits 0 bis 3 und das Feld R1 die Bits 4 bis 7. Der Operationscode (OP-Code) für diesen Befehl lautet 03 und befindet sich in den Bits 8 bis 14 des Feldes. Die Funktion des Bits BA ist für das Verständnis der Erfindung nicht wichtig.
Der Befehl gemäß Fig. 6 kommt vom Speichersystem 102 über äen Datenbus 110 und den Sendeempfänger 201. Er wird über den Weg 223 dem Eingang M der AMU-Einheit zugeführt und nachfolgend innerhalb der AMU-Einheit zu deren Ausgang D übertragen. Von dort werden die Bits 8 bis 15 des Befehls über den D-Bus 214 zum Eingang 231 der MCU-Einheit 208 geführt. Alle Bits des Befehls werden über den Inverter 220 übertragen und an den ID-Bus 215 gegeben. Die am weitesten rechts stehenden Bits sind die Felder R1 und R2, die in die R1- und R2-Register 211 und 212 eingegeben werden, welche mit den beiden oberen Eingängen des Multiplexers 206 verbunden sind.
Die Operationscodebits (binär 03), die jetzt an die MCU-Einheit 208 angelegt sind, geben die Adresse des ersten Wortes des
809810/0917
Mikrounterprocramms im Mikronpeicher 209 an, das zur Steuerung des Prozessors zwecks Ausführung des Befehls gemäß Fig. 6 zu benutzen ist. Der Mikrospeicher 209 lif>st jeweils einzeln jeden adressierten Mikrobefehls aus und gibt Signale an den UD-Bua 219, das Register 210 und den PL-Bus 225, um die AMU-Einhoit zu veranlassen, den Befehl auszuführen. Die durch den PL-Bus dem Eingang F zugeführten Signale geben die Operation der AMU-Einheit an. Die vom PL-Bus der Steuerlogik 226 zugeführten Signale erzeugen Gatter- und Synchronsignale. Die Signale des PL-Bus steuern außerdem die Adern RSO und RS1 des Multiplexers 206, derart, daß die jeweils richtigen Eingangssignale des Multiplexers den RM-Speicher 204 adressieren.
Der RM-Speicher 204 wird zu Anfang durch die Bits des R1-Feldes adressiert, die sich dann im R1-Register 211 befinden. Das durch die R1-Bits adressierte Wort wird aus dem RM-Speicher gelesen, zum I«Eingang geführt und zeitweilig in der AMU-Einheit gespeichert.
Die MCU-Einheit 208 läuft weiter und liest das nächste Wort des Mikrounterprogramns zur Steuerung der nächsten Mikrofunktion aus. Der RM-Speicher wird jetzt mit dem Inhalt des R2-Regi3ters 212 adressiert, nämlich den Bits des R2-Feldes. Diese Bits bewirken, daß das adressierte Wort iia RM-Speicher ausgelesen, an den !-Eingang angelegt, und von dor AMU-Einheit gespeichert wird. Die MCU-Einho.it veranlar.pt als nüchirtea den ROM-Mikror.peioher 209, ein Mikrov/ort auszulesen, da;; bewirke., daß die AIIU-Kinhuit
609810/0917
die im Augenblick in ihr gespeicherten Wörter RI und R2 addiert und die Summe an (lon Ausgang D gibt. Diese Operation wird teilweise durch die an den Eingang F angelegten Signale gesteuert. Die Summe der Wörlor R1 und 112 wird unter Steuerung des Schreibsignals über den Inverter 220 und don Bus 215 in die Speicherstelle R1 des RM-ßpeichers geschrieben. Während dieser Schreiboperation liefert das R1-Register 211 die Adresseninformation an den RM-Speicher, da der Befehl gemäß Fig. 7 angibt, daß das Ergebnis der Operation in der Speicherstelle R1 des RM-Speichers aufgenommen werden soll.
Ein weiterer Befehl, den der Prozessor ausführen kann, ist in Fig. 7 dargestellt. Es wird ein angegebener Binärwort I zum Inhalt des Wortes R1 (R1 ist ein Programmregister) im RM-Speicher addiert und das Ergebnis in das Wort H1 eingegeben. Diese Operation erfordert zwei Befehlswörter. Das erste Wort wird von der AMU-Einheit 203 aufgenommen und von ihrem Eingang Il ihrem Ausgang D zugeführt. Die Bits 8 bis 15 sind der Operationscode und werden an die MCU-Einheit 208 gegeben. Die Bits 4 bis 7 des Feldes R1 werden in das R1-Register 211 eingegeben, nachfolgend wird die R1-Information dem RM-Speicher als Adresrsenin forma tion zugeführt, die diejenige V/ortstelle im RM-Speicher angibt, welche zu bearbeiten ist. Die Operatioriiicodefeldbits 07 stellen den Mikrospeicher 209 auf die Anfangsndresse des diesem Bofehl zugeordneten Mikrounterprogranmis oin. Das Unterprogramm wird Wort fui· Wort au π dem Mikrospeicht.-r gelesen, und bewirkt '/.w Anfang, daii das Vort Ri der. Rll-Spoichorr; ausgolesen,
80981 Π/0 9 1 7
ah don I-Eingang der AMU-Einhcit 203 angelegt und in der AMU-Einheit gespeichert v/ird. Als nächstes wird der Wert I am M-Eingang als zweites Wort des Befehls gemäß Fie. 7 aufgenommen. Das zweite Wort stellt insgesamt die Binärzahl dar, die zu dem in der ANU-Einheit gespeicherten Wort R1 zu addieren ist.
Das MikroUnterprogramm veranlasst die AHU-Einhcit, das Datenwort I zum Wort R1 zu addieren und die Summe dieser beiden Wörter an den Ausgang D der AMU-Einheit anzulegen. Von dort wird das die Summe darstellende Wort über den Inverter 220 und den ID-Bus zum RM-Speicher gegeben und dort unter Steuerung eines Signals am Schreibeingang sowie unter Steuerung der vom R1-Register zugeführten Adresseninformation in die Speicherstelle R1 eingeschrieben.
Fig. 8 zeigt einen Zweiwortbefehl derjenigen Art, mit der sich die Erfindung befasst. Er veranlasst den Prozessor, ein Adressenwort mit 20 Bits auf den Adressenbus 111 zu geben, das durch die Information in zwei Datenwörtern mit 16 Bits angegeben wird. Unter Bezugnahme auf Fig. 8 wird diese Operation wie folgt durchgeführt. Der Prozessor nimmt das erste (oberste) Wort des Befehls auf, in welchem die Bits 0 bis 3 die vier höchststelligen Bits (MSB) des zu bildenden Adressenwortes bilden, speichert diese Bits, nimmt das zweite Wort des Befehls auf, welches die 16 niedriststelligen Bits (LSB) des zu bildenden Adressenwortes mit 20 Bits enthält, und gibt dann gleichzeitig die 4 höchst-
809810/0917
stellj/.cn Bi tr. und die 16 liiedri.sti-telligon Bits über den hluß Λ und die AdrcrjKm-Sendomnpf anger 202 zum 111. Die Art und Weir;c, wie die AMlI-Ei who it 203 die AdrunsenwortouniwandJung von 1G auf 20 Bits durchführt, läßt πich am besten unter Bezugnahme auf Fig. 3 beschreiben.
Die AMU-Einheit 203 in Fig. 3 weist funktionell zwei getrennte Abschnitte AMUA und AMUB auf. ΑΓ-jUA ist das Bauteil 203A und besitzt eine Kapazität von 16 Bits (Bits 0 bis 15). AIIUB ist das Bauteil 203B und hat eine Kapazität von h Bits (Bits 16 bis 19). Die AMUA-Einheit hat über ihren Ausgang D Zugang zum Datenbus 110, um Wörter mit 16 Bits an den Bus zu geben. Der Eingang M der AMUA-Einheit nimmt V/ort er mit 16 Bits von diesem Bus auf. Die Bits 0 bis 3 vom Ausgang D der AMUA-Einheit werden außerdem über den Weg 21AB zum Eingang M der AMUB-Einheit gegeben.
Der Ausgang D der AMUB-Einheit, der A Bits umfasst, kann mit dem Anschluß 303 und von dort dem Eingang I der AMUA-Einheit 203A verbunden werden. Alternativ kann er über den Inverter 220B mit dem RM-Speicher 204 verbunden werden, und zwar unter Steuerung der Adressierschaltung dieses Speichers, die in Fig. 2 gezeigt ist. Der Ausgang A der beiden Einheiten AMUA und AMUB ist über den Weg 222 mit dem Adressenbus 111 verbunden. Die am weitesten rechts stehenden 16 Bits jedes von der AMU-Einheit erzeugten Adressenwortes werden von der AMUA-Einheit geliefert.
809810/0917
— <. I -
Die am weitesten .!.inks stehenden vie:«.· Bits liefert du; ArTUD--Einheit. Dor Eij)r;u:ig F der boiden AliU-AbsclmJ t.to isI: wit dem PL-Bus verbunden. Der Einzug K liefet, am Ausgang des CM-Speichcr;>. Der Eingang I ist mit dem Ausgang doc RM-Speichers verbunden.
Nachfolgend wird beschrieben, wie die Schaltung gemäß Fig. 3 die beiden Befehlswörter mit 16 Bits gemäß Fig. 8 aufnimmt und ein Adressenwort mit 20 Bits bilde·t. Das erste V/ort (oberste-Wort) in Fig. 8 wird vom Datenbus 110 aufgenommen, dem Eingang M der AKUA-Einheit zugeführt und dort gespeichert. Die Operationscodebits (8 bis 14) dos Wortes werden vom Anschluß D der AMUA-Einheit zugeführt und über den Weg 21A zur MCU-Einheit 208 gegeben, um diese und den Mi kr ο spei eher 209 auf das erste V/ort des diesem Befehl zugeordneten MikroUnterprogramms einzustellen. Dieser Operationscode gibt im wesentlichen an, daß das vom Datenbus 110 aufgenommene Wort das erste Wort eines Zweiwortbefehls ist, der zur Bildung eines Adrefisenwortcs mit 20 Bits ankommt, daß die am weitesten rechts stehenden 4 Bits des ersten Wortes die 4 höchststelligon Bits sind, und daß die 16 Bits des zweiten Wortes die 16 niedriststelligen Bits des zu bildenden Adressenwortes sind.
Die AMUA-Einheit speichert die; Bits 0 bis 3 des ersten Wortes kurzzeitig in einem ihrer internen Register. Bei der nächsten Operation werden die Bits 0 bis 3 des ersten Wortes von der ΑΠΙΙΛ-Einheit zur AMUB-Einheit übertragen und gleichzeitig wird
80981 Π/0917
Tcn Γοορϋ
ORIGINAL INSPECTED
- IIP ■■
das zweite Befehlswort mit 1ί> Hits ο in l-'ingat^; M der ΛΠϋΛ-Einheit vom Datenbus auf/jenoiini<Mi. Der V/eg, über dm die Li.tr» 0 bis 3 des ersten Wortes zur AliUB-Einho.lt übertragen werden, enthält den Ausgang D der AMUA-Einhcit, den Weg 21AA, den Anschluß 301 und den Weg 214B zum Eingang M der AMUB-Einheit. Jeder AMU-Abschnitt speichert die Bits, die er aufnimmt, so daß am Ende dieser Operation die AMUB-Einheit die 4 höchststelligen Bits (16 bis 19) des zu erzeugenden Adressenv-ortes und die AMUA-Einheit die 16 niedriststelligen Bits (0 bis Vj) enthält.
Die nächste, von Prozessor durchgeführte Operation hängt vom Operationscode ab. Der Operationscode kann beispielsweise angeben, daß das neu gebildete Adressenwort mit 20 Bits unmittelbar über den Adressenbus 111 zum Speichersystem 102 2U geben ist. In diesem Fall werden die Adressenbits in jedem AMU-Abschnitt vom Ausgang A jedes Abschnittes sowie über den Weg als Wort mit 20 Bits zum Adressenbus 111 gegeben. Alternativ kann der Operationscode angeben, daß gewisse logische oder arithmetische Operationen mit dem erzeugten Adressenwort durchzuführen sind, bevor es an den Adressenbus angelegt wird. Als weitere Alternative kann der Operationscode angeben, daß das gebildete Adressenwort zeitweilig im RM-Speicher 204 zu speichern ist.
Nachfolgend v/ird beschrieben, v/ie die Schaltung gemäß Fig. 3
8098 10/0917
Adrescenwörter mit 20 Bits zurück in Datenwörter mit 16 Bits umwandeln kann. Es wird angenommen, daß das umzuwandelnde Adressenwort mit 20 Bity im Augenblick in den Abschnitten AKiUA und AMUB gespeichert ist. Die h Adressenbits (16 bis 19) in der Einheit AIlUB sind die U niedriststelligen Bits (0 bis 3) des ersten, zu bildenden Datenwortes mit 16 Bits. Die 16 Bits (0 bis 15) in der Einheit AMUA stellen das vollständige, zweite Datenwort mit 16 Bits dar, das zu erzeugen ist. Beide zu bildende Datenwörter mit 16 Bits werden über den Datenbus 110 dem Speichersystem 102 zugeführt und dort unter Steuerung von Adresseninformationen in entsprechende Speicherstellen geschrieben, die der Prozessor an den Adressenbus 111 anlegt.
Die Operation läuft an, wenn Signale am Eingang F beider AMU-Abschnitte ankommen und bewirken, daß die k Bits in der AMUB-Einheit an deren Ausgang D angelegt und von dort über den Weg 302 und den Anschluß 303 zum Eingang I der AMUA-Einheit geführt werden. Jeder AMU-Abschnitt enthält eine Vielzahl von Registern, deren Bit-Kapazität jeweils der seines AMU-Abschnittes entspricht, Die A Bits, die ca Eingang I der AMUA-Einheit ankommen, werden in die 4 niedriststelligen Bitpositionen eines ersten Registers mit 16 Bits in der AMUA-Einheit eingegeben. Der Inhalt der 12 höchststelligen Bitpositionen dieses Registers ist in Verbindung mit der vorliegenden Erfindung ohne Bedeutung. Die 16 niedriststelligen Bits des Adressenwortes mit 20 Bits bleiben in einen zweiten Register mit 16 Bits in der AMUA-Einheit gespeichert. Als nächstes veranlassen die Steuersignale am Eingang F das erste
809810/0917
Register mit 16 Bits der AMUA-Einheit, seinen Inhalt einschließlich der 4 von der AMUB-Einheit übertragenen Bits zum Ausgang D der AMUA-Einheit zu geben. Dieses Wort wird über den Datenbus zum Speichersystem übertragen und dort in eine entsprechende Adressenstelle unter Steuerung der Adresseninformation auf dem Bus 111 eingeschrieben. Als nächstes wird das Wort mit 16 Bits, das die 16 niedriststelligen Bits der Adresse mit 20 Bit darstellt, aus dem zweiten Register der AMUA-Einheit gelesen und über den Ausgang D und den Datenbus 110 zum Speichersystem übertragen, wo es in eine andere Speicherstelle unter Steuerung der neuen Adresseninformation auf dem Bus 111 eingeschrieben wird.
Als weitere Alternative kann ein Adressenwort mit 20 Bits in den beiden AMU-Abschnitten zur zeitweiligen Speicherung in den RM-Speicher 204 eingegeben werden. Diese Operation wird durch Anlegen der Adressenwortbits am Ausgang D jedes AMU-Abschnittes an die Inverter 220A und 220B durchgeführt. Der Inverter 220A nimmt die 16 niedriststelllgen Adressenbits aus der AMUA-Einheit auf. Der Inverter 220B empfängt die 4 höchst stelligen Adressenbits von der AMUB-Einheit. Die Inverter 220A und 220B invertieren die Bits und geben sie über den ID-Bus 215 zum RM-Speicher 204, wo sie als Adressenwort mit 20 Bits in derjenigen Speicherstelle gespeichert werden, die durch das Ausgangssignal des Multiplexers 206 (Fig· 2) angegeben wird. Das gespeicherte Adressenwort kann nachfolgend verwendet werden, indem es aus dem RM-Speicher gelesen und an den I-Eingang beider AMU-Abschnitte angelegt wird.
809810/0917
- 25 -
Fig. 4 zeigt v;eitere Einzelheiten dafür, wie die AMU-Einheit 203 Adressenwörter mit 20 Bits aufgrund von Datenwörtern mit 16 Bits und umgekehrt erzeugt. Gemäß Fig. 4 weist die AMUA-Einheit 203Λ zv.ei getrennte Abschnitte AMUA1 und AI'IUA2 auf (nachfolgend Al und A2 genannt). Der Abschnitt A1 ist den Bits O bis 3 und dor Abschnitt A2 den Bits 4 bis 15 zugeordnet. Die AMUB-Einheit ist die gleiche wie in Fig. 3 und ist den Bits 16 bis 19 zugeordnet. Die Abschnitte A1 und A2 werden sowohl für Datenwörter als auch für Adressenwörter benutzt. Die AMUB-Einheit wird nur für Adressenwörter verwendet.
Der Eingang M der Abschnitte A1 und A2 nimmt zusammen die Bits 0 bis 15 der dem Prozessor von Datenbus 110 zugeführten Datenwörter mit 16 Bits auf. Der Ausgang D der Abschnitte A1 und A2 gibt Datenwörter mit 16 Bits an die Daten-Sendeempfänger 201 und dann an den Datenbus 110. Der Ausgang D des Abschnittes A1 mit 4 Bits führt außerdem direkt zum Eingang M der AMUB-Einheit. Dieser Weg mit 4 Bits ist derjenige Weg, über den die 4 niedrtgststelligen Bits eines Datenwortes vom Abschnitt A1 zur AMUB-Einheit übertragen werden können. Die Schaltung gemäß Fig. 4 schafft die Möglichkeit, daß die Abschnitte A1 und A2 ein Datenwort mit 16 Bits bei einer ersten Operation aufnehmen und speichern und dann bei einer nachfolgenden Operation ein zweites Wort mit 16 Bits aufnehmen und speichern sowie gleichzeitig die Bits 0 bis 3 des ersten Wortes vom Abschnitt A1 zur AMUB-Einheit übertragen können. Am Ende der zweiten Operation enthalten
809810/0917
- 26 -
die drei AMU-Einheiten zusammen ein Adre^senwort nit 20 Bits, das unmittelbar £um Adressenbus 111 geführt oder in abgeänderter oder unveränderter Form zum RM-£>i> eicher 204 übertragen werden kann. Im letztgenannten Fall werden die in jedem AMU-Abschnitt gespeicherten Bits vom Ausgang D über einen Inverter 220 zum Eingang des jeweiligen Abschnittes des ΠΜ-Speichers 204 geführt, der das Wort in der durch die Adresseneinrichtungen gemäß Fig. 2 angegebenen Speicherstelle speichert.
Fig. 4 zeigt außerdem im einzelnen, wie die Bits 16 bis 19 der AMUB-Einheit zum AMU-Abschnitt A1 geführt werden können. Diese Operation wird benutzt, wenn der Preozessor Adressenwörter mit 20 Bits zurück in zwei Datenv/orter mit 16 Bits umwandelt. Das erste, zu bildende Datenwort enthält die Bits 16 bis 19 der AMUB-Einheit als seine 4 niedriststelligen Bits und Leer-Bits in seinen Bitpositionen 4 bis 15. Das zweite, zu bildende Datenv/ort enthält die Bits 0 bis 15, die sich bereits in den Abschnitten A1 und A2 befinden.
Die Operation beginnt, wenn die 4 Bits in der AMUB-Einheit vom Ausgang D über den Weg 214B zum Bauteil 401 geführt werden. Zum rechten Eingang des Bauteils 401 und zum Eingang CE des RM-Speichers führt eine Ader IGB. Das Potential dieser Ader bestimmt, welche Schaltung Eingangssignale an den Eingang I des Abschnittes A1 anlegt. Ein Signal L auf der Ader aktiviert das Bauteil 401, so daß der AMU-Abschnitt A1 die 4 Bits von der
809810/0917
- 27 -
AMUB-Einheit erhält. Ein Signal H auf dieser Ader veranlasst den RM-Speicher 204A1, sein Ausgangesignal an den Eingang I zu geben. Im vorliegenden Fall ist die Ader IGB auf L, so daß die 4 Bits von der AMUB-Einheit über das Bauteil 401 zum Eingang I des Abschnittes A1 geführt werden.
Die 4 Bits von der AMUB-Einheit werden in den 4 niedriststelligen Bitpositionen eines ersten Registers im Abschnitt A1 aufgenommen und dort gespeichert. Gleichzeitig bleiben die Bits 0 bis 15 der Adresseninformation, die sich bereits in den Abschnitten A1 und A2 befindet, in einem zweiten Register dieser Abschnitte gespeichert. Der Inhalt des ersten Registers der Abschnitte A1 und A2 wird ausgelesen und vom Ausgang D über den Datenbus 110 dem Speichersystem 102 zugeführt. Die 4, Jetzt von Abschnitt A1 gelieferten Bits sind die 4, von der AMUB-Einheit übertragenen Bits· Der Abschnitt A2 liefert bei dieser Operation Leer-Bits. Als nächstes werden die im zweiten Register in den Abschnitten A1 und A2 gespeicherten 16 Bits vom Ausgang D über den Datenbus zum Speichersystem übertragen und dort in getrennte Wortstellen eingeschrieben. Am Ende dieser beiden Operationen haben die beiden, in das Speichersystem eingeschriebenen Wörter das Format des in Flg. 8 dargestellten Befehls mit der Ausnahme, daß die Bits 4 bis 15 des ersten Wortes Leer-Bits und keine Operationscodebits sind.
809810/0917
Fig. 5 zeigt weitere Einzelheiten der AMU-Elnheit 203. Die AMU-Einheit enthält mehrere integrierte Zentralprozessorschaltungen. Jede integrierte Schaltung (IC) beinhaltet alle Schaltungen, die zur Darstellung eines Zweibit-Abschnittes der AMU-Einheit 203 erforderlich sind. Eine AMU-Einheit einer gegebenen Bitkapazität kann durch Zusammenschaltung einer Anordnung von N/2 solcher ICs gebildet werden. Es entsteht dann eine AMU-Einheit mit den folgenden Möglichkeiten: 1) Arithmetik zur Zweier-Komplementbildung; 2) logische UND, ODER, NICHT und exklusiv ODER-Funktionen; 3) Inkrementieren und Dekrementieren; 4) Schieben nach links oder rechts; 5) Bit-PrUfen und Null-Anzeige; 6) Erzeugung eines erwarteten Übertrags; 7) Mehrfach-Daten- und Adressenbusoperation. Fig. 5 ist einem für dieses IC veröffentlichen Datenblatt entnommen und zeigt daher die Schaltungen für einen Abschnitt mit zwei Bits. Die Indices an den Eingangs- und Ausgangsleitungen sind als 0 und 1 angegeben, da jedes IC eine Kapazität von zwei Bits besitzt.
Jedes AMU-IC weist einen Arithmetik-Logik-Abschnitt (ALS) 501 zusammen mit Multiplexern 502 und 503 zur Zuführung von Daten zum ALS-Abschnitt 501 aus verschiedenen Quellen auf. Diese Quellen sind die Eingänge M, I und K, die Zwischenregister (Scratch Pad Register) 504 und das Register AC. Die an die Eingänge FO bis F6 angelegten Steuersignale bestimmen, welche Eingänge oder internen Bauelemente der AMU-Einheit bei jeder Operation Eingangssignale an den ALS-Abschnitt liefern sollen. Die
809810/0917
Ausgangssignale des ALS-Abschnittes können wahlweise an das Speicheradressenregister 505, das AC-Register 506 oder die Zwischenregister 504 gegeben werden. Der Ausgang des MAR-Registers 505 führt zum Ausgangspuffer 507 und dann zum Ausgang A. Die Ausgn.ngssignale des AC-Registers 506 können entweder zum Ausgangr.puffer 500 zwecks übertragung an den Datenbus oder an den Eingang der Multiplexer 502 und 503 zur nachfolgenden Verwendung durch den ALS-Abschnitt gegeben werden. Der Mikrofunktionsdecoder 509 nimmt die Signale FO bis F6 auf und bestimmi die Funktion, die der ALS-Abschnitt bei Jeder Operation ausführen soll.
Die Multiplexer 502 und 503 wählen die Eingangssignal für den ALS-Abschnitt, die durch die Signale an den Eingängen F angegeben werden. Zu den Eingängen des Multiplexers 502 zählen der M-Bus, die Zwischenregister 504 und der Ausgang des AC-Registers 506. Der Multiplexer 503 wählt entweder den I-Bus, den AC-Registerausgang oder den K-Bus als Eingangssignale. Die gewählten Eingangssignale des Multiplexers 503 werden in Jedem Fall durch eine logische UND-Funktion mit den Daten auf dem K-Bus verknüpft, um eine flexible Maskier- und Bit-PrUfmöglichkeit zu schaffen.
Der ALS-Abschnitt kann eine Vielzahl von arithmetischen und logischen Operationen ausführen, wie an anderer Stelle beschrieben. Das Ergebnis einer ALS-Operation kann im AC-Register oder in einem der Zv/ischenregister gespeichert werden. Zur Verwendung
809810/0917
ORIGINAL INSPECTEO
bei Rechtccchiebeopcrationon stehen getrennte Linkseingangsund Rechtjjnusgangsadern LI und RO zur Verfügung. Übertragseingangs- und Übcrtragsausgangsleitungen C1 und CO sind für eine normale Übertragsweitergabe zwischen AMU-Elementen vorgesehen. Die Leitungen X und Y führen die üblichen Vorhersage-Übertragcfunktionen aus und stehen für eine volle Übertragsvoraussage über jede Wortlange zur Verfügung.
Die Möglichkeit, mit dem K-Bus Eingangssignal des ALS-Abschnittes zu maskieren, erhöht die Vielseitigkeit der AMU-Einheit beträchtlich. Während nicht-arithmetischer Operationen, bei denen eine Übertragsweiterleitung keine Bedeutung hat, werden die Übertragsschaltungen zur Durchführung einer wortweisen Inklusiv-ODER-Funktion der Bits, maskiert durch den K-Bus, von dem durch den Funktionsdecoder gewählten Register oder Bus benutzt. Die AMU-Einheit ermöglicht also eine flexible Bitprüfung. Der K-Bus wird außerdem bei arithmetischen Operationen zur Maskierung von Teilen des bearbeiteten Feldes verwendet. Eine zusätzliche Funktion des K-Bus besteht darin, Konstanten vom CM-Speicher 205 zur AMU-Einheit zu führen.
Während jedes Mikrozyklus des Prozessors wird ein Mikrofunktionssignal an die Adern des F-Bus angelegt. Die F-Signale werden decodiert, die Operanten durch die A- und B-Multiplexer gewählt und die angegebene Operation wird von dem ALS-Abschnitt durchgeführt. Das Ergebnis der ALS-Operation wird entweder im
809810/0917
ORIGINAL INSPECTED
AC-Rcgister abgelegt oder in das gewählte Zwischenregister geschrieben. Außerdem geben bestimmte Operationen die Möglichkeit, in Beziehung stehende Adressendaten im MAR-Register 505 abzulegen.
Die an den F-Bus angelegten Signale werden unterteilt in Funktionsgruppensignale (F-Gruppe) und Registergruppensignale (R-Gruppe). Die F-Gruppe wird durch die drei Bits F4 bis F6 angegeben. Die R-Gruppe wird durch die vier Bits FO bis F3 angegeben. Die F-Gruppen-Bits (4 bis 6) geben eine von acht (0 bis 7) verschiedenen Funktionen an, die die AMU-Einheit bei einer Operation ausführen soll. Jede F-Gruppe ist wiederum in drei R-(Register)Gruppen (0 bis 2) unterteilt. Die R-Gruppen-Bits (0 bis 3) geben die AMU-Register an, die an der durch die F-Gruppen-Bits (4 bis 6) angegebenen Operation beteiligt sein sollen·
Die R-Gruppe 1 enthält die Register RO bis R9, T und AC, die alle durch das Symbol Rn bezeichnet sind. Die R-Gruppen 2 und 3 enthalten nur Register T und AC. Das F-Gruppen- und R-Gruppen-Bitformat ist im einzelnen in den Fig. 9 und 10 dargestellt.
Nachfolgend wird im einzelnen beschrieben, wie der Prozessor Datenwörter mit 16 Bits in Adressenwörter mit 20 Bits umwandelt und umgekehrt. Die oben beschriebenen Operationen geben an,
809810/0917
ORIGINAL INSPECTED
- 52 -
wie ein Zweiwortbefehl gemäß Fig. 0 empfangen wird, wie die Adressenbits in dem Zweiwortbefehl in ein Adrensenwort mit 20 Bits umgewandelt werden, das die Anfangsadresse eines Unterprogramms definiert, auf das der Prozessor abzweigen soll, wie diese Adresse mit 20 Bits zum Speichersystem 102 übertragen wird, um das erste Wort des angegebenen Unterprogramms zu lesen, und wie die Adresse, die sich im Programmzähler des Prozessors bei Empfang des Zweiwortbefehls befindet, in zwei Datenwörter mit 16 Bits umgewandelt und für eine zeitweilige Speicherung zum Speichersystem 102 übertragen wird.
Die Beschreibung beginnt mit den folgenden Annahmen: 1) Der Prozessor hat das erste Wort eines Befehls der in Fig. 8 gezeigten Art aufgenommen und in die AMU-Einheit 203 eingegeben; 2) das AC-Register 506 in Fig. 5 enthält das erste (obere) Wort des Befehls; 3) das Speicheradressenregister (MAR) 505 enthält die Adresse des nächsten Wortes des Zweiwortbefehls; 4) der Programmzähler ist das Register RO der Zwischenregister 504 und dieses Register RO enthält die nächste Adresse, die der im Augenblick im MAR-Register 505 gespeicherten Adresse folgt. Diese nächste Adresse wird mit MAR+1 bezeichnet. Sie wird anschließend die Rückkehradresse genannt.
Es 1st bereits erwähnt worden, daß die bei Jeder Operation durchgeführte AMU-Funktion durch Signale gesteuert wird, die der PL-Bus an die Eingänge FO bis F6 anlegt. Die Eingänge FO
809810/0917
bis F3 nehmen die Signale auf, die das bei jeder Operation beteiligte, spezielle Zwischenregister 504 (RO bis R9, T) oder das AC-Register 506 angeben. Die an die Eingiinge F4 bis F6 angelegten Signale geben die logische und/oder arithmetische Funktion an, die die AMU-Einheit ausführen soll.
Fig. 9 und 10 zeigen zusammen die Funktionen, die aufgrund der verschiedenen, an die F-Adern angelegten Kombinationen von Signalen ausgeführt werden können. In Fig. 10 sind die Funktionen in acht Gruppen 0 bis 7 unterteilt, die je durch die binären Eingangssignale auf den Adern F4 bis F6 bezeichnet werden. Demgemäß gibt eine binäre 0 (000) die Funktiongruppe 0 an und eine binäre 7 (111) die Funktionsgruppe 7. Jede Funktionsgruppe in Fig. 10 enthält drei R-Gruppen (1, 11, 111). Die Bezeichnung der R-Gruppe wird durch die an die Adern FO bis F3 angelegten Signale gesteuert. Jede R-Gruppe innerhalb einer F-Gruppe gibt eine unterschiedliche AMU-Operation oder Kombination von Operationen an.
Für ein Verständnis jeder von der AMU-Einheit ausgeführten Mikrofunktion ist es erforderlich, daß die an die F-Adern angelegten Signale, die an die AMU-Einheit aus dem CM-Speicher 205 angelegten K-Eingangssignale und der Binärwert des CI-Eingangs angegeben werden. Dieses letztgenannte Signal ist der Übertragseingang der integrierten Schaltung für die Ordnung Null der AMU-Einheit. Diese Informationsteile sind in den nach-
809810/0917
ORIGINAt
- 34 -
folgenden Absätzen für Jede Operation angegeben.
Eg wurde bereits gesagt, daß der augenblickliche Zustand der AMU-Einheit derai-t ist, daß das AC-Register 506 das erste Wort des empfangenen Zweiwortbefehls gemäß Fig. 8 speichert, daß das MAR-Register. die Adresse des zweiten Wortes des Befehls gemäß Fig. 8 beinhaltet, und daß das Zv/ischenregister RO (der Programmzähler) eine Adresse MAR+1 speichert, die die nächste Adresse nach der augenblicklich im MAR-Register gespeicherten Adresse ist. Das erste Wort des Befehls im AC-Register wird zum Ausgang D der AMU-Einheit geführt. Die am weitesten links stehenden acht Bits dieses Wortes sind das Bit BA zuzüglich des Operationscode, und diese acht Bits werden über den D-Bus 214 zum Eingang 231 der MCU-Einheit 208 geführt. Daraufhin gibt die MCU-Einheit Aclressensteuersignale über den Weg 217 zum Mikrospeicher 209. Der Mikrospeicher liest daraufhin das an der adressierten Speicherstelle gespeicherte Mikrowort aus und gibt es an den UD-Bus 219. Diese Information wird im Durchlaufregister 210 gespeichert. Von dort wird sie zum PL-Bus 225 gegeben, der zum F-Eingang der AMU-Einheit sowie zur Steuerlogik 226 führt. Außerdem erstreckt sich der PL-Bus zu den EMIT-Eingängen 0 bis 3 der Multiplexer 206 und 207.
Der RM-Speicher 204 und der CM-Speicher 205 werden durch Signale auf den EMIT-Adern 0 bis 3 adressiert und lesen den Inhalt der
809810/0917
ORIGINAL INSPECTED
adressierten Speicherstellen je nach Bedarf an don I- land K-Eingang der AMU-Einheit aus. Dor CM-Speicher und der K-Eirigang werden bei jeder AMU-Operation benutzt. Der RM-Speicher v/ird nur bei gewählten Operationen verwendet. Viele der AMU-Operatlomen erfordern eine 1 oder eine 0 als Übertragseingangssignal (CI). Das CI-Signal wird vom Ausgang der Steuerlogik 226 unter Steuerung von Signalen auf dem PL-I3us zugeführt. Der Wert des CI-Signals wird für jede der nachfolgend beschriebenen AMU-Operationen angegeben.
Schritt 1
Beim Empfang des ersten 16-Bit-V/ortes des Zweiwortbefehls gemäß Fig. 8 werden die am weitesten links stehenden acht Bits zur MCU-Einheit 208 geführt, welche den Mikrospeicher 209 über den Weg 217 adressieren und veranlassen, das Mikrowort in der adressierten Speicherstelle auszulesen. Das CI-Signal ist zu diesem Zeitpunkt eine 1, die K-Eingangssignale vom CM-Speicher sind alle 1-Werte und die an die Adern FO bis F6 angelegten Signale sind 010, 0100. Gemäß Fig. 9 geben die Bits 010 (binär 2) die Funktionsgruppe (F) 2 an. Die Bits 0100 geben das Register R4 der Registergruppe (R) 1 an. Gemäß Fig. 9 bedeuten eine F-Gruppe 2 und eine R-Gruppe 1 (Rn jetzt = R4) eine Operation, bei der der Inhalt des AC-Registers durch eine UND-Funktion mit dem K-Eingangssignal verknüpft wird· Vom Ergebnis der UND-Operation wird eine 1 subtrahiert. Dann wird der Wert
809810/0917
- 36 -
« I/
des Übertrages ignal.s (eine 1) addiert und das Ergebnis in das Register Rh eingegeben. Das CI--Signal 1 und der Wert -1 lösche;. sich aus, so daß das Ergebnis der Operation darin bestellt, daß der Inhalt des Registers AC durch eine UND-Funktion mit nur 1-Werten verknüpft v/ird und das Ergebnis in dan Register R4 gegeben wird. Die UND-Verknüpfung des Inhaltes von AC mit nur 1-Werten ergibt wiederum den Inhalt von AC. Daher wird als Gesamtergebnis dieser Operation der Inhalt des AC-Registeri- im Register R4 abgelegt.
Der Inhalt der verschiedenen Register der AMU-Einheit nach der Ausführung der ersten Mikrofunktion ist wie folgt: Das AC-Register enthält das erste Befehlswort mit 16 Bits gemäß Fig. 8. Das MAR-Register enthält die Adresse des zweiten Befehlsv/ortes gemäß Fig. 8, RO enthält die Adresse MAR+1, R4 enthält das erste Befehlswort, welches es gerade vom AC-Register erhalten hat.
Schritt 2
Die MCU-Einheit 208 geht Jetzt auf die nächste Mikrospeicheradresse weiter, und zwar unter Steuerung einiger Bits im Hikrowort, das während des Schrittes 1 aus dem Mikrospeicher 209 gelesen worden ist. Diese Bits werden an den AC-Eingang der MCU-Einheit angelegt. Diese neue MikroSpeicheradresse wird durch die MCU-Einheit zum Mikrospeicher geführt, um das nächste Mikrowort auszulesen. Dieses Wort gibt die Jetzt auszuführende Mikro-
809810/0917
funktion an, indem Signale an den PL-Bus gegeben werden, wodurch die folgenden Bits an die AIIU-Einheit geliefert werden: CI -t 0, K = nur Null-Werte, F =: 010, 1101. Gemäß Fig. 9 geben die Bits 010 die Funktionsgruppe 2 an. Die Bits 1101 geben die Registergruppe 1 und das AC-Regiöter an. Gemäß Fig. 9 besagt die Mikrofunktion für die F-Gruppe 2 und die Registergruppe 1, wobei Rn das AC-Register ist, daß der Inhalt des AC-Registers durch eine UND-Verknüpfung mit nur O-Werten zu kombinieren ist, so daß man als Ergebnis 0 erhält, daß eine -1 subtrahiert und ein CI-Signal 0 addiert und das Ergebnis in das Register AC gegeben wird. Das Endergebnis dieser Operation besteht darin, daß eine -1 in dem Register AC abgelegt wird. Der Wert -1 wird binär durch nur 1-Werte repräsentiert, so daß das Register AC jetzt nur 1-Werte enthält.
Der augenblickliche Zustand der verschiedenen Register der AMU-Einheit ist wie folgt: AC = -1 (nur 1-Werte), MAR = Adresse des zweiten Befehlswortes mit 16 Bits, RO - MAR+1, R4 = das erste Befehlswort mit 16 Bits.
Schritt 3
Die MCU-Einheit 208 empfängt die nächste Mikroadresse aus Informationen, die beim Schritt 2 aus dem Mikrospeicher gelesen worden sind. Diese neue Adresse wird an den Mikrospeicher gegeben, um das nächste Mikrowort auszulesen. Dadurch werden die folgenden Signale an die AMU-Einheit angelegt: CI = 0, K=O
809810/0917
ORIGINAL INSPECTED
für die Bits O bis 3 und 1 für die Bits 4 bis 19 (-16), F = 101, 1101. Gemäß Fig. 9 geben die Bits 101 die Funktionsgruppe 5 und die Bits 1101 die Registergruppe 1 und das AC-Register an. Die angegebene Mikrofunktion ist in Fig. 9 für die Funktionsgruppe 5 und die Registergruppe 1 gezeigt. Die am weitesten links stehende Operation kann unbeachtet bleiben, da es sich um eine O-Prüfung handelt, die für die vorliegende Operation bedeutungslos ist. Die am weitesten rechts stehende Funktion verknüpft den Wert des K-Eingangs mit AC durch eine UND-Operation und gibt das Ergebnis in das AC-Register ein. Das AC-Register enthält im Augenblick nur 1-Werte (eine -1). Der K-Eingang ist -16, nämlich O-Werte in den Bitpositionen 0 bis 3 und 1-Werte in den Bitpositionen 4 bis 19. Das Ergebnis dieser UND-Operation besteht darin, daß eine -16 in dem AC-Register abgelegt wird. Es wird später erläutert, wie diese -16 im Register AC benutzt wird, um eine Speicheradressenstelle zur Aufnahme einer Rückkehradresseninformation zu definieren.
Der augenblickliche Inhalt der verschiedenen Register in der AMU-Einheit ist: AC = -16, MAR = Adresse des zweiten Befehlswortes, RO = MAR+1, R4 = das erste Befehlswort mit 16 Bits.
Schritt 4
Die nächste Mikrowortadresse wird der MCU-Einheit durch den Mikrospeicher v/ährend der Ausführung des Mikrobefehls gemäß
609810/0917
"original inspected
Schritt 3 zugeführt. Diese neue Mikroadres.se wird an den Mikrospeicher angelegt, um den Inhalt des neu adressierten Wortes auszulesen. Es werden dann die folgenden Signale an die AMU-Einheit gegeben; CI = O, K= nur 1-Werte, F = 000, 0110. Gemäß Fig· 9 geben die Bits 000 die Funktionsgruppe 0 an. Die Bits 0110 geben das Register R6 der Registergruppe 1 an. Entsprechend Fig. 9 besagt die angegebene Funktion für die Funktionsgruppe und die Registergruppe 1, daß der Inhalt des Registers R6 zum Inhalt des Registers AC addiert, durch eine UND-Funktion mit nur 1-Werten verknüpft und das Ergebnis in die Register R6 und AC eingegeben wird. Das Register AC enthält im Augenblick -16, so daß die durchgeführte Mikrofunktion ergibt, daß R6 -16 in die Register R6 und AC gegeben wird. Das Register R6 wird für eine Speicheradressenspeicherung benutzt und hat vorher eine bestimmte, Hinv/eisadresse genannte Speicheradresse enthalten, deren spezieller Wert in Verbindung mit der vorliegenden Erfindung ohne Bedeutung ist. Es genügt, festzustellen, daß bei der im Augenblick beschriebenen Operation der Wert 16 von der Hinweisadresse abgezogen wird, wobei der Wert -16 vom Register AC erhalten wird. Die neue Hinweisadresse ist um 16 kleiner als die vorhergehende Hinweisadresse und wird in die Register R6 und AC eingegeben. Die sich jetzt in den Registern R6 und AC befindende Adresse ist die neue Hinweisadresse.
Die verschiedenen Register in der AMU-Einheit speichern nach Durchführung der gerade beschriebenen Mikrofunktion die folgenden
809810/0917
Informationen: AC = Hinweisadresse; MAR = Adresse des zweiten Befehlswortes gemäß Fig. 8; RO = MAR+1; R4 = das erste Befehlswort mit 16 Bits gemäß Fig. 8; R6 = Hinweisadresse.
Schritt 5
Die MCU-Einheit 208 nimmt die nächste Mikroadresse auf und gibt sie an den ROM-Mi kr ο spei eher 209. Das neu adressierte Wort wird ausgelesen und an die Busse UD und PL angelegt. Die AMU-Einheit enthält jetzt die folgenden Informationen: CI = 1; K = nur 1-Werte; F = 010, 0001. Gemäß Fig. 9 geben die F-Bits 010 die Funktionsgruppe 2 an. Die Bits 0001 geben das Register R1 und die Registergruppe 1 an. Entsprechend Fig. 9 besteht für die Funktionsgruppe 2 und die Registergruppe 1 die angegebene Funktion darin, daß der Inhalt des Registers AC durch eine UND-Operation mit nur 1-Werten verknüpft wird, daß eine -1 und eine +1 addiert werden, und daß das Ergebnis in das Register R1 gegeben wird. Da eine -1 und ein CI-Wert von 1 sich auslöschen, kann die Operation auch so angegeben werden, daß der Inhalt des Registers AC in das Register R1 gegeben wird.
Die verschiedenen Register der AMU-Einheit enthalten jetzt die folgenden Informationen: AC = Hinweisadresse; MAR = Adresse des zweiten Befehlswortes; RO = MAR+1; R4 = erstes Befehlswort des 16-Bits; R6 = Hinweisadresse; R1 = Hinweisadresse·
809810/0017
•κ
Schritt 6
Die MCU-Einheit wird weitergeschaltet und adressiert das nächste, aus dem Mikrospeicher zu lesende Wort. Nach dem Auslesen dieses Wortes und Anlegen an die Busse UD und PL werden die folgenden Informationen an die AMU-Einheit gegeben: CI = 0; K = nur O-Werte; F = 000, 0100. Fig. 9 gibt an, daß die Bits 000 die Funktionsgruppe 0 und die Bits 0100 das Register R4 der Registergruppe 1 bedeuten. Diese Funktion ist in Fig. 9 gezeigt, und, da K und CI gleich 0 sind, läßt sich die Funktion einfach dadurch angeben, daß der Inhalt des Registers R4 in das Register R4 sowie in das Register AC gegeben wird. Das Register R4 enthält das erste Befehlswort mit 16 Bits, und bei dieser Operation wird dieses Wort zurück in das AC-Register gegeben. Es wurde zu Anfang angenommen, daß dieses erste Worte im AC-Register war. Es wurde dann zu Beginn der im Augenblick beschriebenen Operationsfolge zum Register R4 übertragen und jetzt zurück in das AC-Register gegeben.
Die verschiedenen AMU-Register enthalten jetzt die folgenden Informationen: AC = das erste Befehlswort mit 16 Bits; MAR = die Adresse des zweiten Wortes; RO = MAR+1; R4 = das erste Befehlswort mit 16 Bits; R6 = Hinweisadresse; R1 = Hinweisadresse·
809810/0917
Schritt 7
Die MCU-Einheit wird während der Ausführung der Mikrofunktion gemäß Schritt 6 weitergeschaltet und das nächste Mikrov/ort wird aus dem Mikrospeicher gelesen und an die Busse UD und PL angelegt. Dadurch gelangen die folgenden Informationen an die AMU-Einheit: CI = 0; K = nur O-Werte; F = 000, 1010. Gemäß Fig. 9 geben die Bits 000 die Funktionsgruppe 0 und die Bits 1010 das T-Register und die Registergruppe 2 an. Anhand von Fig. 9 und mit CI und K=O läßt sich die angegebene Funktion für die Funkt ions gruppe 0 und die Registergruppe 2 vereinfacht dadurch angeben, daß Signale am Eingang M der AMU-Einheit in das T-Register geführt werden.
Die Einzelheiten dieser Operation lassen sich am besten unter Bezugnahme auf Fig. 4 und 5 verstehen. Gemäß Fig. 5 wird der Inhalt des AC-Registers 506 kontinuierlich über den Ausgangspuffer 508 zum D-Ausgang der AMU-Einheit geführt. Dies gilt, weil der ED-Eingang des Ausgangspuffers 508 für die im Augenblick beschriebene Folge von Operationen kontinuierlich betätigt ist. Die AMU-Einheit enthält gegenwärtig das erste Befehlswort mit 16 Bit in seinen Bitpositionen 0 bis 15. Gemäß Fig. 4 wird dieses Wort mit 16 Bits in den beiden AMU-Abschnitten AMUA1 und AMUA2 gespeichert. In den beiden Abschnitten ist das Befehlswort mit 16 Bits im AC-Register gespeichert, und Ausgangssignale, die dieses Wort darstellen, erscheinen kontinuierlich am Ausgang
809810/0917
D der beiden Abschnitte. Der Ausgang D für die Bits O bis 3 führt vom Abschnitt AMUA1 zum Eingang M des Abschnittes AMUB, der den AMU-Bitpositionen 16 bis 19 zugeordnet ist. Anders gesagt, die Bits 0 bis 3 des AC-Registers für den Abschnitt AMUA1 erscheinen immer am Ausgang D des Abschnittes AMUA1 und werden dann immer an den Eingang M des Abschnittes AIIUB angelegt.
Die im Augenblick beschriebene Mikrofunktion gibt an, daß die Signale am Eingang M Jedes AMU-Abschnittes in das T-Register des gleichen Abschnittes einzugeben sind. Der Abschnitt AMUB empfängt im Augenblick die Bits 0 bis 3 des ersten Wortes an seinem Einga ng M vom Abschnitt AMUA1, und demgemäß werden bei der Ausführung dieser Mikrofunktion diese Bits in das T-Register des Abschnittes AI-IUB eingegeben. Gemäß Fig. 8 sind diese Bits die vier höchststelligen Bits des Adressenwortes mit 20 Bits, das zu diesem Zeitpunkt gebildet werden soll. Die Eingänge M der Abschnitte AMUA1 und AMUA2 nehmen Jetzt die über den Datenbus vom Speichersystem 102 zum Prozessor übertragenen Informationen auf. Das Speichersystem wird im Augenblick durch das MAR-Register adressiert, das die Adresse des zweiten Wortes des Zweiwortbefehls enthält. Vor der Ausführung dieser Mikrofunktion ist von der Steuerlogik 226, die unter Steuerung des Mikrospeichers arbeitet, ein Lesesignal über den Speichersteuerbus 112 übertragen worden. Dieses Lesesignal veranlasst das Speichersystem 102, das durch den Inhalt des MAR-Registers adressierte V/ort auszulesen. Zu diesem Zeltpunkt wird also das
809810/0917
-IA-
zweite Wort mit 16 Bits über den Datenbus 110, den Daten-Sendeempfänger 201 und den Weg 223 aufgenommen und an den M-Eingang der Abschnitte AMUA1 und AMUA2 angelegt. Die 16 Bits dieses Wortes werden dann in die T-Register der beiden AMU-Abschnitte eingegeben. Gemäß Fig. 8 stellt dieses zweite Wort die 16 niedrigststelligen Bits des in diesem Zweiwortbefehl enthaltenen Adressenwortes mit 20 Bits dar.
Wenn die Ausführung dieses Mikrobefehls beendet ist, speichert das T-Register des AMU-Abschnittes AMUB die vier höchststelligen Bits, nämlich die Bits 16 bis 19, des Adressenwortes mit 20 Bits. Das T-Register der übrigen beiden AMU-Abschnitte speichert die 16 niedriststelligen Bits, nämlich die Bits 0 bis 15. Demgemäß hat der Prozessor zwei aufeinanderfolgende Wörter aus dem Speichersystem 102 gelesen, an die AMU-Einheit als Wörter mit 16 Bits angelegt und die zutreffenden Abschnitte dieser beiden Wörter in ein einziges Adressenwort, mit 20 Bits umgewandelt, das jetzt im T-Register gespeichert ist.
Nach Ausführung der gerade beschriebenen Mikrofunktion enthalten die Register der AMU-Einheit die folgenden Informationen: AC = das erste Befehlswort mit 16 Bits; MAR = die Adresse des zweiten Befehlswortes; RO = MAR+1; Rh = das erste Befehlswort mit 16 Bits; R6 = die Hinweisadresse; R1 = die Hinweisadresse; T = das neu gebildete Adressenwort mit 20 Bits.
809810/0917
Schritt 8
Das neue Wort wird jetzt unter Steuerung der MCU-Einheit 208 aus dem Mikrospeicher 209 gelesen. Durch Anlegen dieses Wortes an die Busse UD und PL erhält die AMU-Einheit die folgenden Signale: CI = 1; K= nur O-Werte; F = 001, 0001. Gemäß Fig. 9 geben die Bits 001 die Funktionsgruppe 1 und die Bits 0001 das Register R1 und die Registergruppe 1 an. Gemäß Fig. gibt für K mit nur O-Werten die linke Funktion an, daß der Inhalt des Registers R1 in das Register MAR gegeben wird. Da CI = 1 und K=O gibt die rechte Funktion an, daß der Inhalt des Registers R1 um 1 zu erhöhen und das Ergebnis in das Register R1 wieder einzugeben ist.
Das Register R1 enthielt vor der Ausführung dieser Mikrofunktion die Hinweisadresse. Die Ausführung der Mikrofunktion bewirkt, daß die Hinweisadresse aus dem Register R1 in das Register MAR gegeben wird. Darüber hinaus wird die Hinweisadresse um 1 erhöht und in das Register R1 gegeben.
Die verschiedenen Register in der AMU-Einheit enthalten jetzt die folgenden Informationen: AC = erstes Befehlswort mit 16 Bits; MAR = Hinweisadresse; RO = ursprünglicher Inhalt von MAR+1; R4 = erstes Befehlswort mit 16 Bits; R6 = Hinweisadresse; R1 = Hinweisadresse +1; T = neu gebildetes Adressenwort mit 20 Bits.
809810/0917
Γ ο
Schritt 9
Es wird jetzt das nächste Wort des gerade beschriebenen Mikrounterprograrams unter Steuerung der MCU-Einheit aus dem Mikrospeicher gelesen. Beim Anlegen dieses Wortes an den PL-Bus werden der AMU-Einheit die folgenden Signale zugeführt: CI = 0; K = nur O-Werte; F = 000, 0000. Gemäß Fig. 9 geben die F-Bits 000 die Funktionsgruppe 0 und die F-Bits 0000 das Register RO der Registergruppe 1 an. Sowohl CI als auch K sind jetzt 0, so daß die angegebene Funktion in Fig. 9 für die F-Gruppe 0 und die R-Gruppe 1 vereinfacht dadurch angegeben werden kann, daß der Inhalt des Registers RO in das Register RO sowie in das Register AC eingegeben v/ird. RO ist der Programmzähler, und bei Empfang des Zweiwort-Verzweigungsbefehls gemäß Fig. 8 speichert RO die Speicheradresse, die unmittelbar nach der Adresse im MAR-Register an den Speicher anzulegen war. Die Adresse im Register RO muß aufbewahrt werden, da der Prozessor auf diese Adresse nach Ausführung des Unterprogramms zurückkehrt, das durch das jetzt im T-Register befindliche Adressenwort mit 20 Bits angegeben wird. Die Adresse im Register RO, die aufbewahrt werden muß und auf die der Prozessor zurückkehren muß, wird nachfolgend Rückkehradresse genannt.
Die Register der AMU-Einheit enthalten jetzt die folgenden Informationen: AC = Rückkehradresse (alter Wert MAR+1); MAR = Hinweisadresse; RO = Rückkehradresse; Rh = das erste Befehls-
809810/0917
ORIGINAL INSPECTED
wort mit 16 Bits; R6 = Hinweisadrecse; R1 = Hinweisadresse +1; T = das neu gebildete Adressenwort mit 20 Bits.
Schritt 10
Es wird jetzt unter Steuerung der MCU-Einheit das nächste Wort des MikroUnterprogramms aus dem Mikrospeicher gelesen und die folgenden Signale werden an die AMU-Einheit angelegt: CI = 1 j K = 1 in den Bitpositionen 0 bis 3 und 0 in den Positionen h bis 19; P = 010, 1111. Aus Fig. 9 ergibt sich, daß die F-Bits 010 die Funktionsgruppe 2 und die Bits 1111 das Register AC der Registergruppe 3 angeben. Entsprechend der Darstellung in Fig. 9 für die F-Gruppe 2 und die Registergruppe 3 kann, da der CI-Wert 1 den Wert -1 auslöscht, die angegebene Funktion vereinfacht so dargestellt werden, daß die Eingangswerte I und K durch eine UND-Funktion verknüpft v/erden und das Ergebnis in das AC-Register eingegeben wird.
Die jetzt durchgeführte Funktion läßt sich am besten unter Bezugnahme auf Fig. k verstehen. Unmittelbar vor dieser Operation hat das AC-Register die RUckkehradresse mit 20 Bits enthalten, auf die der Prozessor schließlich zurückkehrt. Die vier höchststelligen Bits dieser RUckkehradresse sind im Abschnitt ANUB gespeichert und erscheinen an dessen Ausgang D. Bei Ausführung dieser Mikrofunktion wird ein Signal L an die Ader IGB in Fig. 4 angelegt. Dieses Signal L betätigt das Gatter 401 und stellt eine Signalverbindung zwischen dessen Eingang und Ausgang her,
809810/0917
die zum I-Eingang des Abschnittes AMUA1 führt. Das Signal L auf der Ader IGB wird außerdem an den Eingang CE des Speichers RM angelegt, um dessen Ausgang vom I-Eingang des Abschnittes AMUA1 zu isolieren· Der Einging des Gatters 401 1st mit dem
D-Ausgang des AMU-Abschnlttes AMUB verbunden.
ri ■ ...
Die Jetzt durchgeführte Funktion besteht/darin, daß die Eingangssignale I und K der AMU-Einheit durch eine UND-Verkniipfung verbunden werden und das Ergebnis dieser Verknüpfung in das AC-Reglster gegeben wird. Das Eingangssignal K wird vom CM-Spelcher 203 geliefert, und die zu diesem Zeltpunkt abgegebene Information ist ein Huster von 1-Werten in den Bitpositionen 0 bis 3 und O-Verten für die Bits 4 bis 19. Das Ergebnis der UND-Operation für die Bits 4 bis 19 ist eine O. Der AMU-Abschnitt AMUA1 nimmt an seinem Eingang K nur 1-Werte und an seinem Eingang I das Ausgangssignal D des Abschnittes AWB auf, da das Gatter zu diesem Zeitpunkt betätigt ist« Dies bewirkt, daß der Eingang I des Abschnittes AMUA1 die vier, Im Augenblick la Abschnitt AMUB gespeicherten Bits empfängt. Diese vier Bits werden durch eine UND-Verknüpfung mit den vier 1-Werten verbunden, die durch den Speicher CM am Eingang K geliefert werden, und das Ergebnis wird in den Bitpositionen 0 bis 3 des Registers AC der AMU-Einheit gespeichert.
Eine Zusammenfassung der gerade beschriebenen Operation ergibt folgendes: Das Register AC enthielt zu Beginn der Operation die RUckkehradresse mit 20 Bits. Während der Operation sind die
809810/0917
" ORIGINAL INSPECTED
SZ
vier höchststelligen Bits dieser 20-Bit-Adresse vom 4-Bit-Register AC des Abschnittes AMUB über das Gatter 401 zum Eingang I des Abschnittes AMUA1 übertragen worden. Von dort werden die vier Bits in das 4-Bit-Register AC des Abschnittes AMUA1 eingegeben. Die Eingangssignale K der Abschnitte AMUB und AMUA2 sind während dieser Operation O, und die UND-Verknüpfung der Eingangssignale K mit den EingangsSignalen I ergibt eine O in den Bitpositionen 4 bis 19. Die O-Werte dieser Bitpositionen werden im Register AC jeder dieser AMU-Abschnitte gespeichert.
Die Register der AMU-Einheit enthalten jetzt die folgenden Informationen: Das Register AC enthält die vier höchststelligen Bits der Rückkehradresse in seinen Bitpositionen 0 bis 3 und O-Werte in den Bitpositionen 4 bis 19. MAR = Hinweisadresse; RO = Rückkehradresse; R4 = erstes Befehlswort mit 16 Bits; R6 = Hinweisadresse; R1 = Hinweisadresse +1; T = die neue Adresse mit 20 Bits.
Schritt 11
Der Mikrospeicher 209 geht unter Steuerung der MCU-Einheit auf das nächste Wort über und liest dieses Wort aus. Dadurch werden die folgenden Signale an die AMU-Einheit angelegt: K = nur 0-Werte; CI = 0; F = 110, 1101. Gemäß Fig. 9 geben die Bits 110 die Funktionsgruppe 6, die Bits 1101 das AC-Register und die Registergruppe 1 an. Entsprechend Fig. 9 definieren die Funk-
809810/0917
tionsgruppe 6 und die Registergruppe 1 zwei Operationen. Die linke Operation nimmt das Ubertrags-Eingangssignal, das eine O ist, auf und verknüpft es sequentiell durch eine ODER-Funktion mit einem Wert, der durch eine UMD-Verknüpfung zwischen dem Inhalt des Registers AC und dem Eingangssignal K gewonnen worden ist. Das Ergebnis erscheint als einzelnes Bit am Übertragsausgang. Dieses Bit ist jetzt 0, da sowohl CI als auch K 0 sind. Die rechte Funktion kann vereinfacht werden, da K gleich 0 ist. Die Funktion reduziert sich darauf, daß AC in AC eingegeben wird. Das ist auch als "No Op"-Operation bekannt.
Zur gleichen Zeit, zu der diese "No Op"-Operation durchgeführt wird, bewirkt das im Augenblick aus dem Mikrospeicher 209 gelesene Wort, daß ein Schreibsignal über den Speichersteuerbus 112 zum Speichersystem 102 übertragen wird. Dieses Signal schreibt den augenblicklichen Inhalt des Registers AC in diejenige Speicheradressenstelle, die durch das Wort im Register MAR angegeben wird. Der Adressenbus 111 empfängt jetzt die Hinweisadresse vom Register MAR. Der Datenbus 110 nimmt die 16 niedriststelligen Bits aus den Registern AC der AMU-Abcchnitte AMUA1 und AMUA2 auf. Diese Bits stellen die vier höchststelligen Bits der Rückkehradresse in den Bitpositionen O bis 3 sowie O-Werte in den Bitpositionen 4 bis 15 dar.
Die Ausführung dieser Einschreiboperation ändert den Inhalt der Register in der AMU-Einheit nicht, so daß sie die gleiche Information wie bereits am Ende des Schrittes 10 beschrieben, enthalten. 809810/0917
I Λ
Schritt 12
Der Mikrospelcher wird jetzt unter Steuerung der MCÜ-Einhelt weitergeschaltet, und das nächste Wort des Mikrounterprogranae wird ausgelesen und an die Busse UD und PL angelegt. Dadurch gelangen die folgenden Signale an die AMU-Elnhelts K » nur O-. ;' Werte; CI * 1} F * 001, 0001. Gemäß Fig. 9 geben die F-Bite 001 die Funktionsgruppe 1 an. Die F-Bite 0001 geben die Registergruppe 1 und das Register R1 an. Gemäß Fig. 9 definieren die Funktionsgruppe 1 und die Registergruppe 1 zwei Operationen. Bei der linken Operation wird im Effekt der Inhalt des Register« R1 in das Register HAR eingegeben. Die linke Operation vergrößert den Inhalt des Registers R1 um 1 und gibt das Ergebnis zurück in das Register R1.
Die Information, die das Register MAR vom Register R1 aufnimmt, ist die Hinweisadresse +1. Dies 1st die nächste, zum Speichersystem zu übertragende Adresse, die um 1 größer ist als die vorher im Register MAR gespeicherte Hinweisadresse· Die jetzt in das Register MAR gegebene Adresse wird benutzt, um die 16 niedriststelligen Bits der RUckkehradresse in das Speichersystem zu schreiben. Der nach dieser Operation Im Register R1 stehende Wert ist die Speicheradresse, die der im Register MAR gespeicherte« Adresse als nächstes folgt. Sie wird Hinweisadresse +2 genannt·
Die Register der AMU-Einheit enthalten Jetzt die folgenden Informationen: AC = die vier höchststelligen Bits des Rückkehr-
809810/0917
2739575
adressenwortes in den Bitponitionen 0 bis 3 und O-Werte in den Bitpositionen 4 bis 15. MAR = Hinweicadresse +1; RO = Rückliehradressc; RA - erstes Befehlswort mit 16 Bits;" R6 = Ilinweisadrcsse; R1 = Hinweisadresse +2; T = neues Adressenwort mit 20 Bits.
Schritt 13
Der Mikrospeicher geht jetzt auf das nächste Wort unter Steuerung der MCU-Einheit weiter. Das Anlegen dieses Wortes an die Busse UD und PL bewirkt, daß der AMU-Einheit die folgenden Signale zugeführt werden: K = nur O-Werte; CI = 0; F = 000, 0000. Gemäß Fig. 9 geben die F-Bits 000 die Funktionsgruppe 0 an. Die F-Bits 0000 geben die Registergruppe 1 und das Register RO an. Fig. 9 gibt für die Funktionsgruppe 0 und die Registergruppe 1 die Operation an. Da sowohl K als auch CI gleich 0 sind, läßt sich die Funktion vereinfacht so darstellen, daß der Inhalt des Registers RO sowohl in das Register RO als auch in das Register AC eingegeben wird. Das Register RO enthält die Rückkehradresse mit 20 Bits, so daß bei dieser Operation die Rückkehradresse in das Register AC eingegeben wird.
Die verschiedenen Register der AMU-Einheit enthalten jetzt die folgenden Informationen: AC = Rückkehradresse; IiAR = Hinwoisadresse +1; RO = RückkehradreRse; R4 = erstes Befehlswort mit 16 Bits; R6 - Hinweisadresse; R1 = Hinweisadresse +2; T = neue Adresse mit 20 Bits.
809810/0917
INSPECTED
( COPY
Schritt 14
Der Mikrospeicher 209 wird Jetzt unter Steuerung der MCU-Einheit auf das nächste Wort weitergeschaltet. Dieses Wort wird ausgelesen und an die Busse UD und PL angelegt. Dann empfängt die AMÜ-Einheit die folgenden Steuersignale: K = nur O-Werte; CI = 0; F = 110, 1101. Gemäß Fig. 9 geben die F-Bits 110 die Funktionsgruppe 6 und die F-Bits 1101 die Registergruppe 1 und das Register AC an. Entsprechend Fig. 9 definieren die Funktionsgruppe 6 und die Registergruppe 1 zwei Operationen. Die linke Operation reduziert sich auf 0, da sowohl CI als auch K 0 sind. Die rechte Operation reduziert sich darauf, daß AC in AC geht, da K gleich 0 ist. Dies ist eine "No Op"-0peration.
Der Prozessor führt jetzt eine Schreiboperation durch Anlegen eines Schreibsignals an eine Ader des Speichersteuerbus 112 durch. Das Register MAR enthält im Augenblick die Hinweisadresse +1. Das Anlegen des Schreibsignals an den Spe icher Steuerbus veranlasst das Speichersystem, die 16 niedriststelligen Bits der Rückkehradresse aus dem Register AC in die durch den Inhalt des Registers MAR angegebene Speicherstelle zu schreiben. Die vier höchststelligen Bits der Rückkehradresse sind bei der vorhergehenden Operation in die durch die Hinweisadresse angegebene Speicherstelle geschrieben worden. Die Rückkehradresse stellt diejenige Adresse dar, auf die der Prozessor zu einem späteren Zeitpunkt nach Ausführung des Unterprogramms zurückkehrt, das durch die neue Adresse mit 20 Bits im T-Register angegeben wird.
809810/0917
Die gerade beschriebene Operation ist eine "No (^"-Information, so daß der Inhalt der verschiedenen Register der AMU-Einheit unverändert gegenüber dem oben beschriebenen Inhalt bleibt.
Schritt 15
Der Mikrospeicher wird erneut unter Steuerung der MCU-Einheit weitergeschaltet, um das nächste Wort des Mikrounterprogramias auszulesen. Das Anlegen dieses Wortes an die Busse UD und PL bewirkt, daß der AMU-Einheit 203 die folgenden Signale zugeführt werden: K = nur O-Werte; CI = 1; F = 001, 1100. Gemäß Fig. 9 geben die F-Bits 001 die Funktionsgruppe 1 und die F-Bits 1100 die Registergruppe 1 und das Register T an.
Die Funktionsgruppe 1 und die Registergruppe 1 definieren in Fig. 9 zwei Funktionen. Vereinfacht besagt die linke Funktion, daß der Inhalt des Registers T in das Register MAR gegeben wird. Die rechte Funktion gibt an, daß der augenblickliche Inhalt des Registers T um 1 erhöht und das Ergebnis wieder in das Register T eingegeben wird.
Die neue, vom Speichersystem empfangene Adresse mit 20 Bits befand sich vor dieser Operation im Register T. Die Eingabe dieser Adresse in das Register MAR bereitet den Prozessor vor, so daß er das Speichersystem mit dieser neuen Adresse bei einer nachfolgenden Operation adressieren kann. Das Weiterschalten
809810/0917
ORIGINAL INSPECTED
~*5; 2739575
dor, Registers T um 1 bereitet den Prozessor darauf vor, daß er bei einer noch späteren Operation das Speichersystem mit einer Adresse adressieren kann, die der sich Jetzt im Register MAR befindlichen Adresse folgt.
Die verschiedenen Register der AMU-Einheit enthalten Jetzt die folgenden Informationen: AC = Rückkehradresse; MAR = neue Adresse mit 20 Bits; RO = Rückkehradresse; RU = erstes Befehlswort mit 16 Bits; R6 = Hinweisadresse; R1 = Hinweisadresse +2; T = neues 20-Bit-Adressenwort +1.
Schritt 16
Der Mikrospeicher wird weitergeschaltet und liest das nächste Wort des MikroUnterprogramms aus. Dann werden die folgenden Signale an die AMU-Einheit gegeben: K = nur O-Werte; CI = 0; F= 000, 1100. Gemäß Fig. 9 geben die F-Bits 000 die Funktionsgruppe 0 und die F-Bits 1100 die Registergruppe 1 und das Register T an. Gemäß Fig. 9 reduziert sich die für die F-Gruppe 0 und die R-Gruppe 1 angegebene Funktion darauf, daß der augenblickliche Inhalt des Registers T wieder in das Register T sowie in das Register AC eingegeben wird. Dadurch wird die neue 20-Bit-Adresse +1 im Register AC abgelegt.
Die verschiedenen Register in der AMU-Einheit enthalten jetzt die folgenden Informationen: AC = neue 20--Bit-Adresse +1; MAR = neue 20-Bit-Adresse; RO = RUckkehradresse; Rk = erstes Be-
80981 0/0917
fehlswort mit 16 Bits; R6 = Hinweisadresse; R1 = Hinweisadresse +2; T = neue 20-Bit-Adresse +1.
Schritt 17
Der Mikrospeicher 209 wird erneut weitergeschaltet und das nächste Wort des Mikrounterprogramins ausgelesen. Es gelangen die folgenden Signale an die AMU-Einheit: K = nur 1-Werte; CI = 1; F = 010, 0000, Entsprechend Fig. 9 geben die F-Bits 010 die Funktionsgruppe 2 und die F-Bits 0000 die Registergruppe 1 und das Register RO an. Entsprechend Fig. 9 kann mit den angegebenen Werten für K und CI die dargestellte Funktion für die F-Gruppe 2 und die R-Gruppe 1 vereinfacht werden, dahingehend, daß der augenblickliche Inhalt des Registers AC in das Register RO gegeben wird. Das Register RO ist der Prograimnzähler, und die bei dieser Operation in das Register RO gegebene Information ist die nächste Speicheradresse nach der im Augenblick im Register MAR gespeicherten Adresse.
Der Prozessor adressiert im Augenblick das Speichersystem mit dem 20-Bit-Adressenwort im Register MAR. Dies ist das Adressenwort, das in Form von zwei Datenwörtern mit je 16 Bit vom Speichersystem empfangen und durch die soeben beschriebenen Prozessoroperationen zu einem Adressenwort mit 20 Bits zusammengefügt worden ist. Diese neue 20-Bit-Adresse stellt einen sogenannten Unterprogrammsprung dar, wobei die Adresse diejenige
809810/0917
Speicherstelle angibt, auf die der Prozessor zur Durchführung des Unterprogramms abzweigen soll, dessen erstes Wort durch die neue 20-Bit-Adresse angegeben wird. Beim Empfang dieser Adresse beendet der Prozessor die durchgeführte Operation und schreibt die sich im Programmzähler RO befindende Adresse (die Rückkehradresse) in das Speichersystem. Dies ist durch übertragen der Rückkehradresse an das Speichersystem über den Datenbus in Form von zwei Datenwörtern mit je 16 Bits geschehen, wobei die vier höchststelligen Bits der Rückkehradresse sich im ersten Datenwort und die 16 niedriststelligen Bits sich im zweiten Datenwort befanden. Danach führt der Prozessor die neu empfangene 20-Bit-Adresse in das Register MAR und gibt in den Programmzähler RO diejenige Adresse ein, die als nächste der jetzt im Register HAR befindlichen Adresse folgt.
Der Prozessor ist jetzt bereit, mit der Verarbeitung des Unterprogramms zu beginnen, dessen erstes Wort durch das sich jetzt im Register MAR befindliche Wort adressiert wird.
Das Bauteil 203 ist mit AMU bezeichnet und wird in der Beschreibung und den Ansprüchen AMU oder arithmetische Einheit genannt. Es sei jedoch darauf hingewiesen, daß die das Bauteil 203 bildenden Ausrüstungen und Schaltungen wesentlich komplizierter als bei einer üblichen AMU-Einheit sind, die nur einfache arithmetische und logische Funktionen ausführt. Das Bauteil 203 weist alle diejenigen Ausrüstungen auf, die genauer in
809810/0917
r COPY
- 58 -
Fig. 5 dargestellt sind. Es enthält also die Zwischenregister RO-R9 und T, die Multiplexer 502, 503 sowie weitere Bauteile einschließlich des Arithmetik-Logik-Abschnittes 501, der übliche Arithinetik-Lcgik-Operationen sowie alle die in Fig. 6 gezeigten Operationen ausführt.
8098 10/0917
*3. Leerseite

Claims (4)

  1. BLÜMBACH . WES.^R · BERGEN · KCRAMFiR
    ZWIRNER · HIRSCH · BREHM 9739525
    PATENTANWÄLTE IN MÜNCHEN UND WIESBADtN
    Patentconsult Radeckestraße 43 8000 München 60 Telefon (089)885403/830604 Telex 05-2123'3 Cc.legra:r.nifi Patontconfult Patentconsult Sonnonberger Straße 43 6200 Wiesbaden Telefon (06121) 56Ϊ?·13/561998 Telex Γ)Μ8ό?37 Telegramme Paientconsiill
    Western Electric Company, Incorporated Dimmick, J.O. 6 Broadway . --—
    New York, N.Y. 10007, U.S.A.
    Patentansprüche
    Prozessor zur Erzeugung eines Adressenwortes mit m+n-Bits aus Datenwörtern mit m-Bits und zur Umwandlung eines Adressenwortes mit m+n-Bits in ein Wortformat mit m-Bits, wobei der Prozessor ein erstes Zentralprozessorelement zur Aufnahme von Wörtern mit m-Bits enthält, dadurch gekennzeichnet, daß der Prozessor ein zweites Zentralprozessorelement (AMUB) zur Aufnahme von Daten mit η-Bits aufweist, ferner einen ersten Bus (110) zur Eingabe eines ersten Wortes mit m-Bits in das erste Zentralprozessorelement (AMUA), und Schaltungen (214A, 301, 21AB) zur übertragung von n-Bits in η vorbestimmten Bitpositionen des eingegebenen Wortes aus dem ersten Zentralprozessorelement (ANUA) zum zweiten Zentralprozessorelement (AMUB),
    daß der erste Bus (110) ein zweites Wort mit m-Bits in das erste Zentralprozessorelement (AMUA) eingibt, und daß ein zweiter Bus (111) vorgesehen ist, um nachfolgend gleichzeitig die η-Bits aus dem zweiten Zentralpro-
    809810/0917 I
    München: R. Kramer Dipl.-Ing. · W. Weser Dipl.-Phys. Or. rer. net. · P. Hirsch Dipl.-Ing. · H. P. Brehm Dipl.-Chem. Dr. phil. naI. Wiesbaden: P. G. Blumbach Dipl.-Ing. · P. Bergen Dipl.-Ing. Dr. jur. · G. Zwirner Dipl.-Ing. Dipl · W.lng.
    ORIGINAL INSPECTED
    zessorelement (AMUB) und das zweite Wort mit m-Bits aus dem ersten Zentralprozessorelement (AMUA) zwecks Bildung eines Wortes mit m+n-Bits zu lesen.
  2. 2. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß die η-Bits aus dem ersten Zentralprozessorelement (AMUA) zum zweiten Zentralprozessorelement (AMUB) gleichzeitig mit der Eingabe des ersten Wortes mit m-Bits in das erste Zentralprozessorelement übertragen wird.
  3. 3. Prozessor nach Anspruch 1, gekennzeichnet durch einen ersten Eingang des ersten Zentralprozessorelementes (AMUA) zur Aufnahme von Wörtern mit m-Bits, einen ersten Ausgang des ersten Zentralprozessorelementes (AMUA), von dem die η-Bits über einen direkten Weg zu einem ersten Eingang des zweiten Zentralprozessorelementes (AI-IUB) gleichzeitig mit der Aufnahme des zweiten Wortes mit m-Bits am ersten Eingang des ersten Zentralprozessorelementes (AMUA) übertragen werden,
    und einen zweiten Ausgang jedes der Zentralprozessorelemente zur Abgabe der gleichzeitig aus den Zentralprozessorelementen als Wort mit m+n-Bits gelesenen Bits an einen Verbraucher.
    8U9810/0917
  4. 4. Prozessor nach Anspruch 3»
    gekennzeichnet durch einen Schreib-Lese-Speicher (RAH), der an den ersten Ausgang des ersten Zentralprozessorelementes (ANUA) und an einen ersten Ausgang des zweiten Zentralprozessorelementes (AMUB) angeschaltet ist,
    Schaltungen zum Einschreiben der sich gleichzeitig in den Zentralprozessorelementen befindlichen m+n-Informations- ; bits in eine gewählte Stelle des Speichers, einen zweiten Eingang der Zentralprozessorelemente, der mit einem Ausgang des Speichers verbunden ist, eine erste Einrichtung zur Eingabe von m+n-Informationsbite aus jeder gewählten Stelle des Speichers in die Zentralprozessorelemente über die zweiten Eingänge, und eine zweite Einrichtung (222) zum Anlegen der in den Zentralprozessorelementen vom Speicher aufgenommenen m+n-Informationsbits über die Adressenausgänge der Zentralprozessorelemente an den Adressenbus·
    5· Prozessor nach Anspruch A,
    dadurch gekennzeichnet, daß eine Arithmetik-Logik-Einrichtung (ALS 501) zur Ausführung gewählter Arithmetik-Logik-Operationen mit den m+n-lnformationsbits in den Zentralprozessorelementen zwecke Bildung eines neuen Wortes mit m+n-Bits vorgesehen ist, und
    809810/0917 #§
    ein Wandler zur Umwandlung des neuen Wortes mit m+n-Bits in zwei Wörter mit m-Bits,
    und daß der Wandler folgende Bauteile enthält: eine Einrichtung zur übertragung der η-Bits des neuen Wortes vom zweiten zum ersten Zentralprozessorelement; eine Einrichtung im ersten Zentralprozessorelement zur Kombination der Übertragenen η-Bits des neuen Wortes mit m-n-Informationsbits zur Bildung eines Datenwortes mit m-Bits; eine Einrichtung zur Zuführung des gebildeten Datenwortes vom ersten Ausgang des ersten Zentralprozessorelementes an den Datenbus;
    eine Einrichtung zur nachfolgenden Zuführung der m-Bits des neuen Wortes vom ersten Ausgang des ersten Zentralprozessorelementes als Datenwort an den Datenbus.
    809810/0917
DE2739525A 1976-09-03 1977-09-02 Rechner Expired DE2739525C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/720,417 US4090237A (en) 1976-09-03 1976-09-03 Processor circuit

Publications (2)

Publication Number Publication Date
DE2739525A1 true DE2739525A1 (de) 1978-03-09
DE2739525C2 DE2739525C2 (de) 1982-04-01

Family

ID=24893963

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2739525A Expired DE2739525C2 (de) 1976-09-03 1977-09-02 Rechner

Country Status (11)

Country Link
US (1) US4090237A (de)
JP (1) JPS5848944B2 (de)
BE (1) BE858224A (de)
CA (1) CA1082369A (de)
DE (1) DE2739525C2 (de)
ES (1) ES462082A1 (de)
FR (1) FR2363834A1 (de)
GB (1) GB1567536A (de)
IT (1) IT1086453B (de)
NL (1) NL7709694A (de)
SE (1) SE432312B (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4291370A (en) * 1978-08-23 1981-09-22 Westinghouse Electric Corp. Core memory interface for coupling a processor to a memory having a differing word length
US4309754A (en) * 1979-07-30 1982-01-05 International Business Machines Corp. Data interface mechanism for interfacing bit-parallel data buses of different bit width
US4467443A (en) * 1979-07-30 1984-08-21 Burroughs Corporation Bit addressable variable length memory system
US4346437A (en) * 1979-08-31 1982-08-24 Bell Telephone Laboratories, Incorporated Microcomputer using a double opcode instruction
US4434459A (en) 1980-04-25 1984-02-28 Data General Corporation Data processing system having instruction responsive apparatus for both a basic and an extended instruction set
US4733351A (en) * 1984-12-31 1988-03-22 Wang Laboratories, Inc. Terminal protocols
US4814976C1 (en) * 1986-12-23 2002-06-04 Mips Tech Inc Risc computer with unaligned reference handling and method for the same
US4799187A (en) * 1987-07-30 1989-01-17 Wang Laboratories, Inc. Memory address generator with device address type specifier
JPH03186928A (ja) * 1989-12-16 1991-08-14 Mitsubishi Electric Corp データ処理装置
JP3181307B2 (ja) * 1991-04-25 2001-07-03 株式会社東芝 命令処理装置
US5566308A (en) * 1994-05-25 1996-10-15 National Semiconductor Corporation Processor core which provides a linear extension of an addressable memory space
KR960704269A (ko) * 1994-05-25 1996-08-31 존 엠. 클락 3세 어드레스가능한 메모리 스페이스의 선형 확장을 제공하는 프로세서 코어(processor core which provides a linear extenstion of an addressable memory space)
US5915266A (en) * 1994-05-25 1999-06-22 National Semiconductor Corporation Processor core which provides a linear extension of an addressable memory space

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1181461B (de) * 1963-10-08 1964-11-12 Telefunken Patent Adressenaddierwerk einer programm-gesteuerten Rechenmaschine
US3930232A (en) * 1973-11-23 1975-12-30 Raytheon Co Format insensitive digital computer

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1181461B (de) * 1963-10-08 1964-11-12 Telefunken Patent Adressenaddierwerk einer programm-gesteuerten Rechenmaschine
US3930232A (en) * 1973-11-23 1975-12-30 Raytheon Co Format insensitive digital computer

Also Published As

Publication number Publication date
NL7709694A (nl) 1978-03-07
FR2363834A1 (fr) 1978-03-31
JPS5331931A (en) 1978-03-25
SE432312B (sv) 1984-03-26
BE858224A (fr) 1977-12-16
ES462082A1 (es) 1978-12-16
CA1082369A (en) 1980-07-22
SE7709676L (sv) 1978-03-04
US4090237A (en) 1978-05-16
FR2363834B1 (de) 1981-05-29
JPS5848944B2 (ja) 1983-11-01
GB1567536A (en) 1980-05-14
IT1086453B (it) 1985-05-28
DE2739525C2 (de) 1982-04-01

Similar Documents

Publication Publication Date Title
DE2646162C3 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE2646163B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
CH634939A5 (de) Kanaldatenpufferanordnung in einer datenverarbeitungsanlage.
DE2635592A1 (de) Multiprozessor-abrufsystem
DE2355993A1 (de) Datenverarbeitungseinheit einschliesslich mikroprogramm-steuereinrichtung
DE3339645A1 (de) Bidirektional arbeitende anordnung zur justierung von datenbytes in einer digitalen datenverarbeitungsanlage
DE2739525A1 (de) Prozessor
DE2036729A1 (de) Digital Datenverarbeiter
DE1499206C3 (de) Rechenanlage
DE3043653A1 (de) Datenverarbeitungsanlage
DE2936915A1 (de) Verfahren und vorrichtung zur steuerung einer ablaufanzeige
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE2115198A1 (de) Verfahren zum Wiederauffinden von Datensätzen
DE1925427A1 (de) Datenuebertragungsvorrichtung zum UEbertragen von Daten zwischen Informationsspeichern
DE2458525B2 (de) Speicheranordnung mit Haupt- und Pufferspeicher
DE1922304A1 (de) Datenspeichersteuergeraet
DE3107568A1 (de) Datenverarbeitungseinrichtung
DE3121046A1 (de) Arithmetik-logikeinheit mit bit-manipulation
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE2747304B2 (de) Einrichtung zur Mikrobefehlssteuerung
DE2517525B2 (de) Verfahren und Signalisierungsidentifizierer zum Erkennen von Fernmelde-Signalisierungskriterien
DE2759120A1 (de) Prozessor fuer datenverarbeitungssysteme
DE1499286B2 (de) Datenbearbeitungsanlage
DE2349590A1 (de) Vorrichtung zur datenverarbeitung
DE1296427B (de) Datenbearbeitungssystem

Legal Events

Date Code Title Description
OD Request for examination
D2 Grant after examination
8328 Change in the person/name/address of the agent

Free format text: BLUMBACH, P., DIPL.-ING., 6200 WIESBADEN WESER, W., DIPL.-PHYS. DR.RER.NAT. KRAMER, R., DIPL.-ING.,8000 MUENCHEN ZWIRNER, G., DIPL.-ING. DIPL.-WIRTSCH.-ING., PAT.-ANW., 6200 WIESBADEN

8330 Complete renunciation