DE2502005C2 - Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung - Google Patents

Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung

Info

Publication number
DE2502005C2
DE2502005C2 DE19752502005 DE2502005A DE2502005C2 DE 2502005 C2 DE2502005 C2 DE 2502005C2 DE 19752502005 DE19752502005 DE 19752502005 DE 2502005 A DE2502005 A DE 2502005A DE 2502005 C2 DE2502005 C2 DE 2502005C2
Authority
DE
Germany
Prior art keywords
address
memory
command
output
circuit arrangement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE19752502005
Other languages
English (en)
Other versions
DE2502005A1 (de
Inventor
Lorenz Dipl.-Phys. 4790 Paderborn Hanewinkel
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.)
Atos IT Solutions and Services Inc
Original Assignee
Nixdorf Computer Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nixdorf Computer Corp filed Critical Nixdorf Computer Corp
Priority to DE19752502005 priority Critical patent/DE2502005C2/de
Priority to JP292176A priority patent/JPS5732815B2/ja
Priority to GB196376A priority patent/GB1520981A/en
Publication of DE2502005A1 publication Critical patent/DE2502005A1/de
Priority to US05/844,885 priority patent/US4162519A/en
Application granted granted Critical
Publication of DE2502005C2 publication Critical patent/DE2502005C2/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
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Description

