DE2554442C2 - Vorrichtung zum Vergleich logischer Größen mit einer Gruppe logischer Bezugsgrößen - Google Patents

Vorrichtung zum Vergleich logischer Größen mit einer Gruppe logischer Bezugsgrößen

Info

Publication number
DE2554442C2
DE2554442C2 DE2554442A DE2554442A DE2554442C2 DE 2554442 C2 DE2554442 C2 DE 2554442C2 DE 2554442 A DE2554442 A DE 2554442A DE 2554442 A DE2554442 A DE 2554442A DE 2554442 C2 DE2554442 C2 DE 2554442C2
Authority
DE
Germany
Prior art keywords
logical
comparison
quantities
memory
register
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
DE2554442A
Other languages
English (en)
Other versions
DE2554442A1 (de
Inventor
Des Erfinders Auf Nennung Verzicht
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.)
Bpifrance Financement SA
Original Assignee
Agence National de Valorisation de la Recherche ANVAR
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 Agence National de Valorisation de la Recherche ANVAR filed Critical Agence National de Valorisation de la Recherche ANVAR
Publication of DE2554442A1 publication Critical patent/DE2554442A1/de
Application granted granted Critical
Publication of DE2554442C2 publication Critical patent/DE2554442C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • 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/90344Query processing by using string matching techniques
    • 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/90348Query processing by searching ordered data, e.g. alpha-numerically ordered data
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Character Input (AREA)

Description

Die Erfindung betrifft allgemein das Problem, das darin besteht, durch Gegenüberstellung Daten in einem Informationsfluß, der von einer Datenbank ausgeht, in Abhängigkeit von einer Gruppe von Bezugsdaten auszuwählen.
Unter der »Datenbank« ist jede Informationsquelle zu verstehen, die in der Lage ist, die Daten sequentiell zu liefern. Es handelt sich z. B. um Karteien oder Gruppen von Karteien, unabhängig davon, welches ihre technologische Grundlage ist, oder auch irgendwelche Datenübertragungseinrichtungen oder Systeme zur Erfassung von. Daten durch Messung von Parametern oder eine Verarbeitungseinheit usw.
Die »Bezugsdaten«, die von logischer, numerischer oder alphanumerischer Art sein können, sind in einer Form dargestellt, die mit derjenigen der Daten kompatibel ist, die von der Datenbank ausgegeben werden.
Unter der »Gegenüberstellung« ist der Vorgang der Erkennung einer Beziehung zwischen denjenigen Daten, die von der Datenbank ausgegeben werden, und den Bezugsdaten zu verstehen. Diese Beziehung kann völlig beliebig sein und kann z. B. Identität, Implikation, größer, größer oder gleich, kleiner, kleiner oder gleich, Abschätzung einer Strecke entsprechend einer geeigneten Messung usw. umfassen.
Dieses allgemeine Problem der Gegenüberstellung bezieht sich z. B. auf das Gebiet der automatischen Dokumentation, der syntaktischen Analyse von Algorithmussprachen und Befehlssprachen, der Verarbeitung von Anfangsdaten und Prozedurcodes bei der Übertragung von Daten, der Erkennung von Formen, der Steuerung insbesondere von industriellen Verfahren usw.
Entsprechend einer ersten Art eines bekannten Verfahrens srfolgt diese Gegenüberstellung durch eine Folge von Vergleichen und/oder elementaren Operationen, die entsprechend einer Verzweigungsmethode (»processus arborescent«) organisiert sind.
Das allgemeine Prinzip dieses bekannten Verfahrens wird nun zum besseren Verständnis mittels des folgenden speziellen Beispiels erläutert:
Es sei ein Wort, das von einer Datenbank geliefert wird, die aus einer Kartei besteht, mit den verschiedenen Wörtern zu vergleichen, die in den Bezugsdaten gespeichert sind und die die der Kartei gestellte Frage darstellen.
Z. B. sei das Wort:
»MEDICAMENT«
mit der Gruppe von Wörtern:
»RESPONSABILITE CIVILE (DES) MEDECINS (DES) HOPITAUX PUBLICS«,
zu vergleichen, wobei die Wörter in den Klammern entfallen.
Es werden nun die folgenden elementaren Vergleiche aufeinanderfolgend durchgeführt:
VERGLEICH ANTWORT
M-R nein
M-C nein
M-M ja
E-E ja
D-D ja
I-E nein
M-H nein
M-P nein
usw. Pur die folgenden, von der Kartei gelieferten Wörter.
Man sieht somit, daß die Anzahl der elementaren Vergleiche, die für die Ausnutzung der Kartei durchgeführt werden müssen, wenigstens gleich dem Produkt der Anzahl der Wörter ist, die in dieser Kartei enthalten sind, mit der Anzahl der Wörter, die die Frage umfaßt.
Eine Frage kann somit leicht acht Vergleiche erfordern. So kann sie bei einer juridischen Dokumentation zu bis zu 20 Vergleichen führen (Erfahrung des Italienischen Kassationsgerichtes). Man ist folglich gezwungen, sobald der Umfang der Karte: erheblich wird, sie in schneller auswertbare Elemente zu zerlegen, was oft nicht ohne das Entstehen erheblicher Adressierungs- und Rücksendungsprobleme geschieht.
Jedoch bleibt bei einem solchen Vergleichssystem vor allem die Verarbeitungszeit zufällig. Sie ergibt sich aus der Form des Wortes, das von der Kartei geliefert wird, im Hinblick auf die Form und die Stelle selbst der Wörter, die gefragt werden. Tatsächlich ist die Verarbeilungszeit eine Funktion der Form der Wörter:
Z. B. hat man Tür das Wort »MEDICAMENT«, das mit »RESPONSABILITE CIVILE MEDECINS HOPI-TAUX PUBLICS« verglichen wird, wie man gesehen hat, acht elementare Vergleiche.
Für das Wort »VETERINAIRE«, das ebenfalls mit der gleichen Gruppe von Wörtern verglichen wird, erhält man:
VERGLEICH ANTWORT
V-R nein
V-C nein
V-M nein
V-H nein
V-F nein
d. h. fünf elementare Vergleiche.
Die Verarbeitungszeit ist auch eine Funktion der Stelle, die die Wörter in der Frage einnehmen, da man, sobald ein Wort erkannt wurde, zu dem nächsten Wort der Kartei übergeht.
Für das Wort »CIVILE«, das mit der gleichen Gruppe von Wörtern verglichen wird, erhält man:
VERGLEICH ANTWORT
C-R nein
C-C ja
I-I ja
V-V ja
I-I ja
L-L ja
E-E ja
d. h. sieben elementare Vergleiche.
Für das Wort »PUBLICS«, das ebenfalls mit der gleichen Gruppe von Wörtern verglichen wird, erhält man:
VERGLEICH ANTWORT
P-R nein
P-C nein
P-M nein
P-H nein
P-P ja
U-U ja
B-B ja
L-L ja
I-I ja
C-C ja
S-S ja
d. h. zwölf elementare Vergleiche.
Gerade weil die Verarbeitungszeit nicht nur für jedes Wort, sondern auch für jedes Zeichen oder jede Oktalziffer zufallig bleibt, kann man bei der automatischen Dokumentation den Einfluß einer Kartei auf die Folge nicht regulieren, in der die Daten von den Trägern und insbesondere von den Platten oder den Massespeichern geliefert werden. Die offensichtlichsten Folgen davon sind die Schwerfälligkeit der Eingabe-Ausgabe-Vorgänge und die außergewöhnliche Unhandlichkeit der Informationen in dem Zentralspeicher im Hinblick auf die Verarbeitungsgeschwindigkeit
Außer dem Verfahren des vorherigen Beispiels gibt es weitere Verfahren der gleichen Art, die die gleichen Eigenschaften haben.
Um die Nachteile dieser bekannten Verfahren zu beseitigen, wurde vorgeschlagen, Vorrichtungen zu verwenden, die als »Assoziativspeicher« oder als »Speicher mit Suche über den Inhalt« bezeichnet werden. Eine Vorrichtung dieser Art ist in der US-PS 34 02 394 beschrieben. Das allgemeine Prinzip besteht darin, gleichzeitig und parallel ein Informationselement einer Bezugsgröße mit dem Inhalt der Speicherzellen zu vergleichen,' wobei das Ergebnis dieses Vergleiches entweder die Nummer (Adresse) oder der Inhalt der Speicherzellen ist, für die der Vergleich eine positive Antwort geliefert hat. Die Durchführung jedes elementaren Vergleiches auf dem Niveau einer Speicherzelle erfordert die Integration der Vergleichslogik in die eigentliche Speicherstruktur. Hieraus ergeben sich recht schwere, komplexe, kostspielige und starre Ausführungen, die keine oder nur
geringe Freiheit hinsichtlich des Formates der zu verarbeitenden Daten oder bezüglich der Art der anzustellenden Vergleiche lassen. Die Verwendung assoziativer Speicher erfordert ferner die vorhergehende Speicherung der zu verarbeitenden Daten in dem gewünschten Format.
Eine weitere Vorrichtung mit assoziativem Speicher ist in der US-PS 37 71 139 beschrieben. Wie bei der zuvor erläuterten Ausführung werden auch hier die logischen Gegenüberstellungsoperationen im wesentlichen im Speicher durchgeführt, wobei die zu behandelnden Daten in einem bestimmten Format gespeichert sind.
Der Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung entsprechend dem Oberbegriffdes Anspruches 1 so auszubilden, daß die Daten so, wie sie von einer Datenquelle geliefert werden, d. h. ohne Zwischenspeicherung, verarbeitet, d. h. mit den Bezugsgrößen verglichen werden können. Durch die erfindungsgemäße Vorrichtung soll es dabei auch möglich sein, Daten in beliebiger Struktur zu verarbeiten, d. h. mit fester oder variabler Länge, angeordnet in Untergruppen (oder Folgen) oder in Gruppen, die ihrerseits eine feste oder variable Länge besitzen können. Schließlich soll die erfindungsgemäße Vorrichtung eine vielseitigere und anpassungsfähigere Datenverarbeitung als die assoziativen Speicher gestatten und eine möglichst große Vielzahl von Gegenüberstellungsformen ermöglichen.
Diese Aufgabe wird erfindungsgemäß durch die kennzeichnenden Merkmale des Anspruches 1 gelöst.
Bei der erfindungsgemäßen Vorrichtung wird der globale Vergleich der von der Datenquelle parallel gelieferten Informationselemente mit den entsprechenden Informationselementen der Bezugsgrößen in sequentieller Form und direkt, d. h. ohne Zwischenspeicherung, durchgeführt, wobei die Vergleichsorgane sich außerhalb des Speichers befinden, in dem die Bezugsgrößen gespeichert sind.
Im folgenden wird angenommen, daß die Bezugsdaten als aus einer bestimmten Anzahl von unabhängigen Größen gebildet angesehen werden können, die zweckmäßigerweise als logische Bezugsgrößen bezeichnet werden.
Die logischen Größen können eine feste Größe bzw. Form haben, d. h. aus einer bestimmten Anzahl von Elementen oder Informationseinheiten zusammengesetzt sein, wie dies bei Zeichen, Wörtern oder Codes der Fall ist, die aus einer bestimmten Anzahl von Zeichen gebildet sind.
Sie können auch von veränderbarer Größe sein. Man kann sie daher allgemein als aus einer beliebigen Anzahl von Zeichen fester Größe zusammengesetzt ansehen, wobei diese Anzahl kleiner als ein bestimmter Grenzwert ist. Sie sind voneinander durch ein besonderes Zeichen, das als Leer- oder Zwischenraumzeichen für die alphanumerischen Daten bezeichnet wird, die diese Struktur haben, ein Zeichen, das wie das letzte Zeichen der vorherigen logischen Größe behandelt wird, getrennt.
Es wird auch angenommen, daß wenigstens ein Teil der Informationen, die von der Datenbank ausgegeben werden, eine Struktur hat, die mit derjenigen der Bezugsdaten kompatibel ist, d. h. als aus logischen Größen der gleichen Art wie die logischen Bezugsgrößen gebildet angesehen werden kann.
Zur Erläuterung der Erfindung wird das Prinzip der erfindungsgemäßen Vorrichtung anhand des oben bereits genannten Beispieles näher beschrieben.
Dabei werden die Bezugsdaten
»RESPONSABILITE CIVILE (DES) MEDECINS (DES) HOPITAUX PUBLICS«
als aus fünf logischen Größen veränderbarer Form gebildet angesehen, wobei man die Artikel in den Klammern wegläßt. Die Bezugstabelle ist für den Fall, daß das gewählte Informationselement das Zeichen ist, folgendes:
45
60 65
R C M H P
E I E O U
S V D P B
P I E I L
O L C T I
N E I A C
S U N U S
A S X U
B U U
I
L
I
T
E
U
In dieser Tabelle stellt das Zeichen »LJ« das Trennzeichen der logischen Größen und das Zeichen »—« ein beliebiges Zeichen dar.
Diese Tabelle kann auch in der angegebenen Weise durch die horizontale Linie zwischen der zwölften und dreizehnten Zeile abgeschnitten werden, wenn man festlegt, daß die logischen Bezugsgrößen auf zwölf Zeichen begrenzt sind.
Wenn man übereinkommt, das Bit als Informationselement zu wählen, wobei die Zeichen in acht Bits im ASCII (Amerikanischer Normcode für den Nachrichtenaustausch) mit gerader Parität codiert sind, hat der Anfang der Tabelle dann die folgende Form:
0 110 0 110 0 0 0 0 10 0 0 0 110 10 0 0 1 0 0 0 0 0 11111 110 0 0 11111 000 10 10 111 0 10 10 0 0 0 0 1 0 0 0 0 0 11111 11110 etc
Die Tabelle umfaßt sechsundneunzig oder einhundertzwanzig Zeilen, je nachdem, ob die logischen Größen auf zwölf Zeichen oder auf fünfzehn Zeichen begrenzt sind.
Anderen Informationselementen entsprechen Tabellen, die die gleiche Anzahl von Spalten und eine unterschiedliche Anzahl von Zeilen haben.
Bei dem genannten Beispiel wird nun eine einfache Vergleichsfunktion »gleich - verschieden« durchgeführt. Man vergleicht dabei das erste Zeichen der empfangenen logischen Größe mit den Zeichen, die in der ersten Zeile der Tabelle enthalten sind, d. h. IKCM H~P~1. und speichert das Ergebnis; das hier gleichmäßig unwahr ist, oder das Ergebnis wahr umfassen kann, wenn das empfangene Zeichen eines der fünf verschiedenen Zeichen ist, die in dieser Zeile enthalten sind. __„_„_
Für den Fall, daß man den gleichen Vergleich Bit pro Bit durchführt, ist die erste Zeile der Tabelle I 0 1 1 00 I, und das Ergebnis dieses Vergleichs ist gleich dieser Zeile 0 110 0 oder gleich ihrem Komplement 10 0 1 IJe nachdem, ob das erste Bit der gegenüberzustellenden Größe 1 oder 0 ist. Es wird nun eine der folgenden Vergleichsoperationen durchgeführt:
0 110 0
11111
0 110 0
oder
01 100
00000
1001 1
wobei 1 WAHR und 0 UNWAHR entspricht. „___
Dann führt man den zweiten Vergleich mit der zweiten Tabellenzeile I b 1 fc U ΟΊ durch und dieser Vergleich kann hier kein, ein oder zwei Ergebnisse WAHR enthalten, da diese Zeile zwei gleiche Zeichen enthält.
Die bewirkte Kombinationsfunktion ist hier eine logische UND-Funktion, die nur ein Ergebnis WAHR ergeben kann, wenn die beiden ersten empfangenen Zeichen eines der Bigramme RE, CI, ME, HO oder PU bildet. Bei der Bit pro Bit-Verarbeitung ist das Ergebnis des zweiten Vergleichs 110 0 0 oder sein Komplement 0 0 1 1 1, und der Vergleich mittels einer logischen UND-Operation ergibt entsprechend den beiden ersten Bits der logischen, gegenüberzustellenden Größe:
Erstes Bit
Zweites Bit
Teilergebnis für die ersten zwei Bits
0 0 00011
1 0 00100
0 1 10000
1 1 01000
Bei der Verarbeitung Zeichen pro Zeichen ergibt die Fortführung der Operation bis zur Ordnung η nur ein Ergebnis, das insgesamt nicht UNWAHR ist, wenn die Folge von η empfangenen Zeichen gleich der in einer der Spalten der auf die Ordnung η beschnittenen Tabelle enthaltenen ist. Wenn man die Verarbeitung bis zu dem letzten Zwischenraumzeichen der empfangenen Größe oder bis zu der letzten Zeile einer vollständigen Tabelle
fortsetzt, ist das Ergebnis der Gegenüberstellung nur dann nicht insgesamt UNWAHR, wenn die empfangene logische Größe gleich einer der logischen Bezugsgrößen ist.
Das Endergebnis ist fur eine Verarbeitung Bit pro Bit bei einer achtmal größeren Anzahl von Wiederholungen das gleiche, beruht jedoch auf einfacheren Operationen.
Das Verfahren führt zwei verschiedene Funktionen durch, die in geeigneter Weise entsprechend dem gesuchten Ergebnis gewählt werden und die auch von der Größe der gehandhabten Informationselemente abhängen.
Im einfachsten Fall, in dem die Verarbeitung Bit pro Bit durchgeführt wird, ist die erste Funktion meistens, wie bei dem obigen Beispiel, eine einfache Boolesche Identitätsfunktion, die zwischen dem ankommenden Element und den Elementen angewandt wird, die in der Zeile der gleichen Ordnung der Tabelle enthalten sind, was somit zu einem Ergebnis führt, das wie folgt geschrieben werden kann:
R =x=X
wobei χ das ankommende Element ist und X den Booleschen Zeilenvektor der Tabelle darstellt.
Diese Funktion ist für die Gegenüberstellungen des Typs »gleich - verschieden« verwendbar, die auf Größen fester oder veränderbarer Form beruhen. Andere logische oder arithmetische Funktionen können für die Durchführung von komplizierteren Gegenüberstellungen des Typs »größer als«, »größer oder gleich« oder »arithmetischer Abstand« verwendet werden.
Die zweite Funktion vervollständigt die Festlegung der erhaltenen Gegenüberstellung. Es handelt sich stets um eine parallele Operation, die zwischen zwei Gruppen von Informationselementen durchgeführt wird, und zwar Element pro Element ohne seitliche Weitergabe von Überträgen. Wie für die erste Funktion kann man zahlreiche logische und arithmetische Operationen durchführen, jedoch ist die am meisten verwendete Funktion die logische UND-Funktion, wie bei dem vorherigen Beispiel, die es ermöglicht, nachzuprüfen, daß die durch die erste Funktion ausgedrückte Bedingung durch alle Informationselemente der geprüften logischen Giöße richtig erfüllt ist. Die Zuordnung dieser zweiten Funktion zu der ersten Identitätsfunktion ergibt die Gegenüberstellung »gleich - verschieden«, die auf einer beliebigen Anzahl von logischen Bezugsgrößen beliebiger Form beruht.
Man kann nun allgemein schreiben: 5 : = 5 R, wobei R das Ergebnis der ersten Funktion ist. Der letzte Wert von S ergibt das Resultat der Gegenüberstellung.
Dies setzt voraus, daß der Vektor S überall zu WAHR veranlaßt wurde und daß die logischen Größen veränderbarer Form durch das Trennzeichen abgeschlossen sind, das zum Inneren der Tabelle mitgerechnet wird.
Eine Gegenüberstellung entsprechend dem Hamming-Abstand könnte mittels der ersten Funktion »EXKLUSIV ODER« und einer zweiten Funktion vom Zähltyp durchgeführt werden. Es handelt sich tatsächlich darum, für jede logische Bezugsgröße die Anzahl der verschiedenen Bits zu zählen. Die Zählung muß nicht bis zu einer hohen Ordnung ausgedehnt werden, sie darf jedoch nicht in Module-Art durchgeführt werden, um jede Zweideutigkeit zu vermeiden. Eine Gruppe von nichtzyklischen Zählern mit vier Zuständen ergibt im allgemeinen ein zufriedenstellendes Resultat, wobei durch den Zustand 0 der richtige Empfang einer logischen Bezugsgröße, durch den Zustand 1 oder 2 der gleiche Empfang mit einem einfachen oder doppelten Fehler und durch den Zustand 3 eine nicht erkannte oder mit einer Anzahl höherer Fehler empfangene logische Größe angegeben wird.
Um eine gleiche Gegenüberstellung zu erhalten, kann man entsprechend dem Verfahren mehrere Zuordnungen einer ersten und zweiten Funktion oder auch eine einzige, diesen beiden Funktionen äquivalente Operation ohne Darstellung eines Zwischenergebnisses durchführen.
Die Vorrichtung gemäß der Erfindung kann auch zur Verarbeitung einer Folge von logischen Größen beliebiger Form verwendet werden, wobei diese Folge von fester oder veränderbarer Länge sein kann. In diesem Falle erfolgt die Gegenüberstellung aufeinanderfolgend und unabhängig für jede logische Größe der Folge.
Weiterhin wird vorgeschlagen, daß die Ergebnisse von aufeinanderfolgenden Gegenüberstellungen, die an logischen Größen einer Folge durchgeführt werden, im Hinblick auf eine spätere Auswertung gespeichert werden.
Diese Speicherung kann auf die Gesamtheit der Ergebnisse angewendet oder auf diejenigen begrenzt werden, die insgesamt nicht Null sind und somit der Erkennung wenigstens einer der Bezugsgrößen entsprechen.
Die Ergebnisse aufeinanderfolgender Gegenüberstellungen, die an den logischen Größen einer Folge durchgeführt werden, können auch untereinander entsprechend einer dritten gewählter. Funktion derart kombiniert werden, daß das Ergebnis dieser Kombination das Ergebnis der gesuchten Gegenüberstellung für diese Folge darstellt.
Die dritte Funktion kann von der gleichen Art wie die zweite sein. Eine ODER-Funktion ermöglicht es z. B., alle positiven Ergebnisse der durchgeführten Gegenüberstellungen für eine Folge neu zu gruppieren und so die erkannten Größen unabhängig von ihrer Reihenfolge festzulegen.
Die dritte Funktion kann auch von einer anderen Art sein, wie eine Zählung von von Null verschiedenen Vektorergebnissen, die es ermöglicht, die Anzahl von in einer Folge wiederholt erkannten Bezugsgrößen zu bestimmen oder auch eine besondere Reihenfolge des Auftretens von logischen Bezugsgrößen in einer Folge durchzuführen. Weiterhin können die Ergebnisse der Gegenüberstellung von logischen Größen einer Folge aufeinanderfolgend einer Gruppe von Gegenüberstellungsergebnissen durch gleichzeitige oder nicht gleichzeitige zweite Anwendung des zuvor beschriebenen Gegenüberstellungsverfahrens gegenübergestellt werden.
Man kann so komplizierte Versuche wie die Eingrenzung, das Aufsuchen der Reihenfolge des Auftretens logischer Größen einer Folge oder die Erkennung einer Situation wie z. B. bei der industriellen Steuerung oder bei der medizinischen Diagnostik durchführen.
Auch können die aufeinanderfolgend auf die logischen Größen einer Folge angewandten Gegenüberstellun-
gen dadurch durchgeführt werden, daß Tabellen und/oder verschiedene Funktionen entsprechend der Ordnung der logischen Größe verwendet werden.
Man kann so die Vorrichtung direkt auf eine Folge anwenden, die eine Reihe von logischen Größen verschiedener Arten oder Bedeutungen enthält Dies ist insbesondere bei Folgen der Fall, die ein oder mehrere Identifis zierungszeichen enthalten, denen logische oder numerische Daten folgen, wie man sie bei Datenübertragungsverfahren, den Programmier- und Befehlssprachen und der industriellen Steuerung findet.
Selbstverständlich kann man die Vorrichtung auf eine Reihe von Folgen gemäß den verschiedenen, gerade zuvor erwärmten Möglichkeiten im Hinblick auf die Verarbeitung einer Folge anwenden.
Eine weitere Möglichkeit besteht darin, daß die Anwendung der Gegenüberstellung auf eine besondere Folge ίο durch Ergebnisse bedingt und festgelegt wird, die zuvor durchgeführt wurden.
Entsprechend dieser Anordnung kann irgendeine logische Größe oder eine Folge von logischen Größen als Begrenzer der Folge oder eine Gruppe von Folgen wie ein Artikel, ein Teilartikel, eine Kartei, eine Teilkartei oder jede Untergruppe von Informationen verwendet werden, die in der Datenbank enthalten sind und evtl. verwendet werden können, um die Art und die Parameter der Gegenüberstellung oder der Gegenüberstellungen oder der Übertragungen zu bezeichnen, die auf die logischen Größen der Untergruppen anzuwenden sind. Man erhält so eine große Flexibilität bei der Verarbeitung komplexer Datenstrukturen, die nur durch die Komplexheit der durchzuführenden logischen Entscheidungen begrenzt wird. Diese Eigenschaft bringt auch den Vorteil, die Anwendung des Verfahrens auf vorhandene Karteien oder Datenbänke wesentlich zu erleichtern, wobei deren Umstrukturierung vermieden wird. Wenn man die Strukturen der Daten wählen kann, ist es oft vorzuziehen und stets einfacher als Begrenzer und Spezifikatoren besondere Zeichen bzw. »Spezialzeichen« zu verwenden, die ausschließlich für diesen Gebrauch reserviert sind. Tatsächlich wird gemäß einem weiteren Merkmal der Erfindung die Identifizierung dieser Zeichen durch eine gleichzeitige und unabhängige Anwendung des Gegenüberstellungsverfahrens auf alle Zeichen durchgeführt, die die zu verarbeitenden Daten darstellen, die als logische Größen fester Form angesehen werden, wobei das Ergebnis dieser Anwendung zur Steuerung der verschiedenen Schritte des Verfahrens verwendet wird.
Diese Spezialzeichen können folgende Vorgänge steuern:
1. die Einleitung der Hauptanwendung des Verfahrens durch Ladung der Tabelle bzw. der Tabellen mit den logischen Bezugsgrößen, die von einer geeigneten Quelle kommen, die die Datenbank sein kann;
2. der Beginn einer Gegenüberstellungsoperation;
3. die Wahl der Gegenüberstellungsparameter (Tabelle und Funktion);
4. das Ende einer Gegenüberstellungsoperation;
5. die Festlegung von Daten, die von einem Organ des Systems im Laufe der oder am Beginn der Gegenüberstellungsoperation übertragen werden. Diese letztere Funktion ist die am meisten komplexe, da diese zu übertragenden Daten von sehr verschiedener Art und sehr verschiedenem Ursprung sein können. Es kann sich dabei um die Ergebnisse der Gegenüberstellung jeder logischen Größe einer Folge handeln, um eine Kombination mehr oder weniger komplexer Gegenüberstellungsergebnisse, um einen Teil des Inhalts der Tabelle oder der Tabellen oder einer Zusatztabelle, die der Tabelle zugeordnet ist, die die Bezugsdaten enthält, und um eine oder mehrere Folgen von logischen Größen, die von der Datenbank ausgegeben werden.
In letzterem Falle kann die Festlegung der übertragenen Daten die Verwendung mehrerer Spezialzeichen rät sich bringen, von denen jedes ein Element der Spezifikation festlegt: Eine Folge, die der Gegenüberstellung mit bedingter Übertragung unterworfen ist, eine Bedingung, die zu erfüllen ist, damit die Übertragung tatsächlich durchgeführt wird, eine Folge, die einer Gegenüberstellung mit Speicherung der Ergebnisse unterworfen ist, eine Folge oder eine Gruppe von Folgen, die nicht einer Gegenüberstellung unter-
worfen sind, deren Übertragung jedoch durch ein oder mehrere Gegenüberstellungsergebnisse bedingt ist, Parameter verschiedener Gegenüberstellungen und Entscheidungsparameter. Es ist so möglich, insbesondere den größten Teil der Ergebnisse, die erhalten oder vorgeschlagen werden, mit den verschiedenen Arten von bisher bekannten Assoziativspeichern, mit den Einschränkungen einer teilweise seriellen Organisation wieder aufzufinden, jedoch mit einer weit höheren Wirtschaftlichkeit und Flexibilität der Anwendung und einer im allgemeinen ausreicherden Geschwindigkeit, die an den Durchsatz von Informationsträgern vollkommen angepaßt ist, die in der Lage sind, kontinuierlich erhebliche Datenflüsse zu liefern;
6. die zeitweilige Blockierung der Suche durch Gegenüberstellung von Spezialzeichen. Diese Anordnung ist in all den Fällen wichtig, in denen die exklusive Verwendung von Spezialzeichen als Begrenzer nicht berücksichtigt werden kann, vor allem, wenn die Datenbank aufeinanderfolgende Bereiche verschiedener Strukturen enthält, z. B. eine. Wortstruktur für logische oder numerische Daten in einer alphanumerischen Kartei. Die Blockierung kann in einem Ausmaß angewandt werden, das bis zum Ende der physikalischen Speicherung bestimmt ist, oder allgemeiner, das durch jeden unabhängigen Begrenzer der Daten selbst begrenzt wird. Bei Nichtvorhandensein einer geeigneten Anordnung kann man eines der bekannten Transparenzverfahren zur Übertragung von Daten verwenden, jedoch führt dies im allgemeinen zu schwerfälligeren und weniger sicheren Lösungen.
Das Verfahren, wie es zuvor beschrieben wurde, ist auf die Verarbeitung aller Karteien anwendbar, denen man bei der automatischen Dokumentation begegnet.
Eine derartige Kartei setzt sich notwendigerweise aus einer bestimmten Anzahl von Artikeln oder Reihen von Folgen, Zusatzartikeln oder Folgen, Schlüsselwörtern oder logischen Größen zusammen. Diese Reihen von Folgen, diese Folgen und diese logischen Größen können von fester Länge oder am allgemeinsten von veränderbarer Länge sein und sind durch ihre Kernbegriffe oder Begrenzer oder durch ihre logischen Größen, durch das Leer- oder Zwischenraumzeichen, das ihnen mangels eines anderen SpezialZeichens vorangeht, bestimmt.
Bei dieser besonderen Anwendung sind diese Kennbegriffe oder Begrenzer logische Spezialgrößen. Logische Bezugsspezialgrößen entsprechen ihnen in einer Tabelle, und das Ergebnis aufeinanderfolgender Gegenüberstellungen, die in dieser Tabelle durchgerührt werden, steuert die Durchführung verschiedener Funktionen des Gegeuüberstellungsverfahrens. Ein Wähler ermöglicht es, die durchzuführende Funktion entsprechend der logischen Spezialgröße zu bestimmen, die erkannt wurde. Die Codes, die es ermöglichen, diese verschiedenen Spezialgrößen in Abhängigkeit von der Operation zu wählen, die gesteuert werden soll, werden von einem Programm ausgehend von der Hauptverarbeitungseinheit geliefert.
Diese logischen Spezialgrößen steuern eine der folgenden Operationen:
1. Eine Gegenüberstellungsoperation für die logischen Größen der Folge, die durch die erkannte Spezial- ίο größe bestimmt ist.
2. Eine Speicheroperation für die logischen Größen der Folge, die durch die erkannte Spezialgröße bestimmt ist. Ein SpezialZeichen, das am Ende jeder Folge angeordnet ist, kann offensichtlich das Ende der Speicheroperation steuern. Es ist das letzte gespeicherte Zeichen, es hat jedoch keine typographische Bedeutung. Es steuert außerdem die Einleitung der Gegenüberstellung für die logische Größe, die ihm folgt.
Die Verarbeitung der erhaltenen Ergebnisse steuert, wenn sie positiv ist, die Übertragung der Größen zu der Hauptverarbeitungseinheit, die für die gleiche Folge gespeichert wurden.
Für Karteien, die in fester Länge strukturiert sind, kann die Verkettung der verschiedenen Operationen einfach wiederholt gesteuert werden.
Der Code, der die Verarbeitung charakterisiert, die an den Ergebnissen jeder Reihe von Folgen durchzuführen ist, kann den Hinweis enthalten, daß die Auswertung der Kartei zu beenden ist, oder nicht, wenn das gesuchte Ergebnis erhalten wurde. Das Ende der Auswertung der Kartei wird in diesem Falle mittels der Hauptverarbeitungseinheit gesteuert.
Die Hauptverarbeitungen, die fürjede Reihe von Folgen an den Ergebnissen der Gegenüberstellungen durchzuführen sind, die erhalten werden, sind folgende:
1. Eine ODER-Funktion zwischen den verschiedenen Teilergebnissen, um zu bestimmen, ob wenigstens eines der gesuchten Ergebnisse erhalten wurde.
2. Eine Vergleichsfunktion zwischen den verschiedenen erhaltenen Ergebnissen und einer Gruppe von Ergebnissen, die man erhalten will. Dies gilt insbesondere, wenn man bestimmen will, ob alle logischen Bezugsgrößen im Ablauf einer Folge erkannt wurden.
3. Eine Funktion, die die Bestimmung ermöglicht, ob die Reihenfolge des Auftretens der logischen Größen mit der gewollten Reihenfolge übereinstimmt.
4. Eine Vergleichsfunktion, die entsprechend dem Verfahren selbst durchgeführt wird und die einerseits zwischen den verschiedenen erhaltenen Ergebnissen und andererseits mehreren Gruppen von Ergebnissen, die die Ergebnisse charakterisieren, die man zu erhalten wünscht, durchgeführt wird. Diese gleichzeitige Vergleichsfunktion kann an den erhaltenen Ergebnissen in einer gewählten Reihenfolge des Auftretens, wie zuvor erwähnt wurde, durchgeführt werden oder nicht.
Als Beispiel wird eine bibliographische Kartei erläutert, deren Artikel wie folgt strukturiert sind:
AUTU
HUGO U VICTOR 12]
TITU
HERNANI [2]
INDEXU
FRANCE U THEATRE U ROMANTIQUE [2]
DATEU
184012]
EDITU
GARNIER 12J
DATEDIU
19680515
CLDECU
0345818612]
NUMU
0345 HUG12]
Ein solcher Artikel hat Kennbegriffe, deren Bedeutungen folgende sind:
AUT LJ: AUTOR
TIT U: TITEL
INDEX LJ: INDEX
DATE U : DATUM DER ERSTEN VERÖFFENTLICHUNG
EDIT U: HERAUSGEBER
DATEDI LJ: AUSGABEDATUM
CLDEC LJ: DEZIMALKLASSIFIKATION
NUM LJ: BIBLIOTHEKNUMMER
In.s.l : ZEICHEN OHNE BEDEUTUNG ODER TYPOGRAPHIE
Ein derartiger Artikel kann offensichtlich andere Kennbegriffe oder andere Folgen enthalten, z. B.: Name desjenigen, der die Einleitung oder die verschiedenen Anmerkungen verfaßt hat, die die Ausgabe aufweist; Name der Druckerei oder Datum der gesetzlichen Hinterlegung usw....
Das Zeichen LJ bedeutet, daß ein Leer- oder Zwischenraumzeichen vorhanden ist. Es steuert die Einleitung der Gegenüberstellung für die logische Größe, die ihm folgt
Das Zeichen [2J bedeutet, daß ein Spezialzeichen ohne typographische Bedeutung vorhanden und dessen Funktion es ist, das Ende der Speicheroperation gleichzeitig mit der Einleitung der Gegenüberstellung für die logische Größe zu steuern, die ihm folgt
Das Zeichen 13J bedeutet, daß ein Spezialzeichen vorhanden ist dessen Funktion es ist, die Verarbeitung der Ergebnisse zu steuern, die für den betrachteten Artikel erhalten werden. Ihm folgt eine bestimmte Anzahl von Zeichen, die keine Funktion steuern und es ermöglichen, daß die Verarbeitung der erhaltenen Ergebnisse vor der ersten Gegenüberstellung durchgeführt wird, die der folgende Artikel erfordert. Sie enden notwendigerweise mit einem Spezialzeichen |4j, das die Nullrückstellung aller Teil- oder Endergebnisse steuert, die erhalten wurden, und das die an der ersten Spezialgröße des Artikels, der folgt, durchzuführende Gegenüberstellung einleitet
Diese verschiedenen Spezialzeichen sind in der Kartei an Steilen gespeichert, die durch Programmierung bei der Bildung der Kartei festgelegt wurden.
Es ist jedoch offensichtlich, daß diese durch die Spezialzeichen gesteuerten Funktionen durch logische Spejialgrößen gesteuert werden können. Man muß den exakten Moment berücksichtigen, zu dem diese Funktionen gesteuert werden, d. h. am Ende der Gegenüberstellung dieser Spezialgrößen.
Hierbei können die Kennbegriffe vorhanden sein:
ARTLJ : ANFANG DES ARTIKELS,
dessen Funktion es ist, alle Teil- oder Endergebnisse auf Null zurückzustellen, die für den Ablauf der Folge erhalten wurden, die vorhergeht
FARTLJ : ENDE DES ARTIKELS,
der die Verarbeitung der erhaltenen Ergebnisse steuert. Diese Verarbeitung wird während der Gegenüberstellung der Spezialgröße ARTLJ erhalten, die ihm folgt.
Das gleiche gilt für das Spezialzeichen |2]. Es kann durch eine Spezialgröße ersetzt werden, und diese braucht
keine typographische Bedeutung zu haben. Bei diesem Beispiel jedoch kann die Einleitung der Gegenüberstellung stets von dem Spezialzeichen LJ gesteuert werden.
Nachdem die Kartei aufgestellt wurde, hat der Benutzer die Wahl der Frage, die er stellt, und der Antwort, die er erhalten will.
Z. B. will er den Titel der dramatischen Werke von Victor Hugo und die Nummern erhalten, unter denen diese
so Werke in der Bibliothek klassifiziert sind.
Vor der Benutzung der Kartei speichert er an den für die Spezialgrößen reservierten Tabelle AUTLJ, TIT LJ, INDEX LJ, NUM LJ ein, jedoch derart, daß der Wähler für die an den Spezialgrößen AUT LJ. INDEX LJ durchgeführten Gegenüberstellungen im Falle eines positiven Ergebnisses eine Gegenüberstellungsfunktion für die nächste Folge steuern kann, und daß er ebenso für die an den Spezialgrößen TYT[J, NUM LJ durchgeführten
Gegenüberstellungen im Falle eines positiven Ergebnisses eine Funktion zur Speicherung der nächsten Folge steuern kann.
Jede Speicherung kann im Hinblick auf eine besondere Verarbeitung von logischen Spezialgrößen gesteuert werden. Dies ist bei dem gewählten Beispiel so, wenn der Benutzer als Antwort nur diejenigen Ausgaben des dramatischen Werkes von Victor Hugo nach einem bestimmten Datum, z. B. 1950, haben will. Die Spezialgröße
DATEDILJ wird nun an der für die Spezialgrößen reservierten Tabelle eingegeben, und wenn sie durch Gegenüberstellung erkannt wurde, steuert der Wähler eine besondere Speicherfunktion, die es ermöglicht, im Moment der Verarbeitung der Ergebnisse zwischen dieser gespeicherten Information, d. h. 19680515, und der Bezugsinformation, d. h. 19500000, eine einfache Vcrgleichsoperation außerdem zuvor beschriebenen Verfahren der Gegenüberstellung durchzuführen.
Immer noch vor der Benutzung der Kartei legt der Benutzer die Art der Gegenüberstellungsoperationen Test, die er mit dem zuvor beschriebenen Verfahren durchführen will, hier eine Identitätsvergleichsoperation, und er gibt an der für die logischen Größen reservierten Tabelle die seiner Frage entsprechenden logischen Bezugsgrößen ein, d.h. hier: HUGOLJ^CTORU, DRAMATISCHES WERKLJ- Die Bezugsinformation 19500000
fuhrt bei diesem Beispiel nicht zu einer Gegenüberstellung entsprechend dem zuvor beschriebenen Verfahren und wird daher nicht in diese Tabelle eingegeben.
Damit auf die gestellte Frage eine positive Antwort erfolgt, ist es notwendig, daß für den gleicher Artikel alle drei logischen Größen HUGO[J VICTOR LJ, DRAMATISCHES WERK LJ erkannt werden. Dies setzt voraus, daß, wenn diese drei Größen in den drei ersten Spalten der Tabelle der logischen Bezugsgrößen eingegeben worden sind, daß man ein Gesamtergebnis erhält, das gleich dem Bezugsvektor
1 1 10000000000000
ist, wenn die Tabelle sechzehn Bezugsgrößen enthalten kann. Der Benutzer wählt für die Verarbeitung der bei jedem Artäel erhaltenen Ergebnisse die Funktion, die diesem Identitätsvergleich entspricht.
Durch die Erfindung wird weiterhin eine Vorrichtung für besondere Anwendungsfälle geschaffen, insbesondere für die Verarbeitung von Daten veränderbarer Länge, wie sie bei der automatischen Dokumentation oder auf einem anderen Gebiet auftreten, wo eine Datenbank vorhanden ist, die im wesentlichen aus Texten in natürlicher Sprache besteht.
Bei dieser Vorrichtung ist vorgesehen, daß das Erkennen ein<?s SpezialZeichens, das den Beginn einer logischen Größe oder einer Folge logischer Größen anzeigt, die gegenüberzustellen sind, die Einleitung von Gegenüberstellungen, die auf diesen logischen Größen beruhen, die Verwertung der zuvor durchgeführten Vergleichsergebnisse und die Durchführung von Hilfsfunktionen wie die Speicherung hervorruft, und daß die Identifizierung eines SpezialZeichens oder einer logischen Spezialgröße, die die Art der nächsten Folge logischer Größen anzeigt, die Art der durchgeführten Gegenüberstellungen, die Verwertung der bei der Gegenüberstellung dieser Folge erhaltenen Ergebnisse und die Art der Hilfsfunktionen festlegt.
Tatsächlich sind bei einer Datenbank in natürlicher oder halbnatürlicher Sprache, d. h. bei Daten, die aus Wörtern zusammengesetzt sind, die von einer natürlichen Sprache stammen, jedoch im Rahmen einer strengeren Syntax verwendet werden, die logischen Größen Wörter, die durch Leer- oder Zwischenraumzeichen getrennt sind. Entsprechend der Organisation der Datenbank werden diese Zwischenräume durch verschiedene Spezialzeichen ersetzt, die als Markierungen für den Beginn von Folgen oder Zonen dienen. Um die Vervielfachung der Anzahl dieser Spezialzeichen zu vermeiden, verwendet man logische Spezialgrößen, die die Art der Folge und ihre Bedeutung festlegen, wie:
30 AUTLJ
INDEXLJ usw.
Die systematische und gleichzeitige Suche nach diesen logischen Spezialgrößen ermöglicht es, geeignete Gegenüberstellungen an den Folgen logischer Größen durchzuführen, die gegenüberzustellen sind, wobei man ein Minimum an Spezialzeichen verwendet, evtl. reduziert auf ein einziges Leer- oder Zwischenraumzeichen.
In letzterem Falle müssen die logischen Spezialgrößen absolut exklusiv verwendet werden. Dies ermöglicht es, die Vorrichtung bei Datenbanken verschiedener Strukturen anzuwenden, d. h. mit einer veränderbaren Anzahl von Spezialzeichen, die z. B. im Rahmen üblicher Steuerverfahren dieser Datenbanken aufgebaut sind.
Durch die Erfindung wird weiterhin ein Gegenüberstellungssystem geschaffen, das sich im wesentlichen auszeichnet durch:
drei Gegenüberstellungsuntersysteme, die jeweils zur Identifizierung der Spezialzeichen, zur Identifizierung der logischen Spezialgrößen und für die Gegenüberstellungsverarbeitung logischer Größen oder Folgen von logischen Größen, die durch die Zeichen oder logische Spezialgrößen bestimmt werden, mit den logischen Bezugsgrößen bestimmt sind,
eine logische Steuervorrichtung, die die Verkettung der elementaren Operationen und insbesondere die Einleitung der Gegenüberstellungsoperationen durchführt, einen Pufferspeicher zur Speicherung einer oder mehrerer Folgen im Hinblick auf ihre spätere Auswertung, und
eine Schreibvorrichtung, die es ermöglicht, die logischen Bezugsgrößen in den Speichern der Gegenüberstel- so lungsuntersysteme anzuordnen.
Entsprechend einem zusätzlichen Merkmal hat die Vorrichtung weiterhin:
ein viertes Gegenüberstellungsuntersystem, das zum Erkennen einer bestimmten Anzahl von Ergebnisarten unter den Ergebnissen, die von dem dritten Gegenüberstellungsuntersystem geliefert werden, und
einen zweiten Pufferspeicher zur Speicherung der sich aus dieser Erkennung ergebenden Diagnosen.
Diese Struktur ermöglicht einen gleichzeitigen Betrieb des dritten oder vierten Gegenüberstellungsuntersystems niit einem ebenso einfachen Zyklus wie der eines einzigen Gegenüberstellungssystems.
Außerdem können die drei Tabellenspeicher der drei ersten Untersysteme durch eine gemeinsame Adressiervorrichturig adressiert werden.
Alle diese Organe sind von im wesentlichen modularer Art, was es ermöglicht, unabhängig die Kapazität jedes Untersystßms an die Anzahl von Zeichen oder logischen Bezugsgrößen oder Resultatsarten anzupassen, die für einen bestimmten Anwendungsfall geeignet sind.
Die Erfindung wird nachstehend anhand der Fig. 1 bis 20 beispielsweise erläutert. Es zeigt:
Fig. 1 schematisch die Organisation eines Gegenüberstellungssystems gemäß der Erfindung,
Fig. 2 ein Schema des ersten Operators, Fig. 3 das Schema eines Ausführungsbeispiels des zweiten Operators,
Fig. 4 ein Ausführungsbeispiel des Arbeitsregisters,
Fig. 5 und 6 Ausfuhrungsbeispiele des ersten Operators,
Fig. 7 schematisch eine Abwandlung der Ausfiihrungsform,
Fig. 8 ein Beispiel der Ausfuhrungsform des abgewandelten Operators,
Fig. 9 schematisch eine zweite Abwandlung der Ausführungsform,
Fig. 10 ein Beispiel der Ausführungsform des Operators in der zweiten Abwandlung,
Fig. 11 eine Abwandlung der Ausführungsform, die in einem einzigen Operator die beiden vorherigen Operatoren und das Arbeitsregister kombiniert,
Fig. 12 eine Abwandlung des Systems mit mehreren Speichermodulen,
Fig. 13 eine Abwandlung, bei der die verschiedenen Bezugsdatengruppen in verschiedenen Teilen eines gemeinsamen Speichers enthalten sind,
ίο Fig. 14 eine Abwandlung, bei der mehrere Arten eines ersten Operators vorgesehen sind,
Fig. 15 eine zweite Ausfiihrungsform des Systems gemäß der Erfindung,
Fig. 16 eine Ausfuhrungsform des Nutz- und Entscheidungsorgans, das das System aufweist,
Fig. 17 ein komplexes Gegenüberstellungssystem, das aus drei Untersystemen gebildet ist,
Fig. 18 die logische Organisation eines besonderen Speichers, der für die Bildung des Systems gemäß der Erfindung geeignet ist,
Fig. 19 ein Funktionsschema einer Ausführungsform des Systems gemäß der Erfindung, und
Fig. 20 das gattungsmäßige Schema einer Ausführungsform der Pufferspeicher gemäß der Erfindung.
Bei einer ersten Ausführungsform, die schematisch in Fig. 1 gezeigt ist, besteht das Gegenüberstellungssystem im wesentlichen aus einem Lese-Schreib-Speicher 1, der die Bezugsdaten enthält, zwei Operatoren 2 und 3, die jeweils die erste und zweite Funktion durchführen, die zuvor beschrieben wurden, einem Arbeitsregister 4, das die Ergebnisse enthält, und einem Zählregister 5.
Die Eigenschaften aller dieser Organe hängen hauptsächlich von der Struktur der Bezugsdaten und der gewählten Ausführungsart für die Gegenüberstellungsoperation ab.
Dies wird nun mittels des bereits zuvor verwendeten Beispiels für die Darstellung des Verfahrens im einzelnen erläutert.
Bei diesem Beispiel weisen die Bezugsdaten fünf logische Größen veränderbarer Form vom Typ einer alphanumerischen Zeichenkette auf. Die maximale Form dieser Größen hat fünfzehn Zeichen einschließlich dem Zwischenraum. Es wird daher etwas übertrieben angenommen, daß die Bezugsdaten maximal acht logische Größen aus sechzehn Zeichen aufweisen können.
Bei diesem Beispiel wurden die Gegenüberstellungsoperationen gemäß der Erfindung als solche beschrieben, die auf zwei verschiedenen Niveaus durchgeführt werden können, nämlich auf dem Niveau des Zeichens oder dem Niveau des Bits.
Im ersten Fall enthält jede Speicherstelle des Speichers 1 eine Zeile der Bezugstabelle, d. h. die Zeichen der gleichen Ordnung verschiedener logischer Bezugsgrößen. Dieser Speicher hat daher sechzehn Speicherstellen, deren Kapazität 48 bis 64 Bits entsprechend dem Code beträgt, der für die Darstellung der Zeichen verwendet wird, d. h. insgesamt 768 bis 1024 Bits.
Die Leitung 6, die den Speicher 1 mit dem ersten Operator 2 verbindet, muß eine Größe haben, d. h. eine Anzahl von übertragenen Signalen, die gleich der Kapazität einer Speicherstelle ist, d. h. 48 bis 64 Bits. Der Operator 2 empfängt auch Informationen von der Quelle 7 über die Leitung 8 seriell pro Zeichen in diesem Falle. Dei Operator 2 hat daher Kreise, die in der Lage sind, parallel die Operation, die die erste Funktion verwirklicht, wie sie zuvor festgelegt wurde, an acht Zeichen durchzuführen.
Fig. 2 zeigt schematisch die entsprechende Struktur, zusammengesetzt aus acht elementaren Operatoren 9.1 bis 9.8, die gleichzeitig über die Leitung 8 das zu vergleichende Zeichen und getrennt über die Leitungen 6.1 bis 6.8 die von dem Speicher 1 kommenden Bezugszeichen empfangen.
Das Ergebnis dieser ersten Operation wird auf den zweiten Operator 3 über die Leitung 10 übertragen, der durch die Zusammenfassung der Ausgangsleitungen der Operatoren 9.1 bis 9.8 gebildet ist. Seine Zusammensetzung hängt von der Komplexheit dieses Ergebnisses und folglich von der Art der ersten Funktion ab. Für eine einfache Vergleichsoperation gleich/verschieden, implizit oder analog, liefert der elementare Operator 9 nur ein einziges Ausgangssignal und die Leitung 10 hat nur acht Signale zu dem zweiten Operator 3 zu übertragen. Für Mehrfachvergleichsoperationen, wie man sie mit der integrierten TTL-Schaltung vom Typ 7485 erhalten kann, kann die Anzahl der zu dem Operator 3 zu übertragenden Signale zwei- oder dreimal höher sein.
Der Operator 3 ist im allgemeinen ein Operator, der die logische Operation UND an den Ergebnissen von aufeinanderfolgenden Vergleichen ausführt, die von dem Operator 2 durchgeführt wurden. Der Operator 2 empfängt diese Ergebnisse über die Leitung 10 und über die Leitung 11 den Inhalt des Arbeitsregisters 4. Das Ergebnis der zweiten Operation bzw. die Kombination wird über die Leitung 12 zu dem Register 4 übertragen.
Fig. 3 zeigt das diesem Fall entsprechende Schema, das z. B. mittels zwei integrierten TTL-Schaltungen vom Typ 7408 verwirklichbar ist und das acht UND-Bezugsglieder3.1 bis3.8 aufweist. Andere Kombinationsfunktionen können mittels verschiedener logischer oder arithmetischer Funktionen verwirklicht werden, z. B. ODER, Implikation oder Zählung. Dagegen sind für die am meisten komplexen Gegenüberstellungsoperationen wie Abgrenzung, Suchvorgänge oder Suchvorgänge der Reihenfolge eines Auftretens, die jeweiligen Aufgaben des ersten Operators 2, des zweiten Operators 3 und des Arbeitsregisters 4 schwierig zu trennen, und es kann vorzuziehen sein, eine der später beschriebenen Ausruhrungsformen zu verwenden.
Das Arbeitsregister 4 empfängt über die Leitung 12 das Ergebnis der Kombinationsoperation, die von dem Operator 3 durchgeführt wird. Sein Inhalt wird zu diesem Operator und einem Nutzorgan 13 über die Leitung 11 übertragen. Das Arbeiteregister 4 hat wenigstens acht Flip-Flops 4.1 bis 4.8 entsprechend F i g. 4 und kann beispielsweise mittels zweier integrierter TTL-Schaltungen des Typs 7475 oder vier TTL-Schaltungen des Typs 7474 gebildet werden.
Das Zählregister 5 hat die Aufgabe, den Speicher 1 derart sequentiell zu adressieren, daß er sukzessiv dem
ersten Operator 2 den Inhalt seiner Speicherstellen über die Leitung 6 zuführt. In diesem ersten Fall handelt es sich daher um einen Zähler mit sechzehn Zuständen, zusammengesetzt aus vier binären Flip-Flops, z. B. mittels einer integrierten TTL-Schaltung des Typs 7493. Die so bestimmten Adressen werden über die Leitung 14 zu dem Speicher 1 übertragen.
Im Falle einer Verarbeitung Bit pro Bit muß der Speicher 196 bis 128 Speicherstellen entsprechend dem verwendeten Code aufweisen, wobei jede Speicherstelle eine Kapazität von acht Bits hat. Dies gilt auch für die Größe der Leitung 6, und der Operator 2 muß acht elementare Kreise zum Vergleich zwischen dem über die Leitung 8 von der Quelle ankommenden Bit und den acht über die Leitung 6 von dem Speicher kommenden Bits haben.
Zwei Ausführungsbeispiele sind in den Fig. 5 und 6 für den einfachen Vergleich gleich/verschieden gezeigt. Das erste verwendet z. B. integrierte TTL-Multiplexkreise mit vier Wegen des Typs 74155 oder 9309 und TTL-Inverter des Typs 7404 und das zweite zwei integrierte exklusiv ODER-TTL-Kreise des Typs 7486 und einen Inverter.
Die Ausgangsleitung 10 des Operators 2 hat die gleichen Eigenschaften wie im ersten Fall, und das gleiche gilt für den Operator 3 und das Register 4 wenigstens in dem einfachsten Fall, wo die zweite Funktion von dem Informationselement unabhängig ist, auf das die erste Funktion angewendet wird. Die Kreise der Fig. 3 und 4 sind somit verwendbar.
Das Zählregister 5 ist in diesem Falle ein Register mit 128 Zuständen und hat sechs binäre Flip-Flops.
Betrachtet man die streng sequentielle Art der durchzuführenden Operationen, kann deren Steuerung von einem einfachen Zeitbezugssignal durchgeführt werden, das von der Quelle 7 über die Leitung 15 ausgeht. Dieses Signal steuert die Kopie des vorläufigen Ergebnisses in dem Register 4, das von dem Operator 3 über die Leitung 12 abgegeben wird, und die gleichzeitige Weiterschaltung des Zählregisters 5. In diesem Fall, wo die Quelle 7 kein unabhängiges Zeitbezugssignal liefert, wird ein geeigneter Trennkreis verwendet, um es ausgehend von dem zusammengesetzten Signal weiterzubilden, das von der Quelle abgegeben wird.
Die Inbetriebnahme des Kreises umfaßt zwei verschiedene Operationen. Die erste ist die Ladung des Speichers 1 mit den Bezugsdaten. Diese wird von einem Schreiboperator durchgeführt, der schematisch bei 16 in Fig. 1 mit seiner Datenleitung 17 und seiner Adressensteuerleitung 18 gezeigt ist. Die Adressierung des Speichers 1 während der Ladung hängt von den besonderen Eigenschaften des Speichers und der Form ab, mit der die Bezugsdaten geliefert werden, ist jedoch im allgemeinen sequentiell, wie während der Verarbeitung, und kann daher von dem Zählregister 5 durchgeführt werden. Die Ladeoperation vereinfacht sich erheblich, wenn der Zugriff zu dem Speicher 1 in anderer Schreibweise als Speicherstelle pro Speicherstelle, z. B. Zeichen pro Zeichen bei der ersten Funktionsweise oder pro Spalte in der zweiten möglich ist. Dies erfordert eine besondere Struktur des Speichers, die mit bestimmten Technologien inkompatibel sein kann.
Der zweite Teil der Inbetriebnahme besteht darin, das Arbeitsregister 4 und das Zählregister 5 in einen Anfangszustand zu bringen. Der Anfangszustand des Arbeitsregisters 4 ist vorzugsweise derjenige, für den der Operator 3 der Ausgang des Operators 2 transparent wird, um in das Register 4 den Ausgang des Operators 2 zu kopieren. In dem Falle, wo es nicht möglich oder zu schwer zu verwirklichen ist, z. B. bei Nichtvorhandensein des neutralen Elements für die zweite gewählte Funktion für die Durchführung der Gegenüberstellung, muß man den Einfluß des Anfangszustandes des Registers 4 bei der Interpretation des Gegenüberstellungsergebnisses, dem Endzustand des gleichen Registers, durch das Nutz- und Entscheidungsorgan 13 berücksichtigen.
Man kann auch die Inbetriebnahme des Arbeitsregisters 4 verwenden, um die Anwendung der Gegenüberstellung auf einen Teil der logischen Bezugsgröße zu begrenzen, die in dem Speicher 1 enthalten ist. Dies ist insbesondere bei dem in Fig. 3 gezeigten Operator der Fall. Ein Anfangszustand Null bzw. unwahr in einem der Flip-Flops des Arbeitsregisters 4 ist der Sperrung der Gegenüberstellung mit der entsprechenden logischen Bezugsgröße äquivalent.
Das Zählregister S wird in dem Zustand in Betrieb genommen, der die erste Speicherstelle des Speichers 1 adressiert. Diese Inbetriebnahme muß am Beginn jeder empfangenen logischen Größe durchgeführt werden und wird durch eine Zählung im Falle von Größen fester Form oder durch die Erfassung besonderer Zeichen im Falle von Größen veränderbarer Form gesteuert. Diese Tests werden von einem besonderen, in Fig. 1 bei 19 gezeigten Steuerorgan durchgeführt, das die Informations- und Zeitsignale der Quelle 7 über die Leitungen 8 und 15 empfängt und über die Leitungen 20 und 21 Signale zur Inbetriebnahme der Register 4 und 5 liefert. Dieses Steuerorgan empfängt auch von dem Zähiregister 5 ein Zykiusendesignai über die Leitung 22 und liefert ein Operationsendesignal zu dem Nutz- und Entscheidungsorgan 13 über die Leitung 23, um die Abnahme des Ergebnisses, das nun in dem Arbeitsregister 4 enthalten ist, und seine Auswertung zu veranlassen. Wie F i g. 1 zeigt, kann die Ausgangsleitung 11 auch zu dem Steuerorgan 19 verlaufen, um es ihm zu ermöglichen, das Ergebnis einer Gegenüberstellung für die Einleitung der folgenden Gegenüberstellung zu berücksichtigen.
Bei einer abgewandelten, in Fig. 7 gezeigten Ausführungsform werden die bei der ersten Ausfuhrungsform von dem Operator 3 und dem Arbeitsregister 4 durchgeführten Funktionen von einem einzigen Operator 15 durchgeführt. Dieser hat nur einen Dateneingang, die Leitung 10, die Ausgangsleitung 11 und zwei Steuerleitungen 15 und 20, wobei alle diese Leitungen den gleichen Zweck wie bei der ersten Ausführungsform haben. Diese Abwandlung führt oft zu wirtschaftlicheren Kreisen als diejenige der Fig. 1, und sie ist insbesondere für alle die Fälle geeignet, bei denen die zweite Funktion eine arithmetische Funktion oder eine Zählfunktion ist. Diese Art der Operation verwendet man im allgemeinen bei den komplexen Gegenüberstellungsinformationen, wie den Auswertungen z. B. des Hamming-Abstandes.
F i g. 8 zeigt ein Ausführungsbeispiel entsprechend dieser Abwandlung eines einfachen Vergleichs gleich/verschieden in der Betriebsart Bit pro Bit Der gezeigte Kreis hat eine Stufe des Operators 2, die aus einem EXKLU-SIV-ODER-Glied 26 besteht, und eine Stufe des Operators 25, die aus drei NAND-Gliedern 27 bis 29 besteht.
Die NAND-Glieder 28 und 29 bilden ein Setz-Rücksetz-Flip-Flop, das NAND-Glied 27 ist mit dem Rücksetzeingang dieses Flip-Flops verbunden.
Bei der Inbetriebnahme setzt das von dem Steueroperator 19 über die Leitung 20 kommende Signal die FMp-Flops des Operators 25. Jede von der Quelle 7 über die Leitung 8 kommende Informationseinheit wird dann parallel mit denjenigen, die über die Leitung 6 von dem Speicher 1 kommen, mittels des EXKLUSIV-ODER-Glieds 26 verglichen. Im Falle einer Nichtübereinstimmung zwischen dem Signal 8 und den Signalen 6 ermöslicht es das entsprechende Ausgangssignal des Elements 26, das über die Leitung 10 zu dem NAND-Glied 27 übertragen wird, dem Steuersignal 15 das Setz-Rücksetz-Flip-Flop zurückzusetzen. Somit zeigt am Ende der Gegenüberstellungsoperation ein Flip-Flop, das gesetzt geblieben ist, an, daß keine Übereinstimmung zwisehen der entsprechenden logischen Bezugsgröße und der logischen Größe besteht, die von der Quelle empfangen wurde, d, h., daß sie gleich sind. Der Inhalt der Setz-Rücksetz-Flip-Flops des Operators 25, der über die Leitung 11 zugänglich ist, ergibt daher ein Identifizierungskriterium der empfangenen logischen Größe.
Ordnet man eine Gruppe von acht Kreisen dieser Art einem einzigen Lese:>pel"'-e λ:Η acht Speicherstellen von acht Bits und einem vereinfachten Steuerkreis zu, kann man in einfacher Weise einen Zsichenidentifizierungskreis bilden, der für die Identifizierung der SpezialZeichen und insbesondere des Zwischenraumzeichens derTogischen Größen veränderbarer Form verwendbar ist. Das so festgelegte Organ kann daher als Steuerorgan Für die Operatoren eines Gegenüberstellungssystems dienen, das für die Verarbeitung von logischen Größen veränderbarer Form bestimmt ist, d. h. zur Bildung des wesentlichen Teils des bei 19 in F i g. 1 gezeigten Organs. Der zuvor angegebene Speicher für dieses Organ wurde nur beispielsweise erwähnt, und die Anzahl der Speicherstellen und ihre Form kann sich entsprechend der Form und der Anzahl der Spezialzeichen ändern. Ebenso kann ein Lese-Schreib-Speicher verwendet werden, wenn man Daten verarbeiten muß, die in verschiedenen Codes dargestellt sind oder zwei Sätze verschiedener Spezialzeichen enthalten.
Entsprechend einer zweiten Abwandlung, die in Fig. 9 gezeigt ist, werden die Funktionen der Operatoren 2 und 3 durch einen einzigen Operator durchgeführt, der über die Leitungen 6,8 und 11 Daten iinpfängt und das Ergebnis zu dem Register4 über die Leitung 12 überträgt. Fig. 10 zeigt ein Ausführungsbeispie! des Operators 30 für den Fall eines binären Vergleichs der Art größer, kleiner, größer oder gleich oder kleiner odcr gleich. Er kann auf Daten beliebiger Art, z. B. auf numerische Daten bei Verarbeitung Bit pro Bit und geringen Wertigkeiten am Anfang angewandt werden. Für nichtnumerische Daten kann dies einen Sortieroperator bilden. Der Operator 30 weist in diesem Falle einen Inverter 31 und acht logische dreifache UN D-ODER-Glieder 31.1 bis 32.8 auf, von denen jedes sequentiell den Übertrag der binären Subtraktion auswertet, die zwischen der empfangenen logischen Größe und einer der logischen Bezugsgrößen durchgeführt wird. Die Wahl zwischen den vier möglichen Tests wird von dem Anfangsinhalt des Arbeitsregisters 4 und durch die Interpretation des enthaltenen Endergebnisses des gleichen Registers bestimmt. Diese Spezifizierung kann für die acht logischen Bezugsgrößen verschieden sein, was es ermöglicht, gleichzeitig Vergleiche verschiedener Arten durchzuführen und so direkt Bereichs- bzw. Grenzsuchvorgänge durchzuführen.
Entsprechend einer dritten, in Fig. 11 gezeigten Abwandlung werden die Funktionen der beiden Operatoren 2 und 3 und des Arbeitsregisters 4 in einem einzigen Operator 35 kombiniert.
Selbstverständlich sind zahlreiche andere Abwandlungen möglich. Ebenso wurden alle Beispiele für eine Gruppe von acht logischen Bezugsgrößen beschrieben, von denen jede maximal 16 Zeichen oder 128 Bits hat.
Entsprechend einer weiteren Abwandlung, die in Fig. 12 gezeigt ist, hat der Gegenüberstellungskreis mehrere Speichermodule 1 a-n, die die verschiedenen Bezugsdatengruppen enthalten. Alle diese Module werden von dem Zählregister 5 über die Leitung 14 parallel adressiert. Die Wahl des Moduls, der zu einem bestimmten Zeitpunkt verwendet wird, wird von dem Steuerorgan 19 über die Leitung 40 festgelegt.
Entsprechend einer weiteren Abwandlung, die in Fig. 13 gezeigt ist, sind die verschiedenen Bezugsdatengruppen in verschiedenen Teilen eines gemeinsamen Speichers 41 enthalten. Die Adressierung dieses Speichers wird hierbei durch die· Kombination des Inhalis des Zählregisters 5 über die Leitung 14 und eines Adressenkomplements durchgeführt, das von dem Steuerorgan 19 über die Leitung 42 geliefert wird.
Entsprechend einer weiteren Abwandlung besteht der bzw. bestehen die Operatoren 2,3,25,30 oder 35 aus mehreren verschiedenen Operatoren, die die gleichen Daten empfangen und deren Aktivität von dem Steuerorgan 19 gesteuert wird.
Z. B. wird, wie Fig. 14 zeigt, ein Operator 2 durch eine Gruppe von unabhängigen Operatoren l.a, l.b bis l.n ersetzt, die ebenso viele verschiedene erste Funktionen durchführen. Die Operatoren empfangen ihre Eingangsdaten parallel von dem Speicher 1 und der Quelle 7 über die Leitungen 6 und 8, und ihre Ausgänge sind zu einem einzigen Ausgang 10 umgruppiert. Die Wahl des Operators 2, der zu einem bestimmten Zeitpunkt aktiv ist, wird von dem Steuerorgan 19 über die Leitung 43 gesteuert.
Entsprechend einer weiteren Abwandlung werden die Operatoren 2 und 3 oder die kombinierten Operatoren 25 oder 30 mittels logischen Mehrrunktionskreisen wie die integrierten TTL-Kreise des Typs 74181 gebildet. Diese Anordnung ermöglicht es, in kompakter Weise ein System zu verwirklichen, das Gegenüberstellungen verschiedener Arten durchführen kann.
Entsprechend einer zweiten, in F i g. 15 gezeigten Ausführungsform ist die Bezugsdatentabelle in einem Speicher 50 enthalten. Dieser Speicher wird von einer Kombination des Ausgangs 14 des Zählregisters 5 und des Informationselements, das von der Quelle 7 über die Leitung 8 empfangen wird, adressiert.
Diese Kombination wählt eine Speicherstelle des Speichers 50 mittels des Decodierkreises 50 a, die das Ergebnis des Vergleichs entsprechend der ersten Funktion des Informationselements enthält, das zusammen mit den Informationselementen der gleichen Ordnung der logischen Bezugsgrößen empfangen wird.
Der Inhalt dieser Speicherstelle, der von dem Speicher 50 über die Leitung 51 kommt, wird entsprechend der zweiten Funktion von dem Operator 3 mit dem Inhalt des Arbeitsregisters 4 kombiniert, der auf der Leitung 11 verfügbar ist. Das Ergebnis dieser Kombination wird in das Arbeitsregister 4 über die Leitung 12 eingeschrieben
und das Steuersignal der Quelle 7 über die Leitung 15. Das gleiche Signal schaltet gleichzeitig das Zählregister 5 weiter, um die Verarbeitung des folgenden Informationselements vorzubereiten.
' Die Inbetriebnahme des Speichers 50 wird mittels des Operators 52 durchgeführt, der es ermöglicht, entspre-
: chend der ersten Funktion die aufeinanderfolgenden Informationselemente der logischen Bezugsgrößen, die : auf der Leitung 54 angeliefert werden, mit den verschiedenen Formen zu vergleichen, die von dem Hilfszählregister 55 auf der Leitung 56 angeliefert werden. Die Leitung 57 ermöglicht es, das Zählregister 5 um einen Schritt bei jedem Zyklus des Zählregisters 55 weiterzuschalten. Die Adressierung des Speichers 50 wird über die Leitungen 14 und 56 durchgeführt. Schließlich ermöglicht es eine Leitung 58, den Speicher 50 z. B. im Falle einer Wiederholungsoperation mittels bereits vorbereiteter Daten direkt zu laden.
Diese Ausführungsform kann die gleichen Abwandlungen wie die anhand der ersten erläuterten, mit Ausnähme der in den Fig. 9 und 11 gezeigten, aufweisen.
Das Nutz- und Entscheidungsorgan 13 kann mehrere Operationen entsprechend der Art des gesuchten Ergebnisses aufweisen. Ein erster einfacher Operator ist ein Pufferspeicher, wo die aufeinanderfolgenden Ergebnisse der Gegenüberstellung an den logischen Größen einer Folge oder einer Reihe von Folgen gespeichert werden. Diese Speicherung wird von dem Organ 9 über die Leitung 23 (Fig. 1) durchgeführt.
> Ein zweiter wichtiger Operator ist ein Rekapitulationsregister. Wie Fi g. 16 zeigt, handelt es sich dabei um ein
Register, das acht Flip-Flops 100.1 bis 100.8 aufweist und das einem logischen ODER-Glied zugeordnet ist, das aus acht Elementen 101.1 bis 101.8 gebildet ist.
Diesem Rekapitulationsoperator kann eine bestimmte Anzahl von Entscheidungsoperatoren zugeordnet werj den, die ein binäres Ergebnis liefern und somit geeignet sind, Steuersignale zu liefern. Der erste ist ein ODER-, Glied mit acht Eingängen 102, das es ermöglicht, zu entscheiden, ob wenigstens eines der Ergebnisse erhalten wurde. Der zweite 103 ist ein UND-Glied des gleichen Typs, das über seinen Ausgang anzeigt, ob alle Ergebnisse erhalten wurden, z. B. ob alle logischen Bezugsgrößen erkannt wurden.
Der dritte besteht aus einem Komparator 104 und einem Register 105. Er ermöglicht es, die Rekapitulation der in dem Register 100 empfangenen Ergebnisse mit einer bestimmten, in dem Register 105 enthaltenen Form zu ; vergleichen.
Schließlich können die Ausgänge 11 und 106 des Arbeitsregisters 4 bzw. des Rekapitulationsregisters 100 direkt oder mittels eines Zwischenregisters mit dem Eingang eines weiteren Gegenüberstellungssystems verbunden werden, das es ermöglicht, die einzelnen bzw. rekapitulierten Gegenüberstellungsergebnisse mit einer Gruppe von Ergebnisarten zu vergleichen, die in einem zweiten, dem Speicher 1 entsprechenden Speicher enthalten sind.
Es ist auch möglich, dieses System auf die Identifizierung logischer Größen veränderbarer Form z. B. der Art derjenigen, die als Begrenzer für die Folgen oder Reihen von Folgen dienen. Das System hat in diesem Falle vor- ; zugsweise drei Gegenüberstellungsuntersysteme, wie sie in Fig. 17 gezeigt sind, von denen das erste 110 zur
: Identifizierung der SpezialZeichen, das zweite 111 zur Identifizierung logischer Begrenzergrößen und das dritte 112 zur Hauptgegenüberstellung dient.
Die gegenüberzustellenden Daten, die von der Quelle 7 kommen, werden parallel über die drei Untersysteme empfangen, die somit gleichzeitig synchron mit der Datenausgabe der Quelle, jedoch mit einem verschiedenen Zyklus arbeiten. Ein Pufferspeicher 113 ermöglicht die Zwischenspeicherung einer Folge logischer Größen.
Die Inbetriebnahme jedes dieser Untersysteme wird hierbei von einem Verarbeitungsorgan 114 entsprechend den Ergebnissen gesteuert, die von dem oder den vorherigen Untersystemen erhalten werden.
Die Ergebnisse der Hauptgegenüberstellung werden zu dem Verarbeitungsorgan 114 von den Untersystemen 112 über die Leitung 115 übertragen, begleitet von Identifizierungsparametern, die insbesondere von dem Untersystem 111 kommen, und evtl. von Folgen, die in dem Pufferspeicher 113 gespeichert sind.
Fig. 18 zeigt die logische Organisation eines Speichers, der für die Verwirklichung der Gegenüberstellungssysteme geeignet ist. Dieser Speicher ist aus h gleichen Modulen 200.1 bis 220.Λ gebildet, von denen jeder η Speicherstellen mit ρ Bits umfaßt.
Die Adressen- und Dateneingänge dieser Module sind jeweils mit parallelen Leitungen 201 und 202 verbunden. Die Datenausgänge dieser Module sind parallele unabhängige Leitungen 203.1 bis 203.A. In bestimmten Systemen umfaßt der Speicher auch Multiplexer 204.1 bis 204.Λ, deren Eingänge mit den Ausgangsleitungen der Module 203.1 bis 203.Λ verbunden sind und deren Ausgänge die parallele Leitung 105 bilden.
Bei der Inbetriebnahme des Gegenüberstellungssystems werden die Bezugsgrößen aufeinanderfolgend in den Speichermodulen 200.1 bis 200.Λ zu einer Größe pro Modul gespeichert. Die Informationseiemente der ρ , Bits, die die logischen Bezugsgrößen bilden, werden aufeinanderfolgend auf die parallele Leitung 202 gegeben, und jedes wird in die Speicherstelle eingegeben, die durch die Adresse bezeichnet ist, die gleichzeitig auf die parallele Leitung 201 gegeben wird. Die Schreiboperation wird von einem Signal gesteuert, das auf die Leitung 206 gegeben wird, die zu dem Speichermodul 200 führt, und das während des Schreibvorganges der Bezugsgröße entspricht.
Die h Informationselemente aus ρ Bits, die gleichzeitig an den parallelen Ausgängen 203.1 bis Λ erscheinen, können direkt für die Durchführung einer Gegenüberstellungsoperation verwendet werden, die an den Informationselementen der ρ Bits durchgeführt wird, die von der Quelle 7 kommen, z. B. Zeichen, wie sie im vorstehenden beschrieben und anhand der Fig. 1 und 2 erläutert wurden. Diese Ausgänge können auch für die Übertragung eines Teils des Inhalts eines oder mehrerer Module in all den Fällen verwendet werden, in denen er als Ergebnis verwendet wird.
Die Multiplexer 203.1 bis h ermöglichen es, an der parallelen Leitung 205 die Folge in der geeigneten Reihenfolge der Informationseinheiten oder Bits zu erhalten, die die logischen Bezugsgrößen bilden, und welche Folge für die Durchführung Bit pro Bit einer Gegenüberstellungsoperation notwendig ist In diesem Falle bildet die Gruppe paralleler Adressen- und Steuerleitungen 201 bzw. 208 die Leitung 14 der Fig. 1,7,9,11,12 und 13, die
den Ausgang des Zählregisters S bildet, wobei die Steuerleitung 208 der Multiplexer 204 den Ausgang der Stufen geringer Wertigkeit des Registers 5 bildet.
Eine derartige logische Organisation des Speichers, der die Tabelle der logischen Bezugsgrößen enthält, ermöglicht insbesondere ihre rasche Änderung aufgrund irgendeiner Quelle, die in der Lage ist, diese Größen aufeinanderfolgend Zeichen pro Zeichen oder allgemeiner in Elementen vonp Bits zu liefern. Dies ist insbesondere bei einem System wichtig, wie es schomatisch in Fi g. 17 gezeigt ist, da die Begrenzerbezugsgrößen, die in dem Speicher des Untersystems 111 enthalten sind, im allgemeinen von der Quelle 7 in einer Abgabemenge abgegeben werden, die derjenigen der gegenüberzustellenden Daten ähnlich ist.
Diese logische Organisation kann selbstverständlich entsprechend den von den verfügbaren Bauelementen abhängigen Arten gebildet werden. Jeder Speichermodul 200 kann z. B. aus mehreren ähnlichen parallel adressierten und gesteuerten Kreisen bestehen. Ein aus zwei integrierten Speicherkreisen mit 16X4 Bits vom TTL-Typ 7489 ermöglicht es, logische Größen zu speichern, die maximal 16 Zeichen haben. Die Ladung dieses Moduls kann entweder pro Oktalzahl oder pro Elemente von vier Bits erfolgen. Das Lesen des Inhalts eines derartigen Moduls kann symmetrisch pro Oktalzahl oder pro Element von vier Bits oder auch Bit pro Bit mittels eines Multiplexers mit vier bis acht Eingängen oder durch jede Kombination dieser beiden Arten erfolgen. Dagegen erfordert jede Ausfuhrungsform, die ein Bauteil mit größerer Kapazität verwendet, um mehrere Speichermodule wie 200.1 bis 200.Λ zu enthalten, eine komplexere Ausführung der Schreib- und/oder Leseoperationen entsprechend der gewählten praktischen Organisation. Die Anordnung von Informationselementen in der gleichen Speicherstelle, die zu mehreren logischen ßezugsgrößen gehören, erfordert das vorherige Lesen der bereits gespeicherten Elemente und damit deren Zwischenspeicherung in einem Register.
Die Verteilung mehrerer verschiedener Adressenspeichersteilen in Informationselementen dergleichen Ordnung, die zu verschiedenen logischen Bezugsgrößen gehören, erfordert das aufeinanderfolgende Lesen dieser Elemente, die zur Durchführung eines Zyklus der Gegenüberstellungsoperation notwendig sind und folglich eine Vervielfachung der Operationsdurchführungszeit und den gleichen Faktor.
Dennoch kann eine derartige Organisation durch die Wirtschaftlichke t vollkommen gerechtfertigt werden, die durch die Verwendung eines einzigen oder einiger integrierter Kreise mit großer Kapazität in all den Fällen möglich wird, wo die Abgabemenge der Informationsquelle es ermöglicht.
Das in Fi g. 19 gezeigte System hat drei Tabellenspeicher, von denen der Speicher 7X5300 die SpezialZeichen, TELS301 die logischen Spezialgrößen und TELR 302 die logischen Bezugsgrößen enthält, und außerdem einen Speicher TER 303, der die Ergebnisarten enthält.
Diese Speicher bestehen, wie F i g. 18 zeigt, aus gleichen Modulen 200.1 bis 200. A und ebenso vielen Multiplexern 204.1 bis 204.Λ.
Der Speicher TER 303 kann ebenfalls aus einer bestimmten Anzahl von parallel gesteuerten Umlaufregistern bestehen.
Die Tabellenspeicher 7"CS300, TELS3Q1 und TELR302 werden von einem gemeinsamen Adressierorgan A 304 adressiert, das aus zwei Zählregistern 305 und 306 besteht, die in Kaskade geschaltet sind, wobei das Zählregister 306 ein nichtzyklischer Typ ist, d. h., daß es nur unter der Wirkung der Nullrückstellsteuerung 327 in seinen Anfangszustand zurückkehrt.
Der Ausgang 307 des Zählregisters 305 entspricht den niedrigen Stellen des Adressierorgans A 304 und ist der Gesamtheit der drei Tabellenspeicher 300 bis 302 gemeinsam. Der Ausgang 308 des Zählregisters 306, der dei maximalen Zeichenanzahl der logischen Spezial- und Bezugsgrößen entspricht, steuert allein die Tabellenspei-,hv: j £15301 und TELR 302.
Eine parallele Leitung 309 ermöglicht es, diese Tabellenspeicher z. B. Zeichen pro Zeichen zu füllen.
Eine Quelle 310 liefert seriell Daten über die Leitung 311 und ein Zeitbezugssignal über die Leitung 312. Der Vergleich zwischen diesen Daten und den Ausgängen 313, 314 und 315 der Tabellenspeicher TCS300, 7ESZ. 301 und TELR 302 wird durch drei Operatoren 316,317 und 318 durchgeführt. Die beiden ersten 316 und 317 entsprechen der Funktion gleich - verschieden und können z. B. aus einer bestimmten Anzahl von Kreisen, wie sie in Fig. 8 gezeigt sind oder jedem logisch äquivalenten Kreis bestehen, der Steuerungen pro Zustandsänderungen verwendet. Der Operator 318 kann eine gleiche Struktur haben oder aus Kreisen bestehen, wie sie in den F ig. 3,5,6 und 10 gezeigt sind, oder auch, wie zuvor erwähnt wurde, aus integrierten Kreisen mit Mehrfachfunktionen bestehen, die eine große Flexibilität der Gegenüberstellungsfunktionen zulassen.
Der Ausgang des Operators 318 wird von dem Operator 319 aufgenommen, der die Kombination der Elementargegenüberstellungsergebnisse entsprechend der dritten logischen Funktion durchführt, wie sie zuvor beschrieben und beispielsweise bei 100 und 101 in Fig. 16 gezeigt ist.
Ein Ausgang 320 des Operators 319 ist mit dem Operator 321 verbunden, dessen Zweck es ist, den Endinhali des Operators 319 dem Inhalt des Tabellerspeichers TER 303 gegenüberzustellen, der an der Leitung 322 zui Verfügung steht. Die Struktur des Operators 321 entspricht derjenigen des Operators 318.
Der Ausgang 325 des Gegenüberstellungsoperators 316 ist mit einem logischen Inbetriebnahmeoperator 32i
verbunden, der ausgehend von den Signalen der Leitung 325 ein Signal auf der Leitung 324 zur Steuerung des Entscheidungsorgans 335, ein Signal auf der Leitung 327 zur Nullrückstellung des Adressierorgans A 304, ein Signal auf der Leitung 328 zur Nullrückstellung der Arbeitsregister der Operatoren 316 bis 318 und ein Signal aul
der Leitung 329 zur Übertragung des Inhalts des Operators 317 über die Ausgangsleitung 330 erzeugt. Diese
Übertragung wird indem Register 331 durchgeführt, dessen Ausgänge 332,333 und 334 jeweils die Übertragung des Ergebnisses des Operators 316 zu dem Operator 319, die Inbetriebnahme dieses Operators 319 und des Operators 321 und bestimmte Funktionen des Entscheidungsorgans 335 steuern.
Dieses Entscheidungsorgan 335 empfängt über die Leitung 323 den Endinhall des Operators 319 und hat, wie Fig. 16 zeigt, eine bestimmte Anzahl von Kreisen, die andern Gegenübe i Stellungsergebnis, das in dem Operator 319 enthalten ist, einfache logische Tests der Art: Gesamtergebnis, Hauptteilergebnis, Ergebnis in einei
kesiimmten Reihenfolge usw. durchführen. Die Gesamtheit der Ergebnisse dieser Tests kann in dem Pufferspeicher 336 über die Leitung 337 und die Steuerleitung 338 gespeichert werden.
Das Entscheidungsorgan 335 liefert auch Steuer-, Inbetriebnahme- und Schreibsignale auf der Leitung 339 zu dem Pufferspeicher 340, der über die Leitungen 311 und 312 die Daten und den Zeitbezug empfängt, die von der Datenquelle 310 ausgehen. . ..
Der Pufferspeicher 336 ist auch über die Leitung 341 mit dem Ausgang des Operators 321 zum Vergleich mit den Ergebnisarten verbunden.
Schließlich ermöglicht es der Ausgang 342 dem Nutzorgan, den Inhalt des Pufferspeichers 336, d. h. die Ergebnisse der Tests und der Vergleiche mit den Testarten abzufragen. Ebenso ermöglicht es der Ausgang 343 des Pufferspeichers 340, die Datenfolgen, die darin gespeichert sind, auszuwerten.
Die vorherige Beschreibung entspricht im wesentlichen einem Bit pro Bit arbeitenden Minimalsystem.
Das gleiche Schema zeigt auch die Organisation eines Systems, das z. B. Oktalzahl pro Oktalzahl arbeitet. In diesem Falle haben die Tabellenspeicher 300 bis 302 nicht mehr Multiplexer als die in F i g. 18 mit 204.1 bis 204. A bezeichneten, und die Operatoren 316 bis 318 haben am Anfang einen ersten parallelen Operator, wie er in
Fig. 2 gezeigt ist. ... . ·-
Außerdem können der Inbetriebnahme-Operator 326 und das Register eine größere Anzahl von Ausgangen haben, die Funktionen entsprechen, die von den in Fig. 19 gezeigten verschieden sind, die zuvor aufgeführt
wurden. . ..,.,_»
Dies setzt eine entsprechende Kapazität der Tabellenspeicher 300 und 301 voraus. Bestimmte zusatzliche Ausgänge des Organs 326 können alle oder einen Teil derjenigen ersetzen, die für das Register 331 vorgesehen sind, oder auch mit diesen durch ein logisches ODER-Glied kombiniert werden. Dieser Ersatz bzw. allgemeiner die Verteilung der Steuersignale, die von den Operatoren 326 und 331 kommen, kann von dem Nutzorgan derart gesteuert werden, daß die Inbetriebnahme- und Verkettungslogik des Gegenüberstellungssystems der besonderen Struktur der Datenbank und den Erfordernissen eines Benutzers angepaßt wird.
Ebenso können zusätzliche Ausgänge des Entscheidungsorgans 335 Unterbrechungs-, Anforderungs- oder Zustandssignale zu einem Nutzorgan z. B. vom Typ eines Rechners und Steuersignale zu der Datenquelle im Hinblick auf ihre normale sequentielle Funktion oder eine besondere Funktion wie z. B. ein Schreibsteuersignal zu der Verbindungselektronik einer Magnetplatte für das Erkennen des charakteristischen Kennbegriffes einer besonderen Aufzeichnung liefern.
Bei dem zuvor beschriebenen Ausfuhrungsbeispiel ist es, um im Falle eines Fehlers Wiederaufnahmen durchführen zu können, notwendig, den Pufferspeicher 340 in Form eines Direktzugriffsspeichers auszubilden, begleitet von einem Adressenregister, das mit einer Verdoppelung mit gekreuzten Leitungen ausgestattet ist
Wie Fig 20 zeigt, hat der Pufferspeicher340 dabei einen Lese-Schreib-Speichermodul 350, ein Adressenregister 351 und ein Verdoppelungsregister 352. Die jeweiligen Ausgänge 353 und 354 dieser beiden Register sind mit einem Eingang des anderen Registers verbunden, so daß die reziproke Kopie ihres Inhalts in nicht zerstörender Form unter der Wirkung der Steuerungen 355 und 356 möglich ist. Außerdem hat das Adressenregister 351 eine Inbetriebnahmesteuerung 357 und eine Weiterschaltsteuerung 358. Bei normaler Funktion ermöglicht die Weiterschaltsteuerung 358 eine sequentielle Speicherung in dem Speichermodul 350 von Daten, die über die Leitung 360 ankommen, oder ihr sequentielles Lesen über die Leitung 361, entsprechend dem Zustand der Lese-Schreib-Steuerung 359.
Der Ergebnispufferspeicher 336 kann ebenfalls eine ähnliche Struktur mit Ausnahme der Eingangsleitung 360 haben, die nun mit einem Multiplexer mit zwei Eingängen 337 und 341 versehen ist.
Beim Lesen einer Datenbank bzw. des Nachrichtenempfangs ermöglicht es die Steuerung 355, in dem Verdoppelungsregister 352 eine Wiederaufnahmemarkierung am Ende jeder Speicherung oder Nachricht zu speichern, die richtig gelesen bzw. empfangen wurde, wobei gleichzeitig die vorherige Wiederaufnahmemarkierung zer-
Die nächste Speicherung oder Nachricht, die von der Quelle über die Leitung 311 empfangen wird, wird in den Speichermodul 350 über die Leitung 360, die nun mit der Leitung 311 verbunden ist, mit Weiterschaltung der Adressen über die Leitung 358, die nun mit der Leitung 312 verbunden ist, geschrieben.
Im Fülle eines Fehlers wird die Durchführung der Wiederaufnahme durch die Wirkung der Steuerung 356 so durchgeführt, die in den beiden Pufferspeichern 336 und 340 die Kopie des Verdoppelungsregisters 352 in dem Adressenregister 351 hervorruft.
Wenn kein Fehler auftritt, ersetzt die Steuerung 355 die Wiederaufnahmemarkierung am Ende der Daten, die gerade in den beiden Pufferspeichern 336 und 340 gespeichert wurden.
Eine derartige Wiederaufnahme kann zu einem beliebigen Zeitpunkt und beliebig oft entsprechend üblichen Verfahren durchgeführt werden, die bei der Steuerung von Karteien und Datenübertragungen angewandt werden.
Diese Anordnung der Pufferspeicher hat auch den Vorteil, daß die Unterbrechung der Gegenüberstellung im Falle des Überlaufens eines der Pufferspeicher möglich ist, um zu dem Nutzorgan den Teil ihres Inhaltes zu übertragen der Speicherungen oder Nachrichten entspricht, die vollständig gelesen bzw. empfangen und verarbeitet wurden und der von der Markierung begrenzt wird, die in dem Pufferregister 352 gespeichert ist, wobei dann die Wiederaufnahme der Verarbeitung mit Wiederholung der teilweise verarbeiteten Speicherung bzw.
Die'in d'TpufTerspeichern 350 gespeicherte Information wird dabei von dem Nutzorgan über die Leitungen 361 (Fig. 20), die in Fig. 19 mit 342-343 bezeichnet sind, und die Steuerleitungen 358 (Fig. 20) wiederge-von-
neDiese Anordnung ermöglicht es auch, in einfacher und automatischer Weise Änderungen des Inhalts einer Speicherung einer Datenbank durchzuführen. Während des Lesens dieser Speicherung wird die Lage des Artikels oder des Unterartikels, der geändert werden soll, von den Gegenüberstellungsvornchtungen angezeigt und
in dem Verdoppelungsregister 352 unter der Wirkung der Steuerung 355, die nun von dem Entscheidungsorgan 335 ausgeht, bei der Identifizierung eines SpezialZeichens oder einer besonderen logischen Spezialgröße gespeichert Das Lesen wird bis zum Ende der Speicherung durchgeführt, wobei diese insgesamt in dem Speichermodul 350 des Pufferspeichers 340 mittels der Leitungen 311 und 360 gespeichert wird. Die Kopie der in dem Ver-S doppelungsregister 352 enthaltenen Markierung in dem Adressenregister 351 durch die Steuerung 356 ermöglicht es dabei, die Änderung an der so markierten Folge durchzuführen. Das Adressenregister 351 wird dann durch die Wirkung der Steuerung 357 wieder aktiviert und der geänderte Inhalt des Speichermoduls 350 wird wieder auf dem Datenbankträger z. B. an der gleichen Stelle gespeichert, wenn das Ausmaß der Änderung es zuläßt Dieses Wiedereinschreiben wird durch sequentielles Lesen des Speichers 350 unter der Wirkung der Steue-10 rangen 358 und 359 durchgeführt, wobei die Leitung 361 dabei mit dem Dateneingang des Speicherorgans der Datenbank, z. B. einer Magnetplatte, verbunden ist
Im Falle einer einfachen Änderung, z. B. einer Tagesrückstellung einer Zählung oder jedes anderen numerischen Parameters, können die Elemente der Änderungen, der Operations- und Datencode in einer speziellen Zusatztabelle zu der Vorrichtung enthalten sein. Die Wahl eines dieser Elemente wird dabei direkt von dem is Ausgang 323 des Operators 319 gesteuert, der den Artikel identifiziert, der unter all denjenigen markiert ist, die durch gleichzeitige Gegenüberstellung gesucht werden können, und dessen Deskriptoren in der Tabelle 302 enthalten sind.
Diese Vorrichtung ermöglicht es auch, eine systematische Speicherang logischer Größen durchzuführen, die der Gegenüberstellung unterworfen sind, und zwar derart, daß das Ergebnis dieser Gegenüberstellung ihre 20 effektive Übertragung zu dem Nutzorgan bedingt Die in dem Verdoppelungsregister 352 enthaltene Markierung bestimmt dabei den Beginn einer solchen Folge, und ihre Kopie durch die Steuerung 356 in dem Adressenregister 351 unter der Steuerung des Entscheidungsorgans 335 ermöglicht die erneute Einschreibung einer späteren Folge an die gleiche Stelle und Löschung der nicht angeforderten Folge.
Dieses Verfahren kann auf Reihen von Folgen mit gesamter oder teilweiser Speicherung angewandt werden, 25 wobei sich die Entscheidung aufgrund einer Kombination von Gegenüberstellungsergebnissen auf alle oder einen Teil der Folgen der Reihe erstreckt
Ein derartiges Verfahren erfordert im allgemeinen die Speicherang mehrerer Markierungen für die Markiert rung ebenso vieler logischer Größen oder Folgen logischer Größen innerhalb der gleichen Reihe, bevor eine P Verarbeitung oder Entscheidung stattfinden kann. Dafür ist das Verdoppelungsregister 352 durch eine Eingäbest= 30 struktur (im Englischen »first in first out« und abgekürzt FIFO) oder eine Stapelstruktur (im Englischen »last in H first out« und abgekürzt LIFO) ersetzt, die die Speicherang der Markierungen mit Wiederaufnahme und Verwerp tung in der gleichen oder umgekehrten Reihenfolge wie diejenige ihrer Erzeugung ermöglicht.
J^l1 Ebenso verwendet man, wenn man gleichzeitig mehrere dieser Wiederaufnahmeverfahren zur Änderung if und/oder Wahl von gespeicherten Folgen a priori ausnutzen will, mehrere Verdoppelungsregister wie 352, von y.l 35 denen jedes unabhängig von den Kreisen zur Erfassung von entsprechenden Ereignissen gesteuert wird und die If unabhängig in jedem Adressenregister 351 wieder kopiert werden können, um im Falle eines Fehlers die i| Wiederaufnahme, die Änderung oder die Entscheidung der Nicht-Verwendung betreffend die letzte Speichels rang oder Nachricht durchzuführen.
|; Allgemeiner kann man in den Pufferspeichern 336 und/oder 340 das Verdoppelungsregister 352 durch eine
si ·; 40 FIFO- und LIFO-Registerkombination ersetzen, die eine beliebige Kombination von Verfahren ermöglicht, wie Il sie zuvor beschrieben wurden.
i(\ Schließlich ermöglicht eine Verdoppelung des Operationsregisters 319 eine Wiederaufnahme im Falle eines
ώ Fehlers oder eines Überlaufs für die Folgen oder Reihen von Folgen, die sich über mehrere Speicherangen oder
<ty mehrere Nachrichten erstrecken. Eine analoge Verarbeitung des Adressierorgans 304, der Arbeitsregister der
i κ 45 Operatoren 317 und 318 und des Registers 331 ermöglicht es, Wiederaufnahmen für die Datenquellen durchzu-
ii:: führen, wobei eine logische Einheit sich auf zwei Speicherungen bzw. Nachrichten befinden kann, so daß die
i i logischen und physikalischen Strukturen von der Datenbank völlig unabhängig werden, jedoch eine unmittel-
;,; bare Verarbeitung gelesener bzw. empfangener Daten unmittelbar möglich ist.
50 Hierzu 8 Blatt Zeichnungen
18

Claims (12)

ι Patentansprüche:
1. Vorrichtung zum Vergleich logischer Größen mit einer Gruppe logischer Bezugsgrößen, enthaltend einen Speicher zur Speicherung der logischen Bezugsgrößen in einer zweidimensionalen Tabelle sowie Vergleichselemente zum Vergleich der logischen Größen mit den logischen Bezugsgrößen, dadurchgekennzeichnet, daß
a) der Speicher (1) in jeder Spalte eine logische Bezugsgröße enthält,
b) ein Zählregister (S) vorgesehen ist, das den Speicher adressiert,
c) Vergleichselemente (2) vorgesehen sind, die die von einer Datenquelle (7) in kontinuierlicher Folge gelieferten Informationselemente der zu vergleichenden logischen Größe derart mit den logischen Bezugsgrößen vergleichen, daß jeweils das Informationselement der Ordnung η gleichzeitig mit den Elementen gleicher Ordnung der logischen Bezugsgrößen verglichen wird,
d) ein an die Vergleichselemente (2) angeschlossener Operator (3,4) vorgesehen ist, der die Vergleichsergebnisse der Vergleichselemente (2) empfangt und mit den zuvor empfangenen Vergleichsergebnissen logisch verknüpft,
e) eine Steuereinrichtung (19) vorgesehen ist, die von Taktsignalen gesteuert wird, die von der Datenquelle (7) zusammen mit den den zu vergleichenden logischen Größen entsprechenden Signalen geliefert werden, wobei diese Steuereinrichtung ein Signal zur Weiterschaltung des Zählregisters (5) und ein Signal für den Operator (3, 4) abgibt.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Speicher (1) durch ebensoviele Speichermodule gebildet wird, wie es Gruppen logischer Bezugsgrößen gibt, wobei die Wahl des Speichermoduls durch die Steuereinrichtung (19) in Abhängigkeit von den schon gewonnenen Resultaten gesteuert wird.
3. Vorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß mehrere Operatoren entsprechend unterschiedlichen Funktionen vorgesehen sind, wobei die Auswahl unter den Operatoren durch die Steuereinrichtung (19) entsprechend den vorher gewonnenen Ergebnissen gesteuert wird.
4. Vorrichtung nach einem der Ansprüche 1 bis 3 zur Verarbeitung von Folgen oder von Reihen von Folgen, dadurch gekennzeichnet, daß ein Entscheidungsorgan (13) vorgesehen ist, das ein Rekapitulationsregister (100) und Entscheidungsoperatoren (102 bis 104) aufweist, die auf unterschiedliche Entscheidungskriterien
ansprechen.
5. Vorrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß der Speicher aus mehreren gleichen Modulen (200.1 bis 200.Λ) zusammengesetzt ist, die gemeinsame Adressen- und Datensignale über parallele Leitungen (201,202) empfangen und von an verschiedenen Leitungen (206.1 bis 206.A) verfügbaren gesonderten Schreibsignalen und einem an einer Leitung (207) verfügbaren gemeinsamen Lesesignal derart gesteuert werden, daß die Speicherung von Bezugsgrößen sequentiell Größe nach Größe und Element nach Element erfolgt, während das Lesen der Informationen, die zur Durchführung des Vergleiches notwendig sind, insgesamt iür die Gruppe der Bezugsgrößen erfolgt.
6. Vorrichtung nach einem der Ansprüche 1 bis 5, gekennzeichnet durch folgende Elemente:
- drei Gegenüberstellungsuntersysteme, die jeweils bestimmt sind zur Identifizierung von Spezialzeichen (TCS), zur Identifizierung von logischen Spezialgrö3en (TELS) und zur Verarbeitung der Gegenüberstellung von logischen Größen oder Folgen logischer Größen, bestimmt durch die Zeichen oder die logischen Spezialgrößen, mit den logischen Bezugsgrößen (TELR),
- eine logische Steuervorrichtung (304,326,331,335), die die Verkettung elementarer Operationen und insbesondere die Einleitung von Gegenüberstellungsoperationen durchführt,
- einen Pufferspeicher (340), der eine oder mehrere Folgen für deren spätere Auswertung speichern kann,
- eine Schreibvorrichtung (309), die es ermöglicht, die logischen Bezugsgrößen in den Speichern der Gegenüberstellungsuntersysteme anzuordnen.
7. Vorrichtung nach Anspruch 6, gekennzeichnet durch
ein viertes Gegenüberstellungsuntersystem zur Erkennung einer bestimmten Anzahl von Ergebnisarten unter den von dem dritten Gegenüberstellungsuntersystem (ETR) gelieferten Ergebnissen,
und einen zweiten Pufferspeicher (336) zur Speicherung der Diagnosen aufgrund dieser Erkennung.
8. Vorrichtung nach Anspruch 6 oder 7, dadurch gekennzeichnet, daß die logische Steuervorrichtung (304, 326,331,335) Suchunterbrechungssignale und/oder Zustandssignale für das Nutzorgan der in dem ersten Pufferspeicher (340) gespeicherten Daten und/oder der in dem zweiten Pufferspeicher (336) gespeicherten Diagnosen erzeugt.
9. Vorrichtung nach einem der Ansprüche 6 bis 8, dadurch gekennzeichnet, daß die verschiedenen Untersysteme in modularer Art ausgebildet sind.
10. Vorrichtung nach einem der Ansprüche 6 bis 9, dadurch gekennzeichnet, daß der erste und/oder zweite Pufferspeicher (340, 336) enthalten:
einen Lese-Schreib-Speichermodul (350),
ein Adressenregister (351),
ein oder mehrere Verdopplungsregister (352), die eine oder mehrere Markierungen enthalten,
- sowie Informations- und Steuerleitungen (353 bis 358), um in einem der Verdopplungsregister (352) den laufenden Zustand des Adressenregisters (351) zu speichern und später zu diesem Zustand zurückzu-' kehren, wobei die sequentielle Funktion und die normale Aktivierung dieses Registers (351) beibehalten werden.
11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, daß ein oder mehrere Verdopplungsregister (352) durch Schieberegister ersetzt sind, die es ermöglichen, eine Gruppe von Markierungen der gleichen Art mit geordneter Wiederaufnahme zu speichern.
12. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, daß ein oder mehrere Verdoppliingsregister (352) durch Register ersetzt sind, die es ermöglichen, eine Gruppe von Markierungen der gleichen Art mit einer Wiederaufnahme in umgekehrter Reihenfolge zu speichern.
DE2554442A 1974-12-04 1975-12-03 Vorrichtung zum Vergleich logischer Größen mit einer Gruppe logischer Bezugsgrößen Expired DE2554442C2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR7439592A FR2293741A1 (fr) 1974-12-04 1974-12-04 Procede et systeme de rapprochement iteratif et simultane de donnees avec un ensemble de donnees de reference
FR7533426A FR2330075A2 (fr) 1974-12-04 1975-10-31 Procede et systeme de rapprochement iteratif et simultane de donnees avec un ensemble de donnees de reference

Publications (2)

Publication Number Publication Date
DE2554442A1 DE2554442A1 (de) 1976-06-10
DE2554442C2 true DE2554442C2 (de) 1985-10-03

Family

ID=62495341

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2554442A Expired DE2554442C2 (de) 1974-12-04 1975-12-03 Vorrichtung zum Vergleich logischer Größen mit einer Gruppe logischer Bezugsgrößen

Country Status (10)

Country Link
US (1) US4053871A (de)
JP (1) JPS5921058B2 (de)
CA (1) CA1061908A (de)
CH (1) CH616252A5 (de)
DE (1) DE2554442C2 (de)
FR (2) FR2293741A1 (de)
GB (1) GB1522518A (de)
IL (1) IL48604A (de)
IT (1) IT1051618B (de)
NL (1) NL7514175A (de)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4221003A (en) * 1978-05-04 1980-09-02 International Business Machines Corporation Bubble domain relational data base system
GB1588827A (en) * 1978-05-31 1981-04-29 System Dev Corp Data processor method and means for determining degree of match between two data arrays
US4283771A (en) * 1978-07-31 1981-08-11 International Business Machines Corporation On-chip bubble domain relational data base system
US4290105A (en) * 1979-04-02 1981-09-15 American Newspaper Publishers Association Method and apparatus for testing membership in a set through hash coding with allowable errors
US4382277A (en) * 1979-05-14 1983-05-03 System Development Corp. Method and means utilizing multiple processing means for determining degree of match between two data arrays
FR2499732A2 (fr) * 1979-06-19 1982-08-13 Jacques Vidalin Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement
FR2459512A1 (fr) * 1979-06-19 1981-01-09 Vidalin Jacques Procede pour la commande de rapprochement a effectuer entre des entites logiques de reference et des entites logiques issues d'un fichier
US4316177A (en) * 1979-12-03 1982-02-16 Rca Corporation Data classifier
US4404542A (en) * 1980-12-05 1983-09-13 Rca Corporation Digital sequence detector
DE3276453D1 (en) * 1982-08-06 1987-07-02 Univ Bordeaux 1 Method of joining logic reference entities and logic entities from a file
US4525803A (en) * 1982-08-12 1985-06-25 L'universite De Bordeaux 1 Method for controlling the comparison to be effected between reference logical entities and logical entities issuing from a file
EP0100804A1 (de) * 1982-08-12 1984-02-22 Universite De Bordeaux I Verfahren zum Zusammenbringen von logischen Referenzeinheiten und logischen Einheiten einer Datei
DE3334515A1 (de) * 1983-09-23 1985-04-11 Siemens AG, 1000 Berlin und 8000 München Verfahren und anordnung zum aufsuchen von einem vorgegebenen suchargument entsprechenden daten einer datenfolge in einem hybrid-assoziativspeicher
US4644545A (en) * 1983-05-16 1987-02-17 Data General Corporation Digital encoding and decoding apparatus
JPS60116083A (ja) * 1983-11-28 1985-06-22 Toshiba Corp 文字列判定装置
US4528660A (en) * 1983-12-08 1985-07-09 The United States Of America As Represented By The Secretary Of The Air Force Multiplexed data stream monitor
EP0166274A3 (de) * 1984-06-04 1988-09-14 Siemens Aktiengesellschaft Schaltungsanordnung zum Ermitteln bestimmter Bitmuster in seriell auftretenden binären Signalen
US4665520A (en) * 1985-02-01 1987-05-12 International Business Machines Corporation Optimistic recovery in a distributed processing system
US4730259A (en) * 1985-03-01 1988-03-08 Gallant Stephen I Matrix controlled expert system producible from examples
US4857882A (en) * 1985-07-02 1989-08-15 Vlsi Technology, Inc. Comparator array logic
US4748439A (en) * 1985-08-13 1988-05-31 Fairchild Semiconductor Corporation Memory apparatus and method for retrieving sequences of symbols including variable elements
JPH0797373B2 (ja) * 1985-08-23 1995-10-18 株式会社日立製作所 文書フアイリングシステム
US4754420A (en) * 1985-11-14 1988-06-28 Hewlett-Packard Company Digital data filter for local area network
US4805093A (en) * 1986-10-14 1989-02-14 Ward Calvin B Content addressable memory
US4896133A (en) * 1987-02-10 1990-01-23 Davin Computer Corporation Parallel string processor and method for a minicomputer
US5073864A (en) * 1987-02-10 1991-12-17 Davin Computer Corporation Parallel string processor and method for a minicomputer
EP0352279A4 (en) * 1987-02-10 1991-10-30 Davin Computer Corporation Parallel string processor and method for a minicomputer
AU1933788A (en) * 1987-08-20 1989-03-09 Davin Computer Corporation Parallel string processor and method for a minicomputer
JPH01108675A (ja) * 1987-10-21 1989-04-25 Hitachi Ltd 電子伝票処理システム
US4991134A (en) * 1988-03-30 1991-02-05 International Business Machines Corporation Concurrent sorting apparatus and method using FIFO stacks
EP0441873A4 (en) * 1988-11-04 1992-09-30 Davin Computer Corporation Parallel string processor and method for a minicomputer
WO1990010912A1 (en) * 1989-03-14 1990-09-20 Kabushiki Kaisha Dainichi Data retrieval device and data editing apparatus using this device
US5546592A (en) * 1989-06-26 1996-08-13 Ncr Corporation System and method for incrementing memory addresses in a computer system
US6816872B1 (en) * 1990-04-26 2004-11-09 Timespring Software Corporation Apparatus and method for reconstructing a file from a difference signature and an original file
US5475833A (en) * 1991-09-04 1995-12-12 International Business Machines Corporation Database system for facilitating comparison of related information stored in a distributed resource
US5442778A (en) * 1991-11-12 1995-08-15 Xerox Corporation Scatter-gather: a cluster-based method and apparatus for browsing large document collections
JP2502023B2 (ja) * 1992-04-13 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション デ―タ・ファイルの比較方法及びシステム
US5586288A (en) * 1993-09-22 1996-12-17 Hilevel Technology, Inc. Memory interface chip with rapid search capability
FR2715486B1 (fr) * 1994-01-21 1996-03-29 Alain Nicolas Piaton Procédé de comparaison de fichiers informatiques.
US5787422A (en) * 1996-01-11 1998-07-28 Xerox Corporation Method and apparatus for information accesss employing overlapping clusters
US6185559B1 (en) 1997-05-09 2001-02-06 Hitachi America, Ltd. Method and apparatus for dynamically counting large itemsets
US6226640B1 (en) * 1997-11-17 2001-05-01 Telecordia Technologies, Inc. Method for determining approximate hamming distance and approximate nearest neighbors of a query
US5996073A (en) * 1997-12-18 1999-11-30 Tioga Systems, Inc. System and method for determining computer application state
JP2000315198A (ja) * 1999-05-06 2000-11-14 Hitachi Ltd 分散処理システム及びその性能モニタリング方法
US20020143735A1 (en) * 2001-03-30 2002-10-03 Akin Ayi User scope-based data organization system
US8073893B1 (en) 2005-08-25 2011-12-06 Robert T. Jenkins Method and/or system for comparing character expressions
US8484236B1 (en) 2006-06-30 2013-07-09 Robert T. Jenkins and Virginia T. Jenkins Method and/or system for processing data streams
US7899819B2 (en) * 2007-03-02 2011-03-01 Ehud Ben-Reuven Financial line data-base
US20120330778A1 (en) * 2011-05-23 2012-12-27 Garrett Eastham Product comparison and feature discovery
US9448801B2 (en) 2012-12-31 2016-09-20 Cadence Design Systems, Inc. Automatic register port selection in extensible processor architecture
US9477473B2 (en) * 2012-12-31 2016-10-25 Cadence Design Systems, Inc. Bit-level register file updates in extensible processor architecture
US10489159B2 (en) 2016-12-21 2019-11-26 Microsoft Technology Licensing, Llc Pipelined decompression of sliding window compressed data
US10483981B2 (en) * 2016-12-30 2019-11-19 Microsoft Technology Licensing, Llc Highspeed/low power symbol compare
US10691361B2 (en) 2017-02-24 2020-06-23 Microsoft Technology Licensing, Llc Multi-format pipelined hardware decompressor
CN113779311A (zh) * 2020-11-04 2021-12-10 北京沃东天骏信息技术有限公司 一种数据处理的方法、装置和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3402394A (en) * 1964-08-31 1968-09-17 Bunker Ramo Content addressable memory
US3391390A (en) * 1964-09-09 1968-07-02 Bell Telephone Labor Inc Information storage and processing system utilizing associative memory
US3588845A (en) * 1968-09-09 1971-06-28 Cii Associative memory
US3771139A (en) * 1971-05-03 1973-11-06 D Digby Associative memory method of performing simultaneous content searches
FR2140321B1 (de) * 1971-06-10 1974-03-22 Dassault Electronique
GB1424535A (en) * 1972-04-28 1976-02-11 Ici Ltd Signal correlators

Also Published As

Publication number Publication date
FR2293741A1 (fr) 1976-07-02
GB1522518A (en) 1978-08-23
CA1061908A (en) 1979-09-04
CH616252A5 (de) 1980-03-14
DE2554442A1 (de) 1976-06-10
US4053871A (en) 1977-10-11
FR2330075B2 (de) 1981-12-24
IL48604A0 (en) 1976-02-29
FR2293741B1 (de) 1981-11-06
JPS5182536A (de) 1976-07-20
IT1051618B (it) 1981-05-20
JPS5921058B2 (ja) 1984-05-17
FR2330075A2 (fr) 1977-05-27
IL48604A (en) 1979-01-31
NL7514175A (nl) 1976-06-09

Similar Documents

Publication Publication Date Title
DE2554442C2 (de) Vorrichtung zum Vergleich logischer Größen mit einer Gruppe logischer Bezugsgrößen
DE3650156T2 (de) Auf regeln basiertes datenwiederauffindverfahren und anordnung.
DE68925746T2 (de) Versionen-Verwaltungswerkzeug
DE3545125C2 (de)
DE2712575C2 (de) Assoziatives Speichersystem in hochintegrierter Halbleitertechnik
DE2821285A1 (de) Verfahren und vorrichtung zur datenverarbeitung mit informationsabtastung unter verwendung von pruefsummen
DE1168127B (de) Schaltungsanordnung zum Vergleich von Zahlen
DE2424820B2 (de) Einrichtung zur Durchsuchung eines Datenspeichers
DE1499182B2 (de) Datenspeichersystem
DE3688738T2 (de) Musteradressierbarer speicher.
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2747196A1 (de) Vergleicheranordnung zum vergleichen von information variabler laenge
DE1271191B (de) Einrichtung zur UEbertragung von Informationseinheiten in die Binaerstellen eines Umlaufspeichers
DE1191145B (de) Elektronische Zifferrechenmaschine
DE2136270A1 (de) Verfahren und Vergleicher zum Vergleich zweier Binärzahlen
DE4210109C2 (de) Sortiervorrichtung zum Sortieren von Daten und Sortierverfahren
DE1499713A1 (de) Verfahren und Schaltungsanordnung zum Packen von Informationen in einem zyklisch umlaufenden Speicher mit wahlfreiem Zugriff zu den auf den Spuren befindlichen Speicherzellen
DE3688737T2 (de) Kontextadressierbarer umlaufspeicher.
DE19538448A1 (de) Datenbankmanagementsystem sowie Datenübertragungsverfahren
DE2519195C2 (de) Assoziativspeicher
DE1280592B (de) Schaltungsanordnung zur Ansteuerung eines Speichers
DE1449584A1 (de) Anordnung zur UEbertragung von Daten einer Loch- oder Magnetkarte in eine Datenverarbeitungsanlage oder umgekehrt
DE1813044A1 (de) Verfahren zur Zeichenerkennung und Anordnung zur Durchfuehrung des Verfahrens
DE69304382T2 (de) Hochgeschwindigkeitssortiergerät
DE1297908B (de)

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee