DE3244629A1 - Digitaler datenspeicher - Google Patents

Digitaler datenspeicher

Info

Publication number
DE3244629A1
DE3244629A1 DE19823244629 DE3244629A DE3244629A1 DE 3244629 A1 DE3244629 A1 DE 3244629A1 DE 19823244629 DE19823244629 DE 19823244629 DE 3244629 A DE3244629 A DE 3244629A DE 3244629 A1 DE3244629 A1 DE 3244629A1
Authority
DE
Germany
Prior art keywords
memory
bit
word
auxiliary
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.)
Ceased
Application number
DE19823244629
Other languages
English (en)
Inventor
John Rigby Cheadle Cheshire Waterworth
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.)
Ferranti International PLC
Original Assignee
Ferranti PLC
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 Ferranti PLC filed Critical Ferranti PLC
Publication of DE3244629A1 publication Critical patent/DE3244629A1/de
Ceased 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module

Description

Patentanwälte*
Dr.rer.nat. Thomas BarentU
Dr. -Incf. Hans Leyh Innsre VViiüier Γ ;r. 20 - D 8300 Miindien 00
Unser Zeichen: A 14 Üi/fi
Ferranti pie
Bridge House, Park Road, Gatley, Cheadle, Cheshire, England
Digitaler Datenspeicher
Ferranti pic - A 14 593 -
Beschreibung
Die Erfindung betrifft einen digitalen Datenspeicher.
Digitale Datenspeicher werden verwendet zur Speicherung von großen Mengen von Datens gewöhnlich in Form von Vielfach-Bit-Worten. Die Daten können in den Speicher in irgendeine Speicherstelle eingeschrieben werden durch Adressieren dieser Stelle und Eingeben der Daten. Entsprechend können die Daten in irgendeiner Speicherstelle ausgelesen werden durch Adressieren dieser Speicherstelle und Aktivieren der Lese-Funktion. Viele Speichertypen arbeiten in dieser einfachen Weise. Es ist übliche Praxis, daß ehe ein Abschnitt des Speichers für einen neuen Zweck benutzt wirds dieser Teil des Speichers freigemacht bzw. gelöscht wird, um alle, etwa aus einer früheren Operation noch zurückgebliebenen Daten zu löschen und damit die Möglichkeit einer Fehlfunktion zu reduzieren. Manchmal wird diese Löschung unmittelbar nach der Vollendung einer Operation durchgeführt, insbesondere wenn die Daten vertraulich sind., um eine zufällige Aufdeckung der Daten zu verhindern.
Um festzustellen j, ob die Inhalte des Speichers eine Bedeutung haben oder nicht, ist es nicht unüblich, jedem Vielfach-Bit-Wort ein extra Bit hinzuzufügen, das Gültigkeits-Bit genannt wird. Dieses Bit wird gesetzt, wenn Daten in die Speicherstelle eingeschrieben werden und es wird gelöscht., ehe ein Abschnitt des Speichers benutzt wird. Eine Tätigkeit beim Auslesen aus einer Speicherstelle besteht daher darin, das Gültigkeits-Bit zu überprüfen. Wenn dieses Bit gelöscht ist, dann ist der Ausgang des Speichers aus dieser Speicherzelle ungültig. Dies bedeutet, daß die Daten im Speicher bedeutungslos sind und auf Null gebracht werden können. Hieraus folgt, daß anstatt jede Bit-Position in einem Bereich des Speichers, der freizumachen ist, effektiv freizumachen
..γ
oder zu löschen, es nur erforderlich ist, die Gültigkeits-Bits zu löschen, da dann kein Ausgang aus diesem Bereich des Speichers erhalten werden kann. Es ist notwendig, jedes Gültigkeits-Bit separat zu adressieren, da jedes eine andere Adresse hat, um einen Bereich des Speichers freizumachen. Wenn ein großer Speicherbereich freigemacht werden soll, kann dies eine relativ lange Zeit erfordern.
Der Erfindung liegt daher die Aufgabe zugrunde, einen digitalen Datenspeicher zu schaffen, in welchem eine aufeinanderfolgende Gruppe von Gültigkeits-Bits in sehr kurzer Zeit gesetzt oder gelöscht werden kann.
Nach der Erfindung wird dies bei einem digitalen Datenspeicher erreicht durch eine Datenspeicher-Einheit mit einer Vielzahl von Vielfach-Bit-Wort-Speicherstellen, einem Gültigkeits-Speicher mit einer geringeren Vielzahl von Vielfach-Bit-Wort-Speicherstellen, die so angeordnet sind, daß jede separate Bit-Speicherstelle einer separaten Wort-Speicherstelle im Datenspeicher entspricht und das Gültigkeits-Bit für dieses Wort enthält, einem ersten Hilfsspeicher mit einer Anzahl von Bit-Speicherstellen, die wenigstens gleich der Anzahl von Wort-Speicherstellen im Gültigkeits-Speicher ist und so angeordnet ist, daß jedes dieser Bits den Status der Gültigkeits-Bits in einem separaten Wort des Gültigkeits-Speichers identifiziert, einem oder mehr weiteren Hilfsspeichern, die in zunehmender Ordnung der Signifikanz angeordnet sind und von denen jeder eine geringere Vielzahl von Bit-Speicherstellen hat, von denen jede einer separaten Wort-Speicherstelle im Hilfsspeicher mit der nächstniedrigeren Signifikanz hat, ferner durch eine Schaltung, die an die Gültigkeitsspeicher und die Hilfsspeicher geschaltet ist, so daß Bereiche des Datenspeichers gültig oder ungültig erklärt werden können durch Setzen geeigneter Bits in jedem Speicher, um den Status der Gültigkeits-Bits zu definieren, entsprechend dem Bereich des Datenspeichers, der durch die Adressen der Grenzen dieses Bereichs definiert ist.
Eine beispielsweise Ausführungsform der Erfindung wird nachfolgend anhand der Zeichnung erläutert, in der
Γ.:- ; '/'.:"■:'".· 3244829
Fig. 1 schematisch einen Speicher nach der Erfindung zeigt. Fig. 2 zeigt eine mögliche Anordnung von Speichern.
Fig. 3a bis 3e zeigen Diagramme einer vereinfachten Speicher-Anordnung, wobei unterschiedliche Arbeitsweisen dargestellt sind,,
Fig. 4aj 4b und 4c zeigen schematische Blockdiagramme zur Darstellung der Arbeitsweise des Datenspeichers.
Fig. 1 zeigt einen Datenspeicher DS mit Adresseneingängen ADS Leseeingängen RD und Schreibeingängen NR. Daten können in den Speicher in bekannter Weise eingeschrieben oder aus ihm ausgelesen werden. Der Speicher kann, muß aber nichts aus einer Anzahl von Ein-Bit-Halbleiterspeicherchips aufgebaut sein., um die gewünschte Wortlänge zu schaffen.
Ein zweiter Speicher, der Gültigkeits-Speicher VS ist vorgesehen und hat eine kleinere Anzahl von Wort-Speicherstellen als der Datenspeicher DS. Die Anzahl der Bits im Gültigkeits-Speicher ist derart,, daß ein separates Bit jeweils einer separaten Wort-Speicherstelle im Datenspeicher DS entspricht.
Die höchstsignifikanten Bits einer an den Datenspeicher DS gelegten Adresse werden an eine Schaltung CM gegeben9 die mit dem Gültigkeits-Speicher VS verbunden ist. Die höchstsignifikanten Bits der Adresse wählen eine gewünschte Wort-Speicherstelle im Gültigkeits-Speicher aus, während die übrigen Bits der Adresse das geeignete Bit aus dem gewählten Wort auswählen. An die Schaltung sind ferner Lese-(RD)S Schreib-(WR) und Lösch-iCU-Steuereingänge gelegts auf deren Zweck noch eingegangen wird. Die Steuerschaltung steuert auch den Eingang von Daten zu und den Ausgang von Daten aus dem Gültigkeits-Speicher VS und sie gibt einen Eingang an ein Tor G9 das den Ausgang der Daten aus dem Datenspeicher DS steuert.
Ein erster HilfsSpeicher ASl hat eir.a Anzahl von Bit-Speicherstellens die gleich der Anzahl von Worten im Gültigkeits-Speicher VS ist. Die höchst-
signifikanten Bits der an den Gültigkeits-Speicher gelegten Wort-Adresse definieren eine Wort-Adresse im ersten HilfsSpeicher AS1, während die übrigen Bits die Bit-Adresse definieren. Die Wort-Adresse des Gültigkeits-Speichers definiert somit ein besonderes Bit im ersten HilfsSpeicher sowohl für Lese- als auch für Schreib-Operationen. Wie zuvor wird die Adresse an die Schaltung CM gegeben, die den Betrieb des Speichers steuert. Der Ausgang vom ersten Hilfsspeicher liefert einen weiteren Steuereingang zum Tor G.
Es können einer oder mehr weitere Hilfsspeicher vorgesehen sein, die in abnehmender Ordnung an Speicherkapazität angeordnet sind, von denen nur einer, AS2, dargestellt ist. Jeder Speicher enthält eine Anzahl von Bits, die wenigstens gleich der Anzahl von Worten im nächstlängsten Hilfsspeicher ist, und er hat seine eigene Steuerschaltung CM. Der kleinste Hilfsspeicher ist durch ein einziges Wort gebildet.
Fig. 2 zeigt eine mögliche Anordnung des Datenspeichers DS, des Gültigkeitsspeichers VS und 5 Hilfsspeichern. In diesem Beispiel ist der Datenspeicher ein 1M*Wortspeicher, wobei jedes Wort 32 Bits hat. Wie allgemein üblich, wird der Buchstabe "K" verwendet, um die Zahl 210 (= 1024) und der Buchstabe "M", um die Zahl 220(= K · K = 1 048 576) darzustellen. Der Gültigkeits-Speicher umfaßt 64K Worte, jedes zu 16 Bits, eine Größe, die handelsüblich verfügbar ist. Jedes Bit ist das Gültigkeits-Bit für ein Wort im Datenspeicher DS.
Der erste Hilfsspeicher AS1 umfaßt 16K Worte, jedes zu 4 Bits. Jedes Bit entspricht einem Wort im Gültigkeits-Speicher VS und damit 16 Worten im Datenspeicher DS. Der zweite Hilfsspeicher AS2 liefert 2K Worte, jedes zu 8 Bits. Damit entspricht jedes Bit einem Wort im ersten Hilfsspeicher AS1, vier Worten im Gültigkeits-Speicher VS, oder 64 Worten im Datenspeicher DS. Der dritte Hilfsspeicher AS3 umfaßt 256 Worte zu 8 Bits. Jedes der verwendeten Bits entspricht 512 Worten im Datenspeicher DS. Die Anordnung kann fortgeführt werden mit einem vierten Hilfsspeicher AS4, der 16 Worte zu je 16 Bit hat, so daß jedes Bit einem der Worte im dritten Hilfsspeicher, oder 4K Worten im Datenspeicher entspricht. Schließlich hat
der fünfte Hilfsspeicher ASS ein Wort mit 16 Bits. Jedes Bit entspricht daher 64K Worten im Datenspeicher DS.
Die verwendeten Speicher haben eine handelsüblich verfügbare Kapazität und die Wortlänge und die Anzahl der Worte kann jeder bevorzugten Ausführungsform angepaßt werden.
Da die Ausgänge jedes Hilfsspeichers und des Gültigkeits-Speichers die Ausgänge vom Datenspeicher DS steuerns erkennt man., daß große Bereiche des Datenspeichers durch ein einziges Bit in einem oder mehr der Hilfsspeicher gesteuert werden können. Im äußersten Fall wird durch Einstellen eines Bits im fünften Hilfsspeicher AS5 die Ausgänge von 64K Worten des Datenspeichers DS gesperrt., womit ausgesagt wird3 daß dieser Bereich des Speichers frei (clear) oder ungültig (invalid) ist.
Die Wirkungsweise der insoweit beschriebenen Anordnung wird anhand von Fig. 3 erläutert. Diese zeigt eine stark vereinfachte Anordnungs in welcher der Datenspeicher DS nur zweiunddreißig Wort-Speicherstellen hat. Der Gültigkeitsspeicher VS ist ein Acht-Wort-Speichers wobei jedes Wort eine Länge von vier Bit hat. Ein Bit des Gültigkeitsspeichers enthält somit das Gültigkeits-Bit eines eindeutigen Wortes im Datenspeicher DS. Der Gültigkeitsspeicher ist in auseinandergezogener Darstellung gezeigt, um die Zuordnung jedes Wortes zu einem Bereich des Datenspeichers aufzuzeigen. Der erste Hilfsspeicher AS1 enthält nur zwei Vier-Bit-Worte und wiederum ist die Zuordnung zwischen diesen Worten und einem Bereich des Gültigkeitsspeichers dargestellt. Der zweite Hilfsspeicher AS2 schließlich enthält ein einziges Zwei-Bit-Worts wobei ein Bit einem separaten Wort des ersten Hilfsspeichers entspricht.
Jedes Wort des Datenspeichers DS wird durch eine eindeutige Fünf-Bit-Adresse identifiziert. Die drei höchst-signifikanten Bits dieser Adresse definieren das Wort im Gültigkeits-Speichers das sich auf den entsprechenden Abschnitt des Datenspeichers bezieht., während die beiden anderen Bits der Adresse das Bit in diesem Wort des Gültigkeits-Speichers definieren. Die Adressen der Bits des Gültigkeitsspeichers sind in Fig. 3 dargestellt.
BAD ORIGINAL
In gleicher Weise definiert das höchstwertige Bit der Wort-Adresse für den ersten Hilfsspeicher das Wort im zweiten Hilfsspeicher, das sich auf den besonderen Bereich des ersten Hilfsspeichers bezieht, während die beiden niedrigstwertigen Bits die Bit-Position innerhalb dieses Wortes definieren. Die Ein-Bit-Wort-Adresse des ersten HilfsSpeichers schließlich definiert das Bit im zweiten Hilfsspeicher, das sich auf dieses Wort im ersten Hilfsspeicher bezieht.
Beim Auslesen eines Wortes aus dem Datenspeicher DS wird durch die Adresse, die das auszulesende Wort definiert, auch ein einzelnes Bit im Gültigkeits-Speicher VS und in jedem der Hilfsspeicher AS1 und AS2 identifiziert. Wie in Fig. 3a gezeigt, definiert die Adresse 01010 für den Datenspeicher die Bits, die in jedem der anderen Speicher angezeigt sind. Wenn, wie gezeigt, jedes der Bits im Gültigkeitsspeicher VS und in den beiden Hilfsspeichern AS1 und AS2 gesetzt ist, so werden die aus dem Datenspeicher ausgelesenen Daten als gültig betrachtet. Wenn andererseits eines oder mehr der ausgewählten Bits im Gültigkeitsspeicher und in den Hilfsspeichern frei bzw. gelöscht (clear) ist, so ist der Ausgang des Datenspeichers gesperrt oder als ungültig (invalid) erklärt.
Man erkennt, daß es nicht mehr erforderlich ist, effektiv Speichersteilen im Datenspeicher freizumachen bzw. zu löschen, sondern nur eine Anzahl von Bits im Gültigkeits-Speicher und in den Hilfsspeichern. Die Inhalte des Datenspeichers in der so definierten Speicherstelle sind immateriell, da sie nicht ausgelesen.und an andere Schaltungen gegeben werden können.
Die Erfindung eignet sich bevorzugt für eine solche Lösch-Operation. Wie bereits erwähnt, ist es nicht notwendig, die Wort-Stelle oder Wort-Stellen im Datenspeicher zu löschen, da dieselbe Wirkung erzeugt wird durch Löschen (clearing) der geeigneten Bits in den Hilfsspeichern.
Eine wichtige Operation ist es, einen großen Bereich des Datenspeichers freizumachen. Dies ist einfacher, wenn dieser Bereich einem einzigen Bit
im beschriebenen Hilfsspeicher entspricht im allgemeinen Fall aber, beginnt noch endigt der Bereich an einer einfachen Grenze. Konventionelle Speicher bewirken dies durch Einstellen jedes Gültigkeits-Bits, um eines zu einer Zeit zu löschen, und dies kann eine sehr langwierige Operation sein. Fig. 3b zeigt» wie diese Operation durch die beschriebene erfindungsgemäße Anordnung stark vereinfacht wird. Es wird angenommen., daß der Datenspeicher DS zwischen den Adressen 01001 und 10111 freigemacht werden soll, wobei diese beiden Adressen jedoch nicht mitumfaßt werden. Aus Fig. 3b erkennt mans daß die beiden Adressen durch die Bits definiert sind, die im Gültigkeits-Speicher VS und in den Hüfsspeichern ASI und AS2 durch einen Strich markiert sind. Die erfindungsgemäße Schaltung arbeitet sos daß alle Bits im Wort des Gültigkeits-Speichers über der unteren Adresse und unter der oberen Adresse gelöscht werden und diese Bits sind in der Zeichnung durch eine "0" dargestellt. Dieselbe Prozedur folgt im ersten Hilfsspeicher ASIs wie dargestellt. Im zweiten Hilfsspeicher AS2 wird keines der Bits gelöscht,, denn es können gültige Daten in Bereichen des Datenspeichers außerhalb des zu löschenden Bereiches vorhanden sein.
Die Wirkung dieses Vorganges ist es, alle Worte im Datenspeicher DS zwischen den beiden Grenzen als gelöscht oder frei (clear) zu definieren. Wenn der Datenspeicher z.B. acht Abschnitte hats von denen jeder durch ein Wort des Gültigkeitsspeichers repräsentiert wird9 dann werden die Worte, die in dem Abschnitt gelöscht werden, der durch die drei höchstwertigen Bits der unteren Adresse bezeichnet ist., d.h. 010, identifiziert durch die beiden Bits in dem Wort des Gültigkeits-Speichers9 die diese Wortadresse haben. In gleicher Weise werden die Worte, die in dem Abschnitt gelöscht werden, der durch die drei höchstwertigen Bits der höheren Adresse bezeichnet sind, d.h.101 identifiziert durch die drei Bits im Wort des Gültigkeitsspeichers,. die diese Wortadresse haben. Die beiden Abschnitte des Datenspeichers zwischen diesen, identifiziert durch die Wortadressen 001 und 100 des Gültigkeits-Speichers, sind definiert durch die beiden Bits, die im ersten Hilfsspeicher AS1 auf Löschen gesetzt werden (set to clear). Der bezeichnete Bereich des Datenspeichers kann daher in nur zwei Operationen
BAD ORIGINAL
freigemacht werden (set to clear), d.h. eine Operation für jede der beiden Grenzen des Bereiches.
•Wenn der freizumachende Bereich des Datenspeichers eine ganze Hälfte des Datenspeichers umfaßt, so kann eines der beiden Bits im zweiten Hilfsspeicher AS2 auf Löschen gestellt werden. Dies ist in Fig. 3c dargestellt, wobei gezeigt ist, wie dieses Bit im zweiten Hilfsspeicher ausreicht, um eine Hälfte des Datenspeichers als frei (clear) zu definieren, ohne die Notwendigkeit, irgendeines der entsprechenden Gültigkeits-Bits zu löschen. Im ersten Hilfsspeicher AS1 sind im dargestellten Beispiel keine Bits gelöscht worden, da nur ein Wort in der anderen Hälfte des Datenspeichers auf Löschen gestellt worden ist und dieses wird durch sein besonderes Gültigkeits-Bit identifiziert, wie dargestellt.
Wenn der freizumachende bzw. zu löschende Bereich des Datenspeichers durch ein Wort des Gültigkeits-Speichers VS bestimmt ist oder durch zwei benachbarte Worte, dann werden nur Bits in diesem Speicher auf Löschen gestellt und die beiden Hilfsspeicher AS1 und AS2 werden nicht verändert. Dies ist in Fig. 3d gezeigt.
An dieser Stelle soll darauf hingewiesen werden, daß alle verwendeten Bits durch nur zwei Adressen bestimmt sind, nämlich die, welche die obere und untere Grenze des zu löschenden Bereiches bezeichnen. Die zur Durchführung der Lösch-Operation erforderliche Zeit ist daher nur die, die erforderlich ist, um zwei Schreib-Operationen in dem Gültigkeits-Speicher und den Hilfsspeichern auszuführen. Der Haupt-Datenspeicher selbst wird nicht verändert.
Eine Schreib-Operation erfolgt ebenfalls beim Gültigkeits-Speicher und bei den Hilfsspeichern. Zuerst wird der Zustand der Hilfsspeicher ausgelesen, in diesem Fall durch Auslesen der entsprechenden Bits aus den beiden Hilfsspeichern AS1 und AS2. Zur gleichen Zeit können die Daten in den Datenspeicher eingeschrieben werden und das entsprechende Gültigkeits-Bit kann auf Gültig (valid) gesetzt werden. Der Zustand der benachbarten Bits
im Wort des Gültigkeits-Speichers jedoch und derjenige der Bits in den Hilfsspeichern, die den Bereich des Daten-Speichers bestimmen5 der die Adresse enthält5 wird ggf. auch zu ändern sein.
Betrachtet man die Situation, wie sie in Fig. 3e gezeigt ist, in der angenommen ist, daß der Bereich des Datenspeichers, der durch horizontale Linien bezeichnet ist, die durch Worte gezogen sind, bereits in der oben beschriebenen Weise freigemacht worden ist. Dieser Bereich ist durch Bits bezeichnet, die mit "0" in der Zeichnung dargestellt sind und die diesen Bereich vollständig definieren bzw. bestimmen. Wenn neue Daten in den Datenspeicher DS in der Adresse 10010 einzuschreiben sind, erfolgt dies innerhalb des freigemachten Bereiches. Das Gültigkeits-Bit hierfür ist als "X" im Wort des Gültigkeits-Speichers dargestellt, das durch die drei höchstwertigen Bits der Datenspeicher-Adresse bezeichnet ist, nämlich 100. Dieses Wort im Gültigkeits-Speicher war in der vorherigen Lösch-Operation nicht gesetzt, denn es war durch ein einzelnes Bit im ersten Hilfsspeicher AS1 bestimmt. Es ist daher nicht erforderlich, das entsprechende Bit im Wort des Gültigkeits-Speichers einzustellen, es ist jedoch erforderlich, das Lösch-Bit im ersten Hilfsspeicher AS1 zu ändern, um anzuzeigens daß das entsprechende Gültigkeits-Wort ein Bit enthält, das eingestellt bzw. gesetzt worden ist. Dies ist in Fig. 3e durch gestrichelte Zeichen dargestellt. Nachdem dies geschehen ist, ist es ferner erforderlich, die übrigen Bits des Wortes im Gültigkeitsspeicher zu löschen, was durch gestrichelte Zeichen dargestellt ist. Hierdurch wird sichergestellt, daß die benachbarten Worte im Datenspeicher, die durch die anderen drei Bits im Gültigkeits-Speicher bestimmt sind, noch gelöscht sind. Wiederum sind die einzigen beeinflußten bzw. verwendeten Bits diejenigen in den Worten, die durch die einzige Adresse ausgewählt worden sind.
Bei einem Speicher der vorbeschriebenen Art ergibt sich somit folgendes: Bei der Schreib-Operation werden die Daten in der gewünschten Speicherstelle gespeichert und das Gültigkeits-Bit (und entsprechende Hilfs-Bits)werden auf "Gültig" gesetzt. Intern, wenn eines der Hilfsbits durch die vorläufige Lese-Operation als "frei" bzw "gelöscht" festgestellt wird, werden die
übrigen Bits in den gewählten Worten in den weniger signifikanten Hilfsspeichern und im GüHigkeits-Speicher gelöscht (cleared), um die Ungültigkeit der benachbarten Worte im Speicher beizubehalten.
Bei der Lese-Operation ergibt sich folgendes: Die ungültigen Daten werden immer als "0" dargestellt und ein Gültigkeits-Bit ist für externen Gebrauch verfügbar, falls gewünscht. Die Hilfsstruktur ist nicht sichtbar.
Eine neue Funktion, d.h. freigeben bzw. löschen, steht zur Verfügung. Diese erfordert zwei Adressen, die die obere und untere Grenze des freizumachenden Bereiches (oder ungültig zu machenden) bestimmen. Diese Operation löscht jeden gewünschten Bereich des Speichers, von einem Wort bis zum ganzen Speicher, in einer Zeit, die durch zwei aufeinanderfolgende Schreib-Zyklen im Hilfsspeicher und im Gültigkeits-Speicher bestimmt ist.
Die erforderliche Logik zur Durchführung der vorstehend beschriebenen Operationen ist in den Fig. 4a, 4b und 4c dargestellt. Diese zeigen eine Möglichkeit zur Steuerung eines Hilfsspeichers und verwenden als Beispiel den Hilfsspeicher AS2 von Fig. 2. Die drei Operationen sind separat dargestellt, aber ein Großteil der Logik ist allen Operationen gemeinsam.
Fig. 4a zeigt die erforderliche Logik zur Durchführung der Lese-Operation. Die 16K Bits des Speichers sind in 8 Plättchen oder Scheiben angeordnet, jede mit 2K Bits. Dementsprechend ist die 14-Bit-Adresse aufgeteilt in die 11 höchstwertigen Bits, die als die Wortadresse WA benutzt werden, und die drei niedrigstwertigen Bits, die die Adresse der Scheibe bilden, d.h. die Adresse irgendeines Bits in dem Wort. Die Scheiben-Adresse wird durch einen "Eins-aus-Acht-Decoder DC decodiert, um die besondere Scheibe zu identifizieren, die das erforderliche Bit enthält, und dieses Signal wird durch ein UND-Tor G1 mit dem Lese-Steuersignal zusammengefaßt, um eine Bit-Adresse BA zu bilden. Ein Ausgang wird erhalten, wenn das augelesene Bit den Begriff "Gültig" darstellt, und dieses Signal wird durch
einen Inverter 11 umgekehrt., so daß das Fehlen eines Ausganges den Zustand "ungültig" darstellt. Dies wird kombiniert mit den Ausgangssignalen "ungültig" von anderen hb'herwertigen Hilfsspeichern durch ein ODER-Tor G25 um das Ausgangs-Gültigkeits-Bit zu erzeugen.
Wie Fig. 4b zeigt5 ist die erforderliche Logik zur Durchführung der Lösch-Operation komplexer. Dies deshalbs weil mehrere verschiedene Bedingungen existieren können., wie noch beschrieben wird. Gemäß Fig. 4b werden zwei Adressen eingegeben, die erste Adresse ADI bestimmt die untere Grenze des freizumachenden Bereiches, während die zweite Adresse AD2 die obere Grenze bestimmt. Da gewöhnlich zwei Operationen erforderlich sind, um einen Bereich des Speichers freizumachen, wird durch einen Eingang CY2 der zweite Zyklus der Operation bezeichnet. Wie bei der Lese-Operations werden die vierzehn Bits einer Adresse aufgeteilt in die elf höchstwertigen Bits, die die Wortadresse WA bestimmen und die drei niedrigstwertigen Bits9 die die Adresse der Scheibe oder des Plättchens bestimmen. Unterstellt man, daß die beiden Adressen unterschiedliche Worte definieren, so arbeitet die Logik folgendermaßen.
Während des ersten Zyklus erzeugt ein Inverter 12 ein Signal CY29 das ein UND-Tor G3 ansteuerts um die 11-Bit-Wort-Adresse WA zum Speicher AS2 durchzulassen. Die drei niedrigstwertigen Bits der Adresse werden an einen Masken-Generator MGA gelegt., der einen "Einige-aus-Acht" Code erzeugt, um alle Bit-Adressen zu identifizieren, die höhersignifikant oder höherwertiger sind als die Bit-Adresse, die durch die Drei-Bit-Adresse identifiziert ist. Diese werden an ein UND-Tor G4 gelegt, das durch den Ausgang eines UND-Tores G6 angesteuert wird. Die Eingänge des Tores G6 sind das Lösch-Signal C1, das Signal CY2 vom Inverter 12 und ein Signal SM, welches anzeigt., daß die Wort-Adressen nicht identisch sind. Das letztgenannte Singal wird erhalten durch Vergleich der Wort-Asressen in einem UND-Tor G7 und Umkehren des Ausganges in einem Inverter 13. Die Wirkung ist daher, daß das Signal "frei" in alle Bits des gewählten Wortes eingeschrieben wird, die höherwertiger sind als das Bit, das durch die erste Adresse bestimmt ist»
Während des zweiten Zyklus werden die elf Bits der zweiten Wort-Adresse mit dem Signal CY in einem UND-Tor G8 zusammengefaßt und sie bestimmen das gewählte Wort im Speicher AS2. Die drei niedrigstwertigen Bits werden an einen zweiten Maskengenerator MG2 oelegt, der alle Bit-Adressen erzeugt, die wenigerwertig sind als die, die durch die Drei-Bit-Adresse identifiziert sind. Diese werden an ein UND-Tor G9 gelegt, das durch den Ausgang eines UND-Tores 10 angesteuert wird. Das Tor 10 hat als Eingänge das Löschsignal oder Freisignal CL, das Signal CY2, das den zweiten Zyklus bezeichnet, und das Signal SM, wie zuvor. Die Wirkung ist damit, daß das Signal "frei" (clear) in alle Bits des gewählten Wortes eingeschrieben wird, die wenigerwertig sind als das Bit, das durch die zweite Adresse bestimmt ist.
Wenn die erste und die zweite Adresse dasselbe Wort definieren, dann sperrt das Signal SM vom Tor G7 die Tätigkeit der Tore G6 und G10. Die beiden Signale von den Masken-Generatoren MGA und MGB werden in einem UND-Tor G11 zusammengefaßt und dessen Ausgang identifiziert nur die Bits zwischen denjenigen, die durch die beiden Adressen bestimmt sind. Diese werden an ein UND-Tor G12 gelegt, das durch ein UND-Tor G13 angesteuert wird. Das Tor G13 hat als Eingänge das Frei-Signal CL, das Signal SM vom Tor G7 und das Signal CY2, weshalb diese Operation nur während des zweiten Zyklus abläuft. Die Bits des gewählten Wortes zwischen den beiden Adressen werden daher auf "Frei" gesetzt.
Fig. 4c zeigt die erforderliche Logik zur Durchführung der Schreib-Operation. Wie bereits erwähnt, geht dieser die Lese-Operation voraus, die ein Ungültigkeits-Bit von den höchstwertigen Hilfsspeichern erzeugen kann. Die Wort-Adressierung und die Bit-Decodierung erfolgen wie in Verbindung mit der Lese-Operation beschrieben wurde.
Der Ausgang des Decoders DC wird an ein UND-Tor GH gelegt, zusammen mit dem Schreib-Steuersignal, und der Ausgang dieser Tore bildet einen Eingang zu einem ODER-Tor G15, und er bildet ferner die Daten, die in den Speicher eingeschrieben werden. Ein bistabiler Kreis BS wurde durch das Vorhandensein eines Ungültigkeits-Bits von einem höherwertigen Hilfs-
Speicher eingestellt und der Ausgang des bistabilen Kreises bildet einen Eingang eines weiteren UND-Tores G16. Der andere Eingang dieses Tores ist das Schreib-Steuersignal, und der Ausgang des Tores G16 bildet einen Steuereingang des Tores Gl5.
Wenn kein Ungültigkeits-Bit vorhanden war, wird die Bit-Adresse BA vom Decoder durch die Tore G14 und G15 geführt und sie bewirkt9 daß das entsprechende Bit im Speicher auf "Gültig" gesetzt wird. Wenn jedoch ein Ungültigkeits-Bit vorhanden war9 so wird durch den Ausgang vom bistabilen Kreis BS bewirkt, daß der Ausgang des Tores G16 das Tor G15 ansteuert, um alle Bits in dem adressierten Wort zu identifizieren. Nur das durch den Decodierer DC ausgewählte Bit wird auf "Gültig" gesetzt und alle anderen Bits im adressierten Wort werden auf "Ungültig" gesetzt. Hierdurch werden die Forderungen erfüllt., die oben genannt wurden zum Einschreiben eines Bits in ein zuvor freigegebenes oder gelöschtes (cleared) Wort.
Die logischen Diagramme nach Fig. 4 sind vereinfacht dargestellt unter Verwendung einfacher Signal-Bahnen. Die Diagramme zeigen die Anzahl von parallelen Bits in einer Bahn an und die Tore sind dementsprechend Vielfach-Tore. Die zur Steuerung der Speicheradressierung benutzten ODER-Tore sind dargestellt;, aber im einzelnen nicht beschrieben. Alle Hilfsspeicher und der Gültigkeits-Speicher werden zusammen adressiert.
Es können andere logische Anordnungen vorgesehen werden zur Durchführung der obenbeschriebenen Operationen. Ähnliche Anordnungen können auch für jeden der Hilfsspeicher vorgesehen werden.
Es wurde oben Bezug genommen auf die Verwendung eines Gültigkeits-Speichers zur Erzeugung eines Gültigkeits-Bits für jedes Daten-Wort im Datenspeicher. Es kann aber auch mehr als ein Bit für jedes Wort vorgesehen werden und diese Bits können auch für andere Zwecke, als nur zur Bestimmung der Gültigkeit der Daten, verwendet werden.

Claims (9)

  1. " reWanti pic - A 14 593 -
    Patentansprüche
    Digitaler Datenspeicher, gekennzeichnet durch eine Datenspeicher-Einheit mit einer Mehrzahl von Vielfach-Bit-Wortspeicherstellen, einem Gültigkeitsspeicher mit einer geringeren Mehrzahl von Vielfach-Bit-Wortspeicherstellen, die so angeordnet sind, daß jede separate Bit-Speicherstelle einer separaten Wortspeicherstelle im Datenspeicher entspricht und das Gültigkeits-Bit für dieses Wort enthält, einen ersten Hilfsspeicher mit einer Anzahl von Bit-Speicherstellen9 die wenigstens gleich der Anzahl von Wort-Speicherstellen im Gültigkeits-Speicher ist und so angeordnet ist, daß jedes dieser Bits den Zustand der Gültigkeits-Bits in einem separaten Wort des Gültigkeits-Speichers identifizierts einem oder mehr weiteren Hilfsspeichern, die in zunehmender Signifikanz-Ordnung (abnehmender Ordnung an Speicherkapazität) angeordnet sind und von denen jeder eine geringere Mehrzahl von Bit-Speicherstellen aufweist, von denen jede einer separaten Wort-Speicherstelle in dem nächst(größeren) niedrigerwertigen Hilfsspeicher entspricht, ferner durch Schaltungen, die an den Gültigkeits-Speicher und die Hilfsspeicher gelegt sind, derart, daß Bereiche des Datenspeichers gültig oder ungültig erklärt werden können durch Setzen geeigneter Bits in jedem Speicher, um den Status der Gültigkeits-Bits zu bestimmen, die dem Bereich des Datenspeichers entsprechen, der durch die Adressen der Begrenzungen dieses Bereiches bestimmt ist.
  2. 2. Digitaler Datenspeicher nach Anspruch 1, dadurch gekennzeichnet, daß die Bit-Speicherstellen in jedem Hilfsspeicher in Form eines oder mehrerer Vielfach-Bit-Worten angeordnet sind.
  3. 3. Digitaler Datenspeicher nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der höchstwertine Hilfsspeicher eine einzige Vielfach-Bit-Wortspeicherstelle aufweist.
  4. 4. Digitaler Datenspeicher nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß durch eine erste und eine zweite Adresse eine untere und eine obere Begrenzung eines Breichs des Datenspeichers bestimmt ist, daß durch die mit jedem Hilfsspeicher verbundene Schaltung die Bits in dem Hilfsspeicher identifizierbar sind, welche einen Teil von nur einem oder mehreren Worten in diesem Hilfsspeicher darstellen, und daß diejenigen Bits, die vollständige Worte in diesem Hilfsspeicher darstellen, durch die Schaltung identifizierbar sind, die dem nächsthöherwertigen Hilfsspeicher zugeordnet ist.
  5. 5. Digitaler Datenspeicher nach Anspruch 4, dadurch gekennzeichnet, daß die Schaltung, die einen Hilfsspeicher zugeordnet ist, einen ersten Generator aufweist, der auf die erste Adresse anspricht, um ein Muster von Signalen zu erzeugen, die diejenigen Bits eines Teils eines Wortes in diesem Hilfsspeicher identifizieren, der eine höhere Wertigkeit als diese erste Adresse hat, ferner mit einem zweiten Generator, der auf die zweite Adresse anspricht, und ein Muster von Signalen erzeugt, die diejenigen Bits eines Teils eines Wortes in dem Hilfsspeicher erzeugen, der eine niedrigere Wertigkeit als diese zweite Adresse hat.
  6. 6. Digitaler Datenspeicher nach Anspruch 5, dadurch gekennzeichnet, daß die einem Hilfsspeicher zugeordnete Schaltung Einrichtungen umfaßt, um zu bestimmen, wenn die erste und die zweite Adresse dasselbe Wort in diesem Hilfsspeicher identifizieren.
  7. 7. Digitaler Datenspeicher nach einem der Ansprüche 1-6, dadurch gekennzeichnet, daß die Schaltung so angeordnet ist, daß jedes gewählte Bit aus jedem zugeordneten Hilfsspeicher auslesbar ist.
  8. 8. Digitaler Datenspeicher nach einem der Ansprüche 1-7, dadurch gekennzeichnet, daß die Schaltung so angeordnet ist, daß jedes gewählte Bit in jedem zugeordneten Hilfsspeicher einschreibbar ist.
    3244623
  9. 9. Digitaler Datenspeicher nach einem der vorhergehenden Ansprüche9 dadurch gekennzeichnet, daß der Gültigkeits-Speicher mehr als ein Gültigkeits-Bit für jede Wortspeicherstelle im Datenspeicher enthält.