Die Erfindung betriff! eine Schaltungsanordnung mich dem Oberbegriff des Patentanspruchs 1,
Eine Schaltungsanordnung dieser ArI ist /. (J. ans der DE-OS 17 74 276 bekannt. Sie macht von '.lern Prinzip Gebrauch, den Operationsteil eines Hefehlswoiies doppelt aus/unut/.cii. nämlich einmal, um in üblicher Weise eine Operation /u Steuer'), und ferner, um eine Adreßinfornialion zu gewinnen. Dabei isi also die Erzeugung einer Adresse auch aus einem Befehlswort möglich, das keinen Adreßteil besitzt, also nur aus einem Operationsteil besteht Dieses Prinzip zeigt auch die DE-OS 21 35 592, und in der Datenverarbeitungsanlage 3003 der Firma Siemens & Halske AG kommt es in sehr allgemeiner Form zur Anwendung, wie dies der entsprechenden Befehlsliste NV BS 107/1 von Mai 1963 auf Seite 8 für den Befehl HLT entnommen werden kann.
Dieser Stand der Technik gibt also die Anregung, den
ίο Operationsteil eines Befehlswortes direkt zur Adressenbildung zu verwenden, indem der Operationsteil die Adreßinformation selbst enthält.
Man kann nach diesem Prinzip eine Datenverarbeitungseinrichtung so organisieren, daß die zuzuordnenden Adressen in einer den verschiedenen auftretenden Operationen entsprechenden Ordnung dauernd bereitgehalten werden und nicht in besonderen Registern zusammengesetzt und zwischengespeichert werden müssen. Es ist lediglich erforderlich, abhängig von dem Operationsteil und ggf. von dem Adreßteil des jeweiligen Befehlswortes die Hilfsadresse für die genannten Speicherabschnitte des internen Speichers zu bilden, so daß mit dieser Hilfsadresse der jeweilige Speicherabschnitt direkt ansteuerbar ist und die darin jeweils gespeicherte und zuzuordnende Adresse schlagartig ausgegeben werden kann. Für diesen Vorgang können Befehlsworte verwendet werde;·.-, deren Länge kleiner ist als die Wortlänge der zuzuordnenden Adressen. Neben einer Verringerung des Zeitaufwandes
JO für die Zuordnung wird dadurch eine Verringerung der Zahl für die Eingabe der Befehlsworte erforderlicher Anschlüsse erreicht.
Dadurch, daß die die zuzuordnenden Adressen enthaltenden Speicherabschnitte in der Zuordnungs-Schaltung vorgesehen sind, stehen die Adressen auch laufend zur Durchführung sogenannter Adressenrechnungen innerhalb der Zuordnungsschaltung zur Verfügung, ohne daß zuvor besondere Transporioperationen für die Adressen notwendig sind.
Es kann jedoch erforderlich weruen, den Inhalt der einzelnen Speicherabschnitte zu verändern, d h. auszuspeichern und in einem Rechenwerk der Datenverarbeitungseinrichtung zu manipulieren. Hierfür zeigt der vorstehend genannte Stand der Technik keine Möglichkeit. Demgemäß ist es Aufgabe der Erfindung, diese Möglichkeit in einfacher und wirtschaftlicher Art zu schaffen.
Diese Aufgabe wird durch die Erfindung mit den Merkmalen des Patentanspruchs 1 gelöst. Die Erfindung
■v> bietet den Vorteil, daß in einfacher Weise bei Auftreten der bestimmten Operationsteile unterschiedliche Hilfsadressen erzeugt werden können, wobei die Beeinflussung der Bildung der Hilfsadressen beispielsweise von Zustandsinformationen abhängen kann, die aus unterschicdlichen Ablaufphascn des jeweils zu verarbeitenden Programms abgeleitet sein können. Die dabei iiiöglichc Erhöhung der Vielseitigkeit in der Zuordnung von Adressen wird ohne Verzögerung der Lunge der auszuführenden Befehle bzw. d:r Zahl erforderlicher
"·'> Anschlüsse erreicht.
Die Weiterbildung der Erfindung nach Anspruch 2 beruht auf der Erkenntnis, daß im Falle der Bildung einer Hilfsadresse auch abhängig von einem Adreßteil des Befehlswortes mehrere Hilfsadressen für ein und
• ■' denselben Operationsteil zu bilden sind und dall die Zahl dieser verschiedenen Hilfsadressen die Länge des jeweiligen Adreßteils vorgibt. Die Aufteilung von Hefehlsworten konstanter Wortlänge in einen Opera-
tionsteil und einen Adreßteil jeweils variabler Wortlänge ist an sich bereits durch die PE-AS 11 01 823 bekannt. Bei Anwendung dieses bekannten Prinzips in Verbindung mit der Erfindung ergeben sich jedoch besondere Vorteile hinsichtlich der Ausnutzung der Befehlswortlänge und damit der Zahl verfügbarer Anschlüsse, denn erfahrungsgemäß müssen nur wenigen Operationen, beispielsweise den Transport-, Lese- und Sprungoperationen, relativ viele unterschiedliche Adressen zugeordnet werden, während umgekehrt vielen weiteren Operationen relativ wenig Adressen zuzuordnen sind.
Die Weiterbildung der Erfindung nach Anspruch 4 betrifft die Ausführung von Sprungbefehlen. Bei einem Sprungbefehl bewegt man sich normalerweise in einem nahen Aktionsraum. Aus diesem Grunde wird zweckmäßig die Adresse des direkten Sprungbefehls nur mit einem Datenwort angegeben. Wenn aber der Bereich, der durch dieses Datenwort gekennzeichnet werden kann, überschritten wird, so muß die jeweilige Speicherseite gewechselt bzw. neu adressiert werden. Die Information über diese neue Seite wird zweckmäßig in einem der Speicherabschnitte gespeichert und bei jedem durchzuführenden Sprungbefehl automatisch angesprochen. Mit kurzen Befehlsworten kann also bei Sprungbefehlen die Speicherseite adressiert werden, die durch den Sprung erreicht werden soll. Zum Erreichen einer Speicherseite reicht eine kurze Adresse aus. Soll der Bereich dieser Speicherseite überschritten werden, so muß in einem Zusatzbefehl eine neue Adresse gebildet werden. Die Seitenadresse wird im innersten Speicherbereich ständig vorrätig gehalten. Dieser innerste Speicherbereich ist durch sämtliche Modifikationsbefehle leicht veränderbar. Die Seitenadresse wird bei adreßloser Steuerung bei jedem Sprungbefehl immer wieder dem Seitenadreßregister zugeführt. Durch die Programmierung ist der Seitenwechsel vorzusehen. Bei Operationen innerhalb der Speicherseite geschieht dabei aber nichts, es wird bei jedem Sprungbefehl dieselbe Information überschrieben. Das Auffinden der Speicherzelle in einer Speicherseite erfolgt dann durch einen weiteren Befehl, so daß für diesen Sprungbefehl die gesamte Befehlrwortlänge nicht 8, sondern 16 Bits beträgt. Die Speicherseite selbst wird aber automatisch immer aus dem für die Speicherung ihrer Adresse fest vorgegebenen Speicherabschnitt hinzugesetzt. Bei einem erforderlichen Seitenwechsel, der auch als Umblättern bezeichnet wird, muß in diesem Spcicherabschniit 1 addiert werden, wonach der entsprechende Sprung durchgeführt werden kann. Beim nächsten Sprungbefehl wird dann automatisch der so veränderte Inhalt des Speicherabschnitts mit der neuen Speicherseitenadresse übertragen. Ferner ist es möglich, die Seitenadresse nicht nur durch eine 1-Addition, sondern durch einen völlig neuen Ladebefehl vollständig zu ändern. Es sind für diesen Vorgang keine besonderen externen Seitenregister erforderlich, sondern auch diese Funktion kann mit den Sneicherabschnitten des internen Speichers durchgeführt werden.
Die Speicherscitenaclressen sind zweckmäßig im innersten Bereich des Spcicherraums enthalten und stets zugriffsbereit. Dieser Speicherbereich kann durch praktisch alle Operationen manipuliert werden. Dies erfolgt ohne zusätzliche Übertragungsbefchle otkr Beanspruchung des Akkumulators. Insbesondere bei der inlegrierten Feriigimgstechnik können die hicr/u vorgesehenen Speieherzellen durch einen Block besonders einfach verwirklicht werden.
Die Weiterbildung der Erfindung nach Anspruch 5 erweist sich als besonders vorteilhaft, wenn mehrere zeitlich sich überschneidende, aber voneinander unabhängige Prozesse bearbeitet werden sollen. Es ist dabei häufig notwendig, den Zustand von Eingangsvariablen unabhängig voneinander zu überwachen. Da die Zuordnung einer Adresse zu einer Eingabeoperation ohne Änderung von Register- und Akkumulatorinhalten erfolgt, benötigt sie einen minimalen Befehls- und
ίο Zeitaufwand. Da die Hilfsadresse ggf. nur ausgehend von dem Operationsteil gebildet werden kann, ist es möglich, den im Befehlswort enthaltenen Adreßteil für die Ansteuerung des genannten Multiplexers zu verwenden. Dadurch kann mit ein und demselben Befehl ein Operand adressiert und gleichzeitig eine Stelle dieses Operanden z. B. auf eine Kondition abgefragt werden.
Ein Ausführungsbeispiel einer Schaltungsanordnung nach der Erfindung wird im folgenden anhand der Figur beschrieben.
In der Figur ist das Blockbild :ner Einrichtung dargestellt, die im folgenden auch afc Mikroprozessor bezeichnet wird. Diese Einrichtung gestattet die Zuordnung von Adressen zu Operationen entsprechend zugiführten Befehlsworten. Die Befehlsworte wtrden im dargestellten Ausführungsbeispiel als achtstellige binäre Worte über acht Eingangsleitungen auf eine Eingangsschaltung 10 geführt, die zugeordneten Adreßworte werden von einer Ausgangsschaltung 43 mit einer Länge von 16 Bits über 16 Ausgangsleitungen abgegeben.
Im folgenden wird zunächst der Aufbau dieser Einrichtung beschrieben. Die Eingangsschaltung 10 liefert die ihr zugeführten Befehlsworte nach einer geeigneten Aufbereitung über 8 Ausgangsleitungen auf ein UND-Glied 1!. welches das jeweilige Befehlswort abhängig von einem Steuersignal 15-1 über 8 Ausgangsleitungen in ein Befehlsregister 13 einspeichert, welches entsprechend der Länge des Befehlswortes achtteilig ausgeführt ist und beispielsweise aus einzelnen Flip-Flops FO- Fl aufgebaut sein kann. Die Ausgänge der ein; einen Stellen des Befehlsregisters 13 sind mit einem Zuordner 14 verbunden, der abhängig vom Inhalt des jeweiligen Befehlswortes an seinen Ausgängen 15 und 17 Steuersignale und an seinen Ausgängen 16 Hilfsadressen abgibt. Diese werden auf einen Adressen multiplexer 18 geführt, dessen Betrieb durch die an den Ausgängen 17 des Zuordners 14 abgegebenen Steuersignale gesteuert werden kann. Die Steuersignale am
>o Ausgang 15 dienen in noch zu beschreibender Weise zur Steuerung der in der Figur dargestellten Einrichtung. Ein weiterer Eingang des Zuordners 14 ist über eine Eingangsleitung 33 mit einer Schaltung 31 verbunden, die ein Zustandsignal abgibt, welches einen noch zu
ϊ5 beschreibenden Zweck erfüllt.
Der Adressenmwkiplexer 18 ist über seine Ausgangsleitung 19 mit einem Adressemiecodierer 20 verbunden, welcher die ihm zugeführte 5stellige Hilfsadresse decodiert und abhängig davon einen Speicherabschnitt
μ 50 bis 532 e:,ics Speichers 21 ansteuert. Die Speichcrabu'hnitte 50 bis 532 sind jeweils Sstellig üijsgefiihri. Dem Eingang des Speichers 21 werden über eine Leitung 32 und ein UND-Glied 44 jbhängig von Steuersignalen 15-2. die einem der Ausgange 15 des
(D Zuordners 14 entnommen werden, 8stellige Informationsworte zugefühtt. die beispielsweise Operationsergebnisse sein können.
Diese Informationsworte werden durch eine im
linken Teil der Figur dargestellte Anordnung von Registern und Multiplexern er/eiigi. Diese Anordnung kann als Rechenwerk bezeichnet werden.
Dem Speicher 21 und dem vorgenannten Rechenwerk isi jeweils ein Multiplexer 24 bzw. 25 nachgeschaltet, der über eine Leitung 26 mit den 8stelligen Befehlsworten gespeist wird, die von der Eingangsschaltung 10 geliefert werden. Jeder Multiplexer 24 bzw. 25 wird durch Steuersignale 15-3 bzw. 15-4 gesteuert, die einem der Ausgänge 15 des Zuordners 14 entnommen sind. Der Multiplexer 24 speist über seine 8fach-Ausgangsleitung 34 ein Befehlszählrcgister 39 und ein Seitenadreßregister 38. Diese beiden Register sind jeweils Sslellig ausgeführt und können beispielsweise aus 8 Zähl-Flip-Flops VO-V7 b/w. .VO-Y 7 aufgebaut sein. Die Ausgangssignale des Multiplexers 24 werden diesen beiden Registern 39 und 38 über jeweils ein UND-Glied 37 bzw. 36 zugeführt, welches wiederum durch Steuersignale 15-8 bzw. 15-9 aufgesteuert wird.
Das Befehlsziihlregistcr 39 ist über einen Zähleingang außerdem mit einem UND-Glied 42 verbunden, welches durch die Steuersignale 15-12 aufgesteueri wird und ein t I -Zahlsignal auf das Befehlszahlregister 39 schaltet.
Die beiden Register 38 und 39 geben ihren jeweils {.'cspeuhertcn Inhalt jeweils an einen Multiplexor 40 b/w. 41 ab. dem ferner die Signale der bereits beschriebenen Leitungen 32 und 34 zugeführt werden. Diese beiden Multiplexer 40 und 41 werden durch Steuersignale 15-10 und 15-11 gesteuert. An ihren Ausgangen treten jeweils 8stellige Adressenteilwnrtc auf. die der Ausgangsschaltung 43 zugeführt werden und von dieser als ein zusammengesetztes I6stelliges Adressenwort abgegeben werden können.
Das bereits genannte Rechenwerk besteht aus einer arithmetisch-logischen Einheit 27. einem Akkumulatorregister 29. 3 Multiplexern 25, 28 und 30 sowie der bereits erwähnten Schaltung 31 zur Abgabe eines Zustandssignals. Ferner ist ein Decodierer 35 vorgesehen, der das Zustandssignal decodiert und entsprechend ein Hstelliges Signal an den Multiplexer 28 liefert. Der Multiplexer 25 liefert die Ausgangssienale für die bereits beschriebene Leitung 32 und wird außer durch die Signale der Leitung 26 mit 8stelligen Worten angesteuert, die dem Akkumulatorregister 29 entnommen werden. Dieses Register wird durch den Multiplexer 28 angesteuert, welcher ihm die 8steiligen Worte zuführt, die als üperationsergebnisse in der arithmetisch-logischen Einheit 27 erzeugt werden. Diese Einheit 27 und der Multiplexer 28 werden durch die Signale der Leitung 34 beaufschlagt, welche aus dem Multiplexer 24 abgegeben werden. Der arithmetisch-logischen Einheit 27 werden ferner die 8stelligen Signale der Leitung 32 zugeführt. Die arithmetisch-logische Einheit 27 kann ferner bestimmte Testsignale oder auch Überlaufsignale an den Multiplexer 30 abgeben, der durch Steuersignale 15-6 gesteuert wird. Dieser Multiplexer 30 wird ferner durch die auf der Leitung 32 anstehenden 8steiiigen Informalionsworte beaufschlagt und gibt an seinem Ausgang ein Signal ab. welches die Schaltung 31 derart steuert, daß sie das bereits erwähnte Zustandssignal abgeben kann. Die Funktion dieses Zustandssignals wird im folgenden noch näher erläutert.
Der Decodierer 35 kann das genannte Zustandssignal unter Steuerung durch Steuersignale 15-7 so decodieren, daß eine seiner acht Ausgangsleitungen aktiviert wird und dieses Signal an der entsprechend aktivierten Stelle über den Multiplexer 28, der durch Steuersignale 15-5 gesteuert wird, dem Akkumulatorregister 29 zuführen kann.
Im folgenden werden nun mehrere mögliche Betriebsarten der in der Figur dargestellten Einrichtung beschrieben, bei denen es sich jeweils um die Zuordnung
-·> einer Adresse abhängig von einem zugeführten Befehlswort handelt.
Die in der Figur dargestellte Einrichtung ermöglicht die sukzessive lineare Abarbeitung von Bcfehlsworten über das Befehlsregister 39 und das Seitenadreßregister
κι 38. wie dies für Recheneinrichtungen in der Datenverarbeitungstechnik bekannt ist. Deshalb wird diese normale Abarbeitung von Befehlen im folgenden nicht näher erläutert, sondern es werden nur diejenigen Fälle betrachte!, für die die Erfindung in besonder vorteilhaf-
'■> ter und neuartiger Weise die Lösung der eingangs aufgezeigten Problemstellung ermöglicht. Aus der folgenden Erläuterung dieser Fälle wird dem Fachmann dann auch der Funktionsablauf für die normale Abarbeitung von Befehlen ersichtlich.
;.i Zunächst ist für alle im folgenden 711 beschreibenden Belriebsfiille von Wichtigkeit, daß der Adressenmulti plexer 18 abhängig von dem Operatumstyp des in dun Zuordner 14 entschlüsselten Befehls eine llilfsadresse abgibt, die in dem Adressendecodiercr 20 decodiert
;- wird und die Ansteuerung eines ganz bestimmten .Speicherabschnittes 50 — 5 32 ermöglicht. Es handelt sich hier um die erfindungsgemäße Zuordnung von Adressen zu bestimmten regelmäßig wiederkehrenden Operfttionsartcn. Der Inhalt des jeweils auf diese Weise
in angesteuerten Speicherabschnitts des Speichers 21 wtrd dann über den Multiplexer 24. das LiND-Glied 37. das Befehls/.ählregisUT 39 und den Multiplexer 41 der Ausgangsschaltung 43 bzw. deren Ausgangsleitungen zugeführt. Es ist aber auch möglich, daß abhängig von
5ϊ noch /u beschreibenden Bedingungen der Inhalt des jeweils angesteuerten Speicherabschnitts des Speichers 21 vom Multiplexer 24 über seine Ausgangsleitungen 34 und das UND-Glied 36 dem Seitenadressenregister 38 zugeführt wird, welches seinerseits den in ihm gespeicherten Inhalt über den Multiplexer 40 an die Ausgangsschaltung 43 abgibt. Ferner ist es aber auch möglich, die Ausgangssignale des Multiplexers 24 über seine Ausgangsleitung 34 direkt auf beide Multiplexer 40 und 41 zu leiten und wahlweise über diese jeweils ein 8stelliges Wort an die Ausgangsschaltung 43 abzugeben.
L Ausführung eines Sprungbefehls
Ein Sprungbefehl in Form eines 8stelligen Befehlswortes wird der Eingangsschaltung 10 zugeführt und
so über das UND-Glied Il in das Befehlsregister 13 eingespeichert. Der auf diesen Sprungbefehl folgende Befehl wird im nächsten Schritt über die Eingangsschaltung 10 und die Leitung 26 sowie den Multiplexer 24 und das UND-Glied 37 in das Befehlszählregister 39 eingespeichert. Die Erzeugung der für diesen Sprangbefehl maßgebenden Seitenadresse erfolgt nun nach der Erfindung derart, daß der Sprungbefehl in dem Zuordner 14 die Bildung einer Hilfsadresse für einen Speicherabschnitt des Speichers 21 bewirkt, die über die Ausgangsleitung 19 des Adressenmultiplexers 18 sowie den Adressendecodierer 20 eine Ausspeichening des Inhalts eines ganz bestimmten Speicherabschnittes SO—532 aus dem Speicher 21 bewirkt. Diese Ausspeichening erfolgt über den Multiplexer 24, gesteuert durch das UND-Glied 36 in das Seitenadreßregister 38. Die beiden Register 38 und 39 enthalten somit jeweils eine Teiladresse, die über die beiden Multiplexer 40 und 41 in der Ausgangsschaltung 43 zu
einem I6sielligen Adreßwort zusammengesetzt werden kann, welches das durch den Sprungbefehl zu erreichende Ziel adressiert.
Es sei darauf hingewiesen, daß die Seitenadresse dieses Sprungbefehls abhängig von dem Operationsteil des Befehlswortes automalisch erzeugt worden ist.
2. Ausführung eines Eingabebefehls
Ein derartiger Befehl kann gemäß der Erfindung ein Befehl ohne Adreßteil sein. Er wird über die Eingangsschaltung 10 in das Befehlsregister 13 eingegeben und bewirkt dann in dem Zuordner 14 durch den nur mit einem Operationsteil gegebenen Informationsinhalt Jic Erzeugung einer Hilfsadresse. die über den Adressenmultiplexer 18 und den Adressendecodierer 20 die Ansteuerung eines Speicherabschnitts des Speichers 21. der bevorzugt Eingabeadressen dieser entsprechenden Ik'fehlsart fest zugeordnet ist. Aus diesem Speicherabschnitt wird die vorhandene mmmuiitmi ausgespeichert und über den Multiplexer 24 und das UND-Glied 36 durch dessen Aufsteuerung in das Seitenadreßregister 38 eingegeben. In einer weiteren Taktphase wird mittels des Zuordners 14 und des Adressenmultiplexers 18 eine weitere Hilfsadresse gebildet, die über den Adressendecodierer 20 die Ausspeicherung des Inhalts desjeniger Speicherabschnitts bewirkt, der dem zuvor angesteuerten .Speicherabschnitt unmittelbar benachbart ist. Der Inhalt dieses Speicherabschnitts ist eine Teiladresse, die über den Multiplexer 24 und dessen Ausgangsleitung 34 sowie uen Multiplexer 41 in die Ausgangsschaltung 43 eingegeben wird. Gleichzeitig wird die Seitenadresse aus dem Seitenadreßregister 38 über den Multiplexer 40 in die Ausgangsschaltung 43 eingegeben, so daß beide Teiladressen zusammengesetzt ein löstelliges Adreßwort ergeben, welches zur Steuerung einer Dateneingabe auf hier nicht dargestelltem Wege in die in der Figur gezeigte Einrichtung benutzt werden kann. Eine solche Dateneingabe kann beispielsweise über die Eingangsschaltung 10 und deren Ausgangsleitung 26 sowie den Multiplexer 25 in die arithmetisch-logische Einheit 27 erfolgen, so daß dort mit den eingegebenen Daten Operationen durchgeführt werden können, deren Ergebnisse über den Multiplexer 28 in das Akkumulatorregister 29 eingegeben werden können und somit dort abgespeichert sind.
An dieser Stelle ist eine Erläuterung der bereits genannten Kennzeichnung von Einzelbits zweckmäßig. Es ist beispielsweise denkbar, daß die zuvor beschriebene Eingabe von Daten über die Eingangsschaltung 10 und den Multiplexer 25 infolge eines besonderen Kriteriums des sie hervorrufenden Befehls auf den Multiplexer 30 erfolgt. Dieser wird durch einen Teil des entsprechenden Befehls über den Zuordner 14 und die Steuersignale 15-6 so betrieben, daß eine ganz bestimmte Stelle des eingegebenen Datenworts der Schaltung 31 zur Abgabe eines Zustandssinals zugeführt und in ihr abgespeichert wird. Diese Schaltung 31 kann dann ein Signal abgeben, welches eine Aussage darüber ermöglicht, in welchem Zustand die bestimmte, auf diese Weise angesteuerte Stelle des eingegebenen Datenwortes ist. Ein derartiges Zustandssignal kann ohne Unterbrechung des Programmablaufs und ohne Veränderung des Akkumulatorinhalts beispielsweise dazu verwendet werden, den nächstfolgenden Befehl durch entsprechende Ansteuerung des Zuordners 14 über die Leitung 33 konditioniert auszuführen.
3. Ausführung von Ausgabebefehlen
Ausgnbebefehle dienen beispielsweise dazu, aus einer Einrichtung der in der Figur dargestellten Art ein ) Informationswort auszugeben, welches aus einem Operationsergebnis und einer Adresse besteht, die diejenige Stelle bezeichnet, zu der das Operationsergebnis zu transportieren ist. Hierzu wird ein Ausgabebefehl über die Eingangsschaltung 10 in das Befehlsregister 13
in eingegeben und bewirkt über den Zuordner 14 die Bildung einer Hilfsadresse, die über den Adressenmultiplexer 18 und den Adressendecodierer 20 die Ansteuerung eines Speicherabschnitts des Speichers 21 bewirkt, der bevorzugt zur Bcreithaltung von Ausgabespeicher-
i) adressen bestimmt ist. wie dies durch die Erfindung vorgesehen ist. Der Inhalt dieses Speicherabschnitts wird über den Multiplexer 24 und seine Ausgangsleitung 34 sowie den Multiplexer 41 in die Ausgangsschaltung 43 übertragen und bildet dort den Adreßteil des
:<i miä/tigcuci'mcii Gc5Him<VCriCS. Der !ilfo™Si!Cr!StS!!
dieses Wortes wird, gesteuert durch den im Zuordner 14 ausgewerteten Befehl, aus dem Akkumulatorregister 29 über den Multiplexer 25, der hierzu durch die Steuersignale 15-4 gesteuert wird, in den Multiplexer 40
Ji und von diesem aus in die Ausgangsschaltung 43 eingegeben. Somit ist ein Gesamtwort gebildet, welches aus den zu transportierenden Informationen und der zugehörigen Transportadresse besteht.
Irn Zusammenhang mit der Ausgabe von Informa-
K) tionsworten aus dem Akkumulatorregister 29 ist es möglich, eine ganz bestimmte Stelle des auszugebenden Informationswortes vor der Ausspeicherung aus dem Akkumulatorregister 29 zu modifizieren. Da die Schaltung 31 zur Kennzeichnung des Zustandes einer
<i ganz bestimmten Stelle eines Datenwortes vorgesehen ist. ist es möglich, entsprechend dem von dieser Schaltung 31 abgegebenen Ausgangssignal an der Leitung 33 ein Kriterium mittels des Decodierers 35. gesteuert durch Steuersignale 15-7. zu bilden, welches den Multiplexer 28 für die jeweils zu beeinflussende bestimmte Stelle des im Akkumulatorregister 29 vorhandenen Informationswortes ansteuert. Das von dem Decodierer 35 gelieferte Kriterium gibt eine Aussage darüber ab, welche Stelle des gespeicherten
Informationswortes modifiziert werden muß bzw. abhängig von dem jeweiligen Speicherinhalt der Schaltung 31 zu setzen oder zu löschen ist.
Die für die vorbeschriebenen Funktionen wesentlichen Steuersignale 15-6 und 15-7 für den Multiplexer 30
Μ und den Decodierer 35 können aus wenigen Stellen des in dem Befehlsregister 13 vorhandenen Befehlswortes abgeleitet werden. Faßt man diese wenigen Stellen des Belehlswortes als Adreßteil auf, so ist unmittelbar ersichtlich, wie für diesen Fall der Ausführung eines Ausgabebefehls beispielsweise Befehlsworte verwendet werden können, die einen sehr großen Operationsteil und einen sehr kleinen Adreßteil aufweisen.
4. Ausführung indirekter Sprungbefehle
Indirekte Sprungbefehle sind solche Befehle, die insbesondere zur Rückführung des Programmablaufs aus Unterprogrammschleifen dienen. Da hierbei gegebenenfalls eine Vielzahl von Adressen verwendet wird, muß ein indirekter Sprungbefehl einen größtmöglichen Adreßteil aufweisen, damit durch ihn die erforderliche große Anzahl von Adressen gekennzeichnet werden kann. Der indirekte Sprungbefehl, der in das Befehlsregister 13 eingegeben wird, bewirkt mit seinem Adreßteil
in dem Zuordner 14 die Bildung einer Hilfsadresse für den Speicher 21. Diese wirkt, wie vorstehend bereits beschrieben, über den Adressendecodierer 20 auf einen der Speicherabschnitte ein, deren Anzahl bzw. Erreichbarkeit, wie beschrieben, durch den Adressenumfang bestimmt ist. Der so angesteuerte Speicherabschniti enthält eine S-itenadresse. die in bereits beschriebener Weise in das Seitenadreßregister 38 eingegeben wird. Der auf diesen Speicherabschnitt unmittelbar folgende Speicherabschnitt wird im nächsten Arbeitstakt angesteuert, so daß sein Inhalt über den Multiplexer 24 und das UND-Glied 37 in das Befehlszählregister 39 eingegeben werden kann und dort als Relativadresse der adressierten Seite zur Verfügung steht. Über die Multiplexer 40 und 41 erfolgt die Eingabe dieser beiden Teiladressen in die Ausgangsschaltung 43. so daß dort das Adreßwort für den im Programmablauf nächstfolgenden Befehl verfügbar ist.
Vorstehend wurden solche Betriebsfälle beschrieben,
κ,
werk erfolgen kann. Die Rückspeicherung nach erfolgler Manipulation geschieht dann über den Multiplexer 2b und seine Ausgangsleitung 32 sowie das UND-Glied 44 in den Speicher 21.
Das vorstehend erläuterte Ausführungsbeispiel der Erfindung läßt erkennen, daß es durch die Erfindung möglich ist, für verschiedenste Betriebsfälle mit kurzen Befehlsworten lange und umfassende Adreßworte darzustellen bzw. zuzuordnen. Dies erfolgt mit einem Aufwand, der den Aufwand bisheriger Einrichtungen dieser Art nicht überschreitet und gegebenenfalls sogar verringert ist. Es sind keine externen Schaltkreise für die Zwischenspeicherung von Adressen erforderlich, da eine vollständige 16siellige Adresse in der Ausgangsschaltung abgegeben wird. Außerdem erfolgt die Darstellung des jeweiligen Adreßwortes in höchstens zwei Schritten, was einen erheblichen Zeitgewinn gegenüber den eingangs dargestellten und bisher durchgeführten Verfahren mit sich bringt. Infolge der
in denen abhängig von einem zugeführten Befehlswort >„ Zuordnung der Inhalte der einzelnen Speicherab?chni'.-
von der Ausgangsschaltung 43 Adreßworte abgegeben werden können. Es ist jedoch bei einer Einrichtung der hier betrachteten Art auch erfcrderlich. den Inhalt der einzelnen Speicherabschnitte des Speichers 21 zu manipulieren. Um auch dies mit einer begrenzten Länge der zugeführten Befehlsworte zu ermöglichen, wird hier gleichfalls von dem Prinzip Gebrauch gemacht, die Adreßteile bzw. die Operationsteile der Befehlsworte hinsichtlich ihrer Länge zu variieren bzw. adreßteillose Befehlsworte zu verwenden. Im folgenden soll nun beschrieben werden, in welcher Weise adreßteillose Befehlsworte zur Bildung von Hilfsadressen verwendet werden können, die eine derartige Manipulation des Speicherinhalts ermöglichen.
Zunächst ist darauf hinzuweisen, daß einer der Speicherabschnitte des Speichers 21, im dargestellten Ausführungsbeispiel der Speicherabschnitt 50, an den Stellen 0—4 eine Verbindung 23 zum Adressenmultiplexer 18 aufweist, über die der Adressenmultiplexer 18 angesteuert werden kann. Der Inhalt der Stellen 0—4 des Speicherabschnitts 50 kann also dauernd über die fünfadrige Verbindung 23 auf den Adressenmultiplexer 18 einwirken und zu ei.itr Hilfsadressenbildung in dieser Schaltung ausgenutzt werden. Wenn ein adreßteilloser Befehl in das Befehlsregister 13 eingespeichert wird, so wird das Fehlen des Adreßteils durch den Zuordner 14 erkannt und dort unmittelbar die Auswertung derjenigen Informationen veranlaßt, die über die Verbindung 23 zur Verfügung stehen. Hierzu dient eine besondere Gruppe von Steuersignalen, die über den Ausgang 17 des Zuordners 14 auf den Adressenmultiplexer 18 einwirken. Durch Auswertung des Inhalts der Speicherstellen 0—4 über die Verbindung 23 wird also in dem Adressenmultiplexer 18 unmittelbar eine Hilfsadresse erzeugt, mit der über den Adressendecodierer 20 einer der Speicherabschnitte des Speichers 21 angesteuert werden kann. Der Inhalt des angesteuerten Speicherabschnitts kann dann über den Multiplexer 24 und die Leitung 34 der arithmetisch-logischen Einheit 27 oder dem Multiplexer 28 bzw. dem Akkumulatorregister 29 zugeführt werden, so daß auf diese Weise eine Manipulation dieses Speicherinhalts in dem Rechen-
te zu ganz bestimmten Operationsarten, die eine wesentliche Verkürzung der zu verwendenden Befehlsworte mit sich bringt, wird auch der funktioneile Aufwand herabgesetzt, denn die Inhalte der Speicherabschnitte müssen keinem umständlichen Umweg über des Rechenwerk ausgesetzt werden, um sie zur jeweiligen Ausgabe bereitzustellen. Es ist hingegen möglich, diese Speicherinhalte gewissermaßen durch Nachvollziehen der nach der Erfindung vorgesehenen festen Zuordnung direkt zu erreichen und zur Ausgabe bereitzustellen. Dabei bietet sich der wesentliche Vorteil, daß die Speicherinhalte im Gegensatz zu solchen Verfahren, bei denen sie in einzelnen zusätzlichen Registern abgespeichert sind, beliebig mittels des Rechenwerkes manipuliert werden können. Dieses Manipulieren wird deshalb möglich, weil die Speicherinhalte voll adressierbar sind, was bei einer Einspeicherung in externe Einzelregister nicht der Fall ist.
Der interne Speicher kann durch Anwendung der integrierten Technik und spezieller Schaltkreistechniken sehr kompakt aufgebaut werden. Da als einziges Speichermedium für die zu verarbeitenden Informationen ein adressierbarer Speicher verwendet wird, ist es möglich, auch hinsichtlich des Speicheraufwandes sehr kompakte Anordnungen zu schaffen, die einen wesentlich geringeren Raumbedarf als Registeranordnungen verursachen.
Ein nach der Erfindung arbeitender praktisch aufgebauter Mikroprozessor kann integriert auf einem Schaltungsträger angeordnet sein und beansprucht dabei 30% weniger Raum als entsprechende bisherige integriert aufgebaute Anordnungen. Gleichzeitig kann aber die ungefähr doppelte Arbeitsgeschwindigkeit erreicht werden. Außerdem wird extern z. B. für die Abspeicherung von Befehlen gleichfalls weniger Platz beansprucht
Schließlich kann ein derartiger Mikroprozessor wesentlich besser als bisherige Anordnungen geprüft werden. Dies ist insbesondere darauf zurückzuführen, daß keine besonderen Register für Sonderfunktionen vorgesehen sind, derartige Register können nämlich nur mit komplizierten Routinen indirekt geprüft werden.
Hierzu 1 Blatt Zeichnungen

Claims (5)

Patentansprüche:
1. Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung, in der jeweils ein Befehlswort mit seinem Operationsteil im Rahmen der Zuordnung die Ausgabe einer Adresse aus einem von mehreren Registern in Paralleldarstellung an einen externen Speicher oder eine Eingabe-Ausgabe-Vorrichtung bewirkt und mit dieser so zugeordneten Adresse ein Operand zur Durchführung der Operation adressiert wird, wobei abhängig von dem Operationsteil des jeweiligen Befehlswortes eine Hilfsadresse für einen von mehreren, die genannten Register bildenden Speicherabschnitten eines internen Speichers gebildet wird und der Inhalt dieses Speicherabschnittes als die zugeordnete Adresse ausgegeben wird, dadurch gekennzeichnet, daß bei Auftreten bestimmter Befehlsworte der Inhalt eines Sonderspeicherabschnittes (SOO bis SO4) des internen Speichers (21) zur Bildung der Hiifsadresse herangezogen wird.
2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß Befehlsworte konstanter Wortlänge mit abhängig von einer Steuerung durch ihren Operationsteil variabel langen:· Operationsteil und entsprechend variablem Adreßteil vorgesehen sind.
3. Schaltungsanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß mindestens einer der den auszulösenden Operationen zugeordneten Speicherabschnitte (SO bis 532) durch ausgehend von Befeh4n ohne Adreßteil gebildete Hilfsadressen ansteuerbar ist.
4. Schaltungsanordnung each e;nem der vorhergehenden Ansprüche zur Ausführung von Sprungbefehlen, dadurch gekennzeichnet, daß mindestens einer der Speicherabschnitte (SQ bis 532) durch ausgehend von Sprungbefehlen gebildete Hilfsadressen ansteuerbar und Quelle für eine Speicherseitenadresse ist, zu deren Speicherung ein Seitenadreßregister (38) vorgesehen ist.
5. Schaltungsanordnung nach Anspruch 1 oder 2 zur Ausführung von Eingabebefehlen, dadurch gekennzeichnet, daß mindestens einer der Speicherabschnitte (SO bis 532) durch ausgehend von Eingabebefehlen gebildete Hilfsadressen ansteiierbar ist und daß der durch die zugeordnete Adresse aus dem externen Speicher in die Schaltungsanordnung eingegebene Operand (über 25) einem Multiplexer (30) zuführbar ist, der durch den Adreßteil des Eingabebefehls (durch 15-6) ansteuerbar ist und der dadurch einen seiner Eingänge über seinen Ausgang mit einem Zustandsspeicherclement (31) verbindet.
DE19752502005 1975-01-20 1975-01-20 Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung Expired DE2502005C2 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE19752502005 DE2502005C2 (de) 1975-01-20 1975-01-20 Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung
JP292176A JPS5732815B2 (de) 1975-01-20 1976-01-14
GB196376A GB1520981A (en) 1975-01-20 1976-01-19 Data processing
US05/844,885 US4162519A (en) 1975-01-20 1977-10-25 Data processor with address allocation to operations

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19752502005 DE2502005C2 (de) 1975-01-20 1975-01-20 Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung

Publications (2)

Publication Number Publication Date
DE2502005A1 DE2502005A1 (de) 1976-07-22
DE2502005C2 true DE2502005C2 (de) 1982-05-13

Family

ID=5936787

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19752502005 Expired DE2502005C2 (de) 1975-01-20 1975-01-20 Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung

Country Status (3)

Country Link
JP (1) JPS5732815B2 (de)
DE (1) DE2502005C2 (de)
GB (1) GB1520981A (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978738A (en) 1997-02-13 1999-11-02 Anthony Brown Severe weather detector and alarm

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1163267A (fr) * 1956-12-12 1958-09-24 Electronique & Automatisme Sa Perfectionnements apportés aux calculatrices numériques
DE1774276A1 (de) * 1968-05-15 1971-07-29 Elektronische Rechenmasch Ind Verfahren zur Adressierung von Mikroprogrammspeichern mit Zwei- oder Mehradressmikrobefehlen
DE2135592A1 (de) * 1971-07-16 1973-02-01 Ibm Deutschland Einrichtung zur fehlererkennung und -korrektur in elektronischen datenverarbeitungssystemen

Also Published As

Publication number Publication date
JPS5732815B2 (de) 1982-07-13
GB1520981A (en) 1978-08-09
JPS5197341A (de) 1976-08-26
DE2502005A1 (de) 1976-07-22

Similar Documents

Publication Publication Date Title
DE2755273C2 (de)
DE3126878C2 (de) Mikroprogramm-Steuerschaltung zum Ausführen eines aus einem Steuerspeicher in einem Quellenregister aufgenommenen Mikrobefehls
DE2912287C3 (de) Datenverarbeitungsanlage
DE2355993B2 (de) Programmierbare datenverarbeitungsanlage
DE1499193B2 (de) Speicher-adressierschaltung
DE1262641B (de) Mikroprogrammsteuerwerk
DE3114921A1 (de) Datenverarbeitungssystem
DE2944757C2 (de) Programmierbare Prozeßsteuerung
DE2433436A1 (de) Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer
DE2617485C3 (de) Schaltungsanordnung für Datenverarbeitungsanlagen zur Abarbeitung von Mikrobefehlsfolgen
DE2951040A1 (de) Steuerspeicher in einem steuerabschnitt eines rechners
DE2245284A1 (de) Datenverarbeitungsanlage
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE1774421B1 (de) Mehrprogramm datenverarbeitungsanlage
DE2502005C2 (de) Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung
CH632349A5 (de) Einrichtung zur mikrobefehlssteuerung.
DE3101270C2 (de) Rechneranordnung zur Wortverarbeitung mit einer Einrichtung zur Funktionserweiterung
DE2233164C3 (de) Schaltungsanordnung zur Übertragung von aufeinanderfolgenden Bitstellen zwischen zwei Registern
DE2204680C3 (de) Mikroprogramm-Steuereinrichtung
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen
DE2727188A1 (de) Anordnung zum adressieren eines speichers
EP0561457A2 (de) Mikroprozessor zur Verarbeitung von Eingabe/Ausgabedaten
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
DE1524211A1 (de) Datenverarbeitungsanlage
DE2419836B2 (de) Schaltungsanordnung zur durchfuehrung von unterprogramm-sprungbefehlen in datenverarbeitungsanlagen

Legal Events

Date Code Title Description
8125 Change of the main classification

Ipc: G06F 9/34

D2 Grant after examination
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee