DE1774259A1 - Verfahren zur Adressierung eines Speichers - Google Patents

Verfahren zur Adressierung eines Speichers

Info

Publication number
DE1774259A1
DE1774259A1 DE19681774259 DE1774259A DE1774259A1 DE 1774259 A1 DE1774259 A1 DE 1774259A1 DE 19681774259 DE19681774259 DE 19681774259 DE 1774259 A DE1774259 A DE 1774259A DE 1774259 A1 DE1774259 A1 DE 1774259A1
Authority
DE
Germany
Prior art keywords
address
register
character
memory
addresses
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
DE19681774259
Other languages
English (en)
Inventor
Walter Dipl-Phys Schiedewitz
Klaus Dipl-Phys Wendlik
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.)
Elektronische Rechenmaschinen Wissenschaftlicher Industriebetrieb VEB
Original Assignee
Elektronische Rechenmaschinen Wissenschaftlicher Industriebetrieb VEB
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 Elektronische Rechenmaschinen Wissenschaftlicher Industriebetrieb VEB filed Critical Elektronische Rechenmaschinen Wissenschaftlicher Industriebetrieb VEB
Publication of DE1774259A1 publication Critical patent/DE1774259A1/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/04Addressing variable-length words or parts of words

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

  • Verfahren zur Adressierung eines Speichers Die Erfindung betrifft ein Verfahren zur Adressierung eines Speichers, bei dem den Zeichen einer Information aufeinanderfolgende Adressen in mehreren Blöcken des Speichers zugeordnet sind und gleichzeitig mehrere Zeichen gespeichert oder entnommen werden. Es ist bekannt, den Hauptspeicher einer Datenverarbeitungsanlage in Blöcke aufzuteilen und aufeinanderfolgende Adressen verschiedenen Blöcken zuzuteilen. Dies kann z. B. geschehen, um die Entnahme von Informationen verschachtelt durchzuführen (BRD-AS 1 194 179). Es sind auch Anlagen bekannt, bei denen jedem Zeichen eine Adresse im Speicher zugeordnet ist und die die gleichzeitige Entnahme oder Eintragung mehrerer Zeichen aus dem Speicher gestatten. Besteht ein Wort z. B. aus zwei Zeichen, werden die Wörter durch geradzahlige Zeichenadressen adressiert. Beide Zeichen liegen dann an den gleichen Stellen zweier Speicherblöcke, von denen der erste die Speicherplätze mit den geradzahligen und der zweite die mit den ungeradzahligen Zeichenadressen im Wort enthält. Es kann aber auch eine Information, die aus zwei Zeichen besteht, so im Speicher plaziert sein, daß das erste Zeichen auf einem Speicherplatz mit ungerader Zeichenadresse und das zweite auf einem Speicherplatz mit der darauffolgenden geraden Zeichenadresse steht, also zwei verschiedenen Wörtern angehört. In diesem Fall ist es bekannt, daB man die Adresse des Wortes" indem das erste Zeichen steht, in die Adressenregister der beiden zugehörigen Blöcke einträgt, das Wort in das Pufferregister des Speichers übernimmt und dos gewünschte Zeichen aus dem Speicherwort auswählt und im nächsten Speicherzyklus die Adresse des Speicherwortes, in dem das zweite Zeichen steht, in die Adressenregister der beiden zugehörigen Speicherblöcke einträgt, das Speicherwort in das Pufferregister übernimmt und das gewünschte zweite Zeichen auswählt. Um eine solche Information, deren Zeichen zwei Wörtern angehören, 2u lesen oder einzuschreiben, sind daher zwei Speicherzyklen nötig.
  • Wenn ein Wort z. B. aus vier Zeichen besteht, werden diese Wörter durch Adressen adressiert, die durch vier teilbar sind. Dieses Wort kann aber auch so im Speieher angeordnet sein, daß das erste Zeichen 'auf einem Speicherplatz mit der Adresse 4 j + '1 oder auf einem Speicherplatz mit der Zeichenadresse 4j + 2 oder auf einem Speicherplatz mit der Zeichenatreese 4 j #t 3 :steht. Auch in diesem Fall und in den Fällen, wo das Wort aus mehr Zeichen zusammengesetzt ist, werden nacheinander zwei Wörter aufgerufen und die benötigten Zeichen ausgewählt. Der Zweck der Erfindung besteht in der Verringerung der Zahl der zur Entnahme oder zur Eintragung benötigten Speicherzyklen und damit in der Erhöhung der Arbeitsgeschwindigkeit des Speichers. Der Erfindung liegt die Aufgabe zugrunde, zu einer Information, deren 2n Zeichen auf aufeinanderfolgenden Speicherplätzen, die auf 2n Blöcke verteilt sind, stehen, wobei diese Zeichen zu zwei verschiedenen Speicherwörtern gehören, in einem Speicherzyklus simultan zuzugreifen. Die Aufgabe wird erfindungsgemäß dadurch gelöst, daß die Adressen, die die den Zeichen zugeordneten Speicherplätze innerhalb der Blöcke festlegen, aus der Adresse des ersten Zeichens in n Stufen gebildet werden, indem in der ersten Stufe 21 Adressen, in der zweiten Stufe 22 und in .der n-ten Stufe 2n Adressen gebildet werden, wobei die Adressen je Stufe um ein Bit verkürzt werden und jede Adresse einer Stufe entweder direkt oder um eins erhöht zweiweitere Adressen der folgenden Stufe liefert. Die Erfindung ermöglicht somit, 2n Zeichen in einem Speicherzyklus aus dem Speicher zu lesen oder in diesen einzuschreiben, ganz gleich, ob das erste Zeichen eine Adresse hat, die durch 2n teilbar ist oder nicht, wenn der Speicher aus mindestens 2n Blöcken besteht. Diese Zeichen können verschiedenen Wörtern angehören. Der erfinderische Gedanke ist selbstverständlich auch dann anwendbar, wenn die Informationen eine Zahl von Zeichen haben, die keine Potenz von 2 ist.
  • Die Erfindung soll nachstehend an zwei Ausführungsbeispielen näher erläutert werden.
  • In der zugehörigen Zeichnung zeigen: Fig. 1: die Zuordnung der Speicherplatzadressen in einem Block, Fig. 2: die Zuteilung der Zeichenadressen zu`cen Blöcken bei Wörtern aus zwei @eichen;° @'' Fig. 3: die Schaltung zur Ansteuerung zweier''8.icke° des Speichers, Fig. 4: die Zuteilung der Zeichenadresse zu den Blöcken bei Wörtern aus vier Zeichen= Fig. 5: die Schaltung zur Ansteuerung von vier Blöcken des Speichers. In der Fig. 1 ist ein Block eines Speichers mit K Speicherplätzen dargestellt (K = 1024). Die Speicherplätze sind von 0 ... 1023 numeriert. Diese Nummern werden im folgenden als Speicherplatzadressen bezeichnet.
  • Die Fig. 2 zeigt eine Aufteilung des Speichers für die gleichzeitige Entnahme von Wörtern, die aus zwei Zeichen bestehen.
  • Hat der Speicher 8 K Speicherplätze und besteht er aus acht Blöcken, von denen jeder 1024 Plätze enthält, kann man die den geraden Zeichenadressen 0, 2, ... 2046 zugeordneten Zeichen in den ersten Block, die den ungeraden Zeichenadressen 1, 3, ... 2047 zugeordneten Zeichen in den zweiten Block, die den geraden Zeichenadressen 2048, ... 4094 zugeordneten Zeichen in den dritten Block und die den ungeraden Zeichenadressen 2049, ... 4095 zugeordneten Zeichen in den vierten Block eintragen usw. Den verschiedenen Blöcken sind dadurch abwechselnd gerade oder ungerade Zeichenadressen zugeordnet. Jedes Zeichen ist somit durch seine Zeichenadresse adressierbar. In der Zentraleinheit der Rechenanlagen werden jedoch gleichzeitig zwei Zeichen, die ein Wort bilden, verarbeitet. Hierbei hat das erste Zeichen gewöhnlich eine gerade und das zweite Zeichen eine ungerade Zeichenadresse (Fall A). Die Adressierung eines Wortes erfolgt durch die Wortadresse. Diese entspricht den Zeichenadressen der Zeichen eines Wortes ohne Berücksichtigung den niedrigsten Bits.
  • Im Fall A ist die Wortadresse 4 (01t0). Beim Aufruf dieses Wortes werden beide Blöcke angesprochen und die beiden Zeichen mit den Zeichenadressen 4 (01C0) und 5 (0101) parallel entnommen oder einsgeschrieben. Es kann aber auch eine Information, die aus »ei Zeichen besteht, verarbeitet werden, wenn das erste Zeichen auf einem Speicherplatz mit ungerader Zeichenadresse und das zweite Zeichen auf den folgenden Speicherplatz, der eine gerade Zeichenadresse hat,, steht (Fall B). Die beiden Zeichen gehören also zu verschiedenen Wörtern.
  • In diesem Fall mu.ß eine zweite Wortadresse, nämlich die für den Block mit den geraden Zeichenadressen, gebildet werden. Zum Aufruf sind zwei Wortessen, nämlich 8 (1000) und 10 (1010) erforderlich.
  • Die Fig. 3 zeigt zwei Blöcke 36; 37 mit zwei Zugehörigen'Pufferregistern 38; 39, in die je ein elesenes Zeichen eingetragen oder aus denen je ein zu schreibendes Zeichen entnommen wird. Der Block 36 enthält die Zeichen mit den geraden und der Block 3?' die Zeichen mit den ungeraden Zeichexadres. Es sind ferner zwei Adressenregister 34; 35 vorhanden, denen die Speicherplatzadressen zugeführt werden. Das Adressenregister 35 wird aus einem Register 31 direkt und das Adressenregister 34 über ein Register 33 beschickt. Zwischen die Register 31 und 33 ist ein Netzwerk 32 zur Addition von eins geschaltet.
  • Im Fall A gelangt die geradzahlige Zeichenadresse 4 (0100) des ersten Zeichens in das Register 31 und über das Netzwerk 32 um eins erhöht in das Register 33. Da das niedrigste Bit bei den Übertragungen vom Register 31 in das Adressenregister 35 und vom Register 33 in das Adressenregister 34 unbeachtet bleibt, sind die Speicherplatzadressen in den Adressenregistern 34 und 35 gleich,- nämlich 2 (0010).
  • Ist die erste Zeichenadresse ungerade, z. B. 9 (1001), entsteht im Register 33 die gerade Adresse 10 (1010). Da wieder das letzte Bit unbeachtet bleibt, steht im Adressenregister 35 die Speicherplatzadresse 4 (0100) und im Adressenregister 34 die Speicherplatzadresse 5 (0101). Es wird also eine Information gelesen, deren erstes Zeichen eine ungerade Zeichenadresse 9 und deren zweites Zeichen eine gerade Zeichenadresse 10 hat.
  • Im folgenden Beispiel sollen Wörter oder Informationen aus vier Zeichen aus dem Speicher entnommen werden. Die Aufteilung der Zeichenadressen auf die Blöcke ist so vorgenommen, daB dem ersten Block die Zeichenadressen 4j (j - 0, 1, ... 1023), dem zweiten Block die Zeichenadressen 4j + 1, dem dritten Block die@Zeichenadressen 4j + 2 und dem vierten Block die Zeichenadressen 4j + 3 zugeordnet sind. Für die Plazierung der vier Zeichen eines Wortes oder einer Information im Speicher sind dann die vier Fälle C, D, E und F möglich.
  • Die Speicherplatzadressen in den einzelnen Blöcken sind dieselben, wie in der Fig. 1 dargestellt ist, also 0 ... 1023. Es werden gleichzeitig vier Blöcke aufgerufen.
  • Die Figur 5 zeigt vier Blöcke 53; 54; 55; 56 mit den Pufferregistern 57; 58; 59;,60 und den Adressenregistern 49; 50; 51; 52. Der Block 53 enthält die Zeichenadressen 4j eines Wortes, der Block 54 die Zeichenadressen 4j + 1, der Block 55 die Zeichenadressen '#j1+ 2 und der Block 56 die Zeichenadressen 4j + 3`"`k@Ä Das Adres:;@:nz--c:gister 52 wird von einem Register 41 über ein Register 44 beschickt, das Adressenregister 51 von einem Register 41 über ein Register 43, das Adressen=-register 50 von einem Register 41 über ein Register 44 und ein Register 46 und das Adressenregister 49 von einem Register 41 über ein Register 43 und ein Register 48. Zwischen den Registern .41 und 43, den Registern 44 und 46 und den Registern 43 und 48 befinden sich die Netzwerke 42; 45; 47 zur Addition von eins. Im Fall C gelangt die durch 4 teilbare Adresse 8 (1000) in das Register 41 und über ein Netzwerk 42 um eins erhöht in das Register 43 und aus dem Register 41 direkt in das Register 44. Da das niedrigste Bit der Adresse nicht beachtet wird, steht zum Zweck der weiteren Verarbeitung in den Registern 43 und 44 jeweils 4 (0100). Aus dem Register 43 gelangt die Adresse 4 über ein Netzwerk 47 um eins erhöht in das Register 48 und von dort ohne das niedrigste Bit in das Adressenregister 49 und aus dem Register 43 ohne das niedrigste Bit direkt in das Adressenregister 51. In den Adressenregistern 49 und 51 stehen also die Speicherplatzadressen 2 (0010). Aus dem Register 44 gelangt die Adresse 4 (0100) über ein Netzwerk 45 tun eins erhöht in das Register 46 und von dort ohne das niedrigste Bit in das Adressenregister 50 und aus dem Register 44 ohne das niedrigste Bit direkt in das Adressenregister 52.
  • In den Adressenregistern 50 und 52 stehen somit ebenfalls die Speicherplatzadressen 2 (0010).
  • Im Fall D gelangt die Zeichenadresse 13 (1101) in das Register 41 und über das Netzwerk 42 um eins erhöht in das Register 43 und aus dem Register 41 direkt in das Register 44. Da das niedrigste Bit der Adresse nicht beachtet wird, steht in dem Register 43 eine Adresse 7 (0111) und in dem Register 44 eine Adresse 6 (0110). Aus dem Register 43 gelangt die Adresse 7 über das Netzwerk 4'7 um eins erhöht in das Register 48 und ohne das niedrigste Bit in das Adressenregister 49 und aus dem Register 43 ohne das niedrigste Bit direkt in das Adressenregister 51. Aus dem Register 44 gelangt die Adresse 6 (0110) über das Netzwerk 45 um eins erhöht in das Register 46 und von dort ohne das niedrigste Bit in das Adressenregister 50 und aus dem Register 44 ohne das niedrigste Bit direkt in das Adressenregister 52. Die Adressenregister 50; 51; 52 enthalten somit die Speicherplatzadresse 3 (0011) und das Adressenregister 43 die Speicherplatzadresse 4 (0'!00).
  • Der Fall D ist in der Fig. 5 dargestellt. Die Fälle E und F werden analog behandelt.

Claims (1)

  1. Patentanspruch: Verfahren zur Adressierung eines Speichers, bei dem den 2n Zeichen einer Information aufeinanderfolgende Adressen in 2n Blöcken des Speichers zugeordnet sind, das erste Zeichen in einem der 2n Blöcke liegen kann, und die Information parallel entnommen oder gespeichert wird, dadurch gekennzeichnet, daB die Adressen, die die den Zeichen zugeordneten Speicherplätze innerhalb der Blöcke festlegen, aus der Adresse des ersten Zeichens in n Stufen gebildet werden, indem in der ersten Stufe 21 Adressen, in der zweiten Stufe 22 und in der n-ten Stufe 2n Adressen gebildet werden, wobei die Adressen je Stufe um ein Bit verkürzt werden und jede Adresse einer Stufe entweder direkt oder um eins erhöht zwei weitere Adressen der folgenden Stufe liefert.
DE19681774259 1968-05-13 1968-05-13 Verfahren zur Adressierung eines Speichers Pending DE1774259A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DEA0058784 1968-05-13

Publications (1)

Publication Number Publication Date
DE1774259A1 true DE1774259A1 (de) 1971-10-07

Family

ID=6941744

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19681774259 Pending DE1774259A1 (de) 1968-05-13 1968-05-13 Verfahren zur Adressierung eines Speichers

Country Status (1)

Country Link
DE (1) DE1774259A1 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2455332A1 (fr) * 1979-04-24 1980-11-21 Tektronix Inc Systeme d'acces aux memoires, et procede pour y acceder
EP0032136A2 (de) * 1980-01-08 1981-07-15 Honeywell Bull Inc. Speichersystem
EP0040354A2 (de) * 1980-05-08 1981-11-25 Karl Rube GmbH Rems-Metallwarenfabrik Heizkasten, insbesondere für Kachelöfen
EP0057067A2 (de) * 1981-01-16 1982-08-04 Sperry Corporation Speicheradressierung mit ungeraden Bytes
EP0076155A2 (de) * 1981-09-29 1983-04-06 Honeywell Bull Inc. Speicheranordnung

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2455332A1 (fr) * 1979-04-24 1980-11-21 Tektronix Inc Systeme d'acces aux memoires, et procede pour y acceder
EP0032136A2 (de) * 1980-01-08 1981-07-15 Honeywell Bull Inc. Speichersystem
EP0032136A3 (en) * 1980-01-08 1982-03-24 Honeywell Information Systems Inc. Memory system
EP0040354A2 (de) * 1980-05-08 1981-11-25 Karl Rube GmbH Rems-Metallwarenfabrik Heizkasten, insbesondere für Kachelöfen
EP0040354A3 (de) * 1980-05-08 1982-01-06 Karl Rube GmbH Rems-Metallwarenfabrik Heizkasten, insbesondere für Kachelöfen
EP0057067A2 (de) * 1981-01-16 1982-08-04 Sperry Corporation Speicheradressierung mit ungeraden Bytes
EP0057067A3 (de) * 1981-01-16 1984-05-23 Sperry Corporation Speicheradressierung mit ungeraden Bytes
EP0076155A2 (de) * 1981-09-29 1983-04-06 Honeywell Bull Inc. Speicheranordnung
EP0076155A3 (en) * 1981-09-29 1986-03-05 Honeywell Information Systems Inc. Memory system

Similar Documents

Publication Publication Date Title
DE3804938C2 (de) Bildverarbeitungseinrichtung
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE1956604B2 (de) Datenverarbeitungsanlage
DE3015875A1 (de) Speicherzugriffssystem und verfahren fuer einen zugriff zu einem digitalen speichersystem
DE2310631C3 (de) Speicherhierarchie für ein Datenverarbeitungssystem
DE2621882A1 (de) Dynamischer digitalspeicher mit ununterbrochen umlaufendem datenfluss
DE2354521A1 (de) Verfahren und einrichtung zum gleichzeitigen zugriff zu verschiedenen speichermoduln
DE2230103A1 (de) Adressiereinrichtung fuer einen speicher
DE2215066A1 (de) Informationsspeicher mit Schieberegister
DE2718551B2 (de)
DE3013064C2 (de) Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher
DE3343348A1 (de) Anordnung zur datenuebertragung zwischen mehreren prozessoren und einem speicher
DE2054941C2 (de) Anordnung zur Auswahl von Datensätzen
DE1774259A1 (de) Verfahren zur Adressierung eines Speichers
DE2558417A1 (de) Datenverarbeitungssystem
DE2121490A1 (de) Orthogonaler Datenspeicher
DE10105627B4 (de) Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung
DE1805623C3 (de) Prüfeinrichtung für Selbstwählämter mit zentraler elektronischer Steuerung durch einen Rechner
DE1774849C3 (de) Adressierungseinrichtung für eine Speicherabschnittkette
DE1774258A1 (de) Verfahren zur Adressierung eines Speichers
DE1512988C3 (de) Speicher für Informationen unterschiedlicher Länge in Fernmelde-, insbesondere Fernsprechvermittlungsanlagen
DE2233164B2 (de) Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern
DE2605066A1 (de) Kanalzuordnungsschaltung zur herstellung einer zeitvielfach-breitbandverbindung
DE19645057A1 (de) Vorrichtung zur Selektion von Adressenwörtern mittels Demultiplex-Decodierung