DE2652869A1 - Datensicherungseinrichtung - Google Patents
DatensicherungseinrichtungInfo
- Publication number
- DE2652869A1 DE2652869A1 DE19762652869 DE2652869A DE2652869A1 DE 2652869 A1 DE2652869 A1 DE 2652869A1 DE 19762652869 DE19762652869 DE 19762652869 DE 2652869 A DE2652869 A DE 2652869A DE 2652869 A1 DE2652869 A1 DE 2652869A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- pulse
- register
- line
- gate
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C1/00—Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2151—Time stamp
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Description
Anmelderin: International Business Machines
Corporation, Armonk, II.Y. 10504
Amtliches Aktenzeichen: Ileuanmeldung Aktenzeichen der Änmelderin: YO 973 032
Bei vielen Coinputeranwendungen ist es wichtig zu wissen, ob ein
Datenteil während eines gegebenen Zeitabschnittes adressiert wurde oder nicht, wobei das Ende eines solchen Zeitabschnittes
oft der augenblickliche Zeitpunkt ist. Als Beispiel für eine solche Situation sei die Transaktion eines Börsenmarklers genannt,
in der ein unehrlicher Programmierer seinen Namen heute in die Liste der Käufer oder Verkäufer eines früheren Markttages
einfügen kann und so finanziellen Gewinn, basierend auf feststehender und nicht auf wahrscheinlicher Information, erzielen
kann. Eine solche Handlung könnte nicht entdeckt werden, da für ein bestimmtes Konto kein ausdrücklicher Verlust auftritt. Als
ein anderes Anwendungsbeispiel sei der Fall aufgeführt, wo ein Benutzer überwachen will, ob irgend jemand Daten in einem On-Line-Systera
ausspioniert oder durch Veränderung zerstört hat.
In der US-Patentschrift Nr. 3 599 159 ist ein Multiprogrammsystem
mit einer Speicherschutzeinrichtung gezeigt, durch die Daten nur I
in diejenigen Speicherstellen geschrieben werden können, die dem j
verarbeiteten Programm zur Verfügung stehen. In einem solchen |
System ist jedes Wort im Speicher mit einem speziellen binären '
Bit versehen, das anzeigt, daß ein Wort nicht verändert oder über-·
schrieben werden darf. Das Schutzbit kann gesetzt werden, wenn !
das Wort in den Speicher gespeichert wird. Wenn ein Speicher
adressiert wird und dieses Spezialbit eingeschaltet ist, wird ;
das in einem Pufferregister gespeicherte existierende Wort als j
70 9 8 24/0706
Teil desselben Speicherzyklus in den Speicher zurückgeschrieben.
Gleichzeitig zeigt das Vorhandensein des Speicherschutzbits eine Unterbrechungsbedingung und damit die Tatsache an, daß ein unverletzlicher
Speicherteil adressiert wurde.
In der US-Patentschrift Nr. Re 27 251 ist ein Datenverarbeitungssystem
beschrieben, in dem Adreßblöcke im Hauptspeicher für vorbestimmte Benutzer reserviert sind. Ein HilfsSpeicher enthält
einen Schlüssel für jeden Block des Hauptspeichers. Während einer Speicherzugriffsoperation wird der dem adressierten Block im
Hauptspeicher entsprechende Schlüssel auf dem HiIfspeicher ausgelesen
und mit dem dem Benutzer zugeordneten Schlüssel verglichen. Wenn die Schlüssel nicht übereinstimmen, wird der Benutzer
daran gehindert, den Inhalt der adressierten Stelle im Hauptspeicher zu verändern.
Während die bekannten Sicherheitssysteme verschiedene Formen des Datenzugriffsschutzes durch Datenverschlüsselung, Speicherzugriff
codes und Softwareschemata liefern, wird immer noch ein Sicherheitssystem gebraucht, das nicht durch ein Programm umgangen
werden kann und die Sicherheit während der Entwicklung, der Ausführung und dem Zugriff für alle Programme und Daten innerhalb
des Rechnersystems aufrecht erhält.
Die Aufgabe der vorliegenden Erfindung besteht somit darin, eine j
von der Programmierung unabhängige Datensicherheitseinrichtung
anzugeben, die anzeigt, ob ein bestimmter Speicherbereich oder Datenkanal eines Hilfsspeichers angsteuert wurde.
'■■ Die Aufgabe der Erfindung wird durch die im Kennzeichen des Haupt-
ianspruches angegebene Einrichtung gelöst. Erfindungsgemäß wird
Iein automatischer Zeitstempelmechanismus verwendet, mit dem
eine bestimmte Zeitangabe in einen zu jedem Speicherbereich
YO 973 032
709824/0708
oder zu jedem Datenkanal eines Hilfsspeichers gehörenden Datenspeicherbereich
oder in ein Register gestempelt wird, so daß jeder Zugriff zu Daten die entsprechende Zeitstempelung im Speicher oder
Speichergerät auf den neuesten Stand bringt. Mit einer ersten Instruktion wird eine Zeit bezüglich des Hauptspeichers abgerufen
und mit einer zweiten Instruktion eine Zeit bezüglich eines Datenkanals zu einem externen Hilfsspeicher. Zu jedem Speicherbereich
sowie zu jedem Datenkanal gehört ein Zeitstempel-Kennzeichenregister. Sobald ein Bereich oder ein Datenkanal angesteuert wird,
wird die Zeitstempelung in Form einer eindeutigen Binärzahl von einer die Tageszeit anzeigenden Uhr in das zu diesem Bereich oder
Datenkanal gehörende Zeitstempelregister gesetzt. Die Abfrage des Inhaltes eines jeden Zeitstempelregisters ermöglicht die Feststellung,
ob ein Bereich oder Datenkanal bis zum gegenwärtigen Zeitpunkt angesteuert wurde. Zur Ansteuerung von Daten im Speicher
wird ein volles Speicheradreßregister benutzt, während nur bestimmte werthohe Bits des Speieheradreßregisters zur Ansteuerung
der zu dem Bereich gehörenden Zeitstempelung verwendet werden. Auf
diese Weise verschafft die Erfindung eine Maschineneinrichtung, die automatisch Datenblöcke markiert, während sie adressiert werden,
und die nicht durch Änderung des Programmes umgangen v/erden kann. Die Erfindung gestattet die Erkennung und Verhinderung von
Sicherheitsverletzungen, wobei das Zeitstempelregister und der Uhrmechanismus nicht durch ein Programm abgetrennt werden können.
Vorteilhafte Weiterbildungen der Erfindung sind den Unteransprüchen
zu entnehmen. Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher beschrieben.
Es zeigen:
Fig. 1 in einem Blockdiagramm ein die Zeitstempeleinrichtung
verwendenes System;
YO 973 032
70982A/070Ö
Pig. 2 ein Ablaufdiagraram der Arbeitsv/eise eines
Ausführungsbeispieles der vorliegenden Erfindung in einem virtuellen Speicher;
Fign. 3A, 3B Schaltplan und Logikdiagramm des in Fig. 2 ge-
und 3C zeigten Ausführungsbeispieles;
Fig. 3 einen Lageplan für die Fign. 3Af 3B und 3C;
Fig. 4 die Ässoziativspeichersteuerung im einzelnen;
Fig. 5 jedes im virtuellen Blockregister im Assoziativspeicher verwendete Speicherelement im einzelnen;
Fig. 6 im einzelnen das für die TM-Register im Assoziativspeicher verwendete Speicherelement;
Fign. 7A bis 7L die komplette Verdrahtung und das Logikdiagramm
der Plattendateiausführung der vorliegenden Erfindung;
Fig. 7 eine Lageskizze für die Fign. 7A bis 7L;
Fig. 8 eine perspektivische Darstellung einer in dem
in den Fign. 7A bis 7L gezeigten System verwendeten Platte;
Fig. 9 in einem Diagramm eines Spur auf der in Fig.
gezeigten Platte;
Fig. 10 in einer Zeittabelle die verschiedenen von
einem Impulsgenerator verfügbaren Impulse und
Fig. 11 die im ersten Abschnitt erscheinenden Taktimpulse
und Datenbits und die Zeitstempelteile für die Platte.
YO 973 032
709824/0706
~*~ >
■ 26528G9
In Fig. 1 ist in Form eines allgemeinen Blockdiagrammes ein
System gezeigt, das ein Zeitstempelkennzeichenregister verwendet, das zu jedem Speicherbereich gehört oder zu jedem Speicherbereich
in einem Datenkanal, so daß jeder Zugriff von Daten die Zeitstempelung
im betreffenden Speicher vorschreibt. Im einzelnen ist eine CPU 10 und ein Speicher 12 gezeigt, die durch die CPU
zugängliche Daten enthalten. Das Lesen und Schreiben in dem Speicher 12 erfolgt abgesehen von dem hier beschriebenen Zeitstempelmechanismus
auf konventionelle Weise. Ein Speieheradreßregister
(MAR) 14 ist zwischen die CPU 10 und den Speicher 12
zur Adressierung von Daten im Speicher gelegt und enthält einen Abschnitt 16 mit werthohen Bits, die zur Ansteuerung eines Zeitstempelwortes
benutzt werden, das zu einem Bereich des Speichers 12 gehört. Jedes Zeitstempelwort ist in einem Zeitstempel des
Abschnittes 18 des Speichers 12 enthalten. Für jeden Abschnitt 12A bis 12F des Speichers 12 gibt es ein zugehöriges Zeitstempelwort
13A bis 18F. Jeder Bereich im Speicher 12 ist bezüglich
der Zeitstempelung für alle Daten im Systemspeicher die Grundeinheit.
Die Größe des Bereiches kann abhängig von der jeweiligen Anwendung zwisehen einem Bit und einer Seite liegen.
Das System ist mit einer Uhr 20 ausgerüstet, die die gewünschte
Zeitauflösung liefert wie etwa 1/64 Sekunde. Die Uhr 20 empfängt gleichförmige Eingangsimpulse auf der Leitung 22. Die Zeitsignale
von der Uhr 20 werden durch ein Tor 24, das ein Sperrsignal auf der Leitung 26 von der CPU empfängt, daran gehindert, in den
Zeitabschnitt (TM) 18 des Speichers 12 zu laufen. Die Uhr 20 liefert auch Zeitsignale auf der Leitung 28 zu einem Zeitstempelwortabschnitt
(TS) 30 eines Speicherbereichs in einer Platte 32. Das Zeitstempelwort 30 gehört zu Daten 34 in der Platte 32. Ein
Zexstempelregister (TC) 36 gehört zu jedem Kanal. Der Plattenspeicher 32 ist durch einen Datenkanal 38 zugänglich, zu dem
ein Kanaladreßregister 40 gehört. Der Datenkanal 38 ist mit dem Speicher 12 verbunden, so daß der Speicher 12 für die CPU 10
zugänglich ist, während die Speicherplatte 32 zugänglich ist vom
YO 973 032
709824/0708
Datenkanal 38 her. Wie schon erwähnt wurde, liefert die Uhr 20 Zeitsignale zur entsprechenden Zeit sowohl an den Zeitstempelabschnitt
(TIl) 18 als auch an den Z ei ts tempe lab schnitt (TS) 30.
Für jeden Bereich im Speicher 12 gibt es einen Zeitstempel TM und für jeden Datenkanal 38 ein Zeitstempelregister (TC) 36. Mit
den Instruktionen FSM und FSC werden Werte von den TM's bzw. TC's
geholt. Die Instruktion (FSM, r, a) ist eine Instruktion zum Holen des zum Bereich gehörenden Zeitstempels TM, adressiert
durch a (dargestellt im Speicher 12) in das Register r der CPU. Das Register r ist ein allgemeines Register und ein herkömmlicher
Teil der PU. Die Instruktion FSC, r, c ist eine Instruktion zum Holen des Zeitstempels TC, der zum Kanal c gehört, in das
Register r der CPU. Die Instruktionen FSM und FSC sind auf den Leitungen 42 bzw. 44 gezeigt, die zwischen die Abschnitte TM und
TC einerseits und die CPU 10 andererseits geschaltet sind.
Das Zeitstempelwort TS 30, das zu Daten auf dem Speicher 32 gehört,
wird in das TC-Register 36 geladen, wenn der Speicher gelesen wird. Mit dem vollen Speicheradreßregister MAR 14 werden
die Daten im Speicher 12 adressiert, während man mit den werthohen Bits des MAR 14 den TM-Abschnitt 18 ansteuert. Wie schon
erwähnt werden die Daten im Datenkanal 38 mit Hilfe des Kanaladreßregisters (CAR) 40 angesteuert.
Mit den Zeitstempelwörtern kann man den vollen Inhalt der Uhr 20 speichern. Wenn eine Unterscheidung zwischen passiven und
aktiven Zugriffen (Lesen/Schreiben) zum Speicher oder Datenkanal getroffen werden soll, kann jedem Zeitstempelwort eine
zustätzliche Bitposition hinzugefügt werden, die zum Schreiben ιein- und zum Lesen ausgeschaltet ist.
Die Arbeitsweise des in Fig. 1 gezeigten Systems wird anschließend!
.anhand der verschiedenen möglichen internen Datenübertragungen beschrieben.
YO 973 032
709824/0706
Bei dieser Betriebsart wird der Inhalt des CPU-Registers in einen Adreßspeicher 12 eingegeben, das aktive Bit ist eingeschaltet,
und der Inhalt der Uhr 20 wird in das zugehörige Zeitstempelwort TM 18 eingetragen.
Der Inhalt des adressierten Speichers 12 wird in das CPU-Register eingegeben, das aktive Bit ist ausgeschaltet, und der Inhalt der
Uhr 20 kann in das zugehörige TM 18 gesetzt v/erden.
Der gesamte Inhalt des Speicherbereiches 12 wird über den Datenkanal
18 in den Speicherbereich 34 verschoben, das aktive Bit ist ausgeschaltet, und der Inhalt der Uhr 20 kann in den zugehörigen
Abschnitt TM 18 oder TS 3O eingegeben v/erden.
Der gesamte Inhalt des Speicherbereiches 34 wird über den Datenkanal
in den Speicherbereich 12A bis 12F verschoben und das aktive Bit ist eingeschaltet. Der Inhalt der Uhr 20 wird in den
zugehörigen TM-Bereich 18 gegeben und der Inhalt des TS 30 in
den TC 36, und der Inhalt der Uhr wird in den TS eingegeben.
Während das in Fig. 1 gezeigte System ein Zeitstempelregister sowohl im Speicher als auch im Datenkanal des Unterstützungsspeichers oder der Platte verwendet, liegen andere Benutzungsvarianten des Zeitstempelmechanismus im Rahmen der Erfindung.
In Fig. 2 ist ein Ablaufdiagramm der Arbeitsweise des erfindungsgemäßen
Systems gezeigt. Das in Fig. 1 gezeigte System enthält
YO 973 032
709824/0706
als Grundelement die zentrale Verarbeitungseinheit (CPU) 10, den langsamen Unterstützungssneicher rait großer Kapazität oder die
Platte 32, einen schnellen Arbeits-Kernspeicher 12 mit niedriger
Kapazität und die Assoziativspeicherregister 18 und 36. Der Unterstützungsspeicher 32 kann über den Datenkanal 33 mit dem
Kernspeicher 12 verbunden sein, bei dem es sich um einen Hochgeschwindigkeits-Magnetkernspeicher
handelt, wie er zu jedem digitalen Computersystem gehört. Der Datenkanal 38 kann irgendein
Kanal sein, der die benötigten Puffer- und Steuerfunktionen übernehmen kann. Der Datenkanal 38 empfängt die seriell angelegte
Information von der langsamen Platte 32, setzt die Bits zu PJörten zusammen und gibt diese Wörter parallel in den Kernspeicher
12. Außerdem kann der Datenkanal 38 Wörter in paralleler Form vom Kernspeicher 12 aufnehmen und deren Bits seriell auf
den Plattenspeicher 32 geben.
Um die vorliegende Erfindung in einem virtuellen Speicher zu zeigen, wird der in der US-Patentschrift Rr. 3 541 529 dargestellte
Speicher als Referenz angezogen. Das ganze Ablaufdiagramm
der Fig. 1 dieses Patentes ist in dem gestrichelten Kasten mit der Wr. 60 in Fig. 2 der vorliegenden Beschreibung dargestellt.
Die für das System der Patentschrift zusätzlichen Funktionen und deren Arbeitsweise sind in Fig. 2 mit den Zahlen 64 und 66
bezeichnet.
Nachdem die ersten Ladeoperationen fertig sind, ist das System zur Ausführung des im Funktionsblock 68 angegebenen Schrittes
bereit, in dem festgestellt wird, ob der das zu benutzende Hort enthaltene Block im Kernspeicher 12 gespeichert ist. Wenn
das auf dem Computer laufende Programm ein bestimmtes Infonnationswort
braucht, wird im Funktionsblock 68 geprüft, ob dieses Wort im Hochgeschwindigkeitsspeicher steht. Wenn das der Fall
ist, wird die Information gelesen und nach Darstellung durch den Funktionsblock 70 benutzt, wo der Speicherzugriff im Arbeitsspeicher
vorgenommen und die Bits R und A auf den neuesten Stand
YO 973 032
709824/0708
-^- M 2652863
gebracht oder fortgeschrieben werden. Der noch zu beschreibende und im einzelnen in den Fign. 3A, 3B, 3C, 4, 5 und 6 dargestellte
Assoziativspeicher hat eine Eintragung für jede Blockposition im Kernspeicher 12. Jede dieser Eintragungen enthält fünf Felder,
die in einen Speicherdatenregister gezeigt sind. Liest man diese Felder von links nach rechts, so ergibt sich die Reihenfolge:
ein 1-Bit großes A-FeId (/Inderungsfeld) , das gesetzt wird, wenn
der Inhalt des entsprechenden Blocks im Kernspeicher 12 geändert wird; ein 1-Bit großes R-FeId (Referenz), das jedes Mal gesetzt
wird, wenn der entsprechende Block ira Kernspeicher 12 benutzt wird und zurückgestellt wird, wenn alle Eintragungen im
Assoziativspeicher ihr R-FeId gesetzt haben.
TTenn andererseits bei der Ausführung der Funktion 68 das Wort
nicht im Hochgeschwindigkeitsspeicher steht, wird nach Darstellung
durch den Funktionsblock 72 eine Suchoperation durch Ausführung eines Austauschalgorithmus durchgeführt, um den auszutauschenden
Block und den Funktionsblock 74 zu finden, durch
den das benötigte TTort vom langsamen Unterstützungsspeicher 32 in den schnellen Speicher 12 übertragen wird. Auf diese Weise
erhält man einen schnellen Speicher mit niedriger Kapazität und die Programme v/erden so geschrieven, als ob die gesamte Information
in diesem schnellen Speicher 12 stünden. Wenn festgestellt wird, daß ein Informationswort aus dem Unterstützungsspeicher
32 gebraucht wird, wird der dieses Wort enthaltende Block aus dem Unterstützungsspeicher 32 in den Hochgeschwindigkeitsspeicher
12 übertragen.
In den Fign. 3A, 3B und 3C sind Schaltdiagramme gezeigt, die
nach der Darstellung in Fig. 3 zusammenzulegen sind, und den virtuellen Speicher der vorliegenden Erfindung bilden. Ein Merkmal
dieser Erfindung ist der in Fig. 3B gezeigte Assoziativspeicher 100, der eine Liste der Zeiten enthält, in denen jeder
Bereich in einem virtuellen Block adressiert wurde und angibt, ob es sich um einen Lese- oder um einen Schreibzugriff handelt.
Die Assoziativspeichersteuerung 102 ist im einzelnen in Fig. 4
YO 973 03
709824/0706
: 2652863
!gezeigt. In diesem Ausführungsbeispiel wird angenommen, daß jeder
!virtuelle Block in vier Bereiche unterteilt ist/ die durch die 'beiden werthohen Bits in der Blockinnenadresse im Register 112
adressiert werden, das in Fig. 3C gezeigt ist. Diese Adresse steht von der CPU jedes Mal bei Abgabe einer Speieheranforderung
oder der Sonderinstruktion 11FSM11 zur Verfügung. Die Sonderinstruktion
wird später noch beschrieben.
jDer Inhalt des Zeitzählers 104 in Fig. 3A ist ein Wort aus einem
Bit, das bei jedem 1/64 einer Sekunde durch die CPU erhöht jwird, und läuft, solange Strom für das Rechensystem eingeschal-'tet
ist. Ein anderes Bit ist vom Flip-Flop 106 vorgesehen und wird auf Eins gesetzt, wenn es sich bei dem Speicherzugriff
jum einen Schreibzugriff handelt. Es wird auf Null gesetzt, wenn
ein Lesezugriff erfolgt. Das Zeitstempelwort ist somit ein 33 Bit großes Wort, das in das betreffende TM-Register im Assoziativspeicher
geleitet werden kann. Bei einem Speicherzugriff ;findet man das gewünschte Wort im Assoziativspeicher 100 durch
!Assoziierung auf dem virtuellen Blockfeld mit der virtuellen Blockzahl als Argument. Die Wahl des TM-Registers im virtuellen
Blockwort erfolgt durch die beiden werthohen Bits der Blockiinnenadresse.
Jedes Mal wenn also ein Wort aus dem Arbeitsspeicher gelesen oder in diesen geschrieben wird, wird das Zeitstempelwort
in das betreffende TM-Register für den Bereich geschrieben, der das Wort enthält, welches geschrieben oder gelesen
wird.
Die gesamte in dem in Fig. 3B gezeigten Assozitativspeicher enthaltene Tabelle kann in den Unterstützungsspeicher gelesen
und dort gespeichert werden. Wenn ein bestimmtes Programm im Computer läuft, wird diese Tabelle vom Unterstützungsspeicher
zurückgeholt und in den Assoziativspeicher 100 gesetzt. Der Inhalt der TM-Wörter im Assoziativspeicher 100 kann vom Programmierer
in keiner Weise verändert werden und 1st nur über eine Sonderinstruktion adressierbar, die FSM-Instuktion genannt wird.
YO 973 032
709824/0708
Nach Darstellung durch den Funktionsblock 66 in Fig. 2 kann die j
j !
jFSM-Instruktion nur ein TM-Wort vom Assoziativspeicher 100 holen I
und es in ein Arbeitsregister der CPU mit der Bezeichnung r j
setzen. Der Inhalt des Registers r kann vom Programmierer jeder i
j Zeit zusammen mit einer anderen Information gespeichert werden, ■■
die der Programmierer zu speichern wünscht. Zu jedem zukünftigen j
Zeitpunkt kann er wieder dasselbe TM-Register in das Register >
r lesen und über Programmiermittel den Wert mit dem früheren j
Wert vergleichen, den er weggespeichert hat, um festzustellen, : ob irgend jemand sonst den jeweiligen Bereich adressiert hat,
seit er es das letzte Mal tat.
In diesem Ausführungsbeispiel wird der Zeitstempelmechanismus im virtuellen Speicher verwendet, der in der US-Patentschrift Wr.
3 541 529 beschrieben ist. Anschließend wird die Operation 64 in !Fig. 2 im einzelnen erklärt. Soweit nichts anderes angegeben ist,
bezieht sich die übrige Beschreibung dieses Ausführungsbeispiels
auf die Fign. 3A, 3B und 3C, die entsprechend Fig. 3 miteinander
zu verbinden sind. Wenn die CPU einen Speicherzugriff anfordert, erscheinen die virtuelle Blocknummer und die beiden werthohen
Bits der inneren Blockadresse auf dem Kabel 110 und werden in
das Argumentenregister 112 in Fig. 3C geladen. Das Flip-Flop 106
wird entweder auf Eins oder auf Null gesetzt. Die beiden werthohen Bits in der inneren Blockadresse werden an den Decodierer
114 geleitet, dessen Ausgabe auf dem Kabel 116 erscheint. Wenn das Signal T-5 erscheint, wird die monostabile Kippschaltung
118 eingeschaltet. Mit dem Signal T-5 wird das Auslesen aus dem Assoziativspeicher unter Steuerung der Übereinstimmungs-Anzeige-Flip-Flops
eingeleitet. Dadurch wird ein Impuls A-1 erzeugt, der über das Kabel 120 durch das ODER-Glied 122 läuft und über die
Leitung 123 die Übereinstimmungsanzeiger in der Assoziativspeichersteuerung 102 auf Eins stellt. Wenn die monostabile Kippschaltung
118 abschaltet, erscheint ein Impuls und schaltet die monostabile
Kippschaltung 124 ein. Dadurch wird der Impuls A-2 erzeugt, der
auch über das Kabel 120 durch das ODER-Glied 126 läuft und den
YO 973 OST
709824/0706
2652863
zugehörigen Impuls liefert, der an das Argumentenregister 112 angelegt
wird. Am Ende dieses Impulses wird nur einer der tibereinstimmungsanzeiger in der Assoziativspeichersteuerung 102 in
seinem Einer-Zustand belassen, weil nur eine der Leitungen 125a bis η kein Signal führt und eine Übereinstimmung des abgefragten
Feldes im Speicher mit den Daten anzeigt, die in das Argumentenregister 112 gesetzt wurden.
Fig. 4 zeigt ein Detailabschnitt der Assoziativspeicherteuerung
102, die einen Eingang an das zugehörige UND-Glied 130a bis η
liefert, wenn eines der Flip-Flops 128a bis η auf Eins steht. Wenn ein Impuls an die Schreibleitung 132 angelegt wird, liefert
das UND-Glied 130a bis η einen Ausgang an die entsprechende Schreibwahlleitung 134a bis n. Eine ähnliche Schreiboperation
wird ausgeführt, wenn der Impuls A-3 erzeugt wird. Wenn die monostabile Kippschaltung 124 in Fig. 3C abschaltet, wird ein
Impuls erzeugt, der die monostabile Kippschaltung 136 einschaltet und so den Impuls A-3 erzeugt, der über das Kabel 120 läuft
und an das Schaltglied 138 in Fig. 3C angelegt wird. Der Ausgang des Decodierers 114 erscheint jetzt auf dem Kabel 140 und eines
ider Schaltglieder 142, 144, 146 und 148 des Assoziativspeichers 100 wird eingeschaltet. Dadurch kann der Inhalt des Zeitzählers
' 104 und des Flip-Flops 106 in das entsprechende TM-Register geleitet werden. Auf diese Weise wird das richtige Register im
!Assoziativspeicher für jeden Speicherzugriff fortgeschrieben joder auf den neuesten Stand gebracht.
Die nachfolgende Tabelle I listet das oben beschriebene Mikroprogramm
A zur Eintragung des Zeitstempels in das richtige TM-JRegister
im Assoziativspeicher 100 auf.
YO 973 032
709S14/07O8
-*- 48
j
Mikroprogramm A j
Start - durch das Signal T-5; j
A-1 - setzt übereinstimmungsanzeiger der Assoziativspeichersteuerung
102 auf Eins; i
A-2 - Verbindung auf virtuellem Block;
A-3 - leitet Decodierer 114 an Eingangstore 142, 144, 146, 148;
legt Schreibimpuls an Assoziativspeicher 100;
Als nächstes wird die Ausführung einer FSM-Instruktion beschrieben.
Wenn diese Instruktion auftritt, wird das Argumentenregister 112 wieder mit der virtuellen Blockzahl und den beiden werthohen
Bits der Blockinnenadresse geladen, wie es oben für den Speicherzugriff schon beschrieben wurde. Auf der Leitung 150 aus der
CPU erscheint auch ein Impuls, mit dem die monostabile Kippschaltung
152 eingeschaltet wird. Dadurch wird der Impuls B-1 erzeugt, der über das Kabel 120 durch das ODER-Glied 122 läuft
und die übereinstimmungsanzeiger der Assoziativspeichersteuerung auf Eins stellt. Wenn die monostabile Kippschaltung 152 abschaltet, wird ein Impuls zum Einschalten der monostabilen Kippschaltung
154 erzeugt und dadurch der Impuls B-2 erzeugt, der über das Kabel 120 und das ODER-Glied 126 läuft und den Assoziierungsimpuls
liefert. Wenn die monostabile Kippschaltung 154 ausschaltet, schaltet die monostabile Kippschaltung 156 ein. Dadurch
wird der Impuls B-3 erzeugt, der über das Kabel 120 läuft
und den Leseimpuls für die Assoziativspeichersteuerung liefert. Aus Fig. 4 ist zu ersehen, daß die Einer-Stellung eines jeden
Flip-Flop 128a bis η das UND-Glied 158a bis η so einschaltet,
daß bei Anlegen eines Impulses an die Leseleitung 160 das UND-Glied 158a bis η einen Ausgang auf der entsprechenden Lesewahlleitung
162a bis η hat. Der Impuls B-3 wird auch an das Schaltglied
164 in Fig. 3C angelegt, um den Ausgang des Decodierers
114 auf eines der Schaltglieder 166, 168, 170 oder 172 zu leiten.
YO 973 032
709824/0706
Auf diese Weise erhält man das richtige TM-Wort, das in das Register
r in der CPU geleitet wird.
In der nachfolgenden Tabelle II ist das Mikroprogramm B zur Ausführung
einer FSM-Instruktion aufgelistet, mit der das Zeitstempelwort vom richtigen TM-Register in den Assoziativspeicher
\100 geholt werden soll.
Start - durch den aktiven Zustand der FSM-Leitung von der CPU;
B-1 - übereinstimmungsanzeiger der Assoziativspeichersteuerung
102 auf Eins setzen;
B-2 - einen virtuellen Block assoziieren;
B-3 - den Decodierer 114 auf die Ausgangstore 166, 168, 170 und 172 leiten; Leseimpuls an Assoziativspeicher 100
anlegen.
iln Fig. 5 ist ein für das n-te virtuelle Blockregister im Asso-Iziativspeicher
100 verwendetes Speicherelement gezeigt. Das jAssoziierungskabel mit der Nr. 127 führt Leitungen 127n zum
virtuellen Block des Argumentenregisters 112. Die Leitungen 172n [sind über die UND-Glieder 18On und 182n verbunden. Eine Schreib-
!leitung 184n läuft vom Unterstützungsspeicher 186 unter der
Steuerung der Datenkanalsteuerung 188 und ist mit einem FlipiFlop
19On im Speicherelement verbunden. In ähnlicher Weise läuft eine Leseleitung 192n vom Unterstützungsspeicher 186 über die
Datenkanalsteuerung 188 und ist mit den Flip-Flop-Leitungen 194n und 196n verbunden, die zu den UND-Gliedern 18On bzw. 182n führen.
Der Ausgang der UND-Glieder 18On und 182n ist mit der oben beschriebenen Leitung 125n verbunden.
YO ^73 032
709824/0706
~*~ to 26528S9
In Fig. 6 ist ein für die Zeitstempelregister (TM) im Assoziativspeicher
100 verwendetes Speicherelement gezeigt. Das Speicherelement empfängt die Signale auf der Schreibwahlleitung 134n und
der Lesewahlleitung 162n von der Assoziativspeichersteuerung 102. Zeitzähldaten werden auf den Zeitschreibleitungen 193 vom Zähler
104 und dem Eingang zu einem Schaltglied 195 empfangen, das durch ein Signal auf der Schreibwahlleitung 134n eingeschaltet wird.
Der Ausgang des Schaltgliedes 195 wird an ODER-Glieder 197 angelegt, die auch mit der Schreibleitung 184n vom Unterstützungsspeicher
186 verbunden sind. Die ODER-Glieder 197 liefern einen Ausgang an das Flip-Flop 198, um die Zeitzahl zu speichern. Das
Flip-Flop 198 liefert die zum Speicherelement gehörende Zeitzahl
sowohl an den Unterstützungsspeicher auf der Leitung 192n als auch an ein Ausgangsschaltglied 199 als Teil des Ausganges
an die Schaltglieder 166, 168, 170 und 172 in Fig. 3B.
Eine genaue Beschreibung der Arbeitsweise ähnlicher Assoziativspeicher
findet sich in den US-Patentschriften 3 541 529 und
3 317 898, wobei Einzelheiten des Argumentenregisters 112 insbesondere in Fig. 7 der zuletzt erwähnten Patentschrift gezeigt
sind.
I Dieses Ausführungsbeispiel enthält eine Plattendateistruktur, in
der zu jedem Datenbereich ein Raum reserviert ist, der die Zeit !
enthält, zu der der Bereich zuletzt von der Platte gelesen wurde j oder zu der er auf die Platte geschrieben wurde. Ein Bit dieses \
Zeitstempelwortes bezeichnet einen Lese- oder Schreibzugriff, d.h., wenn dieses Bit auf Eins gesetzt ist, bezeichnet es den
letzten Zugriff zum Bereich als Schreibzugriff, und wenn es auf Null gesetzt ist, bezeichnet es den letzten Zugriff zum Bereich
als Lesezugriff. !
YO 973 032
709824/0708
'**'** 2652863
Magnetisch beschrieben wird die Platte in Richtungsschrift, die an anderer Stelle ausreichend beschrieben ist.
Fign. 7A bis 7L enthalten komplette Verdrahtungs- und Logikdiagramme
des Ausführungsbeispieles mit Plattendatei. Fig. 7 enthält einen Lageplan der Fign. 7A bis 7L.
Fig. 8 zeigt eine perspektivische Darstellung einer Platte 202,
die viele konzentrische Spuren 204 aufweisen kann. Ein Lese/Schreibkopf 206 ist an einem Zugriffsarm 208 befestigt, der so eingestellt
v/erden kann, daß der Lese/Schreibkopf 206 mit der richtigen Spur 204 zusammenarbeitet. Ein Schlitz oder eine öse 210 an einem
Indexpunkt am Umfang der Platte 202 wird durch einen Übertrager 212 abgefühlt, der fest steht und pro Umdrehung der Platte 202
einen Impuls liefert.
Die Skizze in Fig. 9 zeigt eine Spur der Platte 202. Diese weist am Anfang eine Lücke 214 auf, der ein erster Datenbereich 216
folgt. Danach folgt eine weitere Lücke 218, und hinter diese wird
das Zeitstempelwort 220 geschrieben, das zum ersten Bereich 216
gehört. Nach diesem ersten Zeitstempelwort 220 tritt eine weitere Lücke 222 auf, und ein zweiter Bereich 224 wird auf die Platte
hinter die Lücke 226 geschrieben, der wieder ein Zeitstempelwort 228 folgt, das zum zweiten Bereich 224 gehört. Für dieses Ausführungsbeispiel
wird angenommen, daß zwei Datenbereiche auf einer Plattenspur liegen und jeder Bereich 1024
Datenbytes oder 8192 Bits enthält. Die Anzahl von Bits in einem
Bereich muß, wie später noch ersichtlich wird, ein Vielfaches von 32 sein. Das Zeitstempelwort enthält 32 Bits von denen eines
anzeigt, ob der Bereich zuletzt beschrieben oder gelesen wurde.
Das Zeitdiagramm in Fig. 10 zeigt die verschiedenen Impulse, die von einem nicht dargestellten Impulsgenerator zur Verfügung
stehen. Das Signal 230 von dem in Fig. 8 gezeigten übertrager 212 tritt bei jeder Umdrehung der Platte auf. Die OImpulse 232
werden allgemein Taktimpulse genannt und liegen für jedes Daten-
YO 973 032
709824/0706
" <* 2652863
bit immer vor. Die B~Impulse 234 dienen zum Leiten von Daten und
treten zwischen den C-Impulsen auf. Die E-Impulse 236 sind gegenüber
den B- Impulsen zeitlich etwas verzögernd und dienen im Ausführungsbeispiel zum Verschieben eines 32 Bit großen Schieberegisters.
Fig. 11 zeigt, wie die Taktimpulse und die Datenbits im ersten
Bereich und auch im Zeitstempelteil erscheinen können. Die Platte wird mit diesen Taktimpulsen synchronisiert, wobei die spezifische
Art hier keine Rolle spielt. Der in Fig. 11 gezeigte Übertragerimpuls
230 tritt jedenfalls zur selben Zeit auf wie der C-Impuls. Die C-Impulse werden immer auf der Platte aufgezeichnet
und ein Null-Bit durch Fehlen eines Impulses hinter einem Taktimpuls angezeigt. Das Vorhandensein einer Eins wird angezeigt
durch das Vorhandensein eines Impulses nach einem Taktimpuls. Um die Lage eines Bereiches oder eines Zeitstempels auf der
Platte zu finden, werden diese Taktimpulse gezählt, beginnend mit dem ersten in Übereinstimmung mit dem Übertragerimpuls auftretenden
Impuls. In Fig. 11 zeigt der Taktimpuls 368 den Anfang des ersten Bereiches an, dessen Ende durch den Taktimpuls
370 angegeben wird. Der Anfang des ersten Zeitstempels wird bezeichnet
durch den Taktimpuls 372, das Ende durch den Taktimpuls 374. Das letzte Datenbit tritt kurz nach den Impulsen 370 oder
374 auf.
In dem in den Fign. 7A bis 7L gezeigten Ausführungsbeispiel mit
Plattendatei erscheint eine Instruktion zum Schreiben eines Bereiches auf die Platte oder zum Lesen eines Bereiches von der
Platte zuerst im Instruktionsregister 376. Diese Instruktion
enthält die Anfangsadresse im Speicher 377, die auch in Fig. 7A gezeigt ist, sowie die Spurnummer auf der Platte und die Bereichsnummer
auf der Spur. In diesem Ausführungsbeispiel wird angenommen, daß das Speicherwort eine Länge von 32 Bits und der Bereich
ein Vielfaches von 32 Bits umfaßt. Ein Zeitintervallzähler 378 hat 31 Bits und ein zugehöriges Anzeigebit 380, dessen Zweck
bereits erklärt wurde.
YO 973 032
709824/0706
; Zwei Arbeitsregister 382 und 390 sind in Fig. 7D gezeigt und werdeil
j als Lese- und Schreib-TC-Register bezeichnet. Diese Register ·■
i stehen dem Programmierer über die oben besclxriebene FSC-Instruktion
zur Verfügung und können zum Wegspeichern des Zeitstempelwortes
auf jede vom Programmierer gewünschte Art verwendet werden,
j So kann er beispielsweise eine Liste aller existierenden Bereiche
I und Zeiten führen, wenn diese Bereiche vom ihm gelesen oder ge-
\schrieben werden, indem er den Inhalt dieser Register ausliest ; und die Werte in die Liste einsetzt.
j So kann er beispielsweise eine Liste aller existierenden Bereiche
I und Zeiten führen, wenn diese Bereiche vom ihm gelesen oder ge-
\schrieben werden, indem er den Inhalt dieser Register ausliest ; und die Werte in die Liste einsetzt.
JIn Fig. 7E ist ein Register 384 für die Bereichsnummer in der ,
!spur vorgesehen. Diese wird vom Decodierer 386 so decodiert, daß ;
j !
;entweder der erste oder der zweite Bereich in der Spur gelesen .
oder geschrieben werden kann. Ein weiteres in Fig. 7F gezeigtes i 1 j
Register 388 hält die Spurnummer und steuert den Kopfeinstell- j
irnechanismus so, daß der in Fig. 8 gezeigte Zugriffsarm so be- :
jwegt wird, daß der Lese/Schreibkopf auf die richtige Spur ge- j
j stellt wird. Mit einem Spurbitzähler und Decodierer 348 wird der j
!richtige Bereich und der richtige Zeitstempel in der Spur lokali- :
siert. In den Fign. 7G und 7H ist ein 32 Bit großes Schiebere- \
gister 349 als Puffer zwischen dem Speicherdatenregister 459 des
in Fig. 7C gezeigten Speichers 377 und der Platte vorgesehen.
Außerdem ist in Fig. 7H ein Modulo-32-Zähler 351 vorgesehen, der
die übertragung von und zu dem 32 Bit großen Schieberegister 349
steuert. Die Fign. 71, J, K und L enthalten die Steuerschaltung,
deren Zweck später erklärt wird.
die übertragung von und zu dem 32 Bit großen Schieberegister 349
steuert. Die Fign. 71, J, K und L enthalten die Steuerschaltung,
deren Zweck später erklärt wird.
Sobald ein Bereich auf die Platte geschrieben wird, wird der alte
Bereich überschrieben und der alte Zeitstempel durch die laufende
Zeit überschrieben. Der geschriebene Zeitstempel wird auch an
das TC-Schreikregister 390 in Fig. 7D geleitet. Wenn ein Bereich
gelesen wird, geht der Bereich in den Speicher 377 und der Zeitstempel in das TC-Leseregister 382. Bei der nächsten Umdrehung
wird der laufende Zeitstempel auf die Platte geschrieben und
dieser laufende Zeitstempel geht in das TC-Schreibregister 390.
Bereich überschrieben und der alte Zeitstempel durch die laufende
Zeit überschrieben. Der geschriebene Zeitstempel wird auch an
das TC-Schreikregister 390 in Fig. 7D geleitet. Wenn ein Bereich
gelesen wird, geht der Bereich in den Speicher 377 und der Zeitstempel in das TC-Leseregister 382. Bei der nächsten Umdrehung
wird der laufende Zeitstempel auf die Platte geschrieben und
dieser laufende Zeitstempel geht in das TC-Schreibregister 390.
YO 973 032
70 98 24/0708
Die Anfangsbedingungen für das in den Fign. 7A bis 7L gezeigte
\Plattendateisystem sind in der nachfolgenden Tabelle III zusam-
\Plattendateisystem sind in der nachfolgenden Tabelle III zusam-
,mengestellt.
Tabelle III
Anfangsbedingungen für das System
a) Spurbitzähler 348 (Fig. 7E) anfangs auf 00...OO zurückgestellt.'
!b) Flip-Flops 350, 352 und 354 (Fig. 7E) anfangs auf Null rurück- ■
i gestellt. :
c) Flip-Flops 358 und 360 (Fig. 7F) anfangs auf Null zurückge- i I stellt. \
d) Flip-Flops 356, 362 und 364 (Fign. 7G und 7H) anfangs auf !
Null zurückgestellt. ■
I 1
je) Modulo-32-Zähler (Fig. 7H) anfangs zurückgestellt auf 00000. !
jf) Flip-Flops 340, 342, 344 und 346 (Fig. 71) anfangs auf Null j
■ zurückgestellt. ■
Ig) Flip-Flop 366 (Fig. 7K) anfangs zurückgestellt auf Null. ;
ih) Flip-Flop 334 (Fig. 7L) anfangs zurückgestellt auf Null. ,
i) Flip-Flop 414 (Fig. 7L) anfangs zurückgestellt auf Null.
j) Flip-Flop 416 (Fig. 7L) anfangs zurückgestellt auf Null.
Zuerst wird das Schreiben eines Bereiches auf die Platte im einzelnen
erklärt, wozu nur eine Plattenumdrehung erforderlich ist.
Die nachfolgende Tabelle IV führt das Mikroprogramm zum Schreiben
eines Bereiches auf die Platte auf.
Die nachfolgende Tabelle IV führt das Mikroprogramm zum Schreiben
eines Bereiches auf die Platte auf.
Tabelle IV
Mikroprogramm zum Schreiben eines Bereiches
W-1 - Anfangsadresse an Speicheradreßregister 405 leiten.
Spurnummer an Platteneinheit leiten.
Bereichsnummer an Platteneinheit leiten.
Spurnummer an Platteneinheit leiten.
Bereichsnummer an Platteneinheit leiten.
YO 973 032
709824/0706
W-2 - Zugriffsbefehl zum Speicher 377 lesen. W-3 - Ist Kopf in Position auf Spur?
- Wenn ja. Signal auf Leitung 570 und Erzeugung von W-5.
- Wenn nein. Signal auf Leitung 572 und Erzeugung von W-4.
W-4 - Nur Verzögerung, weiter mit W-3.
W-5 - Flip-Flop 334 (Fig. 7L) auf Eins setzen. Flip-Flop 338 (Fig. 7K) auf Eins setzen.
Flip-Flop 380 (Fig. 7B) auf Eins setzen.
Wenn eine Instruktion "Bereich auf Platte schreiben" ausgeführt wird, erscheint ein Impuls auf der Leitung 398, der die monostabile
Kippschaltung 392 in Fig. 7C einschaltet. Dadurch wird der Impuls W-1 erzeugt, der durch das ODER-Glied 402 zu dem in Fig. 7A
gezeigten Schaltglied 404 läuft, um die Anfangsadresse im Speicher
377 auf das Speicheradreßregister 405 zu leiten. Eine Verzweigungs*
schaltung vom Instruktionsregister 376 läuft zum Schaltglied 406, das die Spurnummer an das Register 388 in Fig. 7F leitet. Das
Register 388 ist mit dem noch zu beschreibenden Kopfstellmechanismus
389 verbunden. Eine andere Verzweigungsschaltung vom Instruktionsregister 376 läuft zum Schaltglied 408, das die Bereichszahl in der Spur an das Register 384 in Fig. 7E leitet. Wenn die
monostabile Kippschaltung 392 ausschaltet, wird ein Impuls erzeugt, der die in Fig. 7C gezeigte monostabile Kippschaltung 394 einschaltet.
Dadurch wird der Impuls W-2 erzeugt, der durch das ODER-Glied 410 läuft und einen Lesebefehl an den Speicher 377
gibt. Wenn die monostabile Kippschaltung 394 abschaltet, wird ιein Impuls erzeugt zum Einschalten der monostabilen Kippschaltung
396. Nach Darstellung in Fig. 7D wird dadurch der Impuls W-3 erzeugt, der an das Schaltglied 574 angelegt wird, um die Position
des Lese/Schreibkopfes zu prüfen. Steht der Kopf nicht in der {richtigen Position, wird ein Impuls vom aktiven Zustand der Leijtung
572 erzeugt, die vom Kopfeinstellmechanismus 389 kommt, der
in Fig. 7F gezeigt ist, um die monostabile Kippschaltung 576 einzuschalten, die nur der Verzögerung dient und bei ihrem Abschallten
einen Impuls erzeugt, um die monostabile Kippschaltung 396 wieder einzuschalten. Wenn der Kopf auf der Spur steht, wird vom
YO 973 032
70982A/0706
2S5288S ι
aktiven Zustand der Leitung 570, die vom Kopfeinstellmeehanisinus !
389 kommt, ein Impuls zum Einschalten der monostabilen Xippschaltung
578 erzeugt. Dadurch wird der Impuls W-5 erzeugt, der zu der in Fig. 7B gezeigten Schaltung läuft und das Flip-Flop 380 auf \
Eins schaltet. Der Impuls W-5 läuft auch zu dem in Fig. 7K ge- \
zeigten ODER-Glied 412 und schaltet das in Fig. HlL gezeigte .
Flip-Flop 334 auf Eins. In Fig. 7K wird mit dem Impuls W-5 auch
das Schreib-Flip-Flop 338 auf Eins geschaltet. ¥©n !hieran wird
das Schreiben des Bereiches und des Zeitstempels durch die Platten*
einheit gesteuert.
Weil das Flip-Flop 338 in den Fign. 7K und 7Ii auf Eins steht,
ist die Leitung 426 aktiv, und ihr aktiver Zustand erstreckt sich >
durch das ODER-Glied 428 auf die Leitung 324, die nach oben läuft
und das UND-Glied 418 einschaltet. Dadurch kann der erste auf der Leitung 424 erscheinende tibertragerimpuls durch das BED-Glied ,
418 und das ODER-Glied 42O zum UND-Glied 422 laufen. Wie oben
schon gesagt wurde, ist der Übertragerimpuls exakt phasengleich mit dem Taktimpuls C und daher kann man feststellen» daß der erste
O-Impuls auf der Leitung 326 erscheint und das Flip-Flop 366 auf
Eins schaltet und so die Leitung 430 in den aktiven Zaastand versetzt,
der sich jetzt über das ODER-Glied 420 erstreckt und das UND-Glied 422 solange einschaltet, wie das Flip-Flop 366 auf
Eins steht. Die C-Impulse erscheinen also weiter auf der Leitung
326, die zu der in Fig. 7£ gezeigten Schaltung läuft, nand werden
zum Erhöhen des Spurbitzählers 348 verwendet. Weil das Flip-Flop 334 in den Fign. 7K und 7L auf Eins steht, wird das UND-Glied
432 so eingeschaltet, daß derselbe erste Übertragerimpuls durch das UND-Glied 432 zum UND-Glied 434 läuft, das durch den aktiven
Zustand der Leitung 426 eingeschaltet ist, und somit erscheint
ein Impuls auf der Leitung 330, die zu der in Flg. ΊΕ gezeigten
Schaltung foährt, und läuft durch das ODER-Glied 438, um das
Flip-Flop 350 auf Eins zu schalten. Der Impuls auf der JLeitung
330 schaltet außerdem das Flip-Flop 352 auf Eins.
YO 973 ©32
7Q9824/01ÖS
Nach Darstellung in den Fign. 7E und 7F wird das Schaltglied 440
eingeschaltet/ weil das Flip-Flop 350 jetzt auf Eins steht. Weil ;das Flip-Flop 352 auf Eins steht, wird auch das Schaltglied 442 i
eingeschaltet. Wie schon gesagt wird der Spurbitzähler 348 durch die C-Impulse erhöht. Wenn die Zahl den Anfang des zu beschreiben-:
den Bereiches erreicht, erscheint ein Impuls auf der Leitung 314 !
ähnlich dem in Fig. 11 gezeigten Impuls 368 und schaltet das !
!Flip-Flop 360 auf Eins, wodurch sofort die Leitung 443 aktiv j
wird und somit beispielsweise das UND-Glied 444 einschaltet. Da- |
!durch können die C-Impulse durch das ODER-Glied 446 zum Schreib- \
kopf laufen. ;
Anschließend wird erklärt, wie die Datenimpulse zum Schreibkopf j gelangen. Nach Darstellung in den Fign. 7H, I und J läuft der
Impuls auf der Leitung 314 vom Schaltglied 442 in Fig. 7E über : das Kabel zur Fig. 71, wo er das Flip-Flop 340 auf Eins schaltet.
Dadurch wird die Leitung 448 aktiv und das UND-Glied 450 eingeschaltet.
Der erste an das UND-Glied 450 angelegte C-Impuls ist
im allgemeinen ein Impuls derselben Art wie der in Fig. 11 gezeigte Impuls 368. Dieser C-Impuls läuft durch das ODER-Glied
1452 und das UND-Glied 454, welches eingeschaltet ist, weil der
IModulo-32-Zähler 351 am Anfang auf lauter Nullen steht. Die Ausjgabe
des UND-Gliedes 454 läuft zum UND-Glied 456, das ebenfalls !durch den aktiven Zustand der Leitung 448 eingeschaltet ist, und
!weiter zur Leitung 458, die über ein Kabel zu der in Fig. 7D gezeigten Schaltung zurückläuft, und dann wird die Ausgabe an das
Schaltglied 460 angelegt, um den Inhalt des Speicherdatenregisters [459 an das 32 Bit große Schieberegister 349 anzulegen. In den
Fign. 7G und 7H läuft die Einer-Seite des linken Flip-Flop des 32 Bit großen Schieberegisters 349 über die Leitung 462 zum
UND-Glied 464 der Fig. 7F. Dieses UND-Glied 464 wird durch den B-Impuls in Fig. 10 eingeschaltet. Wenn also das äußerste linke
Bit in dem 32 Bit großen Schieberegister 349 auf Eins steht, läuft ein Impuls durch das UND-Glied 464 und das ODER-Glied 446
jzum Schreibkopf. Auf diese Weise wird eine Eins auf die Platte
!geschrieben. Wenn das äußerste linke Bit in dem 32 Bit großen
YO 973 032
709824/0706
2652863
Schieberegister auf Null steht, dann wird natürlich kein Bit in die Bitzelle der Plattenspur geschrieben. In Fig. 7F ist gezeigt, i
jwie B-Impulse an das UND-Glied 464 angelegt werden und auf diese
Weise auf der Leitung 304 erscheinen, die durch das ODER-Glied 1468 in Fig. 7H läuft, um den Modulo-32-Zähler 351 zu erhöhen.
iln Fig. 7F laufen Ε-Impulse durch das UND-Glied 470 zur Leitung ;
I300, die zu der in Fig. 7H gezeigten Schaltung führt, und durch
!das ODER-Glied 472, um den Inhalt des 32 Bit großen Schiebere-
j j
jgisters 349 um eine Stelle nach links zu verschieben. In Fig. 7J ;
wird der auf der Leitung 458 erschienene Impuls durch die Ver- ! zögerungseinheit 474 verzögert und erscheint auf der Leitung 476,
die zu der in Fig. 7A gezeigten Schaltung führt, und wird zum [
Erhöhen des Speicheradreßregisters 405 benutzt. Wenn das erfolgt j
ι ■ ι
ist, erscheint ein Impuls am Ausgang der Verzögerungseinheit 478 !
in Fig. 7J und auf der Leitung 480, die zu der in Fig. 7A ge- |
zeigten Schaltung führt, und läuft durch das ODER-Glied 410 als Lesebefehl an den Speicher. Das Schreiben auf der Platte wird
j fortgesetzt, bis die 32 Bits im Schieberegister 349 aufgebraucht 'sind. Zu diesem Zeitpunkt steht der Modulo-32-Zähler 351 wieder
;auf lauter Nullen und der nächste an das UND-Glied 450 in Fig. 7J
!angelegte C-Impuls leitet wieder den Inhalt des Speicherdatenregisters
459 in Fig. 7C auf das 32 Bit große Schieberegister 349. Die Operationen laufen dann weiter bis zu dem Impuls, der anzeigt,
daß das Ende des Bereiches auftritt. Dieser Impuls kommt vom Spurbitzähler 348 in Fig. 7E, erscheint auf der Leitung 312 und
ist ein äquivalenter Impuls zu dem in Fig. 11 gezeigten Impuls
370. Aus Fig. 11 ist zu ersehen, daß es noch ein Datenbit gibt, das dem Impuls 370 folgen kann. Wegen dieses letzten Datenimpulses
ist in Fig. 7F die Verzögerungseinheit 482 eingebaut, um den Impuls auf der Leitung 312 bei der Rückstellung des Flip-Flop
360 auf Null zu verzögern, weil die Leitung 443 lange genug aktiv gahalten werden muß, so daß der letzte B-Impuls eine mögliche
Ein» durch das UND-Glied 464 und das ODER-Glied 446 an den Schreibekopf leiten kann. Mit der Ausgabe der Verzögerungseinheit
482 wird das in Fig. 7E gezeigte Flip-Flop 352 auf Null
YO 973 032
709824/0708
zurückgestellt. Da keine weiteren Übertragungen vom Speicherdatenregister
459 in das 32 Bit große Schieberegister 349 notwendig sind, wird mit dem auf Leitung 312 in Fig. 71 erscheinenden Impuls
das Flip-Flop 340 auf Null zurückgestellt und damit die in Fig. 7J gezeigten UND-Glieder 350 und 356 so abgeschaltet,
daß keine weiteren C-Impulse für eine übertragung durchgeleitet
werden, wodurch das Speicheradreßregister erhöht wird und Lesezugriffe des Speichers ausgelöst werden. Auf diese Weise wird
der Bereich auf der Platte beschrieben.
Die Platte dreht sich nun weiter, bis der Anfang des Zeitstempels auftritt und einen Impuls auf der Leitung 310 in den Fign. 7E
und 7F auslöst, der ähnlich ist dem Impuls 372 in Fig. 11. Dieser Impuls auf der Leitung 310 setzt das Flip-Flop 358 auf Eins,
so daß die Leitung 443 wieder aktiv wird. In den Fign. 71 und 7J
ist gezeigt, wie der Impuls auf der Leitung 310 das Flip-Flop auf Eins schaltet und dadurch die UND-Glieder 484 und 486 einschaltet.
Das bedeutet, daß derselbe Impuls, der auf der Leitung 310 erschien, durch das UND-Glied 484 und das ODER-Glied 452 zum
UND-Glied 454 läuft, das nun ein Ausgangssignal hat, weil der Modulo-32-Zähler 351 auf lauter Nullen steht, so daß das UND-Glied
486 ebenfalls ein auf der Leitung 488 erscheinendes Ausgangssignal hat. Die Leitung 488 läuft zur Fig. 7B, wo der Impuls
an das Schaltglied 490 angelegt wird, um den Zeitintervallzähler 378 zu leiten und das Anzeigebit 380 des 32 Bit großen Schieberegister
s 349. Der Impuls auf der Leitung 488 wird außerdem an das Schaltglied 491 angelegt, um den Zeitintervallzähler 378 an
das in Fig. 7D gezeigte TC-Schreibregister 390 anzulegen. Das
!schreiben des Zeitstempels wird jetzt aus dem 32 Bit großen !Schieberegister 349 fortgesetzt in ähnlicher Weise, wie es oben
!beschrieben wurde. Wenn das Ende des Zeitstempels auftritt, erscheint
ein Impuls auf der in den Fign. 7E und 7F gezeigten Leitung 308 der äquivalent ist dem Impuls 374 in Fig. 11. Durch
die Verzögerungseinheit 490 will man auch das letzte Bit noch bekommen, das unmittelbar hinter dem Impuls auf der Leitung 308
erscheint. Durch die Ausgabe der Verzögerungseinheit 490 werden
YO 973 032
709824/0706
die Flip-Flops 350 und 358 auf Null zurückgestellt. In Fig. 71
ist gezeigt, wie der Impuls auf der Leitung 308 das Flip-Flop 342 auf Null zurückstellt und dadurch jede weitere Aktion der
UND-Glieder 484 und 486 verhindert.
Eine Schreiboperation wird wie folgt beendet. Wenn in Fig. 7L der tibertragerimpuls auf der Leitung 424 durch das UND-Glied 432 geleitet
wird und das Flip-Flop 414 auf Eins schaltet, so wird dadurch das UND-Glied 494 so eingeschaltet, daß bei Erscheinen
eines Impulses auf der Leitung 492 am Ende des letzten Zeitstempels auf der Platte das UND-Glied 494 ein Ausgangssignal
hat, das das Flip-Flop 338 auf Null zurückstellt. Dasselbe Signal läuft weiter durch die Verzogerungseinheit 496 und stellt das
Flip-Flop 414 auf Null zurück. Derselbe Ausgangsimpuls des UND-Gliedes
494 erscheint auf der Leitung 504, die zu der in Fig. 7D gezeigten Schaltung zurückführt, und ist für den Computer ein
Signal dafür, daß der Bereich fertig beschrieben ist. In Fig. 7L hat auch das ODER-Glied 498 einen Ausgang, um die monostabile
Kippschaltung 500 einzuschalten. Der von ihr erzeugte Impuls stellt das Flip-Flop 366 auf Null zurück. Wenn in Fig. 7F die
monostabile Kippschaltung 500 abschaltet, erzeugt sie einen Impuls zum Einschalten der monostabilen Kippschaltung 502 und
diese einen Impuls auf der Leitung 506, mit dem der Spurbitzähler 348 in Fig. 7E zurückgestellt wird.
Anschließend wird beschrieben, wie ein Bereich von der Platte gelesen wird. Dazu braucht man bekanntlich zwei Plattenumdrehungen
Während der ersten Umdrehung wird der Bereich in den Speicher 377 der Fig. 7A und der Zeitstempel in das TC-Leseregister
der Fig. 7D gelesen. Bei der zweiten Umdrehung werden der Zeitintervall zähler 378 und das Anzeigebit 380 in den Zeitstempelraum
für den Bereich auf der Platte nach Darstellung in Fig. 7B geschrieben. Die nachfolgende Tabelle V enthält eine Liste des
Mikroprogrammes zum Lesen eines Bereiches vom der Platte.
YO 973 032
709824/0706
Tabelle V
Mikroprogramm Lesen eines Bereiches
Mikroprogramm Lesen eines Bereiches
Start - Durch Impuls vom Bedienercodedecodierer (Fign. 7A, 7C). R-1 - Leite Anfangsadresse an MAR 405, Spurnummer und Bereichs-
nummer an Platteneinheit.
R-2 - Steht Kopf auf der Spur?
R-2 - Steht Kopf auf der Spur?
- Wenn ja, Signal auf Leitung 570 und Erzeugung von R-4.
- Wenn nein, Signal auf Leitung 572 und Erzeugung von R-3. R-3 - Nur Verzögerung, weiter mit R-2.
R-4 - Setze Flip-Flop 334 (Fig. 7L) auf Eins. Setze Flip-Flop 336 (Fig. 7K) auf Eins.
Setze Flip-Flop 380 (Fig. 7B) auf Null.
Eine Instruktion "Bereich von Platte lesen" wird vom Instruktionsregister
376 durch einen Impuls auf der Leitung 400 (Fign. 7A und 7C) iniziiert. Dieser Impuls schaltet die monostabile
Kippschaltung 508 ein, die einen Impuls R-1 erzeugt. Dieser Impuls läuft durch das ODER-Glied 402 zu den Schaltgliedern 404,
406 und 408 und hat dieselbe Leitfunktion, die oben beschrieben wurde. Wenn die monostabile Kippschaltung 508 abschaltet, wird
ein Impuls zum Einschalten der monostabilen Kippschaltung 510 erzeugt, die dann den Impuls R-2 erzeugt, der an das Schaltglied
586 in Fig. 7D angelegt wird, um die Position des Lese/Schreibkopfes zu prüfen. Befindet sich der Kopf nicht in der richtigen
Position, wird aus dem aktiven Zustand der Leitung 572 ein Impuls zum Einschalten der monostabilen Kippschaltung 582 erzeugt. Die
monostabile Kippschaltung 582 dient nur zur Verzögerung und wenn ι sie abgeschaltet ist, wird ein Impuls erzeugt, um die monostabile
!Kippschaltung 510 wieder einzuschalten. Wenn der Kopf auf der Spur steht, wird ein Impuls vom aktiven Zustand der Leitung 570
zum Einschalten der monostabilen Kippschaltung 584 erzeugt, die dann den Impuls R-4 erzeugt, der zu der in Fig. 7B gezeigten
Schaltung läuft und das Flip-Flop 380 auf Null schaltet. Der Impuls R-4 läuft auch zu der in Fig. 7K gezeigten Schaltung und
YO 973 032
709824/0706
dort durch das ODER-Glied 412, um das Flip-Flop 334 und das Lese-Flip-Flop
336 auf Eins zu schalten. In Fig. 7F erzeugt der auf der Leitung 424 erscheinende Übertragerimpuls wieder Taktimpulse
auf der Leitung 326, mit denen der Spurbitzähler 348 in Fig. 7C erhöht wird. Der Übertragerimpuls läuft auch durch die UND-Glieder
432 und 436 zur Leitung 328, die zu der Schaltung in Fig. 7C führt, und wird zum Schalten der Flip-Flops 354 und 356 auf Eins
benutzt. Die Schaltglieder 512 und 514 in Fig. 7D werden eingeschaltet. Das Lesen des Bereiches wird durch das Schaltglied
und das Lesen des Zeitstempels durch das Schaltglied 514 gesteuert,
weil der auf der Leitung 424 erscheinende Übertragerimpuls ein Ausgangssignal des UND-Gliedes 432 in Fig. 7F erzeugt.
Der Ausgang des UND-Gliedes 432 schaltet das Flip-Flop 414 auf Eins. Der erste Übertragerimpuls läuft durch die Verzögerungsschaltung 516 und stellt das Flip-Flip 334 auf Null zurück.
Zum Lesen von der Platte wird das 32 Bit große Schieberegister in Fig. 7D vom Lesekopf geladen und dann dessen Inhalt in das
Speicherdatenregister 459 übertragen und anschließend folgt die Speicheroperation, um das Wort im Speicher zu speichern. Das
Speicheradreßregister 405 wird dann zur Vorbereitung auf das
nächste 32 Bit große Wort wie folgt erhöht. Wenn der Anfang des Bereiches auftritt, liefert der Decodierer 386 ein Signal, mit dem
;ein Impuls auf der Leitung 316 (Fign. 7E, G und H) erzeugt wird, !und der äquivalent ist dem Impuls 368 in Fig. 11. Wenn das
passiert, wird das Flip-Flop 362 auf Eins geschaltet und das ODER-Glied 518 hat ein Ausgangssignal, mit dem die Leitung 520
aktiv gemacht wird. Der erste Datenimpuls vom Lesekopf wird jdurch den Inverter 519 und das Schaltglied 521 in das äußerste
!rechte Flip-Flop des Schieberegisters 349 durch den B-Impuls jam Schaltglied 523 geleitet, wodurch die Leitung 306 zur Zeit
B aktiv wird. Dadurch wird außerdem der Inhalt des Modulo-32-I
Zählers 351 erhöht. Ε-Impulse werden ebenfalls über das Schaltglied
525 auf der Leitung 302 erzeugt, die durch das ODER-Glied 472 laufen und die 32 Bits im Schieberegister 349 verschieben.
Der Impuls auf der Leitung 316 wird nach Darstellung in Fig. 7E
YO 973 032
709824/0706
durch den Verzögerungskreis 522 verzögert, um das Flip-Flop 344 auf Eins zu schalten und so zu verhindern, daß der erste den
Impuls 368 in Fig. 11 äquivalente C-Impuls den Inhalt des Schieberegisters
349 in das MDR 459 leitet, weil das erst geschehen soll, wenn die ersten 32 Bits in das Schieberegister geladen
wurden. Der Verzögerungskreis 522 verhindert außerdem die Betätigung des UND-Gliedes 454 über das Flip-Flop 344 und die Schaltglieder
524 und 452, so daß es zu dieser Anfangszeit nicht eingeschaltet wird. Der erste B-Impuls nach dem ersten C-Impuls, der
wie oben gesagt dem Impuls 368 in Fig. 11 äquivalent ist, erhöht den Modulo-32-Zähler 351 so, daß das UND-Glied 454 erst
eingeschaltet werden kann, wenn die ersten 32 Bits in das Schieberegister 349 geladen wurden. Wenn das geschehen ist, wird der
nächste C-Impuls durch das Schaltglied 524, das ODER-Glied 452,
die UND-Glieder 454 und 526 und setzt einen Impuls auf die Leitung 528, die von Fig. 7J zur Fig. 7D läuft, und dieser Impuls
wird dann an das Schaltglied 531 angelegt, um den Inhalt des Schieberegisters 349 in das Speicherdatenregister 459 zu leiten.
Derselbe Impuls läuft auch durch die Verzögerungseinheit 530 auf die Leitung 532, die von der Fig. 7J zur Fig. 7A führt, und
gibt den Schreibbefehl an den Speicher 377. Dieser Impuls wird wiederum durch die Verzögerungseinheit 534 verzögert, die einen
Impuls auf der Leitung 536 erzeugt, die ebenfalls zu der in Fig. 7A gezeigten Schaltung läuft, und mit diesem Impuls wird dann
der Inhalt des Speicheradreßregisters 405 erhöht. Auf diese Weise werden die 32 Bits auf dem Schieberegister 349 so oft wie nötig
von der Platte geladen und in den Speicher übertragen, bis das Ende des Bereichs erscheint. Dann erscheint auf der Leitung 318
in Fig. 7H ein Impuls äquivalent dem Impuls 370 in Fig. 11, hinter diesem Impuls folgt jedoch noch ein Datenbit, und deshalb
,verzögert die VerzögerungsschaItung 540 in Fig. 7H die Rückstellung
des Flip-Flops 362, bis der nächste B-Impuls das letzte
!Datenbit in das äußerste rechte Flip-Flop des 32 Bit großen
i
Schieberegisters 349 leiten kann. Die Verzögerung der Verzögerungseinheit 540 reicht gerade aus, um den nächsten B-Impuls aufzunehmen.
In den Fign. 71 und 7J ist gezeigt, wie der Impuls auf
YO 973 032
709824/0706
der Leitung 318 auf der Verzögerungseinheit 542 angelegt wird,
die den Impuls lange genug verzögern muß, damit der nächste C-Impuls
erfaßt werden kann, der jetzt durch das UND-Glied 524, das ODER-Glied 452, die UND-Glieder 454 und 526 zur Leitung
läuft, um die letzten 32 Bits auf dem 32 Bit großen Schieberegister
349 in das Speicherdatenregister 459 zu leiten. Auf der Leitung 532 folgt ein Impuls, um einen Schreibbefehl an den
Speicher zu geben. Auf diese Weise werden die letzten 32 Bits im Speicher gespeichert. Ein nachfolgender Impuls aus der Verzögerungseinheit
534 auf der Leitung 536 soll den Inhalt des Speicheradreßregisters 405 erhöhen, ist aber zu diesem Zeitpunkt
unwirksam.
Die Platte dreht sich weiter, bis der Anfang des Zeitstempels auftritt.
Der Spurbitzähler 348 löst einen Impuls auf der Leitung 320 in Fig. 7H aus, der das Flip-Flop 364 auf Eins schaltet und
die Leitung 520 wieder aktiv macht. Dieser Impuls auf der Leitung 320 ist äquivalent dem Impuls 372 in Fig. 11. Der Impuls auf
der Leitung 320 wird nach Darstellung in den Fign. 71 und 7J durch die Verzögerungseinheit 544 verzögert, um das Flip-Flop
346 auf Eins zu schalten, damit der gleichzeitig auftretende C-Impuls nicht durch das UND-Gleid 546 weiterlaufen kann. Die
32 Bits im Zeitstempelabschnitt werden in das 32 Bit große Schieberegister 349 geladen, und wenn das Ende des Zeitstempels auftritt,
was bedeutet, daß ein Impuls auf der Leitung 322 erscheint, so wird dieser Impuls durch die Verzögerungseinheit 547 in Fig.
7H verzögert, um das Flip-Flop 364 später zurückzustellen, so daß der aktive Zustand der Leitung 520 lange genug erhalten
bleibt, um das erste diesem Ende des Zeitstempelsignales folgende
Datenbit zu bekommen. In den Fign. 71 und 7J ist gezeigt, wie
der Impuls auf der Leitung 322 durch die Verzögerungseinheit
verzögert wird, um das Flip-Flop 346 später zurückzustellen, so daß der folgende C-Impuls über das UND-Glied 546, das ODER-Glied
452 sowie die UND-Glieder 454 und 550 zur Leitung 552 läuft, die zu Fig. 7D führt, um den Inhalt des 32 Bit großen Schieberegisters
349 in das TC-Leseregister 382 zu leiten.
YO 973 032
7 09824/0706
Die erste Umdrehung der Platte läuft dann welter, bis das Ende
des letzten Zeitstempels auftritt und ein Impuls auf der Leitung 492 erscheint. In Fig. 7L ist gezeigt, daß der Impuls auf der
Leitung 492 durch das UND-Glied 494 und das ODER-Glied 498 läuft und die monostabile Kippschaltung 500 einschaltet, weil das
Flip-Flop 414 durch den Übertragerimpuls auf Eins gesetzt war. Die monostabile Kippschaltung 500 erzeugt dann einen Impuls zum
Rückstellen der Flip-Flops 366 und 338 auf Null. Wenn die monostabile Kippschaltung 500 abschaltet, wird ein Impuls zum Einschalten
der monostabilen Kippschaltung 502 erzeugt, die dann einen Impuls auf der Leitung 506 erzeugt, die zur Fig. 7E läuft,
und den Spurbitzähler 348 zurückstellt. Die Platte dreht sich weiter, bis der Übertragerimpuls ein zweites Mal auftritt. Der
erste Übertragerimpuls auf der Leitung 424 lief ja bekanntlich durch die Verzogerungseinheit 516 in Fig. 7L und schaltete das
Flip-Flop 343 auf Null. Dadurch wird das UND-Glied 554 eingeschaltet, so daß beim Auftreten des zweiten Übertragerimpulses
auf der Leitung 424 dieser jetzt durch das UND-Glied 554 läuft und das Flip-Flop 416 auf Eins schaltet. Der Ausgangsimpuls des
UND-Glieds 454 läuft auch durch das UND-Glied 556 zur Leitung 332 in Fig. 7K, die durch das ODER-Glied 438 in Fig. 7E führt,
und der Impuls schaltet das Flip-Flop 350 auf Eins. Das schaltet !bekanntlich in diesem Zustand das Schaltglied 440 ein, das das
[Schreiben des Zeitstempels steuert. Dieses Mal besteht der einjzige Unterschied zum vorherigen Schreiben darin, daß bei Erlscheinen
des Impulses auf der Leitung 492 in Fig. 7L dieser jetzt idurch das UND-Glied 558 läuft, weil das Flip-Flop 416 bei der
zweiten Umdrehung auf Eins geschaltet ist, während bei der ersten !Umdrehung das Flip-Flop 414 auf Eins geschaltet war. Die Ausgabe
!des UND-Gliedes 558 stellt das Flip-Flop 336 in Fig. 7K auf Null zurück und erzeugt einen Impuls auf der Leitung 561, die zur
Fig. 7D führt, und dieser Impuls zeigt dem Computer an, daß ein Bereich von der Platte fertig gelesen ist. Der Ausgang des UND-Gliedes
558 ist außerdem mit der Rückstellseite des Flip-Flop 416 über eine Verzogerungseinheit 560 verbunden. In Fig. 7L ist
YO 973 032
709824/0706
,gezeigt, daß der Ausgang des UND-Gliedes 558 ebenfalls über das
ODER-Glied 498 zum Einschalten der monostabilen Kippschaltung geführt wird, so daß das Flip-Flop 366 auf Null zurückgestellt
wird. Wenn die monostabile Kippschaltung 500 abschaltet, wird ein Impuls zum Einschalten der monostabilen Kippschaltung 502
!erzeugt, die dann einen Impuls auf der Leitung 506 erzeugt, die zu der Schaltung in Fig. 7E führt, und dieser stellt den Spurbitzähler
348 zurück. Auf diese Weise wird ein Bereich gelesen.
Die in den Fign. 7A bis 7L gezeigte Plattendateistruktur enthält also ein Zeitstempelspeicherelement oder einen mit jedem Datenbereich
auf der Platte reservierten Raum, der einen Zeitcode enthält, der anzeigt, wann der Bereich zuletzt von der Platte
gelesen oder auf die Platte geschrieben wurde. Außerdem gehört zu jedem Plattenbereich ein Zugriffsbitspeicherelement, mit dem
angezeigt werden kann, ob der letzte Zugriff zum Bereich ein Schreib- oder Lesezugriff war. Die TC-Lese- und Schreibregister
'382 und 390 sind Arbeitsregister, in denen das zum Lesen und
!Schreiben eines Bereiches gehörende Zeitstempelwort gespeichert wird. Die Register stehen dem Programmierer zur Verfügung und
'können zum Speichern des Zeitstempelwortes in jeder gewünschten jArt verwendet werden.
■Beim Schreiben eines Bereiches auf die Platte wird der alte Beireich
und der alte Zeitstempel überschrieben. Beim Schreiben des Bereiches auf die Platte wird der Zeitcode von der Zeituhr in
das zugehörige,Zeitstempelspeicherelement auf der Platte geleitet und dort aufgeschrieben. Der laufende Zeitstempel wird ebenfalls
in das TC-Schreibregister 390 eingegeben und dem Programmierer zur Verfügung gestellt.
Zum Lesen von der Platte wird ein Schieberegister vom Lesekopf geladen und dann dessen Inhalt in ein Speicherdatenregister über- j
tragen und dann folgt die Speicheroperation zum Speichern des Wortes im Speicher. Wenn der Datenbereich fertig von der Platte
YÖ 973 032
709824/0708
über die Register in den Speicher übertragen ist, wird der im zugehörigen Zeitstempelspeicherelement auf der Platte gespeicherte
Zeitstempelcode in das TC-Leseregister 382 ausgeleitet, so daß man den letzten Adressierzeitpunkt des Bereiches ablesen kann.
Bei der nächsten Umdrehung der Platte wird außerdem der laufende Zeitcode von der Zeituhr in das Zeitstempelspeicherelement auf
der Platte geschrieben, um anzugeben, wann der Bereich erneut gelesen wurde. Dieser laufende Zeitcode wird außerdem in das
TC-Schreibregister 390 eingetragen, so daß der Programmierer sowohl Zugang hat zum TC-Leseregister 382, um die Zeit zu bekommen,
zu der der Bereich zuletzt adressiert wurde, als auch zum TC-Schreibregister 390, um die neue Zeit zu bekommen, zu der der
Bereich gelesen wurde.
YO 973 032
709824/0706
3S·
Leerseite
Claims (8)
- PATENTANSPRÜCHEEinrichtung zur Sicherung von Daten in Speicherbereichen einer Datenverarbeitungsanlage mit einer Zeitangabeeinrichtung und einer Speichersteuerung, gekennzeichnet
durch erste Einrichtungen (18, 30, 36) zur Speicherung
von Zeitangaben,durch Torschaltungen (24) , welche die Zeitangabeeinrichtung (20) mit den ersten Einrichtungen verbinden,
durch zweite Einrichtungen (26) in der Speichersteuerung zur Steuerung der Torschaltungen unddurch dritte Einrichtungen (r) zur Anzeige des Inhalts
der Einrichtungen zur Speicherung der Zeitangaben. - 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die ersten Einrichtungen jeweils eine Speichereinrichtung betreffend einen Datenblock im internen Hauptspeicher und betreffend einen Datenblock in einem externen Speicher
(32) enthalten. - 3. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die ersten Einrichtungen als Assoziativspeicher (100) ausgeführt sind.
- 4. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die ersten Einrichtungen im externen Speicher (32) enthalten sind.
- 5. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die den Datenblöcken im internen Speicher (12) zugeordneten ersten Speichereinrichtungen (18) mit dem werthohen
Teil der Adresse (16) im Speicheradressenregister (SAR)
adressiert werden. - 6. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß bei jedem Speicherzugriff mit Hilfe der zweiten Einrich-YO 973 03270982A/0706tungen eine Angabe in den ersten Einrichtungen darüber gespeichert wird, ob es sich um einen Lese- oder einen Schreibzugriff handelt.
- 7. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die ersten Einrichtungen für den externen Speicher (32) ein Zeitstempelregister (36) für jeden Datenkanal (38) und ein Zeitsterapelwortregister (TS) innerhalb jedes Datenblocks im externen Speicher (32) enthalten.
- 8. Einrichtung nach Anspruch 7, dadurch gekennzeichnet, daß der externe Speicher (32) als Plattenspeicher ausgeführt ist und daß jeder Datenkanal (38) ein Register (c) zur Kennzeichnung des Kanales enthält.YO 973 032709824/070$
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/637,492 US4040034A (en) | 1975-12-04 | 1975-12-04 | Data security system employing automatic time stamping mechanism |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2652869A1 true DE2652869A1 (de) | 1977-06-16 |
Family
ID=24556172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762652869 Withdrawn DE2652869A1 (de) | 1975-12-04 | 1976-11-20 | Datensicherungseinrichtung |
Country Status (7)
Country | Link |
---|---|
US (1) | US4040034A (de) |
JP (1) | JPS5282033A (de) |
BR (1) | BR7608168A (de) |
CA (1) | CA1080365A (de) |
DE (1) | DE2652869A1 (de) |
FR (1) | FR2334149A1 (de) |
GB (1) | GB1534189A (de) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5556262A (en) * | 1978-10-20 | 1980-04-24 | Nec Corp | Operation hysteresis retention system |
US4237533A (en) * | 1978-12-28 | 1980-12-02 | International Business Machines Corporation | Preventing initial program load failures |
US4866604A (en) * | 1981-10-01 | 1989-09-12 | Stratus Computer, Inc. | Digital data processing apparatus with pipelined memory cycles |
US4523271A (en) * | 1982-06-22 | 1985-06-11 | Levien Raphael L | Software protection method and apparatus |
US5023779A (en) * | 1982-09-21 | 1991-06-11 | Xerox Corporation | Distributed processing environment fault isolation |
CH646834GA3 (de) * | 1983-06-01 | 1984-12-28 | ||
US4740890A (en) * | 1983-12-22 | 1988-04-26 | Software Concepts, Inc. | Software protection system with trial period usage code and unlimited use unlocking code both recorded on program storage media |
US4757533A (en) * | 1985-09-11 | 1988-07-12 | Computer Security Corporation | Security system for microcomputers |
US5014234A (en) * | 1986-08-25 | 1991-05-07 | Ncr Corporation | System with software usage timer and counter for allowing limited use but preventing continued unauthorized use of protected software |
US5081675A (en) * | 1989-11-13 | 1992-01-14 | Kitti Kittirutsunetorn | System for protection of software in memory against unauthorized use |
US5251909A (en) * | 1991-05-28 | 1993-10-12 | Reed Michael J | Secured high throughput data channel for public broadcast system |
US5381539A (en) * | 1992-06-04 | 1995-01-10 | Emc Corporation | System and method for dynamically controlling cache management |
US5471631A (en) * | 1992-10-19 | 1995-11-28 | International Business Machines Corporation | Using time stamps to correlate data processing event times in connected data processing units |
US5781769A (en) * | 1995-12-29 | 1998-07-14 | Symbios, Inc. | Method and apparatus for using a content addressable memory for time tagged event processing |
WO1997028501A1 (en) * | 1996-01-31 | 1997-08-07 | International Business Machines Corporation | Monitor system and method |
US5790840A (en) * | 1997-08-15 | 1998-08-04 | International Business Machines Corporation | Timestamp systems, methods and computer program products for data processing system |
US5978928A (en) * | 1997-10-17 | 1999-11-02 | Hewlett-Packard Company | Relative logarithmic time stamps for reduced memory map size |
US6862689B2 (en) | 2001-04-12 | 2005-03-01 | Stratus Technologies Bermuda Ltd. | Method and apparatus for managing session information |
US6802022B1 (en) | 2000-04-14 | 2004-10-05 | Stratus Technologies Bermuda Ltd. | Maintenance of consistent, redundant mass storage images |
US6948010B2 (en) * | 2000-12-20 | 2005-09-20 | Stratus Technologies Bermuda Ltd. | Method and apparatus for efficiently moving portions of a memory block |
US6766413B2 (en) | 2001-03-01 | 2004-07-20 | Stratus Technologies Bermuda Ltd. | Systems and methods for caching with file-level granularity |
US6874102B2 (en) * | 2001-03-05 | 2005-03-29 | Stratus Technologies Bermuda Ltd. | Coordinated recalibration of high bandwidth memories in a multiprocessor computer |
GB2387683B (en) * | 2002-04-19 | 2007-03-28 | Hewlett Packard Co | Workflow processing scheduler |
US9647838B2 (en) * | 2013-01-25 | 2017-05-09 | Ralph John Hilla | Restructuring the computer and its association with the internet |
KR20200129776A (ko) * | 2019-05-10 | 2020-11-18 | 삼성전자주식회사 | 재전송 공격에 대한 방어책을 포함하는 메모리 시스템의 구동 방법 및 이를 수행하는 메모리 시스템 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3328765A (en) | 1963-12-31 | 1967-06-27 | Ibm | Memory protection system |
GB1117728A (en) * | 1966-04-06 | 1968-06-26 | Tateisi Electronics Company | An entry or exit recording control apparatus |
US3725872A (en) * | 1971-03-03 | 1973-04-03 | Burroughs Corp | Data processing system having status indicating and storage means |
US3771144A (en) * | 1972-07-24 | 1973-11-06 | Ibm | Clock for computer performance measurements |
US3792493A (en) * | 1972-11-06 | 1974-02-12 | Intelligence Services Prod Div | Door actuated time recorder |
-
1975
- 1975-12-04 US US05/637,492 patent/US4040034A/en not_active Expired - Lifetime
-
1976
- 1976-10-21 FR FR7632296A patent/FR2334149A1/fr active Granted
- 1976-11-15 JP JP13644776A patent/JPS5282033A/ja active Granted
- 1976-11-16 GB GB47656/76A patent/GB1534189A/en not_active Expired
- 1976-11-20 DE DE19762652869 patent/DE2652869A1/de not_active Withdrawn
- 1976-11-30 CA CA266,860A patent/CA1080365A/en not_active Expired
- 1976-12-06 BR BR7608168A patent/BR7608168A/pt unknown
Also Published As
Publication number | Publication date |
---|---|
JPS5640383B2 (de) | 1981-09-19 |
JPS5282033A (en) | 1977-07-08 |
BR7608168A (pt) | 1977-11-22 |
FR2334149B1 (de) | 1980-03-14 |
CA1080365A (en) | 1980-06-24 |
US4040034A (en) | 1977-08-02 |
GB1534189A (en) | 1978-11-29 |
FR2334149A1 (fr) | 1977-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2652869A1 (de) | Datensicherungseinrichtung | |
DE2916658C2 (de) | ||
DE2515696C2 (de) | Datenverarbeitungssystem | |
DE2061854C3 (de) | Speicher aus Schieberegistern | |
DE3127825C2 (de) | ||
DE2614000C2 (de) | Diagnoseeinrichtung zur Prüfung von Funktionseinheiten | |
CH619309A5 (de) | ||
DE1524225B2 (de) | Verfahren zum betriebe einer redigier- und wiedergabeeinrichtung | |
DE2326942A1 (de) | Verfahren und anordnung zum registrieren von informationen in konzentrischen spuren einer mehrzahl von gleichachsig drehbaren platten | |
DE2122338A1 (de) | Schaltungsanordnung zur Steuerung des Datenflusses in Datenverarbeitungsanlagen | |
DE1499182A1 (de) | Elektrische Datenverarbeitungsanlage | |
DE2363846A1 (de) | Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage | |
DE1499206B2 (de) | Rechenanlage | |
DE2055522B2 (de) | Anordnung zur eingabe von daten in eine digitale datenverarbeitungsanlage | |
DE1935944B2 (de) | Steuereinrichtung in einer elektronischen Datenverarbeitungsanlage | |
DE1806535A1 (de) | Digitale Rechenanlage | |
DE3320378A1 (de) | Programmschutzvorrichtung fuer computerprogramme | |
EP1449091B1 (de) | Verfahren zum synchronisieren eines speichers mit dem hauptspeicher einer rechenanlage | |
DE2610428C3 (de) | Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher | |
DE2221926B2 (de) | Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor | |
DE1474376A1 (de) | Verfahren und Anordnung zum schnellen Zugriff bei grossen seriellen Speichern | |
CH495584A (de) | Datenverarbeitungsanlage | |
DE2704560C2 (de) | Datenverarbeitende Anlage mit paralleler Bereitstellung und Ausführung von Maschinenbefehlen | |
DE3200042C2 (de) | ||
DE1524878B2 (de) | Verfahren zum erzeugen von steuersignalen fuer die steuerung adressierbarer wortorientierter speicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |