DE69229440T2 - Datenspeichergerät - Google Patents
DatenspeichergerätInfo
- Publication number
- DE69229440T2 DE69229440T2 DE69229440T DE69229440T DE69229440T2 DE 69229440 T2 DE69229440 T2 DE 69229440T2 DE 69229440 T DE69229440 T DE 69229440T DE 69229440 T DE69229440 T DE 69229440T DE 69229440 T2 DE69229440 T2 DE 69229440T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- track
- random number
- byte
- number conversion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000013500 data storage Methods 0.000 title claims description 47
- 238000012546 transfer Methods 0.000 claims description 113
- 230000015654 memory Effects 0.000 claims description 75
- 238000000034 method Methods 0.000 claims description 45
- 239000000470 constituent Substances 0.000 claims description 33
- 230000008569 process Effects 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 28
- 230000005540 biological transmission Effects 0.000 claims description 18
- 230000000694 effects Effects 0.000 claims description 13
- 230000000295 complement effect Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims 32
- 238000004364 calculation method Methods 0.000 claims 11
- 230000001419 dependent effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 33
- 230000009466 transformation Effects 0.000 description 13
- 238000012937 correction Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000008520 organization Effects 0.000 description 6
- 238000003491 array Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000000844 transformation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010348 incorporation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/30—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
- G11B27/309—Table of contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1201—Formatting, e.g. arrangement of data block or words on the record carriers on tapes
- G11B20/1207—Formatting, e.g. arrangement of data block or words on the record carriers on tapes with transverse tracks only
- G11B20/1209—Formatting, e.g. arrangement of data block or words on the record carriers on tapes with transverse tracks only for discontinuous data, e.g. digital information signals, computer programme data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/30—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
- G11B27/3027—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/30—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
- G11B27/3027—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
- G11B27/3063—Subcodes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/90—Tape-like record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/90—Tape-like record carriers
- G11B2220/91—Helical scan format, wherein tracks are slightly tilted with respect to tape direction, e.g. VHS, DAT, DVC, AIT or exabyte
- G11B2220/913—Digital audio tape [DAT] format
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf eine Datenspeichervorrichtung zum Speichern und Wiedergewinnen von Daten auf einem Band unter Verwendung einer Schraubenlinien-Abtast-Lesen/Schreiben-Technik mit Daten, die in Spuren in einem vorbestimmten Format gespeichert sind, die über das Band geschrieben sind.
- Es ist bekannt, Computerdaten auf einem Band unter Verwendung einer Schraubenform-Abtast-Aufzeichnungstechnik zu speichern. Somit ist es beispielsweise bekannt, eine DAT- (DAT = Digital Audio Tape = Digitalaudioband) Technologie zu verwenden, um Computerdaten gemäß dem DDS- (DDS = Digital Data Storage = Digitaldatenspeicherung) Format zu speichern, das gegenwärtig gemeinsam von Hewlett-Packard Limited und Sony Corporation entwickelt wird. Das DDS-Format ist in dem ISO/IEC-Standard 10777: 1991 E spezifiziert.
- Eine Datenspeichervorrichtung, die die DAT-Technologie verwendet, umfaßt im allgemeinen folgende Merkmale:
- - ein Bandlaufwerk oder -Deck mit einer Drehkopftrommel, an der Köpfe zum Schreiben/Lesen von Daten zu/von einem Band in Spuren mit einem vorbestimmten Format befestigt sind,
- - eine Datenorganisierungseinrichtung, die wirksam ist (i) während der Datenspeicherung, um Daten, die zu speichern sind, zu empfangen, und um dieselben zumindest fiktiv auf der Basis von Rahmeneinheiten, von denen jede der Datenmenge von zwei Spuren entspricht, zu organisieren, und (11) während der Datenwiedergewinnung, die Daten aus Rah meneinheiten auseinanderzufügen, um sie aus der Vorrichtung ausgeben zu können, wobei die Datenorganisierungseinrichtung einen Pufferspeicher zum Halten der Rahmeneinheiten aufweist,
- - eine Formatierungseinrichtung, die (i) während der Datenspeicherung wirksam ist, um Daten zu empfangen, die von dem Pufferspeicher übertragen worden sind, und um dieselben in dem Spurenformat zu verarbeiten, bevor sie von den Köpfen auf das Band in den Spuren geschrieben werden, wobei Bestandteildatenelemente von jeder Rahmeneinheit miteinander über zwei Spuren verschachtelt sind, und die (11) während der Datenwiedergewinnung wirksam ist, um Daten, die von den Köpfen von dem Band gelesen werden, zu empfangen, und um dieselben aus dem Spurenformat zu verarbeiten, damit sie für eine Übertragung aus dem Pufferspeicher heraus fertig sind, wobei die Daten in dem Pufferspeicher in demselben in einer nicht-verschachtelten Form gehalten werden,
- - eine Übertragungseinrichtung zum Übertragen von Daten von dem Pufferspeicher zu der Formatierungseinrichtung während der Datenspeicherung und von der Formatierungseinrichtung zu der Puffereinrichtung während der Datenwiedergewinnung, und
- - eine Systemsteuerung zum Steuern und Koordinieren des Betriebs der Vorrichtung.
- Bei einer Datenspeicherungsvorrichtung, die das vorher erwähnte DDS-Format implementiert, organisiert die Datenorganisiereinrichtung während einer Datenspeicherung ankommende Daten in zwei Gruppen von 22 Rahmeneinheiten, die als G1- Untergruppen bekannt sind, wobei die schließliche Rahmeneinheit einer Gruppe einen Index für Aufzeichnungen und Dateigrenzen für Daten in der Gruppe umfaßt. (Es sei darauf hingewiesen, daß die Organisation von Daten in Gruppen entweder durch eine tatsächliche physische Organisation von Daten in nerhalb des Pufferspeichers oder durch das geeignete Einstellen von Zeigern, die Gruppengrenzen festsetzen, bewirkt werden kann. Ferner dürften die Rahmeneinheiten selbst nicht spezifisch innerhalb einer Gruppe identifiziert sein, sondern die Gruppengröße und die Art und Weise ihrer Verarbeitung innerhalb der Datenorganisiereinrichtung basiert auf dem Konzept einer Rahmeneinheit von Daten. Aus diesem Grund kann gesagt werden, daß die Datenorganisiereinrichtung eine Organisation von Daten zumindest fiktiv auf der Basis von Rahmeneinheiten bewirkt.) Sobald Daten in einer Gruppe angeordnet sind, werden die Rahmeneinheiten der Gruppe zu der Formatiereinrichtung übertragen und im Laufe dieser Übertragung randomisiert, d. h. in Zufallszahlen umgerechnet, und verschachtelt. Die Formatiereinrichtung führt anschließend eine Anzahl von Funktionen aus, die das Erzeugen von Fehlerkorrekturcodes aus den Daten, das Kombinieren der Daten mit den Fehlerkorrekturcodes und mit Hilfscodes, das Erzeugen von Spursignalen aus denselben und das Leiten der Spursignale zu der Kopftrommel zum Schreiben auf ein Band umfassen.
- Während der Datenwiedergewinnung empfängt die Formatiereinrichtung Spurensignale, die von dem Band gelesen werden, und bewirkt eine Fehler-Erfassung/Korrektur während einer Verarbeitung der Daten aus diesem Format. Die zurückgelesenen Daten werden dann zu der Datenorganisiereinrichtung übertragen und im Laufe dieser Übertragung wird die Verschachtelung aufgehoben. Zusätzlich wird die Randomisierung aufgehoben. Die Datenorganisiereinrichtung zerlegt anschließend die Daten aus den 22 Rahmeneinheitsgruppen und gibt die wiedergewonnenen Daten aus.
- Die Europäische Patentbeschreibung EP-A2-0,437,779 (Archive Corporation) stellt in allgemeinen Ausdrücken eine Form eines DDS-basierten Datenspeicherungsgeräts dar. In diesem Fall existieren getrennte Lesen- und Schreiben-Audio-DAT- Formatierblöcke, von denen jeder seinen eigenen lokalen RAM-Speicher hat.
- Aufgrund der Komplexität der Verarbeitung, die von der Formatiereinrichtung bewirkt wird, existiert allgemein bei DAT-basierten Speichervorrichtungen eine wesentliche Verarbeitungsverzögerung durch die Formatiereinrichtung. Als Ergebnis wird es notwendig, daß Daten bezüglich mehrerer Stufen zu irgendeinem Zeitpunkt von der Formatiereinrichtung gehandhabt werden, wobei die Daten unterschiedlichen Spuren, die an unterschiedlichen Verarbeitungsstufen sind, zugeordnet sind. Somit kann aus einer Studie der Zeitdiagramme von Fig. 4 der EP-A2-0,427,779 gesehen werden, daß die Formatiereinrichtung der beschriebenen Speichervorrichtung eine Verarbeitungslaufzeitverzögerung durch dieselbe zum Schreiben/Lesen von zumindest dem Zehnfachen der Zeit aufweist, die die Kopftrommel benötigt, um eine Spur zu lesen bzw. um eine Spur zu schreiben. Als Konsequenz der großen Verarbeitungslaufzeitverzögerung benötigt die Formatiereinrichtung eine beträchtliche Menge an Speicher, um alle Daten zu erhalten, die gegenwärtig verarbeitet werden. Somit müssen Daten von minimal sechs Spuren bei der in der EP-A2-0,427,779 gezeigten Vorrichtung von jedem der lokalen RAM-Speicher gespeichert werden.
- Eine Aufgabe der vorliegenden Erfindung besteht darin, eine Reduzierung der Verarbeitungslaufzeitverzögerung durch die Formatiereinrichtung zu ermöglichen.
- Wie es bereits erwähnt wurde, handhaben DAT-basierte Datenspeicherungsvorrichtungen Daten in Rahmeneinheiten und verschachteln Bestandteildatenelemente einer Rahmeneinheit über zwei Spuren. Das Verschachteln wird allgemein bewirkt, indem die Bestandteildatenelemente einer Rahmeneinheit in der Reihenfolge ihres Auftretens in der nicht-verschachtelten Rahmeneinheit zu der Formatiereinrichtung geleitet werden, woraufhin die Datenelemente in einem Speicher der Formatiereinrichtung gemäß einem vorbestimmten Verschachtelungsmuster gespeichert werden.
- Bezüglich einer Datenspeicherungsvorrichtung, die das DDS- Format implementiert, besteht ein weiterer Grund der Übertragung der Bestandteildatenelemente einer Rahmeneinheit zu der Formatiereinrichtung in der Reihenfolge ihres Auftretens in der nicht-verschachtelten Rahmeneinheit darin, daß das Randomisierungsverfahren, das auf die Daten ausgeübt wird, die zu der Formatiereinrichtung übertragen werden, unter Verwendung einer Randomisierungssequenz bewirkt wird, die über eine gesamte Rahmeneinheit fortschreitend ist, wenn sie in nicht-verschachtelter Reihenfolge genommen wird.
- Eine Konsequenz des Übertragens der Bestandteildatenelemente einer Rahmeneinheit zu der Formatiereinrichtung in der Reihenfolge ihres Auftretens in der nicht-verschachtelten Rahmeneinheit besteht darin, daß die gesamte Rahmeneinheit übertragen werden muß, um die Übertragung von Daten, die für beide entsprechenden Spuren relevant sind, zu vervollständigen. Dies resultiert in einer Zunahme sowohl der Verarbeitungslaufzeitverzögerung als auch den Speicheranordnungen der Formatiereinrichtung.
- Gemäß der vorliegenden Erfindung wird die Übertragung von Daten zwischen der Datenorganisiereinrichtung und der Formatiereinrichtung auf einer Spur-um-Spur-Basis bewirkt, wobei die Übertragung von Daten bezüglich einer Spur fertiggestellt wird, bevor die Übertragung bezüglich der nächsten Spur begonnen wird. Um dies zu erreichen, wird die Komplexität der Übertragungseinrichtung erhöht, um die Bestandteildatenelemente einer Rahmeneinheit auszuwählen, die für die gegenwärtig übertragene Spur relevant sind. Der damit einhergehende Vorteil besteht jedoch in einer Reduktion der Verarbeitungslaufzeitverzögerung und in einer Reduktion der Speicheranordnungen der Formatiereinrichtung.
- Formaler ausgedrückt wird gemäß der vorliegenden Erfindung eine Datenspeichervorrichtung zum Speichern und Wiedergewin nen von Daten auf einem Band, wobei eine schraubenförmige Abtast-Schreiben/Lesen-Technik verwendet wird, geschaffen, wobei Daten in Spuren eines vorbestimmten Formats, die über das Band geschrieben werden, gespeichert sind, wobei die Vorrichtung folgende Merkmale aufweist:
- - ein Banddeck mit einer Drehkopftrommel, an der Köpfe zum Schreiben/Lesen von Daten auf/von dem Band in Spuren angebracht sind,
- - eine Datenorganisierungseinrichtung, die (i) während einer Datenspeicherung wirksam ist, um Daten, die zu speichern sind, zu empfangen, und dieselben zumindest fiktiv zu organisieren, auf der Basis von Rahmeneinheiten, von denen jede der Datenmenge von zwei Spuren entspricht, und die (11) während einer Datenwiedergewinnung wirksam ist, um die Daten aus Rahmeneinheiten für eine Ausgabe aus der Vorrichtung zu zerlegen, wobei die Datenorganisierungseinrichtung einen Pufferspeicher zum Halten der Rahmeneinheiten umfaßt,
- - eine Formatiereinrichtung, die (i) während einer Datenspeicherung wirksam ist, um Daten, die von dem Pufferspeicher übertragen werden, zu empfangen, und um dieselben in das Spurenformat zu verarbeiten, bevor dieselben von den Köpfen in Spuren auf ein Band geschrieben werden, wobei Bestandteildatenelemente von jeder Rahmeneinheit miteinander über zwei Spurenverschachtelt sind, und die (11) während einer Datenwiedergewinnung wirksam ist, um Daten, die von einem Band von den Köpfen gelesen werden, zu empfangen, und um dieselben aus dem Spurenformat zu verarbeiten, damit sie für eine Übertragung heraus zu dem Pufferspeicher bereit sind, wobei die Daten in dem Pufferspeicher in demselben in nicht-verschachtelter Form gehalten werden,
- - eine Übertragungseinrichtung zum Übertragen von Daten von dem Pufferspeicher zu der Formatierungseinrichtung wäh rend einer Datenspeicherung und von der Formatierungseinrichtung zu der Pufferspeicher während einer Datenwiedergewinnung, und
- - eine Systemsteuerung zum Steuern und Koordinieren des Betriebs der Vorrichtung;
- dadurch gekennzeichnet, daß die Übertragungseinrichtung eine Einrichtung umfaßt, die während einer Datenspeicherung wirksam ist, um für eine Übertragung von dem Pufferspeicher alle Bestandteildatenelemente, die für eine Spur relevant sind, wie sie auf dem Band aufgezeichnet ist, auszuwählen, und um dann für eine Übertragung von dem Pufferspeicher alle Bestandteildatenelemente, die für eine nächste Spur relevant sind, auszuwählen, wodurch Daten zwischen dem Pufferspeicher und der Formatiereinrichtung auf einer Spur-um-Spur-Basis übertragen werden, wobei die Übertragung von Daten bezüglich einer Spur vollendet ist, bevor die Übertragung von Daten bezüglich der nächsten Spur begonnen wird.
- Vorzugsweise umfaßt die Formatiereinrichtung eine Spurenspeichereinrichtung zum Speichern von Daten, die in/aus dem Spurenformat von der Formatiereinrichtung verarbeitet werden, wobei die Übertragungseinrichtung (i) während einer Datenspeicherung wirksam ist, um auf nicht-verschachtelte Daten, die in dem Pufferspeicher der Datenorganisiereinrichtung gehalten werden, zuzugreifen, und um diese Daten zu der Spurenspeichereinrichtung für eine Speicherung in derselben in verschachtelter Form zu übertragen, und die (11) während einer Datenwiedergewinnung wirksam ist, um auf Daten, die in der Spurenspeichereinrichtung in verschachtelter Form gehalten werden, zuzugreifen, und um dieselben zu dem Pufferspeicher für eine Speicherung in demselben in einer nicht-verschachtelten Form zu übertragen.
- Vorteilhafterweise umfaßt die Übertragungseinrichtung einen ersten und einen zweiten Adressengenerator zum jeweiligen Erzeugen von Adressen zum Zugreifen auf den Pufferspeicher und die Spurenspeichereinrichtung während der Übertragung der Daten, die für eine Spur relevant sind, wobei der erste und der zweite Adressengenerator wirksam sind, derart, daß die Bestandteildatenelemente, die für eine Spur relevant sind, von der Übertragungseinrichtung sequentiell in der Reihenfolge ihres Auftretens in der entsprechenden Rahmeneinheit übertragen werden, wenn dieselbe in nicht-verschachtelter Form betrachtet wird.
- Vorzugsweise sind die Bestandteildatenelemente Acht-Bit- Bytes, die von der Übertragungseinrichtung in einer Bitparallelen, Byte-seriellen Art und Weise zwischen der Datenorganisiereinrichtung und der Formatiereinrichtung übertragen werden.
- Die Bestandteildatenelemente sind beispielsweise gemäß dem vorher erwähnten DDS-Format verschachtelt. In diesem Fall kann eine besonders einfache Form des ersten Adressengenerators implementiert werden, wobei der Generator einen Binärzähler mit einer Mehrzahl von Zählerausgaben ansteigender binärer Gewichtungen und eine Rekonfigurationseinrichtung zum Rekonfigurieren der Zählerausgaben in Generatorausgaben aufweist, die die Adresse, die von der ersten Generatoreinrichtung erzeugt wird, in binärer Form liefern, wobei die Rekonfigurationseinrichtung wirksam ist, um folgendes zu ermöglichen:
- - Durchlassen der Zählerausgabe der Gewichtung 2&sup0; auf den entsprechend gewichteten Generatorausgang,
- - Neukonfigurieren der Zählerausgabe mit einer Gewichtung von 2¹ auf die Generatorausgänge mit einer Gewichtung von 2¹ und 2², wobei der Generatorausgang mit der Gewichtung 2¹ abhängig davon, auf welcher Spur jedes Paar von Spuren, das der Rahmeneinheit zugeordnet ist, von der Übertragungseinrichtung übertragen wird, invertiert oder nicht-invertiert wird, und
- - Neukonfigurieren aller anderen Zählerausgaben auf die Generatorausgänge mit einer um Eins größeren Gewichtung.
- Wenn die Bestandteildatenelemente einem Randomisierungsverfahren durch eine Kombination mit jeweiligen Randomisierungselementen unterworfen werden, die zusammen eine vorbestimmte Sequenz bilden, die gemäß der Reihenfolge der Bestandteildatenelemente über eine nicht-verschachtelte Rahmeneinheit fortschreitend ist (dieses Randomisierungsverfahren wird während der Datenwiedergewinnung durch ein komplementäres De-Randomisierungsverfahren rückgängig gemacht), umfaßt die Übertragungseinrichtung vorzugsweise eine Randomisierereinrichtung, die wirksam ist, um das Randomisierungs/ De-Randomisierungsverfahren während der Übertragung von Daten, die für eine Spur relevant sind, zu bewirken, wobei die Randomisierereinrichtung beim Liefern geeigneter Randomisierungselemente von der vorbestimmten Sequenz die Verteilung der Bestandteildatenelemente der einen Spur über der entsprechenden Rahmeneinheit berücksichtigt.
- Vorteilhafterweise ist die Randomisierereinrichtung wirksam, um eine Byte-breite Randomisierung/De-Randomisierung von Daten zu bewirken, und dieselbe umfaßt folgende Merkmale:
- - ein Unterseguenzregister zum Halten einer Untersequenz der vorbestimmten Sequenz, das eine Mehrzahl von Ausgängen hat, wobei die Zustände derselben von der Untersequenz bestimmt werden, und die dazu dienen, zumindest ein Randomisierungs/De-Randomisierungsbyte zu definieren,
- - eine erste Kombinationslogik, die angeschlossen ist, um sowohl ein Datenbyte, das von der Übertragungseinrichtung übertragen wird, als auch ein Randomisierungs/De-Randomisierungsbyte zu empfangen, und um diese Bytes zu kombinieren, um ein randomisiertes/de-randomisiertes Datenbyte abzuleiten, und
- - eine zweite Kombinationslogik, die auf die Zustände der Registerausgänge anspricht, um eine neue Untersequenz zum Laden in das Register zu erzeugen, wobei die neue Untersequenz der vorherigen Untersequenz entspricht, die um einen Betrag, der dem zumindest einen Byte entspricht, verschoben ist.
- Vorzugsweise umfaßt die Randomisierereinrichtung ferner folgende Merkmale:
- - eine Byteausgabeeinrichtung, die auf die Zustände der Registerausgänge anspricht, um eine Mehrzahl von Randomisierungs/De-Randomisierungsbytes zu liefern, die in der vorbestimmten Sequenz sequentiell angeordnet sind, wobei die Byteausgangseinrichtung eine Kombinationslogik zum Vorhersagen der Bits der Randomisierungs/De-Randomisierungsbytes aufweist, die nicht von den Registerausgängen dargestellt sind; und
- - eine Byteauswahleinrichtung zum Auswählen des Randomisierungs/De-Randomisierungsbytes aus der Mehrzahl von Randomisierungs/De-Randomisierungsbytes, das von der ersten Kombinationslogik mit dem Byte an Daten zu kombinieren ist, wobei die Byteauswahleinrichtung ihre Auswahl abhängig davon bewirkt, welche Spur jedes Paars von Spuren, die einer Rahmeneinheit zugeordnet sind, von der Übertragungseinrichtung übertragen wird.
- Die vorher erwähnte Byteausgangseinrichtung ist beispielsweise angeordnet, um vier Randomisierungs/De-Randomisierungsbytes zu liefern, wobei die neue Untersequenz, die von der zweiten Kombinationslogik erzeugt wird, der vorherigen Untersequenz entspricht, die innerhalb der vorbestimmten Sequenz um 32 Bit verschoben ist.
- Wo die Datenspeichervorrichtung das DDS-Format implementiert, entspricht die vorbestimmte Sequenz der Ausgabe des Linearrückkopplungsschieberegisters, das in dem vorher erwähnten DDS-Standard verwendet wird, um die Randomisierungs funktion zu spezifizieren. In diesem Fall hat die Untersequenz eine Länge von 15 Bit.
- Ein Bandspeichergerät, das die vorliegende Erfindung ausführt, wird nachfolgend mittels eines nicht-begrenzenden Beispiels bezugnehmend auf die beigefügten schematischen Zeichnungen detailliert beschrieben. Es zeigen:
- Fig. 1 das Format eines Rahmens, der auf ein Band geschrieben ist, gemäß der DAT-Formatspezifikation;
- Fig. 2A das Layout eines Bands, das gemäß dem DDS-Format beschrieben ist;
- Fig. 2B die Zusammensetzung einer aufgezeichneten Datengruppe, die in einem Datenbereich des Bandlayouts von Fig. 2A geschrieben ist;
- Fig. 3 ein Blockdiagramm einer Bandspeicherungsvorrichtung, die angeordnet ist, um das DDS-Format zu implementieren;
- Fig. 4 eine Basisgruppe, die von einem Gruppenprozessor des Speicherungsgeräts von Fig. 3 erzeugt ist;
- Fig. 5 G1-Untergruppen, die durch den Gruppenprozessor des Speicherungsgeräts von Fig. 3 erzeugt ist;
- Fig. 6 G2-Untergruppen, die von dem Gruppenprozessor des Speicherungsgeräts von Fig. 3 erzeugt ist;
- Fig. 7 die Zusammensetzung einer G3-Untergruppe, die zwischen dem Gruppenprozessor und einer DAT-Elektronikanordnung des Speicherungsgeräts von Fig. 3 übertragen wird;
- Fig. 8 ein Array von Zwillingsarrays, die eine G4-Untergruppe bilden, die durch die DAT-Elektronikanordnung des Speicherungsgeräts von Fig. 3 erzeugt ist;
- Fig. 9 die Zusammensetzung eines Hauptdatenblocks, der von der DAT-Elektronikanordnung des Speicherungsgeräts von Fig. 3 erzeugt ist;
- Fig. 10 die Zusammensetzung eines Unterdatenblocks, der von der DAT-Elektronikanordnung des Speicherungsgeräts von Fig. 3 erzeugt ist;
- Fig. 11 das Format von Spurensignalen, die zwischen der DAT-Elektronikanordnung und einem DAT-Deck des Speicherungsgeräts von Fig. 3 übertragen werden;
- Fig. 12 ein Blockdiagramm einer bevorzugten Implementation der Rahmenprozessorfunktion des Speicherungsgeräts von Fig. 3;
- Fig. 13 eine Tabelle, die die Zuordnung von Datenbytes zu Adressenpositionen innerhalb eines Spuren-RAM- Speichers des Rahmenprozessors von Fig. 12 zeigt;
- Fig. 14 ein Diagramm, das die Hauptzeitsignale zeigt, die von dem Rahmenprozessor von Fig. 12 verwendet werden;
- Fig. 15 eine Tabelle, die die Zuordnung von Datenbytes zwischen positiven und negativen Azimuthspuren zeigt;
- Fig. 16 ein Blockdiagramm eines Übertragungsfunktionsblocks des Rahmenprozessors von Fig. 12;
- Fig. 17 ein Diagramm eines Spurenbyteadressengenerators des Übertragungsfunktionsblocks von Fig. 16;
- Fig. 18 eine Tabelle, die die Sequenzen von Adressen zeigt, die von dem Adressengenerator von Fig. 17 erzeugt werden;
- Fig. 19 ein Blockdiagramm eines Schlitzverschachtelungsadressengenerators des Übertragungsfunktionsblocks von Fig. 16; und
- Fig. 20 ein Blockdiagramm eines Randomisierergenerators des Übertragungsfunktionsblocks von Fig. 16.
- Die vorliegende Erfindung wird nachfolgend bezugnehmend auf ein Bandspeicherungsgerät beschrieben, das Hostcomputerdaten auf einem Band im allgemeinen gemäß dem DDS- (DDS = Digital Data Storage = digitale Datenspeicherung) Format, das von Hewlett-Packard Limited und der Sony Corporation gemeinsam entwickelt wird, speichert und wiedergewinnt. Eine detaillierte Spezifikation des DDS-Formats ist in dem ISO/IEC- Standard 10777: 1991 E gegeben. Das DDS-Format für die Speicherung von Computerdaten verwendet und baut auf dem 48- KHz-Modus des DAT- (DAT = Digital Audio Tape = Digitalaudioband) Formats, das für die Speicherung von PCM-Audiodaten verwendet wird. Das DAT-Format und dementsprechend das DDS- Format verwenden beide eine Schraubenlinien-Abtast-Aufzeichnungstechnik, bei der ein Bandspeichermedium mit einem Bandführungswinkel von 90º schief über eine sich drehende Kopftrommel bewegt wird. Die Trommel trägt zumindest zwei Köpfe, die bei jeder Umdrehung der Trommel zusammen dazu dienen, ein Paar von überlappenden, entgegengesetzt azimuthmäßig angeordneten Spuren zu lesen/schreiben, die als ein Rahmen bekannt sind.
- Bandspeicherungsgeräte, die das DDS-Format implementieren, sind unter anderem von Hewlett-Packard Limited erhältlich und werden allgemein als DDS-Laufwerke bezeichnet.
- Um ein Verständnis der vorliegenden Erfindung zu erleichtern, wird nachfolgend ein kurzer Überblick der Hauptmerkmale des DDS-Formats gegeben, dem eine Beschreibung der Hauptfunktionselemente eines DDS-Laufwerks folgt.
- Die Grundeinheit zum Schreiben und Lesen von Informationen zu/von einem Band 10 ist ein Rahmen. Fig. 1 stellt das Format eines Rahmens dar, der, wie es bereits erwähnt wurde, aus zwei gegenüberliegenden Azimuthspuren 20, 21 besteht. In Fig. 1 zeigt der Pfeil T die Richtung der Bandbewegung. Jede Spur umfaßt zwei Randbereiche 22, zwei Unterbereiche 23, zwei ATF-Bereiche 24 (ATF = Automatic Track Following = automatische Spurverfolgung) und einen Hauptbereich 25. Die ATF-Bereiche 24 liefern Signale, die es den Köpfen der Kopftrommel (nicht gezeigt) erlauben, den Spuren auf bekannte Art und Weise genau zu folgen. Der Hauptbereich 25 wird verwendet, um die Daten (Hostdaten) zu speichern, die von dem Hostcomputer zu dem Bandgerät geliefert werden (die Hostdaten umfassen Benutzerdaten, die als Aufzeichnung von dem Hostcomputer zugeführt werden, und Trennmarken, die eine logische Trennung der Benutzerdaten anzeigen). Die Unterbereiche 23 werden hauptsächlich verwendet, um Hilfsinformationen zu speichern, die als Untercodes bekannt sind, die sich beispielsweise auf bestimmte Aufzeichnungsparameter (wie z. B. eine Formatidentität, Bandparameter, usw.) und auf eine Bandverwendungshistorie beziehen. Daten werden in dem Hauptbereich in 128 Blöcken und in jedem Unterbereich 23 in 8 Blöcken gespeichert. Jeder Block beginnt mit einem Sync-Byte und hat einen 3-Byte-Anfangsblock, dem ein 32- Byte-Datenbereich folgt. Der Block-Anfangsblock oder Block-"Header" umfaßt zwei Informationsbytes W1, W2, wobei eines derselben ein Blockadressenbyte ist, das eindeutig den Block innerhalb der gegenwärtigen Spur identifiziert. Der Anfangsblock umfaßt ferner ein Paritätsbyte.
- Die allgemeine Organisation von Rahmen entlang eines Bands (d. h. das Bandlayout) ist in Fig. 2A dargestellt. Es ist zu sehen, daß das Band in drei Hauptbereiche organisiert ist, nämlich in einen Einführungsbereich 36, einen Datenbereich 37 und einen Ende-der-Daten- (EOD-) Bereich 38. Die Enden des Bands werden als BOM (BOM = Beginning Of Media = Medienbeginn) und als EOM (EOM = End of Media = Medienende) bezeichnet. Hostdaten werden in den Hauptbereichen der Rahmen aufgezeichnet, die in den Datenbereich 37 geschrieben werden. Der Einführungsbereich 36 umfaßt einen Systemprotokollbereich zwischen einer Beginn-der-Aufzeichnung- (BOR; BOR = Beginning Of Recording) Marke und dem Datenbereich 37, wo Systeminformationen gespeichert sind. Ein Bandbereich-ID- Untercode, der in dem Unterbereich 23 jedes Rahmens gespeichert ist, ermöglicht es, daß der Systemprotokollbereich, der Datenbereich 37 und der EOD-Bereich 38 voneinander unterschieden werden können.
- Wie es in Fig. 2B gezeigt ist, sind die Rahmen 48 des Datenbereichs in Aufzeichnungsdatengruppen 39 angeordnet, wobei jede 22 gültige Rahmen (plus einem optionalen Rahmen 43, dem C3-ECC-Rahmen, der einen Fehlerkorrekturcode für die Gruppe speichert) aufweist.
- Innerhalb einer Gruppe sind Benutzerdaten und Trennmarken getrennt gespeichert, wobei die Benutzerdaten als durchgehender Lauf von Bytes über die Hauptbereiche aufeinanderfolgender Rahmen ohne Aufzeichnungsmarken gespeichert sind, während Informationen bezüglich der Aufteilung der Benutzerdaten in Aufzeichnungen und die Trennmarken in einem Index 40 gehalten werden, der sich von dem Ende des Hauptbereichs des letzten Rahmens in der Gruppe nach vorne erstreckt. (Es sei angemerkt, daß der Index in der Tat innerhalb des letzten Rahmens aufgrund eines Byteverschachtelungsverfahrens, das während der Aufzeichnung nach dem Bilden des Index ver wendet wird, verstreut ist.)
- Diese aufgezeichneten Datengruppen sind voneinander durch einen oder mehrere Ambelrahmen 44 getrennt, wobei die Hauptbereiche derselben optional mit einem randomisierten Muster aus lauter Nullen gefüllt sind. Ambeln sind nur in dem Datenbereich 37 erlaubt.
- Fig. 3 ist ein Funktionsblockdiagramm eines DDS-Laufwerks. Das Gerät umfaßt:
- - eine Schnittstelleneinheit 50 zum schnittstellenmäßigen Verbinden des Laufwerks mit einem Hostcomputer (nicht gezeigt) über einen Bus 51;
- - einen Gruppenprozessor 52 zum Verarbeiten von Benutzerdatenaufzeichnungen und Trennmarken in und aus indexierten Gruppen;
- - einen Rahmenprozessor 53 (der in dieser Anmeldung ebenfalls als DAT-Elektronikanordnung bezeichnet wird), der eine Signalverarbeitung auf niedriger Ebene im allgemeinen gemäß dem DAT-Standard bewirkt, jedoch mit bestimmten Modifikationen, wie sie in dem DDS-Format spezifiziert sind; diese Verarbeitung auf niedriger Ebene dient dazu, um Bytes, die demselben von dem Gruppenprozessor 52 zugeführt worden sind, in Spurensignale umzuwandeln, die zum Aufzeichnen bereit sind, und um Spurensignale zurück in Bytes für den Gruppenprozessor umzuwandeln;
- - ein Schraubenlinien-Abtast-Banddeck 54 zum Schreiben zu und zum Lesen von einem Bandmedium; und
- - eine Systemsteuerung 55 zum Steuern des Betriebs der anderen Elemente des Laufwerks ansprechend auf Befehle, die von dem Host über die Schnittstelleneinheit 50 empfangen werden.
- Das Laufwerk ist angeordnet, um auf Befehle von dem Hostcomputer anzusprechen, um ein Band zu laden/entladen, um eine Datenaufzeichnung oder eine Trennmarke zu speichern, um nach ausgewählten Trennmarken oder Aufzeichnungen zu suchen, und um die nächste Aufzeichnung zurückzulesen.
- Die Schnittstelleneinheit 50 ist angeordnet, um die Befehle von dem Computer zu empfangen, und um die Übertragung von Datenaufzeichnungen und Trennmarken zwischen dem Bandspeichergerät und dem Computer zu verwalten. Beim Empfang eines Befehls von dem Computer leitet die Einheit 50 denselben zu der Systemsteuerung 55, die in angemessener Zeit eine Antwort zurück zu dem Computer senden wird, und zwar über die Einheit 50, die eine Befolgung oder irgendetwas anderes bezüglich des ursprünglichen Befehls anzeigt. Sobald das Laufwerk von der Systemsteuerung 55 als Reaktion auf einen Befehl von dem Computer, um Daten zu speichern oder zu lesen, eingestellt worden ist, wird die Schnittstelleneinheit 50 ebenfalls das Leiten von Aufzeichnungen und Trennmarken zwischen dem Computer und dem Gruppenprozessor 52 steuern.
- Da ein Verständnis der Verarbeitung, die in einem DDS-Laufwerk bewirkt wird, wesentlich das Verständnis der vorliegenden Erfindung unterstützen wird, wird eine allgemeine Beschreibung der Funktionalität des Laufwerks von Fig. 3 in dem nächsten Abschnitt bezugnehmend auf die Fig. 3 bis 12 gegeben. Dieser nächste Abschnitt kann jedoch von Personen weggelassen werden, die eine gute Arbeitskenntnis des DDS- Formats haben.
- Es sollte angemerkt werden, daß das DDS-Laufwerk von Fig. 3 und die folgende darauf bezogene Beschreibung eine Serie von Funktionstransformationen offenbaren, die Daten, die auf das Band geschrieben werden oder von dem Band gelesen werden, beim Verarbeiten durch ein DDS-Laufwerk unterlaufen müssen.
- Es ist jedoch nicht notwendig, daß jede Funktionstransformation als expliziter getrennter Schritt ausgeführt wird, sondern es zählt nur die Gesamtheit der Funktionstransformation, der Daten unterworfen werden, wenn sie durch das Laufwerk laufen, welche der Kombination der einzelnen Transformationen entspricht, die bezugnehmend auf Fig. 3 dargestellt und beschrieben sind. Somit können die Funktionsblöcke, die in Fig. 3 beschrieben sind, kein direktes Äquivalent in einer speziellen Implementation eines DDS-Laufwerks haben, obwohl eine äquivalente Funktionalität an anderer Stelle vorgesehen ist.
- Nachfolgend wird eine Beschreibung des allgemeinen Betriebs des Laufwerks bezüglich des Schreibens von Daten auf ein Band gegeben. Der Betrieb des Laufwerks während des Lesens von Daten ist für Fachleute offensichtlich, da die Verfahren entweder einfach umgekehrt werden, oder da Daten, die während des Schreibens zusammengesetzt werden, um das Leseverfahren zu unterstützen, während desselben verwendet werden (beispielsweise Fehlerkorrekturcodes, die während des Schreibens berechnet werden, werden während des Lesens verwendet, um Fehler zu korrigieren).
- Während einer Datenspeicherung ist eine Gruppierungseinheit 56 des Gruppenprozessors 52 angeordnet, um die Daten zu organisieren, die zu demselben in der Form von Benutzerdatenaufzeichnungen und Trennmarken geliefert werden, und zwar in Datenpakete, die als "Basisgruppen" bezeichnet werden. Die Gruppierungseinheit 56 ist ebenfalls angeordnet, um den Index für jede Basisgruppe zu bauen. Die Einheit 56 ordnet jede Basisgruppe in einem Gruppenspeicher 57 an. Die Form einer Basisgruppe ist in Fig. 4 dargestellt und, wie es zu sehen ist, umfaßt jede Basisgruppe 126.632 Bytes insgesamt, die zwischen Benutzerdaten (ohne irgendwelche Auf zeichnungsmarken) und einem Index 40 geteilt sind, der vom Ende der Basisgruppe aus "wächst". Der Index 40 selbst umfaßt zwei Hauptdatenstrukturen, nämlich eine Gruppeninformationstabelle 41, die allgemeine Informationen über die Basisgruppe speichert (Anzahl von Aufzeichnungen, Trennmarken, usw.), und eine Blockzugriffstabelle 42, die spezifischere Daten bezüglich des Inhalts der Gruppe enthält (einschließlich Informationen bezüglich der Aufteilung von Benutzerdaten in Aufzeichnungen und der logischen Position der Trennmarken). Die Gruppeninformationstabelle 41 ist an einer festen Position an dem Ende der Gruppe gespeichert und hat die gleiche Größe (32 Byte) unabhängig von dem Inhalt der Basisgruppe. Dagegen variiert die Blockzugriffstabelle 42 bezüglich ihrer Größe abhängig von dem Inhalt der Gruppe und erstreckt sich von der Gruppeninformationstabelle in den Rest des Benutzerdatenbereichs der Rahmen der Gruppe nach rückwärts. Einträge werden in der Blockzugriffstabelle von der Gruppeninformationstabelle nach rückwärts zu der Grenze mit Benutzerdaten durchgeführt.
- Während des Datenschreibens frägt die Schnittstelle 50, wenn der Host bereit ist, eine Datenaufzeichnung zu leiten, die Gruppierungseinheit 56, ob sie bereit ist, die Aufzeichnung zu empfangen. Die Gruppierungseinheit 56 kann zu Anfang eine Antwort "warten" senden, sie ermöglicht jedoch in angemessener Zeit die Übertragung der Datenaufzeichnung von dem Host zu dem Gruppenspeicher 57.
- Typischerweise überträgt ein Host Aufzeichnungen, und zwar eine zu einem Zeitpunkt, obwohl Mehrfachaufzeichnungsübertragungen für kürzere Aufzeichnungen zugelassen sein können.
- Die Aufzeichnung wird zu einer Gruppenspeicherposition übertragen, die der schließlichen Positionierung der Aufzeichnungsbenutzerdaten innerhalb der Grundgruppe entspricht, von der sie einen Teil bilden wird. Informationen bezüglich der Größe der Aufzeichnung werden von der Gruppierungseinheit 56 verwendet, um den Gruppenindex zu aktualisieren. Der Index wird an einer Position in dem Gruppenspeicher, die geeignet für seine Position an dem Ende einer Basisgruppe ist, aufgebaut.
- Wenn eine Übertragung von dem Host nicht vollständig in eine Basisgruppe passen kann, wird gesagt, daß dieselbe die Gruppengrenze "überbrückt". Der erste Teil der Übertragung geht in eine Basisgruppe, und der Rest geht in eine oder mehrere folgenden Basisgruppen. Wenn keine Überbrückung auftritt, wird der Gruppenindex aktualisiert, und die Gruppierungseinheit 60 wartet auf einen weiteren Schreibbefehl. Wenn eine Überbrückung auftritt, wird der Index der gegenwärtigen Basisgruppe aktualisiert, und diese Gruppe ist zum Schreiben auf ein Band verfügbar. Die nächste Gruppe wird begonnen, und die Daten von dem Host laufen direkt in den Beginn dieser neuen Basisgruppe. Wenn der Host eine Trennmarke sendet, wird die Gruppeneinheit 56 den Index der gegenwärtigen Basisgruppe entsprechend aktualisieren.
- Die Gruppierungseinheit 56 erzeugt ferner bestimmt Untercodes, die für die gegenwärtige Basisgruppe relevant sind, wie z. B. die Anzahl von Trennmarken und empfangenen Aufzeichnungen, gezählt von der ersten Gruppe aus.
- Während des Datenschreibens wird jede Grundgruppe aus dem Gruppenspeicher in 22 Blöcke, von denen jeder 5.756 Bytes hat und die als G1-Untergruppen bekannt sind (siehe Fig. 5), übertragen. Jede solche Untergruppe bildet schließlich den Dateninhalt eines jeweiligen aufgezeichneten Rahmens. Jede G1-Untergruppe hat eine zugeordnete Identifikationsnummer, die als die Logikrahmenidentifikationsnummer (LF-ID; LF-ID = Logical Frame Identification Number) bekannt ist, die die Gruppierungseinheit 56 in einen Anfangsblock aufnimmt. Dieser Anfangsblock wird anschließend in den Hauptdatenstrom zusammen mit der zugeordneten G1-Untergruppe kombiniert (siehe unten).
- Optional kann die Gruppierungseinheit ebenfalls einen Feh lerkorrekturcode- (C3-Code-) Block für jede Basisgruppe berechnen. Dieser C3-Code bildet seine eigene G1-Untergruppe, die als 23. Untergruppe an den Strom von Untergruppen angehängt wird, die aus der Gruppierungseinheit übertragen wird.
- Wenn Daten von einem Band gelesen werden, ist die Gruppierungseinheit 56 angeordnet, um G1-Untergruppen zu empfangen, und um dieselben in den Gruppenspeicher 57 derart zu schreiben, um eine Basisgruppe zu bauen. Die Gruppierungseinheit 56 kann dann auf den Gruppenindex zugreifen, um Informationen bezüglich der logischen Organisation (Aufzeichnungs/- Entität-Struktur, Trennmarken) der Benutzerdaten in der Gruppe wiederzugewinnen. Unter Verwendung dieser Informationen kann der Gruppenprozessor 52 eine angeforderte Aufzeichnung oder Trennmarke über die Schnittstelle 50 zu dem Host leiten. Die Anordnung von G1-Untergruppen zurück in eine Grundgruppe werden durch die zugeordneten Logikrahmen-IDs erleichtert, die der Gruppierungseinheit 56 in den Anfangsblöcken geliefert werden, die jedoch früher im Leseprozeß von den Untergruppen entfernt werden. Nachfolgend wird wieder zu der Beschreibung des Datenleseverfahrens zurückgekehrt. Die G1-Untergruppen, die von der Gruppierungseinheit 56 ausgegeben werden, werden einem Randomisierungsverfahren bekannter Form in einem Randomisierer 58 unterzogen, um eine gleichmäßige HF-Höhkurve des Lesesignals unabhängig von dem Datenmuster in dem Rahmen zu liefern. Das Ausgangssignal des Randomisierers 58 ist eine Folge von G2-Untergruppen (siehe Fig. 6).
- Eine oder mehrere Ambel-Untergruppen können optional an das Ende jeder Gruppe von G1-Untergruppen, die zu dem Randomisierer 58 gespeist werden, hinzugefügt werden, wobei die Steuerung der Ambel-Hinzufügung durch eine Ambel-Steuerfunktionseinheit 45 des Grundprozessors 52 bewirkt wird. Diese Ambel-Untergruppen werden als Ambelrahmen auf das Band geschrieben. Der Inhalt einer Ambel-Untergruppe besteht aus Null-Bytes, die nach einer Verarbeitung (einschließlich einer Randomisierung in dem Randomisierer 58) den Inhalt des Hauptbereichs 25 des entsprechenden Ambelrahmens bilden, wobei die einzigen Daten in diesen Hauptbereichen ein Anfangsblock ist, der jeder Ambel zugeordnet ist. Der Hauptzweck des Hinzufügens von Ambel-Untergruppen besteht darin, ein ununterbrochenes Schreiben durch das Deck 54 zu erlauben, wenn aus irgendeinem Grund eine Verzögerung beim Liefern der nächsten folgenden Gruppe zum Schreiben auf das Deck vorhanden ist. Wenn somit eine Verzögerung beim Liefern von Hostdaten zu dem Prozessor 52 vorhanden ist, um die nächste Basisgruppe zu vollenden, überwacht die Einheit 45 das Einfügen von einer oder mehrerer Ambel-Untergruppen bis zu der Zeit, zu der der Prozessor 52 die nächste Basisgruppe vollenden kann (oder bis ein Zeit-Aus-Ereignis erreicht ist und das durchgehende Schreiben beendet wird, woraufhin eine neue Positionierungsoperation auftreten muß, bevor die nächste Gruppe auf das Band geschrieben wird). Eine beliebige Anzahl von Ambelrahmen kann nach einer aufgezeichneten Datengruppe auf das Band geschrieben werden.
- Der Anfangsblock, der jeder Ambel-Untergruppe zugeordnet ist, wird durch die Gruppierungseinheit 56 erzeugt, wenn die Ambel-Steuereinheit 45 bestimmt, daß eine Ambel-Untergruppe einzufügen ist. Die Logikrahmen-ID des Anfangsblocks wird auf Null gesetzt, um anzuzeigen, daß die Untergruppe eine Ambel-Untergruppe ist und daher während des Lesens ignoriert werden kann, wenn die Untergruppe zu dem Gruppenprozessor 52 geleitet wird. Die Untercodes, die in den Unterbereichen eines Ambelrahmens aufzuzeichnen sind, werden ebenfalls von der Gruppierungseinheit 56 geliefert und umfassen in der Tat Untercodes, die für die letzte vorhergehende Gruppe relevant sind.
- Nach dem Randomisierer 58 kombiniert ein Multiplexer/Demultiplexer 59 jede G2-Untergruppe mit ihrem Anfangsblock und mit einer Anzahl von Auffüllbytes, die lauter Nullen umfassen und die benötigt werden, um eine Anpassung an die Größe jeder Untergruppe mit der Audiodatenrahmengröße des DAT-Formats zu erreichen. Das Ausgangssignal des MUX/DEMUX 59 be steht aus einer Folge von G3-Untergruppen, von denen jede 5.824 Byte aufweist, die gedanklich wie in Fig. 7 dargestellt angeordnet sind (diese Anordnung und Terminologie entspricht dem DAT-Format). Insbesondere sind die Bytes in Zeilen von vier als zwei 2-Byte-Worte angeordnet, wobei jedes Wort entweder als Kanal-A-Wort oder als Kanal-B-Wort bezeichnet ist (was die Audioassoziationen des DAT-Formats wiedergibt). Die zwei Worte in der ersten Zeile (mit 0 numeriert) bestehen aus dem Untergruppenanfangsblock, wobei die Worte in den Zeilen 1 bis 1.439 von der entsprechenden G2- Untergruppe abgeleitet sind, und wobei die Worte in den Zeilen 1.440 bis 1.455 die Auffüllbytes sind, die nur Nullen haben.
- Wie es oben erwähnt wurde, wird der Anfangsblock für jede Untergruppe durch die Gruppierungseinheit 56 erzeugt und wird koordiniert zu dem Ausgangssignal der entsprechenden G1-Untergruppe geliefert. Die Struktur des Anfangsblocks jeder Untergruppe kann aus Fig. 7 erkannt werden. Wieder, wie es bereits erwähnt wurde, enthält der Anfangsblock eine Logikrahmen-ID (LF-ID). Diese ID ist ein Ein-Byte-Code, der in der oberen Byteposition beider Kanäle A und B gespeichert ist. Die ersten sechs Bits der LF-ID zeigen die laufende Nummer jeder Untergruppe innerhalb einer Gruppe (1 bis 23, wobei der optionale C3-Rahmen der Rahmen 23 ist), oder dieselben sind für einen Ambelrahmen auf Null gesetzt. Bit 7 der LF-ID ist auf EINS gesetzt, um die letzte Untergruppe einer Gruppe (einschließlich irgendeiner C3-Untergruppe) anzuzeigen. Das Bit 8 der LF-ID ist nur für eine C3-Untergruppe auf EINS gesetzt. Zusätzlich zu der LF-ID umfaßt der Anfangsblock eine Vier-Bit-Datenformat-ID (die in der unteren Byteposition beider Kanäle A und B gespeichert ist), die für das DDS-Format auf 0000 gesetzt ist.
- Die G3-Untergruppen werden zu einem Hauptdatenprozessor 60 der DAT-Elektronikanordnung 53 geleitet, wo sie im wesentlichen gemäß dem 48-KHz-Modus des DAT-Formats verarbeitet werden. Insbesondere unterlaufen die Bytes jeder G3-Unter gruppe ein Verschachtelungsverfahren, um Zwillingsarrays zu bilden, während sie in einen Verschachtelungsspeicher 61 des Hauptdatenprozessors 60 gespeist werden. Dieses Verschachteln minimiert die Auswirkungen bestimmter Medienfehler. Zwei Sätze von Fehlerkorrekturcodes (C1 und C2) werden dann erzeugt und in die in dem Speicher 61 gehaltenen Zwillingsarrays eingefügt. Fig. 8 stellt die konzeptionelle Form von einem dieser Zwillingsarrays dar, die zusammen eine G4- Untergruppe bilden. Wie es aus Fig. 8 zu sehen ist, wird jedes Array einer G4-Untergruppe durch 128 Spalten gebildet, wobei jede Spalte 32 Byte aufweist. Nach einer weiteren Verarbeitung in der DAT-Elektronikanordnung 53 werden die zwei Arrays einer G4-Untergruppe den Inhalt des Hauptbereichs jeweiliger Spuren eines Rahmens bilden.
- Jedes Array einer G4-Untergruppe wird anschließend in 128 Hauptdatenblöcke (siehe Fig. 9) gebildet, von denen jeder 35 Bytes aufweist, durch Kombinieren der 32 Bytes jeder Arrayspalte mit einer Drei-Byte-Haupt-ID in einem Blockmultiplexer/Demultiplexer 62. Die Haupt-ID-Bytes werden von einer Haupt-ID-Einheit 63 geliefert und bestehen aus zwei Bytes W1, W2 und einem Paritätsbyte. Das Byte W1 enthält eine Format-ID und eine Rahmennummerinformation, und das Byte W2 enthält eine Blocknummer, die den gegenwärtigen Hauptdatenblock innerhalb des Satzes von 128 Blöcken identifiziert, die von jedem G4-Untergruppenarray abgeleitet werden.
- Durch den vorangegangenen Prozeß wird jede Basisgruppe in 22 Paare von 128 Hauptdatenblöcken (d. h. 5.632 Hauptdatenblöcke) mit einem weiteren Paar von 128 Blöcken für die C3- und jede Ambel-Untergruppe, falls vorhanden, transformiert.
- Parallel zu der Erzeugung der Hauptdatenblöcke werden ebenfalls 35-Byte-Unterdatenblöcke erzeugt, die Untercodes enthalten, die der DAT-Elektronikanordnung 53 von dem Gruppenprozessor 52 und der Systemsteuerung 55 zugeführt werden. 32 Unterdatenblöcke werden für jede verarbeitete G4-Untergruppe erzeugt (d. h. acht Blöcke für jeden der zwei Unterbereiche 23 der zwei Spuren, in die die G4-Untergruppe zu schreiben ist).
- Die Struktur eines Unterdatenblocks ist in Fig. 10 dargestellt. Jeder Unterdatenblock umfaßt einen Drei-Byte-"Unter-ID"-Abschnitt 33 und einen 32-Byte-"Unterdaten"-Abschnitt.
- Die Unter-ID wird in einer Unter-ID-Einheit 64 erzeugt und besteht aus zwei informationsenthaltenden Bytes SW1, SW2 und einem Paritätsbyte. Das Byte SW2 wird zum Speichern von Informationen verwendet, die sich auf den gegenwärtigen Unterdatenblock als Ganzes (Typ und Adresse) und die Anordnung des Unterdaten-Abschnitts beziehen. Das Byte SW1 wird zum Speichern von Untercodes und insbesondere der Bereich-ID verwendet, die den gegenwärtigen Bandbereich anzeigt (dieser Untercode wird von der Systemsteuerung 55 geliefert).
- Der Unterdaten-Abschnitt jedes Unterdatenblocks wird in der Einheit 65 erzeugt und besteht aus 32 Bytes, die in 48- Byte-"Packungen" angeordnet sind. Jede Packung wird verwendet, um einen Packungsgegenstand zu speichern. Es existiert eine Anzahl von unterschiedlichen Typen von Packungsgegenständen, von denen jeder einen speziellen Satz von Untercodes hält. Das Abbilden von Packungsgegenständen in die Unterdaten-Packungen hängt von dem gegenwärtigen Bandbereich ab, und es werden nicht alle Packungsgegenstände in jedem gegebenen Bandbereich vorhanden sein. Die Identität des Packungsgegenstands, der in einer Unterdaten-Packung gehalten wird, ist durch einen Packungsgegenstandcode angezeigt, der das erste halbe Byte jedes Packungsgegenstands, der in einer Packung gespeichert ist, besetzt. Bezüglich der vierten Packung wird diese Packung für jeden geraden Block entweder auf Null gesetzt oder enthält den gleichen Packungsgegenstand wie die dritte Packung, während für jeden ungeraden Block die vierte Packung ein C1-Paritätsbyte für die ersten drei Packungen des gegenwärtigen Blocks und alle vier Packungen des vorangegangenen gerade-numierierten Unterda ten-Blocks enthält.
- Lediglich beispielhaft enthalten die Packungsgegenstände, die mit 1 und 2 codiert sind, einen Gruppen-, einen Trenn- und einen Aufzeichnungszählwert, während die Packungsgegenstände 3 und 4 beide ID-, Absolutrahmennummer-, LF-ID- und Überprüfungssummendaten enthalten. Die Packung 3 jedes ungeraden Unterdaten-Blocks enthält den Packungsgegenstand 3, während die Packung 3 jedes geraden Unterdaten-Blocks den Packungsgegenstand 4 enthält.
- Bestimmte der Untercode-Daten, die in den Packungen gespeichert sind, sind kumulative Gesamtergebnisse von Ereignissen (wie z. B. die Anzahl von Gruppen), die seit einem BOR genommen wurden. Dies wird möglich durch Speichern historischer Daten bezüglich solcher Ereignisse in den Packungen des Systemprotokollbereichs an dem Ende jeder Bandverwendungssitzung, und durch anschließendes Wiedergewinnen dieser Daten an dem Beginn einer neuen Sitzung.
- Die Unter-ID-Bytes und die Packungen des Unterdaten-Abschnitts werden in Unterdaten-Blöcke durch einen Unterdaten-Block-Multiplexer/Demultiplexer 66 angeordnet.
- Der abschließende Schritt des Schreibverfahrens besteht darin, die Spurensignale, die die Hauptdatenblöcke und die Unterdatenblöcke enthalten, zu erzeugen. Um unerwünschte Schlußübergänge zu vermeiden, wird jedes 8-Bit-Byte des Hauptdaten- und des Unterdatenblocks in ein geeignetes 10- Bit-Muster transformiert, wobei die restlichen Bits als "Kanalbits" bezeichnet werden. Diese Transformation wird von der 8-10-Transformationseinheit 67, die in Fig. 3 gezeigt ist, ausgeführt.
- Nach dieser Transformation wird ein vorbestimmtes 10-Kanal- Bit-Syncfeld an das vordere Ende jedes transformierten Hauptdaten- und Unterdatenblocks hinzugefügt, wodurch 360- Kanal-Bit-Blöcke gebildet werden, die als "aufgezeichnete Hauptdatenblöcke" bzw. "aufgezeichnete Unterdatenblöcke" bezeichnet werden. Diese Operation wird von dem Multiplexer/Demultiplexer 68 ausgeführt.
- Schließlich werden die aufgezeichneten Datenblöcke mit anderen Typen von 360-Kanal-Bit-aufgezeichneten-Blöcken (nachfolgend beschrieben) in einem Multiplexer/Demultiplexer 69 kombiniert, um Spurensignale zu bilden, die abwechselnd zu dem Kopf HA und dem Kopf HB der Kopftrommel 70 des Decks 54 zugeführt werden sollen.
- Die Sequenz der aufgezeichneten Blöcken bestimmt natürlich das Format jeder Spur (dieses Format wurde bereits allgemein bezugnehmend auf Fig. 1 beschrieben). Eine detailliertere Beschreibung der Zusammensetzung jeder Spur bezüglich der aufgezeichneten Blöcke ist in Fig. 11 gezeigt. Wie es zu sehen ist, enthält jede Spur 196 aufgezeichnete Blöcke, wobei die 128 aufgezeichneten Hauptdatenblöcke einem Array einer G4-Untergruppe entsprechen, die zwischen zwei Gruppen von acht aufgezeichneten Unterdatenblöcken aufgezeichnet sind. Zusätzlich zu diesen aufgezeichneten Hauptdatenblöcken und aufgezeichneten Unterdatenblöcken sind die folgenden Typen von aufgezeichneten Blöcken vorhanden:
- - Randblock, Präambelblöcke und Postambelblöcke (wiederholtes Kanalbitmuster "111")
- - Abstandshalterblöcke (wiederholtes Kanalbitmuster "100")
- - ATF-Blöcke (vorbestimmte Frequenzmuster).
- Das Schraubenlinien-Abtast-Banddeck 54 ist von herkömmlicher Form und gehorcht den DAT-Spezifikationen und wird daher nicht detaillierter beschrieben. Die Steuerung auf niedriger Ebene des Decks wird durch eine Servoeinheit 71 bewirkt, die selbst durch die Systemsteuerung 55 gesteuert wird. Die Einheit 71 zeigt ferner eine Bedingung Beginn des Mediums (BOM) und eine Bedingung Ende des Mediums (EOM) der Steuerung 55 an. In der Servoeinheit 71 enthaltend befindet sich eine Schaltungsanordnung zur automatischen Spurenverfolgung (ATF), die während des Schreibens die ATF-Blöcke erzeugt und während des Lesens die ATF-Signale verwendet, die von den Köpfen HA, HB geliefert werden, um eine korrekte Ausrichtung der Köpfe mit den auf dem Band aufgezeichneten Spuren sicherzustellen.
- Das Deck 54 hat ferner einen Pulsgenerator 72, der angeordnet ist, um einmal pro Umdrehung der Kopftrommel 70 ein Pulsausgangssignal zu erzeugen. Dieses Pulsausgangssignal umfaßt ein Rahmenzeitsignal FTS (FTS = Frame Timing Signal), da jede Trommelumdrehung dem Lesen/Schreiben eines Rahmens entspricht. Das FTS-Signal ist phasengesteuert, um den Beginn jedes Rahmens zu markieren, und es wird verwendet, um den Betrieb der DAT-Elektronikanordnung und die Übertragung von Daten zu/von der Gruppierungseinheit 56 mit dem Betrieb des Decks 54 zu synchronisieren.
- Es sei darauf hingewiesen, daß die vorangegangene Beschreibung des Laufwerks von Fig. 3 hauptsächlich die Funktionskomponenten des Laufwerks und nicht irgendeine spezielle Implementation dieser Funktionalität umfaßt hat. In der Tat können die Verfahren des Gruppenprozessors 52 und der DAT- Elektronikanordnung 53 durch jeweilige Steuermikroprozessoren mit einer zugeordneten anwendungsspezifischen Schaltungsanordnung implementiert werden.
- Die Funktion des Laufwerks während des Lesens von Daten ist im wesentlichen eine Umkehrung der oben beschriebenen Schreiboperation, wobei jedoch bestimmte Hilfdaten, die während des Schreibens angeordnet wurden, verwendet werden, um den Leseprozeß zu unterstützen (beispielsweise Fehlerkorrekturcodes, Blockadressen, Logikrahmen-IDs).
- Ferner wird das Laufwerk neben dem Schreiben mit normaler Geschwindigkeit und dem Lesen mit normaler Geschwindigkeit allgemein mit einer Schnellsuchfähigkeit versehen sein, die das Lesen der Unterbereiche gelegentlicher Rahmen, um eine erwünschte Aufzeichnung zu orten, umfaßt.
- Nach einer Beschreibung der allgemeinen Funktionalität, die ein DDS-Laufwerk liefert, wird nachfolgend eine bevorzugte Implementation des Rahmenprozessors bezugnehmend auf das Blockdiagramm von Fig. 12 betrachtet.
- Der Rahmenprozessor von Fig. 12 arbeitet autonom, um einen Rahmen von Daten von dem Gruppenprozessor 52 zu der Kopftrommel 70 oder umgekehrt zu übertragen, sobald derselbe von der Systemsteuerung 55 angewiesen worden ist, die Übertragung zu bewirken. Bei dem vorliegenden Ausführungsbeispiel besteht die Systemsteuerung aus einem Mikroprozessor, wie es in Fig. 12 gezeigt ist. Beim Ausführen der Übertragung eines Rahmens von Daten ist der Rahmenprozessor von Fig. 12 angeordnet, um Daten mit dem Gruppenspeicher 57 des Gruppenprozessors 52 (Fig. 3) über einen Byte-breiten Bus 79 und auf einer Spur-um-Spur-Basis auszutauschen. Dies steht im Gegensatz zu bisher bekannten Anordnungen, bei denen Daten auf eine Bit-serielle Art und Weise und auf einer Rahmen-um-Rahmen-Basis zu und von dem Rahmenprozessor übertragen werden.
- Ferner soll der Rahmenprozessor von Fig. 12 eine Lesen- nach-Schreiben-Überprüfung von Daten, die auf das Band geschrieben sind, ausführen, und er soll dementsprechend mit einer Kopftrommel 70 arbeiten, die mit vier Köpfen versehen ist, nämlich mit zwei Schreibköpfen HAW und HBW und mit zwei Leseköpfen HAR und HBR. Jeder Kopf tastet das Band ein Viertel einer Umdrehung der Kopftrommel 70 lang ab, wobei dem Schreibkopf HAW der entsprechende Lesekopf HAR folgt, und wobei dem Schreibkopf HBW der Lesekopf HBR folgt, wenn die Kopftrommel in der beabsichtigten Richtung gedreht wird, die durch einen Pfeil in Fig. 12 angedeutet ist. Die Geometrie der Kopftrommel ist so, daß eine Spur, die durch einen Schreibkopf HAW/HBW geschrieben worden ist, eineinviertel Umdrehungen später von dem entsprechenden Lesekopf HAR/HBR gelesen wird.
- Der Rahmenprozessor von Fig. 12 umfaßt einen Spuren-RAM- Speicher 80, der allgemein dem Verschachtelungsspeicher 61 von Fig. 3 entspricht. Der Spuren-RAM 80 umfaßt einen Speicherbereich 81, der in fünf Spurenschlitze 51 - 55 geteilt ist, wobei jeder zum Halten von Daten vorgesehen ist, die einer jeweiligen Spur zugeordnet sind, und einen Speicherbereich 82, der als Notizblockbereich für den Mikroprozessor 55 dient. Zusätzlich umfaßt der Spuren-RAM 80 eine Adressensteuereinheit 83.
- Der Spuren-RAM 80 dient dazu, Daten und Untercodes zu halten, während diese in und aus dem vorher beschriebenen Spurenformat durch den Rahmenprozessor gemäß Fig. 12 verarbeitet werden. Ein Zugriff auf den Spuren-RAM 80 wird von einer DAM-Steuereinheit 84 kontrolliert, die zu einer beliebigen Zeit einen Zugriff einem der fünf Kanäle übergibt, wobei der Kanal 1 dem Mikroprozessor 55 zugeordnet ist, während die Kanäle 2 bis 5 jeweiligen Funktionsblöcken des Rahmenprozessors zugeordnet sind.
- Die Hauptfunktionsblöcke des Rahmenprozessors von Fig. 12 sind die Folgenden:
- Zuerst ist ein Übertragungsfunktionsblock, der Übertragungsschaltungen 85 und eine Übertragungssteuereinheit 86 umfaßt, wirksam, um Daten mit dem Gruppenprozessor 52 über den byte-breiten Bus 79 auszutauschen, wobei ein interner Bus 87 des Übertragungsfunktionsblocks mit dem Kanal 2 der DMA-Steuereinheit 84 verbunden ist.
- Ein zweiter Funktionsblock des Rahmenprozessors von Fig. 12 führt eine Fehlerverarbeitungsfunktion durch und wird durch EPU-Schaltungen 88 und eine EPU-Steuereinheit 89 gebildet, wobei ein Datenbus 90 dieses Funktionsblocks mit dem Kanal 3 der DMA-Steuereinheit 84 verbunden ist.
- Ein dritter Funktionsblock des Rahmenprozessors von Fig. 12 wird durch eine Schreibkette gebildet, die Schreibschaltungen 91 und eine Schreibsteuerung 92 aufweist, wobei ein Schreibdatenbus 93 dieser Schreibkette mit dem Kanal 4 der DMA-Steuereinheit 84 verbunden ist.
- Ein vierter Funktionsblock des Rahmenprozessors von Fig. 12 bildet eine Lesekette, die durch Leseschaltungen 94 und eine Lesesteuerung 95 gebildet wird, wobei ein Lesebus 96 dieses Funktionsblocks mit dem Kanal 5 der DMA-Steuereinheit 84 verbunden ist.
- Ein fünfter Funktionsblock des Rahmenprozessors von Fig. 12 bildet einen Lesennach-Schreiben- (RAW-; RAW = Read After Write) Funktionsblock, der RAW-Schaltungen 97 und eine RAW-Steuerung 98 aufweist. Dieser Funktionsblock ist nicht direkt mit einem DMA-Kanal der Einheit 84 verbunden, ist jedoch, wie es nachfolgend detaillierter beschrieben ist, angeordnet, um auf Daten in dem Spuren-RAM 80 über die Schreibkette zuzugreifen, und um über die Lesenkette Daten in den Spuren-RAM zu schreiben.
- Die Steuereinheiten 86, 89, 92, 95 und 98 der Funktionsblöcke des Rahmenprozessors von Fig. 12 sind sequenziert und werden von einem Koordinator 101 gesteuert, der bei dem vorliegenden Ausführungsbeispiel durch eine Steuerzustandsmaschine gebildet wird. Der Koordinator 101 und die Steuereinheiten bilden zusammen einen Steuerblock 102. Der Koordinator 101 wird selbst wiederum von dem Mikroprozessor 55 gesteuert, wobei der letztere den ersteren anweist, um einen Rahmen an Daten entweder zu oder von dem Gruppenprozessor zu übertragen. Somit ist zu sehen, daß eine Hierarchie der Steuerung vorhanden ist, wobei der Mikroprozessor 55 an oberster Ebene sitzt, der Koordinator 101 auf der nächsten Ebene sitzt, und die Steuereinheiten 86, 89, 92, 95 und 98 auf der niedrigsten Ebene sitzen.
- Allgemein gesagt wird der Mikroprozessor 55 während einer Datenspeicherung den Koordinator 101 anweisen, um die Übertragung der einem Rahmen entsprechenden Datenmenge von dem Gruppenprozessor 52 zu der Kopftrommel 70 zu überwachen. Der Koordinator 101 koordiniert die verschiedenen Funktionsblöcke des Prozessors von Fig. 12 über ihre jeweiligen Steuereinheiten, damit sie die geeigneten Aufgaben ausführen, um die angeforderte Übertragung zu bewirken. Diese Aufgaben umfassen die Übertragung von Daten von dem Gruppenprozessor 52 auf einer Spur-um-Spur-Basis (durch den Übertragungsfunktionsblock 85, 86 bewirkt), das Erzeugen von Fehlerkorrekturcodes für die jeder Spur entsprechende Datenmenge (durch den EPU-Funktionsblock 88, 89 bewirkt), und das Formatieren der jeder Spur entsprechenden Datenmenge zusammen mit Untercodes, Block-Anfangsblöcken und anderen Signalen, um ein Spurensignal zu bilden, das zu der Kopftrommel 70 geleitet wird (von der Schreibkette 91, 92 bewirkt). Wo ein Lesen- nach-Schreiben-Überprüfen von auf das Band geschriebenen Daten ausgeführt wird, überwacht der Koordinator 101 ferner das Zurücklesen von Daten von dem Band durch die Leseschaltung 94, von wo sie zu den RAW-Schaltungen 97 zum Vergleich mit den ursprünglichen Daten, die in dem Spuren-RAM 80 gehalten werden, woraufhin sie über die Schreibkette zu den RAW-Schaltungen 97 geleitet werden. Die Ergebnisse der RAW- Überprüfung werden durch die Leseschaltungen 94 zu dem Spuren-RAM 80 geliefert.
- Da der Mikroprozessor 55 einen Zugriff auf den Spuren-RAM 80 hat, kann derselbe die G3-Untergruppen-Anfangsblockinformationen (siehe Fig. 7) und die verschiedenen Untercodes in den Spuren-RAM schreiben, die mit den Hauptdaten angeordnet werden müssen, um auf ein Band zu schreiben. Ferner wird der Spuren-RAM 80 ebenfalls verwendet, um die Resultate der RAW-Überprüfung von dem RAW-Funktionsblock zu dem Mikroprozessor 55 zu kommunizieren.
- Während der Datenwiedergewinnung weist der Prozessor 55 den Koordinator 101 an, um die Übertragung eines Rahmens an Daten von dem Band zu dem Gruppenprozessor 52 zu überwachen. Der Koordinator 101 führt diesen Befehl durch Steuern der verschiedenen Funktionsblöcke des Rahmenprozessors über ihre Steuereinheiten aus, wie z. B., um zwei Spuren von Daten über die Lesekette 94, 95 in den Spuren-RAM 80 zu lesen, um eine Fehlerüberprüfung und Fehlerkorrektur durch Lesen von Daten aus dem Spuren-RAM 80 über den EPU-Funktionsblock 88, 89, und durch Zurückbringen der Daten zu dem Spuren-RAM 80, und schließlich um Daten von dem Spuren-RAM 80 zu dem Gruppenprozessor 52 über den Übertragungsfunktionsblock 85, 86 zu übertragen.
- Während einer Datenspeicherung/Wiedergewinnung werden Daten, die sich auf eine spezielle Spur beziehen, in dem gleichen zugeordneten Spurenschlitz über der gesamten Verarbeitung dieser Spur von dem Rahmenprozessor gespeichert. Die Zuordnung von Spuren zu Spurenschlitzen wird durch die Adressensteuereinheit 83 auf einer zyklischen Basis bewirkt. Die Identität des Spurenschlitzes, auf den jeder Funktionsblock während jeder Rahmenviertelperiode Q zugreifen kann, wird durch die Steuereinheit 83 abhängig von dem gegenwärtigen Zustand der Koordinatorzustandsmaschine 101 und von der Identität des zugreifenden Funktionsblocks gesteuert, so daß die Spurdaten von den Funktionsblöcken korrekt sequentiell verarbeitet werden. Innerhalb jedes Spurenschlitzes wird die adressierte Speicherposition durch eine Schlitzversatzadresse gesetzt, die von dem zugreifenden Funktionsblock geliefert wird. Es sollte angemerkt werden, daß bei einer bevorzugten Implementation des Rahmenprozessors Haupt- und Unterzonendaten in jedem Spurenschlitz in einer Reihenfolge gespeichert sind, die die Übertragung zu und von dem EPU-Funktionsblock 88, 89 während einer C1-Verarbeitung beschleunigt, wobei dies durch Ordnen der Bytes erreicht wird, um Wortübertragungen (d. h. zwei benachbarte Bytes) und nicht Einzelbyteübertragungen zwischen dem Spuren-RAM und dem EPU-Funktionsblock zu erleichtern. Diese Reihenfolge unterscheidet sich von der Reihenfolge der Datenbytes in den Blöcken der Haupt- und der Unterzone einer Spur aufgrund der Tatsache, daß eine Verschachtelungstiefe von 2 in dem DDS-Format für eine CI-ECC-Verarbeitung spezifiziert ist. Beispielhaft stellt Fig. 13 die Anordnung von Datenbytes in einem Spurenschlitz für Daten dar, die für die ersten zwei Blöcke der Hauptzone einer Spur relevant sind, wobei die Indexnotation, die für die Datenbytes Da,b verwendet wird, darin besteht, daß "a" die Blockzahl innerhalb der Hauptzone darstellt, und "b" die Bytezahl innerhalb des Datenbereichs des gegenwärtigen Blocks darstellt. Wie es zu sehen ist, sind die Datenbytes D0,0 und D0,2; D0,4 und D0,6; D0,8 und D0,10 usw. alle an benachbarten Positionen gespeichert, wodurch durch Wortübertragungen von dem EPU-Funktionsblock 88, 89 während einer C1-ECC-Verarbeitung zugegriffen werden kann, wo diese Bytepaare aufeinanderfolgend verarbeitet werden. Es sei darauf hingewiesen, daß der Übertragungsfunktionsblock und der Mikroprozessor 55 wirksam sind, um Haupt- und Unterdaten zu/von dem Spuren-RAM gemäß der Reihenfolge von Fig. 13 zu lesen/schreiben, und daß die Lesen- und Schreibenkette die Reihenfolge der Datenbytes beim Übertragen von Daten zwischen dem Spuren-RAM und dem Band entsprechend einstellen.
- In ihrer Anwendung auf das dargestellte Bandspeicherungsgerät betrifft die vorliegende Erfindung die Übertragung von Daten zwischen dem Gruppenprozessor 52 und dem Rahmenprozessor von Fig. 12, wobei diese Übertragung bezugnehmend auf den Rahmenprozessor von Fig. 12 durch den Übertragungsfunktionsblock 85, 86 bewirkt wird. Dementsprechend wird keine detaillierte Beschreibung der anderen Funktionsblöcke des Rahmenprozessors und auch keine detaillierte Beschreibung der Koordination ihrer Operation gegeben, da diese Dinge nicht den Betrieb des Übertragungsfunktionsblocks beeinflussen. Eine weitere Beschreibung dieser anderen Funktionsblöcke ist jedoch in einer ebenfalls anhängigen Europäischen Patentanmeldung, die am gleichen Tag wie die vorliegende Anmeldung eingereicht wurde und den Titel "Datenspeicherungsvorrichtung" trägt, zu finden.
- Bevor eine detailliertere Betrachtung für den Übertragungsfunktionsblock 85, 86 gegeben wird, wird zunächst auf die wichtigeren Zeitsignale eingegangen, die verwendet werden, um den Betrieb des Rahmenprozessors von Fig. 12 zu steuern, und die dem Koordinator 101 und der Steuereinheit 86 des Übertragungsfunktionsblocks entsprechend verfügbar gemacht werden.
- Insbesondere wird eine erste Gruppe von Zeitsignalen aus einer Drehung der Kopftrommel abgeleitet und verwendet, um den Rahmenprozessor mit der Kopftrommel zu synchronisieren, wobei diese Signale in Fig. 14 gezeigt sind. Fig. 14(a) zeigt das Rahmenzeitsignal FTS, das über den Sensor 72 (Fig. 3) aus der Kopftrommel erzeugt wird, wobei dieses Signal ein Zeitpuls ist, der einmal pro Umdrehung des Kopfes in der Nähe des Beginns des Abtastens des Bandes durch den Schreibkopf HAW erzeugt wird. Die Periode des Rahmenzeitsignals wird als tF bezeichnet, wobei dies die Periode ist, die für einen Rahmen (zwei Spuren) benötigt wird, damit derselbe auf das Band geschrieben bzw. von dem Band gelesen wird. Die Zeitdifferenz zwischen dem Auftreten von FTS, und wenn der Kopf HAW zuerst startet, um das Band zu messen, wird während einer Kalibrierung des Laufwerks gemessen und dann durch die Zeitschaltungsanordnung (nicht gezeigt) verwendet, um ein Kopftauschsignal SWP (SWP = Head Swap Signal) (siehe Fig. 14b) aus dem Signal FTS zu erzeugen, wobei das Signal SWP einen hohen Zustand aufweist, wenn der Schreiben- und der Lesenkopf HAW und HAR über dem Band sind, und wobei dieses Signal einen niedrigen Zustand aufweist, wenn der Schreiben- und der Lesenkopf HBW und HBR über dem Band sind. Die Periode des Signals SWP ist ebenfalls tF. Wie es gezeigt ist, ist jeder Kopf über dem Band ein Viertel der Rahmenperiode tF. Diese Viertelperiode tF/4, die jeder Kopf über dem Band ist, wird nachfolgend allgemein als eine Dauer Q bezeichnet.
- Die Zeitsteuerung wird ebenfalls verwendet, um ein Signal QCLK zu erzeugen, das in Fig. 14(c) gezeigt ist. Das Signal QCLK ist ein Taktsignal mit einer Periode Q, die verwendet wird, um den Koordinator 101 auf die Kopftrommel 70 zu synchronisieren, wobei jedes Taktsignal QCLK bewirkt, daß die Koordinatorzustandsmaschine ihren gegenwärtigen Zustand ändert.
- Zusätzlich zu den vorangegangenen Zeitsignalen, die dazu dienen, die Rahmenprozessorelektronikanordnung mit der Kopftrommel zu koordinieren, existiert natürlich ein internes Systemtaktsignal SYSCLK, das allgemein die Verarbeitungsgeschwindigkeit der Rahmenprozessorfunktionselemente bestimmt. (Verarbeitungsgeschwindigkeiten in der Lesen- und der Schreibenkette werden jedoch durch jeweilige Schreiben- und Lesentakte bestimmt, wobei der Schreibentakt ein interner Takt ist, der auf die beabsichtigte Datenrate der Schreibenkette eingestellt ist, und wobei der Lesentakt ein phasengeregelter Takt ist, der auf das Signal, das von dem Band gelesen wird, eingerastet ist.)
- Drei weitere wichtige Steuersignale, die in dem Rahmenprozessor von Fig. 12 verwendet werden, sind ein Azimuthsignal AZ, ein Viertelperioden-Zustandssignal QPS und ein Einleitungsverarbeitungssignal IS, welche alle von dem Koordinator 101 erzeugt werden (AZ = Azimuth Signal; QPS = Quarter Period State Signal; IS = Initiate Processing Signal). Das Azimuthsignal AZ ist ein binäres Signal, das während der ersten zwei Viertelperioden in einen Zustand gesetzt wird, die darauf folgen, daß der Mikroprozessor 55 den Koordinator 101 angewiesen hat, die Verarbeitung eines Rahmens zu überwachen. Dasselbe ist ein binäres Signal, das in seinen anderen Zustand eingestellt wird, und zwar während der folgenden zwei Viertelperioden. Die Signifikanz jedes Zustands des Azimuthsignals wird von dem Empfangsfunktionsblock abhängen und kann anzeigen, daß eine positive Azimuthspur von einem Block zu verarbeiten ist, während gleichzeitig einem anderen Block angezeigt wird, daß eine negative Azimuthspur zu verarbeiten ist. Das Azimuthsignal AZ dient somit einer Synchronisierungsrolle.
- Das Signal QPS führt eine Synchronisierungs- und Sequenzierungsrolle durch, derart, daß es verwendet wird, um den gegenwärtigen Zustand der Zustandsmaschine den Funktionsblöcken des Rahmenprozessors zu zeigen. Das Signal wird von dem Koordinator an dem Beginn jeder Viertelperiode erzeugt, wenn die Koordinatorzustandsmaschine in jeden neuen Zustand eintritt, und dasselbe wird jedem der Funktionsblöcke übermittelt, die in diesem Koordinatorzustand aktiv sein sollen, um die Verarbeitung durch diesen Block einzuleiten. Es sei darauf hingewiesen, daß die Funktionalität der Signale QPS und IS auf andere Art und Weise bereitgestellt werden könnte, beispielsweise durch ein jeweiliges Einleitungssignal für jeden Betriebstyp, der von jedem Block zu bewirken ist, wobei dieses Signal aktiviert wird, wenn der Koordinator in den entsprechenden Zustand eintritt.
- Die Übertragung der einer Spur entsprechenden Daten zu/von dem Gruppenprozessor ist angeordnet, um über eine Periode gleich 2Q (d. h. die Hälfte der Rahmenperiode tF) bewirkt zu werden, wobei dies natürlich der Rate entspricht, mit der Spuren zu/von dem Band geschrieben oder gelesen werden.
- Wenn der Mikroprozessor 55 den Rahmenprozessor anweist, um einen Rahmen an Daten zu/von dem Gruppenspeicher zu übertragen, leitet derselbe dem Koordinator 101 die Identität der relevanten Gruppe innerhalb des Gruppenspeichers 57 zu, wobei diese Informationen dem Übertragungsfunktionsblock 85, 86 verfügbar gemacht werden, um einen Zugriff des letzteren auf die entsprechende Gruppe in dem Gruppenspeicher 57 des Gruppenprozessors 52 zu ermöglichen. Natürlich muß der Übertragungsfunktionsblock 85, 86 die Logikrahmennummer des verarbeiteten Rahmens kennen, um geeignet auf den Gruppenspeicher 57 zugreifen zu können. Die Logikrahmennummer wird dem Übertragungsfunktionsblock derart verfügbar gemacht, daß sie in die entsprechende Byteposition des relevanten Spuren- RAM-Schlitzes geschrieben wird (die Logikrahmennummer LF-ID bildet einen Teil des Anfangsblocks jeder G3-Untergruppe). Während einer Datenspeicherung ist es der Mikroprozessor 55, der die LF-ID in den relevanten Spurenschlitz schreibt, während während der Datenwiedergewinnung die LF-ID von der Lesenkette, während sie von dem Band gelesen wird, in den relevanten Spurenschlitz geschrieben wird. Der Übertragungsfunktionsblock 85, 86 greift auf die LF-ID an dem Beginn jedes Zyklusses eines Betriebs durch einen DMA-Zugriff auf die entsprechende Position des relevanten Spurenschlitzes zu.
- Wie es bereits gezeigt wurde, werden Daten zu und von dem Gruppenspeicher des Gruppenprozessors über einen Bytebreiten Bus 79 auf einer Spur-um-Spur-Basis übertragen, d. h. die Übertragung von Daten bezüglich einer Spur wird vollendet, bevor die Übertragung von Daten bezüglich der nächsten Spur eingeleitet wird. Diese Anordnung steht im Gegensatz zu existierenden DAT-basierten Speicherungsgeräten, bei denen eine Übertragung auf einer Rahmen-um-Rahmen-Basis bewirkt wird. Gemäß der DAT-Formatspezifikation werden seriell zugeführte Daten zwischen den zwei Spuren verschachtelt, wobei dieselben einen Rahmen bilden, um die Auswirkung von Bandunzulänglichkeiten zu minimieren, wobei Datenfehler in einer Spur in vielen Fällen auf der Basis der Daten in der anderen Spur desselben Rahmens wiederherstellbar sind. Fig. 15 zeigt die Zuordnung von Datenbytes einer G1-Untergruppe (mit D0, D1 aufsteigend sequentiell numeriert) zwischen positiven und negativen Azimuthspuren. Ferner sind Daten nicht nur über einen gesamten Rahmen verschachtelt, sondern es wird auch die Randomisierungsfunktion, die von dem Randomisiererblock 58 in Fig. 3 ausgeführt wird, auf einer Rahmen-um-Rahmen-Basis ausgeführt, wobei der DDS-Formatstandard die Randomisierungsfunktion bezüglich eines Linearrückkopplungsschieberegisters spezifiziert, das an dem Beginn jedes Rahmens neu initialisiert wird (d. h. bevor jede G1-Untergruppe zu/von dem Gruppenspeicher 52 übertragen wird), wobei das Ausgangssignal dieses Registers mit Daten, die sequentiell zu/von dem Gruppenspeicher übertragen werden, kombiniert wird.
- Aufgrund dieser Randomisierung und Verschachtelung von Daten über einen Rahmen ist es deutlich einfacher, Daten auf einer Rahmen-um-Rahmen-Basis zu übertragen, da dies einfach einen strikten sequentiellen Zugriff auf Daten, die in dem Gruppenspeicher 57 gehalten werden, erfordert, wobei das Randomisieren und Verschachteln gemäß den für DDS spezifizierten Standardfunktionen ausgeführt wird. Eine Übertragung von Daten auf einer Rahmen-um-Rahmen-Basis hat jedoch die Auswirkung des Erhöhens der Laufzeit des Prozessors, was wiederum in größeren Speicheranforderungen für den Rahmenprozessor resultiert.
- Aus diesem Grund ist der Übertragungsfunktionsblock 85, 86 des Rahmenprozessors von Fig. 12 angeordnet, um Daten auf einer Spur-um-Spur-Basis zu/von dem Gruppenspeicher 57 des Gruppenprozessors zu übertragen, wobei, um dies zu erreichen, eine geeignete Schaltungsanordnung vorgesehen sein muß, um auf den Gruppenspeicher und den Spuren-RAM 80 auf eine geeignete sequentielle Art und Weise zuzugreifen, wie es für eine Spur-um-Spur-Übertragung erforderlich ist, wobei ferner spezielle Maßnahmen erforderlich sind, um sicherzustellen, daß eine Randomisierung (und eine De-Randomisierung) der übertragenen Daten gemäß dem DDS-Formatstandard bewirkt wird.
- Es sollte darauf hingewiesen werden, daß, obwohl die Funktionalität des Randomisierers 58 in Fig. 3 als Teil des Gruppenprozessors 52 gezeigt ist, bei einer praktischen Implementation es zweckmäßiger ist, die Randomisiererfunktion in den Übertragungsblock des Rahmenprozessors aufzunehmen. (Es darf ferner darauf hingewiesen werden, daß die Funktionalität des Multiplexers/Demultiplexers 59 von Fig. 3, die dort als Teil des Gruppenprozessors gezeigt ist, ebenfalls effektiverweise in den Rahmenprozessor von Fig. 12 aufgenommen werden kann, derart, daß der Anfangsblock jeder G3-Untergruppe und die Auffüllbytes direkt in den geeigneten Schlitz des Spuren-RAM 80 auf Veranlassung des Mikroprozessors 55 geschrieben werden, und nicht über den Bus 79 von dem Gruppenprozessor mit den Benutzerdaten übertragen werden.)
- Der Übertragungsfunktionsblock 85, 86 ist in Fig. 16 gezeigt und umfaßt eine Byte-breite Exklusiv-ODER-Schaltung, die die Übertragungsschaltungen 85 bildet, die zwischen dem bytebreiten Bus 79, der mit dem Gruppenspeicher 57 verbunden ist, und dem internen Bus 87 angeordnet ist, der dem Kanal 2 der DMA-Steuerung zugeordnet ist. Diese Byte-breite Exklusiv-ODER-Schaltung 85 führt eine Exklusiv-ODER-Operation auf jedes Bit eines Datenbytes aus, das derselben auf dem Bus 79/87 geliefert wird, mit dem entsprechenden Bit eines Randomisiererbytes aus, das von einem Randomisierergenerator 125 zugeführt wird, wobei das resultierende modifizierte Bit auf dem anderen der Busse 87/79 ausgegeben wird. Insbesondere laufen Daten während des Datenschreibens von dem Bus 79, werden in der Schaltung 85 randomisiert und werden dann auf dem Bus 87 ausgegeben, während während eines Datenlesens ein randomisiertes Byte durch den Bus 87 zugeführt wird, durch die Schaltung 85 de-randomisiert wird und auf den Bus 79 ausgegeben wird. Die Exklusiv-ODER-Schaltung 85 ist die einzige Schaltung des Übertragungsblocks, die eine Modifikation der Daten selbst durchführt, wobei alle anderen Schaltungen des Übertragungsblocks mit einer Adressensteuerung oder einer Erzeugung der Randomisiererbytes befaßt sind.
- Die Übertragungssteuerschaltung 86 umfaßt drei Hauptsteuerfunktionselemente, nämlich einen Spurenbyteadressengenerator 124 zum Erzeugen der geeigneten Adresse für den nächsten Zugriff auf den Gruppenspeicher 57 des Gruppenprozessors 52, einen Schlitzverschachtelungsadressengenerator 126 zum Erzeugen der Adresse innerhalb eines Schlitzes (des Schlitzversatzes) für den nächsten Zugriff auf den Spuren-RAM 80 und den Randomisierergenerator 125 zum Zuführen von Randomi siererbytes zu der Exklusiv-ODER-Schaltung 85. Diese Generatoren 124, 125 und 126 werden von einer Zustandsmaschine 123 gesteuert, die eine zugeordnete Übertragungstaktschaltung 122 hat. Wenn die Zustandsmaschine durch das Signal IS von dem Koordinator 101 an dem Beginn einer Viertelperiode, wenn Daten zu übertragen sind, ausgelöst wird, initialisiert sie zuerst einen DMA-Zugriff in den Spuren-RAM, um die Logikrahmennummer LF-ID der zu übertragenden Spur wiederzugewinnen. Anschließend überwacht die Zustandsmaschine 123 die Übertragung dieser Datenbytes von einer G1-Untergruppe, die der speziellen verarbeiteten Spur zugeordnet ist, wobei diese Übertragung in der Richtung zwischen dem Gruppenspeicher 57 und dem Spuren-RAM 80 bewirkt wird, die durch das Signal QPS von dem Koordinator 101 angezeigt wird (oder durch ein verwandtes Signal, das anzeigt, ob Daten gespeichert oder wiedergewonnen werden). Die Basisaufgabe der Zustandsmaschine 123 während einer Byteübertragung besteht darin, die verschiedenen Handschlagprozeduren zu koordinieren, die notwendig sind, um ein Datenbyte zu/von dem Gruppenspeicher 57 und zu/von dem Spuren-RAM 80 (über einen DMA-Kanal 2) zu koordinieren, wobei die Zustandsmaschine zyklisch über notwendige Handschlagsteueroperationen einmal für jedes übertragene Byte läuft. Wenn jede Byteübertragung vollendet ist, bewirkt die Zustandsmaschine 123, daß die Übertragungstaktschaltung 122 einen Basiszähler 139 inkrementiert, um eine Abrechnung der Anzahl von Bytes zu halten, die in der gegenwärtigen Übertragungsviertelperiode übertragen werden, und um ferner einen Übertragungstaktpuls XFERCLK auszugeben, und um für jede zweite Byteübertragung einen Taktpuls XFERCLK/2 auszugeben. Diese Taktpulse werden beim Steuern der Zeitgebung der Generatoren 124, 125 und 126 verwendet, wie es nachfolgend detaillierter beschrieben wird.
- Die Zustandsmaschine 123 führt das zyklische Durchschreiten ihrer Zustände weiter, wobei die Übertragung jedes Bytes in der geeigneten Richtung zwischen dem Gruppenspeicher 57 und dem Spuren-RAM 80 gesteuert wird, bis der Basiszähler 139 anzeigt, daß 2.878 Bytes übertragen worden sind (d. h. die Gesamtanzahl von Bytes von den Bytes D0 - D5.755, die einer Spur zugeordnet sind), woraufhin die Byteübertragungsoperation eingestellt wird, und ein Signal RST ausgegeben wird, und um die Generatoren 124, 125 und 126 zurückzusetzen, und um daraufhin in einen Leerlaufzustand zurückzukehren, um auf das nächste Auslösen von dem Koordinator 101 zu warten.
- Der detaillierte Betrieb der Zustandsmaschine 123 bezüglich der Handschlagsteuerung zum Bewirken einer Byteübertragung zu/von dem Gruppenspeicher 57 und dem Spuren-RAM 80 wird nachfolgend nicht detaillierter hierin beschrieben, da geeignete Implementationen für Fachleute offensichtlich sein werden.
- Für jedes übertragene Byte erzeugt der Spurenbytegenerator 124 die geeignete Adresse innerhalb eines Rahmens zum Zugreifen auf den Gruppenspeicher 57 (die Gruppen- und die Rahmenidentität werden von dem Koordinator 101 und dem Spuren-RAM abhängig von Informationen, die von dem Mikroprozessor 55 zugeführt werden, hinzugefügt), wobei der Randomisierergenerator 125 das geeignete Byte zum Randomisieren/De- Randomisieren des übertragenen Datenbytes erzeugt, und wobei der Schlitzverschachtelungsadressengenerator 126 den geeigneten Schlitzversatz zum Zugreifen auf den Spuren-RAM 80 erzeugt. Jeder dieser Generatoren 124, 125 und 126 wird nachfolgend detaillierter beschrieben.
- Zunächst sei der Spurenbyteadressengenerator 124 betrachtet, welcher erforderlich ist, um eine Sequenz von Adressen zum Zugreifen auf den Gruppenspeicher 57 entsprechend der Sequenz von Byteadressen für die positive Azimuthspur oder die negative Azimuthspur innerhalb einer G1-Untergruppe entsprechen, wobei diese Reihenfolge die ist, die in Fig. 15 dargestellt ist. Die Schaltungsanordnung von Fig. 15 stellt eine besonders einfache Art und Weise zum Erzeugen der geeigneten Adressensequenzen dar. Ein Binärzähler 127 wird durch das Übertragungstaktsignal XFERCLK getaktet, wobei dieser Zähler von dem Signal RST an dem Ende jeder Spurenübertragungsope ration zurückgesetzt wird. Der Zähler 127 ist ein 12-Bit- Zähler mit Bitausgängen b0 bis b11, wobei der Ausgang b0 das niederstwertige Bit aufweist. Die linke Spalte der Tabelle von Fig. 18 zeigt die Ausgangsbitwerte für b0 bis b5, wenn der Zähler von seinem Rücksetzzustand 16 Taktpulse getaktet wird, wobei das Dezimaläquivalent des binären Ausgangssignals in der benachbarten Spalte der Tabelle von Fig. 18 gezeigt ist. Um die geeigneten Sequenzen von Spurenbyteadressen zu erzeugen, ist es nur notwendig, das Ausgangssignal von b1 zu verwenden, um die Gewichtungen 2¹ und 2² der Spurenbyteadresse zu liefern, und um die Signifikanz von jedem der Ausgänge b2 bis b11 um 1 zu erhöhen. Beim Liefern des Bits 2¹ der Spurenbyteadresse wird das Ausgangssignal b1 entweder direkt genommen oder (durch einen Invertierer 128) invertiert, und zwar abhängig von dem Azimuth der betroffenen Spur, wobei die geeignete Form von b1 von dem Multiplexer 129 durch das Azimuthsignal AZ ausgewählt wird, das von dem Koordinator 101 zugeführt wird, wobei die invertierte Form von b1 für positive Azimuthspuren ausgewählt wird.
- Fig. 18 zeigt die Auswirkung dieser Modifikation von Bitgewichtungen auf die resultierende Spurenbyteadresse für sowohl eine positive als auch eine negative Azimuthspur. Es ist zu sehen, daß die resultierenden Adressen auf eine Art und Weise fortschreiten, die der entspricht, die von Fig. 15 benötigt wird, um die für jede Spur geeigneten Datenbytes auszuwählen. Die Spurenbyteadresse wird dann mit der Gruppen- und der Rahmenidentität kombiniert, die von dem Koordinator 101 zugeführt werden, und anschließend verwendet, um auf den Gruppenspeicher 57 zuzugreifen.
- Der Verschachtelungsadressengenerator 126 ist in Fig. 19 gezeigt, wobei der Zweck dieses Adressengenerators darin besteht, sicherzustellen, daß Spurendatenbytes in den geeigneten Spurenschlitz eingefügt bzw. aus dem geeigneten Spurenschlitz extrahiert werden, und zwar in einer Reihenfolge, die ein Verschachteln/De-Verschachteln gemäß dem DAT-Standard bewirkt. Zusätzlich berücksichtigt der Ver schachtelungsadressengenerator 126 beim Erzeugen von Verschachtelungsadressen die Bytereihenfolgenanforderungen, die oben bezugnehmend auf Fig. 13 erörtert wurden, um Wortübertragungen zwischen dem EPU-Funktionsblock und dem Spuren-RAM während einer C1-ECC-Verarbeitung zu erleichtern. Die Verschachtelungsformel des DAT-Standards basiert auf den Werten 52 und 28, weshalb die Schaltung von Fig. 19 mit einem Segmentzähler 130 zum Zählen von 0 bis 51 und mit einem Versatzzähler 131 zum Zählen von 0 bis 27 versehen ist. Beide Zähler werden von dem Rücksetzsignal RST, das von der Zustandsmaschine 123 von Fig. 6 erzeugt wird, auf Null rückgesetzt. Allgemein ausgedrückt wird der Segmentzähler 130 durch ein Signal "SEGCLK" mit der Hälfte der Rate des Taktsignals XFERCLK getaktet, während der Versatzzähler 131 jedesmal inkrementiert wird, wenn der Segmentzähler 130 seinen Zählerwert 51 erreicht. Die Erzeugung der Taktsignale für die Zähler 130 und 131 wird durch Logikgatter 133, 135, 136, 138 und ein D-Typ-Flip-Flop 134 gesteuert, wobei das letztere durch das Signal XFERCLK getaktet wird.
- Die Verschachtelungsadresse wird aus den Ausgangssignalen "in[0]" bis "in[5]" des Segmentzählers 130 nach einer Transformation durch die Logikschaltungsanordnung 132, um Signale "out[0]" bis "out[5]", die Ausgangssignale "off[0]" bis "off[4]" des Versatzzählers 131 und das Ausgangssignal des D-Typ-Flip-Flops 134 nach einer Inversion durch einen Invertierer 137 zu bilden, erzeugt. Die Reihenfolge der Signale, die die Verschachtelungsadresse bilden, ist in Fig. 19 gezeigt. Die Logikschaltungsanordnung 132 wird ebenfalls verwendet, um zu bestimmen, ob die Ausgangssignale des Segmentzählers 130 einen Zählerwert 51 anzeigen (dieser Zustand ist in Fig. 19 durch "in[5 : 0] = 51" dargestellt).
- Die Transformation des Signals "in" in die Signale "out", die durch die Logikschaltungsanordnung 132 bewirkt wird, findet gemäß den folgenden logischen Ausdrücken statt:
- out[0] = in[1];
- out[1] = (in[0] UND NICHT in[2] UND in[3] UND in[4] UND NICHT in[5]) ODER (NICHT in[0] UND in[2] UND in[4] UND NICHT in[5]) ODER (NICHT in[0] UND in[2] UND NICHT in[4]) ODER (in[0] UND NICHT in[2] UND in[3] UND NICHT in[4]) ODER (in[0] UND NICHT in[2] UND NICHT in[3]);
- out[2] = (in[2] UND in[3] UND NICHT in[5]) ODER (in[2] UND in[3] UND NICHT in[4]) ODER (NICHT in[0] UND in[3] UND in[4] UND NICHT in[5]) ODER (NICHT in[0] UND in[3] UND NICHT in[4]) ODER in[0] UND NICHT in[2] UND NICHT in[3]);
- out[3] = (NICHT in[0] UND in[3] UND in[4] UND NICHT in[5]) ODER (NICHT in[0] UND in[2] UND in[4] UND NICHT in[5]) ODER (NICHT in[2] UND NICHT in[3] UND in[4]) ODER (in[0] UND NICHT in[2] UND in[3] UND NICHT in(4]) ODER (in[0] UND in[2] UND NICHT in[4]);
- out[4] = (NICHT in[2] UND NICHT in[3] UND in[5]) ODER (in[0] UND NICHT in[2] UND in[3] UND in[4] UND NICHT in[5]) ODER (in[0] UND in[2] UND in[4] UND NICHT in[5]) ODER (NICHT in[4] UND in[5]);
- out[5] = in[0].
- Der Randomisierergenerator 125 ist in Fig. 20 dargestellt. Der Randomisierergenerator, der hier gezeigt ist, ist im DDS-Formatstandard und umfaßt ein 15-Bit-Linearrückkopplungsschieberegister, wobei das Ausgangsbit und das fortschreitende Bit miteinander mittels einer Exklusiv-ODER-Verknüpfung verknüpft werden und an das Eingangsende des Schieberegisters zurückgespeist werden. Das Schieberegister hat als Kern oder Saat eine 15-Bit-Zeichenkette, von der alle Bits Null sind, mit Ausnahme des niederstwertigen Bits. Bei dem Randomisierergenerator von Fig. 20 wird das Linearrückkopplungsschieberegister durch ein 15-Bit-Register 140 ersetzt (die 15 Registerzellenausgänge desselben sind mit x&sub0; bis x&sub1;&sub4; bezeichnet), das angeordnet ist, um bei einem Rücksetzen durch die gleiche Sequenz wie sie beim oben erwähnten Linearrückkopplungsschieberegister erwähnt wurde, initialisiert zu werden. Das Register 140 wird durch das Taktsignal XFERCLK/2 getaktet, wobei jedes Takten des Registers angeordnet ist, um eine Parallelübertragung einer neuen 15-Bit- Einstellung zu bewirken, die dem vorherigen 15-Bit-Wert entspricht, der in dem Register 140 gehalten ist, und zwar um 32 verschoben (d. h. wenn die frühere Einstellung in einem Linearrückkopplungsschieberegister gemäß dem DDS-Format- Standard gehalten wurde, entspricht die neue Einstellung dem Wert, der in dem Register nach 32 Verschiebungen gehalten werden würde. Die Bitwerte, die aus einer 32-Bit-Verschiebung resultieren, werden durch die Logikschaltungsanordnungs-Schieben-32-Logik 145 bestimmt, wobei die neuen Bitwerte x&sub3;&sub2; bis x&sub4;&sub6; über einen Multiplexer 148 zurück zu dem Eingang des Registers 140 gespeist werden (der Multiplexer 148 wird ebenfalls mit der Anfangsbitsequenz gespeist, wobei die letztere nur bei einer Rücksetzoperation ausgewählt wird). Der neue Wert des Registers 140 nach einer 32-Bit- Verschiebung wird durch die Logikschaltungsanordnung 145 gemäß der Exklusiv-ODER-Gleichungen, die innerhalb dieses Blocks in Fig. 20 gezeigt sind, bestimmt. Wie es zu sehen ist, baut diese Bestimmung allein auf den existierenden Werten auf, die in dem Register 140 gehalten werden.
- In jedem Zustand des Registers 140 ist der Generator von Fig. 20 angeordnet, um vier Randomisiererbytes RB1, RB2, RB3 und RB4 zu liefern, die jeweils den unteren acht Bits x&sub0; bis x&sub7; entsprechen, die um 0, 8, 16 und 24 verschoben sind (wobei eine Verschiebung die Änderung betrifft, die durch das Takten des Linearrückkopplungsschieberegisters, auf das in dem DDS-Formatstandard Bezug genommen wird, erzeugt wird).
- Das Byte RB1 wird durch eine Schieben-0-Logik 141 bewirkt, die die innerhalb der Grenzen dieses Elements in Fig. 20 gezeigte Transformation bewirkt. In der Tat ist es einfach notwendig, die Ausgänge x&sub0; bis x&sub7; von dem Register 140 zu nehmen und dieselben als Byte RB1 einfach weiterzuleiten.
- Das Byte RB2 wird durch eine Schieben-8-Logik 142 gemäß der innerhalb dieses Elements in Fig. 20 gezeigten Transformation erzeugt. Die ersten sieben Bits x&sub8; bis x&sub1;&sub4; des Bytes RB2 sind einfach die entsprechenden Ausgangsbits des Registers 140. Das letzte Bit, d. h. das Bit x&sub1;&sub5;, des Bytes RB2 wird durch eine Exklusiv-ODER-Operation auf die Bits x&sub0; und x&sub1; gebildet.
- Das Byte RB3 wird durch eine Schieben-16-Logik 143 gemäß der innerhalb dieses Elements in Fig. 20 gezeigten Transformation gebildet, wobei die acht Bits x&sub1;&sub6; bis x&sub2;&sub3; von den Bits x&sub1; bis x&sub9; abgeleitet werden, die von dem Register 140 ausgegeben werden.
- Das Byte RB4 wird durch eine Schieben-24-Logik 144 gemäß der innerhalb dieses Elements in Fig. 20 gezeigten Transformation erzeugt, wobei die acht Bits x&sub2;&sub4; bis x&sub3;&sub1; des Bytes RB4 von den Bits x&sub0; bis x&sub3; und x&sub9; bis x&sub1;&sub4; erzeugt werden, die von dem Register 140 ausgegeben werden.
- Die Bytes RB1 bis RB4 werden dann in einen Multiplexer 146 gespeist, wo ein geeignetes dieser Bytes abhängig von dem Ausgangssignal einer Multiplexersteuerung 147 gesteuert wird, wobei das ausgewählte Byte zu der Byte-breiten Exklusiv-ODER-Schaltung 85 gespeist wird.
- Die Multiplexersteuerschaltung 147 wählt das entsprechende Byte RB2 bis RB4 auf der Basis des Azimuths der verarbeiteten Spur aus und ebenfalls auf der Basis der Position des in der Sequenz von Bytes innerhalb einer Spur verarbeiteten Bytes. Bezugnehmend auf Fig. 15 ist zu sehen, daß die ersten zwei Datenbytes von einer G1-Untergruppe, die für eine positive Azimuthspur benötigt werden, D2 und D3 sind, eine positive Azimuthspur benötigt werden, D2 und D3 sind, wobei diese Bytes das Dritte und Vierte in der Sequenz einer G1-Untergruppe sind. Um dementsprechend das Ausgangssignal des Randomisierergenerators von Fig. 20 an die Datenbytes D2 und D3 anzupassen, ist es notwendig, die Randomisiererbytes RB3 und RB4 zu nehmen. Anschließend müssen die nächsten zwei Datenbytes D4 und D5 an die Randomisiererbytes entsprechend 32 bzw. 40 Verschiebungen angepaßt werden, was natürlich erfordert, daß in den nächsten Zustand des Registers 140 eingetreten wird, indem der Basisinhalt des Registers von dem Anfangsinhalt um 32 verschoben wird. Wenn das Register 140 in seinem neuen Zustand ist, sind die Randomisiererbytes, die an die Datenbytes D4 und D5 angepaßt sind, die Bytes RB1 und RB2. Anschließend werden für die positive Azimuthspur die Datenbytes D10 und D11 verarbeitet, wobei zu diesem Zeitpunkt, um an die Randomisiererbytes angepaßt zu sein, der Zustand des Registers 140 wieder um weitere 32 Bits vorgeschoben werden muß, und wobei die Bytes RB3 und RB4 ausgewählt werden. Aus der vorangegangenen Betrachtung ist zu sehen, daß die Sequenz der Byteauswahl, die erforderlich ist, folgendermaßen lautet:
- Positivazimuthspur - RB3, RB4, RB1, RB2, RB3, RB4, RB1, RB2 ...
- Negativazimuthspur - RB1, RB2, RB3, RB4, RB1, RB2, RB3, RB4 ...
- Dabei wird der Inhalt des Registers 140 alle zwei Byte um 32 verschoben. Die vorangegangene Auswahlsequenz kann ohne weiteres durch einen 0-3-Zähler implementiert werden, der durch den Übertragungstakt XFERCLK getaktet wird, wobei das Azimuthsignal AZ verwendet wird, um einen Zwei-Byte-Versatz für Positivazimuthspuren einzuführen.
- Obwohl die Einrichtung zum Übertragen von Daten zwischen dem Gruppenprozessor 52 und dem Rahmenprozessor 53 derart be schrieben worden ist, daß sie als Teil des Rahmenprozessors selbst (der Übertragungsfunktionsblock 85, 86) beschrieben ist, sei darauf hingewiesen, daß dies nur ein Implementationsdetail ist und durchgeführt wird, um eine Koordination der Übertragungseinrichtung mit dem Betrieb des Rahmenprozessors zu erleichtern, indem die Steuerung der Übertragungseinrichtung eng mit den anderen Funktionsblöcken des Rahmenprozessors integriert wird. Es würde natürlich möglich sein, die Übertragungseinrichtung als getrennte Einheit zu implementieren, die von entweder dem Gruppenprozessor oder dem Rahmenprozessor getrennt ist, und für den Austausch geeigneter Koordinationssignale mit beiden Prozessoren zu sorgen. Eine Aufnahme der Übertragungseinrichtung in den Gruppenprozessor würde ebenfalls möglich sein, dies würde jedoch im allgemeinen weniger Vorteile als eine Aufnahme in den Rahmenprozessor bringen, einfach aufgrund der Tatsache, daß die Rahmenprozessorzeitgebung wichtiger ist, da sie mit der Drehung der Kopftrommel verknüpft ist. Prinzipiell ist natürlich die Übertragungsfunktion, die durch die Übertragungseinrichtung bewirkt wird, von sowohl der Datenorganisation auf hoher Ebene, die durch den Gruppenprozessor bewirkt wird, als auch der Spurenformatierung auf niedriger Ebene, die durch den Rahmenprozessor bewirkt wird, getrennt.
Claims (20)
1. Datenspeichervorrichtung zum Speichern und
Wiedergewinnen von Daten auf einem Band unter Verwendung einer
Schraubenlinien-Abtast-Schreiben/Lesen-Technik, wobei
Daten in Spuren eines vorbestimmten Formats
gespeichert sind, die über das Band geschrieben sind, wobei
die Vorrichtung folgende Merkmale aufweist:
- ein Bandlaufwerk (54) mit einer Drehkopftrommel
(70), an der Köpfe (HA, HB) zum Schreiben/Lesen von
Daten auf das/von dem Band (10) in Spuren
angebracht sind;
- eine Datenorganisiereinrichtung (52), die (i)
während einer Datenspeicherung wirksam ist, um zu
speichernde Daten zu empfangen, und um dieselben
zumindest fiktiv auf der Basis von Rahmeneinheiten
(G1), von denen jede einer Datenmenge von zwei
Spuren entspricht, zu organisieren, und die (11)
während einer Datenwiedergewinnung wirksam ist, um
die Daten aus Rahmeneinheiten (G1) für eine Ausgabe
aus der Vorrichtung auseinanderzunehmen, wobei die
Datenorganisiereinrichtung (52) einen
Pufferspeicher (57) zum Halten der Rahmeneinheiten (G1)
aufweist;
- eine Formatiereinrichtung (53), die (i) während
einer Datenspeicherung wirksam ist, um Daten, die von
dem Pufferspeicher (57) übertragen werden, zu
empfangen, und um dieselben in das Spurenformat zu
verarbeiten, bevor sie durch die Köpfe (HA, HB) in
Spuren auf das Band geschrieben werden, wobei
Bestandteildatenelemente von jeder Rahmeneinheit (G1)
über zwei Spuren miteinander verschachtelt sind,
und die (11) während einer Datenwiedergewinnung
wirksam ist, um Daten, die durch die Köpfe von dem
Band (10) gelesen werden, zu empfangen, und um
dieselben aus dem Spurenformat zu verarbeiten, damit
sie für eine Übertragung zu dem Pufferspeicher (57)
bereit sind, wobei die Daten in dem Pufferspeicher
(57) in demselben in einer nicht-verschachtelten
Form gehalten werden;
- eine Übertragungseinrichtung (85, 86) zum
Übertragen von Daten von dem Pufferspeicher (57) zu der
Formatiereinrichtung (53) während einer
Datenspeicherung und von der Formatiereinrichtung (53)
zu dem Pufferspeicher (57) während einer
Datenwiedergewinnung; und
- eine Systemsteuerung (55) zum Steuern und
Koordinieren des Betriebs der Vorrichtung;
dadurch gekennzeichnet, daß die
Übertragungseinrichtung (85, 86) eine Einrichtung aufweist, die während
einer Datenspeicherung wirksam ist, um alle
Bestandteildatenelemente, die für eine Spur, wie sie auf dem
Band aufgezeichnet ist, relevant sind, für eine
Übertragung von dem Pufferspeicher (57) auszuwählen, und
um dann alle Bestandteildatenelemente, die für eine
nächste Spur relevant sind, für eine Übertragung von
dem Pufferspeicher (57) auszuwählen, wodurch Daten
zwischen dem Pufferspeicher (57) und der
Formatiereinrichtung (53) auf einer Spur-Um-Spur-Basis übertragen
werden, wobei die Übertragung von Daten bezüglich
einer Spur vollendet wird, bevor die Übertragung von
Daten bezüglich der nächsten Spur begonnen wird.
2. Datenspeichervorrichtung gemäß Anspruch 1, bei der die
Formatiereinrichtung (53) eine
Spurenspeichereinrichtung (80) zum Speichern von Daten, die durch die
Formatiereinrichtung in/aus dem Spurenformat verarbeitet
werden, aufweist, wobei die Übertragungseinrichtung
(85, 86) (i) während einer Datenspeicherung wirksam
ist, um auf nicht-verschachtelte Daten zuzugreifen,
die in dem Pufferspeicher (57) der
Datenorganisiereinrichtung (52) gehalten werden, und um diese Daten zu
der Spurenspeichereinrichtung (80) für eine
Speicherung in derselben in verschachtelter Form zu
übertragen, und die (11) während einer Datenwiedergewinnung
wirksam ist, um auf Daten, die in der
Spurenspeichereinrichtung (80) in verschachtelter Form gehalten
werden, zuzugreifen, und um dieselben zu dem
Pufferspeicher (57) für eine Speicherung in demselben in nicht-
verschachtelter Form zu übertragen.
3. Datenspeichervorrichtung gemäß Anspruch 2, bei der die
Übertragungseinrichtung (85, 86) einen ersten und
einen zweiten Adressengenerator (124, 126) zum Erzeugen
von jeweiligen Adressen zum Zugriff auf den
Pufferspeicher (57) und auf die Spurenspeichereinrichtung
(80) während einer Übertragung der Daten, die für die
eine Spur relevant sind, aufweist, wobei der erste und
der zweite Adressengenerator (124, 126) derart wirksam
sind, daß die Bestandteildatenelemente, die für die
eine Spur relevant sind, von der
Übertragungseinrichtung (85, 86) in der Reihenfolge ihres Auftretens in
der entsprechenden Rahmeneinheit (G1) sequentiell
übertragen werden, wenn sie in nicht-verschachtelter
Form betrachtet werden.
4. Datenspeichervorrichtung gemäß einem der
vorhergehenden Ansprüche, bei der die Bestandteildatenelemente
Acht-Bit-Bytes sind, die von der
Übertragungseinrichtung (85, 86) zwischen der Datenorganisiereinrichtung
(52) und der Formatiereinrichtung (53) auf eine
Bitparallele, Byte-serielle Art und Weise übertragen
werden.
5. Datenspeichervorrichtung gemäß einem der
vorhergehen
den Ansprüche, bei der die Bestandteildatenelemente
gemäß dem DDS-Format, wie es in dem ISO/IEC-Standard
10777: 1991 spezifiziert ist, verschachtelt sind.
6. Datenspeichervorrichtung gemäß Anspruch 5 in
Rückbeziehung auf Anspruch 3, bei der der erste
Adressengenerator (124) einen Binärzähler (127) mit einer
Mehrzahl von Zählerausgaben (b&sub0; bis b&sub1;&sub1;) mit ansteigenden
Binärgewichtungen und eine
Neukonfigurationseinrichtung (128, 129) zum Neukonfigurieren der
Zählerausgaben (b&sub0; bis b&sub1;&sub1;) in Generatorausgänge aufweist, die
die Adresse, die von der ersten Generatoreinrichtung
erzeugt wird, in binärer Form liefern, wobei die
Neukonfigurationseinrichtung (128, 129) wirksam ist, um
- die Zählerausgabe mit der Gewichtung 2&sup0; auf den
entsprechend gewichteten Generatorausgang
durchzulassen,
- die Zählerausgabe mit einer Gewichtung von 2¹ auf
die Generatorausgänge mit einer Gewichtung von 2¹
und 2² neu zu konfigurieren, wobei der
Generatorausgang mit einer Gewichtung 2¹ abhängig davon
invertiert oder nicht-invertiert wird, welche Spur
jedes Paars von Spuren, die der Rahmeneinheit (G1)
zugeordnet sind, von der Übertragungseinrichtung
(85, 86) übertragen wird, und
- alle anderen Zählerausgaben auf Generatorausgänge
mit einer um Eins größeren Gewichtung neu zu
konfigurieren.
7. Datenspeichervorrichtung gemäß einem der
vorhergehenden Ansprüche, bei der während einer Datenspeicherung
die Bestandteildatenelemente einem
Zufallszahlenumrechnungsverfahren durch eine Kombination mit
jeweiligen Zufallszahlenumrechnungselementen unterworfen
werden, wobei die Zufallszahlenumrechnungselemente
zusammen eine vorbestimmte Sequenz bilden, die
entsprechend der Reihenfolge der Bestandteildatenelemente
über einer nicht-verschachtelten Rahmeneinheit
fortschreitend sind, wobei die Zufallszahlenumrechnung
während einer Datenwiedergewinnung durch ein
komplementäres Zufallszahlenrückrechnungsverfahren umgekehrt
wird; wobei die Übertragungseinrichtung (85, 86) eine
Zufallszahlenumrechnungseinrichtung (125, 85)
aufweist, die wirksam ist, um das
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsverfahren während der
Übertragung von Daten, die für eine Spur relevant
sind, zu bewirken, wobei die
Zufallszahlenumrechnungseinrichtung (125, 85) beim Liefern geeigneter
Zufallszahlenumrechnungselemente von der vorbestimmten
Sequenz die Verteilung der Bestandteildatenelemente der
einen Spur über der entsprechenden Rahmeneinheit (G1)
berücksichtigt.
8. Datenspeichervorrichtung gemäß Anspruch 7, bei der die
Zufallszahlenumrechnungseinrichtung (125, 85) wirksam
ist, um eine Byte-breite
Zufallszahlenumrechnung/Zufallszahlenrückrechnung von Daten zu bewirken, und die
folgende Merkmale aufweist:
- ein Unterseguenzregister (14) zum Halten einer
Untersequenz der vorbestimmten Sequenz, das eine
Mehrzahl von Ausgängen (x&sub0; - x&sub1;&sub4;) aufweist, wobei
die Zustände derselben durch die Untersequenz
bestimmt sind und dazu dienen, zumindest ein
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbyte
(RB1 - RB4) zu definieren,
- eine erste Kombinationslogik (85), die
angeschlossen ist, um sowohl ein Byte von Daten, die von der
Übertragungseinrichtung (85, 86) übertragen werden,
als auch das
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbyte (RB1 - RB4) zu empfangen, und
um die Bytes zu kombinieren, um ein
zufallszahlen
umgerechnetes/zufallszahlenrückgerechnetes
Datenbyte abzuleiten, und
- eine zweite Kombinationslogik (145), die auf die
Zustände der Registerausgangssignale (x&sub0; - x&sub1;&sub4;)
anspricht, um eine neue Untersequenz zum Laden in
das Register (140) zu erzeugen, wobei die neue
Untersequenz der vorherigen Untersequenz entspricht,
die um eine Menge verschoben ist, die dem zumindest
einen Byte entspricht.
9. Datenspeichervorrichtung gemäß Anspruch 8, bei der die
Zufallszahlenumrechnungseinrichtung (125, 85) ferner
folgende Merkmale aufweist:
- eine Byteausgangseinrichtung (141-144), die auf
die Zustände der Registerausgangssignale (x&sub0; - x&sub1;&sub4;)
anspricht, um eine Mehrzahl der
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes (RB1 -
RB4) zu liefern, die in der vorbestimmten Sequenz
sequentiell angeordnet sind, wobei die
Byteausgangseinrichtung (141-144) eine Kombinationslogik
zum Vorhersagen von Bits der
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes aufweist, die
nicht durch die Registerausgangssignale dargestellt
sind; und
- eine Byteauswahleinrichtung (146, 147) zum
Auswählen des
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes aus der Mehrzahl von
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes, das
von der ersten Kombinationslogik (85) mit dem Byte
von Daten zu kombinieren ist, wobei die
Byteauswahleinrichtung (146, 147) ihre Auswahl zumindest
abhängig davon durchführt, welche Spur jedes Paars
von Spuren, die einer Rahmeneinheit zugeordnet
sind, von der Übertragungseinrichtung übertragen
wird.
10. Datenspeichervorrichtung gemäß Anspruch 9, bei der die
Byteausgangseinrichtung (141-144) angeordnet ist, um
vier
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes (RB1 - RB4) zu liefern, wobei die neue
Untersequenz, die von der zweiten Kombinationslogik
(145) erzeugt wird, der früheren Untersequenz
entspricht, die um 32 Bits innerhalb der vorbestimmten
Sequenz verschoben ist.
11. Datenspeichervorrichtung gemäß einem der Ansprüche 8,
9 oder 10, bei der die vorbestimmte Sequenz dem DDS-
Format entspricht, wie es in dem ISO/IEC-Standard
10777: 1991 spezifiziert ist, wobei die Untersequenz
15 Bit lang ist.
12. Ein Verfahren zum Speichern und Wiedergewinnen von
Daten auf einem Band unter Verwendung einer
Schraubenlinien-Abtast-Schreiben/Lesen-Technik, wobei Daten in
Spuren eines vorbestimmten Formats gespeichert sind,
die über das Band geschrieben sind, wobei das
Verfahren folgende Schritte aufweist:
Schreiben/Lesen von Daten auf das/von dem Band in
Spuren;
während einer Datenspeicherung, Empfangen von zu
speichernden Daten und, zumindest fiktiv, Organisieren
derselben auf der Basis von Rahmeneinheiten (G1), von
denen jede einer Menge von Daten entspricht, die in
zwei der Spuren aufgenommen werden können, und während
einer Datenwiedergewinnung, Auseinandernehmen der
Daten aus Rahmeneinheiten (G1) für eine Ausgabe, wobei
die Rahmeneinheiten (G1) in einem Pufferspeicher (57)
gehalten werden;
während einer Datenspeicherung, Empfangen von Daten,
die von dem Pufferspeicher (57) übertragen werden, und
Verarbeiten derselben in das Spurenformat, bevor die
Daten in Spuren auf ein Band geschrieben werden, wobei
Bestandteildatenelemente von jeder Rahmeneinheit (G1)
miteinander über zwei Spuren verschachtelt sind, und
während einer Datenwiedergewinnung, Empfangen von
Daten, die von dem Band gelesen werden, und Verarbeiten
derselben aus dem Spurenformat, damit sie für eine
Übertragung zu dem Pufferspeicher (57) bereit sind,
wobei die Daten in dem Pufferspeicher (57) in
demselben in nicht-verschachtelter Form gehalten werden; und
gekennzeichnet durch die Schritte des Auswählens und
Übertragens, während einer Datenspeicherung, von allen
Bestandteildatenelementen, die für eine Spur relevant
sind, wie sie auf einem Band aufgezeichnet ist, und
dann des Auswählens und Übertragens aller
Bestandteildatenelemente, die für eine nächste Spur relevant
sind, von dem Pufferspeicher (57), wodurch Daten von
dem Pufferspeicher (57) auf einer Spur-Um-Spur-Basis
übertragen werden, wobei eine Übertragung von Daten
bezüglich einer Spur vollendet wird, bevor die
Übertragung von Daten bezüglich der nächsten Spur begonnen
wird.
13. Das Verfahren gemäß Anspruch 12, bei dem Daten, die
in/aus dem Spurenformat verarbeitet werden, in einer
Spurenspeichereinrichtung (80) gespeichert werden, das
während einer Datenspeicherung die Schritte des
Zugreifens auf nicht-verschachtelte Daten, die in dem
Pufferspeicher (57) gehalten werden, und des
Übertragens dieser Daten zu der Spurenspeichereinrichtung
(80) für eine Speicherung in derselben in
verschachtelter Form aufweist, und das während einer
Datenwiedergewinnung die Schritte des Zugreifens auf Daten,
die in der Spurenspeichereinrichtung (80) in
verschachtelter Form gehalten werden, und des Übertragens
derselben zu dem Pufferspeicher (57) für eine
Speicherung in demselben in nicht-verschachtelter Form
auf
weist.
14. Das Verfahren gemäß Anspruch 13, das den Schritt des
Erzeugens von Adressen jeweils zum Zugreifen auf den
Pufferspeicher (57) und die Spurenspeichereinrichtung
(80) während einer Übertragung von Daten, die für eine
Spur relevant sind, aufweist, wobei die
Bestandteildatenelemente, die für die eine Spur relevant sind, in
der Reihenfolge ihres Auftretens in der entsprechenden
Rahmeneinheit (G1) sequentiell übertragen werden, wenn
sie in nicht-verschachtelter Form betrachtet werden.
15. Das Verfahren gemäß Anspruch 12, bei dem die
Bestandteildatenelemente Acht-Bit-Bytes sind, die auf eine
Bitparallele, Byte-serielle Art und Weise übertragen
werden.
16. Das Verfahren gemäß Anspruch 14, bei dem die
Bestandteildatenelemente gemäß dem DDS-Format, wie es in dem
ISO/IEC-Standard 10777: 1991 spezifiziert ist,
verschachtelt sind, und bei dem Adressen zum Zugreifen
auf den Pufferspeicher (57) durch einen Binärzähler
(127) mit einer Mehrzahl von Zählerausgaben
ansteigender Binärgewichtungen erzeugt werden, wobei die
Zählerausgaben in die Adressen in binärer Zifferform
neu konfiguriert werden, wobei das Neukonfigurieren
folgende Schritte aufweist:
- Durchlassen der Zählerausgabe mit einer Gewichtung
2&sup0; als die entsprechend gewichtete
Adressenbinärziffer;
- Neukonfigurieren der Zählerausgabe mit einer
Gewichtung 2¹ als die gewichteten
Adressenbinärziffern 2¹ und 2², wobei die gewichtete
Adressenbinärziffer 2¹ abhängig davon invertiert oder
nicht-invertiert wird, welche Spur jedes Paars von Spuren,
die einer Rahmeneinheit (G1) zugeordnet sind,
über
tragen wird; und
- Neukonfigurieren aller anderen Zählerausgaben als
Adressenbinärziffern mit einer um Eins größeren
Gewichtung.
17. Das Verfahren gemäß Anspruch 12, bei dem während einer
Datenspeicherung die Bestandteildatenelemente einem
Zufallszahlenumrechnungsverfahren durch Kombination
mit jeweiligen Zufallszahlenumrechnungselementen
unterzogen werden, wobei die
Zufallszahlenumrechnungselemente zusammen eine vorbestimmte Sequenz bilden,
die entsprechend der Reihenfolge der
Bestandteildatenelemente über einer nicht-verschachtelten
Rahmeneinheit (G1) fortschreitend sind, wobei die
Zufallszahlenumrechnung während einer Datenwiedergewinnung
durch ein komplementäres
Zufallszahlenrückrechnungsverfahren umgekehrt wird, wobei das
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsverfahren während
der Übertragung von Daten, die für eine Spur relevant
sind, bewirkt wird, und wobei beim Liefern geeigneter
Zufallszahlenumrechnungselemente aus der vorbestimmten
Sequenz die Verteilung der Bestandteildatenelemente
der einen Spur über der entsprechenden Rahmeneinheit
(G1) berücksichtigt wird.
18. Das Verfahren gemäß Anspruch 17, bei dem eine
Zufallszahlenumrechnung/Zufallszahlenrückrechnung von Daten
auf eine Byte-breite Art und Weise bewirkt wird, und
das folgende Schritte aufweist:
- Speichern einer Untersequenz der vorbestimmten
Sequenz, wobei die Untersequenz zumindest ein
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbyte definiert;
- Kombinieren eines Bytes von Daten, die übertragen
werden, und eines
Zufallszahlenumrechnungs/Zufalls
zahlenrückrechnungsbytes (RB1
- RB4), um ein
zufallszahlenumgerechnetes/zufallszahlenrückgerechnetes Datenbyte abzuleiten; und
- Erzeugen einer neuen Untersequenz, die der früheren
Untersequenz entspricht, die um eine Menge
verschoben ist, die dem zumindest einen Byte entspricht.
19. Das Verfahren gemäß Anspruch 18, bei dem die
Zufallszahlenumrechnung/Zufallszahlenrückrechnung ferner
folgende Schritte aufweist:
- Liefern einer Mehrzahl der
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes (RB1 - RB4),
die sequentiell in der vorbestimmten Sequenz
angeordnet sind; und
- Auswählen aus der Mehrzahl von
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes (RB1 - RB4)
des
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes (RB1 - RB4), das mit dem Byte von Daten
zu kombinieren ist, wobei die Auswahl zumindest
abhängig davon bewirkt wird, welche Spur jedes Paars
von Spuren, die der Rahmeneinheit (G1) zugeordnet
sind, übertragen wird.
20. Das Verfahren gemäß Anspruch 19, bei dem vier
Zufallszahlenumrechnungs/Zufallszahlenrückrechnungsbytes (RB1
- RB4) geliefert werden, wobei die neue Untersequenz,
die der vorherigen Untersequenz entspricht, innerhalb
der vorbestimmten Sequenz um 32 Bit verschoben ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP92302015A EP0559975B1 (de) | 1992-03-10 | 1992-03-10 | Datenspeichergerät |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69229440D1 DE69229440D1 (de) | 1999-07-22 |
DE69229440T2 true DE69229440T2 (de) | 1999-10-07 |
Family
ID=8211292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69229440T Expired - Fee Related DE69229440T2 (de) | 1992-03-10 | 1992-03-10 | Datenspeichergerät |
Country Status (4)
Country | Link |
---|---|
US (1) | US5367410A (de) |
EP (1) | EP0559975B1 (de) |
JP (2) | JPH0620396A (de) |
DE (1) | DE69229440T2 (de) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5369641A (en) * | 1991-11-12 | 1994-11-29 | Storage Technology Corporation | Method and apparatus for detecting and correcting errors in data on magnetic tape media |
US5561608A (en) * | 1992-11-18 | 1996-10-01 | Kabushiki Kaisha Toshiba | Multisystem adaptable type signal processing and recording/reproducing apparatus |
US5557770A (en) * | 1993-03-24 | 1996-09-17 | International Business Machines Corporation | Disk storage apparatus and method for converting random writes to sequential writes while retaining physical clustering on disk |
KR950009386B1 (ko) * | 1993-04-21 | 1995-08-21 | 삼성전자주식회사 | 어드레스 생성회로 |
EP0637025A3 (de) * | 1993-07-26 | 1997-03-19 | Matsushita Electric Ind Co Ltd | Gerät und Verfahren zur Aufnahme und Wiedergabe von digitalen Daten. |
GB9324918D0 (en) * | 1993-12-04 | 1994-01-26 | Hewlett Packard Ltd | High-density data recording |
US5671439A (en) * | 1995-01-10 | 1997-09-23 | Micron Electronics, Inc. | Multi-drive virtual mass storage device and method of operating same |
US5933431A (en) * | 1996-08-15 | 1999-08-03 | Paradyne Corporation | Frame-based modulus interleaver |
US5889796A (en) * | 1996-10-17 | 1999-03-30 | Maxtor Corporation | Method of insuring data integrity with a data randomizer |
US5968109A (en) * | 1996-10-25 | 1999-10-19 | Navigation Technologies Corporation | System and method for use and storage of geographic data on physical media |
US7197500B1 (en) | 1996-10-25 | 2007-03-27 | Navteq North America, Llc | System and method for use and storage of geographic data on physical media |
US6112261A (en) * | 1998-05-04 | 2000-08-29 | Hewlett-Packard Company | Data transferring system reading and temporarily storing a record until a length of the record is different from a defined record length parameter value |
JP2000215645A (ja) * | 1999-01-18 | 2000-08-04 | Sony Corp | 情報記録装置および方法 |
US6766103B2 (en) * | 2000-02-19 | 2004-07-20 | Lg Electronics Inc. | Method for recording and reproducing representative audio data to/from a rewritable recording medium |
GB2418770B (en) * | 2004-10-02 | 2009-04-22 | Hewlett Packard Development Co | Data storage apparatus and method |
US7573664B2 (en) * | 2004-12-03 | 2009-08-11 | International Business Machines Corporation | Integrated multiple channel data reliability testing for a magnetic tape drive |
GB2422476B (en) * | 2005-01-21 | 2007-05-23 | Hewlett Packard Development Co | Data structure data storage apparatus and method |
US8576505B2 (en) * | 2005-10-28 | 2013-11-05 | Hewlett-Packard Development Company, L.P. | Tape drive apparatus and method |
US8494674B2 (en) | 2011-08-24 | 2013-07-23 | International Business Machines Corporation | Fast-access self-repairing tape library using mobile robots |
US9263082B2 (en) | 2013-01-30 | 2016-02-16 | International Business Machines Corporation | High density hybrid storage system |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4078152A (en) * | 1976-04-26 | 1978-03-07 | International Business Machines Corporation | Block-cipher cryptographic system with chaining |
US4562577A (en) * | 1983-09-19 | 1985-12-31 | Storage Technology Partners Ii | Shared encoder/decoder circuits for use with error correction codes of an optical disk system |
US4584616A (en) * | 1984-07-12 | 1986-04-22 | Tallgrass Technologies Corporation | Format for storing data on magnetic media |
JPS6220180A (ja) * | 1985-07-19 | 1987-01-28 | Hitachi Ltd | Pcm信号記録再生装置 |
US4672613A (en) * | 1985-11-01 | 1987-06-09 | Cipher Data Products, Inc. | System for transferring digital data between a host device and a recording medium |
US4899232A (en) * | 1987-04-07 | 1990-02-06 | Sony Corporation | Apparatus for recording and/or reproducing digital data information |
EP0376217B1 (de) * | 1988-12-29 | 1994-10-12 | Sharp Kabushiki Kaisha | Gerät zur Aufzeichnung und Wiedergabe von Daten |
GB8905435D0 (en) * | 1989-03-09 | 1989-04-19 | Hewlett Packard Ltd | Data storage apparatus |
US4978955A (en) * | 1989-11-09 | 1990-12-18 | Archive Corporation | Data randomizing/de-randomizing circuit for randomizing and de-randomizing data |
CA2031343A1 (en) * | 1990-01-17 | 1991-07-18 | Robert C. Richmond | Dat drive/controller interface |
EP0471672B1 (de) * | 1990-03-09 | 1996-05-01 | Hewlett-Packard Limited | Einrichtung zum speichern auf ein magnetband |
-
1992
- 1992-03-10 EP EP92302015A patent/EP0559975B1/de not_active Expired - Lifetime
- 1992-03-10 DE DE69229440T patent/DE69229440T2/de not_active Expired - Fee Related
-
1993
- 1993-03-01 US US08/024,527 patent/US5367410A/en not_active Expired - Lifetime
- 1993-03-10 JP JP5076344A patent/JPH0620396A/ja active Pending
-
2003
- 2003-03-19 JP JP2003074895A patent/JP3633923B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0559975B1 (de) | 1999-06-16 |
JP2003242724A (ja) | 2003-08-29 |
DE69229440D1 (de) | 1999-07-22 |
US5367410A (en) | 1994-11-22 |
JPH0620396A (ja) | 1994-01-28 |
EP0559975A1 (de) | 1993-09-15 |
JP3633923B2 (ja) | 2005-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69229440T2 (de) | Datenspeichergerät | |
DE69031031T2 (de) | Bandspeicherung | |
DE3875817T2 (de) | Verfahren und geraete zur aufzeichnung und/oder wiedergabe digitaler daten. | |
DE3875773T2 (de) | Geraet zur aufzeichnung und/oder wiedergabe digitaler daten. | |
DE69026821T2 (de) | Einrichtung zum speichern auf ein magnetband | |
DE2500721C2 (de) | Sekundärspeicher für digitale Datenverarbeitungssysteme | |
DE69319181T2 (de) | Entschachtelungsschaltung zum Regenerieren von digitalen Daten | |
DE69625720T2 (de) | Informationsaufzeichnungsverfahren und -wiedergabeverfahren | |
DE2921387C2 (de) | Verfahren zum Austauschen von Informationen zwischen einer Datenverarbeitungsanlage und einem Magnetplattenspeicher | |
DE68924153T2 (de) | Datenspeichergerät. | |
DE2757401C2 (de) | Verfahren und Vorrichtung zur Fehlererkennung und -korrektur von wortweise parallel anfallenden Datenbits | |
DE3689285T2 (de) | CRC-Rechenmaschinen. | |
DE3788663T2 (de) | Verfahren und Gerät zum Übertragen und Empfangen eines Digitalsignals. | |
DE68909250T2 (de) | Datenspeicherverfahren. | |
DE2916710C2 (de) | ||
DE69528260T2 (de) | Anordnung von sätzen variabler länge in festen blöcken | |
DE3132840C2 (de) | ||
DE2326942A1 (de) | Verfahren und anordnung zum registrieren von informationen in konzentrischen spuren einer mehrzahl von gleichachsig drehbaren platten | |
DE19522497B4 (de) | Magnetplatte, Magnetplattenlaufwerk und Datenzugriffsverfahren | |
DE3911692C2 (de) | Digitalsignal-Aufzeichnungsgerät für eine Mehrzahl von Datenarten unterschiedlicher Datenrate | |
DE3933500C2 (de) | Verfahren zum Wiedergeben von Information von einem Aufzeichnungsmedium | |
DD234517A5 (de) | Magnetplatten-steuereinrichtung zur aufzeichnung und/oder wiedergabe digitaler daten | |
DE68908907T2 (de) | Datenspeicherverfahren auf ein Aufzeichnungsband. | |
DE3882199T2 (de) | Gerät und Verfahren zur Aufzeichnung und/oder Wiedergabe eines digitalen Signals. | |
DE68909956T2 (de) | Suchverfahren für Aufzeichnungsmedien. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |