DE2547031A1 - Datenverarbeitungseinrichtung - Google Patents
DatenverarbeitungseinrichtungInfo
- Publication number
- DE2547031A1 DE2547031A1 DE19752547031 DE2547031A DE2547031A1 DE 2547031 A1 DE2547031 A1 DE 2547031A1 DE 19752547031 DE19752547031 DE 19752547031 DE 2547031 A DE2547031 A DE 2547031A DE 2547031 A1 DE2547031 A1 DE 2547031A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- channel
- signal
- comparison
- 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
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; 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/30—Indexing; 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/3027—Indexing; 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2508—Magnetic discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2508—Magnetic discs
- G11B2220/2516—Hard 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)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
Unser Zeichen
Our Ref.
Our Ref.
I/p ö26?
INTEENATIOWAL COMPUTESS LIMITED, IGL House, Putney, London, S.W.15.
England
Datenverarbeitungs einrichtung
Die Erfindung bezieht sich auf Datenverarbeitungseinrichtungen mit einer Datenspeicheranordnung, die eine Vielzahl von Datenkanälen
aufweist, und mit einer Vielzahl von Vergleichseinheiten zur Durchführung von Vergleichen zwischen den Daten und entsprechenden
Schlüsselwerten.
Es besteht ein zunehmender Bedarf an Datenverarbeitungseinrichtungen,
bei denen selektiv Informationen aus größeren Datenbanken wieder aufgefunden werden können. Derartige Datenbanken sind im
allgemeinen in Dateien und Datensätzen organisiert, die komplizierte Beziehungen zueinander haben. Solche Einrichtungen müssen
die Fähigkeit haben, Daten rasch und einfach wieder aufzufinden. Darüber hinaus ist es erwünscht, einen Mehrfachzugriff zu der
Einrichtung zu haben, d.h. verschiedenen Benutzern unabhängig voneinander eine Abfragung der Einrichtung zu ermöglichen.
6098 19/08 3 0
Konto: Bayerische Vereinsbank (BLZ 750 200 73) 5 804 248 Postscheckkonto München 893 69 - 801
Gerichtsstand P.egensburg
5.9.1975 W/He - 2 - I/p ö267 ? F) 4 7 O 3 1
Bisherige Lösungen des Problems der Handhabung großer Datenbanken
haben die Verwendung von entsprechend programmierten Universalrechnern
mit verschiedenen peripheren Geräten bedingt. z.B. Plattendateien oder Magnetbandeinheiten. Aufzeichnungen sind im allgemeinen
wieder dadurch aufgefunden worden, daß ein Adressieren entsprechend ihren räumlichen Plätzen in der Einrichtung vorgenommen
wurde. Dies hat die Verwendung verschiedener Indexe zur Bestimmung von Aufzeichnungen, die spezielle Merkmale enthalten,
erforderlich gemacht. Die Erzeugung, Verwendung und das Auf-denneuesten-Stand-Bringen
dieser Indexe stellt erhebliche Probleme dar und führt zu einem schlechten Wirkungsgrad. Darüber hinaus
stellt die Forderung nach einem Mehrfachzugriff erhebliche Probleme bei einer solchen Einrichtung dar.
Ein derartiges, vorgeschlagenes Verfahren zum Vermeiden des Problemes
des Indexierens besteht darin, die zu adressierenden Aufzeichnungen auf der Basis ihrer Inhalte statt ihrer räumlichen
Plätze zu ordnen. Beispielsweise ist vorgeschlagen worden, eine Datei erschöpfend abzutasten, indem jede Aufzeichnung der Reihe
nach mit einem vorbestimmten Suchkriterium getestet wird, um zu entscheiden, ob sie wieder aufgefunden oder in sonstiger Weise
behandelt werden soll. Ein Ziel vorliegender Erfindung ist es, eine neuartige Einrichtung dieser Art zu schaffen.
Gemäß vorliegender Erfindung weist eine Datenverarbeitungseinrichtung
eine Datenspeicheranordnung, eine Vorrichtung zum Auslesen einer Vielzahl von Datenkanälen in paralleler Form aus der
Speicheranordnung, eine Vorrichtung zum Zeitmultiplexen der Datenkanäle
miteinander, und eine Vielzahl von Vergleichseinheiten auf, die parallel in Multiplexverfahren behandelten Daten betrieben
werden, damit Vergleiche zwischen den gemultiplexten Daten und entsprechenden Schlüsselwerten vorgenommen werden, wobei jede
Vergleichseinheit simultan auf die Datenkanäle aufgeteilt wird,
so daß Vergleiche unabhängig von den Daten aus unterschiedlichen Kanälen durchgeführt werden.
809819/0 8.30
5.9.1975 W/He - 3 - I/p 8267
? 5 4 7 Π 3 1
Eine derartige Einrichtung ist in der Lage, eine Datei abzutasten und jede Aufzeichnung in der Dabei mit einem Suchkriterium zu
prüfen, das aus einer logischen Kombination der Ergebnisse einer
Anzahl von indieviduellen Vergleichen besteht. Wenn eine ausreichende
Anzahl von Vergleichseinheiten vorgesehen ist, können
ziemlich komplizierte Suchkriterien ausgewertet werden, oder es können andererseits mehrere einfachere Suchkriterien gleichzeitig
parallel auf die Daten einwirken, die Verarbeitungsgeschwindigkeit sehr hoch sein. Das Multiplexen einer Anzahl von
Datenkanälen gewährleistet, daß diese hohe Verarbeitungsgeschwindigkeit voll ausgenutzt wird. Darüber hinaus ermöglicht das
Multiplexen, daß die Steuergeräte für das System auf die Kanäle
im Simultanbetrieb aufgeteilt werden, so daß der erforderliche Geräteaufwand (hardware-Aufwand) auf einem Minimum gehalten werden
kann, während eine unabhängige Verarbeitung für jeden Kanal beibehalten wird. Da die Einrichtung unabhängig auf die verschiedenen
Kanäle einwirkt, können die unterschiedlichen Kanäle vollständig unabhängige Dateien enthalten und es kann die Anordnung
so gewählt werden, daß Suchaufgaben von unterschiedlichen Benutzern, die sich auf unterschiedliche Dateien beziehen,
gleichzeitig durchgeführt werden, so daß ein Vielfachzugang zur Einrichtung erleichtet wird.
Nachstehend wird die Erfindung in Veibindung mit der Zeichnung
anhand eines Ausführungsbeispieles erläutert. Die Figuren zeigen:
Fig. 1 ein Gesamtblockschaltbild einer Datenverarbeitungseinrichtung
mit einer Anzahl von Plattendateien, einer Multiplexeinheit,
Vergleichseinheiten, einer Steuerlogik für die Vergleichseinheiten und einer Suchauswerteinheit,
i'ig. 2 das Datenformat für die Plattendateien,
609819/Ub
5.9.1975 W/He -M- Ι/ρ-8267
... ■ ? h 4 7 η 31
Figuren 3-5 die MuItipiexeinheit,
Pig. 6 das Format bzw. den Aufbau eines Aufzeichnungsträgers,
Figuren 7-14 die Steuerlogik,
Figuren 15-18 eine der "Vergleichseinheiten zusammen mit einer Logik,
die beiden solchen Einheiten gemeinsam ist,
Fig. 19 eine Möglichkeit der Benutzung der Einrichtung, und Figuren 20-25 die Suchauswerteinheit.
In Fig. 1 weist die Einrichtung eine Vielzahl von Magnetplattendateieinheiten
1 auf. Jede dieser Einheiten enthält einen 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 Einheiten, die mit S bezeichnet sind, sind so
aufgebaut, daß nur ein einziger Kopf gleichzeitig angeschaltet werden kann und damit nur einen Ausgangsdatenkanal ergibt. Die
übrigen Einheiten M sind in der Lage, daß eine Vielzahl ihrer Köpfe gleichzeitig angeschaltet werden kann und somit eine Vielzahl
von parallelen Ausgangskanälen (in diesem Beispiel jeweils zehn Kanäle) erzielt werden können.
Daten, die in den Platteneinheiten 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 Platteneinheiten)
erstrecken. Andererseits können verschiedene Dateien in einem Zylinder vorhanden sind. 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
609819/0830
5.9.1975 w/He - 5 - I/p 8267
? h 4 7 η .1'}
gehaltenen Teilen darstellen, wobei eine Aufzeichnung für jedes Teil vorhanden ist, und jede Aufzeichnung kann Felder enthalten,
die die Teilenummer, den Preis, die Vorratsmenge , die Abgabezeit
usw. darstellen.
Die Datenkanäle, die aus den Platteneinheiten ausgelesen werden, werden einer Schalteinheit 2 aufgegeben, ^die bis zu Ik dieser
Kanäle auswählt und sie den zwölf Eingabestellen einer Multiplexeinheit
3 aufgibt. Die Einheit 3 kombiniert diese zwölf Datenkanäle
miteinander und erzeugt ein Zeitmultipiexsignal 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 behandeln und damit die Menge an erforderlichen Geräten auf ein
Minimum herabsetze. 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 Mehrfacheinheiten M abgeleitet werden, ist es nicht notwendig, sicherzustellen, 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 Platteneinheiten
abgeleitet werden.
Die Multiplexeinheit ergibt auch die nachfolgenden Steuersignale, um die Daten auf der Datenvielfachleitung 4 zu kenifeichnen: 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 Vergleichseinheiten (es ist nur eine dargestellt) aufgegeben. Diese Einheiten benutzen
gemeinsam eine Steuerschaltung 6. Jede Vergleichseinheit ist im Time-Sharing-Betrieb zwischen die zwölf Datenkanäle eingeschaltet
$09819/0830
5.9.1975 W/He - 6 - I/p 826?
? F» 4 7 Π 3 Ί
und arbeitet vollständig unabhängig für jeden Kanal. Bei einem
bestimmten Datenkanal ist die Arbeitsweise grundsätzlich folgende: Die Vergleichseinheit vergleicht jedes Datenfeld, das auf der
Datenvielfachleitung h- auftritt, mit einem gespeicherten Schlüsselwert. Die Ergebnisse dieser Vergleiche werden gesammelt (z.B.
durch ODER-Schaltung miteinander verbunden) und am Ende der Aufzeichnung
in einen Speicher in der Vergleichseinheit gespeichert.
Am Ende einer Aufzeichnung werden die gespeicherten Resultate, die für die Aufzeichnung geeignet sind, auf eine Suchauswertein- ·
heit (SEU) 7 übertragen. Diese Einheit führt logische Arbeitsvor-
k
gänge an den Resultaten in Abhängigeit von einem gespeicherten Programm durch, so daß entschieden wird, ob die Aufzeichnung einem bestimmten Suchkriterium genügt. Um zu gewährleisten, daß die Vergleichsergebnisee nicht rascher erhalten werden als die Suchauswerteinheit 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 Suchauswerteinheit nicht langer in Anspruch nimmt als 16 Byte-Perioden.
gänge an den Resultaten in Abhängigeit von einem gespeicherten Programm durch, so daß entschieden wird, ob die Aufzeichnung einem bestimmten Suchkriterium genügt. Um zu gewährleisten, daß die Vergleichsergebnisee nicht rascher erhalten werden als die Suchauswerteinheit 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 Suchauswerteinheit nicht langer in Anspruch nimmt als 16 Byte-Perioden.
Die Daten auf der Datenvielfachleitung 4 werden zusammen mit den
Kennzeichnungssteuersignalen auch einer Wiederauffindeinheit 10
aufgegeben, deren Zweck darin besteht, spezielle Informationsausdrücke aus den Aufzeichnungen wieder aufzufinden, die dem Suchkriterium
genügen. Da eine Aufzeichnung von der Suchauswerteinheit
solange nicht verarbeitet wird, bis sie abgetastet worden ist, muß die Wiederauffindeinheit 10 Pufferspeicher enthalten,
die die speziellen Ausdrücke solange vorübergehend festhalten, bis die Auswertung abgeschlossen worden ist.
Die wiederaufgefundene Information wird zusammen mit der zugeordneten
physikalischen Adresse einer Steuervera rbeiirangseinrichtung
8 zugeführt. Diese ist ein konventioneller, kleiner Prozessor, der die Arbeitsweise aller bisher beschriebenen Teile der Einrichtung
koordiniert. Zusätzlich kann der Steuer prozessor einen Zugang zur Datenbasis über eine Zugriffseinheit 9 mit direktem
609819/0830
5.9.1975 W/He - 7 - I/p 8267
Zugriff erhalten, die parallel zum übrigen Teil des Systems, jedoch
unabhängig von diesem arbeitet und die einen direkten Zugriff zu den Plattendateien 1 über die Schalteinheit 2 besitzt.
Die gesamte, bisher beschriebene Einrichtung kann als Anschlußgerät
zu einem herkömmlichen Hauptrechner betrachtet werden, der entsprechende Endstufenbefehle der Steuerverarbeitungseinheit 8
in Abhängigkeit von Benutzerprogrammen zuführt.
In Fig. 2 ist das Format von Daten in den Platteneinheiten 1 dargestellt.
Jede Datenspur enthält 15 Datenblöcke, die als Datenbereiche
DA bezeichnet sind und die in gleichem Abstand um die Spur versetzt sind. Jeder Datenbereich enthält 384 Datenbytes 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 GA bezeichnet wird, welcher den Datenbereich innerhalb der Platteneinheit 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.
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,
6098 19/0830
5.9.1975 W/He - 8 - I/p 8267
(b) eine Adressenmarke AM, die ein einziges, fest Torgegebenes
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 gleichiaufbyte S, das die Art des folgenden Bereiches
(z.B. Zählbereich oder Datenbereich) identifiziert.
An jeden Datenbereich DA oder Zählbereich CA schließen sich unmittelbar
zwei zyklische Prüfbytes CG an, die während des Ablesens
verwendet werden, um die aus diesem Bereich ausgelesenen Daten zu verifizieren. Das erste zyklische Byte = der Έχ&1^ιν-0ΏΕΙί-Ριιη^
tion eines aus lauter Einsen bestehenden Bytes, wobei Jedes zweite Byte in den Bereich von dem 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 Pig. 2 stellen Spalte dar, in denen
keine Information aufgezeichnet ist.
Die Figuren 3-5 zeigen die Multiplexeinheit J im einzelnen.
In Pig. 3 werden die Ursprungsdaten aus den zwölf Kanälen, die
durch die Schalteinheit 2 ausgewählt worden sind, zwölf Kanaleinheiten
CHO-CHIl aufgegeben. Die Datengeschwindigkeit an dieser
Stelle ist die Geschwindigkeit der Lesedaten aus einer Spur der Platte und beträgt nominell 2,5 Megabits pro Sekunde.
Eine dieser Kanal einheit en ist im einzelnen in Pig. 4- gezeigt.
Die Einheit weist eine Demodulationsschaltung 11 auf, die die Ursprungsdaten 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).
609819/0830
5.9.1975 W/He - 9 - I/p 8267
7547031
Eine WählerSchaltung 15 ist vorgesehen, um entweder dieses Datentaktsignal
oder ein Taktsignal aus einem internen Taktgeber 14 (der eine etwas geringere Taktgeschwindigkeit als dem Datentakt
zuentspricht besitzt), auswähle, das als Haupt takt signal für die
Kanaleinheit 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 Adressenmarkierainzeigeschaltung
16 herkömmlicher Form aufgegeben, die so ausgelegt ist, daß sie das eine Adressmarke 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 I7 wird einem Paar von Pufferspeichern
Bl und B2 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 2wei in solcher Weise geschaltet sind,
daß die Pufferspeicher zum abwechselnden Einschreiben wirksam gemacht werden. Zweckmäßigerweise wird der Pufferspeicher, der gerade
zum Einschreiben wirksam gemacht wird, als der Strompufferspeicher 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
609819/0830
5.9.1975 W/He - 10 - I/p 8267
Bits "bestellendes 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 IMD-Gatter 25 ist freigegeben.
In Fig. 3 werden die Anfrageleitungen 24 aus den zwölf Kanaleinheiten
einer Kanalwählereinheit 26 aufgegeben, die jeweils eine ausstehende Anfrage gleichzeitig dadurch bedient, daß ein Kanalfreigabe-Signal
der entsprechenden Kanaleinheit über eine der zwölf Leitungen 27 zugeführt wird. Die Kanalwählereinheit erzeugt
auch eine Folge von Adressen-Lese Signalen von 0 bis 15, die den Adressenpfaden 22 der Kanaleinheiten 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 Fig. 4- gezeigt,
beeinflußt das Kanalfreigabe- Signal einen Satz von Gattern 28 in der ausgewählten Kanaleinheit, wodurch Daten von dem Hichtstrom-Speicher
auf einen Ausgangspfad 29 von Bytebreite ausgelesen werden. Wie in !ig. 3 gezeigt, werden die Signale auf den Pfaden 29
in einer fest verdrahteten ODER-Verbindung kombiniert, damit ein
Multiplexsignal auf einem gemeinsamen Ausgangspfad 31 mit einer
Breite von einem Byte erzeugt w:rd
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
6098 19/0830
5.9.1975 W/He - 11 - I/p 8267
2547Π31
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 der 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 Kanaleinheit ein zyklisches Schieberegister
32 mit sechs Stufen, das als Sortierer bezeichnet wird, der
die Arbeitsweise der Einheit steuert. Zu einem beliebigen Zeitpunkt enthält eine dieser Stufen eine Eins, und die anderen ent-
so
halten alle Nullen, daß der Sortierer sechs aufeinanderfolgende Stadien hat. Diese sechs Stadien entsprechen grundsätzlich den folgenden sechs Bereichen auf der Platte (Fig. 2):
halten alle Nullen, daß der Sortierer sechs aufeinanderfolgende Stadien hat. Diese sechs Stadien entsprechen grundsätzlich den folgenden sechs Bereichen auf der Platte (Fig. 2):
GIeichlaufbyte, das einen Zählbereich vorausgeht.
Zählbereich
Spalt, der auf einem Zählbereich folgt
GIeichlaufbyte, das einem Datenbereich vorausgeht
Datenbereich
Zyklische Prüfbytes, die einem Datenbereich folgen.
GAP
DA SYNC
DACC
wird
Zu Beginn der Sortierer auf die CASINC-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
AM und das anschließende Zählbereichs-Gleichlaufbyte S in Bytes 8, 15 des laufenden Puffers eingegattert wird. Ein Anfrage-Signal
wird dann auf der Leitung 24 erzeugt, das die Kanalwählereinheit
abfragt, um die Inhalte des Puffers auszulesen. Gleichzeitig bewirkt das Zähler-Überlaufsignal, daß die Puffer vertauscht
werden, und verschiebt auch den Sortierer 32 in den CA-Zustand.
6098 19/0830
5.9.1975 W/He - 12 - I/p 8267
Im CA-Zustand setzt der Zähler 25 die Zählung fort und bewirkt,
daß der Zählbereich OA und die zyklischen Prüfbytes CO in Bytes 0-10 des laufenden Puffers eingegattert werden. Wenn der Zählwert
Zehn erreicht 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 GAP-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 das nächste Mal überläuft, die Einleitung PA, die der nächsten
Adressenmarke vorausgeht, begonnen hat, von der Platte anzukommen, so daß das Datentakt signal wieder zur "Verfügung steht. Das
Überlaufsignal bewirkt somit, daß der Wähler 13 auf das Datentaktsignal
zurückschaltet. Gleichzeitig wird der Sortierer auf den DA SYNG-Zustand verschoben und der Zähler 23 unwirksam gemacht
.
Im DA STNO-Zustand wird die Adressenmarkieranzeigeschaltung 16
wieder wirksam gemacht. Wenn der Beginn der Adreseenmarke 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 cLes 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 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 solange aufrechterhalten, bis die letzte Gruppe von
609819/0830
5.9.1975 W/He - 13 - I/p 8267
7 5 4 7 Π 3 1
Bytes in dem Datenbereich in den laufenden Puffer eingegattert
worden ist, worauf es entfernt wird und der Sortierer auf den DACC-Zustand verschoben werden kann.
Im BAOC-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 SYNC-Zustand zurückverschoben wird. Gleichzeitig wird der Wähler 13 in den Datentakt zurückgeschaltet und
der Zähler 23 unwirksam gemacht. Die Kanaleinheit wartet nun auf die Ankunft der nächsten Adressenmarke, wie vorher.
Hieraus ergibt sich somit, daß die Kanaleinheit 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 Gleichiaufbyte 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, gattern die Gatter 28 auch den Zustand des Sortierers bei Empfang eines Kanal-Wirksam-Signales zur Erzeugung
eines Kanal-Zustand-Signales aus, das in einer verdrahteten
ODEK-Verbhdung mit ähnlichen Signalen aus den anderen Kanälen
kombiniert wird.
i"ig. 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
609819/0830
5.9.1975 W/He - 14 - I/p 8267
? 5 47 O 3.1
auf der entsprechenden Leitung der Leitungen 27 exzeugt. Gleichzeitig
wird die Identität des gewählten Kanales durch eine Schaltung 34 codiert und eine Kanalzahl aus vier Bits erzeugt.
Die Prioritätsschaltung 33 aktiviert dann einen Tier-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 Kanaleinheit.
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 STAET-GOB-Signal bezeichnet,
während das Überlaufsignal am Ende der Gruppe von Bytes als das Ende-GOB-Signal bezeichnet wird.
ferner
Der Kanalwähler weist 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 STAET-GOB-Signal weitergeschaltet, wenn das Kanal-Zustand-Signal anzeigt, daß der ausgewählte Kanal den DA-Zustand einnimmt. TJm schritt zuhält en mit der Multiplexschaltung der Kanäle werden die Inhalte dieses Zählers 38 in einem Speicher 39 mit di^rektem 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 Deeodierschaltung 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 Kanal ausgelesen wird. Dies bedeutet, daß die letzte Gruppe von Bytes in dem Datenbereich in den Strom-Puffer dieses Kanales eingeschrieben wird. Deshalb wird der Ausgang des Decodierers 41 dazu verwendet, das "Verschiebe-Sperr-Signal aus
Der Kanalwähler weist 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 STAET-GOB-Signal weitergeschaltet, wenn das Kanal-Zustand-Signal anzeigt, daß der ausgewählte Kanal den DA-Zustand einnimmt. TJm schritt zuhält en mit der Multiplexschaltung der Kanäle werden die Inhalte dieses Zählers 38 in einem Speicher 39 mit di^rektem 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 Deeodierschaltung 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 Kanal ausgelesen wird. Dies bedeutet, daß die letzte Gruppe von Bytes in dem Datenbereich in den Strom-Puffer dieses Kanales eingeschrieben wird. Deshalb wird der Ausgang des Decodierers 41 dazu verwendet, das "Verschiebe-Sperr-Signal aus
60981 9/0830
5.9.1975 W/He - 15 - Ι/ρ 8267
7547Π31
dem Sortierer des wirksam gemachten Kanales zu entfernen.
Der Ausgang aus dem Zähler 38 wird als GOB-Zahl bezeichnet und
stellt einen Teil der physikalischen Adresse dar, die die Daten auf der Datenvielfachleitung 4 qualifiziert.
Mit Bezugnahme auf S1Ig. 3 wird das Kanal-Zustands-Signal verwendet,
um zu bestimmen, was mit den Signalen auf dem Pfad 31 Se~
schehen soll, und zwar in folgender Weise:
Wenn der Kanal-Zustand den GA- oder den CASYNC-Zustand angibt,
wird eine Vergleichsschaltung 400 wirksam gemacht, die den Zählbereich und das Gleichiaufbyte 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-GIeichlaufbytes
und des Zählbereiches entsprechend einem Datenbereich, der abgetastet werden soll. "Wenn die Vergleichsschaltung
400 für das Gleichiaufbyte oder den Zählbereich eine Fehlanpassung
angibt, wird der Sortierer des wirksam gemachten Kanales in den CASYNC-Zustand rückgesetzt.
Wenn andererseits die Vergleichsschaltung 400 für den Zählbereich und das gleich!aufbyte 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ä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 auswählen, wobei die Auswahl unabhängig für jeden Kanal durchgeführt
wird.
6ü98 1 9/0830
5.9.1975 W/He - 16 - I/p 826?
Im CA-Zustand wird auch ein anderer Speicher 402 mit direktem
Zugriff wirksam gemacht, damit das Byte auf dem Pfad 31, das die Zähltereichszahl 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 GOB-Zahl) die physikalische Adresse darstelt,
die die Daten auf der Datenvielfachleitung 4 qualifiziert.
Wenn der DA SINC-Zustand auftritt, wird die Gruppe von Bytes,
die auf demPfad 31 vorhanden ist, in eine Vergleichsschaltung
gegattert, wo Byte Fünfzehn gegen einen festverdrahteten Wert geprüft wird, um festzulegen, ob es sich um ein gültiges Datenbereichs-Gleichlaufbyte
handelst. Wenn nicht, wird ein Dehler-Signal in die Steuerverarbeitungseinrichtung gegeben.
Wenn der DA-Zustand auftritt, werden die aufeinanderfolgenden
Gruppen von Bytes, die auf dem Pfad 31 erscheinen, auf die Datenvielfachleitung 4 (IFig. 1) und damit auf die Vergleichseinheiten
5 gegattert.
Die Daten auf dem Pfad 31 werden ferner einer Prüfbyte-Erzeugungsschal
tung 43 aufgegeben, die Prüfbytes auef 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
jsnde einer
des Prüfbyte-Generators am jeden Gruppe von Bytes zu speichern und ihn zu Beginn einer jeden neuen Gruppe von Bytes zu füllen, so daß gewählleistet ist, daß die Erzeugung von Prüf bytes für verschiedene Kanäle unabhängig vor sich geht.
des Prüfbyte-Generators am jeden Gruppe von Bytes zu speichern und ihn zu Beginn einer jeden neuen Gruppe von Bytes zu füllen, so daß gewählleistet ist, daß die Erzeugung von Prüf bytes für verschiedene Kanäle unabhängig vor sich geht.
Wenn der GA- oder der DACG-Zustand eintritt, wird eine Vergleichseinrichtung 45 wirksam gemacht, die bewirkt, daß die Prüfbytes,
die von der Schaltung 43 erzeugt werden, mit einem verdrahteten
609819/0830
5.9.1975 V/He - 17 - Ι/ρ 8267
Gesamt-Null-Schema verglichen werden. Wenn eine Fehlanpassung in
dem DACC-Zustand angezeigt wird, wird der Steuerverarbeitungseinrichtung
ein Fehler signalisiert. Eine Fehlanpassung im GA-Zustand
bewirkt andererseits, daß der Sortierer der wirksam gemachten Kanaleinheit in den CA SYNC-Zustand rückgesetzt wird.
Die Steuerschaltungen nach Fig. 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.
Fig. 6 zeigt das Format von Daten in einer Aufzeichnung. Die Aufzeichnung
weist eine Folge von Datenfeldern auf. Jedes Datenfeld besteht aus:
(a) Einem Identifizierbyte I, das die Art des Datenfeldes darstellt.
Beispielsweise wäre im Falle der Bestandskartei das Identifizierbyte I ein Sode, der "Teilenummer", "Preis" usw.
angibt.
(b) Einem Längenbyte L, das die Länge in Bytes des Datenfeldes einschli3ßlich der Bytes I und L darstellt.
(c) Einem Wertteil V veränderlicher Länge, der den tatsächlichen Wert der Daten enthält. Wenn beispielsweise das Identifizierbyte I die "Teilezahl" darstellt, enthält der Wertteil V die
Teilezahl selbst.
Jede Aufzeichnung wird durch ein Ergänzungsfeld abgeschlossen,
das aus einem speziellen Identifizierbyte I 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
6Ü9819/0830
5.9.1975 W/He - 18 - I/p 8267
wegen auf der gleichen Zeile gezeigt. Identifizierbytes sind'durch
die Buchstaben X, Y, Z bezeichnet, während die Geldwerte durch die Symbole Xl, Yl, 21 usw. bezeichnet sind. Die Bezeichnung X =
Xl stellt somit ein Feld mit einem Identifizierbyte X und einem
Wert Zl dar. Längenbytes und Aufzeichnungsergänzungen sind aus
der Tabelle weggelassen.
Tabelle | 1 | Y = Yl Y = Yl Y = Yl Y = Y2 |
Felder | = Zl = Z2 = Z3 = Z4 |
|
Aufζeichnungs-Nr. | Z Z Z Z |
||||
1 2 3 4 |
X = Xl X = Xl X = Xl X = Xl |
Aus dieser Tabelle ergibt sich, daß bestimmte Felder in aufeinanderfolgenden
Aufzeichnungen wiederholt werden. Beispielsweise erscheint das Feld X = Xl in allen vier Aufzeichnungen. Dieses Merkmal
tritt häufig in Dateien auf. Beispielsweise können im Falle des Bestandsystems 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.
1 X = Xl Y = Yl
4 Y = Y2
609819/0830
Z | = Zl |
Z | = Z2 |
Z | = Z3 |
Z | = Z4 |
5.9.1975 W/He - 19 - I/p 8267
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 = Xl und Y = Yl in Aufzeichnung 1 erinnert werden, da sie so behandelt
werden müssen, als ob sie in Aufzeichnung 2 vorhanden wären (siehe Tabelle 1). 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 Y = Yl 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 Aufnahmesteile bezeichnet wird, die zwischen Aufzeichnungen
in Intervallen angeordnet ist, damit mögliche Startpositxonen 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.
MMM Il Il Il |
Tabelle | 3 | Y | = Ϊ3 | Felder | |
Aufzeichnungs-Nr. | Z = Z5 Z « Z6 Z = Z7 |
|||||
1 2 3 |
OU OU OJ MMM |
|||||
B098 19/0830
5.9.1975 W/He -20- I/p 8267
7547031
In diesem Fall ergibt sich, daß das Y-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-Aufzeichnungs-Nr.
1 X = X2
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 Aufanahmesteile. Diese besteht aus
dem speziellen Identifizierbyte 1, ohne Längenbyte oder Wertteil. Fig. 6 zeigt auch ein Null-Feld, das aus einem normalen Feldidentifizierbyte
I 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 das erfindungsgemäße System
in zwei Betriebsarten arbeiten. Die erste Betriebsart wird die Normalbetriebsart genannt, und in diesem Zustand kann das System
nur nichtkomprimierte Dateien verarbeiten, wie dies in den Tabellen 1 und 3 gezeigt ist.
= Y3 | Felder | Z5 | |
Y | = Null | Z = | Z6 |
Y | Z = | Z7 | |
Z = | |||
609819/08 30
5.9. 1975 W/He - 21 - I/p 8267
?.S 4 7 Π 3 1
Die zweite Betriebsart; wird die Erinnerungsbetriebsart genannt,
und in diesem Zustand kann das System 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.
Die Steuerlogik 6 für die Vergleichseinheiten ist im einzelnen in den Figuren 7-12I- dargestellt. Die Taktgabe dieser Steuerlogik
wird durch ein Haupttaktsignal ck gesteuert, das von dem Vielfachleitungs-Taktsignal
(Fig. 5) abgeleitet wird. Das Taktsignal ck ist jedoch nur vorhanden, wenn der Kanalzustand anzeigt, daß
ein Datenbereich auf der Datenvielfachleitung .4 vorhanden ist.
Hach 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-Gatter
112 durch ein DA-Beginn-Signal gesetzt, das aus dem Kanalzustand (Fig. 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-Gatter andere Eingänge zum
Setzen der bistabilen Schaltung Ho für nachfolgende Identifizierbytes auf. Die bistabile 110 wird beim ersten Taktimpuls ck rückgesetzt,
nachdem der Ausgang des ODER-Gatters 112 auf "O" zurückkehrt. »Schaltung
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 licht gleichzeitig ein
6ü9819/0830
5.9.1975 W/He - 22 - Ι/ρ 8267
Rücksetzsignal aufgenommen wird. Die bistabile Schaltung 111 wird
beim ersten Taktimpuls Ck rückgesetzt, nachdem das Identifiziersignal
entfernt ist.
Nach Fig. 8 wird jedes Datenbyte auf der Datenvielf achleitung kleinem Decodierer 113 aufgegeben, der so ausgelegt ist, daß er
Bytes gleich O, 1 und 2 zur Anzeige bringt. Der O-Ausgang des
Decodierers 113 wird in einem UND-Gatter 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 Decodierers in einem UND-Gatter 115 mit dem Identifizier-Signal kombiniert ,um
eine bistabile Schaltung 101 zu setzen, und ein Aufnahmepunkt-Ausgangssignal beim Auftreten einer Aufnahmepunkt-Identifizierung
en zu erzeugen. Die Signale "leer" und "Aufnahmepunkt" werd dem ODER-Gatter 112 so aufgegeben, daß verhindert wird, daß die bistabile
Schaltung 110 beim nächsten Taktimpuls rückgesetzt wird. Dies ist erforderlich, weil das nächste Byte, das auf eine Leeroder
Aufnahmepunkt-Identifizierung folgt, stets ein anderes Identifizierbyte
sein wird. Die Signale "leer" und "Aufnahmepunkt" werden nach einer 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 besj^itzt.
Der 2-Ausgang des Decodierers 113 'wird in einem UND-Gatter 116 mit
dem Längen-Signal so kombiniert, daß eine bistabile Schaltung 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-Gatter 112 aufgegeben, so daß die bistabile Schaltung 110 beim nächsten Taktimpuls Gk, 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 Fig. 9 wird jedes Byte auf der Datenvielf achleitung Lv einer
Vergleichseinferichtung 103 aufgegeben, wo es mit einem Schwellwert
609 8 19/0830
5.9.1975 W/He - 23 - I/p 8257
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 UO-Gatter 104 zusammen mit dem Identifizier-Signal aufgegeben.
Wenn das Gatter 104 wirksam gemacht ist, setzt es eine
bistabile 105, die ein Aufzeichnungsende-Signal erzeugt, das
das Vorhandensein einer Ergänzungsidentifizierung anzeigt,
* Schaltung;
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 Steuerverarbeitungseinrichtung den Speicher 109 mit Bits, um zu 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ä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 Identifizia?ungen im Bereich
248-255 als Ergänzungs-Identifizierungen erkannt und erzeugen ein Aufzeichnungsende-Signal.
sich
Daraus ergibt, daß durch Veränderung der Inhalte der Speicher 106, 109 die Grenzen der Aufzeichnungen in dem System effektiv verändert werden können.
Daraus ergibt, daß durch Veränderung der Inhalte der Speicher 106, 109 die Grenzen der Aufzeichnungen in dem System effektiv verändert werden können.
Nach Fig. 10 weist die Steuerlogik auch einen Zähler Il7 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 tnit
dem Längenbyte gefüllt und dann verringert wird, wenn aufeinanderfolgende Bytes des Feldes auftreten. Wenn der Zähler 117 somit
609819/0830
5.9.1975 W/He - 24 - I/p.8257
? 5 4 7 η 31
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 107 gesetzt und es wird ein Feldende-Ausgangssignal
erzeugt. Das Feldende-Signal wird dem ODER-Gatter 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. *Schnltung
Um eine Anpassung an die im HuItipiex-Betrieb 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 ges/^peichert. Der Speicher 108 besitzt zwölf Speicherplätze
und wird durch die Kanalzahl adressiert, so daß gewähleistet 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 Fig. 11 weist die Steurlogik ferner einen anderen Zähler 119
auf, dessen Ausgang eine Byte-Adresse ergibt, die zur Adressierung der Schlüsselspeicher in den Vergleichseinheiten 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-Sigtal
6U9819/083G
5.9.1975 W/He - 25 - I/p 8257
' 7 B 4 7-n 3 1
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.
durch
Die Betriebsart des Systems wird einBetriebsart- Signal gesteuert, das "1" ist, wenn der normale Betrieb gewünscht ist, und das "0" ist, wenn der Erinnerungsbetrieb erforderlich ist. Dieses Signal wird von einem Register 124 abgeleitet, das eine Vielzahl von individuell 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-Gatter 125 kombiniert, so daß ein Signal besteht, das als das Er innerungs-Signal bezeichnet wird. Dieses Signal zeigt den Vergleichseinheiten an, ob sie die Resultate der Vergleiche erinnern sollen oder nicht: Im Normalbetrieb ist das Erinnerung-Signal stets "1", was anzeigt, daß keine Erinnerung eintritt, während im Erinnerungsbetrieb das Erinnerungs-Signal "0" ist, mit Ausnahme
Die Betriebsart des Systems wird einBetriebsart- Signal gesteuert, das "1" ist, wenn der normale Betrieb gewünscht ist, und das "0" ist, wenn der Erinnerungsbetrieb erforderlich ist. Dieses Signal wird von einem Register 124 abgeleitet, das eine Vielzahl von individuell 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-Gatter 125 kombiniert, so daß ein Signal besteht, das als das Er innerungs-Signal bezeichnet wird. Dieses Signal zeigt den Vergleichseinheiten an, ob sie die Resultate der Vergleiche erinnern sollen oder nicht: Im Normalbetrieb ist das Erinnerung-Signal stets "1", was anzeigt, daß keine Erinnerung eintritt, während im Erinnerungsbetrieb das Erinnerungs-Signal "0" ist, mit Ausnahme
nahmefür die erste Aufzeichnung nach einem Auf/punkt, wenn, wie oben
erwähnt, eine Erinnerung nicht erforderlich ist.
Die Steuerlogikschaltung nach den Figuren 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 Information 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.
gezeigt. Ein Speicher 126 mit direktem Zugriff besitzt zwölf V/ortspeicherplä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 Schalter, auf die
6ü9819/0830
5.9.1975 W/He - 26 - Τ/ρ 8257
2547Π31
vorstehend bezug genommen ist, in das laufend adressierte Wort
des Speichers 126 eingeschrieben. Wenn in umgekehrter Weise ein
Start-GOB-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 die Steuerlogik auch einen Satz von Taktsignalen, die als Takte 1 und 2 sowie Takte A, B, G bezeichnet sind. Die
Takte 1 und 2 werden aus dem Grundfcaktsignal Ck mit Hilfe einer
angezapften Verzögerungsleitung 127 abgeleitet, wobei die Verzögerung für den Tykt 2 größer ist. Der Takt A wird von dem Takt
2 über ein UND-Gatter 128 abgeleitet, das gesperrt ist, wenn
das Längen-Signal vorhanden ist. Takt B wird von dem Takt 1 über ein UND-Gatter 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-Gatter 130 abgeleitet, das nur
wirksam gemacht wird, wenn das Länge-Signal vorhanden ist. Ein anderes Signal, das als das vOreinstell-SLgnal bezeichnet wird,
wird von dem Takt 1 über ein UND-Gatter IJl abgeleitet, das nur
wirksam gemacht wird, wenn das Identifizier-Signal vorhanden ist.
Die Figuren 15 und 16 zeigen eine der Vergleichseinheiten 5 im
Detail. Nach Fig. 15 weist Jede Vergleichseinheit einen Speicher 230 mit direktem Zugriff ,'"der als Schlüsselspeicher bezeichnet
ist und der die Schlüsselwerte für den Vergleich mit den einkommenden Daten auf der Vielfachleitung 4 hält. Jeder Schlüsselspeicher
hält 256 Bytes und wird von der Byte-Adresse aus der
Steuerlogik adressiert. Das Format eines Schlüsselwertes im Schlüsselspeicher ist identisch dem eines Datenfeldes nach. Fig. 6,
d.h. es weist ein Identifizierbyte, ein Längenbyte und einen Wertteil veränderlicher Länge auf. Jeder Schlusselspeieher kann
verschiedene solcher Schlüsselwerte enthalten, jeder Schlüsselwert ist in sequentiellen Byte-Speicherplätzen innerhalb des
6098 19/0830
5.9.1975 W/He - 27 - Ι/ρ 82£7
Schlüsselspeichers 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 Vergleichseinheit (und zwar ein Byte gleichzeitig) in Ausrichtung mit dem
Datenfeld ausgelesen, d.h., daß das Identifizierbyte des Schlüsselwertes zur gleichen Zeit ausgelesen wird wie das Identifizierbyte
des Datenfeldes auf der Vielfachleitung erscheint, usw.
Jede Vergleichseinheit enthält eiaen 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-Gattern 228 mit dem
Datenbyte auf der Vielfachleitung 4 kombiniert, und das Ergebnis wird einem Eingang einer Vergleichseinferichtung 231 aufgegeben,
dessen 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 durchdie Steuerverarbeitungseinrichtung
gefordert wird. De 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 Fig. 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. Venn die beiden Bytes nicht passen, wird ein NAND-Gatter 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
609819/08 3 0
5.9-1975 W/He - 28 - I/p 8267
nächsten Feldes und dies beendet effektiv den Vergleich für das Feld.
Nimmt man jedoch an, daß das Identifizierbyte paßt, 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 dementsprechenden Byte
im Schlüsselwert angepaßt ist, 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-Gatter 233 und 234- in eine der beiden bistabilen
Verriegelungen 235 und 236 gegattert. Wenn andererseits keine
Fehlanpassung während des Vergleichsvorganges auftritt, wird die Verriegelung 232 trotzdem gesetzt, und der Ausgang der Vergleichseinrichtung wird "gleich", wenn das Ende des Feldes auftritt.
Dies ergibt das Wirksammachen eines anderen NAND-Gatters 237?
wodurch eine andere Verriegelung 238 gesetzt wird. Die drei Verriegelungen
2355 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 Verglexchseinheit, soweit sie bisher beschrieben wurde, wie folgt zusammengefaßt: Bei jedem
Datenfeld wird zu Beginn das Identifizierbyte mit dem des gespeicherten Schlüsselwertes 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 Identiflzier-Anpassung
609819/0830
5-9.1975 W/He - 29 - I/p 8267
erzeugt, wird der Wertteil dieses leides 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 IPeldvergleiches (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 Feldsignales erzeugt wird. Wenn beispielsweise der Schlüsselwert im Schlüsselspeicher
eine 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üsselwertes zum Vergleich herangezogen und die beiden übrigen vernachlässigt.
Eine weitere Verriegelung 239 ist den Ifeldverriegelungen zugeordnet.
Die Verriegelung 239 wird ebenfalls am Ende einer jeden Aufzeichnung
rückgesetzt, und beim Auftreten eines Mullfeldes mit einer Identifizierung I gesetzt, die der des Auswahlschlüssels
angepaßt ist. Dies wird durch ein NAND-Gatter 240 erreicht, das den gesetzten Ausgang der Verriegelung 222, den Takt G, und das Null-Signal
aus der Steuerlogik aufnimmt.
Die Inhalte der verschiedenen Verriegelungen 232, 235, 236, 238 und 239 in der Vergleichseinheit werden in einer Speicheranordnung
mit direktem 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-Gatter
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 adressierten Wort dieses
Speichers wird dem SEU aufgegeben und stellt die Resultate des durch die Vergleichseinheit durchgeführten Vergleiches dar.
609819/0830
5.9.1975 W/He -. 30· - I/p 8267
Der Schreibfreigabeeingang des Speichers 244 ist mit dem Ausgang eines UND-Gatters 247 verbunden; ein Eingang dieses UND-Gatters
247 nimmt das Aufzeichnungs-Ende-Signal aus der Steuerlogik auf,
und der andere Eingang den Ausgang eines ODER-Gatters 248. Das ODER-Gatter 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 Erinnerungs-Signal aus der
Steuerlogik aufnimmt. Der Ausgang des Gatters 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 Vergleichseinheit in den beiden Betriebsarten beschrieben.
Im normalen Betrieb ist Erinnerung stets gleich "1". Somit ist
der Ausgang aus dem ODER-Gatter 248 stets "1" , und damit wird das UND-Gatter 247 am Ende einer jeden Aufzeichnung wirksam gemacht,
so daß ein Schreibfreigabesignal im Speicher 244 aufgegeben wird. Da keine Null-IPelder bei dieser Betriebsart verwendet werden,
bleibt die Verklinkung 239 rückgesetzt und macht die UND-Gatter 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 sdchen 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-Gatter 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-Gatter 241-243 unwirksam gemacht
und der Speicher 244 wird durch Nullen auf den letzten Stand
609819/0830
5.9.1975 W/He - 31- I/p 8267
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-Gatter 248 und infolgedessen das UND-Gatter 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 Vergleichseinheit ist, wie sich durch SEU 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 die Möglichkeit des Vegleiches 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 Vergleichseinheiten, die nachstehend als Vergleichseinheiten A und B bezeichnet
werden, deren Schlüsselspeicher zu Beginn mit den Identifizierbytes der beiden Felder, die miteinander verglichen werden sollen,
gefüllt sind.
Der Substitutionssuchbetrieb wird durch eine logische Schaltung gesteuert, die den beiden Vergleichseinheiten A und B zugeordnet
und in Fig. 17 gezeigt ist. Zweckmäßigerweise sind diese logische Schaltung und die beiden Vergleichseinheiten auf der gleichen
Schalttafel angeordnet.
609819/0830
5.9.1975 W/He - 32 - i/p 8267
? F> 4 7 ΓΙ 3 1
Nach. Fig. 17 enthält die Substitutionssuchlogik ein Paar bistabiler
Schaltungen 250 und 251 vom D-Typ, die beide durch den Ausgang
einen UiTD-Gatters get—aktet sind, welches das Länge-Signal
und den Takt 1 aufnimmt. Die bistabile Schaltung 250 nimmt als Eingang den gesetzten Ausgang der bistabilen Schaltung 2J2 (Fig.
in der Vergleichseinheit A auf; dieses Signal wird als "vorhanden
(A)" bezeichnet. In ähnlicher Weise nimmt die bistabile Schaltung 251 d-en entsprechenden Ausgang "vorhanden (B)" aus der Vergleichseiiihoit
B auf.
Der Substitutionssuchbetrieb wird durch ein Substitutions-Signal eingeleitet, das den beiden UND-Gattern 253, 254- zusammen mit dem
Takt B aufgegeben wird. Die Gatter 2551 254 nehmen auch die gesetzten
Ausgänge der bistabilen Schaltungen 250, 251 auf. Die Ausgänge dieser Gatter sind Signale, die als Schreibsteuer-Signal
(B) und Schreibsteuer-Signal (A) bezeichnet werden.
Nach Fig. 18 wird das Schreibsteuer-Signal (A) einem NOR-Gatter 255 aufgegeben, dessen Ausgang dem Schreibsteuer-Anschluß WE des
Schlüsselsspeichers 250 der Einheit A aufgegeben wird. Dies ermöglicht,
daß Daten in den Speicher aus der Datenvielfachleitung
4 über ein ODER-Gatter 256 eingeschrieben werden. (Der andere Eingang
zum ITOR-Gatter 255 ist ein Änderungs-Signal, das verwendet wird, wenn der Speicher aus der Steuerverarbeitungseinrichtung
auf den neuesten Stand gebracht werden soll, wobei die Daten zum auf den neuesten Standbringen des Speichers dem ODER-Gatter 256
über einen Pfad 257 aufgegeben werden, wenn keine Daten auf der Datenvielfachleitung 4 vorhanden sind). Das Schreibsteuer-Signal
(B) wird dem Schlüsselspeicher der Einheit B in ähnlicher V/eise aufgegeben.
Nach Fig. 17 werden die Ausgänge der bistabilen Schaltungen 250, 251 entsprechenden NAND-Gattern 258» 259 ebenfalls aufgegeben,
von denen jedes auch das Substitutions-Signal und das Voreinstell-Signal
aufnimmt. Die Ausgänge der Gatter 258, 259 werden entsprechenden bistabilen Schaltungen 260, 261 vom D-Typ aufgegeben,
6Q9819/0Ö3Q
c q ι one: -,.τ/Up "Z-Z Ύ/τ· -a':£,·".'
_-- · .7 · -L y I y W/lie — Qj — _L/ p OiS-O/
■ - ? R 4 7 η 3 1
deren Ausgänge wiederum den entsprechenden UOH-Gattern 262, 263
zugeführt werden. Diese NOR-Gatter nehmen auch einen Eingang aus. einem Uü'D-Gntter 26zr aui', dem als Eingänge aufgegeben werden:
Das Substitutions-Signal, das Länge-Signal, Takt 2 und die i.Xiversen
Werte der Ausgänge der bistabilen Schaltungen 260, 261.
Die Ausgänge der NOR-Gatter 262, 263 werden den Rückset^eingängen
der bistabilen Schaltungen 2j>2 (Fig. 16) in den Einheiten A und
B aufgegeben.
Die Arbeitsweise des Systems in der Subs ti tut ionssuoh.be t.riebsart
wird nachstehend beschrieben. Zu Beginn jeder Aufzeichnung werden alle bistabilen Schaltungen 250, 251 ■>
260 und 261 durch den inversen Wert des Aul*zeicimungs-Ende-Signales rückgesetzt.
Es sei angenommen, daß eine Identifizieranpassung zuerst durch
die Einheit A angezeigt wird. Dies ergibt, daß die bistabile Schaltung 250 bei Hakt 1 in dem folgenden Länge-Byte gesetzt wird.
Das UtTO-Gatter 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 Ll in den- Schlüsselspeicher der Einheit
B eingeschrieben wird. Da beide bistabilen Schaltungen 260 und
261 rückgesetzt sind, wird das UiJD-Ga tt er 264 bei Takt 2 während
des Länge-Bytes wirksam gemacht; dadurch werden die NOR-Gatter
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 Gattern 253, 259 aufgegeben und da die bistabile Schaltung 250
an dieser Stelle noch gesetzt ist, wird dasGatter 258 wirksam
gemacht und die bistabile Schaltung 260 gesetzt und bleibt bis zum Ende der Aufzeichnung gesetzt. Das Gatter 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 1-Impuls rückgesetzt
und verhindert die Erzeugung weiterer Schreibfreigabe (B)-Signale.
609819/0830
^.9.1975) "w/He - im - - yXJ 826?
? -S 4 7 Π 3 1
Es sei nun angenommen, daß eine Identif izieranpassung. durch die
Einheit B für ein nachfolgende::; Dn tenfold in der gleichen Aufzeichnung
angezeigt wird. Ef; wird düta.sJt ein Vergleich zwischen
dem in den. 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 v/erden, 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 bistab Ie Schaltung 261 wird am Ende
des Feldes" gesetzt und ein Hückse tz-^B)-Signal, das alle weiteren
Vergleiche in der Einheit B bis zun. Ende der Aufzeichnung sperrt.
r JL. ' * - il' ■ - ·
Somit; wird am Ende der Aufzeichnung der Speicher 2Ah der Einheit
A (der ersten Einheit, die eine Identifizieranpassung erhält) mit
einer "nicht vorhanden"-Anzeige (d.h. allen Nullen) auf den neuesten
Stand gebracht, während der Speicher 2-4 der Einheit B mit
dem Ergebnis des Vergleiches der beiden Feldwerte auf den letzten Stand gebracht wird. Diese Speicher stehen dann für die Suchauswerteinheit(SEU)
in der vorbeschriebenen Weise zur Verfugung.
Da die Schaltung nach Fig. 1? in bezug auf die Einheit A und die
Einheit B symmetrisch ist, würde ein ähnliches Ergebnis ersielt werden, wenn die Einheit B die■erste Einheit zur Erzielung einer
Identifizieranpassung wäre. In diesem Falle gibt die Einheit B
die "!licht vorhanden"-Anzeige und. die Einheit A ergibt das Ergebnis
des Wertfeldvergleiches.
In Übereinstimmung mit dem Multiplexbetrieb der Daten werden die
Inhalte der Verriegelungen 25-0, 251, 260 und 261 in einem Speicher
609819/0830
3».9.197^ W/He -B^- I/p 8267
? S /ι 7 Π 3 1
rait direktem Zugriff am Ende einer jeden Gruppe von Bytes in
ähnlicher Weise v/I - hi Verbindung rait Fig. lh? beschrieben gespeichert.
In der Praxis ist die Zeitschaltung der Vergleichseinheitcn und
der zugehörigen Logik um ein Byte in bezug auf die der Mu] tipiexeinrichtung
verzögert, damit "Verzögerungen in der Signal"! auf zeit
usw. möglich sind. Somit mÜGGen die Steuersignale Kanalzahl, GOB-Beginn
und GOB-Ende, die von der Multiplex-Einrichtung zu diesen
anderen Einheiten gelangen, urn diesen Wert verzögert werden. Wegen der Verzögerungen im Vergleich stellt man ferner fest, daß die
dem Speicher 2MA (Fig. 16) aufgegebene Kanalzah] um et via 1 1/2
Bytes verzögert werden soll.
Eine Darstellung der Verwendung der Schlüsselspeicher in den Vergleichseinheiten wird nachstehend in Verbindung mit Fig. 19
gegeben. In dieser Figur sind die Schlüsselspeicher der sechzehn Vergleichseinheiten seitlich nebeneinander dargestellt, und jede
Spalte stellt einen Schlüsselwert dar. Es sei angenommen, daß Information aus vier Dateien verarbeitet werden soll, wobei jede
Datei einen unterschiedlichen Satz von Schlüsselwerten besitzt. Vier Bezugswerte D0-D3 werden deshalb in den Bezugsspeicher 120
(B'ig. 11)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üsselspeicher kann deshalb vier Schlüsselwerte halten
(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 Vergleichseinheiten auch als "vertikal"
in -Gruppen unterteilt angesehen werden. Bei diesem Beispiel werden die Einheiten in vier Gruppen von jeweils vier Einheiten
unterteilt, wie dies durch die dicken vertikalen Linien dargestellt ist. Jede Gruppe von Vergleichseinheiten kann dann
einer getrennter Suchausgabe in den gleichen Dateien zugewiesen werden. Daraus ergibt sich, daß bei diesem Beispiel die horizontale
609819/083 0
?.9.197'; W/He - 56 - I/p 826?
■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 Vergleichseinheiten in Gruppen wird durch die Art und Weise bestimmt, in der die Suchauswerteinheit die
Ergebnisse aus den Vergleichseinheiten verarbeitet.
nachstehend wird die Suchauswerteinheit (SEU) im einzelnen in
Verbindung mit den Figuren 20-25 beschrieben.
Nach Fig. 20 weist die SEU 16 Verarbeitungselemente P(O) - P(15), und zwar eines für jede Vergleichseinheit 5^ auf. Die Verarbeitungselemente
besitzen eine gemeinsame Steuereinheit 300, Auswählfunktionseinheit 301 und Quorum (beschlußfähige Anzahl)-Funktionseinheit
302. Jedes Verarbeitungselement kann Daten auf das folgende Element nacheinander übertragen (das letzte Element
in der Folge kann wiederum mit dem ersten verbunden sein, so daß ein geschlossener Kreis von Elementen gebildet wird).
Fig. 21 zeigt den Aufbau eines der Verabeitungselemente P(N).
Dieses Element weist drei Verriegelungen 303-305 auf, die die
betreffende Information (größer als, gleich, kleiner als) aus dem Resultatsspeicher 244 (Fig. 16) der zugeordneten Vergleichseinheit aufnehmen. Diese Resultate werden in die Verriegelungen
durch ein Bewertungs-Beginn-Signal eingetaktet.
Das Verarbeitungselement weist einen Instruktionsspeicher 306 auf, der ein oder mehrere Folget von Makroinstruktionen mit
jeweils neun Bits, bis zu einer Gesamtanzahl von 32 Makroinstruktionen halten kann. Die maximale Länge einer gegebenen Folge beträgt
15 Mikroinstruktionen. Der Grund hierfür ist, daß die
609819/0830
5-9.1975 W/He - 37 - I/r- 8267
längste Folge innerhalb von sechzehn Bvcereriocien (die tiinim
Aufzeichnungslänge) abgeschlossen sein muß.
Aufzeichnungslänge) abgeschlossen sein muß.
Makroinstruktionen werden aus dem Inslruktionsspeicher 306 einzeln
durch Instruktionsadressen-Signale aus der Steuereinheit 300 ausgelesen und werden einer logischen Einheit 307 ,aufgegeben. Der
Ausgang der Einheit 307 ist ein Binärsignal R(i0, das in einer
Verriegelung 308 gespeichert werden kann, die als Resultatsspeicher bezeichnet wird. Die logische Einheib nimmt als Dateneingänge auf: Die Inhalte der drei Verriegelungen 303-305, den Ausgang S(K) aus dem Resultai-sspeiche-r , und den Ausgang JJ(K-I) aus der logischen Einheit des vorausgehenden Verarbeitungselementes
P (N-I).
Ausgang der Einheit 307 ist ein Binärsignal R(i0, das in einer
Verriegelung 308 gespeichert werden kann, die als Resultatsspeicher bezeichnet wird. Die logische Einheib nimmt als Dateneingänge auf: Die Inhalte der drei Verriegelungen 303-305, den Ausgang S(K) aus dem Resultai-sspeiche-r , und den Ausgang JJ(K-I) aus der logischen Einheit des vorausgehenden Verarbeitungselementes
P (N-I).
Fig. 22 zeig1, die logische Einheit 307 im einzelnen. Zweckmäßigerweise
werden die Symbole bl-bS zur Daretellung der neun Bits der
laufenden, i-ükroinstruk^ion verwendet, v/ährynd die Synibole "größer
als", "kleiner als" und "gleich" die Ausgänge der entsprechenden
Verriegelungen 305-505 darstellen.
Die Einheit besitzt zwei Betriebsarten. In der ersten Betriebsart,
ist
die durch ~ö5=0 bestimmt ist, der Ausgang R(H) wie folgt:
die durch ~ö5=0 bestimmt ist, der Ausgang R(H) wie folgt:
b8,b9 H(N)
00 S(Iv) OUD X
01 X
10 - - S(N)
11 S(R) ODER X
wobei X eine ODEH-Funktion der Vergleichsinformation aus den
Verriegelungen 303-305 darstellt. Die exakte Natur dieser ODER-Funktion wird durch bl-b3 bestimmt. Auch wenn b4=l, ist der Ausgang "Auswählen" aus der Auswählfunktionseinheit in dieser ODER-Funktion eingeschlossen.
Verriegelungen 303-305 darstellt. Die exakte Natur dieser ODER-Funktion wird durch bl-b3 bestimmt. Auch wenn b4=l, ist der Ausgang "Auswählen" aus der Auswählfunktionseinheit in dieser ODER-Funktion eingeschlossen.
609819/0830
.5-9.1975 W/IIe - 3$ - I/p &26?
? 5 4 7113 1
In der zweiten Betriebsart, die durch b5=l bestimme ist, ist der
Ausgang R(N) wie folgt:
bl,b2 H(Ii)
CO S(H) UND R (Ii-I)
0.1 S(Li;
10 K(Ii-I)
Bit o7=l bewirkt, ciaB das .Resultat Ii(H) iß den Resultatsspeieher
einge schrieb en wird, während Bit bo=l bewirkt, daß der Au.sga.ng
S(II) des EpsuItat-sspcichers invertiert wird. (Vergleiche Fig. 2.1).
L'ach Fig. 23 weist die Auswahlvi'unktion«einheit 301 eiren Speicher
305 mit direktem Zugriff suf, der yi v/ortplätze besitz.., die durch
die Instrukti-onsadre>8se aus eier Steuereinheit adressiert; werden.
Jeder dieser Speicherplätze enthalt eine Adresse die eines der Versrbeitungselemente P(ü) spezifiziert,und wird so dekodiert,
daß der üesul^atsspeicher-ausgang S(N) dieses Elementes als das
Aucgangssignal "Auswählen-" ausgewählt wird. Dieses Signal wird
allen Verarbeitungselementen aufgegeben, wie oben in Verbindung
mit Fig. 22 erläutert.
Die Auswählfunktionseinheifc ergibt somit die MöglichkeLt, Informationen
auc dem Äesultatsspeicher eines beliebigen ausgewählten
Verarbeitungseleraences auf die logische Einheit; eines beliebigen
anderen Elementes zu übertragen.
ITach Fig. 2M weist die Quorum-Funktionseinheit einen Speicher
mit direktem Zugriff auf, der 32 \/ortSpeicherplätze besitzt, die
durch die Instruktionsadresse adressiert werden. Diese Einheit weist auch eine Multiplexeinrichtung JIl auf, die einen der Ausgänge
S(O)-S(IJ) aus den Verarbeiturigselementen in Übereinstimmung
mit den Inhalten eines Vler-Bit-Zählers J19 auswählt.
609819/0830
5.9.1975 W/He - ZS - l/p 326?
? h A 7 η 31
Da jede Mikroinstruktionsfolge νου den Verarbeitungselementen
durchgeführt wird, wird iir, Betrietyeinc entsprechende Folge; von
Speicherplätzen im Speicher 510 adressiert. Der erste Speicherplatz
dieser Folge ist so ausgebldet, daß er einen Schwellwert
von sieben Bits enthält, xvährend die nachfolgenden Speicherplätze
einen Satz Mon ., .,,-, v/e,r_ten enthalten.
Während die erste Hikroinstruktion in der Folge durch die Verarbeitungselemente
ausgeführt wird, wird der Schwellwert aus dem Speicher 510 ausgelesen und in ein Register 512 eingeführt.
Die Instruktionsadresse wird dann erhöht, der Zähler 519 auf
Null gesetzt und die Multi .piexeinrichtung 5H wirksam gemacht.
Während die nächste Makroinstruktion in. der Folge durchgeführt
wird, wird der erste Stellenwert des Speichers 530 ausgelesen,
während die Hultiplexeinrichtung 511 gleichzeitig den Ausgang
S(O) auswählt. Wenn S(O)=I wird ein Satz von UND-Gattern 515
wirksam gemacht, wodurch der Stellenwert in ein Akkuinulatorregister
314 eingegattert wird, v/o er dem Inhalt des Akkumulators
hinzuaddiert wird (vorausgesetzt, daß er anfangs auf Nu]. 1 gesetzt
war) .
Dieser Vorgang wird für jede nachfolgende Adresse fortgesetzt, so daß die Ausgänge S(O), S(I), S(2) usw. nacheinander mit ihren
entsprechenden Stellenwerten logisch UND-geschaltet werden und
der Gesamtsumme im Akkumulator hinzuaddiert werO<~-ii.
Der akkumulierte Gesamtwert wird fortlaufend in einer Schaltung 315 mit dem Schwellwert im Register 312 verglichen, und wenn der
Schwellwert überschritten wird, wird ein Quorum-Signal erzeugt. Wie in Fig. 23 angezeigt, steht das Signal zur Auswahl durch die
Auswählfunktionseinheit in gleicher Weise wie jeder der Resultat Speicherausgänge
zur Verfügung.
609819/0830
5.9.1975 W/IIe - 40 - I/p 8267
7547031
Die Quorum-Funktion ergibt somit die Möglichkeit, eine Reihe von
bewerteten Resultaten aus den einzelnen Verarbeitungselementen miteinander zu addieren und zu bestimmen, ob die Summe einen
Schwellwert übersteigt. Nicht alle Verarbeitungselemente haben zu dieser Summe beizutragen: Die Stellenwerte der Elemente, die
nicht erforderlich sind, sind auf Hull gesetzt.
Jeder Resultat ^speicher muß in der erforderlichen V/eise programmiert
sein, bevor er durch die Quorum-Funktion verwendet wird. Die Bewertungsfolge
für das Verarbeitungselement P(N) darf nicht langer in Anspruch nehmen als N+l Makroinstruktionen. Beispielsweise darf
die Bewertungsfolge für das Verarbeitungselement P(O) nur eine Instruktion in Angruch nehmen. Da die Quorum-Funktion das Äquivalent
von N+l Mikroinstruktionen zur Bewertung der Ausgänge aus N-Verarbeitungselementen in Anspruch nimmt, kann der Quorum-Ausgang
für diese N-Elemente bis zur N+2 ten Mikroinstruktion der
Auswählfunktionseinheit nicht ausgewählt werden.
Als Beispiel für die Anwendung der Quorum-Funktion sei angenommen,
daß es erforderlich ist, zu bestimmen, ob die Resultate der Bewertungen, die durch beliebige vier der ersten acht Verarbeitungselemente vorgenommen werden, echt sind. Die Stellenwerte für diese
acht Elemente werden alle auf Eins gesetzt, während der Rest Null ist, und der Schwellwert wird auf Drei gesetzt. In diesem Fall
wird die Bewertung der Quorum-Punktion nach neun Mikroinstruktionen
vervollständigt, und die Quorum-Abgabe kann durch die zehnte Mikroinstruktion der Auswählfunktion ausgewählt werden.
Fig. 25 zeigt die Steuereinheit 500. Die Einheit weist einen
Speicher 316 mit direktem Zugriff auf, der durch die Kanalzahl
adressiert wird und der in jedem Speicherplatz die Startadresse einer Mikroprogrammfolge enthält, die dem in Frage kommenden
Kanal entspricht. Jeder Speicherplatz enthält auch eine Folgelänge.
609819/08 30
5.9.1975 W/He -41 - i/p 8267
? .S 4 7 Π 3 1
Der Betrieb der Steuereinheit wird durch ein Aufzeichnungs-Signal
eingeleitet, das (vorausgesetzt, daß die SEU nicht zu stark beansprucht ist) bewirkt, daß ein Instruktionszähler yl/ rrdt der
entsprechenden Startadresse für den in "Frage kommenden Kanal versehen wird, und bewirkt, daß ein Folgelängenzähler 318 mit der
entsprechenden Folgenlänge versehen wird. Der Instruktionszähler wird dann so vergrößer';, daß eine Folge von Instruktionsadressen-Signalen
erzeugt wird, die auf die Verarbeitungselemente, die Auswählfunktionseinheit und die Quorum-Funktionseinheit übertragen
werden. Gleichzeitig wird der Längenzähler verkleinert, und wenn er Null erreicht, wird die Folge beendet und ein Bereit-Signal
abgegeben. Dies gibt: der Wiederauffindeinheit 10 (Fig. 1) an,
daß die Bewertung der Ergebnisse für die in Frage kommende Aufzeichnung
nunmehr vollständig und für die' Inspektion in den Resultatsspeichern
der■ YexarbeitungGelemente zur Verfügung ist.
Da die Suchauswerteinheit (SEU) aus οiner Anzahl (16) Verarbeitungs
elementen besteht, die parallel arbeiten, hat sie eine erhebliche Verarbeitungskapazität, da eine Anzahl von unterschiedlichen Arbeitsvorgängen
für jeden Mikroinstruktionsschritt durchgeführt
werden kann. Darüber hinaus können die Verarbeitungselemente in
Gruppen unterteilt werden, wobei jede Gruppe eine getrennte Bewertungsaufgabe durchführt. Beispielsweise sei die in Verbindung
mit Fig. 19 erwähnte Anordnung betrachtet. In diesem Fall werden die Verarbeitungselemente in Gruppen von vier unterteilt, wobei
jede Gruppe die Vergleichsinformation aus der entsprechenden Gruppe von Schlüsselspeichern bewertet. Bei diesem Beispiel enthält
jedes Verarbeitungselement vier Folgen von Makroinstruktionen, und zwar eine für jede Datei entsprechend den vier horizontalen
Abteilungen in Fig. 19·
Beispielsweise kann die Anzahl von Datenkanälen, die miteinander
im Zeitmultiplex-Verfahren betrieben werden, verändert werden. Die Begrenzung liegt darin, daß die Vergleichseinheiten in der
609819/0830
5.9.1975 W/He - 42 - Ι/ρ 8267
? 5 4 7 Π 3 1
Lage sein müssen, die gesamte Information zu bewältigen. In ähnlicher
Weise kann die Anzahl von Vergleichseinheiten ebenfalls entsprechend den Anforderungen verändert werden.
Eine weitere mögliche Modifizierung besteht darin, die Doppelpufferanordnung
in jeder Kanaleinheit durch einenSpeicher vom Typ "first-in first-out ripple througlr/ Bei einer anderen
möglichen Modifikation können die Vergleichseinheiten so modifiziert werden, daß der Vergleich eines gegebenen Datenfeldes
beendet wird, wenn das Länge. .-Byte dieses Feldes kleiner ist als
das Länge-Byte, das in dem Schlüsselspeicher enthalten ist, was in manchen Fällen erwünscht ist. Dies kann dadurch erreicht werden,
daß Takt 2, Länge-Signal und der "kleiner als "-Ausgang der Vergleichseinrichtung 231 (Fig. 15) zusammen in UND-Schaltung
betrieben werden, daß diese mit dem Ausgang des Gatters 227 (Fig. 16) in ODER-Schaltung betrieben werden, und daß das Resultat
zum Rücksetzen der Verklinkung 232 verwendet wird.
6098 1 9/0830
Claims (8)
- 3 7547031P a t e η t a η s ρ r ü c h eDatenverarbeitungseinrichtung rait einer Datenspeiclieranordnung, die eine Vielzahl von Datenkanälen aufweist, und mit einer Vielzahl von Vergleiohseinheiten zur Durchführung von Vergleichen zwischen den Daten und entsprechenden Schlüsselwerten, dadurch gekennzeichnet, daß die Datenkanäle im Zeitmultiplexbetrieb miteinander geschaltet sind und die Vergleichseinheiten (5) parallel für die gebündelten Daten betreibbar sind, wobei jede Vergleichseinheit simultan zwischen den Datenkanälen arbeitet, um unabhängig an den Daten aus den unterschiedlichen Kanälen "\6cgleiche durchzuführen.
- 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Speicheranordnung (i) eine Vielzahl von Plattendateeeinheiten (S, M) aufweist und eine Schalteinheit (2) zur Auswahl einer Untergruppe der Spuren aus den Dateeeinheiten (S, M) für den Multiplexbetrieb besitzt.
- 3. Einrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß jeder Datenkanal eine Steuerinforination 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 geschaltet ist, so daß die Steuerinformation von jedem Kanal unabhängig gehandhabt wird.
- 4. Einrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Daten in jedem Kanal als eine Folge von Datenbereichen (DA) angeordnet sind und die Steuerinformation einen Zählbereich (CA) enthält, die jedem Datenbereich zur Identifizierung dieses Datenbereiches zugeordnet ist, und daß die Steuereinrichtung eine Einrichtung (400, 401) zur Anpassung der Zählbereiche in jedem Kanal aufweist.6098 19/0830- *4 - Ι/ρ 8267?547Π31
- 5. Einrichtung nach. Anspruch 1-4, dadurch gekennzeichnet,daß die Datenkanäle von der Speicheranordnung in entsprechende Pufferspeicher (B1, B2) gelesen werden, daß die Inhalte der Puffer einzeln nacheinander mit einer höheren Geschwindigkeit ausgelesen v/erden als die Inhalte der Kanäle in die einzelnen Pufferspeicher eingelesen werden, daß jeder Puffer nach dem I1UIlen ein Anfragesignal einleitet, und daß eine Vorrichtung (26) vorgesehen ist, die auf Jedes ausstehende Anfragesignal dadurch anspricht, daß die Inhalte des zugeordneten Puffers ausgelesen werden.
- 6. Einrichtung nach Anspruch 1-5, dadurch gekennzeichnet, daß jede Yergleichseinheit (5) «ine 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 in diesem Speicher vor jeder Änderung der Kanalzahl gespeichert werden und der Ausgang dieses Speichex^s verwendet wird, um die Speichervorrichtung im Anschluß an jede Änderung der Kanalzahl erneut zu füllen.
- 7. Einrichtung nach Anspruch 1-6, dadurch gekennzeichnet, daß jede Vergleichseinheit (5) einen Speicher (244) aufweist, der die Endresultate eines Vergleiches hält, daß dieser Speicher einen Wortspeicherplatz für jeden Datenkanal besitzt und durch ein Kanalzahlsignal adressiert wird, das anzeigt, wlecher Dataakanal gerade den Vergleichseinheiten aufgeschaltet wird.
- 8. Dat enverarbeitungs einrichtung mit einer Datenspeicher anordnung, die ein Speichermedium aufweist, das eine Vielzahl von Spuren mit Wandlerköpfen zum Auslesen der Daten aus den Spuren aufnimmt, dadurch gekennzeichnet, daß die Ausgänge aus den Köpfen entsprechenden Puffern (B1, B2) aufgegeben werden, und daß die Inhalte der Puffer mit einer höheren Geschwindigkeit ausgelesen werden, als die Daten in jeden einzelnen Puffer eingeschrieben werden, damit auf einer Datenvielfachleitung (4) ein Zeitmultiplexsignal erzeugt wird, das Daten aus allen Spuren enthält.609 819/08 3 0Leerseite
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB46818/74A GB1497677A (en) | 1974-10-29 | 1974-10-29 | Contents addressable memory systems |
GB46817/74A GB1497676A (en) | 1974-10-29 | 1974-10-29 | Data processing systems |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2547031A1 true DE2547031A1 (de) | 1976-05-06 |
DE2547031B2 DE2547031B2 (de) | 1980-01-10 |
DE2547031C3 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)
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 |
FR2499732A2 (fr) * | 1979-06-19 | 1982-08-13 | Jacques Vidalin | Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement |
FR2459512A1 (fr) * | 1979-06-19 | 1981-01-09 | Vidalin Jacques | Procede pour la commande de rapprochement a effectuer entre des entites logiques de reference et des entites logiques issues d'un fichier |
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 |
-
1975
- 1975-07-31 IN IN1512/CAL/1975A patent/IN142852B/en unknown
- 1975-08-05 HU HU75IE703A patent/HU175242B/hu unknown
- 1975-10-21 FR FR7532184A patent/FR2289962A1/fr active Granted
- 1975-10-21 DE DE2547031A patent/DE2547031C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2547031B2 (de) | 1980-01-10 |
IN142852B (de) | 1977-09-03 |
AU8380175A (en) | 1977-02-10 |
HU175242B (hu) | 1980-06-28 |
DE2547031C3 (de) | 1980-09-04 |
FR2289962A1 (fr) | 1976-05-28 |
FR2289962B1 (de) | 1981-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2547035C3 (de) | Datenverarbeitungseinrichtung | |
DE2550339C2 (de) | Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität | |
DE2346525C3 (de) | Virtuelle Speichereinrichtung | |
DE2521436C3 (de) | Informationswiedergewinnungsanordnung | |
DE2163342C3 (de) | Hierarchische binäre Speichervorrichtung | |
DE2914132A1 (de) | Datenbanksystem mit informationsvergleich | |
DE1935570A1 (de) | System zur Speicherung und Wiedergewinnung von Daten | |
DE2705858A1 (de) | Speichereinheit fuer datenverarbeitungssysteme | |
DE3327379A1 (de) | Einrichtung und verfahren zum umordnen von datensaetzen | |
DE1499687B2 (de) | Speicherschutz-einrichtung | |
DE2703578A1 (de) | Videospeicher | |
DE2061576A1 (de) | Speicheranordnung | |
DE3126363A1 (de) | Verfahren und vorrichtung zur steuerung einer datenuebertragung mit direktem speicherzugriff | |
DE2728270A1 (de) | Datenzugriffsschaltung fuer eine speicheranordnung | |
DE2310631A1 (de) | Speicherhierarchie fuer ein datenverarbeitungssystem | |
DE2703559C2 (de) | ||
DE1449544A1 (de) | Datenverarbeitende Maschine mit ueberlappend abrufbarem Speicherwerk | |
DE1524111C3 (de) | Elektronische Datenverarbeitungsanlage | |
DE1948142C3 (de) | Adressiereinrichtung für einen bewegbaren Speicher, insbesondere Speicherplatte | |
DE2547031A1 (de) | Datenverarbeitungseinrichtung | |
DE1549473C3 (de) | Einrichtung zum Auffinden gespeicherter Daten | |
DE2547052C3 (de) | Datenverarbeitungseinrichtungen | |
DE2062164A1 (de) | Verfahren zur Erzeugung eines mehr stufigen Index für gespeicherte Daten einheiten | |
EP0609703A2 (de) | Monolithisch integrierte Datenspeicheranordnung und Verfahren zu deren Betrieb | |
DE1774849C3 (de) | Adressierungseinrichtung für eine Speicherabschnittkette |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |