DE3688447T2 - Magnetbandsystem und methode mit vorauswahlssteuerungsmittel. - Google Patents

Magnetbandsystem und methode mit vorauswahlssteuerungsmittel.

Info

Publication number
DE3688447T2
DE3688447T2 DE8686306378T DE3688447T DE3688447T2 DE 3688447 T2 DE3688447 T2 DE 3688447T2 DE 8686306378 T DE8686306378 T DE 8686306378T DE 3688447 T DE3688447 T DE 3688447T DE 3688447 T2 DE3688447 T2 DE 3688447T2
Authority
DE
Germany
Prior art keywords
data
drive
magnetic tape
command
host controller
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
Application number
DE8686306378T
Other languages
English (en)
Other versions
DE3688447D1 (de
Inventor
Masayuki Ishiguro
Noboru Ohwa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of DE3688447D1 publication Critical patent/DE3688447D1/de
Publication of DE3688447T2 publication Critical patent/DE3688447T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0682Tape device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf ein Magnetbandsystem. Insbesondere bezieht sich die vorliegende Erfindung auf ein Magnetbandsystem mit einem Pufferspeicher, in dem eine Vielzahl von Befehlen und Daten gespeichert werden können, und Vorauslese-Steuermitteln, mit denen Daten von einem Hostsystem in den Pufferspeicher vorausgelesen werden können.
  • Ein Magnetbandsystem findet breite Anwendung als externe Speichereinheit eines Computers, und in jüngster Zeit wird ein Magnetbandsystem besonders als Sicherungssystem für eine externe Speichereinheit, wie eine Magnetplatteneinheit verwendet. Gegenwärtig ist eine Vorauslese- Steuereinheit in diesem Magnetbandsystem angeordnet. Die Vorauslese-Steuereinheit enthält einen Befehlspufferspeicher zum temporären Speichern einer Vielzahl von Befehlen von einem Hostsystem und einen Datenpufferspeicher zum temporären Speichern von Daten von dem Hostsystem, die zu speichern sind, oder von ausgelesenen Daten. Wenn Befehle des Hostsystems in dem Speicher der Vorauslese-Steuereinheit empfangen werden, kann das Hostsystem demzufolge die anschließende Verarbeitung leiten oder vor dem Abschluß des Zugriffs in der Antriebseinheit Magnetbandzugriffsbefehle weitererzeugen, während die Antriebseinheit vor Empfang von Befehlen von dem Hostsystem oder der Bestätigung davon die Verarbeitung ausführen kann. Deshalb kann durch Einführung der Vorauslese-Steuereinheit die gesamte Verarbeitungskapazität des Magnetbandsystems verbessert werden.
  • Da die Kapazität des Befehlspufferspeichers oder des Datenpufferspeichers beschränkt ist, wenn viele Befehle von dem Hostsystem empfangen werden müssen, muß das Vorauslesen begrenzt werden.
  • Bei einer vorgeschlagenen Vorauslesesteuerung ist die Begrenzung des Vorauslesens schrittweise und aufeinanderfolgend definiert, wie in Schritten von Beträgen von 8 KB, 16 KB, 32 KB und 64 KB von Daten, die der Vorauslese- Anforderung zugeordnet sind. Wenn der Begrenzungswert 8 KB beträgt, wird der Befehlspufferspeicher bei einer Vorauslese-Anforderung, die kleiner als 8 KB ist, durch 8 KB belegt. Wenn der Begrenzungswert (maximal zulässige Blocklänge) 32 KB beträgt, kann eine Vorauslese-Anforderung für 8 KB akzeptiert werden, jedoch wird angenommen, daß 32 KB des Befehlspufferspeichers für die Vorauslese-Anforderung für 8 KB verwendet werden, was zu einer niedrigen Verfügbarkeit des Befehlspufferspeichers führt. Im allgemeinen kann eine kleine Begrenzungsmenge (kleine maximale Blocklänge) mehr Akzeptanzmöglichkeiten des Vorauslesens bieten. Aber eine kleine Begrenzung muß zu einer großen Begrenzung geändert werden, wenn eine Vorauslese-Anforderung für eine große Datenmenge erforderlich ist.
  • Bei der herkömmlichen Vorauslesesteuerung wird jedoch die Begrenzung (d. h. Einstellung der maximal zulässigen Blocklänge) durch Austauschen von Werten, die bezüglich einander schrittweise vorbestimmt sind, vorgenommen, und jedes Mal, wenn ein Austausch durchgeführt wird, wird zu dem Hostsystem eine Fehlermeldung übertragen. Demzufolge werden Fehlermeldungen oft übertragen, und das Hostsystem wird für eine gewisse Zeit vom Übertragen von Daten und Befehlen zu der Vorauslese-Steuereinheit abgehalten. Aus diesem Grund ist die herkömmliche Vorauslesesteuerung fehlerhaft dahingehend, daß die spezifische Funktion der Vorauslese- Steuereinheit nicht genügend genutzt wird. Obwohl das Vorausleseen am Ende des Magnetbandes gestoppt werden muß, ist außerdem eine befriedigender Schritt zum Ausführen dieses Stops nicht entwickelt worden.
  • Diese Probleme werden nachstehend unter Bezugnahme auf die beiliegenden Zeichnungen beschrieben.
  • Eine Ausführungsform der vorliegenden Erfindung kann ein Magnetbandsystem mit Vorauslese-Steuermitteln vorsehen, bei dem das Verfahren zum Einstellen der maximalen Blocklänge verbessert ist, um die Häufigkeit eines Übertragungsversuchs zu reduzieren und somit die Wartezeit zu verkürzen.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung nach Anspruch 1 ist ein Magnetbandsystem mit Antriebsmitteln vorgesehen, die einen Magnetkopf, Spulen zum Daraufspulen eines Magnetbandes und einen Antriebsteil zum Antreiben der genannten Spulen enthalten, Antriebssteuermitteln, die mit den genannten Antriebsmitteln operativ verbunden sind, um die genannten Antriebsmittel zu steuern, und Vorauslese- Steuermitteln, die mit den genannten Antriebssteuermitteln und mit einem Hostcontroller operativ verbunden sind, zum Zuführen von Zugriffsbefehlen zu dem genannten Magnetband, mit einem ersten Speichermittel zum Vorausleseen einer Vielzahl von Befehlen von dem genannten Hostcontroller und einem zweiten Speichermittel zum temporären Speichern von Schreibdaten von dem genannten Hostcontroller oder von Daten, die von dem genannten Magnetband ausgelesen wurden, bei dem die genannten Antriebsmittel durch die genannten Antriebssteuermittel gemäß den Befehlen betätigt werden, die in dem genannten ersten Speicher gespeichert sind, und Resultate der Operation dem genannten Hostcontroller gemeldet werden, dadurch gekennzeichnet, daß, bei Gebrauch, die genannten Vorauslese-Steuermittel die Anzahl von Bytes von Schreibdaten zählen, die einem Schreibbefehl zugeordnet sind, und, wenn die genannte gezählte Byteanzahl innerhalb eines Teils eines freien Bereiches des genannten zweiten Speichers liegt und größer als die maximale Blocklänge in dem genannten zweiten Speicher ist, die das Vorausleseen gestattet, die genannte gezählte Byteanzahl als neue maximale Blocklänge eingestellt wird und die Vorauslesesteuerung der Schreibdaten auf der Grundlage der genannten neuen maximalen Blocklänge ausgeführt wird.
  • Anspruch 1 ist von dem internen Stand der Technik abgegrenzt, der durch Fig. 1 der vorliegenden Anmeldung dargestellt ist, welcher interne Stand der Technik auch der Lehre des Dokumentes EP-A-0059799 von der IBM Corporation entspricht.
  • Gemäß einer bevorzugten Ausführungsform kann, wenn die Antriebssteuereinheit erfaßt, daß das Magnetband in der Nähe von seinem Ende angelangt ist, die Anzahl von speicherbaren Schreibbefehlen, die vorauszulesen und in dem ersten Speicher zu speichern sind, durch die Lese-Steuereinheit reduziert werden.
  • Ein zweiter Aspekt der Erfindung sieht ein Verfahren zum Betreiben eines Magnetbandsystems nach beiliegendem Anspruch 5 vor.
  • An Hand eines Beispiels wird Bezug auf die bei liegenden Zeichnungen genommen, in denen:
  • Fig. 1 ein Diagramm ist, das die Vorauslesesteuerung bei einem Magnetbandsystem zeigt;
  • Fig. 2 und 3 Diagramme sind, die ein vorhandenes Verfahren zeigen;
  • Fig. 4 ein Diagramm ist, das das Prinzip der vorliegenden Erfindung zeigt;
  • Fig. 5 ein Diagramm ist, das die Gesamtstruktur einer Ausführungsform der vorliegenden Erfindung zeigt;
  • Fig. 6 ein Diagramm ist, das die Struktur des Hauptteiles der in Fig. 5 gezeigten Ausführungsform zeigt;
  • Fig. 7 ein Flußdiagramm ist, das die beginnende Verarbeitung bei einer Ausführungsform der vorliegenden Erfindung zeigt;
  • Fig. 8 und 9 Flußdiagramme sind, die die Anfangseinstellungsverarbeitung bei der in Fig. 7 gezeigten Ausführungsform zeigen;
  • Fig. 10 ein Diagramm ist, das die Verarbeitung von Speicherbefehlen für ein Hostsystem bei einer Ausführungsform der vorliegenden Erfindung zeigt;
  • Fig. 11 bis 13 Diagramme sind, die das Vorausleseen von Befehlen und Daten bei einer Ausführungsform der vorliegenden Erfindung zeigen; und
  • Fig. 14 und 15 Diagramme sind, die die Verarbeitung von Schreibbefehlen für eine Antriebseinheit bei einer Ausführungsform der vorliegenden Erfindung zeigen.
  • Bevor die bevorzugten Ausführungsformen der vorliegenden Erfindung beschrieben werden, erfolgt eine Beschreibung des Konzeptes der Hol-oder Lesesteuerung unter Bezugnahme auf Fig. 1.
  • Im allgemeinen enthält das Magnetbandsystem eine Bandantriebseinheit 1 mit einem Magnetkopf zum Ausführen des Schreibens und Lesens von Daten auf einem Magnetband, einem Magnetbandantriebsteil zum Bewegen und Antreiben des Magnetbandes und einer Steuereinheit CT zum Steuern der Bandantriebseinheit 1 gemäß einem Hostcontroller (Hostsystem). In jüngster Zeit ist eine Vorauslese-Steuereinheit mit einem Pufferspeicher BF in dieser Steuereinheit CT angeordnet worden, um Befehle und Daten von dem Hostcontroller vorauszulesen oder -holen und sie in dem Pufferspeicher BF temporär zu speichern, und die Vorauslese-Steuereinheit führt die Vorauslesesteuerung von Befehlen und Daten zum Ausführen der Befehle und Daten in dem Pufferspeicher BF für die Bandantriebseinheit 1 aus.
  • Dieses Magnetbandsystem ist als "Magnetbandsystem mit Pufferspeicher" bekannt, und gemäß einem Befehl von dem Hostcontroller wird die Bandantriebseinheit 1 asynchron betätigt. Dementsprechend braucht der Hostcontroller nicht auf den Abschluß der Operation der Bandantriebseinheit 1 wegen eines Befehls zu warten, sondern kann Befehle zu dem Magnetbandsystem aufeinanderfolgend ausgeben. Ferner kann die Bandantriebseinheit 1 die Operation kontinuierlich ausführen, ohne auf einen Befehl von dem Hostcontroller zu warten. Demzufolge kann die Verarbeitungseffektivität verbessert werden und die Operationseffektivität kann bei einem Eingabestrommodus besonders verbessert werden.
  • Es erfolgt jetzt eine Beschreibung eines vorhandenen Verfahrens und von dessen Problemen.
  • Um Befehle vorauszulesen und sie in dem obengenannten Pufferspeicher BF temporär zu speichern, ist dieser Pufferspeicher BF durch einen Befehlspufferspeicher konstruiert, der eine Vielzahl von Befehlen darin speichern kann, und durch einen Datenpufferspeicher, der eine Vielzahl von Daten darin speichern kann. Zum Beispiel sind maximal 64 Befehle in dem Befehlspufferspeicher gespeichert und maximal 256 KB Daten in dem Datenpufferspeicher gespeichert, wodurch die Anzahl von Vorauslesebefehlen und -daten erhöht ist.
  • Die Datenübertragungsoperation dieses Magnetbandsystems mit dem Pufferspeicher wird jetzt unter Bezugnahme auf Fig. 2a bis 2j beschrieben.
  • Wenn ein Startsignal GO und ein Befehlssignal von dem Hostcontroller erfolgen (Fig. 2a und 2b), überträgt die Steuereinheit CT ein Antwortsignal FBY (Format besetzt) zu dem Hostcontroller (Fig. 2c) und sendet ein Datenbesetztsignal DBY, das die Ausführung des Befehls anzeigt, zu dem Hostcontroller (Fig. 2d). Wenn das Befehlssignal ein Signal von einem Befehl bezüglich eines Schreibens ist: in der Spezifikation ein Schreibbefehl, der einen gewöhnlichen Schreibbefehl mit Schreibdaten, der durch den Hostcontroller erteilt wird, und andere Schreibbefehle umfaßt, wie Löschen, Vorlauf ohne Schreibdaten, die durch den Hostcontroller erteilt werden, und welche Schreibdaten in dem Magnetbandsystem erzeugt werden, wird ein Schreib-Strobe-Impuls WSTB von der Steuereinheit CT (Fig. 2f) zu dem Hostcontroller gesendet, gespeicherte Daten von dem Hostcontroller zu der Steuereinheit CT synchron mit dem Schreib-Strobe-Impuls WSTB (Fig. 2f) übertragen, und diese Daten werden in dem Datenpufferspeicher aufeinanderfolgend gespeichert. Der Hostcontroller überträgt ein Signal "Letztes Wort" LWD zu der Steuereinheit CT gleichzeitig mit Endschreibdaten LWRDT/(LWD), die in den gespeicherten Daten enthalten sind (Fig. 2h). Die Steuereinheit CT erfaßt dieses Signal "Letztes Wort" LWD, stoppt die Zuführung des Schreib-Strobe- Impulses WSTB (Fig. 2f), um die Übertragung von Daten zu beenden. Die Steuereinheit CT sendet ein Statussignal STATUS, welches die Normalität/Abnormität der Empfangsoperation anzeigt, zu dem Hostcontroller (Fig. 2e) und stoppt die Zuführung des Datenbesetztsignals DBY (Fig. 2d), um die Operation der Übertragung von Schreibdaten zu beenden. Zu beachten ist, daß empfangene Befehle in dem Befehlspufferspeicher gespeichert werden.
  • Andererseits werden, wenn der Befehl ein Lesebefehl ist, Daten, die von dem Bandantrieb 1 ausgelesen wurden, zu dem Hostcontroller zusammen mit einem Lese-Strobe-Impuls RSTB (Fig. 2i und 2j) übertragen. Der Abschluß der Übertragung von Lesedaten wird dem Hostcontroller gemeldet, um das Zuführen des Datenbesetztsignals DBY zu stoppen.
  • Zum Empfangen von Schreibdaten, die mit Befehlen bezüglich des Schreibens verbunden sind, muß die Speicherkapazität des Datenpufferspeichers betrachtet werden.
  • Speziell wird eine maximale Empfangsdatenblocklänge eingestellt, und wenn die freie Segmentzahl FSEG des Datenpufferspeichers größer als die maximale Empfangsdatenblocklänge MAXL (nachstehend als "maximale Blocklänge" bezeichnet) ist, ist die Übertragung von Daten von dem Hostcontroller gestattet (das heißt, das Datenbesetztsignal DBY wird ausgegeben), und wenn die freie Segmentzahl FSEG kleiner als die maximale Blocklänge MAXL ist, ist eine Übertragung von Daten nicht gestattet, und eine Übertragung von Daten von dem Hostcontroller als Hostsystem wird zurückgehalten, bis ein freies Segment in dem Datenpufferspeicher durch die Schreiboperation der Bandantriebseinheit 1 erzeugt ist. Zu beachten ist, daß die Einheit jeder der FSEG und MAXL in Kilobytes (KB) ausgedrückt ist.
  • Wenn die maximale Blocklänge auf einen Wert eingestellt ist, ist eine Übertragung von Schreibdaten, die diesen Wert überschreiten, unmöglich. Demzufolge können bei dem vorhandenen Verfahren, wie in Fig. 3 gezeigt, zum Beispiel nur vier Werte von 8 KB, 16 KB, 32 KB und 64 KB für die maximale Länge eingestellt werden, und wenn die freien Segmente des Datenpufferspeichers in dem Zustand sind, der eine Übertragung von Daten gestattet, die den eingestellten Wert von 8 KB überschreiten und Daten von 10 KB tatsächlich übertragen werden, wird der eingestellte Wert auf 16 Kilobytes aufgestockt, und die übertragenen Daten von 10 KB werden wieder empfangen.
  • Wie dem auch sei, es ist bei dem vorhandenen Verfahren erforderlich, wenn die Empfangsblocklänge den eingestellten Wert der maximalen Blocklänge MAXL überschreitet, den eingestellten Wert der maximalen Blocklänge zu verändern und dann die Daten wieder zu empfangen. Demzufolge wird dem Hostcontroller ein Fehler gemeldet und eine Neuübertragung wird ausgeführt, auch wenn die freie Segmentzahl FSEG des Datenpufferspeichers größer als die Empfangsblocklänge ist.
  • Da der eingestellte Wert schrittweise erhöht wird, wenn der eingestellte Wert zum Beispiel 8 KB und die Empfangsblocklänge 64 KB beträgt, wird dem Hostcontroller zuerst ein Fehler bei dem eingestellten Wert von 8 KB gemeldet und eine Neuübertragung wird vorgenommen, und dann wird dem Hostcontroller ein Fehler bei dem eingestellten Wert von 16 KB gemeldet und eine Neuübertragung wird vorgenommen. Ferner wird dem Hostcontroller ein Fehler bei dem eingestellten Wert von 32 KB gemeldet und eine Neuübertragung wird vorgenommen, und schließlich erfolgt der normale Empfang bei dem eingestellten Wert von 64 KB. Nämlich muß ein Übertragungsversuch dreimal durchgeführt werden.
  • Da die eingestellten Werte im voraus festgelegt sind, kann außerdem, wenn der eingestellte Wert zum Beispiel 16 KB und die Empfangsblocklänge 10 KB beträgt, auch wenn die freien Segmente des Datenpufferspeichers 10 KB betragen, eine Übertragung nicht initiiert werden, bis weitere 6 KB frei werden. Dies ist eine Ursache der Reduzierung der Effektivität der Vorauslesesteuerung.
  • Unter Bezugnahme auf Fig. 4 erfolgt jetzt eine Beschreibung des Prinzips der vorliegenden Erfindung zum Lösen der obengenannten Probleme.
  • Bei der vorliegenden Erfindung wird die maximale Blocklänge gemäß der praktischen (tatsächlichen) Datenblocklänge des Schreibbefehls so lange erhöht, bis die tatsächliche Datenblocklänge innerhalb der freien Segmente des Datenpufferspeichers liegt. Speziell wird, wenn die Blocklänge n1 ist, die maximale Blocklänge auf n1 eingestellt, und wenn ein Datenblock mit einer Empfangsblocklänge n2, die n1 überschreitet, dann empfangen wird, wird der eingestellte Wert der maximalen Blocklänge direkt auf n2 erneuert.
  • Dieses Merkmal der vorliegenden Erfindung unterscheidet sich von dem vorhandenen Verfahren, bei dem der eingestellte Wert der maximalen Blocklänge ungeachtet der tatsächlich empfangenen Blocklänge bestimmt wird, da gemäß der vorliegenden Erfindung die maximale Blocklänge gemäß der tatsächlich empfangenen Blocklänge erneuert wird, und wenn die freien Segmente des Pufferspeichers größer als die Empfangs- (empfangene) Blocklänge sind, ist eine Übertragung von Daten möglich. Demzufolge wird die Versuchshäufigkeit reduziert und die Wartezeit verkürzt. Ferner wird, wenn die maximale Blocklänge zum Beispiel 10 KB und die Empfangsblocklänge 64 KB beträgt (auch wenn das freie Segment des Datenpufferspeichers kleiner als 64 KB ist), eine normale Übertragung durch einen Versuch ermöglicht, und somit wird die Versuchshäufigkeit reduziert.
  • Es werden nun Ausführungsformen der vorliegenden Erfindung beschrieben.
  • Fig. 5 ist ein Diagramm der Struktur eines Magnetbandsystems gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Bezugszeichen 1 bezeichnet eine Magnetbandantriebseinheit (nachstehend als "Antrieb" bezeichnet) eines direkten Spule-zu-Spule-Antriebssystems, die so konstruiert ist, daß ein Magnetband 16 zwischen einer Aufnahmespule (Maschinenspule) 11 und einer Zuführungsspule (Dateispule) 12 bewegt wird und durch eine Walze 15a eines Spannungsarms 15, einen Magnetkopf 14 und eine Umlenkrolle 13 auf die Aufnahmespule 11 gewickelt wird. Das Magnetband 16 wird durch die Führungen 17a und 17b auf beiden Seiten des Magnetkopfes 14 geführt. Die Aufnahmespule 11 und die Zuführungsspule 12 werden rotiert und durch Antriebsmotore 10a bzw. 10b angetrieben. Rotationskodierer 18 und 18b sind auf die Antriebsmotore 10a und 10b montiert, um die Anzahl von Rotationen der Antriebsmotore 10a und 10b zu erfassen. Ein Rotationskodierer 19a ist auf der Umlenkrolle 13 montiert, um es zu ermöglichen, die tatsächliche Bewegungsposition des Bandes zu bestimmen, und ein Spannungsdetektor 19b ist auf dem Spannungsarm 15 montiert, um die Erfassung der Bandspannung zu ermöglichen.
  • Bezugszeichen 2 bezeichnet einen Antriebscontroller zum Antreiben und Bewegen des Bandes und Antreiben des Kopfes zum Schreiben oder Lesen gemäß Befehlen und Daten, die von einem Befehls- und Datencontroller, der nachstehend beschrieben ist, übertragen werden. Der Antriebscontroller 2 empfängt Ausgaben von den entsprechenden Rotationskodierern 18a, 18b und 19a, um den Bewegungszustand des Bandes zu bestimmen, und empfängt die Ausgabe von dem Spannungsdetektor 19b, um die Spannung des Bandes zu prüfen. Ferner steuert der Antriebscontroller 2 beide Antriebsmotore 10a und 10b durch Antriebsschaltungen 20 und 21. So treibt der Antriebscontroller 2 das Band an und bewegt (transportiert) es unter einer konstanten Bandspannung, überträgt Daten, die zu schreiben sind, zu dem Magnetkopf 14, um das Schreiben auszuführen, und empfängt Daten, die durch den Magnetkopf 14 gelesen wurden.
  • Bezugszeichen 3 bezeichnet einen Befehls- und Datencontroller, der Schreibbefehle oder Lesebefehle von dem Hostcontroller empfängt und geschriebene Daten darin sammelt. Bei einem Schreibbefehl überträgt der Befehls- und Datencontroller 3 einen Schreibbefehl zusammen mit Daten, die zu speichern sind, zu dem Antriebscontroller 2, um die Schreiboperation zu bewirken, und wenn die Operation normal abgeschlossen wird, informiert der Befehls- und Datencontroller 3 den Hostcontroller von diesem normalen Abschluß. Wenn die Operation nicht normal abgeschlossen wird, veranlaßt der Befehls- und Datencontroller 3 den Antriebscontroller 2, die Schreibversuchsoperation zu bewirken.
  • Der Befehls- und Daten-Vorauslesecontroller 3 hat einen Befehlspufferspeicher und einen Datenpufferspeicher, die später beschrieben sind, und arbeitet für den Hostcontroller als Magnetbandsystem und für die Antriebssteuereinheit 2 als Hostcontroller.
  • Fig. 6 ist ein Diagramm, das den Befehls- und Datencontroller 3 in dem in Fig. 5 gezeigten System zeigt.
  • In Fig. 6 bezeichnet Bezugszeichen 30 einen Mikroprozessor (nachstehend als "MPU" bezeichnet), der die Steuerung des Empfangs von Befehlen und Daten von dem Hostcontroller und die Steuerung der Übertragung von Daten und dem Status gemäß einem Mikroprogramm eines Programmspeichers ausführt, und auch die Steuerung der Übertragung von Befehlen und Daten zu dem Antriebscontroller 2 und die Steuerung des Empfangs von Daten und dem Status von dem Antriebscontroller 2 ausführt. Außerdem führt der Mikroprozessor 30 die Verarbeitung einer Neuversuchssteuerung aus. Bezugszeichen 31a bezeichnet einen Programmspeicher, in dem Programme, die durch die MPU 30 auszuführen sind, gespeichert sind. Bezugszeichen 31b bezeichnet einen Speicher mit wahlfreiem Zugriff (nachstehend als "RAM" bezeichnet), in dem Daten, Befehle und Parameter gespeichert sind, die für die Verarbeitung der MPU 30 erforderlich sind. Bei dieser Ausführungsform hat der RAM 31b einen Befehlspufferbereich CBA, einen Befehlspufferverwaltungsbereich CA und einen Datenpufferverwaltungsbereich DA.
  • Der Befehl CMND von dem Hostcontroller, die Adresse AD von Daten, die durch diesen Befehl in den Datenpufferspeicher übertragen wurden, und die gezählte Bytezahl BC sind in dem Befehlspufferbereich CBA gespeichert, und die Befehlsspeicherzahl CN von Befehlen, die in dem Befehlspufferbereich CBA gespeichert aber nicht ausgeführt sind, und die Befehlsspeicherbereichszahl (verfügbare Befehlszahl) AN der Schreibbefehle, die in dem Befehlspufferbereich CBA gespeichert werden können, sind in dem Befehlspuffersteuerbereich CA gespeichert. Die freie Segmentzahl FSEG des Pufferspeichers, die die freien Segmente des Datenpufferspeichers durch die Einheitszahl (Einheit Kilobyte) anzeigt, die Pufferadresse BADR, die die Leitungsadresse des Datenpufferspeichers zu der Zeit der Übertragung von Daten zum Speichern in dem Datenpufferspeicher anzeigt, und die maximale Blocklänge MAXL, die die maximale Länge des zu verarbeitenden Datenblocks anzeigt, sind in dem Datenpuffersteuerbereich DA gespeichert. Bezugszeichen 32a bezeichnet eine Antriebsschnittstellenschaltung für die Übertragung von Steuersignalen und dergleichen zwischen dem Antriebscontroller 2 und dem Befehls- und Datencontroller 3. Bezugszeichen 32b bezeichnet eine Hostschnittstellenschaltung für die Übertragung von Steuersignalen und dergleichen zwischen dem Hostcontroller und dem Befehls- und Datencontroller 3. Bezugszeichen 33 bezeichnet eine Datenübertragungssteuerschaltung zum Steuern eines Datenpuffers, der nachstehend beschrieben ist, um die Übertragung von Daten zwischen dem Hostcontroller oder dem Antriebscontroller 2 und dem Befehls- und Datencontroller 3 zu steuern. Die Steuerschaltung 33 überträgt ein Datenübertragungsanforderungssignal zu dem Hostcontroller und empfängt ein Datenübertragungsanforderungssignal von dem Antriebscontroller 2, um die Steuerung der Datenübertragung auszuführen. Die Steuerschaltung 33 enthält einen Speicheradreßzähler SAC zum Speichern der Daten in den Datenpufferspeicher, einen Ladeadreßzähler LAC zum Laden der Daten von dem Datenpufferspeicher und einen Bytezähler BC.
  • Bezugszeichen 34 bezeichnet einen Datenpuffer, der durch die Datenübertragungssteuerschaltung 33 gesteuert wird. Der Datenpuffer 34 speichert die zu schreibenden Daten von dem Hostcontroller (d. h., die Daten, die einem Schreibbefehl zugeordnet sind) und überträgt die geschriebenen Daten zu dem Antriebscontroller 2. Der Puffer 34 speichert auch die gelesenen Daten von dem Antriebscontroller 2 und überträgt die Lesedaten zu dem Hostcontroller. Der Datenpuffer 34 hat zum Beispiel eine Kapazität von 256 KB. Bezugszeichen 35 bezeichnet einen Datenbus zum Verbinden der MPU 30 mit dem Programmspeicher 31a, dem RAM 31b, der Antriebsschnittstellenschaltung 32a, der Hostschnittstellenschaltung 32b und der Datenübertragungssteuerschaltung 33, um die Übertragung von Befehlen und Daten auszuführen.
  • Bezugszeichen 36a bezeichnet eine Steuersignalleitung, die verwendet wird, um Befehle zu dem Antriebscontroller 2 zu übertragen und um den Status und dergleichen von dem Antriebscontroller 2 zu empfangen. Bezugszeichen 36b bezeichnet eine Leitung für ein Signal, das eine Erfassung einer Zone anzeigt, die an das Bandende grenzt, die zum Übertragen dieses Signals von dem Antriebscontroller 2 verwendet wird. Bezugszeichen 36c bezeichnet eine Unterbrechungsleitung, die verwendet wird, um die MPU 30 von einer Unterbrechung von der Antriebsschnittstellenschaltung 32a zu informieren. Bezugszeichen 37a bezeichnet eine Datenübertragungsanforderungssignalleitung zum Übertragen eines Datenübertragungsanforderungssignals zu der Datenübertragungssteuerschaltung 33 von dem Antriebscontroller 2. Bezugszeichen 37b bezeichnet einen Speicherdatenbus, der zum Übertragen der gespeicherten Daten zu dem Antriebscontroller 2 von dem Datenpuffer 34 verwendet wird. Bezugszeichen 37c bezeichnet einen Lesedatenbus, der zum Übertragen der Lesedaten zu dem Datenpuffer 34 von dem Antriebscontroller 2 verwendet wird. Bezugszeichen 38 bezeichnet eine Steuersignalleitung, die für die Übertragung von Befehlen und dem Status zwischen dem Hostcontroller und dem Befehls- und Datencontroller 3 verwendet wird. Bezugszeichen 39a bezeichnet eine Datenübertragungssteuersignalleitung, die zum Übertragen eines Datenübertragungsanforderungssignals zu dem Hostcontroller verwendet wird. Bezugszeichen 39b bezeichnet einen Speicherdatenbus, der zum Übertragen der gespeicherten Daten von dem Hostcontroller zu dem Datenpuffer 34 verwendet wird. Bezugszeichen 39c bezeichnet einen Lesedatenbus, der zum Übertragen der Lesedaten zu dem Hostcontroller von dem Datenpuffer 34 verwendet wird.
  • Demzufolge führt die MPU 30 ein Schreiben und Lesen zwischen dem RAM 31b, der Hostschnittstellenschaltung 32b, der Antriebsschnittstellenschaltung 32a und der Datenübertragungssteuerschaltung 33 durch den Datenbus 35 aus, um die gewünschte Verarbeitung auszuführen. Speziell führt die Hostschnittstellenschaltung 32b die Übertragung von Befehlen und dem Status durch die Steuerung der MPU 30 durch den Hostcontroller und die Steuersignalleitung 38 aus, und die Antriebsschnittstellenschaltung 32a führt die Übertragung von Befehlen und dem Status durch die Steuerung der MPU 30 durch den Antriebscontroller 2 und die Steuersignalleitung 36a aus. Gemäß den Anweisungen von der MPU 30 überträgt die Datenübertragungssteuerschaltung 33 eine Datenübertragungsanforderung zu dem Hostcontroller durch die Datenübertragungsanforderungssignalleitung 39a, und bei Empfang von diesem Signal überträgt der Hostcontroller die gespeicherten Daten zu dem Datenpuffer 34 durch den Speicherdatenbus 39b, und die gespeicherten Daten werden in dem Datenpuffer 34 gesammelt. Die Datenübertragungsanforderung, die durch die Datenübertragungsanforderungssignalleitung 37a von dem Antriebscontroller 2 übertragen wird, veranlaßt die Datenübertragungssteuerschaltung 33, die gespeicherten Daten des Datenpuffers 34 zu dem Antriebscontroller 2 durch den Speicherdatenbus 37b zu übertragen.
  • Ferner veranlassen die Anweisungen von der MPU 30 die Datenübertragungssteuerschaltung 33, die Lesedaten, die von dem Antriebscontroller 2 durch den Lesedatenbus 37c übertragen wurden, in dem Datenpuffer 34 zu sammeln und die Lesedaten des Datenpuffers 34 zu dem Hostcontroller durch den Lesedatenbus 39c zu übertragen.
  • Zu beachten ist, daß die Antriebssteuereinheit 2 die Nähe der Endzone des Bandes durch Untersuchung der Laufposition durch den Rotationskodierer 19a erfaßt und ein Frühwarnbereichs- (EWA-) Signal zu der Signalleitung 36 überträgt, und die Antriebssteuereinheit 2 ein Bandende- (EOT-) Signal erfaßt und ein Bandwarnbereichs- (TWA-) Signal zu der Signalleitung 36a aussendet.
  • Fig. 7 ist ein Flußdiagramm, das den Startvorgang bei einer Ausführungsform der vorliegenden Erfindung zeigt, und
  • Fig. 8 und 9 sind Flußdiagramme, die den Anfangseinstellungsvorgang bei der in Fig. 7 gezeigten Ausführungsform zeigen.
  • =Schritt S001
  • Wenn Energie zugeführt wird, wird die in Fig. 8 gezeigte Anfangseinstellungsverarbeitung (1) (INZ(1)) ausgeführt.
  • Schritte S050 bis S054
  • Die MPU 30 setzt die Befehlsspeicherbereichszahl AN des Befehlspuffersteuerbereichs CA des RAM 31 auf einen Maximalwert von 64 (S050). Dann stellt die MPU 30 die Befehlsspeicherzahl CN des Befehlspuffersteuerbereichs CA auf null zurück (S051) und setzt das Puffersegment (Datenpufferspeicher) des Datenpuffersteuerbereichs DA auf einen Maximalwert von 256, und die MPU 30 setzt die Datenpufferadresse auf "00" ("XX" bezeichnet eine Hexadezimalzahl) (S053). Ferner setzt die MPU 30 die maximale Blocklänge MAXL des Datenpuffersteuerbereichs CA auf einen Minimalwert von 8 KB (S054). Somit ist der Anfangseinstellungsvorgang (1) beendet.
  • Schritte S002 und S003
  • Nach Abschluß der Anfangseinstellung durch die Energieversorgung oder während des Wartens auf das Startsignal von dem Hostcontroller bestimmt die MPU 30 durch die Antriebsschnittstellenschaltung 32a über den Bus 35, ob der On-Line- Zustand erreicht ist, bei dem das Magnetband auf die Zuführungsspule 12 gesetzt ist (S002).
  • Wenn der On-Line-Zustand erfaßt ist, prüft die MPU 30 den Registerinhalt der Hostschnittstellenschaltung 32b durch den Bus 35 und bestimmt, ob ein Rückspulbefehl REW oder ein Entlade- oder Vorspulbefehl UNL von dem Hostcontroller angekommen ist oder nicht (S003).
  • Schritte S010 bis S013
  • Wenn der Befehl REW oder UNL ankommt, bestimmt die MPU 30, ob der Ausführungsverarbeitungsmodus der Antriebssteuereinheit 2 den Lesebefehl oder den Schreibbefehl betrifft, oder ob eine Verarbeitung nicht ausgeführt wird (S010). Wenn der Ausführungsverarbeitungsmodus den Lesebefehl betrifft, wird die Antriebsverarbeitung (Vorauslesen) gestoppt (S011). Wenn nämlich die Antriebssteuereinheit 2 den Vorgang, der ausgeführt wird, beendet, wird die Antriebssteuereinheit 2 von der Steuerleitung 36a durch die Antriebsschnittstellenschaltung 32a angewiesen, einen Befehl für eine neue Verarbeitung nicht aus zugeben, und die Verarbeitung bezüglich des Lesebefehls wird beendet.
  • Andererseits werden, wenn der Ausführungsverarbeitungsmodus den Schreibbefehl betrifft, alle Befehle in dem Befehlspufferspeicher CBA ausgeführt (S012). Nach Ausführung aller Befehle, oder wenn keine Verarbeitung ausgeführt wird, oder nachdem die Antriebsverarbeitung gestoppt worden ist, erteilt die MPU 30 den Befehl REW (Rückspulen des Bandes zu BOT) oder den Befehl UNL (Vorspulen des Bandes) durch die Antriebsschnittstellenschaltung 32a und veranlaßt die Antriebseinheit 1, diese Aktion auszuführen (S013), und die Routine kehrt zu dem Schritt S001 zurück.
  • Schritt S004
  • Wenn der Befehl REW oder UNL nicht ankommt, prüft die MPU 30 andererseits den Registerinhalt der Hostschnittstellenschaltung 32b durch den Bus 35 und bestimmt, ob das Startsignal (GO) von dem Hostcontroller vorhanden ist oder nicht. Wenn kein Startsignal vorhanden ist, muß das Startsignal abgewartet werden, und die Routine kehrt zu dem Schritt S002 zurück.
  • Schritt S005
  • Wenn das Startsignal von dem Hostcontroller empfangen ist, wenn nämlich der Empfang des GO-Signals erfaßt ist, prüft die MPU 30 den Registerinhalt der Hostschnittstellenschaltung 32b durch den Bus 35 und bestimmt, was für ein Befehl erteilt ist (S005).
  • Wenn der erteilte Befehl nicht das Schreiben sondern das Lesen betrifft, wird die Verarbeitungsroutine ausgeführt.
  • Schritte S006 bis S009
  • Wenn andererseits der erteilte Befehl das Schreiben betrifft, bestimmt die MPU 30, ob der Ausführungsverarbeitungsmodus der Antriebssteuereinheit 2 die Leseverarbeitung oder die Schreibverarbeitung betrifft, oder ob die Verarbeitung nicht ausgeführt wird (S006). Wenn der Ausführungsverarbeitungsmodus den Lesebefehl betrifft, wird die Antriebsverarbeitung gestoppt (S007). Wenn die Verarbeitung, die durch die Antriebssteuereinheit 2 ausgeführt wird, beendet wird, stoppt die Antriebssteuereinheit 2 speziell die Verarbeitung des Lesebefehls von der Steuerleitung 36a durch die Antriebsschnittstellenschaltung 32a und wird angewiesen, keinen neuen Verarbeitungsbefehl auszugeben. Um die Bandposition einzustellen, wird dann der Antriebssteuereinheit 2 durch die Antriebsschnittstellenschaltung 32a ein Befehl (Vor-setzen oder Rücksetzen) für die Einstellung der Bandposition erteilt (S008). Nach Abschluß dieses Schrittes, oder wenn die Verarbeitung der Antriebssteuereinheit 2 nicht ausgeführt wird, wird die in Fig. 9 gezeigte Anfangseinstellungsverarbeitung (2) ausgeführt.
  • Schritte S060 bis S065
  • Zuerst bestimmt die MPU 30, ob der Ausführungsverarbeitungsmodus der Schreibmodus ist oder nicht (S060), und wenn der Modus nicht der Schreibmodus ist, wird die Befehlssteuerbereichszahl AN des Befehlspuffersteuerbereichs CA des RAM 31 auf einen Maximalwert von 64 eingestellt (S063). Wenn der Modus der Schreibmodus ist, erfolgt durch die Antriebsschnittstellenschaltung 32a eine Prüfung, ob das Frühwarnbereichssignal EWA (Signal für den Bereich nahe dem Ende des Bandes) EIN oder AUS ist. Wenn das EWA-Signal AUS ist (das Band ist nicht im Bereich nahe dem Ende), wird die Befehlsspeicherbereichszahl AN des Befehlspuffersteuerspeichers des RAM 31 auf eine Maximalzahl 64 eingestellt, wie im obengenannten Fall.
  • Wenn das Signal EWA EIN ist, wird die Befehlsspeicherbereichszahl AN auf eine Minimalzahl von 2 eingestellt.
  • Dann stellt die MPU 30 die Befehlsspeicherzahl CN des Befehlspuffersteuerbereichs CA auf null zurück (S063), stellt das Pufferspeichersegment (Datenpufferspeicher) des Datenpuffersteuerbereichs DA auf einen Maximalwert von 256 (S064) und stellt die Datenpufferadresse auf "00" (S065), wodurch die Anfangseinstellungsverarbeitung (2) beendet ist.
  • Dann geht die Routine zu der Routine der Verarbeitung der Schreibbefehle für den Hostcontroller über, gezeigt in Fig. 10.
  • Wenn andererseits der Ausführungsverarbeitungsmodus den Schreibbefehl beim Schritt S006 betrifft, geht die Routine unmittelbar zu der Speicherverarbeitungsroutine für den Hostcontroller über.
  • Demzufolge wird, wenn das Startsignal von dem Hostcontroller ein Schreibbefehl ist, die Verarbeitung, auch während der Leseverarbeitung, zu der Schreibverarbeitung geändert, und die Schreibverarbeitung wird fortgesetzt.
  • Bei der Anfangseinstellungsverarbeitung (1) wird die maximale Blocklänge MAXL auf einen Minimalwert von 8 KB eingestellt, und bei der Anfangseinstellungsverarbeitung (1) oder (2) wird das Datenpufferspeichersegment auf einen Maximalwert von 256 KB eingestellt und die Befehlsspeicherbereichszahl AN wird auf einen Maximalwert von 64 KB eingestellt.
  • Fig. 10 ist ein Flußdiagramm, das die Schreibverarbeitung für den Hostcontroller zeigt, und Fig. 11 bis 13 sind Flußdiagramme, die das Vorausleseen von Schreibdaten zeigen.
  • Schritt S101
  • Wenn die MPU 30 durch den Schreibbefehl von dem Hostcontroller in Fig. 7 gestartet wird, liest die MPU 30 die Befehlsspeicherzahl CN von dem Befehlspuffersteuerbereich CA des RAM 31b und die Befehlsspeicherbereichszahl AN durch den Bus 35 und vergleicht diese Zahlen. Wenn AN_CN, das heißt, wenn die Zahl von Schreibbefehlen, die in dem Befehlspufferspeicher CBA gespeichert sind, größer als die speicherbare Befehlszahl AN ist (oder gleich ist), wird das Speichern der Schreibbefehle in dem Befehlspufferspeicher CBA zurückgehalten.
  • Schritt S102
  • Wenn AN > CN ist, prüft die MPU 30, da die Schreibbefehle in dem Befehlspufferspeicher CBA gespeichert werden können, ob der entsprechende Schreibbefehl den Datenpufferspeicher 34 verwenden soll (S102). Wenn Daten des Magnetbandsystems, wie Löschen, Schreiben oder Bandmarke, erzeugt sind, und keine Daten von dem Hostcontroller erzeugt sind, wird, da der Datenpufferspeicher 34 nicht verwendet wird, das Datenbesetztsignal DBY EIN-geschaltet (S113), und die Routine geht zu dem Befehlsschreibschritt S114 über.
  • Wenn das Startsignal (GO) und ein Befehl von dem Hostcontroller (Master für die Vorauslese-Steuereinheit) erteilt werden, wie in Fig. 2a bis 2j gezeigt, schaltet, falls der Befehl ausführbar ist, die Vorauslese-Steuereinheit 3 (Slave für den Hostcontroller) ein Datenbesetztsignal DBY EIN, das diesen Zustand anzeigt, und führt das Signal zu dem Hostcontroller zurück. Diese Beziehung wird ähnlich hergestellt, auch wenn die Vorauslese-Steuereinheit eine Master-Einheit und die Antriebssteuereinheit 2 eine Slave-Einheit ist.
  • Schritte S103 und S104
  • Wenn der Schreibbefehl ein gewöhnlicher Schreibbefehl ist, der den Datenpufferspeicher 34 nutzt, entscheidet die MPU 30, daß eine automatische Übertragung zu dem Datenpufferspeicher 34 zulässig ist. Zuerst liest die MPU 30 das freie Puffersegment (Parameterdatenpufferspeicher) von dem Datenpuffersteuerbereich DA des RAM 31b und die maximale Blocklänge MAXL und bestimmt, ob die freie Puffersegmentzahl FSEG größer als die maximale Blocklänge ist oder nicht (S013). Wenn die freie Puffersegmentzahl FSEG kleiner als die maximale Blocklänge ist, wird der Empfang von Schreibdaten zurückgehalten, bis die freien Puffersegmente des Datenpuffers 34 gleich der maximalen Blocklänge werden. Wenn die Puffersegmentzahl FSEG größer als die maximale Blocklänge MAXL ist, ist die Übertragung gestattet. Demzufolge wird das obengenannte Datenbesetztsignal DBY EIN-geschaltet (S104), und die Übertragungserlaubnis wird dem Hostcontroller gemeldet.
  • Schritte S105 bis S108
  • Dann liest die MPU 30 die Startpufferadresse BADR des Datenpuffersteuerbereichs DA des RAM 31b und setzt sie in den Speicheradreßzähler SAC der Datenübertragungssteuerschaltung 33 (S105), und die MPU 30 startet die Datenübertragungssteuerschaltung 33, wodurch die Datenübertragungssteuerschaltung 33 eine Datenübertragungsanforderung zu dem Hostcontroller von der Datenübertragungssteuersignalleitung 39a ausgibt.
  • Demzufolge überträgt der Hostcontroller die Schreibdaten zu dem Datenpufferspeicher 34 durch den Speicherdatenbus 39b, und die Schreibdaten werden in dem Datenpufferspeicher 34 gemäß der Adresse des Speicheradreßzählers SAC der Datenübertragungssteuerschaltung 33 gesammelt. Der Speicheradreßzähler SAC zählt jedes Mal, wenn ein Byte von Schreibdaten übertragen ist, aufwärts.
  • Wenn die Datenübertragungssteuerschaltung 33 entscheidet, daß die Datenübertragung beendet ist (S107), liest die MPU 30 den Speicheradreßzähler SAC der Datenübertragungssteuerschaltung 33 aus und berechnet die Differenz von der Pufferadresse des Datenpuffersteuerbereichs DA, um die Bytezahl BC der übertragenen Schreibdaten zu bestimmen (S108).
  • Schritte 109 und 110
  • Die MPU 30 erneuert den Datenpufferspeicher CBA des KAM 31b und den Datenpuffersteuerbereich DA.
  • Zuerst werden die Pufferadresse BADR (Startadresse von Speicherdaten) des Datenpuffersteuerbereichs DA des KAM 31b und die Bytezahl der Schreibdaten, die bei dem Schritt 108 berechnet wurde, in der entsprechenden Befehlsspalte des Befehlspufferspeichers CBA des KAM 31b gespeichert (S109). Dann wird die Nutzsegmentzahl USEG von der freien Segmentzahl FSEG des Datenpuffersteuerbereichs DA des RAM 31b subtrahiert, um die freie Segmentzahl FSEG zu erneuern (aktualisieren), und die Nutzsegmentzahl USEG wird zu der Pufferadresse BADR addiert, um die Startadresse der Pufferadresse BADR zu erneuern.
  • Schritte S111 und S112
  • Die MPU 30 vergleicht das obengenannte Nutzsegment (Empfangsblocklänge) mit der maximalen Blocklänge MAXL des Datenpuffersteuerbereichs DA des KAM 31b (S111).
  • Wenn durch diesen Vergleich herausgefunden wird, daß die Nutzsegmentzahl USED größer als die maximale Blocklänge MAXL ist, wird die maximale Blocklänge MAXL des Datenpuffersteuerbereichs DA auf diese Nutzsegmentzahl USEG erneuert (S112), und die Routine geht zu Schritt S114 über.
  • Wenn im Gegensatz dazu die Nutzsegmentzahl USEG kleiner als die maximale Blocklänge MAXL ist, wird die Erneuerung nicht ausgeführt, und die Routine geht zu Schritt S114 über.
  • Schritte S114 bis S118
  • Dann führt die MPU 30 die Schreibverarbeitung des empfangenen Schreibbefehls aus.
  • Zuerst speichert die MPU 30 den empfangenen Befehl der Hostschnittstellenschaltung 32b in dem Befehlspufferbereich CBA des KAM 31b (S114). Dann addiert die MPU 30 1 zu der Befehlsspeicherzahl CN, um CN zu erneuern, um den Befehlspuffersteuerbereich CA des KAM 31b zu erneuern (S115). Ferner prüft die MPU 30 die Antriebsschnittstellenschaltung 32a und bestimmt, ob das Signal EWA (Erfassung der Nähe des Bandendes) der Steuerleitung 36b EIN oder AUS ist (S116). Wenn EWA AUS ist, ist das Magnetband 16 nicht in der Nähe seines Endes angelangt, und deshalb geht die Routine zu Schritt S119 über. Wenn EWA EIN ist, da das Magnetband 16 in der Nähe seines Endes angelangt ist, wird geprüft, ob die Befehlsspeicherbereichszahl AN des Befehlspuffersteuerbereichs CA des KAM 31b den Minimalwert von 2 hat oder nicht, und wenn AN den Minimalwert hat, geht die Routine zu Schritt S119 über, da eine Erneuerung von AN nicht notwendig ist. Wenn AN nicht den Minimalwert hat, wird 3 von AN subtrahiert, um AN zu erneuern, und die Routine geht zu Schritt S119 über.
  • Der Grund zum Begrenzen der Befehlsspeicherbereichszahl bei den Schritten S114 bis S118 ist wie folgt.
  • Da die Länge des Magnetbandes 16 nicht unbestimmt sondern bestimmt ist, ist ein Ende der Bandmarke EOT mit dem Ende des Magnetbandes verbunden, und nach der Erfassung von EOT kann das Band nur für weitere 3 m verwendet werden. Wenn der Vorauslesebefehl und zu speichernde Daten größer als 3 m des Bandes zur Zeit der Erfassung von EOT bei der Verarbeitung des Schreibbefehls sind, können sie demzufolge nicht auf das Magnetband geschrieben werden und andere Maßnahmen müssen ergriffen werden. Dementsprechend wird das Signal EWA, das die Nähe des Bandendes anzeigt, zum Beispiel an einem Punkt von etwa 20 m vor dem Erfassungspunkt von EOT des Magnetbandes erzeugt, wodurch die speicherbare Anzahl von Schreibbefehlen, die in dem Befehlspufferspeicher gespeichert werden können, reduziert wird.
  • Zum Beispiel wird die Menge (normalerweise 64 KB) von Schreibbefehlen AN, die in dem Befehlspufferspeicher gespeichert werden kann, stufenweise reduziert, wie durch die durchgehende Linie in Fig. 13 angegeben. Alternativ kann die Anzahl von Schreibbefehlen AN, die gespeichert werden kann, abrupt reduziert werden, wie durch die gestrichelte Linie in Fig. 13 angegeben.
  • Da die Anzahl von Schreibbefehlen, die gespeichert werden kann, begrenzt ist, werden die Schreibbefehle, die Schreibdaten wie Löschen, Schreiben und Bandzeichenbefehle nicht enthalten, begrenzt. Deshalb können alle Schreibbefehle bei dem Magnetband ausgeführt werden, und jedes Hindernis für die Verarbeitung der Schreibbefehle ist beseitigt.
  • Demzufolge wird, wenn das Magnetband in der Nähe des Endes des Magnetbandes anlangt und das Signal EWA EIN- geschaltet wird (Fig. 12), die Befehlsspeicherbereichszahl AN von 64 jedes Mal, wenn ein Schreibbefehl von dem Hostcontroller empfangen wird, um 3 reduziert.
  • Schritte S119 und S120
  • Die MPU 30 bestimmt, ob die Antriebssteuereinheit 2 die Verarbeitung ausführt oder nicht (S119), und wenn die Verarbeitung nicht ausgeführt wird (Verarbeitung gestoppt), wird das Antriebsstartverfahren, das nachstehend beschrieben und in Fig. 14 gezeigt ist, ausgeführt (S120).
  • Schritte S121 bis S123
  • Wenn die Antriebseinheit 1 die Verarbeitung ausführt oder das Antriebsstartverfahren ausgeführt wird, bestimmt die MPU 30, ob das Bandwarnbereichssignal TWA, das die Erfassung von EOT durch die Antriebssteuereinheit 2 zeigt, auf der Steuerleitung 36a durch die Antriebsschnittstellenschaltung 32a erzeugt worden ist oder nicht (S121).
  • Wenn das Signal TWA erzeugt worden ist, bestimmt die MPU 30, ob die Befehlsspeicherzahl CN (Anzahl von unausgeführten Befehlen) des Befehlspuffersteuerbereichs CA des KAM 31b 0 ist oder nicht (S122), und wenn CN nicht 0 ist, ist es der Antriebseinheit gestattet, die Operation auszuführen, bis CN 0 wird. Der Grund für dieses Warten liegt darin, daß bei der Verarbeitung im Anschluß an EOT der Befehl von dem Hostcontroller mit dem Befehl, der durch die Antriebseinheit ausgeführt wird, synchron erfolgt.
  • Wenn das Signal TWA nicht erzeugt ist, bestimmt die MPU 30 aus dem Zustand der Datenübertragungssteuerschaltung 33, ob die Übertragung von Speicherdaten bei den obengenannten Schritten S105 bis S108 wegen unausreichenden freien Segmenten des Datenpufferspeichers überläuft oder nicht. Wenn ein Überlaufen eingetreten ist, bestimmt die MPU 30, um den Synchronismus auf dieselbe Weise wie oben beschrieben zu erreichen, ob die Befehlsspeicherzahl CN (Anzahl von unausgeführten Befehlen) des Befehlspuffersteuerbereichs CA des KAM 31b null ist oder nicht (S122), und wenn CN nicht null ist, ist es der Antriebssteuerung gestattet, die Operation auszuführen, bis CN null wird.
  • Wenn ein Überlaufen in dem Pufferspeicher nicht erzeugt wird, oder CN null wird, meldet die MPU 30 den Abschluß (normaler Empfang oder Auftreten eines Fehlers) dem Hostcontroller durch die Hostschnittstellenschaltung 32b, und gleichzeitig schaltet die MPU 30 das Datenbesetztsignal DBY AUS, und die Routine kehrt zu der Routine des Abwartens des Starts zurück, gezeigt in Fig. 7.
  • Wenn das Startsignal (GO) somit von dem Hostcontroller erteilt wird und die Schreibbefehle erteilt werden, wird bestimmt, ob die Anzahl der empfangenen Befehle innerhalb der speicherbaren Befehlsanzahl AN liegt oder nicht (Schritt S101). Wenn im Gegensatz dazu die Anzahl der Befehle AN überschreitet, wird der Empfang der Befehle zurückgehalten, und das Datenbesetztsignal DBY wird nicht EIN-geschaltet.
  • Speziell wird, wie in Fig. 11a bis 11e gezeigt, wenn die Antriebssteuerung Befehle in dem Befehlspufferspeicher ausführt, wie unten unter Bezugnahme auf Fig. 14 beschrieben, und das Datenbesetztsignal DBY nicht EIN-geschaltet wird, bis die Anzahl von Befehlen innerhalb der speicherbaren Befehlsanzahl AN liegt, wenn die Anzahl der Befehle innerhalb der speicherbaren Befehlsanzahl AN liegt, das Datenbesetztsignal DBY EIN-geschaltet, um den Hostcontroller zu informieren, daß das Verfahren ausgeführt wird.
  • Wenn das Signal EWA EIN-geschaltet ist (S116), wird die speicherbare Befehlsanzahl AN jedes Mal, wenn ein Schreibbefehl von dem Hostcontroller empfangen wird, schrittweise reduziert. Wenn das Signal TWA erzeugt ist (S121), erfolgt die Abschlußmeldung nicht, bis die Befehlsspeicherzahl CN auf null reduziert ist.
  • Demzufolge wird die speicherbare Befehlsanzahl AN schrittweise reduziert, wie durch die durchgehende Linie in Fig. 13 angegeben. Wenn AN auf die obengenannte Weise schrittweise reduziert wird, muß der Hostcontroller nicht eine extrem lange Zeit vor dem Empfang von nachfolgenden Befehlen warten. Wenn im Gegensatz dazu AN abrupt reduziert wird, wie durch die unterbrochene Linie in Fig. 13 angegeben, kann der Hostcontroller nachfolgende Befehle nicht empfangen, bis die Antriebseinheit die Ausführung der Anzahl von Befehlen, die der (Anzahl von gespeicherten Befehlen) - (speicherbare Befehlsanzahl nach Reduzierung - 1) entsprechen, beendet. Demzufolge wird durch die Zeitüberwachung durch den Hostcontroller eine Abnormität bei dem Hostcontroller auf Grund einer Zeitsperre irrtümlicherweise erfaßt. Dieser Nachteil kann jedoch durch die obengenannte schrittweise Reduzierung, die durch die durchgehende Linie in Fig. 13 angegeben ist, verhindert werden.
  • Ähnlich wird bei den Schritten S103 und S104 bestimmt, ob die freien Segmente des Datenpufferspeichers größer als die maximale Blocklänge MAXL sind oder nicht, und falls die freie Segmentzahl FSEG größer als die maximale Blocklänge MAXL ist, werden Daten bezüglich des Schreibens, die von dem Hostcontroller übertragen werden, empfangen, und falls FSEG kleiner als die maximale Blocklänge MAXL ist, wird eine Übertragung von Daten zurückgehalten und das Datenbesetztsignal DBY wird nicht EIN-geschaltet.
  • Dementsprechend führt die Antriebseinheit Befehle in dem Befehlspufferspeicher aus, wie unten unter Bezugnahme auf Fig. 14 beschrieben, und das Datenbesetztsignal DBY wird nicht EIN-geschaltet, bis die freie Segmentzahl FSEG des Datenpufferspeichers die maximale Blocklänge MAXL überschreitet, und wenn FSEG größer als die maximale Blocklänge MAXL wird, wird das Datenbesetztsignal DBY EIN- geschaltet, und ein Übertragungsempfang wird möglich.
  • Bei den Schritten S111 und S112 wird, wenn die übertragene Blocklänge größer als die maximale Blocklänge MAXL ist, die tatsächlich übertragene Blocklänge als maximale Blocklänge MAXL bei der anschließenden Verarbeitung eingesetzt. Demzufolge können die Effekte eines Reduzierens der Häufigkeit eines Versuchs und eines Verkürzens der Wartezeit erreicht werden.
  • Die Verarbeitung der Schreibbefehle durch die Antriebseinheit wird jetzt unter Bezugnahme auf Fig. 14 und 15 beschrieben.
  • Fig. 14 ist ein Flußdiagramm, das die Antriebsstartverarbeitung zeigt, und Fig. 15 ist ein Flußdiagramm, das die Verarbeitung des Abschlusses der Antriebsverarbeitung zeigt.
  • Schritte S201 und S202
  • Unter Bezugnahme auf Fig. 14 liest die MPU 30, um den Antriebsstart auszuführen, einen Befehl, der als nächster auszuführen ist, aus dem Befehlspufferspeicher CBA des KAM 31b und bestimmt, ob der Befehl ein Schreibbefehl ist oder nicht. Wenn der Befehl kein Schreibbefehl ist, geht die Routine zu der entsprechenden Routine für die Verarbeitung der Lesebefehle (nicht gezeigt) über.
  • Schritte S203 bis S205
  • Wenn der Befehl ein Schreibbefehl ist, wird bestimmt, ob der Befehl ein Befehl ist, der den Datenpufferspeicher 34 nutzt oder nicht (S203). Wenn der Befehl ein Befehl ist, der den Datenpufferspeicher 34 nicht nutzt, wie Löschen, Schreiben oder Bandmarke, geht die Routine zu Schritt S206 über.
  • Wenn im Gegensatz dazu der Befehl ein Befehl ist, der den Datenpufferspeicher 34 nutzt, setzt die MPU 30 die Startadresse BADR des Befehlspufferspeichers CBA des KAM 31b und die Bytezahl BC in den Ladeadreßzähler LAC bzw. Bytezähler BCTR der Datenübertragungssteuerschaltung 33 (S204). Ferner startet die MPU 30 die Datenübertragungssteuerschaltung 33 (S205).
  • Schritt S206
  • Dann überträgt die MPU 30 den Auslesebefehl und das Startsignal (GO) zu der Antriebssteuereinheit 2 durch die Antriebsschnittstellenschaltung 32a (Fig. 11d).
  • Andererseits führt die Antriebssteuereinheit 2 das Datenbesetztsignal DBY zurück (Fig. 11e), und wenn der Befehl ein Befehl ist, der den Pufferspeicher nutzt, überträgt die Antriebssteuereinheit 2 nach Abschluß der Vorbereitung für die Datenübertragung eine Datenübertragungsanforderung zu der Datenübertragungssteuerschaltung 33 durch die Datenübertragungssteuersignalleitung 37a, wodurch die Datenübertragungssteuerschaltung 33 veranlaßt wird, gespeicherte Daten in einer Anzahl, die der Bytezahl des Bytezählers BCTR entspricht, von der Startadresse, die im Ladeadreßzähler LAC des Datenpufferspeichers 34 gezeigt ist, zu der Antriebssteuereinheit 2 durch den Speicherdatenbus 37b zu übertragen, und diese Daten werden ausgeführt und in das Magnetband 16 geschrieben.
  • Nach der Ausgabe von Anforderungen bei Schritt S206 kehrt die Routine zu der in Fig. 10 gezeigten Routine zurück.
  • Wenn die Ausführung des Schreibbefehls bei der Antriebssteuereinheit 2 beendet ist, wird die Abschlußmeldung der Antriebsschnittstellenschaltung 32a durch die Steuerleitung 36a zugeführt, wodurch die Antriebsschnittstellenschaltung 32a veranlaßt wird, eine Unterbrechnung bei der MPU 30 vorzunehmen, um die in Fig. 7 bis 10 gezeigte Verarbeitung zu unterbrechen. An diesem Punkt startet die MPU 30 die in Fig. 15 gezeigte Verarbeitung.
  • Schritte S221 bis S223
  • Die MPU 30 bestimmt, ob der Befehl ein Schreibbefehl ist oder nicht. Wenn der Befehl kein Schreibbefehl ist, geht die Routine zu der Routine der entsprechenden Leseverarbeitung (nicht gezeigt) über. Wenn der Befehl ein Schreibbefehl ist, bestimmt die MPU 30, ob der Befehl ein Befehl ist, der den Datenpufferspeicher 34 verwendet oder nicht (S222). Wenn der Befehl ein Befehl ist, der den Datenpufferspeicher 34 verwendet, addiert die MPU 30 die Nutzsegmentzahl USEG zu der freien Segmentzahl FSEG (Parameterdatenpufferspeicher) des Datenpuffersteuerbereichs DA des KAM 31b, um die freie Segmentzahl FSEG zu erneuern.
  • Schritte S224 und S225
  • Nach Erneuerung der freien Segmentzahl FSEG oder wenn der Datenpufferspeicher 34 nicht verwendet wird, wird 1 von der Befehlsspeicherzahl CN des Befehlspuffersteuerbereich&sub5; CA des KAM 31b subtrahiert, um CN zu erneuern (5224). Ferner bestimmt die MPU 30, ob die Befehlsspeicherzahl CN des KAM 31b null ist oder nicht, und wenn CN null ist, kehrt die Routine zu der in Fig. 10 gezeigten Routine zurück. Wenn CN nicht null ist, wird die Verarbeitung des in Fig. 14 gezeigten Schrittes S201 und der nachfolgenden Schritte ausgeführt.
  • Auf obige Weise führt die Antriebseinheit Befehle, die in dem Befehlspufferspeicher gespeichert sind, asynchron mit - 30 -dem Hostcontroller sequentiell aus.
  • Bei der obigen Ausführungsform wird nahe dem Ende des Bandes die speicherbare Anzahl AN von Schreibbefehlen jedes Mal, wenn ein Schreibbefehl von dem Hostcontroller empfangen wird, schrittweise reduziert. Jedoch kann AN abrupt reduziert werden, wie durch die unterbrochene Linie in Fig. 13 angegeben, oder AN kann jedes Mal, wenn eine Vielzahl von Befehlen auf der Antriebsseite ausgeführt wird, schrittweise reduziert werden.
  • Außerdem kann die Antriebssteuereinheit 2 in der Befehls- und Daten-Vorauslese-Steuereinheit integriert sein, oder die Antriebseinheit 1 kann einen Bandpufferspeicher haben.
  • Wie aus der obigen Beschreibung offensichtlich ist, kann bei einer Ausführungsform der vorliegenden Erfindung, da die maximale Blocklänge aus der Empfangsblocklänge erhalten wird, ein Effekt des Reduzierens der Häufigkeit eines Übertragungsversuchs erreicht werden, und außerdem kann ein Effekt des Verkürzens der Wartezeit erreicht werden. Deshalb kann bei einer Ausführungsform der Erfindung die Effektivität der Übertragung von Daten bezüglich des Schreibens außerordentlich verbessert werden.

Claims (5)

1. Ein Magnetbandsystem mit:
Antriebsmitteln (1), die einen Magnetkopf (14), Spulen (11, 12) zum Daraufspulen eines Magnetbandes (16) und einen Antriebsteil zum Antreiben der genannten Spulen enthalten;
Antriebssteuermitteln (2, 20, 21), die mit den genannten Antriebsmitteln operativ verbunden sind, um die genannten Antriebsmittel zu steuern; und
Vorauslese-Steuermitteln (3), die mit den genannten Antriebssteuermitteln und mit einem Hostcontroller (5) operativ verbunden sind, zum Zuführen von Zugriffsbefehlen zu dem genannten Magnetband, und mit einem ersten Speichermittel zum Vorausleseen einer Vielzahl von Befehlen von dem genannten Hostcontroller und einem zweiten Speichermittel zum temporären Speichern von Schreibdaten von dem genannten Hostcontroller oder von Daten, die von dem genannten Magnetband ausgelesen wurden, bei dem die genannten Antriebsmittel durch die genannten Antriebssteuermittel gemäß den Befehlen betätigt werden, die in dem genannten ersten Speichermittel gespeichert sind, und Resultate der Operation dem genannten Hostcontroller gemeldet werden, dadurch gekennzeichnet, daß, bei Gebrauch, die genannten Vorauslese- Steuermittel die Anzahl von Bytes von Schreibdaten zählen, die einem Schreibbefehl zugeordnet sind (USEG), und, wenn die genannte gezählte Byteanzahl (USEG) innerhalb eines Teils eines freien Bereiches des genannten zweiten Speichermittels (FSEG) liegt und größer als die maximale Blocklänge (MAXL) in dem genannten zweiten Speichermittel ist, die das Vorausleseen gestattet, die genannte gezählte Byteanzahl (USEG) als neue maximale Blocklänge (MAXL) eingestellt wird und die Vorauslesesteuerung der Schreibdaten auf der Grundlage der genannten neuen maximalen Blocklänge (MAXL) ausgeführt wird.
2. Ein Magnetbandsystem nach Anspruch 1, bei dem die genannten Vorauslese-Steuermittel eine speicherbare Anzahl (AN) von Schreibbefehlen, die vorausgelesen und in dem genannten ersten Speichermittel gespeichert werden können, reduzieren, wenn die genannten Antriebssteuermittel erfassen, daß eine gegenwärtige Position des Magnetbandes in der Nähe von dessem Ende ist.
3. Ein Magnetbandsystem nach Anspruch 2, bei dem die Reduzierung der speicherbaren Schreibbefehlsanzahl immer dann vorgenommen wird, wenn ein Schreibbefehl von dem genannten Hostcontroller empfangen wird.
4. Ein Magnetbandsystem nach Anspruch 2 oder 3, bei dem aufeinanderfolgende Reduzierungen der speicherbaren Schreibbefehlsanzahl bis hin zu einem vorbestimmten Minimalwert vorgenommen werden.
5. Ein Verfahren zum Betreiben eines Magnetbandsystems mit
Antriebsmitteln (1), die einen Magnetkopf (14), Spulen (11, 12) zum Daraufspulen eines Magnetbandes (16) und einen Antriebsteil zum Antreiben der genannten Spulen enthalten;
Antriebssteuermitteln (2, 20, 21), die mit den genannten Antriebsmitteln operativ verbunden sind, um die genannten Antriebsmittel zu steuern; und
Vorauslese-Steuermitteln (3), die mit den genannten Antriebssteuermitteln und mit einem Hostcontroller (5) operativ verbunden sind, zum Zuführen von Zugriffsbefehlen zu dem genannten Magnetband, und mit einem ersten Speichermittel zum Vorausleseen einer Vielzahl von Befehlen von dem genannten Hostcontroller und dem genannten zweiten Speichermittel zum temporären Speichern von Schreibdaten von dem genannten Hostcontroller oder von Daten, die von dem genannten Magnetband ausgelesen wurden, bei dem die genannten Antriebsmittel durch die genannten Antriebssteuermittel gemäß den Befehlen betätigt werden, die in dem genannten ersten Speichermittel gespeichert sind, und Resultate der Operation dem genannten Hostcontroller gemeldet werden;
welches Verfahren gekennzeichnet ist durch die Schritte:
Zählen, unter Verwendung der genannten Vorauslese- Steuermittel, der Anzahl von Bytes von Schreibdaten (USEG), die einem Schreibbefehl zugeordnet sind, und wenn die genannte gezählte Byteanzahl (USEG) innerhalb eines Teils eines freien Bereichs des genannten zweiten Speichermittels liegt und größer als die maximale Blocklänge (MAXL) in dem genannten zweiten Speichermittel ist, die das Vorausleseen gestattet, Einstellen der gezählten Byteanzahl (USEG) als neue maximale Blocklänge (MAXL) und Ausführen der Vorauslesesteuerung der Schreibdaten auf der Grundlage der genannten neuen maximalen Blocklänge (MAXL).
DE8686306378T 1985-08-20 1986-08-18 Magnetbandsystem und methode mit vorauswahlssteuerungsmittel. Expired - Fee Related DE3688447T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60182820A JPS6243725A (ja) 1985-08-20 1985-08-20 磁気テ−プ装置のデ−タ先取り制御方法及びその装置

Publications (2)

Publication Number Publication Date
DE3688447D1 DE3688447D1 (de) 1993-06-24
DE3688447T2 true DE3688447T2 (de) 1993-08-26

Family

ID=16125027

Family Applications (1)

Application Number Title Priority Date Filing Date
DE8686306378T Expired - Fee Related DE3688447T2 (de) 1985-08-20 1986-08-18 Magnetbandsystem und methode mit vorauswahlssteuerungsmittel.

Country Status (7)

Country Link
US (1) US4788641A (de)
EP (1) EP0212966B1 (de)
JP (1) JPS6243725A (de)
KR (1) KR900001695B1 (de)
AU (1) AU565748B2 (de)
CA (1) CA1260155A (de)
DE (1) DE3688447T2 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287468A (en) * 1987-06-03 1994-02-15 Sony Corporation Method and apparatus for processing information data
AU622626B2 (en) * 1987-06-03 1992-04-16 Sony Corporation Method of processing data
WO1992009074A1 (en) * 1990-11-13 1992-05-29 Wangtek, Inc. System and method of controlling data transfer rate in a magnetic tape drive
US5787475A (en) * 1992-07-21 1998-07-28 Digital Equipment Corporation Controlled prefetching of data requested by a peripheral
US5487171A (en) * 1992-09-18 1996-01-23 Storage Technology Corporation System for reading and stopping reading data from magnetic tape into memory in response to mount command and write command respectively from the system processor
AU7090794A (en) * 1993-01-11 1994-09-14 Central Point Software, Inc. Method of transferring data using dynamic data block sizing
TW233354B (en) * 1994-03-04 1994-11-01 Motorola Inc Data processor with memory cache and method of operation
US6012106A (en) * 1997-11-03 2000-01-04 Digital Equipment Corporation Prefetch management for DMA read transactions depending upon past history of actual transfer lengths
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
US6515672B1 (en) * 1999-12-23 2003-02-04 Intel Corporation Managing prefetching from a data buffer
GB2367182B (en) * 2000-09-20 2004-05-26 Hewlett Packard Co Improvements in and relating to data protection
US11681437B2 (en) * 2021-02-25 2023-06-20 International Business Machines Corporation Dynamic tape storage device data buffer

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3383660A (en) * 1960-02-12 1968-05-14 Gen Electric Data processing system
US4040026A (en) * 1974-05-08 1977-08-02 Francois Gernelle Channel for exchanging information between a computer and rapid peripheral units
US4330844A (en) * 1979-12-12 1982-05-18 Honeywell Information Systems Inc. Logic timing system for tape device adapter
US4435762A (en) * 1981-03-06 1984-03-06 International Business Machines Corporation Buffered peripheral subsystems
US4500965A (en) * 1982-06-04 1985-02-19 Cipher Data Products, Inc. Capstanless magnetic tape drive with electronic equivalent to length of tape
DE3232339A1 (de) * 1982-08-31 1984-03-01 Siemens AG, 1000 Berlin und 8000 München Datenverarbeitungsanlage mit angeschlossenen bewegten aufzeichnungstraegern als periphere geraete und durchfuehrung von ein-/ausgabeoperationen im streaming-betrieb
US4644463A (en) * 1982-12-07 1987-02-17 Burroughs Corporation System for regulating data transfer operations
JPS6059432A (ja) * 1983-09-10 1985-04-05 Fujitsu Ltd 入出力装置のデ−タバツフア制御方法
US4757396A (en) * 1985-07-12 1988-07-12 Fujitsu Limited Magnetic tape system with command prefetch means

Also Published As

Publication number Publication date
JPS6243725A (ja) 1987-02-25
KR870002511A (ko) 1987-03-31
DE3688447D1 (de) 1993-06-24
EP0212966B1 (de) 1993-05-19
US4788641A (en) 1988-11-29
AU565748B2 (en) 1987-09-24
KR900001695B1 (ko) 1990-03-19
EP0212966A3 (en) 1989-12-20
CA1260155A (en) 1989-09-26
JPH0451851B2 (de) 1992-08-20
AU6108486A (en) 1987-03-19
EP0212966A2 (de) 1987-03-04

Similar Documents

Publication Publication Date Title
DE3688447T2 (de) Magnetbandsystem und methode mit vorauswahlssteuerungsmittel.
DE60204687T2 (de) Speicherkopierbefehl mit Angabe von Quelle und Ziel, der in der Speichersteuerung ausgeführt wird
DE4029980C2 (de) Umspeicherverfahren und Umspeichersystem zur Erhöhung der Systemzuverlässigkeit
DE60309391T2 (de) Datenübertragungssteuerungssystem, Programm und Datenübertragungssteuerungsverfahren
DE3851445T2 (de) Durch Direktspeicherzugriff gesteuertes System.
DE69219848T2 (de) Verfahren zur Behandlung von Datenübertragungen in einen Computersystem mit einem Zweibusbau
DE60008148T2 (de) System und verfahren zum abrollen von schleifen in einem trace-cache
DE3726168C2 (de)
DE3750740T2 (de) Verfahren zur Steuerung von Mehradressräumen.
DE3820544A1 (de) Ortsbereichsnetzsystem mit einem hiermit gekoppelten mehrcomputersystem und verfahren zur steuerung hiervon
AT389951B (de) Datenuebertragungseinrichtung
DE19945993B4 (de) Plattenschreibvollendungssystem
DE3850514T2 (de) Cachespeicher mit Treffervorhersagelogik.
DE19900251B4 (de) Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals
DE3635394C2 (de)
DE69032519T2 (de) Datenverarbeitungseinrichtung zur Kohärenzaufrechthaltung von gespeicherten Daten im Hauptspeicher, externem Cachespeicher und internem Cachespeicher
DE10310055A1 (de) Systeme und Verfahren zum Erfassen und Kompensieren von Kleinblockdatenübertragungen
DE69018609T2 (de) Verfahren und vorrichtung für die steuerung des suchens für plattenvorrichtung.
DE3689021T2 (de) Magnetbandsystem mit Befehlsvorauswahlmittel.
EP0350016B1 (de) Verfahren und Einrichtung zum Duplizieren des Inhalts von Datenträgern
DE69932891T2 (de) Informationsverarbeitungsgerät und -verfahren, und Darstellungsmedium
DE2720842B2 (de) Datenübertragungssystem
EP0525214B1 (de) Verfahren zum Betreiben eines Automatisierungsgeräts
DE3685976T2 (de) Pufferspeichersteuerungsanordnung.
DE19847120C2 (de) Steuerlogik für Atapi-Schnittstelle

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee