DE3002048C2 - - Google Patents
Info
- Publication number
- DE3002048C2 DE3002048C2 DE3002048A DE3002048A DE3002048C2 DE 3002048 C2 DE3002048 C2 DE 3002048C2 DE 3002048 A DE3002048 A DE 3002048A DE 3002048 A DE3002048 A DE 3002048A DE 3002048 C2 DE3002048 C2 DE 3002048C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- record
- data
- identification
- data record
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/1016—Error in accessing a memory location, i.e. addressing error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Storage Device Security (AREA)
Description
Die Erfindung betrifft eine Anordnung in einer Daten
verarbeitungsanlage zum sicheren Einschreiben bzw.
Auslesen eines Datensatzes über einen Ein-/Ausga
be-Kanal in bzw. aus mindestens einem Speicher, wobei jedem Datensatz ein Prüfcode angehängt
und er ferner durch einen zugehörigen Satzidentifika
tionscode gekennzeichnet ist.
Bei der Eingabe und/oder Ausgabe von Dateninformatio
nen werden diese häufig als Datensätze übertragen,
wobei jeder Datensatz ein oder mehrere Informations
pakete umfassen kann. Um zu erreichen, daß die Datenin
formationen in dem Datensatz durch die Übertragung
oder auch während der Übertragung nicht verfälscht
werden, wird an den Datensatz ein Fehlerprüfcode, wie
etwa ein Hamming-Code oder eine Abwandlung dieses
Codes abgehängt, der im Rahmen einer Dateneingabe
und/oder Datenausgabe anzeigen soll, ob sein zugehö
riger Datensatz fehlerfrei ist.
Um ferner zu erreichen, daß jeder Datensatz nur von
einem berechtigten Benutzer eingeschrieben bzw. aus
gelesen werden kann, wird jedem Datensatz ein benutzer
eigener Identifikationscode angehängt, der diesen
Datensatz wie ein Namensschild kennzeichnet.
Aus der US 39 20 976 ist eine Anordnung in einer Daten
verarbeitungsanlage zum sicheren Einschreiben bzw.
Auslesen eines Datensatzes bekannt, in der einem aus
einer Informationsquelle hervorgehenden Datensatz in
einem Kodierer ein Prüfcode angehängt wird, der sowohl
den Datensatz als auch einen vom Benutzer des Daten
satzes generiertes Adreßwort und einen benutzer
eigenen Satzidentifikationscode verschlüsselt als Bits
enthält. In dieser Zusammensetzung - Datensatz und
Prüfcode - wird die gewünschte Information in den
Speichern abgelegt bzw. ausgelesen. Da das Adreßwort
sowie der benutzereigene Satzidentifikationscode auch
einer Prüf- und Korrigiereinrichtung zugeführt werden,
ist beim Auslesen eines gespeicherten Datensatzes in
dieser bekannten Anordnung eine Überprüfung möglich,
ob der auslesende Bediener zum Auslesen der Daten
berechtigt ist oder ob er nach Eingabe seines Aus
lesebefehls auch den richtigen Datensatz erhält.
Nachteilig bei dieser bekannten Anordnung ist es, daß
der Satzidentifikationscode, der jeden Datensatz ein
deutig charakterisieren soll, sowie das Adreßwort
nicht vollständig an den Datensatz angehängt werden.
Satzidentifikationscode und Adreßwort werden vielmehr
verschlüsselt und dann in Form der somit gewonnenen
Prüfbits an den Datensatz angehängt. Durch diese Ver
kürzung des Satzidentifikationscodes sowie des Adreß
wortes besteht eine erhöhte Fehlerwahrscheinlichkeit
beim Ein- bzw. Auslesen von Datensätzen.
Ein weiterer Nachteil dieser bekannten Anordnung be
steht darin, daß der mit dem Datensatz gespeicherte
Prüfcode nur beim Auslesen des Datensatzes geprüft
wird. Somit ist ein unbefugtes Einlesen von Daten bzw.
ein Einlesen von falschen Daten nicht verhinderbar.
Aus der DE-OS 27 21 599 ist eine Anordnung und ein
Verfahren zur Verhinderung der Ausgabe von fehler
haften Daten in Datenverarbeitungsanlagen bekannt, bei
dem einem auszugebenden Datensatz Schlüsselbits zuge
ordnet werden, die unabhängig von dem Rest des auszu
gebenden Wortes sind. Bevor dieser Datensatz in den
Ein-/Ausgabe-Kanal der Datenverarbeitungsanlage
gelangt, werden die ihm zugeordneten Schlüsselbits in
einer Prüfeinrichtung überprüft. Somit erfolgt eine
Ausgabe des betreffenden Datensatzes nur dann, wenn
die zugeordnete Bitfolge und die in der Prüfeinrich
tung abgelegten Schlüsselbits übereinstimmen. Andern
falls wird eine Unterbrechung der Ausgabe erzeugt.
Nachteilig bei dieser Anordnung bzw. bei diesem Verfah
ren ist es, daß die Schlüsselbits dem Datensatz nur
hinzugefügt werden, ohne das Datenwort selbst zu ver
schlüsseln. Ferner weist diese bekannte Anordnung bzw.
das Verfahren keine Möglichkeit zum Verhindern eines
unbefugten Auslesens von Daten - etwa mit einem Satz
identifikationscode - auf und umfaßt keine Korrigier
einrichtung. Schließlich wird, wie in der oben be
schriebenen Anordnung der US 39 20 976, die Sicherung
der Übertragung von gespeicherten Daten nur beim Aus
lesen der Daten, nicht aber beim Einschreiben durch
geführt.
Aufgabe der vorliegenden Erfindung ist es, bei einer
Anordnung in einer Datenverarbeitungsanlage zum siche
ren Einschreiben bzw. Auslesen eines Datensatzes der
eingangs genannten Art die Geheimhaltungsfähigkeit und
Eigentumssicherheit von Daten beim Einlesen sowie beim
Auslesen wesentlich zu erhöhen, sowie eine Fehlerprü
fung zu ermöglichen, die sich sowohl auf den Datensatz
als auch auf dessen Satzidentifikation bezieht.
Diese Aufgabe wird durch eine Anordnung in einer Daten
verarbeitungsanlage zum sicheren Einschreiben bzw. Aus
lesen eines Datensatzes über einen Ein-/Ausgabe-Kanal
in bzw. aus mindestens einem Speicher gelöst, in der
zu jedem Datensatz eine zugehörige Satzidentifikation
erzeugt wird, beim Einschreiben in einem Kodierer aus
dem Datensatz und der zugehörigen Satzidentifikation
ein Prüfcode erzeugt wird, der Prüfcode dem Datensatz
und der Satzidentifikation angehängt wird, wodurch
eine Datensatzeinheit entsteht, diese Datensatzeinheit
über den Ein-/Ausgabe-Kanal übertragen wird, nach der
Übertragung der Prüfcode in einer ersten Prüfeinheit
auf Richtigkeit und die Satzidentifikation auf Echt
heit überprüft und dann im Speicher abgespeichert wer
den, beim Auslesen der Datensatzeinheit der Prüfcode
in der ersten Prüfeinheit auf Richtigkeit und die
Satzidentifikation auf Echtheit überprüft werden, und
in der nach Übertragung der Datensatzeinheit über den
Ein-/Ausgabe-Kanal der Prüfcode in einer zweiten Prüf
einheit erneut auf Richtigkeit und die Satzidenti
fikation auf Echtheit überprüft werden.
Die Vorteile dieser Lösung liegen insbesondere darin,
daß durch das Anhängen der jeden Datensatz charakteri
sierenden Satzidentifikation an den Datensatz in vol
ler Länge eine wesentlich größere Redundanz erzeugt
wird, als beim Anhängen von nur wenigen, die Satziden
tifikation verschlüsselt enthaltenden Prüfbits. Ferner
erfolgt - sowohl beim Einlesen als auch beim Auslesen
von Daten - anhand eines Prüfcodes eine Überprüfung
der die Information enthaltenden Daten sowie anhand
der in voller Länge verwandten Satzidentifikation eine
Überprüfung, ob der Benutzer zum Ein- bzw. Auslesen
der Daten berechtigt ist und ob der richtige Datensatz
aus- oder eingelesen wird. Indem diese Überprüfungen
nicht nur beim Auslesen, sondern auch beim Einlesen
von Daten durchgeführt werden, wird eine weitere
wesentliche Steigerung der Übertragungssicherheit der
Daten gewährleistet.
Vorteilhafte Weiterbildungen der Erfindung sind durch
die Merkmale der Unteransprüche gekennzeichnet.
Im folgenden wird ein bevorzugtes Ausführungsbeispiel
der Erfindung anhand einer Zeichnung näher erläutert.
Es zeigt
Fig. 1 eine schematische Darstellung einer mit einer
Satzidentifikation arbeitenden Datenverarbei
tungsanlage zur Erläuterung eines Einschreibe
vorgangs eines Datensatzes;
Fig. 2 eine schematische Darstellung eines in der Da
tenverarbeitungsanlage gemäß Fig. 1 verwendeten
Kodierers;
Fig. 3 eine schematische Darstellung einer in der Da
tenverarbeitungsanlage gemäß Fig. 1 verwendeten
Prüfeinheit mit Fehlerkorrekturfähigkeit;
Fig. 4 eine schematische Darstellung einer mit einer
Satzidentifikation arbeitenden Datenverarbei
tungsanlage zur Erläuterung eines Auslesevor
gangs eines Datensatzes;
Fig. 5 eine schematische Darstellung eines Einschreibe
vorgangs eines mit einer Satzidentifikation ver
sehenen Datensatzes über einen Ein-/Ausgabe-Ka
nal; und
Fig. 6 eine schematische Darstellung eines Auslesevor
gangs eines mit einer Satzidentifikation ver
sehenen Datensatzes über einen Ein-/Ausgabe-Ka
nal.
Ehe auf die erweiterte Datenübertragung zur Eingabe und
Ausgabe für Datensätze mittels der erfindungs
gemäßen Anordnung im einzelnen eingegangen wird, wird
zunächst auf das Einschreiben, Auslesen und das Prüfen innerhalb
einer mit einer Satzidentifikation arbeitenden Datenverarbeitungsanlage
eingegangen.
Zunächst wird ein Einschreibevorgang im einzelnen beschrieben,
und danach ein Auslesevorgang.
Man sieht aus Fig. 1, daß ein Quellengerät für
Satzidentifikationcodes 55 (im folgenden auch kürzer: Satzidentifikation oder Identifikationscode) einem Quellengerät für Datensätze 57 zugeordnet
ist. Wenn ein neuer Datensatz 57
durch die Datensatzquelle geschaffen worden ist,
erzeugt die Satzidentifikationsquelle einen besonderen Satzidentifikationscode 55,
der dem erzeugten Datensatz 57 bleibend zugeordnet ist.
Das Wort "Daten" oder "Datensatz" steht hier in der Beschreibung synonym
für "Information". In der bevorzugten Ausführungsform
der Erfindung besitzt ein Datensatz ein oder mehrere Datenwörter zu je 54 Bits Länge und ein Satziden
tifikationscode ist 48 Bits lang.
Neue Datensatzwerte und ihre Satzidentifikation werden einem Kodie
rer 59 zugeführt. Der Kodierer 59 (Fig. 2) umfaßt eine
Paritätsgeberschaltung 17, die Prüfbits entweder für einen
Fehlererkennungs-Code oder zweckmäßig für einen kombinier
ten Erkennungs- und Korrigier-Code (z. B. einen Code vom
Hamming-Typ) erzeugt. Der Kodierer 59 erzeugt einen aus 10 Bits
bestehenden kombinierten Erkennungs- und Korrektur-Code.
Der Kodierer 59 gibt aus einem Speicherregister 19 ein
verkettetes kodiertes Wort aus, das aus einem Datenwort
mit 54 Bits besteht und erzeugte Paritätsprüfung von 10 Bits
umfaßt.
Wie man wieder aus Fig. 1 erkennt, gibt der Kodierer 59
seine Ausgänge über eine erste Übertragungsleitung 21
auf eine erste Prüfeinheit 63 und über eine zweite
Übertragungsleitung 25 auf eine dritte Prüfeinheit 27.
Ferner wird über die dritte Übertragungsleitung 28 und
die vierte Übertragungsleitung 30 an die erste Prüfein
heit 63 und die dritte Prüfeinheit 27 die 48 Bit-Satziden
tifikation übertragen, die dem kodierten, über die erste
und zweite Übertragungsleitung 21 und 25 übertragenen
Datensatz zugeordnet ist.
Fig. 3 zeigt den Aufbau der identischen ersten und dritten Prüfeinheiten 63 und 27. Sie
umfassen in der bevorzugten
Ausführungsform eine Paritätsprüfungsschaltung 29,
eine Fehlerfrei-Anzeigeschaltung 31, eine Anzeigeschal
tung 33 für unkorrigierbare Fehler sowie eine Korrektur
schaltung 35. Die Paritätsprüfschaltung 29 nimmt die 64
kodierten Bits eines Datenworts aus dem Speicherregister 19 des
Kodierers 59 sowie die zugehörigen 48 Bits der Satzidentifikation auf.
Die Paritätsprüfung wird an den empfangenen Bits ausge
führt und als Ergebnis dieser Prüfung wird ggf. ein Hinweis
oder eine Marke an eine Fehlerfrei-
Anzeigeschaltung 31 übertragen, die letztlich anzeigen soll:
"Alles O.K., fortfahren mit dem Speichern".
Wenn
andererseits ein geradzahliger Fehler oder ein anderer
nicht korrigierbarer Fehler von der Paritätsprüfschal
tung 29 entdeckt wird, wird ein Hinweis oder eine Marke
an die Anzeigeeinrichtung 33 für unkorrigierbare
Fehler gesandt, um durch diese die geeignete Maßnahme
ergreifen zu lassen. Schließlich werden die 64 kodierten
Datenwort-Bits einer Fehlerkorrekturschaltung 35 zuge
führt, die außerdem eine Fehler-Bit-Lageinformation aus
der Paritätsprüfungsschaltung 29 empfängt, wenn ein
korrigierbarer Fehler dort entdeckt wird. Die Korrektur
schaltung 35 korrigiert das irrtümliche Bit an der empfan
genen Bit-Stelle und gibt ein korrigiertes Datenwort für
die Weiterverarbeitung aus. Nur das Datenwort und nicht
der Identifikationscode ist (wenn es korrigierbar ist)
durch die Korrekturschaltung 35 korrigiert.
Aus Fig. 1 erkennt man weiter, daß dann, wenn ein Daten
satz durch die erste Prüfeinheit 63 geprüft worden ist,
es zum Speichern in dem ersten Speicher 39
bereit ist. Der erste Speicher 39 ist beispielsweise als ein
relativ kleiner, sehr schneller, etwa bipolarer Speicher
ausgeführt.
Die Adressierung für den ersten Speicher 39 wird von
einem ersten Übersetzer 41 aus der 48 Bit-Satzidentifikation
abgeleitet, der dem zu speichernden Datensatz zugeordnet
ist. Der Speicher 39 enthält 2 D
Wortstellen. Somit wird die räumliche Adresse des zu
speichernden Datensatzes in dem Speicher 39 durch ein
"D"-Bit Adressenfeld angegeben, wobei D kleiner ist
als 48, die Bit-Länge des Satzidentifikationscodes. Das D-Bit Adressen
feld besteht aus drei Unterfeldern, die jeweils eine
Bit-Länge von A, B und C haben. Geeignete Werte für A,
B, C und D sind 2, 7, 3 und 12 Bits. Jedoch können auch
andere Werte gewählt werden, um anderen Ausführungen und
Größen für den ersten Speicher 39 gerecht zu werden.
Das A-Unterfeld repräsentiert die höher
stelligen Bits des D-Feldes, und das C-Unterfeld reprä
sentiert die niederstelligen Bits. Der Übersetzer 41
bearbeitet die erhaltene 48 Bit-Satzidentifikation und gibt
eine B-Bit Adresse aus, die nicht eine spezielle Adressen
stelle im ersten Speicher 39 angibt, sondern mehrere
derartige Adressen, die als ein Teil oder eine Klasse
des Speichers 39 aufgefaßt werden können. Die im ersten
Übersetzer 41 ausgeführte Übersetzung kann eine ein
fache D-Bit Verkürzung der 48 Bit-Satzidentifikation
sein oder sie kann als ein Übersetzungs-Algorithmus
ausgeführt werden, der im Hinblick auf eine spezielle
Anwendung oded Randbedingungen entwickelt worden ist.
Wichtig ist nur, daß die 48 Bit-Satzidentifikation
in einen speziellen B-Ausgang übersetzt
wird, der einen Speicherbereich im ersten Speicher 39
repräsentiert.
Der erste Übersetzer 41 gibt ein B-Bit Ausgangsfeld
an den ersten Suchmechanismus 43, der außerdem die
zugehörige 48 Bit-Satzidentifikation empfängt. Die Satzidentifikation
wird beim Suchen in einer Adreßtafel 45 benutzt,
in welcher Gruppen (Seiten von Satzidentifikationen jeweils
bereitgehalten werden, die in dem ersten Speicher 39
gespeichert sind.
Die Suche wird an den höherwertigen 48 C-Bits der Satzidentifikation
ausgeführt und der Bereich der Adreßtafel 45
der durchsucht wird, ist durch das B-Bitfeld angegeben. Alle
Satzidentifikationen, die gemeinsame erste 48 C-Bits haben, gehören
zur gleichen Seite. Das Ergebnis der Suchoperation ist
eine A-Bit Adresse, die die gewünschte Satzidentifikationsseite
relativ zur angegebenen Klasse des Speichers 39 in der Adreßtafel 45
lokalisiert. Es gibt zwei 2A Seitenstellen
pro Klasse in der Adreßtafel 45. Die gewünschte Satz
identifikation wird relativ zu ihrer Seite durch das C-Bitfeld
angegeben. Das C-Bitfeld besteht aus den nieder
wertigen C-Bits der 48 Bit-Satzidentifikation. Die räumliche
Adresse der in dem Speicher 39 zu speichernden Satziden
tifikation ist jetzt durch den D-Bit-Adressenausgang (D =
A + B + C) aus dem Suchmechanismus 43 und dem Überset
zer 41 vollständig angegeben.
Wenn die Seite, zu der der zu speichernde Datenname
gehört, vom Suchmechanismus 43 gefunden wird, dann wird
das zugehörige Datenwort in den ersten Speicher 39 an
der Adresse eingeschrieben, die von dem D-Bit-Ausgang
aus dem Suchmechanismus 43 und dem Übersetzer 41 ange
geben ist. Wenn die Seite in der Adreßtafel 45
nicht vorliegt, dann wird versucht, die Seite der Daten
sätze in der nächst niedrigeren Speicherebene, nämlich in
dem zweiten Speicher 51, zu lokalisieren, und die
Seite von Datensätzen in den ersten Speicher 39
und den Seitennamen in die Adreßtafel 45
zu bringen. Um dafür Platz zu schaffen, werden freie
Positionen im ersten Speicher 39 sowie in der ersten
Adreßtafel 45 gesucht oder, wenn nötig, geschaffen.
In der Adreßtafel 45 muß ein freier Raum unter den 2 A
Seitennamen-Einträgen in der
durch den B-Bitfeld-Ausgang angegebenen Klasse aus dem
ersten Übersetzer 41 verfügbar gemacht werden. Im ersten
Speicher 39 müssen 2 C Freiplätze für
die Seite von Datenwörtern verfügbar gemacht werden, welche
die Datenwortstelle enthalten, die gespeichert
werden soll. Wenn eine Vakanz nicht bereits im ersten
Speicher 39 vorliegt, wird eine solche dadurch geschaf
fen, daß von der ersten Adreßtafel 45 ein zu ent
fernender Seitenname ausgewählt wird. Der für die Auswahl
verwendete Algorithmus kann entweder auf der Basis eines
Ersatzes des am längsten unbenutzten Postens oder auf
der Basis eines Zufallsersatzes oder mit irgendeinem
anderen aus dem Schrifttum bekannten Algorithmus aus
geführt werden.
Die Seite der Datenwörter im ersten Speicher 39, die
dem für den Ersatz gewählten Seitennamen entspricht,
kann einfach ausgelöscht werden, wenn von ihr eine Kopie
in einem Speicher niedrigerer Ebene existiert. Wenn
nirgends eine Kopie vorhanden ist, muß die Seite in den zwei
ten Speicher 51 zum Speichern in Adressen übertragen
werden, die durch die 2 C H-Bit Adressen an
gegeben sind, wobei H = E + F + G und "H" kleiner als
48 ist. Die Adressen-Unterfelder E, F und G sind jeweils
ähnlich den Unterfeldern A, B und C im Speicher der
ersten Ebene; jedoch unterscheiden sich die Größen
jeweils von den Größen für A, B und C. Geeignete Werte
können etwa sein H = 19, E = 6, F = 6 und G = 7. Ver
schiedene Worte können natürlich in alternativen Aus
führungsformen vorteilhafter sein. Die versuchte Einschreibe
operation für den zweiten Speicher 51 wird auf
gleiche Weise behandelt wie die Einschreibeoperationen
bezüglich des ersten Speichers. An
der zweiten oder einer anderen niedrigeren Ebene des
Speicherraums wird Platz zum Speichern der Seite von
Datensätzen gefunden werden, die aus dem ersten Spei
cher 39 verlagert werden. Wenn diese Operation abge
schlossen ist, wird die Seite von 2 C Datenwörtern,
die das ursprünglich genannte Datenwort ent
halten, im zweiten Speicher 51 (oder wenn nicht da, dann in einer
niedrigeren Speicherebene) lokalisiert und zum
ersten Speicher 39 übertragen. Die erste Adreßtafel
45 wird dann auf den neuesten Stand gebracht, incl. des Seiten
namens der Seite von Datensätzen,
die gerade im ersten Speicher 39 gespeichert
worden sind. Die Einschreibeoperation auf die ursprüng
lich genannte Datenwortstelle kann jetzt ab
geschlossen werden.
Der zweite Speicher 51 ist in Aufbau und Betrieb dem
ersten Datenspeicher 39 ähnlich mit der Ausnahme, daß
der zweite Datenspeicher 51 größer, im allgemeinen
langsamer und daher preiswerter pro gespeichertem Bit
ist als der erste Speicher 39. Der zweite Datenspei
cher 51 ist mit einem ihm zugeordneten zweiten Such
mechanismus 47, einer zweiten Adreßtafel 49 und
einem zweiten Übersetzer 53 ausgerüstet. Der zweite
Suchmechanismus 47, die zweite Adreßtafel 49
und der zweite Übersetzer 53 arbeiten genauso, wie das
für den ersten Übersetzer 41, den ersten Suchmechanismus 43
und die erste Adreßtafel 45 vorstehend erläutert
worden ist. Dem Datenspeicher 51 ist auch eine dritte
Prüfeinheit 27 zugeordnet, die genauso arbeitet wie
die erste Prüfeinheit 63.
Jede Speicherebene hat eine andere
räumliche Adresse für die gleiche Satzidentifikation, jedoch
ist nur eine Kodierung durch den Kodierer 59 auszuführen,
wenn ein neuer Datensatz erzeugt und gespeichert wird.
Eine separate Prüfeinheut (erste Prüfeinheit 63 und
dritte Prüfeinheit 27) wird am Ende der Übertragung
direkt vor dem tatsächlichen Einschreiben benutzt.
Wenn man Fig. 4 mit Fig. 1 vergleicht, sieht man, daß
eine Ausleseoperation die gleiche Anordnung wie eine Einschreibe
operation erfordert, mit der Ausnahme, daß eine zweite
Prüfeinheit 69 den Kodierer 59 ersetzt. Die zweite
Prüfeinheit 69 arbeitet identisch wie die erste und dritte
Prüfeinheit 63 bzw. 27. Die Ausleseoperation läuft
in ähnlicher Weise wie die vorstehend beschriebene Einschreibe
operation ab. Um einen Datensatz zu holen, wird die
zugehörige Satzidentifikation dem ersten Übersetzer 41 zuge
führt, der eine mit demjenigen Bereich der ersten Adreßtafel
45 in Beziehung stehende Information erzeugt, welcher
zum Auffinden der Satzidentifikation durchsucht werden
soll. Der erste Suchmechanismus 43 führt dann jene Suche
aus, und wenn die Satzidentifikation in einer ersten Adreßtafel
45 gefunden wird, dient seine Stelle im Daten
speicher 39 zum Auslesen des zugehörigen Datensatzes aus
dem ersten Speicher 39 und zurück durch die
erste Prüfeinheit 63 zur ersten Übertragungsleitung 21, zur zweiten
Prüfeinheit 69 und schließlich zur Datensatzquelle 57.
Wenn die Satzidentifikation in der ersten Adreßtafel 45
nicht gefunden wird, beginnt eine Suche in der
zweiten Adreßtafel 49, um ihre Seite in dem zwei
ten Speicher 51 zu lokalisieren. Es ist selbstverständlich, daß zum
Zwecke des Programmstarts alle Satzidentifikationen vor dem
Lauf eine Programms in der niedrigsten Stufe der
Adreßtafel gespeichert werden.
Obgleich die vorstehenden Ausführungen nur von zwei
Speicherebenen handeln, können die angewandten Prinzipien
auch auf drei oder mehr Speicherebenen ausgedehnt werden.
Ferner sind an den beschriebenen Ausführungs
formen je nach dem jeweils vorliegenden Anwendungsfall
geeignete Abwandlungen möglich. Beispielsweise können
elegante Ersatz- oder Tausch-Algorithmen oder
-Mittel zum Hin- und Hertransportieren von Daten zwischen dem ersten
Speicher 39 und dem zweiten Speicher 51 vorgesehen sein.
Ferner könnten auf Wunsch die Daten in beide Daten
speicher 39 und 51 in einer einzigen Operation einge
schrieben werden. Ferner sind die angegebenen Wort
größen, Identifikationscodegrößen und Datenspeichergrößen nur illu
strativ. Selbstverständlich können größere oder kleinere
Datensysteme mit Identifikationscodes je nach
Wunsch verwendet werden.
Gemäß Fig. 5 werden ein gespeicherter Datensatz 57
und eine gespeicherte Satzidentifikation 55 in einem
Kodierer 59 verknüpft, ehe sie an einen Ein-/Ausgabe-
Kanal 61 übertragen werden. Der Datensatz 57 be
steht hierbei aus einem oder mehreren Informationspaketen.
Die Satzidentifikation 55 stellt eine charakterisierende Größe
für einen gegebenen Datensatz 57 in dem
Falle dar. Der Kodierer 59 arbeitet so, daß er
einen den Datensatz 57 und seine zugehörigen Satz
identifikation 55 überdeckenden Fehlerprüfcode
erzeugt.
Der kodierte Datensatz 57 und die Satzidentifikation 55 werden
über Ein-/Ausgabe-Datenkanäle 61 einer ersten Prüfeinheit 63
zugeführt. Die Satzidentifikation 55 wird außerdem unabhängig
der ersten Prüfeinheit 63 zugeführt, in welcher der sowohl
den Datensatz 57 wie auch die Satzidentifikation 55 über
deckende Prüfcode 65 in einer Weise geprüft wird, daß
die erste Prüfeinheit 63 eine Richtigkeitsprüfung des Daten
satzes 57 und der Satzidentifikation 55 gemäß Fig. 1 ausführt.
Wenn die Prüfung beendet ist und die Richtigkeit
durch die Prüfeinheit 63 in der erforderlichen Weise
festgestellt worden ist, wird das zusammenhängende Gebilde
aus Satzidentifikation 55, Datensatz 57 und Prüfcode 65
als vollständige Datensatzeinheit 67 gespeichert.
Ein Datensatz wird in ähnlicher Weise wiedergewonnen, wie
er gespeichert wird (s. Fig. 6). Eine Datensatz
einheit 67, bestehend aus einer Satzidentifikation 55,
einem Datensatz 57 und einem Prüfcode 65 wird
durch Angabe des Identifikationscodes
angefordert. Die Datensatzeinheit 67 wird durch eine Prüf
einheit 63 geprüft, die in ihrer Funktion und in
ihrem Betriebsverhalten und in ihrer Struktur der in
Fig. 4 dargestellten dritten Prüfeinheit 27 entspricht. Wenn
an der Satzeinheit 67 eine Prüfung ausge
führt worden ist, wird sie durch den Ein-/Ausgabe-
Kanal 61 der zweiten Prüfeinheit 69 zugeführt.
Da die zweite Prüfeinheit 69 eine Satzidentifikation 55
zur Prüfung aufnimmt, ist der empfangene Datensatz 57
nicht nur fehlerfrei, sondern es ist tatsächlich
der richtige angeforderte Satz. Wenn die Prüfung
durch die zweite Prüfeinheit 69 ausgeführt ist, wird der
Datensatz 57 zum Speicher zurückgeführt.
Man sieht also, daß Datensätze 57 durch Satzidentifikationen 55
mittels eines automatisierten Vorgangs gekennzeichnet
werden, welcher für die Benutzer der Datensätze 57 trans
parent ist oder sein kann. Der Satzidentifikationscode 55
wird dann ein bleibender Teil jenes Datensatzes 57 und
schafft damit die Möglichkeit einer automatischen Prüfung
und Echtheitsprüfung des Satzidentifikationscodes 55 beim erneuten
Auslesen.
Daher wird nur derjenige, der die spezielle Satz
identifikation 55 eines Datensatzes 57 kennt, Zugriff
zu jenem Datensatz 57 erhalten. Man ver
steht, daß das Kodieren durch den Kodierer 59 gemäß
Fig. 5 und daß die Prüfeinheiten 63 und 69 aus Fig. 6
eine Fehlerfeststellung sowohl am Datensatz 57 wie am
Satzidentifikationscode 55 ermöglichen, jedoch eine Datenkorrektur
lediglich an dem Datensatz 57 ausführen würden, da ein
Vorteil in der Korrektur eines inkorrekten Satzidentifikationscodes
55 nicht erblickt werden könnte, und eine solche
Korrektur tatsächlich die verbesserte Sicherheit und
Privatsphäre des Erfindungsgegenstandes wenigstens zum
Teil nachteilig beeinträchtigen würde.
Claims (5)
1. Anordnung in einer Datenverarbeitungsanlage zum
sicheren Einschreiben bzw. Auslesen eines Datensatzes
(57) über einen Ein-/Ausgabe-Kanal (61) in bzw. aus
mindestens einem Speicher (39, 51), in der
- a) zu jedem Datensatz (57) eine zugehörige Satz identifikation (55) erzeugt wird,
- b) beim Einschreiben in einem Kodierer (59) aus dem Datensatz (57) und der zugehörigen Satziden tifikation (55) ein Prüfcode (65) erzeugt wird,
- c) der Prüfcode (65) dem Datensatz (57) und der Satzidentifikation (55) angehängt wird, wodurch eine Datensatzeinheit (67) entsteht,
- d) diese Datensatzeinheit (67) über den Ein-/Aus gabe-Kanal (61) übertragen wird,
- e) nach der Übertragung der Prüfcode (65) in einer ersten Prüfeinheit (63) auf Richtigkeit und die Satzidentifikation (55) auf Echtheit überprüft und dann im Speicher (39, 51) abgespeichert wer den,
- f) beim Auslesen der Datensatzeinheit (67) der Prüfcode (65) in der ersten Prüfeinheit (63) auf Richtigkeit und die Satzidentifikation (55) auf Echtheit überprüft werden, und in der
- g) nach Übertragung der Datensatzeinheit (67) über den Ein-/Ausgabe-Kanal (61) der Prüfcode (65) in einer zweiten Prüfeinheit (69) erneut auf Richtigkeit und die Satzidentifikation (55) auf Echtheit überprüft werden.
2. Anordnung nach Anspruch 1, mit mehreren Spei
chern (39, 51),
dadurch gekennzeichnet, daß die Speicher einander
untergeordnete Speicherebenen bilden und daß jedem
Speicher (39, 51) ein Übersetzer (41, 53) zugeord
net ist, der aus der Satzidentifikation (55) der Da
tensatzeinheit (67) die Adresse für den zugeordne
ten Speicher (39, 51) ableitet.
3. Anordnung nach Anspruch 2,
dadurch gekennzeichnet, daß die aus der Satzidenti
fikation (55) abgeleitete Adresse einen vorgebbaren
Speicherbereich in jedem Speicher (39, 51) repräsen
tiert.
4. Anordnung nach Anspruch 3,
dadurch gekennzeichnet, daß jedem Speicher (39, 51)
ferner ein Suchmechanismus (43, 47) zugeordnet ist,
welcher sowohl die Satzidentifikation (55) als auch
vom Übersetzer (41, 53) die Adresse erhält, und ei
ne Adreßtafel (45, 49), welche die in dem jeweili
gen Speicher (39, 51) abgelegten Satzidentifikatio
nen enthält und in welcher der Suchmechanismus (43,
47) mittels der Satzidentifikation (55) oder eines
Teils von ihr in dem vorgegebenen Speicherbereich
nach der gewünschten Speicherstelle sucht.
5. Anordnung nach Anspruch 4,
dadurch gekennzeichnet, daß die Suche nach der Spei
cherstelle in der nächsten untergeordneten Speicher
ebene fortgesetzt wird, falls die Suche in der vor
hergehenden Ebene erfolglos bleibt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/009,250 US4244049A (en) | 1979-02-02 | 1979-02-02 | Method and apparatus for enhancing I/O transfers in a named data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3002048A1 DE3002048A1 (de) | 1980-08-14 |
DE3002048C2 true DE3002048C2 (de) | 1989-08-03 |
Family
ID=21736515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19803002048 Granted DE3002048A1 (de) | 1979-02-02 | 1980-01-21 | Verfahren und vorrichtung zur verbesserung der eingabe und ausgabe in einer datenverarbeitungsanlage |
Country Status (7)
Country | Link |
---|---|
US (1) | US4244049A (de) |
JP (1) | JPS55103661A (de) |
BR (1) | BR8000346A (de) |
DE (1) | DE3002048A1 (de) |
FR (1) | FR2448191B1 (de) |
GB (1) | GB2040521B (de) |
YU (2) | YU9380A (de) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU530568B2 (en) * | 1980-10-31 | 1983-07-21 | Canon Kabushiki Kaisha | Serial printing apparatus with memory and display |
US4596014A (en) * | 1984-02-21 | 1986-06-17 | Foster Wheeler Energy Corporation | I/O rack addressing error detection for process control |
JPS6115230A (ja) * | 1984-06-29 | 1986-01-23 | Nec Corp | 入力デ−タ識別装置 |
US4903229A (en) * | 1987-03-13 | 1990-02-20 | Pitney Bowes Inc. | Forms generating and information retrieval system |
AU3594189A (en) * | 1988-06-21 | 1990-01-04 | Amdahl Corporation | Controlling the initiation of logical systems in a data processing system with logical processor facility |
US5126728A (en) * | 1989-06-07 | 1992-06-30 | Hall Donald R | ADP security device for labeled data |
US5347579A (en) * | 1989-07-05 | 1994-09-13 | Blandford Robert R | Personal computer diary |
DE69032737T2 (de) | 1989-07-13 | 1999-04-29 | Canon Kk | Kodierung- und Dekodierungsvorrichtung geeignet für das Kopieren von Daten |
JP3561002B2 (ja) * | 1994-05-18 | 2004-09-02 | 富士通株式会社 | ディスク装置 |
KR102331926B1 (ko) * | 2017-11-17 | 2021-11-29 | 삼성전자주식회사 | 저장 장치를 포함하는 호스트 시스템의 동작 방법 및 저장 장치 제어기의 동작 방법 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3825903A (en) * | 1973-04-30 | 1974-07-23 | Ibm | Automatic switching of storage protect keys |
US3825893A (en) * | 1973-05-29 | 1974-07-23 | Ibm | Modular distributed error detection and correction apparatus and method |
US3920976A (en) * | 1974-08-19 | 1975-11-18 | Sperry Rand Corp | Information storage security system |
JPS5130444A (de) * | 1974-09-09 | 1976-03-15 | Hitachi Ltd | |
JPS5245837A (en) * | 1975-10-08 | 1977-04-11 | Hitachi Ltd | Error detection equipment |
US4020459A (en) * | 1975-10-28 | 1977-04-26 | Bell Telephone Laboratories, Incorporated | Parity generation and bus matching arrangement for synchronized duplicated data processing units |
DE2721599C2 (de) * | 1976-05-17 | 1983-05-05 | Sperry Corp., 10019 New York, N.Y. | Schaltungsanordnung zur Verhinderung der Ausgabe von Datenworten aus einer EDV-Anlage ohne Sicherheitsverifizierung |
JPS6034182B2 (ja) * | 1976-08-17 | 1985-08-07 | 松下電器産業株式会社 | 信号誤り検出訂正方式 |
JPS53106110A (en) * | 1977-02-28 | 1978-09-14 | Nec Corp | Magnetic memory controller |
US4166211A (en) * | 1978-04-03 | 1979-08-28 | Burroughs Corporation | Error control system for named data |
-
1979
- 1979-02-02 US US06/009,250 patent/US4244049A/en not_active Expired - Lifetime
-
1980
- 1980-01-04 GB GB8000337A patent/GB2040521B/en not_active Expired
- 1980-01-14 FR FR8000712A patent/FR2448191B1/fr not_active Expired
- 1980-01-15 YU YU00093/80A patent/YU9380A/xx unknown
- 1980-01-18 BR BR8000346A patent/BR8000346A/pt unknown
- 1980-01-19 JP JP521080A patent/JPS55103661A/ja active Pending
- 1980-01-21 DE DE19803002048 patent/DE3002048A1/de active Granted
-
1982
- 1982-10-19 YU YU02354/82A patent/YU235482A/xx unknown
Also Published As
Publication number | Publication date |
---|---|
FR2448191A1 (fr) | 1980-08-29 |
US4244049A (en) | 1981-01-06 |
YU235482A (en) | 1983-12-31 |
YU9380A (en) | 1983-04-30 |
GB2040521A (en) | 1980-08-28 |
GB2040521B (en) | 1983-03-02 |
BR8000346A (pt) | 1980-10-07 |
FR2448191B1 (fr) | 1985-10-25 |
DE3002048A1 (de) | 1980-08-14 |
JPS55103661A (en) | 1980-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2523414C3 (de) | Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen | |
DE3125048C2 (de) | ||
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE60300777T2 (de) | Nichtflüchtiger redundanzadressen-speicher | |
DE2646162C3 (de) | Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers | |
DE102015113414B4 (de) | Fehlerkorrektur unter Verwendung von WOM-Codes | |
DE2529152A1 (de) | Verfahren und anordnung zur feststellung von fehlern in halbleiter- informationsspeichern | |
DE2556556A1 (de) | Verfahren und anordnung zur speicherung von informationen ueber den ort eines oder mehrerer fehlerhafter bits in einem einzelne fehler korrigierenden halbleiter-hauptspeicher | |
DE1549468B2 (de) | Speicheranordnung fuer eine programmgesteuerte datenverarbeitungsanlage | |
DE3002048C2 (de) | ||
DE1901806A1 (de) | Schaltungsanordnung zur Kompensation schadhafter Speicherzellen in Datenspeichern | |
DE2456709C2 (de) | Schaltungsanordnung zur Fehlererkennung und -korrektur | |
DE1499687B2 (de) | Speicherschutz-einrichtung | |
DE1284996B (de) | Leseschaltung fuer einen Speicher | |
DE3045609C2 (de) | ||
DE2536498A1 (de) | Schaltung zur sicherung von informationsspeichern | |
DE2554502A1 (de) | Verfahren und anordnung zum speichern binaerer datenelemente | |
DE102017124313B4 (de) | Speicheranordnung und verfahren zum verifizieren eines speicherzugriffs | |
EP0990236B1 (de) | Anordnung mit speicherzellen und verfahren zur funktionsüberprüfung von speicherzellen | |
DE3025044C2 (de) | ||
EP1222545B1 (de) | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul | |
DE2625365C3 (de) | Vergleichseinrichtung fur eingegebene Daten | |
DE10331068A1 (de) | Verfahren zum Auslesen von Fehlerinformationen aus einem integrierten Baustein und integrierter Speicherbaustein | |
DE2823457C2 (de) | Schaltungsanordnung zur Fehlerüberwachung eines Speichers einer digitalen Rechenanlage | |
DE69637427T2 (de) | Verfahren und Gerät zur Erkennung doppelter Eintragungen in einer Nachschlagtabelle |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition |