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 datenfolgenInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90339—Query 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.
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.
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.
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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3827172A1 (de) * | 1987-08-13 | 1989-03-16 | Peter Elsner | Einrichtung zur identifizierung von nachrichten |
-
1985
- 1985-09-24 DE DE19853534026 patent/DE3534026A1/de not_active Withdrawn
Cited By (2)
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 |