DE19823244629 1981-12-04 1982-12-02 Digitaler datenspeicher Ceased DE3244629A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB08136683A GB2111262B (en) 1981-12-04 1981-12-04 Digital data storage apparatus

Publications (1)

Publication Number Publication Date
DE3244629A1 true DE3244629A1 (de) 1983-06-09

Family

ID=10526390

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19823244629 Ceased DE3244629A1 (de) 1981-12-04 1982-12-02 Digitaler datenspeicher

Country Status (4)

Country Link
US (1) US4638454A (de)
BR (1) BR8207138A (de)
DE (1) DE3244629A1 (de)
GB (1) GB2111262B (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3909267A1 (de) * 1989-03-21 1990-09-27 Siemens Ag Schaltungsanordnung fuer speichereinrichtungen zur speicherung von daten mit gueltigkeitskennzeichen
DE19633648A1 (de) * 1996-08-21 1998-02-26 Grundig Ag Verfahren und Schaltungsanordnung zur Speicherung von Diktaten bei einem digitalen Diktiergerät

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4811209A (en) * 1986-07-31 1989-03-07 Hewlett-Packard Company Cache memory with multiple valid bits for each data indication the validity within different contents
US6192447B1 (en) * 1998-04-09 2001-02-20 Compaq Computer Corporation Method and apparatus for resetting a random access memory
US20170315812A1 (en) 2016-04-28 2017-11-02 Microsoft Technology Licensing, Llc Parallel instruction scheduler for block isa processor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3742458A (en) * 1970-09-30 1973-06-26 Yokogawa Electric Works Ltd Memory protection system providing fixed, conditional and free memory portions corresponding to ranges of memory address numbers

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3241125A (en) * 1962-05-22 1966-03-15 Ibm Memory allocation
US4438512A (en) * 1981-09-08 1984-03-20 International Business Machines Corporation Method and apparatus for verifying storage apparatus addressing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3742458A (en) * 1970-09-30 1973-06-26 Yokogawa Electric Works Ltd Memory protection system providing fixed, conditional and free memory portions corresponding to ranges of memory address numbers

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
E.v. Puttkamer: A Simple Hardware Buddy System Memory Allocator. In: IEEE Transactions on Computer, Vol. C-24, No. 10, Oktober 1975, S. 953-957 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3909267A1 (de) * 1989-03-21 1990-09-27 Siemens Ag Schaltungsanordnung fuer speichereinrichtungen zur speicherung von daten mit gueltigkeitskennzeichen
DE19633648A1 (de) * 1996-08-21 1998-02-26 Grundig Ag Verfahren und Schaltungsanordnung zur Speicherung von Diktaten bei einem digitalen Diktiergerät
US6275804B1 (en) 1996-08-21 2001-08-14 Grundig Ag Process and circuit arrangement for storing dictations in a digital dictating machine

Also Published As

Publication number Publication date
GB2111262B (en) 1985-10-02
BR8207138A (pt) 1983-10-11
GB2111262A (en) 1983-06-29
US4638454A (en) 1987-01-20

Similar Documents

Publication Publication Date Title
DE69233228T2 (de) Datenverwaltungssystem für Halbleiterspeicher mit beschränkter Programmierung und I.C. Speicherkarte mit solchem Datenverwaltungssystem
DE3326725C2 (de) Vorrichtung zur Datenkomprimierung für zweidimensionale Zeichenbilder
DE2328869C2 (de) Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE4408876C2 (de) Festwertspeicher, der Daten schreiben kann und Verfahren zum Schreiben/Lesen von Daten für einen solchen
DE3390315T1 (de) Anpassungsfähige Unterteilung eines Chachespeicherraums in Domainen
DE3311948C2 (de)
DE2725395A1 (de) Einrichtung zur echtzeittransformation einer n . n bitkonfiguration
DE3243935C2 (de)
DE2856133A1 (de) Verarbeitungssystem fuer einen assoziativspeicher
DE3011552A1 (de) Datenverarbeitungsanlage mit einem hauptspeicher sowie wenigsten einem datenprozessor mit zugeordnetem adressenumformer
EP0704803B1 (de) Verfahren zur Speicherverwaltung eines Flash-Speichers
DE2803989A1 (de) Wahlfreie zugriffsspeichervorrichtung fuer digitale daten
EP0857345A1 (de) Verfahren und schaltungsanordnung zur speicherung von diktaten bei einem digitalen diktiergerät
DE3618136C2 (de)
DE60132229T2 (de) Speichervorrichtung, speichersteuerverfahren und programm
DE1901806A1 (de) Schaltungsanordnung zur Kompensation schadhafter Speicherzellen in Datenspeichern
DE2758829C2 (de) Datenverarbeitungsanlage mit mehreren Prozessoren
DE2703559C2 (de)
DE2432608A1 (de) Speicheranordnung fuer datenverarbeitungseinrichtungen
DE1524788C3 (de) Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern
DE3047695A1 (de) Verfahren und vorrichtung zum herstellen einer speichertabelle fuer farbkontrollbedingungen
DE2900586A1 (de) Anordnung zum decodieren von codewoertern variabler laenge
DE3244629A1 (de) Digitaler datenspeicher
DE19724471C2 (de) Vorrichtung und Verfahren zum Einschreiben von Daten in einen nichtflüchtigen Speicher

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8131 Rejection