DE3534026A1 - Verfahren zum aufsuchen von einem vorgegebenen suchargument entsprechenden in einem hybridassoziativspeicher enthaltenen datenfolgen - Google Patents

Verfahren zum aufsuchen von einem vorgegebenen suchargument entsprechenden in einem hybridassoziativspeicher enthaltenen datenfolgen

Info

Publication number
DE3534026A1
DE3534026A1 DE19853534026 DE3534026A DE3534026A1 DE 3534026 A1 DE3534026 A1 DE 3534026A1 DE 19853534026 DE19853534026 DE 19853534026 DE 3534026 A DE3534026 A DE 3534026A DE 3534026 A1 DE3534026 A1 DE 3534026A1
Authority
DE
Germany
Prior art keywords
search
units
character
field
argument
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.)
Withdrawn
Application number
DE19853534026
Other languages
English (en)
Inventor
Gerhard Dipl Ing Wolf
Winfried Dipl Ing Glaeser
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19853534026 priority Critical patent/DE3534026A1/de
Publication of DE3534026A1 publication Critical patent/DE3534026A1/de
Withdrawn 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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

Die Erfindung bezieht sich auf ein Verfahren zum Aufsuchen von einem vorgegebenen Suchargument entsprechenden in einem Hybridassoziativspeicher enthaltenen Datenfolgen, bei dem eine Verknüpfungseinrichtung verwendet wird, die eine der Anzahl der parallel zu verarbeitenden Datenfolgen entsprechende Anzahl von selbstständigen Verknüpfungseinheiten aufweist, denen das Suchargument und die Datenfolgen in Prüfeinheiten zugeführt werden.
Ein derartiges Verfahren ist aus der DE-OS 33 34 515 bekannt. Der dort verwendete Hybridassoziativspeicher enthält einen Basisspeicher, in dem die Datenfolgen gespeichert sind und eine assoziative Oberfläche. Die assoziative Oberfläche enthält eine Verknüpfungseinrichtung mit selbstständig und unabhängig arbeitenden Verknüpfungseinheiten. Im Basisspeicher sind die Datenfolgen (strings) bezogen auf die assoziative Oberfläche vertikal abgespeichert, wobei eine festlegbare Anzahl von Datenfolgen parallel mit Hilfe der Verknüpfungseinheiten der Verknüpfungseinrichtung gleichzeitig bearbeitet werden können.
Mit dem bekannten Suchverfahren können im Basisspeicher enthaltene nicht ausgerichtete Daten aufgesucht werden. Dazu wird den Verknüpfungseinheiten ein Suchargument zugeführt, mit dem die im Basisspeicher enthaltenen Datenfolgen nacheinander zeichenweise verglichen werden. Sobald eine der Verknüpfungseinheiten Gleichheit zwischen dem ersten Zeichen des Suchargumentes und einem Zeichen einer Datenfolge festgestellt hat, wird in der Verknüpfungseinheit eine Kittung eingeschaltet und dann weiter überprüft, ob die folgenden Zeichen dieser Datenfolge mit den folgenden Zeichen des Suchargumentes übereinstimmen.
Das bekannte Verfahren erfordert einen großen Zeitaufwand, um die einem Suchargument entsprechende Datenfolge im Basisspeicher zu finden. Die der Erfindung zugrundeliegende Aufgabe besteht deshalb darin, ein schnell arbeitendes Verfahren anzugeben, mit dem im Basisspeicher enthaltene vertikal gespeicherte Datenfolgen entsprechend einem Suchargument aufgefunden werden können. Dabei wird davon ausgegangen, daß die einzelnen Daten in den Datenfolgen ausgerichtet sind und gleiche Länge haben.
Diese Aufgabe wird bei einem Verfahren der eingangs angegebenen Art durch die kennzeichnenden Merkmale des Patentanspruchs 1 gelöst.
Der besondere Vorteil des erfindungsgemäßen Verfahrens liegt darin, daß bei gleichzeitiger Überprüfung von einer Mehrzahl von Datenfolgen in einem Feld der Suchvorgang sofort abgebrochen wird, wenn in keiner Datenfolge eines Feldes ein Treffer festgestellt wird. In der Regel wird bereits bei zwei Suchvorgängen in einem Feld feststehen, wenn in diesem Feld bei einem gegebenen Suchargument kein Treffer möglich ist. Alle Prüfeinheiten eines Suchargumentes werden nur dann mit den Prüfeinheiten der Datenfolgen eines Feldes verglichen, wenn mindestens eine Datenfolge in allen vorher überprüften Prüfeinheiten mit dem Suchargument übereinstimmt.
Andere Weiterbildungen der Erfindung ergeben sich aus den Unteransprüchen.
Anhand eines Ausführungsbeispiels, das in den Figuren dargestellt ist, wird die Erfindung weiter erläutert. Es zeigen
Fig. 1 den prinzipiellen Aufbau eines Hybridassoziativspeichers,
Fig. 2 den Aufbau einer Verknüpfungseinheit der Verknüpfungseinrichtung der assoziativen Oberfläche,
Fig. 3 den prinzipiellen Aufbau der Treffersteuerung in den Verknüpfungseinheiten gemäß Fig. 2,
Fig. 4 den Aufbau einer Adressensteuerung,
Fig. 5 ein Flußdiagramm zur Erläuterung des Verfahrens.
Der in Fig. 1 gezeigte Hybridassoziativspeicher besteht in herkömmlicher Weise aus einem Basisspeicher B-SP, einer assozativen Oberfläche ASS-FL, einer mit letzterer gekoppelten Trefferauswertung T-AUSW und der übergeordneten Steuerung HAS-ST.
Der Basisspeicher B-SP ist vorzugsweise in Anlehnung an die DE-OS 33 11 665 ausgebildet, auf die ausdrücklich verwiesen wird. Im Beispiel der Fig. 1 besteht er aus 16 Speichergruppen MD 0 bis MD 15, von denen jede, z. B. MD 0, mit jeweils aus vier Zeichen oder Byte bestehenden Dateneinheiten zeilenweise zum Ein- oder Ausspeichern über das Datenleitungssystem HAS-BUS ansteuerbar ist. Dateneinheiten können also im direkten Zugriff zeilenweise wie bei einem herkömmlichen Speicher wahlweise in eine der Speichergruppen MD 0 bis MD 15 ein- oder ausgespeichert werden. Daneben besteht insbesondere für den assoziativen Betrieb des Basisspeichers B-SP die Möglichkeit, aus jeder Speichergruppe gleichzeitig vier Zeichen, und zwar die einander entsprechenden von jeweils vier verschiedenen Dateneinheiten der Speichergruppe, anzusteuern und der assoziatien Oberfläche ASS-FL zuzuführen und von dieser zu übernehmen. Bei einem solchen Ansteuervorgang wird also in einem Zuge eine ganze Byte- oder Zeichenscheibe BS aus im vorliegenden Falle 4 × 16 = 64 Zeichen vom Basisspeicher B-SP zur Verfügung gestellt oder von diesem übernommen. Entsprechend können die 64 Verknüpfungseinheiten ALV 0 bis ALV 63 der assoziataiven Oberfläche ASS-FL gleichzeitig tätig werden.
Diese Art der Zugriffssteuerung für den Basisspeicher B-SP ermöglicht andererseits, daß z. B. in jeder Bytesäule, z. B. 0, des Basisspeichers die aufeinanderfolgenden Zeichen einer Dateneinheit und Zeichen aufeinanderfolgender Dateneinheiten innerhalb einer Datenfolge derselben Verknüpfungseinheit z. B. ALV 0, der assoziativen Oberfläche ASS-FL nacheinander zugeführt werden können. Die Datenfolgen in einer Säule werden daher in der Regel von derselben Verknüpfungseinheit ALV der assoziativen Oberfläche verarbeitet. Somit ergibt sich eine Säulen- oder Stringbildung von Zeichen einer Datenfolge, im folgenden Zeichenkette genannt. Die Zeichenketten können gleich lang sein und in Feldern Fl bis Fn im Speicher B-SP angeordnet sein. Im Feld Fl nach Fig. 1 sind z. B. 64 Zeichenketten, ZK 0 bis ZK 63 angeordnet.
Die Ansteuerung der Zeichenketten ZK in den Feldern F erfolgt mit Hilfe einer Adressensteuerung AD-ST, durch die die Zeichenketten byteweise oder als Byte- oder Zeichenscheiben adressiert werden können. Dazu erhält die Adressensteuerung AD-ST einen Steuerbefehl CMD-SP von der übergeordneten Steuerung HAS-ST des Hybridassoziativspeichers. In diesem Steuerbefehl kann z. B. die Anfangs- und Endadresse des zu bearbeitenden Zeichenkettenbereiches oder die Anfangsadresse und Länge dieses Zeichenkettenbereiches angegeben sein.
Die von der Adressensteuerung AD-ST adressierten Schreiben BS werden über den HAS-BUS der assoziativen Oberfläche ASS-FL, im folgenden Verknüpfungseinrichtung genannt, zugeführt. Die Verknüpfungseinrichtung verarbeitet die Zeichen der Scheibe BS entsprechend eines von der Steuerung HAS-ST abgegebenen Befehles CMD-ST. Da jeder Säule im Basisspeicher B-SP jeweils eine Verknüpfungseinheit ALV-0 bis ALV 63 fest zugeordnet ist und jede dieser Verknüpfungseinheiten selbstständig arbeitet, kann durch die Verknüpfungseinrichtung parallel und unabhängig voneinander jede Zeichenkette zeichenweise oder byteweise verarbeitet werden.
Bei Suchverfahren muß festgestellt werden, ob im Basisspeicher B-SP Zeichenketten oder Teile von Zeichenketten enthalten sind, die einem vorgegebenen Suchargument entsprechen. Diese Suchargumente können in einem gesonderten Speicher PAR-SP enthalten sein, der zweckmäßig in gleicher Weise aufgebaut sein kann wie der Basisspeicher B-SP, allerdings mit dem Unterschied, daß infolge der gleichartigen Beaufschlagung aller Verknüpfungseinheiten ALV der Verknüpfungseinrichtung mit einheitlichen externen Suchargumenten lediglich eine Speichergruppe dafür benötigt wird. Mit jeder durch die Steuerung HS-ST bewirkten Ansteuerung des Parameterspeichers wird z. B. ein Zeichen des Suchargumentes PAR der Verknüpfungseinrichtung, und zwar allen Verknüpfungseinheiten ALV, zugeführt. Sollten die Zeichenketten ZK nicht zeichenweise oder byteweise, sondern bitweise oder in anderen Einheiten zur Bearbeitung der Verknüpfungseinrichtung zugeführt werden, dann müssen vom Parameterspeicher die Suchargumente in entsprechend großen Einheiten auf die Verknüpfungseinrichtung übertragen werden. Diese Einheiten können auch Prüfeinheiten genannt werden.
Der Aufbau der einzelnen Verknüpfungseinheiten ALV ist in Fig. 2 gezeigt und ist ausführlich in der deutschen Offenlegungsschrift 33 19 581 erläutert, die hiermit in die vorliegende Beschreibung aufgenommen wird. Kernstück dieser Verknüpfungseinrichtung ALV ist eine arithmetisch logische Einheit ALU mit der Arbeitsbreite für ein Zeichen, z. B. 8 bit. Den beiden Operandeneingängen der ALU ist jeweils eine Maskiereinrichtung A-MASK und B-MASK, ein Operandenregister A-REG bzw. B-REG und ein Auswahlschalter A-MUX bzw. B-MUX vorgeschaltet. Über letztere können die beiden Operandenregister aus den verschiedenen Quellen wahlweise geladen werden. Im vorliegenden Falle wird z. B. das Register B-REG mit Zeichen aus dem Basisspeicher B-SP des Hybridassoziativspeichers geladen, das Register A-REG mit Zeichen aus dem Parameterspeicher PAR-SP. Mit Hilfe der Maskiereinrichtung können die Operanden entsprechend einer Maskensteuerung M-ST maskiert werden.
Das Ergebnis der Verknüpfung durch die ALU kann bei Suchvorgängen in einem Signal SIG bestehen, das einer Anzeigensteuerung ANZ-ST zugeführt wird, die mit einer Treffersteuerung T-ST gekoppelt ist. Diese gibt in Abhängigkeit von den jeweils vorliegenden Anzeigen SG und der jeweils durchgeführten Assoziationsrelation oder Suchbedingung einen Treffer T ab oder nicht ab.
Ergebnisse der Treffersteuerung T-ST können dann mit Hilfe der Trefferauswerteschaltung T-AUSW ausgewertet werden.
Aus der bereits genannten DE-OS 33 19 581 kann die weitere Arbeitsweise der Verknüpfungseinheit nach Fig. 2 entnommen werden, die jedoch für das vorliegende Suchverfahren nicht weiter erläutert werden muß.
Einzelheiten über den Aufbau der Treffersteuerung T-ST sind Fig. 3 entnehmbar. Die Treffersteuerung ist ausführlicher in der DE-OS 33 34 515 erläutert, die hiermit in die Beschreibung aufgenommen wird. Die von der zugeordneten ALU- abgegebenen Ergebnissignale SIG werden der Anzeigensteuerung ANZ-ST zugeführt. Diese ermittelt in an sich bekannter Weise aus den Signalen SIG die benötigten Anzeigen, z. B. die Anzeigen 0 Volt für den Überlauf, Z für das Ergebnis 0 und VZ für das Vorzeichen des jeweiligen Verknüpfungsergebnisses. Aus diesen Anzeigen werden in der Einrichtung T-SIG die den einzelnen Assoziationsrelationen entsprechenden Treffersignale gebildet, von denen mit dem Auswahlschalter MUX-TA das jeweils zutreffende Treffersignal ausgewählt und als Trefferanzeige TA weitergeleitet wird.
Die ermittelte und ausgewählte Trefferanzeige TA wird nun nicht unmittelbar als Treffer T weitergeleitet, sondern sie wird ggf. abhängig von dem jeweiligen Anwendungsfall entsprechenden Randbedingungen modifiziert. Zu diesem Zweck ist ein aus den UND-Gliedern U 1 bis U 4 und den ODER-Gliedern O 1 und O 2 bestehendes Verknüpfungsnetzwerk V-N vorgesehen, das Setz- und Rücksetzsignale S bzw. R für eine nachgeschaltete bistabile Kippstufe PH - FF liefert. In der Figur besteht die Kippschaltung PH-FF aus acht Kippstufen PH-FF 0 bis PH-FF 7, jedoch ist es auch möglich, daß nur eine einzige Kippstufe vorgesehen ist. Jeweils eine der Kippstufen wird mit Hilfe eines vorgeschalteten Auswahlschalters DMUX-K angesteuert.
Um die Trefferanzeige TA mit vorausgehenden Trefferanzeigen TA ketten zu können oder sonst modifizieren zu können, kann die Trefferkippschaltung PH-FF durch das Verknüpfungsnetzwerk V-N sowohl unbedingt als auch bedingt gesetzt oder zurückgesetzt werden, was durch die Steuersignale S und R für die unbedingte Einstellung und durch die Steuersignale SB und RB für die bedingte, d. h. für die von der jeweiligen Trefferanzeige TA abhängige Einstellung ermöglicht wird. Zum Beispiel kann zu Beginn eines Suchvorganges das zugeordnete Flip-Flop PH-FF mit Hilfe des Signales S und eines Taktsignals CL gesetzt werden und bei nicht Auftreten einer Trefferanzeige TA und Anliegen des Steuersignals RB zurückgesetzt werden. Das Kettungsflipflop PH-FF bleibt auch dann weiter zurückgesetzt, wenn bei Anliegen des Steuersignals RB später Trefferanzeigen TA auftreten. Mit Hilfe des Steuersignals RB kann somit eine Kettung zwischen aufeinanderfolgenden Trefferanzeigen TA erreicht werden.
Die von dem Kettungsflipflop Ph-FF zur Verfügung gestellten Treffersignale werden über einen nachgeschalteten Auswahlschalter MUX-H zum Ausgang durchgeschaltet und ergeben das Treffersignal T.
Die weiteren in Fig. 3 dargestellten Einheiten, die nicht erläutert worden sind, und deren Arbeitsweise haben für die Beschreibung des Suchverfahrens eine untergeordnete Bedeutung. Deren Aufgaben können z. B. der DE-OS 33 34 515 entnommen werden.
Die Treffersignale T 0 bis T 63 der Verknüpfungseinrichtung ASS-FL können eine Trefferauswerteschaltung T-AUSW zugeführt werden, die im einfachsten Falle als ODER- Glied realisiert ist. Das heißt wenn mindestens ein Treffer T auftritt, gibt die Trefferauswerteschaltung T-AUSW ein Signal zur Steuerung HAS-ST ab und zeigt damit an, daß zumindest bei einer der Zeichenketten ZK beim Suchverfahren ein Treffer vorliegt.
Die Adressensteuerung AD-ST kann gemäß Fig. 4 ausgeführt sein. Sie besteht danach aus ALU 1 und ALU 2, Registern RGL, RGS, RGD, RGE, einem Zähler ZH und einem Komparator KOM. Von der übergeordneten Steuerung HS-ST werden den Registern RGL, RGS und RGD die entsprechenden Daten geliefert. In das Register RGS wird die Startadresse für eine Scheibe BS im Basisspeicher B-SP eingespeichert. Ausgehend von dieser Startadresse wird ein Bereich im Basisspeicher bearbeitet, dessen Länge im Register RGL abgespeichert wird. In das Register RGD wird schließlich die Distanz von einem Feld zum nächsten Feld gespeichert. Die Startadresse wird vom Register RGS zunächst zur ALU 1 übertragen und gelangt von dort in das Register RGE. Die Länge des zu überprüfenden Bereiches wird über die ALU 2 in den Komparator KOM eingespeichert. Die Startadresse gelangt in den Zähler ZH (durch ein Taktsignal CL) und dieser beginnt zu zählen. Er gibt die erste Adresse AD an den Basisspeicher B-SP ab. Darauf folgt die nächste Adresse usw. bis die vom Zähler ZH abgegebene Adresse mit der im Komparator KOM gespeicherten Adresse übereinstimmt. Ist dies der Fall, dann ist der gewünschte Bereich im Basisspeicher B-SP abgearbeitet worden. Jetzt gibt der Komparator KOM ein Signal zum Register RGE ab, aufgrund dessen der von der ALU 1 berechnete Wert übernommen wird. Dort ist nämlich die Startadresse vom Register RGS und die Distanzadresse zum nächsten Feld im Register RGD z. B. addiert worden und als neue Startadresse festgestellt worden. Entsprechend wird mit Hilfe der vorhergehenden Startadresse und der Länge im Register RGL mit Hilfe der ALU 2 das Ende des zu bearbeitenden Bereiches im nächsten Feld errechnet und in den Komparator KOM gespeichert.
Die übergeordnete Steuerung HAS-ST, die z. B., wie bei der DE-OS 32 16 905, als Mikroprozessor ausgebildet sein kann, steuert in an sich bekannter Weise den gesamten Arbeitsablauf des Hybrid-Assoziativspeichers anhand der von außen zugeführten Befehle zur Durchführung vorgegebener Aufgaben, die dann vom Hybrid-Assoziativspeicher autonom ausgeführt werden.
Eine dieser möglichen Aufgaben besteht im Aufsuchen von Daten anhand eines vorgegebenen Suchargumentes aus den im Basisspeicher abgespeicherten Datenfolgen oder Zeichenketten. Dabei wird davon ausgegangen, daß die Zeichenketten in Feldern F im Basisspeicher angeordnet sind und gleiche Länge haben. Weiterhin wird davon ausgegangen, daß die Zeichenketten pro Feld parallel in der Verknüpfungseinrichtung ASS-FL bearbeitet werden und zwar jeweils zeichenweise oder byteweise. Selbstverständlich ist es auch möglich, die einzelnen Zeichenketten ZK bitweise in der Verknüpfungseinrichtung zu bearbeiten oder in anderen Einheiten. Das jetzt zu beschreibende Suchverfahren läuft dann entsprechend ab.
Das Suchverfahren wird anhand der Fig. 5 erläutert, in der ein Ablaufdiagramm dargestellt ist. Zu Beginn muß von der Steuerung HAS-ST ein Suchauftrag an den Hybridassoziativspeicher gegeben werden. Dazu werden Steuerkommandos CMD-SP und CMD-ST abgegeben. Zum Beispiel werden in den Parameterspeicher PAR die Suchargumente geladen und in die Adressensteuerung AD-ST die Startadresse, Länge und Distanz zwischen den Feldern eingegeben. In den Verknüpfungseinheiten ALV werden in den Treffersteuerungen durch ein Steuersignal S die Trefferkippstufen PH-FF gesetzt. Anschließend wird ein Steuersignal RB an die Treffersteuerung angelegt und damit eine Kettung eingestellt.
Der Suchvorgang beginnt damit, daß ein erstes Zeichen des Suchargumentes vom Parameterspeicher PAR-SP z. B. in die A-Register A-REG der Verknüpfungseinheiten ALV eingespeichert wird. Anschließend wird durch die Adressensteuerung AD-ST eine Scheibe BS mit den ersten Zeichen der zu überprüfenden Zeichenketten ZK z. B. im Feld F 1 den zugeordneten Verknüpfungseinheiten ALV 0 bis ALV 63 zugeführt und zwar, z. B. in die B-Register eingeschrieben. Jetzt kann durch die ALU der einzelnen Verknüpfungseinheiten ALV der Assoziationsbefehl durchgeführt werden. Zum Beispiel können entsprechend der Suchbedingung das Zeichen des Suchargumentes mit den Zeichen der Zeichenketten auf Gleichheit überprüft werden. Die Verknüpfungseinheiten ALV 0 bis ALV 63, die eine Gleichheit zwischen dem Zeichen des Suchargumentes und dem Zeichen der Zeichenketten feststellen, geben ein Treffersignal T ab, das der Trefferauswerteschaltung T-AUSW zugeführt wird. Alle übrigen Verknüpfungseinheiten ALV, die keine Gleichheit feststellen, geben ein Nichttreffersignal ab, das dazu führt, daß das zugeordnete Trefferflipflop in den Treffersteuerungen gesperrt wird. Für diese Verknüpfungseinheiten ALV wird somit die Trefferkettung unterbrochen und später auftretende Treffer nicht mehr berücksichtigt, d. h. für später auftretende Gleichheit zwischen einem Zeichen des Suchargumentes und einem Zeichen der Zeichenketten geben diese Verknüpfungseinheiten kein Treffersignal mehr ab.
Wenn die Trefferauswerteschaltung T-AUSW ein Treffersignal anzeigt, - dies ist immer dann der Fall, wenn bei einem Prüfvorgang mindestens ein Treffer aufgetreten ist, - dann muß zunächst überprüft werden, ob alle Zeichen des Suchargumentes bereits getestet worden sind oder nicht. Sind nicht alle Zeichen bearbeitet, dann wird durch die Adressensteuerung AD-ST die Adresse für die nächste Scheibe BS erzeugt, ebenso die Adresse für das nächste Zeichen des Suchargumentes im Parameterspeicher PAR-SP und die neu adressierten Zeichen in die Verknüpfungseinheiten ALV 0 bis ALV 63 geladen. Wiederum wird der Assoziationsbefehl in den Verknüpfungseinheiten ausgeführt, dieser Befehl hat jedoch nur für die nicht gesperrten Verknüpfungseinheiten Bedeutung. Bei den gesperrten Verknüpfungseinheiten sind, wie bereits oben erläutert, die Kettungen bereits unterbrochen.
Dieser Suchvorgang wird solange ausgeführt, bis entweder alle Zeichen des Suchargumentes überprüft worden sind oder keine der Verknüpfungseinheiten ALV ein Treffersignal abgibt. Tritt kein Treffersignal mehr am Ausgang der Verknüpfungseinheiten ALV auf, obwohl die Zeichen des Suchargumentes noch nicht alle bearbeitet worden sind, dann gibt es in dem entsprechenden Feld, z. B. F 1, keine dem Suchargument entsprechende Zeichenkette. Für diesen Fall wird die Startadresse für das Suchargument im Parameterspeicher PAR-SP auf den Ausgangswert zurückgesetzt und durch die Adressensteuerung AD-ST als nächste Adresse AD die Adresse des nächsten Feldes, z. B. des Feldes F 2 erzeugt. In diesem Feld wird dann in entsprechender Weise gesucht, ob das Suchargument einer oder mehreren Zeichenketten entspricht.
Sind alle Zeichen eines Suchargumentes dagegen getestet worden und gibt die Trefferauswerteschaltung T-AUSW bei allen Zeichen des Suchargumentes Treffersignale ab, dann entspricht mindestens eine Zeichenkette in dem überprüften Feld F dem Suchargument. Mit Hilfe der Treffersignale der Verknüpfungseinheiten ALV kann dann die entsprechende Zeichenkette im Feld festgestellt werden und gewünschtenfalls die Zeichenfolge oder Zeichenkette ausgegeben werden.
Aus dem geschilderten Verfahren kann entnommen werden, daß der Suchvorgang in einem Feld F nur solange durchgeführt wird, solange mindestens eine Verknüpfungseinheit ALV, die einer Zeichenkette im Feld zugeordnet ist, ein Treffersignal abgibt. Sobald alle Trefferkettungen unterbrochen sind, wird die Suche in dem Feld beendet und die Suche im nächsten Feld begonnen. Gibt es keine dem Suchargument entsprechende Zeichenkette im Feld, dann ist die Wahrscheinlichkeit groß, daß der Suchvorgang bereits nach zwei Suchvorgängen, also nach Bearbeitung von zwei Scheiben BS beendet ist, da dann alle Trefferkettungen bei den Verknüpfungseinheiten ALV unterbrochen sind. Dieser Wert von zwei Scheiben BS ist im übrigen unabhängig von der Zeichenkettenlänge. Dann kann man bereits mit der Bearbeitung des nächsten Feldes beginnen. Mit Hilfe des Hybridassoziativspeichers gemäß Fig. 1 kann somit sehr schnell festgestellt werden, ob einem Suchargument entsprechende Zeichenketten im Speicher B-SP enthalten sind.

Claims (6)

1. Verfahren zum Aufsuchen von einem vorgegebenen Suchargument entsprechenden in einem Hybridassoziativspeicher enthaltenen Datenfolgen, bei dem eine Verknüpfungseinrichtung verwendet wird, die eine der Anzahl der parallel zu verarbeitenden Datenfolgen entsprechende Anzahl von selbstständigen Verknüpfungseinheiten aufweist, denen das Suchargument und die Datenfolgen in Prüfeinheiten zugeführt werden, gekennzeichnet durch folgende Schritte
a) die Daten werden als Datenfolgen gleicher Länge in Feldern (F) im Speicher (B-SP) abgespeichert,
b) die Prüfeinheiten des Suchargumentes werden bis zur Beendigung des Suchvorganges in einem Feld nacheinander allen Verknüpfungseinheiten (ALV) zugeführt,
c) die Prüfeinheiten der parallel zu bearbeitenden Datenfolgen eines Feldes werden bis zur Beendigung des Suchvorganges in einem Feld nacheinander den zugeordneten Verknüpfungseinheiten (ALV) zugeführt,
d) bei jedem Suchschritt geben die nicht gesperrten Verknüpfungseinheiten, die eine Erfüllung der Suchbedingung feststellen, ein Treffersignal (T) ab, während die übrigen Verknüpfungseinheiten gesperrt werden,
e) der Suchvorgang in einem Feld ist beendet, wenn kein Treffersignal (T) auftritt oder alle Prüfeinheiten des Suchargumentes bearbeitet worden sind,
f) die Schritte b) bis e) werden solange durchgeführt, bis alle Felder (F) überprüft worden sind,
g) als Suchergebnis werden die Datenfolgen ausgegeben, bei denen bei allen Prüfeinheiten des Suchargumentes die die- den Datenfolgen zugeordneten Verknüpfungseinheiten ein Treffersignal abgegeben haben.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Prüfeinheiten der Datenfolgen Zeichen sind und die Datenfolgen Zeichenketten.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Prüfeinheiten die Breite eines Byte haben.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß in jeder Verknüpfungseinheit (ALV) mindestens ein Kettungsflipflop (PH-FF) enthalten ist, das zu Beginn eines Suchvorganges in einem Feld (F) gesetzt wird und das zurückgesetzt wird, wenn die Verknüpfungseinheit kein Treffersignal erzeugt und das für diesen Fall in diesem Zustand bleibt bis der Suchvorgang in dem Feld beendet ist.
5. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die Treffersignalausgänge der Verknüpfungseinheiten (ALV) einer ODER-Schaltung (T-AUSW) zugeführt werden, die ein Signal abgibt, wenn ihr mindestens ein Treffersignal zugeführt wird.
6. Verfahren nach einem der vorhergehenden Ansprüche, gekennzeichnet durch folgende Schritte,
a) das erste Zeichen des Suchargumentes wird allen Verknüpfungseinheiten (ALV) zugeführt,
b) jeweils das erste Zeichen aller in einem ersten Feld abgespeicherten Zeichenketten (ZK) wird jeweils den den Zeichenketten zugeordneten Verknüpfungseinheiten (ALV) zugeführt,
c) jede Verknüpfungseinheit vergleicht das erste Zeichen des Suchargumentes mit dem ersten Zeichen der Zeichenkette, gibt bei Erfüllung der Suchbedingung ein Treffersignal (T) ab bzw. geht bei Nichterfüllung der Suchbedingung für die weiteren Suchschritte im Feld in den Sperrzustand über,
d) der Suchvorgang in einem Feld wird beendet, wenn bei allen Verknüpfungseinheiten kein Treffersignal auftritt oder das Suchargument nur aus einem Zeichen besteht,
e) bei Nichtbeendigung des Suchvorganges gemäß Schritt d) wird der Suchvorgang mit dem nächsten Zeichen des Suchargumentes und den nächsten Zeichen der Zeichenketten in entsprechender Weise fortgesetzt bis alle Zeichen des Suchargumentes überprüft sind oder keine der Verknüpfungseinheiten ein Treffersignal abgibt,
f) als Suchergebnis werden die Zeichenketten pro Feld angegeben, bei denen für alle Zeichen des Suchargumentes das Vergleichsergebnis positiv war.
DE19853534026 1985-09-24 1985-09-24 Verfahren zum aufsuchen von einem vorgegebenen suchargument entsprechenden in einem hybridassoziativspeicher enthaltenen datenfolgen Withdrawn DE3534026A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19853534026 DE3534026A1 (de) 1985-09-24 1985-09-24 Verfahren zum aufsuchen von einem vorgegebenen suchargument entsprechenden in einem hybridassoziativspeicher enthaltenen datenfolgen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19853534026 DE3534026A1 (de) 1985-09-24 1985-09-24 Verfahren zum aufsuchen von einem vorgegebenen suchargument entsprechenden in einem hybridassoziativspeicher enthaltenen datenfolgen

Publications (1)

Publication Number Publication Date
DE3534026A1 true DE3534026A1 (de) 1987-03-26

Family

ID=6281796

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19853534026 Withdrawn DE3534026A1 (de) 1985-09-24 1985-09-24 Verfahren zum aufsuchen von einem vorgegebenen suchargument entsprechenden in einem hybridassoziativspeicher enthaltenen datenfolgen

Country Status (1)

Country Link
DE (1) DE3534026A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3827172A1 (de) * 1987-08-13 1989-03-16 Peter Elsner Einrichtung zur identifizierung von nachrichten

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3827172A1 (de) * 1987-08-13 1989-03-16 Peter Elsner Einrichtung zur identifizierung von nachrichten
US5150409A (en) * 1987-08-13 1992-09-22 Peter Elsner Device for the identification of messages

Similar Documents

Publication Publication Date Title
DE3545125C2 (de)
DE2751097A1 (de) Triggerschaltungseinheit
DE2758830A1 (de) Rechenvorrichtung
DE1815666A1 (de) Verfahren und Einrichtung zur Kanalfehlerkorrektur
DE2421130C2 (de)
DE2722124A1 (de) Anordnung zum feststellen des prioritaetsranges in einem dv-system
DE2900586A1 (de) Anordnung zum decodieren von codewoertern variabler laenge
DE2617485A1 (de) Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen
DE2906685A1 (de) Instruktionsdecodierer
DE3842286C2 (de) Verfahren zur Verarbeitung von Daten in einem verteilten Verarbeitungssystem
DE3534026A1 (de) Verfahren zum aufsuchen von einem vorgegebenen suchargument entsprechenden in einem hybridassoziativspeicher enthaltenen datenfolgen
DE2348486A1 (de) Anordnung und verfahren zur schnellen auswertung von segmentierten daten
DE2133729A1 (de) Anordnung mit einer Kaskadenschaltung einer Anzahl von Speicherelementen
DE2233164B2 (de) Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern
EP0139817B1 (de) Verfahren und Anordnung zum Aufsuchen von einem vorgegebenen Suchargument entsprechenden Daten einer Datenfolge in einem Hybrid-Assoziativspeicher
DE2730823A1 (de) Informationsauswahleinrichtung
DE2622140A1 (de) Verfahren zur durchfuehrung manueller operationen
DE2216533C3 (de) Anordnung zur Steuerung der Durchführung mehrerer Aufgaben in einer DTENVERARBEITUNGSANLAGE
DE2735874C2 (de)
EP0108261B1 (de) Logikanalysator
DE1449540B2 (de) Digitalrechner
DE3432837A1 (de) Datenkompressions- und datenexpandiereinrichtung zum uebertragen bzw. speichern von daten
DE2840384C2 (de)
DE3513916C2 (de) Pseudo-Zufallsgenerator
DE2555248C2 (de) Anordnung zum selbsttätigen Erkennen von Informationen

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee