DE2547035B2 - Datenverarbeitungseinrichtung - Google Patents

Datenverarbeitungseinrichtung

Info

Publication number
DE2547035B2
DE2547035B2 DE2547035A DE2547035A DE2547035B2 DE 2547035 B2 DE2547035 B2 DE 2547035B2 DE 2547035 A DE2547035 A DE 2547035A DE 2547035 A DE2547035 A DE 2547035A DE 2547035 B2 DE2547035 B2 DE 2547035B2
Authority
DE
Germany
Prior art keywords
memory
data
recording
signal
byte
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.)
Granted
Application number
DE2547035A
Other languages
English (en)
Other versions
DE2547035C3 (de
DE2547035A1 (de
Inventor
Edward Stevenage Hertfordshire Babb (Ver. Koenigreich)
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.)
Fujitsu Services Ltd
Original Assignee
Fujitsu Services Ltd
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 Fujitsu Services Ltd filed Critical Fujitsu Services Ltd
Publication of DE2547035A1 publication Critical patent/DE2547035A1/de
Publication of DE2547035B2 publication Critical patent/DE2547035B2/de
Application granted granted Critical
Publication of DE2547035C3 publication Critical patent/DE2547035C3/de
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3066Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction by means of a mask or a bit-map
    • 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
    • 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

Description

Die Erfindung bezieht sich auf Datenverarbeitungseinrichtungen mit einem Speicher, der eine Folge von komprimierten Aufzeichnungen aufnimmt, deren jede wenigstens ein Datenfeld besitzt, welches aus einem Identifizierten und einem Wertteil besteht, wobei die Aufzeichnungen sequentiell durchsucht werden, um die Datenfelder zu finden, deren Identifizierteile einen vorbestimmten Wert haben, um einen Vergleich des Wertteils eines jeden Datenfeldes mit einem Schlüssel durchzuführen und das Vergleichsergebnis in einen Resultatspeicher zu leiten.
Es ist bekannt, eir* Datei in Form einer Folge von Aufzeichnungen zu organisieren, deren jede aus einem oder mehreren Datcnausdrückcn besteht Jeder Datenausdruck kann aus zwei Teilen bestehen, nämlich einem Identifizierteil und einem Wertteil. Beispielsweise kann bei der Überwachung von Lagerbcsländcn eine Aufzeichnung folgende Form annehmen:
Tcilcnummer = 15, Preis = 420, Lieferzeit = 3. wobei »Tcilcnummer«, »Preis« und »Lieferzeit« die Idcntifizicrtcilc der Ausdrücke sind, und »15«, »420« und »3« die entsprechenden Wertteile sind. Es ist ferner bekannt, eine Datei so zu durchsuchen, daß DatcnausdriJckc gefunden werJcn. deren Identifizierten einen bestimmten Wert hat. Ein».· Anordnung zur Durchführung einer solchen Durchsuchung ist beispielsweise in der GB-PS 1114 148 beschrieben und dargestellt. Wenn ein Datenausdruck auf diese Weise festgestellt worden ist. kann ein Arbeitsvorgang (z. B. ein weiterer Vergleich) im Wcrtlcil des Ausdruckes durchgeführt werden, und das Resultat kann in einen Rcsultalspcichcr eingegeben werden.
Beispielsweise kann bei der vorerwähnten Überwachung des Lagerbc'.landcs cine Suchanfragc angeben »Preis > 400«. jeder Dalcnausdruck wird der Reihe nach abgetastet und sein Identifizierten geprüft, um zu bestimmen, ob er gleich dem »Preis« ist. Wenn dies der Fail ist, wird der Wertteil des Ausdruckes mit »400« verglichen. Es ergibt sich, daß die Anordnung damit alle Aufzeichnungen feststellt, die sich auf Teile mit einem Preis bezichen, der höher als »400« ist.
Der Zeitaufwand zur Durchführung einer derartigen Untersuchung hängl von der Größe der Datei ab. und die Zeitdauer für eine Durchsuchung ist bei sehr großen Dateien entsprechend groß. Ferner ist der Speicher raum für eine große Dalci sehr !euer. Aus diesen Gründen ist es erwünscht, die Größe von Dateien möglichst gering zu halten.
Eine Möglichkeit, um Dateien klein zu halten, besteht darin, die Dalci in komprimierter Form zu speichern, wobei die Ausdrücke, die in aufeinanderfolgenden Aufzeichnungen wiederholt werden, mit Ausnahme der ersten Aufzeichnung weggelassen werden. Wenn
beispielsweise bei der vorstehend erwähnten Überwachung des Lagerbestandes zwei aufeinanderfolgende Aufzeichnungen zufällig den gleichen Ausdruck »Lieferzeit = 3« hahen, wird dieser Ausdruck aus der zweiten dieser Aufzeichnungen weggelassen. Man hat in der Praxis festgestellt, daß Dateien häufig eine derartige Wiederholung aufweisen, und deshalb kann dieses Verfahren des Komprimierens sehr zweckmäßig sein.
Diese Kompriniermethode bringt jedoch die Schwierigkeit mit sich, wie die komprimierten Daten durchsucht werden, da die weggelassenem Datenausdrücke in irgendeiner Form als tatsächlich vorhanden behandelt werden müssen.
Aufgabe vorliegender Erfindung ist es, eine Datenverarbeitungseinrichtung vorzuschlagen, die in der Lage ist, eine derartige komprimierte Datei zu durchsuchen.
Gemäß der Erfindung ist eine Daienverarbeitungseinrichtuiig der gattungsgemäßen Art gekennzeichnet durch folgende Merkmale:
a) ein Flip-Flop wird zu Beginn eines jeden Datenfeldes gesetzt und bleibt gesetzt, solange der Wertteil mit dem Schlüssel übereinstimmt;
b) das Flip-Flop läßt nur im gesetzten Zustand die Übernahme des Vergleichsergebnisses in den Resultatspeicher zu,
c) eine logische Schaltung steuert die Übernahme des im Resultatspeicher· stehenden Vergleichsergebnisses zum Aufzeichnungsendc in einen Speicher dann, wenn wenigstens einer der Resultatspeicher-Flip-Flops ein Vergleichsergebnis (>, =. <) beinhaltet; sie verhindert die Übernahme dann, wenn in keinem dieser Flip-Flops ein Verglcichscrgcbnis steht, was im Falle des Fehlens eines Datenfeldes auf Grund der komprimierten Aufzeichnung auftritt.
d) beim Vorliegen einer komprimierten Aufzeichnung bleibt das Vcrgleiehsergcbnis der vorhergehenden Aufzeichnung im Speicher erhallen.
Nachstehend wird die [-'rfindung in Verbindung mit der Zeichnung an Hand eines Ausführungsbeispicls erläutert. Die Figur zeigt
Fig. 1 ein Gesamlbloekschaltbild einer üatcnverarbcMungscinrichtung mit einer Anzahl von Plattcndateicn. eine Mvltiplexercinriehtung, Vcr^lcichscinrichtungen. einer Stcticrlogik für die Vcrgleichscinrichtiingen und einer Suchauswcrtcinrichlung.
I ig. 2das 'iatcnformal fürdic l'laltcndatcicn.
F ig. 3-5üie Multiplcxi.-einrichtung.
F- ig. 6 das Format bzw. den Aufbau eines Aufzeichnungsträger-;
F i g. 7 — 14 die Stcucrlogik.
Fig. 15— 18 eine der Vcrgleichscinrichiungen zusammen mit einer Logik, die beiden solchen Hinrichtungen gemeinsam ist. und
Fig. 19 eine Möglichkeil der Benutzung der Einrichtung.
In Fig. I weist die Einrichtung eine Vielzahl von Magnctplattendatcieinrichtungcn I auf. Jede dieser Finrichiungert besteht au«; einem Stapel von Magneiplattcn. wobei jeweils ein Lese/Schreibkopf jeder Aufzeichnungsfläche zum Auslesen von Daten aus der zum Einschreiben von Daten in eine Spur auf der Oberfläche zugeordnet ist. Die Köpfe sind in radialer Richtung einstellbar, ihiiini ein gewünschter »Zylinder« win Spuren aus diesen ΙΊ,.ΐ'νη ausgewählt werden kann. Einige der Einrichtungen, du- mit \ bezeichnet sind, sind so aufgebaut, daß nur ein einziger Kopf gleichzeitig angeschaltet werden kann, und damit nur eine» Ausgangsdatenkanal ergibt. Die übrigen Einrichtungen M sind in der Lage, eine Vielzahl ihrer Köpfe gleichzeitig anzuschalten und somit eine Vielzahl von parallelen Ausgangskanälen (in diesem Beispiel jeweils zehn Kanäle) zu erzielen.
Daten, die in den Dateieinrichtungen 1 gespeichert werden, sind logisch in Dateien organisiert. Jede Datei kann beispielsweise aus einem gegebenen Zylinder bestehen oder sich über mehrere Zylinder (und möglicherweise sogar über mehrere Platteneinrichtungen) erstrecken. Andererseits können verschiedene Dateien in einem Zylinder vorhanden sein. Jede Datei weist eine Anzahl von Aufzeichnungen auf und jede Aufzeichnung besitzt eine Anzahl von Feldern. Beispielsweise kann eine Datei eine Liste von auf Vorrat gehaltenen Teilen darstellen, wobei eine Aufzeichnung für jedes Teil vorhanden ist, und jede Aufzeichnung kann Felder enthalten, die z. B. die T---'lenummer, den Preis, die Vorratsmenge, die Abgabezeit ::svy.darstellen.
Die Datenkanäle, die aus den Dateieinrichtungen ausgelesen werden, werden einer Schalteinrichtung 2 aufgegeben, die bis zu zwölf dieser Kanäle auswählt und sie den zwölf Eingabestellen einer Multiplcxereinrichtung 3 autgibt. Die Multiplexereinrichtung 3 kombiniert diese zwölf Datenkanäle miteinander und erzeugt ein Zeitmultiplexsignal auf einer Datenvielfachleitung4. Es werden dabei nicht nur die Daten in Multiplexbetrieb geschaltet, sondern auch die Steuerinformation, die auf jeder Spur vorhanden ist. Dies ermöglicht, daß die Steuergeräte diese Steuerinformation simultan unter allen zwölf Daicnkanälcn verarbeiten und damit die Menge an erforderlichen Geräten ein Minimum wird, leder Kanal wird jedoch unabhängig von allen anderen Kanälen behandelt. Deshalb können die Kanäle, die miteinander in Multiplexbetrieb arbeiten, alle vollständig unabhängig voneinander sein und brauchen in keiner Weise miteinander synchronisiert zu sein. Wenn sie somit von getrennten Oberflächen einer der Mchrfachcinric^tungen M abgeleitet werden, ist es nicht notwendig, daß die Daten auf diesen Oberflächen in irgendeiner Weise ausgerichtet sind. Darüber hinaus können die in Multiplexbetrieb arbeitenden Kanäle aus getrennten Datcicinrichiungen abgeleitet worden.
Die Multiplexereinrichtung liefert auch die nachfolgenden Steuersignale, um die Daten auf der Datenvielfiichleitung4 zu kennzeichnen: Eine Kanalzahl, die angibt, aus welchem Kanal die Daten abgeleitet sind, und eine physikalische Adresse, die anzeigt, von wo die Daten auf der Platte stammen.
Die im Multiplexbetrieb vorliegenden Daten auf der Datenviclfachleiiung 4 werden parallel einer Bank von Ib \ ergieichseinrichlungen 5 (es ist nur eine dargestellt) aufgegeben. Diese Einrichtungen benutzen grmeinsa.-n eine Steuerschaltung 6. Jede Vcrgleichseinrichlung ist im Time-Sharing-Betrieb zwischen die zwölf Datenkaniile eingeschaltet und arbeitet vollständig unabhängig für jeden Kanal. Bei -inem bestimmten Datenkanal ist die Arbeitsweise grundsätzlich folgende: Die Vcrgleichsewii. hfung vergleicht jedes Datenfeld, das auf der Datcnviclfachlcitiing 4 auftritt, mit ein'.m gespeicherten Schlüsserwert. Die Ergebnisse dieser Verglcichsvorgänge werden gesammelt (z. B. durch ODER-Glieder miteinander erblinden) und am Ende der Aufzeichnung in einem Speicher in der Vcrgleichseinrichtung gespeichert.
Am Ende einer Aufzeichnung werden die
ten Resultate, die für die Aufzeichnung geeignet sind, auf eine Suchauswerteinrichlung 7 übertragen. Diese Einrichtung führt logische Arbeitsvorgänge an den Resultaten in Abhängigkeit von einem gespeicherten Programm durch, so daß entschieden wird, ob die Aufzeichnung einem bestimmten Suchkriterium genügt. Um zu gewährleisten, daß die Vergleichsergebnissc nicht rascher erhalten werden als die Suchauswerteinrichtung sie auswerten kann, wird eine minimale Aufzeichnungslänge festgelegt (in diesem Fall 16 Bytes), und ist so ausgebildet, daD die längste Auswertfolgc in der Suchauswertcinrichtung nicht mehr als 16 Byte-Perioden in Anspruch nimmt.
Die Daten auf der Datenvielfachleitung 4 werden zusammen mit den Kennzcichnungssteuersignalcn auch einer Wiederauffindeinrichtung 10 aufgegeben, deren Zweck darin besteht, spezielle Informationsausdrücke
Suchkriterium genügen. Da eine Aufzeichnung von der Suchauswerteinrichtung solange nicht verarbeitet wird, ji bis sie abgetastet worden ist, muß die Wiederauffindein richtung 10 Pufferspeicher enthalten, die die speziellen Ausdrücke solange vorübergehend speichern, bis die Auswertung abgeschlossen worden ist.
Die wiederaufgefundene Information wird zusammen _> mit der zugeordneten physikalischen Adresse einer Steuerverarbeitungseinrichtung 8 zugeführt. Sie ist ein konventioneller, kleiner Prozessor, der die Arbeitsweise aller bisher br-'hriebenen Teile der Einrichtung koordiniert. Zusätzlich kann der Steuerprozessor einen u Zugang zur Datenbasis über eine Zugriffseinrichtung 9 mit direktem Zugriff erhalten, die parallel zum übrigen Teil des Systems, jedoch unabhängig von diesem arbeitet und die einen direkten Zugriff zu den Plattendateicinrichtungcn I über die Schalteinrich- π Hing 2 besitzt.
Die gesamte, bisher beschriebene Einrichtung kann als Anschlußgerät zu einem herkömmlichen Hauptrechner betrachtet werden, der entsprechende Endstufenbefehle der .Steuerverarbeitungseinrichtung 8 in Abhän- m gigkeit von Benutzerprogrammen zuführt.
Plattenformat bzw. Plattenaufbau
In Fig. 2 ist das Format von Daten in den r, Dateieinrichtungen 1 dargestellt. Jede Datenspur enthält 15 Datenblöcke, die als Daienbereiche DA bezeichnet sind und die in gleichem Abstand längs der Spur versetzt sind. Jeder Datenbereich enthält 384 Datenbytes mit jeweils acht Bits. Diese Datenberei- ,π ehe DA entsprechen nicht den oben bezeichneten Aufzeichnungen: Jeder Datenbereich kann mehrere Aufzeichnungen enthalten oder andererseits kann jede Aufzeichnung sich über mehrere Datenbereiche auf der gleichen Spur erstrecken. -,·;
Jedem Datenbereich DA geht ein Markierschema voraus, das neun Bytes lang ist und das als Zählbereich CA bezeichnet wird, welcher den Datenbereich innerhalb der Dateieinrichtung eindeutig identifiziert. Jeder Zählbereich enthält somit: bc
a) eine Zylinderzahl, die die radiale Position der Spur identifiziert,
b) eine Kopfzahl, die identifiziert, welchem Kopf die Spur entspricht,
c) eine Zählbereichszahl (von 0—14), die die Umfangsposition des Bereiches innerhalb der Spur identifiziert.
ledern Datenberenh DA oder Ziihlbercich CA gehl unmittelbar die nachstehende Folge voraus:
a) Eine Einleitung VA. die aus acht Bytes mit jeweih acht binären Einsen besteht, die zum Synchronisieren von Taktgeberschaltiingen verwendet wird,
b) eine Adressenmarke AM. die ein einziges, fesi vorgegebenes Schema von Bits mit einer Länge von sieben Bytes ist und die dazu dient, den Beginn des folgenden Zählbereiches oder Datenbereiches zu markieren,
c) ein Gleichlaufbytc S, das die Art des folgenden Bereiches (z. B. Zählbereich oder Datenbereich) identifiziert.
An jedem Datenbercich DA oder Zählbereich CA schließen sich unmittelbar zwei zyklische Prüfbytes CC an. die während des Ablcsens verwendet werden, um die aus diesem Bereich ausgeiesenen Daten zu verifizieren. Das erste zyklische Byte ist gleich der Exklusiv-ODER-Funktion eines aus lauter Einsen bestehenden Bytes, wobei jedes zweite Byte im Bereich am ersten Byte beginnt. In ähnlicher Weise ist die zweite zyklische Prüfung eine Exclusiv-ODER-Funktion eines aus lauter Einsen bestehenden Bytes, wobei jedes zweite Byte in dem Bereich von dem zweiten Byte ausgeht.
Die schraffierten Bereiche in F i g. 2 stellen Spalte dar. in der r. keine Information aufgezeichnet ist.
Multiplexcreinrichtung
Die F i g. 3 - 5 zeigen die Multiplexcreinrichtung 3 im einzelnen.
In F i g. 3 werden die Ursprungsdaten aus den zwölf Kanälen, die durch die Schalteinrichtung 2 ausgewählt worden sind, zwölf Kanaleinrichtungen CHO- CHW aufgegeben. Die Datengeschwindigkeit an dieser Stelle ist die Geschwindigkeit der l.esedatcn aus einer Spur der Platte und beträgt nominell 2,5 Megabits pro Sekunde.
Eine dieser Kanaleinrichtungen ist im einzelnen in Fig. 4 gezeigt. Die Einrichtung weist eine Demodulationsschaltung 11 auf, die die Urspningsdatcn demoduliert und ein Taktsignal aus den Daten entnimmt (dieses Taktsignal wird nur während des Auslesens der tatsächlichen aufgezeichneten Bereiche erzeugt und ist während der Spalte Undefiniert).
Eine Wählerschaltung 13 ist vorgesehen, um entweder dieses Datentaktsignal oder ein Taktsignal aus einem internen Taktgeber 14 (der eine etwas geringere Taktgeschwindigkeit, als dem Datentakt entspricht, besitzt), auszuwählen, das als Haupttaktsignal .'jr die Kanaleinrichtung dient. Dieses Haupttaktsignal wird einem Zähler 15 mit Teiler Acht aufgegeben, so daß er von der Bitfrequenz auf die Bytefrequenz untersetzt wird.
Die demodulierten Daten auf dem Pfad 12 werden einer Adressenmarkieranzeigeschaltung 16 herkömmlicher Form aufgegeben, die so ausgelegt ist, daß sie das eine Adreßmarke AM darstellende Byteschema erkennt. Wenn die Schaltung 16 den Beginn einer Adressenmarke anzeigt (nämlich, daß ein nur aus Nullen bestehendes Byte auf ein nur aus Einsen bestehendes Byte folgt) wird ein »Start«-Signal erzeugt.
Die demodulierten Daten werden auch einem Serien-Parallel-Umsetzer 17 aufgegeben, der sie von Bit-Serien- in Byte-Paraiiei-Forrn umsetzt Der Ausgang des Umsetzers 17 wird einem Paar von Pufferspeichern B 1 und B 2 aufgegeben, und jeder dieser Speicher ist ein Speicher mit direktem Zugriff mit 16 Bytes. Diese
Pufferspeicher werden von einer bistabilen Schaltung 19 gesteuert, die ills ein Zähler mit feiler Zwei so geschaltet sine! daß die Pufferspeicher /um abwechselnden Einsehreiben angeschaltet werden. Zweckmäßiger weise wird der Pufferspeicher, der gerade zum !Einschreiben angeschaltet ist. als der Strompufferspeichcbezeichnet, während der andere als der Niehtstron-Pufferspeichcr bezeichnet wird. Die Datenausgänge aus den Pufferspeichern werden einer Datenwählschaltung 20 aufgegeben, die uich von der bistabilen Schaltung 19 gesteuert wird, so daß Daten aus dem Nichtslrom-Puffcrspeicher für die Abgabe auf einen Pfad 21 ausgewählt werden.
Das Adressieren der Pufferspeicher wird auch durch die bistabile Schaltung 19 über eine Schaltanordnung 18 in folgender Weise gesteuert: Der Nichtstrom-Pufferspeicher wird durch ein aus vier Hits bestehendes Adressenlese-Signal auf einem Pfad 22 adressiert, während der Strom-Pufferspeicher di.ch den Inhalt eines aus vier Bits bestehenden Zählers 23 adressiert wiit' Dieser Zähler wird durch das Bylegeschwindig-Veits -Taktsignal aus dem Zähler Ii weitergeschallet. Der Überlauf des Zählers 23 zeigt an. daß der Strom-Pufferspeicher mit Daten gefüllt ist und deshalb zum Schalten der bistabilen Schaltung 19 in den entgegengesetzten Zustand verwendet wird, um die Rollen der Pufferspeicher /u vertauschen. Die Übcrlaufabgabe erzeugt auch ein Anfrage-Signal auf einer Leitung 24. vorausgesetzt, ein UND-Glied 25 ist freigegeben.
in f i g. 3 werden die Anfrageleilungen 24 aus den zwölf Kanalcinrichtungcn einer Kanalwählereinrichtung 2h aufgegeben, die jeweils eine ausstehende Anfrage gleichzeitig dadurch bedient, daß ein Kanalfreigabe Signal der entsprechenden Kanaleinrichtung über eine der zwölf Leitungen 27 zugeführt wird. Die Kanalwählereinrichtung erzeugt auch eine Folge von Adressen-I.csesignalen von 0 bis 15. die den Adressenpfaden 22 der Kanaleinrichtungen aufgegeben werden, damit die Inhalte der Nichtstrom-Pufferspeicher. und zwar ein Byte nach dem anderen, ausgelesen werden.
Dieses Auslesen erfolgt mit einer Geschwindigkeit von 235 Nanosekunden pro Hv ic Wie in F i g. 4 gezeigt, beeinflußt das Kanalfrcigabe-Signal einen Satz von UND-Gliedern 28 in der ausgewählten Kanaleinrichtung, wodurch Daten von dem Nichtstrom-Speicher auf einen Ausgangspfad 29 von Hviebreitc ausgelesen werden. Wie in F i g. i gezeigt, werden die Signale auf den Pfaden 29 in einer verdrahteten ODER-Verbindung kombiniert, damit ein Multiplexsignal auf einem gemeinsamen Ausg.ingspfad 31 mit einer Breite von einem Byte erzeugt wird.
Die Geschwindigkeit, mit der Daten aus den Pufferspeichern ausgelesen werden, ist etwas höher als das Zwölffache der Geschwindigkeit, mit der sie cingelesen werden. Dies ergib; einen Spalt von einem Byte zwischen Daten aus unterschiedlichen Kanälen, so daß dadurch Zeit zur Verfügung steht, damit die folgenden Teile der Einrichtung von einem Kanal auf deo anderen umschalten. Damit werden auch kleine Schwankungen in der Drehgeschwindigkeit der Platten zugelassen, was dazu führen kann, daß Daten aus den Platten schneller ausgelesen werden als mit Nenngeschwindigkeit. Die Reihenfolge, in der die Datenkanäle im Multiplexbetrieb betrieben werden, ist nicht notwendigerweise fest vorgegeben, da sie durch den Kanalwähler in Abhängigkeit von Anfragesignalen bestimmt wird, anstatt auf einer festen, zyklischen Basis.
Nach F i g. 4 enthält jede Kanaleinrichtung ein zyklisches Schieberegister 32 mit sechs Stufen, das als Sortierer bezeichnet wird, der die Arbeitsweise der Einrichtung steuert. Zu einem beliebigen Zeitpunkt enthält eine dieser Stufen eine !{ins. und die anderen enthalten alle Nullen, so daß der Sortierer sechs aufeinanderfolgende Stadien hat. Diese sechs Stadien entsprechen grundsätzlich den folgenden sechs Hereichen auf der Platte (Fi g. 2):
(ASYNf Gleichlaufbytc. das einem /ählbeieich
vorausgeht.
CA: Zählbercich
(»Al': Spalt.deraut einen Zählbcreich folgt
DA SYNC: Gleichlaufbyte. das einem Datenbereich
vorausgeht
DA: Datenbereich
DAtC: Zyklische Prüfbytes, die einem Datenbe-
Zu Beginn wird der Sortierer auf die CA .SYNC-Stufe voreingestellt, bevor eine einem Zählbereich vorausgehende Adressenmarke AM aufgenommen wird. In diesem Zustand wird die Adressenmarkieranzeigeschaltung 16 wirksam gemacht, so daß dann, wenn der Beginn der Adressenmarke AM angezeigt wird, ein START-Signal erzeugt wird. Dieses stellt den Zähler 23 auf einen Wert von Acht ein und macht ihn wirksam. Der Zähler zählt dann vorwärts, so daß die Adressenmarke /\A/und das anschließende Zählbereichs-Glcichlaufbytc S in Bytes 8. 15 des laufenden Puffers cingegattert wird. Ein Anfrage-Signal wird dann auf der Leitung 24 erzeugt, das die Kanalwälllereinrichtung abfragt, um den Inhalt des Puffers auszulesen. Gleichzeitig bewirkt das Zähler-Übcrlaufsign.il. daß die Puffer vertauscht werden, und verschiebt auch den Sortierer 32 in den CA-Zustand.
Im C'A-Zustand setzt der Zähler 23 die Zählung fort und bewirkt, daß der Zählbereich CA und die zyklische Prüfbstcs CY' in Bytes 0-10 des laufenden Puffers eingegattcrt werden. Wenn der Zählwcrt Zehn erreich' hat. wird der Wähler auf das interne Taktsignal umgeschaltet. Die Zählung wird bis 1 5 fortgesetzt. Dann wird eine Anfrage erzeugt und der Sortierer 32 auf den GAP-Zustand verschoben.
Im GAP-Zustand wird die Zählung fortgesetzt. In diesem Zustand jedoch wird das Anfrage-Signal gesperrt, da das Gutter 25 unwirksam gemacht ist. so daß keine Information auf den Ausgangspfad 29 ausgelesen wird. Die Länge des Spaltes und die Frequenz des inneren Taktes sind so gewählt, daß dann, wenn der Zähler 23 das nächste Mal übcrl.iuft. die Einleitung PA. die der nächsten Adressenmarke vorausgeht, begonnen hat. von der Platte anzukommen, so daß das Datentaktsignal wieder zur Verfügung steht. Das Überlaufsignal bewirkt somit, daß der Wähler 13 auf das Datentaktsignal zurückschaltet. Gleichzeitig wird der Sortiprer auf den DA SYNC-Zustand verschoben und der Zähler 23 unwirksam gemacht.
Im DA SYNC-Zustand wird die Adressenmarkieranzeigeschaltung 16 wieder wirksam gemacht. Wenn der Beginn der Adressenmarke angezeigt wird, wird somit ein START-Signal erzeugt, das den Zähler 23 auf Acht stellt und ihn wirksam macht. Der Zähler läuft dann und gattert die Adressenmarke und das Datenbereichsgleichlaufbyte in Bytes 8-15 des laufenden Puffers ein. Wenn ein Zählerüberlauf auftritt, wird ein Anfragesignal abgegeben und der Sortierer auf den DA-Zustand verschoben.
Im DA-Zustand wird ein Verschieben des Sortierers durch ein Verschiebe-Sperr-Signal gesperrt. Somit zählt der Zähler 23 wiederholt von Null bis Rinf/.ehn und bewirkt, daß aufeinanderfolgende Gruppen von Ib Bytes des Datenbereiches DA in abwechselnde Puffer eingespeichert werden. Wie vorher wird am finde einer jeden Gruppe 'in Bytes ein Anfragesignal abgegeben. Das Vcrschiebj-Sperr-Signal wird so lange aufrechterhalten, bis die letzte Gruppe von Bytes in dem Datenbereich in den laufenden Puffer eingegattert worden ist. worauf es entfernt wird und der Sortierer auf dun DACC -Zustand verschoben werden kann.
Im DACC-Zusland läuft der Zähler 23 weiter und galtet die beiden zyklischen Prüfbytes Cf in Bytes 0 und 1 des laufenden Puffers. Wenn der Zählwerl Hins erreicht hat. wird ein Signal erzeugt, das den Wähler I S über den inneren Takt schaltet. Der Zählvorgang wird dann fortgesetzt, bis ein Zählerüberlauf auftritt, was ein weiteres Anfragesignal ergibt und bewirkt, daß der Sortierer in den anfänglichen CA SYNC-Zustand /urückverschoben wird. Gleichzeitig wild der Wahler 13 in den Datenakt zurückgeschaltet und der Zähler 25 unwirksam gemacht. Die Kanaleinrichtung wartet nun auf die Ankunft der nächsten Adressenmarke, wie vorher.
Hieraus ergibt sich somit, dall die Kanaleinrichtung die Daten aus dem entsprechenden Datenkanal in einer Reihe von Gruppen von jeweils Ib Bytes arrangiert, leder Datenbaeich DA. der aus 5S4 Bytes besteht. i,t in 24 solcher Gruppen von Bytes unterteilt. |ede Adressenmarke und das folgende Glcichlaufbyle werden zusammen in Bytes H-I") einer Gruppe angeordnet und die anderen Bytes leergelassen. In ähnlicher Weise werden jeder Zählbereich und die zyklischen Prüfbytes in Bytes 0 10 einer Gruppe angeordnet, wobei die anderen Bytes leergelassen werden, während die zyklischen Prüfbytes für den Datenbereich in Bytes 0 und I einer sonst leeren Gruppe angeordnet werden.
Wie in I'ig. 4 gezeigt, sperren die UND-Glieder 28 auch den Zustand des Sortierers bei Hmpfaiig eines Kanal-Wirksam-Signals zur Hr/etigung eines Kanal-Zu stand-Signals aus. das in eirter verdrahteten ODHR-Verbindung mit ähnlichen Signalen aus den anderen Kanälen kombiniert wird.
H ig.") zeigt den Kanalwähler 26 im Detail. Der Wähler weist eine Prioritälsschallung 33 auf. die eines der Anfragesignale auf den Leitungen 24 zur Wartung auswählt und ein Kanal-Wirksam-Signal auf der entsprechenden Leitung der Leitungen 27 erzeugt. Gleichzeitig wird die Identität des gewählten Kanals durch eine Schaltung 34 codiert und eine Kanalzahl aus vier Bits erzeugt.
Die Prioritälsschaltung 33 aktiviert dann einen Vier-Bit-Zähler 35. der von einem Vielfachleitungs Taktsignal aus einer Taktsehaltung 36 betrieben wird. Der Zähler 35 zählt von Null auf Fünfzehn, erzeugt eine folge von Lese-Adressen-Signalcn einer Gruppe von sechszehn Bytes aus der ausgewählten Kanaleinrichtung. Wenn der Zähler überläuft, hält er an und gibt ein Signal an die Prioritätsschaltung 33. indem die Auswahl der nächsten Anfrage eingeleitet wird. Das Signal, das das Auslesen einer Gruppe von Bytes einleitet, wird als das START-GOB-Signal bezeichnet, während das Überlaufsignal am Ende der Gruppe von Bytes als das Ende-GOB-Signal bezeichnet wird.
Der Kanalwähler weist ferner einen Zähle- 38 zum Zählen der Anzahl von Gruppen von Bytes auf. die aus einem Patenbereieh ausgelesen worden sind: dieser Zähler wird um ."ins bei jedem START-GOB-Signal weitergeschaltet. wenn das Kanal-Zustand-Signal an ■igt. daß der ausgewählte Kanal den DA-Zustand einnimmt. Um schrittzuhalten mit der Multipleverschal lung der Kanäle werden die Inhalte dieses Zählers 38 in einem Speicher 39 mit direktem Zugriff gespeichert, der durch die Kanal/ahl am Hndi· einer jeden Gruppe von Bytes adressiert ist, und der Zähler wird aus dem Speicher zu Beginn einer jeden Gruppe von Bytes gefüllt. Daraus ergibt sich, daß das Zählen für jeden Kanal vollständig unabhängig vor sich geht. Der Ausgang des Zählers 38 wird einer Decodierschaltung 41 aufgegeben, die anzeigt, wenn der Zählwert 22 für den laufend gewählten Kanal erreicht, woraus sich ergibt, daß die zweitletzte Gruppe von Bytes in einen. Datenbereich aus dem nichtlauferulen Puffer in diesem Kanal ausgelesen wird Dies bedeutet, dall die letzte Gruppe von Bvtes in dem Datenbereich in den Strom-Puffer dieses Kanals eingeschrieben wird. Des halb wird der Ausgang des Decodieren 41 dazu verwendet, das Verschiehe-SperrSignal aus dem Sortierer des wirksam gemachten Kanals zu entfernen.
Der Ausgang aus dem Zähler 38 wird als GOll-Zahl bezeichnet und stellt einen le:l tier physikalischen Adresse dar, die die Daten auf der Datenvielfachleilung 4 qualifiziert.
Mit Bezugnahme auf Γι;.' ! wird das Kanal Zu stands-Signal νerw en.lel. um /u bestimmen, was mit den Signalen auf dem Pfad 31 geschehen soll, und zwar in folgender Weise:
Wenn der Kanal Zustand den CA oder Jen CA SYNC-Ziistaiul angibt, wird eine Vergleichsschaltung 400 wirksam gemacht, die den Zählhereich und d.is Cileichlauibvte mil dem Ausgang des Speichers 401 mit direktem Zugriff vergleicht. Dieser Speicher ist in /wolf Bereiche unterteilt, und /war jeweils einen fiir jeden Datenkanal. wobei .'inci dieser Bereiche von der Kanal-Zahl ausgewählt wird, leder dieser Bereiche enthält den erwarteten Wen ties Zählbereiclis Gleich laufbytes und des Ziihlbereiches entsprechend einem Datenbereich, der abgetastet werden soll. "Venn die Vergleichsschaltung 400 für das Gleichlaufbyie oder den Zählbereich eine Hei· !anpassung angibt, wird der Sortierer des wirksam gemachten Kanals in den CA SYNC-Zustand πκ kgeset/t.
Wenn andererseits die Vergleichsschaltung 400 lür ilen Zählbereich und das Gleichlaufhvte eine Anpassung anzeigt, wird ein Signal in die Steuerverarbeitungseinrichtung geschickt, der diese Tatsache mitgeteilt wird. Die .Steuerverarbeitungseinrichtung bringt dann den entsprechenden Bereich des Speichers 401 dadurch auf den letzten Stand, daß die entsprechenden Details des nächsten Zähibereiches. tier angepaßt werden soll, eingeschrieben werden. Auf diese Weise kann die Steuerverarbeitungseinrichtung jede gewünschte Folge von Datenbereichen für die Abtastung durch das System auswählen, wobei die Anzahl unabhängig für jeden Kanal durchgeführt wird.
Im CA-Zustand wird auch ein anderer Speicher 402 mit direktem Zugriff wirksam gemacht, damit das Byte auf dem Pfad 31, das die Zählbereichszahl enthält, in die Stelle des Speichers 402 eingeschrieben wird, der durch die laufende Kanalzahl adressiert ist. Die Inhalte der laufend adressierten Stelle dieses Speichers ergeben ein Tignal, das als CA-Zahl bezeichnet wird, welche (zusammen mit der GOB-Zahl) die physikalische Adresse darstellt, die die Daten auf der Datenvielfachleitung 4 qualifiziert.
Il
Wenn der IM SYNC-Zustand .infirm, wird die C irtippc von Bytes, die auf dem Pfad 31 '.orhaiulen ist. in eine Vergleichsschaltung 32 eingeführt, wo Byte Fünfzehn an einem fest\erdrahleten Wen geprüft und. um festzulegen, ob es sich um ein gültige1· Datenbereiehs-Glcichlaufbytc handelt. Wenn nicht, wird ein Fehlcrsignal in die Steuerierarbeitungseinrichtung gegeben.
Wenn der DAZ.uMand .luflritt. werden die aufeinanderfolgenden Gruppen von Bytes, die auf dem Pfad 3! erscheinen, auf die Datenvielfachleitung 4 (I■'; g. I) und damit auf die Vergleichseinrichtung 5 gegeben.
Die Daten auf dem l'fad 51 werden ferner einer Prufbyte-Erzcu^ungsschaluing 43 aufgegeben, die Prüfbytes auf ledern Zählbereich und den /skhschen l'rufbytcs. und auf jedem Datenbereich und den zyklischen Prüfbytes erzeugt. Normalerweise werden die auf diese Weise erzeugten Prüfbytes alle SuII. Die Schaltung 4 5 wc st einen zugeordneten Speicher 44 nut direktem Zugriff auf. Dieser Speicher wird durch die K.inalzahl adressiert und dient dazu, den Zustand des Prufbytc-Generators im l'.nde einer leilen (iruppe von Bytes zu speichern und ihn /u Beginn einer jeden neuen (iruppe von By tes zu füllen, so JaU gewährleistet ist. dal! die Erzeugung von Prufhyte^ tu; verschiedene Kanäle unabhängig vor sich geht
Wenn der CA-oder der I)V ι Zustand eintm . wird eine Vergleiehseinrielitung 4S wirksam gemacht, die bewirkt, dalt die Prüfbytes, die mi der Schaltung 43 e:zeugt werden, mit einem \erdrah:eten Gesami-Null-Schenia verglichen werden. Wern eine lelilanpassung in dem DACC-Zustaiul angezeigt wird, wird der Steuerverarbeitiingseinnchiung ein I ehler signalisiert. Eine Fehlanpassung im C-\ Zustand bewirkt andererseits, daß der Sortierer der wirksanigemachlen Kanaleinheil in den CA SYNC -Zustand niiAgesetzt wird. Die Steuerschallungen nach I ι g. i zur Anpassung tier Zählbereiche, zur Prüfung der ( jleichlaulby tes usw. arbeiten zeitparallel zwischen allen zwölf Kanälen, so dall der Aufwand an Steuergeräten reduziert wird.
Aufzeichnungsformat
I'ig. b zeigt das Format \on Daten in einer Aufzeichnung. Die Aufzeichnung weist eine Folge von Datenfeldern auf. |edes Datenfeld besteht aus:
a) Einem Identifizierbyte /. das die Art des Datenfeldes darstellt. Beispielsweise wäre im Falle der Bestandskartei das Identifizierbyte /ein Code, der »Teilenummer«. »Preis« usw. angibt.
b) Einem Längenbyte /.. das die Länge in Bytes des Datenfeldes einschließlich der Bytes / und /. darstellt.
c) Einem Wertteil .eränderlicher Länge, der den tatsächlichen Wert der Daten enthält. Wenn beispielsweise das Identifi/ierbyte /die »Teilezahl« darstellt, enthält der Wertteil V'die Teilezahl selbst.
Jede Aufzeichnung wird durch ein Ergänzungsfeld abgeschlossen, das aus einem speziellen Identifizierbyte / mit einem Wert im Bereich 240 — 255 und einem Längenbyte Lbesteht.
Ein Teil einer typischen Datei, die aus einer Anzahl solcher Aufzeichnungen besteht, ist in der folgenden Tabelle I dargestellt. In dieser Tabelle sind die Felder einer Aufzeichnung der Klarheit wegen auf der gleichen Zeile gezeigt. Identifizierbytes sind durch die Buchstaben X, Y, Z bezeichnet, während die Feldwerte durch die Symbole Xi. YX. ZX usw. bezeichnet sind. Die Bezeichnung \ V I stellt somit ein Feld mit einem Identifizierbyte Λ und einem Wert .V I dar. Längenbytes und Aufzeichniingsergänzungen sind ;uis der Tabelle w eggelassen.
\ul/ckhiHiMus-Nr I ekler
I \ Vl ) Π / /I
-ι ν vi ) )2 / /t
Aus dieser Fabelle ergibt sich, daß bestimmte Felder in aufeinanderfolgenden Aufzeichnungen wiederholt werden. Beispielsweise erscheint das Feld X=XX in allen vier Abzeichnungen. Dieses Merkmal tritt iiaulig in Dateien auf. Beispielsweise können im I alle des Bestandssystems aufeinanderfolgende Aufzeichnungen sich auf Teile beziehen, die in der gleichen IJnierg.-uppe verwendet werden, usw. Wie nachstehend noch ausgeführt, ermöglicht das erfindungsgeniiiße System, daß eine solche Datei in kompakterer Form gespeichert wird, indem die wiederholten Felder von aufeinanderfolgenden Aufzeichnungen eliminiert werden. Unter Verwendung dieses Prinzips kann die Datei in Tabelle I in die in Tabelle 2 gezeigte Form komprimiert w erden.
Libelle 1
\ulZL'iihmini;s-Ni"
I e liier
V V
/ /I
/ /2
/ v.y
Hieraus ergibt sieh, daß die Anzahl von gespeicherten Feldern von zwölf in Tabelle I auf sieben in Tal HIe 2 reduziert worden ist. so daß eine wesentliche Verringerung des erforderlichen Spcichcrraunies erzielt w ird.
Wenn Daten auf diese Weise gespeichert werden, müssen Vorkehrungen getroffen werden, um eine Erinnerung der Informatik) von einer Aufzeichnung zur nächsten zu erhalten, wenn die Datei abgetastet wird. Beispielsweise müssen in Tabelle 2 die Felder X=X I und V= VI in Aufzeichnung 1 erinnert werden, da sie so behandelt werden müssen, als ob sie in Aufzeichnung 2 vorhanden wären (siehe Tabelle I). In obigem Beispiel muß jede Abtastung der Datei bei der Aufzeichnung 1 begonnen werden, da sonst Fehler auftreten. Wenn beispielsweise die Abtastung bei der Aufzeichnung 2 begann, wären die Felder X-Xl und V=Vl nicht erinnert worden, und es gäbe keine Möglichkeit, zu erkennen, daß sie in Aufzeichnung 2 erscheinen sollten. LJm diese Schwierigkeit zu überwinden, wird im Falle vorliegender Erfindung ein spezielles Feld verwendet, das als Aufnahmestelle bezeichnet wird, die zwischen Aufzeichnungen in Intervallen angeordnet ist. damit mögliche Startpositionen angezeigt werden. Die Daten werden dann so angeordnet, daß die Information an den Aufnahnestellen nicht erinnert werden muß, d. h„ die erste Aufzeichnung nach jede,' Aufnahmestelle weist keine weggelassenen Felder auf.
!4
Tabelle 3 zeigt einen anderen Teil °iner nichtkomprimierten Datei.
Tabelle 3
AulVeichnuniiM-Nr. l-clder
V = Λ 2
.V= .V 2
.V= V 2
Z= Z5 Z= Zb Z=Zl
In diesem Fall ergibt sich, daß das V-FeId tatsächlich von den Aufzeichnungen 2 und 3 fehlen soll. Wenn diese Datei komprimiert wird, muß somit eine Möglichkeit geschaffen werden, um /u verhindern, daß das F;ld V= V3 von der Aufzeichnung 1 erinnert wird. Dies wird durch Verwendung eines speziellen Null-Feldes erreicht, das anzeigt, daß das Feld nicht in der Aufzeichnung vorhanden ist. Die in der Tabelle 3 gezeigte Datei würde deshalb auf die in Tabelle 4 gezeigte Form komprimiert werden.
Tabelle 4
Aulzcichnungs-Nr. F-'elder
V = ,V2
Y= η
K=NuII
Z=Zb
Das Null-Feld kann in gleicher Weise wie ein normales Feld erinnert werden, wie dies im Falle der Aufzeichnung 3 der obigen Tabelle 4 dargestellt ist.
Fig. 6 zeigt das Format einer Aufnahmestelle. Diese besteht aus dem speziellen Identifizierbyte 1. ohne Längenbyte oder Werteil. Fig.6 zeigt auch ein Null-Feld, das aus einem normalen Feldidentifizierbyte / und dem Längenbyte 2. jedoch keinem Wertteil besteht. Diese Figur zeigt auch ein Blindfeld, das aus dem Identifizierbyte 0 besteht, welches zum Füllen von Räumen in Datenbereichen verwendet werden kann.
Wie nachstehend beschrieben wird, kann die erfindungsgemäße Einrichtung in zwei Betriebsarten arbeiten. Die erste Betriebsart wird die Normalbetriebsari genannt, und in diesem Zustand kann die Einrich:ung nur nichtkomprimierte Dateien verarbeiten, wie dies in den Tabellen 1 und 3 gezeigt ist.
Die zweite Betriebsart wird die Erinnerungsbetriebsart genannt, und in diesem Zustand kann die Einrichtung sich effektiv an die Ergebnisse von Vergleichen, die auf Feldern gemacht worden sind, »erinnern« und kann deshalb mit komprimierten Dateien arbeiten, wie sie in den Tabellen 2 und 4 gezeigt sind.
Steuerlogik für die Vergleichseinrichtung
Die Steuerlogik 6 für die Vergleichseinrichtung ist im einzelnen in den Fig. 7-14 dargestellt. Die Taktgabe dieser Steuerlogik wird durch ein Mäupttakfsignäl ck gesteuert, das von dem Vielfachleitungs-Taktsignal (Fig. 5) abgeleitet wird. Das Taktsignal ck ist jedoch nur vorhanden, wenn der Kanalzusi.ind anzeigt, daß ein Datenbercich auf der Datcnviclfii^hleitung 4 vorhanden ist.
Nach Fig. 7 enthält die Steucrlogik zwei bistabile Schaltungen 110, 111 vom D-Typ. Die bistabile Schaltung 110 erzeugt, wenn sie gesetzt wird, ein Identifizier-Signal, das das Vorhandensein eines Identifizierbytes auf der Datenvielfachleitung 4 anzeigt. Die bistabile Schaltung 111 erzeugt, wenn sie gesetzt ist, ein Längen-Signal, das das Vorhandensein eines Längenbytes auf der Vielfachleiiung angibt.
Die bistabile Schaltung HO wird zu Beginn über ein ODER-Glied 112 durch ein DA-Beginn-Signal gesetzt, das aus dem Kanalzustand (F i g. 3) abgeleitet wird und das die Ankunft eines ersten Bytes in dem Datenbereich anzeigt, das -tets ein Identifizierbyte sein wird. Wie erläutert, weist das ODER-Glied andere Eingänge zum Setzen der bistabilen Schaltung 110 für nachfolgende Identifizierbytes auf. Die bistabile Schaltung 110 wird beim ersten Taktimpuls ck rückgesetzt, nachdem der Ausgang des ODER-Gliedes 112 auf »0« zurückkehrt.
Die bistabile Schaltung 111 nimmt das Identifizier-Signal aus der bistabilen Schaltung 110 auf und wird beim ersten Taktimpuls ck, der auf dieses Signal folgt, gesetzt, wenn nicht gleichzeitig ein Rücksetzsignal aufgenommen wird. Die bistabile Schaltung 111 wird beim ersten Taktimpuls ck rückgesetzt, nachdem das Identifiziersignal entfernt ist.
Nach F i g. 8 wird jedes Datenbyte auf der Datenvielfachleitung 4 einem Decodierer 113 aufgegeben, der so ausgelegt ist, daß er Bytes gleich 0. 1 und 2 zur Anzeige bringt. Der 0-Ausgang des Decodieren 113 wird in einem UND-Glied 114 mit dem Identifizier-Signal kombiniert, um eine bistabile Schaltung 100 zu setzen, die beim Auftreten einer Leer-Identifizierung ein Leer-Ausgangssignal erzeugt. In ähnlicher Weise wird der 1-Ausgang des Decodieren in einem UND-Glied 115 mit dem Identifizier-Signal kombiniert, um eine bistabile Schaltung 101 zu setzen, und ein Aufnahmepunkt-Ausgangssignal beim Auftreten einer Aufnahmepunkt-Identifizierung zu erzeugen. Die Signale »leer« und »Aufnahmepunkt« werden dem ODER-Glied 112 so aufgegeben, daß verhindert wird, daß die bistabile Schaltung 110 beim nächsten Taktimpuls riickgesetzt wird. Dies ist erforderlich, weil das nächste Byte, das auf eine Leer- oder Aufnahmepunkt-Identifizicrung folgt, stets ein anderes Identifizierbyte sein wird. Die Signale »leer« und »Aufnahmepunkt« werden nach einer Inversion auch liern Rücksetzeingang der bistabilen Schaltung 111 aufgegeben, so daß verhindert wird, daß diese bistabile Schaltung gesetzt wird, da ein Lecr-Fcld oder ein Aufnahmepunkt kein Längenbyte besitzt.
Der 2-Ausgang des Decodierers 113 wird in einem UND-Glied 116 mit dem Längen-Signal so kombiniert, daß eine bistabile Schaltung 102 gesetzt und ein Null-Ausgangssignal beim Auftreten eines Feldes mit einem Längenbyte gleich 2 (d. h. ein Nullfeld) erzeugt wird. Das Null-Signal wird auch dem ODER-Glied 112 aufgegeben, so daß die bistabile Schaltung 110 beim nächsten Taktimpuls ck. d. h. bei der Ankunft des nächsten Bytes, das das Identifizierbyte des auf das Nullfeld folgenden nächsten Feldes, ist. wieder gesetzt wird.
Nach F i g. 9 wird jedes Byte auf der Datenvielfachleitung 4 einer Vergleichseinrichtung 103 aufgegeben, wo es mit einem Schwcllwert im Bereich 240- 21H verglichen wird. Die Verglcichscinrichtiing hat zwei Ausgänge »nicht kleiner als« i:r.'l »gleich«. Der eine oder andere dieser Ausgänge wird durch ein Stcuerbii ausgewählt und einem UND-Glied 104 zusammen nut dem Identifizier Signal aufgegeben. Wenn das UND-Glied 104 wirksam gemacht ist, setzt es eine bistabile Schaltung 105, die ein Aiif/eii'hniinpscndc-Si^niil
erzeugt, das das Vorhandensein einer Ergänzungsidentifizierung anzeigt.
Der Schwellwert wird aus einem Speicher 106 mit direktem Zugriff erhalten, der durch die Kanalzahl adressiert ist, damit ein bestimmter Schwellwert für jeden Kanal gewählt wird. In ähnlicher Weise wird das Steuerbit aus einem Speicher 109 mit direktem Zugriff erhalten, der durch die Kanalzahl adressiert ist.
Im Betrieb füllt die Steuencrarbeitungseinrichtung den Speicher 109 mit Bits, um /u bestimmen, welcher Ausgang der Vergleichseinrichtung für jeden Kanal verwendet werden soll, und füllt den Speicher 106 mit den gewünschten Schwellwerten für jeden Kanal. Das Einstellen dieser Speicher bestimmt, welche Identifizierungen als Ergänzungsidentifiziemngen für jeden Kanal erkannt werden. Wenn beispielsweise der Schwellwert für einen bestimmten Kanal auf 248 gesetzt ist und der Ausgang »nicht kleiner als« für diesen Kanal gewählt wird, werden nur Identifizierungen im Bereich 248 — 255 als Ergänzungs-Ideniifizierungen erkannt und erzeugen ein Aufzeichnungsende-Signal.
Daraus ergibt sich, daß durch Veränderung der Inhalte der Speicher 106, 109 die Grenzen der Aufzeichnungen in der Einrichtung effektiv verändert werden können.
Nach F i g. 10 weist die Steuerlogik auch einen Zähler 117 auf, der durch das Identifizier-Signal auf Null gesetzt wird und mit einem Byte aus der Datenvielfachlcitung 4 durch das Längcnsignal vorbelastet wird. Der Zähler wird bei jedem Taktimpuls ck um eine Einheil verringert. Daraus ergibt sich, daß der Zähler 117 mit dem Längenbyte gefüllt und dann verringert wird, wenn aufeinanderfolgende Bytes des Feldes auftreten. Wenn der Zähler 117 somit einen Zählwert von 2 erreicht hat. muß das letzte Byte des Feldes auf der Datenvielfachlcitung vorhanden sein. Der Zählwert-2-Zustand wird durch einen Decodierer 118 zur Anzeige gebracht, es wird eine bistabile Schaltung 107 gesetzt und es wird ein Feldende-Ausgangssignal erzeugt. Das Fcldcnde-Signal wird dem ODER-Glied 112 aufgegeben, so daß die bistabile Schaltung 110 (Fig. 7) wiederum auf den nächsten Taktimpuls gesetzt wird, d. h. bei der Ankunft des nächsten Bytes, das das Identifizierbyte des nächsten Feldes sein wird.
Um eine Anpassung an die im Multiplcx-Bctricb bereitgestellten Daten auf der Datcnvicifachleilung 4 zu erhalten, werden die Inhalte des Zählers 117 in einem Speicher 108 mit direktem Zugriff am Ende einer jeden Gruppe von Bytes auf der Viclfachleitung gespeichert. Der Speicher 108 besitzt zwölf Speicherplätze und wird durch die Kanalzahl adressiert, so daß gewährleistet ist. daß die Inhalte des Zählers 117 für unterschiedliche Kanäle stets in getrennten Speicherplätzen gespeichert werden. Zu Beginn einer jeden neuen Gruppe von Bytes wird der Zähler mit dem Ausgang aus dem laufend adressierten Speicherplatz des Speichers vorbelastet. Nach F i g. 11 weist die Steucrlogik ferner einen anderen Zähler 119 auf. dessen Ausgang eine Byte-Adresse ergibt, die zur Adressierung der Schlüsselspeicher in den Vcrgleichseinrichtungcn 5 verwendet wird, die nachstehend beschrieben wird. Dieser Zähler wird mit einem Be/tigswcrt aus einem Speicher 120 mit direktem Zugriff gefüllt, wenn ein Identifi/ierSignal auftriti. Der Speicher 120 wird durch die Kanalzahl adressiert, so dall für unterschiedliche Kanäle verschiedene Bcvugswcrte verwendet werden können.
Weiterhin wird zur Anpassung an die im Multiplex-Itetrieb bereitgestellten Daten ein Speicher 121 mit direktem Zugriff, der durch die Kanalzahl adressiert ist, zur Speicherung der Inhalte des Zählers 119 am Ende einer jeden Gruppe von Bytes, sowie zum erneuten Füllen des Zählers 119 zu Beginn einer neuen Gruppe von Bytes vorgesehen. Nach Fig. 12 setzt das Aufnahmepur.kt-Signal eine bistabile Schaltung 122, die im Anschluß daran durch das nächste Aufzeichnungs-Signal rückgesetzt wird. Daraus ergibt sich, daß der gesetzte Ausgang der bistabilen Schaltung 122 die erste Aufzeichnung nach einem Aufnahmepunkt markiert.
Die Betriebsart des Systems wird durch ein Betriebsart-Signal gesteuert, das »1« ist, wenn der normale Betrieb gewünscht ist, und das »0« ist, wenn der Erinnerungsbetrieb erforderlich ist. Dieses Signal wird einem Register 124 abgeleitet, das eine Vielzahl von individuellen adressierbaren Bitspeicherplätzen besitzt, wobei einer dieser Speicherplätze durch die Kanalzahl ausgewählt wird. Daraus ergibt sich, daß einig, j Kanäle im Normalbetrieb arbeiten, während andere im Erinnerungsbetrieb arbeiten. Der Ausgang der bistabilen Schaltung 122 und das Betriebsart-Signal werden in einem ODER-Glied 125 kombiniert, so daß ein Signal besteht, das als das Erinnerungs-Signal bezeichnet wird. Dieses Signal zeigt den Vergleichseinnchtungen an, ob sie die Resultate der Vergleiche erinnern sollen oder nicht: Im Normalbetrieb ist das Erinnerungs-Signal stets »I«, was anzeigt, daß keine Erinnerung eintritt, während im Erinnerungsbetrieb das Erinnerungs-Signal »0« ist, mit Ausnahme für die erste Aufzeichnung nach einem Aufnahmepunkt, wenn, wie oben erwähnt, eine Erinnerung nicht erforderlich ist.
Die Steuerlogikschaltung nach den Fig. 7-12 enthält verschiedene bistabile Schaltungen MO1 111, 100, 101, 102, 105, 107 und 122, die eine Steuerinformation enthalten, die sich auf einen bestimmten Datcnkanal bezieht. Wegen des Multiplexbetriebes der Kanäle müssen die Zustän c Hjeser bistabilen Schaltung am Ende einer jeden Gruppe von Bytes aus einem bestimmten Kanal gespeichert werden und dann wieder mit Informationen gefüllt werden, die für den nächsten Kanal geeignet ist, und die auf der Viclfachleitung erscheint. Die Art und Weise, in der dies geschieht, ist in Fig. 13 gezeigt. Ein Speicher 126 mit direktem Zugriff besitzt zwölf Wortspeicherplätze, und zwar jeweils einen für jeden Kanal, die durch eine Kanalzahl adressiert sind. Wenn ein Ende-GOB-Signal auftritt, werden die Inhalte der bistabilen Schaltungen, auf die vorstehend Bezug genommen ist, in das laufend adressierte Wort des Speichers 126 eingeschrieben. Wenn in umgekehrter Weise ein St~rt-GOB-Signal auftritt, werden die Inhalte des laufend adressierten Wor'cs in die entsprechenden bistabilen Schaltungen vor dem Beginn des ersten Bytes in der Gruppe cingegattert. Nach Fig. 14 erzeugt eine Steuerlogik auch einen Satz von Taktsignalen, die als Takte I und 2 sowie Takte A. B. C bezeichnet sind. Die Takte I und 2 werden aus dem Grundtaktsignal ck mit Hilfe einer angezapften Verzögerungsleitung 127 abgeleitet, wobei die Verzögerung für den Takt 2 größer ist. Der Takt A wird von dem Takt 2 über ein UND-Glied 128 abgeleitet, das gesperrt ist. wenn das Längen-Signal vorhanden ist. Takt I) wird von dem Takt I über ein UND-Glied 129 abgeleitet, jedoch während der Aufnahme sowohl der Identifizier- als Länge-Bytes unterdrückt. Der Takt ('wird auch ίon dem Takt I über ein UND-Glied 130 abgeleitet, das nur wirksam gemacht wird, wenn das Länge-Signal vorhanden ist. Kin anderes Signal, das als das VorcinstcllSignal
030 11B'240
bezeichnet wird, wird von dem Takt I über ein UND-Glied 131 abgeleitet, das nur wirksam gemacht wird, wenn das Identifizier-Signal vorhanden ist.
Vergleichseinrichtungen
Die Fig. 15 und 16 zeigen eine der Vergleichseinrichtungen 5 im Detail. Nach Fig. 15 weist jede Vergleichseinrichtung einen Speicher 230 mit direktem Zugriff auf, der als Schlüsselspeicher bezeichnet ist und der die Schlüsselwerte für den Vergleich mit den einkommenden Daten auf der Vielfachleitung 4 aufnimmt. Jeder Srhlüsselspeicher nimmt 256 Bytes auf und wird von der Byte-Adresse aus der Steuerlogik adressiert. Das Format eines Schlüsselwertes im Schlüsselspeicher ist identisch mit dem eines Datenfeldes nach Fig. 6, d.h. es weist ein Identifizierbyte, ein Längenbyte und einen Wertteil veränderlicher Länge auf. Jeder Schlüssc-lspeicher kann verschiedene solcher Schlüsselwer*e enthalten, jeder Schlüsselweri ist in sequentielle!! Byte-Speicherplätzen innerhalb des Schlüssclspeichers gespeichert, wobei mit einer Bezugswertadresse begonnen wird, die einer der Bezugswertadressen entspricht, die in dem Bezugswertspeicher 120 (Fig. 11) gehalten werden.
Wenn somit ein Datenfeld über die Datenvielfachleitung 4 aus einem bestimmten Kanal ankommt, wird ein Schlüsselwert entsprechend dem Kanal aus dem Schlüsselspeicher in jeder Vergleichseinrichtung (und zwar ein Byte gleichzeitig) mit dem Datenfeld ausgerichtet ausgelesen, d. h., daß das Identifizierbyte des SchlUsselwertcs zur gleichen Zeit ausgelesen wird wie das Identifiziert)) /e des Datenfeldes auf der Vielfachleitung erscheint,osw.
Jede Vergleichseinrichtung ei hält einen anderen ähnlichen Speicher 229 mit direktem Zugriff, der als Maskenspeicher bezeichnet wird und der auch durch die Byte-Adresse adressiert wird. Der Ausgang dieses Speichers ist in einem Satz von UND-Gliedern 228 mit dem Datenbyte auf der Vielfachleitung 4 kombiniert, und das Ergebnis wird einem Eingang einer Vcrgleichscinrichtung 231 aufgegeben, deren anderer Eingang das Ausgangsbyte aus dem Schlüssclspcichcr 230 aufnimmt. Der Maskcnspcichcr ergibt somit die Möglichkeit, ausgewählte Teile eines Datenfeldes abzudecken, d. h. zu ignorieren.
Im Betrieb können der Schlüssclspcichcr und der Maskenspeicher auf den neuesten Stand gebracht werden, wie dies durch die Steucrvcrarbeiiungseinrichtung gefordert wird. Die Vcrglcichscinrichtung 231 vergleicht die beiden Eingangsbytes miteinander und erzeugt eines von drei Ausgangssignalcn, je nachdem, ob das erste Eingangsbyte größer, kleiner oder gleich dem anderen Byte ist.
Nach Fig. 16 wird zu Beginn eines jeden Datenfeldes cine bistabile Verriegelung 232 durch das Vorcinstcll-Signal eingestellt. Gleichzeitig wird das Identifizierbyte des Feldes mit dem entsprechenden Byte des Schlüsselwertes vergleichen. Wenn die beiden Bytes ungleiche Werte haben, wird ein NAND-Glied 227 beim Takt A durch den inverscn Wert des Gleichheils-Ausganges der , Vcrgleichseinrichtung 231 wirksam gemacht und bewirkt, daß die Verriegelung 212 rückgesetzt wird Sie bleibt dann rückgesetzt bis zum Beginn des nächsten Feldes und dies beendet effektiv den Vergleich fiir das vorhandene Feld. ,
Nimmt man jedoch an. daß das Ideniifi/ierbyle übereinstimmt, bleibt die Verriegelung 232 gesetzt und der Vergleich wird fortgesetzt. ; J;is Lange Hvtc wird ignoriert, da der Takt A unterdrückt wird; wenn aber ein Byte im Wertteil des Feldes nicht mit dem entsprechenden Byte im Schlüsselwert übereinstimmt, wird die Verriegelung 232 beim Takt A rückgesetzt. Bevor dies
ι jedoch eintritt, wird der Ausgang der Vergleichseinrichtung (größer oder kleiner als) durch den Takt B über NAND-Glieder 233 und 234 in eine der beiden bistabilen Verriegelungen 235 und 236 eingeführt. Wenn andererseits keine ungleichen Werte während des
ι Vergleichsvorganges auftreten, bleibt die Verriegelung 232 bestehen, und der Ausgang der Vergleichseinrichtung wird »gleich«, wenn das Ende des Feldes auftritt. Dies ergibt das Wirksammachen eines anderen NAND-Gliedes 237, wodurch eine andere Verriegelung
■ 238 gesetzt wird. Die drei Verriegelungen 235, 236 und 238 werden gemeinsam als die Feldverriegelungen bezeichnet und sind alle zu Beginn dr.r ersten Aufzeichnung rückgesetzl und zum Ende jeder Aufzeichnung fertig für den Beginn der nächsten Aufzeich-
> nung.
Da die Takte A und B beide während der Aufnahme des Länge-Bytes L eines jeden Feldes unterdrückt sind, wird dieses Byte effektiv für die Vergleichszwecke ignoriert und kann die Verriegelungen 232,235,236 und
: 238 nicht beeinflussen.
Nachstehend wird die Arbeitsweise der Verglcichseinrichtung, soweit sie bisher beschrieben wurde, wie folgt zusammengefaßt: Bei jedem Datenfeld wird zu Beginn das Identifizierbyte mit dem des gespeicherten
ι Schlüsselwortes verglichen. Dies wird für jedes Feld in der Aufzeichnung wiederholt. Am Ende der Aufzeichnung bleiben somit, wcnnn keines der Felder in der Aufzeichnung eine Identifizier-Anpassung ergeben hat. alle ungesetzt. Dieser Zustand gibt somit an, daß die Art des in Frage kommenden Feldes in der Aufzeichnung nicht vorhanden ist. Wenn jedoch eines der Felder (mit Ausnahme eines Null-Feldes) eine Identifizier-Anpassung ergibt, wird der Wertteil dieses Feldes mit dem des Schlüssclwercs verglichen. Das Resultat wird in den Feldverriegelungen gespeichert und verbleibt dort bis zum Ende der Aufzeichnung.
Die Länge eines jeden Fcldvcrglciches (d. h. die Anzahl von Bytes, die von dem Schlüssclspeichcr zum Vergleich mit dem Datenfeld ausgelesen werden) wird durch das Länge-Byte /. des Datenfeldes bestimmt, da dieses Byte festlegt, wann das Ende des Fcldsignals erzeugt wird. Wenn beispielsweise der Schlüssclwcrt im Schlüssclspeichercinc Länge von acht Bytes hat, und die Länge des Datenfeldes nur sechs Bytes beträgt, werden nur die ersten sechs Bytes des Schlüsselwortes zum Vergleich herangezogen und die beiden übrigen vernachlässigt.
Eine weitere Verriegelung 239 ist den Fcldverricgelungcn zugeordnet. Die Verriegelung 239 wird ebenfalls am finde einer jeden Aufzeichnung rückgesetzl. und beim Auftreten eines Nullfcldcs mit einer identifizie rung / gesetzt, die der des Auswahlschlüssels angepaßt ist. Dies wird durch ein NAND-Glied 240 erreicht, das den gesetzten Ausgang der Verriegelung 222, den Takt C. und das Null-Signal aus der Stcuerlngik aufnimmt.
Die Inhalte der verschiedenen Verriegelungen 212, 215, 236, 238 und 219 in der Vcrgleichseinrichtung werden in einer Speicheranordnung mit direktem Zugriff ähnlich der nach Fig. I j am Ende einer jeden Gruppe von Bytes gespeichert und /u Beginn einer jeden neuen Gruppe umgeladen.
Wenn die Verriegelung 239 rückgcset/.t wird, werden drei UND-Glieder 241. 242 und 241 wirksam gemacht.
die den Ausgang der Feldverriegelungen mit dem Dateneingang eines Speichers 244 mit direktem Zugriff verbinden. Der Speicher 244 weist zwölf jeweils drei Bits umfassende Wortspeicherplätze auf und wird durch die Kanalzahl adressiert. Der Ausgang aus dem laufend adressierten Wort dieses Speichers wird der Suchauswerteinrichtung aufgegeben und stellt die Resultate des durch die Vergleichseinrichtung durchgeführven Vergleiches dar.
Der Schreibfreigabeeingang des Speichers 244 ist mit dem Ausgang eines UND-Gliedes 247 verbunden; ein Eingang dieses UND-Gliedes 247 nimmt das Aufzeichnungs-Ende-Signal aus der Sieuerlogik auf, und der andere Eingang den Ausgang eines ODER-Gliedes 248. Das ODER-Glied besitzt fünf Eingänge, von denen vier mit den »gesetzten« Ausgängen der drei Feldverklinkungcn und der Klinke 239 verbunden sind, während das fünfte das Erinnerungs-Signal aus der Steuerlogik aufnimmt. Der Ausgang des Gliedes 247 ergibt nach der Inversion auch ein Signal /um Rücksetzen der Verklinkungen 235, 236. 238 und 239 am ~nde einer jeden Aufzeichnung.
Nachstehend wird nun die Arbeitsweise der Vergleichseinrichtung in den beiden Betriebsarten beschrieben. _
Im normalen Betrieb ist Erinnerung stets gleich »I«. Somit ist der Ausgang aus dem ODER-Glied 248 stets »I«, und damit wird das UND-Glied 247 am Ende einer jeden Aufzeichnung wirksam gemacht, so daß ein Schreibfreigabesignal im Speicher 244 aufgegeben wird. Da keine Null-Felder bei dieser Betriebsart verwendet werden, bleibt die Verklinkung 239 rückgesetzt und macht die UND-Glieder 241, 242 und 243 wirksam. Daraus ergibt sich, daß bei dieser Betriebsart der Speicher 244 am Ende einer Aufzeichnung dadurch auf den letzten Stand gebracht wird, daß die Inhalte der Feldverklinkungen in ihn übertragen werden.
Beim Erinnerungsbetrieb ist für die erste Aufzeichnung nach "iner Aufnahmestelle Erinnerung wiederum gleich »1«. so daß der Speicher 244 in normaler Weise auf den letzten Stand gebracht wird. Für nachfolgende Aufzeichnungen wird jedoch Erinnerung »0«. Wenn eine Anpassung für die Identifizierbytes eines der Felder in einer solchen nachfolgenden Aufzeichnung erhallen wird, wirr1 eine dei' Verklinkungen 235, 236, 238 (oder die Null-Vcrklinkung 239, wenn das Feld eine Null ist) gesetzt, und damit wird das ODER-Glied 248 wirksam gemacht. Auf diese Weise wird der Speicher 244 am Ende der Aufzeichnung -liif den letzten Stand gebracht (im Falle eines Null-Feldes werden die UND-Glieder 241—243 unwirksam gemacht und der Speicher 244 wird durch Nullen auf den letzten Stand gebracht, wodurch angezeigt wird, dali das in Frage kommende feld »nicht vorhanden« ist). Wenn andererseits keine Identilizicranpassung während der Abtastung der Aufzeichnung erhalten wird, bleiben die Fcldverklinklingen und die Null-Verklinkung rückgesetzt und deshalb werden das ODF.R-Glicd 248 und infolgedessen das UND-Glied 247 unwirksam gemacht. Daraus ergibt ■,ich. dal) der .Speicher 244 nicht iiiif den letzten Stand gebracht wird, sondern das Resultat des Vergleiches aus der vorausgehenden Aufzeichnung beibehält. Der Ausgang der Vcrgleidiseinrichtung ist. wie sich durch die Suchauswerteiiiriehtung ergibt, genau der gleiche, .ils ob das IcId. das die Idcniifi/ieranpassung in einer vorausgehenden Αιι(/ιί timing erzeugt hat, in der nachfolgenden Aufzeichnung wiederholt worden wäre.
Daraus eruiht si; h. il.ill die Vi iv. enduni! des »Erinnerungw-Betriebes ermöglicht, daß eine Datei, die in der in Verbindung mit den Tabellen 2 und 4 beschriebenen Weise komprimiert worden ist, die gleichen Resultate aus einer assoziativen Suchoperation "> ergibt, als ob die nichtkomprimierte Form nach den Tabellen I und 3 vorliegen würde.
Das System ergibt auch die Möglichkeit des Vergleiches zweier Datenfelder mit unterschiedlichen Identifizierbytes, die in der gleichen Aufzeichnung κι auftreten. Diese Möglichkeit kann beispielsweise bei einem Kreditdateisystem verwendet werden, um die laufenden Gesamtausgaben eines jeden Kunden mit seiner persönlichen Kreditgrenze zu vergleichen. Diese Möglichkeit wird als Substitutionssuclibetrieb bezeichi) net und verwendet ein Paar von Vergleichseinrichtungen, die nachstehend als Vergleichseinrichtungen A und Sbczeichnet werdenderen Schlüsselspeicher zu Beginn mit den Identifizierbytes der beiden Felder, die miteinander verglichen werden solle1" gefüllt sind,
'ο Der Siibstiuitionssuchbetrieb wir·..' durch eine logische Schaltung gesteuert, die den beiden Vergleichseinrichtungen A und B zugeordnet und in Fig. 17 gezeigt ibt. Zweckmäßigerweise sind diese logische Schaltung und die beiden Vergleichseinrichtungen auf der gleichen ji Schalttafel angeordnet.
Nach Fig. 17 enthält die Substitutionssuchlogik ein Paar bistabiler Schaltungen 250 und 251 vom D-Typ, die beide durch den Ausgang eines UDN-Gliedes getaktet sind, welches das Länge-Signal und den Takt I in aufnimmt. Die bistabile Schaltung 250 nimmt als Eingang den gesetzten Ausgang der bistabilen Schaltung 232 (F ig. 16) in der Vergleichseinhcit A auf; dieses Signal wird als »vorhanden (A)«bezeichnet. In ähnlicher Weise nimmt die bistabile Schaltung 251 den cntsprei-i chenden Ausgang »vorhanden (B)« aus der Vcrgleichseinheit Sauf.
Der Substitutionssuchbetrieb wird durch ein Substitutions-Signal eingeleitet, das den beiden UND-Gliedern 253, 254 zusammen mit dem Takt B aufgegeben wird, ι» Dir UND-Glieder 253, 254 nehmen auch die gesetzten Ausgänge der bistabilen Schaltungen 250, 251 auf. Die Ausgänge dieser UND-Glieder sind Signale, die als Schreibsteucr-Signal (B) und Schreibstuer-Signal (A) bezeichnet werden.
r, Nach Fig. 18 wird das Schreibstcuer-Signal (A) einem NOR-Glied 255 aufgegeben, dessen Ausgang dem Schreibstcuer-Anschluß WH des Schlüsselspeichcrs 230 der Einheit A aufgegeben wird. Dies ermöglicht, daß Daten in den Speicher aus der .(i Datenvielfachleitur.g 4 über ein ODER-Glied 256 eingeschrieben werden (der andere Eingang zu.η NOR-Glied 255 ist ein Änderungs-Signal, das verwendet wird, wenn der Speicher aus der Stcuervcrarbeitungscinrichtung auf den neuesten Stand gebracht v. werden soll, wobei die Daten zum Fortscnalten des Speichers dem ODER-Glied 256 über einen Pfad 257 aufgegeben werden, wenn keine Daten auf der Datenvielfachleitu^g 4 vorhanden sind). Das Schrcibsteucr-Signal (B) wird dem Schlüssclspcichcr der .,,ι Fiinhcit //in ähnlicher Weise aufgegeben.
Nach Fig. 17 werden die Ausgange der bistabilen Schaltungen 250, 251 entsprechenden NAND -Gliedern 258, 259 ebenfalls aufgegeben, von denen jedes auch das Substitutions-Signal und das Vorcinstcll-Signal aiif-, nimmt. Die Ausgänge der Glieder 258, 259 werden einsprechenden bistabilen Schaltungen 260, 261 vom D-Typ aufgegeben, deren Ausgänge wiederum den '-•ntsnrechenden NOR-Gliedern 262. 26.3 zin'eliihn
werden. Diese NOR Glieder nehmen auch einen Hingang aus einem UND-Glied 264 auf. dem als Eingänge das SubstilulionsSignal. das I.iingc-Signal. Takt 2 und die inversen Werte der Ausgänge der bistabilen Schaltungen 260. 261 aufgegeben werden. Die Ausgänge der NOR-Glieder 262, 263 werden den Rücksatzeingängen der bislabilen Schaltungen 212 (E" ig. 16) in den Fjnheiten A und öatifgegeben.
Die Arbeitsweise des Systems in der Substitutionssuehbetriebsart wird nachstehend beschrieben. Zu Beginn jeder Aufzeichnung werden alle bislabilen Schaltungen 250, 251, 260 und 261 durch den inversen Weil des Aufzeichnungs-Fnde-Signak rückgeset/t.
Ils sei angenommen, daß eine Idcntifi/icranpassung zuerst durch die Einheit A angezeigt wird. Dies ergibt, daß die bistabile Schaltung 250 bei Takt 1 in dem folgenden Länge Byte gesetzt wird. Das UND-Glied 253 wird somit wirksam gemacht und erzeugt eine Folge von Schrcibstcuer-fUJ-Signalen und zwar jeweils eines bei jedem Takt B-Impuls, wodurch der Wertteil des Datenfeldes von der Datcnvielfachleitung 4 in den Schlüssclspcichcr der f-'inheit ßeingeschrieben wird. Da beide bistabilen Schaltungen 260 und 261 rückgcset/t sind, wird das UND-Glied 264 bei Takt 2 während des Länge-Bytes wirksam gemacht: dadurch werden die NOR-Glieder 262 und 263 wirksam gemacht und damit wird die bistabile Schaltung 232 in der Einheil A rückgesetzt. Damit werden alle weiteren Vergleiche in der Einheit A während dieses [Datenfeldes gesperrt. Zu Beginn des nächsten Datenfeldes wird ein Voreinstcll-Signal den Gliedern 258, 259 aufgegeben und da die bistabile Schaltung 250 an dieser Stelle noch gesetzt ist. wird das Glied 258 wirksam gemacht und die bistabile Schaltung 260 gesetzt und bleibt bis zum Ende der Aufzeichnung gesetzt. Das Glied 262 wird deshalb wirksam gemacht und sperrt alle weiteren Identifizieranpassungen in der Einheit A bis zum Beginn der nächsten Aufzeichnung. Die bistabile Schaltung 250 wird beim nächsten Takt-t-lmpuls rückgesetzt und verhindert die Erzeugung weiterer Schreibfrcigabe(B)-Signale.
Es sei nun angenommen, daß eine Identifizicranpasiung durch die Einheit B für ein nachfolgendes Datenfeld in der gleichen Aufzeichnung angezeigt wird. Es wird deshalb ein Vergleich zwischen dem in dem Schlüsselspeicher in der Einheit B gespeicherten Feldwert und dem Wertteil dieses darauffolgenden Datenfeldes gemacht, und das Resultat dieses Vergleiches wird in den Feldverriegelungen der Einheit B in normaler Weise gespeichert.
Wenn die ldentifiz.ieranpassung in der Einheit B angezeigt wi:d. wird die bistabile Schaltung 251 gesetzt und bewirkt, daß Schreibfreigabe-(A)-Signale erzeugt werden, so daß der zweite Feldwert in den Speicher der Einheit A eingeschrieben wird. Dies geschieht jedoch nur. um die Symmetrie der Schaltung zu wahren, und der gespeicherte Wert wird in Wirklichkeit nicht durch die Einheit A benutzt, da diese Einheit nun an der Durchführung weiterer Vergleiche gehindert ist. Die bistabile Schaltung 261 wird am Ende des Feldes gesetzt und ein Rücksetz-(B)-Signal. das alle weiteren Vergleiche in der Einheit B bis zum Ende der Aufzeichnung sperrt, erzeugt.
Somit wird am Ende der Aufzeichnung der Speicher 244 der Einheit A (der ersten Einheit, die eine Idcntifi/icranpassung erhält) mit einer »Nicht vornan den«-Anzeige (d. h nur Nullen) auf den neuesten Slam: gebracht, während der Speicher 24 der Einheit B mn dem Ergebnis des Vergleiches der beiden Feldwerte aul den letzten Stand gebracht wird. Diese Speicher stehen dann für die .Suchauswerieinrichiung in der vorbeschriebenen Weise zur Verfügung.
Da die Schaltung nach F i g. 17 in bezug auf die [jnhcil A und die F.inhcit B symmetrisch ist. würde ein ähnliches Ergebnis erzielt werden, wenn die (jnhcil /: die erste F.inheil zur Erzielung einer Identifi/icranpav sung wäre. In diesem lalle gibl die F.inheil /idie »Nicht vorluinden«-An/eige und die Einheit A ergibi das Ergebnis des Wcrtfeldvergleichcs.
In Übereinstimmung mit dem Multiplexbetrieb der Daten, werden die Inhalte der Verriegelungen 250, 251, 260 und 261 in einem Speicher mit direktem Zugriff am Ende einer jeden Gruppe von Bytes in ähnlicher Weise wie in Verbindung mit E-" i g. 13 beschrieben gespeichert
In der E'raxis ist die Zeitschaltung der Vergleichsein richiiingcn und der zugehörigen Logik um ein Byte in bezug auf die der Multiplexereinrichtung verzögert, damit Verzögerungen in der .Signallaufzeit usw. möglich sind. Somit müssen die Steuersignale Kanalzahl. GOH-Bcginn und GOB-Fnde, die von der Multiplexer einrichtung zu diesen anderen Einrichtungen gelangen, um diesen Wen verzögert werden. Wegen der Verzögerungen im Vergleich stellt man ferner fest, dal) die iiem Speicher 244 (F ig. Ib) aufgegebene Kanalzahl um etwa I'/.' Bytes verzögert werden soll.
Eine Darstellung der Verwendung der Schlüssclspcichcr in den Vcigleichseinrichtungcn wird nachstehend in Verbindung mit F-" i g. 19 gegeben. In dieser Figur sind die .Schlüsselspeicher der sechzehn Vcrgleichseinrichtungen seitlich nebeneinander dargestellt, und jede Spalte stellt einen Schlüsselwcrt dar. Es sei angenommen, daß Information aus vier Dateien verarbeitet werden soll, wobei jede Datei einen unterschiedlichen Satz von Schlüssclwertcn besitzt. Es werden deshalb vier Bezugswerte DQ-Di in den Bezugsspeicher 120 (Fig. II) eingegeben. Diese Werten unterteilen die Schlüsselspeicher in vier Bereiche (nicht notwendigerweise gleicher Größe), und zwar jeweils einen für jede Datei, wie in Fig. 19 gezeigt. Jeder Schlüsselspcicher kann deshalb vier Schlüsselwerte aufnehmen (jedes kleine Rechteck in Fig. 18 stellt den für einen Schlüsselwert zur Verfügung stehenden Bereich dar).
Zusätzlich zu der vorerwähnten »horizontalen« Unterteilung der Schlüsselspeicher können die Vergleichseinrichtungen auch als »vertikal« in Gruppen unterteilt angesehen werden. Bei diesem Beispiel werden die Einrichtungen in vier Gruppen von jeweils vier unterteilt, wie dies durch die dicken vertikalen Linien dargestellt ist. Jede Gruppe von Vergleichseinrichtungen kann dann einer getrennten Suchausgabe in den gleichen Dateien zugewiesen werden. Daraus ergibt sich, daß bei diesem Beispiel die horizontale und vertikale Unterteilung miteinander ermöglicht, daß sechzehn getrennte Suchaufgaben gleichzeitig, und zwar jeweils vier Aufgaben für jede Datei, durchgeführt werden können.
Die Unterteilung der Vergleichseinrichtungen in Gruppen wird durch die Art und Weise bestimmt, in der die Suchauswerteinrichtung die Ergebnisse aus den Vergleichseinrichtungen verarbeitet.
Hierzu 10 Blatt Zeichnungen

Claims (3)

Patentansprüche:
1. Datenverarbeitungseinrichtung mit einem Speicher, der eine Folge von komprimierten Aufzeichnungen aufnimmt, deren jede wenigstens ein ι Datenfeld besitzt, welches aus einem Identifizierteil und einem Wertteil besteht, wobei die Aufzeichnungen sequentiell durchsucht werden, um die Datenfelder zu finden, deren Identifizierteile einen vorbestimmten Wert haben um einen Vergleich des in Wertteiles eines jeden Datenfeldes mit einem Schlüssel durchzuführen und das Vergleichsergebnis in einen Resultatenspeicher zu leiten, gekennzeichnet durch die Kombination folgender Merkmale: r,
a) ein Flipflop (232) wird zu Beginn eines jeden Datenfeldes gesetzt und bleibt gesetzt, solange das Wertteil mit dem Schlüssel übereinstimmt,
b) das FJinflop (232) läßt nur in gesetztem Zustand .ti die Übernahme des Vergleichsergebnisses in den Resultatspeicher(235,236,238) zu,
c) eine logische Schaltung (247, 248) steuert die Übernahme des im Resullatspeicher stehenden Vergleichsergebnisses zum Aufzeichnungsende -'■ in einen Speicher (244) dann, wenn wenigstens einer der Resultatsspcicher-Flipflops (235 oder 236 oder 238) ein Vergleichsresultat (>, =, <) beinhaltet; sie verhindert die Übernahme dann, wenn in keinem dieser Flipflops ein Vergleichs- "' ergcbni?- steht, was im Falle des Fehlens eines Datenfeldes auf Grund der komprimierten Aufzeichnung auf,ritt, unc
d) beim Vorliegen einer komprimierten Aufzeichnung bleibt das Vcrglcichse.gebnis der vorher- '' gehenden Aufzeichnung im Speicher (244) erhallen.
2. Einrichtung nach Anspruch
zeichnet, daß
, dadurch gckcnn-
a) der Speicher (t) spezielle Steuerfelder enthält, die als Aufnahmcslcllcn bezeichnet werden und die benachbarte Gruppen von Aufzeichnungen (rennen,
b) daß ein Flipflop (122; Fig. 12) vorgesehen ist, das gesetzt wird, wenn eine Aufnahmcstcllc angezeigt wird, und das am Ende der ersten Aufzeichnung, die auf die Aufnahmcstcllc folgt, rückgesetzt wird.
c) daß das Flipflop (122) nach dem Setzen die logische Schaltung (247, 248) so beaufschlagt, daß der Inhalt des Resultatsspeichers (235, 236. 238) in den Speicher (244) am Ende der Aufzeichnung eingeführt ist. gleichgültig, ob die Flipflops (235. 236, 238) des Resultatsspcichcrs ein Vergleichsrcsultat enthalten oder nicht,
d) so daß die Aufnahmestclle auf diese Weise eine entsprechende Startslcllc für das Auslesen komprimierter Daten bildet.
3. Einrichtung nach Anspruch I1 dadurch gekennzeichnet, daß
a) der Speicher (I) spezielle Steuerfelder enthüll, die hIs Nullfcldcr bezeichnet werden, deren jedes aus einem Identifizierten, jedoch aus kciicm Wertteil besteht.
b) daß ein Flipflop (239, Fig. 16) gesetzt wird, wenn ein Nullfeld angezeigt wird, dessen Identifizierteil den vorbestimmten Wert hat,
c) daß das Flipflop (239) mit der logischen Schaltung (247, 248) und mit einer weiteren logischen Schaltung (241,243) so verbunden ist, daß Nullen in den Speicher (244) am Ende der Aufzeichnung eingeschrieben werden, wenn das Flipflop (239) gesetzt ist, und
d) daß diese Nullen anzeigen, daß kein Resultat für die in Frage kommende Aufzeichnung vorhanden ist.
DE2547035A 1974-10-29 1975-10-21 Datenverarbeitungseinrichtung Expired DE2547035C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB46651/74A GB1492260A (en) 1974-10-29 1974-10-29 Data processing systems

Publications (3)

Publication Number Publication Date
DE2547035A1 DE2547035A1 (de) 1976-05-06
DE2547035B2 true DE2547035B2 (de) 1980-04-10
DE2547035C3 DE2547035C3 (de) 1980-12-11

Family

ID=10442072

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2547035A Expired DE2547035C3 (de) 1974-10-29 1975-10-21 Datenverarbeitungseinrichtung

Country Status (6)

Country Link
US (1) US4064489A (de)
DE (1) DE2547035C3 (de)
FR (1) FR2289961A1 (de)
GB (1) GB1492260A (de)
HU (1) HU175241B (de)
ZA (1) ZA755134B (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5362945A (en) * 1976-11-17 1978-06-05 Toshiba Corp Disc address system
US4153943A (en) * 1977-08-12 1979-05-08 Honeywell Inc. High speed I/O for content addressable type memories
US4188669A (en) * 1978-01-13 1980-02-12 Ncr Corporation Decoder for variable-length codes
US4228501A (en) * 1978-06-21 1980-10-14 Data General Corporation Data transfer technique for use with peripheral storage devices
US4285049A (en) * 1978-10-11 1981-08-18 Operating Systems, Inc. Apparatus and method for selecting finite success states by indexing
US4296475A (en) * 1978-12-19 1981-10-20 U.S. Philips Corporation Word-organized, content-addressable memory
US4748589A (en) * 1979-09-06 1988-05-31 Sharp Kabushiki Kaisha Electronic translator
GB2060226A (en) * 1979-10-02 1981-04-29 Ibm Data compression-decompression
US4418275A (en) * 1979-12-07 1983-11-29 Ncr Corporation Data hashing method and apparatus
US4464719A (en) * 1979-12-28 1984-08-07 Chevron Research Company Off-line method of depicting piping items of pipe specification files of a computer-aided graphics system, without duplications occurring
US4449233A (en) 1980-02-04 1984-05-15 Texas Instruments Incorporated Speech synthesis system with parameter look up table
WO1981003560A1 (en) * 1980-06-02 1981-12-10 Mostek Corp Data compression,encryption,and in-line transmission system
JPS58501695A (ja) * 1981-10-05 1983-10-06 デイジタル イクイプメント コ−ポレ−シヨン ドライブとコントロ−ラの間で直列通信を使用する二次記憶装置
US4545032A (en) * 1982-03-08 1985-10-01 Iodata, Inc. Method and apparatus for character code compression and expansion
US4937779A (en) * 1983-01-20 1990-06-26 Canon Kabushiki Kaisha Information retrieving apparatus capable of rearranging information stored in memory
US4825403A (en) * 1983-05-16 1989-04-25 Data General Corporation Apparatus guaranteeing that a controller in a disk drive system receives at least some data from an invalid track sector
SE8302786L (sv) * 1983-05-18 1984-11-19 Satt Electronics Ab Radar
US5202979A (en) * 1985-05-08 1993-04-13 Thinking Machines Corporation Storage system using multiple independently mechanically-driven storage units
US4803651A (en) * 1986-02-10 1989-02-07 Ibm Corporation Method for encoding and decoding acyclic, linked-list data structures for efficient storage, retrieval and searching
US5532694A (en) * 1989-01-13 1996-07-02 Stac Electronics, Inc. Data compression apparatus and method using matching string searching and Huffman encoding
US5146221A (en) * 1989-01-13 1992-09-08 Stac, Inc. Data compression apparatus and method
US5313604A (en) * 1990-11-13 1994-05-17 Hewlett-Packard Company Method for locating compressed data in a computed memory back up device including steps of refining estimater location
US5245337A (en) * 1991-05-29 1993-09-14 Triada, Ltd. Data compression with pipeline processors having separate memories
US5592667A (en) * 1991-05-29 1997-01-07 Triada, Ltd. Method of storing compressed data for accelerated interrogation
US5572637A (en) * 1994-06-30 1996-11-05 International Business Machines Corporation Process for merging CAD vector files and automatically removing duplicate and obsolete patterns
GB2310055A (en) * 1996-02-08 1997-08-13 Ibm Compression of structured data
GB2387089B (en) * 2002-03-28 2004-12-22 Matsushita Comm Ind Uk Ltd Improved carryout word calculation for cyclic shift registers
US20080082455A1 (en) * 2006-09-29 2008-04-03 Yigang Cai System and method for communicating charging data records
US11070860B2 (en) 2013-02-14 2021-07-20 Comcast Cable Communications, Llc Content delivery
US10440499B2 (en) * 2014-06-16 2019-10-08 Comcast Cable Communications, Llc User location and identity awareness
US10045090B2 (en) 2014-08-11 2018-08-07 Comcast Cable Communications, Llc Merging permissions and content access
CN113094292B (zh) 2020-01-09 2022-12-02 上海宝存信息科技有限公司 数据存储装置以及非挥发式存储器控制方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3651483A (en) * 1969-01-03 1972-03-21 Ibm Method and means for searching a compressed index
US3541529A (en) * 1969-09-22 1970-11-17 Ibm Replacement system
US3717851A (en) * 1971-03-03 1973-02-20 Ibm Processing of compacted data
US3848235A (en) * 1973-10-24 1974-11-12 Ibm Scan and read control apparatus for a disk storage drive in a computer system

Also Published As

Publication number Publication date
GB1492260A (en) 1977-11-16
FR2289961B1 (de) 1981-05-22
FR2289961A1 (fr) 1976-05-28
DE2547035C3 (de) 1980-12-11
HU175241B (hu) 1980-06-28
AU8380275A (en) 1977-02-10
US4064489A (en) 1977-12-20
ZA755134B (en) 1976-07-28
DE2547035A1 (de) 1976-05-06

Similar Documents

Publication Publication Date Title
DE2547035B2 (de) Datenverarbeitungseinrichtung
DE2346525B2 (de) Virtuelle Speichereinrichtung
DE2521436B2 (de) Informationswiedergewinnungsanordnung
DE2528287A1 (de) Gemeinsam gesteuerter rahmendetektor fuer eine zeitmultiplexanlage
DE1499225B2 (de) Schaltungsanordnung zur reduzierung von datenwortlaengen
DE3126363A1 (de) Verfahren und vorrichtung zur steuerung einer datenuebertragung mit direktem speicherzugriff
DE2150751A1 (de) Digitaler Sinus-Kosinus-Generator
DE2814415A1 (de) Digitale verbindungseinheit fuer eine multiplexanlage mit verschiedenen bitraten
DE1271191B (de) Einrichtung zur UEbertragung von Informationseinheiten in die Binaerstellen eines Umlaufspeichers
DE2133638C3 (de) Verfahren zum Betrieb eines lernfähigen Systems aus in Kaskade geschalteten, zur nicht linearen Datenverarbeitung geeigneten lernfähigen Datenverarbeitungseinheiten
DE1774943B2 (de) Dateneingabeeinrichtung Ausscheidung aus 1474025
DE1954202B2 (de) Elektronische digitale Datenverarbeitungsanordnung
DE2535786C3 (de) Einrichtung zur Erzeugung eines digitalen Kodewortes zur Kennzeichnung eines Schalters in einer Schalteranordnung
DE2713390A1 (de) Zeitkompressions-system
DE2547052C3 (de) Datenverarbeitungseinrichtungen
DE2715430A1 (de) Datensequenz-wiedergabesystem und zeitkompressions-system fuer dasselbe
DE2529420C3 (de) Schaltungsanordnung zur automatischen fernmündlichen Auskunft
DE2547031C3 (de) Datenverarbeitungseinrichtung
DE1965507A1 (de) Verfahren zum Wiederauffinden gespeicherter Informationen
DE2062164A1 (de) Verfahren zur Erzeugung eines mehr stufigen Index für gespeicherte Daten einheiten
DE3100934A1 (de) Verfahren zur erzeugung einer seriellen tastenimpulsinformation mit einer ersten abtastwiederholfrequenz in abhaengigkeit von einer asynchron mit einer zweiten abtastwiederholfrequenz erzeugten seriellen multiplex-tasten-impulsformation sowie schnittstelleneinrichtung zur durchfuehrung des verfahrens
DE1236578C2 (de) Einrichtung zur Schraeglaufkompensation
DE2615555C2 (de) Schaltung zur Übertragung von Zeichen zwischen einer Rechenanlage und einem von mehreren Leitungsvorsatz-Geräten mit einem Zwischenspeicher zur Serien-/Parallel- bzw. Parallel-/Serien-Umsetzung
DE2200744A1 (de) Verfahren und Vorrichtung zum Aussortieren
DE3432837A1 (de) Datenkompressions- und datenexpandiereinrichtung zum uebertragen bzw. speichern von daten

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee