DE3212076C2 - Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen - Google Patents

Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen

Info

Publication number
DE3212076C2
DE3212076C2 DE3212076A DE3212076A DE3212076C2 DE 3212076 C2 DE3212076 C2 DE 3212076C2 DE 3212076 A DE3212076 A DE 3212076A DE 3212076 A DE3212076 A DE 3212076A DE 3212076 C2 DE3212076 C2 DE 3212076C2
Authority
DE
Germany
Prior art keywords
memory
data
inputs
comparison
arrangement according
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE3212076A
Other languages
English (en)
Other versions
DE3212076A1 (de
Inventor
Michael Dipl.-Ing.Dr.-Ing. 7403 Ammerbuch Malms
Klaus Wilhelm Prof. Dr.-Ing. 5100 Aachen Plessmann
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.)
Malms Michael Dipl-Ingdr-Ing 7403 Ammerbuch
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE3212076A priority Critical patent/DE3212076C2/de
Publication of DE3212076A1 publication Critical patent/DE3212076A1/de
Application granted granted Critical
Publication of DE3212076C2 publication Critical patent/DE3212076C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

Die Erfindung betrifft ein inhaltsadressierbares Speichersystem, das als autonome Einheit an jeden Universalrechner angekoppelt werden kann und komplexe Suchvorgänge in formatierten Datenbeständen selbständig durchführt. Es zeichnet sich durch die schnelle Bearbeitung komplexer Suchvorgänge aus, die sich durch eine logische Verknüpfung vieler Suchargumente zusammensetzen. Eine eingebaute mikroprogrammierbare Steuerung vereinfacht die Handhabung des Systems durch den angekoppelten Rechner erheblich. Der Zugriff auf die gespeicherten Daten erfolgt über einen Teil des abgelegten Inhalts selbst und nicht über die Angabe des Speicherortes.

Description

Die Erfindung bezieht sich auf eine Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen gemäß den Merkmalen des Oberbegriffs des Patentanspruchs 1.
Eine Schaltungsanordnung der genannten Art ist aus der DE-OS 30 09 330 bekannt.
Stand der Technik:
Inhaltsadressierbare Speicher (auch Assoziativspeicher) sind in ihrer grundsätzlichen Funktion seit 1956 bekannt. Das besondere Merkmal dieses Speichertyps liegt in der Zugriffsart: Im Unterschied zu der üblichen Ortadressierung (Zugriff auf die gesuchte Information über die Angabe des Speicherortes) wird hier dem Speicherelement an seinen Dateneingängen ein Teil der Information angeboten, nach der gesucht wird. Innerhalb des Bausteins wird diese Teilinformation gleichzeitig mit dem Inhalt sämtlicher Speicherstellen verglichen. Nur die Stellen, an denen eine Übereinstimmung vorliegt, geben eine Treffermeldung aus, die in Form eines elektrischen Signals an entsprechenden Trefferausgängen des Bausteins abgegriffen werden kann. Daraus folgt, daß jede Speicherstelle einen Trefferausgang haben muß und in jedem Speicherelement eine Vergleichslogik enthalten sein muß, die das von außen angelegte Suchwort mit der abgespeicherten Information vergleicht. Ein Beispiel für ein solches Speicherelement ist der Baustein 3104 der Firma INTEL [Intel Corporation, Santa Clara, USA: »16 Bit Content Addressable Memory 3104«, Intel Component Data Catalogue 1978, Seite 3-152].
Bei der Herstellung solcher Elemente ergibt sich eine Vielzahl technischer Probleme. Das schwerwiegendste ist die überaus große Anzahl an Anschlußstiften (Pins) und die relativ komplizierte innere Struktur des Bausteins selbst. Aus diesen Gründen ist die verfügbare Speicherkapazität der heute auf dem Markt befindlichen inhaltsadressierbaren Speicher sehr klein (typisch: 16 bit). Für die meisten Anwendungen sind allerdings sehr viel größere Speichervolumina notwendig, so daß eine große Zahl dieser Bauelemente benutzt werden müß:e. Dies wiederum ist für einen wirtschaftlichen Einsatz vollkommen unattraktiv.
Bereits mehrfach wurde nach Lösungsmöglichkeiten gesucht, die auf der einen Seite einen inhaltsadressier ten Zugriff zulassen und auf der anderen Seite aber auch große Speicherkapazitäten erlauben. Diese Alternativlösungen greifen meist auf konventionelle Speichermedien zurück und fügen durch externe Beschaltungen die Eigenschaft der Inhaltsadressierung hinzu. Dies hat einerseits den Vorteil, daß man auf bekannte und bewährte Speichermedien zurückgreifen kann, auf der anderen Seite aber geht bei diesen Lösungen eine wichtige Eigenschaft des »reinrassigen« Assoziativspeicners verloren: der gleichzeitige Vergleich in allen Speicherzellen.
Die verschiedenen Erscheinungsformen dieser »Quasi-Assoziativspeicher« unterscheiden sich wesentlichen durch die Wahl des Speichermediums und durch die Auslegung der extern hinzugefügten Vergleichs- und Steuerlogik. Bezüglich des gewählten Speichermediums lassen sich diese Speichersysteme in 3 Gruppen einteilen:
1. System auf der Basis von Massenspeichern (meistens Plattensysteme)
2. System auf der Basis wahlfrei adressierbarer Halbleiterspeicher
3. System auf der Basis gekoppelter vollparalleler Assoziativspeicher geringer Kapazität
Bei dem System der ersten Gruppe [I. Karlowsky, H. O. Leilich, G. Stiege: »Ein Suchrechnerkonzept für Datenbankanwendungen«. Elektronische Rechenanlagen, 1975, Heft 3, Seite 108—118] erfolgt die Abspeicherung der Daten auf Plattensystemen, die eine Speicherkapazität von mehreren M Bytes aufweisen und als Peripheriegeräte in vielen Rechenanlagen zur Verfügung stehen. Diese Plattensysteme sind durch eine Logik so modifiziert, daß sie andauernd den von· der Plattenoberfläche kommenden Datenstrom mit einem oder mehreren Suchworten, die wiederum vom Rechner übergeben worden sind, vergleichen. Hierbei wird der inhaltsbezogene Zugriff also durch fortwährend Vergleich der seriell ausgelesenen Datenworte mit dem entsprechenden Suchkriterum realisiert. Um die Leistungsfähigkeit dieser Systeme zu erhöhen, werden mehrere, parallel arbeitende Vergleicherwerke installiert, so daß der serielle Datenstrom gleichzeitig mit mehreren Suchkriterien verglichen werden kann. Zusätzlich wird der Informationsstrom noch durch ein »gemultiplextes« Lesen von mehreren Plattenoberflächen verdichtet. Dadurch erhöht sich der Datendurchsatz erheblich. Stellt sich ein Treffer ein, so wird dessen Adresse dem angeschlossenen Rechner gemeldet, der anschließend den bzw. die getroffenen Datensätze weiterbearbeitet, z. B. indem er sie von der Platte liest.
Hier findet, wie schon oben angeführt, der Vergleich nicht in allen Speicherstellen gleichzeitig statt, sondern byteseriell.
Kritik zu diesem System
Der Vorteil einer großen Speicherkapazität kann einige systemimmanente Nachteile nicht aufwiegen, die
sich besonders dann zeigen, wenn hohe Anforderungen an eine Echtzeitverarbeitung, das heißt hier kurze Suchzeiten, gestellt werden:
1. Die mittlere Zugriffszeit eines Plattensystems liegt im Bereich von 35—70 ms. Diese Zeit vergeht im Mittel, bevor der erste Vergleich stattfindet. Für viele Anforderungen der Echzeitdatenverarbeitung ist diese Zeitspanne schon zu lang.
2. Der Vergleich findet byteseriell statt. Dies hat zur Folge, daß jedes Byte mit einem neuen Suchwort und — falls noch die Möglichkeit einer bitweisen Maskierung vorgesehen wird — einer neuen Maske verglichen werden muß. Dies wirkt sich jedoch nachteilig auf die Vergleichsgeschwindigkeit aus. Um die andauernden Vergleiche in der Lesegeschwindigkeit der Plattensysteme durchführen zu können, müssen die Vergleicher aus sehr schnellet) elektronischen Bausteinen bestehen. Dies wirkt sich auf die Kosten des Systems nachteilig aus.
3. Die abgespeicherte Information ist bei diesem angesprochenen System kodiert (ASCII-Code). Dies ist notwendig, um bestimmte Zeichen, die zur Erkennung des Anfangs bzw. des Endes eines Datensatzes dienen, von diesen Daten selbst unterscheiden zu können. Der Nachteil hierbei ist eine durch die Kodierung bedingte schlechtere Ausnutzung des zur Verfügung stehenden Speicherraumes. (Aus einem acht bit langen Wort werden durch Umkodierung zwei sieben bit lange Worte; dies entspricht einem zusätzlichen Speicheraufwand von 75%).
4. Neben dem inhaltsadressierten Zugriff ist es oft wichtig, einzelne Datenworte — und hierbei oft sogar einzelne Bits innerhalb dieser Worte — schnell schreiben bzw. lesen zu können. Hierzu eignen sich Plattensysteme überhaupt nicht, da jeweils nur größere Mengen von Daten gelesen bzw. geschrieben werden können. In diesen Fällen wäre es also notwendig, bei der Änderung eines Bits eine größere Anzahl von Daten (in der Regel einen ganzen Sektor) zuerst von der Platte zu lesen, zwischenzuspeichem, die entsprechende Stelle zu suchen und zu ändern und schließlich alle Daten wieder an dieselbe Stelle zurückzuschreiben. Dieses Verfahren ist in vielen Applikationen zu langsam und zu umständlich.
5. Ein weiterer Nachteil besteht in der schlechten Modularität des Speichermediums: die Kosten für die Anschaffung und Modifikation des Plattensystems sind für vi^le Artnlilfa tjnnpn untn^bsr.
Die zweite Gruppe von inhaltsadressierbaren Speichersystemen basiert auf wahlfrei adressierbaren Halbleiterbauelementen als Speichermedium. Hier gibt es zur Zeit nur ein System [Semionics Corporation, Berkeley-USA: »REM S-100-User-Manual«, Firmenschrift, 1979], das seit 1978 bekannt ist und mit einem amerikanischen Patent (Patentnummer 41 44 564) geschützt ist Bei diesem Speichersystem handelt es sich um einzelne Speicherkarten, die in bestehende Mikrorechnersystemc integriert werden können. Die Steckplätze innerhalb des Systems, das diese Karten aufnehmen soll, müssen dem Buskonzept S 100 entsprechen. Das Speichersystem besteht aus einer im Prinzip beliebigen Anzahl gleichartiger Karten, die jeweils einen Datenspeicher und eine zusätzliche externe Logik enthalten.
Der Süeicher besteht aus einer Matrix von 16 Spalten zu je 256 Zeilen mit einer Länge von 8 bit (s. B i 1 d 1). Dieser Speicher wird direkt vom Mikrorechner geladen, gelesen und während der Vergleichsoperationen gesteuert. Das Laden bzw. Lesen erfolgt byteseriell, wobei in einer Spalte nach der anderen ein Byte nach dem anderen geladen wird. Hierbei werden also alle Spalten sequentiell adressiert. Das gleiche gilt für die Operation des Lesens. Der inhaltsadressierte Zugriff erfolgt dadurch, daß sämtliche Spalten parallel geschaltet werden und alle Bytes in einer Zeile parallel mit einem Suchwort, das der Prozessor zuvor in ein Register auf der Speicherplatine geschrieben hat, verglichen werden. Auch hier erfolgt der Vergleich also byteseriell, aber in allen Spalten gleichzeitig. Jeder Spalte ist noch einTrefferflipflop zugeordnet, das gesetzt wird, falls eine Treffermeldung eintritt.
Kritik zu diesem System
1. Der Vergleich erfolgt, wie oben, byteseriell mit dem Nachteil, daß bei diesem System bei jedem zu vergleichenden Byte ein neues Suchwort, ein Maskenwort und ein Vergleichsbefehl vom Prozessor an die Speicherkarte(n) ausgegeben werden muß. Der Vergleichsbefehl legt die Vergleichsart (»größer als«, »kleiner als«, »gleich«, »kleiner gleich«, »größer gleich«) fest Das Maskenwort erlaubt es, bestimmte Bits des Suchworts vom Vergleich auszuschließen. Dieser andauernde Transfer zwischen Prozessor und Speicherkarte bedeutet eine relativ geringe Vergleichsgeschwindigkeit und eine hohe Tf ansfertätigkeit zwischen dem Prozessor und dem Speichersystem. Der Prozessor wird also in die Suchläufe voll mit einbezogen, er bedient und steuert dieses Speichersystem und wird dadurch relativ stark belastet.
2. Die hier erwähnten Speicherkarten stellen ein spezielles Zusatzelement zu bestimmten Mikrorechnersystemen dar, sie sind dementsprechend keine autonomen Systeme mit einer eigenen Steuerung. Dies setzt der universellen Ersetzbarkeit dieses Speichersystems enge Grenzen.
3. Die auf einer Karte untergebrachte Speicherkapazität von 4 K bytes ist für die meisten Applikationen viel zu klein. Zwar kann durch Einfügung mehreren Karten die Spaltenanzahl erhöht jedoch kann die Anzahl der Zeilen pro Spalte nicht verändert werden. Mit 255 ist sie für viele Anwendungen zu klein.
4. Die Vergleichsoperationen »innerhalb zweier Grenzen« bzw. »außerhalb zweier Grenzen« sind nicht in diesem Speichersystem direkt möglich. Sie müssen nach zwei getrennten Suchläufen mit jeweils einer Grenze (das heißt einem Suchwort) extern vom Prozessor generiert werden. Das bedeutet eine noch größere Belastung des Prozessors.
5. Die Anzahl der zugelassenen Datenformate ist sehr gering: so sind nur 8 bit lange vorzeichenlose Werte, 16 bit lange vorzeichenbehaftete Größen und vorzeichenlose Größen mit einer maximalen Länge von 255 byte erlaubt
An dieser Stelle sei noch auf ein System der 3. Gruppe
(s. o.) hingewiesen [W. Motsch: »Assoziativer Prozessor für nichtarithmetische Operationen«, Dissertation Ruhr-Universität Bochum 1978], das im Rahiren von Forschungsarbeiten konzipiert worden ist:
Es werden voll parallel arbeitende Assoziativspeicher
des Typs 3104 (Intel) in einer Matrix von 16 χ 2 Elementen zusammengeschaltet. Dieses Gebilde beinhaltet nicht nur die Speicherzellen, sondern auch die notwendigen Vergleicherschaltungen, ist aber durch eine sehr große Anzahl von Anschlußstiften charakterisiert. Außerdem müssen die gleichzeitig an den Trefferausgängen der Bauelemente gemeldeten Treffersignale durch eine externe Logik so aufbereitet werden, daß sie von dem angeschlossenen Rechner sequentiell abgearbeitet werden können. Dies ist in diesem Konzept durch eine Zusatzschaltung möglich.
Kritik zu diesem System
Als einziges der hier aufgeführten Systeme bietet dieses Speicherkonzept zwar den Vorteil, daß der Vergleich in allen Speicherzellen gleichzeitig stattfindet, jedoch gibt es auch gravierende Nachteile:
1. Der Speicher ist aus Bauelementen mit einer sehr geringen Speicherkapazität aufgebaut. Dies hängt mit dem Problem einer mit wachsender Kapazität exponentiell ansteigenden Anzahl der Anschlußstifte zusammen.
Daraus ergibt sich, daß um für realistische Anwendungen attraktive Speicherkapazität von mehreren K bytes zu erzielen, sehr viele dieser Elemente verschaltet werden müssen. Dies ist, wie weiter oben schon geschildert, wirtschaftlich nicht vertretbar.
2. In diesem Speicherkonzept ist nur die Vergleichsart »gleich« möglich. In fast allen Anwendungsfällen müssen allerdings mindestens noch die Vergleichsarten »größer als« und »kleiner als« möglich sein, so daß dieses System auch aus diesem Grunde unattraktiv ist.
Im Rahmen eines Verbesserungsvorschlags wird empfohlen, die internen Verschaltungen dieses Bauelements 3104 dahingehend zu ändern, daß auch zusätzliche Vergleichsarten (s. o.) möglich sind. Außerdem sollte das Problem der mit wachsender Kapazität rasch ansteigenden Pinzahl gelöst werden. Als Resultat wurde ein zweites, verbessertes System vorgestellt. Dieser Vorschlag ist für eine praktische Nutzung allerdings ungeeignet, solange die hier aufgeführten Schaltungen nicht in ein einziges Bauelement integriert werden können. Selbst dann stünden lediglich Komponenten mit einer Speicherkapazität von 64 bit zur Verfügung. Das ist für die Anwendung jedoch immer noch keine befriedigende Lösung. Ein Vorteil des Systems besteht darin, daß sämtliche Steuerungsmaßnahmen (Laden und Lesen des Speichers, das Laden der Such- und Maskenworte und die Steuerung während der Vergleichsvorgänge) durch ein vorgeschaltetes Mikroprogramm-Steuerwerk abgewickelt werden. Das Speichersystem ist hier also nicht direkt, sondern über dieses Schaltwerk an den übergeordneten Rechner angekoppelt Da diese Steuerung eine Vielzahl von Aufgaben übernimmt wird der Rechner entsprechend entlastet Hierdurch wird das Speichersystem zu einer selbständigen, also autonomen Einheit Trotzdem kann dieser Vorteil die emminenten Nachteile nicht aufwiegen:
Kritik zu diesem System
1. Zu geringe Speicherkapazität
2. vorzeichenbehaftete Daten sind für den inhaltsorientierten Zugriff nicht zugelassen
3. die Expandierung der Speichermatrix in Wortrichtung (Erhöhung der Wortlänge) ist mit einer Verringerung der Leistungsfähigkeit verbunden. Will man die Wortlänge durch Hinzufügen mehrerer der hier beschriebenen Speicherelemente vergrößern, so hat dies Folgen für den Vergleichsbetrieb. In diesem Fall kann der Vergleich nicht mehr über die gesamte, vergrößerte Wortlänge erfolgen, sondern nur innerhalb der Wortlänge eines Moduls gleichzeitig. Werden zum Beispiel vier Module in Wortrichtung miteinander gekoppelt, müssen vier Suchläufe durchgeführt werden. Hierdurch wird bei größeren Wortlängen der Vorteil des parallelen Vergleichs in allen Speicherzellen erheblich geschmälert.
Der vorliegenden Erfindung liegt nun die Aufgabe zugrunde, bei einer Schaltungsanordnung nach dem Oberbegriff des Patentanspruchs 1 die Suchvorgänge flexibler und schneller durchführen zu können.
Diese Aufgabe wird nach der Erfindung durch die Merkmale des kennzeichnenden Teils des Patentanspruchs 1 gelöst.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
Im folgenden wird die Erfindung anhand der Zeichnung näher erläutert. Es zeigt
Bild 1: Kopplung der Schaltungsanordnung nach dem Oberbegriff 1 mit einem Daten- und Hilfsspeicher zu einem inhaltsadressierten Speichersystem,
Bild 2: Interner Aufbau der Schaltungsanordnung,
Bild 3: Die Vergleichsarten.
B i 1 d 1 zeigt die Verbindung der Schaltungsanordnung, die Gegenstand der Patentansprüche ist, mit einem Datenspeicher zur Aufnahme der zu durchsuchenden Daten und einem Trefferspeicher, zur Zwischenspeicherung der Vergleichsergebnisse. Zusammen bilden diese drei Funktionsblöcke ein inhaltsadressierbares Speichersystem, auf das über eine Schnittstelle (Bild 1) zugegriffen werden kann, nachdem es hierüber mit Daten geladen wurde.
Eine nicht näher erläuterte externe Stellung (nicht abgebildet) kontrolliert die Abläufe in der im folgenden näher beschriebenen Schaltungsanordnung. Über ihre Ausgestaltung werden keine weiteren Angaben gemacht da dies für die grundsätzliche Funktion der Schaltungsanordnung ohne Bedeutung ist.
Der Datenspeicher besteht aus η Worten (weiterhin auch »Zeilen« genannt), die wiederum eine nicht näher festgelegte Länge von m bit besitzen. Der Trefferspeicher muß über dieselbe Wortanzahl verfugen, die Zeilenlänge beträgt 3 Bit entsprechend den Vergleichsergebnissen »gleich«, »größer als« und »kleiner als« der Vergleicherstufe innerhalb der Schaltung.
Gemäß Unteranspruch 17, kann der in B i I d 1 dargestellte Komplex auch mehrfach über die Schaltungsanordnung kaskadiert werden, so daß auch Daten mit größeren Wortlängen gespeichert und dem inhaltsorientierten Zugriff unterzogen werden können. Diese Kaskadierung erfolgt ausschließlich über die Kopplung der Vergleicherstufen (s. u.). Bei χ gekoppelten Anordnungen entsteht demnach ein Gesamt-Datenspeicher mit η Worten zu je x*m bit und ein Gesamt-Trefferspeicher zu ebenfalls η Worten mit je 3x bit Länge. Betrachtet man nun die beiden resultierenden Speicher, so stellen sie ein Feld von χ Spalten zu je m bit bzw. χ Spalten zu je 3 bit dar. Jeder dieser Spalten ist noch eine der den Ansprüchen zugrunde liegenden Schaltungsanordnun-
gen zugeordnet. Bei einer solchen Kaskadierung werden die Datenschnittstellen aller Spalten über einen gemeinsamen, externen Datenbus (s. B i I d 2) betrieben. Die Ankopplung einer Spalte an diesen externen Datenbus erfolgt über einen bidirektionalen Tri-State Treiber. Anhand von B i I d 2 werden die Funktionen der Lade-, Lese- und Vergleichsoperationen erläutert, wobei von * kaskadierten Spalten ausgegangen wird.
Während des Ladevorgangs werden unter Kontrolle einer externen Steuerung die über den externen Datenbus (s. B i 1 d 2) gelieferten Datenworte nacheinander und spaltenweise zuerst über einen Treiber in die Eingaberegister geladen. Der Vorgang läuft also spalten-sequentiell ab, und erst wenn sämtliche Eingaberegister geladen worden sind, erfolgt eine parallele Übernahme dieser Inhalte in die betreffende Zeile des Datenspeichers. Hierzu wird die zu beschreibende Zeile über einen auf einer externen Steuerkarte befindlichen Zähler adressiert. Der Datenaustausch zwischen Eingaberegister und Datenspeicher erfolgt für alle x*m Bit in einer Zeile immer gleichzeitig, während die Ladevorgänge der Eingaberegister spaltenweise ablaufen.
Ähnlich wird ein Lesevorgang gesteuert: Die zu lesende Zeile wird von der externen Steuerung adressiert, es erfolgt eine parallele Übernahme in die Ausgaberegister, wo dann anschließend eine Zerlegung in m bit breite Datenworte, die dann über den externen Datenbus übertragen werden, erfolgt.
Diese Vorgehensweise ist notwendig, um eine Anpassung der relativ kurzen Datenworte auf dem externen Datenbus (zum Beispiel 16 bit) auf die sehr viel längeren Speicherzeilen, die in praxisnahen Applikationen zum Beispiel 64 byte lang sein können, zu erreichen. Der Ladevorgang der Suchwort-, Operationscodes- und Maskenspeicher erfolgt ebenfalls spaltensequentiell.
Ein Suchvorgang läuft nun wie folgt ab (zunächst seien nur die Vorgänge in einer Spalte aber ohne den Effekt der Kaskadierung erwähnt):
Über einen externen Zähler werden die zu vergleichenden Zeichen sequentiell adressiert, aus dem Datenspeicher gelesen und über das Pipelineregister 1 an die Vergleicherschaltung gelegt. Hier findet der Vergleich mit einer eingestellten Zeile des Suchwortspeichers statt, wobei einzelne Bits aus diesem Vergleich ausgeschlossen werden können. Diese »maskierten« Stellen werden durch die Masken definiert Gleichzeitig mit der Adressierung eines Wortes werden auch die zugehörigen Speicherstellen in dem Trefferspeichcr adressiert Hier werden die Vergleichsergebnisse (pro Spalte liegen drei Ergebnisse entsprechend den Vergleichsarten »gleich«, »größer als« und »kleiner als« vor) abgespeichert Daraus ergibt sich, daß jeder Spalte des Datenspeichers ein Trefferspeicher ebenfalls mit η Worten zu je 3 Bit Länge zugeordnet ist Beide Speicher haben dieselbe Wortanzahl, so daß einer Zeile im Datenspeicher genau eine Zeile im Trefferspeicher zugeordnet ist
Der Vergleichsvorgang wird wort-sequentiell, aber innerhalb eines Wortes bit-parallel, durchgeführt, wobei nach Beendigung eines Vergleichsvorganges die Ergebnisse in den jeweils zugeordneten Speicherstellen der Trefferspeicher zur Verfügung stehen.
In einem anschließenden Lesevorgang des Trefferspeichers — dieser Vorgang findet auch zeilenweise statt — kann leicht festgestellt werden, welche Worte einen Treffer gemeldet haben.
Zur Erkennung der Treffer wird aus den Vergleichsergebnissen während des Lesevorgangs des Trefferspeichers der Spaltentreffer entsprechend der eingestellten Vergleichsart generiert. Hierzu zeigt Bild 3 die Tabelle der Vergleichsarten, die für jede Spalte getrennt vorgegeben werden können, indem entsprechende Steuercodes in Operationscodespeicher geladen werden. Aus der Tabelle wird ersichtlich, daß nicht nur die Grundarten, sondern eine Fülle weiterer Vergleichsarten möglich sind, unter anderem auch die Suche nach Extremwerten, dem nächst größeren, nächst kleineren Wert und nach Elementen, die innerhalb bzw. außerhalb zweier Grenzen liegen.
Es kann leicht gezeigt werden, daß aus den Vergleichsergebnissen »gleich«, »größer als« und »kleiner als« alle Treffer entsprechen·-1 diesen 18 Vergleichsarten erzeugt werden können, .-iierzu werden die aus dem Trefferspeicher gelesenen Ergebnisse in einer mit »Trefferauswahl» in Bild 2 bezeichneten Logik, die wiederum durch den eine Vergleichsart definierenden Operationscode gesteuert wird, so miteinander verknüpft daß der entsprechende Spaltentreffer entsteht.
Um die Vergleichsarten 7 —14 zu erzeugen, sind zwei Suchläufe mit unterschiedlichen Suchworten und Operationscodes notwendig. Dabei ist eine Besonderheit zu berücksichtigen, die anhand eines Beispiels erläutert werden soll:
Werden zum Beispiel alle Elemente innerhalb zweier Grenzen (Grenzen ausgeschlossen) gesucht, so wird ?.a erst ein Suchlauf mit der unteren Grenze als Suchwort und dem Operationscode »größer als« durchgeführt Danach werden der Operationscode Nr. 4(BiId 3) und die obere Grenze als Suchwort vorgegeben, indem eine andere Adresse der vor Beginn des Suchlaufes geladenen Suchwort-, Masken- und Operationscodespeicher eingestellt wird. Während des dann folgenden zweiten Suchlaufes dürfen nur noch die Ergebnisse der Vergleicherausgänge »gleich« und »kleiner als« im Trefferspeicher eingetragen werden. Dies ist innerhalb dieser Schaltung dadurch gelöst, daß man die Wortlänge des Trefferspeichers in jeder Spalte zu 3 Bit wählt und jedem der drei Vergleicherausgänge jeweils eines dieser 3 Bits zuordnet. Bei dieser Anordnung braucht in diesem Beispiel während des zweiten Suchlaufes nur dafür gesorgt zu werden, daß die »größer als«-Ergebnisse des Trefferspeichers nicht überschrieben werden. Überlagert man dann in einem auf den zweiten Suchlauf folgenden Lesevorgang die Trefferspeicher-Ausgänge »größer als« und »kleiner als«, so werden nur die Ergebnisse selektiert, die innerhalb dieser beiden Grenzen liegen. Die Logik zur Realisierung sowohl dieses Vergleichsart-spezifischen Schreibschutzes für den Treffer-
speicher als auch der Teilergebnis-Überlagerung ist in dem »Trefferauswahk-Baustein (s. Bild 2) untergebracht.
Die bit-weise Maskierung ist folgendermaßen realisiert:
Die Inhalte des Masken- und Suchwortspeichers werden in einer Verknüpfungslogik überlagert und an den Vergleicher gelegt. An diesem liegen ebenfalls die Ausgänge des Pipelineregisters 1.
Während eines Vergleichszyklus wird ein Wort des Datenspeichers in dieses Pipelineregister geladen und liegt dann sowohl am Vergleicher als auch an der Verknüpfungslogik an. In dieser Verknüpfungslogik wird nun an allen Stellen, die maskiert werden sollen, der logische Wert des Suchwertes gegen den des im Pipelineregister 1 abgespeicherten — und das ist das Datenwort selbst — ausgetauscht An den unteren Eingängen des Vergleichers liegen demnach an den maskierten Stellen dieselben logischen Werte wie an dessen oberen
Eingängen. Somit tragen diese Bit-Positionen nicht zur Bildung des Ergebnisses bei. Dieses wird in dem Pipelineregister 2 zwischengespeichert, um dann im Trefferspeicher abgelegt zu werden.
Diese beiden Pipelineregister bieten in der hier aufgeführten Anordnung die Möglichkeit, einen Vergleichszyklus in drei aufeinanderfolgende Phasen zu unterteilen, die zeitlich überlappend abgearbeitet werden können:
1.
2.
3.
Lesen des Datenwortes aus dem Datenspeicher
Zwischenspeichern im Pipelineregister 1 und vergleichen
Zwischenspeichern des Ergebnisses im Pipelineregister 2 und Laden des Trefferspeichers.
Daraus ergibt sich, daß während das Vergleichsergebnis der n— 1-sten Datenzeile aus dem Pipelineregister 2 in den Trefferspeicher geschrieben wird, gleichzeitig das /Me Datenwort im Pipelineregister 1 enthalten ist und verglichen wird und gleichzeitig die n+ 1-ste Datenzeile aus dem Datenspeicher gelesen wird. Dieses Verfahren wird »Pipelining« genannt. Dadurch verkürzt sich die Zykluszeit eines Vergleichs um ca. 50%.
Die schon oben erwähnte Masken/Suchwort-Verknüpfungslogik besitzt auch noch andere Ausgänge, die unter anderem an den Eingängen des Eingaberegisters liegen. Dieser Datenpfad wird benutzt, um die Funktion des »bitweisen« Schreibens zu ermöglichen. Hierbei sollen die logischen Zustände bestimmter Bits innerhalb einer Datenzeile verändert werden können, ohne diese über die Datenschnittstelle transferieren zu müssen. Die Vorgänge für dieses besondere Verfahren gliedern sich in folgende Einzelphasen:
1. Laden einer Maske, die nur die Bit-Positionen unmaskiert läßt, die verändert werden sollen.
2. Laden eines Suchwortes, das an den entscheidenden Bit-Stellen die entsprechenden neuen logischen Werte enthält.
3. Lesen des in Frage kommenden Datenwortes und Abspeichern in Pipelineregister 1. Nach dieser Phase liegt am Ausgang der Verknüpfungslogik und damit am Eingang des Eingaberegisters ein neues Datenwort an, das an den maskierten Stellen mit dem ursprünglichen Wort identisch ist und an den zu veränderten Bit-Positionen die neuen Werte enthält
4. Laden des neuen Datenwortes in das Eingaberegister.
5. Übernahme in den Datenspeicher.
An dieser Stelle soll noch einmal auf die Vergleichsarten 15—18 (Bild 3) eingegangen werden. Hier wird nach einem Maximum bzw. Minimum gesucht bzw. nach dem nächst kleineren oder nächst größeren Wert Diese Suchläufe werden folgendermaßen realisiert:
Der maximale Wert kann dadurch gefunden werden, daß eine bestimmte Zeile des Suchwortspeichers zu Beginn mit einem Anfangswert, der mit Sicherheit kleiner ist als das Maximum, geladen wird. Bei jedem dann folgenden Vergleich wird geprüft, ob der gerade aus dem Datenspeicher gelesene Wert größer als der Inhalt der Wortspeicherzeile ist. Ist dies der Fall, wird das alte Suchwort mit dem gerade gelesenen Wert aus dem Datenspeicher überschrieben, das dann als neuer Ausgangswert für den folgenden Vergleichszyklus dient. Da dieser wieder wort-sequentiell abläuft und immer dann der aktuelle Wert aus dem Datenspeicher als neues Suchwort übernommen wird, wenn die Bedingung »größer als« erfüllt ist, enthält der Suchwortspeicher am Ende des Suchlaufes mit Sicherheit das gesuchte Maximum. Dieses kann über die Verknüpfungslogik und den Treiber an die Datenschnittstelle übergeben oder über das Eingaberegister in den Datenspeicher eingeschrieben werden. Die Suche nach einem Minimum erfolgt entsprechend.
ίο Die Suche nach dem nächst kleineren Wert erfolgt wieder in zwei Phasen. Zuerst muß ein Durchlauf mit dem gewünschten Schwellwert als Suchwort durchgeführt werden. Anschließend findet ein zweiter Suchlauf statt, bei dem gleichzeitig mit dem Datenspeicher auch die Ergebnisse des ersten Durchgangs aus dem Trefferspeicher ausgelesen werden. Die Trefferauswahl-Logik sorgt jetzt dafür, daß immer dann ein aktuelles Datenwort als neues Suchwort übernommen wird, wenn es beiden folgenden Bedingungen gleichzeitig erfüllt:
1. Es muß kleiner sein als der Schwellwert (Suchwort aus dem ersten Durchlauf).
2. Es muß größer sein als das aktuelle Suchwort.
Vorausgesetzt wird wieder, daß der Anfangswert im Suchwortspeicher mit Sicherheit kleiner war als der gesuchte Wert selbst.
Für die Suche nach dem nächst größeren Wert gilt entsprechendes.
Zur Kaskadierung der Schaltungsanordnungen
Bisher wurde davon ausgegangen, daß die Daten alle nur aus m bit-Größen bestehen. Dann findet der Vergleich in allen Spalten gleichzeitig statt und jede Spalte produziert unabhängig von allen anderen ihre eigenen Ergebnisse. Durch eine besondere Schaltungsmaßnahme sollen darüberhinaus Daten mit mehr als m bit zugelassen werden. Schaltungstechnisch bedeutet dies eine Kaskadierung der Vergleicher mehrerer Spalten. Bei einer solchen Kopplung mehrerer ist nur das Vergleichsergebnis der niederwertigsten Spalte interessant. Dieses Ergebnis wird durch alle in der Kaskade höherwertig angordneten Vergleicher beeinflußt.
Da nur die Ergebnisse der niederwertigsten Stufe für das Auffinden der Treffer relevant sind, werden die Trefferausgänge der höherwertigen Spalten ignoriert.
Der hier beschriebene Aufbau der Schaltungsanordnung und die Tatsache, daß alle Vergleichsvorgänge wort-seriell ablaufen, bedingt eine tabellenartige Strukturierung der im Datenspeicher abgelegten Information. Alle Zeilen einer Tabelle müssen dieselbe Struktur aufweisen, das heißt die physikalische Anordnung der Daten innerhalb einer Zeile muß in allen Zeilen identisch sein.
In diesen Speichersystemen können mehrere Tabellen gleichzeitig abgespeichert werden. Hierbei ist sowohl eine horizontale als auch eine vertikale Anordnung möglich. Horizontal bzw. »nebeneinander« abgespeicherte Tabellen können sogar gleichzeitig durchsucht werden. Dabei ist durch eine externe Schaltungsmaßnahme dafür gesorgt daß die Treffererzeugung in alle Tabellen unabhängig voneinander ist Hierzu werden die Spaltentreffer-Ausgänge der kaskadierten Schaltungsanordnungen extern logisch in geeigneter Weise zusammengefaßt Vertikal oder »übereinander« angeordnete Tabellen werden nacheinander verglichen, und falls nicht mehr als ρ Tabellen in dieser Anordnung
13
abgespeichert sind, sind keine zwischenzeitlichen Transfers von Masken, Suchworten und Operationscodes über die Datenschnittstelte zum Speichersystem notwendig. Vielmehr können sie für alle Tabellen zu Beginn des gesamten Suchlaufes in den hierfür vorgesehenen ρ 5 Worte fassenden Speicherelementen (s. B i 1 d 2) abgelegt werden. Beim Übergang von einer Tabelle zu einer nächsten müssen dann nur die Adressen dieser Speicher einmal inkrementiert werden. Dann erscheint an den jeweiligen Speicherausgängen die für die Suche in der io neuen Tabelle relevante Information.
Hierzu 3 Blatt Zeichnungen
15
20
25
30
35
45
50
55
60

Claims (17)

Patemansprüche:
1. Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen auf in einem angeschlossenen, ortsadressierbaren Datenspeicher enthaltene Daten unter Verwendung eines Hilfsspeichers zur Markierung der Treffer um Datenspeicher, der aus einer Vielzahl an angeordneten Speicherzellen besteht (B i 1 d 1), in einer Matrix zu π Zeilen mit je m bit, wobei diese Schaltungsanordnung einen Suchwort-Speicher, einen Masken-Speicher zum Maskieren von beliebigen Bit-Positionen während eines Suchlaufs und eine Vergleicherstufe zum Vergleich des mit der Maske verknüpften Suchwortes mit der. Daten enthält (Bild 2), dadurch gekennzeichnet,
daß ein Trefferauswahl-Baustein N nur dann ein Treffersignal generiert, wenn das Datum in der adressierten Datenspeicherzeile in dem Größenverhältnis zu den vorgegebenen Suchworten steht, welches durch eine der in einem Operationscode-Register (M) eingestellten Vergleichsarten (1 — 14, Bild 3) definiert ist,
daß bei Vorgabe einer von vorbestimmten Vergleichsarten (15-18,BiId 3) nach einem Suchlauf ein der eingestellten Vergleichsart genügendes Datum, falls im Datenspeicher enthalten, von dort in den Suchwort-Speicher (I) übernommen ist,
daß die Änderung beliebiger Bit-Werte eines in einer adressierten Datenspeicherzeile enthaltenen Datums durchführbar ist, ohne dieses Datum über die Schnittstelle (Bild 1) transferieren zu müssen.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß während des Vergleichsvorgangs die Einstellung einer neuen Zeile n+1 im Datenspeicher (,4J gleichzeitig ablaufen kann mit dem Vergleich des Datums aus Zeile η und der Ausgabe des vom Vergleich des Datums aus Zeile n—\ resultierenden Treffersignals.
3. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß ein /η-bit bidirektionaler Treiber mit Tri-State Ausgängen (E) einen m-Bit Datenbus (DB) verbindet mit:
45
a) den m Eingängen eines Eingaberegisters (C)
b) den m Tri-State Ausgängen eines Ausgaberegisters (D)
c) den m Tri-State Ausgängen eines Pipeline-Registers 1 (F)
d) den m Eingängen des Operationscode-Speichers (M)
e) den m Eingängen des Masken-Speichers (J)
f) den m Eingängen des Suchwort-Speichers (I)
g) den m Tri-State Ausgängen (J) einer Verknüpfungslogik (H)
h) den m Eingängen folder Vergleichstufe (G)
i) den m Eingängen (i) der Verknüpfungslogik (H).
4. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß die m Tri-State-Ausgänge des Eingaberegisters (C) mit den Eingängen des Pipelineregisters 1 (F), den Eingängen des Ausgaberegisters (D) und den m Ein- und Ausgängen des Datenspeichers (/V verbunden sind. b5
5. Anordnung nach Anspruch 3 oder 4, dadurch gekennzeichnet, daß die Verknüpfungsschaltung (H) eingangsseitig mit den m Ausgängen des Masken-Speichers (J), des Suchwort-Speichers (I) und des Pipelineregisters 1 (E), und ausgangsseitig mit dem Datenbus DB und den Eingängen (d) einer Vergleicherstufe (G) verbunden ist.
6. Anordnung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, daß der Masken-Speicher (J), der Suchwort-Speicher (I), die Verknüpfungslogik (H), das Eingaberegister (C), das Pipelineregister 1 (F)und der Datenspeicher (A)so gesteuert werden können, daß ein aus einer Zeile des Daten-Speichers gelesenes und im Pipelineregister 1 (F) abgespeichertes Wort an den nicht maskierten Stellen unverändert und an den maskierten Stellen durch den logischen Wert des Suchworts ersetzt über das Eingaberegister wieder in dieselbe oder eine andere Zeile des Datenspeichers geladen werden kann, ohne einen Daten-Transfer über den Treiber (E) tätigen zu müssen.
7. Anordnung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet daß der Masken-Speicher (J), der Suchwort-Speicher (I), die Verknüpfungslogik (H), das Pipelineregisier 1 (F) und der Datenspeicher (A) so gesteuert werden können, daß das aus einer Zeile des Datenspeichers gelesene und im Pipelineregister 1 abgespeicherte Wort an den maskierten Stellen unverändert und an den nicht maskierten Stellen durch den logischen Wert des Such'vortes ersetzt an den Eingängen (d) der Vergleicherstufe liegt.
8. Anordnung nach einem der Ansprüche 3,4 oder 5, dadurch gekennzeichnet, daß die Daten-Ein/Ausgänge des Trefferspeichers (B) mit den Tri-State-Ausgängen des Pipelineregisters 2 (L) und den Eingängen (a) des Trefferauswahl-Bausteins (N) verbunden sind.
9. Anordnung nach einem der Ansprüche 4,5 oder 8, dadurch gekennzeichnet, daß die Ausgänge der Vergleicherstufe (G) mit den Eingängen des Pipelineregisters 2 (L) und den Eingängen (b)der Trefferauswahl (N) verbunden sind.
10. Anordnung nach Anspruch 4, 5, 8 und 9, dadurch gekennzeichnet, daß jeder Zeile des Datenspeichers (A) eine Zeile des Trefferspeichers (B) zugeordnet ist, in der das Vergleichsergebnis abgespeichert werden kann.
11. Anordnung nach Anspruch 10, dadurch gekennzeichnet, daß das Vergleichsergebnis eine Identifizierung des Datums der adressierten Datenspeicherzeile als »größer als« oder »kleiner als« das eingestellte Suchwort oder »gleich« diesem Suchwort erlaubt.
12. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß das Treffersignal in dem Trefferauswahl-Baustein (N) aus den Eingangssignalen (a) mittels Steuerworte im Operationscode-Speicher (M) erzeugt wird, die die jeweiligen Vergleichsarten 1-14(BiId 3)festlegen.
13. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß der Trefferauswahl-Baustein (N) aus den Eingangssignalen (b) ein Ladesigna! für den Suchwort-Speicher (I) erzeugt, welches ein im Pipclineregister 1 befindliches Wort in den Suchwort-Speicher lädt, nachdem dieses von der Vergleicherstufe (G) bei vorgegebener Vergleichsart Nr. 15 mit »größer als« und bei Vergleichart Nr. 16 mit »kleiner als« identifiziert worden ist.
14. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß der Trefferauswahl-Baustein (N)
aus den Eingangssignalen (a) und fty ein Ladesignal für den Suchwort-Speicher (I) erzeugt, welches ein im Pipelineregister 1 befindliches Wort in den Suchwort-Speicher !ädt, nachdem dieses vor der Vergleicherstufe (Cybei vorgegebener Vergleichsart Nr. 18 (Bild 3) mit »größer als« identifiziert ist und gleichzeitig die zugeordnete Trefferspeicherzeile ein »kleiner als«-Ergebnis liefert oder nachdem es bei vorgegebener Vergleichsart Nr. 17 vom Vergleicher mit »kleiner als« identifiziert ist und gleichzeitig die zugeordnete Trefferspeicherzeile ein »größer als«-Ergebnis liefert
15. Anordnung nach Anspruch 3 und 8, dadurch gekennzeichnet, daß alle Register (C, D, F, L) aus Flipflop-Speicherzellen aufgebaut sind, die über ein Taktsignal an einem Steuereingang geladen werden.
16. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß alle Speicher (M, J, I. K) aus Flipflop-Zellen mit ρ Speicherstellen, auf die über die Adreßeingänge (Anzahl = Id p) wahlfrei zugegriffen werden kann, bestehen.
17. Anordnung nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, daß die Vergleicherstufe (G) über ihre Kaskadierungs-Ein- und -Ausgänge jeweils mit der Vergleicherstufe einer weiteren gleichartigen Schaltungsanordnung (gemäß Bild 2) kaskadiert werden kann.
DE3212076A 1982-04-01 1982-04-01 Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen Expired DE3212076C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE3212076A DE3212076C2 (de) 1982-04-01 1982-04-01 Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE3212076A DE3212076C2 (de) 1982-04-01 1982-04-01 Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen

Publications (2)

Publication Number Publication Date
DE3212076A1 DE3212076A1 (de) 1983-10-13
DE3212076C2 true DE3212076C2 (de) 1986-01-30

Family

ID=6159937

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3212076A Expired DE3212076C2 (de) 1982-04-01 1982-04-01 Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen

Country Status (1)

Country Link
DE (1) DE3212076C2 (de)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3009330C2 (de) * 1980-03-11 1984-04-26 Siemens AG, 1000 Berlin und 8000 München Verfahren zum Sortieren von in einem Hybrid-Assoziativspeicher gespeicherten Daten und Anordnung zur Durchführung des Verfahrens

Also Published As

Publication number Publication date
DE3212076A1 (de) 1983-10-13

Similar Documents

Publication Publication Date Title
DE68928213T2 (de) Inhaltadressierte Speicherzellenanordnung
DE2617408B2 (de) Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie
DE3587137T2 (de) Inhaltsadressierbarer speicher.
DE2803989C2 (de) Digitaldatenspeicher mit wahlfreiem Zugriff
DE68907518T2 (de) Inhaltsadressierte Speicheranordnung.
DE2163342C3 (de) Hierarchische binäre Speichervorrichtung
DE2121865C3 (de) Speicher-Adressierschaltung
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE2712575A1 (de) Assoziatives speichersystem
DE2310631C3 (de) Speicherhierarchie für ein Datenverarbeitungssystem
DE2142634B2 (de) Assoziativspeicher
DE4117672A1 (de) Verfahren und vorrichtung zur steuerung eines zwischen einer zentraleinheit und einem arbeitsspeicher angeordneten cache-speichers
DE2718551B2 (de)
DE69021617T2 (de) Speicher, der verteiltes Laden von Datenleitungen verwendet.
DE1524773B2 (de) Adressierungssystem für Speichervorrichtungen
DE69122860T2 (de) Multiplexer
EP0134822B1 (de) Digitalspeicher
DE4302754C1 (de) Monolithisch integrierte Datenspeicheranordnung und Verfahren zu deren Betrieb
CH495584A (de) Datenverarbeitungsanlage
EP0057755B1 (de) Mikrorechnersystem zum raschen Auffinden von Kennzeichenblöcken
DE3212076C2 (de) Schaltungsanordnung zur Ausführung inhaltsorientierter Zugriffsfunktionen
DE2062164A1 (de) Verfahren zur Erzeugung eines mehr stufigen Index für gespeicherte Daten einheiten
DE3587635T2 (de) Plattenspeichersteuergerät mit geteiltem Adressenregister.
DE2525287A1 (de) Assoziativspeicher
DE3633227A1 (de) Anordnung zur umwandlung einer virtuellen adresse in eine physikalische adresse fuer einen in seiten organisierten arbeitsspeicher einer datenverarbeitungsanlage

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: MALMS, MICHAEL, DIPL.-ING.DR.-ING., 7403 AMMERBUCH

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee