DE2547031C3 - Datenverarbeitungseinrichtung - Google Patents

Datenverarbeitungseinrichtung

Info

Publication number
DE2547031C3
DE2547031C3 DE2547031A DE2547031A DE2547031C3 DE 2547031 C3 DE2547031 C3 DE 2547031C3 DE 2547031 A DE2547031 A DE 2547031A DE 2547031 A DE2547031 A DE 2547031A DE 2547031 C3 DE2547031 C3 DE 2547031C3
Authority
DE
Germany
Prior art keywords
data
memory
channel
comparison
signal
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
DE2547031A
Other languages
English (en)
Other versions
DE2547031B2 (de
DE2547031A1 (de
Inventor
Michael William Potton Sandy Bedfordshire Martin
Roy William Hitchin Hertfordshire Mitchell
David Richard Langford Bedfordshire Webb
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
Priority claimed from GB46817/74A external-priority patent/GB1497676A/en
Priority claimed from GB46818/74A external-priority patent/GB1497677A/en
Application filed by Fujitsu Services Ltd filed Critical Fujitsu Services Ltd
Publication of DE2547031A1 publication Critical patent/DE2547031A1/de
Publication of DE2547031B2 publication Critical patent/DE2547031B2/de
Application granted granted Critical
Publication of DE2547031C3 publication Critical patent/DE2547031C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/30Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
    • G11B27/3027Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
    • 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
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Description

Die Erfindung bezieht sich auf Datenverarbeitungseinrichtungen mit einem Datenspeicher mit einer Vielzahl von Datenspuren, die gleichzeitig ausgelesen werden können, damit eine Vielzahl von parallelen, aus Bytegruppen bestehenden Datenströmen erhalten wird, und mit einer Vergleichseinrichtung, die Daten in jedem Datenstrom mit dem Inhalt eines Schlüsselspeichers vergleicht
Es besteht ein zunehmender Bedarf an Datenverarbeitungseinrichtungen, mit deren Hilfe Informationen aus großen Dateien auf Anfrage selektiv wiedergewonnen werden können. Eine derartige Einrichtung zum Wiedergewinnen von Informationen aus einer großen Datei ist der GB-PS 11 78 429 zu entnehmen. Bei dieser sind die Daten in einem Plattenspeicher mit einer Vielzahl von Datenspuren gespeichert, die gleichzeitig ausgelesen werden können, um eine Vielzahl von parallelen Datenströmen zu erhalten, die einer Vielzahl von logischen Vergleichseinrichtungen zugeführt werden, von denen jede alle Datenströme parallel zu einem in einem Schlüsselspeicher gehaltenen Suchschlüssel vergleicht
Eine hierbei auftretende Schwierigkeit ist, daß die einzelnen Datenausdrücke in jedem Strom exakt aufeinander ausgerichtet werden müssen, da alle Datenströme parallel verglichen werden. Zum Beispiel sind nach F i g. 2 der genannten Druckschrift die Datenausdrücke Da, Da und DD in den entsprechenden Datenströmen ZX, Z2 und Z3 zum Zeitpunkt fi in vertikaler Richtung gezeigt. Wären die Datenausdrücke nicht ausgerichtet, wären wenigstens einige der Ausdrücke außer Phase mit den Suchschlüsseln K\ usw. Die Notwendigkeit einer exakten Ausrichtung ergibt, daß die Datenausdrücke alle die gleiche Länge haben müssen, oder aber Abstände zwischen den Datenausdriicken verbleiben müssen.
Aufgabe der Erfindung ist es, eine Datenverarbeitungseinrichtung der gattungsgemäßen Art so auszugestalten, daß es nicht mehr erforderlich ist, die Datenausdrücke exakt auszurichten.
Dies wird gemäß der Erfindung durch eine Datenverarbeitungseinrichtung erreicht, die gekennzeichnet ist durch die Kombination folgender Merkmale:
a) eine Zeitmultiplexeinrichtung, die die parallel ausgelesenen Datenströme zu einem einzigen Strom ineinandergeschachtelter Daten kombiniert der die gesamte Information aus alhn ursprünglichen Datenströmen enthält, und der der Vergleichseinrichtung zugeführt wini
b) Zähler zum Steuern der Arbeitsweise der Vergleichseinrichtung und Speicher mit direktem Zugriff, die für jeden Datenstrom diesem entsprechende Speicherstellen besitzen,
c) in diesen Speichern stehen am Ende der Prüfung einer einem Kanal zugeordneten Bytegruppe erhaltene Zwischenergebnisse,
d) am Ende einer jeden Prüfung wird der jeweilige Inhalt der Zähler in denjenigen Speicherstellen der Speicher entsprechend dem Datenstrom gespeichert, der gerade geprüft worden ist und
e) die Zähler werden aus Speicherstellen der Speicher, die die Zwischenergebnisse für den nächsten zu verarbeitenden Kanal enthalten, geladen.
Mit dem erfindungsgemäßen Vorschlag wird erreicht, daß die Verarbeitung eines jeden Datenstromes vollständig getrennt wird und damit eine Ausrichtung der Datenausdrücke in den getrennten Strömen nicht mehr erforderlich ist Somit brauchen die Datenströme nicht miteinander synchronisiert werden und können deshalb erforderlichenfalls aus unterschiedlichen Plattenspeichern entnommen werden.
Weitere Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche.
Nachstehend wird die Erfindung in Verbindung mit der Zeichnung anhand eines Ausführungsbeispieles erläutert Die Figuren zeigen
F i g. 1 ein Gesamtblockschaltbild einer Datenverarbeitungseinrichtung mit einer Anzahl von Plattendateien, eine Multiplexereinrichtung, Vergleichseinrichtungen, einer Steuerlogik für die Vergleichseinrichtungen und einer Suchauswerteinrichtung,
F i g. 2 das Datenformat für die Plattendateien,
F i g. 3—5 die Multiplexereinrichtung,
F i g. 6 das Format bzw. den Aufbau eines Aufzeichnungsträgers,
F i g. 7—14 die Steuerlogik,
F i g. 15—18 eine der Vergleichseinrichtungen zusammen mit einer Logik, die beiden solchen Einrichtungen gemeinsam ist
F i g. 19 eine Möglichkeit der Benutzung der Einrichtung.
In F i g. 1 weist die Einrichtung eine Vielzahl von Magnetpiattendateieinrichtungen 1 auf. Jede dieser Einrichtungen besteht aus einem Stapel von Magnetplatten, wobei jeweils ein Lese/Schreibkopf jeder Aufzeichnungsfläche zum Auslesen von Daten aus oder zum Einschreiben von Daten in eine Spur auf der Oberfläche zugeordnet ist Die Köpfe sind in radialer Richtung einstellbar, damit ein gewünschter »Zylinder« von Spuren aus diesen Platten ausgewählt werden kann. Einige der Einrichtungen, die mit 5 bezeichnet sind, sind so aufgebaut daß nur ein einziger Kopf gleichzeitig angeschaltet werden kai..i, und damit nur einen 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 Teilenummer, den Preis, die Vorratsmenge, die Abgabezeit usw. 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 Multiplexereinrichtung 3 aufgibt Die Multiplexereinrichtung 3 kombiniert diese zwölf Datenkanäle miteinander und erzeugt ein Zeitmultiplexsignal auf einer Datenvielfachleitung 4. 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 Datenkanälen verarbeiten und damit die Menge an erforderlichen Geräten ein Minimum wird. Jeder 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 Mehrfacheinrichtungen 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 Dateieinrichtungen abgeleitet werden.
Die Multiplexeinrichtung liefert auch die nachfolgenden Steuersignale, um die Daten auf der Datenvielfachleitung 4 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 Datenvielfachleitung 4 werden parallel einer Bank von 16 Vergleichseinrichtungen 5 (es ist nur eine dargestellt) aufgegeben. Diese Einrichtungen benutzen gemeinsam eine Steuerschaltung 6. Jede Vergleichseinrichtung ist im Time-Sharing-Betrieb zwischen die zwölf Datenkanäle eingeschaltet und arbeitet vollständig unabhängig für jeden Kanal. Bei einem bestimmten Datenkanal ist die Arbeitsweise grundsätzlich folgende: Die Vergleichseinrichtung vergleicht jedes Datenfeld, das auf der Datenvielfachleitung 4 auftritt, mit einem gespeicherten Schlüsselwert. Die Ergebnisse dieser Vergleichsvorgänge werden gesammelt (z. B. durch ODER-Glieder miteinander verbunden) und am Ende der Aufzeichnung in einem Speicher in der Vergleichseinrichtung gespeichert
Am Ende einer Aufzeichnung werden die gespeicherten Resultate, die für die Aufzeichnung geeignet sind, auf eine Suchauswerteinrichtung 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 Vergleichsergebnisse 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, daß die längste Auswertfolge in der Suchauswerteinrichtung nicht mehr als 16 Byte-Perioden in Anspruch nimmt
Die Daten auf der Datenvielfachleitung 4 werden ■> zusammen mit Jen Kennzeichnungssteuersignalen auch einer Wiederauffindeinrichtung 10 aufgegeben, deren Zweck darin besteht, spezielle Informationsausdrücke aus den Aufzeichnunigen wiederaufzufinden, die dem Suchkriterium genügen. Da eine Aufzeichnung von der ι ο Suchauswerteinrichtung so lange nicht verarbeitet wird, bis sie abgetastet wonien ist, muß die Wiederauffindeinrichtung 10 Pufferspeicher enthalten, die die speziellen Ausdrücke so lange 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 beschriebenen Teile der Einrichtung koordiniert Zusätzlich kann der Steuerprozessor einen 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 Dateieinrichtungen 1 über die Schalteinrichtung 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ängigkeit von Benutzerprogrammen zuführt
Plattenfomiat bzw. Plattenaufbau
In Fig.2 ist das Format von Daten in den Dateieinrichtungen 1 dargestellt. Jede Datenspur enthält 15 Datenblöcke, die als Datenbereiche DA bezeichnet sind und die in gleichem Abstand längs der Spur versetzt sind. Jeder Datenbereich enthält 384 4n Daienbyles mit jeweils acht Bits. Diese Datenbereiche 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:
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
60
Jedem Datenbereich DA oder Zählbereich CA geht unmittelbar die nachstehende Folge voraus:
a) Eine Einleitung PA, die aus acht Bytes mit jeweils acht binären Einsen besteht, die zum Synchronisieren von Taktgeberschaltungen verwendet wird,
b) eine Adressenmarke AM, die ein einziges, fest vorgegebenes Schema von Bits mit einer Länge von sieben Bytes ist und die dazu dient, den Beginr des folgenden Zählbereiches oder Datenbereiche! zu markieren,
c) ein Gleichlaufbyte S, das die Art des folgender Bereiches (z. B. Zählbereich oder Datenbereich^ identifiziert.
An jedem Datenbereich DA oder Zählbereich CA schließen sich unmittelbar zwei zyklische Prüfbytes CC an, die während des Ablesens verwendet werden, um die aus diesem Bereich ausgelesenen 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 denen keine Information aufgezeichnet ist
Multiplexereinrichtung
Die F i g. 3—5 zeigen die Multiplexereinrichtung 3 im einzelnen.
In Fig.3 werden die Ursprungsdaten aus den zwöl! Kanälen, die durch die Schalteinrichtung 2 ausgewählt worden sind, zwölf Kanaleinrichtungen CHO- CH11 aufgegeben. Die Datengeschwindigkeit an dieser Stelle ist die Geschwindigkeit der Lesedaten aus einer Spui der Platte und beträgt nominell 2,5 Megabits prc Sekunde.
Eine dieser Kanaleinrichtungen ist im einzelnen ir F i g. 4 gezeigt. Die Einrichtung weist eine Demodulationsschaltung 11 auf, die die Ursprungsdaten demoduliert und ein Taktsignal aus den Daten entnimmt (dieses Taktsignal wird nur während des Auslesens dei tatsächlichen aufgezeichneten Bereiche erzeugt und is) 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 für 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-Parallel-Form umsetzt Der Ausgang des Umsetzers 17 wird einem Paar von Pufferspeichern B1 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 als ein Zähler mit Teiler Zwei so geschaltet sind, daß die Pufferspeicher zum abwechselnden Einschreiben angeschaltet werden. Zweckmäßigerweise wird der Pufferspeicher, der gerade zum Einschreiben angeschaltet ist, als der Strompufferspei-
eher bezeichnet, während der andere als der Nichtstrom-Pufferspeicher bezeichnet wird. Die Datenausgänge aus den Pufferspeichern werden einer Datenwählschaltung 20 aufgegeben, die auch von der bistabilen Schaltung 19 gesteuert wird, so daß Daten aus dem Nichtstrom-Pufferspeicher 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 Bits bestehendes Adressenlese-Signal auf einem Pfad 22 adressiert, während der Strom-Pufferspeicher durch den Inhalt eines aus vier Bits bestehenden Zählers 23 adressiert wird. Dieser Zähler wird durch das Bytegeschwindigkeits-Taktsignal aus dem Zähler 15 weitergeschaltet. 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 zu vertauschen. Die Überlaufabgabe erzeugt auch ein Anfrage-Signal auf einer Leitung 24, vorausgesetzt, ein UND-Glied 25 ist freigegeben.
In Fig.3 werden die Anfrageleitungen 24 aus den zwölf Kanaleinrichtungen einer Kanalwählereinrichtung 26 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-Lesesignalen 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 Byte. Wie in F i g. 4 gezeigt, beeinflußt das Kanalfreigabe-Signäl einen Satz von UND-Gliedern 28 in der ausgewählten Kanaleinrichtung, wodurch Daten von dem Nichtstrom-Speicher auf einen Ausgangspfad 29 von Bytebreite ausgelesen werden. Wie in F i g. 3 gezeigt, werden die Signale auf der. Pfaden 29 in einer verdrahteten Oder-Verbindung kombiniert, damit ein Multiplexsignal auf einem gemeinsamen Ausgangspfad 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 eingelesen werden. Dies ergibt 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 den 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 Fig.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 Eins, und die anderen enthalten alle Nullen, so daß der Sortierer sechs
aufeinanderfolgende Stadien hat. Diese sechs Stadien entsprechen grundsätzlich den folgenden sechs Bereichen auf der Platte (F i g. 2):
CA SYNC: Gleichlaufbyte, das einem Zählbereich vorausgeht.
CA: Zählbereich.
GAP: Spalt, der auf einen Zählbereich folgt.
DA SYNC: Gleichlaufbyte, das einem Datenbereich vorausgeht.
DA: Datenbereich.
DACC: Zyklische Prüfbytes, die einem Datenbereich folgen.
Zu Beginn wird der Sortierer auf die CA SYNC-Stufe
ij 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 /!Mund das anschließende Zählbereichs-Gleichlaufbyte S in Bytes 8,15 des laufenden Puffers eingegattert v/ird. Ein
2> Anfrage-Signal wird dann auf der Leitung 24 erzeugt, das die Kanalwählereinrichtung abfragt, um den Inhalt des Puffers auszulesen. Gleichzeitig bewirkt das Zähler-Überlaufsignal, daß die Puffer vertauscht werden, und verschiebt auch den Sortierer 32 in den
3« C/4-Zustand.
Im CA-Zustand setzt der Zähler 23 die Zählung fort und bewirkt, daß der Zählbereich CA und die zyklischen Prüfbytes CC in Bytes 0—10 des laufenden Puffers eingegattert werden. Wenn der Zählwert Zehn erreicht
Jj hat, wird der Wähler auf das interne Taktsignal umgeschaltet. Die Zählung wird bis 15 fortgesetzt. Dann wird eine Anfrage erzeugt und der Sortierer 32 auf den GAP-Zustand verschoben.
Im G/4P-Zustand wird die Zählung fortgesetzt. In diesem Zustand jedoch wird das Anfrage-Signal gesperrt, da das Gatter 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 überläuft, 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 Überlaufsingal bewirkt somit, daß der Wähler 13
ίο auf das Datentaktsignal zurückschaltet, gleichzeitig wird der Sortierer auf den DA SVMT-Zustand verschoben und der Zähler 23 unwirksam gemacht.
Im DA SVWC-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.
mi Wenn ein Zählerüberlauf auftritt, wird ein Anfragesignal abgegeben und der Sortierer auf den D/4-Zustand verschoben.
Im D/4-Zustand wird ein Verschieben des Sortierers durch ein Verschiebe-Sperr-Signal gesperrt Somit zählt
t>5 der Zähler 23 wiederholt von Null bis Fünfzehn und bewirkt, daß aufeinanderfolgende Gruppen von 16 Bytes des Datenbereiches DA in abwechselnde Puffer eingespeichert werden. Wie vorher wird am Ende einer
jeden Gruppe von Bytes ein Anfragesignal abgegeben. Das Verschiebe-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 den DA CC-Zustand verschoben werden kann.
Im D/tCC-Zustand läuft der Zähler 23 weiter und gattert die beiden zyklischen Prüfbytes CC in Bytes 0 und 1 des laufenden Puffers. Wenn der Zählwert Eins erreicht hat, wird ein Signal erzeugt, das den Wähler 13 ü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 SVTVC-Zustand zurückverschoben wird. Gleichzeitig wird der Wähler 13 in den Datentakt zurückgeschaltet und der Zähler 23 unwirksam gemacht. Die Kanaleinrichtung wartet nun auf die Ankuft der nächsten Adressenmarke, wie vorher.
Hieraus ergibt sich somit, daß die Kanaleinrichtung die Daten aus dem entsprechenden Datenkanal in einer Reihe von Gruppen von jeweils 16 Bytes arrangiert. Jeder Datenbereich DA, der aus 384 Bytes besteht, ist in 24 solcher Gruppen von Bytes unterteilt. Jede Adressenmarke und das folgende Gleichlaufbyte werden zusammen in Bytes 8—15 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 1 einer sonst leeren Gruppe angeordnet werden.
Wie in Fig.4 gezeigt, sperren die UND-Glieder 28 auch den Zustand des Sortierers bei Empfang eines Kanal-Wirksam-Signals zur Erzeugung eines Kanal-Zustand-Signals aus, das in einer verdrahteten ODER-Verbindung mit ähnlichen Signalen aus den anderen Kanälen kombiniert wird.
F i g. 5 zeigt den Kanalwähler 26 im Detail. Der Wähler weist eine Prioritätsschaltung 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ätsschaltung 33 aktiviert dann einen Vier-Bit-Zähler 35, der von einem Vielfachleitungs-Taktsignal aus einer Taktschaltung 36 betrieben wird. Der Zähler 35 zählt von Null auf Fünfzehn, erzeugt eine Folge von Lese-Adressen-Signalen zum Auslesen einer Gruppe von sechzehn 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-GOß-Signal bezeichnet wird.
Der Kanalwähler weist ferner einen Zähler 38 zum Zählen der Anzahl von Gruppen von Bytes auf, die aus einem Datenbereich ausgelesen worden sind; dieser Zähler wird um Eins bei jedem START-GOß-Signal weitergeschaltet, wenn das Kanal-Zustand-Signal anzeigt, daß der ausgewählte Kanal den ß4-Zustand einnimmt. Um schrittzuhalten mit der Multiplexerschaltung der Kanäle, werden die Inhalte dieses Zählers 38 in einem Speicher 39 mit direktem Zugriff gespeichert, der durch die Kanalzahl am Ende 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 einem Datenbereich aus dem nichtlaufenden Puffer in diesem
in Kanal ausgelesen wird. Dies bedeutet, daß die letzte Gruppe von Bytes in dem Datenbereich in den Strom-Puffer dieses Kanals eingeschrieben wird. Deshalb wird der Ausgang des Decodierers 41 dazu verwendet, das Verschiebe-Sperr-Signal aus dem
ι -, Sortierer des wirksam gemachten Kanals zu entfernen.
Der Ausgang aus dem Zähler 38 wird als GOß-Zahi bezeichnet und stellt einen Teil der physikalischen Adresse dar, die die Daten auf der Datenvielfachleitung 4 qualifiziert.
2(i Mit Bezugnahme auf F i g. 3 wird das Kanal-Zustands-Signal verwendet, um zu bestimmen, was mit den Signalen auf dem Pfad 31 geschehen soll, und zwar in folgender Weise:
Wenn der Kanal-Zustand den CA- oder den
r> CA SVTVC-Zustand angibt, wird eine Vergleichsschaltung 400 wirksam gemacht, die den Zählbereich und das Gleichlaufbyte mit dem Ausgang des Speichers 401 mit direktem Zugriff vergleicht. Dieser Speicher ist in zwölf Bereiche unterteilt, und zwar jeweils einen für jeden
«ι Datenkanal, wobei einer dieser Bereiche von der Kanal-Zahl ausgewählt wird. Jeder dieser Bereiche enthält den erwarteten Wert des Zählbereichs-Gleichlaufbytes und des Zählbereiches entsprechend einem Datenbereich, der abgetastet werden soll. Wenn die
j-> Vergleichsschaltung 400 für das Gleichlaufbyte oder den Zählbereich eine Fehlanpassung angibt, wird der Sortierer des wirksam gemachten Kanals in den CA SVTVC-Zustand rückgesetzt.
Wenn andererseits die Vergleichsschaltung 400 für
4» den Zählbereich und das Gleichlaufbyte 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
4-) den letzten Stand, daß die entsprechenden Details des nächsten Zählbereiches, der 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
in auswählen, wobei die Anzahl unabhängig für jeden Kanal durchgeführt wird.
im C/vZusiand 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 Signal, das als CA-Zahl bezeichnet wird, welche (zusammen mit der GOß-Zahl) die physikalische
«ι Adresse darstellt, die die Daten auf der Datenvielfachleitung 4 qualifiziert.
Wenn der DA SVTVC-Zustand auftritt, wird die Gruppe von Bytes, die auf dem Pfad 31 vorhanden ist, in eine Vergleichsschaltung 42 eingeführt, wo Byte
hi Fünfzehn an einem festverdrahteten Wert geprüft wird, um festzulegen, ob es sich um ein gültiges Datenbereichs-Gleichlaufbyte handelt Wenn nicht, wird ein Fehlersignal in die Steuerverarbeitungseinrichtung
Il
gegeben.
Wenn der DA-Zustand auftritt, werden die aufeinanderfolgenden Gruppen von Bytes, die auf dem Pfad 31 erscheinen, auf die Datenvielfachleitung 4 (Fi g. 1) und damit auf die Vergleichseinrichtung 5 gegeben.
Die Daten auf dem Pfad 31 werden ferner einer Prüfbyte-Erzeugungsschaltung 43 aufgegeben, die Prüfbytes auf jedem Zählbereich und den zyklischen Prüfbytes, und auf jedem Datenbereich und den zyklischen Prüfbytes erzeugt. Normalerweise werden die auf diese Weise erzeugten Prüfbytes alle Null. Die Schaltung 43 weist einen zugeordneten Speicher 44 mit direktem Zugriff auf. Dieser Speicher wird durch die Kanalzahl adressiert und dient dazu, den Zustand des Prüfbyte-Generators am Ende einer jeden Gruppe von Bytes zu speichern und ihn zu Beginn einer jeden neuen Gruppe von Bytes zu füllen, so daß gewährleistet ist, daß die Erzeugung von Prüfbytes für verschiedene Kanäle unabhängig vor sich geht.
Wenn der CA- oder der D/4 CC-Zustand eintritt, wird eine Vergleichseinrichtung 45 wirksam gemacht, die bewirkt, daß die Prüfbytes, die von der Schaltung 43 erzeugt werden, mit einem verdrahteten Gesamt-Null-Schema verglichen werden. Wenn eine Fehlanpassung in dem DACC-Zustand angezeigt wird, wird der Steuerverarbeitungseinrichtung ein Fehler signalisiert. Eine Fehlanpassung im C/4-Zustand bewirkt andererseits, daß der Sortierer der wirksam gemachten Kanaleinheit in den CA SVWC-Zustand rückgesetzt wird. Die Steuerschaltungen nach F i g. 3 zur Anpassung der Zählbereiche, zur Prüfung der Gleichlaufbytes usw. arbeiten zeitparallel zwischen allen zwölf Kanälen, so daß der Aufwand an Steuergeräten reduziert wird.
Aufzeichnungsformat
F i g. 6 zeigt das Format von Daten in einer Aufzeichnung. Die Aufzeichnung weist eine Folge von Datenfeldern auf. Jedes 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 L, das die Länge in Bytes des Datenfeldes einschließlich der Bytes / und L darstellt
c) Einem Wertteil veränderlicher Länge, der den tatsächlichen Wert der Daten enthält. Wenn beispielsweise das Identifizierbyte /die »Teilezahl« darsieüi, enthält der Werüeii VdieTeilezahl 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 L besteht
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, Yi, Zi usw. bezeichnet sind. Die Bezeichnung X=Xl stellt somit ein Feld mit einem Identifizierbyte Xund einem Wert X1 dar. Längenbytes und Aufzeichnungsergänzungen sind aus der Tabelle weggelassen.
Tabelle
Aufzeichnungs-Nr.
Felder
X=Xi X=XX X=Xi X=Xi
Y=Yi Y=Yi Y= Yi Y=Yl
Z=Zl
Z=Z2
Z= Z3
Z= Z4
Aus dieser Tabelle ergibt sich, daß bestimmte Felder in aufeinanderfolgenden Aufzeichnungen wiederholt werden. Beispielsweise erscheint das Feld X= Xi in allen vier Aufzeichnungen. Dieses Merkmal tritt häufig in Dateien auf. Beispielsweise können im Falle des Bestandssystems aufeinanderfolgende Aufzeichnungen sich auf Teile beziehen, die in der gleichen Untergruppe verwendet werden, usw. Wie nachstehend noch ausgeführt, ermöglicht das erfindungsgemäß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 1 in die in Tabelle 2 gezeigte Form komprimiert werden.
Tabelle 2 K=
V=
Yi
Y2
Felder
Aufzeichnungs-Nr. Z=Zl
Z= Z 2
Z= Z3
Z= Z 4
1 X=Xi
2
H) 3
4
Hieraus ergibt sich, daß die Anzahl von gespeicherten Feldern von zwölf in Tabelle 1 auf sieben in Tabelle 2 reduziert worden ist, so daß eine wesentliche Verringerung des erforderlichen Speicherraumes erzielt wird.
Wenn Daten auf diese Weise gespeichert werden, müssen Vorkehrungen getroffen werden, um eine Erinnerung der Information von einer Aufzeichnung zur nächsten zu erhalten, wenn die Datei abgetastet wird. Beispielsweise müssen in Tabelle 2 die Felder X= X1 und Y= Y1 in Aufzeichnung 1 erinnert werden, da sie so behandelt werden müssen, als ob sie in Aufzeichnung 2 vorhanden wären (s. Tabelle 1). In obigem Beispiel muß jede Abtastung der Datei bei der Aufzeichnung I begonnen werden, da sonst Fehler auftreten. Wenn beispielsweise die Abtastung bei der Aufzeichnung 2 begann, wären die Felder X=Xi und Y=Yi nicht erinnert worden, und es gäbe keine Möglichkeit, zu erkennen, daß sie in Aufzeichnung 2 erscheinen sollten. Um 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 Aufnahmestellen nicht erinnert werden muß, d. h., die erste Aufzeichnung nach jeder Aufnahmestelle weist keine weggelassenen Felder auf.
Tabelle 3 zeigt einen anderen Teil einer nichtkomprimierten Datei.
Tabelle 3 X=
X=
X=
Y= Y3 FeWer Z5
Z6
71
Aufzeichnungs-Nr. Il U Il
NNN
1
2
3
-Xl
--X2
-X2
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 zu verhindern, daß das Feld y= Y3 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 Y= Y3
y=Nuii
Felder
Aufzeichnungs-N r. Z= Z5
Z= Z6
Z= Z7
1 X=Xl
2
3
Das NuIi-FeId kann in gleicher Weise wie ein normales Feld erinnert werden, wie dies im Falle der Aufzeichnung 3 der obigen Tabelle 4 dargestellt ist.
F i g. 6 zeigt das Format einer Aufnahmestelle. Diese besteht aus dem speziellen Identifizierbyte 1, ohne Längenbyte oder Wertteil. 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 Normalbetriebsart genannt, und in diesem Zustand kann die Einrichtung 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 Haupttaktsignal ck gesteuert, das von dem Vielfachleitungs-Taktsignal (F i g. 5) abgeleitet wird. Das Taktsignal ck ist jedocb nur vorhanden, wenn der Kanalzustand anzeigt, daß ein Datenbereich auf der Datenvielfachleitung 4 vorhanden ist.
Nach Fig.7 enthält die Steuerlogik 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 Vielfachleitung angibt.
Die bistabile Schaltung 110 wird zu Beginn über ein ODER-Glied 112 durch ein D/\-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 stets 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 UO 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 zi r Anzeige bringt Der 0-Ausgang des Decodierers 113 wird in einem UND-Glied 114 mit dem Identifizier-Signal
is 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 Decodierers 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
2r> Schaltung 110 beim nächsten Taktimpuls rückgesetzt wird. Dies ist erforderlich, weil das nächste Byte, das auf eine Leer- oder Aufnahmepunkt-Identifizierung folgt, stets ein anderes Identifizierbyte sein wird. Die Signale »leer« und »Aufnahmepunkt« werden nach einer
jo Inversion auch dem Rücksetzeingang der bistabilen Schaltung 111 aufgegeben, so daß verhindert wird, daß diese bistabile Schaltung gesetzt wird, da ein Leer-Feld oder ein Aufnahmepunkt kein Längenbyte besitzt
Der 2-Ausgang des Decodierers 113 wird in einem
3"> 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 bistabil·j Schaltung UO beim nächsten Taktimpuls ck, d.h. bei der Ankunft des nächsten Elytes, das das Identi ■,zierbyte des auf das Nullfeld folgenden nächsten Feldes ist, wieder gesetzt wird.
j Nach F i g. 9 wird jedes Byte auf der Datenvielfachleitung 4 einer Vergleichseinrichtung 103 aufgegeben, wo es mit einem Schwellwert im Bereich 240—255 verglichen wird. Die Vergleichseinrichtung hat zwei Ausgänge »nicht kleiner als« und »gleich«. Der eine
■>(> oder andere dieser Ausgänge wird durch ein Steuerbit ausgewählt und einem UND-Glied 104 zusammen mit dem Identifizier-Signal aufgegeben. Wenn das UND-Glied 104 wirksam gemacht ist, setzt es eine bistabile Schaltung 105, die ein Aufzeichnungsende-Signal
Ti 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
w) 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 Steuerverarbeitungseinrichtung den Speicher 109 mit Bits, um zu bestimmen, welcher
b1) 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 Identifizie-
rangen als Ergänzungsidentifizierungen 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-Identifizierungen 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 Datenvielfachleitung 4 durch das Längensignal vorbelastet wird. Der Zähler wird bei jedem Taktimpuls ck um eine Einheit 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 Datenvielfachleitung 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 Feldende-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 Ankuft des nächsten Bytes, das das Identifizierbyte des nächsten Feldes sein wird.
Um eine Anpassung an die im Multiplexbetrieb bereitgestellten Daten auf der Datenvielfachleitung 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 Vielfachleitung 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 Steuerlogik ferner einen anderen Zähler 119 auf, dessen Ausgang eine Byte-Adresse ergibt, die zur Adressierung der Schlüsselspeicher in den Vergleichseinrichtungen 5 verwendet wird, wie nachstehend beschrieben wird. Dieser Zähler wird mit einem Bezugswert aus einem Speicher 120 mit direktem Zugriff gefüllt, wenn ein Identifizier-Signal auftritt. Der Speicher 120 wird durch die Kanalzahl adressiert, so daß für unterschiedliche Kanäle verschiedene Bezugswerte verwendet werden können.
Weiterhin wird zur Anpassung an die im Multiplex-Betrieb 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 Aufnahmepunkt-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ß einige 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 Vergleichseinrichtungen an, ob sie die Resultate der Vergleiche erinnern sollen oder nicht: Im Normalbetrieb ist das Ennnerungs-Signal stets »1«, 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 110, 111, 100,101,102,105,107 und 122, die eine Steuerinformation enthalten, die sich auf einen bestimmten Datenkanal bezieht Wegen des Multiplexbetriebes der Kanäle müssen die Zustände dieser 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 Vielfachleitung erscheint Die Art und Weise, in der dies geschieht, ist in Fig. 13 gezeigt Ein Speicher 126 mit direktem Zugriff besitzt zwölf Wortspeicherpiätze, und zwar jeweils einen für jeden Kanal, die durch eine Kanalzahl adressiert sind. Wenn ein Ende-GOß-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 Start-COß-Signal auftritt werden die Inhalte des laufend adressierten Wortes in die entsprechenden bistabilen Schaltungen vor dem Beginn des ersten Bytes in der Gruppe eingegattert. Nach Fig. 14 erzeugt eine Steuerlogik auch einen Satz von Taktsignalen, die als Takte 1 und 2 sowie Takte A, B, C bezeichnet sind. Die Takte 1 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 B wird von dem Takt 1 über ein UND-Glied 129 abgeleitet, jedoch während der Aufnahme sowohl der Identifizier- als Länge-Bytes unterdrückt. Der Takt C wird auch von dem Takt 1 über ein UND-Glied 130 abgeleitet, das nur wirksam gemacht wird, wenn das Länge-Signal vorhanden ist. Ein anderes Signal, das als das Voreinstell-Signal bezeichnet wird, wird von dem Takt 1 über ein UND-Glied 131 abgeleitet, das nur wirksam gemacht wird, wenn das Identifizier-Signal vorhanden ist.
Vergleichseinrichtungen
ω Die F i g. 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 Schlü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 F i g. 6, d. h. es weist ein Identifizierbyte, ein Längenbyte und einen Wertteil veränderlicher Länge auf. Jeder Schlüsselspeicher kann verschiedene solcher Schlüsselwerte enthalten, jeder Schlüsselwert ist in sequentiellen Byte-Speicherplätzen innerhalb des Schlüsselspeichers gespeichert, wobei mit einer Bezugswertadresse begonnen wird, die einer der Bezugswertadressen entspricht, die in dem Bezugswertspeicher 120 (F i g. 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. Il, daß das Identifizierbyte des Schlüsselwertes zur gleichen Zeit ausgelesen wird wie das Identifizierbyte des Datenfeldes auf der Vielfachleitung erscheint, usw.
Jede Vergleichseinrichtung enthä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 Vergleichseinrichtung 231 aufgegeben, deren anderer Eingang das Ausgangsbyte aus dem Schlüsselspeicher 230 aufnimmt Der Maskenspeicher ergibt somit die Möglichkeit, ausgewählte Teile eines Datenfeldes abzudecken, d. h. zu ignorieren.
Im Betrieb können der Schlüsselspeicher und der Maskenspeicher auf den neuesten Stand gebracht werden, wie dies durch die Steuerverarbeitungseinrichtung gefordert wird. Die Vergleichseinrichtung 231 vergleicht die beiden Eingangsbytes miteinander und erzeugt eines von drei Ausgangssignalen, je nachdem, ob das erste Eingangsbyte größer, kleiner oder gleich dem anderen Byte ist
Nach F i g. 16 wird zu Beginn eines jeden Datenfeldes eine bistabile Verriegelung 232 durch das Voreinstell-Signal eingestellt Gleichzeitig wird das Identifizierbyte des Feldes mit dem entsprechenden Byte des Schlüsselwertes verglichen. Wenn die beiden Bytes ungleiche Werte haben, wird ein NAND-Glied 227 beim Takt A durch den inversen Wert des Gleichheits-Ausganges der Vergleichseinrichtung 231 wirksam gemacht und bewirkt, daß die Verriegelung 232 rückgesetzt wird. Sie bleibt dann rückgesetzt bis zum Beginn des nächsten Feldes und dies beendet effektiv den Vergleich für das vorhandene Feld.
Nimmt man jedoch an, daß das Identifizierbyte übereinstimmt, bleibt die Verriegelung 232 gesetzt und der Vergleich wird fortgesetzt Das Länge-Byte 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 der ersten Aufzeichnung rückgesetzt und zum Ende jeder Aufzeichnung fertig für den Beginn der nächsten Aufzeichnung.
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 Vergleichseinrichtung, soweit sie bisher beschrieben wurde, wie folgt zusammengefaßt: Bei jedem Datenfeld wird zu Beginn das Identifizierbyte mit dem des gespeicherten SchlÜEselwertes verglichen. Dies wird für jedes Feld in der Aufzeichnung wiederholt Am Ende der Aufzeichnung bleiben somit, wenn 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üsselwertes verglichen. Das Resultat wird in den Feldverriegelungen gespeichert und verbleibt dort bis zum Ende der Aufzeichnung.
Die Länge eines jeden Feldvergleiches (d.h. die Anzahl von Bytes, die von dem Schlüsselspeicher zum Vergleich mit dem Datenfeld ausgelesen werden) wird durch das Länge-Byte L des Datenfeldes bestimmt da dieses Byte festlegt, wann das Ende des Feldsignals erzeugt wird. Wenn beispielsweise der Schlüsselwert im Schlüsselspeicher eine Länge von acht Bytes halt, und die Länge des Datenfeldes nur sechs Bytes beträgt, werden nur die ersten sechs Bytes des Schlüsselwertes zum Vergleich herangezogen und die beiden übrigen vernachlässigt
Eine weitere Verriegelung 239 ist den Feldverriegelungen zugeordnet Die Verriegelung 239 wird ebenfalls am Ende einer jeden Aufzeichnung rückgesetzt, und beim Auftreten eines Nullfeldes mit einer Identifizierung / 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 Steuerlogik aufnimmt.
Die Inhalte der verschiedenen Verriegelungen 232, 235, 236, 238 und 239 in der Vergleichseinrichtung werden in einer Speicheranordnung mit direktem
so Zugriff ähnlich der nach Fig. 13 am Ende einer jeden Gruppe von Bytes gespeichert und zu Beginn einer jeden neuen Gruppe umgeladen.
Wenn die Verriegelung 239 rückgesetzt wird, werden drei UND-Glieder 241, 242 und 243 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
bo adressierten Wort dieses Speichers wird der Suchauswerteinrichtung aufgegeben und stellt die Resultate des durch die Vergleichseinrichtung durchgeführten Vergleiches dar.
Der Schreibfreigabeeingang des Speichers 244 ist mit
t5 dem Ausgang eines UND-Gliedes 247 verbunden; ein F.ingang dieses UND-Gliedes 247 nimmt das Aufzeichnungs-Ende-Signal aus der Steuerlogik 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 Feldverklinkungen und der Klinke 239 verbunden sind, während das fünfte das Ennnerungs-Signal aus der Steuerlogik aufnimmt Der Ausgang des Gliedes 247 ergibt nach der Inversion auch ein Signal zum Rücksetzen der Verklinkungen 235, 236, 238 und 239 am Ende einer jeden Aufzeichnung.
Nachstehend wird nun die Arbeitsweise der Vergleichseinrichtung in den beiden Betriebsarten beschrie ben. _j
Im normalen Betrieb ist Erinnerung stets gleich »1«. Somit ist der Ausgang aus dem ODER-Glied 248 stets »1«, 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 Nuli-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 einer 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 erhalten wird, wird eine der Verklinkungen 235, 236, 238 (oder die Null-Verklinkung 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 auf 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, daß das in Frage kommende Feld »nicht vorhanden« ist). Wenn andererseits keine Identifizieranpassung während der Abtastung der Aufzeichnung erhalten wird, bleiben die Feldverklinkungen und die Null-Verklinkung rückgesetzt und deshalb werden das ODER-Glied 248 und infolgedessen das UND-Glied 247 unwirksam gemacht Daraus ergibt sich, daß der Speicher 244 nicht auf den letzten Stand gebracht wird, sondern das Resultat des Vergleiches aus der vorausgehenden Aufzeichnung beibehält. Der Ausgang der Vergleichseinrichtung ist, wie sich durch die Suchauswerteinrichtung ergibt, genau der gleiche, als ob das Feld, das die Identifizieranpassung in einer vorausgehenden Aufzeichnung erzeugt hat, in der nachfolgenden Aufzeichnung wiederholt worden wäre.
Daraus ergibt sich, daß die Verwendung des »Erinnerung«-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 1 und 3 vorliegen würde.
Das System ergibt auch 'ils 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 Substitutionssuchbetrieb bezeichnet und verwendet ein Paar von Vergleichseinrichtungen, die nachstehend als Vergleichseinrichtungen A und B bezeichnet werden, deren Schlüsselspeicher zu Beginn mit den Identifizierbytes der beiden Felder, die miteinander verglichen werden soJlen, gefüllt sind.
Der Substitutionssuchbetrieb wird durch eine logische Schaltung gesteuert, die den beiden Vergleichseinrichtungen A und B zugeordnet und in Fig. 17 gezeigt ist Zweckmäßigerweise sind diese logische Schaltung
ι ο und die beiden Vergleichseinrichtungen auf der gleichen 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 UND-Gliedes getaktet
is sind, welches das Länge-Signal und den Takt 1 aufnimmt Die bistabile Schaltung 250 nimmt als Eingang den gesetzten Ausgang der bistabilen Schaltung 232 (F i g. 16) in der Vergleichseinheit A auf; dieses Signal wird als »vorhanden (A)« bezeichnet In ähnlicher Weise nimmt die bistabile Schaltung 251 den entsprechenden Ausgang »vorhanden (B)< < aus der Vergleichseinheit B auf.
Der Substitutionssuchbetrieb wird durch ein Substitutions-Signal eingeleitet, das den beiden UND-Gliedern 253, 254 zusammen mit dem Takt B aufgegeben wird. Die 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 Schreibsteuer-Signal (B) und Schreibsteuer-Signal (A) bezeichnet werden.
Nach Fig. 18 wird das Schreibsteuer-Signal (A) einem NOR-Glied 255 aufgegeben, dessen Ausgang dem Schreibsteuer-Anschluß WE des Schlüsselspeichers 230 der Einheit A aufgegeben wird. Dies ermöglicht daß Daten in den Speicher aus der Datenvielfachleitung 4 über ein ODER-Glied 256 eingeschrieben werden (der andere Eingang zum NOR-Glied 255 ist ein Änderungs-Signal, das verwendet wird, wenn der Speicher aus der Steuerverarbei- tungseinrichtung auf den neuesten Stand gebracht werden soll, wobei die Daten zum Fortschalten des Speichers dem ODER-Glied 256 über einen Pfad 257 aufgegeben werden, wenn keine Daten auf der Datenvielfachleitung 4 vorhanden sind). Das Schreib- Steuer-Signal (B) wird dem Schlüsselspeicher der Einheit B in ähnlicher Weise aufgegeben.
Nach F i g. 17 werden die Ausgänge der bistabilen Schaltungen 250, 251 entsprechenden NAND-Gliedern 258,259 ebenfalls aufgegeben, von denen jedes auch das
so Substitutions-Signal und das Voreinstell-Signal aufnimmt Die Ausgänge der Glieder 258, 259 werden entsprechenden bistabilen Schaltungen 260, 261 vom D-Typ aufgegeben, deren Ausgänge wiederum den entsprechenden NOR-Gliedern 262, 263 zugeführt werden. Diese NOR-Glieder nehmen auch einen Eingang aus einem UND-Glied 264 auf, dem als Eingänge das Substitutions-Signal, das Länge-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ücksetzeingängen der bistabilen Schaltungen 232 (F i g. 16) in den Einheiten A und B aufgegeben.
Die Arbeitsweise des Systems in der Substitutionssuchbetriebsart wird nachstehend beschrieben. Zu Beginn jeder Aufzeichnung werden alle bistabilen Schaltungen 250, 251, 260 und 261 durch den inversen Wert des Aufzeichnungs-Ende-Signals rückgesetzt. Es sei angenommen, daß eine Identifizieranpassung
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 Schreibsteuer-(B)-Signalen und zwar jeweils eines bei jedem Takt-B-Impuls, wodurch der Wertteil des Datenfeldes von der Datenvielfachleitung 4 in den Schlüsselspeicher der Einheit B eingeschrieben wird. Da beide bistabilen Schaltungen 260 und 261 rückgesetzt 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 Einheit 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 Voreinstell-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 bitabile Schaltung 250 wird beim nächsten Takt-1-Impuls rückgesetzt und verhindert die Erzeugung weiterer Schreibfreigabe-(B)-Signa-Ie.
Es sei nun angenommen, daß eine Identifizieranpassung 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 Identifizieranpassung in der Einheit B angezeigt wird, wird die bistabile Schaltung 251 gesetzt und bewirkt, daß Schreibfreigabe-(A)-Signale erzeugt werden, so daß der zweite Feidwert 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 Identifizieranpassung erhält) mit einer »Nicht vorhanden«-Anzeige (d. h. nur Nullen) auf den neuesten Stand gebracht während der Speicher 24 der Einheit B mit dem Ergebnis des Vergleiches der beiden Feldwerte auf den letzten Stand gebracht wird. Diese Speicher stehen dann für die Suchauswerteinrichtung in der vorbeschriebenen Weise zur Verfügung.
Da die Schaltung nach Fig. 17 in bezug auf die Einheit A und die Einheit B symmetrisch ist, würde eir ähnliches Ergebnis erzielt werden, wenn die Einheit E die erste Einheit zur Erzielung einer Identifizieranpas sung wäre. In diesem Falle gibt die Einheit B die »Nichi vorhanden«-Anzeige und die Einheit A ergibt das Ergebnis des Wertfeldvergleiches.
In Übereinstimmung mit dem Multiplexbetrieb dei Daten werden die Inhalte der Verriegelungen 250, 251
ίο 260 und 261 in einem Speicher mit direktem Zugriff anEnde einer jeden Gruppe von Bytes in ähnlicher Weise wie in Verbindung mit F i g. 13 beschrieben gi speichert. In der Praxis ist die Zeitschaltung der Vergleichseinrichtungen und der zugehörigen Logik um ein Byte ir
j 5 bezug auf die der Multiplexereinrichtung verzögert damit Verzögerungen in der Signallaufzeit usw. möglich sind. Somit müssen die Steuersignale Kanalzahl, GOB Beginn und GOß-Ende, die von der Multiplexereinrichtung zu diesen anderen Einrichtungen gelangen, urr diesen Wert verzögert werden. Wegen der Verzögerungen im Vergleich stellt man ferner fest daß die derr Speicher 244 (F i g. 16) aufgegebene Kanalzahl um etws 1 '/2 Bytes verzögert werden soll.
Eine Darstellung der Verwendung der Schlüsselspei eher in den Vergleichseinrichtungen wird nachstehenc in Verbindung mit F i g. 19 gegeben. In dieser Figur sine die Schlüsselspeicher der sechzehn Vergleichseinrichtungen seitlich nebeneinander dargestellt und jede Spalte stellt einen Schlüsselwert dar. Es sei angenommen, daß Information aus vier Dateien verarbeite! werden soll, wobei jede Datei einen unterschiedlicher Satz von Schlüsselwerten besitzt Es werden deshalb vier Bezugswerte DQ-D 3 in den Bezugsspeicher 12( (Fig. 11) eingegeben. Diese Werte 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üsselspeichel kann deshalb vier Schlüsselwerte aufnehmen (jedes kleine Rechteck in Fig. 18 stellt den für einer 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 Grupper unterteilt angesehen werden. Bei diesem Beispie!
werden die Einrichtungen in vier Gruppen von jeweils vier unterteilt wie dies durch die dicken vertikaler Linien dargestellt ist Jede Gruppe von Vergleichsein richtungen kann dann einer getrennten Suchausgabe ir den gleichen Dateien zugewiesen werden. Daraus ergib!
so sich, daß bei diesem Beispiel die horizontale unc vertikale Unterteilung miteinander ermöglicht, dai sechzehn getrennte Suchaufgaben gleichzeitig, unc zwar jeweils vier Aufgaben für jede Datei, durchgefühn werden können.
Die Unterteilung der Vergleichseinrichtungen ir Gruppen wird durch die Art und Weise bestimmt in dei die Suchauswerteinrichtung die Ergebnisse aus der Vergleichseinrichtungen verarbeitet
Hierzu 10 Blatt Zeichnungen

Claims (6)

Patentansprüche:
1. Datenverarbeitungseinrichtung mit einem Datenspeicher mit einer Vielzahl von Datenspuren, die gleichzeitig ausgelesen werden können, damit eine Vielzahl von parallelen, aus Bytegruppen bestehenden Datenströmen erhalten wird, und mit einer Vergleichseinrichtung, die Daten in jedem Datenstrom mit dem Inhalt eines Schlüsselspeichers vergleicht, gekennzeichnet durch die Kombination folgender Merkmale:
a) eine Zeitmultiplexeinrichtung (3), die die parallel ausgelesenen Datenströme zu einem einzigen Strom ineinandergeschachtelter Daten kombiniert, der die gesamte Information aus allen ursprünglichen Datenströmen enthält, und der der Vergleichseinrichtung (5) zugeführt wird,
b) Zähler (119,117) zum Steuern der Arbeitsweise der Vergleichseinrichtung (5) und Speicher (121, 108, 126) mit direktem Zugriff, die für jeden Datenstrom diesem entsprechende Speicherstellen besitzen,
c) in diesen Speichern (121, 108, 126) stehen am Ende der Prüfung einer einem Kanal zugeordneten Bytegruppe erhaltene Zwischenergebnisse,
d) am Ende einer jeden Prüfung wird der jeweilige Inhalt der Zähler (117, 119) in denjenigen Speicherstellen der Speicher (121, 108, 126) entsprechend dem Datenstrom gespeichert, der gerade geprüft worden ist und
e) die Zähler (119,117) werden aus Speicherstellen der Speicher (121,108) die die Zwischenergebnisse für den nächsten zu verarbeitenden Kanal enthalten, geladen.
2. Datenverarbeitungseinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Speicheranordnung (1) eine Vielzahl von Plattendateknnheiten (S, M) aufweist und eine Schalteinheit (2) zur Auswahl einer Untergruppe der Spuren aus den Dateieinheiten (S, M)(Hr den Multiplexbetrieb besitzt.
3. Datenverarbeitungseinrichtung nach Anspruch
1 oder 2, dadurch gekennzeichnet, daß jeder Datenkanal eine Steuerinformation sowie Daten enthält, daß die Steuerinformation ebenfalls im Zeitmultiplexbetrieb behandelt und einer Steuereinrichtung (42—45, 400—402) aufgegeben wird, die simultan zwischen den Datenkanälen betrieben ist, so daß die Steuerinformation von jedem Kanal unabhängig verarbeitet wird.
4. Datenverarbeitungseinrichtung nach Anspruch 1 bis 3, dadurch gekennzeichnet, daß die Datenkanäle von der Speicheranordnung in entsprechende Pufferspeicher (BX, 52) gelesen werden, daß die Inhalte der Pufferspeicher einzeln nacheinander mit einer höheren Geschwindigkeit ausgelesen werden als die Inhalte der Kanäle in die einzelnen Pufferspeicher eingelesen werden, daß jeder Puffer- μ speicher nach dem Füllen ein Anfragesignal einleitet, und daß ein Kanalwähler (26) vorgesehen ist, der auf jedes anstehende Anfragesignal das Auslesen des zugeordneten Pufferspeichers veranlaßt.
5. Datenverarbeitungseinrichtung nach Anspruch μ 1 bis 4, dadurch gekennzeichnet, daß jede Vergleichseinheit (5) eine Vielzahl von Speichervorrichtungen (232, 235, 236, 238, 239) aufweist, um Zwischenresultate zu halten, die im Laufe des Vergleiches erzeugt wurden, und daß ein Speicher vorgesehen ist, der einen Wortspeicherplatz für jeden Datenkanal besitzt und der durch ein Kanalzahlsignal adressiert wird, das anzeigt, welcher Datenkanal gerade den Vergleichseinheiten aufgeschaltet ist, wobei die Inhalte der Speichervorrichtung (232...) in diesem Speicher vor jeder Änderung der Kanalzahl gespeichert werden und das Ausgangssignal dieses Speichers veranlaßt, die Speichervorrichtung im Anschluß an jede Änderung der Kanalzahl erneut zu füllen.
6. Datenverarbeitungseinrichtung nach Anspruch 1 bis 5, dadurch gekennzeichnet, daß jede Vergleichseinheit (5) einen Speicher (244) aufweist, der die Endresultate eines Vergleiches enthält, daß dieser Speicher einen Wortspeicherplatz für jeden Datenkanal besitzt und durch ein Kanalzahlsignal adressiert wird, das anzeigt, welcher Datenkanal gerade in den Vergleichseinheiten verarbeitet wird.
DE2547031A 1974-10-29 1975-10-21 Datenverarbeitungseinrichtung Expired DE2547031C3 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB46817/74A GB1497676A (en) 1974-10-29 1974-10-29 Data processing systems
GB46818/74A GB1497677A (en) 1974-10-29 1974-10-29 Contents addressable memory systems

Publications (3)

Publication Number Publication Date
DE2547031A1 DE2547031A1 (de) 1976-05-06
DE2547031B2 DE2547031B2 (de) 1980-01-10
DE2547031C3 true DE2547031C3 (de) 1980-09-04

Family

ID=26265909

Family Applications (1)

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

Country Status (4)

Country Link
DE (1) DE2547031C3 (de)
FR (1) FR2289962A1 (de)
HU (1) HU175242B (de)
IN (1) IN142852B (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2458847B1 (fr) * 1979-06-11 1986-02-07 Iria Procede et appareil de traitement d'information en vue notamment de l'analyse syntaxique
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
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
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

Also Published As

Publication number Publication date
AU8380175A (en) 1977-02-10
HU175242B (hu) 1980-06-28
FR2289962B1 (de) 1981-12-31
IN142852B (de) 1977-09-03
DE2547031B2 (de) 1980-01-10
FR2289962A1 (fr) 1976-05-28
DE2547031A1 (de) 1976-05-06

Similar Documents

Publication Publication Date Title
DE2547035C3 (de) Datenverarbeitungseinrichtung
DE2521436C3 (de) Informationswiedergewinnungsanordnung
DE2551238C3 (de) Datenkonzentrator
DE2346525A1 (de) Virtuelle speichereinrichtung
DE1524225B2 (de) Verfahren zum betriebe einer redigier- und wiedergabeeinrichtung
DE1549468A1 (de) Speicheranordnung fuer ein programmgesteuertes Datenverarbeitungssystem
DE1288144B (de)
DE1948142C3 (de) Adressiereinrichtung für einen bewegbaren Speicher, insbesondere Speicherplatte
DE2310631A1 (de) Speicherhierarchie fuer ein datenverarbeitungssystem
DE1449544A1 (de) Datenverarbeitende Maschine mit ueberlappend abrufbarem Speicherwerk
DE1271191B (de) Einrichtung zur UEbertragung von Informationseinheiten in die Binaerstellen eines Umlaufspeichers
DE1774943C3 (de) Dateneingabeeinrichtung. Ausscheidung aus: 1474025
DE1524111C3 (de) Elektronische Datenverarbeitungsanlage
DE2006673A1 (de) Vorrichtung und Verfahren zur Codeumwandlung
DE1954202B2 (de) Elektronische digitale Datenverarbeitungsanordnung
DE2456540C2 (de) Inkrementalwertkodierer
DE2547031C3 (de) Datenverarbeitungseinrichtung
DE2254696A1 (de) Schaltungsanordnung und verfahren zur neuorientierung nach einer fehlbedingung in einem speichersystem
DE2547052C3 (de) Datenverarbeitungseinrichtungen
DE2312415A1 (de) Schaltungsanordnung zur verbindung einer datenverarbeitungseinheit mit einer vielzahl von uebertragungsleitungen
DE1935945C3 (de) Taktsteuereinrichtung für mehrere Speicher und eine ihnen gemeinsame Fehlerkorrektureinrichtung
DE1031827B (de) Verfahren zum zumindest voruebergehenden Speichern von Fernschreibzeichen
DE1211005B (de) Vorrichtung zur Ermittlung von Speicheradressen
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
DE1105207B (de) Speichereinrichtung

Legal Events

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