DE2502005A1 - Verfahren zur zuordnung von adressen in datenverarbeitungseinrichtungen - Google Patents
Verfahren zur zuordnung von adressen in datenverarbeitungseinrichtungenInfo
- Publication number
- DE2502005A1 DE2502005A1 DE19752502005 DE2502005A DE2502005A1 DE 2502005 A1 DE2502005 A1 DE 2502005A1 DE 19752502005 DE19752502005 DE 19752502005 DE 2502005 A DE2502005 A DE 2502005A DE 2502005 A1 DE2502005 A1 DE 2502005A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- memory
- command
- words
- word
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/342—Extension of operand address space
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding 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
KARI4-HEINZ SCHAUMBIJRG
800O MÜNCHEN 8O
JIAFEHKIRCEERSTH. TKiEPON (Ο8Θ) Θ81Θ7Θ
TELEX Ο22Ο1Θ
Nixdorf Computer AG
4790 Paderborn
Fürstenweg 1N5 1175 D
20. Januar 1975
Verfahren zur Zuordnung von Adressen in Datenverarbeitungseinrichtungen
Die Erfindung betrifft ein Verfahren zur Zuordnung von Adressen
in Datenverarbeitungseinrichtungen abhängig von einer Steuerung durch Befehle, bei dem jedes Befehlswort die Ausgabe eines
Adreßworts in Paralleldarstellung aus einem Speicherabsehnitt bewirkt.
Ein Verfahren dieser Art wird dazu angewendet, beim nacheinander erfolgenden Abrufen der Befehle eines gespeicherten Programms
abhängig von dem jeweiligen Befehl ein Adreßwort zu bilden, mit dem als Steuerkriterium verschiedenste Punktionen ausgelöst
werden können. Solche Funktionen sind beispielsweise Betriebsschritte in datenverarbeitenden Einrichtungen, in Datenein- und
-ausgabegeräten oder auch in Fertigungsmaschinen oder Werkzeugmaschinen.
— 2 —
609830/0470
Eine Einrichtung zur Durchführung eines derartigen Verfahrens, die
in der Fachsprache auch als "Mikroprozessor" bezeichnet wird, enthält meist ein Rechenwerk, ein Steuerwerk, sowie einen
Speicher, der gegebenenfalls auch durch äußere zusätzliche Speichereinrichtungen ergänzt werden kann.
Im Zuge moderner Fertigungstechnik und der Entwicklung der
integrierten Schaltungstechnik wird es erforderlich, die Zuordnung von Adressen abhängig von Befehlen mit Einrichtungen
durchzuführen, die in integrierter Technik aufgebaut sind. Dies bedeutet, daß die Funktionseinheiten solcher Einrichtungen
auf einem sehr kleinen Schaltungsträger, also auf äußerst geringem Raum unterzubringen sind, wobei aber eine
relativ hohe Zahl von Anschlüssen anzubringen ist. Wenn aber die Größe des Schaltungsträgers durch den integrierten Aufbau
begrenzt ist, tritt das zusätzliche Problem auf, die zahlreichen Ein- und Ausgabefunktionen, die bei der Zuordnung von Adressen
abhängig von Befehlen auftreten, im Gegensatz zu bisherigen Möglichkeiten mit einer kleineren Zahl von Anschlüssen
zu verwirkliehen bzw. hierzu mit einer relativ kleinen maximalen
Zahl von Anschlüssen auszukommen. Zusätzlich besteht die Forderung, eine derartige in integrierter Technik aufgebaute
Einrichtung mit der bisher möglichen Freizügigkeit zusammen mit verschiedensten anderen Einrichtungen verwenden zu können, d.
h. es sollen mit dieser Einrichtung Befehle üblicher Art verarbeitet und Adreßworte üblicher Art ausgegeben werden können.
Die Adreßworte haben in den meisten Fällen eine relativ große
Länge, da mit ihnen insbesondere bei großen datenverarbeitenden Einrichtungen über eine Vielzahl von Adressen entsprechend
viele Speicherplätze anzusteuern sind. Eine Möglichkeit, lange Adreßworte mit begrenztem Aufwand darzustellen, besteht nun
beispielsweise darin, zunächst einzelne Teile des Adreßwortes zu erzeugen und sie dann nacheinander in ein externes Register
einzuspeichern, wodurch diese Wortteile gewissermaßen zusammengesetzt und dann gleichzeitig in einem Schritt ausgegeben werden
können. Zu dieser Art der Darstellung des gesamten Adreß-
609830/0470
Wortes sind jedoch vor der Ausgabe mehrere Schritte er-,
forderlich, so daß die Zuordnung einer Adresse abhängig
von einem Befehl "bei diesem bekannten Verfahren in mehreren
Stufen ablaufen muß 'und daher ein hoher Zeitaufwand entsteht. Außerdem ist ein zusätzliches externes Register mit
einer der Länge der Adreßworte entsprechenden Steilenzahl
erforderlich. Dies ist jedoch ein Nachteil, der die Zuordnung von Adreßworten abhängig von Befehlen zu stark verteuert
und verkompliziert, so daß diese Lösung wegen ihrer zusätzlichen Schwierigkeiten ausscheidet.
Es ist ferner möglich, zur Einsparung von Anschlüssen an einer der Adressen darstellenden bzw. zuordnenden Einrichtung
bestimmte Anschlußklemmen für eine Eingabe- und eine
Ausgabefunktion doppelt auszunutzen. Mit dieser Doppelfunktion von Anschlüssen sind jedoch beachtliche Nachteile verbunden,
die insbesondere bei der Fertigungsprüfung auftreten. Außerdem
entsteht ein erheblicher schaltungstechnischer Aufwand, denn die doppelt ausgenutzten Anschlußklemmen müssen gegeneinander
entkoppelt sein. Für eine derartige Entkopplung ist eine hohe Anzahl von Schaltelementen, beispielsweise von
Dioden oder Transistoren erforderlich. Die Fertigungsprüfung
muß nacheinander für die beiden möglichen Funktionen durchgeführt werden, wodurch ein erhöhter Zeitaufwand, bei der
Herstellung verursacht wird.
Die Aufgabe der Erfindung besteht darin, ein Verfahren anzugeben, durch das die Zuordnung bzw. Bildung möglichst langer
Adreßworte mit einer begrenzten Zahl von Anschlüssen an der verwendeten Einrichtung unter geringetmögliehern Zeit- und
Sehaltungsaufwand möglich ist. .
Ein Verfahren der eingangs genannten Art ist zur Lösung dieser
Aufgabe erfindungsgemäß derart ausgebildet, daß Befehlsworte mit konstanter Wortlänge, jedoch mit variablem Öpera-
_ '4 - -609830/0470
tionsteil und entsprechend variablem Adreßteil verwendet
werden, wobei die Länge des Adreßteils umgekehrt proportional der Häufigkeit der Ansteuerung von mit der jeweiligen Adresse
zu erreichenden Speicherabschnitten bemessen ist, und daß innerhalb des die Speicherabschnitte umfassenden Speicherraums
bestimmten, mittels der in ihnen gespeicherten Adreßworte auszulösenden Operationen bestimmte Speicherabschnitte
zugeordnet sind.
Die Erfind.ung beruht auf der Erkenntnis, daß innerhalb eines Speichers ein Großteil der gespeicherten Informationen relativ
wenigen immer wiederkehrenden unterschiedlichen Operationen zu unterziehen ist. Andererseits müssen mit einem relativ
sehr kleinen Teil der gespeicherten Informationen relativ viele regelmäßig wiederkehrende Operationen durchgeführt werden.
Daraus läßt sich die Gesetzmäßigkeit ableiten, daß eine große Zahl von Operationen und eine kleine Zahl von Speicheradressen
und einer großen Zahl von Operationen zu verknüpfen ist. Die genannte große Anzahl der Speicheradressen kann durch Adreßteile
der Befehlsworte gekennzeichnet werden, die eine dieser großen Zahl entsprechende Länge haben. Der verbleibende Operationsteil kann dann kürzer sein als der Adreßteil und reicht
trotzdem für die damit verbundenen wenigen Operationen zur Kennzeichnung aus. Andererseits ist für die genannte geringe
Anzahl anzusteuernder Speieherabschnitte ein kürzer bemessener
Adreßteil und. ein länger bemessener Operationsteil der Befehlsworte zulässig. Durch diese bessere Ausnutzung der Befehlswortlänge
ist es möglich, für den hier angestrebten Zweck kürzere Befehlsworte als bisher zu verwenden und dazu die Zahl
erforderlicher Anschlüsse zu verringern.
Innerhalb der Befehlsworte konstanter Wortlänge variiert die
Aufteilung zwischen den Längen des Operationsteils und des Adreßteils. Die Gesamtlänge der Befehlsworte läßt sich außer-
SQ9830/0470
dem dadurch noch verringern bzw. besser ausnutzen, daß
nicht bei allen Befehlen immer Ansteueradressen erforderlich sind. Es ist nämlich gemäß d.em weiteren Merkmal der1
Erfindung eine Organisation des verfügbaren Speicherraumes derart vorgesehen, daß bestimmte Speicherabschnitte ganz
bestimmten immer wiederkehrenden Operationen zugeordnet werden, die durch Ansteuerung mit den auszugebenden Adreßworten
in der zu steuernden Einrichtung oder auch in dem Mikroprozessor selbst durchzuführen sind. Es i-st deshalb
nicht erforderlich, derartig fest zugeordnete Speicherabschnitte besonders zu adressieren, um sie aufzufinden. Lediglich
die Angabe der jeweils durchzuführenden Operation im noch verbleibenden Operationsteil des Befehlswortes genügt,
um den dieser Operation fest zugeordneten Speicherabschnitt zu erreichen.
Es steht also durch die beschriebene Zuordnung eine Vielzahl von Adressen ständig zur Verfügung, mit denen keinerlei zusätzliche
Transportoperationen oder sonstige Funktionen durchzuführen sind, um sie zu aktivieren. Sie bedürfen ihrerseits
keiner besonderen Ansteueradresse, weil diese durch den Typ der jeweiligen Operation genau festgelegt ist.
Das Verfahren nach der Erfindung ermöglicht es, mit relativ kurzen Befehlsworten lange Adreßworte auszugeben bzw. zuzuordnen.
Diese Ausgabe erfolgt in einem einzigen Arbeitstakt, so daß eine nach der Erfindung arbeitende Einrichtung auch
hinsichtlich ihrer Arbeitsgeschwindigkeit alle Anforderungen zugeordneter Einrichtungen erfüllen kann. Es war bisher bei
der Zuordnung von Adreßworten abhängig von Befehlsworten üblich, beispielsweise Adreßworte mit einer Länge von 16 Bit
auszugeben und hierzu Befehlsworte mit einer Länge von 16 Bit
zu empfangen. Ein Verfahren nach der Erfindung ermöglicht eine Reduzierung der Länge der Befehlsworte auf die Hälfte,
d. h. es ermöglicht die Ausgabe von 16 Bit langen Adreßworten
- 6 -609830/0470
abhängig von Befehlsworten, die nur eine Länge von 8 Bit
haben. Es ist dabei nicht erforderlich, beispielsweise eine 16 Bit lange Adresse dadurch zu bilden, daß zwei Teilworte
mit einer Länge von 8 Bit erzeugt und diese durch Zwischenspeicherung zu einer 16 Bit langen Adresse zusammengesetzt
werden, die dann in einem weiteren Arheitsschritt ausgegeben
werden muß.
Ein wesentlicher Vorteil des Verfahrens nach der Erfindung
besteht darin, daß Befehlsworte verwendet werden können, deren Länge der Länge der allgemein verwendeten Datenworte entspricht.
Gleichzeitig ist es aber möglich, den vollen zur Verfügung
stehenden Adressenbereich der zu steuernden Einrichtungen zu nutzen.
Eine Einrichtung zur Durchführung des erfindungsgemäßen Verfahrens
läßt sich infolge der verkürzten Befehlsworte und der verringerten Zahl von Anschlüssen in integrierter Technik aufbauen
und erfüllt alle Anforderungen der mit den ausgegebenen Adreßworten anzusteuernden Einrichtungen.
Ebenso lassen sich die Vorteile der Erfind.ung jedoch auch für solche Einrichtungen nutzen, die nicht in integrierter Technik
aufgebaut sind, da auch bei diesen eine wesentliche räumliche Verringerung infolge einer geringeren Anzahl benötigter Anschlüsse
möglich ist.
Schließlich besteht ein Vorteil der Erfindung darin, daß infolge
der kürzeren Befehlswortlänge zur Speicherung ^eines
Programms, das bekanntlich aus einer Aufeinanderfolge einzelner gespeicherter Befehle besteht, ein entsprechend geringerer
Speicheraufwand verursacht wird, so daß ζ. B. auch ein integriert aufgebauter Programmspeicher verwendet werd.en kann.
- 7 609830/0470
— τ —
Eine Weiterbildung des Verfahrens nach der Erfindung zeichnet sich dadurch aus, daß die Bemessung der Länge des Adreßteils entsprechend der Zahl der Speicherabschnitte erfolgt,
die für den Jeweiligen Befehl erreichbar sein müssen. Sämtliche Speieherabschnitte müssen mindestens durch organisatorische
Befehle erreichbar sein, also beispielsweise durch Lagebefehle oder Lesebefehle. Zweckmäßig müssen sämtliche
Speicherabschnitte auch zur indirekten Adressierung bei Sprungbefehlen verfügbar sein. Indirekte Sprungadressen
sind beispielsweise Kelleradressen im Programmablauf. Ein'
relativ sehr kleiner Teil der verfügbaren Speicherabschnitte ist aber sämtlichen möglichen Operationen zugänglich zu
machen, also beispielsweise zusätzlich den logischen Verknüpfungen, ' den Addiervorgängen usw. Wenn nun alle Speicherabschnitte durch die eine Befehlsart erreicht werden müssen,·
weniger Speicherabschnitte aber durch die andere Befehlsart, so kann die Länge des Jeweiligen Adreßteils im Sinne der erfindungsgemäßen Variation so bemessen werden, daß bei binärer
Codierung der Adressen der Adreßteil immer genau die Länge hat, die zur Kennzeichnung der mit ihm zu erreichenden Zahl
von Speieherabschnitten erforderlich ist. Durch diese Art der Bemessung der Befehlsworte bzw. ihrer Adreßteile ist bei
der beschriebenen Art der Organisation des zur Verfügung stehenden Speicherraums gleichzeitig eine weitere Verkürzung
der Befehlsworte möglich.
Das Verfahren kann in der zuvor beschriebenen Weiterbildung derart ausgeführt werden, daß der längstmögliche Adreßteil
für organisatorische Befehle verwendet wird. Dies hat seinen Grund darin, daß die organisatorischen Befehle, beispielsweise Transportbefehle usw., auf Jeden Speicherabschnitt bzw.
dessen Inhalt anwendbar sein müssen und deshalb zweckmäßig diese organisatorischen Befehle durch möglichst- lange Adreßteile gebildet werden. Dies ist möglich, weil die Zahl unter-
609830/047 0
schiedlicher organisatorischer Operationen ohnehin nicht mehr groß ist.
Eine weitere Ausbildung des Erfindungsgedankens besteht darin, daß mindestens einer der den auszulösenden Operationen zugeordneten
Speicherabschnitte durch Befehle ohne Adreßteil angesteuert wird. Diese Weiterbildung beruht auf der Erkenntnis,
daß eine große Anzahl von Befehlen auftritt, die sich z. B. auf die Manipulation des Speicherinhalts des sogenannten
Akkumulators beziehen, der Speicherinhalt des Akkumulators aber hinsichtlich seiner Adresse bereits durch seinen allgemein
bekannten Anwendungszweck ausreichend gekennzeichnet ist, so daß bei einer mit dem Inhalt des Akkumulators durchzuführenden
Operation eine besondere Adressenangabe überflüssig ist. Ferner gibt es Operationen, bei denen bestimmte Worte
zur indirekten Adressierung des Speicherraums benutzt werden. Es kann hierbei durch den Operationsteil jeweils ein Speicherabschnitt
bestimmt werden, dessen Inhalt zur Adressierung des Speicherinhalts eines anderen Speicherabschnitts dienen kann,
der innerhalb des hier vorgesehenen Speicherraums, jedoch auch innerhalb eines externen Speichers angeordnet sein kann.
Es kann also durch ein adressenloses Befehlswort, dessen Operationsteil gleichzeitig den aufzufindenden Speicherabschnitt
kennzeichnet, ein Speicherinhalt erreicht werden, der zur Adressierung eines Operanden ausgenutzt werden kann. Diese
indirekte Adressierung ist an sich bereits bekannt, jedoch immer in der Art, daß ein Adreßteil vorhanden sein muß, um
den jeweiligen Speicherabschnitt, der die zweite Adresse enthält, zu erreichen. Der Operationsteil der Befehlsworte bei
der hier betrachteten Weiterbildung der Erfindung gibt hingegen zwei Größen an, nämlich einmal die durchzuführende
Operation, zum anderen gleichseitig auch die Lage des mit ihr anzusteuernden Speicherabsehnitts. Darin besteht eine
Doppelfunktion des Operationsteils der Befehlsworte. Hier-
. 9 808830/CU7O
bei ist es möglich, für die jeweilige Operation gerade den binären Code zu wählen, der auch den zu erreichenden
Speicherabschnitt kennzeichnet. Hierin liegt eine weitere
Möglichkeit, eine Einrichtung zur Darstellung bzw. Zuordnung von Adressen mit verkürzten Befehlsworten anzusteuern
und Eingangsanschlüsse einzusparen.
Mindestens einer der durch adressenlose Befehle ansteuerbaren
Speicherabschnitte kann als Adreßregister verwendet werden.
Eine besondere Ausführungsform der Erfindung besteht darin,
daß innerhalb des jeweiligen Befehlswortes eine Kennzeichnung einer Einzelstelle des jeweils angesteuerten Speicherabschnitts
erfolgt. Eine derartige Einzelkennzeichnung eines Bits in
einem Datenwort erfolgte bisher dadurch, daß man durch entsprechende Adressierung das gesamte Wort ansteuerte, ausspeicherte
und. dann gewissermaßen das gesuchte Bit ausblendete. Hierzu waren mehrere Arbeitsschritte sowie ein erhöhter
schaltungs.fcechni scher Aufwand erforderlich. Das Wort wird, bei
einem solchen Vorgang in den Akkumulator eingespeichert, zuvor muß der Akkumulator zunächst geleert werden, danach erfolgt
dann die Ausblendung des jeweils gewünschten Bits. Danach kann wiederum die Auswertung seines Speicherinhalts erfolgen,
abhängig von der weitere Maßnahmen durchzuführen sind. Bei der zuvor beschriebenen Weiterbildung der Erfindung
ist es hingegen möglich, den Akkumulator im Zusammenhang mit der Beeinflussung eines Einzelbits nicht zu belasten, sondern
direkt in einem einzigen Schritt die entsprechende Stelle zu adressieren und. hierzu den verkürzten Adreßteil zu verwenden,
wobei auch eine Hilfsadressierung des Datenblocks erfolgt, in dem das zu beeinflussende Bit enthalten ist. Dieser Vorgang
kann auch auf eine Vielzahl von Einzelbits angewendet werden.
Hierzu können verschiedene Arten von Befehlen ausgenutzt werden.
Dies sind in erster Linie solche Befehle, die für eine
- 10 609830/0470
-IQ-
Einzeladressierung einer Einzelstelle sinnvoll sind. Die
erhaltene Einzelinformation kann in eine Merkerzelle gesetzt
werden, ferner kann aber auch eine direkte Steuerung zugeordneter
Einrichtungen mit dieser Einzelinformation erfolgen. Besonders zweckmäßig ist eine solche Verfahrensart bei Einzelbitein-
und -Ausgaben für Steuerfunktionen, z. B. in Steuerungsanlagen, für das Abfragen oder Abtasten von Meßwerten usw.
Trotz der kurzen Befehlswortlänge kann also nicht nur eine
große Anzahl unterschiedlicher Adressen dargestellt werden, sondern es ist auch eine direkte Ansteuerung einzelner Bits
von Speicherinhalten möglich.
Das Verfahren nach der Erfindung kann in der vorher beschriebenen Ausführungsform derart weiter ausgebildet sein, daß
die gekennzeichnete Einzelstelle unabhängig von den anderen Stellen ihres Speicherabschnitts geändert wird.
Eine weitere Ausführungsform zeichnet sich dadurch aus, daß
mindestens einer der den auszulösenden Operationen zugeordneten Speicherabschnitte durch Sprungbefehle ansteuerbar ist
und als Quelle für eine Speicherseitenadresse verwendet wird. 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 d,er 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 d.urch den Sprung erreicht werden soll. Zum Erreichen einer Speicherseite reicht eine kurze Adresse aus. Soll der
- 11 609830/0470
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 Befehlszählregister 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 Befehlswortlänge nicht 8, sondern 16
Bit 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 Speicherabschnitt 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 Speicherabschnitten des internen Speichers deB Mikroprozessors durchgeführt werden.
Die Speicherseitenadressen sind zweckmäßig im innersten Bereich des Speicherraums enthalten und. stets zugriffsbereit.
Dieser Speicherbereich kann durch praktisch alle Operationen manipuliert werden« Dies erfolgt ohne zusätzliche Übertragungsbefehle
oder Beanspruchung des Akkumulators. Insbesondere bei der integrierten Fertigungstechnik können die hierzu vorgesehenen
Speicherzellen durch einen Block besonders einfach verwirklicht werden.
- 12 -
609830/0470
Ein Ausführungsbeispiel eines Verfahrens nach der Erfindung wird, im folgenden anhand einer in der Figur dargestellten
Anordnung zur Durchführung des Verfahrens beschrieben.
In der Figur ist das: Blockbild, einer Einrichtung dargestellt,
die im folgenden auch als Mikroprozessor bezeichnet wird. Diese Einrichtung gestattet die Zuordnung von Adressen abhängig
von ihr zugeführten Befehlsworten. Die Befehlsworte
werden im dargestellten Ausführungsbeispiel als achtstellige binäre Worte über acht Eingangsleitungen auf eine Eingangsschaltung
10 geführt, die zugeordneten Ad.reßworte werden von einer Ausgangsschaltung 4j3 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. 11, welches das jeweilige Befehlswort abhängig von einem Steuersignal 15-1
über 8 Ausgangsleitungen in ein Befehlsregister 1J>
einspeichert, welches entsprechend der Länge des Befehlswortes achtstellig
ausgeführt ist "ittnd. beispielsweise aus einzelnen Flip-Flops
FO - F7 aufgebaut sein kann. Die Ausgänge der einzelnen Stellen des Befehlsregisters IJ>
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 Adreßworte abgibt. Die Adreßworte werden auf einen Adressenmultiplexer l8 geführt, dessen Betrieb
durch die an den Ausgängen 17 d.es Zuordners 14 abgegebenen Steuersignale gesteuert werden kann. Die Steuersignale 15
dienen zur Steuerung der in der Figur dargestellten Einrichtung in noch zu beschreibender Weise. Ein weiterer Eingang
des Zuordners 14 ist über eine Eingangsleitung 33 mit
einer Schaltung yi verbunden, die ein Zustandsignal abgibt,
609830/0470 ^ "
welches einen noch zu beschreibenden Zweck erfüllt.
Der Adressenmultiplexer 18 ist über seine Ausgangsleitung mit einem Adressendecod.ierer 20 verbunden, welcher die ihm
zugeführten 5-stelligen Adreßworte decodiert und abhängig von der jeweils decodierten Adresse einen Speicher 21 ansteuert,
der im dargestellten Ausführungsbeispiel aus Speicherabschnitten SO - S32 besteht, die jeweils 8-stellig
ausgeführt sind. Dem Eingang dieses Speichers werden über eine Leitung 32 und ein UND-Glied 44 abhängig von Steuersignalen
15-2, die einem der Ausgänge 15 des Zuordners l4
entnommen werden, 8-stellige Informationsworte zugeführt, die beispielsweise Operationsergebnisse oder Hilfsadressen
sein können.
Diese Informationsworte werden durch eine im linken Teil der Figur dargestellte Anordnung von Registern und Multiplexern
erzeugt. Diese Anordnung kann als Rechenwerk bezeichnet werden.
Dem Speicher 21 und. dem vorgenannten Rechenwerk ist jeweils ein Multiplexer 24 bzw. 25 nachgeschaltet, der über eine
Leitung 20 mit den 8-stelligen 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 Sfach-Ausgangsleitung
~5>K ein Befehlszählregister 39 und ein Seitenadreßregister
38. Diese beiden Register sind jeweils 8-stellig
ausgeführt und können beispielsweise aus 8 Zähl-Plip-Plops
YO - Y7 bzw. XO - X7 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 I5-8 bzw. 15-9 aufgesteuert wird.
- 14 609830/0470
Das Befehlszahlregister ist über einen Zähleingang außerdem
mit einem UND-Glied 42 verbunden, welches durch die Steuersignale 15-12 aufgesteuert wird und ein +1-Zählsignal auf
das Befehlszahlregister 39 schaltet.
Die beiden Register 38 und 39 geben ihren jeweils gespeicherten
Inhalt jeweils an einen Multiplexer 40 bzw. 4l ab, dem
ferner die Signale der bereits beschriebener Leitungen 32 und.
34 zugeführt werden. Diese beiden Multiplexer 40 und 4l werden
durch Steuersignale 15-10 und 15-11 gesteuert. An ihren Ausgängen treten jeweils 8-stellige Adressenteilworte auf, die
der Ausgangsschaltung 43 zugeführt werden und von dieser als
ein zusammengesetztes ΐβ-stelliges Adressenwort abgegeben
werden können.
Das bereits genannte Rechenwerk besteht aus einer arithmetischlogischen Einheit 27, einem Akkumulatorregister 29, 3 Multiplexern
25, 28 und 30 sowie der bereits beschriebenen Schaltung
31 zur Abgabe eines Zustandssignals. Ferner ist ein
Decodierer 35 vorgesehen, der das Zustandssignal decodiert und entsprechend, ein 8-stelliges Signal an den Multiplexer
28 liefert. Der Multiplexer 25 liefert die Ausgangssignale für die bereits beschriebene Leitung 32 und wird außer durch
die Signale der Leitung 26 mit 8-stelligen Worten angesteuert,
die d.em Akkumulatorregister 29 entnommen werden. Dieses Register wird. d.urch den Multiplexer 28 angesteuert, welcher
ihm die 8-stelligen Worte zuführt, die als Operationsergebnisse in der arithmetischt-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 8-stelligen Signale der Leitung 32 zugeführt.
Die arithmetisch-logische Einheit 27 kann ferner bestimmte Testsignale oder auch Überlaufsignale an den MuIti-
- 15 609830/0470
plexer J>0 abgeben, der durch Steuersignale 15-6 gesteuert
wird. Dieser Multiplexer "30 wird ferner durch die auf der
Leitung 32 anstehenden 8-stelligen Informationsworte beaufschlagt und gibt an seinem Ausgang ein Signal ab, welches ;
die Schaltung J>1 derart steuert, daß sie das bereits beschriebene
Zustandssignal abgeben kann. Die Punktion 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 Befehlsworten über das Befehlszählregister 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 betrachtet, für die die Erfindung in besonders vorteilhafter 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.
Zunächst ist für alle im folgenden zu beschreibenden Betriebsfälle von Wichtigkeit, daß der Adressenmultiplexer l8 abhängig
■ - 16 6 0 9 8 3 0/0 4 7 0
von dem Operationstyp des in dem Zuordner 14 entschlüsselten
Befehls eine Adresse abgibt, die in dem Adressendecodierer decodiert wird und die Ansteuerung eines ganz bestimmten
Speicherabschnitts SO - S32 ermöglicht. Es handelt sich hier um die erfindungsgemäße Zuordnung bestimmter Speicherabschnitte
zu bestimmten regelmäßig wiederkehrenden Operationsarten. Der Inhalt des jeweils auf diese Weise angesteuerten Speicherabschnitts
des Speichers 21 wird dann über den Multiplexer 24, das UND-Glied 37, das Befehlszählregister 39 und den Multiplexer
4l der Ausgangsschaltung 43 bzw. deren Ausgangsleitungen zugeführt. Es ist aber auch möglich, daß abhängig von noch zu
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 y\ direkt auf beide Multiplexer 40 und 41 zu leiten
und wahlweise über diese jeweils ein 8-stelliges Wort an die
Ausgangsschaltung 43 abzugeben.
1. Ausführung eines Sprungbefehls
Ein Sprungbefehl in Form eines 8-stelligen Befehlswortes
wird der Eingangsschaltung 10 zugeführt und über das UND-Glied 11 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 Sprungbefehl maßgebenden Seitenadresse erfolgt nun nach dem Verfahren der Erfindung derart, daß der Sprungbefehl
in dem Zuordner 14 die Bildung einer Ansteueradresse für einen Speicherabschnitt des Speiehers 21 erseugt, die
über die Ausgangsleitung 19 des Ad.resser^i-.iitiplexers 18
sowie den Adressendecodierer 20 eine Ausspeicherung des
Inhalts eines ganz bestimmten Speicherabschnitts SO aus dem Speicher 21 bewirkt, wobei dieser Speicherabschnitt
erfindungsgemäß einer ganz bestimmten Operationsart zugeordnet sein kann. Diese Ausspeicherung erfolgt über den
Multiplexer 24, gesteuert durch das UND-Glied J>6 in das
Seitenadreßregister 38. Die beiden Register 38 und 39 enthalten
somit jeweils eine Teiladresse, die über die beiden Multiplexer 40 und. 4l in der Ausgangsschaltung 43 zu einem
l6-stelligen 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 automatisch 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 YJ>
eingegeben und bewirkt dann in dem Zuordner 14 durch den nur mit einem Operationsteil gegebenen
Informationsinhalt die Erzeugung einer Adresse, die über den Adressenmultiplexer l8 und den Adressendecodierer
20 die Ansteuerung eines Speicherabschnitts des Speichers 21, der bevorzugt für Eingabeadressen dieser entsprechenden Befehlsart
fest zugeordnet ist. Aus diesem Speicherabschnitt wird die vorhandene Information ausgespeichert und über den
Multiplexer 24 und das UND-Glied J>6 durch dessen Aufsteuerung
in das Seitenadreßregister 38 eingegeben. In einer weiteren Taktphase wird mittels des Zuordners 14 und des Adressenmultiplexers
l8 eine weitere Adresse gebildet, die über den Adressendecodierer 20 die Ausspeicherung des Inhalts desjenigen
Speicherabschnitts bewirkt, der dem zuvor angesteuerten Speicherabschnitt unmittelbar benachbart ist. Der In-
- 18 609830/0470
halt dieses Speicherbefehls ist eine Teiladresse, die über den Multiplexer 24 und. dessen Ausgangsleitung 34 sowie den
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
l6-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ß d.ort 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 3I zur Abgabe eines Zustandssignals
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 beispielsweise dazu
verwendet werden, den nächstfolgenden Befehl durch entsprechende Ansteuerung des Zuordners 14 über die Leitung 33 konditioniert
auszuführen.
- 19 6 09830/0470
3. Ausführung von Ausgabebefehlen
Ausgabebefehle 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 eingegeben und bewirkt über den Zuordner
14 die* Bildung einer Adresse, die über den Adressenmultiplexer
18 und den Adressendecodlerer 20 die Ansteuerung eines Speicherabschnitts des Speichers 21 bewirkt, der bevorzugt .
zur Bereithaltung von Ausgabespeicheradress.en bestimmt ist, wie dies durch die Erfindung vorgesehen ist. Der Inhalt, dieses
Speicherabschnitts wird über den Multiplexer 24 und· seine
Ausgangsleitungen ~$\ sowie den Multiplexer 41 in die Ausgangsschaltung 45 übertragen und bildet dort den Adreßteil
des auszugebenden Gesamtwortes. Der Informationsteil 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 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. ·
Im Zusammenhang mit der Ausgabe von Informationsworten aus dem Akkumulatorregister 29 sieht die Erfindung die Möglichkeit
vor, daß eine ganz bestimmte Stelle des auszugebenden Informationswortes vor der Ausspeicherung aus dem Akkumulatorregister
29 modifiziert werden kann. Da die Schaltung 31 zur Kennzeichnung des Zustandes einer 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*
-■20
609830/0470
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 Punktionen 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.-Paßt man diese
wenigen Stellen des Befehlswortes 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 Ansteueradresse 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 Speicher-
- 21 609830/0470
abschnitt enthält eine Seitenadresse, die in bereits beschriebener
Weise in das Seitenadreßregister 38 eingegeben wird. Der auf diesen Speicherabschnitt unmittelbar folgende
Speieherabschnitt 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 4l 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, in denen abhängig
von einem zugeführten Befehlswort von der Ausgangsschaltung 43 Adreßworte abgegeben werden können. Es ist jedoch bei
einer Einrichtung der hier betrachteten Art auch erforderlich, den Inhalt der einzelnen Abschnitte 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 der Erfindung 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 besehrieben 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 daraufhinzuweisen, daß einer der Speicherabschnitte des Speichers 21, im dargestellten Ausführungsbeispiel der
Speicherabschnitt SO, an den Stellen 0-4 eine Verbindung 23
zum Adressenmultiplexer l8 aufweist, über die der Adressenmultiplexer l8 angesteuert werden kann. Der Inhalt der Stellen
0-4 des Speicherabschnitts SO kann also dauernd über die fünfadrige Verbindung 23 auf den Adressenmultiplexer l8 einwirken
und zu einer Adressenbildung in dieser Schaltung ausgenutzt werden. Wenn ein adreßteilloser Befehl in das Befehls-
609830/0470
- 22 -
register 1J> eingespeichert wird, so wird, das Fehlen des
Adreßteils durch den Zuordner 14 erkamnt und dort unmittelbar die Auswertung derjenigen Informationen veranlaßt, die
über die Verbindung 2.J1 zur Verfügung stehen. Hierzu dient
eine besondere Gruppe von Steuersignalen, die über den Ausgang 17 des Zuordners 14 auf den Adressenmultiplexer l8 einwirken.
Durch Auswertung des Inhalts der Speicherstellen 0-4 über die Verbindung 23 wird also in dem Adressenmultiplexer
unmittelbar eine Hilfsadresse erzeugt, mit der über den Adressendecodierer 20 einer der Abschnitte des Speichers 21
angesteuert werden kann. Der Inhalt des angesteuerten Speicherabschnitts kann dann über den Multiplexer 24 und die
Leitung ^4 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 Rechenwerk erfolgen kann. Die Rückspeicherung nach erfolgter Manipulation geschieht dann über den Multiplexer 25
und seine Ausgangsleitung J>2 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 kuresen 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 l6-stellige 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 Zuordnung der Inhalte der einzelnen Speicherabschnitte zu ganz bestimmten Operationsarten, die eine wesentliche
- 23 -
609830/0470
Verkürzung der zu verwendenden Befehlsworte mit sich bringt, wird auch der funktionelle Aufwand herabgesetzt, denn die
Inhalte der Speicherabschnitte müssen keinem umständlichen Umweg über das 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 sieh 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.
Speicherelemente können durch Anwendung der integrierten Technik
und spezieller Schaltkreistechniken sehr kompakt aufgebaut werden.
Da als einziges Speiehermedium für die bei dem erfindungsgemäßen Verfahren 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.
Die gemäß der Erfindung vorgesehene Abfrage beliebiger Stellen eines Datenwortes erfolgt ohne Veränderung des Inhalts des
Akkumulatorregisters 29. Dadurch bietet sich die Möglichkeit, beispielsweise eine Überwachung von Peripheriezuständen ohne
Unterbrechung des jeweiligen Programmablaufs durchzuführen, indem
das von der Schaltung J>1 gelieferte Kriterium durch Steuerung des
Zuordners 14 unmittelbar zur Steuerung eines konditionieren Sprungbefehls ausgenutzt wird.
- 24 609830/04 70
Einige der Steuersignale 15 können auch an besondere
Ausgänge des Mikroprozessors geführt sein und dienen dann beispielsweise dazu, extern Befehlsgruppen in
Verbindung mit besoüeren Einheiten abzuwickeln, z.B.
mit Befehlsspeichern, Datenspeichern sowie Ein- und Ausgabeeinheiten.
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
beanspruchte
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.
£ rt C1 9 1J f>
^ \j 4 4 ts ^
^ \j 4 4 ts ^
Claims (8)
- PatentansprücheVerfahren zur Zuordnung von Adressen in Datenverarbeitungseinrichtungen abhängig von einer Steuerung durch Befehle, bei dem jedes Befehlswort die Ausgabe eines Adreßworts in Paralleldarstellung aus einem Speieherabschnitt bewirkt, dadurch gekennzeichnet, daß Befehlsworte konstanter Wortlänge, jedoch mit variablem Operationsteil und. entsprechend, variablem Adreßteil verwendet werden, wobei die Länge des Adreßteils umgekehrt proportional der Häufigkeit der Ansteuerung von mit der jeweiligen Adresse zu erreichenden Speicherabschnitten bemessen ist, und. daß innerhalb des die Speicherabschnitte umfassenden Speicherraums bestimmten, mittels der in ihnen gespeicherten Adreßworte auszulösenden Operationen bestimmte Speicherabschnitte zugeordnet sind.
- 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Bemessung der Länge des Adreßteils entsprechend, der Zahl der Speicherabschnitte erfolgt, die für den jeweiligen Befehl erreichbar sein müssen.
- 3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß der längstmögliche Adreßteil für organisatorische Befehle vorgesehen ist.
- 4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß mindestens einer der den auszulösenden Operationen zugeordneten Speicherabschnitte durch Befehle ohne Adreßteil angesteuert wird.
- 5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß mindestens einer der durch adressenlose Befehlsworte ansteuerbaren Speicherabschnitte als Adreßregister verwendet wird.- 25 609830/0470
- 6. Verfahren nach Anspruch 4 oder 5* dadurch gekennzeichnet, daß innerhalb des jeweiligen Befehlswortes eine Kennzeichnung einer Einzelstelle des jeweils angesteuerten Speicherabschnitts erfolgt.
- 7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daßdie gekennzeichnete Einzelstelle unabhängig von den anderen Stellen ihres Speicherabschnitts geändert wird.
- 8. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß mindestens einer der den auszulösenden Operationen zugeordneten Speicherabschnitte durch Sprungbefehle ansteuerbar ist und als Quelle für eine Speicherseitenadresse verwendet wird.609830/0470
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 true DE2502005A1 (de) | 1976-07-22 |
| DE2502005C2 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)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5978738A (en) | 1997-02-13 | 1999-11-02 | Anthony Brown | Severe weather detector and alarm |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE1101823B (de) * | 1956-12-12 | 1961-03-09 | S E A Soc D Electronique Et D | Numerisches elektrisches Rechengeraet |
| 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 |
-
1975
- 1975-01-20 DE DE19752502005 patent/DE2502005C2/de not_active Expired
-
1976
- 1976-01-14 JP JP292176A patent/JPS5732815B2/ja not_active Expired
- 1976-01-19 GB GB196376A patent/GB1520981A/en not_active Expired
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE1101823B (de) * | 1956-12-12 | 1961-03-09 | S E A Soc D Electronique Et D | Numerisches elektrisches Rechengeraet |
| 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 |
Non-Patent Citations (2)
| Title |
|---|
| Datenverarbeitungsanlage 3003, Siemens u. Halske AG, NV BS 107/1, Mai 1963, S. 8 * |
| Elektronische Rechenanlagen, H. 6, 1974, S. 230-235 * |
Also Published As
| Publication number | Publication date |
|---|---|
| GB1520981A (en) | 1978-08-09 |
| DE2502005C2 (de) | 1982-05-13 |
| JPS5732815B2 (de) | 1982-07-13 |
| JPS5197341A (de) | 1976-08-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE2515696C2 (de) | Datenverarbeitungssystem | |
| DE2755273C2 (de) | ||
| DE1499193C3 (de) | Speicher-Adressierschaltung | |
| DE2154106A1 (de) | Arbeitsspeicherwerk | |
| EP0097725B1 (de) | Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen | |
| DE2364408A1 (de) | System zur erstellung von schaltungsanordnungen aus hochintegrierten chips | |
| DE2339636C2 (de) | Einrichtung zur Adressierung eines schreibbaren Mikroprogrammspeichers | |
| CH650600A5 (de) | Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister. | |
| DE1928202B2 (de) | Einrichtung zur Erstellung statistischer Daten über den Operationsablauf programmgesteuerter Datenverarbeitungsanlagen | |
| DE2355993A1 (de) | Datenverarbeitungseinheit einschliesslich mikroprogramm-steuereinrichtung | |
| DE2062228A1 (de) | Datenverarbeitungssystem mit gleich zeitigem Zugriff auf mehrere Speicher stellen | |
| DE2164793A1 (de) | Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit | |
| DE2433436A1 (de) | Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer | |
| DE1190706B (de) | In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine | |
| DE1524898C3 (de) | Datenspeicher mit direktem mehrdimensionalen Zugriff zur gleichzeitigen Entnahme mehrerer Wörter | |
| DE2245284A1 (de) | Datenverarbeitungsanlage | |
| DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
| CH495584A (de) | Datenverarbeitungsanlage | |
| DE2403669A1 (de) | Spezialcomputer | |
| DE1774421B1 (de) | Mehrprogramm datenverarbeitungsanlage | |
| DE3101270C2 (de) | Rechneranordnung zur Wortverarbeitung mit einer Einrichtung zur Funktionserweiterung | |
| DE2502005A1 (de) | Verfahren zur zuordnung von adressen in datenverarbeitungseinrichtungen | |
| DE2343501B2 (de) | Steuerschaltung für zumindest eine Rechenanlage mit mehreren für die Durchführung von EuWAusgabe-Programmen bestimmten Registern | |
| DE1296429B (de) | Datenbearbeitungsanlage | |
| DE2204680C3 (de) | Mikroprogramm-Steuereinrichtung |
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 |