DE2528164A1 - Adressieranordnung fuer eine datenverarbeitungsanlage mit programmspeicher - Google Patents

Adressieranordnung fuer eine datenverarbeitungsanlage mit programmspeicher

Info

Publication number
DE2528164A1
DE2528164A1 DE19752528164 DE2528164A DE2528164A1 DE 2528164 A1 DE2528164 A1 DE 2528164A1 DE 19752528164 DE19752528164 DE 19752528164 DE 2528164 A DE2528164 A DE 2528164A DE 2528164 A1 DE2528164 A1 DE 2528164A1
Authority
DE
Germany
Prior art keywords
memory
word
address
program
order bits
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.)
Pending
Application number
DE19752528164
Other languages
English (en)
Inventor
Marc Jean-Pierre Leger
Georges Pierre Gustave Mitaut
Marc Andre Regnier
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.)
International Standard Electric Corp
Original Assignee
International Standard Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Standard Electric Corp filed Critical International Standard Electric Corp
Publication of DE2528164A1 publication Critical patent/DE2528164A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means

Landscapes

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

Description

Dipl.-Phys. Leo Thul
Stuttgart
M.J.P. Leger 15-1-15
INTERNATIONAL STANDARD ELECTRIC CORPORATION, NEW YORK
Adressieranordnung für eine Datenverarbeitungsanlage mit Programmspeicher.
Die vorliegende Erfindung betrifft mit einem gespeicherten Programm arbeitende Steuereinheiten, insbesondere eine Anordnung zur Adressierung des Speichers solcher Einheiten.
Um die Kosten von Steuereinheiten mit gespeichertem Pro-' gramm zu reduzieren, ist die Verwendung von Festwertspeichern oft vorteilhafter als die Verwendung von Speichern mit wahlfreiem Zugriff, die zwar flexibler aber auch teurer sind. Festwertspeicher können zur Programmspeicherung benutzt werden, dadurch wird aber eine spätere Änderung des Programms verhindert.
Im Einzelnen sind die Adressen zum Speichern von Daten durch Instruktionen vorherbestimmt. Die Daten sind normalerweise in "Tabellen" enthalten, wobei der Platz eines Datenwortes durch die Nummer der Tabelle und die Nummer der Spalte in dieser Tabelle bestimmt ist.
20.6.1975
Fk/Mr
509883/0741
_ ρ —
1-i.J.P.Le.ger 15-1-15
Das Ausmaß der Benutzung einer solchen Anlage wechselt häufig unter den verschiedenen Benutzern und damit auch die Menge der Daten und der Umfang der "Tabellen"; daraus ergibt sich, daß beim Schreiben von Programmen die Datenadressen so abgefaßt werden müssen, daß auch in ungünstigsten Fall, d.h. bei maximalem Datenanfall, für alle Daten Speicherplätze bzw. "Tabellen" zur Verfügung stehen.
Der prinzipielle Nachteil dieser Methode ist die starre Gebundenheit des Programmierers an diese Vorschrift und die Tatsache, daß Speicherplätze bereit gestellt werden müssen,, die oft nur teilweise belegt werden.
Die Erfindung stellt sich die Aufgabe, diese Nachteile zu beiseitigen. Sie geht dabei von einem Verfahren aus, das zur Adressierung des Speichers einer mit gespeichertem Programm arbeitenden Steuereinrichtung die aktuelle Adresse eines Wortes im Speicher aus einer Programmadresse gewinnt.
Die Aufgabe wird dadurch gelöst, daß einem Register mit den Bits höherer Ordnung drei zusätzliche, eingangsseitig parallelgeschaltete Speicher nachgeschaltet sind, wobei der erste Speicher die aktuelle Adresse des Speicherblocks enthält,in dem ein adressiertes Befehlswort enthalten ist, der zweite Speicher die aktuelle Adresse des Speicherblocks enthält, in dem die Tabelle mit einem adressierten Datenwort anfängt, und der dritte Speicher die Adresse des ersten Wortes der Tabelle enthält, in der ein adressiertes Datenwort liegt, daß einem Register mit den Bits niedriger Ordnung eine erste Addierschaltung und eine Auswahlschaltung nachgeschaltet sind, daß dem zweiten Speicher eine zweite Addierschaltung nachgeschaltet ist, daß der Ausgang des dritten Speichers mit der
509883/0741
K.J.P-. Leger 15-1-15
ersten Addierschaltung verbunden ist, daß der Ausgang der zweiten Addierschaltung und der Ausgang des ersten Speichers mit dem RAM-Teil des Speichers des Steuersystems verbunden sind und daß die Auswahlschaltung mit dem ROM-Teil des Speichers des Steuersystems verbunden ist.
Die Erfindung wird nun anhand der Zeichnung beschrieben. Die dort dargestellte erfindungsgemäße Anordnung kann z.B. in Verbindung mit einem 8-Bit-Mikroprozessor (nicht dargestellt) und dessen Speieher 6 betrieben werden. Der Speicher 6 besteht aus einem Festwertspeicherteil (ROM) zur Programmspeicherung und einem Speicherteil mit wahlfreiem Zugriff (RAM) zur Datenspeicherung. Der Speicher ist weithin unterteilt in eine Anzahl von Blöcken, die eine bestimmte Anzahl von Speicherplätzen besitzen. Der Speicher 6 läßt sich dadurch gut in integrierter Bauweise herstellen.
Im folgenden wird angenommen, daß die tatsächliche Adresse eines Wortes im Speicher 6 aus einem ersten Teil besteht, der die Nummer des Blocks angibt, und einem zweiten Teil, der die Plazierung des adressierten Wortes innerhalb des bezeichneten Blocks kennzeichnet.
Diese Adresse, die vom Mikroprozessor abgegeben wird, gelangt in zwei 8-Bit-Register L (Bits niedriger Ordnung)und H (Bitshöherer Ordnung). Die Bits höherer Ordnung gelangen vom Register H an parallelgeschaltete Speicher 1,2 und 3, die z.B: als wiederprogrammierbare Festwertspeicher (PROM) ausgeführt sind. Die Bits niedriger Ordnung gelangen gleichzeitig an eine erste Addierschaltung 4 und an eine Auswahlschaltung 7. Der Speicher 3 ist ausgangsseitig mit einem anderen Eingang der Addierschaltung 4 verbunden, deren Ausgang mit einem zweiten Eingang der Auswahlschaltung 7 verbunden ist. Der Speicher 2 ist'ausgangsseitig mit einer zweiten Addierschal-
509883/0741
M.J.P.Leger 15-1-15
tung 5 verbunden, die außerdem von der ersten Addierschaltung 4 ein Zusatzbit R erhält. Der Speicher 6 erhält die tatsächliche Adresse, die aus den 8 Bits höherer Ordnung bestehts die entweder von der zweiten Addierschaltung 5 oder vom Speicher stammen.
Nun wird die Arbeitsweise der Anordnung an zwei Fällen erläutert: wenn die Programmadresse ein Wort im Festwertspeicher (ROM) des Speichers 6 bezeichnet und wenn die Programmadresse ein Wort im Speicherteil mit wahlfreiem Zugriff (RAM) bezeichnet. Im ersten Fall handelt es sich um eine Lese-Instruktion, während im zweiten Fall entweder ein Schreib- oder eine Lesevorgang veranlaßt wird.
Dabei wird davon ausgegangen, daß der Mikroprozessor außer der Programmadresse ein Signal abgibt, das anzeigt, ob die abgegebene Programmadresse ein Datenwort (Signal DA) im RAM-Teil, oder eine Instruktion (Signal DA) im ROM-Teil betrifft. Ist diese Situation nicht gegeben, kann die Unterscheidung mit Hilfe einer Erkennungsadresse innerhalb des Programms getroffen werden, vor dessen Auftreten nur Programmadressen einer Art und dann nur Programmadressen der anderen Art auftreten. Eine Vergleichsschaltung erzeugt dann die Signale DA und DA aus den Bits höherer Ordnung und der Erkennungsadresse. Die beiden Signale DA und DA gestatten die Auswahl einer der beiden Betriebsweisen, die nun beschrieben werden.
Erste Betriebsart: Lesen eines Instruktionswortes.
Die Programmadresse in den Registern H und L bezeichnet eine Instruktion; sie bezieht sich damit auf ein Wort im ROM-Speicherteil. Dieser Speicherteil dient zur Programmspeicherung,
509883/0741
M.J.P. Leger 15-1-15
Wird die erfindungsgemäße Anordnung zur Steuerung einer FernsprechveriTiittlungsstelle benutzt, werden auch Sonderprogramme wie z.B. Konferenzprogramme hier abgespeichert. Die Programme können nach ihrer Abspeicherung im Festwertspeicherteil nicht mehr geändert werden, es ist jedoch mit Hilfe der Erfindung möglich, einige integrierte Schaltungen mit Sonderprogrammen auszutauschen.
Zunächst wird das Signal DA erzeugt, das dann an der Auswahlschaltung 7 anliegt und die übertragung der 8 Bits niedriger Ordnung aus dem Register L zum Speieher 6 ermöglicht, wobei die Bitwerte nicht geändert werden. Gleichzeitig wird der Ausgang des Speichers 1 aktiviert, der die 8 Bits höherer Ordnung abgibt, die die aktuelle Adresse des beteiligten Wortes im Speicher darstellen. Damit ist der Datenblock festgelegt, in dem sich das adressierte Wort befindet. Um die Lage von integrierten Schaltungen mit Programmen zu ändern, genügt damit der Speicher 1, durch den verschiedene Zuordnungen vorgenommen werden können. Damit werden die Programme unabhängig von der Anordnung der integrierten Schaltungen, die entsprechend den Wünschen des Benutzers optimiert werden kann.
Zweite Betriebsart: Lesen oder Schreiben eines Datenwortes.
Die Programmadresse in den Registern H und L bezeichnet ein Datenwort und damit den RAM-Speicherteil. Da der Umfang der Datentabellen von einem System zum anderen unterschiedlich sein kann, gibt die Programmadresse eines Datenwortes die Nummer der Tabelle und die Position des Wortes in dieser Tabelle an. Die Tabellenadresse besteht aus den 8 Bits höherer Ordnung der Programmadresse im Register H, die an den Speichern
509883/0741
M.J.P. Leger 15-1-15
2 und 3 anliegen. Der Speicher 2, dessen Ausgang durch das Signal DA aktiviert wird, gibt 8 Bits ab, die die Nummer des Speicherblocks angeben, in dem die gesuchte Tabelle abgespeichert ist, und der Speicher 3 gibt 8 Bits niedriger Ordnung ab, die die aktuelle Adresse des Wortes innerhalb der adressierten Tabelle angeben. Zusammen kennzeichnen diese 16 Bits demnach die aktuelle Adresse des ersten Wortes der Tabelle, in dem sich das gesuchte Wort befindet.
Weiterhin werden die 8 Bits aus dem Register L zu den 8 Bits aus dem Speicher 3 addiert (erste Addierschaltung H)3 wodurch man die Bits niedriger Ordnung der aktuellen Adresse des Wortes erhält. Selbst unter der Annahme, daß eine Datentabelle nicht auf einen Speicherblock beschränkt ist, d.h. z.B., daß sie noch den nächsten Speicherblock benötigt, läßt sich dieser Fall lösen, indem man ein Zusatzbit R verwendet. Dieses Zusatzbit R wird in der zweiten Addierschaltung 5 zu den 8 Bits vom Speicher 2 addiert, die die Nummer des Speicherblocks angeben, in dem die Tabelle anfängt, und diese gelangen dann zum Speicher 6, wodurch dann der nächste Speicherblock adressiert werden kann.
Die erfindungsgemäße Anordnung ermöglicht einfaches Programmieren und bessere Speicherausnutzung.
Bei der dargestellten Ausführungsform wird davon ausgegangen, daß die Adressen auf dem Weg vom Mikroprozessor zum Speicher 6 geändert werden; sollten die dadurch entstehenden Verzögerungen zu hoch sein, ist es möglich, die Anordnung gemäß der Erfindung nur dann einzusetzen, wenn die Programmadresse ein Datenwort oder ein Befehlswort in einem Zusatzp r ogramm bezeichnet. Zu diesem Zweck kann man jeder Programmadresse einen bestimmten Code hinzufügen, aufgrund dessen ein Ver-
609883/0741
M.J.P.Leger 15-1-15
gleicher feststellen kann,- ob die Anordnung zur Adressenumwertung zwischengesehaltet werden soll oder nicht. Dadurch werden in allen anderen Fällen Verzögerungen vermieden.
509883/0741

Claims (2)

  1. M.J.P.Leger 15-1-15
    Patentansprüche
    Anordnung zur Adressierung eines Speichers eines mit gespeichertem Programm arbeitenden Steuersystems, um die aktuelle Adresse eines Wortes im Speicher aus einer Prograinmadresse zu gewinnen, wobei eine Programmadresse aus einer Gruppe von Bits höherer Ordnung zur Kennzeichnung eines Speicherblocks und einer Gruppe von Bits niederer Ordnung zur Kennzeichnung eines Platzes innerhalb eines Speicherblocks besteht und der Speicher aus einem RAM-Teil zur Speicherung von Datenworten und aus einem ROM-Teil zur Speicherung von Befehlsworten besteht, dadurch gekennzeichnet, daß einem Register (H) mit den Bits höherer Ordnung drei zusätzliche, eingangsseitig parallelgeschaltete Speicher (1,2,3) nachgeschaltet sind, wobei der erste Speicher (1) die aktuelle Adresse des Speicherblocks enthält, in dem ein adressiertes Befehlswort enthalten ist, der zweite Speicher (2) die aktuelle Adresse des Speicherblocks enthält, in dem die Tabelle mit einem adressierten Datenwort anfängt, und der dritte Speicher (3) die Adresse des ersten Wortes der Tabelle enthält, in der ein adressiertes Datenwort liegt, daß einem Register (L) mit den Bits niedriger Ordnung eine erste Addierschaltung (4) und eine Auswahlschaltung (7) nachgeschaltet sind, daß dem zweiten Speicher (2) eine zweite Addierschaltung (5) nachgeschaltet ist, daß der Ausgang des dritten Speichers (3) mit der ersten Addierschaltung (4) verbunden ist, daß der Ausgang der zweiten Addierschaltung
    (5) und der Ausgang des ersten Speichers (1) mit dem RAM-Teil des Speichers (6) des Steuersystems verbunden sind und daß die Auswahlschaltung (7) mit dem ROM-Teil des Speichers
    (6) des Steuersystems verbunden ist.
    509683/0741
    _ η
    K.J.P.Leger 15-1-15
  2. 2. Anordnung nach Anspruch I3 dadurch gekennzeichnet, daß Mittel vorgesehen sinda um nicht umzuwertende Adressen ungeändert zum Speicher (6) des Steuersystems zu übertragen.
    509883/0741
DE19752528164 1974-06-28 1975-06-24 Adressieranordnung fuer eine datenverarbeitungsanlage mit programmspeicher Pending DE2528164A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7422637A FR2276636A1 (fr) 1974-06-28 1974-06-28 Dispositif pour adresser la memoire d'un systeme de commande a programme enregistre

Publications (1)

Publication Number Publication Date
DE2528164A1 true DE2528164A1 (de) 1976-01-15

Family

ID=9140672

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19752528164 Pending DE2528164A1 (de) 1974-06-28 1975-06-24 Adressieranordnung fuer eine datenverarbeitungsanlage mit programmspeicher

Country Status (4)

Country Link
BE (1) BE830717A (de)
DE (1) DE2528164A1 (de)
FR (1) FR2276636A1 (de)
GB (1) GB1482819A (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2445989B1 (fr) * 1979-01-02 1987-06-26 Honeywell Inf Systems Dispositif de determination de priorite et d'interruption d'un systeme de traitement de donnees
US4365294A (en) * 1980-04-10 1982-12-21 Nizdorf Computer Corporation Modular terminal system using a common bus
FR2515404B1 (fr) * 1981-10-28 1987-06-26 France Etat Ensemble de gestion de la memoire d'un processeur

Also Published As

Publication number Publication date
FR2276636B1 (de) 1977-10-07
GB1482819A (en) 1977-08-17
BE830717A (fr) 1975-12-29
FR2276636A1 (fr) 1976-01-23

Similar Documents

Publication Publication Date Title
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE2926322C2 (de) Speicher-Subsystem
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2164793A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit
DE2758829A1 (de) Multiprozessor-datenverarbeitungssystem
DE2846054C2 (de) Schaltungsanordnung zur Erweiterung des Adressierungsvolumens einer Zentraleinheit, insbesondere eines Mikroprozessors
DE3685844T2 (de) Elektronische schaltung zur verbindung eines prozessors mit einem leistungsfaehigen speicher.
DE2134816A1 (de) Einrichtung zur adressenuebersetzung
DE2952500A1 (de) Steuereinheit in einer vorrichtung zur steuerung und/oder regelung von maschinen
DE3689217T2 (de) Datenverarbeitungseinrichtung mit einer Schaltung zur Prüfung der Adressgrenzen in einem virtuellen Speicher.
DE1549548A1 (de) Vorrichtung zur Aktivierung eines bestimmten Befehls aus einer Vielzahl von Befehlen,die in einem Befehlsspeicher eines Rechners gespeichert sind
DE68925376T2 (de) In Direktabbildung und in Bankabbildung wirksamer Informationsprozessor und Verfahren zum Schalten der Abbildungsschemas
DE2233193B2 (de) Stapel-Speichersystem
DE2528164A1 (de) Adressieranordnung fuer eine datenverarbeitungsanlage mit programmspeicher
DE19859389C1 (de) Verfahren zur Ansteuerung von Funktionseinheiten in einem Prozessor und Prozessoranordnung zur Durchführung des Verfahrens
DE2343501C3 (de) Steuerschaltung für zumindest eine Rechenanlage mit mehreren für die Durchführung von Ein-/Ausgabe-Programmen bestimmten Registern
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE1296429B (de) Datenbearbeitungsanlage
DE2233164A1 (de) Schaltungsanordnung zur ausblendung eines beliebig waehlbaren bereichs einer bitfolge bei deren uebertragung zwischen zwei registern
DE3016952C2 (de) Schaltungsanordnung zum Erweitern des Adressbereichs eines rechnergesteuerten Vermittlungssystems
DE2601379C3 (de) Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen
DE3687116T2 (de) Adressengenerationssystem.
DE10107102B4 (de) Verfahren und Anordnung zur Instruktionswortgenerierung bei der Ansteuerung von Funktionseinheiten in einem Prozessor
DE1474090B2 (de) Datenverarbeitungsanlage
DE3121174C2 (de) Schaltungsanordnung in einem Prozessor

Legal Events

Date Code Title Description
OHJ Non-payment of the annual fee