DE2808305A1 - Selbstdiagnose-verfahren und -vorrichtung fuer ein plattenlaufwerk - Google Patents

Selbstdiagnose-verfahren und -vorrichtung fuer ein plattenlaufwerk

Info

Publication number
DE2808305A1
DE2808305A1 DE19782808305 DE2808305A DE2808305A1 DE 2808305 A1 DE2808305 A1 DE 2808305A1 DE 19782808305 DE19782808305 DE 19782808305 DE 2808305 A DE2808305 A DE 2808305A DE 2808305 A1 DE2808305 A1 DE 2808305A1
Authority
DE
Germany
Prior art keywords
signal
processor
routine
track
input
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
Application number
DE19782808305
Other languages
English (en)
Inventor
Stipe Cizmic
Martin O Halfhill
James Oliver Jacques
Douglas Kent Mahon
Leonard R Shenfield
Ronald W Votaw
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xerox Corp
Original Assignee
Xerox Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xerox Corp filed Critical Xerox Corp
Publication of DE2808305A1 publication Critical patent/DE2808305A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units

Description

für ein Plattenlaufwerk
Die vorliegende Erfindung bezieht sich auf Plattenlaufwerke, insbesondere auf ein Selbstdiagnose-Verfahren und eine Selbstdiagnose-Vorrichtung für ein Plattenlaufwerk.
Die Verwendung sogenannter "Übungseinrichtungen" für bestimmte Diagnosezwecke bei Plattenlaufwerken ist bekannt. Bisher verwendeten derartige Übungseinrichtungen das interne Plattenlaufwerk-Steuersystem selbst durch die Hauptschnittst eile des Gerätes, um die Diagnose-Routinen ablaufen zu lassen. Dies machte eine komplexe Hardware für die Übungseinrichtung erforderlich, die sehr speziell an die Hardware der Ablaufsteuerung des Plattenlaufwerks angepaßt war. Dies ist jedoch nicht nur kostspielig, sondern macht darüberhinaus zusätzlichen Hardware-Aufwand in dem Plattenlaufwerk selbst erforderlich, um die Diagnose-Routinen ablaufen zu lassen. Diese zusätzliche Hardware ist ebenfalls kostspielig und darüberhinaus für die normale Benutzeranwandung nicht notwendig und leistet Fehlfunktionen Vorschub.
809835/0873
TELEFON (089) 22 28 82
TELEX OS-S9 38O
TELEGRAMME MONAPAT TELEKOPIERER
Daher ist es wünschenswert, eine effizientere und weniger aufwendige Art und Weise zu finden, um Diagnoseabläufe für Plattenlaufwerke zu erhalten.
Gemäß der vorliegenden Erfindung ist ein Plattenlaufwerk mit einer hierfür vorgesehenen Übungseinrichtung vorgesehen. Das Plattenlaufwerk umfaßt eine um ihre Achse drehbare Auf zeichnungsplat^e, einen elektromagnetischen Lese/Schreib-Kopf, ein Betätigungsglied zum Bewegen des Kopfes bezüglich der Eotationsach.se der Platte, eine Servo-Steuereinrichtung, die auf einen Satz von Befehlen anspricht und die Geschwindigkeit und Richtung der Kopfbewegung durch das Betätigungsglied stBuert, eine programmierte Datenverarbeitungseinrichtung mit einem Mikroprozessor, einen ersten Speicher zum Speichern mikrokodierter Steuerprogramme für das Plattenlaufwerk, einen zweiten Speicher zum Speichern einiger Befehle aus dem Befehlssatz für die Servo-Steuereinrichtung, einen Adreßbus zum Zuführen von Adreßsignalen vom Mikroprozessor zum ersten und zweiten Speicher, einen Datenbus zum Zuführen von Programmbefehlen von dem ersten Speicher zu dem Mikroprozessor, sowie einiger Befehle des Befehlssatzes vom zweiten Speicher zu der Servo-Steuereinrichtung.
Die Übungsanordnung zeichnet sich dadurch aus, daß eine Einrichtung vorgesehen ist zum Erzeugen von Spur-Adreß-Signalen, daß Einrichtungen vorgesehen sind, die in aktiviertem Zustand die Spur-Adreß-Signale auf den Datenbus zum Zuführen zu dem Mikroprozessor geben, daß ein dritter Speicher vorgesehen ist zum Speichern von mikrokodierten Diagnoseprogrammen für die Übungsanordnung, daß mit dem Adreßbus und dem dritten Speicher ein erster Dekoder verbunden ist zum Dekodieren eines auf dem Adreßbus anstehenden Adreßsignals, um für den dritten Speicher ein neues Adreßsignal zu erzeugen, und daß eine Einrichtung vorgesehen ist zum Zuführen von aus dem dritten Speicher in Abhängigkeit von dem neuen Adreßsignal geholten Programmbefehlen über den Datenbus zu dem Mikroprozessor.
809835/0873
Durch Speichern der Diagnose-Programme in der Übungsanordnung selbst und durch Ausführen der Diagnose-Programmbefehle in dem Plattenlaufwerk durch dessen Mikroprozessor kann eine einzelne Übungsanordnung verwendet werden, um eine Anzahl mehrerer Plattenlaufwerke zu bedienen. Darüberhinaus können Änderungen der Diagnose-Programme vorgenommen werden, ohne Änderungen an dem Plattenlaufwerk vornehmen zu müssen. Darüberhinaus wird der Anwender davor bewahrt, irgendwelche Diagnose-Programme auszuführen, wenn die Übungsanordnung nicht mit dem Plattenlaufwerk verbunden ist.
Ein bevorzugter Gedanke der Erfindung liegt darin, eine Übungsanordnung für ein Plattenlaufwerk zu schaffen, welches einen Mikroprozessor aufweist, sowie einen ersten Speicher zum Speichern mikrokodierter Steuerprogramme für das Plattenlaufwerk, einen zweiten Speicher zum Speichern von Befehlen für die Kopf-Schlitten-Servo-Steuereinrichtung, einen Adreßbus zum Zuführen von Adreßsignalen von dem Mikroprozessor zu dem ersten und zweiten Speicher, sowie einen Datenbus zum Zuführen von Programmbefehlen aus dem ersten Speicher zu dem Mikroprozessor und zum Zuführen von Befehlen von dem zweiten Speicher zu der Servo-Steuereinrichtung. Die Übungsanordnung erzeugt Spur-Adreß-Signale, die auf den Datenbus geschaltet werden, um dem Mikroprozessor zugeführt zu werden. Ein dritter Speicher ist in der Übungsanordnung vorgesehen, um Diagnose-Programme zu speichern. Ein Dekoder zum Dekodieren eines Adreßsignals auf dem Adreßbus ist vorgesehen, um für den dritten Speicher ein neues Adreßsignal zu erzeugen. Aus dem dritten Speicher ausgelesene Programmbefehle werden auf den Datenbus geschaltet, um dem Mikroprozessor zugeführt zu werden.
Weitere Ausgestaltungen der Erfindung, sowie ein entsprechendes Diagnoseverfahren ergeben sich aus den Unteransprüchen.
809835/0873
Im folgenden wird ein Ausführungsbeispiel der Erfindung anband der Zeichnung näher erläutert. Es zeigen:
I1Xg. 1 eine perspektivische Vorderansicht eines Plattenlaufwerkes, in dem die erfindungsgemäßen Prinzipien verwirklicht sind, .
Fig. 2 - 6.verschiedene (Schnitt-)Ansichten des Innenaufbaus des in Fig. 1 gezeigten Plattenlaufwerks,
Fig. 7 ein schematisches Diagramm der Spixlen-Treiberschaltnngen, die in dem Plattenlaufwerk gemäß den Fig. 1-6 verwendet werden,
Fig. 8 ein schematisches Diagramm einer in dem Plattenlaufwerk gemäß den Fig. 1-6 verwendeten G-leichspannungs-Versorgungsquelle,
Fig. 9 eine Blockdiagrammdarstellung der in dem Plattenlaufwerk nach den Fig. 1-6 verwendeten Steuer-Treiberschaltung,
Fig. 1OA bis 1OF zusammen ein schematisches Diagramm der in Fig. 9 gezeigten Schnittstelle,
Fig. 11 ein schematisches Blockdiagramm des in Fig. 9 gezeigten Prozessors,
Fig. 12A und 12B zusammen ein schematisches Blockdiagramm der in Fig. 9 gezeigten Wandlerschaltungen,
Fig. 13A und 13B zusammen ein schematisches Blockdiagramm des in Fig. 9 dargestellten Servosteuerungsystems,
Fig. "14 - 16 sehematische Blockdiagramme der in Fig. 9 gezeigten Lese/Schreib-Schaltungen,
Fig. 17A, I7B, 18 - 20 sehematische Blockdiagramme der in Fig. 9 dargestellten Spurschaltungen,
Fig. 21 Wellenformen für verschiedene Signale, die in dem in Fig. 9 gezeigten Steuersystem verwendet werden,
Fig. 22 eine detaillierte sehematische Darstellung eines
809835/0873
Teils des in Fig.13 gezeigten Servosteuerungssystems,
Fig. 23 ein schematisches Blockdiagramm einer beispielhaften Übungseinrichtung, die bei dem Plattenlaufwerk nach den Fig. 1-6 verwendet werden kann,
Fig. 24- - 65 in Flußdiagrammform die programmierte Steuerung des in den Fig. 1-6 dargestellten Plattenlaufwerks, wenn dieses mit der in Fig. 9 gezeigten externen Steuerung verbunden ist, und
Fig. 66 - 76 in Flußdiagrammform die programmierten Diagnoseabläufe, die durch das Plattenlaufwerk nach den Fig. 1 - 6 ausgeführt werden können, wenn dies mit der externen Übungseinrichtung nach Fig. 23 verbunden ist.
I. Das Plattenlaufwerk
In den Fig. 1-6 ist ein Plattenlaufwerk 10, welches das erfindungsgemäße Steuerungssystem umfaßt, dargestellt. Das Plattenlaufwerk 10 weist einen Hauptträgerrahmen oder -gußteil (Fig. 2 und 3) auf, auf dem durch entsprechende Befestigungsmittel ein Gehäuse 22 (Fig. 1) befestigt ist. Das Gehäuse umfaßt einen Frontteil 24-, in welchem eine Steuer- und Anzeigeplatte 26 montiert ist. Eine derzeitig bevorzugte Steuer- und Anzeigeplatte 26, sowie die darin enthaltenen Schalter und Lampen werden ausführlicher weiter unten beschrieben. Der Frontteil 24- ist durch entsprechende Mittel um seine innengelegene, untere Kante klappbar ausgebildet, so daß er in eine geöffnete Stellung geschwenkt werden kann. Auf diese Weise kann eine Plattenkapsel oder -hülse 23 axt einer darin befindlichen Platte 16a in das Plattenlaufwerk 10 eingeschoben und auf einer Antriebsspindel JO angeordnet werden, damit die Platte 16a um die Achse der Spindel 30 rotiert. Alternativ kann das Plattenlaufwerk 10 von dem Typ sein, bei dem die Platten von oben geladen v/erden.
809835/0873
Die Antriebsspindel 30 ist Teil einer Spinde!anordnung 32, die ein Gehäuse 34 umfaßt, welches durch entsprechende Befestigungseinrichtungen (nicht gezeigt) an dem vorderen Plattformteil 36 des Trägerrahmens 20 befestigt ist. Das Gehäuse 34- ragt durch eine Öffnung 38 i& clem Plattformteil 36, und die Spindel 30 besitzt obere und untere Abschnitte 40 und 4-2, die jeweils von dem oberen und unteren Ende des Gehäuses 34- abstehen. Der obere Teil 40 der Spindel 30 hat vorzugsweise die Form einer kreisförmigen Scheibe, deren seitliche, periphere Oberfläche 44 als Permanentmagnet ausgebildet ist. Die Oberfläche 44 ist so ausgebildet, daß sie eine obere Nabe (nicht gezeigt) anzieht, die aus entsprechendem, magnetisch anziehendem Material gefertigt ist und in der Kapsel 28 durch die Mittelöffnung in der Platte 16a montiert ist. Das sich ergebende magnetische Feld wird so stark ausgelegt, daß die resultierende Eraft, die die obere.NaOs gegen den oberen Teil 40 der Spindel 30 hält, hinreichend groß ist, um bei normaler Beschleunigung und Verzögerung der Scheibe 16a einen Schlupf zwischen diesen Teilen zu verhindern.
Der untere Teil 42 der Spindel 30 hat vorzugsweise die Form einer zylindrischen Welle, auf deren Umfang eine untere Nabe 48 durch entsprechende Befestigungsmittel (nicht gezeigt) befestigt ist. Die Nabe 48 erstreckt sich in radialer Richtung weit-genug, so daß der am weitesten innen befindliche Teil der unteren Oberfläche einer Platte I6d von ihr getragen wird (s. Fig. 3)· Die Platte I6d stellt die unterste Platte in einer Stapelanordnung aus drei koaxial ausgerichteten Platten 16b bis I6d dar; diese Anordnung ist permanent in dem Plattenlaufwerk 10 montiert. Dies unterscheidet diese Platten von der Pia tue 16a, die in der Kapsel 28 enthalten ist und aus dem Plattenlaufwerk entfernt werden kann. Die spezielle Art und Weise, in der die Kapsel 28 in die Platteneinheit 10 eingeschoben oder daraus entfernt werden kann, stellt keinen Bestandteil der vorliegenden Erfindung dar und wird daher an dieser Stelle nicht näher erläutert. Es sollte jedoch beachtet werden, daß
809835/0 873
irgendeine herkömmliche Kapsel-Ladevorrichtung verwendet
werden kann. Es sollte weiterhin "bemerkt werden, daß eine oder mehrere der Platten 16a bis I6d aus dem Plattenlaufwerk 10 fortgelassen werden können. Nach Wunsch kann auch ein Modell verwendet werden, welches überhaupt keine fest montierten Platten enthält.
Wie aus Pig. 3 hervorgeht, sind nicht entfernbare Platten 16b bis I6d andauernd innerhalb des Plattenlaufwerks 10
montiert, um simultan mit der Spindel 30 eine hierzu koaxiale Rotationsbewegung durchzuführen. Dies geschieht mittels
eines Klammerrings 50 und zwei ringförmigen Distanzstücken 52 und 5^-· Insbesondere ist das Distanzstück 52 zwischen
der oberen Oberfläche der Platte I6d und der unteren Oberfläche der Platte 16c im innersten Bereich dieser Platten angeordnet, während das Distanzstück 5^ zwischen der oberen Oberfläche der Platte 16c und der unteren Oberfläche der
Platte 16b im innersten Bereich der jeweiligen Platten angeordnet ist. Die Klammer 50 ist an ihrem einen Ende an der unteren Nabe 48 befestigt, und sie besitzt an ihrem anderen Ende einen ringförmigen Rand 56, der auf die obere Oberfläche der Platte 16b herabgedrückt wird und somit eine Klammerkraft auswirkt, um die Distanzstücke 52 und 54 fest aufeinanderzuhalten. Die Klammerkraft ist hinreichend groß gewählt, so daß eine Rotation der Nabe 48 eine entsprechende Rotation jeder der Scheiben 16b bis I6d zur Folge hat.
Die Spindel 30 wird gedreht, um eine gleichzeitige Rotation der Platten 16b bis I6d zu veranlassen, sowie auch der Platte 15a iür .isn ?ail, daß die Kapsel 23 in das Platten! auf-werk geladen wurde; die Rotation geschieht mittels eines Plattenantriebsmotors 58j einer ersten, auf der Antriebswelle des Motors 58 montierten Riemenscheibe 60, einer zweiten auf dem unteren Wellenteil 42 der Spindel 30 montierten Riemenscheibe und eines Antriebsriemens 64, der über die Riemenscheiben 60 und 62 gespannt ist. Die Elemente 5S5 60, 62 und 64 sollen io. fol-
809835/0873 ---^
genden als Spindel ant rieb 304 (Fig. 9) bezeichnet werden. Wird die Motorantriebswelle durch den Betrieb des Motors 58 in Drehung versetzt, so wird die Rotationsbewegung der Antriebswelle auf den unteren Wellenteil 42 der Spindel 30 übertragen und bewirkt somit eine Rotation der Spindel 30.
Wie am besten aus Fig. 3 zu erkennen ist, gehört zu jeder Platte 16a bis I6d ein Paar von elektromagnetischen Lese/ Schreib-Köpfen, die auf geder Seite der Platte angeordnet sind. Somit sind die Köpfe 14a und 14b auf jeder Seite der Platte 16a angeordnet, die Köpfe 14c und I4d auf jeder Seite der Platte 16b, die Köpfe 14e und 14f auf jeder Seite der Platte 16c und die Köpfe 14g und 14h auf jeder Seite der Platte I6d. Jeder Kopf 14a bis 14h wird von einem Arm 66 getragen, der wiederum mit einer Armfassung 68 verbunden ist. Die Arme und Fassungen 68 sind für jeden Kopf identisch ausgebildet.
Die zwei Armfassungen 68, die zu den Köpfen 14a und 14b gehören, sind auf einer gemeinsamen Aufnahmeplatte 70 (s· Fig. und 5) montiert, welche wiederum durch entsprechende Mittel (nicht gezeigt) auf einem oberen Schlitten 72 montiert ist, welcher Teil eines Linearantriebs 12 ist, der unten in Zusammenhang mit den Fig. 5 und 6 noch ausführlicher beschrieben wird. Die sechs Armfassungen 68, die zu den sechs Köpfen 14c bis 14h gehören, sind auf einer gemeinsamen Aufnahmeplatte (nicht gezeigt) montiert, die ähnlich ausgebildet ist wie die Platte 70 und die durch entsprechende Mittel (nicht gezeigt) auf einem unteren Schlitten 78 montiert ist, die ebenfalls Teil des Linearantriebs 12 ist. Wie jetzt deutlich zu erkennen ist, sind dia Schlitten 72 und 73 unabhängig voneinander in zwei parallele, lineare Richtungen bewegbar, so daß die Köpfe 14a und 14b unabhängig von den Köpfen 14c bis 14h positioniert werden können. Man kann also sagen, daß in dem Plattenlaufwerk 10 zwei unabhängige Antriebseinheiten vorhanden sind, d. h., eine mit dem Schlitten 72, den Köpfen 14a und 14b, und der Platte 16a und die andere iit dem Schlitten 78, den Köpfen 14c bis 14h und den Platten 16b bis I6d. Bei der
809835/0873
BAD ORIGINAL
folgenden Diskussion sollen diese zwei unabhängigen Einheiten entsprechend als Einheit 0 und Einheit 1 angesprochen weiden.
Wie man am "besten in den Pig. 2 bis 4- erkennt, ist ein Motor 80 zum Drehen einer Antriebswelle 82, die Teil des Linearantriebs 12 ist, und zum Drehen der Antriebswelle eines Generators 84- vorgesehen. Wie noch unten in Zusammenhang mit Fig. ausführlich beschrieben wird, bilden der Motor 80 und der Generator 84 zusammen einen Bestandteil einer bevorzugten Stromversorgungsquelle für das Plattenlaufwerk 10. Der Motor und der Generator 84- weisen jeweils eine Riemenscheibe 86, bzw. auf, die mit ihren jeweiligen Antriebswellen verbunden sind. Ein Antriebsriemen 90 ist über die Riemenscheiben 86 und 88 gespannt, so daß eine Erregung des Motors 80 eine entsprechende Erregung des Synchrongenerators 84- zur Folge hat. Mit der Antriebswelle des Generators 84- ist eine zweite Riemenscheibe (Fig. 3) verbunden, die mittels eines Treibriemens 94- mit einer Riemenscheibe 96, die auf der Antriebswelle 82 des Linearantriebs 12 befestigt ist, verbunden ist. Somit ruft die Erregung des Motors 80 und somit des Generators 84- eine entsprechende Rotation der Antriebswelle 82 hervor. Nach Wunsch könnten die Riemenscheibe 92 und der Treibriemen 94- fortgelassen werden, wobei die Riemenscheibe 96 neu ausgerichtet und zusammen mit den Riemenscheiben 86 und 88 durch einen einzelnen Treibriemen (nicht gezeigt) angetrieben würde. Weiterhin ist mit der Antriebswelle 82 des Linearantriebs 12 ein Ventilator 98 verbunden, der somit durch die Erregung des Motors 80 angetrieben wird. Der Ventilator dient in herkömmlicher Weise dazu, das Plattenlaufwerk 10 während des Betriebs durch konvektive Kühlung zu kühlen- Ia der Gesamtanordnung des Plattenlaufwerks sind entsprechende Durchführungen (nicht gezeigt) vorgesehen, um diese konvektive Kühlung zu unterstützen.
Wie in 51Xg. 2 zu sehen ist, sind die verschiedenen elektrischen und elektronischen Schaltkreise für das Plattenlaufwerk vorzugsweise auf mehreren gedruckten Schaltungsträgern 100 (PG) ausgebildet, welche auf einer mit dem Trägerrahmen 20 verbundenen Plattform (nicht gezeigt) entfernbar montiert sind. Die
809835/0873
- yr-
spezielle Ausbildung dieser Schaltungsanordnungen wird weiter unten in Zusammenhang mit den Fig. 7 bis 20 beschrieben.
Im folgenden wird der Linearantrieb 12 beschrieben, und dazu wird Bezug genommen auf die Fig. 5 und 6. Allgemein gesprochen, ist der Linearantrieb 12 so ausgelegt, daß er jeden der Schlitten 72 und 78 relativ zu dem Trägerrahmen 20 entlang eines geraden Weges parallel zu der Rotationsachse der Antriebswelle 82 bewegt. Die Antriebswelle 82 ist drehbar auf dem Trägerrahmen montiert, wobei ihre Rotationsachse 105 parallel zu einer gexninschten Richtung einer geradlinigen Bewegung der Köpfe 14a bis 14h verläuft. Insbesondere weist der Trägerrahmen 20 zwei Wandungen 102 und 104 auf, die in Bezug aufeinander parallel und zu der genannten Richtung lotrecht verlaufen. Die Wandungen 102 und 104 weisen kreisförmige Öffnungen mit aufeinander ausgerichteten Mittelpunkten auf. Die Öffnung in der Wandung 102 durchsetzt letztere vollständig, im Gegensatz z.u der Öffnung in der Wandung 104. In den öffnungen ist ein Paar von Wellenlagern 106 montiert, die zur Aufnahme der Antriebswelle 82 dienen, wobei die Achse 105 der Antriebswelle die Mittelpunkte der Öffnungen durchsetzt. Bei den Wellenlagern 106 kann es sich um irgendeinen bekannten Lagertyp handeln, der die freie Umdrehung der Antriebswelle um deren Achse ermöglicht, während gleichzeitig eine Bewegung der Antriebswelle lotrecht zu dieser Achse verhindert wird. In den Öffnungen der Wandungen 104 und 102 sind jeweils ein Federelement (nicht gezeigt) und ein Sprengring 108 montiert, um eine Axialbewegung der Antriebswelle 82 während einer geradlinigen Bewegung eines oder beider Schlitten zu verhindern. Insbesondere ist das Federelement zwischen dem Wellenlager in der Wandung 104 und dieser Wandung angeordnet und spannt den Innenring des Wellenlagers und somit die Antriebswelle 82 gegen den Sprengring 108 mit hinreichender Kraft vor, um eine derartige Axialbewegung zu verhindern.
Die Antriebswelle 82 umfaßt einen Zwischenbereich 109 mit
809835/0873
einer äußeren zylindrischen Oberfläche 110, die so ausgebildet ist, daß sie sich erzwungenermaßen und unter Reibung mit einem Paar Mitläuferrollen 112 und 114 in Eingriff befindet. Diese Rollen sind jeweils auf den Schlitten 72 und 78 derart angeordnet, daß jede Rolle um ihre Achse rotieren kann und um eine zweite Achse schwenkbar ist, die zu ihrer Achse lotrecht verläuft. Zur Vereinfachung der folgenden Beschreibung soll die Rotationsachse jeder Rolle 112 und 114 als "erste Achse" bezeichnet werden. Jeder der Schlitten und ?8 ist auf dem Trägerrahmen 20 fest montiert, wobei jeder Schlitten bezüglich des Trägerrahmens entlang eines zu der Achse 105 der Antriebswelle 82 parallelen Weges bewegbar ist; die Mitläuferrollen 112 oder 114, die jeweils auf einem Schlitten montiert sind, befinden sich in reibschlüssiger Anlage mit der zylindrischen Oberfläche 110 der Antriebswelle 82, wodurch aufgrund der Rotation der Antriebswelle 82 bewirkt wird, daß sich jede Rolle um ihre erste Achse dreht.
Im folgenden wird Bezug genommen auf Fig. 6. Die erste Achse der Rollen 112 und 114 wird definiert durch deren Längsachse 116, bzw. 118, wohingegen die zweite Achse der Rollen definiert wird durch die Achse 120, bzw. 122, die jeweils lotrecht zu der Achse 116, bzw. 118 angeordnet sind und die Mittelpunkte der Rollen 112, bzw. 114 schneiden. Somit werden diese Rollen, deren erste Achsen 116 und 118 parallel verlaufen zu der Achse 105 der Antriebswelle 82, wie in Pig. 6 zu sehen ist, veranlaßt, um diese Achsen in einer Richtung zu rotieren, die der Rotationsbewegung der Antriebswelle 82 entgegengesetzt ist. Wird darüberhinaus eine Rolle um ihre zweite Achse geschwenkt, so daß ihre erste Achse schräg zu der Achse 10p dar Antriebswelle 82 verläuft, so wird die Rolle zusätzlich zu der Rotation um ihre erste Achse aufgrund der Rotation der Antriebswelle geradlinig in eine Richtung bewegt, die parallel zu der Achse der Antriebswelle 82 verläuft. Bezogen auf Fig. 5 bedeutet dies, daß, wenn die Rolle 112 aus der dargestellten Position im Uhrzeigersinn gedreht wird, so daß ihre Achse 116 schräg zu der Achse 105 der Antriebswelle verläuft, eine Rotation der
809835/0873
Antriebswelle im Gegenuhrzeigersinn (s. Fig. 6) eine Bewegung der Rolle nach links zur Folge hat.
Wie ata besten in Fig. 6 zu erkennen ist, umfassen die Schlitten 72 und 78 jeweils einen im wesentlichen flachen Plattformabschnitt 124·, in dem eine kreisförmige Öffnung 126 ausgebildet ist. Die Einrichtungen zum Montieren der Mitläuferrolle 112 und 114- auf dem entsprechenden Schlitten umfassen jeweils ein Lager 128, das auf dem Schlitten innerhalb der entsprechenden Öffnung 126 montiert ist, und ein Tragglied 130? das mit der Mitläuferrolle verbunden ist, um eine Drehung der Solle um ihre Achse zu ermöglichen. Wie weiter unten ausführlicher erklärt wird, umfaßt jedes Tragglied 130 einen Abschnitt 14-0, der in der entsprechenden Öffnung 126 in Anlage mit dem Lager 128 montiert ist, um zu ermöglichen, daß sich die entsprechende Mitläuferrolle um ihre zweite Achse drehen kann.
Wie in den Fig. 5 und 6 zu sehen ist, umfaßt jedes Tragglied einen kreisförmigen Plattformteil 14-0, der in die Öffnung 126 in dem entsprechenden Schlitten-Plattformteil 124 gegen den inneren Ring 134- des entsprechenden Lagers 128 eingepaßt ist. Der Plattformteil 14-0 ist somit um seine Achse in Bezug auf den äußeren Ring des Lagers 128 drehbar und damit in Bezug auf den entsprechenden Schlitten 72 oder 78, in welchem dieses Lager montiert ist. Jeder Plattformteil 14-0 weist eine Öffnung 14-2 auf, durch welche die entsprechende Mitläuferrolle ragt, um mit der zylindrischen Oberfläche 110 der Antriebswelle 82 in Kontakt zu kommen, wenn der Platt formt eil 124- dicht neben dieser zylindrischen Oberfläche in einer Weise montiert wird, die im folgenden beschrieben wird.
Jedes Tragglied 130 weist weiterhin einen mit dem Plattformteil 14-0 einstückig ausgebildeten und sich von diesem erstreckenden Arm 14-4- auf. An jedem Arm 14-4 ist eine Welle 146 befestigt, um die die jeweilige Mitläuferrolle 112, bzw. 114 rotieren kann. Im Hinblick hierauf handelt es sich bei den Mitläuferrollen
809835/0873
und 114 vorzugsweise um einen Rollentyp, welcher ein eingebautes Lager aufweist, um die Rotation der Rolle um die entsprechende Welle 146 zu ermöglichen, während gleichzeitig jede andere Bewegung der Rolle "bezüglich dieser Welle, z. B. eine Bewegung entlang der Achse der Welle 146, unterbunden wird. Jede Welle 14-6 ist mit ihrem entsprechenden Arm 14-4- an einer Stelle verbunden, so daß die entsprechende Mitläuferrolle in der öffnung 14-2 des Plattformteils 14-0 aufgenommen wird und auf der gegenüberliegenden Seite des entsprechenden Plattformteils 124- herausragt.
Jeder Arm 144- weist eine sich vertikal erstreckende Platte an seinem äußeren Ende auf. An jeder Platte 148 ist ein Spulenkörper 150 befestigt, um den eine Spule 152 gewickelt ist. Jede Spule ist Teil einer magnetischen Anordnung 1?4, die weiter unten ausführlich beschrieben wird. An dieser Stelle sollte jedoch festgehalten werden, daß, wenn Strom in einer Richtung durch die Spule 152 geschickt wird, dies zur Folge hat, daß sich das entsprechende Tragelement 13O innerhalb der öffnung 126 um seine Achse dreht, wodurch bewirkt wird, daß sich die entsprechende Nitläuferrolle 112 oder 114 um ihre zweite Achse 120, bzw. 122 dreht. Man sieht nun, daß die Drehachse jedes Plattformteils 140 mit der zweiten Achse der entsprechenden Mitläuferrolle zusammenfällt, d. h., diese definiert.
Die Einrichtungen zum Montieren jedes Schlittens 72 und 78 auf dem Trägerrahmen 20 soll im folgenden beschrieben werden. Wie oben bereits gesagt wurde, sind die Schlitten, und somit dia ^63-^2.zo Iijpf-Schiitten-Anordnung s0 ^'-tiert;, daß dioae entlang eines geradlinigen Weges parallel zu der Achse 105 der Antriebswelle 82 bewegbar ist, und daß sich die entsprechende Mitläuferrolle 112 oder 114 unter Kraft einwirklang reibschlüssig in Eingriff mit der zylindrischen Oberfläche 110 der Antriebswelle befindet, wodurch die Holle veranlaßt wird, um iiire srcte Achse 116, bsw- 113 durch die Jo ta υ lon der Antriebs-
809835/0873
welle 82 zu rotieren, wenn diese erste Achse parallel zu der Achse 105 der Antriebswelle 82 verläuft und zusätzlich veranlaßt wird, während der Rotation der Antriebswelle den geradlinigen Weg zu durchlaufen, wenn die ersbe Achse schräg zu der Achse 105 verläuft. Ss ist klar, daß die Linearbewegung der entsprechenden Kopf-Schlitten-Anordnung umso schneller erfolgt, je größer der Winkel zwischen der ersten Achse der Mitläuferrolle und der Achse 105 ist. Je schneller also die Mitläuferrolle um ihre zweite Achse geschwenkt wird, umso größer ist die Beschleunigung oder Verzögerung der Kopf-Schi it ten- Anordnung, je nachdem, in welche Richtung die Ver- · Schwenkung erfolgt.
Die Einrichtungen zum Montieren der Schlitten 72 und 78 auf dem Trägerrahmen 20 ist identisch für beide Schlitten, so daß für beide Teile gleiche Bezugszeichen verwendet werden. Jeder Schlitten 72 und 78 umfaßt einen ersten und zweiten, mit dem entsprechenden Plattformteil 124 einstückig ausgebildeten Planschteil 156 und 15S5 die sich jeweils in einer von der betreffenden Mitlauferrolle 112 oder 114-, die damit verbunden ist, fortweisenden Richtung erstrecken. Jedes Flanschten 156 umfaßt ein Paar Trägerstangen 160, die auf deren Enden montiert sind. Jede Stange 160 weist vorzugsweise einen im wesentlichen dreieckigen Querschnitt auf, wie am besten aus Fig. 6 zu ersehen ist, und besitzt ein Paar Führungsrollen 162, die drehbar auf deren Schrägseiten montiert sind. Es gibt somit vier Führungsrollen 162, die auf den Schlitten 72 und 78 montiert sind und einen Teil der gesamten Kopf-Schlitten-Anordnung mit einem solchen Schlitten bilden. Die Führungsrollen 162 jeder Jopf-ooIilitten-Anordnung sind sd au age I ag;1;, da.; r, L-j -iat^r- ICrazteinwirkung und reibschlüssig mit einer Führungsschiene 168 in Eingriff kommen, die durch entsprechende Befestigungsmittel an den Seitenwandungen 102 und 104· des Trägerrahnens 20 montiert ist, wobei die Achse der Schiene 168 parallel zu der Achse 105 der Antriebswelle 82 verläuft.
Jedes Flanschteil 158 läuft in eine im wesentlichen horizontal
809835/0873 ■'■■■""
angeordnete Trägerplatte 164- aus, an deren Unterseite eine Blattfeder 166 mittels einer Montagescheibe 167 montiert ist. Jede Blattfeder 166 steht von ihrer Trägerplatte 164- in eine Richtung entgegengesetzt der Stelle der Platten 16a "bis I6d at>, d. h., in Richtung auf die rückwärtige Wandung 102 des Trägerrahmens 20. Die Feder weist ein Paar abgewinkelter Flanschteile 170 auf, die so ausgebildet sind, daß sie mit der Welle 172 einer in jeder Kopf-Schlitten-Anordnung vorgesehenen Lastrolle 174- in Eingriff kommen. Die Welle 172 steht auf beiden Seiten der Solle 174- über.
Jede Feder 166 ist so bemessen, daß sie unter Krafbeinwirkung die entsprechende Lastrolle 174- gegen die Last schiene 176 vorspannt. 3s gibt somit zwei Lastschienen 176, wovon .jeweils eine zu dem Schlitten 72, bzw. 73, und somit zu der jeweiligen Kopf-Schlitten-Änordnung gehört. Jede Lastschiene 176 ist durch entsprechende Befestigungsmittel an den Seitenwandungen 102 und 104- des Trägerrahmens 20 befestigt und erstreckt sich in einer Sichtung parallel zu der Achse der Antriebswelle 82 und der Führungsschiene 168. Vorzugsweise erstrecken sich die Schienen 168 und 176 jeweils in einer Entfernung, die im wesentlichen der Länge der Antriebswelle 82 zwischen den Hahmenwandungen 102 und 104- entspricht.
Gemäß einer bevorzugten Aus führung sf ο rni wird die Antriebswelle 82 kontinuierlich gedreht, unabhängig davon, ob ein oder beide Schlitten sich in einer "inaktiven" Stellung befinden oder nicht, d. h., ob die Köpfe zurückgezogen sind oder nicht.
.;:.r\e krnu,Lnuiiri lohe lictitijn i^i: wi:.nr>chen.-iw-ert, \u;i .lan. Synchrongenerator 84- und den Ventilator 98 kontinuierlich zu betreiben.
Die Magnetanordnung 154- soll im folgenden unter Bezugnahme auf die Fig. 5 ^nd 6 beschrieben werden. 3s sei daran erinnert, daß jecla Aaordriung IJA l;3il einer '/orriulit\xi^ iac, eic da^u.
80983 5/0873
dient, die entsprechende Mitläuferrolle 112, bzw. 114 selektiv und unter Steuerung um ihre zweite Achse 120 bzw. 122 während der Rotation der Antriebswelle 82 zu drehen, um die Bewegung der entsprechenden Mitläuferrolle und somit des entsprechenden Schlittens und der Kopf-Schlitten-Anordnung entlang eines geradlinigen Weges parallel zu der Achse 105 der Antriebswelle 82 zu steuern.
Jede magnetische Anordnung umfaßt ein Paar langgestreckter Permanentmagneten 180 und 182, die mit Abstand voneinander an einem Gehäuse 184 montiert sind. In dem Saum zwischen den Magneten 180 und 182 befindet sich die zugehörige um den Spulenkörper 150 gewickelte Spule. Der Spulenkörper 150 kann den langgestreckten Zwischenraum zwischen den Magneten während der Längsbewegung des entsprechenden Schlittens durchqueren und ist weiterhin in der Lage, bezüglich der zweiten. Achse 120, bzw. 122 der zugehörigen Mitläuferrolle 112, bzw. 114 einen bestimmten Weg zu durchlaufen, um die Rolle um die jeweilige zweite Achse zu schwenken. Hierzu ist die lichte Weite zwischen jedem Spulenkörper 15O und der benachbarten Seitenwandung 185 des Gehäuses 184 groß genug gewählt, um eine solche Bewegung ohne Behinderungen zu ermöglichen. Das zwischen den Magneten 180 und 182 aufgebaute magnetische Feld ist so ausgerichtet, daß der Spulenkörper sich in einer Richtung auf dem oben angesprochenen vorgeschriebenen Weg bewegt, xvährend die Spule 152 in einer Richtung von Strom durchflossen wird und sich in die andere Richtung bewegt , wenn der Strom in der Spule 152 in die andere Richtung fließt. Auf diese Weise kann die Richtung der geradlinigen Bewegung :]}·13Γ bopf-Sohlicnen-Anordnung gasteuert werden. Dia cpezielle Art und Weise, in der der Strom durch die Spulen geschickt wird, soll unten unter Bezugnahme auf Fig. 7 ausführlich diskutiert werden.
Weiterhin umfaßt jede Magnetanordnung 154 ein Paar Begrenisu:ig£a-i3ch.lä^e (nicht ^ozei^t). Zin .-'.λγ.·-"":!I?:^: i:;t a:i esa Gehäuse 184 zwischen den Magneten am rückwärtigen Ende des
8 0 9 8 3 5/0873 BAD ORiGSNAL
zo
von dem Spulenkörper 15O zurücklegbaren Weges angeordnet, d. fr., an jenem Teil'des Weges, der am weitesten von den Platten 16a bis 16d in dem Plattenlaufwerk 10 entfernt ist. Dementsprechend ist der andere Anscfrlag an dem Gehäuse 184-zwischen den Magneten am vorderen Ende des von dem Spulenkörper durchlaufenen Weges montiert. Die zwei Anschläge dienen selbstverständlich dazu, das vordere und hintere Ende des Weges festzulegen, der von dem Spulenkörper 15O und somit von der entsprechenden Kopf-Schiitten-Anordnung während der Beaufschlagung der um den entsprechenden Spulenkörper gewickelten Spule 152 mit Energie zurückgelegt wird.
Im folgenden wird Bezug genommen auf Fig. 75 in eier eine beispielhafte Treiberschaltung 190 zum Erregen der Spule 152 in jeder Magnet anordnung 154· gezeigt ist. Die Treiberschaltung umfaßt einen Operationsverstärker 152, dessen negativer Eingang über einen Widerstand E1 mit einer Steuerausgangsleitung 193 eines Servo-Steuersystems (Fig. 9) verbunden ist, während sein positiver Eingang über einen Widerstand E2 geerdet ist. Das Servo-Steuersystem 194- und die Beschaffenheit des an die Leitung 193 angelegten Steuersignals werden weiter unten ausführlich beschrieben. An dieser Stelle sollte jedoch festgehalten werden, daß jede Schaltung 190 ein Teil eines Schlittenantriebs darstellt, der zu jeder Einheit 0 und 1 des Plattenlauf \<erks 10 gehört. Gemäß Fig. 9 umfaßt ein Schlittenantrieb für die Einheit 0, d. h., der Scblitten-0-Antrieb 3OO eine Schaltung 190, in der der von dem Servo-Steuerungssystem 194- zugeführte Steuereingang für die -äinfreife ν über eine Leitung 193a geleitet wird. In entsprechender Weise umfaßt ein Schiitten-1-Antrieb 102 eine Schaltung 190, welche ihr Steuer-Eingangssignal von dem Servo-Steuerungssystem 194- für die Einheit 1 auf der Leitung 193b empfängt.
Gremäß Fig. 7 ist der Ausgang des Verstärkers 192 mit der Basiselektrode eines EPN-Transistors U1 und der Basiselektrode
809835/0873
eines ΡίΠΡ-Transistors U2 verbunden. Die Kollektorelektrode des Transistors U1 ist mit einer positiven Gleichspannungsquelle (+V) verbunden, die vorzugsweise von der Spannungsversorgung 18 (Fig. 8) gespeist wird. Die Spannung +V wird weiterhin der Eollektorelektrode eines weiteren NPN-Transistors TJJ zugeführt. Die Spannungsversorgung erzeugt ferner eine negative Gleichspannung (-V), die der Eollektorelektrode des Transistors U2 und der Kollektorelektrode eines weiteren PUP-Transistörs/ΊΙ4 zugeführt wird.
Der Emitter des Transistors IPl ist mit der Basis des Transistors U4- und dem Emitter des Transistors TJj verbunden.. Weiterhin ist zwischen die Basis und den Kollektor des Transistors U3 ein Widerstand R3 und zwischen die Basis und den Kollektor des Transistors U4- ein Widerstand R4- geschaltet, und die Transistoren TJ3 und IM- '.sind miteinander über ein Paar von Widerständen R5 und R6 verbunden.Die Spule 152 ist mit ihrem einen Ende an den Verbindungspunkt der Widerständen R5 und R6 angeschlossen, während ihr anderes Ende mit einer Klemme 198 in Verbindung steht, welche über einem Widerstand R7 geerdet ist und weiterhin in einem Rückführzweig über einen Widerstand R8 mit dem negativen Eingang des Operatxonsverstärkers 192 verbunden ist.
Bei Betrieb wird ein am negativen Eingang des Verstärkers 192 empfangenes positives Steuersignal invertiert und den beiden Transistoren U1 und U2 zugeleitet. Das negative Signal hat zur Folge, daß nur der Transistor U2 anschaltet, wodurch der Transistor UJ angeschaltet wird und weiterhin bewirkt wird, daß ein Strom von rechts nach links durch die Spule 152 fließt, wie in Fig. 9 gezeigt ist. Der Stromfluß steigt kontinuierlich an, bis der durch den Widerstand R1 fließende Strom dem durch den Widerstand RS fließenden Strom gleicht. Zu diesem Zeitpunkt wird der Ausgang des Verstärkers 192 positiv und schaltet somit die Transistoren U2 und II3 ab. Diesem Punkt entspricht, daß die zugehörige Kitläuferrolle 112, bzw. 114- um einen gexvünschten Betrag verschwenkt wurde, um
809835/0873
für die noch, verbleibende, von der zugehörigen Kopf-Schlitten-Anordnung zurückzulegende Entfernung eine ge\<rünschte Geschwindigkeit zu erreichen. Der Stromfluß durch die Spule 152 beginnt abzunehmen, was zur Folge hat, daß nach einer kurzen Zeitdauer die Transistoren U2 und TJ3 wiederum anschalten. Die sich ergebende Impulstatigkeit fährt fort, wenn die Kopf-Schi it ten- Anordnung in Richtung auf ihre gewünschte Halteposition bewegt wird, mit der Ausnahme, daß das Steuersignal die Bewegung der Kopf-Schlitten-Anordnung fortschreitend verlangsamt. Dies fährt fort, bis die gewünschte Stopp-Stellung erreicht ist, bei welcher Stellung das Steuersignal Null ist.
Wird eine Bewegung der Kopf-Schlitten-Anordnung in die entgegengesetzte Richtung gewünscht ., so wird dem negativen Eingang des Yerstärkers 192 ein negatives Eingangssignal zugeführt, was ein positives Ausgangssignal zur Folge hat, welches die Transistoren U1 und U4 anschaltet, um somit einen Stromfluß durch die Spule 1?2 von links nach rechts in Fig. 7 zu bewirken. Dieser Vorgang vrird fortgesetzt, bis die gewünschte Winkelstellung der entsprechenden Mitläuferrolle erreicht ist, was dem gleichen Stromfluß durch die Widerstände R1 und R8 entspricht. Es findet dann derselbe Impulsbetrieb statt, wie er oben beschrieben wurde, bis die Kopf-Schlitten-Anordnung die gewünschte Stopp-Position erreicht.
Es wird darauf hingewiesen, daß irgendeine Spulen-Treiberschaltung verwendet werden kann, die in der Lage ist, die Richtung und die durch die Spule 152 fließende Stromstärke zu steuern. Die in Fig. 7 gezeigte Anordnung ist lediglich beispielhaft. Es versteht sich, daß das in der I'Iagnetanordnung 154· durch den durch die Spule 152 fließenden Strom aufgebaute magnetische Feld bezüglich der Permanentmagneten 180 und die Richtung der Drehbewegung der entsprechenden Mitläuferrolle bestimmt; die durch das resultierende Magnetfeld festgelegte Drehkraft bezogen auf das für eine Drehung der Mitläuferrolle notwendige Drehmoment bestimmt die Geschwindigkeit, mit der die Mitläuferrolle in eine gewünschte Winkel-
809835/0873
stellung gedreht werden kann, wobei diese Geschwindigkeit direkt die Beschleunigung bestimmt, mit der die Anordnung auf eine Geschwindigkeit gebracht wird, die durch eine derartige gewünschte Winkelstellung festgelegt wird.
Im folgende wird Bezug genommen auf Pig. 8, in der eine bevorzugte Spannungsversorgung 18 für das Plattenlaufwerk 10 dargestellt is. Die Spannungsversorgung umfaßt einen Antriebsmotor 80, der mit einer vorbestimmten Geschwindigkeit angetrieben wird, wenn er von einer entsprechenden Wechselspannung (AC) über die Leitung 81 von einer Wechselspannungsquelle (AC-Quelle) 83 erregt wird. Es sei nochmals daran erinnert, daß eine Erregung des Motors 80 zur Folge hat, daß der Synchrongenerator 84- entsprechend angetrieben wird und somit die Antriebswelle 82 in entsprechender Weise rotiert. Der Generator 84 ist weiterhin Teil der Spannungsversorgung und umfaßt vorzugsweise drei Sätze von 3-Phasen-Wicklungen, wie schematisch in der Zeichnung angedeutet ist. Generatoren dieser Art sind allgemein bekannt.
Wie in Fig. 8 zu sehen ist, ist der Wicklungssatz 1 des Generators 84- in der Lage, eine Wechselspannung an einer Ausgangsklemme 1a zu erzeugen, die eine Spitzenamplitude hat, die gleich ist der Gleichspannung V plus dem Spannungsabfall an einem Paar angepaßter Dioden D1 und D2, die in einem 3-Phasen-Vollweggleichrichter 198 enthalten sind. Die Ausgangsklemme 1-a ist mit der Kathode der Diode D1 und der Anode der Diode D2 verbunden. Dieselbe Wechselspannung wie an der Klemme 1-a wird auch an weiteren Ausgangsklemmen 1-b und 1-c erzeugt, j'edoch uci .jeweils 120° phasenverschoben. Die Klemme 1-b ist mit der Kathode einer Diode DJ und der Anode einer Diode D4· verbunden, während die Klemme 1-c mit der Kathode einer Diode D5 und der Anode einer Diode D6 verbunden ist. Alle sechs Dioden D1 - D6 sind angepaßt.
Die Anoden der Dioden D1, D3 und D5 sind in herkömmlicher Weise mit einer Ausgangsklemme 200 des Gleichrichters198 verbunden,
809835/0873
während die Kathoden der Dioden D2, DA- und D6 mit der anderen Ausgangsklemme 202 verbunden sind. Auf diese Weise wird eine positive Gleichspannung (DC-Spannung) +V an der Klemme 200 erzeugt, die eine Brummfrequenz hat, die sechsmal größer ist als die Frequenz jedes an den Klemmen 1a, Tb und -Ic erzeugten Wechselstromsignals. Zum Beispiel haben diese Wechselstromsignale vorzugsweise eine Frequenz von 67 Hz, so daß der Brummanteil der Spannung W an der Klemme 200 400 Hz hat. In ähnlicher Weise wird an der Klemme 202 eine negative Gleichspannung (DC-Spannung) -V erzeugt, die dieselbe Brummfrequenz hat.
Die Signale an den Klemmen 200 und 202 werden den beiden Elektroden eines Filterkondensators C zugeführt, der in einem Filter 204- vorgesehen ist, in welchem die mit der Klemme 202 in Verbindung stehende Seite geerdet ist und der Ausgang des Filters lediglich von der Seite des Kondensators G abgegriffen wird, die zu der Klemme 200 gehört. Der Kondensator C glättet den Brumraanteil der Gleichspannung +V. Da die Brummfrequenz so hoch ist, kann der Kondensator C relativ klein gemacht werden, z. B. 100 mf, wodurch die Kosten und die Größe der Spannungsversorgung gering gehalten werden. Nach Wunsch kann die erzeugte Gleichspannung +Y auch durch einen Spannungsregulator 206 c-;eleitet werden.
In ähnlicher Weise kann die negative Gleichspannung -V aus dem zweiten Wicklungssatz des Generators 84 erzeugt werden. Dieselben viechsei spannungen wie an den Klemmen 1a, 1b und 1c v/erden an den Klemmen 2a, 2b und 2c erzeugt, und es wird ein i.:iä:rjiaoher ^-^hasan-'/cllvr^g-Leicarioiiter 193 sarvacist, an den ein identisches Filter 210 angeschlossen ist. Der einzige Unterschied besteht darin, daß der Ausgang des Filters von derjenigen Seite des Kondensators G abgegriffen wird, die der Klemme 202 entspricht, während die Seite der Klemme 200 geerdet ist. Die erzeugte Gleichspannung -Y kann ebenfalls einem entsprechenden Spannungsregulator 2jS zugeführt werden, wenn dieses erwünscht ist.
809835/0873
Es wird daran erinnert, daß die Gleichspannungen +V und -V in den Spulen-Treiberschaltungen 190 (s. Fig. 7) verwendet werden. Heben dieser Schaltung und anderen speziellen Schaltkreisen in dem PlattenlaufVerk 10, kann die Haupt-Steuerlogik, von der ein Teil in dem Servo-Steuerungssystem 194- (Fig. 9) enthalten ist, eine abweichende, gewöhnlich niedrigere Gleichspannung, z. B. +B, benötigen. Die Spannungsversorgung 18 ist in der Lage, diese Spannung zusätzlich zu den Spannungen +V und -V zu erzeugen. Dies wird durch einen dritten Wicklungssatz des Synchrongenerators 84- in ähnlicher Weise bewirkt, wie es oben bei der Erzeugung der Spannungen +V und -V beschrieben wurde. In diesem Fall jedoch werden die an den Klemmen 3a, 3b und 3c erzeugten Wechselspannungen eine Spitzenamplitude haben, die der gewünschten Gleichspannung +B, plus dem Spannungsabfall an jeder in dein Vollvreggleichri enter 198 enthaltenen Diode entsprechen. Vorzugsweise ist die Frequenz dieser Wechselspannungen dieselbe wie dis der an den Ausgangsklemmen des ersten und zweiten Wicklungssatzes erzeugten Wechselspannungssignale, so daß ein relativ kleiner Filterkondensator in dem entsprechenden Filter 204-' verwendet v/erden kann, wie in den obengenannten Fällen kann auch hier die erzeugte Spannung +B durch einen entsprechenden Hegulator 210 reguliert v/erden.
II. Steuersystem
Vor einer Beschreibung des in dem Plattenlaufwerk 10 verwendeten Steuersystems erscheint es ratsam, die Funktionen und Aufgaben der.Schalter und Anzeigelampen zu beschreiben, die auf der Steuer- und Anzeigeplatte 26 gemäß Fig. 1 vorgesehen sind. Sin 3'ZlSiVSTOP-Schalter JGo iot vorgesehen, ·η der Bedienungsperson das Starten und Stoppen des Plattenlaufwerks 10 zu ermöglichen. Die entfernbare Kapsel 28 (s. Fig. 2 und 3) kann eingelegt oder entfernt werden, wenn der Schalter 306 sich in der Stellung STOP befindet und eine Anzeigelampe ÜBERGANG 308, die unten beschrieben wird, gelöscht ist. Sin Umschalten in die Stellung START hat zur Folge, daß das Steuersystem das Plattenlaufwerk in etwa 30 Sekunden auf normale Arbeitsgeschwindigkeit
8 09835/0873
bringt. Wird der Schalter wiederum in die Stellung STOP gebracht, so verzögert das Plattenlaufwerk bis zum Anhalten in etwa 30 Sekunden, wonach die Lampe U-BESGMIG ausgeht und die Kapsel 28 ausgetauscht werden kann.
Die ÜBERGANG-Anzeigelampe 308 leuchtet, wenn das Plattenlaufwerk 10 sich in einem Übergangszustand befindet. Insbesondere ist die Lampe 308 angeschaltet, direkt nachdem der START/STOP-Schalter 306. in die Stellung START gebracht wurde; die Lampe 308 erlischt, wenn eine der anderen noch zu beschreibenden Anzeigelampen auf der Platte 26 angeschaltet wird. Die Lampe 308 ÜBERGANG wird wiederum angeschaltet, wenn, der Schalter 306 in die Stellung STOP gebracht wird und verlöscht, wenn die Antriebsspindel 30 sich nicht mehr dreht.
Die Anzeigeplatte 26 umfaßt weiterhin ein Paar FSRTIG-Anzeigelampen 310 und 312. Die FERTIG-Lampe 310 ist der oberen Einheit 0 zugeordnet, während die FERTIG-Lampe 312 der unteren Einheit 1 augeordnet ist. Sind die FERTIG-Lampen erleuchtet, so zeigt dies der Bedienungsperson an, daß die Antriebsspindel 30 die richtige Arbeitsgeschwindigkeit erreicht hat, daß die Köpfe 14a bis 14h sich in einer Stellung über der Spur STuIl (0) auf ihren entsprechenden Plattenober flächen befinden und daß keine anderen Bedingungen vorliegen, die eine Spursuche, Lese- oder Schreiboperationen verhindern wurden. Die Lampen 310 und 312 verlöschen, wenn der START/STOP-Schalter 306 in die Stellung STOP gebracht ist. Wird das Plattenlaufwerk 10 betrieben, ohne daß die entfernbare Kapsel 28 eingelegt ist, so kann lediglich das FERTIG-Anzeigelicht 312 eingeschaltet sein.
Die Frontplatte 26 umfaßt weiterhin ein Paar SCHBEIBSGHUTZ-Schalter $14- und 316. Der Schalter 314 gehört zu der oberen Einheit 0 und der untere Schalter 316 zu der unteren Einheit Befindet sich einer der Schalter 3I2*- 1^Hd- 316 in der Stellung EIN, so kann auf die entsprechende Plattenoberfläche nicht geschrieben werden. Befindet sich der Schalter in der Stellung
809835/0873
AUS, so ist ein Schreiben möglich, wenn nicht von der Hauptsfceuerung 318 (Fig. 9) für das Plattenlaufwerk 10 ein Kommando "SCHREIBSCHUTZ" ausgegeben wird. Ein derartiges Kommando und die Art und Weise, in der es durch das Plattenlaufwerk gehandhabt wird, wird ausführlich unten beschrieben.
Weiterhin umfaßt die Anzeigeplatte 26 eine Anzeigelampe 320 "KAPSEL FEHLT", die in erleuchtetem Zustand anzeigt, daß in das Plattenlaufwerk keine Kapsel 28 geladen wurde. Weiterhin ist auf der Frontplatte 26 ein FEHLER-Anzeigelicht 322 vorgesehen. Dieses zeigt in erleuchtetem Zustand an, daß das Plattenlaufwerk 10 aufgrund einer Fehlerbedingung nicht ordentlich arbeiten kann. Tritt eine Fehlerbedingung ein, die nur eine der beiden Einheiten 0 und 1 betrifft, so wird nur das betreffende FERTIG-Licht gelöscht, während die andere Einheit normal weiterläuft. Die Eigenarten der Fehlerbedingungen, die ein Aufleuchten des FEHLER-Anzeigelichts 322 zur Folge haben, werden weiter unten beschrieben.
Schließlich weist die Steuer- und Anzeigeplatte 26 eine Aufnahmebuchse für einen "ID-Stecker" 324- auf. Die Auswahl einer speziellen Platteneinheit in einem System, in welchem mehrere Platteneinheiten verwendet werden, wird durch den ID-Stecker 324- festgelegt, der eine einzigartige logische Adresse liefert. Eine spezielle Platteneinheit wird daher ausgewählt, indem die entsprechende Adresse abgegeben x^ird. Die spezielle Weise, in der mehrere Platteneinheiten ausgewählt werden können, die verkettet ("daisy-chained") angeordnet sind, wird weiter unten ausführlicher beschrieben.
Im folgenden wird Bezug genommen auf Fig. 9, in der das Steuerungssystem für das Plattenlaufwerk 10 im Detail dargestellt ist. Allgemein gesagt, arbeitet das Steuerungssystem so, daß es den Schlitten-0-Antrieb 300 zum Steuern der geradlinigen Bewegung des Kopf Schlittens 72 und somit der Köpfe 14-a und 1Arb, den Schlifcten-1-Antrieb 3^2 zum Steuern der geradlinigen Bewegung des Kopf Schlittens 73 und somit der Köpfe 14-c bis
809835/0873
14h, den Spindelantrieb 302 zum Steuern der Umdrehungen der Platten 16a bis 16d und der Köpfe 14a bis 14h zum Steuern des Lesens und Schreibens von Daten von, bzw. auf die entsprechenden Oberflächen der Platten 16a bis I6d steuert.
Das Steuerungssystem kommuniziert mit der Steuerung 318 über eine Schnittstelle 326 und umfaßt als grundlegende Bauelemente einen Prozessor 328, ein Paar Servo-Steuerungssysteme 194 (eines für jede Einheit des Laufwerks), Spurschaltungen 33O5 Positions-Wandler schaltungen 332 und 334 für die Einheiten 0, bzw. 1, und Lese/Schreib-(R/w"-)Schaltungen 336. Das Zusammenwirken , dieser verschiedenen Bauteile wird ausführlich weiter unten beschrieben. An dieser Stelle sollte jedoch festgehalten 'herden, daß die Schnittstelle 326 Eingabedaten und Befehle von einer Hauptsteuerung 318 empfängt und Daten und Befehle an den Prozessor 328 und an die Lese/Sehreib-Schaltungen 336 abgibt. Die Schnittstelle 326 empfängt -ferner Daten und Befehle von dem Prozessor 328. Der Prozessor 328 gibt darüberhinaus Daten und Befehle an die Servo-Steuerungssysteme 194, die Spurschaltungen 330 und die Lese/Schreib-Schaltungen 336, und er empfängt Daten von dem Servo-Steuerungssystem 194, den Spurschaltungen 330 und den Lese/Schreib-Schaltungen 336. Weiterhin leitet der Prozessor 328 Befehle an den Schlitten-0-Antrieb 300, den Schlitten-1-Antrieb 302 und den Spindelantrieb 304. Die verschiedenen Daten- und Steuerbusse und Steuerleitungen, die in Fig. 9 dargestellt sind, werden im einzelnen weiter unten beschrieben, wenn jedes Bauelement des Steuersystems beschrieben wird.
»•/ie in i'ig. 9 zu sehen ist, ist eine Haupt steuerung 318 vorgesehen zum Zuführen verschiedener Kommandosignale an das Plattenlaufwerk, wenn diese von deren Schnittstelle empfangen werden, sowie zum Zuführen gelesener Daten zu dem Plattenlaufwsrk zum Schreiben auf eine ausgewählte Spur oder einen ausgewählten "Zylinder" einer ausgewählten Plattenoberfläche, Von der Steuerung 318 aus gesehen, scheint das Plattenlaufwerk 10 aus zwei unabhängigen Werken, d. h. der Einheit-0 und der
809835/0873
Einheit-1 zu "bestehen, wie es oben definiert wurde. Die Haupt steuerung 318 kann irgendeine für diese Zwecke ge«- bräuchliche Plattenlaufwerk-Steuerung umfassen.
Allgemein gesagt, kann die ■■ Steuerung 318 eine "Such"-Operation bei den Köpfen einer ausgewählten Einheit in Gang setzen, indem an die betreffende ' Einheit ein "Zylinder"-Kommando abgegeben wird. Der Begriff "Such-Operation" bedeutet, daß die Köpfe der ausgewählten Einheit in eine gexvünschte Spurposition auf den entsprechenden Plattenoberflachen bewegt v/erden. Die Ausdrücke "Spur" und "Zylinder" werden im folgenden synonym verwendet. Fach Abschluß einer Suchoperation gibt die Steuerung 318 ein "Kopf"-Kommando ab, um den gewünschten Kopf der ausgewählten Einheit auszuwählen. Wie im folgenden klar werden wird, liest der ausgewählte Kopf Servo-Information, die in jedem der auf der Plattenoberfläche festgelegten Sektoren zuvor aufgezeichnet wurde, um eine präzise Ausrichtung des Kopfes über dem Zentrum der gewünschten Spur zu erreichen.
III. Schnittstelle
Das Plattenlaufwerk 10 kann mit der Steuerung 318 entweder in einer radialen oder in einer "Daisy"-Ketten-Konfiguration verbunden werden. Die Platteneinheit verwendet drei in Fig. angedeutete Kabel (A, B und C). Kabel A ist vorzugsweise ein aus sechsundzwanzig Leitern bestehendes Flachbandkabel, welches einen acht Leitungen umfassenden Steuerbus 338 umfaßt, Das Kabel enthält weiterhin acht Eingangs-Steuerleitungen (allgemein als eine einzelne Leitung 34-0 in Fig. 9 angedeutet), und zwei Äusgangs-Öteuerleitungen (in Fig. 9 allgemein als eine einzelne Leitung 3^2 angedeutet). Die erste und sechsundzwanzigste Leitung sind geerdet, die übrigen Leitungen werden nicht benutzt. Die Kabel B und C sind vorzugsweise beides Zweifach-Koaxialkabel und'übertragen Lese/Schreib-(R/W-)Daten, bzw. Takt-Information.
Die allgemeine Definition der Signale, die auf dem Steuerkabel A
809835/0873
5>
übertragen werden, wird im folgenden unter Bezugnahme auf Fig. 10 gegeben:
(i) .AUSWAHL-ABTASTUNG - Dieses Signal wird an eine Leitung 34-Oa angelegt und schaltet im Zustand "high" einen Platteneinheit-Auswahlkode von dem Steuerbus 338 zu dem Laufwerk in einer Weise durch, die weiter unten noch beschrieben wird.
(2) STEUERBUS - Der Steuerbus 338 überträgt Platteneinheit-Auswahlkodes, Kommando- und Unterkommando-Kodes und Informations-Bytes von der Steuerung 318 zu dem Plattenlaufwerk. Darüberhinaus überträgt es Status- und Sektorzähl-Bytes von dem Laufwerk zu der Steuerung 318. Die Besonderheiten dieser Kodes und Bytes werden weiter unten noch beschrieben.
(3) UNTERKOMMANEO-ABTASTUNG - Dieses Signal wird auf die Leitung 34-Ob gegeben und schaltet im Zustand "high" ein aus acht Bits bestehendes Unterkommando-Signal, das an dem Steuerbus 338 ansteht, in ein Eingangstor 34-4-. D3-s Signal veranlaßt weiterhin das Eingangstor 344-, ein Signal "EINGANG YOLL" zu erzeugen, welches von dem Eingangstor zu einem Eingang eines 3-Bit-Zustandstores-0, das mit 3^6 bezeichnet ist und zu der Einheit 0 gehört, geleitet wird, sowie zu einem Eingang eines 8-Sit-Zustandstores-1, und zu einem Eingang eines E/A-Identifizierungstores 350. Die speziellen Eigenschaften und Aufgaben dieser Tore wird weiter unten beschrieben.
(4-) KOMTiANDO-ABTASTUITG - Dieses Signal wird auf eine Leitung gegeben und schaltet im Zustand "high" ein 8-Bit-Kommandosignal, das auf dam Steuerbus 333 ansteht, in das iingangsror 34-4-, Es veranlaßt weiterhin das Eingangstor, ein Signal "EINGANG VOLL" abzugeben.
(5) SYSTEM LÖSCHEN - Dieses Signal wird auf einer Leitung 34-Od gegeben und löscht im Zustand "low" das Eingangstor 344- und ein Ausgangstor 352 in einer unten zu beschreibenden Weise.
(6) FREIGABE AUSGABE - Dieses Signal wird auf einer Leitung 34-Oe
809835/0873
gegeben und schaltet im Zustand "high" das Ausgangstor auf den Steuerbus 338 zwecks Weiterführung zu der Steuerung 318. Darüberhinaus veranlaßt es, daß das Ausgangstor 352 ein Ausgangssignal "AUSGANG VOLL" zurücksetzt, das von dem Ausgangstor 352 einem anderen Eingang jedes der Zustandstore und 3^8 zugeführt wird, ebenso wie dem E/A-Identifizierungstor 350.
(7) ACHTUNG - Dieses Signal wird auf einer Leitung 342a gegeben und wird immer dann erzeugt, wenn eine bedeutende Statusänderung in einer der Einheiten des Laufwerks eintritt. Es wird von der Vorderflanke eizies Signals "ZUSTANDSFEEIGABE" zurückgesetzt.
(8) ZUSTANDSFEEIGABE - Dieses Signal wird auf einer Leitung 34Of gegeben und schaltet im Zustand "high" das Zustandstor der ausgewählten Einheit auf den Steuerbus 338 zur Übertragung zu der Steuerung 318.
(9) SEKTOEFREIGABE - Dieses Signal wird auf eine Leitung 340g gegeben und schaltet im Zustand "high" den Inhalt eines zu der ausgevrählen Einheit zugehörigen Sekt or Zählers auf den Steuerbus. Ein Sektorzähler 354- und ein Sektor-Zählgatter 358 gehören zu der Einheit-0, und ein Sektorzähler 356 mit einem Sektor-Zählgatter 360 gehören zu der Einheit-1. Die Funktion und die Aufgäbe dieser Bauelemente sind weiter unten beschrieben.
(10) SEKTORIMPULS - Dieses Signal wird auf eine Leitung 342b gegeben und wird im Zustand "high" dazu verwendet, den Beginn -3.Ln.33 S-ektrors für die seitliche Steuerung des Startens einer Lese- oder Schreib-Operation anzuzeigen.
(11) LESE-GATTERIMPULS - Dieses Signal wird auf eine Leitung 340h gegeben und dazti verwendet, den Anfang und das Ende von Daten-Lese-Operationen zu steuern.
(12) SCHEEIB-GATTERIMPULS - Dieses Signal wird auf eine Leitung
809835/0873
- ifr-
3Z
gegeben und dazu verwendet, Anfang und Ende des Schreibens von Daten zu steuern.
Bevor die Schnittstelle 326 vom Hardware-Standpunkt ausführlicher beschrieben wird, erscheint es angebracht, zuerst die Eigenschaften der auf dem Steuerbus 338 von der Hauptsteuerung 3^8 übertragenen Information zu verstehen. Die Information besteht aus acht Bits umfassenden Bytes, die Kommandos oder Unterkömmandos genannt werdsn. Sie werden wie folgt definiert:
Kommando s
(1) RÜCKSTELLEN - Dies ist das allgemeine Rückstellkommando für die ausgewählte Einheit und veranlaßt, daß die Kopf-Schi itten-Anordnung dieser Einheit in eine Position gebracht wird, in welcher die Köpfe über der Spur "0" stehen.
(2) ZTLIIIDER - Dieses Kommando gibt an, daß die folgenden zwei Bytes, die über den Steuerbus 338 zugeführt werden, die neue ZyIinder-(Spur^Adresse darstellen, wobei das geringwertige Byte zuerst gesendet wird.
(3) KOPf - Dieses Kommando gibt an, daß das folgende auf den Steuerbus 338 anstehende Byte das Kopf-Auswahlbyte ist, d. h. den speziellen Kopf in der ausgewählten Einheit angibt, der zum Lesen oder Schreiben gewünscht wird.
STÄTUSANFORDERÜNG (A, B, G ODER D) - Nach Ausführung eines dieser vier Kommandos legt der Prozessor 328 ein entsprecheades Statusbyte A, 3, C oder 3 auf einen Datenbus und lädt dann dieses Byte in das Ausgangstor 352 durch Abgabe eines entsprechenden Ladekommandos in einer noch zu beschreibenden Weise. Die spezielle Art der verschiedenen Zustandsbytes A, B, C und D wird weiter unten detaillierter beschrieben.
(5) RÜCKSETZEN SCHREIBSCHUTZ - Dieses Kommando veranlaßt,
809835/0873
daß die ausgewählte Einheit aus dem Schreibschutz-Zustand herausgenommen wird, und zwar nur dann, wenn für diese Einheit der Schreibschutz-Schalter (d. h. der Schalter 314- oder 316 in Fig. 1) nicht angeschaltet ist. Ist dieser Schalter angeschaltet, so bricht das Kommando mit einem unzulässigen Kommandostatus ab, wie weiter unten klar werden wird.
(6) SETZEN SCHREIBSCHUTZ - Dieses Kommando versetzt die ausgewählte Einheit in einen Schreibschutz-Zustand.
(7) SPUR-VERSETZUNG (TRACK OFFSET) - Es gibt sieben derartige Kommandos, von denen sechs veranlassen, daß die ausgewählte Einheit ihre Köpfe in oder aus dem Spurzentrum um einen vorbestimmten Bruchteil einer Spurbreite (z. B. 2,54-^w.m) versetzt. Das siebte Kommando entspricht "auf der Spur". Die Spur-Versetzung wird nur zur Datenwiedergewinnung verwendet, und wie aus der folgenden Beschreibung hervorgehen wird, setzt das Plattenlaufwerk 10 bei Empfang eines Kommandos "SPUR-VERSETZUNG" automatisch den Schreibschutz, um die Möglichkeit auszuschalten, versetzt zu schreiben.
(8) WEAPAROUND-TSST (ZIKLISCHER TEST) - Dieses Kommando beginnt einen Diagnose-Test, der den Steuerbus 338 und die verschiedenen Empfänger und Treiber (die unten noch beschrieben werden) prüft. Diesem Kommando folgt ein Byte Wrap- oder Schiebedaten von der Steuerung. Der Prozessor 328 veranlaßt, daß dieses Byte unmittelbar von dem Eingangstor 344- zu dem Ausgangstor 352 für den Transfer zurück zu der Steuerung 318 verschoben wird. Die Steuerung kann das Testergebnis verifizieren, indem die gesendeten Laben mit dsn empfangenen. Satan verglichen werden.
Unterkommando s
(9) EIHHEITEN-AUSWAHLKODE - Dieses Unterkommando umfaßt fünf Datenbits, wobei die vier höchstwertigen 3its das auszuwählende Plattenlaufwerk identifizieren und das geringstwertige Bit
809835/0873
die spezielle Einheit (0 oder 1), die auszuwählen sind, identifizieren.
(10) ZYLIiTDERADRESSE LS - Dieses Unterkommando ist das erste Datenbyte, das auf dem Steuerbus 358 nach sinem ZYLINDER-Kommando übertragen wird, und es stellt die acht geringerwertigen Bits der aus sechzehn Bits bestehenden Spuradresse dar.
(11) ZYLINDERADRESSE MS - Dieses Unterkommando ist das zweite Datenbyte, das auf ein ZYLINDER-Kommando folgt, und es stellt die acht höchsten Bits der Spuradresse dar.
(12) K0SFADRE33E - Dieses Unterkommando folgt dem KOPE-Kommando und identifiziert den speziellen Kopf in der ausgewählten Einheit, der zum Lesen oder Schreiben aktiviert werden soll.
(15) WRAP-DATEN (ODER SCHIEBE-DATEN) - Dieses Unterkommando folgt auf das Kommando WEAPAROHtTD-TES-T und stellt das Testbyte dar, das von dem Plattenlaufwerk 10 empfangen werden soll und unmittelbar anschließend an die Steuerung 318 zurückgegeben werden soll.
Im folgenden werden unter Bezugnahme auf Fig. 10 die speziellen Schaltungsanordnungen, die Teil der Schnittstelle 326 sind, beschrieben. Die Schnittstelle (interface) 326 enthält eine Auswahlschaltung 364, deren Takt eingang mit der AUSWAHLABTASTUrIG-Leitung 340a über einen Empfänger 366 verbunden ist. Die Auswahlschaltung 364 umfaßt weiterhin einen ersten Satz von vier Eingängen, die eine aus vier Bits bestehende ID-Stecker-Adresse von aea AdrsssiarungsstscLer 524 empfangen, können. Hin zweiter Satz von fünf Eingängen ist in der Schaltung 364 zur Aufnahme eines aus fünf Bits bestehenden Unterkommandos ElHHEITEIf-AUSWAHL-KODE von der Steuerung 318 vorgesehen; dieser Kode wird auf entsprechenden Leitungen des 8-Bit-Steuerbusses 358 über entsprechende fünf Empfänger 368 in einer Reihe von acht Empfängern 368, sowie über entsprechende Leitungen eines S-Bit-Transferbusues
809835/0873
- yr-15
zugeführt. Der Transferbus 370 ist weiterhin mit den Eingängen des Eingangstores 344- verbunden.
Wie oben schon angedeutet wurde, wird der EINHEITEN-AUSWAHL-KODE in die Auswahlschaltung 364 geladen, wenn die Steuerung 318 das Signal AUSWAHL-ABTASTUNG auf der Leitung 340a erzeugt. Die Auswahlschaltung 364 umfaßt herkömmliche Vergleichsschaltungen zum Vergleichen der vier höchstwertigen Bits des EINHEITEN-AUSWAHLKODES mit der aus vier Bits bestehenden ID-Stecker-Adresse.. Bei Übereinstimmung der Signale wird das Signal AUSGEWÄHLTES 'PLATTENWEGE am Ausgang der Schaltung erzeugt. Die Schaltungsanordnung 364 weist ferner Abtastschaltkreise zum Abtasten des Zustandes des fünften geringstwertigen Bits des EINHEITEN-AUSWAHLKODES auf. Ist dieses Bit eine binäre "1", dann wird an einem anderen Ausgang der Schaltung 364 ein Signal EINHEIT-I-AUSGEWÄHLT erzeugt. Ist das fünfte Bit eine binäre "0", dann verbleibt das Signal ΕΙΝΗΞΙΤ-1-AUSGEWlHLT auf niedrigem Pegel.
Das Signal AUSGEWÄHLTES PLATTENWE5K wird über eine Leitung 372 jeweils einem Eingang mehrerer Smpfänger 374, 376, 378, 380, 382, 384 und 386 und einem Eingang eines Treibers 388 zugeleitet. Nimmt das Signal AUSGEWÄHLTES PLATTENWERT einen hohen Pegel an, so wird jeder dieser Empfänger und Treiber freigegeben, das an seinem zweiten Eingang anstehende Signal durchzuschalten.
Insbesondere ist der zweite Eingang des Empfängers 374 mit der Steuerleitung 340b zum Empfangen eines Signals UNTEEKOMMANDO-A.BTA.3TUITG-verbunden, der zweite Eingang des Empfängers 375 ist mit der Leitung 3^Oc zum Empfangen eines Signals KOMMANDO-ABTASTUNG verbunden, der zweite Eingang des Empfängers 378 ist verbunden mit der Leitung 3^Oe zum Empfangen eines Signals FREIGEBEN AUSGABE, der zweite Eingang des Empfängers 380 ist verbunden mit der Leitung 3^Of zum Empfangen eines Signals ZUSTAKLS-I1SElGABE, der zweite Biriganr: des Empfängers 332 ist mit der Leitung 340g verbunden zum Empfangen eines Signals
80 9835/0 873
SEKTOR-PSSIGABE, der zweite Eingang des Empfängers 384 ist mit der Leitung JA-Oh zum Empfangen des Signals LESE-GATT3R-IMPULS verbunden, der zweite Eingang des Empfängers 386 ist mit der Leitung 34Oi zum Empfangen des Signals SCH5EIB-GATTER-IMPULS verbunden, und der aweite Eingang des Treibers ist verbunden mit einer Leitung 390 zum Empfangen eines Signals ESM (Elektronische Sektor-Marke) von den Lese/Schreib-Schaltungen 336- Wenn dieses Signal empfangen wird, erzeugt der Treiber 388 das Signal SEKTOR-IMPULS auf der Leitung 342b. Die spezielle Art, in der das Signal ESM erzeugt wird, wird weiter unten ausführlich beschrieben.
Zum direkten Empfangen, und Übertragen eines Signals STSTEM LÖSCHEN ist ein weiterer Empfänger 392 vorgesehen, während ein zusätzlicher Treiber 394- zum direkten Empfangen und Übertragen eines Signals ACETUlTG auf der Leitung 3^2a vorgesehen ist. Es ist ein weiterer Empfänger 336 in der Schaltung mit dem Kabel B vorgesehen zum Empfangen zu schreibender Daten von der Steuerung 318 und zum Zuführen dieser Daten über das Kabel B zu den Lese/Schreib-(S/W-)Schaltungen 336. Darüberhinaus ist ein Treiber 398 in der Schaltung mit dem Kabel B vorgesehen, der zum Empfangen gelesener Daten von den Lese/Schreib-Schaltungen 336 und zum Weiterleiten der Daten zu der Steuerung 318 dient. Ein Treiber 400 ist weiterhin in der Schaltung mit dem Kabel C vorhanden und dient zum Empfangen von Taktinformation von den Lese/Schreib-Schaltungen 336 und zum Weiterleiten dieser Taktinformation zu der Steuerung 318.
Wenn die Auswahlschaltung 364 bestimmt, daß der SINHEITEN-λ"3VAiILJCGD3 das betreffende Piabteclaufwerk und deren Einheit ausgewählt hat, wird das Signal ΕΙΝΞΕΙΤ-1-AUSGEWÄHLT erzeugt, wie es oben diskutiert wurde. Dieses Signal xiird dem Dateneingang eines Flip-Flops "Kommando-Einheit-1" 416, dem Dateneingang eines Flip-Flops "Belegt-0" 412 über einen Negator 418, einem Eingang eines UND-Gliedes 420, einem invertierten Eingang eines 'J'JD-Gliedss 422, dem Dax;eneingang eines Flip-Flops "Belegt-1" 414, einem Eingang eines UND-Gliedes 424 und einem invertierenden Ein-
809835/0873
gang eines UND-Gliedes 426 zugeführt. Die Aufgabe dieser Flip-Flops und Verknüpfungsschaltungen wird weiter unten beschrieben.
Ein durch den Empfänger 376 durchgeschaltetes Signal KOIDiANDO-ABTASTUNG wird über einen Negätor 404 dem Setzeingang eines Kommando-Flip-Flops 406 zugeführt. Im gesetzten Zustand lege dieses Flip-Flop ein Signal KOMMANDO hohen Pegels an eines der sechs aktiven Eingänge des E/A-Identifikationstores 350. Das Signal KOMMANDO-ABTASTUNG wird weiterhin von dem Ausgang des Empfängers 376 über ein ODER-Glied 408 dem Freigabe-Eingang des Eingangstores 344 zugeleitet, so daß ein 8-Bit-Kommando-Signal auf dem Transferbus 370 in dieses Eingangstor 344 geladen wird. Das Eingangstor 344 wiederum erzeugt ein Signal EINGANG VOLL, welches einem Eingang des E/A-Identifizierungs- - tores 350 und dem Takteingang des Kommando-Flip-Flops 415 sum Erzeugen eines Signals KOMMANDO-EINHEIT-1 auf dessen Ausgangsleitung zugeführt wird, falls das Signal ΕΙΝΗΞΓΪ-1-AUSGEWÄHLT, das dem Dateneingang zugeführt wird, einen hohen Pegel hatte» Das Signal KOMMANDO-EINHEIT-1 wird an einen weiteren Eingang des E/A-Identifizierungstores 350 gelegt» Das Signal EINGANG VOLL wird weiterhin einem Eingang des Zustandstores 346 und einem Eingang des Zustandstores 348 zugeleitet=
Ein von dem Empfänger 376 empfangenes Signal KOMMANDO-ABTASTUNG wird ferner einem Eingang eines UND-Gliedes 410 zugeführt, von dem ein weiterer Eingang mit einer Leitung des Transferbusses 370 verbunden ist. Der Ausgang des UND-Gliedes 410 wird dem jeweiligen Takteingang eines Paares von "Belegt"-Flip-?lops und 414 zugeführt, Venn demnach auf a-jm. Transferbus 370 ein Kommando bei Erhalt eines Signals KOMMANDO-ABTASTUNG vorhanden ist, geht der Ausgang des UND-Gliedes 410 hoch und taktet die zwei "Belegt"-Flip-Flops 412 und 414„ War die Einheit 1 ausgewählt (d. h., war das Signal EIMEIT-I-AUSGEWÄHLT "high"), dann ist lediglich der Ausgang des Flip-Flops 412 "high", wohingegen bei Auswahl der Einheit 0 (d„ h„, das Signal EINHEIT- 1- AUSGEWÄHLT ist Niedrig oder "low"), dann ist nur der
iflseee/fj&e! 7-.&' Or->~--■-''-
eUeöia/wSie
SB
Ausgang des Flip-Flops 412 "high". Der Ausgang des Flip-Flops 412 wird einem Eingang des Zustandstores 346, der Ausgang des Flip-Flops Vl4 einem Eingang des Zustandstores 348 zugeführt.
Wird von dem Empfänger 374 ein Signal UETEEKOMMAKDO-ABTASTUNG . empfangen, was anzeigt, daß auf dem Steuerbus 338 ein Unterkommando ansteht, wird das Eingangstor 344 über ein ODER-Glied 408 freigegeben, was zur Folge hat, daß das Unterkommando in das Eingangstor 3^ geladen wird. Das Eingangstor wiederum erzeugt ein Signal EIITGAITG VOLL·, welches den oben aufgezählten Bauelementen zugeführt wird. Das Signal UITTERKOHMAHDO-ABTASTUTTG wird ferner von dem Empfänger 374- über einen Negator 402 dem Rückset ζ eingang des EOMTiAlTDO-Fl ip -Fl ops 406 zum Rücksetzen desselben zugeführt, wodurch gas Signal KOMMANDO zurückgenommen wird. Das niedrige Signal KOMIiAHDO, das dem E/A-Idenitif izie rungstor 350 zugeführt wird, zeigt an, daß die in das Eingangstor 344 geladene Information ein Unfcerkommando und nicht ein Kοmmando darstellt.
Ein von dem Empfänger 392 empfangenes Signal SYSTE?! LÖSCHEST wird über ein mit invertierenden Eingängen versehenes UQR-Glisd 423 den Rücksetseingängen des Eingangstores 344 und des Ausgangstores 352 zum Rücksetzen derselben zugeleitet.
Das durch den Empfänger 378 empfangene Signal FREIGABE AUSGABE wird einem Freigabe-Eingang des Ausgangstores 352 zugeführt, um das Tor zu laden und dessen Inhalt auf den Transferbus 43O zu schalten. Darüberhinaus wird das Signal FREIGABE AUSGABE 'Tb .-3 r ein CUSR-Glied 4J1 eines. Freigabe-Eingang .jedes Treibers einer aus einer Reihe von acht Treibern bestehenden Treiberanordnung 432 zugeführt, so daß die Inhalte des Ausgangstores, die auf den Transferbus 430 gegeben werden, dein Steuerbus 338 zum Zuführen zu der Steuerung 3^8 zugeleitet werden.
I^in vor: ci.2n Empfänger 5 BO empfangenes Signal Z UoI Λ Ii 2Z~< REU AB λ wird einem zweiten Eingang jedes der oben erwähnten UIID-Glieder
809835/0873
und 422 zugeführt. Es sei daran erinnert, daß nur eins dieser Verknüpfungsglieder freigegeben wird, und zwar abhängig von dem Zustand des Signals'EINHEIT-1-AUSGEWÄHLT, welches an einem jeweiligen ersten Eingang dieser Verknüpfungsglieder anliegt. Ist das Signal ΕΙΝΗΞΙΤ-1-AUSGEWÄHLT wahr, dann wird das Signal ZUSTANDSFREIGABE durch das Gatter 422 zu dem Freigabe-Eingang des Zustandstores 348 durchgeschaltet, um dasselbe in die Lage zu versetzen, seinen Inhalt auf den Transferbus 430 zu geben. Zur selben Zeit wird das Signal ZUSTANDS-FSEIGABE von dem Ausgang des Gatters 422 über einen Negator 423 dem Takteingang eines ACHTUNG-1-Flip-Flops 436, das weiter unten noch beschrieben wird, zugeführt. Das Signal ZUSTANDS-FREIGABE wird weiterhin von dem Empfänger 38O zu einem weiteren Eingang des ODER-Gliedes 431 geleitet, um die Treiber 432 zu veranlassen, den Inhalt des Zustandstores 348 auf den Steuerbus 338 zu geben. Wenn das Signal EINHEIT-1-AUSGEWÄHLT niedrig ist, wird der Inhalt des Zustandstores 345 auf den Steuerbus 338 in ähnlicher Weise gegeben. Weiterhin wird das am Ausgang des Gatters 420 erzeugte Signal ZUSTANDSFREIGABE über einen Negator 421 dem Takteingang eines ACHTUNG-0-Flip-Flops 434 zugeführt, welches ebenfalls unten noch beschrieben wird.
Ein von dem Empfänger 382 empfangenes Signal SEKTOR-FREIGABE wird einem zweiten Eingang jedes der UND-Glieder 424 und zugeführt; hierbei sei daran erinnert, daß das Signal ΞΙΝΗΞΙΤ-1-AUSGEWlHLT dem ersten Eingang Jedes Verknüpfungsgliedes zugeführt wird. Wenn das Signal ΕΙΝΗΞΙΤ-1-AUSGEWÄHLT wahr ist, dann wird das Signal SEKTOR-FREIGABE durch das Verknüpfungsglied 426 durchgeschaltet, um das Ssktcr-^-G-i-cter freizugeben, damit dieses seinen Inhalt, d. h. die Sektorzählung für die Einheit 1 auf den Transferbus 43O geben kann. Zur selben Zeit wird das Signal SEKTOR-FREIGABE von dem Ausgang des Empfängers 382 einem weiteren Eingang des ODER-Gliedes 431 zugeführt, um die Treiber 432 zu veranlassen, das Sektorzähl-Byfce auf den Steuerbus 338 zur Übertragung zu der Sceuerung 313 zu geben. Ist das Signal ΞΙΝΗΕΙΤ-1-AUSGEWÄHLT falsch, dann wird der Inhalt
80983S/0873
des Sektor-0-Gatters 353, d. h, die Sektorzählung für die Einheit 0 auf den Steuerbus 338 geschaltet.
Die Schnittstelle 326 umfaßt weiterhin ein ÄCHTUNG-0-F1ip-Flop 434 und ein ACHTUNG-1-Flip-Flop 436, die oben bereits angesprochen wurden. Wenn jedes dieser Flip-Flops in einer noch zu beschreibenden Weise gesetzt wird, wird ein ACHTUNG-Signal, d. h. ACHTUNG-0 oder ACHTUNG-1 von dem jeweiligen Ausgang des Flip-Flops an einen entsprechenden Eingang eines ODER-Gliedes 438 gelegt, und dann durch dieses Verknüpfungsglied an den "ACHTUNG"-Treiber 394 zum Erzeugen des ACETUNG-Signals auf der Leitung 31^a. Diese Flip-Flops 434 und 436 werden jeweils durch die Signale ZUSTANDSFREIGABE zurückgesetzt, welche ihren entsprechenden Eingängen von den Negatoren 521, bzw. 523 zugeführt werden.
Bis hierher wurde die Schnittstelle 326 in erster Linie beschrieben im Hinblick auf die verschiedenen Signale, die von der Steuerung 318 über das Kabel A gelangen, bzw. über dieses Kabel A der Steuerung 318 zugeführt werden. Wie aus Fig. 9 hervorgeht, überträgt, bzw. empfängt die Schnittstelle 326 auch Daten zu, bzw. von dem Prozessor 328 über den Datenbus 332 und empfängt darüberhinaus verschiedene Steuersignale von dem Prozessor über Leitungen 440, Steuersignale von den Lese/Schreib-Schaltungeii 336 über Leitungen 390, und Steuersignale von den Spur-Schaltungen 330 auf Leitungen 442. Darüberhinaus führt die Schnittstelle 326 verschiedene Steuersignale den Lese/Schreib-Schaltungen 336 auf Leitungen 445'·.·.zu.
I/i-333 leitungen sollen nun unter Bezugnahme auf J'i.jr. 1G betrachtet v/erden. Das E/A-Identifizierungstor 350 besitzt einen Eingang, welcher ein "Lese-Kanalstatus"-Kommando in Form eines Steuersignals ADR 0 1 (R) empfängt, welchesi-in Wirklichkeit aus zwei Signalen besteht, nämlich ADR 0 1 und E/A RB (E/A Lesen), Vielehe in dem Tor 350' TJND-verknüpft werden. Im folgenden -soll die Bezeichnung ALR ZZ (R) ADR ΧΧ-ϋΙ7ϋ-Ξ/.ϋ. 2.Ij bedeuten, während die Bezeichnung ADH XX (W) bedeuten soll ADR XX-ülID-E/A-WR (WR be-
809835/0873
Q Λ P1S Γ* !"* ~ί"*ϊΰ. 3 Λ j?
deutet Schreiben). Das Signal ADR 0 1 ist eines von sechzehn Adreßsignalen (ADR 00 - ADR 15), die zusammen mit den Signalen E/A RD und E/A V/R durch den Prozessor 328 in einer noch unten beschriebenen Weise erzeugt werden.
Das Eingangstor 344 empfängt an einem Eingang ein "Lesen-Eingangstor"-Kommando in der Form eines Steuersignals ADR 00 (R), welches auf einer Leitung 440b von dem Prozessor 328 zugeführt wird. Beim Empfang des Steuersignals ADR 00 (R) werden die am Eingangstor anstehenden Eingangssignale in das Tor geladen und auf den Datenbus 362 zur Übertragung zu dem Prozessor 328 gegeben. Der Prozessor kann ferner ein Steuersignal RÜCKSETZEN" auf einer Leitung 440c erzeugen, welches einem zweiten Eingang des mit invertierenden Eingängen versehenen NOR-Gliedes 428 zugeführt wird, um das Eingangstor 344 und das Ausgangstor 352 zurückzusetzen.
Ein "Löschen-Belegt-0"-Kommando in Form eines Steuersignals ADR 0 8 (R) wird auf einer Leitung 44Od von dem Prozessor 328 dem Rücksetzeingang des BSLEGT-0-Flip-Flops 412 zum Rücksetzen desselben zugeführt. In entsprechender Weise wird ein Steuersignal ADR 0 9 (R) über eine Leitung 440e dem Rücksetz-Eingang des BELEGT-1-Flip-Flop 414 zum Rücksetzen desselben zugeführt.
Ein "Laden-Ausgangstor"-Kommando in Form eines Steuersignals ADR 00 (W) wird vom Prozessor 328 über eine Leitung 440f einem Lade-Eingang des Ausgangstores 352 zugeleitet, damit aas derzeitig auf dem Datenbus 362 anstehende Byte in das Ausgangstor 352 geladen wird. Hierbei wird, an ad.nea Ausgang des Ausgangsfeoras 352 ein Signal AUSGANG VOLL erze\xgt, welches jeweils einem Eingang des E/A-Identifizierungstores, und der Zustand-^0- und Zustand-1-Tore zugeführt wird.
1O v
Ein "Setzen Achtung-0"-Kommando in Form eines Steuersignals ALR 14 (R) wird von dem Prozessor 328 auf eine Leitung 440g einem Setzeingang des AGHTUHG^-0-Flip-Fiops 434 zum »Setzen des-
S0983S/087
- Ji» -
selben zugeführt. In entsprechender V/eise wird ein "Setzen Achtung-1"-Kommando in Form eines Steuersignals ADH 15 (R) über eine Leitung 4TOh dem Setzeingang des ÄCHTUNG— 1-Flip-Flops 436 zum Hücksetzen desselben zugeführt. Ist das Flip-Flop 434 oder das Flip-Flop 4J5 gesetzt, so wird auf der Leitung 3&2a zur übertragung zu der Steuerung 318 ein Signal ACHTUNG erzeugt.
Ein "Laden Statustor"-Kommando in Form eines Steuersignals ADR 01 (W) wird über eine Leitung 44Oi von dem Prozessor zu einem Gesamtstatustor 442 geleitet, damit ein Gesamtstatus-Byte auf dem. Datenbus 352 in das Tor 442 geladen und verschiedenen Eingängen der Zustandstore 3^6 und 3^-8 zugeleitet wird. Das Gesamtstatus-Byte enthält die folgenden Informationsbits, die entweder den Wert wahr oder falsch haben:
(1) 0 BEREIT - Dieses Signal zeigt im Zustand wahr an, daß die Einheit 0 für den Betrieb bereit ist. Das Signal wird einem ersten Eingang des Sustandstores 3^-6 zugeführt. Wie waiter untjan noch beschrieben wird, ist das Signal 0 BEREIT wahr, wenn alle Bits eines Bytes STATUS B (wird weiter unten erklärt) für die Einheit 0 falsch sind.
(2) 0 SCHREIBSCHUTZ - Dieses Signal zeigt im Zustand wahr an, daß die Einheit 0 auf Schreibschutz eingestellt ist, es wird einem vierten Eingang des Zustandtores 34-6 zugeführt.
(3) 0 ABBRUCH - Dieses Signal zeigt im Zustand wahr an, daß wenigstens eines der Bits eines Bytes STATUS A (wird noch beiohriebex:) Tür dia SiahelT; 0 wahr ijt. Γ3..3 ul^na! ;5 AB3I?uJIi wird einem dritten Eingang des Zustandtores 3^6 zugeführt.
(4) 0 AUF SPUR - Dieses Signal zeigt im wahren Zustand an, daß die Lese/Schreib-Köpfe 14a und 14b für die Einheit 0 sich in einer Spur innerhalb eines Bereichs von 8,89 /*κ von den «äpursentruin bsfindot. Las Signal 0 AUF £?'j?_ vrird ^ine"t fünften Eingang des Zustandstores 346 zugeführt.
809835/0873 "^ mm-
(5) 1 BEBEIT - Dieses Signal zeigt im Zustand wahr an, daß die Einheit 1 für den Betrieb bereit ist (alle Bits des Bytes STATUS B für die Einheit 1 sind falsch), das Signal wird einem ersten Eingang des Zustandstores 34-8 zugeführt.
(6) 1 SCESEIBSCHUTZ - Dieses Signal zeigt im Zustand wahr an, daß die Einheit 1 auf Schreibschutz eingestellt ist, das Signal wird einem vierten Eingang des Zustandstores 34-8 zugeleitet.
(7) 1 ABBRUCH - Dieses Signal zeigt im Zustand wahr an, daß wenigstens eines der Bits eines Bytes STATUS A für die Einheit 1 wahr ist. Das Signal 1 ABBRUCH wird einem dritten Eingang des Zustandstores 34-8 zugeführt.
(8)' 1 AUF SPUS - Dieses Signal zeigt im Zustand wahr an, daß die LeseOSchreib-Köpfe 14-c bis 14-h für die Einheit 1 sich in einer Spur in Bereich von 8,89 um bezüglich des Spurzentrums befinden. Das Signal 1 AUF SPUR wird einem fünften Eingang des Zustandstores 34-8 zugeführt.
Der zweite, sechste, siebte und achte Eingang des Zustandstores 3^6 empfängt jeweils die oben erwähnten Signale BELEGT-0, EINGANG VOLL, AUSGANG VOLL und ACHTUNG-0, und der zweite, sechste, siebte und achte Eingang des Zustandstores 34-8 empfängt jeweils die Signale BELEGT-1, EINGANG VOLL, AUSGANG VOLL und ACHTUlTG-1.
Bevor die Eigenschaften der verschiedenen Statusbytes (A, B, C 'ind D) , die auf den "Datenbus 352 gegeben und in das Ausgangstor 352 zur Weiterleitung zu d§r Steuerung 318 über den Steuerbus 330 geladen werden können, beschrieben werden, sollen die übrigen Steuersignale, die vom Prozessor 328 der Schnittstelle 326 zugeführt werden, beschrieben werden.
Ein "Lesen Sektor — Zähler-0"-Kommando in Fox^m eines Steuersignals ADH 03 (R) wird über eine Leitung 4-4-Oj dem Freigabe-
809835/0873
gg eines Sektor-Zähler-0-Gatters 444 zugeführt. Das Gatter 444 wird freigegeben, damit die Sektorzählung von dem Sektor-0-Zähler 33^ auf den Datenbus 362 gegeben werden kann. In ähnlicher Weise wird ein "Lesen Sektor-Zähler-1"-Kommando in 5Orm eines Steuersignals ADH -06 (R) über eine Leitung 44Ok zugeführt, um die Sektorzählung für die Einheit 1 von dem 3ektor-1-Zähler 356 auf den Datenbus 362 zu geben.
Wie oben bereits ausgeführt wurde, werden Signalimpulse "Sektor-Marke 0" von den Spur-Schaltungen 330 auf einer Leitung 442a einem Takteingang des Sektor-0-Zählers 354- zugeführt. In ähnlicher Weise werden Signal-Impulse "Index-Marke-0", "Sektor-Marke-1" und "Index-Karke-1" von den Spur-Schaltungen auf entsprechenden Leitungen 442b, 442c und 442d dem Rücksetseingang des Sektor-0-Zählers, dem Takteingang des Sektor-1-Zählers, bzw. dem Rücksetzeingang des Sektor-1-Zählers zugeführt.
Die vier verschiedenen Statusbytes, die durch den Prozessor 328 auf den Datenbus gegeben werden können, werden anhand der nachstehenden Statusformat-Tabelle erläutert.
TABELLE I.
STATUSEORI'IAT
STATUS-BYTE
BIT
STATUS A 0
(Abbruch-Status) 1
2
3
4-7
STATUS B 0
(iiicht Bereit) Λ
2
BEDEUTUNG
unzulässiges Kommando unzulässige Zylinderadresse unzulässige Kopfadresse Suche unvollständig nicht benutzt
Netzabfall keine Betriebsgeschwindigkeit keine Kapsel (Einheit 0) oder keine orbsfeste Plstre (Einheit 1)
809835/0873
BAD °
5 6-7
Lese/Schreib-Fehler Rückstellen unvollständig Kapsel mit unzulässiger Sektoreinteilung nicht "benutzt
STATUS C
(Lese/Schreib-Status)
3 4-7
BC-Schreibstrom-Fehler Schreibtätigkeits-Fehler Schreibdaten-Aufzeichnungs-Fehler
Kehrfachkopf-Fehler nicht benutzt
STATUS D
0-3 4
Modell-Nr.
Schreibschutz-Zustand Schreibschutz-Schalter EIN Hetz an
nicht benutzt
Im folgenden sollen die aktiven Bits des STATUS Α-Bytes speziell betrachtet v/erden. Ein Signal UNZULÄSSIGES KOMMAITDO wird dursh den Prozessor 328 für die ausgewählte Einheit erzeugt, falls der Prozessor eines der folgenden Signale empfängt:
(1) Ein Kommandosignal nichtSTATUS-ANFORDERUNG·, wenn in der ausgewählten Einheit keine Kapsel (Einheit 0) oder Platte (Einheit T) geladen ist;
(2) Ein Kommandosignal RÜCKSTELLEN, während bei der anderen Einheit ein ÄückstellVorgang abläuft,
(3) Ein Kommandosignal KOPF, während die andere Einheit sich beim.Rückstellen befindet,
(4) Ein Kommando signal nichtSTATUS--i!TFCR3SRUNG, während die ausgewählte Einheit schon ein Kommando ausführt» Es wird jedoch kein Fehler gemeldet, wenn ein neues Kommando empfangen
00835/087
wird, während auf ein Unterkommando gewartet wird. Der Prozessor 328 löscht einfach das vorangegangene Kommando und führt das neue Kommando aus;
(5) Ein nicht definiertes Kommando.
Der Prozessor 328 veranlaßt, daß das Bit (Bit O) UNZULÄSSIGES KOMMANDO des Bytes STATUS A nach Erhalt eines Kommandosignals nichtSTATUS-ANFORDERUNG den Wert falsch annimmt. Das Bit (Bit 1) UNZULÄSSIGE ZYLINDEHADHESSE wird wahr, wenn der Prozessor 323 eine Zylinderadresse empfängt, die größer ist als 4-29- Der Grund hierfür besteht darin, daß nur 430 Spuren, d. h. Spuren 0 bis 4-29, zum Speichern und Wiedergewinnen von Daten verwendet werden, was unten noch ausführlicher beschrieben wird. Das Bit 1 nimmt nach Erhalt eines Kommandos nichtSTATUS-AH5ORBSRU¥G dan Wert falsch an.
Das Bit (Bit 2) UNZULÄSSIGE KOPi1ADHESSB des STATUS A-Bytes wird wahr, wenn der Prozessor 323 eine nicht existierende Kopfadresse empfängt, und es wird bei Erhalt eines Kommandos nichtSTATUS-ANFORDERüNG falsch. Schließlich wird das Bit (Bit 3) STJOHE UNVOLLSTÄNDIG wahr, r^exm der Prozessor 328 bestimmt, daß eine Suchoperation (d. h., das Bewegen des Kopfes In eine gewünschte Spurposition) mehr als eine vorbestimnite Zeitdauer, z. B. 150 ms, in Anspruch nimmt. Dieses Bit wird ebenfalls bei Empfang eines Kommandos nichtSTATUS-ANFORDERUNG falsch.
Bai den aktiven Bits des STATUS B-Bytes wird das Bit (Bit 0) NETZABFALL wahr, wenn die Wechselspannung für das Platten-1; ufwerk 10 abfüllt, iritt ein solcher Sustand ein, so hält die Platteneinheit für 150 ms den normalen Betrieb aufrecht und zieht dann die Köpfe zurück. Setzt die Energiezufuhr der Platteneinheit in weniger als 15O ms wieder ein, so wird dieses Bit zurückgesetzt, die BEREIT-Anzeigelampen 310 und 3^2 werden angeschaltet, und die Plattensinheit nimmt ihren normalen Betrieb wieder auf.
Das Bit KEINE BETRIEBSGESCHWIIfDIGKEIT (Bit 1) wird wahr, wenn
809835/0873 te GP^
das Plattenlaufwerk 10 nicht die erforderliche Betriebsgeschwindigkeit erreicht hat oder unter diese Betriebsgeschwindigkeit abfällt. Das Bit bleibt bei normaler Betriebsgeschwindigkeit falsch. Das Bit KEINE KAPSEL oder KEINE OSTSi1ESTE PLATTE (Bit 2) wird wahr, wenn die obere Einheit ausgewählt wurde und keine Kapsel 28 eingelegt wurde, oder wenn die untere Einheit ausgewählt wurde und sich in ihr keine ortsfeste Platte befindet (dies gilt für das oben angesprochenen Modell des verwendeten Plattenlaufwerks 10).
Das Bit LESE/SCHREIB-FEHLER (Bit 3) des STATUS B-Bytes wird wahr, wenn der Prozessor einen der folgenden Fehler feststellt: DC-SCHREIBSTROM-FEHLER, SCHREIBAKTIVITÄTS-FEHLER, SCHREIBDATEN-AUFZEICHNUNGSFSHLER oder MSHRFACHKOPF-FEHLER. Ist das LESE/SCHREIB-FEHLER-Bit wahr, so kann die Fehlerursache aus dem STATUS C-Byte festgestellt xverden, was unten erläutert wird.
Das Bit RÜCKSTELLEN UNVOLLSTÄNDIG (Bit 4) ist wahr, wenn eine Rückstelloperation (diese wird weiter unten beschrieben) nicht innerhalb der normalen erforderlichen Zeitdauer abgeschlossen wird.- Das Bit KAPSEL MIT UNZULÄSSIGER SEKTOREINTEILUNG (Bit 5) ist wahr, wenn die Anzahl der Sektoren auf der Platte 16a einer eingelegten Kapsel 28 von der Anzahl der Sektoren, für die das Plattenlaufwerk eingestellt ist, abweicht. Die spezielle V/eise der Sektoreinteilung der Platte 16 in dem Plattenwerk wird weiter unten in Zusammenhang mit Fig. 21 beschrieben.
Im STATUS C-3yte ist das Bit DC-SCHREIBSTROM-FEHLER (Bit 0) •v?ir, wenn entweder -während 3in.3s Sch reib Vorgangs kein Gleich-(DG)Schreibstrom vorhanden ist oder wenn ein Gleich-Schreibstrom ohne Schreibtätigkeit vorhanden ist. Das Bit SCHREIBTÄTIGKEITS-FEHLER (Bit 1) ist wahr, wenn Schreibübergänge bei den SCHREIB-GÄTTERIMPÜLSEN auftreten; diese letztgenannten Signale wurden oben bereits angesprochen und werden ausführlicher weiter unten in Zusammenhang mit- den Fig. 14 bis 16 und 21 erläutert. Das Bit SCHRSIBDATEN-AUFZSICHNUNGSFEHLER (Bit 2) ist wahr, wenn
809835/0873
der Schreibdaten-Strom nicht die zu schreibenden darstellt. Das Bit KEERFACHKOPF-FEKLES (Bit 3) ist wahr, wenn zwei oder mehrere Köpfe gleichzeitig ausgewählt werden.
Im STATUS D-Byte identifizieren die Bits MODELL-KR (Bits 0-3) die Modell-Nr. des Plattenlaufwerkes. Das Bit SCHREIBSCHUTZ-SUSTAlID (Bit 4) wird wahr, wenn die Steuerung 313 ein Kommandosignal SSTZSiI SCHRSIBSCHUTZ auf den Steuerbus 330 gibt. Dieses Bit wird falsch, wenn die Steuerung 318 ein Kommandosignal EuCKSSTZSiI SCHRSIBSCHUTZ sendet, vorausgesetzt, der Schreibschutz-Schalter für das ausgewählte Plattenlaufwerk, d. h. der Schalter 314 oder der Schalter 316 (Fig. 1) ist abgeschaltet. Es sei daran erinnert, daß, wenn der Schalter 314· angeschaltet ist, ein wahres Signal SCHRSIBSCHÜTZ-SCHALTSR 0 dem ersten Eingang des S/A-Identifizierungstores 350 zugeführt wird, und, falls der Schalter 31S angeschaltet ist, ein wahres Signal SCHRSIBSCHUTZ-SCHALTSR 1 dem zweiten Eingang des S/A-Identifizierungstores 350 zugeführt wird. Ist weiterhin der Schreibschutz-Schalter für die ausgewählte Einheit angeschaltet, so ist das Bit SCHREIBSCHÜTZ-SCHALTER-AN (Bit 5)des STATUS D-Bytes wahr.
Das Bit NSTZ AN (Bit 6) ist jedesmal dann wahr, wenn dem Plattanlaufwerk 10 durch Einstellen des START/STOP-Schalters (Fig. 1) auf die Stellung START Energie zugeführt. Dieses Bit wird zurückgesetzt, wenn es durch ein. Kommando STATUS-AITFORDERUNG D abgetastet wird. Im wahren Zustand zeigt dieses Bit an, daß ein START/STOP-Zyklus aufgetreten ist, während dessen ein Wechsel der Kapsel 23 stattgefunden haben kann.
Es soll noch einmal das Signal ACHTUNG angesprochen werden, das auf der Süeuerleitung 342a zum Zuführen zu der Steuerung erzeugt werden kann. Die ACHTULTG-Leitung 342a ist eine nicht ausgewählte Leitung, die den Zustand "high" annimmt, d. h., das Signal ACHTUHG ist vorhanden (wahr), wenn entweder die Einuait 0 oder die Einheit 1 des Plattenlaufwerks 10 eine wichtige Statusänderung an die Steuerung 318 zu melden hat.
80983B/0873
EAD ORiQiNAt
Die Statusänderungen, für die ein Signal ACHTUNG erzeugt x«;ird, sind: (i) Die Einheit wird bereit, (2) die Einheit wird nicht "bereit, oder (3) die Einheit wird nicht belegt. Tritt einer dieser Falle ein, so setzt der Prozessor das entsprechende ACHTUNG-Flip-Flop 434 oder 436 durch Erzeugen eines Signals ADR 14 (R) oder ADR 15 (R) in der oben beschriebenen Weise. Es sei nochmals gesagt, daß das Signal ADR 14(R) in Wirklichkeit aus den Signalen ADR 14-UND-E/A RD besteht, während das Steuersignal ADR 15 (R) sich zusammensetzt aus den Signalen ADR 15-UND-E/A RD.
Eine Methode, nach der die Steuerung 318 Statusänderungen innerhalb des Plattenlaufwerks 10 feststellen kann, besteht darin, einfach die ACHTUNG-Steuerleitung 342a zu überwachen. Nach Erhalt eines wahren ACHTUNG-Signals auf dieser Leitung kann die Steuerung 3I8 beginnen, das ZUSTAND-Byte Jeder Einheit zu prüfen. Ist die das ACHTUInTG-Signal erzeugende Einheit lokalisiert, beginnt die. Steuerung 318 mit entsprechenden Tätigkeiten.
Im folgenden wird Bezug genommen auf Fig. 21, in der die Art der Sektorunterteilung beschrieben wird. Ein beispielhaftes Sektorformat wird! zwischen aufeinanderfolgenden elektronischen Sektormarken (ESM) definiert, welche durch die Abfallflanken aufeinanderfolgender Sektorimpulse festgelegt werden. Die Art der Erzeugung dieser Impulse wird im folgenden detaillierter beschrieben. Das beispielhafte Format umfaßt sechzehn Bytes von Nullen, die auf eine ESM folgen» Ein Synchronisations-Byte (SYNC) folgt dann in herkömmlicher Weise«, -Jia bevorzugtes Syachronisations-Byhe ist "acht-einfach" (eight-easy)(8E), obschon dies nicht erforderlich ist. Dem Synchronisations-Byte können eine oder mehrere ID-Bytes folgen, an welche sich wiederum zwei aus Nullen bestehende Bytes als Schutsband anschließen. Weitere sechzehn aus Nullen bestehende Bytes werden anschließend erzeugt, an die sich ein weiteres
Synchronisations-Byte anschließt; an dieses schließt sich dann das Datenfeld an. lach dem Datenfeld wird ein weiteres aus zwei Bytes bestehendes Schutzband aufgezeichnet. Dieses vervollständigt das sogenannte "Harter Sektor"-Feld.
Gemäß der bevorzugten Ausführungsform wird nach dem zuletzt angesprochenen 2-Byte-Schutzband die mechanische Sektormarke festgestellt, und es wird entweder das Signal SEKTOR-MASKE 0 oder SSKTOR-MARKE 1 erzeugt, abhängig von der ausgewählten Einheit. Diese zuletzt genannten Signale wurden ebenso wie die Signale IiIDSZ-JIARKE 0 und INDEX-MARKE 1 oben erwähnt. Die spezielle Art, in der diese Signale erzeugt werden, wird weiter unten in Zusammenhang mit den Fig. 18 und 19 beschrieben.
Weiterhin erkennt man in Fig.21, daß nach Beendigung des "Harten Sektors", der oben definiert wurde, d. h., nach dem zweiten aus zwei Nullen-Bytes bestehenden Schutzbandes, sechzig Bytes reserviert sind zum Voraufzeichnen der Taktsynchrönisation und der spurfolgenden Servodaten. Die Eigenschaften dieser Daten und deren Zx-reck werden weiter unten detaillierter erläutert. An dieser Stelle soll jedoch festgehalten werden, daß, obsclaon diese Daten gelesen und intern in der Platteneinheit verwendet werden, das Plattenlaufwerk daran gehindert wird, irgendwelche Daten in diesen . 60-Byte-Block zu schreiben.
Fig. 21 zeigt drei beispielhafte Typen von Lese/Schreib-Operationen, d. h., (1) Schreib-Format, (2) Lesen und (5) Schreiben. Während einer Schreibformat-Operation wird das Signal SCHBEIB-GATTSHIMPULS während des gesamten "Harter Sektor"-Bereichs,
ten. Während einer Lese-Cperation wird das Signal LESE-G-ATTSR-IMPULS zuerst auf hohen Pegel gebracht, um ein Senden des Synchronisations-Bytes und des ID-Kodes zu erlauben. Arn Ende des ID-Kodes wird das Signal LESE-GATTERIMPULS falsch, um den Takt in einer unten beschriebenen Weise neu. zu synchronisieren, und Vi'ird dau-i vriederuo. für das zweite Synchronisations-Byte und das Datenfeld auf einen hohen Pegel gebracht. Während einer Schreib-
809835/087 3
- OfT-
Operation wird das Signal LESE-GATTSRIMPULS angehoben, um ein Lesen des Synchronisations-Bytes und des ID-Kodes zu ermöglichen. Danach wird das Signal LESE-GATTERIMPULS falsch, und das Signal SCHRSIB-GATTSRIMHJLS wird zwei Bytes später angehoben. Das Signal SCHHSIB-GATTERIiIPULS wird am Ende des Bereichs "harter Sektor" falsch.
Spezielle Einzelheiten, soxvie die Betriebsweise der Lese/Schreib-Schaltungen werden unten in Zusammenhang mit den Fig. 14 bis 16 beschrieben.
IV. Prozessor
Im folgenden wird Bezug genommen auf Fig. 11, anhand der der in Fig. 9 dargestellte Prozessor 328 beschrieben wird. Bei dem Prozessor handelt es sich, um einen programmierten Dstenprozessor, dessen Hauptbestandteile ein Mikroprozessor 500 und dazugehörige Nur-Lese-Speicher (ROMs) 502 und Schreib/Lese-Speicher (RAMs) 504 sind. Die Programme für den Mikroprozessor 500 sind in den EOMs 502 gespeichert. Darüberhinaus sind in den ROMs 502 verschiedene Tabellen gespeichert. Wie aus der folgenden Beschreibung hervorgehen wird, ist eine derartige Tabelle eine Kopf-Tabelle, die zusammen mit den Lese/Schreib-Schaltungen 336 verwendet wird. Die RAMs 504 werden zum Speichern von Statusinformation, Rückkehradressen, sowie aktueller und gewünschter Spurpositions-Information bei Such- und Rückstell-Operationen verwendet.
Daten in Form von 8-Bit-Wörtern oder "Bytes" können von dem Ailcropro^esoor 500 in eine Gpeicherstelle des 2AH 504 über einen acht Bit breiten Transferbus 506, durch eine bidirektionale Bustreiber/Systemsteuerungseinrichtung 508, über einen weiteren Transferbus 510 und dann auf dem Hauptdatenbus 362 und dann über einen weiteren Transferbus 512, der mit den RAHs 504 verbunden ist, übertragen werden. Daten, die von einer RAM-Speicherstelle zu dem Mikroprozessor 500 übertragen werden sollen,
809835/0873
nehmen den umgekehrten Weg. Aus den ROMs 502 ausgelesene Daten können zu dem Mikroprozessor 500 über einen Transferbus 514·» den Datenbus 362 und dann über den Transferbus 510 durch den bidirektionalen Bustreiber 508 und über den Transferbus 506 übertragen werden. Daten, die von anderen Quellen auf den Bus geschaltet werden, so z. B. von dem E/A-Identifizierungstor oder dem Eingangstor 34-4- '(!"ig. 10) werden dem Mikroprozessor direkt zugeführt.
Ein Taktgeber 516 für den Mikroprozessor 500 wird durch ein Signal EG BEHEXT (Gleichspannung bereit), das von dem Ausgang eines Spannungspegel-Detektors 518 seinem Eingang zugeführt wird, freigegeben. Der Detektor 518 ist mit der Spannungsversorgung 18 (Fig. 8) zum Empfangen verschiedener von dieser erzeugter Gleichspannungen (DC-Spannungen) verbunden und dient zum .Feststellen, wann diese Spannungen den gewünschten Betriebspegel erreichen. Ist eine solche Bedingung festgestellt, so wird das Signal DC BEREIT wahr, wodurch der Taktgeber 516 aktiviert wird. Der Befehlszähler für den Prozessor 328 ist vorzugsweise innerhalb des Mikroprozessors 5OO integral ausgebildet. Der Taktgeber 516 erzeugt weiterhin ein Signal RÜCKSETZEN auf einer Leitung 519 und Signale UIiTERBRECETOIG auf einer Leitung 517, welche dem Mikroprozessor 500 zugeführt werden.
Gemäß der vorliegenden Erfindung können irgendein beliebiger Mikroporzessor 500, eine bidirektionale Bustreiber/Systemsteuerung 5O8 und die zugehörigen ROMs 502 verwendet werden. Derzeit bevorzugte Bauelemente umfassen einen Mikroprozessor 8080, eine bidirektionale Bustreiber/Systemsteuerung 8228, "ICIIs β?03 -IDlZ HAI-:8 3". 12 der Firma Intel Corp- , Santa Clara, California.
Der Mikroprozessor 5OO kann eine 16-Bit-Adresse auf sechzehn Adreßleitungen A00-A15 erzeugen, ua auf entsprechende Speicherstellen in den ROMs 502 und RAMs 504- über einen Mikroassor-AdreHbus 520 zuzugreifen. Die vollständige- aus sechzehn
809835/0873
SS
Bits bestehende Adresse wird vorzugsweise dazu verwendet, sowohl die ihir-Lese-Speicher (ROMs) 502 als auch die Schreib/Lese-Speicher (RAMs) 504- zu adressieren. Die vier kleinstwertigen Bits A00-A03 jedoch werden als Eingangssignale an einen herkömmlichen 4~zu-i6-3it-E/A-Adreßdekoder 522 gelegt. Der Dekoder 522 erzeugt als Antwort auf irgendeinen 4~Bit-Eingangskode auf den Leitungen A00-A03 auf einer der sechzehn E/A-Adreßleitungen ADR 00 - ADR 15 des aus sechzehn Bits bestehenden E/A-Adreßbusses 520 ein hohes Signal. Einige dieser E/A-Adreß- ' signale wurden oben in Zusammenhang mit Fig. 10 bereits erwähnt .
Es sei daran erinnert, daß die verschiedenen Steuerleitungs-Eingangsgrößen für die Torschaltungen, die bisher diskutiert wurden, gekennzeichnet wurden durch eine E/A-Adresse, an die sich (E) oder (¥) anschloß. So zum Beispiel wurde die Steuerleitun-g 440b in Fig. 10 beschrieben, indem ein Signal ADR00 (R) an das Eingangstor 344 gelegt wurde, um dieses in die Lage zu versetzen, seinen Inhalt auf den Datenbus 362 zu geben. In Wirklichkeit umfaßt diese Steuerleitung zwei Leitungen, d. h. ADR00 von dem E/A-Adreßdekoder 522 und E/A RD (Lesen E/A). Jedes Tor, welches ein E/A-Adreßsignal empfängt, empfängt weiterhin entweder ein E/A RD-Signal oder ein E/A WR-Signal (E/A-Lesen, bzw. E/A-Schreiben), abhängig davon, ob die Torschaltung Eingangsgrößen für den Prozessor 328 liefert oder von diesem Ausgangsgrößen, empfängt.
Die Signale E/A RD und E/A WR werden auf entsprechenden Steuer-Ausgangsleitungen 526 und 528 der bidirektionalen Bustreiber/ ";' Systemsteuerung S08 erzeugt. -Die Einrichtung 508 umfaßt weiterhin zwei Ausgangs-Steuerleitungen 530 - 532, auf denen Signale SPEICHER LESEN ttnd SPEICHER SCHREIBEN erzeugt werden. Die Leitung SPEICHER LESEN ist mit Freigabe-Eingängen der ROMs 502 und der RAMs 504 verbunden, um zu ermöglichen, daß dort gespeicherte Daten auf den Transferbus 514-» bzw. 512 gegeben rsxden. i)io Leitung SPEICHER SCHS3I35ir 532 ist mit einem anderen Freigabe-Eingang der RAMs 504- verbunden, um diese anzustoßen, in eine adressierte Speicherstelle Daten zu laden, welche auf
809835/0873 " ^Tj ·
dem Transferbus 512 anstehen.
Die Einrichtung bidirektionaler Bustreiber/Systernsteuerung ist selbst gesteuert, was die Steuersignale E/A ED, E/A WR, SPEICHER LESEN, SPEICHER SCHREIBEN anbelangt, die sie in irgendeinem Taktzyklus erzeugen sollte, und was die Daten in der Einrichtung 508 anbelangt, die auf den Transferbus 506 zum Zuführen zu dem Mikroprozessor 500 oder auf den Transferbus 505 zum Beaufschlagen des Datenbusses J28 geladen v/erden. Eine derartige Steuerung der Einrichtung 508 wird durch den Mikroprozessor 500 durch entsprechende Steuerleitungen 534- (es ist nur eine angedeutet) bewirkt.
Verschiedene Tore (ports), die Daten zu dem Prozessor 528 liefern und Daten von diesem über den Datenbus 362 empfangen, wurden oben bereits in Zusammenhang mit Fig. 10 erläutert. Zwei weitere Tore sind in Fig. 11 gezeigt. Es sind dies ein Sequenz-Statustor 536 und ein Sequenz-Steuertor 538.'
Das Sequenz-Statustor 536 ist ein Eingangstor, welches durch ein Signal ADR 02 (R) freigegeben wird, d. h., die Signale ADR02 lind E/A RD werden in dem Tor intern UND-verknüpft. Auf diese Weise freigegeben, werden die an entsprechenden Eingängen des Tores 536 anstehenden Signale in das Tor geladen und auf den Datenbus 332 zur Übertragung zu einer entsprechenden Speicherstelle in den RAMs 504- gegeben. Diese· Speicherstelle ist in einem solchen Fall durch ein entsprechendes Adreßsignal auf den Leitungen A00-A15 adressiert.
D1.· o3 2uen2-3t;atu3t;or 536 besitzt: sechs aktiva Eingange (Bits 0-5). Ein erster Eingang (Bit 0) empfängt ein Signal KAPSEL AUS, welches den Zustand wahr hat, wenn in die Einheit 0 des Plattenlaufwerks 10 keine Kapsel 28 eingelegt ist. Ein entsprechender Sensor (nicht gezeigt), der in der Lage ist, das NichtVorhandensein einer Kapsel 28 festzustellen, ist in dem Plattenlauf- -.;srl·: vorgesehen, dieser Sensor erzeugt das Signal 5LAr£31 AU3 immer dann, wenn nach dem Start der Platteneinheit 10 keine
809835/0873
Kapsel 28 eingelegt wurde.
Ein zweiter Eingang (Bit 1) des Sequenz-Statustores 536 empfängt ein Signal AC AUS (Wechselspannung aus). Dieses Signal wird durch eine entsprechende mit der Wechselspannungsquelle verbundene Spannungs-Detektorschaltung (nicht gezeigt) erzeugt, wenn ein Wechselspannungs-Aus- oder -Abfall eintritt. Ein dritter Eingang (Bit 2) des Tores 536 empfängt eil Signal START-SCHALTER. Dieses Signal wird durch den START/STOP-Sehalter 306 (Fig. 1) erzeugt, wenn dieser Schalter in die Stellung START gebracht wird. Ein vierter Eingang (Bit 3·) des Tores 536 empfängt ein Signal KLAPPSiTSCHALTER. Dieses Signal wird durch einen entsprechenden auf der Platteneinheit 10 montierten Schalter (nicht gezeigt) erzeugt, wenn die Frontklappe 24- geschlossen ist.
Ein fünfter Eingang (Bit 4·) des Sequenz-Statustores 536 empfängt ein Signal ZEITGABE SEKTOR. Dieses Signal wird für verschiedene "Zeitsperren"-Operationen verwendet, die von dem unten beschriebenen Programm verwendet werden. Das Signal ZEIT-GABE SEKTOR wird durch ein Sektor-Flip-?lop 54-0 erzeugt, wenn dieses gesetzt ist. Bas Flip-Flop 54-0 wird bei Erhalt eines Signals AUSGEWÄHLTER SEKTOR an seinem Takteingang (sein Dateneingang, ist auf hohes Potential festgelegt) gesetzt. Das Signal AUSGEWÄHLTER SEKTOR ist entweder das Signal SEKTOR-MARKE-0 oder SEKTOR-MARKE-1. Die letztgenannten Signale werden als Eingangssignale an eine Sektorindex-Auswahllogik 54-2 gelegt, die eines der Signale in Abhängigkeit van dem verwendeten Plattenlaufwerktyp auswählte Besitzt das Plattenlaufwerk keine ortsfesten Platten, d. h., wird die Einheit 1 nicht verwendet, dann üd&Tjai; da^ Sigrxal 2Έ22OR-liA-SE-jö das Flip-Flop 540. Besitzt das Plattenlaufwerk wenigstens eine ortsfeste Platte, dann werden die Signale SEKTOR-MARKE-I der Logikschaltung 54-2 über entsprechende Leitungen 4-4-Ja und 4-4-3c von den Spurschaltungen 330 zugeführt. Ein Signalimpuls SEKTOR-MRKE-0 erscheint bei .jedem Sektor einer austauschbaren Platte für die Einheit 0, während ein Signalimpuls SLKTGR-HARKE-I während Jedes Sektors einer ortsfesten Platte für die Einheit 1 erzeugt wird. Die
809835/0873
spezielle Weise, in der diese Signale erzeugt werden, wird vreiter unten in Zusammenhang mit den Fig. 18 und 19 erläutert.
Der sechste und letzte aktive Eingang (Bit 5) cles Sequenz-Statustores empfängt ein Signal ZEITGABS INDEX. Auch dieses Signal wird für verschiedene "Zeitsperren"-Operationen verwendet, die von dem Programm ausgeführt werden. Bas Signal ZEITGABS INDEX wird durch, ein Index-Flip-Flop 544 erzeugt, wenn dieses gesetzt wird. Das Flip-Plop 5^ wird bei Erhalt eines an seinem Takteingang (sein Dateneingang liegt fest auf hohem Potential) empfangenen Signals AUSGEWÄHLTER TSJSEL gesetzt. Bas Signal AUSGEWÄHLTER INDEX wird durch die Auswahlschaltung 5^-2 erzeugt, und es handelt -sich entweder um das Signal INDEX-MARKE^ oder INDEX-HARKE-1 gemäß dem oben erläuterten Auswahl schema. Die Signale INDEX-MARKE^ und IliD3X~MARKS-1 werden der Logikschaltung 5^-2 über entsprechende Leitungen 443o und 443d von den Spurschaltungen 330 zugeführt. Sin Signalimpuls INDEX-MARKE^ tritt während jeder vollständigen Umdrehung einer in einer Kapsel befindlichen Platte auf, während ein Signalimpuls INDEX-MARKE-1 während jeder vollständigen Umdrehung einer ortsfesten Platte auftritt. Die Art der Erzeugung dieser Signale wird ebenfalls weiter unten anhand der Fig. 18 und 19 erläutert.
Im folgenden soll das Sequenz-Steuertor 538 erläutert werden. Ss wird durch ein Signal ADR 02 (W) (d. h. das Auftreten der Signale ADR 02 und E/A WR), freigegeben, um das Sequenz-Steuerbyte auf dem Datenbus 362,' in dem Tor zu laden, damit die acht Bits an entsprechenden Ausgängen der Torschaltung Z-XL- 7erf".IiVUTjLg stallen. Ein srater Ausgang (Bit 0) stellt ein Signal ÜBERGANGS-LAMPEN AUS dar, welches den Wert wahr hat, wenn ein Abschalten der Übergangs-Lampe 308 auf der Frontplatte 26 der Einheit 10 gewünscht wird. Dies bedeutet, daß das Signal ÜBERGAIiTGS-LAIffEN AUS an eine entsprechende Schaltungseinrichtung (nicht gezeigt) geleitet würde, welche den Zustand der übergangslasipa 3^S steuere.
809835/0873
Ein zweiter Ausgang (Bit 1) des Sequenz-Steuertores 538 stellt ein Signal KrAPPEN-SOLEFOID VERRIEGELT dar, welches den Wert wahr hat, wenn gewünscht wird, die Frontklappe 28 durch Aktivieren einer elektromagnetischen Verrieglungseinrichtung (nicht gezeigt) zu verriegeln. Hierzu wird das Signal KLAPPEN-SÖLENOID VERRIEGELT an die Solenoid-Verrieglungseinrichtung gesendet. Ein dritter Ausgang (Bit 2) des Tores 538 stellt ein Signal SERVOSTEUERUNG dar, das wahr ist, wenn gewünscht wird, von einem Zustand, in dem der Kopf zurückgezogen ist, umzuschalten in einen Zustand, in dem eine Kopfpositionierung durch Servosteuerung erfolgt; diese Zustände werden weiter unten ausführlich "beschrieben.
Ein vierter Ausgang (Bit 3) des Tores 538 stellt ein Signal START BÜRSTENZIKLUS dar, welches wahr ist, wenn gewünscht wird, einen Platten-Bürstenmotor (nicht gezeigt) zu "beaufschlagen, um ihn in Gang su setzen. Der vierte Ausgang wurde dann mit den Bürstenmotor-Steuerschaltungen (nicht gezeigt) verbunden. Ein fünfter Ausgang (Bit 4-) des Tores 538 stellt ein Signal PEHLSRLAMPE dar, welches wahr ist, wenn gewünscht wird, die Fehleranzeige-Lampe 322 auf der Frontplatte 25 anzuschalten. Das Signal FEHLERLAMPE würde somit zu einer entsprechenden Steuerschaltung (nicht gezeigt) für die Lampe 322 geleitet.
Ein fünfter Ausgang (Bit 4) des Sequenzo-Steuertores 538 stellt ein Signal SPINDEL-ANTRIEBSSTEUERUNG dar, welches wahr ist, wenn gewünscht wird, den Spindelmotor 58 anzuschalten. Somit ist das Bit A über eine Leitung 546a mit dem Spindelantrieb 304-(s. Fig. 9) verbunden, der den Motor 53 beinhaltet. ±jar sechste Ausgang (Bit 5) des Tores 538 stellt ein Signal SPINDELBREMSE dar, das wahr ist, wenn gewünscht wird, eine Spindel-Bremsschaltung (nicht gezeigt), die in dem Spindelantrieb 30^ enthalten ist, anzuschalten. Somit wird der Bit-5-Ausgang auf öiner Leitung 5;+6"b dem Spindelantrieb 304- zugeführt.
Der achte und letzte Ausgang (Bit 7) des Tores 538 stellt ein
B09836/0873 -^
Signal PIALTKM dar, welches wahr ist, wenn gewünscht wird, den Servo-"Motor" am Abschalten zu hindern. In Wirklichkeit sind zwei Servo-"Motoren" vorhanden, und zwar jeweils einer für jede Einheit in dem Plattenlaufwerk und jeder wird bestimmt durch die elektromagnetischen Anordnungen 154-(Fig. 6). Das Signal HALTSIT wird somit an das Servo-Steuerungssystem 164- über eine Leitung 5^Sa (Fig. 9) geleitet.
Y. Positionswandler-Vorrichtung;
Im folgenden wird Bezug genommen auf Fig. 12, in der die Positionswandler-Vorrichtung 352 für die Einheit 0 und die Positionswandler-Vorrichtung 33^- für die Einheit 1 dargestellt sind. Die Vorrichtung 332 enthält einen phasenempfindlichen Wandler, welcher eine Skala 550 mit einem Paar von räumlich um 90° phasenverschoben angeordneten Windungen 552 und 55^ und einen eine einzelne Windung umfassenden Gleiter 556 aufweist. Obschon in Fig. 12 die Skala 0 und der Gleiter 0 separat dargestellt sind, befinden sie sich jedoch, tatsächlich physikalisch nebeneinander, wobei die Skala 0 ortsfest auf dem Rahmen des Piattenlaufwerks 10 und der Gleiter 0 auf der Schlittenanordnung 72 der Einheit 0 angeordnet sind. Eine derzeitig bevorzugte Skala und ein bevorzugter Gleiter entsprechend der Skala 550 und dem Gleiter 556 sind in der Parallelanmeldung (eigenes Aktenzeichen D/764-91) eingereicht im Namen von Louis G. Gitzendanner, mit dem Titel IMPROVED IiTDUCTIVE TRANSDUCER beschrieben.
Gemäß einem phasenempfindlichen Wandler wird ein Paar sinust'ÖT'inigür, 'ra 90' phasenverschobener Signale (aiii und COS) auf die Wicklungen 552 und 55^· über ein entsprechendes Paar von Treibern 553 und 560 gegeben. Die Sinus- und Kosinus-Signale können von einem herkömmlichen 90°-Phasenverschiebungs Oszillator (Quadratur-Oszillator) 592 stammen. Demnach wird ein Signal in der Windung des Gleiters 556 erzeugt, welches eine konstante ipitsenaciplitude und eine kcnst&_at-3 i'requans aufweist, das jedoch in der Phase bezüglich der Ausgangsgrößen
809835/0873
des Oszillators 592 variabel ist, in Abhängigkeit von der relativen horizontalen Position von Skala und Gleiter. Dieses phaseninodulierte Aus gangs signal von dem Gleiter 556 wird durch einen Verstärker 562 verstärkt und dann durch einen Recht— eckumformer 564- einer Demodulatorschaltung zugeführt.
Die Demodulatorschaltung enthält einen Vergleicherteil und einen Integratorteil. Insbesondere umfaßt der Vergleicherteil ein Paar EXKLUSIV-ODER-Glieder 566 und 568. Das Ausgangssignal des Rechteckumformers 564 wird den ersten Eingängen jedes dieser Verknüpfungsglieder zugeführt. Ein zweiter Eingang des Gatters 566 empfängt das von einem Rechteckumformer 570 in Rechteckform gebrachte Sinus-Signal und der zweite Eingang des Gatters 563 empfängt das durch einen Rechteckumformer 572 verarbeitete Kosinas-Signal. Die Ausgangsgrößen der Reenteckumformer 570 und 572 werden darüberhinaus entsprechenden Eingängen eines weiteren SXKLUSIV-ODSR-GIiedes 574 zugeführt.
Der Ausgang des Gatters 566 wird einem Eingang eines Vergleicher-Verstärkers 576 zugeführt, während der Ausgang des Gatters 563 mit einem Eingang eines Vergleicher-Verstärkers 578 verbunden ist. Ein aweiter Eingang der beiden Verstärker 576 und 578 ist mit dem Ausgang des Gatters 576 und mit einem ein RC-Glied aufweisenden Integrator verbunden. Das Ausgangssignal des Gatters 574 dient als Referenzgröße zum Symmetrieren jedes der Ausgangssignale der Verstärker 576 und 573 um Null, wobei diese Ausgangssignale vorzugsweise dreieckförmige Positionssignale T$ und BJZT sind, die um 90° phasenverschoben sind. Diese zwei Signale werden auch durch entsprechende Negatoren odsr Iiivarter 5'5O und 532 geschickt, -:a zwei -zusätzliche Signale ~Ki5 und BjJ zu erhalten. Spezielle Einzelheiten der soweit beschriebenen Schaltungseinrichtungen können aus der Parallelanmeldung (eig. Aktenzeichen D/76494) eingereicht im Namen von James 0. Jacques und Robert D. Carlson mit dem Titel IMPROVED INDUCTIVE TRAITSDUCER entnommen werden.
Die vier in Bezug aufeinander phasenverschobenen Signale A0,
8 09835/0873
ΒΛΟ ORIGINAL
B0 υ.ηά Β0 werden an entsprechende Eingänge eines Positionssignal-Umwandlers 584· und an entsprechende Eingänge eines Geschwindigkeitssignal-Umwandlers 586 gegeben. Der Umwandler 534· umfaßt herkömmliche Schaltungsanordnungen, welche die vier anstehenden Eingangssignale umwandeln, um ein sägezahnförmiges Positionssxgnal LIN 0 zu erzeugen, welches durcli einen Verstärker 588 verstärkt wird und eine Periodendauer hat, die dem Abstand zwischen zwei benachbarten Spuren auf den Platten -16a bis I6d entspricht. Vier Perioden des Positionssignals LIlT 0 sind gleich einer Periode jedes der Positionssignale 101 TjS1 B0 und BJ3". Der Umwandler 534- erzeugt weiterhin herkömmliche zusammengesetzte Signale C0 und D0, mit denen bestimmt wird, wenn ein Spurzentrum gekreuzt oder überschritten itfird. Die Signale C0 und D0, sowie das Signal- LIN 0 können in der Amplitude und Phase selektiv um einen vorbestimmten Betrag durch das Signal WANDEES-0-ST3UEHUliG, welches einem Eingang des Umwandlers 534- von den Spur schaltung en 330 über eine Leitung 535 zugeführt wird, verschoben werden. Der Zweck einer solchen Verschiebung wird weiter unten erläutert. Weitere Einzelheiten der allgemeinen Eigenschaften der Signale C0 und D0 und ein beispielhafter Positionssignal-Umwandler sind in der US-Patentschrift 3 839 665 beschrieben.
Der Geschwindigkeitssignal-Umwandler 586 umfaßt ebenso herkömmliche Differenzierungs- und Umwandlungs-Sehaltungseinrichtungen zum Differenzieren der vier Positionssignale A0, A^, B0 und B^, die an seinen Eingängen anstehen, und zum Umwandeln der differenzierten Signale. Das sich ergebende Signal GSoCH 0 wird durch einen Verstärker 590 verstärkt ·\:\Λ \.3t r~iorüseatatiy für die tatsächliche Geschwindigkeit des Gleiters 556 relativ zu der Skala 550 und somit für die Geschwindigkeit der Schlittenanordnung 72 relativ zu dem ■ Rahmen des Plattenlaufwerks 10.
Die Wandlervorrichtung 334- ist in jeder Hinsicht identisch ".;io die '.f3ndlerv0rrich.vj.rL,?; 33'5 aufgebaut, und es wex\ien dieselben Bezugszeichen (gestrichen) verwendet. Ein Signal WAlIDLEH-I-STSiJSRCJIiG wird an einen Eingang des Positions-Wandlers 584-'
809835/0873
gelegt und erfüllt den gleichen Zweck wie das oben angesprochene Signal WAiTDLER-0-STEUERUIJG. Das Signal WAiiDLEH-1-STEUSSUIiG-wird über eine Leitung 587 von den Sparschaltung en 330 zugeführt.
Wie in Fig. 12 zu sehen ist, werden die Positionssignale A0 und A1 jeweils einem Fulldurchgangs-Detektor 59"I5 bzw. zugeführt. Diese Detektoren umfassen herkömmliche Schaltungsanordnungen zum Erzeugen von Ausgangssignalen A0 < 0 und A1 < 0, wenn die Signale A0 und A1 einen Spannungspegel unter dem Wert Null haben. Die Signale A0 0 und A1 ^ 0 werden auf entsprechenden Ausgangsleitungen 595& und 597a den Spurschaltungen 33O zugeführt; ihr Zweck wird weiter unten erläutert .
YI. Servosteuerungssysteme
Im folgenden wird Bezug genommen auf Fig. 13, in der die Servosteuerungssysteme 194- beschrieben werden. Zu Beginn jedoch soll festgestellt werden, daß es zwei identische Servosteuerungssysteme 194- gibt, und zwar eines für jede Einheit des Plattenlaufwerks 10. Folglich werden die speziellen Schaltungsteile dieser Systeme unter Bezugnahme auf das allgemeine Blockdiagramm in Fig. 13 beschrieben.
In Fig. 13 umfaßt jedes Servosteuerungssystem einen Spurkreuzungs-Taktgeber 600, welcher die Spurkreuzungs-Signale C und D, die von dem entsprechenden Positions-Umwandler 584- oder 55V erseusrt werden, empfängt. Die Signale 00 und £0 werden auf Leitungen 602a und 602b von dem Positions-Umwandler 584- an entsprechende Eingänge des Spurkreuzungs-Taktgebers für die Einheit 0 gelegt. Die Signale C1 und D1 werden auf Leitungen 604a und 604-b an entsprechende Eingänge des Spur-Kreuzungs-Taktgebers 600 für die Einheit 1 gegeben. Jeder Takt- ;;ebsr 600 arbeitet in bekannter V/si se, um auf einer Leitung 60 c jedesmal dann einen Zählimpuls zu erzeugen, wenn die Köpfe der entsprechenden Kopf-Schlitten-Anordnung eine Spurbegrenzung
80 9 8 3 5/0873 bad original
kreuzen oder überschreiten, was bestimmt wird durch Vergleichen der digitalen Positionssignale C und D. Einzelheiten eines beispielhaften 'Taktgebers 600 finden sich in der US-Patentschrift 3\·839 665.
Jedes Servosteuerungssystem 194- umfaßt ferner einen Abwärtszähler 608. Der Abwärtszähler besitzt einen 8-Bit-Bateneingang, der mit dem Datenbus 362 zum Empfangen eines 8-Bit-Kodes verbunden ist; dieser Kode ist repräsentativ für die halbe Entfernung, welche die entsprechende Kopf-Schiitten-Anordnung zurücklegen muß, damit jeder auf ihr angeordnete Kode von einer Spurstelle, in welcher er sich anfangs befindet (d. h., der tatsächlichen Position) zu einer anderen Spurstelle, über welcher er angehalten werden soll (d. h., die gewünschte Position) bewegt wird. Dieser 8-Bit-Kode soll im folgenden als 1/2 DTT (i/2 zurückzulegende Entfernung, 1/2 distance-to-travel) bezeichnet werden. Dieser Kode wird in den Abwärtssähler 60S nach Erhalt eines Ladekommandos X von dem Prozessor 328. geladen; bei diesem Signal X handelt es sich entweder um das Signal ADR 05 (V) für die Einheit 0 oder ADH 08 (¥} für die Einheit 1, wie in der in Fig. 13 dargestellten Tabelle.zu sehen ist. Der Abwärtszähler 608 wird beim Auftreten .jedes Taktsignals auf der Leitung 606 um einen Zählschritt vermindert, wobei die Leitung 606 mit dem Takteingang des AbwärtsZählers 608 verbunden ist. Der Kode 1/2 DTT auf dem Datenbus 362 löst eine Kopf-Positionierungs-Operation aus, bei der es sich entweder um eine Suchoperation (Positionierung über einer der Spuren 0-4-29 zum Lesen oder Schreiben von Daten) oder um eine Rückstell-Operation (Position über der Spur 0) handelt.
Der Ausgang des Abwärtszählers 608, der dessen 35TuIIbedingung anzeigt, ist mit einem Auf/Ab-Schalter 610 verbunden. Wenn der Abwärtszähler 608 bis auf ITu]-I herabgezählt hat, was anzeigt, daß die Köpfe des entsprechenden Schlittens die Hälfte der notwenidgen Entfernung von der tatsächlichen zu der gewünschten Position suriickgslegt haben, wird der Schalter G10 ceeetst. Ler
BAD ORIGiNAL 809835/0873
Ausgang des Schalters 610 ist mit den Zählrichtungs-Steuereingang eines Aufwärts/Abwärts-Zählers 612 verbunden, welcher durch das Taktsignal des Taktgebers 600 über die mit seinem Takteingang verbundene Leitung 606 getaktet wird. Wenn der Ausgang des Schalters 610 falsch ist (erste halbe Entfernung), wird der Aufwärtszähler 612 bei jedem Taktimpuls erhöht. Wird andererseits das Ausgangssignal des Schalters 610 wahr (Abwärtszähler 608 hat bis auf Null heruntergezählt), so wird der Auf viärt s/Abwärt s-Zähl er (der nun einen Zählerstand beinhaltet, welcher der Hälfte der anfänglich zurückzulegenden Entfernung entspricht) bei Jedem Taktimpuls vermindert. Das 8-Bit-Ausgangssignal des Aufwärts/Abwärts-Zählers 612 wird einem Tabellen-ROM 617 zugeführt; der Zweck wird weiter unten erläutert. An dieser Stelle jedoch sollte bemerkt werden, daß die sieben höchstwertigen Bits über einen Bus 614 durch eine Reihe von sieben ODER-Gliedern 613 und das geringstwertige Bit auf einer Leitung 615 direkt dem ROM 617 zugeleitet werden.
Uachdem der 1/2 DTT-Kode von dem Prozessor 328 auf den Datenbus 362 gegeben vrurde, wird ein Positionierungskommando auf den Bus 362 gegeben, welches die Art der gewünschten Kopf-Positionierungsfunktion angibt, z. B. Rückstellen, Zurückziehen, Laden (restore, retract, load) usw. Soll eine der drei letztgenannten Funktionen ausgeführt werden, so ist ein vorbestimmtes Bit des Kommando-Kodes stets eine binäre "1", und dieses Bit wird über eine Leitung 623 dem Dateneingang eines RRL-Schalters 624 zugeführt. Weist die Dateneingabe einen hohen Pegel auf, so wird der Schalter 624 nach Erhalt eines Setzkomiuandos Z, welches dem Takteingang zugeführt wird, gesetzt. Das KoiaccncLo Z ist ein Steuersignal ADR 06 (W) , welches ~τοζι dem Prozessor 328 über eine Leitung 5^Se (Einheit 0) zugeführt wird, oder aber ein Steuersignal ADR 09 (V/), das vom Prozessor über eine Leitung 5^8f (Einheit 1) zugeführt wird. Im gesetzten Zustand wird der Ausgang des Schalters 674 "high" und erzeugt somit ein Signal RÜCKSETZEN auf einer Leitung 625, die zu den R:'cksetzeir.~ärigen der Zähler 603 und 61? sum RüeVisatzeri derselbe: führt. Der Grund, warum diese Zähler zurückgesetzt werden, wenn eine Rückstell-, Zurückzieh- oder Kopf-Lade-Funktion ausgeführt
809835/0873 bad orsssn;«-
werden soll, wird weiter unten ausführlich erläutert.
Der nächste auf den Datenbus 362 gegebene Kode, um eine Positionierungsoperation in Gang zu setzen, ist ein Verlauf-Index-Kode. Dieser Kode ist ein 8-Bit-Kode und wird in ein Verlauf-Index-Register 622 "bei Erhalt eines Lade-Kommandos Y gespeichert; dieses Kommando Y ist entweder ein Steuersignal ADH 03 (W) auf der Leitung 548c (Einheit 0).oder ein Steuersignal ALR 10 (W) auf der Leitung 5^8d (Einheit 1) vom Prozessor 328. Der (Geschwindigkeits-)Verlauf-Index-Kode wirkt mit dem Ausgang des Aufwärts/Abwärts-Zählers 612 beim Adressieren des PuCIi 61? susammen. Die sieben unteren (niedrigstwertigen) Bits des Yerlauf-Index-Kodes werden von dem Register 622 über einen Bus 620 an entsprechende Eingänge der sieben ODSR-Glieder 618 gelegt. Das achthöchste Bit wird direkt über eine Leitung 621 an das ROM, 61? geleitet.
Bevor die speziellen Eigenschaften, die Ausgestaltung und der Zweck des ROMs 617 beschrieben werden, soll festgehalten werden, daß der ihm augeführte Adreß-Eingangskode ein 10-Bit-Kode ist. Das niedrigste Bit wird über eine Leitung 615 von dem Aufwärts/Abwärts-Zähler 612 zugeführt, das höchste Bit auf einer Leitung 619 von dem Auf/Ab-Schalter 610 (d. h., das Signal ABWlRTS). Das zweithöchste Bit wird über eine Leitung 621 von dem Verlauf-Index-Register 622 zugeführt, während die übrigen Bits auf einem Bus 616 von den Ausgängen der ODSR-Glieder 618 übertragen werden..
In Fig. 22 sind die acht 3its des Ausgangs des Aufwärts/Ab-'.-rHrts-Zählers nit C-0 bis G-7 bezeichnet, während die acht Bits des Verlauf-Index-Register-Ausgangs mit T-0 bis T-7 bezeichnet sind. Das Bit C-0 wird direkt dem Eingang 0 des ROM 617 auf einer Leitung 615 zugeführt. Die Bits C-1 und T-0 werden an ein ODER-Glied 618a gegeben, dessen Ausgang über eine Leitung 614-a mit dem Eingang 1 des ROM 617 verbunden ist- Ide Bits C-2 und T-1 werden über ein ODER-Glied 618b geleitet, dessen Ausgang über eine Leitung 614-b dem
809835/0873
Eingang 2 des ROH zugeführt wenden- Die Bits C-3 und T-2 werden an ein ODER-Glied 618 gegeben, dessen Ausgang über eine Leitung 614c mit dem Eingang 3 des ROM verbunden ist. Die Bits C-4 und T-3 x^erden den Eingängen eines ODER-Gliedes 618d zugeführt, dessen Ausgang wiederum über eine Leitung 6i4d mit dem Eingang 4 des ROM 617 verbunden ist. Die Bits C-5 und T-3 werden an entsprechende Eingänge des ODER-Gliedes 6i8e gegeben, dessen Ausgang über eine Leitung 6i4e mit dem Eingang 5 des ROM 617 verbunden ist. Die Bits C-6 und T-5 werden den Eingängen eines ODER-Gliedes 6i8f zugeführt, der Ausgang dieses ODER-Gliedes ist über eine Leitung 6i4f mit dem Eingang 6 des ROM 617 verbunden. Schließlich werden die Bits C-7 und T-6 an entsprechende Eingägne eines ODER-Gliedes 618g gelegt, dessen Ausgang über eine Leitung 614g mit dem Eingang 7 des ROM verbunden ist. Der Eingang 8 des ROM 617 ist direkt mit dem Verlauf-Index-Register zum Empfang des Bits T-7 über die Leitung 621 verbunden, der Eingang 9 des ROM 617 ist direkt mib'-dem Ausgang des Auf/Ab-Schalters 610 über eine Leitung 619 verbunden.
Ua die Bedeutung der zehn Bit umfassenden, dem ROM 617 zugeführten Eingangsadresse, die durch den Ausgang des Aufwärts/ Apwärts-Zählers 612, den Auf/Ab-Schalter 610 und den Ausgang des Verlauf-Index-Registers 622 gebildet wird, zu verstehen, ist es zuerst notwendig, die Beschaffenheit and den Aufbau des ROM 617 zu diskutieren. Der ROM 617 ist in zwei Hälften unterteilt. Eine Hälfte ist der ersten Hälfte irgendeiner bei der Kopf-Positionierungs-Operation zurückzulegenden Entfernung zugeordnet,die andere Hälfte der zweiten Hälfte der zurückzulegenden Entfernung. "Jade Hälfte des ROIi ist weiterhin, in mehrere Segmente unterteilt, wobei jedes Segment eine oder mehrere Speicherstellen enthält. Jedes Segment ist einem besonderen Kommando-Geschwindigkeitsprofil zugeordnet und definiert dies durch die in den betreffenden Speicherstellen gespeicherten Werte.
Als Beispiel für die bevorzugte Ausführungsform sei angegeben,
809835/0873 1^0 ci^GiHAL
daß das ROM 617 aus einem 1024 χ 8-Bit-ROM "besteht, in welchem die Speicherstellen 0-511 der ersten Hälfte einer zurückzulegenden Entfernung zugeordnet sind, während die Speicherstellen 512 - 1023 der zweiten Hälfte der zurückzulegenden Entfernung zugeordnet sind. Es gibt vorzugsweise neun verschiedene Geschwindigkeitsprofile, die in dem Eom gemäß der anfänglichen, bei irgendeiner Positionierungs-Operation zurückzulegenden Entfernung definiert sind. So zum Beispiel könnte ein gewünschtes Geschwindigkeitsprofil, das zu einer Kopf-Positionierung zwischen 256 und 430 Spuren gehört, seine erste Hälfte (anwachsende Geschwindigkeit - Aufwärtsneigung) in der ersten Hälfte des ROH in einem ersten Segment definiert sein, welches die Speicherstellen 0 - 215 umfaßt. Die zweite Hälfte des Profils (abnehmende Geschwindigkeit - Abwärtsneigung) würde dann in den Speicherstellen 726 -512 der zweiten Hälfte des ROM definiert sein.
Nachstehende Tabelle Il veranschaulicht die bevorzugten neun Geschwindigkeitsprofile, was die Speicherstellen und die Beziehungen zu der zurückzulegenden Entfernung (BTT) anbelangt:
TABELLE Il - GESCHWIEiBIGKEITS -PROFILE IM ROM
Ge s chw.-Pro fil BBT Speicher Aufwärts- Speicher'Abwärts-
Neigung Feigung
1 256-430 0-215 726-512
2 128-255 256-383 895-768
3 64-127 384-44? 959-896
4 32-63 448-479 991-960
5 16-31 4S0-4-95
6 8-15 496-503 1015-1008
7 4-7 504-50? 1019-1016
8 2-3 508-509 1021-1020
9 1 510-510 1022-1022
Es muß betont werden, daß die zurückzulegende Entfernung (DDT) der anfängliche Entfernungsunterschied zwischen der tatsächlichen
80 9835/0873
und der gewünschten Position ist. Jede einzelne der 1024· Speicherstellen (von denen jede ein 8-Bit-Wort speichert) kann durch einen einzigartigen 10-Bit-Adreßkode adressiert werden, wie oben "bereits erwähnt wurde, und enthält in binärer digitaler Form die gewünschte Bewegungsgeschwindigkeit für den noch zurückzulegenden Echtζext-Abstand, wie er durch den in dem Aufwärts/Abwärts-Zähler gespeicherten Wert festgelegt Dieses Konzept wird weiter unten ausführlich beschrieben.
Die erste Hälfte des SOH 617 (Speicherplätze 0-511) werden adressiert, wenn das höchstwertige Bit (Signal ABWÄRTS) falsch ist, was während der Zeit der Fall ist, in welcher der 1/2-BTT-Kode in dem Abwärtszähler geladen ist und auf Null heruntergezählt wird. Erreicht dieser Zähler den Wert Null, d. h., ist die erste Hälfte der zurückzulegenden Entfernung durchschritten, dann wird das Signal ABWÄRTS "high", wodurch die zweite Hälfte des ROM, die zu den Hälften der Abwärt s-ITeigung der Gesctnarindigkeits-Profile gehört, adressiert.
Sin spezielles- der neun Geschwindigkeits-Profile, auf das in dem ROM zugegriffen wird (das erste aus der ersten Hälfte des ROM, wenn das Signal ABWÄRTS niedrig ist und dann aus der zweiten Hälfte, wenn das Signal ABWÄRTS "high" ist) wird bestimmt durch den acht Bits umfassenden Verlauf-Index-Kode aus dem Register 622. Nochmals Bezug nehmend auf Fig. 22 heißt dies, daß neun unterschiedliche Segmente in jede Hälfte des ROM, die ein entsprechendes der neun Geschwindigkeits-Profile speichern, einen einzigartigen Startwert gemäß der obigen Tabelle II besitzen. Der Verlauf-Index-Kode stellt ei-ien Seiher euf das Segment in dem ROM der, auf welches für die speziell durch den Zustand des höchstwertigen Bits, d. h. des Signals ABWÄRTS adressierte Hälfte zugegriffen werden soll.
Bevorzugte (Geschwindigkeits-)Verlauf-Index-Kodes für die neun verschiedenen Geschwindigkeitsprofile sind in der nachstehenden Tabelle III aufgelistet.
80983S/G873
TABELLE III - GESOEWINDIGKEITS-VERLAUF-IiiDEX-KOLES
Geschw.-Profile Verlauf-Kode
1 00000000 j
2 10000000 j
3 11000000
11100000
5
6
7 11110000. j
8 11111000 j
9 11111100 ί
11111110 I
11111111
Wenn demnach der Verlauf-Kode 00000000 ist, so ist die erste dem ROM 617 zugeführte Adresse 0000000000, wodurch der in der Speicherstelie 0 gespeicherte Wert abgerufen wird. Dieser Wert stellt den anfänglichen Startgeschwindigkeits-Pegel dar, der einen aufwärtsgeneigten Teil des gewünschten Geschwindigkeits-Profils ausmacht. Der Aufwärts/Abwärts-Zähler schaltet dann um einen Takt weiter, so daß die nächste Adresse für den ROM 617 den Wert 0000000001 hat. Hierdurch wird auf die Speicherstelle 1 zugegriffen, wodurch der nächste Geschwindigkeits-Pegel abgerufen wird, und so fort. Schließlich ist eine Hälfte der zurückzulegenden Entfernung erreicht, so daß die zweite Hälfte des ROM bei der Speicherstelle 726 adressiert wird (Geschwindigkeits-Profil 1). Die letzte Adresse in dem ROM für das Geschwindigkeits-Profil 1 ist 1000000000, d. h., Speicherstelie 512. Hatte der Verlauf-Kode von dem Register 622 den Viert 11110000 (Geschwindigkeits-Profil 5), 1-3 ".r. :fi.v>. di-3 err-te .'.ilre.r.?v für den EC\I 0111100000, während die letzte Adresse 1111100000 wäre. Ist der Verlauf-Kode 11111111 (Geschwindigkeits-Profil 9), dann gibt es nur zwei mögliche Adressen für jede Hälfte des ROM, d. h., die erste Adresse wäre 0111111110, die nächste 0111111111, die nächste 1111111111 und die'letzte 1111111110.
oben bereits erwähnt wurde, liefert jede adressierte Speicherstelle des ROM 617 ein S-Bit-Wort, welches einen speziellen
$09835/0873
Kommando-Geschwindigkeitspegel definiert, bei dem die entsprechende Kopf-Schiitten-Anordnung die noch zurückzulegende Entfernung durchläuft. Diese 8-Bit-Wörter werden über einen Transferbus 63O entsprechenden Eingängen eines herkömmliehen Digital/Analog-Wandlers 632 zugeführt, der den binären Wert des 8—Bit-Wortes in einen diskreten Spannungspegel umwandelt. Würde man die Zusammensetzung aller Spannungspegel betrachten, die das adressierte Geschwindigkeitsprofil definieren, so stellte sich dieses als eine schrittweise Approximation an optimale Geschwindigkeits-Entfernungs-Kurven für den Anstiegs- und den Abfallteil dar. Dementsprechend wird der analoge Ausgang des D/A-Wandlers 632 an eine herkömmliche Formerschaltung 634- gegeben, welche das Signal so formt, daß die zusammengesetzten Geschwindigkeit-Entfernung-Kurven sich mehr an die optimalen Kurven annähern.
Das Ausgangssignal der Formerschaltung 634 ist ein Signal GESCHWIiTBIGKEITSKOiMANDO, welches verschiedene Spannungspegel "hat, die von dem Wert des dem SOM 617 zugeführten Adreß-Eingangskode abhängen. Das Signal GSSCHWINDIGKEITS-KOMIiAKDO wird auf einer Leitung 636 über einen nicht invertierenden Verstärker 638 auf die Source-Elektrode eines Feldeffekttransistors (FST) 640 gegeben, dessen Drain-Elektrode mit einem Summierpunkt 641 und dann mit einem Summierverstärker 642 verbunden ist. Das Ausgangssignal des Verstärkers 638 wird weiterhin durch einen Inverter 644 der Source-Elektrode eines FET 646 zugeleitet, dessen Drain-Elektrode mit dem Summierpunkt 641 verbunden ist. Die Gate-Elektrode des FET ist mit dem Ausgang eines NAND-Gliedes 648 verbunden, und die Gate-Elektrode des FST 646 ist mit dsoi .A-v.3g3.n3 eines NAND-Gliedes 650 verbunden.
Ein erster Eingang des NAND-Gliedes 648 empfängt ein Signal VOHWlHTS von dem Prozessor 328 auf einer Leitung 548g. Dieses Signal ist "high", wenn der Prozessor bestimmt hat, daß die erforderliche Sclilittenbev.^^un?; in U'ickv/Hrtsrichtung erfolgen soll. Ein zweiter Eingang des NAND-Gliedes 648 empfängt ein
Signal SPSRSEiT yon einem Inverter oder ITe gat or 651. Das Signal ist "high.", wenn das Servosystem 194- in einem Geschwindigkeits-I'Iodus oder -Zustand "betrieben werden soll, im. Gegensatz zu einem Positions-Modus. Beide Betriebsarten werden weiter unten ausführlicher erläutert. An dieser Stelle soll jedoch festgehalten werden, daß, wenn der Aufwärts/Abwarts-Zähler 612 die Süll-Bedingung erreicht hat, ein Signal ITULL über eine Leitung 653 eiern Takteingang eines Sperr-Schalters zugeführt wird. Der Eateneingang dieses Schalters wird auf hohem Potential gehalten, so daß ein hohes Signal NULL den Schalter 655 setzt. Im gesetzten Zustand wird ein hohes Signal SPERREIT am Ausgang erzeugt. Dieses Signal wird den Spurschaltungen 330 über eine Leitung 657 und darüberhinaus einem Negator 651 zugeführt. Der Zähler zählt bei einer halben Spurbreite vom Zentrum der gewünschten Spur auf Hull, und an diesem Punkt wird das Signal SPZRHEN "high", um das Servosystem vom Geschwindigkeits-Zustand in dem Linearsustand umzuschalten.
Weiterhin wird das Signal SPSP1RiN einem Eingang des NAIfD-Gliedes 650 zugeleitet, dessen anderem Eingang ein Signal auf einer Leitung 54-8Ϊ vom Prozessor 323 zugeführt
wird. Das Signal RÜCKWÄRTS erhält hohen Pegel, wenn der Prozessor bestimmt hat, daß die geforderte Bewegungsrichtung vorwärt sgerichtet ist.
Wird während des Geschwindigkeitszustandes der Servo-Operation eine Vorwärtsbewegung angefordert, so wird der Ausgang des NAND-Gliedes 65O wahr und gibt somit den Feldeffekttransistor 646 frei, um das negative Signal GESGHWHTDIGKEIiSEpMMAIIBO dem Sj.;:;::iU)rp\irÜ£t C-I 3'.ii,^rüaren- Wird eine 2Llckvr;.:?t3b3v/'3gu.ar; srl~;3_ fordert, so wird das Verknüpfungsglied 64-0 freigegeben, um das positive Signal GESCHWINDIGKEITSKOfMANDO dem Summierpunkt 64-1 zuzuleiten.
Weiterhin wird sowohl im Geschwindigkeits- als auch im Positions-Zustanü Ceia öuaimierparikt das Gaschvfiii&igkeitssi^iial Gz.-3-Ii £ eier GESCH 1 zugeführt, das von der zugehörigen Wandler-Vorrichtung
B09835/0Ö73
oder 53^ (S1IS* 12) erzeugt wird. Es wird daran erinnert, daß ein Signal GESCH repräsentativ ist für die tatsächliche Geschwindigkeit der positionierten Kopf-Schlitten-Anordnung.
Wie weiterhin aus Fig. 13 hervorgeht, wird ein Positionssignal LIlT 0 oder LIU 1, das durch die zugehörige Wandler-Vorrichtung 332 oder 33^ erzeugt wird, ü"ber die entsprechende Leitung 602c oder 604c einem Positions-Verstärker 654 und einen Eingang eines Such.-Verstärkers 657 zugeführt. Der Such-Verstärker empfängt an einem weiteren Eingang ein Signal SPUSSTSUERIJI1Tg über eine Leitung 652; dieses Signal wird von den Spurschaltungen 330 erzeugt. Wie weiter unten ausführlicher beschrieben wird, wird das Signal SPURSTEUERuIiG für Spurfolge-Zwecke verwendet, d. h. für nachfolgenden Auslauf.
Der Such-Verstärker 657 verstärkt die Differenz zwischen den Signalen LIIn und SPURSTEUERiJwG und führt das korrigierte Signal LIH (d. h. LIlT wird um SPURSTEUERUITG versetzt) der Source-Elektrode eines !Feldeffekttransistors 6p6 zu, dessen Drain-Elektrode mit dem Summierpunkt 641 verbunden ist. Die Gate-Elektrode des IET 656 ist mit dem Ausgang eines Inverters verbunden, dessen Eingang wiederum mit dem Ausgang eines UlTD-Gliedes 662 in Verbindung steht. Sin erster Eingang des UND-Gliedes 662 empfängt das Signal ABWÄRTS von dem Auf/Ab-Sehalter 610 über eine Leitung 664, xvährend ein zweiter Eingang das Signal SPERREN empfängt. Auf diese Weise wird während des Geschxtfindigkeits-Zustandes (SPERSSlT ist niedrig) der FS2 in die Lage versetzt, das Signal LIN dem Summierpunkt 641 während der zweiten Hälfte des auf der Leitung 636 erzeugten Cr.3 3cavinligl-:eit;s~?rofils zu.sufuh.ren., 1- '"-- c^rLci, ν;βυι -la.3 Signal ABWA'RTS "high" ist. Das Überlagern des Positionssignals LIN auf dem Summierpunkt 661 während des Geschwindigkeits-Zustandes stellt eine herkömmliche Technik dar, die bekannt ist unter der Bezeichnung "piecing" und dazu verwendet wird, die Gesch-riridigkeits-Kurve zu glätten.
Der Ausgang des Positions-Verstärkers 654 ist mit der Source-
109836/0873
Elektrode eines FET 653 verbunden. Weiterhin ist mit der Source-Elektrode das Signal SPUSSTEUESUtTG verbunden. Die Drain-Elektrode steht in Verbindung mit dem Summierpunkt 64-1, während die Gate-Elektrode nit der Leitung SPERRElf verbunden ist. Ist demnach das Signal SPSRRSK niedrig (Positions-Betriebszustand), so werden das Signal LIN und das Signal SPUR-STEUSRUITG durch den FET 658 auf den Summierpunkt 64-1 geschaltet. Während des Positions-Zustandes sind die Feldeffekttransistoren 64-0, 64-6 und 676 abgeschaltet, wie man leicht sieht. Somit sind die einzigen am Summierpunkt 64-1 vorhandenen Signale die Signale LIK, GESGH und SPUSSTEUERUiTG. Während des Geschwindigkeits-Betriebszustandes sind die Signale GESCKWIZiDIGKEITSKOrE-IaIiDO, GESCH und SPURSTEUERUrFG die einzigen am Summierpunkt 64-1 während des ansteigenden Teils des Geschwindigkeitsprofils anstehenden Signale, wohinzu das Signal LIH während des abfallenden Teils des Geschwindigkeit 3-Profils zum Zweck des "piecing" kommt, wie oben erläutert wurde.
Der Ausgang des Summierverstärkers 64-2 wird über eine herkömmliche Kompensationsschaltung 666 geleitet, um die Bewegung der zugehörigen Kopf-Schlitten-Anordnung zu steuern. Hierzu wird das Signal SERVOANTRIEB am Ausgang des Kompensators 666 über die Leitung 193 der Schlitten-Treiberschaltung 190 (Fig. 7) in dem zugehörigen Schlitten-Antrieb 3OO oder 302 (Fig. 9) zugeführt. Jedes Servo-Steuerungssystem 194-,welches sowohl im Geschwindigkeits- als auch im Positions-Betriebszustand arbeitet, kann somit als "Zwei-Zustand"-Servosystem ("dual-mode") bezeichnet werden.
VII. Die SOurschaltunken
Im folgenden wird Bezug genommen auf die Fig. 17 bis 20 zum Beschreiben der verschiedenen Spurschaltungen 33C". Wie in Fij. 17 [jezeift ist, vnnf.??33n c!ie 3p-.irc.ehal tunken. Y~0 ein opur-ü^atus-Eingangstor 7C0. Ein erster Eingang (Bit 0) des Tores 7CC euro fängt ein Signal WDL-0-SPUR von einem +_ 1/4--Spur-
809835/0673
SAD C=RiQf
Detektor 702. Das Signal WDL-0-SPüR hat immer dann den Wert wahr, wenn sich die Köpfe 14a und 14b innerhalb 1/4 Spur vom Zentrum einer Spur, auf der die Köpfe positioniert sind, befinden. Der +_ 1/4-Spur-Detektor 702 empfängt an einem Eingang das Signal LiF 0 über die Leitung 602c von den Wandlerschaltungen 332. Ein weiterer Eingang des Detektors 702 empfängt ein Signal WDL-0-STEüERUiTG auf einer Leitung 704 von einem Ausgang einer Wandler-Versetzungs-Steuerschaltung 706. Ein Signal WDL-0-STEUERTJNG wird an einem weiteren Ausgang der Versetzungs-Steuerschaltung 706 erzeugt und über eine Leitung 585 dem Positions-Umwandler 584 (Fig. 12) zugeführt.
Das Signal vv3L-0-3TSUZRülTG ist ein Gleichspannungspegel, der repräsentativ ist für einen gewünschten Betrag einer Versetzung für die Signale G0, D0 und LIF0. Das Signal T/7DL-/-STEUERU1TG ist abhängig von der St euer spannung, die durch den 7ersetzungsintegrator 731^ erfaßt wird, plus der gewünschten Versetzungsspannung, die durch die Steuerung angefordert wird, was durch die Spur-Versetzungskommandos bestimmt wird,- die durch die Steuerung 318 an das Plattenlaufwerk 10 gegeben werden. Die normalerweise durch den Versetzungsintegrator 73^· erfaßte St euer spannung ist diejenige Spannung, die benötigt wird, um die Köpfe 14a und 14b so zu positionieren, daß der Gleichanteil des Signals FEHLERABTASTUNG der Abtast- und Speicherschaltung 718 bei Fichtvorhandensein von Versetzungskommandos, die von der Steuerung 313 an die Einheit 10 gegeben werden, Full ist. Das Signal v/DL-0-STEUERin!TG veranlaßt im wahren Zustand, daß die Signals C£, und LIi; £ sowohl in dar Ar.-plituie aI-3 auu:: in der Phase um einen bestimmten Betrag versetzt werden. Dieser Betrag wird bestimmt durch den Spannungspegel des Signals V/DL-0-STEUERUNG.
Ba das Signal LTIT0 durch daG an den Positions-Umwandler angelegte Signal 71.L-P-SxSUSnUIiG definierten. Betr&j -»ersetze
809835/0873
EAD ORiQfMAL
vrurde, um festzustellen, ob die Köpfe 14a und 14b sich, in einem 1/4 Spur umfassenden Bereich vom Spurzentrura entfernt befinden, muß die durch das Signal VTBLHZJ-S'ISUSSÜITG· eingeführte Versetzung von dem Signal LII,r0 subtrahiert werden. Diese Subtraktion geschieht in dem Detektor 702 als Ergebnis des an dessen zweiten Eingang angelegten Signals V/DL-0-S'I£uZRrJi^G. Es ist möglich festzustellen, wann die Köpfe -14a und 14b sich innerhalb des Abweichungsbereichs 1/4 Spur vom Spurzentrum befinden, da es sich bei dem Signal LIIT0 um ein Sägesahnsignal handelt, dessen Periodendauer dem Abstand zwischen zwei benachbarten Spuren gleicht und bei dem der mittlere Spannungspegel der ',/eile die Spurzentren repräsentiert. Somit ist es durch Verwendung eines entsprechenden Spanriungs-Schwellenwertdetektors möglich festzustellen, wann die Kcpfe 14a und 14b innerhalb "l/4-Bereichs auf jeder Seite des Spurζentrums sind. Da die Spannungs-Schwellenpegel konstant bleiben, ist es notwendig, die durch das Signal '.'/^-0-STSuSRUiTG- eingeführte Versetzung zurückzusubtrahieren.
Ein zweiter Eingang (Bit 1) des Spur-Status-Eingangstoras empfängt ein Signal WDL-I-SPiJH. vom Ausgang eines anderoi+_ 1/4-Spur-Detektors ?O83 der identisch ausgebildet ist wie der Detektor 702. Das Signal WDL-I-SPUR zeigt im wahren Zustand, an, daß die Köpfe 14c bis 14h der Einheit 1 innerhalb eines Bereichs positioniert sind, der jeweils 1/4-Spurbreite auf jeder Seite des Spurzentrums einnimmt. Der Detektor 70S arbeitet identisch iirie der Detektor 702 und empfängt somit an einem Eingang das Signal LIlT 1 über eine Leitung 604c von den v/yndler-Schaltungen 334 und an einem weiteren Eingang ein I:·":.'X 'iZ"L-'*-a~21".l'?.:J~L~-j: :lh-iv ?l^i Leitung ^"0 ν ο λ A;;ä:"u£ einer WDL-I-Versetzungs-Öteuerschaltung 711, die identisch ausgebildet ist wie die Schaltung 706. Ein zweiter Ausgang der Versetzungs-Steuerschaltung 712 führt ein Signal WDL-I-Sl1EUESUIiG über eine Leitung 587 zu dem Positions-Umwandler 534' ; der Zweck dieses Signals wurde oben in Zusammenhang mit dem S/.gnal ':Γ-.1-Ζ-ϊ\1Ί~,.ί;::ζ ur,a das Vu-.-;i::J.Iür Z^ bös;-trieben. I5i.ß spezieile Betriebsweise der Versetzungs-Steuerschaltungen 706 und
809835/0873
wird unten ausführlich beschrieben.
Ein dritter Eingang (Bit 2) des Tores 700 empfängt ein Signal SPURAUSLAUF vom Ausgang eines 8,89 /*· m-Detektors 714-. Dieses Signal ist wahr, wenn ein Auslauf-Fehl er signal (PEHLEEABTASTUIiG) von den Lese/Schreib-Schaltungen ein Spurhalten innerhalb 8,89 jt* m vom Spurzentruni anzeigt. Hierzu wird das Signal PEHLERABTaSTUH-G über eine Leitung 716a von den Lese/Schreib-Schaltungen 336 an einen Abtast- und Speicherschaltkreis 718 geleitet, welcher dann ein solches Signal dem Eingang des +_ 8,89y** m-Detektors zuführt.. Vie weiter unten ausführlich beschrieben wird, ist in dem sechzig Bytes umfassenden reservierten Bereich jedes Spursektors (s. Fig. 21) ein Spurverfolgungs- oder "Auslauf"-Kode gespeichert. Die Lese/Schreib-Schaltungen 336 lesen den Kode am Anfang jedes Sektors innerhalb des sechzig Bjrtes umfassenden reservierten Bereichs. Sin Fehlersignal wird erzeugt, wenn die Köpfe nicht exakt der Spur-Mittellinie folgen. Dieses Pehlersignal ist das oben erwähnte Signal 'FEHLSEABTASTUNG. Der +. 8,89^a m-Detektor umfaßt entsprechende SparLnungs-Schwellenwertschaltungen, um anhand des Spannungspegels des Signals FEHLERABTASTUIiG zu erfassen, wann die gesteuerte Einheit im 8,89 M- m-Bereich vom. Spurzentrum läuft. Einzelheiten eines bevorzugten Spurverfolgungs-Kodes können aus der Parallelanmeldung mit dem Aktenzeichen entnommen werden. Einzelheiten der Schaltungsanordnung, mit der ein derartiger Kode gelesen und ein Signal F3HLSRA3TASTUNG erzeugt werden l:ann, werden unten beschrieben.
Ein vierter Eingang (Bit 3) des Tores 700 empfängt ein Signal SCHUTZBAND. Dieses Signal wird von dem Signal SCHUTZBAND GEFUNDEN (SBG) abgeleitet, welches auf einer Leitung 7i6d von den Lese/Schreib-Schaltungen 336 erzeugt wird (s. Fig. 14-). Das Signal SBG triggert vorzugsweise einen rückstellenden monostabilen Multivibrator (nicht gezeigt), dessen Ausgang das Signal SCHUTZBAND ist. Das Signal SGHÜTZBAND verbleibt so lange auf dem Wert wahr, wie das Signal SBG einmal bei jedem
809835/08 73 BADORlGiHAL
Sektor angehoben wird. Las Signal SBG wird wahr, -/renn ein erster vorb-astimmter Idenbifikations-Ilode, der vorzugsweise ein Kode "nine-eas3.r" (92) ist, in dem sechzig Bytes umfassenden reservierten Bereich jedes Sektors feststellt. Der Kode SE wird in dem reservierten Bereich jedes Sektors vor dem Spurverfolgungs-Kode nur für die Spuren -2 bis -6 und 4-30 bis 435 gespeichert. Diese Spuren zeigen das Schutzband an, welches die 430 Spuren zum Lesen und Schreiben von Daten, d. h. die Spuren 0 - 429, umgibt. Die Schutzbandspuren werden nicht zum Lesen verwendet. Der Grund, warum die Spur -1 keinen Kode 9Ξ gespeichert hat, wird weiter unten Im Zusammenhang mit einer Rückstell-Operation beschrieben. Um die nutzbaren Spuren von den Schutzbandspuren zu unterscheiden, ist ein zweiter unterschiedlicher Identifikations-Kode, vorzugsweise ein "eight-easy"-Kode (SS) in dem sechzig Byte umfassenden Bereich jedes Sektors jeder der Spuren 0 - 429 gespeichert. Der Kode "SZ'! ist ebenfalls in der Spur für Rückstell-Zwecke gespeichert, was noch unten beschrieben wird.
Jedesmal, wenn ein Kode 8Ξ durch die Lese/Schreib-Schaltungen 33*5 gelesen wird, wird ein Signal SSP-SYlTCR erzeugt. Er wird auch auf eine monostabile Kippstufe (nicht gezeigt)gegeben, um diese zu triggern. Der Ausgang dieser Kippstufe ist das Signal DATSNFSLD, welches einem fünften Eingang (Bit 4) des Spur-Status-Eingangstures 700 zugeführt wird. Das Signal DATENFELD ist auf hohem Pegel, wenn die Köpfe der zugehörigen Einheit von irgendeiner der Spuren -1 bis 429 lesen.
Das Tor 700 wird freigegeben, um die anstehenden Eingangssignal bei Erhalt eines vom Prozessor 328 über eine Leitung 720a ^ugoxührc^i Steuersignal ADR 13 \.ä) su. laden. Ilan erkennt, da3 die Bits 5 "bis 7 des Tores 700 nicht benutzt werden. Der Inhalt des Tores 700 wird beim Laden auf den Datenbus 362 zur übertragung zu dem Prozessor 323 geschaltet.
ΓΪ3 Stjurrch-?.!tun~eu JJO umfassen weiterhin ein. Spur-Eingsnsstor 722, weiches drai aktive Eingänge aufweist;. Ein erster eingang (.Bit 5)
809835/0873
empfängt das Signal SPSHHSIi 0 von des Servo-Steuerungssystem 194- für die Einheit 0 über eine Leitung 657a. Sin zweiter Eingang (Bit 6) empfängt das Signal SPERREN 1 von dem Servo-Steuerungssystem 194- für die Einheit 1 auf einer Leitung 657b. Der dritte und letzte aktive Eingang (Bit 7) empfängt ein Signal NEUER SEKTOR, welches grundsätzlich ein Synchronisationssignal für den Prozessor 328 ist, um seine Software-Operationen mit der Umdrehungsgeschwindigkeit der Scheiben 16a - I6d zu synchronisieren. Das Signal NELTER SEKTOR wird entweder durch das auf der Leitung 716c empfangene Signal SEP-SZiTCR oder durch das auf der Leitung 716d empfangene Signal SBG- erzeugt, und zwar immer dann, wenn die Spurschaltung durch ein wahres Ausgangssignal ABTASTER All auf der Leitung 832 freigegeben wird. Lie an dem Spur-Eingangstor 722 anstehenden Eingangsgrößen werden in dieses Tor geladen, wenn ein von dem Prozessor 328 über eine Leitung 72Ob zugeführtes Steuersignal ALR 11 (R) empfangen wird. Diese Eingangssignale werden dann auf den Datenbus 362 zur Übertragung zu dem Prozessor 328 geschaltet.
Wie weiterhin in Fig. 17 zu sehen ist, umfassen die Spurschaltungen 330 ein Spur-Ausgangs tor 724-, das in der Lage ist, ein Spur-Ausgangsbyte bei Erhalt eines über eine Leitung 72Oc von dem Prozessor 328 abgegebenen Ladekommandos in Form eines Steuersignals ADR 11 (V) zu laden. Das Spur-AusgangstorByte besteht aus folgenden Informaticnsbits. Bit 0 enthält ein Signal KULL 0, welches einen hohen Wert annimmt, wenn auf der Einheit 0 der Beginn einer Rückstell-Operation ausgeführt werden soll. Bit 1 enthält ein Signal HDTjL 1, das einen hohen wert; hat, wenn auf der Einheit 1 eine Rückstell-Operation ausgeführt werden soll. Bit 2 enthält ein -Signal ABTASTER AlT, das dem Freigabe-Eingang eines Datenbit-Zählers 726 (Fig. 20) zugeführt wird; der Zweck dieses Signals wird weiter unten erläutert. Bits 3-6 stellen zusammen den gewünschten Versetzungsbetrag dar, so v;ie er anfänglich durch das Kommando signal 3?üR\ ^'ήόΞ,ΙΖΙΓύΟ von der
809835/0873
Steuerung JiS bestimmt wird, wie oben bereits diskutiert wurde. Der Prozessor 328 spricht auf dieses Kommando an und erzeugt einen entsprechenden vier Bits umfassenden Versetzungs-Eode (offset code), der von dem Tor 724- auf den Leitungen 3-5 abgegriffen wird. Das letzte Bit (Bit 7) enthält ein Signal UIiGEHADS SPUH, das einen hohen Wert hat, wenn gewünscht wird, die Spurschaltung so einzustellen, daß für das Auslaufen einer ungeraden Spur kompensiert wird.
Insbesondere wird das Signal TJfTGESADS SPUR an einen Eingang einer Ungerade/Gerade-Spur-Auswahlschaltung 726 gelegt. Die Schaltung 725 empfängt weiterhin das Signal F.EHLEHABTASTUNG von dem Abtast- und Speicherschaltkreis 713 und ein Signal FSHLSILH-BTASTUiTG- von dem Ausgang eines ITegators 728, der mit dem Ausgang der Abtast- und Speicherschaltung 713 verbunden ist. Ist das Signal UiTGZHAIS SPUR niedrig, was eine gerade CpUi- bedeutet, so wird nur das Signal FEELERAB1EASTUIiG dem. Avisgang der Schaltung 726 zugeführt. Ist andererseits das Signal UITGESABE SPUR hoch, was eine ungerade Sour bedeutet, so wird nur das Signal FEHIiSRABTASTUNG dem Ausgang dexv Schaltung 726 zugeleitet. Die Schaltung 726 umfaßt herkömmliche Schaltungsanordnungen, mit denen die oben genannten Funktionen bewirkt werden.
Das Ausgangssignal der Schaltung 726, d. h., das Signal F-^iLERABTASTUSTG oder FEHLERABTASTUrTG wird einem Eingang einer Schaltung für die Auswahl der oberen Einheit (Einheit 0) und einem Eingang einer Schaltung für die Ausitfahl einer unteren Einheit (Einheit 1) 730 zugeführt. Ein zweiter Eingang der Auswahlschaltung 723 empfangt: ein Signal i.0Plf-üL3 von den Ausgang eines ITegators 732, dessen Eingang mit den Lese/Schreib-Schaltungen 336 über eine Leitung 716b zum Empfangen eines Signals KOPF MSB verbunden ist. Das Signal KOPF-I1ISB wird weiterhin direkt dem zweiten Eingang der Auswahlschaltung zugeführt. Las Signal EOPF-MSB ist das höchstwertige Bit (MSB = most significant bit) eines fünf Bits umfassenden Kopfauawahi-li-odes,
809838/0873
der weiter unten ausführlich beschrieben wird. An dieser Stelle soll jedoch festgehalten werden, daß ein niedriges Signal KOPP-MSB anzeigt, daß die Kopfauswahl auf die Einheit 0 fällt, wohingegen ein hohes Signal anzeigt, daß die Kopfauswahl für die Einheit 1 gilt.
Ist das Signal KOPF-MSB auf niedrigem Pegel, so wird die obere Auswahleinheit 728 in die Lage versetzt, das Ausgangssignal der Schaltung 726 an einen DC-Versetzungs-Integrator zu leiten. Hat"das Signal KOPF-MSB einen hohen Wert, so wird die untere"Auswahleinheit 730 in die Lage versetzt, das Ausgangssignal der Schaltung 726 auf einen anderen DC-Versetzungs-Integrator 734- zu geben. Die Integratoren 732 und 734· umfassen herkömmliche Schaltungsanordnungen zum Integrieren der an sie angelegten Eingangssignale, um die Spur-Steuersignale zu erzeugen, d. h., die Signale SPUE-0-STEUS2UNG und SPüR-i-STEUERUirG um diese dem entsprechenden Servo-Steuerungssystera 194- über Leitungen 736a, bzw. 736b zuzuleiten. Diese Spur-Steuersignale können um einen gewünschten, von der Steuerung3i8 angegebenen Betrag versetzt werden, wie es durch den 4— Bit-Versetzungs-Ausgang des Spur-A.usgangstores angedeutet ist.
Insbesondere wird der 4—Bit-Versetzungs-Kode einem gesteuerten Versetzungs-Generator 738 zugeführt, der grundsätzlich bewirkt, daß ein Versetzungswert für die Einheit 0 oder für die Einheit 1 dekodiert und in analoge Form umgewandelt wird. Diese analogen Signale, d. h., die Signale 723SETZUITG 0 und VERSETZUNG 1, werden von dem gesteuerten Versetzungs-Generator an entsprechende Eingänge der Integratoren 732 und 734- gegeben,
trag zu versetzen, der proportional ist dem Gleichspannungspegel der Signale VERSETZUNG 0, bzw. VERSETZUNG λ.
Das am Bit-0-Ausgang des Spur-Ausganestores 724- erzeugte Signal X-TULL 0 wird, einem Freigabe-Eingang einer Yersetzungs-Ent-
809835/0873
hohen Wert hat, was der Fall ist, wenn auf der Einheit 0 sine Rückstell-Cperation ausgeführt werden soll, so wird die Schaltung 74-0 veranlaßt, den Integrator 732 zu entladen, wodurch für die Einheit 0 der Eingang des Servo-Steuerungssystems 194-, der das Signal SPUR-0-STEUERUUG empfängt, gesperrt wird. Dementsprechend wird, wenn für die Einheit 1 eine Rückstell-Operation ausgeführt werden soll, das Signal KTJLL 1 im hohen Zustand eine ähnliche Entladeschaltung 7^-2 freigeben, den Integrator 73^- zu entladen und somit das Signal SPiJR-I-STZDERlBTG zu sperren.
Wie bereits oben gesagt wurde, werden die Signale WDL-0- . STEUERUNG und WDL-0-STEÜERUNG an entsprechenden Ausgängen der WDL^-Versetzungs-Steuerschaltung 70S, und die Signale
j-i-STEUERUI-TC- und './3L-I-STSUERUIfG an entsprechenden Ausgängen der- WDL-I-Versetzungs-Steuerschaltung 7^2 erzeugt. Lie Schaltung 706 empfängt an einem Eingang das Signal A0 < 0 auf der Leitung 595 von den ITuIIdurchgangs-Detektor 59^ (Fig. 12), während ein anderer Eingang das Signal SPUfi-0-,'5TEiTSRUITG von den Integrator 732 empfängt. Auf diese Weise wird ein durch das Signal WDL-0-STEUE3UNG dargestellter entsprechender Versetzungsvrert zum Versetzen der Signale C0, L0 und LIIT0 jeweils um einen bestimmten Betrag sowohl in der Amplitude als auch in der Phase erzeugt. Der vornehmliche Zweck dieser Versetzung besteht, wie oben bereits gesagt wurde, darin, den Beginn der Taktimpulse auf der Leitung (Fig. 13) so zu verschieben, da3, wenn die Zählwerte des Aufwärt s/Abwärts-Zählers den Wert 0 erreicht haben, die ÜTÜLL-Leitung 653 hohen Wert annimmt, das Signal SPERRiST an einem
Versetzungsbetrag eine solche Kompensation erreicht wird, daß die Köpfe korrekt über dem Spurzentrum halten.
GamäB dem oben Gesagten empfängt die WDL-1-Versetzungs-Steuerung "-·]? an einen Eingang 'das Signal A1 < 0 auf der Leitung 597 von ^ .:Zi "(UlIdurclj-^erLgs-Letiekuor ycj3 \^i-G- ^2), wäiix-e-ici em sveiüer
809835/0873
Eingang das Signal SPUR-1-STEUERUNG vom Ausgang des Integrators 73^- empfängt.
Im folgenden wird Bezug genommen auf die in Jig. 18 gezeigte Schaltung, die in den Spurschaltungen 330 enthalten ist und die Erzeugung der Signale SSKTOR-MAEKE-0 und IrTDEX-MARKE-0 bewirkt. Auf der Spindel 30 des Plattenlaufwerks 10 ist ein Sektor/Index-Ring (nicht gezeigt) montiert, der mit der Platte 16a in der Kapsel 28 umläuft. Der Hing befindet sich in der Kapsel 28 und wird auf die Spindel 30 gebracht, wenn die Kapsel in die Platteneinheit eingelegt wird. Der Ring weist mehrere beabstandete magnetische Sektormarken auf, deren Anzahl der gewünschten Anzahl der Sektoren auf jeder Oberfläche der Platte 16a entspricht. Sine einzelne magnetische Indexmarke ist ebenfalls auf dem Ring vorhanden. Ein in dem Plattenlaufwerk angeordneter magnetischer Sensor erzeugt Signalimpulse SSG-TH 0 jedesmal dann, wenn entweder eine Sektorinarke oder eine Indexmarke erfaßt wird. Diese Impulse v/erden über einen herkönunl ich en Integrator 750 und Spitzendetektor 752 auf einen herkömmlichen Index/Sektor-Separator 758 gegeben, welcher die Impulse SjSKTOR-HAkKE-0 von den Impulsen IKDSZ-iIABKE-0 separiert. Diese Impulse werden über entsprechende Leitungen 442a und 442b an die Schnittstellenschaltung 326 (Fig. 10) geleitet.
In dem Plattenlaufwerk ist ein weiterer Ring (nicht gezeigt) montiert, der mit der Spindel 30 umläuft. Dieser Ring weist mehrere gleichförmig beabstandete öffnungen auf,welche die Sektormarken für die Einheit 1 definieren; ebenso ist eine weitere öffnung vorgesehen, .die sine Indexen arlce lif iniert. Diese Öffnungen werden durch herkömmliche lichtabgebende und lichtempfangende Erfassungseinrichtungen (nicht gezeigt), die in dem Plattenlaufwerk angeordnet sind, festgestellt. In Fig. sieht, man, daß ein Impuls SEC-TR 1 jedesmal dann erzeugt wird, X'/enn eine Öffnung abgefühlt wird. Diese Impulse werden durch ^Lnsn herköuiniichen invertionndsn 7er.~t'!rVer 75- -uid einen herkömmlichen Spitzendetektor 756 an einen weiteren herkömm-
809835/0873
Βλ
lichen Index/Sektor-Separator ?60 gegeben, welcher die Impulse SEKTOE-I'IAEKS-1 von den Impulsen IKDEX-IiARKE-1 trennt. Diese Impulse werden über entsprechende Leitungen 442c und 442d an die Schnittstellen-Schaltung 526 gegeben.
Die in Fig. 20 dargestellte Schaltung, die ebenfalls Teil der Spurschaltungen 330 ist, wird unten im Zusammenhang mit der Beschreibung der Lese/Schreib-Schaltungen 336 erläutert.
VIII. Die Lese/Schreib-Schaltungen
Im. folgenden sollen unter Bezugnahme auf die Fig. 14 bis 16 und 20 die Lsse/Schreib-Schaltungen 336 beschrieben werden. Each Fig. 14 umfassen die Lese/Schreib-Schaltungen einen phasenstarren Oszillator (PLO) 300 zum Erzeugen von Schreib-(WR)Taktinpulsen, die mit der Umdrehungsgeschwindigkeit der Platten 16a bi" I6d synchronisiert sind, vrobei die Umdrehungsgeschwindigkeit bestimmt; wird durch die Signal impulse SEKT03-IiARSE-I, die an den Eingang des phasenstarren Oszillators gelegt werden,Eie Signale SEKTQH-IiASKE-I werden anstelle der Signale SSKTGR-IlA.RKE-0 verwendet, da die Erfsssungs-Bsuelemente für die Signale SEKTOH-NiHKE-I für alle Konfigurationen des Plattenlaufwerks installiert sind.
Der Oszillator PLO 800 erzeugt weiterhin ein Signal BYTE-SiVTSN-TAKT, die an den Takteingang eines Byte-Zählers 302 gegeben werden. Der Zähler 802 wird freigegeben, beim Auftreten entweder eines Impulses SEKTOP--MARKE-0 oder SEETOR-KARKE-1, jeden. BYTE-RATE1T-TAST zu laden und zu zählen, wobei did beiäön genaniits,;: irei^abe-l^ipulce lioor iin CjZR-OLLei jOt an den Freigabe-Eingang des Byte-Zählers 802 gegeben werden. Der Byte-Zähler 802 empfängt weiterhin an einem Eingang das Ausgangssignal SEP-SYlIGR der 8E-Erfa3sungsschaltung 806; dieses Signal ist wahr, wenn durch den Lesekopf in dem sechzig "3^t 3 3 uir.f rr-sonden rerorvierten Se reich einen Spursektors der ilode 8jL festgestellt vxird.. I'erner e rap fängt der Byte-^lihl-or cu2 als weiteres Eingangssignal das Signal SBG- (Schutzband gefu
809835/0873
BAD ORiGfNAL
das am Ausgang eines "93"-Detektors 808 erzeugt wird, wenn der Lesekopf den Kode 9E in dem reservierten 60-Byte-Bereich eines Sptirsektors feststellt. Der Betrieb der Detektoren 306 und 808 wird unten beschrieben.
Als Antwort auf verschiedene angelegte Eingangssignale erzeugt der Byte-Zähler 802 ein Ausgangssignal SCHSSIBSPESHE, welches "beim Auftreten eines Signals SEKTOR-MARKE gesetzt wird und zwölf Bytes nach Erfassen eines Kodes 8Ξ oder 93 zurückgesetzt wird, was dadurch angedeutet wird, daß entweder das Signal SEP-SYNCR oder SBG einen hohen Wert annimmt. Das Signal SCHREI3SPERRS wird intern durch die Lese/Schreib-Schaltungen 336 in einer unten erläuterten Weise verwendet. Der Byte-Zähler 802 erzeugt weiterhin das Signal ESM (elektronische Sektor-Marke), das auf einer Leitung 390 der Schnittstelle 326 (Fig. 10) zugeführt wird. Das ESM-Signal wird bei Erfassung eines Kodes 8E oder 92 hoch, und nimmt zwölf Bytes später einen niedrigen Wert an. Somit fällt das Signal ESK s\ir selben -Zeit ab i%rie das Signal SCHEEIBSPERRE.
Die Lese/Schreib-Schaltungen 336 \imfassen weiterhin ein Schieberegister. 31.0, das durch ein Freigabe-Signal von dem Byte-Zähler 802 in die Lage versetzt wird, Signale ITRZ LESE-DATEK, die durch die in Fig. 16 gezeigten Schaltungen erzeugt werden, zu empfangen. Daten werden auf einer Plattenoberfläche in HFM-Forniat (modifizierte Frequenz-Modulation) aufgezeichnet, und werden, nachdem sie durch einen Kopf von der Platte gelesen wurden, zuerst in einen "NRZ:'-Kode (non-return-tor-zero) zur Übertragung an die Steuerung 3Ί8 umgewandelt. Dieses
^r u.;ite.-:i =-.v.3füLrlicri beschrieben.
Die Signale liRZ-LESEDATSJM werden in das Schieberegister nach Maßgabe der Signalimpulse LESETAKT, die durch die in Fig. 16 gezeigte Schaltung erzeugt werden und die dieselbe Frequenz haben xd.e die auf der Platte .aufgezeichneten Daten, eingeta-
cnis csr-a-jisfce;. ^ CC ;:'
durch den 3E-Detektor 806 und den 9E-Detektor 8C3 überwacht,
809835/0873
da der Inhalt parallel über einen Bus 812 an entsprechende Eingänge dieser Detektoren gelegt wird. Jeder Detektor 306 und 803 umfaßt herkömmliche Vergleichsanordnungen zum Erzeugen eines hohen Aus gangs signals (SEP-SYITCR , bzw. SBG), v/erm der Kode 8E oder 9E auf dem Bus 812 ansteht.
Die Signale NRZ-LESEDATΞΝ werden über einen Leitungstreiber 814 als NSS-DATM (INT.DATSlI) auf das Kabel B gegeben, um über die Schnittstelle 326 der Steuerung 318 (s. Fig. 10) zugeführt zu werden. Dementsprechend werden von der Steuerung 318 auf das Säbel B gegebene Signale KRZ-DATEK von einem Leituncsempfanger empfangen und als ITRZ-SCHRSIBDATEIi an einen herkömmlichen NRZ/IiJIK-Wandler 318 gegeben. Der Wandler 818 konvertiert die Signale SSZ-SGEEEIBDiITEET in Signale KEIi-SCHREIBDATEN zum Zuführen zu der in PIg. 15 gezeigten Schaltung. Die letztgenannten Signale werden schließlich auf einer gewünschten Spur der Platte aufgezeichnet.
Die Lese/Sonreib-Schaltungen 336 weisen ferner eine "Takt-Auswahlschaltung 320 zum Empfangen der durch den Oszillator PLO 800 erzeugten Signale SCHREIB-(WR-}TAKT auf, sowie zum Empfangen der Signale LESETAKT von der Schaltung nach Pig. 16. Weiterhin wird die Schaltung 820 freigegeben durch ein über eine Leitung 4-4-5a von der Schnittstelle 326 zugeführtes Signal INT. LESE-C-ATTERIMPULS. Die Ausgangsgrößen des Schalters 820 stellen System-Taktimpulse dar, die über einen Leitungstreiber 822 als Signalimpulse INT. TAKT auf das Kabel C gegeben werden. Die Signalimpulse INT. TAKT werden dann über dieses Kabel C durch die Schnittstelle dei"1 Sceu-orang 'jTo zugeführt.
Die Lese/Schreib-Schaltungen 336 umfassen ferner eine herkömmliche Schreibstrom-Steuerschaltung 824, die an entsprechenden Ausgängen ein Paar von Signalen I WR0 und I W3.1 era-.TUce''·. •-~fti.9r: diener Signale kann irgendeine Ansaril von i>pannui":ijsp5r;eln aufweisen, entsprechend den für die Ivöpxe der Einheiten 0 und 1 geeigneten Schreibströmen. Sie Größe des
809835/0873
"*""* ^RIGINAi,
Schreibstrops hängt ab von der Spur, in Vielehe geschrieben werden soll. So z. B. iirird der geringste Schreibstrom für die Spuren 385 - 429 verwendet, ein höherer Schreibstrom für die Spuren 128 - 19"I5 ein noch höherer Schreibstrom für die Spuren 64-127 und der höchste Schreibstrom für die Spuren 0-63.
Um. den Betrag der Signale 1 WR0 und I WR1 zu steuern, besitzt die Schaltung 824 einen Eingang, welcher das Signal SCHREIB-SFSRSE von dem Byte-Zähler 802 empfängt,welches wahr ist, wenn ein Schreiben verhindert werden soll, d. h., während des sechzig Bytes umfassenden reservierten Bereichs jedes Spursektors. Ein zweiter Eingang der Schaltung 824 empfängt das Signal E0PI?-KS3, welches entweder die einheit 0 oder die Einheit 1 identifiziert. Der dritte bis fünfte Eingang der Schaltung 824 empfangen entsprechend die Signale SYL 64, 3YL 128 und ZYL 2p6. Jedes dieser Signale ist wehr, wenn die Köpfe, die eine Schreibfunktion ausführen sollen, über den entsprechenden Spurzahlen sind. Sämtliche Signale ZTL 64, ZYL 128 und ZYL 256 sind falsch, wenn eich der Kopf zwischen den Spuren 0 und 63 befindet.; lediglich das Signal ZYL 64 ist wahr, wenn sich der Kopf zwischen den Spuren 64 und 127 befindet, usw. Die Signale KOPF-MSB, ZYL 64, ZYL 128 und ZYL werden durch den Prozessor 328 in einer unten noch erläuterten Weise erzeugt. Der sechste und letzte Eingang der Schaltung empfängt das Signal INT. SCHREIB-GATTESIKPüLS von der Schnittstelle über die Leitung 445b.
Ein Paar identischer Lese/Sohreib-Statustore 826 (es isb lediglich eijass gezeigt) ist ir.- -3en Le;>^/2 :hreib-Schnl't:xngen. 336 vorgesehen. Es gibt ein Tor 826 für die Einheit 0 und ein separates Tor 826 für die Einheit 1. Das Tor der Einheit 0 826 wird durch ein Steuersignal ADR 04 (H) vom Prozessor 328 über eine Leitung S28a freigegeben und wird zurückgesetzt durch ein Steuersignal AD3 14 (Ii) vom Prozessor über eine Leitung 843c.
809835/0873
Las Tor 826 für die Einheit 1 wird ebenso durch ein Signal ADR 14 (R) zurückgesetzt, wird jedoch durch ein Steuersignal ADR 13 (R) über eine Leitung 823b freigegeben, um die anstehenden Eingangssignale einzugeben.Bei Erhalt eines Freigabekotriiricndos lädt jedes Tor 825 die anstehenden Eingangssignale, die für jedes Tor gleich sind und folgende Signale umfassen: Das Signal LSSE/SCERSIS-GATTERIKPüLS-FEHLER an eines ersten Eingang, ein Signal LATEE-AUFZEICHiFuBrGS-ITEHLSR an einem zweiten Eingang, das Signal SCHREIB-(WR-) 'ZXTIGKEiT an einem dritten Eingang, ein Signal SCHSSIEEK ÜHSICHER an einem vierten Eingang und ein Signal KSHSFAOH-KOPF-FEHLER an. einen fünften Eingang. Vird jedes Tor 826 freigegeben, so v/erden diese fünf Eingangs signale über einen Transferbus 8JQ auf den' Datenbus 362 zwecks übertragung zu dem Prozessor $28 gegeben. Die Signale SOHREIBAKTIVlTiT, SCHREIBST üliSICHER und i-iSHRFACHKCPF-FrliLER 'werden durch die in FIg;. 15 dargestellte Schaltungsanordnung erzeugt; sie werden unten noch definiert und beschrieben.
l/eifeerhin umfassen gemäß Fig. 14 die Lese/Schreib-Schaltungen 336 ein Kopfauswahl-Zylinderstatus-Tor 832, dessen acht; Einginge mit dem Datenbus 3S2 verbunden sind, um. ein Kopf-Auswahlbyte und den Zylin&ersta.tus von dem Prozessor 323 zu empfangen. Dieses Kopf-Auswahlbjrbe wird in das Tor nach Erhalb eines von dem Prozessor über eine Leitung 848e zugeführben Steuersignal ADR 04 (y) geladen. Die Bits des Statusbytes umfassen die Signale ZYL 647 SYL 128, ZYL 256 und KOPF-MS3 in den Bits 0 - 3, "u.nd darüberhinaus einen 3-3i^-E0?fauswahl-Kode. (KCi, i:02 und KOA) in den Bits A- - 7. Der Kode r>0"! - EC'l· _z"l ü^ar e-i^^prj^Ji-i _.:o L^t'-z'^'L^zri ir. ;.ό: Zir:;^:!^^ einer Kopfauswahl-Schaltiong 334- (Fig. 15) gelegt.
Die in Fig. 15 gezeigte Schaltungsanordnung ist doppelt vorhanden Tind für Einheit 0 und für Einheit 1 identisch. Lediglich eine Schaltung ist. daher 3ur Yereinfschung der Beschrei-
Oj-- υ > .' ti-.i _Ov ι —-CIS Vfcj _l· ^tlC
809835/0873
EAD CRiQfNAL
ersten drei Eingängen den Kopf-Auswahlkode KOI bis K04-. Ein vierter Eingang jeder Schaltung 834- empfängt ein bestimmtes Signal AUSWAHL, wobei jedes Signal AUSWAHL von dem Signal KOPF-HSB abgeleitet ist. Wenn insbesondere das Signal KOPF-MSB niedrig ist, ist das der Kopf-Auswahlschaltung 8J4- für die Einheit 0 zugeführte Signal AUSWAHL hoch, wohingegen das Signal AUSWAHL für die Kopf-Auswahlschaltung der Einheit 1 niedrig ist, wenn das Signal KCPF-KSB hoch ist. Ist ein spezielles Signal AUSWAHL hoch, so gibt es die zugehörige Kopf-Auswahlschaltung frei, den Kopf-Auswahlkode KO1 - K04- zu. laden.
Von der Kopi-Ausvahlschaltung 834- wird der Kopf-Auswahlkode KOi - K04- parallel über einen Transferbus 836 an entsprechende Eingänge herkömmlicher Lese/Schreib-(R/W-)Kopf-Schaltungen 833 gegeben, welche den Kode dekodieren und einen speziellen Kopf in der ausgewählten Einheit aktivieren. Die Schaltungen 833 empfangen weiterhin von dem Umwandler 818 (Fig. 14-} die Signale ilFil-SCHRSIBDATEZi, die über einen herkömmlichen Schr.eibpuffer 84-0 und Schreibtreiber 34-2 zugeführt werden. Eine Strom-Abtastschaltung 84-4- empfängt das Signal IVjS, das von der Schreib-Steuerschaltung 324- (Fig. 14·) erzeugt wird und generiert ein Strom-Steuersignal für die Schreibtreiber r um sicherzustellen, daß unter unsicheren Bedingungen kein Schreiben stattfindet. Diese Daten können nur während der Zeit geschrieben werden, während der das Signal IKT. SCHREIB-GATTERIMPULS einen hohen Wert hat. Dementsprechend wird das Signal INT. SCHRSIB-GATTERIMPULS einem Eingang der Lese/Schreib-Kopf-Schaltungen 838 zugeführt.
Ein Mittelabgriff-Ausgang der Kopfschaltungen S38 wird über eine Leitung 839 einer Schreibsperren-Schaltung 84-6 zugeführt, die ebenfalls das Signal IKT. SCEREIB-GATTERIPIPULS empfängt. Erfaßt die Sperrschaltung 84-6 auf der Leitung 839 einen Schreibstrom, während das Signal IiTT. SCHREIB-GATTERIMPULS niedrig
SCHREIBEN UI^iJlCHER mit hohem Pegel. Dieses Signal wird einem
809835/0873
BAD ORIGINAL
Eingang des Lese/Schreib-Statustores 826 (Fig. 14) zugeführt.
Die Schreibtreiber 842 erzeugen ein Signal SCHHEIBTÄTIGKEIT hohen Pegels an ihrem Ausgang, wenn eine Schreib-Operation durchgeführt wird. Dieses Signal wird einem weiteren Eingang des Tores 826 zugeleitet. Die Lese/Sehreib-Kopfschaltungen 838 erzeugen ein Signal MEHRFACHKOPF-FEHLER hohen Pegels, wenn sie feststellen, daß auf mehr als einen Kopf der ausgewählten Einheit während einer Daten-Schreib-Operation zugegriffen wird. Dieses Signal wird auch einem Eingang des Statustores 826 zugeleitet.
Gemäß Fig. 15 werden durch einen Kopf von einer Platte gelesene Daten über herkömmliche Vorverstärker-Schaltungen geleitet, welche die gelesenen Daten als Signale LESEN und LESEN in herkömmlicher Weise liefern. Die Signale LESEIT 0 und LESEN" 0 von einer Operation auf der Einheit 0 werden an entsprechende Eingänge einer Auswahl-0-Schaltung 850 (s. Fig. 16) geführt, wohingegen die Signale LESEN 1 und LESEN 1 an entsprechende Eingänge einer Auswahl-1-Schaltung 852 gelegt werden.
Gemäß Fig. 16 wird die Auswahl-0-Schaltung 850 durch ein Signal KOPF-MSB, welches durch einen Negator 854 angelegt wird, freigegeben. Im freigegebenen Zustand werden die Signale LESEN 0 und LESEN 0 über eine herkömmliche Filterschaltung 856 einer herkömmlichen automatischen Verstärkungs-Regel s chaltung (AGC) 858 zugeführt. Die Schaltung 858 wird dazu verwendet, die Signale LESEN 0 und LESEN 0 auf die richtige Signal-Amplitude zu bringen. Die Signale LESEN 0 und LEQZH 0 werden von der AGC-Schaltung 858 auf einen herkömmlichen Lesekanal für die EOHDATEN gegeben. Diese Daten, die MFM-Format haben, werden dann über eine herkömmliche Verzögerungsschaltung 860 an einen herkömmlichen MFM-NRZ-Umwandler 862 gegeben.
Der Umwandler 862 wird durch einen Oszillator variabler Frequenz (VFO) 866 getriggert, falls eine Verbindung zu den
809835/0873
Lesedaten während der Zeit vorliegt, in der das Signal INT. LESE-GATTERIMPULS hoch ist. Dieses geschieht, indem die Lesedaten dem VFO 866 von einer Seiektor-Schaltung 864 bei Empfang eines hohen Signals INT. LESE-GATTERIMPULS an dessen Eingang zugeführt werden» Der Umwandler 862 wird durch den VFO 866 jedoch nicht getriggert, wenn er mit dem Signal SCHREIBTAKT anstatt mit den Daten gekoppelt ist. Dies ist der Pail* wenn das Signal INT. LESE-GATTERIMPULS niedrig ist. Der Selektor 864 kann bekannte Auswahlschaltungen umfassen, die in der obengenannten Weise funktionieren.
Die von einer Platte der Einheit 1 gelesenen Signale LESEN und LESEN 1 werden durch die Auswahlschaltung 852 bei deren Freigabe durch ein Signal EOPF-MSB geleitet und an das Filter 856 gegeben, von wo ab sie identisch behandelt werden wie die Signale LESEN 0 und LESEN 0, wie es oben beschrieben wurde.
In Zusammenhang mit Fig. 16 sei daran erinnert, daß die Spurverfolgungs-Servodaten in dem sechzig Bytes umfassenden reservierten Bereich jedes Spursektors im Anschluß an den 8E- oder 9E-Kode (in Abhängigkeit von der Spur, xvie oben erläutert wurde) aufgezeichnet werden und auch hierin gespeichert werden. Weiterhin sei daran erinnert, daß das Signal SCHREIBSPERRE vom Auftreten einer Sektormarke an bis zum Abfall des ESM-Signals hoch ist, d. h. während der zwölf Bytes, die auf die Feststellung eines 8E-Kodes in einem Sektor der Spuren. 0 - 429 folgen. Somit wird verhindert, daß in den reservierten 60-Byte-Bereich geschrieben wird.
Venn deaienbsprechend Servodaten. durch die Köpfe einer der Einheiten gelesen werden sollen, wird das Signal SCHREIBSPERRE hoch. Die AGC-Schaltung 858 schaltet das Signal LESEN 0 oder das Signal LESEN 1 entsprechend auf die Source-Slektrode eines Feldeffekttransistors 868, dessen Gate-Elektrode ein Signal ABTASTFENSTER von der in Fig. 20 gezeigten Spurschaltung empfängt. Das Signal ABTASTFENSTER ist hoch, wenn gewünscht wird, die Servodaten abzutasten und sie als Signal
809835/0873
-ßer-
FEHLERABTASTUNG der Spurschaltung zuzuführen. Ist somit das Signal IBTASTi1EEISTER niedrig, so wird das Signal LESEN durch den Feldeffekttransistor 868 einem invertierenden Verstärker 870, der mit seinem Eingang an die Drain-Elektrode des Feldeffekttransistors 868 geschaltet ist, zugeführt. Der Ausgang des Verstärkers 870 stellt das Signal FEHLERABTASTUNG dar und ist über eine Leitung 716a mit den Spurschaltungen verbunden.
Im folgenden wird unter Bezugnahme auf Fig. 20 die Erzeugung des Signals ABTASTFENSTER beschrieben. Nach Fig. 20 ist ein Datenbit-Zähler 880 vorgesehen, der einen ersten Freigabeeingang aufweist, welcher ein Signal SEP-SYNCR auf der Leitung 716c von dem 8E-Detektor 806 (Fig. 14) empfängt, während ein zweiter Freigabe-Eingang ein Signal SBG über die Leitung 7i6d von dem 9E-Detektor 808 empfängt. Ein dritter Fr eigabe-Eingang empfängt das Signal ABTASTER AiT auf einer Leitung 882a von dem Spur-Ausgangstor 724 (Fig. 17)-Das Signal DATENTRIGGERUIIG wird dem Takteingang des Zählers über eine Leitung 7"l6e von dem Oszillator variabler Frequenz VFO 866 (Fig. 16) zugeführt.
Nimmt während des Auftretens eines hohen Signals ABTASTER AN entweder das Signal SEP-SYNCR oder das Signal SBG einen hohen Wert an, so wird der Datenbit-Zähler 880 freigegeben, und seine Ausgangsgrößen werden der An/Ab-Steuerung 884 zugeleitet, die einen Abtastfenster-Generator 886 anschaltet. Dann zählt der Zähler 880 eine vorbestimmte Anzahl von Impulsen DATENTRIGGERUNG, z. B. acht Bytes, währenddessen der Abtastx.3n3ter-Geasrator 336.vsrschiedane Abtast-Satterinipulse erzeugt, die mit den Servodaten synchronisiert sind und über die ABTASTFENSTER-Leitung 882b"dem Abtaststeuerungs-Feldeffekttransistor 868 (Fig. 10) zugeleitet werden. Am Ende der Abtastperiode wird die An/Ab-Steuerung 884 abgeschaltet, wodurch der Abtastfenster-Generator 886 daran gehindert wird, weiterhin das Signal ABTASTFEITo'iER zu erzeugen.
809835/0873
IX. Betrieb (Programmsteuerung)
Der Betrieb des Plattenlaufwerks 10 in Abhängigkeit von den Kommandos, die durch, die Steuerung 318 ausgelöst werden, wird im folgenden unter Bezugnahme auf die Fig. 24- - 65 beschrieben.
Anhand der Fig. 24- und 25 soll zuerst die Routine "Unterbrechungsbehandlung" erläutert werden. Es muß hier bemerkt werden, daß durch den Taktgeber 516 alle 500 u. s auf der Leitung 517 ein Signal UNTERBRECHUNG erzeugt wird, welches dem Mikroprozessor 500 zugeleitet wird, um das Programm zu unterbrechen und die Routine "Unterbrechungsbehandlung" zu beginnen. Die erste in dieser Routine ausgeführte Operation besteht darin, die Registerinhalte des Mikroprozessors 500 sicherzustellen. Insbesondere umfaßt der Mikroprozessor 500, bei dem es sich vorzugsweise um ein Mikroprozessor-Chip Intel 8080 handelt, verschiedene Register und einen Befehls-Zähler. Eine Operation "retten Registerinhalte" bewirkt, daß die Inhalte jedes der Register des Mikroprozessors 500 über den bidirektionalen Bustreiber 508 auf den Datenbus 510, den Datenbus 362 und den Transferbus 512 in vorbestimmte Speicherstellen der Schreib/Lese-Speicher (RAMs) 504 (im folgenden nur noch als "RAM" bezeichnet) geladen werden.
Nach der Operation "retten Register" wird eine Unterroutine "Realzeit-Countdown" (RTCD) ausgeführt. Wie aus Fig. 25 hervorgeht, besteht die erste Operation in dieser Unterroutine darin, ein in einer Speicherstelle des RAM definiertes Mehrfach-Byte-Zählregister (MBCR) zu dekrementieren, d. h., zu vermindern. Das MBCR wird für verschiedene Zeitsperren ("timeouts") verwendet. Nach dieser Operation prüft der Prozessor, ob MBCR kleiner als Null ist^ was festgestellt wird, wenn dieses Register auf -1 heruntergezählt hat. Ist das MBCR kleiner als Null, dann wird ein Software-Flag "Mehrfach-Byte-Zählung = Null" in einer RAM-Speicherstelle gesetzt. Ist das MBCR nicht kleiner als Null oder ist das Flag "Mehrfach-Byte-Zählung = Null"
809835/0873
gesetzt, nachdem MBGR Null war, so veranlaßt der Prozessor das Dekrementieren eines an einer anderen EAM-Speicherstelle definierten Zählregisters "Geschwindigkeit erreicht" (UTSGE). Dann schaut der Prozessor nach, um zu sehen, ob UTSCR kleiner als. Ml ist. Ist dies der EaIl, so wird ein Software-Flag "Geschwindigkeit erreicht" in einer entsprechenden RAM-Speicherstelle gesetzt. Ist UTSCR nicht Null, oder hat es den Wert NuIl, nachdem das Software-Flag "Geschwindigkeit erreicht" gesetzt ist, schaut der Prozessor nach, o"b das Index-Flip-Flop 5^ (Fig. 11) gesetzt ist. Ist dies nicht der Fall, so kehrt das Programm zur Hauptroutine "Unterbrechungsbehandlung" zurück, wo es mit dem Rückspeichern der Registerinhalte "beginnt, was unten "beschrieben wird. War das Index-Flip-Flop 5*W- gesetzt, dann setzt der Prozessor es zurück und inkrementiert eine Anzahl von allgemeinen Ereignisregistern in dem RAM, um anschließend zu der Hauptroutine "Unterbrechungsbehandlung" zurückzukehren.
Nach der Rückkehr wird die Operation "Rückspeichern der Register" ausgeführt, wobei die zeitweilig in dem RAM gespeicherten Inhalte der Register in den Mikroprozessor 500 wieder in die Register des Mikroprozessors 500 zurückgeladen werden. Hieran anschließend wird der Prozessor 500 wiederum in die Lage versetzt, weitere Signale UNTERBRECHUNG auf der Leitung 517 zu empfangen. An dieser Stelle sei angemerkt, daß der Mikroprozessor 500 während der Ausführung einer Unterbrechungs-Behandlung nicht auf Signale UNTERBRECHUNG ansprechen kann.
Im folgenden wird anhand der Fig. 26 - 31 die Routine "Netz bereit" erläutert. Die ersten zwei Operationen sind hardwareimplementiert. Somit bestimmt der Spannungspegel-Detektor (Fig. 11), ob die korrekten Gleichspannungspegel (DC-Pegel) vorhanden sind. Ist dies nicht der Fall, so wird so lange nachgeprüft, bis der gewünschte Zustand vorliegt. Stehen
809835/0873
schließlich die gewünschten Gleichspannungspegel zur Verfügung, so gibt der Taktgeber 516 ein Kommando RÜCKSETZEN auf die Leitung 519, um den Mikroprozessor 500 zurückzusetzen. Die folgenden Operationen sind software-implementiert. und werden ebenfalls während einer Routine "Statussequenz" (STSEQ) ausgeführt. Während dieser Routine wird der Mikroprozessor 500 daran gehindert, auf über die Leitung 5^7 zugeführte Signale UMERBRECHUIiG anzusprechen. Danach werden alle Eingangs- und Ausgangstore und -schalter gelöscht« An diese Operation schließt sich ein Löschen der RAMs 502 an, woraufhin ein "Kellerzeiger" in dem Mikroprozessor 500 initialisiert wird. Bei dem Kellerzeiger handelt es sich um ein Register, das eine Adresse enthält, welche eine bestimmte Speichersteilβ in einem Kellerspeicher innerhalb des Mikroprozessors 500 identifiziert.
Bei der nächsten Operation werden drei in dem RAM befindliche "Vektor"-Register mit individuellen Initialisierungsadressen geladen, um entsprechende Abschnitte der RAMs 502 zu adressieren. Wie weiter unten ausführlicher beschrieben wird, ist jedes dieser Vektorregister in der Lage, nach einem bestimmten Zeitscheiben-Verfahren betrieben zu werden. An dieser Stelle sollte festgehalten v/erden, daß jedes dieser drei Vektor-Register mit der nächsten Adresse geladen werden kann, die für irgendeine einer Anzahl von Routinen benötigt wird, die ausgeführt werden, wenn die Inhalte der Vektor- . Register in den Befehlszähler des Mikroprozessors 500 geladen werden. Nach dem Zeitscheiben-Verfahren wird eine Operation jeder Routine, die von einem Vektor-Register in den Befehlszähler geladen wurde, während jedes Prozessor-Zyklus ausgeführt. Auf diese Weise werden alle durch jedes Vektor-Register behandelten Routinen aufgrund der Arbeitsgeschwindigkeit des Mikroprozessors scheinbar gleichzeitig ausgeführt, obschon sie in Wirklichkeit zeitlich gestaffelt ausgeführt werden. Das besondere Verfahren der Zeitscheibentechnik wird weiter unten ausführlicher erläutert,
809835/0873
SV-
Im Anschluß an die Initialisierung der Vektor-Register schaut der Prozessor nach, ob der START/STOP-Schalter 306 (Fig. 1) auf START eingestellt ist. Dies geschieht durch Abfragen des Bits (2) des Sequenz-Statustores 536, welches das Signal STARTSCHALTER enthält, wie oben erläutert wurde. Befindet sich der Schalter nicht in der Stellung START, so fährt der Prozessor mit dem Abfragen des Bits (2) fort, bis es einen hohen Wert annimmt. Wenn dieser Fall eintritt, wird eines der drei Vektor-Register in dem RAM, d. h. ein Kommando-Prozessor-Vektor-Register, auf die Anfangsadresse eines "Steuereinheit "-Hilf sprogramms (CUIN) eingestellt, so daß die entsprechende Speicherstelle in den ROMs 502 (im folgenden einfach als "ROM" bezeichnet) adressiert wird, wenn die Inhalte des Kommando-Prozessor-Vektor-Registers in den Befehlszähler des Mikroprozessors 500 geladen werden. Das Kommando-Prozessor-Vektor- Register kann auch auf die erste Adresse einer "CE-BOX" Hilfsroutine (CEIN) eingestellt werden, wenn mit dem Plattenlaufwerk eine externe Übungsanordnung oder "Exerciser" (Fig. 23) verbunden ist, um in einer noch zu beschreibenden Weise Diagnoseprogramme durchzuführen.
Ist das Kommando-Prozessor-Vektor-Register auf die Startadresse der Routine CUIN eingestellt, prüft der Prozessor, ob der ID-Stecker 324 (Fig. 1) fehlt. Ist dies der Fall, so wird das Kommando-Prozessor-Vektor-Register auf die erste Adresse der 11CE-BOX" Hilfsroutine CEIN, die in dem ROM gespeichert ist, eingestellt. Fehlt der ID-Sbecker nicht, bzw. nach dem letztgenannten Einstellvorgang, wird in dem RAM das "Netz-Bit" gesetzt zur etwaigen Übertragung zu der Säuerung 318 in dem STATUS-D-Byte, im Anschluß ar- ein durch die Steuerung 318 angelegtes STATUS-D-Kommandosignal.
Die nächste Operation in der Routine "Netz bereit/Status-Sequenz" besteht darin, zwei in den ROM-Speicherstellen gespeicherte Kodes zu holen, die jeweils die Anzahl der Köpfe in jeder Einheit des Plattenlaufwerks 10 angeben, woraufhin
809835/0873
diese Kodes in entsprechende RAM-Speichersteilen gespeichert werden. Nach dieser Operation prüft der Prozessor, ob das Bit (0) des Sequenz-Statustores wahr ist, d. ho, ob in die Platteneinheit 10 keine Kapsel 28 eingelegt ist. Ist dies der EaIl, dann wird das "KEINE KAPSEL "-Bit (2) des STATUS-B-Bytes, das in dem RAH gespeichert ist, gesetzt. Ist dies nicht der Fall, d. h., ist in dem Plattenwerk 10 eine Kapsel 28 eingelegt, bzw. nach dem letztgenannten Setzvorgang, schaut der Prozessor nach, ob die Anzahl der Köpfe auf der Einheit Null ist, d. h., ob es sich bei dem Plattenlaufwerk 10 um ein Modell handelt, welches keine ortsfesten Platten besitzt. Ist dies der EaIl, so wird das Bit (2) des STATUS-B-Bytes gesetzt. Ist dies "nicht der EaIl, bzw. nach der letzten Operation, schaut der Prozessor als nächstes nach, ob entweder eine Kapsel 28 in der Einheit 0 ist oder ob irgendeine Platte in der Einheit 1 vorhanden ist. Ist. dies nicht der EaIl, so betritt das Programm eine Routine "Hetzabfall-Status" (PDSTAT), die weiter unten beschrieben wird.
War die Antwort auf die letzte Abfrage ja, dann hält die nächste Operation die Uetzspannung aufrecht, auch wenn der START/STOP-Schalter eventuell auf STOP geschaltet ist«. Hieran schließt sich die weiter unten beschriebene TJnterroutine PUDAC an. Uach Ausführung dieser Routine folgt eine TJnterroutine CKACS, die ebenfalls weiter unten erläutert wird. Hieran anschließend prüft der Prozessor , ob die Erontklappe 24- (s. Eig«, 1) geschlossen ist. Dies wird bewirkt, indem der Zustand des Bits (3) des Sequenz-Statustores 536, der das oben erwähnte Signal KLAPPENSCHALTER enthält, abgefragt. Ist die Klappe nicht verschlossen, dann wird wiederum die ünt err out ine CKACS durchlaufen. Ist die Klappe verschlossen, wird wiederum die Unterroutine PUDAC ausgeführt.
Die nächste Operation besteht darin, die Bits des in dem RAM gespeicherten Sequenz-Steuer-Byte KLAPPENSOLENOID VERRIEGELT,
809835/0873
SPINDSL-ANTRIEBSSTEUERUNG und START BÜRSTENZYKLUS für die etwaige Zuführung durch das Sequenz-Steuertor 538 (Fig. 11) an die entsprechenden Teile der Platteneinheit zu setzen. An diese Operation schließt sich eine nochmalige Ausführung der Unterroutine PUDAC an, an die sich wiederum das Rücksetzen des Bits START BÜRSTENZTKLUS anschließt. Hiernach wird nochmals die Unterroutine PUDAC ausgeführt, und danach prüft der Prozessor, ob die Platten 16a bis I6d die richtige Geschwindigkeit erreicht haben. Ist dies nicht der Fall, wird eine Routine "noch nicht auf Betriebsgeschwindigkeit" (NUTS) ausgeführt. Falls ja, wird das Bit (1) des STATUS-B-Bytes im RAM gesetzt. Hierauf erfolgt das Umschalten vom Zustand "Kopf zurückgezogen" in den Zustand "servogesteuert", was durch Setzen des Bits (2), d. h. SERVOSTEUERUNG, des Sequenz-Steuerbytes im RAM zwecks Zuführung durch das Tor zum Kopf-Rückziehmachanismus (nicht gezeigt) des Plattenlaufwerks 10 geschieht. Nach dieser Operation betritt das Programm eine Routine SCCMPR, die nachfolgend beschrieben wird.
Anhand von Fig. 27 soll im folgenden die Routine SCCI-IPR beschrieben werden. In dieser Routine schaut der Prozessor erst nach, ob in das Plattenlaufwerk 10 eine Kapsel 28 eingelegt ist. Dies geschieht, indem das Bit (0) des Sequenz-Statustores, d. h., KAPSEL AUS, abgefragt wird. Ist in dem Plattenlaufwerk 10 eine Kapsel 28 eingelegt, bestimmt der Prozessor, ob ein Zeitintervall von einer Sekunde verstrichen ist. Falls nicht, berechnet der Prozessor die Anzahl der Sektoren auf der Platte 16a der Einheit 0, was von G33. Sektox'-0-Zählertor abgeleitet wird. Daraufhin bestimmt der Prozessor, ob diese Berechnung in dem Zyklus abgeschlossen ist. Falls nicht, kehrt das Programm zu der Eine-Sekunden-Abfrage zum Wiederholen dieser Sequenz zurück. Falls ö&» bzw. nach der Feststellung, daß keine Kapsel 28 eingelegt ist, prüfb der Prozessor, ob wenigstens eine ortsfeste Platte in der Einheit 1 vorhanden ist.
809835/0873
Handelt es sich bei dem Plattenlaufwerk um ein Modell, welches wenigstens eine ortsfeste Platte 16 aufweist, dann bestimmt der Prozessor, ob ein Zeitintervall von einer Sekunde aufgetreten ist. Falls nicht, berechnet er die Anzahl der Sektoren jeder Platte 16 der Einheit 1 durch Abtasten des Sektor-1-Zählertores. Daraufhin überprüft der Prozessor, ob die Berechnung während des Zyklus abgeschlossen wurde. Palis nicht, kehrt das Programm zu der letztgenannten Eine-Sekunden-Abfrage zurück und wiederholt die nachfolgende Sequenz.
Ist die Sektorberechnung für die Einheit 1 abgeschlossen, prüft der Prozessor, ob die Sektorzählung für Einheit 0, die in einem Register des RAM gespeichert ist, den Wert Null hat. Ist dies der Fall, führt der Prozessor eine · Routine HLR 1 durch, die unten beschrieben wird«, Falls nicht, prüft der Prozessor, ob die Sektorzählung für die Einheit 0 der Sektorzählung für die Einheit 1, die in einer anderen RAM-Speicherstelle gespeichert ist, entspricht.
Diese Abfrage wird durch den Mikroprozessor 500 bewirkt, indem die Sektor-Zählwerte für die Einheiten 0 und 1 aus dem RAM geholt und verglichen werden. Wenn die Sektor-Zählwerte für die Einheiten 0 und 1 nicht gleich sind, ist eine Nichtübereinstimmung aufgetreten. Der Prozessor bestimmt, ob diese Nichtübereinstimmung zweimal aufgetreten ist. Ist dies nicht der Fall, so beginnt wiederum die Routine SCCMPR. Ist zweimal Nichtübereinstimmung aufgetreten, oder hat die obige Eine-Sekunden-Abfrage ein positives Ergebnis geliefert, dann setzt der Prozessor das Bit (5) im STATUS B-Byte-Register im RAM, d. h., KAPSEL MIT UNZULÄSSIGER SEKTOREINTEILUNG, und beginnt die Ausführung einer Routine "Netzabfall" (PWRDWN), die unten beschrieben wird«,
Ergab die Frage, ob in der Einheit 1 eine Platte vorhanden ist, ein negatives Ergebnis, oder ergab die Frage, ob die Sektorzählung für Einheit 0 gleich ist der Sektorzählung für
809835/0873
as
die Einheit 1, ein positives Ergebnis, dann prüft der Prozessor wiederum, ob in dem Plattenlaufwerk eine Kapsel 28 eingelegt ist. Falls nicht, verzweigt das Programm zur Routine HLR 1, die unten beschrieben wird. Falls ja, führt das Programm nacheinander die Unterroutinen IHLD0, DSTATUS und NÄCHST 0 durch, die jeweils weiter unten beschrieben werden. An dieser Stelle sollte jedoch festgehalten werden, daß das zweite Vektorregister in dem RAM Adressen für die Unterroutine NÄCHST 0 enthält. Diese Routine besteht aus mehreren unterschiedlichen Routinen, die in aufeinanderfolgenden Zyklen gemäß der oben erwähnten Zeitscheibentechnik, die weiter unten näher erläutert wird, ausgeführt werden.
Im Anschluß an die Unterroutine NÄCHST 0 bestimmt der Prozessor, ob die Kopf-Lade-Operation für die Einheit 0 abgeschlossen ist. Ist dies nicht der Fall, so kehrt der Prozessor zu der oben erwähnten Unterroutine DSTATUS zurück und führt diese sowie die Unterroutine NÄCHST 0 nochmals durch. Ist die Lade-Operation abgeschlossen, führt der Prozessor die Routine DSTATUS durch und bestimmt daraufhin, ob ein Zeitintervall von 10 ms verstrichen ist. Ist dies nicht der Fall, so wird zur Routine DSTATUS zurückgekehrt und die Abfrage wiederholt. Ist die Zeitsperre von 10 ms erreicht, führt der Prozessor nacheinander folgende Unterroutinen aus: IRST 0, DSTATUS, TRKFLW und NÄCHST0. Diese Routinen werden weiter unten beschrieben. Nach der Routine NÄCHST 0 fragt der Prozessor ab, ob auf der Einheit 0 eine Rückstell-Operation abgeschlossen ist. Die Art und Weise, in der jede Einheit zurückgestellt wird, wird weiter unten ausführlich erläutert.
Wurde bei der zuletzt erwähnten Abfrage die Antwort nein festgestellt, kehrt das Programm zur zuletzt ausgeführten Routine DSTATUS zurück und führt sie sowie die nachfolgenden Routinen nochmals aus. War die Rückstell-Operation beendet, fragt der Prozessor als nächstes ab, ob ein Flag RÜCKSTELLEN-0-UNVOLL-SiÄNDIG gesetzt war (Bit 4 des STATUS B-Bytes im RAiI). Palis ja, verzweigt das Programm zur Routine HLR 1. Falls nicht,
809835/0873
setzt der Prozessor das Bit BEREIT 0 in dem Ge samt--Status-Byte im RAM zur Übertragung zum Gesamt-Statustor 4-4-2 und setzt das ACHTUNG^-Flip-Flop 4-34- (Fig. 1O)0 Nach dieser Operation führt das Programm die Routine HLR 1 durch»
Im folgenden soll unter Bezugnahme auf Fig. 28 die oben erwähnte Routine HLR 1 beschrieben werden. Wie aus der Zeichnung hervorgeht, bestimmt in dieser Routine der Prozessor zuerst, ob in dem Plattenlaufwerk 10 wenigstens eine ortsfeste Platte vorhanden ist» Ist dies der Fall, führt der Prozessor nacheinander die folgenden Unterroutinen aus: IHLD1, DSTATUS und KlCHSTI. Das oben diskutierte dritte Vektorregister im RAM enthält Adressen für die Unterroutine NlCHSTi. Diese Routine umfaßt ähnlich wie die Routine N1CHST0 eine Mehrzahl unterschiedlicher Routinen, die in aufeinanderfolgenden Zyklen nach der ZeitScheibentechnik, die weiter unten ausführlich erläutert wird, ausgeführt werden.
Im Anschluß an die Routine NlCESTi 'bestimmt der Prozessor, ob die Kopf-Lade-Operation für die Einheit 1 abgeschlossen ist. Ist dies nicht der Fall, kehrt das Programm zur Routine DSTATUS zurück und führt diese und die Routine NÄCHST1 nochmals aus. Ist die Kopf-Lade-Operation schließlich abgeschlossen, führt der Prozessor die Routine DSTATUS durch und schaut dann nach, ob die Zeitsperre von 10 ms verstrichen ist» Ist dies nicht der Fall, wird wiederum die Routine DSTATUS ausgeführt und die Abfrage gemacht* Ist das Zeitintervall von 10 ms aufgetreten, führt der Prozessor nacheinander die fol- · genden Unterroutinen durch: IRST 1, DSTATuS, 'I1RElFLW und N1CHST1.
Nach der Ausführung dieser Unterroutinen bestimmt der Prozessor, ob die Köpfe für Einheit 1 rückgestellt wurden» Falls nicht, durchläuft das Programm zyklisch die Routinen DSTATUS, TRKFLW und NlCHSTi, bevor wiederum eine Abfrage erfolgt. Ist die Rückstell-Operation für die Einheit 1 ab-
809835/0873
geschlossen, fragt der Prozessor, ob das Flag RÜCKSTELLEN-1-UNVOLLSTÄNDIG gesetzt war (Bit 4- des STATÜS-B-Bytes im EAM). Falls ja, wird die Routine HLR1 wiederholt. Falls nicht, setzt der Prozessor das Bit BEREIT 1 in dem Gesamt-Status-Byte, sowie das ACHTUNG-1-Flip-Flop 4-36. Hiernach wird die Lampe ÜBERGANG 308 gelöscht.Dies tritt auch ein, wenn anfänglich "bestimmt wurde, daß nicht wenigstens eine ortsfeste Platte in der Einheit 1 vorhanden war. Der Prozessor verzweigt dann zum Haupt-Programm, das weiter unten "beschrieben wird.
Fig. 29 zeigt die Unterroutine PUDAC. Demnach führt der Prozessor zuerst die Unterroutine RSETUP und anschließend die Unterroutine CKACS durüh, die beide nachfolgend "beschrieben werden. Anschließend bestimmt der Prozessor, ob eine bestimmte Zeitsperre abgelaufen ist. Falls nicht, führt das Programm neuerlich die Unterroutine CKACS durch und fragt nochmals ab. Ist die Zeitsperre überschritten, kehrt das Programm zu derjenigen Routine zurück, von der aus die Unterroutine PUDAC aufgerufen wurde.
Fig. 30 veranschaulicht die Unterroutine RSETUP. Der Prozessor fragt zuerst ab, ob eine "Beendigung" (termination") ansteht, die weiter unten beschrieben wird. Falls ja, erfolgt eine Rückkehr zu der aufrufenden Routine. Falls nicht, setzt der Prozessor ein Mehrfach-Byte-Zählregister im RAM auf den Wert, der zuvor in den H- und L-Registern des Mikroprozessors eingestellt wurde. Dann setzt der Prozessor ein Mehrfach-Byte-Zähl-Flag und kehrt zu der entsprechenden Routine zurück. In. Fig. 3^ ist die Routine CKACS dargestellt. Der Prozessor sieht nach, ob entweder das Signal STARTSCHALTER oder AC AUS wahr sind. Falls ja, kehrt die Routine zur aufrufenden Routine zurück. Ist eines der beiden Signale falsch, betritt das Programm die Routine PWRDWN (NETZABFALL). Es sei daran erinnert,·daß diese Signale durch das Sequenzobatustor 536 dem Prozessor zugeführt 'werden. Die Fig. 26 bis 31 stellen zusammen die Netzspannungs-Bereitstellungsroutinen dar.
809835/0873
Die "Netzabfall"-Routine (PWRDWN) soll im folgenden unter Bezugnahme auf die Fig. 32 und 33 erläutert werden« Gemäß Pig. 32 schaltet der Prozessor zuerst die Lampe 308 ÜBERGANG ein. Dann führt er ein Unterprogramm IR1TCTEX aus, das unten in Zusammenhang mit Pig. 33 erläutert wird. Nach der Ausführung dieser Routine loscht der Prozessor die Bits SPINDEL-ANTRIEBSSTEUERUNG und SERVOSTEUERUNG, die durch das Sequenz-Steuertor 538 zugeführt werden, wodurch der Spindelmotor 58 abgeschaltet und der Kopf-Rückziehmechanismus in die Lage versetzt wird, die Köpfe zurückzuziehen. "Im Anschluß an diese Operation fragt der Prozessor ab, ob eine Zeitsperre von einer Sekunde verstrichen ist. Falls nicht, wartet der Prozessor, bis diese Zeit verstrichen ist,und erzeugt dann das Bit SPINDELBREMSE, welches durch das Tor 538 geleitet wird, um die Spindel 30 anzuhalten. Der Prozessor wartet dann 25 Sekunden und schaltet das Licht 308 ÜBERGANG ab, und löscht das Signal SPINDELBREMSE, wodurch die Spindelbremse ausgeschaltet; wird. Dieser Teil der Routine markiert auch den Beginn der oben erwähnten Routine PDSTAT.
Die nächste Operation für den Prozessor 'besteht darin, die Unterroutine CMDPRGS auszuführen, die weiter unten beschrieben wird. Hieran schließt sich die Abfrage an, ob der Startschalter sich in der Stellung START befindet (das Signal . STARTSCHALTER zum Tor 536 ist wahr). Ist dies der Pail, so wiederholt das Programm diesen Befehl. Befindet sich der Schalter in der Stellung STOP, löscht der Prozessor das Sequenz-Steuertor 538 und geht zur Routine STSEQ über.
Gemäß der in Pig. 33 dargestellten Unterroutine IRTCTEX führt der Prozessor nacheinander die Unterroutinen ZUZI0 und ZUZI1 durch. Daran anschließend bestimmt der Prozessor, ob eine Zurückzieh-Zeitsperre verstrichen ist. Ist dies nicht der Pail, wartet der Prozessor, bis dieser Zustand eingetreten ist und führt dann nacheinander die Unterroutinen XTRTM0 und
!09835/oa?
XTRTM1 durch., welche unten erläutert werden. Anschließend kehrt das Programm zu derjenigen Routine zurück, welche die Unterroutine IRTCTEX aufgerufen hat.
Nachfolgend wird unter Bezugnahme auf Fig. 3^ die Haupt-Pro gramm-Routine erläutert. Wie aus der Zeichnung hervorgeht, "besteht sie aus der aufeinanderfolgenden Abwicklung folgender Unterroutinen: DSTATUS, CMDPRCS, TRKFLW,NÄCHST0, TRKFLW, und N1CHST1.
Im folgenden wird Bezug genommen auf die Fig. 35 - 37 > anhand derer die Routine "Prüfen Antriebsstatus" (DSTATUS) beschrieben wird. Nach Fig. 35 schaut der Prozessor zuerst nach, ob sich der Sbartschalter in der Stellung START befindet. Falls nicht, führt er eine Routine RRDYS aus und verzweigt dann zu der oben beschriebenen Routine PWRDWN. Befindet sich der Startschalter in der Stellung START, schaut der Prozessor nach, ob die Platten die richtige Betriebsgeschwindigkeit in der oben erläuterten Weise erreicht haben. Falls nicht, setzt der Prozessor das Bit KEINE BETSIEBSGESCHWINDIGKEIT in dem STATüS-B-Byte im RAM und führt dann die Unterroutine RRDYS aus, bevor eine Verzweigung zur Routine PWRDWN stattfindet. Dieselbe Sequenz wird auch während der Unterroutine NUTS ausgeführt. Haben die Platten die richtige Betriebsgeschwindigkeit erreicht, prüft der Prozessor, ob eine BEENDIGUNG, anhängig ist, d. h. ob für einen bestimmten Zeitraum ein AC-Netzabfall eingetreten ist.
Ist keine BEENDIGUNG anhängig, prüfb der Prozessor, ob das Signal AG AUS einen niedrigen Wert hat;. Ist dies der Fall, kehrt der Prozessor zu der die Routine DSTATUS aufrufenden Routine zurück. Ist das Signal AC AUS hoch, was bedeutet, daß die AC-Netzspannung nicht in Ordnung ist, setzt der Prozessor eine 200 ms dauernde BEENDIGUNGS-Zeitsperre und setzt dann das Bit NETZABFALL in dem STATUS-B-Byte im RAM, welches anschließend an die Steuerung 318 nach. Erhalt eines Kommandos
809835/0873
derselben geleitet wird. Nach dieser Operation führt der Prozessor die Unterroutine ERDYS aus, bevor eine Rückkehr zu der die Routine DSTATUS aufrufenden Routine stattfindet.
War während der Abfrage eine BEENDIGUITG anhängig, prüft der Prozessor» ob die Zeitsperre von 200 ms abgelaufen ist. Palis nicht, kehrt das Programm zu der aufrufenden Routine zurück. Palis ja, prüft der Prozessor, ob die AC-Netζspannung in Ordnung ist. Ist dies nicht der Fall, wird zu der Routine PWRDWN verzweigt. Ist die Netzspannung in Ordnung, setzt der Prozessor das Flag BEENDIGUNG ANHÄNGIG in dem RAM zurück, um anschließend das Bit NETZABFALL· im STATUS-B-Byte im SAM zurückzusetzen. Hieran schließt sich die Ausführung einer Unterroutine SRDYS an, bevor zu der aufrufenden Routine zurückgekehrt wird«.
Im folgenden soll anhand der Fig. 36 die Unterroutine SRDYS erläutert werden. Der Prozessor schaut zuerst nach, ob in der Einheit 0 eine Kapsel 28 eingelegt ist. Ist dies der Fall, veranlaßt er, daß das Bit BEREIT 0 in dem Gesamtstatus-Byte gesetzt wird und setzt das ACHTUNG-0-Flip-Flop 4-34-. Ist keine Kapsel eingelegt, oder sind BEREIT 0 und ACHTUNG gesetzt, bestimmt der Prozessor, ob wenigstens eine ortsfeste Platte in der Einheit 1 vorhanden ist, d„ h., ob dieses verwendete Modell des Plattenlaufwerks 10 wenigstens eine ortsfeste Platte 16 besitzt. Ist in der Einheit 1 wenigstens eine Platte 16 vorhanden, werden das Bit BEREIT 1 und.das ACHTUNG-1-Flip-Flop gesetzt. Ist keine feste Platte vorhanden, oder sind BEREIT 1 und ACHTUNG 1 gesetzt, kehrt das Programm zu derrjenigen Routine surück, die die Routine SRDYS aufgerufen hat. Die Routine RRDYS ist identisch mit der Routine SRDYS mit der Ausnahme, daß sie die Bits BEREIT zurücksetzt; diese Routine ist in Fig. 37 dargestellt»
Im folgenden wird anhand der Pig„ 38 und 39 die "Spurverfolgungs-Routine" (TRSFLW) beschrieben. Nach Fig. 38 prüft der Prozessor zuerst, ob das Signal NEUER SEKTOR einen ·
80983S/0871
hohen Wert hat. Es sei daran erinnert, daß dieses Signal dem Prozessor von dem Spur-Eingangstor 722 (Fig. 17) zugeführt wird. Ist dieses Signal niedrig, dann kehrt das Programm zu der die Routine TEKPLW aufrufenden Routine zurück. Ist das Signal "high", schaut der Prozessor, o"b das von dem Spur-Status-Eingangstor 700 dem Prozessor eingegebene Signal SCHUTZBAND einen hohen Wert hat. Dieses Signal ist so lange auf hohem Wert, wie der Kode "9E" fortfährt, von dem Lesekopf in jedem Sektor der gelesenen Spur gelesen zu werden. Der Kode 9E ist in den Schutzband-Spuren -2 bis -6 gespeichert, was oben bereits erläutert wurde.
Ist das Signal SCHUTZBAND hoch, setzt der Prozessor in dem RAM das Flag SGHUTZBAIiD. Ist das Signal SCHUTZBAND niedrig, oder ist das Flag gesetzt,nachdem das Signal hoch ist, schaut der Prozessor, ob das dem Prozessor durch das Spurstatus-Eingangstor 700 zugeführte Signal DATENFELD einen hohen Wert hat. Ist dies der Fall, setzt der Prozessor in dem RAM ein Flag DATENFELD. Falls nicht, bzw. nachdem das Flag nach hohem Signal gesetzt wurde, löscht der Prozessor das Flip-Flop NEUER SEKTOR (nicht gezeigt), welches das Signal NEUER SEKTOR erzeugt.
Danach prüft der Prozessor, ob die lesende Kopf-Schlitten-Anordnung sich in Bewegung befindet. Ist dies der Fall, kehrt das Programm zu der die Routine TRKFLW aufrufenden Routine zurück. Falls nicht, schaut der Prozessor, ob die Kopf-Schlitten-Anordnung auf die Spur Null (0) zurückgestellt ist. Ist dies der Fall, kehrt das Programm zu der aufrufenden Routine zurück. Falls nicht, fragt der Prozessor als nächstes ab (s. Fig. 39) > ob die lesenden Köpfe sich auf der Spur befinden, d. h. ob entweder das Signal WDL-^-SPUR oder WDL-I-SPUR einen hohen Wert hat. Es sei daran erinnert, daß diese Signale dem Prozessor durch das Spurstatus-Eingangstor 700 zugeleitet werden.
Ist das Signal WDL-SPUR niedrig, setzt der Prozessor einen
809835/0873
Software-"Auf-Spur"-Zähler in dem RAM auf Null. Ist das Signal auf hohem Wert, wird der "Auf-Spur"-Zähler inkrementiert, und der Prozessor prüft, ob der "Auf-Spur"-Zähler auf drei erhöht wurde. Falls nicht, kehrt das Programm zu der aufrufenden Routine zurück. Enthält der "Auf-Spur"-Zähler einen Zählerstand von drei, setzt der Prozessor in dem RAM ein Flag AUF SPÜR, das einem Eingang des entsprechenden Zustandstores 346 oder 348.zugeführt wird, je nachdem, um welchen Fall es sich handelt (s„ Fig. 10). Nachdem das Flag AUF SPÜR gesetzt ist, wird der "Auf-Spur"-Zähler vermindert, und das Programm kehrt zu der die Routine TRKFLW" aufrufenden Routine zurück»
Anhand von Fig. 40 soll nun die Routine CMDPRCS erläutert werden. Es sei daran erinnert, daß eines der sogenannten "Vektor"-Register in dem RAM das Kommando-Prozes.sor-Vektor-Register ist. Es kann mit vier unterschiedlichen Anfangsadressen geladen werden, welche unterschiedlichen Speicherplätzen in dem ROM entsprechen und den Beginn vier verschiedener Routinen kennzeichnen. Diese Routinen sind "Steuereinheit" (CUIN), 'OE Box"(CEIN), "Lesen Zylinder" (RZYL0/1) und "Lesen Kopf" (RDHD0/1). Ist dieses Vektor-Register mit der Anfangsadresse eines dieser vier Routinen geladen und wird gewünscht, diese Routine auszuführen, wird der Inhalt des Vektor-Registers von dem RAM über interne Register in dem Mikroprozessor 500 in den Befehlszähler übertragen. Auf diese Weise ist es möglich, irgendeine der vier Routinen während des Arbeitsintervalls einer einzelnen Routine auszuführen. Dies ist das Merkmal der oben angedeuteten speziellen Zeitscheiben-Technik. Im folgenden soll die Bezeichnung 0/1 für eine Routine anzeigen, daß diese Routine identisch für sich auf die Einheit 0 und die Einheit beziehende Operationen ist.
Fig. 41 veranschaulicht die Routine NICHST0/1, d. h. die Routinen für N1CHST0 und NÄCHST1, die identisch sind. Es sei daran erinnert, daß die zwei anderen Vektor-Register in dem RAM,
•08835/0873
die für das Zeitscheibenverfahren verwendet x^rerden, die NlCHST0-und NlCHSTI-Vektorregister sind. Jedes dieser Register kann irgendeine Anzahl von Anfangsadressen enthalten, welche auf den Anfangsbefehl in dem ROII für eine entsprechende Mehrzahl verschiedener Hilfsroutinen zeigt. Diese Routinen werden aufeinanderfolgend ausgeführt, und zwar jede während eines Verarbeitungszyklus; folgende Routinen sind enthalten: "In Ruhe" (IDL0/1), "Such-Überwachung" (StWO, "Such-Einsteilung" (SE0/1), "Schutzband-Überwachung" (SBtWi.) ,"Eine-Spur-Suche" (ESS0/1), "Rückstell-Erfassung" (RA0/i), "Kopf-Lade-Überwachung" (KLÜ0/1) und "überwachung zurückziehen" (RZÜ0/1). Ist jede einzelne dieser Routinen abgeschlossen, so veranlaßt der letzte Befehl, daß die entsprechende N1CHSÖ30-oder NA'CHSTi-Adresse auf eine Adresse geändert wird, die auf den ersten Befehl für die nachfolgende Routine in der auszuführenden Folge zeigt, wie in Fig. 41 dargestellt ist. Diese neue Hilfsroutine der Haupt-NÄCHST0/1 -Routine wird dann während des nächsten Verarbeitungszyklus ausgeführt.
In Fig. 42 ist die CUIN-Routine der Haupt-Routine CMDPRCS dargestellt, wie sie durch das Kommando-Prozessor1-1/ektorregister in dem RAM behandelt wird. Der Prozessor schaut zuerst nach, ob durch die Platteneinheit 10 von der Steuerung $18 ein Kommando empfangen wurde, d. h., ob das Signal EINGANG VOLL, das über das E/A-Identifizierungstor 350 zugeführt wird, einen hohen Wert hat. Falls nicht, kehrt der Prozessor zu der aufrufenden Routine CMDPRCS zurück. Falls ja, bestimmt der Prozessor die ausgewählte Einheit durch Abfragen , ob das Signal KOMMANDO-SIJiHEIT 1 einen hohen Wert hat (Einheit 1 ist ausgewählt) oder einen niedrigen Wert hat (Einheit 0 ist ausgewählt). Nach diesem Schritt, nach dem auch der Beginn der Routine DECMD liegt, dekodiert der Prozessor das Kommando, welches eines der ersten neun der in Fig. 42 dargestellten neunzehn Kommandos sein kann, und führt es aus. Stellt das empfangene Kommando keines dieser neun Kommandos dar, führt der Prozessor eine Routine "unzulässiges
809835/0.873
Kommando" (ILCMD0/1) durch. Jede der aufgelisteten neunzehn Kommando-Routinen wird nachfolgend beschrieben.,
Im folgenden wird Bezug genommen auf Pig. 43, in der die in Fig. 42 angedeutete Routine STATUS0/1 dargestellt ist. Bei dieser Routine überprüft der Prozessor das empfangene Kommando, um zu sehen, welcher Status angefordert ist. Handelt es sich um den STATUS A, führt der Prozessor das STATUS-A-Byte von dem RAM durch das Ausgangstor 352 zu der Steuerung 318» Dann kehrt das Programm zu der aufrufenden Routine CMDPRCS zurück. Handelt es sich um den STATUS B, prüft der Prozessor, ob ein Lese/Schreib-(R/W-)Statusfehler vorlag. Falls ja, setzt der Prozessor in dem RAM das Flag R/W-FEHLER. Falls nicht, bzw. nach der letztgenannten Operation, wird das R/W-FEHLER-Bit (3) das oben bestimmt wurde, in dem STATUS-B-Byte gesetzt, welches danach der Steuerung 318 über das. Ausgangstor 352 zugeführt wird.
Handelt es sich bei dem Kommando um eine Anforderung des STATUS C, dann wird das STATUS-C-Byte über das Ausgangstor an die Steuerung 318 geführt. Hieran schließt sich das Rücksetzen des Flags R/W-FEHLER an| anschließend erfolgt die Rückkehr zu der aufrufenden Routine CMDPRCS0 Handelt es sich bei dem empfangenen Kommando um eine STATUS-D-Auforderung, liest der Prozessor das Signal SCHREIBSCHUTZ 0 oder 1, das durch das-E/A-Identifizierungstor 350 zugeführt wird und lädt es dann in das STATUS-D-Bit (5)o Anschließend wird das STATUS-B-Byte durch das Äusgangstor 352 an die Steuerung gegeben und anschließend wird das Bit NETZ BEREIT in diesem Byte innerhalb des RAM zurückgesetzte Daran anschließend kehrt das Programm zu der aufrufenden Routine CMDPRCS zurück«
Die in Fig. 42 dargestellte Routine SUCHE 0/1 soll nun anhand der Fig. 44 erläutert werdeno Der Prozessor führt zuerst eine Routine LÖSTA0/1 aus und setzt dann das Kommando-Prozessor-Vektorregister in dem RAM auf die Startadresse der Routine RCYL0/1. Hieran schließt sich das Initialisieren des Bytezählers in dem RAM an. Danach schaut der Prozessor,
'809836/0873'
ob ein anderes Kommando-Byte empfangen wurde, in dem abgefragt wird, ob das durch das E/A-Identifizierungstor 350 angelegte . Signal EINGANG VOLL einen honen Wert hat. Dieser Punkt der Routine stellt, auch den ersten Befehl der Routine RZYL0/1 dar. Ist das Signal EINGANG VOLL auf niedrigem Wert, kehrt das Programm zu der aufrufenden Routine CMDPRCS zurück. Hat das Signal einen hohen Wert, fragt der Prozessor ab, ob die in das Eingangstor neu geladenen Daten ein Kommando darstellen. Dies geschieht durch Abfragen des an den Prozessor durch das E/A-Identifizierungstor 350 angelegte Signal KOMMANDO.
Ist das Signal KOMMANDO hoch, verzweigt das Programm zu der Routine XNCMD0/1. Hat das Signal KOMMANDO einen niedrigen Wert, was bedeutet,daß die neue Eingabe ein Zylinder-Byte ist, liest der Prozessor das Byte ZYLINDER-ADRESSE LS und speichert es in dem RAM. Dann erhöht der Prozessor den Software-Byte-Zähler im RAM und bestimmt anschließend, ob zwei Zylinder-Adreß-Bytes gelesen wurden, ialls nicht, kehrt das Programm zu der aufrufenden Routine CMDPRCS zurück. Beim nächsten Durchgang wird der Prozessor das Byte ZYLINDER-ADRESSE MS lesen und speichern, und den Bytezähler wiederum erhöhen. Diesmal wird erkannt werden, daß die beiden erforderlichen Bytes der Zylinderadresse gelesen wurden.
Tritt letztgenannter Fall ein, schaut der Prozessor nach, ob die soeben gelesene Zylinderadresse für eine Spurstelle größer oder gleich der Spur 0 ist und kleiner ist als die Spur 430. Bedeutet die Zylinderadresse eine andere als die Spur 0 - 429, setzt der Prozessor ein 3it UNZULÄSSIGE ZYLINDERADRESSE in dem STATUS-A-Byte des RAM und verzweigt dann zu einer Routine ABBRUCH 0/1. Bedeutete die Zylinderadresse eine Spur zwischen den Spuren 0 und 430, ausschließlich, stellt der Prozessor verschiedene Status-Prüfparameter bereit und führt dann die Status-Prüf-Unterrroutine STATCK0/1 aus.
Nach dieser Operation berechnet der Prozessor die zurückzulegende Entfernung (DTT, distance-to-travel) zwischen der
809835/0873
tatsächlichen Spur und der befohlenen Spür. Diese zwei Positionen werden in separaten Registern des HAM gespeichert, und durch den Prozessor aufgerufen und verglichen. Das Vergleichsergebnis stellt den Wert DTT dar. Danach schaut der Prozessor, ob dieser Wert gleich 0 ist. Ist dies nicht der Fall, prüft er, ob er ;kleiner 0 ist (eine Suche in der umgekehrten Richtung ist erforderlich). Ist DTT kleiner 0,- bestimmt der Prozessor den Absolutwert von DTT, d. h», /DTT/. Ist DTT nicht kleiner als 0, oder ist der Absolutwert /DTT/ von DTT bestimmt, nachdem DTT kleiner als 0 war, berechnet der Prozessor den optimalen Verlauf des Geschwindigkeit spr of ils für DTT oder /DTT/. Dieser Kode wird schließlich in das Verlauf-Index-Register 622 (Fig. 13) geladen; der Zweck dieser Operation wurde oben erläutert.
Dann führt der Prozessor eine Unterroutine SRVOGO 0/1 aus und setzt dann die Register mit der laufenden Zylinderadresse im RAM auf den Wert der neuen Zylinderadresse. Danach oder unmittelbar nachdem der Prozessor festgestellt hat, daß DTT den Wert 0 hat, wird ein Flag AUF SPUR gesetzt. Hieran schließt sich das Initialisieren eines Zählregisters "Suche unvoll ständig" im RAM und das Setzen von Flags IN BEWEGUNG und EINORDNEN KOMMANDO IN FORTSCHRITT an. Hiernach prüft der Prozessor, ob der ausgewählte Kopf sich auf der ausgewählten Einheit befindet. Falls.ja, wird das Signal ABTASTER AN auf niedrigen Wert gebracht. Falls nicht, bzw. nach dem Zurücknehmen des Signals ABTASTER AN, wird das Vektorregister NÄCHST0 oder NÄCHST1 auf die erste Adresse für die Routine SÜ0/1 in den ROM eingestellt, und das Programm kehrt zu der aufrufenden Routine CMDPRCS"zurück.
Im folgenden wird anhand von Fig. 45 die Kopf auswahl-Kommando-Routine (KAW0/1), die in Fig. 42 angedeutet ist, beschrieben. Der Prozessor führt zuerst eine Unterroutine LÖSTA0/1 durch und setzt dann das Kommando-Prozessor-Vektorregister im RAM auf die erste Adresse für die Routine RDHD0/1 im ROM. Die letztgenannte Routine wird dann ausgeführt, indem der Inhalt
808835/0S73
des Vektorregisters in den Befehlszähler des Mikroprozessors 5OO geladen wird. Gemäß der RDHD0/1-Routine schaut der Prozessor zuerst, ob das Eingangstor 34-4- voll ist, d. h., ob das Signal EINGANG VOLL, welches durch das E/A-Identifizierungstor 350 dem Prozessor zugeführt wird, einen hohen Wert hat. Falls nicht, kehrt das Programm zu der aufrufenden Routine CMDPRCS zurück. Falls ja, prüft der Prozessor, ob ein neues Kommando empfangen wurde. Falls ja, verzweigt das Programm zu der Routine XNCMD0/1. Falls nicht, liest der Prozessor das Byte KOPFAUSWAHL und speichert es in dem RAM.
Im Anschluß an diese Operation wird das Kommando-Prozessor-Vektorregister im RAM auf die erste Adresse für die CUIN-Routine (Fig. 4-2) zurückgesetzt. Die nächste Operation besteht darin zu prüfen, ob die KOPFADRESSE einen vorhandenen Kopf definiert, d. h., ob sie zulässig ist. Falls nicht, setzt der Prozessor das Bit UNZULÄSSIGE KOPFADRESSE im STATUS-A-Byte des RAM und führt dann die Routine ABBRUGH0/1 aus. Wenn das Byte HOPFADRESSE zulässig war, stellt der Prozessor verschiedene Status-Prüfparameter bereit und führt dann die Routine STATCK0/1 durch. Die nächste Operation besteht darin, das Byte ZYLINDERADRESSE MS in das Kopf-Auswahltor 832 zu laden, damit es aus diesem ausgegeben werden kann. Dann setzt der Prozessor das Bit EINHEIT AUF SPUR in dem entsprechenden Zustandstor-Byte des RAM zurück, welches durch das entsprechende Zustandstor an die Steuerung 318 gegeben wird. Ist das Bit EINHEIT AUF SPUR gesetzt, löscht der Prozessor den entsprechenden BELEGT-Schalter und setzt dann das entsprechende ACHTUNG-Flip-Flop. Im Anschluß daran setzt der Prozessor die nächste Adresse in dem NÄCHST0- oder NÄCHSTI-Vektorregister auf die IDL0/1-Routine und kehrt dann zu der Routine zurück, welche GMDPRCS aufgerufen hat.
Im folgenden wird Bezug genommen auf Fig. 4-6, in der die in Fig. 4-2 angedeutete Rückstell-Kommando-Routine (RÜST0/1) beschrieben ist. Bei dieser Routine führt der Prozessor zuerst
809835/0373
- 1P9 -
die Unterroutine LÖSTA0/1 durch und setzt dann verschiedene Status-Prüfparameter bereit. Hieran schließt sich das Ausführen der Unterroutine STATCK0/1 an. Nach diesem Schritt, an welcher Stelle auch die Routine IRSTR0/1 beginnt, setzt der Prozessor verschiedene Einheiten- und Kopfauswahl-Flags und setzt dann das Bit EINHEIT AUF SPUR zurück und setzt das Bit ABTASTER Ali. Hieran schließt sich das Bereitstellen verschiedener Parameter für die Rückstellbewegung und das Ausführen der Unterroutine SRVOGO0/1 an.
Im Anschluß an diese Operation initialisiert der Prozessor ein Rückstellen-Zeitsperren-Zählregister im RAM und setzt die folgenden Flags im RAM: IN BEWEGUNG, EINORDNEN KOMMANDO IN FORTSCHRITT und NULL-RÜCKSTELLUNG. Dann setzt der Prozessor ein Flag LESE/SCHREIB-(R/¥-)KANAL BELEGT und ändert dann die Adresse in dem entsprechenden NÄCHST0-oder NÄCHST1-Vektorregister im RAM auf die erste Adresse in der Routine SBÜ0/1. Dann kehrt das Programm zu der aufrufenden Routine von CMDPRCS zurück.
Anhand von Fig. 47 wird nun die Kopf-Lade-Kommando-Routine (LDKO0/1), die in Fig. 42 angedeutet ist, beschrieben= Zuerst stellt der Prozessor verschiedene Status-Prüfparameter bereit und führt dann die' Unterroutine STATCK0/1 durch« Anschließend setzt der Prozessor ein KOPF-LADE-Zextsperren-Register auf einen Wert, der 750 ms entspricht= Hieran schließt sich das Bereitstellen verschiedener Kopf-Lade-Bewegungsparameter und das Ausführen der Routine SRVOGO0/1 an. Daran anschließend werden die Flags IN BSiEGUNG und EINORDNEN KOI-IMANDO IN FORTSCHRITT gesetzb. Bann setzt der Prozessor, je nachdem, um welchen Fall es sich handelt, das -SXCHST0- oder NlCHSTi-Vektorregister auf die erste Adresse für die Routine KLÜ0/1 in dem ROM und kehrt dann zu der aufrufenden Routine von CMDPRCS zurück»
Anhand von Fig. 48 soll nun die Schreibschutz-Komniando-Routine (SCHSCH0/1), die in Fig. 42 angedeutet ist, beschrieben werden,
809835/0873
Der Prozessor führt zuerst die Routine LÖSTA0/1 aus und prüft dann, ob das Plag EINORDNEN KOMMANDO IN FORTSCHRITT gesetzt ist. Falls ja, verzweigt das Programm zur Routine ILCMD0/1. Falls nicht, prüft der Prozessor, ob das Bit SCHREIBSCHUTZ-ZUSTAND im STATUS-D-Byte gesetzt oder zurückgesetzt ist. Ist es gesetzt, setzt der Prozessor das Bit EINHEIT VOR SCHREIBEN GESCHÜTZT in dem entsprechenden Zustands-Byte und kehrt dann zu der aufrufenden Routine von CMDPRCS zurück. War das Bit SCHREIBSCHüTZ-ZUSTAND zurückgesetzt, prüft der Prozessor, ob der entsprechende Schreibschutz-Schalter eingestellt war. Falls Ja, verzweigt das Programm zur RoutineILCMD0/1. Falls nicht, setzt der Prozessor das Bit EINHEIT VOR SCHREIBEN GESCHÜTZT in dem entsprechenden Zustands-Byte zurück und kehrt dann zu der aufrufenden Routine von CMDPRCS zurück.
Anhand von Fig. 4-9 soll nun die Versetzungs-Kommando-Routine (VERS0), die in Fig. 42 angedeutet ist, erläutert werden. Zuerst führt der Prozessor die Routine LÖSTA0/1 aus und stellt dann verschiedene Status-Prüf-Parameter bereit, bevor er die Routine STATCK0 ausführt. Hieran schließt sich das Setzen des Zustandsbits EINHEIT VOR SCHREIBEN GESCHÜTZT an. Als nächstes schaut der Prozessor nach dem Absolutwert der befohlenen Versetzung und bestimmt dann, ob es sich um eine positive oder negative Versetzung handelt. Handelt es sich um eine negative, setzt .er den Versetzungswert negativ. Handelt es sich um eine positive Versetzung, bzw. ist die letztgenannte Operation durchgeführt, speichert der Prozessor den mit einem Vorzeichen versehenen Versetzungswert in dem RAM und kehrt dann zu der aufrufenden Routine von CMEPRCS zurück.
Fig. 50 zeigt die in Fig. 42 angedeutete Kommando-Routine für das Zurückziehen des Kopfes (ZURZ0/1). Der Prozessor führt zuerst die Unterroutine ZUZI0/1 durch und stellt dann ein Zurückzieh-Zeitsperren-Register im RAM auf einen Wert ein, der 800 ms entspricht und setzt dann .je nach vorliegendem Fall das NÄCHST0- oder NlCHSTt-Vektorregister auf die erste
809835/0873
Adresse der Routine RZtJ, um anschließend zu der aufrufenden Routine von CMDPRCS zurückzukehren.
Die oben angedeutete Routine ZUZI ist in I1Xg. 51 dargestellt. Der Prozessor stellt verschiedene Parameter der Zurückziehbewegung bereit und führt dann die Routine SRVOGO0/1 aus, bevor er zur aufrufenden Routine von CMDPRCS zurückkehrt.
Die "Such-Überwachungs"-Hilfsroutine (SÜ0/1), die in Fig. 4-1 angedeutet ist, ist eine derjenigen Programmroutinen, die nacheinander jedesmal abwickelbar sind, wenn die NÄ'GHST0- oder NÄCHSTI-Haupt-Routine ausgeführt werden soll, d. h., das Zeitscheibenverfahren nach der Erfindung durchgeführt wird. Diese Such-Überwachungs-Routine wird in Fig. 52 erläutert. Der Prozessor führt zuerst die Routine INC0/1? aus und prüft dann, ob das entsprechende Signal SPERREN einen hohen Wert hat; dieses Signal wird dem Prozessor durch das Spur-Eingangstor 722 (Pig. 17) zugeführt. Ist das Signal SPERREN auf niedrigem Wert, kehrt das Programm zu der aufrufenden Routine von NÄCHST0 oder NlCHSTi zurück, je nachdem, um welchen Pail es sich handelt. Ist das Signal SPERREN auf hohem Wert, setzt der Prozessor einen 1/4—Spur-Zähler im RAM zurück und initialisiert dann einen "Suche unvollständig"-Zähler im RAM. Anschließend setzt der Prozessor das NÄCHST0- oder NlCHSTI-Vektorregister, abhängig von dem vorliegenden Fall, auf die erste Adresse der Sucheinstell-Routine (SE0/1), um anschließend zu der aufrufenden Routine von NÄCHST0 oder NÄCHST1 zurückzukehren.
Die Such-Sinstellzeit-Hilfsroutine (SE0/1), dia in ?ig. 4-1 angedeutet ist, wird nun an Pig. 53 erläutert. Zuerst führt der Prozessor die Routine INC0/1? durch und prüft dann, ob das entsprechende durch das Spur-Statustor 700 zugeführte Signal WDL-SPUR einen hohen Wert hat, d- tu , ob sich die Köpfe der entsprechenden Einheit im i/4~Spurbereich vom Spurzentrum befinden. Ist; dies nicht der Fall, wird der 1/4— Spurzähler im RAM auf Null zurückgesetzt, und das Programm
809835/0873
kehrt zur aufrufenden Routine von NÄCHST0/1 zurück. Falls ja, wird der 1/4—Spurzähler inkrementiert, und anschließend prüft der Prozessor, ob der Zähler einen Zählerstand von 5 hat. Ist dies nicht der Fall, kehrt das Programm zu der aufrufenden Routine von NÄCHST0 oder NlGHSTi zurück. Falls ja, schaut der Prozessor, ob eine Rückstell-Operation im Gange ist, d. h., ob das Flag NULL-RÜCKSTELLUNG gesetzt ist.
Befindet sich die Einheit bei einer Rückstell-Operation, prüft der Prozessor, ob der Kode 8E erfaßt wurde, d. h., ob das DATENFELD, das durch die Leitung des Spur-Status-Eingangstores zugeführt wird, erfaßt wurde. Falls nicht, setzt der Prozessor das NÄCHST0- oder NA'CHSTI-Vektorregister auf die erste Adresse auf die Routine "Eine-Spur-Suche" (ESS0/O und kehrt dann zu der aufrufenden Routine der NÄCHST0- oder NlCHSTi-Routine zurück. Ist das Signal DATENFELD hoch, prüft ' der Prozessor, ob es sich um das erste gefundene DATENFELD handelt, d. ii., ob der erste 82-Kode festgestellt wurden Falls ja, setzt der Prozessor das NÄCHST0- oder NÄCHST1-Vektorregister auf die ESS0/1-Routine und führt dann eine Rückkehr aus. Falls nicht, führt der Prozessor nacheinander die folgenden Operationen vor der Rückkehr zu der aufrufenden Routine von N1CHST0/1 aus: (i) Erzeugen des Bits ABTASTER AN, (2) Setzen eines Flags GERADE SPUR, (3) Rücksetzen des Flags IN BEWEGUNG, (4-) Initialisieren des Zählers RÜCKSTELLERFASSUNG, (5) Rücksetzen eines Registers im RAM, vrelches die laufende Spurposition verfolgt und (6) Einstellen der Adresse in dem NÄGHST0- oder NÄCHST1-Vektorregister auf die RE0/1-Routine.
Hat die Einheit keine Rückstell-Operation durchgeführt, setzt der Prozessor das Flag IN BEWEGUNG und das Flag EINORDNEN KOMMANDO IN FORTSCHRITT zurück und prüft dann, ob auf der Einheit ein Kopf ausgewählt wurde. Falls ja, wird das Byte ZYLINDERADRESSE MS in das Kopf-Auswahltor 832 geladen und dann das Bit ABTASTER AN erzeugt. Hieran anschließend, bzw. nach der Bestimmung, daß für die Einheit kein Kopf ausgewählt
809835/0873
war, löscht der Prozessor den entsprechenden BELEGT-Schalter und setzt den entsprechenden ACHTUNG-Schalter. Hieran anschließend wird das NÄCHST0- oder NiCHST-I-Vektorregister in Abhängigkeit vom vorliegenden Fall (d. h., abhängig davon, welche Einheit betroffen ist) auf die Adresse des ersten Befehls für die Routine IDL0/1 eingestellt, und das Programm kehrt daraufhin zu der Routine zurück, welche die Routine NÄCHST0/1 aufgerufen hat.
Die Schutzband-Überwachungs-Hilfsroutine (SBÜ0/1), die in Fig. 41 angedeutet ist, wird nun anhand von Fig. 54 erläutert. Es sei daran erinnert, daß diese Routine das Verfahren zum erfindungsgemäßen Rückstellen betrifft. Der Prozessor führt zuerst die Unterroutine INC0/1? aus und schaut dann, ob das entsprechende Signal SPERREN einen hohen Wert hat. Ist dies nicht der Fall, schaut der Prozessor, ob das Signal SCHUTZBAND einen hohen Wert hat, d.. h., ob der Kode 9E erfaßt wurde. Falls nicht, bedeutet dies, daß die Köpfe in Richtung auf die Spur 0 bewegt werden, sich jedoch noch irgendwo zwischen den Spuren 1 und 429 befinden. Falls ja, setzt der Prozessor einen Zähler DATENFELD im RAM zurück und setzt SPERREN. Der Prozessor setzt dann einen Umdrehungs-Index-Zähler im RAM und kehrt zu der Routine zurück, welche die Routine NÜ.CHST0/1 aufgerufen hat.
War das Signal SPERREN wahr, prüft der Prozessor, ob der Umdrehungs-Index-Zähler im RAM einen Wert größer oder gleich zwei hat. Falls nicht, kehrt das Programm zu der aufrufenden Routine von NÄCHST0/1 zurück. Falls ja, schaut der Prozessor, ob der Umdrehungs-Index-Zähler einen Wert kleiner als drei hat. Falls nicht, stellt der Prozessor das NÄCHST0- oder NÄCHST1-Vektorregister auf die Adresse des ersten Befehls der Routine EES0/1 ein und bewirkt eine Programmrückkehr. Hat der Umdrehungs-Index-Zähler einen Wert kleiner als drei, prüft der Prozessor, ob das Signal DATENFELD hoch ist, d. h., ob der Kode SE erfaßt wurde. Ist dies nicht der fall, kehrt
809835/0873
das Programm zu der aufrufenden Routine von NÄCHST0/1 zurück. Falls ja, erhöht der Prozessor einen DATENFELD-Zähler im ElM und prüft, ob der Zählwert größer als fünf ist.
Hat der DATENFELD-Zähler einen Wert, der nicht größer als fünf ist, kehrt das Programm zurück, wohingegen, wenn der Wert größer als fünf ist, die Köpfe in dem Schutzband (Spuren kleiner als -1) positioniert sind und der Prozessor verschiedene Rückstell-Bewegungsparameter bereitstellt und dann die Routine SRYOGO0/1 ausführt, bevor eine Rückkehr zu der Routine erfolgt, welche N1CHST0/1 angestoßen hat. Eine vollständige Zusammenfassung des Rückstellverfahrens nach der. Erfindung wird im folgenden anhand der restlichen Flußdiagrammdarstellung gegeben.
Fig. 55 zeigt die Hilfsroutine "Eine-Spur-Suche" (ESS0/1), die in Fig. 41 angedeutet ist. Der Prozessor nimmt zuerst das Bit ABTASTER AN" fort und stellt dann verschiedene Bewegungsparameter für die "Eine-Spur-Suche" bereit. Man erkennt, daß bei einer Rückstell-Operation, wenn einmal der Kode 9E erfaßt ist (Spur -2), eine Rückwärtsbewegung des Kopf-Schlittens gestoppt wird, so daß der Kode 9E verifiziert wird. Dann wird die Kopf-Schlitten-Anordnung in Yorwärtsrichtung jeweils zu einer Zeit um eine Spur mit geringer Geschwindigkeit bewegt, bis der Kode 8E für die nachfolgenden Spuren (Spuren -1) verifiziert ist, bei welchem Zeitpunkt die Köpfe auf die Spur 0 vorgerückt und gestoppt werden. Als nächstes führt der Prozessor die Routine SEVOGO0/1 aus, und ändert dann die Adresse im NÄCHST0- oder NÄCHSTI-Register auf den ersten Befehl der "Such-Überwachung"-Routine (SÜ0/1), bevor das Programm zu der aufrufenden Routine von N1CHST0/1 zurückkehrt.
Im folgenden soll unter Bezugnahme auf Fig. 56 die in Fig. 41 angedeutete Routine "Rückstell-Erfassung" (RE0/1) erläutert werden. Der Prozessor schaut zuerst, ob ein Rückstell-Erfassungszähler einen Wert hat, der größer als vier ist. Falls ja, setzt der Prozessor in dem RAM die Flags IN BEWEGUNG, EINORDNEN
809835/0873
KOMMANDO IN FORTSCHRITT tind NULL-RÜCKSTELLUNG zurück und setzt ein Flag RÜCKGESTELLT. Hieran schließt sich das Rücksetzen eines Flags LESE/SCHREIB-(R/W-)KANAL BELEGT an, und anschließend wird der entsprechende BELEGT-Schalter zurückgesetzt und der entsprechende ACHTUNG-Schalter gesetzt. Die nächste Operation für den Prozessor besteht darin, das NÄCHST0- oder NÄCHST1-Vektorregister mit der Adresse für die Routine IDL0/1 zu laden, bevor das Programm zu .der aufrufenden Routine von NÄCHST0/1 zurückkehrt.
Hat der Rückstell-Erfassungszähler keinen Wert kleiner als vier, prüft der..Prozessor, ob das Signal SCHUTZBAND einen hohen Wert hat. Falls nicht, kehrt das Programm zurück. Falls ja, inkrementiert der Prozessor den Schutzband-Zähler im RAM und prüft dann, ob der Zählerstand größer als fünf ist. Falls nicht, kehrt das Programm zurück. Falls ja, wird der Schutzband-Zähler zurückgesetzt und das NÄCHST0- oder NÄ'CHSTi-Vektorregister im RAM wird mit der Adresse für den ersten Befehl der Routine ESS0/1 im ROM geladen, bevor das Programm zu der aufrufenden Routine von NÄCHST0/1 zurückkehrt.
Die "Kopf-Lade-Überwachung"-Routine (KLÜ0/1), die in Fig. 4-1 angedeutet ist, wird nun unter Bezugnahme auf Figo 57 erläutert. Zuerst prüft der Prozessor, ob eine Kopf-Lade-Zeitsperre abgelaufen ist. Falls nicht, kehrt das Programm zu der aufrufenden Routine von NÄCHST0/1 zurück. Falls ja, setzt der Prozessor das Signal SPERREN und setzt die Flags IN BEWEGUNG, EINORDNEN KOMMANDO IN FORTSCHRITT und NULL-RÜCKSTELLUNG, bevor er ein Flag KÖPFE GELADEN setzt. Hieran lädt der Prozessor eine neue Adresse in das NlCHST0-oder NlCHSTi-Vektorregister, die dem ersten Befehl in der Routine IDL0/1 entspricht. Dann kehrt das Programm zurück«,
Anhand von Fig. 58 xvird nun die in "Fig. 4-1 angedeutete HiIfsroutine "Überwachen Zurückziehung" (RZÜ0/1) erläutert* Zuerst prüft der Prozessor, ob eine Rückzieh-Zeitsperre verstrichen
809835/0873 ";.
ist. Palls nicht, kehrt das Programm zu der aufrufenden Routine von NÄCHST0/1 zurück. Falls ja, setzt die nachfolgende Operation, welche auch die erste Operation der Routine XTRTM0 darstellt, das Flag SPERREST und setzt die Flags IN BEWEGUNG, EINORDNEN KOMMANDO IN FORTSCHRITT, NULL-RÜCKSTELLUNG, KÖPFE GELADEN und RÜCKGESTELLT in dem RAH zurück. Hieran anschließend setzt der Prozessor das Flag LESE/SCHREIB-KANAL BELEGT zurück und stellt dann das Register in dem RAM ein, welches die laufende Spurposition verfolgt. Anschließend lädt der Prozessor die erste Adresse der Routine IDL0/1 in das NÄCHST0- oder NÄCHST1-Vektorregister des RAM. Anschließend erfolgt eine Programmrückkehr.
Nachfolgend wird unter Bezugnahme auf die Fig. 59 die Unterroutine "Rückstell/Suche unvollständig" (INC0/1?) beschrieben. Wie aus der Zeichnung hervorgeht, fragt der Prozessor zuerst ab, ob eine Rückstell-Operation ausgeführt wird, d. h., ob das Flag NULL-RÜCKSTELLUNG gesetzt ist. Falls nicht, prüft der Prozessor, ob ein "Suche unvollständig"-Zähler im SAiI einen tfert hat, der größer als sechs ist. Falls nicht, kehrt das Programm zurück; falls ja, setzt der Prozessor das Bit SUCHE UNVOLLSTÄNDIG im STATüS-A-Byte des RAM und geht dann zu einem Teil der Routine über, der im folgenden beschrieben wird.
War das Flag NULL-RÜCKSTELLUNG gesetzt, dann prüft der Prozessor, ob der "Suche unvollständig"-Zähler einen Wert hat, der größer ist als 255- Ist dies nicht der Fall» k.ehrt das Programm zurück, andern.xall3 setst der Prozessor das Bit RÜCKSTELLUNG UNVOLLSTÄNDIG im STATUS-B-Byte des HAM und setzt dann das Flag LESE/SCHREIB-KANAL BELEGT. Die nächste Operation markiert den Teil der Routine , der oben, .angesprochen wurde 5 er umfaßt das Rücksetzen der Flags IN BEWEGUNG, EINORDNEN KOMMANDO IN FORTSCHRITT und NULL-RÜCKSTELLUNG. Anschließend lädt der Prozessor das NA'OHS20- oder 1-7ACHS11-Vektorregister mit der Adresse für die Routine IDL0/1. Dann
809835/0873 bad
ändert der Prozessor die Rückkehradresse in seinem Kellerspeicher, so daß bei der nächsten Rückkehr eine Rückkehr zum Haupt-Programm, und nicht zu der aufrufenden Routine von INC0/1 erfolgt.Bei der nächsten Operation prüft der Prozessor, ob es sich hier um eine Anfangs-Rückstell-Operation handelt. Ist dies der Fall, wird zum Haupt-Programm zurückgekehrt. Falls nicht, wird zur Routine ABBRUCH0/1 verzweigt.
Fig. 60 zeigt die "Servo-Beginn"-Unterroutine (SRVOGO0/1). Bei dieser Routine sperrt der Prozessor sich selbst, so daß er auf Signale UNTERBRECHUNG, die auf der Leitung 517 anstehen, nicht ansprechen kann. Dann wird das geringstwertige Byte des Signals DTT/2 dem Abwärtszähler 608 zugeführt. Anschließend wird das höherwertige Byte des Signals DTT/2 dem Zähler 608 zugeleitet. Hieran anschließend wird der Verlauf-Index-Byte-Kode an das Verlauf-Index-Register angelegt, um das entsprechende Geschwindigkeits-Profil in der in dem ROM 617 gespeicherten Tabelle auszuwählen, und zwar aus Gründen, die oben (s. Fig. 13) erläutert wurden. Die nächste Operation für den Prozessor besteht darin, sich selbst wieder für UNTERBRECHUNGS-Signale auf der Leitung 517 freizugeben. Dann kehrt das Programm zu der aufrufenden Routine von SEVOGO0/1 zurück.
Eine Unterroutine "Löschen Status A und Abbruch" (LÖSTA0/1) soll nun anhand der Fig. 61 erläutert werden. Der Prozessor setzt zuerst das STATUS-A-Byte-Register im RAM zurück, bevor er das Flag. ABBRUCH zurücksetzt. Dann kehrt das Programm zu der aufrufenden Routine von LÖSTA0/1 zurück.
Fig. 62 zeigt die Unterroutine "Status-Prüfung" (STATCK0/1). Bei dieser Routine prüft der Prozessor zuerst, ob ein Byte SEPARATER STATUS im RAM in Ordnung ist. Falls ja, prüft der Prozessor, ob ein ebenfalls in dem RAM vorhandenes Byte GEMEINSAMER STATUS in Ordnung ist. Falls ja, erfolgt Programairü ekle ehr. Falls nicht, bzw. wenn das Byte 5LP ARAT ZR STATUS
809835/0873
nicht in Ordnung xirar, ändert der Prozessor die Rückkehradresse, so daß die nächste Rückkehr zum Haupt-Programta und nicht zu der aufrufenden Routine von STATCK0/1 erfolgt. Die nächste Operation stellt auch den Beginn der Routine ILCMD0/-1 dar, und der Prozessor setzt ein Statusbit UNZULÄSSIGES KOMMAIiDO des STATUS-A-Bytes im RAM, De vor er zur Routine ABBRUCH weitergeht.
Im folgenden wird anhand von Fig. 63 die Unterroutine "Ausführen Bremsenkommando" (ΏίΟΓΙΏ^/ΐ) erläutert. Zuerst lädt der Prozessor eine Adresse in das Kommando-Proζessor-Yektorregister, welche den ersten Befehl der Routine GUIIT kennzeichnet. Dann hält der Prozessor den Inhalt des E/A-Identifizierungstores 350 in einer Speicherstelle des RAI1I fest. Hieran anschließend liest der Prozessor den Inhalt des Singangstores 3^4- und hält diesen Inhalt in einer Speicherstelle des RAH fest. Anschließend prüft der Prozessor, ob ein Bewegungskomraando vorliegt. Falls nicht, löscht er den entsprechenden BELEGT-Schalter und geht dann zur Routine XGiMD über. Falls ja, erfolgt der Übergang zu diesar Routine direkt.
In Fig. 64- ist die "Abbruch"-Unterroutine (ABBRUCH0/1) dargestellt. Der Prozessor setzt das Bit EINHEIT-ABBRUCH in dem entsprechenden Zustands-Byte des RAM, welches der Steuerung 318 durch das entsprechende Zustandstor (Fig. 10) zugeführt wird. Dann sebst der Prozessor den entsprechenden BELEGT-Schalter zurück und setzt den entsprechenden ACHTÜNG-Schalter. Dann erfolgt eine Programcirückkehr.
Fig. 65 zeigt die in Fig. 4-2 angedeutete "Diagnose A"-Kcmmando-Routine. Diese Routine besieht sich auf den oben erwähnten Zyklus-Test. Ist am Singangstor das WSAP-LATEN-Bjte empfangen, was dadurch angedeutet wird, daß das Signal EINGANG VOLL einen hoh-an Wert hat, liest der Prozessor dieses Bybe und führt
§09835/0873
durch das Ausgangstor zurück. Dann kehrt der Prozessor zu der aufrufenden Routine von CiIDPRCS zurück.
An dieser Stelle erscheint es sinnvoll, die Haupt-Verarbeitungsschritte beim Ausführen des oben erwähnten Ruckstell-Verfahrens zusammenzufassen. Dieses Verfahren umfaßt das vorhergehende Aufzeichnen eines Kodes in jedem Sektor der Spuren -6 bis 435? wobei die Spuren -6 bis -2 und 430 bis 435 als "Schutzband"-Spuren definiert sind, während die Spuren 0 bis 429 als "Datenfeld"-Spuren definiert sind und zum Lesen und Schreiben von Daten verwendet werden. Die Spur -1 wird lediglich zum Rückstellen benutzt und kann als "Grenzspur" betrachtet v/erden. Der bevorzugte Kode für die Schutzband-Spuren ist "92", der in dem sechzig Bytes umfassenden reservierten Bereich jedes Sektors der Spuren -6 bis -2 und 430 bis 435 aufgezeichnet wird, wohingegen der "Datenfeld"-Kode 8E in den Sektoren der Spuren 0 bis 429 aufgezeichnet wird, sowie in der Grenzspur -1, und zwar aus Gründen, die unten erläutert werden.
Wenn bei dem angesprochenen Rückstell-vex-fahren die rückzustellenden (auf Spur0 einzustellenden) Köpfe sich zwischen den Spuren 0 und 429 (inklusive) befinden, werden die Köpfe bei einer konstanten, niedrigen Geschwindigkeit zurückbewegt. Der Prozessor überwacht kontinuierlich das Signal SCIIUTZBAIiD, welches, wenn es einen hohen Wert annimmt, anzeigt, daß eine Spur in dem Schutzband erreicht sein kann. Die umgekehrte Such-Operation wird dann angehalben, während der Prozessor den von dem Kopf gelesenen Kode wenigstens fünf Wöiöere i^aie rxaciioChaLifc. V/urda f est^jj?; jaiic, daii ^ oica wenigstens fünfmal um den Kode 3E handelt, d„ h„, falls der Kode 9^ während dieser fünf Male nicht erfaßb wurde, dann wird die Erfassung einer Schutzband-Spur verifiziert. Schlägt eine solche Verifikation fehl, wird die umgekehrte Such-Qpex'acion !Wiederum begonnen und. die oben geschilderte Prozedur vri;5d^."!.iolt;«
Im Anschluß an eine erfolgreiche Verifikation des Kodes 9£
309835/0873 7^~7~s~~~~
> R Π 8 'ι O h
"beginnt der Prozessor eins Folge von "Eine-Spur-Suchen" in Vorwärtsrichtung, bis dsr Kode 8S erfaßt ist. Darm, werden die Köpfe um eine weitere Spar vorwärtsbewegt. Normalerweise würde die anfängliche Erfassung des Kodes 9Ξ und die Verifikation bezüglich der Spur -2 auftreten. In diesem Fall würde der Prozessor die Köpfe stoppen und die Erfassung des Kodes 9E verifizieren. Einmal verifiziert, würde er die Köpfe auf die Spur -1 bewegen und dort anhalten, wo der Kode 8Ξ erfaßt xtfird. Die Köpfe vier den dann um eine •weitere Spur auf die Spur 0 bewegt und dann gestoppt. Wird darm der Kode 8E erfaßt und verifiziert, ist die Sückstell-Operation abgeschlossen. War die Spur -3 diejenige Spur, auf der die Köpfe zuerst den Kode 9Ξ während der äückwärts-Suche erfaßt haben, z. B. aufgrund eines "Überschwingens", vriirden die Köpfe gestoppt und falls 9E verifiziert: ist, beginnt eine "Eine-Spur-Suche", welche die Köpfe auf die Spur -2 bringt. Da der Kode 9E in dieser Spur vorab aufgezeichnet ist, wird eine weitere "Eine-Spur-Suche" angestoßen, welche die Köpfe auf die 3pur -1 bringt. Wie oben erkläi-t wurde, wird dann der Kode SE erfaßt, so daß der Prozessor eine weitere "Eine-Spur-SucheI! anstößt, um die Köpfe über der Spur 0 s.u stoppen. Eine Erfassung und Verifizierung des Kodes 8E markiert dann das Ende und den Abschluß der Bückstell-Operation.
X. Die Übungsanordnung (Diagnose)
Das soweit beschriebene Steuersystem für das Plattenlaufwerk 10 wurde bezüglich der Kommandos oder Befehle beschria-'■:·'., Ji- ■-.·■: roh i.i.:; -1-ij.p z-icr eiiriVi^ "^i-i :::j-^to'.^-n ■·, ^-\I-?;i. Oftaals ist es notwendig, daß eine Bedienungsperson oder der Hersteller des Plattenlaufwerks letzteres im "Übungsbetrieb11 zu Diagnosezwecken betreibt. Hierbei v/erden verschiedene Kommandos, die normalerweise durch die Steuerung 318 an das Plat;cenlaufwerk ^Q^oen. würden, statt dessen durch eine "Übungsa^J-Vi:nun·:" iiu;Oi'!lli-L.
BAD ORIGINAL 809835/087 3
Eine "bevorzugte υ bungs anordnung 13t in Fig. 23 dargestellt; sie kann rn.it dem Plattenlaufwerk auf eina Weise verbunden werden, wie es aus der nachfolgenden Beschreibung deutlich v/ird. Die Übungsanordnung unifaßt eine Ablaufsteuerung 900 mit einem Takteingang, welcher das Steuersignal ADR 12 (E) empfängt, d. h. die Signale ADS 12 und E/A RD, vom Proez-ssor 326 empfängt. Die Schaltung 900 besitzt weiterhin einen Rücksetz-Eingang, welcher das Steuersignal ADR 13 (W) vom Prozessor 326 empfängt. Als Antwort auf jeden Signal impuls ADR 12 (R) gibt die Ablaufsteuerung 900 eine der sieben Leitungen 902a bis 902g frei. Jede dieser Leitungen ist mit dem Freigabe-Eingang eines von sieben Toren verbunden.
Insbesondere ist die Leitung 902a mit dem Freigabe-Eingang eines unteren Adressentores 904· verbunden, die Leitung 902b mit einem oberen Adressentor 906, die Leitung 902c mit einem Kommando- oder Befehlstor 90S, die Leitung 902d mit einem Spur-Adressentor-0 910, die Leitung 902e mit einem Spurr:3B-Tor-0 912, die Leitung 902f mit einem Spur-Adressentor-1 4 und die Leitung 902g mit einem Spur-?IS3-T.or-1 916.
Das untere Adressentor 904- empfängt das niedrigstwertige Byte einer Anfangsadresse für einen Programm-ROM 913, welcher einen Mikro-Kode für die Übungsanordnung (iia. folgenden als "CE-Box" bezeichnet) enthält. Das obere Adressentor empfängt das höchstwertige Byte der Anfangs-EOM-Adresse. Werden diese zwei Tore freigegeben, so werden die entsprechenden Adreß-Bytes über den Datenbus 362 zu dem Prozessor 326 geleitet and dann in den Befehlszähler des Mikropro-..;-i:j.;jL'3 300 ·. 7ig. ■'-; \c jial-an* ois ·,/«:■■::-en auf d-::n :^~ .-^diin Bits umfassenden Mikroprozessor-Adreßbus 520 zurück zu der "CS-Box" geführt, wo sie durch einen entsprechenden Dekoder 920 dekodiert werden. Die dekodierte infangsadresse wird dann über einen Transferbus 922 an den ROK 913 gegeben. Die von dem ROM 918 stammenden Nikro-Befehle werden über einen
Ö09835/0873
Mikroprozessor 500 in dem Prozessor 326 gegeben. Der ROH wird durch den Adreß-Dekoder 920 freigegeben oder aktiviert, wenn er an seinem Eingang Eingangsgrößen empfängt, bei welchen Zeitpunkt die ROMs 502 gesperrt werden.
Das Kommandotor 908 empfängt einen 7-Bit-Kode von einer aus sieben Schaltern bestehenden Anordnung 926, welche verschiedene Kommandos definieren. Vier der Schalter wählen einen 4-Bit-Befehls- oder Kommando-Kode aus, ein Schalter wählt die Einheit 0,- bzw. wählt nicht die Einheit 0 aus, ein weiterer Schalter wählt oder wählt nicht die Einheit 1 aus, und der letzte Schalter definiert Befehle "Warten" und "Ausführen".
Das Tor 910 empfängt die acht niedrigstwertigen Bits eines neun Bits umfassenden Spur-Adreßkodes für die Einheit 1, welche durch eine aus acht Schaltern bestehende Schalterreihe 928 erzeugt werden. Das höchstwertige Bit wird dem Tor 912 von einem Einzel schalt er 930 zugeleitet. Das Tor 914· empfängt die acht niedrigstwertigen Bits einer aus neun Bits bestehenden Spur-Adresse für die Einheit 1, welche von einer aus acht Schaltern bestehenden Schalteranordnung 932 erzeugt werden. Das höchstwertige Bit dieses Kodes wird durch das Tor 916 von einem Einzelschalter 924 empfangen.
Diese Spuradressen werden über den Datenbus 362 an den Prozessor 326 gegeben, wenn die entsprechenden Tore freigegeben oder aktiviert werden. Von dem Prozessor 326 werden Status-Bytes an eine Reihe von LED-Anzeigelämpchen 936 der "UE-Box" über den Datenbus 362 und ein CE-Ausgangstor 338, welches durch ein Steuersignal ADR 12 (W) freigegeben wird, geleitet.
Im folgenden wird Bezug genommen auf die Fig. 66 -76, in denen verschiedene Programm-Routinen beschrieben sind, die sich auf von der Übungsanordnung (CE-Box) angestoßene Diagnose-Programme beziehen. Jeder Programm-Befehl für diese Routinen
809835/0873
ist in dem EOM 918 der CE-Box enthalten. Wird der ROM 918 adressiert, werden die ROMs 502 gesperrt oder ausgeschaltet, wie oben bereits erläutert wurde.
Anhand von Fig. 66 wird die in Fig. 40 gezeigte Routine CEIN beschrieben. Die Routine CEIN (CE-Box-Schnittstelle) wird nur dann von dem Prozessor ausgeführt, wenn das Kommando-Prozessor-Vektorregister im RAM mit der Anfangsadresse für die Routine CEIN geladen ist,und die Haupt-Routine CMDPRCS behandelt wird. Die. erste Adresse der Routine CEIN ist die Initialisierungsadresse, die von den Toren 904- und 906 zugeführt wird.
In der Routine CEIN setzt der Prozessor zuerst die Ablauf-Steuerung 900 zurück, um sie dann hinter die CE-Box-Adresse zurückzuschalten (d. h., auf die Tore 904 und 906). Als nächstes prüft der Prozessor, ob in dem RAM ein Entprell-Register zurückgesetzt ist. Falls nicht, kehrt das Programm zu der Routine in dem ROM 502 zurück, welche die Routine CMDPRGS angestoßen hat. Falls ja, prüft der Prozessor, ob die letzte CE-Box-Spuradreß-Eingabe (gespeichert in Registern der·. EAMs 504) der neuen CE-Box-Spuradreß-Eingabe gleicht. Ist dies nicht der Fall, setzt der Prozessor das letzte CE-Box-Register auf einen Wert, der der neuen CE-Box-Adresse gleicht und setzt dann das Entprell-Register auf 25 ms, um anschließend das die behandelte Einheit anzeigende Flag auf Einheit 0 auf Einheit 0 einzustellen und anschließend zu der aufrufenden Routine von CMDPRCS zurü ckzuk ehren.
Falls die letzte CE-Box-Adresse gleich der neuen CE-Box-Adresse ist, prüft der Prozessor, ob die zu behandelnde Einheit die Einheit 0 ist= Ist sie es nicht, prüft der Prozessor, ob der Schalter "WARTEN/AUSFÜHREN" auf WARTEN oder AUSFÜHREN gestellt ist. Ist die zu behandelnde Einheit die Einheit 0, setzt der Prozessor das letzte Kommando-Register
809835/06*73
426
im RAJl auf den Wert des laufenden Kommandos (vom Tor 908) und setzt dann das laufende Kommando-Register auf den Wert der neuen CE-Box-Adreß-.Eingabe, um anschließend nachzuprüfen, ob der Schalter "WARTEN/AUSFÜHREN" auf WARTEN oder AUSFÜHREN steht. Ist der Schalter auf WARTEN eingestellt, gibt der Prozessor das entsprechende Zustandstor-Byte im RAM an die CE-Box-Anzeigelampen 936, anschließend kehrt das Programm zurück. Steht der Schalter auf AUSFÜHREN, prüft der Prozessor, ob es sich bei dem 4-Bit-Kommando-Kode um einen Statüus-Befehl handelt. Ist dies nicht der Fall, gibt der Prozessor das entsprechende Zustandstor-Byte an die Anzeigelampen 936. Falls ja, bzw. nach der letztgenannten Operation, bestimmt der Prozessor, welche Einheit durch den Befehl behandelt werden soll. Im Anschluß hieran prüft der Prozessor, ob diese Einheit ausgewählt wurde. Falls nicht, kehrt das Programm zurück. Falls ja, führt das Programm die in Fig. 4-2 angedeutete Routine DECMD aus.
Wenn es sich bei dem dekodierten GE-Box-Kommando um eine Kopfauswahl handelt, wird die Routine C2KA0/1 ausgeführt, welche das Lesen des KOPF-Bytes einschließt, und dann wird die Routine KOOK0/1 ausgeführt (s. Fig. 42 und 67).
Wenn es sich bei dem dekodierten CE-Box-Befehl um eine abwechselnde Suche(CEAS0/1) handelt, schaut der Prozessor, ob für die Suche alle Bedingungen erfüllt sind. Falls nicht, kehrt das Programm zurück. Falls ja, liest der Prozessor die erste Spur-Adresse und schaut dann nach, ob diese eine Spur-Adresse definiert, die gleich ist der laufenden Spurposition. Ist dies der Fall, setzt der Prozessor das neue Zylinder-Register in dem RAM auf einen Wert, welcher der ersten Spuradresse gleicht und führt dann eine Routine ZYLOK0/1? (s. Fig. 42 und 68) durch. Ist die erste Spuradresse nicht gleich der laufenden Spuradresse, liest der Prozessor die zweite Spuradresse, stellt dann das neue Zylinder-Register im RAM auf die zweite Spuradresse ein und führt dann die Routine ZYLOK0/1? durch.
809835/0872
Wenn es sich bei dem von der CE-Box kommenden dekodierten Kommando (s. Fig. 42) um eine Zufallssuche (sogenannte Random-Suche) handelt, wird die Routine CERDS0/1 nach Fig. 69 durchgeführt. Bei dieser Routine schaut der Prozessor zuerst, ob alles für die Suche bereit ist. Falls nicht, kehrt das Programm zurück. Falls ja, führt der Prozessor eine Routine "RANDOM" (Zufallszahl) durch, um anschließend eine zufällige Zahl (Random-Zahl) aus dem RAM zu holen, die Bytes zu vertauschen, in den Bereich zu gelangen und die neue Zylinderadresse in dem RAM auf den Wert der Zufallszahl einzustellen. Dann führt der Prozessor die Routine ZYLOE0/1? durch.
Handelt es sich bei dem dekodierten CE-Box-Befehl um eine Vorwärtssuche einer Spur, wird die in Fig„ 70 gezeigte Routine VSES0/1 durchgeführt, in der der Prozessor prüft, ob für die Suche alles bereit ist. Ist dies nicht der Fall, kehrt das Programm zurück. Falls ja, wird das neue Zylinder-Register auf einen Wert gesetzt, der der laufenden Spurposition plus eins entspricht. Hieran anschließend wird die Routine SDSCK0/1 durchgeführt. Handelt es sich bei dem dekodierten CE-Box-Befehl um eine Rückwärtssuche über eine Spur, wird die in Fig. 71 dargestellte Routine RSES0/1 ausgeführt.
Handelt es sich bei dem dekodierten Befehl von der CE-Box um ein Status-Kommando (s. Fig. 42 und 72 - 75)j wird die entsprechende, für das spezielle Status-Byte erforderliche Routine durchgeführt, wie in der Zeichnung angedeutet ist. TM-se Routinen umfassen C3STA0/1, CEST30/1, CSSTC0/1 und CS3TE0/1 In jeder ' dieser Routinen gibt der Prozessor das STATUS-Byte über das Tor 938 an die Anzexgelampchen 936.
Handelt es sich bei dem dekodierten CE-Box-Befehl um ein Kommando "Status löschen", wird die in Fig. 76 dargestellte Routine CELO'ST0/1 ausgeführt. Bei dieser Routine setzt der Prozessor das STATUS-A-Byte zurück, setzt anschließend das
§09835/087$
- 126*-
LSSE/SCHRSIB-(R/W-) Status tor 826 (Fig. 14-) zurück und löscht dann das entsprechende Zustandstor und das ABBSUCH-Flag. Dann führt das Programm eine Rückkehr aus.
809835/0873
L e e r s e i \

Claims (4)

  1. PATEN !ANWÄLTE A. GRUNECKER
    Olr-_-i\G.
    H. KINKELDEY
    DR-ING
    K. SCHUMANN
    OR RERWAT.-OIR--PHYS
    P. H. JAKOB
    DlFL-INa
    G. BEZOLD
    DR RERNAr- DlPU-CHEM
    S MÜNCHEN
    MAXIMILIANSTRASSE
    27. 02. 1978 12 339 - 57/wa
    Pat entansprüche
    Iy Übungsanordmmg für ein. Plattenlaufwerk, das eine um ihre Achse drehbare Aufzeichnungsplatte aufweist, einen elektromagnetischen Lese/Schreib-Kopf, ein Betätigungsglied sum Bewegen des Kopfes bezüglich der Rotationsachse der Platte, eine Servo-Steuereinrichtung, die auf einen Satz von Befehlen anspricht und die Geschwindigkeit und Richtung der Kopfbewegung durch das Betätigungsglied steuert, eine programmierte Datenverarbeitungseinrichtung mit einem Mikroprozessor, einen ersten Speicher zum Speichern mikrokodierter Steuerprogramme für das Platten!aufwerk, einen zweiten Speicher zum Speichern einiger Befehle aus dem Befehlssatz für die Servo-Steuereinrichtung, einen Adreßbus zum Zu±"ühren von Adreßsignalen von dem Mikroprozessor zu dem ersten und zweiten Speicher, einen Datenbus zum Zuführen von Programmbefehlen von dem ersten Speicher su den Mikroprozessor, sowie einige Befehle des Befehlssatzes vom zweiten Speicher zu der Servo-Stöuereinrichtung, dadurch gekennzeichnet , daß eine Einrichtung (928, 932, !Pig. 23) vorgesehen ist zum Erzeugen von Spur-Adre3-Signalen, daß Einrichtungen (910, 912O vorgesehen sind, die im aktivierten Zustand die Spur-Adreß-Signaie auf den Datenbus (352) zum Zuführen zu dem Mikroprozessor (500 ) geben, daß ein dritter Speiche? (918)
    809835/0873 bad original
    TELEFON (OSS) 222382 TELEX 05-2938O TELEGRAMME MONAPAT TELEKOPIERER
    vorgesehen ist zum Speichern von mikrokodierten Diagnosepro gramme a für die Übungsanordnung, daß mit dem Adreßbus (520) und dem dritten Speicher ein erster Dekoder (920) verbunden ist zum Dekodieren eines auf dem Adreßbus anstehenden Adrefisignals, um für den dritten Speicher (918) ein neues Adreßsignal zu erzeugen, und daß eine Einrichtung vorgesehen ist zum Zuführen von aus dem dritten Speicher in Abhängigkeit von dem neuen Adreßsignal geholten Programmbefehlen über den Datenbus (362) zu dem Mikroprozessor (500).
  2. 2. Anordnung nach Anspruch 1, dadurch ge kennzeichnet, daß mit dem Adreßbus ein zweiter Dekoder verbunden ist zum Dekodieren eines auf dem Adreßbus anstehenden Adreßsignals, um weitere Befehle des Befehlssatzes zu erzeugen sowie Steuersignale der Einrichtung zum Zuführen von Spur-Adreß-Signalen zu dem Datenbus, und daß eine Einrichtung vorgesehen ist zum Durchschalten der Steuersignale zu der Einrichtung zum Zuführen von Spur-Adreß-Signalen zu dem Datenbus.
  3. 3» Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß die Einrichtung zum Zuführen von Spur-Adreß-Signalen zu dem Datenbus eine Torschaltung aufweist zum Smpfangen von Spur-Adreß-Signalen, die von der ' Einrichtung zum Erzeugen dieser Signale generiert werden, daß ein Übertragungsbus vorgesehen ist zum Verbinden des Ausgangs der Torschaltung mit dem Datenbus, und daß eine Ablaufsteuerung (900) vorgesehen 1st, die auf die Steuersignale anspricht und die Torschaltung freigibt, um die Spur-Adreß-Signale auf den ö"bertragungsbus zu schalten.
  4. 4. Verfahren zum Ausführen von Diagnosen bei Plattenlaufwerken, die eine um ihre Achse drehbare Aufzeichnungsplatte aufweisen, einen elektromagnetischen Lese/Schreib-Kopf, ein Betätigungsglied zum Bewegen des Kopfes bezüglich der Rotationsachse der Platte, eine Servosteuereinrichtung, die auf einsn Satz von Befehlen anspricht und die Geschwindigkeit und Sichtung der Kopfoevs gung durch das Betätigungsglisd steuert, eine programmierte Datenverarbeitungseinrichtung mit einem Mikroprozessor,
    809835/0873
    2805305
    einen ersten Speicher zum Speichern mikrokodierter Steuerprogramme für das Plattenlaufwerk, einen zweiten Speicher zum Speichern einiger Befehle aus dem Befehlssatz für die Servo-Steuereinrichtung, einen Adreßbus zum Zuführen von Adreßsignalen von dem Mikroprozessor zu dem ersten und zweiten Speicher, einen Datenbus zum Zuführen von Programmbefehlen von dem ersten Speicher zu dem Mikroprozessor, sowie einige Befehle des Befehlssatzes von dem zweiten Speicher zu der Servo-Steuereinrichtung, gekennzeichnet durch folgende Schritte:
    a) Erzeugen von Test-Spuradreß-Signalen,
    b) Zuführen dieser Test-Spuradreß-Signale zu dem Datenbus zwecks Weiterleitung zu dem Mikroprozessor,
    c) Bereitstellen eines dritten Speichers extern bezüglich des Plattenlaufwerks und Speichern mikrokodierter Diagnoseprogramme in diesem Speicher,
    d) Dekodieren eines auf dem Adreßbus anstehenden Adreßsignals, um ein neues Adreßsignal für den dritten ■Speicher zu erzeugen, und
    e) Zuführen von Programmbefehlen, die aus dem dritten Speicher in Abhängigkeit von dem neuen Adreßsignal gelesen wurden, zu dem Datenbus zwecks Weiterleitung zu dem Mikroprozessor.
    80983 5/0873
DE19782808305 1977-02-28 1978-02-27 Selbstdiagnose-verfahren und -vorrichtung fuer ein plattenlaufwerk Withdrawn DE2808305A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/773,022 US4103338A (en) 1977-02-28 1977-02-28 Self-diagnostic method and apparatus for disk drive

Publications (1)

Publication Number Publication Date
DE2808305A1 true DE2808305A1 (de) 1978-08-31

Family

ID=25096940

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782808305 Withdrawn DE2808305A1 (de) 1977-02-28 1978-02-27 Selbstdiagnose-verfahren und -vorrichtung fuer ein plattenlaufwerk

Country Status (5)

Country Link
US (1) US4103338A (de)
JP (1) JPS53107322A (de)
CA (1) CA1106973A (de)
DE (1) DE2808305A1 (de)
GB (1) GB1594416A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3210648A1 (de) * 1981-03-23 1982-10-28 Mitsubishi Denki K.K., Tokyo Speicherplattenantrieb

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2426938A1 (fr) * 1978-05-26 1979-12-21 Cii Honeywell Bull Dispositif de detection de secteurs defectueux et d'allocation de secteurs de remplacement dans une memoire a disques
US4268905A (en) * 1978-12-14 1981-05-19 Sperry Rand Corporation Autonomous fault diagnosis for disk drive using an internal microprocessor
US4327408A (en) * 1979-04-17 1982-04-27 Data General Corporation Controller device with diagnostic capability for use in interfacing a central processing unit with a peripheral storage device
US4333177A (en) * 1979-10-31 1982-06-01 Ampex Corporation Test control circuit for multichannel apparatus such as tape recorders and the like
EP0031498A3 (de) * 1979-12-26 1981-07-22 International Business Machines Corporation Digitales Datenverarbeitungssystem mit Mitteln zur Prüfung des Datentransfers von einem nicht-flüchtigen zu einem flüchtigen Speicher
US4667329A (en) * 1982-11-30 1987-05-19 Honeywell Information Systems Inc. Diskette subsystem fault isolation via video subsystem loopback
US4641207A (en) * 1983-03-22 1987-02-03 Green George D Diagnostic device and method for examining the operation of a disk drive
US4773004A (en) * 1983-05-16 1988-09-20 Data General Corporation Disk drive apparatus with hierarchical control
US4928193A (en) * 1984-07-13 1990-05-22 International Business Machines Corporation Diskette drive type determination
US4725968A (en) * 1985-05-14 1988-02-16 Nicolet Instrument Corporation Disk drive testing method and apparatus
US4760553A (en) * 1985-06-03 1988-07-26 International Business Machines Corporation Terminal system configuration tracing method and apparatus
US4885683A (en) * 1985-09-27 1989-12-05 Unisys Corporation Self-testing peripheral-controller system
US4783705A (en) * 1986-02-27 1988-11-08 Quantum Corporation High capacity disk file with embedded sector servo and SCSI interface
JPH0525082Y2 (de) * 1986-04-04 1993-06-24
DE3777461D1 (de) * 1986-06-20 1992-04-23 Matsushita Electric Ind Co Ltd Optisches aufzeichnungs-und wiedergabegeraet.
US5539891A (en) * 1989-10-13 1996-07-23 Texas Instruments Incorporated Data transfer control circuit with a sequencer circuit and control subcircuits and data control method for successively entering data into a memory
JP2830269B2 (ja) * 1990-01-12 1998-12-02 ソニー株式会社 ディスク装置
US5157666A (en) * 1990-09-24 1992-10-20 Xerox Corporation Disk timing diagnostic
US6594102B1 (en) * 1998-07-01 2003-07-15 Kabushiki Kaisha Toshiba Apparatus and method for retracting the head on power down in a disk drive
US6980381B2 (en) * 1998-09-21 2005-12-27 William F. Gray Apparatus and method for predicting failure of a disk drive
US6249887B1 (en) 1998-09-21 2001-06-19 William G. Gray Apparatus and method for predicting failure of a disk drive
JP3966534B2 (ja) * 2000-04-24 2007-08-29 パイオニア株式会社 記録再生装置
US7257684B1 (en) 2004-05-25 2007-08-14 Storage Technology Corporation Method and apparatus for dynamically altering accessing of storage drives based on the technology limits of the drives
US8015568B2 (en) * 2005-02-28 2011-09-06 Hitachi Global Storage Technologies Netherlands B.V. Disk drive/CPU architecture for distributed computing
CN103064775A (zh) * 2011-10-21 2013-04-24 鸿富锦精密工业(深圳)有限公司 硬盘状态指示装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3439343A (en) * 1966-07-12 1969-04-15 Singer General Precision Computer memory testing system
US3704363A (en) * 1971-06-09 1972-11-28 Ibm Statistical and environmental data logging system for data processing storage subsystem
US3824563A (en) * 1973-04-13 1974-07-16 Ibm Data storage track padding apparatus
US3909800A (en) * 1973-12-18 1975-09-30 Honeywell Inf Systems Improved microprogrammed peripheral processing system
US4047157A (en) * 1974-02-01 1977-09-06 Digital Equipment Corporation Secondary storage facility for data processing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3210648A1 (de) * 1981-03-23 1982-10-28 Mitsubishi Denki K.K., Tokyo Speicherplattenantrieb

Also Published As

Publication number Publication date
US4103338A (en) 1978-07-25
CA1106973A (en) 1981-08-11
GB1594416A (en) 1981-07-30
JPS53107322A (en) 1978-09-19

Similar Documents

Publication Publication Date Title
DE2808305A1 (de) Selbstdiagnose-verfahren und -vorrichtung fuer ein plattenlaufwerk
DE2808374A1 (de) Rueckstellverfahren und -vorrichtung fuer ein plattenlaufwerk
DE3233370C2 (de) Anordnung zur Anzeige von Daten in einem Anzeigefeld und Verwendung einer solchen Anordnung mit einer Vielzahl von Videobandrecordern
EP0347722B1 (de) Tachogenerator
DE3025059C2 (de) Verfahren zum Einstellen eines Abnehmerkopfes auf eine durch eine vorgegebene Adresse bestimmte Spur eines rotierenden Aufzeichnungsträgers und Einrichtung zur Durchführung des Verfahrens
DE2808398A1 (de) Steuersystem fuer ein plattenlaufwerk
DE3312523C2 (de) Verfahren zum Aufzeichnen eines Informationssignales in spiralförmigen Spuren auf einer Aufzeichnungsplatte
DE2808296A1 (de) Geschwindigkeitssteuereinrichtung fuer ein plattenlaufwerk
DE3421912A1 (de) Plattenwechsler
DE2948021A1 (de) Verfahren und anordnung zum speichern und wiederauffinden von stellen auf aufzeichnungstraegern in einem aufnahme- und/oder wiedergabegeraet, insbesondere in einem magnetbandkassettengeraet
DE3040527C2 (de)
DE2160528C3 (de) Digitaler Differential-integrator
DE2652693A1 (de) Stromversorgung fuer rechner- periphergeraet
DE2355486A1 (de) Einrichtung zur eingabe/ausgabe von kassetten an den ablagefaechern eines kassettenmagazins
DE69934523T2 (de) System und Verfahren zur Bereitstellung von Steuersignalen einer Kassettenzugriffeinheit in einem Kassettenspeichersystem
DE3214554A1 (de) Schaltungsanordnung zur positionierung von schreibwerken in druckern mit einem gleichstrommotor
DE3205086A1 (de) Amplitudenmodulierte digitalisiervorrichtung
DE2063195C2 (de) Verfahren und Einrichtung zur Operationssteuerung einer Anzahl von externen Datenspeichern
DE3122054C2 (de)
DE2740824A1 (de) Vorrichtung zum anzeigen der weitesten vorlaufstellung eines in zwei richtungen bewegbaren mediums
DE3140649C2 (de) Schaltungsanordnung in einem Wiedergabegerät zum Wiedergeben eines rillenlosen sich drehenden Aufzeichungsträgers
DE2906020C2 (de)
DE2808991C2 (de)
DE1065641C2 (de) Speicher mit beweglichem Aufzeichnungsträger
DE1474290B2 (de) Magnetbandgeraet zur aufzeichnung und wiedergabe von signalen, insbesondere fernsehsignalen

Legal Events

Date Code Title Description
8141 Disposal/no request for examination